@oliasoft-open-source/react-ui-library 4.9.2 → 4.10.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/dist/404.html +1 -1
- package/dist/assets/{index-CnfDrmnZ.js → index-DoFa61ar.js} +79 -137
- package/dist/index.html +1 -1
- package/dist/index.js +26 -18
- package/dist/index.js.map +1 -1
- package/dist/storybook/assets/{Color-KGDBMAHA-sr_lo8VN.js → Color-KGDBMAHA-BaE9XYqa.js} +1 -1
- package/dist/storybook/assets/{DocsRenderer-PKQXORMH-Dio4TQT6.js → DocsRenderer-PKQXORMH-C4AGRx7h.js} +1 -1
- package/dist/storybook/assets/{buttons-and-links-BOcv8xIU.js → buttons-and-links-CT3uME8p.js} +1 -1
- package/dist/storybook/assets/{chunk-HLWAVYOI-SLqzrZ8s.js → chunk-HLWAVYOI-DU16cKyP.js} +1 -1
- package/dist/storybook/assets/{color-D1FmkH7Y.js → color-CHwfPS7Y.js} +1 -1
- package/dist/storybook/assets/{iframe-NUuxNiwO.js → iframe-BjMiZc8R.js} +2 -2
- package/dist/storybook/assets/{index-DNcuiqfZ.js → index-3PqFqMP3.js} +1 -1
- package/dist/storybook/assets/{index-Bhtru3gK.js → index-B50vPCIH.js} +4 -4
- package/dist/storybook/assets/{input-validation-FFJCXfNa.js → input-validation-I1yYbPtK.js} +1 -1
- package/dist/storybook/assets/{inputs-D3ZjmDIl.js → inputs-B6X_h0ac.js} +1 -1
- package/dist/storybook/assets/{layout-forms-DNUCHjRh.js → layout-forms-BHoZkwXg.js} +1 -1
- package/dist/storybook/assets/{layout-general-CuxE1EOt.js → layout-general-BA9lilWm.js} +1 -1
- package/dist/storybook/assets/{padding-and-spacing-B-LaxRb4.js → padding-and-spacing-CURwwYca.js} +1 -1
- package/dist/storybook/assets/{preview-ClcAw55r.js → preview-DKYV1Qdr.js} +2 -2
- package/dist/storybook/assets/{preview-DQgT2zeu.js → preview-Dgjy7Hpm.js} +1 -1
- package/dist/storybook/assets/{rich-text-input.stories-hAHCnDHk.js → rich-text-input.stories-DkaOBgbE.js} +46 -46
- package/dist/storybook/assets/unit-input.stories-C7gVMOCX.js +389 -0
- package/dist/storybook/iframe.html +1 -1
- package/dist/storybook/index.json +1 -1
- package/dist/storybook/project.json +1 -1
- package/dist/storybook/sb-manager/globals-runtime.js +1 -1
- package/package.json +1 -1
- package/dist/storybook/assets/unit-input.stories-BHTxKnOU.js +0 -380
|
@@ -1,57 +1,57 @@
|
|
|
1
|
-
var
|
|
1
|
+
var Of=Object.defineProperty;var rl=t=>{throw TypeError(t)};var Mf=(t,e,n)=>e in t?Of(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n;var Me=(t,e,n)=>Mf(t,typeof e!="symbol"?e+"":e,n),sl=(t,e,n)=>e.has(t)||rl("Cannot "+n);var B=(t,e,n)=>(sl(t,e,"read from private field"),n?n.call(t):e.get(t)),ft=(t,e,n)=>e.has(t)?rl("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,n),X=(t,e,n,r)=>(sl(t,e,"write to private field"),r?r.call(t,n):e.set(t,n),n);import{j as ae}from"./jsx-runtime-eps93zm2.js";import{g as Ai,R as Ne,r as z}from"./index-DhsZuJvc.js";import{D as _f}from"./disabled-context-rmpd7YJS.js";import{C as Nf}from"./common-types-Sih75Sav.js";import{B as Ou}from"./button-DHevvVBE.js";import{r as Af}from"./index-CUZDtIZe.js";import{S as Rf}from"./select-DnRuRG_N.js";import"./index-Bk2sglWO.js";import"./spinner-AWUe4xwQ.js";import"./icon-BSFY3vDO.js";import"./objectWithoutPropertiesLoose-CAYKN5F1.js";import"./inheritsLoose-DP0QEDDI.js";import"./index-CEuq6vkz.js";import"./tooltip-1V7clEnw.js";import"./lodash-c4VUpsOs.js";import"./types-Dx2TtIG9.js";import"./assertThisInitialized-B9jnkVVz.js";import"./memoize-one.esm-CcMeOnPo.js";import"./types-BmbYqTX_.js";import"./text-B3-TSWok.js";import"./actions-D-uVCDzk.js";import"./badge-CLQ59MDF.js";import"./select.input-D0UkAPd9.js";var Co={exports:{}};(function(t,e){var n=typeof Reflect<"u"?Reflect.construct:void 0,r=Object.defineProperty,s=Error.captureStackTrace;s===void 0&&(s=function(c){var u=new Error;r(c,"stack",{configurable:!0,get:function(){var h=u.stack;return r(this,"stack",{configurable:!0,value:h,writable:!0}),h},set:function(h){r(c,"stack",{configurable:!0,value:h,writable:!0})}})});function i(l){l!==void 0&&r(this,"message",{configurable:!0,value:l,writable:!0});var c=this.constructor.name;c!==void 0&&c!==this.name&&r(this,"name",{configurable:!0,value:c,writable:!0}),s(this,this.constructor)}i.prototype=Object.create(Error.prototype,{constructor:{configurable:!0,value:i,writable:!0}});var o=function(){function l(u,d){return r(u,"name",{configurable:!0,value:d})}try{var c=function(){};if(l(c,"foo"),c.name==="foo")return l}catch{}}();function a(l,c){if(c==null||c===Error)c=i;else if(typeof c!="function")throw new TypeError("super_ should be a function");var u;if(typeof l=="string")u=l,l=n!==void 0?function(){return n(c,arguments,this.constructor)}:function(){c.apply(this,arguments)},o!==void 0&&(o(l,u),u=void 0);else if(typeof l!="function")throw new TypeError("constructor should be either a string or a function");l.super_=l.super=c;var d={constructor:{configurable:!0,value:l,writable:!0}};return u!==void 0&&(d.name={configurable:!0,value:u,writable:!0}),l.prototype=Object.create(c.prototype,d),l}e=t.exports=a,e.BaseError=i})(Co,Co.exports);var Mu=Co.exports,il="ProseMirror-selectednode",da="",Kt="\0",ol="__state_override__",If={LastNodeCompatible:"lastNodeCompatible",FormattingMark:"formattingMark",FormattingNode:"formattingNode",NodeCursor:"nodeCursor",FontStyle:"fontStyle",Link:"link",Color:"color",Alignment:"alignment",Indentation:"indentation",Behavior:"behavior",Code:"code",InlineNode:"inline",ListContainerNode:"listContainer",ListItemNode:"listItemNode",Block:"block",BlockNode:"block",TextBlock:"textBlock",ExcludeInputRules:"excludeFromInputRules",PreventExits:"preventsExits",Media:"media"},j=If,It=Symbol.for("__remirror__"),xe=(t=>(t.PlainExtension="RemirrorPlainExtension",t.NodeExtension="RemirrorNodeExtension",t.MarkExtension="RemirrorMarkExtension",t.PlainExtensionConstructor="RemirrorPlainExtensionConstructor",t.NodeExtensionConstructor="RemirrorNodeExtensionConstructor",t.MarkExtensionConstructor="RemirrorMarkExtensionConstructor",t.Manager="RemirrorManager",t.Preset="RemirrorPreset",t.PresetConstructor="RemirrorPresetConstructor",t))(xe||{}),Y=(t=>(t[t.Critical=1e6]="Critical",t[t.Highest=1e5]="Highest",t[t.High=1e4]="High",t[t.Medium=1e3]="Medium",t[t.Default=100]="Default",t[t.Low=10]="Low",t[t.Lowest=0]="Lowest",t))(Y||{}),Pe=(t=>(t[t.None=0]="None",t[t.Create=1]="Create",t[t.EditorView=2]="EditorView",t[t.Runtime=3]="Runtime",t[t.Destroy=4]="Destroy",t))(Pe||{}),E=(t=>(t.Undo="_|undo|_",t.Redo="_|redo|_",t.Bold="_|bold|_",t.Italic="_|italic|_",t.Underline="_|underline|_",t.Strike="_|strike|_",t.Code="_|code|_",t.Paragraph="_|paragraph|_",t.H1="_|h1|_",t.H2="_|h2|_",t.H3="_|h3|_",t.H4="_|h4|_",t.H5="_|h5|_",t.H6="_|h6|_",t.TaskList="_|task|_",t.BulletList="_|bullet|_",t.OrderedList="_|number|_",t.Quote="_|quote|_",t.Divider="_|divider|_",t.Codeblock="_|codeblock|_",t.ClearFormatting="_|clear|_",t.Superscript="_|sup|_",t.Subscript="_|sub|_",t.LeftAlignment="_|left-align|_",t.CenterAlignment="_|center-align|_",t.RightAlignment="_|right-align|_",t.JustifyAlignment="_|justify-align|_",t.InsertLink="_|link|_",t.Find="_|find|_",t.FindBackwards="_|find-backwards|_",t.FindReplace="_|find-replace|_",t.AddFootnote="_|footnote|_",t.AddComment="_|comment|_",t.ContextMenu="_|context-menu|_",t.IncreaseFontSize="_|inc-font-size|_",t.DecreaseFontSize="_|dec-font-size|_",t.IncreaseIndent="_|indent|_",t.DecreaseIndent="_|dedent|_",t.Shortcuts="_|shortcuts|_",t.Copy="_|copy|_",t.Cut="_|cut|_",t.Paste="_|paste|_",t.PastePlain="_|paste-plain|_",t.SelectAll="_|select-all|_",t.Format="_|format|_",t))(E||{}),b=(t=>(t.PROD="RMR0000",t.UNKNOWN="RMR0001",t.INVALID_COMMAND_ARGUMENTS="RMR0002",t.CUSTOM="RMR0003",t.CORE_HELPERS="RMR0004",t.MUTATION="RMR0005",t.INTERNAL="RMR0006",t.MISSING_REQUIRED_EXTENSION="RMR0007",t.MANAGER_PHASE_ERROR="RMR0008",t.INVALID_GET_EXTENSION="RMR0010",t.INVALID_MANAGER_ARGUMENTS="RMR0011",t.SCHEMA="RMR0012",t.HELPERS_CALLED_IN_OUTER_SCOPE="RMR0013",t.INVALID_MANAGER_EXTENSION="RMR0014",t.DUPLICATE_COMMAND_NAMES="RMR0016",t.DUPLICATE_HELPER_NAMES="RMR0017",t.NON_CHAINABLE_COMMAND="RMR0018",t.INVALID_EXTENSION="RMR0019",t.INVALID_CONTENT="RMR0021",t.INVALID_NAME="RMR0050",t.EXTENSION="RMR0100",t.EXTENSION_SPEC="RMR0101",t.EXTENSION_EXTRA_ATTRIBUTES="RMR0102",t.INVALID_SET_EXTENSION_OPTIONS="RMR0103",t.REACT_PROVIDER_CONTEXT="RMR0200",t.REACT_GET_ROOT_PROPS="RMR0201",t.REACT_EDITOR_VIEW="RMR0202",t.REACT_CONTROLLED="RMR0203",t.REACT_NODE_VIEW="RMR0204",t.REACT_GET_CONTEXT="RMR0205",t.REACT_COMPONENTS="RMR0206",t.REACT_HOOKS="RMR0207",t.I18N_CONTEXT="RMR0300",t))(b||{}),Df=function(e){return Pf(e)&&!Lf(e)};function Pf(t){return!!t&&typeof t=="object"}function Lf(t){var e=Object.prototype.toString.call(t);return e==="[object RegExp]"||e==="[object Date]"||$f(t)}var Bf=typeof Symbol=="function"&&Symbol.for,zf=Bf?Symbol.for("react.element"):60103;function $f(t){return t.$$typeof===zf}function Ff(t){return Array.isArray(t)?[]:{}}function ss(t,e){return e.clone!==!1&&e.isMergeableObject(t)?sr(Ff(t),t,e):t}function Vf(t,e,n){return t.concat(e).map(function(r){return ss(r,n)})}function Hf(t,e){if(!e.customMerge)return sr;var n=e.customMerge(t);return typeof n=="function"?n:sr}function Uf(t){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(t).filter(function(e){return Object.propertyIsEnumerable.call(t,e)}):[]}function al(t){return Object.keys(t).concat(Uf(t))}function _u(t,e){try{return e in t}catch{return!1}}function jf(t,e){return _u(t,e)&&!(Object.hasOwnProperty.call(t,e)&&Object.propertyIsEnumerable.call(t,e))}function Wf(t,e,n){var r={};return n.isMergeableObject(t)&&al(t).forEach(function(s){r[s]=ss(t[s],n)}),al(e).forEach(function(s){jf(t,s)||(_u(t,s)&&n.isMergeableObject(e[s])?r[s]=Hf(s,n)(t[s],e[s],n):r[s]=ss(e[s],n))}),r}function sr(t,e,n){n=n||{},n.arrayMerge=n.arrayMerge||Vf,n.isMergeableObject=n.isMergeableObject||Df,n.cloneUnlessOtherwiseSpecified=ss;var r=Array.isArray(e),s=Array.isArray(t),i=r===s;return i?r?n.arrayMerge(t,e,n):Wf(t,e,n):ss(e,n)}sr.all=function(e,n){if(!Array.isArray(e))throw new Error("first argument should be an array");return e.reduce(function(r,s){return sr(r,s,n)},{})};var Kf=sr,qf=Kf;const Jf=Ai(qf);/*!
|
|
2
2
|
* isobject <https://github.com/jonschlinkert/isobject>
|
|
3
3
|
*
|
|
4
4
|
* Copyright (c) 2014-2017, Jon Schlinkert.
|
|
5
5
|
* Released under the MIT License.
|
|
6
|
-
*/var
|
|
6
|
+
*/var Nu=function(e){return e!=null&&typeof e=="object"&&Array.isArray(e)===!1};/*!
|
|
7
7
|
* is-plain-object <https://github.com/jonschlinkert/is-plain-object>
|
|
8
8
|
*
|
|
9
9
|
* Copyright (c) 2014-2017, Jon Schlinkert.
|
|
10
10
|
* Released under the MIT License.
|
|
11
|
-
*/var
|
|
11
|
+
*/var Gf=Nu;function ll(t){return Gf(t)===!0&&Object.prototype.toString.call(t)==="[object Object]"}var Xf=function(e){var n,r;return!(ll(e)===!1||(n=e.constructor,typeof n!="function")||(r=n.prototype,ll(r)===!1)||r.hasOwnProperty("isPrototypeOf")===!1)};/*!
|
|
12
12
|
* is-extendable <https://github.com/jonschlinkert/is-extendable>
|
|
13
13
|
*
|
|
14
14
|
* Copyright (c) 2015-2017, Jon Schlinkert.
|
|
15
15
|
* Released under the MIT License.
|
|
16
|
-
*/var Xf
|
|
16
|
+
*/var Yf=Xf,Zf=function(e){return Yf(e)||typeof e=="function"||Array.isArray(e)};/*!
|
|
17
17
|
* object.omit <https://github.com/jonschlinkert/object.omit>
|
|
18
18
|
*
|
|
19
19
|
* Copyright (c) 2014-2017, Jon Schlinkert.
|
|
20
20
|
* Released under the MIT License.
|
|
21
|
-
*/var Zf
|
|
21
|
+
*/var Qf=Zf,ep=function(e,n,r){if(!Qf(e))return{};typeof n=="function"&&(r=n,n=[]),typeof n=="string"&&(n=[n]);for(var s=typeof r=="function",i=Object.keys(e),o={},a=0;a<i.length;a++){var l=i[a],c=e[l];(!n||n.indexOf(l)===-1&&(!s||r(c,l,e)))&&(o[l]=c)}return o};const Au=Ai(ep);/*!
|
|
22
22
|
* object.pick <https://github.com/jonschlinkert/object.pick>
|
|
23
23
|
*
|
|
24
24
|
* Copyright (c) 2014-2015 Jon Schlinkert, contributors.
|
|
25
25
|
* Licensed under the MIT License
|
|
26
|
-
*/var
|
|
26
|
+
*/var tp=Nu,np=function(e,n){if(!tp(e)&&typeof e!="function")return{};var r={};if(typeof n=="string")return n in e&&(r[n]=e[n]),r;for(var s=n.length,i=-1;++i<s;){var o=n[i];o in e&&(r[o]=e[o])}return r};const To=Ai(np),Ru=/^[a-zà-öø-ÿ]+|[A-ZÀ-ÖØ-ß][a-zà-öø-ÿ]+|[a-zà-öø-ÿ]+|[0-9]+|[A-ZÀ-ÖØ-ß]+(?![a-zà-öø-ÿ])/g,rp=/\S+/g;function sp(t,e){const n={parts:[],prefixes:[]},r=t.matchAll(e);let s=0;for(const o of r){if(typeof o.index!="number")continue;const a=o[0];n.parts.push(a);const l=t.slice(s,o.index).trim();n.prefixes.push(l),s=o.index+a.length}const i=t.slice(s).trim();return i&&(n.parts.push(""),n.prefixes.push(i)),n}function Iu(t,e){const{keepSpecialCharacters:n=!1,keep:r,prefix:s=""}=e||{},i=t.trim().normalize("NFC"),o=i.includes(" "),l=sp(i,o?rp:Ru);return l.parts.map((c,u)=>{let d=l.prefixes[u]||"",h=c;return n===!1&&(r&&(h=h.normalize("NFD").replace(new RegExp(`[^a-zA-ZØßø0-9${r.join("")}]`,"g"),"")),r||(h=h.normalize("NFD").replace(/[^a-zA-ZØßø0-9]/g,""),d="")),r&&(d=d.replace(new RegExp(`[^${r.join("")}]`,"g"),"")),u===0?d+h:!d&&!h?"":o&&!d&&s.match(/\s/)?" "+h:(d||s)+h}).filter(Boolean)}function ip(t){const e=t.matchAll(Ru).next().value,n=e?e.index:0;return t.slice(0,n+1).toUpperCase()+t.slice(n+1).toLowerCase()}function Du(t,e){return Iu(t,e).reduce((n,r)=>n+ip(r),"")}function cl(t,e){return Iu(t,{...e,prefix:"-"}).join("").toLowerCase()}function ul(t,e,n,r){var s,i=!1,o=0;function a(){s&&clearTimeout(s)}function l(){a(),i=!0}typeof e!="boolean"&&(r=n,n=e,e=void 0);function c(){for(var u=arguments.length,d=new Array(u),h=0;h<u;h++)d[h]=arguments[h];var f=this,p=Date.now()-o;if(i)return;function m(){o=Date.now(),n.apply(f,d)}function g(){s=void 0}r&&!s&&m(),a(),r===void 0&&p>t?m():e!==!0&&(s=setTimeout(r?g:m,r===void 0?t-p:t))}return c.cancel=l,c}function op(t,e,n){return n===void 0?ul(t,e,!1):ul(t,n,e!==!1)}function re(t,e,n){const r=t[e];return Pu(!Ii(r),n),r}function Pu(t,e){if(!t)throw new ap(e)}var ap=class extends Mu.BaseError{constructor(){super(...arguments),this.name="AssertionError"}};function fe(t){return Object.entries(t)}function ti(t){return Object.keys(t)}function Ri(t){return Object.values(t)}function yt(t,e,n){return t.includes(e,n)}function M(t){return Object.assign(Object.create(null),t)}function Lu(t){return Object.prototype.toString.call(t)}function Bu(t){return Lu(t).slice(8,-1)}function vs(t,e){return n=>typeof n!==t?!1:e?e(n):!0}function ha(t){return e=>Bu(e)===t}var Ii=vs("undefined"),P=vs("string"),Ge=vs("number",t=>!Number.isNaN(t)),ee=vs("function");function lp(t){return t===null}function cp(t){return t===!0||t===!1}function Ln(t){if(Bu(t)!=="Object")return!1;const e=Object.getPrototypeOf(t);return e===null||e===Object.getPrototypeOf({})}function up(t){return t==null||/^[bns]/.test(typeof t)}function tn(t){return lp(t)||Ii(t)}function De(t){return!tn(t)&&(ee(t)||vs("object")(t))}var dp=ha("RegExp");function hp(t){return ha("Map")(t)}function fp(t){return ha("Set")(t)}function ni(t){return De(t)&&!hp(t)&&!fp(t)&&Object.keys(t).length===0}var me=Array.isArray;function nn(t){return me(t)&&t.length===0}function dl(t){return me(t)&&t.length>0}function fa(t,e,n=r=>!!r){e.lastIndex=0;const r=[],s=e.flags;let i;s.includes("g")||(e=new RegExp(e.source,`g${s}`));do i=e.exec(t),i&&r.push(i);while(n(i));return e.lastIndex=0,r}function ri(){const t=Date.now(),e=ri.last||t;return ri.last=t>e?t:e+1}ri.last=0;function si(t=""){return`${t}${ri().toString(36)}`}function pp(t){return Au(t,e=>!Ii(e))}function mp(t){if(!Ln(t))throw new Error("An invalid value was passed into this clone utility. Expected a plain object");return{...t}}function is(t,e=!1){const n=e?[...t].reverse():t,r=new Set(n);return e?[...r].reverse():[...r]}function zu(){}function gp(...t){return Jf.all(t,{isMergeableObject:Ln})}function yp({min:t,max:e,value:n}){return n<t?t:n>e?e:n}function ir(t,e){return[...t].map((n,r)=>({value:n,index:r})).sort((n,r)=>e(n.value,r.value)||n.index-r.index).map(({value:n})=>n)}function xp(t,e,n){try{if(P(e)&&e in t)return t[e];me(e)&&(e=`['${e.join("']['")}']`);let r=t;return e.replace(/\[\s*(["'])(.*?)\1\s*]|^\s*(\w+)\s*(?=\.|\[|$)|\.\s*(\w*)\s*(?=\.|\[|$)|\[\s*(-?\d+)\s*]/g,(s,i,o,a,l,c)=>(r=r[o||a||l||c],"")),r===void 0?n:r}catch{return n}}function bp(t,e){const n=mp(e);let r=n;for(const[s,i]of t.entries()){const o=s>=t.length-1;let a=r[i];if(o){if(me(r)){const l=Number.parseInt(i.toString(),10);Ge(l)&&r.splice(l,1)}else Reflect.deleteProperty(r,i);return n}if(up(a))return n;a=me(a)?[...a]:{...a},r[i]=a,r=a}return n}function kp(t){return e=>xp(e,t)}function Sp(t,e,n=!1){const r=[],s=new Set,i=ee(e)?e:kp(e),o=n?[...t].reverse():t;for(const a of o){const l=i(a);s.has(l)||(s.add(l),r.push(a))}return n?r.reverse():r}function $u(t,e){const n=me(t)?t[0]:t;return Ge(e)?n<=e?Array.from({length:e+1-n},(r,s)=>s+n):Array.from({length:n+1-e},(r,s)=>-1*s+n):Array.from({length:Math.abs(n)},(r,s)=>(n<0?-1:1)*s)}function hl(t,...e){const n=e.filter(Ge);return t>=Math.min(...n)&&t<=Math.max(...n)}function Fu(t){return ee(t)?t():t}var Vu="https://remirror.io/docs/errors",wp={[b.UNKNOWN]:"An error occurred but we're not quite sure why. 🧐",[b.INVALID_COMMAND_ARGUMENTS]:"The arguments passed to the command method were invalid.",[b.CUSTOM]:"This is a custom error, possibly thrown by an external library.",[b.CORE_HELPERS]:"An error occurred in a function called from the `@remirror/core-helpers` library.",[b.MUTATION]:"Mutation of immutable value detected.",[b.INTERNAL]:"This is an error which should not occur and is internal to the remirror codebase.",[b.MISSING_REQUIRED_EXTENSION]:"Your editor is missing a required extension.",[b.MANAGER_PHASE_ERROR]:"This occurs when accessing a method or property before it is available.",[b.INVALID_GET_EXTENSION]:"The user requested an invalid extension from the getExtensions method. Please check the `createExtensions` return method is returning an extension with the defined constructor.",[b.INVALID_MANAGER_ARGUMENTS]:"Invalid value(s) passed into `Manager` constructor. Only `Presets` and `Extensions` are supported.",[b.SCHEMA]:"There is a problem with the schema or you are trying to access a node / mark that doesn't exists.",[b.HELPERS_CALLED_IN_OUTER_SCOPE]:"The `helpers` method which is passed into the ``create*` method should only be called within returned method since it relies on an active view (not present in the outer scope).",[b.INVALID_MANAGER_EXTENSION]:"You requested an invalid extension from the manager.",[b.DUPLICATE_COMMAND_NAMES]:"Command method names must be unique within the editor.",[b.DUPLICATE_HELPER_NAMES]:"Helper method names must be unique within the editor.",[b.NON_CHAINABLE_COMMAND]:"Attempted to chain a non chainable command.",[b.INVALID_EXTENSION]:"The provided extension is invalid.",[b.INVALID_CONTENT]:"The content provided to the editor is not supported.",[b.INVALID_NAME]:"An invalid name was used for the extension.",[b.EXTENSION]:"An error occurred within an extension. More details should be made available.",[b.EXTENSION_SPEC]:"The spec was defined without calling the `defaults`, `parse` or `dom` methods.",[b.EXTENSION_EXTRA_ATTRIBUTES]:"Extra attributes must either be a string or an object.",[b.INVALID_SET_EXTENSION_OPTIONS]:"A call to `extension.setOptions` was made with invalid keys.",[b.REACT_PROVIDER_CONTEXT]:"`useRemirrorContext` was called outside of the `remirror` context. It can only be used within an active remirror context created by the `<Remirror />`.",[b.REACT_GET_ROOT_PROPS]:"`getRootProps` has been attached to the DOM more than once. It should only be attached to the dom once per editor.",[b.REACT_EDITOR_VIEW]:"A problem occurred adding the editor view to the dom.",[b.REACT_CONTROLLED]:"There is a problem with your controlled editor setup.",[b.REACT_NODE_VIEW]:"Something went wrong with your custom ReactNodeView Component.",[b.REACT_GET_CONTEXT]:"You attempted to call `getContext` provided by the `useRemirror` prop during the first render of the editor. This is not possible and should only be after the editor first mounts.",[b.REACT_COMPONENTS]:"An error occurred within a remirror component.",[b.REACT_HOOKS]:"An error occurred within a remirror hook.",[b.I18N_CONTEXT]:"You called `useI18n()` outside of an `I18nProvider` context."};function vp(t){return P(t)&&yt(Ri(b),t)}function Ep(t,e){const n=wp[t],r=n?`${n}
|
|
27
27
|
|
|
28
28
|
`:"",s=e?`${e}
|
|
29
29
|
|
|
30
|
-
`:"";return`${r}${s}For more information visit ${Fu}#${t.toLowerCase()}`}var Vu=class extends Ou.BaseError{constructor({code:t,message:e,disableLogging:n=!1}={}){const r=wp(t)?t:b.CUSTOM;super(vp(r,e)),this.errorCode=r,this.url=`${Fu}#${r.toLowerCase()}`,n||console.error(this.message)}static create(t={}){return new Vu(t)}};function R(t,e){if(!t)throw Vu.create(e)}function Ep(t){if(typeof t!="object"||t===null)return t;const e=Symbol.toStringTag in t&&t[Symbol.toStringTag]==="Module"?t.default??t:t;return e&&typeof t=="object"&&"__esModule"in e&&e.__esModule&&e.default!==void 0?e.default:e}function bn(t,e={}){return t}function ke(t){this.content=t}ke.prototype={constructor:ke,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?void 0:this.content[e+1]},update:function(t,e,n){var r=n&&n!=t?this.remove(n):this,s=r.find(t),i=r.content.slice();return s==-1?i.push(n||t,e):(i[s+1]=e,n&&(i[s]=n)),new ke(i)},remove:function(t){var e=this.find(t);if(e==-1)return this;var n=this.content.slice();return n.splice(e,2),new ke(n)},addToStart:function(t,e){return new ke([t,e].concat(this.remove(t).content))},addToEnd:function(t,e){var n=this.remove(t).content.slice();return n.push(t,e),new ke(n)},addBefore:function(t,e,n){var r=this.remove(e),s=r.content.slice(),i=r.find(t);return s.splice(i==-1?s.length:i,0,e,n),new ke(s)},forEach:function(t){for(var e=0;e<this.content.length;e+=2)t(this.content[e],this.content[e+1])},prepend:function(t){return t=ke.from(t),t.size?new ke(t.content.concat(this.subtract(t).content)):this},append:function(t){return t=ke.from(t),t.size?new ke(this.subtract(t).content.concat(t.content)):this},subtract:function(t){var e=this;t=ke.from(t);for(var n=0;n<t.content.length;n+=2)e=e.remove(t.content[n]);return e},toObject:function(){var t={};return this.forEach(function(e,n){t[e]=n}),t},get size(){return this.content.length>>1}};ke.from=function(t){if(t instanceof ke)return t;var e=[];if(t)for(var n in t)e.push(n,t[n]);return new ke(e)};function Hu(t,e,n){for(let r=0;;r++){if(r==t.childCount||r==e.childCount)return t.childCount==e.childCount?null:n;let s=t.child(r),i=e.child(r);if(s==i){n+=s.nodeSize;continue}if(!s.sameMarkup(i))return n;if(s.isText&&s.text!=i.text){for(let o=0;s.text[o]==i.text[o];o++)n++;return n}if(s.content.size||i.content.size){let o=Hu(s.content,i.content,n+1);if(o!=null)return o}n+=s.nodeSize}}function Uu(t,e,n,r){for(let s=t.childCount,i=e.childCount;;){if(s==0||i==0)return s==i?null:{a:n,b:r};let o=t.child(--s),a=e.child(--i),l=o.nodeSize;if(o==a){n-=l,r-=l;continue}if(!o.sameMarkup(a))return{a:n,b:r};if(o.isText&&o.text!=a.text){let c=0,u=Math.min(o.text.length,a.text.length);for(;c<u&&o.text[o.text.length-c-1]==a.text[a.text.length-c-1];)c++,n--,r--;return{a:n,b:r}}if(o.content.size||a.content.size){let c=Uu(o.content,a.content,n-1,r-1);if(c)return c}n-=l,r-=l}}class x{constructor(e,n){if(this.content=e,this.size=n||0,n==null)for(let r=0;r<e.length;r++)this.size+=e[r].nodeSize}nodesBetween(e,n,r,s=0,i){for(let o=0,a=0;a<n;o++){let l=this.content[o],c=a+l.nodeSize;if(c>e&&r(l,s+a,i||null,o)!==!1&&l.content.size){let u=a+1;l.nodesBetween(Math.max(0,e-u),Math.min(l.content.size,n-u),r,s+u)}a=c}}descendants(e){this.nodesBetween(0,this.size,e)}textBetween(e,n,r,s){let i="",o=!0;return this.nodesBetween(e,n,(a,l)=>{let c=a.isText?a.text.slice(Math.max(e,l)-l,n-l):a.isLeaf?s?typeof s=="function"?s(a):s:a.type.spec.leafText?a.type.spec.leafText(a):"":"";a.isBlock&&(a.isLeaf&&c||a.isTextblock)&&r&&(o?o=!1:i+=r),i+=c},0),i}append(e){if(!e.size)return this;if(!this.size)return e;let n=this.lastChild,r=e.firstChild,s=this.content.slice(),i=0;for(n.isText&&n.sameMarkup(r)&&(s[s.length-1]=n.withText(n.text+r.text),i=1);i<e.content.length;i++)s.push(e.content[i]);return new x(s,this.size+e.size)}cut(e,n=this.size){if(e==0&&n==this.size)return this;let r=[],s=0;if(n>e)for(let i=0,o=0;o<n;i++){let a=this.content[i],l=o+a.nodeSize;l>e&&((o<e||l>n)&&(a.isText?a=a.cut(Math.max(0,e-o),Math.min(a.text.length,n-o)):a=a.cut(Math.max(0,e-o-1),Math.min(a.content.size,n-o-1))),r.push(a),s+=a.nodeSize),o=l}return new x(r,s)}cutByIndex(e,n){return e==n?x.empty:e==0&&n==this.content.length?this:new x(this.content.slice(e,n))}replaceChild(e,n){let r=this.content[e];if(r==n)return this;let s=this.content.slice(),i=this.size+n.nodeSize-r.nodeSize;return s[e]=n,new x(s,i)}addToStart(e){return new x([e].concat(this.content),this.size+e.nodeSize)}addToEnd(e){return new x(this.content.concat(e),this.size+e.nodeSize)}eq(e){if(this.content.length!=e.content.length)return!1;for(let n=0;n<this.content.length;n++)if(!this.content[n].eq(e.content[n]))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(e){let n=this.content[e];if(!n)throw new RangeError("Index "+e+" out of range for "+this);return n}maybeChild(e){return this.content[e]||null}forEach(e){for(let n=0,r=0;n<this.content.length;n++){let s=this.content[n];e(s,r,n),r+=s.nodeSize}}findDiffStart(e,n=0){return Hu(this,e,n)}findDiffEnd(e,n=this.size,r=e.size){return Uu(this,e,n,r)}findIndex(e,n=-1){if(e==0)return Rs(0,e);if(e==this.size)return Rs(this.content.length,e);if(e>this.size||e<0)throw new RangeError(`Position ${e} outside of fragment (${this})`);for(let r=0,s=0;;r++){let i=this.child(r),o=s+i.nodeSize;if(o>=e)return o==e||n>0?Rs(r+1,o):Rs(r,s);s=o}}toString(){return"<"+this.toStringInner()+">"}toStringInner(){return this.content.join(", ")}toJSON(){return this.content.length?this.content.map(e=>e.toJSON()):null}static fromJSON(e,n){if(!n)return x.empty;if(!Array.isArray(n))throw new RangeError("Invalid input for Fragment.fromJSON");return new x(n.map(e.nodeFromJSON))}static fromArray(e){if(!e.length)return x.empty;let n,r=0;for(let s=0;s<e.length;s++){let i=e[s];r+=i.nodeSize,s&&i.isText&&e[s-1].sameMarkup(i)?(n||(n=e.slice(0,s)),n[n.length-1]=i.withText(n[n.length-1].text+i.text)):n&&n.push(i)}return new x(n||e,r)}static from(e){if(!e)return x.empty;if(e instanceof x)return e;if(Array.isArray(e))return this.fromArray(e);if(e.attrs)return new x([e],e.nodeSize);throw new RangeError("Can not convert "+e+" to a Fragment"+(e.nodesBetween?" (looks like multiple versions of prosemirror-model were loaded)":""))}}x.empty=new x([],0);const eo={index:0,offset:0};function Rs(t,e){return eo.index=t,eo.offset=e,eo}function ii(t,e){if(t===e)return!0;if(!(t&&typeof t=="object")||!(e&&typeof e=="object"))return!1;let n=Array.isArray(t);if(Array.isArray(e)!=n)return!1;if(n){if(t.length!=e.length)return!1;for(let r=0;r<t.length;r++)if(!ii(t[r],e[r]))return!1}else{for(let r in t)if(!(r in e)||!ii(t[r],e[r]))return!1;for(let r in e)if(!(r in t))return!1}return!0}class U{constructor(e,n){this.type=e,this.attrs=n}addToSet(e){let n,r=!1;for(let s=0;s<e.length;s++){let i=e[s];if(this.eq(i))return e;if(this.type.excludes(i.type))n||(n=e.slice(0,s));else{if(i.type.excludes(this.type))return e;!r&&i.type.rank>this.type.rank&&(n||(n=e.slice(0,s)),n.push(this),r=!0),n&&n.push(i)}}return n||(n=e.slice()),r||n.push(this),n}removeFromSet(e){for(let n=0;n<e.length;n++)if(this.eq(e[n]))return e.slice(0,n).concat(e.slice(n+1));return e}isInSet(e){for(let n=0;n<e.length;n++)if(this.eq(e[n]))return!0;return!1}eq(e){return this==e||this.type==e.type&&ii(this.attrs,e.attrs)}toJSON(){let e={type:this.type.name};for(let n in this.attrs){e.attrs=this.attrs;break}return e}static fromJSON(e,n){if(!n)throw new RangeError("Invalid input for Mark.fromJSON");let r=e.marks[n.type];if(!r)throw new RangeError(`There is no mark type ${n.type} in this schema`);let s=r.create(n.attrs);return r.checkAttrs(s.attrs),s}static sameSet(e,n){if(e==n)return!0;if(e.length!=n.length)return!1;for(let r=0;r<e.length;r++)if(!e[r].eq(n[r]))return!1;return!0}static setFrom(e){if(!e||Array.isArray(e)&&e.length==0)return U.none;if(e instanceof U)return[e];let n=e.slice();return n.sort((r,s)=>r.type.rank-s.type.rank),n}}U.none=[];class oi extends Error{}class w{constructor(e,n,r){this.content=e,this.openStart=n,this.openEnd=r}get size(){return this.content.size-this.openStart-this.openEnd}insertAt(e,n){let r=Wu(this.content,e+this.openStart,n);return r&&new w(r,this.openStart,this.openEnd)}removeBetween(e,n){return new w(ju(this.content,e+this.openStart,n+this.openStart),this.openStart,this.openEnd)}eq(e){return this.content.eq(e.content)&&this.openStart==e.openStart&&this.openEnd==e.openEnd}toString(){return this.content+"("+this.openStart+","+this.openEnd+")"}toJSON(){if(!this.content.size)return null;let e={content:this.content.toJSON()};return this.openStart>0&&(e.openStart=this.openStart),this.openEnd>0&&(e.openEnd=this.openEnd),e}static fromJSON(e,n){if(!n)return w.empty;let r=n.openStart||0,s=n.openEnd||0;if(typeof r!="number"||typeof s!="number")throw new RangeError("Invalid input for Slice.fromJSON");return new w(x.fromJSON(e,n.content),r,s)}static maxOpen(e,n=!0){let r=0,s=0;for(let i=e.firstChild;i&&!i.isLeaf&&(n||!i.type.spec.isolating);i=i.firstChild)r++;for(let i=e.lastChild;i&&!i.isLeaf&&(n||!i.type.spec.isolating);i=i.lastChild)s++;return new w(e,r,s)}}w.empty=new w(x.empty,0,0);function ju(t,e,n){let{index:r,offset:s}=t.findIndex(e),i=t.maybeChild(r),{index:o,offset:a}=t.findIndex(n);if(s==e||i.isText){if(a!=n&&!t.child(o).isText)throw new RangeError("Removing non-flat range");return t.cut(0,e).append(t.cut(n))}if(r!=o)throw new RangeError("Removing non-flat range");return t.replaceChild(r,i.copy(ju(i.content,e-s-1,n-s-1)))}function Wu(t,e,n,r){let{index:s,offset:i}=t.findIndex(e),o=t.maybeChild(s);if(i==e||o.isText)return t.cut(0,e).append(n).append(t.cut(e));let a=Wu(o.content,e-i-1,n);return a&&t.replaceChild(s,o.copy(a))}function Cp(t,e,n){if(n.openStart>t.depth)throw new oi("Inserted content deeper than insertion position");if(t.depth-n.openStart!=e.depth-n.openEnd)throw new oi("Inconsistent open depths");return Ku(t,e,n,0)}function Ku(t,e,n,r){let s=t.index(r),i=t.node(r);if(s==e.index(r)&&r<t.depth-n.openStart){let o=Ku(t,e,n,r+1);return i.copy(i.content.replaceChild(s,o))}else if(n.content.size)if(!n.openStart&&!n.openEnd&&t.depth==r&&e.depth==r){let o=t.parent,a=o.content;return Tn(o,a.cut(0,t.parentOffset).append(n.content).append(a.cut(e.parentOffset)))}else{let{start:o,end:a}=Tp(n,t);return Tn(i,Ju(t,o,a,e,r))}else return Tn(i,ai(t,e,r))}function qu(t,e){if(!e.type.compatibleContent(t.type))throw new oi("Cannot join "+e.type.name+" onto "+t.type.name)}function Oo(t,e,n){let r=t.node(n);return qu(r,e.node(n)),r}function Cn(t,e){let n=e.length-1;n>=0&&t.isText&&t.sameMarkup(e[n])?e[n]=t.withText(e[n].text+t.text):e.push(t)}function es(t,e,n,r){let s=(e||t).node(n),i=0,o=e?e.index(n):s.childCount;t&&(i=t.index(n),t.depth>n?i++:t.textOffset&&(Cn(t.nodeAfter,r),i++));for(let a=i;a<o;a++)Cn(s.child(a),r);e&&e.depth==n&&e.textOffset&&Cn(e.nodeBefore,r)}function Tn(t,e){return t.type.checkContent(e),t.copy(e)}function Ju(t,e,n,r,s){let i=t.depth>s&&Oo(t,e,s+1),o=r.depth>s&&Oo(n,r,s+1),a=[];return es(null,t,s,a),i&&o&&e.index(s)==n.index(s)?(qu(i,o),Cn(Tn(i,Ju(t,e,n,r,s+1)),a)):(i&&Cn(Tn(i,ai(t,e,s+1)),a),es(e,n,s,a),o&&Cn(Tn(o,ai(n,r,s+1)),a)),es(r,null,s,a),new x(a)}function ai(t,e,n){let r=[];if(es(null,t,n,r),t.depth>n){let s=Oo(t,e,n+1);Cn(Tn(s,ai(t,e,n+1)),r)}return es(e,null,n,r),new x(r)}function Tp(t,e){let n=e.depth-t.openStart,s=e.node(n).copy(t.content);for(let i=n-1;i>=0;i--)s=e.node(i).copy(x.from(s));return{start:s.resolveNoCache(t.openStart+n),end:s.resolveNoCache(s.content.size-t.openEnd-n)}}class or{constructor(e,n,r){this.pos=e,this.path=n,this.parentOffset=r,this.depth=n.length/3-1}resolveDepth(e){return e==null?this.depth:e<0?this.depth+e:e}get parent(){return this.node(this.depth)}get doc(){return this.node(0)}node(e){return this.path[this.resolveDepth(e)*3]}index(e){return this.path[this.resolveDepth(e)*3+1]}indexAfter(e){return e=this.resolveDepth(e),this.index(e)+(e==this.depth&&!this.textOffset?0:1)}start(e){return e=this.resolveDepth(e),e==0?0:this.path[e*3-1]+1}end(e){return e=this.resolveDepth(e),this.start(e)+this.node(e).content.size}before(e){if(e=this.resolveDepth(e),!e)throw new RangeError("There is no position before the top-level node");return e==this.depth+1?this.pos:this.path[e*3-1]}after(e){if(e=this.resolveDepth(e),!e)throw new RangeError("There is no position after the top-level node");return e==this.depth+1?this.pos:this.path[e*3-1]+this.path[e*3].nodeSize}get textOffset(){return this.pos-this.path[this.path.length-1]}get nodeAfter(){let e=this.parent,n=this.index(this.depth);if(n==e.childCount)return null;let r=this.pos-this.path[this.path.length-1],s=e.child(n);return r?e.child(n).cut(r):s}get nodeBefore(){let e=this.index(this.depth),n=this.pos-this.path[this.path.length-1];return n?this.parent.child(e).cut(0,n):e==0?null:this.parent.child(e-1)}posAtIndex(e,n){n=this.resolveDepth(n);let r=this.path[n*3],s=n==0?0:this.path[n*3-1]+1;for(let i=0;i<e;i++)s+=r.child(i).nodeSize;return s}marks(){let e=this.parent,n=this.index();if(e.content.size==0)return U.none;if(this.textOffset)return e.child(n).marks;let r=e.maybeChild(n-1),s=e.maybeChild(n);if(!r){let a=r;r=s,s=a}let i=r.marks;for(var o=0;o<i.length;o++)i[o].type.spec.inclusive===!1&&(!s||!i[o].isInSet(s.marks))&&(i=i[o--].removeFromSet(i));return i}marksAcross(e){let n=this.parent.maybeChild(this.index());if(!n||!n.isInline)return null;let r=n.marks,s=e.parent.maybeChild(e.index());for(var i=0;i<r.length;i++)r[i].type.spec.inclusive===!1&&(!s||!r[i].isInSet(s.marks))&&(r=r[i--].removeFromSet(r));return r}sharedDepth(e){for(let n=this.depth;n>0;n--)if(this.start(n)<=e&&this.end(n)>=e)return n;return 0}blockRange(e=this,n){if(e.pos<this.pos)return e.blockRange(this);for(let r=this.depth-(this.parent.inlineContent||this.pos==e.pos?1:0);r>=0;r--)if(e.pos<=this.end(r)&&(!n||n(this.node(r))))return new Nn(this,e,r);return null}sameParent(e){return this.pos-this.parentOffset==e.pos-e.parentOffset}max(e){return e.pos>this.pos?e:this}min(e){return e.pos<this.pos?e:this}toString(){let e="";for(let n=1;n<=this.depth;n++)e+=(e?"/":"")+this.node(n).type.name+"_"+this.index(n-1);return e+":"+this.parentOffset}static resolve(e,n){if(!(n>=0&&n<=e.content.size))throw new RangeError("Position "+n+" out of range");let r=[],s=0,i=n;for(let o=e;;){let{index:a,offset:l}=o.content.findIndex(i),c=i-l;if(r.push(o,a,s+l),!c||(o=o.child(a),o.isText))break;i=c-1,s+=l+1}return new or(n,r,i)}static resolveCached(e,n){let r=fl.get(e);if(r)for(let i=0;i<r.elts.length;i++){let o=r.elts[i];if(o.pos==n)return o}else fl.set(e,r=new Op);let s=r.elts[r.i]=or.resolve(e,n);return r.i=(r.i+1)%Mp,s}}class Op{constructor(){this.elts=[],this.i=0}}const Mp=12,fl=new WeakMap;class Nn{constructor(e,n,r){this.$from=e,this.$to=n,this.depth=r}get start(){return this.$from.before(this.depth+1)}get end(){return this.$to.after(this.depth+1)}get parent(){return this.$from.node(this.depth)}get startIndex(){return this.$from.index(this.depth)}get endIndex(){return this.$to.indexAfter(this.depth)}}const _p=Object.create(null);let Xt=class Mo{constructor(e,n,r,s=U.none){this.type=e,this.attrs=n,this.marks=s,this.content=r||x.empty}get nodeSize(){return this.isLeaf?1:2+this.content.size}get childCount(){return this.content.childCount}child(e){return this.content.child(e)}maybeChild(e){return this.content.maybeChild(e)}forEach(e){this.content.forEach(e)}nodesBetween(e,n,r,s=0){this.content.nodesBetween(e,n,r,s,this)}descendants(e){this.nodesBetween(0,this.content.size,e)}get textContent(){return this.isLeaf&&this.type.spec.leafText?this.type.spec.leafText(this):this.textBetween(0,this.content.size,"")}textBetween(e,n,r,s){return this.content.textBetween(e,n,r,s)}get firstChild(){return this.content.firstChild}get lastChild(){return this.content.lastChild}eq(e){return this==e||this.sameMarkup(e)&&this.content.eq(e.content)}sameMarkup(e){return this.hasMarkup(e.type,e.attrs,e.marks)}hasMarkup(e,n,r){return this.type==e&&ii(this.attrs,n||e.defaultAttrs||_p)&&U.sameSet(this.marks,r||U.none)}copy(e=null){return e==this.content?this:new Mo(this.type,this.attrs,e,this.marks)}mark(e){return e==this.marks?this:new Mo(this.type,this.attrs,this.content,e)}cut(e,n=this.content.size){return e==0&&n==this.content.size?this:this.copy(this.content.cut(e,n))}slice(e,n=this.content.size,r=!1){if(e==n)return w.empty;let s=this.resolve(e),i=this.resolve(n),o=r?0:s.sharedDepth(n),a=s.start(o),c=s.node(o).content.cut(s.pos-a,i.pos-a);return new w(c,s.depth-o,i.depth-o)}replace(e,n,r){return Cp(this.resolve(e),this.resolve(n),r)}nodeAt(e){for(let n=this;;){let{index:r,offset:s}=n.content.findIndex(e);if(n=n.maybeChild(r),!n)return null;if(s==e||n.isText)return n;e-=s+1}}childAfter(e){let{index:n,offset:r}=this.content.findIndex(e);return{node:this.content.maybeChild(n),index:n,offset:r}}childBefore(e){if(e==0)return{node:null,index:0,offset:0};let{index:n,offset:r}=this.content.findIndex(e);if(r<e)return{node:this.content.child(n),index:n,offset:r};let s=this.content.child(n-1);return{node:s,index:n-1,offset:r-s.nodeSize}}resolve(e){return or.resolveCached(this,e)}resolveNoCache(e){return or.resolve(this,e)}rangeHasMark(e,n,r){let s=!1;return n>e&&this.nodesBetween(e,n,i=>(r.isInSet(i.marks)&&(s=!0),!s)),s}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 e=this.type.name;return this.content.size&&(e+="("+this.content.toStringInner()+")"),Gu(this.marks,e)}contentMatchAt(e){let n=this.type.contentMatch.matchFragment(this.content,0,e);if(!n)throw new Error("Called contentMatchAt on a node with invalid content");return n}canReplace(e,n,r=x.empty,s=0,i=r.childCount){let o=this.contentMatchAt(e).matchFragment(r,s,i),a=o&&o.matchFragment(this.content,n);if(!a||!a.validEnd)return!1;for(let l=s;l<i;l++)if(!this.type.allowsMarks(r.child(l).marks))return!1;return!0}canReplaceWith(e,n,r,s){if(s&&!this.type.allowsMarks(s))return!1;let i=this.contentMatchAt(e).matchType(r),o=i&&i.matchFragment(this.content,n);return o?o.validEnd:!1}canAppend(e){return e.content.size?this.canReplace(this.childCount,this.childCount,e.content):this.type.compatibleContent(e.type)}check(){this.type.checkContent(this.content),this.type.checkAttrs(this.attrs);let e=U.none;for(let n=0;n<this.marks.length;n++){let r=this.marks[n];r.type.checkAttrs(r.attrs),e=r.addToSet(e)}if(!U.sameSet(e,this.marks))throw new RangeError(`Invalid collection of marks for node ${this.type.name}: ${this.marks.map(n=>n.type.name)}`);this.content.forEach(n=>n.check())}toJSON(){let e={type:this.type.name};for(let n in this.attrs){e.attrs=this.attrs;break}return this.content.size&&(e.content=this.content.toJSON()),this.marks.length&&(e.marks=this.marks.map(n=>n.toJSON())),e}static fromJSON(e,n){if(!n)throw new RangeError("Invalid input for Node.fromJSON");let r;if(n.marks){if(!Array.isArray(n.marks))throw new RangeError("Invalid mark data for Node.fromJSON");r=n.marks.map(e.markFromJSON)}if(n.type=="text"){if(typeof n.text!="string")throw new RangeError("Invalid text node in JSON");return e.text(n.text,r)}let s=x.fromJSON(e,n.content),i=e.nodeType(n.type).create(n.attrs,s,r);return i.type.checkAttrs(i.attrs),i}};Xt.prototype.text=void 0;class li extends Xt{constructor(e,n,r,s){if(super(e,n,null,s),!r)throw new RangeError("Empty text nodes are not allowed");this.text=r}toString(){return this.type.spec.toDebugString?this.type.spec.toDebugString(this):Gu(this.marks,JSON.stringify(this.text))}get textContent(){return this.text}textBetween(e,n){return this.text.slice(e,n)}get nodeSize(){return this.text.length}mark(e){return e==this.marks?this:new li(this.type,this.attrs,this.text,e)}withText(e){return e==this.text?this:new li(this.type,this.attrs,e,this.marks)}cut(e=0,n=this.text.length){return e==0&&n==this.text.length?this:this.withText(this.text.slice(e,n))}eq(e){return this.sameMarkup(e)&&this.text==e.text}toJSON(){let e=super.toJSON();return e.text=this.text,e}}function Gu(t,e){for(let n=t.length-1;n>=0;n--)e=t[n].type.name+"("+e+")";return e}class An{constructor(e){this.validEnd=e,this.next=[],this.wrapCache=[]}static parse(e,n){let r=new Np(e,n);if(r.next==null)return An.empty;let s=Xu(r);r.next&&r.err("Unexpected trailing text");let i=Bp(Lp(s));return zp(i,r),i}matchType(e){for(let n=0;n<this.next.length;n++)if(this.next[n].type==e)return this.next[n].next;return null}matchFragment(e,n=0,r=e.childCount){let s=this;for(let i=n;s&&i<r;i++)s=s.matchType(e.child(i).type);return s}get inlineContent(){return this.next.length!=0&&this.next[0].type.isInline}get defaultType(){for(let e=0;e<this.next.length;e++){let{type:n}=this.next[e];if(!(n.isText||n.hasRequiredAttrs()))return n}return null}compatible(e){for(let n=0;n<this.next.length;n++)for(let r=0;r<e.next.length;r++)if(this.next[n].type==e.next[r].type)return!0;return!1}fillBefore(e,n=!1,r=0){let s=[this];function i(o,a){let l=o.matchFragment(e,r);if(l&&(!n||l.validEnd))return x.from(a.map(c=>c.createAndFill()));for(let c=0;c<o.next.length;c++){let{type:u,next:d}=o.next[c];if(!(u.isText||u.hasRequiredAttrs())&&s.indexOf(d)==-1){s.push(d);let h=i(d,a.concat(u));if(h)return h}}return null}return i(this,[])}findWrapping(e){for(let r=0;r<this.wrapCache.length;r+=2)if(this.wrapCache[r]==e)return this.wrapCache[r+1];let n=this.computeWrapping(e);return this.wrapCache.push(e,n),n}computeWrapping(e){let n=Object.create(null),r=[{match:this,type:null,via:null}];for(;r.length;){let s=r.shift(),i=s.match;if(i.matchType(e)){let o=[];for(let a=s;a.type;a=a.via)o.push(a.type);return o.reverse()}for(let o=0;o<i.next.length;o++){let{type:a,next:l}=i.next[o];!a.isLeaf&&!a.hasRequiredAttrs()&&!(a.name in n)&&(!s.type||l.validEnd)&&(r.push({match:a.contentMatch,type:a,via:s}),n[a.name]=!0)}}return null}get edgeCount(){return this.next.length}edge(e){if(e>=this.next.length)throw new RangeError(`There's no ${e}th edge in this content match`);return this.next[e]}toString(){let e=[];function n(r){e.push(r);for(let s=0;s<r.next.length;s++)e.indexOf(r.next[s].next)==-1&&n(r.next[s].next)}return n(this),e.map((r,s)=>{let i=s+(r.validEnd?"*":" ")+" ";for(let o=0;o<r.next.length;o++)i+=(o?", ":"")+r.next[o].type.name+"->"+e.indexOf(r.next[o].next);return i}).join(`
|
|
31
|
-
`)}}An.empty=new An(!0);class Np{constructor(e,n){this.string=e,this.nodeTypes=n,this.inline=null,this.pos=0,this.tokens=e.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(e){return this.next==e&&(this.pos++||!0)}err(e){throw new SyntaxError(e+" (in content expression '"+this.string+"')")}}function Xu(t){let e=[];do e.push(Ap(t));while(t.eat("|"));return e.length==1?e[0]:{type:"choice",exprs:e}}function Ap(t){let e=[];do e.push(Rp(t));while(t.next&&t.next!=")"&&t.next!="|");return e.length==1?e[0]:{type:"seq",exprs:e}}function Rp(t){let e=Pp(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=Ip(t,e);else break;return e}function pl(t){/\D/.test(t.next)&&t.err("Expected number, got '"+t.next+"'");let e=Number(t.next);return t.pos++,e}function Ip(t,e){let n=pl(t),r=n;return t.eat(",")&&(t.next!="}"?r=pl(t):r=-1),t.eat("}")||t.err("Unclosed braced range"),{type:"range",min:n,max:r,expr:e}}function Dp(t,e){let n=t.nodeTypes,r=n[e];if(r)return[r];let s=[];for(let i in n){let o=n[i];o.groups.indexOf(e)>-1&&s.push(o)}return s.length==0&&t.err("No node type or group '"+e+"' found"),s}function Pp(t){if(t.eat("(")){let e=Xu(t);return t.eat(")")||t.err("Missing closing paren"),e}else if(/\W/.test(t.next))t.err("Unexpected token '"+t.next+"'");else{let e=Dp(t,t.next).map(n=>(t.inline==null?t.inline=n.isInline:t.inline!=n.isInline&&t.err("Mixing inline and block content"),{type:"name",value:n}));return t.pos++,e.length==1?e[0]:{type:"choice",exprs:e}}}function Lp(t){let e=[[]];return s(i(t,0),n()),e;function n(){return e.push([])-1}function r(o,a,l){let c={term:l,to:a};return e[o].push(c),c}function s(o,a){o.forEach(l=>l.to=a)}function i(o,a){if(o.type=="choice")return o.exprs.reduce((l,c)=>l.concat(i(c,a)),[]);if(o.type=="seq")for(let l=0;;l++){let c=i(o.exprs[l],a);if(l==o.exprs.length-1)return c;s(c,a=n())}else if(o.type=="star"){let l=n();return r(a,l),s(i(o.expr,l),l),[r(l)]}else if(o.type=="plus"){let l=n();return s(i(o.expr,a),l),s(i(o.expr,l),l),[r(l)]}else{if(o.type=="opt")return[r(a)].concat(i(o.expr,a));if(o.type=="range"){let l=a;for(let c=0;c<o.min;c++){let u=n();s(i(o.expr,l),u),l=u}if(o.max==-1)s(i(o.expr,l),l);else for(let c=o.min;c<o.max;c++){let u=n();r(l,u),s(i(o.expr,l),u),l=u}return[r(l)]}else{if(o.type=="name")return[r(a,void 0,o.value)];throw new Error("Unknown expr type")}}}}function Yu(t,e){return e-t}function ml(t,e){let n=[];return r(e),n.sort(Yu);function r(s){let i=t[s];if(i.length==1&&!i[0].term)return r(i[0].to);n.push(s);for(let o=0;o<i.length;o++){let{term:a,to:l}=i[o];!a&&n.indexOf(l)==-1&&r(l)}}}function Bp(t){let e=Object.create(null);return n(ml(t,0));function n(r){let s=[];r.forEach(o=>{t[o].forEach(({term:a,to:l})=>{if(!a)return;let c;for(let u=0;u<s.length;u++)s[u][0]==a&&(c=s[u][1]);ml(t,l).forEach(u=>{c||s.push([a,c=[]]),c.indexOf(u)==-1&&c.push(u)})})});let i=e[r.join(",")]=new An(r.indexOf(t.length-1)>-1);for(let o=0;o<s.length;o++){let a=s[o][1].sort(Yu);i.next.push({type:s[o][0],next:e[a.join(",")]||n(a)})}return i}}function zp(t,e){for(let n=0,r=[t];n<r.length;n++){let s=r[n],i=!s.validEnd,o=[];for(let a=0;a<s.next.length;a++){let{type:l,next:c}=s.next[a];o.push(l.name),i&&!(l.isText||l.hasRequiredAttrs())&&(i=!1),r.indexOf(c)==-1&&r.push(c)}i&&e.err("Only non-generatable nodes ("+o.join(", ")+") in a required position (see https://prosemirror.net/docs/guide/#generatable)")}}function Zu(t){let e=Object.create(null);for(let n in t){let r=t[n];if(!r.hasDefault)return null;e[n]=r.default}return e}function Qu(t,e){let n=Object.create(null);for(let r in t){let s=e&&e[r];if(s===void 0){let i=t[r];if(i.hasDefault)s=i.default;else throw new RangeError("No value supplied for attribute "+r)}n[r]=s}return n}function ed(t,e,n,r){for(let s in e)if(!(s in t))throw new RangeError(`Unsupported attribute ${s} for ${n} of type ${s}`);for(let s in t){let i=t[s];i.validate&&i.validate(e[s])}}function td(t,e){let n=Object.create(null);if(e)for(let r in e)n[r]=new Fp(t,r,e[r]);return n}let _o=class nd{constructor(e,n,r){this.name=e,this.schema=n,this.spec=r,this.markSet=null,this.groups=r.group?r.group.split(" "):[],this.attrs=td(e,r.attrs),this.defaultAttrs=Zu(this.attrs),this.contentMatch=null,this.inlineContent=null,this.isBlock=!(r.inline||e=="text"),this.isText=e=="text"}get isInline(){return!this.isBlock}get isTextblock(){return this.isBlock&&this.inlineContent}get isLeaf(){return this.contentMatch==An.empty}get isAtom(){return this.isLeaf||!!this.spec.atom}get whitespace(){return this.spec.whitespace||(this.spec.code?"pre":"normal")}hasRequiredAttrs(){for(let e in this.attrs)if(this.attrs[e].isRequired)return!0;return!1}compatibleContent(e){return this==e||this.contentMatch.compatible(e.contentMatch)}computeAttrs(e){return!e&&this.defaultAttrs?this.defaultAttrs:Qu(this.attrs,e)}create(e=null,n,r){if(this.isText)throw new Error("NodeType.create can't construct text nodes");return new Xt(this,this.computeAttrs(e),x.from(n),U.setFrom(r))}createChecked(e=null,n,r){return n=x.from(n),this.checkContent(n),new Xt(this,this.computeAttrs(e),n,U.setFrom(r))}createAndFill(e=null,n,r){if(e=this.computeAttrs(e),n=x.from(n),n.size){let o=this.contentMatch.fillBefore(n);if(!o)return null;n=o.append(n)}let s=this.contentMatch.matchFragment(n),i=s&&s.fillBefore(x.empty,!0);return i?new Xt(this,e,n.append(i),U.setFrom(r)):null}validContent(e){let n=this.contentMatch.matchFragment(e);if(!n||!n.validEnd)return!1;for(let r=0;r<e.childCount;r++)if(!this.allowsMarks(e.child(r).marks))return!1;return!0}checkContent(e){if(!this.validContent(e))throw new RangeError(`Invalid content for node ${this.name}: ${e.toString().slice(0,50)}`)}checkAttrs(e){ed(this.attrs,e,"node",this.name)}allowsMarkType(e){return this.markSet==null||this.markSet.indexOf(e)>-1}allowsMarks(e){if(this.markSet==null)return!0;for(let n=0;n<e.length;n++)if(!this.allowsMarkType(e[n].type))return!1;return!0}allowedMarks(e){if(this.markSet==null)return e;let n;for(let r=0;r<e.length;r++)this.allowsMarkType(e[r].type)?n&&n.push(e[r]):n||(n=e.slice(0,r));return n?n.length?n:U.none:e}static compile(e,n){let r=Object.create(null);e.forEach((i,o)=>r[i]=new nd(i,n,o));let s=n.spec.topNode||"doc";if(!r[s])throw new RangeError("Schema is missing its top node type ('"+s+"')");if(!r.text)throw new RangeError("Every schema needs a 'text' type");for(let i in r.text.attrs)throw new RangeError("The text node type should not have attributes");return r}};function $p(t,e,n){let r=n.split("|");return s=>{let i=s===null?"null":typeof s;if(r.indexOf(i)<0)throw new RangeError(`Expected value of type ${r} for attribute ${e} on type ${t}, got ${i}`)}}class Fp{constructor(e,n,r){this.hasDefault=Object.prototype.hasOwnProperty.call(r,"default"),this.default=r.default,this.validate=typeof r.validate=="string"?$p(e,n,r.validate):r.validate}get isRequired(){return!this.hasDefault}}class Es{constructor(e,n,r,s){this.name=e,this.rank=n,this.schema=r,this.spec=s,this.attrs=td(e,s.attrs),this.excluded=null;let i=Zu(this.attrs);this.instance=i?new U(this,i):null}create(e=null){return!e&&this.instance?this.instance:new U(this,Qu(this.attrs,e))}static compile(e,n){let r=Object.create(null),s=0;return e.forEach((i,o)=>r[i]=new Es(i,s++,n,o)),r}removeFromSet(e){for(var n=0;n<e.length;n++)e[n].type==this&&(e=e.slice(0,n).concat(e.slice(n+1)),n--);return e}isInSet(e){for(let n=0;n<e.length;n++)if(e[n].type==this)return e[n]}checkAttrs(e){ed(this.attrs,e,"mark",this.name)}excludes(e){return this.excluded.indexOf(e)>-1}}class Vp{constructor(e){this.linebreakReplacement=null,this.cached=Object.create(null);let n=this.spec={};for(let s in e)n[s]=e[s];n.nodes=ke.from(e.nodes),n.marks=ke.from(e.marks||{}),this.nodes=_o.compile(this.spec.nodes,this),this.marks=Es.compile(this.spec.marks,this);let r=Object.create(null);for(let s in this.nodes){if(s in this.marks)throw new RangeError(s+" can not be both a node and a mark");let i=this.nodes[s],o=i.spec.content||"",a=i.spec.marks;if(i.contentMatch=r[o]||(r[o]=An.parse(o,this.nodes)),i.inlineContent=i.contentMatch.inlineContent,i.spec.linebreakReplacement){if(this.linebreakReplacement)throw new RangeError("Multiple linebreak nodes defined");if(!i.isInline||!i.isLeaf)throw new RangeError("Linebreak replacement nodes must be inline leaf nodes");this.linebreakReplacement=i}i.markSet=a=="_"?null:a?gl(this,a.split(" ")):a==""||!i.inlineContent?[]:null}for(let s in this.marks){let i=this.marks[s],o=i.spec.excludes;i.excluded=o==null?[i]:o==""?[]:gl(this,o.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(e,n=null,r,s){if(typeof e=="string")e=this.nodeType(e);else if(e instanceof _o){if(e.schema!=this)throw new RangeError("Node type from different schema used ("+e.name+")")}else throw new RangeError("Invalid node type: "+e);return e.createChecked(n,r,s)}text(e,n){let r=this.nodes.text;return new li(r,r.defaultAttrs,e,U.setFrom(n))}mark(e,n){return typeof e=="string"&&(e=this.marks[e]),e.create(n)}nodeFromJSON(e){return Xt.fromJSON(this,e)}markFromJSON(e){return U.fromJSON(this,e)}nodeType(e){let n=this.nodes[e];if(!n)throw new RangeError("Unknown node type: "+e);return n}}function gl(t,e){let n=[];for(let r=0;r<e.length;r++){let s=e[r],i=t.marks[s],o=i;if(i)n.push(i);else for(let a in t.marks){let l=t.marks[a];(s=="_"||l.spec.group&&l.spec.group.split(" ").indexOf(s)>-1)&&n.push(o=l)}if(!o)throw new SyntaxError("Unknown mark type: '"+e[r]+"'")}return n}function Hp(t){return t.tag!=null}function Up(t){return t.style!=null}class ar{constructor(e,n){this.schema=e,this.rules=n,this.tags=[],this.styles=[];let r=this.matchedStyles=[];n.forEach(s=>{if(Hp(s))this.tags.push(s);else if(Up(s)){let i=/[^=]*/.exec(s.style)[0];r.indexOf(i)<0&&r.push(i),this.styles.push(s)}}),this.normalizeLists=!this.tags.some(s=>{if(!/^(ul|ol)\b/.test(s.tag)||!s.node)return!1;let i=e.nodes[s.node];return i.contentMatch.matchType(i)})}parse(e,n={}){let r=new xl(this,n,!1);return r.addAll(e,n.from,n.to),r.finish()}parseSlice(e,n={}){let r=new xl(this,n,!0);return r.addAll(e,n.from,n.to),w.maxOpen(r.finish())}matchTag(e,n,r){for(let s=r?this.tags.indexOf(r)+1:0;s<this.tags.length;s++){let i=this.tags[s];if(Kp(e,i.tag)&&(i.namespace===void 0||e.namespaceURI==i.namespace)&&(!i.context||n.matchesContext(i.context))){if(i.getAttrs){let o=i.getAttrs(e);if(o===!1)continue;i.attrs=o||void 0}return i}}}matchStyle(e,n,r,s){for(let i=s?this.styles.indexOf(s)+1:0;i<this.styles.length;i++){let o=this.styles[i],a=o.style;if(!(a.indexOf(e)!=0||o.context&&!r.matchesContext(o.context)||a.length>e.length&&(a.charCodeAt(e.length)!=61||a.slice(e.length+1)!=n))){if(o.getAttrs){let l=o.getAttrs(n);if(l===!1)continue;o.attrs=l||void 0}return o}}}static schemaRules(e){let n=[];function r(s){let i=s.priority==null?50:s.priority,o=0;for(;o<n.length;o++){let a=n[o];if((a.priority==null?50:a.priority)<i)break}n.splice(o,0,s)}for(let s in e.marks){let i=e.marks[s].spec.parseDOM;i&&i.forEach(o=>{r(o=bl(o)),o.mark||o.ignore||o.clearMark||(o.mark=s)})}for(let s in e.nodes){let i=e.nodes[s].spec.parseDOM;i&&i.forEach(o=>{r(o=bl(o)),o.node||o.ignore||o.mark||(o.node=s)})}return n}static fromSchema(e){return e.cached.domParser||(e.cached.domParser=new ar(e,ar.schemaRules(e)))}}const rd={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},jp={head:!0,noscript:!0,object:!0,script:!0,style:!0,title:!0},sd={ol:!0,ul:!0},ci=1,ui=2,ts=4;function yl(t,e,n){return e!=null?(e?ci:0)|(e==="full"?ui:0):t&&t.whitespace=="pre"?ci|ui:n&~ts}class Is{constructor(e,n,r,s,i,o,a){this.type=e,this.attrs=n,this.marks=r,this.pendingMarks=s,this.solid=i,this.options=a,this.content=[],this.activeMarks=U.none,this.stashMarks=[],this.match=o||(a&ts?null:e.contentMatch)}findWrapping(e){if(!this.match){if(!this.type)return[];let n=this.type.contentMatch.fillBefore(x.from(e));if(n)this.match=this.type.contentMatch.matchFragment(n);else{let r=this.type.contentMatch,s;return(s=r.findWrapping(e.type))?(this.match=r,s):null}}return this.match.findWrapping(e.type)}finish(e){if(!(this.options&ci)){let r=this.content[this.content.length-1],s;if(r&&r.isText&&(s=/[ \t\r\n\u000c]+$/.exec(r.text))){let i=r;r.text.length==s[0].length?this.content.pop():this.content[this.content.length-1]=i.withText(i.text.slice(0,i.text.length-s[0].length))}}let n=x.from(this.content);return!e&&this.match&&(n=n.append(this.match.fillBefore(x.empty,!0))),this.type?this.type.create(this.attrs,n,this.marks):n}popFromStashMark(e){for(let n=this.stashMarks.length-1;n>=0;n--)if(e.eq(this.stashMarks[n]))return this.stashMarks.splice(n,1)[0]}applyPending(e){for(let n=0,r=this.pendingMarks;n<r.length;n++){let s=r[n];(this.type?this.type.allowsMarkType(s.type):qp(s.type,e))&&!s.isInSet(this.activeMarks)&&(this.activeMarks=s.addToSet(this.activeMarks),this.pendingMarks=s.removeFromSet(this.pendingMarks))}}inlineContext(e){return this.type?this.type.inlineContent:this.content.length?this.content[0].isInline:e.parentNode&&!rd.hasOwnProperty(e.parentNode.nodeName.toLowerCase())}}class xl{constructor(e,n,r){this.parser=e,this.options=n,this.isOpen=r,this.open=0;let s=n.topNode,i,o=yl(null,n.preserveWhitespace,0)|(r?ts:0);s?i=new Is(s.type,s.attrs,U.none,U.none,!0,n.topMatch||s.type.contentMatch,o):r?i=new Is(null,null,U.none,U.none,!0,null,o):i=new Is(e.schema.topNodeType,null,U.none,U.none,!0,null,o),this.nodes=[i],this.find=n.findPositions,this.needsBlock=!1}get top(){return this.nodes[this.open]}addDOM(e){e.nodeType==3?this.addTextNode(e):e.nodeType==1&&this.addElement(e)}withStyleRules(e,n){let r=e.style;if(!r||!r.length)return n();let s=this.readStyles(e.style);if(!s)return;let[i,o]=s,a=this.top;for(let l=0;l<o.length;l++)this.removePendingMark(o[l],a);for(let l=0;l<i.length;l++)this.addPendingMark(i[l]);n();for(let l=0;l<i.length;l++)this.removePendingMark(i[l],a);for(let l=0;l<o.length;l++)this.addPendingMark(o[l])}addTextNode(e){let n=e.nodeValue,r=this.top;if(r.options&ui||r.inlineContext(e)||/[^ \t\r\n\u000c]/.test(n)){if(r.options&ci)r.options&ui?n=n.replace(/\r\n?/g,`
|
|
32
|
-
`):
|
|
33
|
-
`))}ignoreFallback(e){e.nodeName=="BR"&&(!this.top.type||!this.top.type.inlineContent)&&this.findPlace(this.parser.schema.text("-"))}readStyles(e){let n=U.none,r=U.none;if(e.length)for(let s=0;s<this.parser.matchedStyles.length;s++){let i=this.parser.matchedStyles[s],o=e.getPropertyValue(i);if(o)for(let a=void 0;;){let l=this.parser.matchStyle(i,o,this,a);if(!l)break;if(l.ignore)return null;if(l.clearMark?this.top.pendingMarks.concat(this.top.activeMarks).forEach(c=>{l.clearMark(c)&&(r=c.addToSet(r))}):n=this.parser.schema.marks[l.mark].create(l.attrs).addToSet(n),l.consuming===!1)a=l;else break}}return[n,r]}addElementByRule(e,n,r){let s,i,o;n.node?(i=this.parser.schema.nodes[n.node],i.isLeaf?this.insertNode(i.create(n.attrs))||this.leafFallback(e):s=this.enter(i,n.attrs||null,n.preserveWhitespace)):(o=this.parser.schema.marks[n.mark].create(n.attrs),this.addPendingMark(o));let a=this.top;if(i&&i.isLeaf)this.findInside(e);else if(r)this.addElement(e,r);else if(n.getContent)this.findInside(e),n.getContent(e,this.parser.schema).forEach(l=>this.insertNode(l));else{let l=e;typeof n.contentElement=="string"?l=e.querySelector(n.contentElement):typeof n.contentElement=="function"?l=n.contentElement(e):n.contentElement&&(l=n.contentElement),this.findAround(e,l,!0),this.addAll(l)}s&&this.sync(a)&&this.open--,o&&this.removePendingMark(o,a)}addAll(e,n,r){let s=n||0;for(let i=n?e.childNodes[n]:e.firstChild,o=r==null?null:e.childNodes[r];i!=o;i=i.nextSibling,++s)this.findAtPoint(e,s),this.addDOM(i);this.findAtPoint(e,s)}findPlace(e){let n,r;for(let s=this.open;s>=0;s--){let i=this.nodes[s],o=i.findWrapping(e);if(o&&(!n||n.length>o.length)&&(n=o,r=i,!o.length)||i.solid)break}if(!n)return!1;this.sync(r);for(let s=0;s<n.length;s++)this.enterInner(n[s],null,!1);return!0}insertNode(e){if(e.isInline&&this.needsBlock&&!this.top.type){let n=this.textblockFromContext();n&&this.enterInner(n)}if(this.findPlace(e)){this.closeExtra();let n=this.top;n.applyPending(e.type),n.match&&(n.match=n.match.matchType(e.type));let r=n.activeMarks;for(let s=0;s<e.marks.length;s++)(!n.type||n.type.allowsMarkType(e.marks[s].type))&&(r=e.marks[s].addToSet(r));return n.content.push(e.mark(r)),!0}return!1}enter(e,n,r){let s=this.findPlace(e.create(n));return s&&this.enterInner(e,n,!0,r),s}enterInner(e,n=null,r=!1,s){this.closeExtra();let i=this.top;i.applyPending(e),i.match=i.match&&i.match.matchType(e);let o=yl(e,s,i.options);i.options&ts&&i.content.length==0&&(o|=ts),this.nodes.push(new Is(e,n,i.activeMarks,i.pendingMarks,r,null,o)),this.open++}closeExtra(e=!1){let n=this.nodes.length-1;if(n>this.open){for(;n>this.open;n--)this.nodes[n-1].content.push(this.nodes[n].finish(e));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(e){for(let n=this.open;n>=0;n--)if(this.nodes[n]==e)return this.open=n,!0;return!1}get currentPos(){this.closeExtra();let e=0;for(let n=this.open;n>=0;n--){let r=this.nodes[n].content;for(let s=r.length-1;s>=0;s--)e+=r[s].nodeSize;n&&e++}return e}findAtPoint(e,n){if(this.find)for(let r=0;r<this.find.length;r++)this.find[r].node==e&&this.find[r].offset==n&&(this.find[r].pos=this.currentPos)}findInside(e){if(this.find)for(let n=0;n<this.find.length;n++)this.find[n].pos==null&&e.nodeType==1&&e.contains(this.find[n].node)&&(this.find[n].pos=this.currentPos)}findAround(e,n,r){if(e!=n&&this.find)for(let s=0;s<this.find.length;s++)this.find[s].pos==null&&e.nodeType==1&&e.contains(this.find[s].node)&&n.compareDocumentPosition(this.find[s].node)&(r?2:4)&&(this.find[s].pos=this.currentPos)}findInText(e){if(this.find)for(let n=0;n<this.find.length;n++)this.find[n].node==e&&(this.find[n].pos=this.currentPos-(e.nodeValue.length-this.find[n].offset))}matchesContext(e){if(e.indexOf("|")>-1)return e.split(/\s*\|\s*/).some(this.matchesContext,this);let n=e.split("/"),r=this.options.context,s=!this.isOpen&&(!r||r.parent.type==this.nodes[0].type),i=-(r?r.depth+1:0)+(s?0:1),o=(a,l)=>{for(;a>=0;a--){let c=n[a];if(c==""){if(a==n.length-1||a==0)continue;for(;l>=i;l--)if(o(a-1,l))return!0;return!1}else{let u=l>0||l==0&&s?this.nodes[l].type:r&&l>=i?r.node(l-i).type:null;if(!u||u.name!=c&&u.groups.indexOf(c)==-1)return!1;l--}}return!0};return o(n.length-1,this.open)}textblockFromContext(){let e=this.options.context;if(e)for(let n=e.depth;n>=0;n--){let r=e.node(n).contentMatchAt(e.indexAfter(n)).defaultType;if(r&&r.isTextblock&&r.defaultAttrs)return r}for(let n in this.parser.schema.nodes){let r=this.parser.schema.nodes[n];if(r.isTextblock&&r.defaultAttrs)return r}}addPendingMark(e){let n=Jp(e,this.top.pendingMarks);n&&this.top.stashMarks.push(n),this.top.pendingMarks=e.addToSet(this.top.pendingMarks)}removePendingMark(e,n){for(let r=this.open;r>=0;r--){let s=this.nodes[r];if(s.pendingMarks.lastIndexOf(e)>-1)s.pendingMarks=e.removeFromSet(s.pendingMarks);else{s.activeMarks=e.removeFromSet(s.activeMarks);let o=s.popFromStashMark(e);o&&s.type&&s.type.allowsMarkType(o.type)&&(s.activeMarks=o.addToSet(s.activeMarks))}if(s==n)break}}}function Wp(t){for(let e=t.firstChild,n=null;e;e=e.nextSibling){let r=e.nodeType==1?e.nodeName.toLowerCase():null;r&&sd.hasOwnProperty(r)&&n?(n.appendChild(e),e=n):r=="li"?n=e:r&&(n=null)}}function Kp(t,e){return(t.matches||t.msMatchesSelector||t.webkitMatchesSelector||t.mozMatchesSelector).call(t,e)}function bl(t){let e={};for(let n in t)e[n]=t[n];return e}function qp(t,e){let n=e.schema.nodes;for(let r in n){let s=n[r];if(!s.allowsMarkType(t))continue;let i=[],o=a=>{i.push(a);for(let l=0;l<a.edgeCount;l++){let{type:c,next:u}=a.edge(l);if(c==e||i.indexOf(u)<0&&o(u))return!0}};if(o(s.contentMatch))return!0}}function Jp(t,e){for(let n=0;n<e.length;n++)if(t.eq(e[n]))return e[n]}class Dt{constructor(e,n){this.nodes=e,this.marks=n}serializeFragment(e,n={},r){r||(r=to(n).createDocumentFragment());let s=r,i=[];return e.forEach(o=>{if(i.length||o.marks.length){let a=0,l=0;for(;a<i.length&&l<o.marks.length;){let c=o.marks[l];if(!this.marks[c.type.name]){l++;continue}if(!c.eq(i[a][0])||c.type.spec.spanning===!1)break;a++,l++}for(;a<i.length;)s=i.pop()[1];for(;l<o.marks.length;){let c=o.marks[l++],u=this.serializeMark(c,o.isInline,n);u&&(i.push([c,s]),s.appendChild(u.dom),s=u.contentDOM||u.dom)}}s.appendChild(this.serializeNodeInner(o,n))}),r}serializeNodeInner(e,n){let{dom:r,contentDOM:s}=zs(to(n),this.nodes[e.type.name](e),null,e.attrs);if(s){if(e.isLeaf)throw new RangeError("Content hole not allowed in a leaf node spec");this.serializeFragment(e.content,n,s)}return r}serializeNode(e,n={}){let r=this.serializeNodeInner(e,n);for(let s=e.marks.length-1;s>=0;s--){let i=this.serializeMark(e.marks[s],e.isInline,n);i&&((i.contentDOM||i.dom).appendChild(r),r=i.dom)}return r}serializeMark(e,n,r={}){let s=this.marks[e.type.name];return s&&zs(to(r),s(e,n),null,e.attrs)}static renderSpec(e,n,r=null,s){return zs(e,n,r,s)}static fromSchema(e){return e.cached.domSerializer||(e.cached.domSerializer=new Dt(this.nodesFromSchema(e),this.marksFromSchema(e)))}static nodesFromSchema(e){let n=kl(e.nodes);return n.text||(n.text=r=>r.text),n}static marksFromSchema(e){return kl(e.marks)}}function kl(t){let e={};for(let n in t){let r=t[n].spec.toDOM;r&&(e[n]=r)}return e}function to(t){return t.document||window.document}const Sl=new WeakMap;function Gp(t){let e=Sl.get(t);return e===void 0&&Sl.set(t,e=Xp(t)),e}function Xp(t){let e=null;function n(r){if(r&&typeof r=="object")if(Array.isArray(r))if(typeof r[0]=="string")e||(e=[]),e.push(r);else for(let s=0;s<r.length;s++)n(r[s]);else for(let s in r)n(r[s])}return n(t),e}function zs(t,e,n,r){if(typeof e=="string")return{dom:t.createTextNode(e)};if(e.nodeType!=null)return{dom:e};if(e.dom&&e.dom.nodeType!=null)return e;let s=e[0],i;if(typeof s!="string")throw new RangeError("Invalid array passed to renderSpec");if(r&&(i=Gp(r))&&i.indexOf(e)>-1)throw new RangeError("Using an array from an attribute object as a DOM spec. This may be an attempted cross site scripting attack.");let o=s.indexOf(" ");o>0&&(n=s.slice(0,o),s=s.slice(o+1));let a,l=n?t.createElementNS(n,s):t.createElement(s),c=e[1],u=1;if(c&&typeof c=="object"&&c.nodeType==null&&!Array.isArray(c)){u=2;for(let d in c)if(c[d]!=null){let h=d.indexOf(" ");h>0?l.setAttributeNS(d.slice(0,h),d.slice(h+1),c[d]):l.setAttribute(d,c[d])}}for(let d=u;d<e.length;d++){let h=e[d];if(h===0){if(d<e.length-1||d>u)throw new RangeError("Content hole must be the only child of its parent node");return{dom:l,contentDOM:l}}else{let{dom:f,contentDOM:p}=zs(t,h,n,r);if(l.appendChild(f),p){if(a)throw new RangeError("Multiple content holes");a=p}}}return{dom:l,contentDOM:a}}const id=65535,od=Math.pow(2,16);function Yp(t,e){return t+e*od}function wl(t){return t&id}function Zp(t){return(t-(t&id))/od}const ad=1,ld=2,$s=4,cd=8;class No{constructor(e,n,r){this.pos=e,this.delInfo=n,this.recover=r}get deleted(){return(this.delInfo&cd)>0}get deletedBefore(){return(this.delInfo&(ad|$s))>0}get deletedAfter(){return(this.delInfo&(ld|$s))>0}get deletedAcross(){return(this.delInfo&$s)>0}}class Ke{constructor(e,n=!1){if(this.ranges=e,this.inverted=n,!e.length&&Ke.empty)return Ke.empty}recover(e){let n=0,r=wl(e);if(!this.inverted)for(let s=0;s<r;s++)n+=this.ranges[s*3+2]-this.ranges[s*3+1];return this.ranges[r*3]+n+Zp(e)}mapResult(e,n=1){return this._map(e,n,!1)}map(e,n=1){return this._map(e,n,!0)}_map(e,n,r){let s=0,i=this.inverted?2:1,o=this.inverted?1:2;for(let a=0;a<this.ranges.length;a+=3){let l=this.ranges[a]-(this.inverted?s:0);if(l>e)break;let c=this.ranges[a+i],u=this.ranges[a+o],d=l+c;if(e<=d){let h=c?e==l?-1:e==d?1:n:n,f=l+s+(h<0?0:u);if(r)return f;let p=e==(n<0?l:d)?null:Yp(a/3,e-l),m=e==l?ld:e==d?ad:$s;return(n<0?e!=l:e!=d)&&(m|=cd),new No(f,m,p)}s+=u-c}return r?e+s:new No(e+s,0,null)}touches(e,n){let r=0,s=wl(n),i=this.inverted?2:1,o=this.inverted?1:2;for(let a=0;a<this.ranges.length;a+=3){let l=this.ranges[a]-(this.inverted?r:0);if(l>e)break;let c=this.ranges[a+i],u=l+c;if(e<=u&&a==s*3)return!0;r+=this.ranges[a+o]-c}return!1}forEach(e){let n=this.inverted?2:1,r=this.inverted?1:2;for(let s=0,i=0;s<this.ranges.length;s+=3){let o=this.ranges[s],a=o-(this.inverted?i:0),l=o+(this.inverted?0:i),c=this.ranges[s+n],u=this.ranges[s+r];e(a,a+c,l,l+u),i+=u-c}}invert(){return new Ke(this.ranges,!this.inverted)}toString(){return(this.inverted?"-":"")+JSON.stringify(this.ranges)}static offset(e){return e==0?Ke.empty:new Ke(e<0?[0,-e,0]:[0,0,e])}}Ke.empty=new Ke([]);class Yn{constructor(e=[],n,r=0,s=e.length){this.maps=e,this.mirror=n,this.from=r,this.to=s}slice(e=0,n=this.maps.length){return new Yn(this.maps,this.mirror,e,n)}copy(){return new Yn(this.maps.slice(),this.mirror&&this.mirror.slice(),this.from,this.to)}appendMap(e,n){this.to=this.maps.push(e),n!=null&&this.setMirror(this.maps.length-1,n)}appendMapping(e){for(let n=0,r=this.maps.length;n<e.maps.length;n++){let s=e.getMirror(n);this.appendMap(e.maps[n],s!=null&&s<n?r+s:void 0)}}getMirror(e){if(this.mirror){for(let n=0;n<this.mirror.length;n++)if(this.mirror[n]==e)return this.mirror[n+(n%2?-1:1)]}}setMirror(e,n){this.mirror||(this.mirror=[]),this.mirror.push(e,n)}appendMappingInverted(e){for(let n=e.maps.length-1,r=this.maps.length+e.maps.length;n>=0;n--){let s=e.getMirror(n);this.appendMap(e.maps[n].invert(),s!=null&&s>n?r-s-1:void 0)}}invert(){let e=new Yn;return e.appendMappingInverted(this),e}map(e,n=1){if(this.mirror)return this._map(e,n,!0);for(let r=this.from;r<this.to;r++)e=this.maps[r].map(e,n);return e}mapResult(e,n=1){return this._map(e,n,!1)}_map(e,n,r){let s=0;for(let i=this.from;i<this.to;i++){let o=this.maps[i],a=o.mapResult(e,n);if(a.recover!=null){let l=this.getMirror(i);if(l!=null&&l>i&&l<this.to){i=l,e=this.maps[l].recover(a.recover);continue}}s|=a.delInfo,e=a.pos}return r?e:new No(e,s,null)}}const no=Object.create(null);class ge{getMap(){return Ke.empty}merge(e){return null}static fromJSON(e,n){if(!n||!n.stepType)throw new RangeError("Invalid input for Step.fromJSON");let r=no[n.stepType];if(!r)throw new RangeError(`No step type ${n.stepType} defined`);return r.fromJSON(e,n)}static jsonID(e,n){if(e in no)throw new RangeError("Duplicate use of step JSON ID "+e);return no[e]=n,n.prototype.jsonID=e,n}}class le{constructor(e,n){this.doc=e,this.failed=n}static ok(e){return new le(e,null)}static fail(e){return new le(null,e)}static fromReplace(e,n,r,s){try{return le.ok(e.replace(n,r,s))}catch(i){if(i instanceof oi)return le.fail(i.message);throw i}}}function pa(t,e,n){let r=[];for(let s=0;s<t.childCount;s++){let i=t.child(s);i.content.size&&(i=i.copy(pa(i.content,e,i))),i.isInline&&(i=e(i,n,s)),r.push(i)}return x.fromArray(r)}class qt extends ge{constructor(e,n,r){super(),this.from=e,this.to=n,this.mark=r}apply(e){let n=e.slice(this.from,this.to),r=e.resolve(this.from),s=r.node(r.sharedDepth(this.to)),i=new w(pa(n.content,(o,a)=>!o.isAtom||!a.type.allowsMarkType(this.mark.type)?o:o.mark(this.mark.addToSet(o.marks)),s),n.openStart,n.openEnd);return le.fromReplace(e,this.from,this.to,i)}invert(){return new gt(this.from,this.to,this.mark)}map(e){let n=e.mapResult(this.from,1),r=e.mapResult(this.to,-1);return n.deleted&&r.deleted||n.pos>=r.pos?null:new qt(n.pos,r.pos,this.mark)}merge(e){return e instanceof qt&&e.mark.eq(this.mark)&&this.from<=e.to&&this.to>=e.from?new qt(Math.min(this.from,e.from),Math.max(this.to,e.to),this.mark):null}toJSON(){return{stepType:"addMark",mark:this.mark.toJSON(),from:this.from,to:this.to}}static fromJSON(e,n){if(typeof n.from!="number"||typeof n.to!="number")throw new RangeError("Invalid input for AddMarkStep.fromJSON");return new qt(n.from,n.to,e.markFromJSON(n.mark))}}ge.jsonID("addMark",qt);class gt extends ge{constructor(e,n,r){super(),this.from=e,this.to=n,this.mark=r}apply(e){let n=e.slice(this.from,this.to),r=new w(pa(n.content,s=>s.mark(this.mark.removeFromSet(s.marks)),e),n.openStart,n.openEnd);return le.fromReplace(e,this.from,this.to,r)}invert(){return new qt(this.from,this.to,this.mark)}map(e){let n=e.mapResult(this.from,1),r=e.mapResult(this.to,-1);return n.deleted&&r.deleted||n.pos>=r.pos?null:new gt(n.pos,r.pos,this.mark)}merge(e){return e instanceof gt&&e.mark.eq(this.mark)&&this.from<=e.to&&this.to>=e.from?new gt(Math.min(this.from,e.from),Math.max(this.to,e.to),this.mark):null}toJSON(){return{stepType:"removeMark",mark:this.mark.toJSON(),from:this.from,to:this.to}}static fromJSON(e,n){if(typeof n.from!="number"||typeof n.to!="number")throw new RangeError("Invalid input for RemoveMarkStep.fromJSON");return new gt(n.from,n.to,e.markFromJSON(n.mark))}}ge.jsonID("removeMark",gt);class Jt extends ge{constructor(e,n){super(),this.pos=e,this.mark=n}apply(e){let n=e.nodeAt(this.pos);if(!n)return le.fail("No node at mark step's position");let r=n.type.create(n.attrs,null,this.mark.addToSet(n.marks));return le.fromReplace(e,this.pos,this.pos+1,new w(x.from(r),0,n.isLeaf?0:1))}invert(e){let n=e.nodeAt(this.pos);if(n){let r=this.mark.addToSet(n.marks);if(r.length==n.marks.length){for(let s=0;s<n.marks.length;s++)if(!n.marks[s].isInSet(r))return new Jt(this.pos,n.marks[s]);return new Jt(this.pos,this.mark)}}return new lr(this.pos,this.mark)}map(e){let n=e.mapResult(this.pos,1);return n.deletedAfter?null:new Jt(n.pos,this.mark)}toJSON(){return{stepType:"addNodeMark",pos:this.pos,mark:this.mark.toJSON()}}static fromJSON(e,n){if(typeof n.pos!="number")throw new RangeError("Invalid input for AddNodeMarkStep.fromJSON");return new Jt(n.pos,e.markFromJSON(n.mark))}}ge.jsonID("addNodeMark",Jt);class lr extends ge{constructor(e,n){super(),this.pos=e,this.mark=n}apply(e){let n=e.nodeAt(this.pos);if(!n)return le.fail("No node at mark step's position");let r=n.type.create(n.attrs,null,this.mark.removeFromSet(n.marks));return le.fromReplace(e,this.pos,this.pos+1,new w(x.from(r),0,n.isLeaf?0:1))}invert(e){let n=e.nodeAt(this.pos);return!n||!this.mark.isInSet(n.marks)?this:new Jt(this.pos,this.mark)}map(e){let n=e.mapResult(this.pos,1);return n.deletedAfter?null:new lr(n.pos,this.mark)}toJSON(){return{stepType:"removeNodeMark",pos:this.pos,mark:this.mark.toJSON()}}static fromJSON(e,n){if(typeof n.pos!="number")throw new RangeError("Invalid input for RemoveNodeMarkStep.fromJSON");return new lr(n.pos,e.markFromJSON(n.mark))}}ge.jsonID("removeNodeMark",lr);class Ce extends ge{constructor(e,n,r,s=!1){super(),this.from=e,this.to=n,this.slice=r,this.structure=s}apply(e){return this.structure&&Ao(e,this.from,this.to)?le.fail("Structure replace would overwrite content"):le.fromReplace(e,this.from,this.to,this.slice)}getMap(){return new Ke([this.from,this.to-this.from,this.slice.size])}invert(e){return new Ce(this.from,this.from+this.slice.size,e.slice(this.from,this.to))}map(e){let n=e.mapResult(this.from,1),r=e.mapResult(this.to,-1);return n.deletedAcross&&r.deletedAcross?null:new Ce(n.pos,Math.max(n.pos,r.pos),this.slice)}merge(e){if(!(e instanceof Ce)||e.structure||this.structure)return null;if(this.from+this.slice.size==e.from&&!this.slice.openEnd&&!e.slice.openStart){let n=this.slice.size+e.slice.size==0?w.empty:new w(this.slice.content.append(e.slice.content),this.slice.openStart,e.slice.openEnd);return new Ce(this.from,this.to+(e.to-e.from),n,this.structure)}else if(e.to==this.from&&!this.slice.openStart&&!e.slice.openEnd){let n=this.slice.size+e.slice.size==0?w.empty:new w(e.slice.content.append(this.slice.content),e.slice.openStart,this.slice.openEnd);return new Ce(e.from,this.to,n,this.structure)}else return null}toJSON(){let e={stepType:"replace",from:this.from,to:this.to};return this.slice.size&&(e.slice=this.slice.toJSON()),this.structure&&(e.structure=!0),e}static fromJSON(e,n){if(typeof n.from!="number"||typeof n.to!="number")throw new RangeError("Invalid input for ReplaceStep.fromJSON");return new Ce(n.from,n.to,w.fromJSON(e,n.slice),!!n.structure)}}ge.jsonID("replace",Ce);class pe extends ge{constructor(e,n,r,s,i,o,a=!1){super(),this.from=e,this.to=n,this.gapFrom=r,this.gapTo=s,this.slice=i,this.insert=o,this.structure=a}apply(e){if(this.structure&&(Ao(e,this.from,this.gapFrom)||Ao(e,this.gapTo,this.to)))return le.fail("Structure gap-replace would overwrite content");let n=e.slice(this.gapFrom,this.gapTo);if(n.openStart||n.openEnd)return le.fail("Gap is not a flat range");let r=this.slice.insertAt(this.insert,n.content);return r?le.fromReplace(e,this.from,this.to,r):le.fail("Content does not fit in gap")}getMap(){return new Ke([this.from,this.gapFrom-this.from,this.insert,this.gapTo,this.to-this.gapTo,this.slice.size-this.insert])}invert(e){let n=this.gapTo-this.gapFrom;return new pe(this.from,this.from+this.slice.size+n,this.from+this.insert,this.from+this.insert+n,e.slice(this.from,this.to).removeBetween(this.gapFrom-this.from,this.gapTo-this.from),this.gapFrom-this.from,this.structure)}map(e){let n=e.mapResult(this.from,1),r=e.mapResult(this.to,-1),s=this.from==this.gapFrom?n.pos:e.map(this.gapFrom,-1),i=this.to==this.gapTo?r.pos:e.map(this.gapTo,1);return n.deletedAcross&&r.deletedAcross||s<n.pos||i>r.pos?null:new pe(n.pos,r.pos,s,i,this.slice,this.insert,this.structure)}toJSON(){let e={stepType:"replaceAround",from:this.from,to:this.to,gapFrom:this.gapFrom,gapTo:this.gapTo,insert:this.insert};return this.slice.size&&(e.slice=this.slice.toJSON()),this.structure&&(e.structure=!0),e}static fromJSON(e,n){if(typeof n.from!="number"||typeof n.to!="number"||typeof n.gapFrom!="number"||typeof n.gapTo!="number"||typeof n.insert!="number")throw new RangeError("Invalid input for ReplaceAroundStep.fromJSON");return new pe(n.from,n.to,n.gapFrom,n.gapTo,w.fromJSON(e,n.slice),n.insert,!!n.structure)}}ge.jsonID("replaceAround",pe);function Ao(t,e,n){let r=t.resolve(e),s=n-e,i=r.depth;for(;s>0&&i>0&&r.indexAfter(i)==r.node(i).childCount;)i--,s--;if(s>0){let o=r.node(i).maybeChild(r.indexAfter(i));for(;s>0;){if(!o||o.isLeaf)return!0;o=o.firstChild,s--}}return!1}function Qp(t,e,n,r){let s=[],i=[],o,a;t.doc.nodesBetween(e,n,(l,c,u)=>{if(!l.isInline)return;let d=l.marks;if(!r.isInSet(d)&&u.type.allowsMarkType(r.type)){let h=Math.max(c,e),f=Math.min(c+l.nodeSize,n),p=r.addToSet(d);for(let m=0;m<d.length;m++)d[m].isInSet(p)||(o&&o.to==h&&o.mark.eq(d[m])?o.to=f:s.push(o=new gt(h,f,d[m])));a&&a.to==h?a.to=f:i.push(a=new qt(h,f,r))}}),s.forEach(l=>t.step(l)),i.forEach(l=>t.step(l))}function em(t,e,n,r){let s=[],i=0;t.doc.nodesBetween(e,n,(o,a)=>{if(!o.isInline)return;i++;let l=null;if(r instanceof Es){let c=o.marks,u;for(;u=r.isInSet(c);)(l||(l=[])).push(u),c=u.removeFromSet(c)}else r?r.isInSet(o.marks)&&(l=[r]):l=o.marks;if(l&&l.length){let c=Math.min(a+o.nodeSize,n);for(let u=0;u<l.length;u++){let d=l[u],h;for(let f=0;f<s.length;f++){let p=s[f];p.step==i-1&&d.eq(s[f].style)&&(h=p)}h?(h.to=c,h.step=i):s.push({style:d,from:Math.max(a,e),to:c,step:i})}}}),s.forEach(o=>t.step(new gt(o.from,o.to,o.style)))}function ud(t,e,n,r=n.contentMatch,s=!0){let i=t.doc.nodeAt(e),o=[],a=e+1;for(let l=0;l<i.childCount;l++){let c=i.child(l),u=a+c.nodeSize,d=r.matchType(c.type);if(!d)o.push(new Ce(a,u,w.empty));else{r=d;for(let h=0;h<c.marks.length;h++)n.allowsMarkType(c.marks[h].type)||t.step(new gt(a,u,c.marks[h]));if(s&&c.isText&&n.whitespace!="pre"){let h,f=/\r?\n|\r/g,p;for(;h=f.exec(c.text);)p||(p=new w(x.from(n.schema.text(" ",n.allowedMarks(c.marks))),0,0)),o.push(new Ce(a+h.index,a+h.index+h[0].length,p))}}a=u}if(!r.validEnd){let l=r.fillBefore(x.empty,!0);t.replace(a,a,new w(l,0,0))}for(let l=o.length-1;l>=0;l--)t.step(o[l])}function tm(t,e,n){return(e==0||t.canReplace(e,t.childCount))&&(n==t.childCount||t.canReplace(0,n))}function xr(t){let n=t.parent.content.cutByIndex(t.startIndex,t.endIndex);for(let r=t.depth;;--r){let s=t.$from.node(r),i=t.$from.index(r),o=t.$to.indexAfter(r);if(r<t.depth&&s.canReplace(i,o,n))return r;if(r==0||s.type.spec.isolating||!tm(s,i,o))break}return null}function nm(t,e,n){let{$from:r,$to:s,depth:i}=e,o=r.before(i+1),a=s.after(i+1),l=o,c=a,u=x.empty,d=0;for(let p=i,m=!1;p>n;p--)m||r.index(p)>0?(m=!0,u=x.from(r.node(p).copy(u)),d++):l--;let h=x.empty,f=0;for(let p=i,m=!1;p>n;p--)m||s.after(p+1)<s.end(p)?(m=!0,h=x.from(s.node(p).copy(h)),f++):c++;t.step(new pe(l,c,o,a,new w(u.append(h),d,f),u.size-d,!0))}function ma(t,e,n=null,r=t){let s=rm(t,e),i=s&&sm(r,e);return i?s.map(vl).concat({type:e,attrs:n}).concat(i.map(vl)):null}function vl(t){return{type:t,attrs:null}}function rm(t,e){let{parent:n,startIndex:r,endIndex:s}=t,i=n.contentMatchAt(r).findWrapping(e);if(!i)return null;let o=i.length?i[0]:e;return n.canReplaceWith(r,s,o)?i:null}function sm(t,e){let{parent:n,startIndex:r,endIndex:s}=t,i=n.child(r),o=e.contentMatch.findWrapping(i.type);if(!o)return null;let l=(o.length?o[o.length-1]:e).contentMatch;for(let c=r;l&&c<s;c++)l=l.matchType(n.child(c).type);return!l||!l.validEnd?null:o}function im(t,e,n){let r=x.empty;for(let o=n.length-1;o>=0;o--){if(r.size){let a=n[o].type.contentMatch.matchFragment(r);if(!a||!a.validEnd)throw new RangeError("Wrapper type given to Transform.wrap does not form valid content of its parent wrapper")}r=x.from(n[o].type.create(n[o].attrs,r))}let s=e.start,i=e.end;t.step(new pe(s,i,s,i,new w(r,0,0),n.length,!0))}function om(t,e,n,r,s){if(!r.isTextblock)throw new RangeError("Type given to setBlockType should be a textblock");let i=t.steps.length;t.doc.nodesBetween(e,n,(o,a)=>{if(o.isTextblock&&!o.hasMarkup(r,s)&&cm(t.doc,t.mapping.slice(i).map(a),r)){let l=null;if(r.schema.linebreakReplacement){let h=r.whitespace=="pre",f=!!r.contentMatch.matchType(r.schema.linebreakReplacement);h&&!f?l=!1:!h&&f&&(l=!0)}l===!1&&lm(t,o,a,i),ud(t,t.mapping.slice(i).map(a,1),r,void 0,l===null);let c=t.mapping.slice(i),u=c.map(a,1),d=c.map(a+o.nodeSize,1);return t.step(new pe(u,d,u+1,d-1,new w(x.from(r.create(s,null,o.marks)),0,0),1,!0)),l===!0&&am(t,o,a,i),!1}})}function am(t,e,n,r){e.forEach((s,i)=>{if(s.isText){let o,a=/\r?\n|\r/g;for(;o=a.exec(s.text);){let l=t.mapping.slice(r).map(n+1+i+o.index);t.replaceWith(l,l+1,e.type.schema.linebreakReplacement.create())}}})}function lm(t,e,n,r){e.forEach((s,i)=>{if(s.type==s.type.schema.linebreakReplacement){let o=t.mapping.slice(r).map(n+1+i);t.replaceWith(o,o+1,e.type.schema.text(`
|
|
34
|
-
`))}})}function cm(t,e,n){let r=t.resolve(e),s=r.index();return r.parent.canReplaceWith(s,s+1,n)}function um(t,e,n,r,s){let i=t.doc.nodeAt(e);if(!i)throw new RangeError("No node at given position");n||(n=i.type);let o=n.create(r,null,s||i.marks);if(i.isLeaf)return t.replaceWith(e,e+i.nodeSize,o);if(!n.validContent(i.content))throw new RangeError("Invalid content for node type "+n.name);t.step(new pe(e,e+i.nodeSize,e+1,e+i.nodeSize-1,new w(x.from(o),0,0),1,!0))}function Zn(t,e,n=1,r){let s=t.resolve(e),i=s.depth-n,o=r&&r[r.length-1]||s.parent;if(i<0||s.parent.type.spec.isolating||!s.parent.canReplace(s.index(),s.parent.childCount)||!o.type.validContent(s.parent.content.cutByIndex(s.index(),s.parent.childCount)))return!1;for(let c=s.depth-1,u=n-2;c>i;c--,u--){let d=s.node(c),h=s.index(c);if(d.type.spec.isolating)return!1;let f=d.content.cutByIndex(h,d.childCount),p=r&&r[u+1];p&&(f=f.replaceChild(0,p.type.create(p.attrs)));let m=r&&r[u]||d;if(!d.canReplace(h+1,d.childCount)||!m.type.validContent(f))return!1}let a=s.indexAfter(i),l=r&&r[0];return s.node(i).canReplaceWith(a,a,l?l.type:s.node(i+1).type)}function dm(t,e,n=1,r){let s=t.doc.resolve(e),i=x.empty,o=x.empty;for(let a=s.depth,l=s.depth-n,c=n-1;a>l;a--,c--){i=x.from(s.node(a).copy(i));let u=r&&r[c];o=x.from(u?u.type.create(u.attrs,o):s.node(a).copy(o))}t.step(new Ce(e,e,new w(i.append(o),n,n),!0))}function Cs(t,e){let n=t.resolve(e),r=n.index();return hm(n.nodeBefore,n.nodeAfter)&&n.parent.canReplace(r,r+1)}function hm(t,e){return!!(t&&e&&!t.isLeaf&&t.canAppend(e))}function fm(t,e,n){let r=new Ce(e-n,e+n,w.empty,!0);t.step(r)}function pm(t,e,n){let r=t.resolve(e);if(r.parent.canReplaceWith(r.index(),r.index(),n))return e;if(r.parentOffset==0)for(let s=r.depth-1;s>=0;s--){let i=r.index(s);if(r.node(s).canReplaceWith(i,i,n))return r.before(s+1);if(i>0)return null}if(r.parentOffset==r.parent.content.size)for(let s=r.depth-1;s>=0;s--){let i=r.indexAfter(s);if(r.node(s).canReplaceWith(i,i,n))return r.after(s+1);if(i<r.node(s).childCount)return null}return null}function mm(t,e,n){let r=t.resolve(e);if(!n.content.size)return e;let s=n.content;for(let i=0;i<n.openStart;i++)s=s.firstChild.content;for(let i=1;i<=(n.openStart==0&&n.size?2:1);i++)for(let o=r.depth;o>=0;o--){let a=o==r.depth?0:r.pos<=(r.start(o+1)+r.end(o+1))/2?-1:1,l=r.index(o)+(a>0?1:0),c=r.node(o),u=!1;if(i==1)u=c.canReplace(l,l,s);else{let d=c.contentMatchAt(l).findWrapping(s.firstChild.type);u=d&&c.canReplaceWith(l,l,d[0])}if(u)return a==0?r.pos:a<0?r.before(o+1):r.after(o+1)}return null}function ga(t,e,n=e,r=w.empty){if(e==n&&!r.size)return null;let s=t.resolve(e),i=t.resolve(n);return dd(s,i,r)?new Ce(e,n,r):new gm(s,i,r).fit()}function dd(t,e,n){return!n.openStart&&!n.openEnd&&t.start()==e.start()&&t.parent.canReplace(t.index(),e.index(),n.content)}class gm{constructor(e,n,r){this.$from=e,this.$to=n,this.unplaced=r,this.frontier=[],this.placed=x.empty;for(let s=0;s<=e.depth;s++){let i=e.node(s);this.frontier.push({type:i.type,match:i.contentMatchAt(e.indexAfter(s))})}for(let s=e.depth;s>0;s--)this.placed=x.from(e.node(s).copy(this.placed))}get depth(){return this.frontier.length-1}fit(){for(;this.unplaced.size;){let c=this.findFittable();c?this.placeNodes(c):this.openMore()||this.dropNode()}let e=this.mustMoveInline(),n=this.placed.size-this.depth-this.$from.depth,r=this.$from,s=this.close(e<0?this.$to:r.doc.resolve(e));if(!s)return null;let i=this.placed,o=r.depth,a=s.depth;for(;o&&a&&i.childCount==1;)i=i.firstChild.content,o--,a--;let l=new w(i,o,a);return e>-1?new pe(r.pos,e,this.$to.pos,this.$to.end(),l,n):l.size||r.pos!=this.$to.pos?new Ce(r.pos,s.pos,l):null}findFittable(){let e=this.unplaced.openStart;for(let n=this.unplaced.content,r=0,s=this.unplaced.openEnd;r<e;r++){let i=n.firstChild;if(n.childCount>1&&(s=0),i.type.spec.isolating&&s<=r){e=r;break}n=i.content}for(let n=1;n<=2;n++)for(let r=n==1?e:this.unplaced.openStart;r>=0;r--){let s,i=null;r?(i=ro(this.unplaced.content,r-1).firstChild,s=i.content):s=this.unplaced.content;let o=s.firstChild;for(let a=this.depth;a>=0;a--){let{type:l,match:c}=this.frontier[a],u,d=null;if(n==1&&(o?c.matchType(o.type)||(d=c.fillBefore(x.from(o),!1)):i&&l.compatibleContent(i.type)))return{sliceDepth:r,frontierDepth:a,parent:i,inject:d};if(n==2&&o&&(u=c.findWrapping(o.type)))return{sliceDepth:r,frontierDepth:a,parent:i,wrap:u};if(i&&c.matchType(i.type))break}}}openMore(){let{content:e,openStart:n,openEnd:r}=this.unplaced,s=ro(e,n);return!s.childCount||s.firstChild.isLeaf?!1:(this.unplaced=new w(e,n+1,Math.max(r,s.size+n>=e.size-r?n+1:0)),!0)}dropNode(){let{content:e,openStart:n,openEnd:r}=this.unplaced,s=ro(e,n);if(s.childCount<=1&&n>0){let i=e.size-n<=n+s.size;this.unplaced=new w(Tr(e,n-1,1),n-1,i?n-1:r)}else this.unplaced=new w(Tr(e,n,1),n,r)}placeNodes({sliceDepth:e,frontierDepth:n,parent:r,inject:s,wrap:i}){for(;this.depth>n;)this.closeFrontierNode();if(i)for(let m=0;m<i.length;m++)this.openFrontierNode(i[m]);let o=this.unplaced,a=r?r.content:o.content,l=o.openStart-e,c=0,u=[],{match:d,type:h}=this.frontier[n];if(s){for(let m=0;m<s.childCount;m++)u.push(s.child(m));d=d.matchFragment(s)}let f=a.size+e-(o.content.size-o.openEnd);for(;c<a.childCount;){let m=a.child(c),g=d.matchType(m.type);if(!g)break;c++,(c>1||l==0||m.content.size)&&(d=g,u.push(hd(m.mark(h.allowedMarks(m.marks)),c==1?l:0,c==a.childCount?f:-1)))}let p=c==a.childCount;p||(f=-1),this.placed=Or(this.placed,n,x.from(u)),this.frontier[n].match=d,p&&f<0&&r&&r.type==this.frontier[this.depth].type&&this.frontier.length>1&&this.closeFrontierNode();for(let m=0,g=a;m<f;m++){let y=g.lastChild;this.frontier.push({type:y.type,match:y.contentMatchAt(y.childCount)}),g=y.content}this.unplaced=p?e==0?w.empty:new w(Tr(o.content,e-1,1),e-1,f<0?o.openEnd:e-1):new w(Tr(o.content,e,c),o.openStart,o.openEnd)}mustMoveInline(){if(!this.$to.parent.isTextblock)return-1;let e=this.frontier[this.depth],n;if(!e.type.isTextblock||!so(this.$to,this.$to.depth,e.type,e.match,!1)||this.$to.depth==this.depth&&(n=this.findCloseLevel(this.$to))&&n.depth==this.depth)return-1;let{depth:r}=this.$to,s=this.$to.after(r);for(;r>1&&s==this.$to.end(--r);)++s;return s}findCloseLevel(e){e:for(let n=Math.min(this.depth,e.depth);n>=0;n--){let{match:r,type:s}=this.frontier[n],i=n<e.depth&&e.end(n+1)==e.pos+(e.depth-(n+1)),o=so(e,n,s,r,i);if(o){for(let a=n-1;a>=0;a--){let{match:l,type:c}=this.frontier[a],u=so(e,a,c,l,!0);if(!u||u.childCount)continue e}return{depth:n,fit:o,move:i?e.doc.resolve(e.after(n+1)):e}}}}close(e){let n=this.findCloseLevel(e);if(!n)return null;for(;this.depth>n.depth;)this.closeFrontierNode();n.fit.childCount&&(this.placed=Or(this.placed,n.depth,n.fit)),e=n.move;for(let r=n.depth+1;r<=e.depth;r++){let s=e.node(r),i=s.type.contentMatch.fillBefore(s.content,!0,e.index(r));this.openFrontierNode(s.type,s.attrs,i)}return e}openFrontierNode(e,n=null,r){let s=this.frontier[this.depth];s.match=s.match.matchType(e),this.placed=Or(this.placed,this.depth,x.from(e.create(n,r))),this.frontier.push({type:e,match:e.contentMatch})}closeFrontierNode(){let n=this.frontier.pop().match.fillBefore(x.empty,!0);n.childCount&&(this.placed=Or(this.placed,this.frontier.length,n))}}function Tr(t,e,n){return e==0?t.cutByIndex(n,t.childCount):t.replaceChild(0,t.firstChild.copy(Tr(t.firstChild.content,e-1,n)))}function Or(t,e,n){return e==0?t.append(n):t.replaceChild(t.childCount-1,t.lastChild.copy(Or(t.lastChild.content,e-1,n)))}function ro(t,e){for(let n=0;n<e;n++)t=t.firstChild.content;return t}function hd(t,e,n){if(e<=0)return t;let r=t.content;return e>1&&(r=r.replaceChild(0,hd(r.firstChild,e-1,r.childCount==1?n-1:0))),e>0&&(r=t.type.contentMatch.fillBefore(r).append(r),n<=0&&(r=r.append(t.type.contentMatch.matchFragment(r).fillBefore(x.empty,!0)))),t.copy(r)}function so(t,e,n,r,s){let i=t.node(e),o=s?t.indexAfter(e):t.index(e);if(o==i.childCount&&!n.compatibleContent(i.type))return null;let a=r.fillBefore(i.content,!0,o);return a&&!ym(n,i.content,o)?a:null}function ym(t,e,n){for(let r=n;r<e.childCount;r++)if(!t.allowsMarks(e.child(r).marks))return!0;return!1}function xm(t){return t.spec.defining||t.spec.definingForContent}function bm(t,e,n,r){if(!r.size)return t.deleteRange(e,n);let s=t.doc.resolve(e),i=t.doc.resolve(n);if(dd(s,i,r))return t.step(new Ce(e,n,r));let o=pd(s,t.doc.resolve(n));o[o.length-1]==0&&o.pop();let a=-(s.depth+1);o.unshift(a);for(let h=s.depth,f=s.pos-1;h>0;h--,f--){let p=s.node(h).type.spec;if(p.defining||p.definingAsContext||p.isolating)break;o.indexOf(h)>-1?a=h:s.before(h)==f&&o.splice(1,0,-h)}let l=o.indexOf(a),c=[],u=r.openStart;for(let h=r.content,f=0;;f++){let p=h.firstChild;if(c.push(p),f==r.openStart)break;h=p.content}for(let h=u-1;h>=0;h--){let f=c[h],p=xm(f.type);if(p&&!f.sameMarkup(s.node(Math.abs(a)-1)))u=h;else if(p||!f.type.isTextblock)break}for(let h=r.openStart;h>=0;h--){let f=(h+u+1)%(r.openStart+1),p=c[f];if(p)for(let m=0;m<o.length;m++){let g=o[(m+l)%o.length],y=!0;g<0&&(y=!1,g=-g);let k=s.node(g-1),D=s.index(g-1);if(k.canReplaceWith(D,D,p.type,p.marks))return t.replace(s.before(g),y?i.after(g):n,new w(fd(r.content,0,r.openStart,f),f,r.openEnd))}}let d=t.steps.length;for(let h=o.length-1;h>=0&&(t.replace(e,n,r),!(t.steps.length>d));h--){let f=o[h];f<0||(e=s.before(f),n=i.after(f))}}function fd(t,e,n,r,s){if(e<n){let i=t.firstChild;t=t.replaceChild(0,i.copy(fd(i.content,e+1,n,r,i)))}if(e>r){let i=s.contentMatchAt(0),o=i.fillBefore(t).append(t);t=o.append(i.matchFragment(o).fillBefore(x.empty,!0))}return t}function km(t,e,n,r){if(!r.isInline&&e==n&&t.doc.resolve(e).parent.content.size){let s=pm(t.doc,e,r.type);s!=null&&(e=n=s)}t.replaceRange(e,n,new w(x.from(r),0,0))}function Sm(t,e,n){let r=t.doc.resolve(e),s=t.doc.resolve(n),i=pd(r,s);for(let o=0;o<i.length;o++){let a=i[o],l=o==i.length-1;if(l&&a==0||r.node(a).type.contentMatch.validEnd)return t.delete(r.start(a),s.end(a));if(a>0&&(l||r.node(a-1).canReplace(r.index(a-1),s.indexAfter(a-1))))return t.delete(r.before(a),s.after(a))}for(let o=1;o<=r.depth&&o<=s.depth;o++)if(e-r.start(o)==r.depth-o&&n>r.end(o)&&s.end(o)-n!=s.depth-o)return t.delete(r.before(o),n);t.delete(e,n)}function pd(t,e){let n=[],r=Math.min(t.depth,e.depth);for(let s=r;s>=0;s--){let i=t.start(s);if(i<t.pos-(t.depth-s)||e.end(s)>e.pos+(e.depth-s)||t.node(s).type.spec.isolating||e.node(s).type.spec.isolating)break;(i==e.start(s)||s==t.depth&&s==e.depth&&t.parent.inlineContent&&e.parent.inlineContent&&s&&e.start(s-1)==i-1)&&n.push(s)}return n}class Qn extends ge{constructor(e,n,r){super(),this.pos=e,this.attr=n,this.value=r}apply(e){let n=e.nodeAt(this.pos);if(!n)return le.fail("No node at attribute step's position");let r=Object.create(null);for(let i in n.attrs)r[i]=n.attrs[i];r[this.attr]=this.value;let s=n.type.create(r,null,n.marks);return le.fromReplace(e,this.pos,this.pos+1,new w(x.from(s),0,n.isLeaf?0:1))}getMap(){return Ke.empty}invert(e){return new Qn(this.pos,this.attr,e.nodeAt(this.pos).attrs[this.attr])}map(e){let n=e.mapResult(this.pos,1);return n.deletedAfter?null:new Qn(n.pos,this.attr,this.value)}toJSON(){return{stepType:"attr",pos:this.pos,attr:this.attr,value:this.value}}static fromJSON(e,n){if(typeof n.pos!="number"||typeof n.attr!="string")throw new RangeError("Invalid input for AttrStep.fromJSON");return new Qn(n.pos,n.attr,n.value)}}ge.jsonID("attr",Qn);class as extends ge{constructor(e,n){super(),this.attr=e,this.value=n}apply(e){let n=Object.create(null);for(let s in e.attrs)n[s]=e.attrs[s];n[this.attr]=this.value;let r=e.type.create(n,e.content,e.marks);return le.ok(r)}getMap(){return Ke.empty}invert(e){return new as(this.attr,e.attrs[this.attr])}map(e){return this}toJSON(){return{stepType:"docAttr",attr:this.attr,value:this.value}}static fromJSON(e,n){if(typeof n.attr!="string")throw new RangeError("Invalid input for DocAttrStep.fromJSON");return new as(n.attr,n.value)}}ge.jsonID("docAttr",as);let cr=class extends Error{};cr=function t(e){let n=Error.call(this,e);return n.__proto__=t.prototype,n};cr.prototype=Object.create(Error.prototype);cr.prototype.constructor=cr;cr.prototype.name="TransformError";class wm{constructor(e){this.doc=e,this.steps=[],this.docs=[],this.mapping=new Yn}get before(){return this.docs.length?this.docs[0]:this.doc}step(e){let n=this.maybeStep(e);if(n.failed)throw new cr(n.failed);return this}maybeStep(e){let n=e.apply(this.doc);return n.failed||this.addStep(e,n.doc),n}get docChanged(){return this.steps.length>0}addStep(e,n){this.docs.push(this.doc),this.steps.push(e),this.mapping.appendMap(e.getMap()),this.doc=n}replace(e,n=e,r=w.empty){let s=ga(this.doc,e,n,r);return s&&this.step(s),this}replaceWith(e,n,r){return this.replace(e,n,new w(x.from(r),0,0))}delete(e,n){return this.replace(e,n,w.empty)}insert(e,n){return this.replaceWith(e,e,n)}replaceRange(e,n,r){return bm(this,e,n,r),this}replaceRangeWith(e,n,r){return km(this,e,n,r),this}deleteRange(e,n){return Sm(this,e,n),this}lift(e,n){return nm(this,e,n),this}join(e,n=1){return fm(this,e,n),this}wrap(e,n){return im(this,e,n),this}setBlockType(e,n=e,r,s=null){return om(this,e,n,r,s),this}setNodeMarkup(e,n,r=null,s){return um(this,e,n,r,s),this}setNodeAttribute(e,n,r){return this.step(new Qn(e,n,r)),this}setDocAttribute(e,n){return this.step(new as(e,n)),this}addNodeMark(e,n){return this.step(new Jt(e,n)),this}removeNodeMark(e,n){if(!(n instanceof U)){let r=this.doc.nodeAt(e);if(!r)throw new RangeError("No node at position "+e);if(n=n.isInSet(r.marks),!n)return this}return this.step(new lr(e,n)),this}split(e,n=1,r){return dm(this,e,n,r),this}addMark(e,n,r){return Qp(this,e,n,r),this}removeMark(e,n,r){return em(this,e,n,r),this}clearIncompatible(e,n,r){return ud(this,e,n,r),this}}const io=Object.create(null);class V{constructor(e,n,r){this.$anchor=e,this.$head=n,this.ranges=r||[new vm(e.min(n),e.max(n))]}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 e=this.ranges;for(let n=0;n<e.length;n++)if(e[n].$from.pos!=e[n].$to.pos)return!1;return!0}content(){return this.$from.doc.slice(this.from,this.to,!0)}replace(e,n=w.empty){let r=n.content.lastChild,s=null;for(let a=0;a<n.openEnd;a++)s=r,r=r.lastChild;let i=e.steps.length,o=this.ranges;for(let a=0;a<o.length;a++){let{$from:l,$to:c}=o[a],u=e.mapping.slice(i);e.replaceRange(u.map(l.pos),u.map(c.pos),a?w.empty:n),a==0&&Tl(e,i,(r?r.isInline:s&&s.isTextblock)?-1:1)}}replaceWith(e,n){let r=e.steps.length,s=this.ranges;for(let i=0;i<s.length;i++){let{$from:o,$to:a}=s[i],l=e.mapping.slice(r),c=l.map(o.pos),u=l.map(a.pos);i?e.deleteRange(c,u):(e.replaceRangeWith(c,u,n),Tl(e,r,n.isInline?-1:1))}}static findFrom(e,n,r=!1){let s=e.parent.inlineContent?new L(e):jn(e.node(0),e.parent,e.pos,e.index(),n,r);if(s)return s;for(let i=e.depth-1;i>=0;i--){let o=n<0?jn(e.node(0),e.node(i),e.before(i+1),e.index(i),n,r):jn(e.node(0),e.node(i),e.after(i+1),e.index(i)+1,n,r);if(o)return o}return null}static near(e,n=1){return this.findFrom(e,n)||this.findFrom(e,-n)||new Be(e.node(0))}static atStart(e){return jn(e,e,0,0,1)||new Be(e)}static atEnd(e){return jn(e,e,e.content.size,e.childCount,-1)||new Be(e)}static fromJSON(e,n){if(!n||!n.type)throw new RangeError("Invalid input for Selection.fromJSON");let r=io[n.type];if(!r)throw new RangeError(`No selection type ${n.type} defined`);return r.fromJSON(e,n)}static jsonID(e,n){if(e in io)throw new RangeError("Duplicate use of selection JSON ID "+e);return io[e]=n,n.prototype.jsonID=e,n}getBookmark(){return L.between(this.$anchor,this.$head).getBookmark()}}V.prototype.visible=!0;class vm{constructor(e,n){this.$from=e,this.$to=n}}let El=!1;function Cl(t){!El&&!t.parent.inlineContent&&(El=!0,console.warn("TextSelection endpoint not pointing into a node with inline content ("+t.parent.type.name+")"))}class L extends V{constructor(e,n=e){Cl(e),Cl(n),super(e,n)}get $cursor(){return this.$anchor.pos==this.$head.pos?this.$head:null}map(e,n){let r=e.resolve(n.map(this.head));if(!r.parent.inlineContent)return V.near(r);let s=e.resolve(n.map(this.anchor));return new L(s.parent.inlineContent?s:r,r)}replace(e,n=w.empty){if(super.replace(e,n),n==w.empty){let r=this.$from.marksAcross(this.$to);r&&e.ensureMarks(r)}}eq(e){return e instanceof L&&e.anchor==this.anchor&&e.head==this.head}getBookmark(){return new Di(this.anchor,this.head)}toJSON(){return{type:"text",anchor:this.anchor,head:this.head}}static fromJSON(e,n){if(typeof n.anchor!="number"||typeof n.head!="number")throw new RangeError("Invalid input for TextSelection.fromJSON");return new L(e.resolve(n.anchor),e.resolve(n.head))}static create(e,n,r=n){let s=e.resolve(n);return new this(s,r==n?s:e.resolve(r))}static between(e,n,r){let s=e.pos-n.pos;if((!r||s)&&(r=s>=0?1:-1),!n.parent.inlineContent){let i=V.findFrom(n,r,!0)||V.findFrom(n,-r,!0);if(i)n=i.$head;else return V.near(n,r)}return e.parent.inlineContent||(s==0?e=n:(e=(V.findFrom(e,-r,!0)||V.findFrom(e,r,!0)).$anchor,e.pos<n.pos!=s<0&&(e=n))),new L(e,n)}}V.jsonID("text",L);class Di{constructor(e,n){this.anchor=e,this.head=n}map(e){return new Di(e.map(this.anchor),e.map(this.head))}resolve(e){return L.between(e.resolve(this.anchor),e.resolve(this.head))}}class I extends V{constructor(e){let n=e.nodeAfter,r=e.node(0).resolve(e.pos+n.nodeSize);super(e,r),this.node=n}map(e,n){let{deleted:r,pos:s}=n.mapResult(this.anchor),i=e.resolve(s);return r?V.near(i):new I(i)}content(){return new w(x.from(this.node),0,0)}eq(e){return e instanceof I&&e.anchor==this.anchor}toJSON(){return{type:"node",anchor:this.anchor}}getBookmark(){return new ya(this.anchor)}static fromJSON(e,n){if(typeof n.anchor!="number")throw new RangeError("Invalid input for NodeSelection.fromJSON");return new I(e.resolve(n.anchor))}static create(e,n){return new I(e.resolve(n))}static isSelectable(e){return!e.isText&&e.type.spec.selectable!==!1}}I.prototype.visible=!1;V.jsonID("node",I);class ya{constructor(e){this.anchor=e}map(e){let{deleted:n,pos:r}=e.mapResult(this.anchor);return n?new Di(r,r):new ya(r)}resolve(e){let n=e.resolve(this.anchor),r=n.nodeAfter;return r&&I.isSelectable(r)?new I(n):V.near(n)}}class Be extends V{constructor(e){super(e.resolve(0),e.resolve(e.content.size))}replace(e,n=w.empty){if(n==w.empty){e.delete(0,e.doc.content.size);let r=V.atStart(e.doc);r.eq(e.selection)||e.setSelection(r)}else super.replace(e,n)}toJSON(){return{type:"all"}}static fromJSON(e){return new Be(e)}map(e){return new Be(e)}eq(e){return e instanceof Be}getBookmark(){return Em}}V.jsonID("all",Be);const Em={map(){return this},resolve(t){return new Be(t)}};function jn(t,e,n,r,s,i=!1){if(e.inlineContent)return L.create(t,n);for(let o=r-(s>0?0:1);s>0?o<e.childCount:o>=0;o+=s){let a=e.child(o);if(a.isAtom){if(!i&&I.isSelectable(a))return I.create(t,n-(s<0?a.nodeSize:0))}else{let l=jn(t,a,n+s,s<0?a.childCount:0,s,i);if(l)return l}n+=a.nodeSize*s}return null}function Tl(t,e,n){let r=t.steps.length-1;if(r<e)return;let s=t.steps[r];if(!(s instanceof Ce||s instanceof pe))return;let i=t.mapping.maps[r],o;i.forEach((a,l,c,u)=>{o==null&&(o=u)}),t.setSelection(V.near(t.doc.resolve(o),n))}const Ol=1,Ds=2,Ml=4;class Cm extends wm{constructor(e){super(e.doc),this.curSelectionFor=0,this.updated=0,this.meta=Object.create(null),this.time=Date.now(),this.curSelection=e.selection,this.storedMarks=e.storedMarks}get selection(){return this.curSelectionFor<this.steps.length&&(this.curSelection=this.curSelection.map(this.doc,this.mapping.slice(this.curSelectionFor)),this.curSelectionFor=this.steps.length),this.curSelection}setSelection(e){if(e.$from.doc!=this.doc)throw new RangeError("Selection passed to setSelection must point at the current document");return this.curSelection=e,this.curSelectionFor=this.steps.length,this.updated=(this.updated|Ol)&~Ds,this.storedMarks=null,this}get selectionSet(){return(this.updated&Ol)>0}setStoredMarks(e){return this.storedMarks=e,this.updated|=Ds,this}ensureMarks(e){return U.sameSet(this.storedMarks||this.selection.$from.marks(),e)||this.setStoredMarks(e),this}addStoredMark(e){return this.ensureMarks(e.addToSet(this.storedMarks||this.selection.$head.marks()))}removeStoredMark(e){return this.ensureMarks(e.removeFromSet(this.storedMarks||this.selection.$head.marks()))}get storedMarksSet(){return(this.updated&Ds)>0}addStep(e,n){super.addStep(e,n),this.updated=this.updated&~Ds,this.storedMarks=null}setTime(e){return this.time=e,this}replaceSelection(e){return this.selection.replace(this,e),this}replaceSelectionWith(e,n=!0){let r=this.selection;return n&&(e=e.mark(this.storedMarks||(r.empty?r.$from.marks():r.$from.marksAcross(r.$to)||U.none))),r.replaceWith(this,e),this}deleteSelection(){return this.selection.replace(this),this}insertText(e,n,r){let s=this.doc.type.schema;if(n==null)return e?this.replaceSelectionWith(s.text(e),!0):this.deleteSelection();{if(r==null&&(r=n),r=r??n,!e)return this.deleteRange(n,r);let i=this.storedMarks;if(!i){let o=this.doc.resolve(n);i=r==n?o.marks():o.marksAcross(this.doc.resolve(r))}return this.replaceRangeWith(n,r,s.text(e,i)),this.selection.empty||this.setSelection(V.near(this.selection.$to)),this}}setMeta(e,n){return this.meta[typeof e=="string"?e:e.key]=n,this}getMeta(e){return this.meta[typeof e=="string"?e:e.key]}get isGeneric(){for(let e in this.meta)return!1;return!0}scrollIntoView(){return this.updated|=Ml,this}get scrolledIntoView(){return(this.updated&Ml)>0}}function _l(t,e){return!e||!t?t:t.bind(e)}class Mr{constructor(e,n,r){this.name=e,this.init=_l(n.init,r),this.apply=_l(n.apply,r)}}const Tm=[new Mr("doc",{init(t){return t.doc||t.schema.topNodeType.createAndFill()},apply(t){return t.doc}}),new Mr("selection",{init(t,e){return t.selection||V.atStart(e.doc)},apply(t){return t.selection}}),new Mr("storedMarks",{init(t){return t.storedMarks||null},apply(t,e,n,r){return r.selection.$cursor?t.storedMarks:null}}),new Mr("scrollToSelection",{init(){return 0},apply(t,e){return t.scrolledIntoView?e+1:e}})];class oo{constructor(e,n){this.schema=e,this.plugins=[],this.pluginsByKey=Object.create(null),this.fields=Tm.slice(),n&&n.forEach(r=>{if(this.pluginsByKey[r.key])throw new RangeError("Adding different instances of a keyed plugin ("+r.key+")");this.plugins.push(r),this.pluginsByKey[r.key]=r,r.spec.state&&this.fields.push(new Mr(r.key,r.spec.state,r))})}}class kn{constructor(e){this.config=e}get schema(){return this.config.schema}get plugins(){return this.config.plugins}apply(e){return this.applyTransaction(e).state}filterTransaction(e,n=-1){for(let r=0;r<this.config.plugins.length;r++)if(r!=n){let s=this.config.plugins[r];if(s.spec.filterTransaction&&!s.spec.filterTransaction.call(s,e,this))return!1}return!0}applyTransaction(e){if(!this.filterTransaction(e))return{state:this,transactions:[]};let n=[e],r=this.applyInner(e),s=null;for(;;){let i=!1;for(let o=0;o<this.config.plugins.length;o++){let a=this.config.plugins[o];if(a.spec.appendTransaction){let l=s?s[o].n:0,c=s?s[o].state:this,u=l<n.length&&a.spec.appendTransaction.call(a,l?n.slice(l):n,c,r);if(u&&r.filterTransaction(u,o)){if(u.setMeta("appendedTransaction",e),!s){s=[];for(let d=0;d<this.config.plugins.length;d++)s.push(d<o?{state:r,n:n.length}:{state:this,n:0})}n.push(u),r=r.applyInner(u),i=!0}s&&(s[o]={state:r,n:n.length})}}if(!i)return{state:r,transactions:n}}}applyInner(e){if(!e.before.eq(this.doc))throw new RangeError("Applying a mismatched transaction");let n=new kn(this.config),r=this.config.fields;for(let s=0;s<r.length;s++){let i=r[s];n[i.name]=i.apply(e,this[i.name],this,n)}return n}get tr(){return new Cm(this)}static create(e){let n=new oo(e.doc?e.doc.type.schema:e.schema,e.plugins),r=new kn(n);for(let s=0;s<n.fields.length;s++)r[n.fields[s].name]=n.fields[s].init(e,r);return r}reconfigure(e){let n=new oo(this.schema,e.plugins),r=n.fields,s=new kn(n);for(let i=0;i<r.length;i++){let o=r[i].name;s[o]=this.hasOwnProperty(o)?this[o]:r[i].init(e,s)}return s}toJSON(e){let n={doc:this.doc.toJSON(),selection:this.selection.toJSON()};if(this.storedMarks&&(n.storedMarks=this.storedMarks.map(r=>r.toJSON())),e&&typeof e=="object")for(let r in e){if(r=="doc"||r=="selection")throw new RangeError("The JSON fields `doc` and `selection` are reserved");let s=e[r],i=s.spec.state;i&&i.toJSON&&(n[r]=i.toJSON.call(s,this[s.key]))}return n}static fromJSON(e,n,r){if(!n)throw new RangeError("Invalid input for EditorState.fromJSON");if(!e.schema)throw new RangeError("Required config field 'schema' missing");let s=new oo(e.schema,e.plugins),i=new kn(s);return s.fields.forEach(o=>{if(o.name=="doc")i.doc=Xt.fromJSON(e.schema,n.doc);else if(o.name=="selection")i.selection=V.fromJSON(i.doc,n.selection);else if(o.name=="storedMarks")n.storedMarks&&(i.storedMarks=n.storedMarks.map(e.schema.markFromJSON));else{if(r)for(let a in r){let l=r[a],c=l.spec.state;if(l.key==o.name&&c&&c.fromJSON&&Object.prototype.hasOwnProperty.call(n,a)){i[o.name]=c.fromJSON.call(l,e,n[a],i);return}}i[o.name]=o.init(e,i)}}),i}}function md(t,e,n){for(let r in t){let s=t[r];s instanceof Function?s=s.bind(e):r=="handleDOMEvents"&&(s=md(s,e,{})),n[r]=s}return n}class dn{constructor(e){this.spec=e,this.props={},e.props&&md(e.props,this,this.props),this.key=e.key?e.key.key:gd("plugin")}getState(e){return e[this.key]}}const ao=Object.create(null);function gd(t){return t in ao?t+"$"+ ++ao[t]:(ao[t]=0,t+"$")}class br{constructor(e="key"){this.key=gd(e)}get(e){return e.config.pluginsByKey[this.key]}getState(e){return e[this.key]}}function yd(){return typeof document<"u"?document:null}function xd(t,e){if(typeof t!="string")return[t];var n=[t];typeof e=="string"||Array.isArray(e)?e={brackets:e}:e||(e={});var r=e.brackets?Array.isArray(e.brackets)?e.brackets:[e.brackets]:["{}","[]","()"],s=e.escape||"___",i=!!e.flat;r.forEach(function(l){var c=new RegExp(["\\",l[0],"[^\\",l[0],"\\",l[1],"]*\\",l[1]].join("")),u=[];function d(h,f,p){var m=n.push(h.slice(l[0].length,-l[1].length))-1;return u.push(m),s+m+s}n.forEach(function(h,f){for(var p,m=0;h!=p;)if(p=h,h=h.replace(c,d),m++>1e4)throw Error("References have circular dependency. Please, check them.");n[f]=h}),u=u.reverse(),n=n.map(function(h){return u.forEach(function(f){h=h.replace(new RegExp("(\\"+s+f+"\\"+s+")","g"),l[0]+"$1"+l[1])}),h})});var o=new RegExp("\\"+s+"([0-9]+)\\"+s);function a(l,c,u){for(var d=[],h,f=0;h=o.exec(l);){if(f++>1e4)throw Error("Circular references in parenthesis");d.push(l.slice(0,h.index)),d.push(a(c[h[1]],c)),l=l.slice(h.index+h[0].length)}return d.push(l),d}return i?n:a(n[0],n)}function bd(t,e){if(e&&e.flat){var n=e&&e.escape||"___",r=t[0],s;if(!r)return"";for(var i=new RegExp("\\"+n+"([0-9]+)\\"+n),o=0;r!=s;){if(o++>1e4)throw Error("Circular references in "+t);s=r,r=r.replace(i,a)}return r}return t.reduce(function l(c,u){return Array.isArray(u)&&(u=u.reduce(l,"")),c+u},"");function a(l,c){if(t[c]==null)throw Error("Reference "+c+"is undefined");return t[c]}}function kd(t,e){return Array.isArray(t)?bd(t,e):xd(t,e)}kd.parse=xd;kd.stringify=bd;const Om={id:"extension.command.copy.label",message:"Copy",comment:"Label for copy command."},Mm={id:"extension.command.copy.description",message:"Copy the selected text",comment:"Description for copy command."},_m={id:"extension.command.cut.label",message:"Cut",comment:"Label for cut command."},Nm={id:"extension.command.cut.description",message:"Cut the selected text",comment:"Description for cut command."},Am={id:"extension.command.paste.label",message:"Paste",comment:"Label for paste command."},Rm={id:"extension.command.paste.description",message:"Paste content into the editor",comment:"Description for paste command."},Im={id:"extension.command.select-all.label",message:"Select all",comment:"Label for select all command."},Dm={id:"extension.command.select-all.description",message:"Select all content within the editor",comment:"Description for select all command."};var rn=Object.freeze({__proto__:null,COPY_DESCRIPTION:Mm,COPY_LABEL:Om,CUT_DESCRIPTION:Nm,CUT_LABEL:_m,PASTE_DESCRIPTION:Rm,PASTE_LABEL:Am,SELECT_ALL_DESCRIPTION:Dm,SELECT_ALL_LABEL:Im});const Pm={id:"extension.command.toggle-bold.label",message:"Bold",comment:"Label for bold formatting command."},Lm={id:"extension.command.toggle-bold.description",message:"Add bold formatting to the selected text",comment:"Description for bold formatting command."};var Nl=Object.freeze({__proto__:null,DESCRIPTION:Lm,LABEL:Pm});const Bm={id:"extension.command.toggle-code.label",message:"Code",comment:"Label for the inline code formatting."},zm={id:"extension.command.toggle-code.description",message:"Add inline code formatting to the selected text",comment:"Description for the inline code formatting command."};var $m=Object.freeze({__proto__:null,DESCRIPTION:zm,LABEL:Bm});const Fm={id:"extension.command.undo.label",message:"Undo",comment:"Label for undo."},Vm={id:"extension.command.undo.description",message:"Undo the most recent action",comment:"Description for undo."},Hm={id:"extension.command.redo.label",message:"Redo",comment:"Label for redo."},Um={id:"extension.command.redo.description",message:"Redo the most recent action",comment:"Description for redo."};var di=Object.freeze({__proto__:null,REDO_DESCRIPTION:Um,REDO_LABEL:Hm,UNDO_DESCRIPTION:Vm,UNDO_LABEL:Fm});const jm={id:"extension.command.toggle-italic.label",message:"Italic",comment:"Label for italic formatting command."},Wm={id:"extension.command.toggle-italic.description",message:"Italicize the selected text",comment:"Description for italic formatting command."};var Al=Object.freeze({__proto__:null,DESCRIPTION:Wm,LABEL:jm});const Km={id:"extension.command.toggle-ordered-list.label",message:"Ordered list",comment:"Label for inserting an ordered list into the editor."},qm={id:"extension.command.toggle-bullet-list.description",message:"Bulleted list",comment:"Description for inserting a bullet list into the editor."},Jm={id:"extension.command.toggle-task-list.description",message:"Tasked list",comment:"Description for inserting a task list into the editor."};var xa=Object.freeze({__proto__:null,BULLET_LIST_LABEL:qm,ORDERED_LIST_LABEL:Km,TASK_LIST_LABEL:Jm});const Gm={id:"extension.command.insert-paragraph.label",message:"Insert Paragraph",comment:"Label for inserting a paragraph."},Xm={id:"extension.command.insert-paragraph.description",message:"Insert a new paragraph",comment:"Description for inserting a paragraph."},Ym={id:"extension.command.convert-paragraph.label",message:"Convert Paragraph",comment:"Label for converting the current node into a paragraph."},Zm={id:"extension.command.convert-paragraph.description",message:"Convert current block into a paragraph block.",comment:"Description for converting a paragraph."};var hi=Object.freeze({__proto__:null,CONVERT_DESCRIPTION:Zm,CONVERT_LABEL:Ym,INSERT_DESCRIPTION:Xm,INSERT_LABEL:Gm});class dt{constructor(e,n,r={}){this.match=e,this.match=e,this.handler=typeof n=="string"?Qm(n):n,this.undoable=r.undoable!==!1,this.inCode=r.inCode||!1}}function Qm(t){return function(e,n,r,s){let i=t;if(n[1]){let o=n[0].lastIndexOf(n[1]);i+=n[0].slice(o+n[1].length),r+=o;let a=r-s;a>0&&(i=n[0].slice(o-a,o)+i,r=s)}return e.tr.insertText(i,r,s)}}const eg=500;function tg({rules:t}){let e=new dn({state:{init(){return null},apply(n,r){let s=n.getMeta(this);return s||(n.selectionSet||n.docChanged?null:r)}},props:{handleTextInput(n,r,s,i){return Rl(n,r,s,i,t,e)},handleDOMEvents:{compositionend:n=>{setTimeout(()=>{let{$cursor:r}=n.state.selection;r&&Rl(n,r.pos,r.pos,"",t,e)})}}},isInputRules:!0});return e}function Rl(t,e,n,r,s,i){if(t.composing)return!1;let o=t.state,a=o.doc.resolve(e),l=a.parent.textBetween(Math.max(0,a.parentOffset-eg),a.parentOffset,null,"")+r;for(let c=0;c<s.length;c++){let u=s[c];if(a.parent.type.spec.code){if(!u.inCode)continue}else if(u.inCode==="only")continue;let d=u.match.exec(l),h=d&&u.handler(o,d,e-(d[0].length-r.length),n);if(h)return u.undoable&&h.setMeta(i,{transform:h,from:e,to:n,text:r}),t.dispatch(h),!0}return!1}const ng=(t,e)=>{let n=t.plugins;for(let r=0;r<n.length;r++){let s=n[r],i;if(s.spec.isInputRules&&(i=s.getState(t))){if(e){let o=t.tr,a=i.transform;for(let l=a.steps.length-1;l>=0;l--)o.step(a.steps[l].invert(a.docs[l]));if(i.text){let l=o.doc.resolve(i.from).marks();o.replaceWith(i.from,i.to,t.schema.text(i.text,l))}else o.delete(i.from,i.to);e(o)}return!0}}return!1};new dt(/--$/,"—");new dt(/\.\.\.$/,"…");new dt(/(?:^|[\s\{\[\(\<'"\u2018\u201C])(")$/,"“");new dt(/"$/,"”");new dt(/(?:^|[\s\{\[\(\<'"\u2018\u201C])(')$/,"‘");new dt(/'$/,"’");function ba(t,e,n=null,r){return new dt(t,(s,i,o,a)=>{let l=n instanceof Function?n(i):n,c=s.tr.delete(o,a),u=c.doc.resolve(o),d=u.blockRange(),h=d&&ma(d,e,l);if(!h)return null;c.wrap(d,h);let f=c.doc.resolve(o-1).nodeBefore;return f&&f.type==e&&Cs(c.doc,o-1)&&(!r||r(i,f))&&c.join(o-1),c})}const Se=function(t){for(var e=0;;e++)if(t=t.previousSibling,!t)return e},ls=function(t){let e=t.assignedSlot||t.parentNode;return e&&e.nodeType==11?e.host:e};let Ro=null;const Ct=function(t,e,n){let r=Ro||(Ro=document.createRange());return r.setEnd(t,n??t.nodeValue.length),r.setStart(t,e||0),r},rg=function(){Ro=null},Rn=function(t,e,n,r){return n&&(Il(t,e,n,r,-1)||Il(t,e,n,r,1))},sg=/^(img|br|input|textarea|hr)$/i;function Il(t,e,n,r,s){for(;;){if(t==n&&e==r)return!0;if(e==(s<0?0:mt(t))){let i=t.parentNode;if(!i||i.nodeType!=1||Ts(t)||sg.test(t.nodeName)||t.contentEditable=="false")return!1;e=Se(t)+(s<0?0:1),t=i}else if(t.nodeType==1){if(t=t.childNodes[e+(s<0?-1:0)],t.contentEditable=="false")return!1;e=s<0?mt(t):0}else return!1}}function mt(t){return t.nodeType==3?t.nodeValue.length:t.childNodes.length}function ig(t,e){for(;;){if(t.nodeType==3&&e)return t;if(t.nodeType==1&&e>0){if(t.contentEditable=="false")return null;t=t.childNodes[e-1],e=mt(t)}else if(t.parentNode&&!Ts(t))e=Se(t),t=t.parentNode;else return null}}function og(t,e){for(;;){if(t.nodeType==3&&e<t.nodeValue.length)return t;if(t.nodeType==1&&e<t.childNodes.length){if(t.contentEditable=="false")return null;t=t.childNodes[e],e=0}else if(t.parentNode&&!Ts(t))e=Se(t)+1,t=t.parentNode;else return null}}function ag(t,e,n){for(let r=e==0,s=e==mt(t);r||s;){if(t==n)return!0;let i=Se(t);if(t=t.parentNode,!t)return!1;r=r&&i==0,s=s&&i==mt(t)}}function Ts(t){let e;for(let n=t;n&&!(e=n.pmViewDesc);n=n.parentNode);return e&&e.node&&e.node.isBlock&&(e.dom==t||e.contentDOM==t)}const Pi=function(t){return t.focusNode&&Rn(t.focusNode,t.focusOffset,t.anchorNode,t.anchorOffset)};function xn(t,e){let n=document.createEvent("Event");return n.initEvent("keydown",!0,!0),n.keyCode=t,n.key=n.code=e,n}function lg(t){let e=t.activeElement;for(;e&&e.shadowRoot;)e=e.shadowRoot.activeElement;return e}function cg(t,e,n){if(t.caretPositionFromPoint)try{let r=t.caretPositionFromPoint(e,n);if(r)return{node:r.offsetNode,offset:r.offset}}catch{}if(t.caretRangeFromPoint){let r=t.caretRangeFromPoint(e,n);if(r)return{node:r.startContainer,offset:r.startOffset}}}const xt=typeof navigator<"u"?navigator:null,Dl=typeof document<"u"?document:null,hn=xt&&xt.userAgent||"",Io=/Edge\/(\d+)/.exec(hn),Sd=/MSIE \d/.exec(hn),Do=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(hn),ze=!!(Sd||Do||Io),Yt=Sd?document.documentMode:Do?+Do[1]:Io?+Io[1]:0,lt=!ze&&/gecko\/(\d+)/i.test(hn);lt&&+(/Firefox\/(\d+)/.exec(hn)||[0,0])[1];const Po=!ze&&/Chrome\/(\d+)/.exec(hn),Te=!!Po,wd=Po?+Po[1]:0,Ae=!ze&&!!xt&&/Apple Computer/.test(xt.vendor),ur=Ae&&(/Mobile\/\w+/.test(hn)||!!xt&&xt.maxTouchPoints>2),qe=ur||(xt?/Mac/.test(xt.platform):!1),ug=xt?/Win/.test(xt.platform):!1,rt=/Android \d/.test(hn),Os=!!Dl&&"webkitFontSmoothing"in Dl.documentElement.style,dg=Os?+(/\bAppleWebKit\/(\d+)/.exec(navigator.userAgent)||[0,0])[1]:0;function hg(t){let e=t.defaultView&&t.defaultView.visualViewport;return e?{left:0,right:e.width,top:0,bottom:e.height}:{left:0,right:t.documentElement.clientWidth,top:0,bottom:t.documentElement.clientHeight}}function St(t,e){return typeof t=="number"?t:t[e]}function fg(t){let e=t.getBoundingClientRect(),n=e.width/t.offsetWidth||1,r=e.height/t.offsetHeight||1;return{left:e.left,right:e.left+t.clientWidth*n,top:e.top,bottom:e.top+t.clientHeight*r}}function Pl(t,e,n){let r=t.someProp("scrollThreshold")||0,s=t.someProp("scrollMargin")||5,i=t.dom.ownerDocument;for(let o=n||t.dom;o;o=ls(o)){if(o.nodeType!=1)continue;let a=o,l=a==i.body,c=l?hg(i):fg(a),u=0,d=0;if(e.top<c.top+St(r,"top")?d=-(c.top-e.top+St(s,"top")):e.bottom>c.bottom-St(r,"bottom")&&(d=e.bottom-e.top>c.bottom-c.top?e.top+St(s,"top")-c.top:e.bottom-c.bottom+St(s,"bottom")),e.left<c.left+St(r,"left")?u=-(c.left-e.left+St(s,"left")):e.right>c.right-St(r,"right")&&(u=e.right-c.right+St(s,"right")),u||d)if(l)i.defaultView.scrollBy(u,d);else{let h=a.scrollLeft,f=a.scrollTop;d&&(a.scrollTop+=d),u&&(a.scrollLeft+=u);let p=a.scrollLeft-h,m=a.scrollTop-f;e={left:e.left-p,top:e.top-m,right:e.right-p,bottom:e.bottom-m}}if(l||/^(fixed|sticky)$/.test(getComputedStyle(o).position))break}}function pg(t){let e=t.dom.getBoundingClientRect(),n=Math.max(0,e.top),r,s;for(let i=(e.left+e.right)/2,o=n+1;o<Math.min(innerHeight,e.bottom);o+=5){let a=t.root.elementFromPoint(i,o);if(!a||a==t.dom||!t.dom.contains(a))continue;let l=a.getBoundingClientRect();if(l.top>=n-20){r=a,s=l.top;break}}return{refDOM:r,refTop:s,stack:vd(t.dom)}}function vd(t){let e=[],n=t.ownerDocument;for(let r=t;r&&(e.push({dom:r,top:r.scrollTop,left:r.scrollLeft}),t!=n);r=ls(r));return e}function mg({refDOM:t,refTop:e,stack:n}){let r=t?t.getBoundingClientRect().top:0;Ed(n,r==0?0:r-e)}function Ed(t,e){for(let n=0;n<t.length;n++){let{dom:r,top:s,left:i}=t[n];r.scrollTop!=s+e&&(r.scrollTop=s+e),r.scrollLeft!=i&&(r.scrollLeft=i)}}let Fn=null;function gg(t){if(t.setActive)return t.setActive();if(Fn)return t.focus(Fn);let e=vd(t);t.focus(Fn==null?{get preventScroll(){return Fn={preventScroll:!0},!0}}:void 0),Fn||(Fn=!1,Ed(e,0))}function Cd(t,e){let n,r=2e8,s,i=0,o=e.top,a=e.top,l,c;for(let u=t.firstChild,d=0;u;u=u.nextSibling,d++){let h;if(u.nodeType==1)h=u.getClientRects();else if(u.nodeType==3)h=Ct(u).getClientRects();else continue;for(let f=0;f<h.length;f++){let p=h[f];if(p.top<=o&&p.bottom>=a){o=Math.max(p.bottom,o),a=Math.min(p.top,a);let m=p.left>e.left?p.left-e.left:p.right<e.left?e.left-p.right:0;if(m<r){n=u,r=m,s=m&&n.nodeType==3?{left:p.right<e.left?p.right:p.left,top:e.top}:e,u.nodeType==1&&m&&(i=d+(e.left>=(p.left+p.right)/2?1:0));continue}}else p.top>e.top&&!l&&p.left<=e.left&&p.right>=e.left&&(l=u,c={left:Math.max(p.left,Math.min(p.right,e.left)),top:p.top});!n&&(e.left>=p.right&&e.top>=p.top||e.left>=p.left&&e.top>=p.bottom)&&(i=d+1)}}return!n&&l&&(n=l,s=c,r=0),n&&n.nodeType==3?yg(n,s):!n||r&&n.nodeType==1?{node:t,offset:i}:Cd(n,s)}function yg(t,e){let n=t.nodeValue.length,r=document.createRange();for(let s=0;s<n;s++){r.setEnd(t,s+1),r.setStart(t,s);let i=Ft(r,1);if(i.top!=i.bottom&&ka(e,i))return{node:t,offset:s+(e.left>=(i.left+i.right)/2?1:0)}}return{node:t,offset:0}}function ka(t,e){return t.left>=e.left-1&&t.left<=e.right+1&&t.top>=e.top-1&&t.top<=e.bottom+1}function xg(t,e){let n=t.parentNode;return n&&/^li$/i.test(n.nodeName)&&e.left<t.getBoundingClientRect().left?n:t}function bg(t,e,n){let{node:r,offset:s}=Cd(e,n),i=-1;if(r.nodeType==1&&!r.firstChild){let o=r.getBoundingClientRect();i=o.left!=o.right&&n.left>(o.left+o.right)/2?1:-1}return t.docView.posFromDOM(r,s,i)}function kg(t,e,n,r){let s=-1;for(let i=e,o=!1;i!=t.dom;){let a=t.docView.nearestDesc(i,!0);if(!a)return null;if(a.dom.nodeType==1&&(a.node.isBlock&&a.parent||!a.contentDOM)){let l=a.dom.getBoundingClientRect();if(a.node.isBlock&&a.parent&&(!o&&l.left>r.left||l.top>r.top?s=a.posBefore:(!o&&l.right<r.left||l.bottom<r.top)&&(s=a.posAfter),o=!0),!a.contentDOM&&s<0&&!a.node.isText)return(a.node.isBlock?r.top<(l.top+l.bottom)/2:r.left<(l.left+l.right)/2)?a.posBefore:a.posAfter}i=a.dom.parentNode}return s>-1?s:t.docView.posFromDOM(e,n,-1)}function Td(t,e,n){let r=t.childNodes.length;if(r&&n.top<n.bottom)for(let s=Math.max(0,Math.min(r-1,Math.floor(r*(e.top-n.top)/(n.bottom-n.top))-2)),i=s;;){let o=t.childNodes[i];if(o.nodeType==1){let a=o.getClientRects();for(let l=0;l<a.length;l++){let c=a[l];if(ka(e,c))return Td(o,e,c)}}if((i=(i+1)%r)==s)break}return t}function Sg(t,e){let n=t.dom.ownerDocument,r,s=0,i=cg(n,e.left,e.top);i&&({node:r,offset:s}=i);let o=(t.root.elementFromPoint?t.root:n).elementFromPoint(e.left,e.top),a;if(!o||!t.dom.contains(o.nodeType!=1?o.parentNode:o)){let c=t.dom.getBoundingClientRect();if(!ka(e,c)||(o=Td(t.dom,e,c),!o))return null}if(Ae)for(let c=o;r&&c;c=ls(c))c.draggable&&(r=void 0);if(o=xg(o,e),r){if(lt&&r.nodeType==1&&(s=Math.min(s,r.childNodes.length),s<r.childNodes.length)){let u=r.childNodes[s],d;u.nodeName=="IMG"&&(d=u.getBoundingClientRect()).right<=e.left&&d.bottom>e.top&&s++}let c;Os&&s&&r.nodeType==1&&(c=r.childNodes[s-1]).nodeType==1&&c.contentEditable=="false"&&c.getBoundingClientRect().top>=e.top&&s--,r==t.dom&&s==r.childNodes.length-1&&r.lastChild.nodeType==1&&e.top>r.lastChild.getBoundingClientRect().bottom?a=t.state.doc.content.size:(s==0||r.nodeType!=1||r.childNodes[s-1].nodeName!="BR")&&(a=kg(t,r,s,e))}a==null&&(a=bg(t,o,e));let l=t.docView.nearestDesc(o,!0);return{pos:a,inside:l?l.posAtStart-l.border:-1}}function Ll(t){return t.top<t.bottom||t.left<t.right}function Ft(t,e){let n=t.getClientRects();if(n.length){let r=n[e<0?0:n.length-1];if(Ll(r))return r}return Array.prototype.find.call(n,Ll)||t.getBoundingClientRect()}const wg=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/;function Od(t,e,n){let{node:r,offset:s,atom:i}=t.docView.domFromPos(e,n<0?-1:1),o=Os||lt;if(r.nodeType==3)if(o&&(wg.test(r.nodeValue)||(n<0?!s:s==r.nodeValue.length))){let l=Ft(Ct(r,s,s),n);if(lt&&s&&/\s/.test(r.nodeValue[s-1])&&s<r.nodeValue.length){let c=Ft(Ct(r,s-1,s-1),-1);if(c.top==l.top){let u=Ft(Ct(r,s,s+1),-1);if(u.top!=l.top)return Er(u,u.left<c.left)}}return l}else{let l=s,c=s,u=n<0?1:-1;return n<0&&!s?(c++,u=-1):n>=0&&s==r.nodeValue.length?(l--,u=1):n<0?l--:c++,Er(Ft(Ct(r,l,c),u),u<0)}if(!t.state.doc.resolve(e-(i||0)).parent.inlineContent){if(i==null&&s&&(n<0||s==mt(r))){let l=r.childNodes[s-1];if(l.nodeType==1)return lo(l.getBoundingClientRect(),!1)}if(i==null&&s<mt(r)){let l=r.childNodes[s];if(l.nodeType==1)return lo(l.getBoundingClientRect(),!0)}return lo(r.getBoundingClientRect(),n>=0)}if(i==null&&s&&(n<0||s==mt(r))){let l=r.childNodes[s-1],c=l.nodeType==3?Ct(l,mt(l)-(o?0:1)):l.nodeType==1&&(l.nodeName!="BR"||!l.nextSibling)?l:null;if(c)return Er(Ft(c,1),!1)}if(i==null&&s<mt(r)){let l=r.childNodes[s];for(;l.pmViewDesc&&l.pmViewDesc.ignoreForCoords;)l=l.nextSibling;let c=l?l.nodeType==3?Ct(l,0,o?0:1):l.nodeType==1?l:null:null;if(c)return Er(Ft(c,-1),!0)}return Er(Ft(r.nodeType==3?Ct(r):r,-n),n>=0)}function Er(t,e){if(t.width==0)return t;let n=e?t.left:t.right;return{top:t.top,bottom:t.bottom,left:n,right:n}}function lo(t,e){if(t.height==0)return t;let n=e?t.top:t.bottom;return{top:n,bottom:n,left:t.left,right:t.right}}function Md(t,e,n){let r=t.state,s=t.root.activeElement;r!=e&&t.updateState(e),s!=t.dom&&t.focus();try{return n()}finally{r!=e&&t.updateState(r),s!=t.dom&&s&&s.focus()}}function vg(t,e,n){let r=e.selection,s=n=="up"?r.$from:r.$to;return Md(t,e,()=>{let{node:i}=t.docView.domFromPos(s.pos,n=="up"?-1:1);for(;;){let a=t.docView.nearestDesc(i,!0);if(!a)break;if(a.node.isBlock){i=a.contentDOM||a.dom;break}i=a.dom.parentNode}let o=Od(t,s.pos,1);for(let a=i.firstChild;a;a=a.nextSibling){let l;if(a.nodeType==1)l=a.getClientRects();else if(a.nodeType==3)l=Ct(a,0,a.nodeValue.length).getClientRects();else continue;for(let c=0;c<l.length;c++){let u=l[c];if(u.bottom>u.top+1&&(n=="up"?o.top-u.top>(u.bottom-o.top)*2:u.bottom-o.bottom>(o.bottom-u.top)*2))return!1}}return!0})}const Eg=/[\u0590-\u08ac]/;function Cg(t,e,n){let{$head:r}=e.selection;if(!r.parent.isTextblock)return!1;let s=r.parentOffset,i=!s,o=s==r.parent.content.size,a=t.domSelection();return!Eg.test(r.parent.textContent)||!a.modify?n=="left"||n=="backward"?i:o:Md(t,e,()=>{let{focusNode:l,focusOffset:c,anchorNode:u,anchorOffset:d}=t.domSelectionRange(),h=a.caretBidiLevel;a.modify("move",n,"character");let f=r.depth?t.docView.domAfterPos(r.before()):t.dom,{focusNode:p,focusOffset:m}=t.domSelectionRange(),g=p&&!f.contains(p.nodeType==1?p:p.parentNode)||l==p&&c==m;try{a.collapse(u,d),l&&(l!=u||c!=d)&&a.extend&&a.extend(l,c)}catch{}return h!=null&&(a.caretBidiLevel=h),g})}let Bl=null,zl=null,$l=!1;function Tg(t,e,n){return Bl==e&&zl==n?$l:(Bl=e,zl=n,$l=n=="up"||n=="down"?vg(t,e,n):Cg(t,e,n))}const Je=0,Fl=1,Sn=2,bt=3;class Ms{constructor(e,n,r,s){this.parent=e,this.children=n,this.dom=r,this.contentDOM=s,this.dirty=Je,r.pmViewDesc=this}matchesWidget(e){return!1}matchesMark(e){return!1}matchesNode(e,n,r){return!1}matchesHack(e){return!1}parseRule(){return null}stopEvent(e){return!1}get size(){let e=0;for(let n=0;n<this.children.length;n++)e+=this.children[n].size;return e}get border(){return 0}destroy(){this.parent=void 0,this.dom.pmViewDesc==this&&(this.dom.pmViewDesc=void 0);for(let e=0;e<this.children.length;e++)this.children[e].destroy()}posBeforeChild(e){for(let n=0,r=this.posAtStart;;n++){let s=this.children[n];if(s==e)return r;r+=s.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(e,n,r){if(this.contentDOM&&this.contentDOM.contains(e.nodeType==1?e:e.parentNode))if(r<0){let i,o;if(e==this.contentDOM)i=e.childNodes[n-1];else{for(;e.parentNode!=this.contentDOM;)e=e.parentNode;i=e.previousSibling}for(;i&&!((o=i.pmViewDesc)&&o.parent==this);)i=i.previousSibling;return i?this.posBeforeChild(o)+o.size:this.posAtStart}else{let i,o;if(e==this.contentDOM)i=e.childNodes[n];else{for(;e.parentNode!=this.contentDOM;)e=e.parentNode;i=e.nextSibling}for(;i&&!((o=i.pmViewDesc)&&o.parent==this);)i=i.nextSibling;return i?this.posBeforeChild(o):this.posAtEnd}let s;if(e==this.dom&&this.contentDOM)s=n>Se(this.contentDOM);else if(this.contentDOM&&this.contentDOM!=this.dom&&this.dom.contains(this.contentDOM))s=e.compareDocumentPosition(this.contentDOM)&2;else if(this.dom.firstChild){if(n==0)for(let i=e;;i=i.parentNode){if(i==this.dom){s=!1;break}if(i.previousSibling)break}if(s==null&&n==e.childNodes.length)for(let i=e;;i=i.parentNode){if(i==this.dom){s=!0;break}if(i.nextSibling)break}}return s??r>0?this.posAtEnd:this.posAtStart}nearestDesc(e,n=!1){for(let r=!0,s=e;s;s=s.parentNode){let i=this.getDesc(s),o;if(i&&(!n||i.node))if(r&&(o=i.nodeDOM)&&!(o.nodeType==1?o.contains(e.nodeType==1?e:e.parentNode):o==e))r=!1;else return i}}getDesc(e){let n=e.pmViewDesc;for(let r=n;r;r=r.parent)if(r==this)return n}posFromDOM(e,n,r){for(let s=e;s;s=s.parentNode){let i=this.getDesc(s);if(i)return i.localPosFromDOM(e,n,r)}return-1}descAt(e){for(let n=0,r=0;n<this.children.length;n++){let s=this.children[n],i=r+s.size;if(r==e&&i!=r){for(;!s.border&&s.children.length;)s=s.children[0];return s}if(e<i)return s.descAt(e-r-s.border);r=i}}domFromPos(e,n){if(!this.contentDOM)return{node:this.dom,offset:0,atom:e+1};let r=0,s=0;for(let i=0;r<this.children.length;r++){let o=this.children[r],a=i+o.size;if(a>e||o instanceof Nd){s=e-i;break}i=a}if(s)return this.children[r].domFromPos(s-this.children[r].border,n);for(let i;r&&!(i=this.children[r-1]).size&&i instanceof _d&&i.side>=0;r--);if(n<=0){let i,o=!0;for(;i=r?this.children[r-1]:null,!(!i||i.dom.parentNode==this.contentDOM);r--,o=!1);return i&&n&&o&&!i.border&&!i.domAtom?i.domFromPos(i.size,n):{node:this.contentDOM,offset:i?Se(i.dom)+1:0}}else{let i,o=!0;for(;i=r<this.children.length?this.children[r]:null,!(!i||i.dom.parentNode==this.contentDOM);r++,o=!1);return i&&o&&!i.border&&!i.domAtom?i.domFromPos(0,n):{node:this.contentDOM,offset:i?Se(i.dom):this.contentDOM.childNodes.length}}}parseRange(e,n,r=0){if(this.children.length==0)return{node:this.contentDOM,from:e,to:n,fromOffset:0,toOffset:this.contentDOM.childNodes.length};let s=-1,i=-1;for(let o=r,a=0;;a++){let l=this.children[a],c=o+l.size;if(s==-1&&e<=c){let u=o+l.border;if(e>=u&&n<=c-l.border&&l.node&&l.contentDOM&&this.contentDOM.contains(l.contentDOM))return l.parseRange(e,n,u);e=o;for(let d=a;d>0;d--){let h=this.children[d-1];if(h.size&&h.dom.parentNode==this.contentDOM&&!h.emptyChildAt(1)){s=Se(h.dom)+1;break}e-=h.size}s==-1&&(s=0)}if(s>-1&&(c>n||a==this.children.length-1)){n=c;for(let u=a+1;u<this.children.length;u++){let d=this.children[u];if(d.size&&d.dom.parentNode==this.contentDOM&&!d.emptyChildAt(-1)){i=Se(d.dom);break}n+=d.size}i==-1&&(i=this.contentDOM.childNodes.length);break}o=c}return{node:this.contentDOM,from:e,to:n,fromOffset:s,toOffset:i}}emptyChildAt(e){if(this.border||!this.contentDOM||!this.children.length)return!1;let n=this.children[e<0?0:this.children.length-1];return n.size==0||n.emptyChildAt(e)}domAfterPos(e){let{node:n,offset:r}=this.domFromPos(e,0);if(n.nodeType!=1||r==n.childNodes.length)throw new RangeError("No node after pos "+e);return n.childNodes[r]}setSelection(e,n,r,s=!1){let i=Math.min(e,n),o=Math.max(e,n);for(let h=0,f=0;h<this.children.length;h++){let p=this.children[h],m=f+p.size;if(i>f&&o<m)return p.setSelection(e-f-p.border,n-f-p.border,r,s);f=m}let a=this.domFromPos(e,e?-1:1),l=n==e?a:this.domFromPos(n,n?-1:1),c=r.getSelection(),u=!1;if((lt||Ae)&&e==n){let{node:h,offset:f}=a;if(h.nodeType==3){if(u=!!(f&&h.nodeValue[f-1]==`
|
|
35
|
-
`),u&&f==h.nodeValue.length)for(let p=h,m;p;p=p.parentNode){if(m=p.nextSibling){m.nodeName=="BR"&&(a=l={node:m.parentNode,offset:Se(m)+1});break}let g=p.pmViewDesc;if(g&&g.node&&g.node.isBlock)break}}else{let p=h.childNodes[f-1];u=p&&(p.nodeName=="BR"||p.contentEditable=="false")}}if(lt&&c.focusNode&&c.focusNode!=l.node&&c.focusNode.nodeType==1){let h=c.focusNode.childNodes[c.focusOffset];h&&h.contentEditable=="false"&&(s=!0)}if(!(s||u&&Ae)&&Rn(a.node,a.offset,c.anchorNode,c.anchorOffset)&&Rn(l.node,l.offset,c.focusNode,c.focusOffset))return;let d=!1;if((c.extend||e==n)&&!u){c.collapse(a.node,a.offset);try{e!=n&&c.extend(l.node,l.offset),d=!0}catch{}}if(!d){if(e>n){let f=a;a=l,l=f}let h=document.createRange();h.setEnd(l.node,l.offset),h.setStart(a.node,a.offset),c.removeAllRanges(),c.addRange(h)}}ignoreMutation(e){return!this.contentDOM&&e.type!="selection"}get contentLost(){return this.contentDOM&&this.contentDOM!=this.dom&&!this.dom.contains(this.contentDOM)}markDirty(e,n){for(let r=0,s=0;s<this.children.length;s++){let i=this.children[s],o=r+i.size;if(r==o?e<=o&&n>=r:e<o&&n>r){let a=r+i.border,l=o-i.border;if(e>=a&&n<=l){this.dirty=e==r||n==o?Sn:Fl,e==a&&n==l&&(i.contentLost||i.dom.parentNode!=this.contentDOM)?i.dirty=bt:i.markDirty(e-a,n-a);return}else i.dirty=i.dom==i.contentDOM&&i.dom.parentNode==this.contentDOM&&!i.children.length?Sn:bt}r=o}this.dirty=Sn}markParentsDirty(){let e=1;for(let n=this.parent;n;n=n.parent,e++){let r=e==1?Sn:Fl;n.dirty<r&&(n.dirty=r)}}get domAtom(){return!1}get ignoreForCoords(){return!1}isText(e){return!1}}class _d extends Ms{constructor(e,n,r,s){let i,o=n.type.toDOM;if(typeof o=="function"&&(o=o(r,()=>{if(!i)return s;if(i.parent)return i.parent.posBeforeChild(i)})),!n.type.spec.raw){if(o.nodeType!=1){let a=document.createElement("span");a.appendChild(o),o=a}o.contentEditable="false",o.classList.add("ProseMirror-widget")}super(e,[],o,null),this.widget=n,this.widget=n,i=this}matchesWidget(e){return this.dirty==Je&&e.type.eq(this.widget.type)}parseRule(){return{ignore:!0}}stopEvent(e){let n=this.widget.spec.stopEvent;return n?n(e):!1}ignoreMutation(e){return e.type!="selection"||this.widget.spec.ignoreSelection}destroy(){this.widget.type.destroy(this.dom),super.destroy()}get domAtom(){return!0}get side(){return this.widget.type.side}}class Og extends Ms{constructor(e,n,r,s){super(e,[],n,null),this.textDOM=r,this.text=s}get size(){return this.text.length}localPosFromDOM(e,n){return e!=this.textDOM?this.posAtStart+(n?this.size:0):this.posAtStart+n}domFromPos(e){return{node:this.textDOM,offset:e}}ignoreMutation(e){return e.type==="characterData"&&e.target.nodeValue==e.oldValue}}class In extends Ms{constructor(e,n,r,s){super(e,[],r,s),this.mark=n}static create(e,n,r,s){let i=s.nodeViews[n.type.name],o=i&&i(n,s,r);return(!o||!o.dom)&&(o=Dt.renderSpec(document,n.type.spec.toDOM(n,r),null,n.attrs)),new In(e,n,o.dom,o.contentDOM||o.dom)}parseRule(){return this.dirty&bt||this.mark.type.spec.reparseInView?null:{mark:this.mark.type.name,attrs:this.mark.attrs,contentElement:this.contentDOM}}matchesMark(e){return this.dirty!=bt&&this.mark.eq(e)}markDirty(e,n){if(super.markDirty(e,n),this.dirty!=Je){let r=this.parent;for(;!r.node;)r=r.parent;r.dirty<this.dirty&&(r.dirty=this.dirty),this.dirty=Je}}slice(e,n,r){let s=In.create(this.parent,this.mark,!0,r),i=this.children,o=this.size;n<o&&(i=zo(i,n,o,r)),e>0&&(i=zo(i,0,e,r));for(let a=0;a<i.length;a++)i[a].parent=s;return s.children=i,s}}class Zt extends Ms{constructor(e,n,r,s,i,o,a,l,c){super(e,[],i,o),this.node=n,this.outerDeco=r,this.innerDeco=s,this.nodeDOM=a}static create(e,n,r,s,i,o){let a=i.nodeViews[n.type.name],l,c=a&&a(n,i,()=>{if(!l)return o;if(l.parent)return l.parent.posBeforeChild(l)},r,s),u=c&&c.dom,d=c&&c.contentDOM;if(n.isText){if(!u)u=document.createTextNode(n.text);else if(u.nodeType!=3)throw new RangeError("Text must be rendered as a DOM text node")}else u||({dom:u,contentDOM:d}=Dt.renderSpec(document,n.type.spec.toDOM(n),null,n.attrs));!d&&!n.isText&&u.nodeName!="BR"&&(u.hasAttribute("contenteditable")||(u.contentEditable="false"),n.type.spec.draggable&&(u.draggable=!0));let h=u;return u=Id(u,r,n),c?l=new Mg(e,n,r,s,u,d||null,h,c,i,o+1):n.isText?new Li(e,n,r,s,u,h,i):new Zt(e,n,r,s,u,d||null,h,i,o+1)}parseRule(){if(this.node.type.spec.reparseInView)return null;let e={node:this.node.type.name,attrs:this.node.attrs};if(this.node.type.whitespace=="pre"&&(e.preserveWhitespace="full"),!this.contentDOM)e.getContent=()=>this.node.content;else if(!this.contentLost)e.contentElement=this.contentDOM;else{for(let n=this.children.length-1;n>=0;n--){let r=this.children[n];if(this.dom.contains(r.dom.parentNode)){e.contentElement=r.dom.parentNode;break}}e.contentElement||(e.getContent=()=>x.empty)}return e}matchesNode(e,n,r){return this.dirty==Je&&e.eq(this.node)&&Bo(n,this.outerDeco)&&r.eq(this.innerDeco)}get size(){return this.node.nodeSize}get border(){return this.node.isLeaf?0:1}updateChildren(e,n){let r=this.node.inlineContent,s=n,i=e.composing?this.localCompositionInfo(e,n):null,o=i&&i.pos>-1?i:null,a=i&&i.pos<0,l=new Ng(this,o&&o.node,e);Ig(this.node,this.innerDeco,(c,u,d)=>{c.spec.marks?l.syncToMarks(c.spec.marks,r,e):c.type.side>=0&&!d&&l.syncToMarks(u==this.node.childCount?U.none:this.node.child(u).marks,r,e),l.placeWidget(c,e,s)},(c,u,d,h)=>{l.syncToMarks(c.marks,r,e);let f;l.findNodeMatch(c,u,d,h)||a&&e.state.selection.from>s&&e.state.selection.to<s+c.nodeSize&&(f=l.findIndexWithChild(i.node))>-1&&l.updateNodeAt(c,u,d,f,e)||l.updateNextNode(c,u,d,e,h,s)||l.addNode(c,u,d,e,s),s+=c.nodeSize}),l.syncToMarks([],r,e),this.node.isTextblock&&l.addTextblockHacks(),l.destroyRest(),(l.changed||this.dirty==Sn)&&(o&&this.protectLocalComposition(e,o),Ad(this.contentDOM,this.children,e),ur&&Dg(this.dom))}localCompositionInfo(e,n){let{from:r,to:s}=e.state.selection;if(!(e.state.selection instanceof L)||r<n||s>n+this.node.content.size)return null;let i=e.input.compositionNode;if(!i||!this.dom.contains(i.parentNode))return null;if(this.node.inlineContent){let o=i.nodeValue,a=Pg(this.node.content,o,r-n,s-n);return a<0?null:{node:i,pos:a,text:o}}else return{node:i,pos:-1,text:""}}protectLocalComposition(e,{node:n,pos:r,text:s}){if(this.getDesc(n))return;let i=n;for(;i.parentNode!=this.contentDOM;i=i.parentNode){for(;i.previousSibling;)i.parentNode.removeChild(i.previousSibling);for(;i.nextSibling;)i.parentNode.removeChild(i.nextSibling);i.pmViewDesc&&(i.pmViewDesc=void 0)}let o=new Og(this,i,n,s);e.input.compositionNodes.push(o),this.children=zo(this.children,r,r+s.length,e,o)}update(e,n,r,s){return this.dirty==bt||!e.sameMarkup(this.node)?!1:(this.updateInner(e,n,r,s),!0)}updateInner(e,n,r,s){this.updateOuterDeco(n),this.node=e,this.innerDeco=r,this.contentDOM&&this.updateChildren(s,this.posAtStart),this.dirty=Je}updateOuterDeco(e){if(Bo(e,this.outerDeco))return;let n=this.nodeDOM.nodeType!=1,r=this.dom;this.dom=Rd(this.dom,this.nodeDOM,Lo(this.outerDeco,this.node,n),Lo(e,this.node,n)),this.dom!=r&&(r.pmViewDesc=void 0,this.dom.pmViewDesc=this),this.outerDeco=e}selectNode(){this.nodeDOM.nodeType==1&&this.nodeDOM.classList.add("ProseMirror-selectednode"),(this.contentDOM||!this.node.type.spec.draggable)&&(this.dom.draggable=!0)}deselectNode(){this.nodeDOM.nodeType==1&&(this.nodeDOM.classList.remove("ProseMirror-selectednode"),(this.contentDOM||!this.node.type.spec.draggable)&&this.dom.removeAttribute("draggable"))}get domAtom(){return this.node.isAtom}}function Vl(t,e,n,r,s){Id(r,e,t);let i=new Zt(void 0,t,e,n,r,r,r,s,0);return i.contentDOM&&i.updateChildren(s,0),i}class Li extends Zt{constructor(e,n,r,s,i,o,a){super(e,n,r,s,i,null,o,a,0)}parseRule(){let e=this.nodeDOM.parentNode;for(;e&&e!=this.dom&&!e.pmIsDeco;)e=e.parentNode;return{skip:e||!0}}update(e,n,r,s){return this.dirty==bt||this.dirty!=Je&&!this.inParent()||!e.sameMarkup(this.node)?!1:(this.updateOuterDeco(n),(this.dirty!=Je||e.text!=this.node.text)&&e.text!=this.nodeDOM.nodeValue&&(this.nodeDOM.nodeValue=e.text,s.trackWrites==this.nodeDOM&&(s.trackWrites=null)),this.node=e,this.dirty=Je,!0)}inParent(){let e=this.parent.contentDOM;for(let n=this.nodeDOM;n;n=n.parentNode)if(n==e)return!0;return!1}domFromPos(e){return{node:this.nodeDOM,offset:e}}localPosFromDOM(e,n,r){return e==this.nodeDOM?this.posAtStart+Math.min(n,this.node.text.length):super.localPosFromDOM(e,n,r)}ignoreMutation(e){return e.type!="characterData"&&e.type!="selection"}slice(e,n,r){let s=this.node.cut(e,n),i=document.createTextNode(s.text);return new Li(this.parent,s,this.outerDeco,this.innerDeco,i,i,r)}markDirty(e,n){super.markDirty(e,n),this.dom!=this.nodeDOM&&(e==0||n==this.nodeDOM.nodeValue.length)&&(this.dirty=bt)}get domAtom(){return!1}isText(e){return this.node.text==e}}class Nd extends Ms{parseRule(){return{ignore:!0}}matchesHack(e){return this.dirty==Je&&this.dom.nodeName==e}get domAtom(){return!0}get ignoreForCoords(){return this.dom.nodeName=="IMG"}}class Mg extends Zt{constructor(e,n,r,s,i,o,a,l,c,u){super(e,n,r,s,i,o,a,c,u),this.spec=l}update(e,n,r,s){if(this.dirty==bt)return!1;if(this.spec.update){let i=this.spec.update(e,n,r);return i&&this.updateInner(e,n,r,s),i}else return!this.contentDOM&&!e.isLeaf?!1:super.update(e,n,r,s)}selectNode(){this.spec.selectNode?this.spec.selectNode():super.selectNode()}deselectNode(){this.spec.deselectNode?this.spec.deselectNode():super.deselectNode()}setSelection(e,n,r,s){this.spec.setSelection?this.spec.setSelection(e,n,r):super.setSelection(e,n,r,s)}destroy(){this.spec.destroy&&this.spec.destroy(),super.destroy()}stopEvent(e){return this.spec.stopEvent?this.spec.stopEvent(e):!1}ignoreMutation(e){return this.spec.ignoreMutation?this.spec.ignoreMutation(e):super.ignoreMutation(e)}}function Ad(t,e,n){let r=t.firstChild,s=!1;for(let i=0;i<e.length;i++){let o=e[i],a=o.dom;if(a.parentNode==t){for(;a!=r;)r=Hl(r),s=!0;r=r.nextSibling}else s=!0,t.insertBefore(a,r);if(o instanceof In){let l=r?r.previousSibling:t.lastChild;Ad(o.contentDOM,o.children,n),r=l?l.nextSibling:t.firstChild}}for(;r;)r=Hl(r),s=!0;s&&n.trackWrites==t&&(n.trackWrites=null)}const ns=function(t){t&&(this.nodeName=t)};ns.prototype=Object.create(null);const wn=[new ns];function Lo(t,e,n){if(t.length==0)return wn;let r=n?wn[0]:new ns,s=[r];for(let i=0;i<t.length;i++){let o=t[i].type.attrs;if(o){o.nodeName&&s.push(r=new ns(o.nodeName));for(let a in o){let l=o[a];l!=null&&(n&&s.length==1&&s.push(r=new ns(e.isInline?"span":"div")),a=="class"?r.class=(r.class?r.class+" ":"")+l:a=="style"?r.style=(r.style?r.style+";":"")+l:a!="nodeName"&&(r[a]=l))}}}return s}function Rd(t,e,n,r){if(n==wn&&r==wn)return e;let s=e;for(let i=0;i<r.length;i++){let o=r[i],a=n[i];if(i){let l;a&&a.nodeName==o.nodeName&&s!=t&&(l=s.parentNode)&&l.nodeName.toLowerCase()==o.nodeName||(l=document.createElement(o.nodeName),l.pmIsDeco=!0,l.appendChild(s),a=wn[0]),s=l}_g(s,a||wn[0],o)}return s}function _g(t,e,n){for(let r in e)r!="class"&&r!="style"&&r!="nodeName"&&!(r in n)&&t.removeAttribute(r);for(let r in n)r!="class"&&r!="style"&&r!="nodeName"&&n[r]!=e[r]&&t.setAttribute(r,n[r]);if(e.class!=n.class){let r=e.class?e.class.split(" ").filter(Boolean):[],s=n.class?n.class.split(" ").filter(Boolean):[];for(let i=0;i<r.length;i++)s.indexOf(r[i])==-1&&t.classList.remove(r[i]);for(let i=0;i<s.length;i++)r.indexOf(s[i])==-1&&t.classList.add(s[i]);t.classList.length==0&&t.removeAttribute("class")}if(e.style!=n.style){if(e.style){let r=/\s*([\w\-\xa1-\uffff]+)\s*:(?:"(?:\\.|[^"])*"|'(?:\\.|[^'])*'|\(.*?\)|[^;])*/g,s;for(;s=r.exec(e.style);)t.style.removeProperty(s[1])}n.style&&(t.style.cssText+=n.style)}}function Id(t,e,n){return Rd(t,t,wn,Lo(e,n,t.nodeType!=1))}function Bo(t,e){if(t.length!=e.length)return!1;for(let n=0;n<t.length;n++)if(!t[n].type.eq(e[n].type))return!1;return!0}function Hl(t){let e=t.nextSibling;return t.parentNode.removeChild(t),e}class Ng{constructor(e,n,r){this.lock=n,this.view=r,this.index=0,this.stack=[],this.changed=!1,this.top=e,this.preMatch=Ag(e.node.content,e)}destroyBetween(e,n){if(e!=n){for(let r=e;r<n;r++)this.top.children[r].destroy();this.top.children.splice(e,n-e),this.changed=!0}}destroyRest(){this.destroyBetween(this.index,this.top.children.length)}syncToMarks(e,n,r){let s=0,i=this.stack.length>>1,o=Math.min(i,e.length);for(;s<o&&(s==i-1?this.top:this.stack[s+1<<1]).matchesMark(e[s])&&e[s].type.spec.spanning!==!1;)s++;for(;s<i;)this.destroyRest(),this.top.dirty=Je,this.index=this.stack.pop(),this.top=this.stack.pop(),i--;for(;i<e.length;){this.stack.push(this.top,this.index+1);let a=-1;for(let l=this.index;l<Math.min(this.index+3,this.top.children.length);l++){let c=this.top.children[l];if(c.matchesMark(e[i])&&!this.isLocked(c.dom)){a=l;break}}if(a>-1)a>this.index&&(this.changed=!0,this.destroyBetween(this.index,a)),this.top=this.top.children[this.index];else{let l=In.create(this.top,e[i],n,r);this.top.children.splice(this.index,0,l),this.top=l,this.changed=!0}this.index=0,i++}}findNodeMatch(e,n,r,s){let i=-1,o;if(s>=this.preMatch.index&&(o=this.preMatch.matches[s-this.preMatch.index]).parent==this.top&&o.matchesNode(e,n,r))i=this.top.children.indexOf(o,this.index);else for(let a=this.index,l=Math.min(this.top.children.length,a+5);a<l;a++){let c=this.top.children[a];if(c.matchesNode(e,n,r)&&!this.preMatch.matched.has(c)){i=a;break}}return i<0?!1:(this.destroyBetween(this.index,i),this.index++,!0)}updateNodeAt(e,n,r,s,i){let o=this.top.children[s];return o.dirty==bt&&o.dom==o.contentDOM&&(o.dirty=Sn),o.update(e,n,r,i)?(this.destroyBetween(this.index,s),this.index++,!0):!1}findIndexWithChild(e){for(;;){let n=e.parentNode;if(!n)return-1;if(n==this.top.contentDOM){let r=e.pmViewDesc;if(r){for(let s=this.index;s<this.top.children.length;s++)if(this.top.children[s]==r)return s}return-1}e=n}}updateNextNode(e,n,r,s,i,o){for(let a=this.index;a<this.top.children.length;a++){let l=this.top.children[a];if(l instanceof Zt){let c=this.preMatch.matched.get(l);if(c!=null&&c!=i)return!1;let u=l.dom,d,h=this.isLocked(u)&&!(e.isText&&l.node&&l.node.isText&&l.nodeDOM.nodeValue==e.text&&l.dirty!=bt&&Bo(n,l.outerDeco));if(!h&&l.update(e,n,r,s))return this.destroyBetween(this.index,a),l.dom!=u&&(this.changed=!0),this.index++,!0;if(!h&&(d=this.recreateWrapper(l,e,n,r,s,o)))return this.top.children[this.index]=d,d.contentDOM&&(d.dirty=Sn,d.updateChildren(s,o+1),d.dirty=Je),this.changed=!0,this.index++,!0;break}}return!1}recreateWrapper(e,n,r,s,i,o){if(e.dirty||n.isAtom||!e.children.length||!e.node.content.eq(n.content))return null;let a=Zt.create(this.top,n,r,s,i,o);if(a.contentDOM){a.children=e.children,e.children=[];for(let l of a.children)l.parent=a}return e.destroy(),a}addNode(e,n,r,s,i){let o=Zt.create(this.top,e,n,r,s,i);o.contentDOM&&o.updateChildren(s,i+1),this.top.children.splice(this.index++,0,o),this.changed=!0}placeWidget(e,n,r){let s=this.index<this.top.children.length?this.top.children[this.index]:null;if(s&&s.matchesWidget(e)&&(e==s.widget||!s.widget.type.toDOM.parentNode))this.index++;else{let i=new _d(this.top,e,n,r);this.top.children.splice(this.index++,0,i),this.changed=!0}}addTextblockHacks(){let e=this.top.children[this.index-1],n=this.top;for(;e instanceof In;)n=e,e=n.children[n.children.length-1];(!e||!(e instanceof Li)||/\n$/.test(e.node.text)||this.view.requiresGeckoHackNode&&/\s$/.test(e.node.text))&&((Ae||Te)&&e&&e.dom.contentEditable=="false"&&this.addHackNode("IMG",n),this.addHackNode("BR",this.top))}addHackNode(e,n){if(n==this.top&&this.index<n.children.length&&n.children[this.index].matchesHack(e))this.index++;else{let r=document.createElement(e);e=="IMG"&&(r.className="ProseMirror-separator",r.alt=""),e=="BR"&&(r.className="ProseMirror-trailingBreak");let s=new Nd(this.top,[],r,null);n!=this.top?n.children.push(s):n.children.splice(this.index++,0,s),this.changed=!0}}isLocked(e){return this.lock&&(e==this.lock||e.nodeType==1&&e.contains(this.lock.parentNode))}}function Ag(t,e){let n=e,r=n.children.length,s=t.childCount,i=new Map,o=[];e:for(;s>0;){let a;for(;;)if(r){let c=n.children[r-1];if(c instanceof In)n=c,r=c.children.length;else{a=c,r--;break}}else{if(n==e)break e;r=n.parent.children.indexOf(n),n=n.parent}let l=a.node;if(l){if(l!=t.child(s-1))break;--s,i.set(a,s),o.push(a)}}return{index:s,matched:i,matches:o.reverse()}}function Rg(t,e){return t.type.side-e.type.side}function Ig(t,e,n,r){let s=e.locals(t),i=0;if(s.length==0){for(let c=0;c<t.childCount;c++){let u=t.child(c);r(u,s,e.forChild(i,u),c),i+=u.nodeSize}return}let o=0,a=[],l=null;for(let c=0;;){let u,d;for(;o<s.length&&s[o].to==i;){let g=s[o++];g.widget&&(u?(d||(d=[u])).push(g):u=g)}if(u)if(d){d.sort(Rg);for(let g=0;g<d.length;g++)n(d[g],c,!!l)}else n(u,c,!!l);let h,f;if(l)f=-1,h=l,l=null;else if(c<t.childCount)f=c,h=t.child(c++);else break;for(let g=0;g<a.length;g++)a[g].to<=i&&a.splice(g--,1);for(;o<s.length&&s[o].from<=i&&s[o].to>i;)a.push(s[o++]);let p=i+h.nodeSize;if(h.isText){let g=p;o<s.length&&s[o].from<g&&(g=s[o].from);for(let y=0;y<a.length;y++)a[y].to<g&&(g=a[y].to);g<p&&(l=h.cut(g-i),h=h.cut(0,g-i),p=g,f=-1)}else for(;o<s.length&&s[o].to<p;)o++;let m=h.isInline&&!h.isLeaf?a.filter(g=>!g.inline):a.slice();r(h,m,e.forChild(i,h),f),i=p}}function Dg(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 Pg(t,e,n,r){for(let s=0,i=0;s<t.childCount&&i<=r;){let o=t.child(s++),a=i;if(i+=o.nodeSize,!o.isText)continue;let l=o.text;for(;s<t.childCount;){let c=t.child(s++);if(i+=c.nodeSize,!c.isText)break;l+=c.text}if(i>=n){if(i>=r&&l.slice(r-e.length-a,r-a)==e)return r-e.length;let c=a<r?l.lastIndexOf(e,r-a-1):-1;if(c>=0&&c+e.length+a>=n)return a+c;if(n==r&&l.length>=r+e.length-a&&l.slice(r-a,r-a+e.length)==e)return r}}return-1}function zo(t,e,n,r,s){let i=[];for(let o=0,a=0;o<t.length;o++){let l=t[o],c=a,u=a+=l.size;c>=n||u<=e?i.push(l):(c<e&&i.push(l.slice(0,e-c,r)),s&&(i.push(s),s=void 0),u>n&&i.push(l.slice(n-c,l.size,r)))}return i}function Sa(t,e=null){let n=t.domSelectionRange(),r=t.state.doc;if(!n.focusNode)return null;let s=t.docView.nearestDesc(n.focusNode),i=s&&s.size==0,o=t.docView.posFromDOM(n.focusNode,n.focusOffset,1);if(o<0)return null;let a=r.resolve(o),l,c;if(Pi(n)){for(l=a;s&&!s.node;)s=s.parent;let u=s.node;if(s&&u.isAtom&&I.isSelectable(u)&&s.parent&&!(u.isInline&&ag(n.focusNode,n.focusOffset,s.dom))){let d=s.posBefore;c=new I(o==d?a:r.resolve(d))}}else{let u=t.docView.posFromDOM(n.anchorNode,n.anchorOffset,1);if(u<0)return null;l=r.resolve(u)}if(!c){let u=e=="pointer"||t.state.selection.head<a.pos&&!i?1:-1;c=wa(t,l,a,u)}return c}function Dd(t){return t.editable?t.hasFocus():Ld(t)&&document.activeElement&&document.activeElement.contains(t.dom)}function At(t,e=!1){let n=t.state.selection;if(Pd(t,n),!!Dd(t)){if(!e&&t.input.mouseDown&&t.input.mouseDown.allowDefault&&Te){let r=t.domSelectionRange(),s=t.domObserver.currentSelection;if(r.anchorNode&&s.anchorNode&&Rn(r.anchorNode,r.anchorOffset,s.anchorNode,s.anchorOffset)){t.input.mouseDown.delayedSelectionSync=!0,t.domObserver.setCurSelection();return}}if(t.domObserver.disconnectSelection(),t.cursorWrapper)Bg(t);else{let{anchor:r,head:s}=n,i,o;Ul&&!(n instanceof L)&&(n.$from.parent.inlineContent||(i=jl(t,n.from)),!n.empty&&!n.$from.parent.inlineContent&&(o=jl(t,n.to))),t.docView.setSelection(r,s,t.root,e),Ul&&(i&&Wl(i),o&&Wl(o)),n.visible?t.dom.classList.remove("ProseMirror-hideselection"):(t.dom.classList.add("ProseMirror-hideselection"),"onselectionchange"in document&&Lg(t))}t.domObserver.setCurSelection(),t.domObserver.connectSelection()}}const Ul=Ae||Te&&wd<63;function jl(t,e){let{node:n,offset:r}=t.docView.domFromPos(e,0),s=r<n.childNodes.length?n.childNodes[r]:null,i=r?n.childNodes[r-1]:null;if(Ae&&s&&s.contentEditable=="false")return co(s);if((!s||s.contentEditable=="false")&&(!i||i.contentEditable=="false")){if(s)return co(s);if(i)return co(i)}}function co(t){return t.contentEditable="true",Ae&&t.draggable&&(t.draggable=!1,t.wasDraggable=!0),t}function Wl(t){t.contentEditable="false",t.wasDraggable&&(t.draggable=!0,t.wasDraggable=null)}function Lg(t){let e=t.dom.ownerDocument;e.removeEventListener("selectionchange",t.input.hideSelectionGuard);let n=t.domSelectionRange(),r=n.anchorNode,s=n.anchorOffset;e.addEventListener("selectionchange",t.input.hideSelectionGuard=()=>{(n.anchorNode!=r||n.anchorOffset!=s)&&(e.removeEventListener("selectionchange",t.input.hideSelectionGuard),setTimeout(()=>{(!Dd(t)||t.state.selection.visible)&&t.dom.classList.remove("ProseMirror-hideselection")},20))})}function Bg(t){let e=t.domSelection(),n=document.createRange(),r=t.cursorWrapper.dom,s=r.nodeName=="IMG";s?n.setEnd(r.parentNode,Se(r)+1):n.setEnd(r,0),n.collapse(!1),e.removeAllRanges(),e.addRange(n),!s&&!t.state.selection.visible&&ze&&Yt<=11&&(r.disabled=!0,r.disabled=!1)}function Pd(t,e){if(e instanceof I){let n=t.docView.descAt(e.from);n!=t.lastSelectedViewDesc&&(Kl(t),n&&n.selectNode(),t.lastSelectedViewDesc=n)}else Kl(t)}function Kl(t){t.lastSelectedViewDesc&&(t.lastSelectedViewDesc.parent&&t.lastSelectedViewDesc.deselectNode(),t.lastSelectedViewDesc=void 0)}function wa(t,e,n,r){return t.someProp("createSelectionBetween",s=>s(t,e,n))||L.between(e,n,r)}function ql(t){return t.editable&&!t.hasFocus()?!1:Ld(t)}function Ld(t){let e=t.domSelectionRange();if(!e.anchorNode)return!1;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{return!1}}function zg(t){let e=t.docView.domFromPos(t.state.selection.anchor,0),n=t.domSelectionRange();return Rn(e.node,e.offset,n.anchorNode,n.anchorOffset)}function $o(t,e){let{$anchor:n,$head:r}=t.selection,s=e>0?n.max(r):n.min(r),i=s.parent.inlineContent?s.depth?t.doc.resolve(e>0?s.after():s.before()):null:s;return i&&V.findFrom(i,e)}function Ut(t,e){return t.dispatch(t.state.tr.setSelection(e).scrollIntoView()),!0}function Jl(t,e,n){let r=t.state.selection;if(r instanceof L)if(n.indexOf("s")>-1){let{$head:s}=r,i=s.textOffset?null:e<0?s.nodeBefore:s.nodeAfter;if(!i||i.isText||!i.isLeaf)return!1;let o=t.state.doc.resolve(s.pos+i.nodeSize*(e<0?-1:1));return Ut(t,new L(r.$anchor,o))}else if(r.empty){if(t.endOfTextblock(e>0?"forward":"backward")){let s=$o(t.state,e);return s&&s instanceof I?Ut(t,s):!1}else if(!(qe&&n.indexOf("m")>-1)){let s=r.$head,i=s.textOffset?null:e<0?s.nodeBefore:s.nodeAfter,o;if(!i||i.isText)return!1;let a=e<0?s.pos-i.nodeSize:s.pos;return i.isAtom||(o=t.docView.descAt(a))&&!o.contentDOM?I.isSelectable(i)?Ut(t,new I(e<0?t.state.doc.resolve(s.pos-i.nodeSize):s)):Os?Ut(t,new L(t.state.doc.resolve(e<0?a:a+i.nodeSize))):!1:!1}}else return!1;else{if(r instanceof I&&r.node.isInline)return Ut(t,new L(e>0?r.$to:r.$from));{let s=$o(t.state,e);return s?Ut(t,s):!1}}}function fi(t){return t.nodeType==3?t.nodeValue.length:t.childNodes.length}function rs(t,e){let n=t.pmViewDesc;return n&&n.size==0&&(e<0||t.nextSibling||t.nodeName!="BR")}function Vn(t,e){return e<0?$g(t):Fg(t)}function $g(t){let e=t.domSelectionRange(),n=e.focusNode,r=e.focusOffset;if(!n)return;let s,i,o=!1;for(lt&&n.nodeType==1&&r<fi(n)&&rs(n.childNodes[r],-1)&&(o=!0);;)if(r>0){if(n.nodeType!=1)break;{let a=n.childNodes[r-1];if(rs(a,-1))s=n,i=--r;else if(a.nodeType==3)n=a,r=n.nodeValue.length;else break}}else{if(Bd(n))break;{let a=n.previousSibling;for(;a&&rs(a,-1);)s=n.parentNode,i=Se(a),a=a.previousSibling;if(a)n=a,r=fi(n);else{if(n=n.parentNode,n==t.dom)break;r=0}}}o?Fo(t,n,r):s&&Fo(t,s,i)}function Fg(t){let e=t.domSelectionRange(),n=e.focusNode,r=e.focusOffset;if(!n)return;let s=fi(n),i,o;for(;;)if(r<s){if(n.nodeType!=1)break;let a=n.childNodes[r];if(rs(a,1))i=n,o=++r;else break}else{if(Bd(n))break;{let a=n.nextSibling;for(;a&&rs(a,1);)i=a.parentNode,o=Se(a)+1,a=a.nextSibling;if(a)n=a,r=0,s=fi(n);else{if(n=n.parentNode,n==t.dom)break;r=s=0}}}i&&Fo(t,i,o)}function Bd(t){let e=t.pmViewDesc;return e&&e.node&&e.node.isBlock}function Vg(t,e){for(;t&&e==t.childNodes.length&&!Ts(t);)e=Se(t)+1,t=t.parentNode;for(;t&&e<t.childNodes.length;){let n=t.childNodes[e];if(n.nodeType==3)return n;if(n.nodeType==1&&n.contentEditable=="false")break;t=n,e=0}}function Hg(t,e){for(;t&&!e&&!Ts(t);)e=Se(t),t=t.parentNode;for(;t&&e;){let n=t.childNodes[e-1];if(n.nodeType==3)return n;if(n.nodeType==1&&n.contentEditable=="false")break;t=n,e=t.childNodes.length}}function Fo(t,e,n){if(e.nodeType!=3){let i,o;(o=Vg(e,n))?(e=o,n=0):(i=Hg(e,n))&&(e=i,n=i.nodeValue.length)}let r=t.domSelection();if(Pi(r)){let i=document.createRange();i.setEnd(e,n),i.setStart(e,n),r.removeAllRanges(),r.addRange(i)}else r.extend&&r.extend(e,n);t.domObserver.setCurSelection();let{state:s}=t;setTimeout(()=>{t.state==s&&At(t)},50)}function Gl(t,e){let n=t.state.doc.resolve(e);if(!(Te||ug)&&n.parent.inlineContent){let s=t.coordsAtPos(e);if(e>n.start()){let i=t.coordsAtPos(e-1),o=(i.top+i.bottom)/2;if(o>s.top&&o<s.bottom&&Math.abs(i.left-s.left)>1)return i.left<s.left?"ltr":"rtl"}if(e<n.end()){let i=t.coordsAtPos(e+1),o=(i.top+i.bottom)/2;if(o>s.top&&o<s.bottom&&Math.abs(i.left-s.left)>1)return i.left>s.left?"ltr":"rtl"}}return getComputedStyle(t.dom).direction=="rtl"?"rtl":"ltr"}function Xl(t,e,n){let r=t.state.selection;if(r instanceof L&&!r.empty||n.indexOf("s")>-1||qe&&n.indexOf("m")>-1)return!1;let{$from:s,$to:i}=r;if(!s.parent.inlineContent||t.endOfTextblock(e<0?"up":"down")){let o=$o(t.state,e);if(o&&o instanceof I)return Ut(t,o)}if(!s.parent.inlineContent){let o=e<0?s:i,a=r instanceof Be?V.near(o,e):V.findFrom(o,e);return a?Ut(t,a):!1}return!1}function Yl(t,e){if(!(t.state.selection instanceof L))return!0;let{$head:n,$anchor:r,empty:s}=t.state.selection;if(!n.sameParent(r))return!0;if(!s)return!1;if(t.endOfTextblock(e>0?"forward":"backward"))return!0;let i=!n.textOffset&&(e<0?n.nodeBefore:n.nodeAfter);if(i&&!i.isText){let o=t.state.tr;return e<0?o.delete(n.pos-i.nodeSize,n.pos):o.delete(n.pos,n.pos+i.nodeSize),t.dispatch(o),!0}return!1}function Zl(t,e,n){t.domObserver.stop(),e.contentEditable=n,t.domObserver.start()}function Ug(t){if(!Ae||t.state.selection.$head.parentOffset>0)return!1;let{focusNode:e,focusOffset:n}=t.domSelectionRange();if(e&&e.nodeType==1&&n==0&&e.firstChild&&e.firstChild.contentEditable=="false"){let r=e.firstChild;Zl(t,r,"true"),setTimeout(()=>Zl(t,r,"false"),20)}return!1}function jg(t){let e="";return t.ctrlKey&&(e+="c"),t.metaKey&&(e+="m"),t.altKey&&(e+="a"),t.shiftKey&&(e+="s"),e}function Wg(t,e){let n=e.keyCode,r=jg(e);if(n==8||qe&&n==72&&r=="c")return Yl(t,-1)||Vn(t,-1);if(n==46&&!e.shiftKey||qe&&n==68&&r=="c")return Yl(t,1)||Vn(t,1);if(n==13||n==27)return!0;if(n==37||qe&&n==66&&r=="c"){let s=n==37?Gl(t,t.state.selection.from)=="ltr"?-1:1:-1;return Jl(t,s,r)||Vn(t,s)}else if(n==39||qe&&n==70&&r=="c"){let s=n==39?Gl(t,t.state.selection.from)=="ltr"?1:-1:1;return Jl(t,s,r)||Vn(t,s)}else{if(n==38||qe&&n==80&&r=="c")return Xl(t,-1,r)||Vn(t,-1);if(n==40||qe&&n==78&&r=="c")return Ug(t)||Xl(t,1,r)||Vn(t,1);if(r==(qe?"m":"c")&&(n==66||n==73||n==89||n==90))return!0}return!1}function zd(t,e){t.someProp("transformCopied",f=>{e=f(e,t)});let n=[],{content:r,openStart:s,openEnd:i}=e;for(;s>1&&i>1&&r.childCount==1&&r.firstChild.childCount==1;){s--,i--;let f=r.firstChild;n.push(f.type.name,f.attrs!=f.type.defaultAttrs?f.attrs:null),r=f.content}let o=t.someProp("clipboardSerializer")||Dt.fromSchema(t.state.schema),a=jd(),l=a.createElement("div");l.appendChild(o.serializeFragment(r,{document:a}));let c=l.firstChild,u,d=0;for(;c&&c.nodeType==1&&(u=Ud[c.nodeName.toLowerCase()]);){for(let f=u.length-1;f>=0;f--){let p=a.createElement(u[f]);for(;l.firstChild;)p.appendChild(l.firstChild);l.appendChild(p),d++}c=l.firstChild}c&&c.nodeType==1&&c.setAttribute("data-pm-slice",`${s} ${i}${d?` -${d}`:""} ${JSON.stringify(n)}`);let h=t.someProp("clipboardTextSerializer",f=>f(e,t))||e.content.textBetween(0,e.content.size,`
|
|
30
|
+
`:"";return`${r}${s}For more information visit ${Vu}#${t.toLowerCase()}`}var Hu=class extends Mu.BaseError{constructor({code:t,message:e,disableLogging:n=!1}={}){const r=vp(t)?t:b.CUSTOM;super(Ep(r,e)),this.errorCode=r,this.url=`${Vu}#${r.toLowerCase()}`,n||console.error(this.message)}static create(t={}){return new Hu(t)}};function R(t,e){if(!t)throw Hu.create(e)}function Cp(t){if(typeof t!="object"||t===null)return t;const e=Symbol.toStringTag in t&&t[Symbol.toStringTag]==="Module"?t.default??t:t;return e&&typeof t=="object"&&"__esModule"in e&&e.__esModule&&e.default!==void 0?e.default:e}function bn(t,e={}){return t}function ke(t){this.content=t}ke.prototype={constructor:ke,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?void 0:this.content[e+1]},update:function(t,e,n){var r=n&&n!=t?this.remove(n):this,s=r.find(t),i=r.content.slice();return s==-1?i.push(n||t,e):(i[s+1]=e,n&&(i[s]=n)),new ke(i)},remove:function(t){var e=this.find(t);if(e==-1)return this;var n=this.content.slice();return n.splice(e,2),new ke(n)},addToStart:function(t,e){return new ke([t,e].concat(this.remove(t).content))},addToEnd:function(t,e){var n=this.remove(t).content.slice();return n.push(t,e),new ke(n)},addBefore:function(t,e,n){var r=this.remove(e),s=r.content.slice(),i=r.find(t);return s.splice(i==-1?s.length:i,0,e,n),new ke(s)},forEach:function(t){for(var e=0;e<this.content.length;e+=2)t(this.content[e],this.content[e+1])},prepend:function(t){return t=ke.from(t),t.size?new ke(t.content.concat(this.subtract(t).content)):this},append:function(t){return t=ke.from(t),t.size?new ke(this.subtract(t).content.concat(t.content)):this},subtract:function(t){var e=this;t=ke.from(t);for(var n=0;n<t.content.length;n+=2)e=e.remove(t.content[n]);return e},toObject:function(){var t={};return this.forEach(function(e,n){t[e]=n}),t},get size(){return this.content.length>>1}};ke.from=function(t){if(t instanceof ke)return t;var e=[];if(t)for(var n in t)e.push(n,t[n]);return new ke(e)};function Uu(t,e,n){for(let r=0;;r++){if(r==t.childCount||r==e.childCount)return t.childCount==e.childCount?null:n;let s=t.child(r),i=e.child(r);if(s==i){n+=s.nodeSize;continue}if(!s.sameMarkup(i))return n;if(s.isText&&s.text!=i.text){for(let o=0;s.text[o]==i.text[o];o++)n++;return n}if(s.content.size||i.content.size){let o=Uu(s.content,i.content,n+1);if(o!=null)return o}n+=s.nodeSize}}function ju(t,e,n,r){for(let s=t.childCount,i=e.childCount;;){if(s==0||i==0)return s==i?null:{a:n,b:r};let o=t.child(--s),a=e.child(--i),l=o.nodeSize;if(o==a){n-=l,r-=l;continue}if(!o.sameMarkup(a))return{a:n,b:r};if(o.isText&&o.text!=a.text){let c=0,u=Math.min(o.text.length,a.text.length);for(;c<u&&o.text[o.text.length-c-1]==a.text[a.text.length-c-1];)c++,n--,r--;return{a:n,b:r}}if(o.content.size||a.content.size){let c=ju(o.content,a.content,n-1,r-1);if(c)return c}n-=l,r-=l}}class x{constructor(e,n){if(this.content=e,this.size=n||0,n==null)for(let r=0;r<e.length;r++)this.size+=e[r].nodeSize}nodesBetween(e,n,r,s=0,i){for(let o=0,a=0;a<n;o++){let l=this.content[o],c=a+l.nodeSize;if(c>e&&r(l,s+a,i||null,o)!==!1&&l.content.size){let u=a+1;l.nodesBetween(Math.max(0,e-u),Math.min(l.content.size,n-u),r,s+u)}a=c}}descendants(e){this.nodesBetween(0,this.size,e)}textBetween(e,n,r,s){let i="",o=!0;return this.nodesBetween(e,n,(a,l)=>{let c=a.isText?a.text.slice(Math.max(e,l)-l,n-l):a.isLeaf?s?typeof s=="function"?s(a):s:a.type.spec.leafText?a.type.spec.leafText(a):"":"";a.isBlock&&(a.isLeaf&&c||a.isTextblock)&&r&&(o?o=!1:i+=r),i+=c},0),i}append(e){if(!e.size)return this;if(!this.size)return e;let n=this.lastChild,r=e.firstChild,s=this.content.slice(),i=0;for(n.isText&&n.sameMarkup(r)&&(s[s.length-1]=n.withText(n.text+r.text),i=1);i<e.content.length;i++)s.push(e.content[i]);return new x(s,this.size+e.size)}cut(e,n=this.size){if(e==0&&n==this.size)return this;let r=[],s=0;if(n>e)for(let i=0,o=0;o<n;i++){let a=this.content[i],l=o+a.nodeSize;l>e&&((o<e||l>n)&&(a.isText?a=a.cut(Math.max(0,e-o),Math.min(a.text.length,n-o)):a=a.cut(Math.max(0,e-o-1),Math.min(a.content.size,n-o-1))),r.push(a),s+=a.nodeSize),o=l}return new x(r,s)}cutByIndex(e,n){return e==n?x.empty:e==0&&n==this.content.length?this:new x(this.content.slice(e,n))}replaceChild(e,n){let r=this.content[e];if(r==n)return this;let s=this.content.slice(),i=this.size+n.nodeSize-r.nodeSize;return s[e]=n,new x(s,i)}addToStart(e){return new x([e].concat(this.content),this.size+e.nodeSize)}addToEnd(e){return new x(this.content.concat(e),this.size+e.nodeSize)}eq(e){if(this.content.length!=e.content.length)return!1;for(let n=0;n<this.content.length;n++)if(!this.content[n].eq(e.content[n]))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(e){let n=this.content[e];if(!n)throw new RangeError("Index "+e+" out of range for "+this);return n}maybeChild(e){return this.content[e]||null}forEach(e){for(let n=0,r=0;n<this.content.length;n++){let s=this.content[n];e(s,r,n),r+=s.nodeSize}}findDiffStart(e,n=0){return Uu(this,e,n)}findDiffEnd(e,n=this.size,r=e.size){return ju(this,e,n,r)}findIndex(e,n=-1){if(e==0)return Rs(0,e);if(e==this.size)return Rs(this.content.length,e);if(e>this.size||e<0)throw new RangeError(`Position ${e} outside of fragment (${this})`);for(let r=0,s=0;;r++){let i=this.child(r),o=s+i.nodeSize;if(o>=e)return o==e||n>0?Rs(r+1,o):Rs(r,s);s=o}}toString(){return"<"+this.toStringInner()+">"}toStringInner(){return this.content.join(", ")}toJSON(){return this.content.length?this.content.map(e=>e.toJSON()):null}static fromJSON(e,n){if(!n)return x.empty;if(!Array.isArray(n))throw new RangeError("Invalid input for Fragment.fromJSON");return new x(n.map(e.nodeFromJSON))}static fromArray(e){if(!e.length)return x.empty;let n,r=0;for(let s=0;s<e.length;s++){let i=e[s];r+=i.nodeSize,s&&i.isText&&e[s-1].sameMarkup(i)?(n||(n=e.slice(0,s)),n[n.length-1]=i.withText(n[n.length-1].text+i.text)):n&&n.push(i)}return new x(n||e,r)}static from(e){if(!e)return x.empty;if(e instanceof x)return e;if(Array.isArray(e))return this.fromArray(e);if(e.attrs)return new x([e],e.nodeSize);throw new RangeError("Can not convert "+e+" to a Fragment"+(e.nodesBetween?" (looks like multiple versions of prosemirror-model were loaded)":""))}}x.empty=new x([],0);const eo={index:0,offset:0};function Rs(t,e){return eo.index=t,eo.offset=e,eo}function ii(t,e){if(t===e)return!0;if(!(t&&typeof t=="object")||!(e&&typeof e=="object"))return!1;let n=Array.isArray(t);if(Array.isArray(e)!=n)return!1;if(n){if(t.length!=e.length)return!1;for(let r=0;r<t.length;r++)if(!ii(t[r],e[r]))return!1}else{for(let r in t)if(!(r in e)||!ii(t[r],e[r]))return!1;for(let r in e)if(!(r in t))return!1}return!0}class U{constructor(e,n){this.type=e,this.attrs=n}addToSet(e){let n,r=!1;for(let s=0;s<e.length;s++){let i=e[s];if(this.eq(i))return e;if(this.type.excludes(i.type))n||(n=e.slice(0,s));else{if(i.type.excludes(this.type))return e;!r&&i.type.rank>this.type.rank&&(n||(n=e.slice(0,s)),n.push(this),r=!0),n&&n.push(i)}}return n||(n=e.slice()),r||n.push(this),n}removeFromSet(e){for(let n=0;n<e.length;n++)if(this.eq(e[n]))return e.slice(0,n).concat(e.slice(n+1));return e}isInSet(e){for(let n=0;n<e.length;n++)if(this.eq(e[n]))return!0;return!1}eq(e){return this==e||this.type==e.type&&ii(this.attrs,e.attrs)}toJSON(){let e={type:this.type.name};for(let n in this.attrs){e.attrs=this.attrs;break}return e}static fromJSON(e,n){if(!n)throw new RangeError("Invalid input for Mark.fromJSON");let r=e.marks[n.type];if(!r)throw new RangeError(`There is no mark type ${n.type} in this schema`);let s=r.create(n.attrs);return r.checkAttrs(s.attrs),s}static sameSet(e,n){if(e==n)return!0;if(e.length!=n.length)return!1;for(let r=0;r<e.length;r++)if(!e[r].eq(n[r]))return!1;return!0}static setFrom(e){if(!e||Array.isArray(e)&&e.length==0)return U.none;if(e instanceof U)return[e];let n=e.slice();return n.sort((r,s)=>r.type.rank-s.type.rank),n}}U.none=[];class oi extends Error{}class w{constructor(e,n,r){this.content=e,this.openStart=n,this.openEnd=r}get size(){return this.content.size-this.openStart-this.openEnd}insertAt(e,n){let r=Ku(this.content,e+this.openStart,n);return r&&new w(r,this.openStart,this.openEnd)}removeBetween(e,n){return new w(Wu(this.content,e+this.openStart,n+this.openStart),this.openStart,this.openEnd)}eq(e){return this.content.eq(e.content)&&this.openStart==e.openStart&&this.openEnd==e.openEnd}toString(){return this.content+"("+this.openStart+","+this.openEnd+")"}toJSON(){if(!this.content.size)return null;let e={content:this.content.toJSON()};return this.openStart>0&&(e.openStart=this.openStart),this.openEnd>0&&(e.openEnd=this.openEnd),e}static fromJSON(e,n){if(!n)return w.empty;let r=n.openStart||0,s=n.openEnd||0;if(typeof r!="number"||typeof s!="number")throw new RangeError("Invalid input for Slice.fromJSON");return new w(x.fromJSON(e,n.content),r,s)}static maxOpen(e,n=!0){let r=0,s=0;for(let i=e.firstChild;i&&!i.isLeaf&&(n||!i.type.spec.isolating);i=i.firstChild)r++;for(let i=e.lastChild;i&&!i.isLeaf&&(n||!i.type.spec.isolating);i=i.lastChild)s++;return new w(e,r,s)}}w.empty=new w(x.empty,0,0);function Wu(t,e,n){let{index:r,offset:s}=t.findIndex(e),i=t.maybeChild(r),{index:o,offset:a}=t.findIndex(n);if(s==e||i.isText){if(a!=n&&!t.child(o).isText)throw new RangeError("Removing non-flat range");return t.cut(0,e).append(t.cut(n))}if(r!=o)throw new RangeError("Removing non-flat range");return t.replaceChild(r,i.copy(Wu(i.content,e-s-1,n-s-1)))}function Ku(t,e,n,r){let{index:s,offset:i}=t.findIndex(e),o=t.maybeChild(s);if(i==e||o.isText)return t.cut(0,e).append(n).append(t.cut(e));let a=Ku(o.content,e-i-1,n);return a&&t.replaceChild(s,o.copy(a))}function Tp(t,e,n){if(n.openStart>t.depth)throw new oi("Inserted content deeper than insertion position");if(t.depth-n.openStart!=e.depth-n.openEnd)throw new oi("Inconsistent open depths");return qu(t,e,n,0)}function qu(t,e,n,r){let s=t.index(r),i=t.node(r);if(s==e.index(r)&&r<t.depth-n.openStart){let o=qu(t,e,n,r+1);return i.copy(i.content.replaceChild(s,o))}else if(n.content.size)if(!n.openStart&&!n.openEnd&&t.depth==r&&e.depth==r){let o=t.parent,a=o.content;return Tn(o,a.cut(0,t.parentOffset).append(n.content).append(a.cut(e.parentOffset)))}else{let{start:o,end:a}=Op(n,t);return Tn(i,Gu(t,o,a,e,r))}else return Tn(i,ai(t,e,r))}function Ju(t,e){if(!e.type.compatibleContent(t.type))throw new oi("Cannot join "+e.type.name+" onto "+t.type.name)}function Oo(t,e,n){let r=t.node(n);return Ju(r,e.node(n)),r}function Cn(t,e){let n=e.length-1;n>=0&&t.isText&&t.sameMarkup(e[n])?e[n]=t.withText(e[n].text+t.text):e.push(t)}function es(t,e,n,r){let s=(e||t).node(n),i=0,o=e?e.index(n):s.childCount;t&&(i=t.index(n),t.depth>n?i++:t.textOffset&&(Cn(t.nodeAfter,r),i++));for(let a=i;a<o;a++)Cn(s.child(a),r);e&&e.depth==n&&e.textOffset&&Cn(e.nodeBefore,r)}function Tn(t,e){return t.type.checkContent(e),t.copy(e)}function Gu(t,e,n,r,s){let i=t.depth>s&&Oo(t,e,s+1),o=r.depth>s&&Oo(n,r,s+1),a=[];return es(null,t,s,a),i&&o&&e.index(s)==n.index(s)?(Ju(i,o),Cn(Tn(i,Gu(t,e,n,r,s+1)),a)):(i&&Cn(Tn(i,ai(t,e,s+1)),a),es(e,n,s,a),o&&Cn(Tn(o,ai(n,r,s+1)),a)),es(r,null,s,a),new x(a)}function ai(t,e,n){let r=[];if(es(null,t,n,r),t.depth>n){let s=Oo(t,e,n+1);Cn(Tn(s,ai(t,e,n+1)),r)}return es(e,null,n,r),new x(r)}function Op(t,e){let n=e.depth-t.openStart,s=e.node(n).copy(t.content);for(let i=n-1;i>=0;i--)s=e.node(i).copy(x.from(s));return{start:s.resolveNoCache(t.openStart+n),end:s.resolveNoCache(s.content.size-t.openEnd-n)}}class or{constructor(e,n,r){this.pos=e,this.path=n,this.parentOffset=r,this.depth=n.length/3-1}resolveDepth(e){return e==null?this.depth:e<0?this.depth+e:e}get parent(){return this.node(this.depth)}get doc(){return this.node(0)}node(e){return this.path[this.resolveDepth(e)*3]}index(e){return this.path[this.resolveDepth(e)*3+1]}indexAfter(e){return e=this.resolveDepth(e),this.index(e)+(e==this.depth&&!this.textOffset?0:1)}start(e){return e=this.resolveDepth(e),e==0?0:this.path[e*3-1]+1}end(e){return e=this.resolveDepth(e),this.start(e)+this.node(e).content.size}before(e){if(e=this.resolveDepth(e),!e)throw new RangeError("There is no position before the top-level node");return e==this.depth+1?this.pos:this.path[e*3-1]}after(e){if(e=this.resolveDepth(e),!e)throw new RangeError("There is no position after the top-level node");return e==this.depth+1?this.pos:this.path[e*3-1]+this.path[e*3].nodeSize}get textOffset(){return this.pos-this.path[this.path.length-1]}get nodeAfter(){let e=this.parent,n=this.index(this.depth);if(n==e.childCount)return null;let r=this.pos-this.path[this.path.length-1],s=e.child(n);return r?e.child(n).cut(r):s}get nodeBefore(){let e=this.index(this.depth),n=this.pos-this.path[this.path.length-1];return n?this.parent.child(e).cut(0,n):e==0?null:this.parent.child(e-1)}posAtIndex(e,n){n=this.resolveDepth(n);let r=this.path[n*3],s=n==0?0:this.path[n*3-1]+1;for(let i=0;i<e;i++)s+=r.child(i).nodeSize;return s}marks(){let e=this.parent,n=this.index();if(e.content.size==0)return U.none;if(this.textOffset)return e.child(n).marks;let r=e.maybeChild(n-1),s=e.maybeChild(n);if(!r){let a=r;r=s,s=a}let i=r.marks;for(var o=0;o<i.length;o++)i[o].type.spec.inclusive===!1&&(!s||!i[o].isInSet(s.marks))&&(i=i[o--].removeFromSet(i));return i}marksAcross(e){let n=this.parent.maybeChild(this.index());if(!n||!n.isInline)return null;let r=n.marks,s=e.parent.maybeChild(e.index());for(var i=0;i<r.length;i++)r[i].type.spec.inclusive===!1&&(!s||!r[i].isInSet(s.marks))&&(r=r[i--].removeFromSet(r));return r}sharedDepth(e){for(let n=this.depth;n>0;n--)if(this.start(n)<=e&&this.end(n)>=e)return n;return 0}blockRange(e=this,n){if(e.pos<this.pos)return e.blockRange(this);for(let r=this.depth-(this.parent.inlineContent||this.pos==e.pos?1:0);r>=0;r--)if(e.pos<=this.end(r)&&(!n||n(this.node(r))))return new Nn(this,e,r);return null}sameParent(e){return this.pos-this.parentOffset==e.pos-e.parentOffset}max(e){return e.pos>this.pos?e:this}min(e){return e.pos<this.pos?e:this}toString(){let e="";for(let n=1;n<=this.depth;n++)e+=(e?"/":"")+this.node(n).type.name+"_"+this.index(n-1);return e+":"+this.parentOffset}static resolve(e,n){if(!(n>=0&&n<=e.content.size))throw new RangeError("Position "+n+" out of range");let r=[],s=0,i=n;for(let o=e;;){let{index:a,offset:l}=o.content.findIndex(i),c=i-l;if(r.push(o,a,s+l),!c||(o=o.child(a),o.isText))break;i=c-1,s+=l+1}return new or(n,r,i)}static resolveCached(e,n){let r=fl.get(e);if(r)for(let i=0;i<r.elts.length;i++){let o=r.elts[i];if(o.pos==n)return o}else fl.set(e,r=new Mp);let s=r.elts[r.i]=or.resolve(e,n);return r.i=(r.i+1)%_p,s}}class Mp{constructor(){this.elts=[],this.i=0}}const _p=12,fl=new WeakMap;class Nn{constructor(e,n,r){this.$from=e,this.$to=n,this.depth=r}get start(){return this.$from.before(this.depth+1)}get end(){return this.$to.after(this.depth+1)}get parent(){return this.$from.node(this.depth)}get startIndex(){return this.$from.index(this.depth)}get endIndex(){return this.$to.indexAfter(this.depth)}}const Np=Object.create(null);let Xt=class Mo{constructor(e,n,r,s=U.none){this.type=e,this.attrs=n,this.marks=s,this.content=r||x.empty}get nodeSize(){return this.isLeaf?1:2+this.content.size}get childCount(){return this.content.childCount}child(e){return this.content.child(e)}maybeChild(e){return this.content.maybeChild(e)}forEach(e){this.content.forEach(e)}nodesBetween(e,n,r,s=0){this.content.nodesBetween(e,n,r,s,this)}descendants(e){this.nodesBetween(0,this.content.size,e)}get textContent(){return this.isLeaf&&this.type.spec.leafText?this.type.spec.leafText(this):this.textBetween(0,this.content.size,"")}textBetween(e,n,r,s){return this.content.textBetween(e,n,r,s)}get firstChild(){return this.content.firstChild}get lastChild(){return this.content.lastChild}eq(e){return this==e||this.sameMarkup(e)&&this.content.eq(e.content)}sameMarkup(e){return this.hasMarkup(e.type,e.attrs,e.marks)}hasMarkup(e,n,r){return this.type==e&&ii(this.attrs,n||e.defaultAttrs||Np)&&U.sameSet(this.marks,r||U.none)}copy(e=null){return e==this.content?this:new Mo(this.type,this.attrs,e,this.marks)}mark(e){return e==this.marks?this:new Mo(this.type,this.attrs,this.content,e)}cut(e,n=this.content.size){return e==0&&n==this.content.size?this:this.copy(this.content.cut(e,n))}slice(e,n=this.content.size,r=!1){if(e==n)return w.empty;let s=this.resolve(e),i=this.resolve(n),o=r?0:s.sharedDepth(n),a=s.start(o),c=s.node(o).content.cut(s.pos-a,i.pos-a);return new w(c,s.depth-o,i.depth-o)}replace(e,n,r){return Tp(this.resolve(e),this.resolve(n),r)}nodeAt(e){for(let n=this;;){let{index:r,offset:s}=n.content.findIndex(e);if(n=n.maybeChild(r),!n)return null;if(s==e||n.isText)return n;e-=s+1}}childAfter(e){let{index:n,offset:r}=this.content.findIndex(e);return{node:this.content.maybeChild(n),index:n,offset:r}}childBefore(e){if(e==0)return{node:null,index:0,offset:0};let{index:n,offset:r}=this.content.findIndex(e);if(r<e)return{node:this.content.child(n),index:n,offset:r};let s=this.content.child(n-1);return{node:s,index:n-1,offset:r-s.nodeSize}}resolve(e){return or.resolveCached(this,e)}resolveNoCache(e){return or.resolve(this,e)}rangeHasMark(e,n,r){let s=!1;return n>e&&this.nodesBetween(e,n,i=>(r.isInSet(i.marks)&&(s=!0),!s)),s}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 e=this.type.name;return this.content.size&&(e+="("+this.content.toStringInner()+")"),Xu(this.marks,e)}contentMatchAt(e){let n=this.type.contentMatch.matchFragment(this.content,0,e);if(!n)throw new Error("Called contentMatchAt on a node with invalid content");return n}canReplace(e,n,r=x.empty,s=0,i=r.childCount){let o=this.contentMatchAt(e).matchFragment(r,s,i),a=o&&o.matchFragment(this.content,n);if(!a||!a.validEnd)return!1;for(let l=s;l<i;l++)if(!this.type.allowsMarks(r.child(l).marks))return!1;return!0}canReplaceWith(e,n,r,s){if(s&&!this.type.allowsMarks(s))return!1;let i=this.contentMatchAt(e).matchType(r),o=i&&i.matchFragment(this.content,n);return o?o.validEnd:!1}canAppend(e){return e.content.size?this.canReplace(this.childCount,this.childCount,e.content):this.type.compatibleContent(e.type)}check(){this.type.checkContent(this.content),this.type.checkAttrs(this.attrs);let e=U.none;for(let n=0;n<this.marks.length;n++){let r=this.marks[n];r.type.checkAttrs(r.attrs),e=r.addToSet(e)}if(!U.sameSet(e,this.marks))throw new RangeError(`Invalid collection of marks for node ${this.type.name}: ${this.marks.map(n=>n.type.name)}`);this.content.forEach(n=>n.check())}toJSON(){let e={type:this.type.name};for(let n in this.attrs){e.attrs=this.attrs;break}return this.content.size&&(e.content=this.content.toJSON()),this.marks.length&&(e.marks=this.marks.map(n=>n.toJSON())),e}static fromJSON(e,n){if(!n)throw new RangeError("Invalid input for Node.fromJSON");let r;if(n.marks){if(!Array.isArray(n.marks))throw new RangeError("Invalid mark data for Node.fromJSON");r=n.marks.map(e.markFromJSON)}if(n.type=="text"){if(typeof n.text!="string")throw new RangeError("Invalid text node in JSON");return e.text(n.text,r)}let s=x.fromJSON(e,n.content),i=e.nodeType(n.type).create(n.attrs,s,r);return i.type.checkAttrs(i.attrs),i}};Xt.prototype.text=void 0;class li extends Xt{constructor(e,n,r,s){if(super(e,n,null,s),!r)throw new RangeError("Empty text nodes are not allowed");this.text=r}toString(){return this.type.spec.toDebugString?this.type.spec.toDebugString(this):Xu(this.marks,JSON.stringify(this.text))}get textContent(){return this.text}textBetween(e,n){return this.text.slice(e,n)}get nodeSize(){return this.text.length}mark(e){return e==this.marks?this:new li(this.type,this.attrs,this.text,e)}withText(e){return e==this.text?this:new li(this.type,this.attrs,e,this.marks)}cut(e=0,n=this.text.length){return e==0&&n==this.text.length?this:this.withText(this.text.slice(e,n))}eq(e){return this.sameMarkup(e)&&this.text==e.text}toJSON(){let e=super.toJSON();return e.text=this.text,e}}function Xu(t,e){for(let n=t.length-1;n>=0;n--)e=t[n].type.name+"("+e+")";return e}class An{constructor(e){this.validEnd=e,this.next=[],this.wrapCache=[]}static parse(e,n){let r=new Ap(e,n);if(r.next==null)return An.empty;let s=Yu(r);r.next&&r.err("Unexpected trailing text");let i=zp(Bp(s));return $p(i,r),i}matchType(e){for(let n=0;n<this.next.length;n++)if(this.next[n].type==e)return this.next[n].next;return null}matchFragment(e,n=0,r=e.childCount){let s=this;for(let i=n;s&&i<r;i++)s=s.matchType(e.child(i).type);return s}get inlineContent(){return this.next.length!=0&&this.next[0].type.isInline}get defaultType(){for(let e=0;e<this.next.length;e++){let{type:n}=this.next[e];if(!(n.isText||n.hasRequiredAttrs()))return n}return null}compatible(e){for(let n=0;n<this.next.length;n++)for(let r=0;r<e.next.length;r++)if(this.next[n].type==e.next[r].type)return!0;return!1}fillBefore(e,n=!1,r=0){let s=[this];function i(o,a){let l=o.matchFragment(e,r);if(l&&(!n||l.validEnd))return x.from(a.map(c=>c.createAndFill()));for(let c=0;c<o.next.length;c++){let{type:u,next:d}=o.next[c];if(!(u.isText||u.hasRequiredAttrs())&&s.indexOf(d)==-1){s.push(d);let h=i(d,a.concat(u));if(h)return h}}return null}return i(this,[])}findWrapping(e){for(let r=0;r<this.wrapCache.length;r+=2)if(this.wrapCache[r]==e)return this.wrapCache[r+1];let n=this.computeWrapping(e);return this.wrapCache.push(e,n),n}computeWrapping(e){let n=Object.create(null),r=[{match:this,type:null,via:null}];for(;r.length;){let s=r.shift(),i=s.match;if(i.matchType(e)){let o=[];for(let a=s;a.type;a=a.via)o.push(a.type);return o.reverse()}for(let o=0;o<i.next.length;o++){let{type:a,next:l}=i.next[o];!a.isLeaf&&!a.hasRequiredAttrs()&&!(a.name in n)&&(!s.type||l.validEnd)&&(r.push({match:a.contentMatch,type:a,via:s}),n[a.name]=!0)}}return null}get edgeCount(){return this.next.length}edge(e){if(e>=this.next.length)throw new RangeError(`There's no ${e}th edge in this content match`);return this.next[e]}toString(){let e=[];function n(r){e.push(r);for(let s=0;s<r.next.length;s++)e.indexOf(r.next[s].next)==-1&&n(r.next[s].next)}return n(this),e.map((r,s)=>{let i=s+(r.validEnd?"*":" ")+" ";for(let o=0;o<r.next.length;o++)i+=(o?", ":"")+r.next[o].type.name+"->"+e.indexOf(r.next[o].next);return i}).join(`
|
|
31
|
+
`)}}An.empty=new An(!0);class Ap{constructor(e,n){this.string=e,this.nodeTypes=n,this.inline=null,this.pos=0,this.tokens=e.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(e){return this.next==e&&(this.pos++||!0)}err(e){throw new SyntaxError(e+" (in content expression '"+this.string+"')")}}function Yu(t){let e=[];do e.push(Rp(t));while(t.eat("|"));return e.length==1?e[0]:{type:"choice",exprs:e}}function Rp(t){let e=[];do e.push(Ip(t));while(t.next&&t.next!=")"&&t.next!="|");return e.length==1?e[0]:{type:"seq",exprs:e}}function Ip(t){let e=Lp(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=Dp(t,e);else break;return e}function pl(t){/\D/.test(t.next)&&t.err("Expected number, got '"+t.next+"'");let e=Number(t.next);return t.pos++,e}function Dp(t,e){let n=pl(t),r=n;return t.eat(",")&&(t.next!="}"?r=pl(t):r=-1),t.eat("}")||t.err("Unclosed braced range"),{type:"range",min:n,max:r,expr:e}}function Pp(t,e){let n=t.nodeTypes,r=n[e];if(r)return[r];let s=[];for(let i in n){let o=n[i];o.groups.indexOf(e)>-1&&s.push(o)}return s.length==0&&t.err("No node type or group '"+e+"' found"),s}function Lp(t){if(t.eat("(")){let e=Yu(t);return t.eat(")")||t.err("Missing closing paren"),e}else if(/\W/.test(t.next))t.err("Unexpected token '"+t.next+"'");else{let e=Pp(t,t.next).map(n=>(t.inline==null?t.inline=n.isInline:t.inline!=n.isInline&&t.err("Mixing inline and block content"),{type:"name",value:n}));return t.pos++,e.length==1?e[0]:{type:"choice",exprs:e}}}function Bp(t){let e=[[]];return s(i(t,0),n()),e;function n(){return e.push([])-1}function r(o,a,l){let c={term:l,to:a};return e[o].push(c),c}function s(o,a){o.forEach(l=>l.to=a)}function i(o,a){if(o.type=="choice")return o.exprs.reduce((l,c)=>l.concat(i(c,a)),[]);if(o.type=="seq")for(let l=0;;l++){let c=i(o.exprs[l],a);if(l==o.exprs.length-1)return c;s(c,a=n())}else if(o.type=="star"){let l=n();return r(a,l),s(i(o.expr,l),l),[r(l)]}else if(o.type=="plus"){let l=n();return s(i(o.expr,a),l),s(i(o.expr,l),l),[r(l)]}else{if(o.type=="opt")return[r(a)].concat(i(o.expr,a));if(o.type=="range"){let l=a;for(let c=0;c<o.min;c++){let u=n();s(i(o.expr,l),u),l=u}if(o.max==-1)s(i(o.expr,l),l);else for(let c=o.min;c<o.max;c++){let u=n();r(l,u),s(i(o.expr,l),u),l=u}return[r(l)]}else{if(o.type=="name")return[r(a,void 0,o.value)];throw new Error("Unknown expr type")}}}}function Zu(t,e){return e-t}function ml(t,e){let n=[];return r(e),n.sort(Zu);function r(s){let i=t[s];if(i.length==1&&!i[0].term)return r(i[0].to);n.push(s);for(let o=0;o<i.length;o++){let{term:a,to:l}=i[o];!a&&n.indexOf(l)==-1&&r(l)}}}function zp(t){let e=Object.create(null);return n(ml(t,0));function n(r){let s=[];r.forEach(o=>{t[o].forEach(({term:a,to:l})=>{if(!a)return;let c;for(let u=0;u<s.length;u++)s[u][0]==a&&(c=s[u][1]);ml(t,l).forEach(u=>{c||s.push([a,c=[]]),c.indexOf(u)==-1&&c.push(u)})})});let i=e[r.join(",")]=new An(r.indexOf(t.length-1)>-1);for(let o=0;o<s.length;o++){let a=s[o][1].sort(Zu);i.next.push({type:s[o][0],next:e[a.join(",")]||n(a)})}return i}}function $p(t,e){for(let n=0,r=[t];n<r.length;n++){let s=r[n],i=!s.validEnd,o=[];for(let a=0;a<s.next.length;a++){let{type:l,next:c}=s.next[a];o.push(l.name),i&&!(l.isText||l.hasRequiredAttrs())&&(i=!1),r.indexOf(c)==-1&&r.push(c)}i&&e.err("Only non-generatable nodes ("+o.join(", ")+") in a required position (see https://prosemirror.net/docs/guide/#generatable)")}}function Qu(t){let e=Object.create(null);for(let n in t){let r=t[n];if(!r.hasDefault)return null;e[n]=r.default}return e}function ed(t,e){let n=Object.create(null);for(let r in t){let s=e&&e[r];if(s===void 0){let i=t[r];if(i.hasDefault)s=i.default;else throw new RangeError("No value supplied for attribute "+r)}n[r]=s}return n}function td(t,e,n,r){for(let s in e)if(!(s in t))throw new RangeError(`Unsupported attribute ${s} for ${n} of type ${s}`);for(let s in t){let i=t[s];i.validate&&i.validate(e[s])}}function nd(t,e){let n=Object.create(null);if(e)for(let r in e)n[r]=new Vp(t,r,e[r]);return n}let _o=class rd{constructor(e,n,r){this.name=e,this.schema=n,this.spec=r,this.markSet=null,this.groups=r.group?r.group.split(" "):[],this.attrs=nd(e,r.attrs),this.defaultAttrs=Qu(this.attrs),this.contentMatch=null,this.inlineContent=null,this.isBlock=!(r.inline||e=="text"),this.isText=e=="text"}get isInline(){return!this.isBlock}get isTextblock(){return this.isBlock&&this.inlineContent}get isLeaf(){return this.contentMatch==An.empty}get isAtom(){return this.isLeaf||!!this.spec.atom}get whitespace(){return this.spec.whitespace||(this.spec.code?"pre":"normal")}hasRequiredAttrs(){for(let e in this.attrs)if(this.attrs[e].isRequired)return!0;return!1}compatibleContent(e){return this==e||this.contentMatch.compatible(e.contentMatch)}computeAttrs(e){return!e&&this.defaultAttrs?this.defaultAttrs:ed(this.attrs,e)}create(e=null,n,r){if(this.isText)throw new Error("NodeType.create can't construct text nodes");return new Xt(this,this.computeAttrs(e),x.from(n),U.setFrom(r))}createChecked(e=null,n,r){return n=x.from(n),this.checkContent(n),new Xt(this,this.computeAttrs(e),n,U.setFrom(r))}createAndFill(e=null,n,r){if(e=this.computeAttrs(e),n=x.from(n),n.size){let o=this.contentMatch.fillBefore(n);if(!o)return null;n=o.append(n)}let s=this.contentMatch.matchFragment(n),i=s&&s.fillBefore(x.empty,!0);return i?new Xt(this,e,n.append(i),U.setFrom(r)):null}validContent(e){let n=this.contentMatch.matchFragment(e);if(!n||!n.validEnd)return!1;for(let r=0;r<e.childCount;r++)if(!this.allowsMarks(e.child(r).marks))return!1;return!0}checkContent(e){if(!this.validContent(e))throw new RangeError(`Invalid content for node ${this.name}: ${e.toString().slice(0,50)}`)}checkAttrs(e){td(this.attrs,e,"node",this.name)}allowsMarkType(e){return this.markSet==null||this.markSet.indexOf(e)>-1}allowsMarks(e){if(this.markSet==null)return!0;for(let n=0;n<e.length;n++)if(!this.allowsMarkType(e[n].type))return!1;return!0}allowedMarks(e){if(this.markSet==null)return e;let n;for(let r=0;r<e.length;r++)this.allowsMarkType(e[r].type)?n&&n.push(e[r]):n||(n=e.slice(0,r));return n?n.length?n:U.none:e}static compile(e,n){let r=Object.create(null);e.forEach((i,o)=>r[i]=new rd(i,n,o));let s=n.spec.topNode||"doc";if(!r[s])throw new RangeError("Schema is missing its top node type ('"+s+"')");if(!r.text)throw new RangeError("Every schema needs a 'text' type");for(let i in r.text.attrs)throw new RangeError("The text node type should not have attributes");return r}};function Fp(t,e,n){let r=n.split("|");return s=>{let i=s===null?"null":typeof s;if(r.indexOf(i)<0)throw new RangeError(`Expected value of type ${r} for attribute ${e} on type ${t}, got ${i}`)}}class Vp{constructor(e,n,r){this.hasDefault=Object.prototype.hasOwnProperty.call(r,"default"),this.default=r.default,this.validate=typeof r.validate=="string"?Fp(e,n,r.validate):r.validate}get isRequired(){return!this.hasDefault}}class Es{constructor(e,n,r,s){this.name=e,this.rank=n,this.schema=r,this.spec=s,this.attrs=nd(e,s.attrs),this.excluded=null;let i=Qu(this.attrs);this.instance=i?new U(this,i):null}create(e=null){return!e&&this.instance?this.instance:new U(this,ed(this.attrs,e))}static compile(e,n){let r=Object.create(null),s=0;return e.forEach((i,o)=>r[i]=new Es(i,s++,n,o)),r}removeFromSet(e){for(var n=0;n<e.length;n++)e[n].type==this&&(e=e.slice(0,n).concat(e.slice(n+1)),n--);return e}isInSet(e){for(let n=0;n<e.length;n++)if(e[n].type==this)return e[n]}checkAttrs(e){td(this.attrs,e,"mark",this.name)}excludes(e){return this.excluded.indexOf(e)>-1}}class Hp{constructor(e){this.linebreakReplacement=null,this.cached=Object.create(null);let n=this.spec={};for(let s in e)n[s]=e[s];n.nodes=ke.from(e.nodes),n.marks=ke.from(e.marks||{}),this.nodes=_o.compile(this.spec.nodes,this),this.marks=Es.compile(this.spec.marks,this);let r=Object.create(null);for(let s in this.nodes){if(s in this.marks)throw new RangeError(s+" can not be both a node and a mark");let i=this.nodes[s],o=i.spec.content||"",a=i.spec.marks;if(i.contentMatch=r[o]||(r[o]=An.parse(o,this.nodes)),i.inlineContent=i.contentMatch.inlineContent,i.spec.linebreakReplacement){if(this.linebreakReplacement)throw new RangeError("Multiple linebreak nodes defined");if(!i.isInline||!i.isLeaf)throw new RangeError("Linebreak replacement nodes must be inline leaf nodes");this.linebreakReplacement=i}i.markSet=a=="_"?null:a?gl(this,a.split(" ")):a==""||!i.inlineContent?[]:null}for(let s in this.marks){let i=this.marks[s],o=i.spec.excludes;i.excluded=o==null?[i]:o==""?[]:gl(this,o.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(e,n=null,r,s){if(typeof e=="string")e=this.nodeType(e);else if(e instanceof _o){if(e.schema!=this)throw new RangeError("Node type from different schema used ("+e.name+")")}else throw new RangeError("Invalid node type: "+e);return e.createChecked(n,r,s)}text(e,n){let r=this.nodes.text;return new li(r,r.defaultAttrs,e,U.setFrom(n))}mark(e,n){return typeof e=="string"&&(e=this.marks[e]),e.create(n)}nodeFromJSON(e){return Xt.fromJSON(this,e)}markFromJSON(e){return U.fromJSON(this,e)}nodeType(e){let n=this.nodes[e];if(!n)throw new RangeError("Unknown node type: "+e);return n}}function gl(t,e){let n=[];for(let r=0;r<e.length;r++){let s=e[r],i=t.marks[s],o=i;if(i)n.push(i);else for(let a in t.marks){let l=t.marks[a];(s=="_"||l.spec.group&&l.spec.group.split(" ").indexOf(s)>-1)&&n.push(o=l)}if(!o)throw new SyntaxError("Unknown mark type: '"+e[r]+"'")}return n}function Up(t){return t.tag!=null}function jp(t){return t.style!=null}class ar{constructor(e,n){this.schema=e,this.rules=n,this.tags=[],this.styles=[];let r=this.matchedStyles=[];n.forEach(s=>{if(Up(s))this.tags.push(s);else if(jp(s)){let i=/[^=]*/.exec(s.style)[0];r.indexOf(i)<0&&r.push(i),this.styles.push(s)}}),this.normalizeLists=!this.tags.some(s=>{if(!/^(ul|ol)\b/.test(s.tag)||!s.node)return!1;let i=e.nodes[s.node];return i.contentMatch.matchType(i)})}parse(e,n={}){let r=new xl(this,n,!1);return r.addAll(e,U.none,n.from,n.to),r.finish()}parseSlice(e,n={}){let r=new xl(this,n,!0);return r.addAll(e,U.none,n.from,n.to),w.maxOpen(r.finish())}matchTag(e,n,r){for(let s=r?this.tags.indexOf(r)+1:0;s<this.tags.length;s++){let i=this.tags[s];if(qp(e,i.tag)&&(i.namespace===void 0||e.namespaceURI==i.namespace)&&(!i.context||n.matchesContext(i.context))){if(i.getAttrs){let o=i.getAttrs(e);if(o===!1)continue;i.attrs=o||void 0}return i}}}matchStyle(e,n,r,s){for(let i=s?this.styles.indexOf(s)+1:0;i<this.styles.length;i++){let o=this.styles[i],a=o.style;if(!(a.indexOf(e)!=0||o.context&&!r.matchesContext(o.context)||a.length>e.length&&(a.charCodeAt(e.length)!=61||a.slice(e.length+1)!=n))){if(o.getAttrs){let l=o.getAttrs(n);if(l===!1)continue;o.attrs=l||void 0}return o}}}static schemaRules(e){let n=[];function r(s){let i=s.priority==null?50:s.priority,o=0;for(;o<n.length;o++){let a=n[o];if((a.priority==null?50:a.priority)<i)break}n.splice(o,0,s)}for(let s in e.marks){let i=e.marks[s].spec.parseDOM;i&&i.forEach(o=>{r(o=bl(o)),o.mark||o.ignore||o.clearMark||(o.mark=s)})}for(let s in e.nodes){let i=e.nodes[s].spec.parseDOM;i&&i.forEach(o=>{r(o=bl(o)),o.node||o.ignore||o.mark||(o.node=s)})}return n}static fromSchema(e){return e.cached.domParser||(e.cached.domParser=new ar(e,ar.schemaRules(e)))}}const sd={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},Wp={head:!0,noscript:!0,object:!0,script:!0,style:!0,title:!0},id={ol:!0,ul:!0},ci=1,ui=2,ts=4;function yl(t,e,n){return e!=null?(e?ci:0)|(e==="full"?ui:0):t&&t.whitespace=="pre"?ci|ui:n&~ts}class Is{constructor(e,n,r,s,i,o){this.type=e,this.attrs=n,this.marks=r,this.solid=s,this.options=o,this.content=[],this.activeMarks=U.none,this.match=i||(o&ts?null:e.contentMatch)}findWrapping(e){if(!this.match){if(!this.type)return[];let n=this.type.contentMatch.fillBefore(x.from(e));if(n)this.match=this.type.contentMatch.matchFragment(n);else{let r=this.type.contentMatch,s;return(s=r.findWrapping(e.type))?(this.match=r,s):null}}return this.match.findWrapping(e.type)}finish(e){if(!(this.options&ci)){let r=this.content[this.content.length-1],s;if(r&&r.isText&&(s=/[ \t\r\n\u000c]+$/.exec(r.text))){let i=r;r.text.length==s[0].length?this.content.pop():this.content[this.content.length-1]=i.withText(i.text.slice(0,i.text.length-s[0].length))}}let n=x.from(this.content);return!e&&this.match&&(n=n.append(this.match.fillBefore(x.empty,!0))),this.type?this.type.create(this.attrs,n,this.marks):n}inlineContext(e){return this.type?this.type.inlineContent:this.content.length?this.content[0].isInline:e.parentNode&&!sd.hasOwnProperty(e.parentNode.nodeName.toLowerCase())}}class xl{constructor(e,n,r){this.parser=e,this.options=n,this.isOpen=r,this.open=0;let s=n.topNode,i,o=yl(null,n.preserveWhitespace,0)|(r?ts:0);s?i=new Is(s.type,s.attrs,U.none,!0,n.topMatch||s.type.contentMatch,o):r?i=new Is(null,null,U.none,!0,null,o):i=new Is(e.schema.topNodeType,null,U.none,!0,null,o),this.nodes=[i],this.find=n.findPositions,this.needsBlock=!1}get top(){return this.nodes[this.open]}addDOM(e,n){e.nodeType==3?this.addTextNode(e,n):e.nodeType==1&&this.addElement(e,n)}addTextNode(e,n){let r=e.nodeValue,s=this.top;if(s.options&ui||s.inlineContext(e)||/[^ \t\r\n\u000c]/.test(r)){if(s.options&ci)s.options&ui?r=r.replace(/\r\n?/g,`
|
|
32
|
+
`):r=r.replace(/\r?\n|\r/g," ");else if(r=r.replace(/[ \t\r\n\u000c]+/g," "),/^[ \t\r\n\u000c]/.test(r)&&this.open==this.nodes.length-1){let i=s.content[s.content.length-1],o=e.previousSibling;(!i||o&&o.nodeName=="BR"||i.isText&&/[ \t\r\n\u000c]$/.test(i.text))&&(r=r.slice(1))}r&&this.insertNode(this.parser.schema.text(r),n),this.findInText(e)}else this.findInside(e)}addElement(e,n,r){let s=e.nodeName.toLowerCase(),i;id.hasOwnProperty(s)&&this.parser.normalizeLists&&Kp(e);let o=this.options.ruleFromNode&&this.options.ruleFromNode(e)||(i=this.parser.matchTag(e,this,r));if(o?o.ignore:Wp.hasOwnProperty(s))this.findInside(e),this.ignoreFallback(e,n);else if(!o||o.skip||o.closeParent){o&&o.closeParent?this.open=Math.max(0,this.open-1):o&&o.skip.nodeType&&(e=o.skip);let a,l=this.top,c=this.needsBlock;if(sd.hasOwnProperty(s))l.content.length&&l.content[0].isInline&&this.open&&(this.open--,l=this.top),a=!0,l.type||(this.needsBlock=!0);else if(!e.firstChild){this.leafFallback(e,n);return}let u=o&&o.skip?n:this.readStyles(e,n);u&&this.addAll(e,u),a&&this.sync(l),this.needsBlock=c}else{let a=this.readStyles(e,n);a&&this.addElementByRule(e,o,a,o.consuming===!1?i:void 0)}}leafFallback(e,n){e.nodeName=="BR"&&this.top.type&&this.top.type.inlineContent&&this.addTextNode(e.ownerDocument.createTextNode(`
|
|
33
|
+
`),n)}ignoreFallback(e,n){e.nodeName=="BR"&&(!this.top.type||!this.top.type.inlineContent)&&this.findPlace(this.parser.schema.text("-"),n)}readStyles(e,n){let r=e.style;if(r&&r.length)for(let s=0;s<this.parser.matchedStyles.length;s++){let i=this.parser.matchedStyles[s],o=r.getPropertyValue(i);if(o)for(let a=void 0;;){let l=this.parser.matchStyle(i,o,this,a);if(!l)break;if(l.ignore)return null;if(l.clearMark?n=n.filter(c=>!l.clearMark(c)):n=n.concat(this.parser.schema.marks[l.mark].create(l.attrs)),l.consuming===!1)a=l;else break}}return n}addElementByRule(e,n,r,s){let i,o;if(n.node)if(o=this.parser.schema.nodes[n.node],o.isLeaf)this.insertNode(o.create(n.attrs),r)||this.leafFallback(e,r);else{let l=this.enter(o,n.attrs||null,r,n.preserveWhitespace);l&&(i=!0,r=l)}else{let l=this.parser.schema.marks[n.mark];r=r.concat(l.create(n.attrs))}let a=this.top;if(o&&o.isLeaf)this.findInside(e);else if(s)this.addElement(e,r,s);else if(n.getContent)this.findInside(e),n.getContent(e,this.parser.schema).forEach(l=>this.insertNode(l,r));else{let l=e;typeof n.contentElement=="string"?l=e.querySelector(n.contentElement):typeof n.contentElement=="function"?l=n.contentElement(e):n.contentElement&&(l=n.contentElement),this.findAround(e,l,!0),this.addAll(l,r)}i&&this.sync(a)&&this.open--}addAll(e,n,r,s){let i=r||0;for(let o=r?e.childNodes[r]:e.firstChild,a=s==null?null:e.childNodes[s];o!=a;o=o.nextSibling,++i)this.findAtPoint(e,i),this.addDOM(o,n);this.findAtPoint(e,i)}findPlace(e,n){let r,s;for(let i=this.open;i>=0;i--){let o=this.nodes[i],a=o.findWrapping(e);if(a&&(!r||r.length>a.length)&&(r=a,s=o,!a.length)||o.solid)break}if(!r)return null;this.sync(s);for(let i=0;i<r.length;i++)n=this.enterInner(r[i],null,n,!1);return n}insertNode(e,n){if(e.isInline&&this.needsBlock&&!this.top.type){let s=this.textblockFromContext();s&&(n=this.enterInner(s,null,n))}let r=this.findPlace(e,n);if(r){this.closeExtra();let s=this.top;s.match&&(s.match=s.match.matchType(e.type));let i=U.none;for(let o of r.concat(e.marks))(s.type?s.type.allowsMarkType(o.type):kl(o.type,e.type))&&(i=o.addToSet(i));return s.content.push(e.mark(i)),!0}return!1}enter(e,n,r,s){let i=this.findPlace(e.create(n),r);return i&&(i=this.enterInner(e,n,r,!0,s)),i}enterInner(e,n,r,s=!1,i){this.closeExtra();let o=this.top;o.match=o.match&&o.match.matchType(e);let a=yl(e,i,o.options);o.options&ts&&o.content.length==0&&(a|=ts);let l=U.none;return r=r.filter(c=>(o.type?o.type.allowsMarkType(c.type):kl(c.type,e))?(l=c.addToSet(l),!1):!0),this.nodes.push(new Is(e,n,l,s,null,a)),this.open++,r}closeExtra(e=!1){let n=this.nodes.length-1;if(n>this.open){for(;n>this.open;n--)this.nodes[n-1].content.push(this.nodes[n].finish(e));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(e){for(let n=this.open;n>=0;n--)if(this.nodes[n]==e)return this.open=n,!0;return!1}get currentPos(){this.closeExtra();let e=0;for(let n=this.open;n>=0;n--){let r=this.nodes[n].content;for(let s=r.length-1;s>=0;s--)e+=r[s].nodeSize;n&&e++}return e}findAtPoint(e,n){if(this.find)for(let r=0;r<this.find.length;r++)this.find[r].node==e&&this.find[r].offset==n&&(this.find[r].pos=this.currentPos)}findInside(e){if(this.find)for(let n=0;n<this.find.length;n++)this.find[n].pos==null&&e.nodeType==1&&e.contains(this.find[n].node)&&(this.find[n].pos=this.currentPos)}findAround(e,n,r){if(e!=n&&this.find)for(let s=0;s<this.find.length;s++)this.find[s].pos==null&&e.nodeType==1&&e.contains(this.find[s].node)&&n.compareDocumentPosition(this.find[s].node)&(r?2:4)&&(this.find[s].pos=this.currentPos)}findInText(e){if(this.find)for(let n=0;n<this.find.length;n++)this.find[n].node==e&&(this.find[n].pos=this.currentPos-(e.nodeValue.length-this.find[n].offset))}matchesContext(e){if(e.indexOf("|")>-1)return e.split(/\s*\|\s*/).some(this.matchesContext,this);let n=e.split("/"),r=this.options.context,s=!this.isOpen&&(!r||r.parent.type==this.nodes[0].type),i=-(r?r.depth+1:0)+(s?0:1),o=(a,l)=>{for(;a>=0;a--){let c=n[a];if(c==""){if(a==n.length-1||a==0)continue;for(;l>=i;l--)if(o(a-1,l))return!0;return!1}else{let u=l>0||l==0&&s?this.nodes[l].type:r&&l>=i?r.node(l-i).type:null;if(!u||u.name!=c&&u.groups.indexOf(c)==-1)return!1;l--}}return!0};return o(n.length-1,this.open)}textblockFromContext(){let e=this.options.context;if(e)for(let n=e.depth;n>=0;n--){let r=e.node(n).contentMatchAt(e.indexAfter(n)).defaultType;if(r&&r.isTextblock&&r.defaultAttrs)return r}for(let n in this.parser.schema.nodes){let r=this.parser.schema.nodes[n];if(r.isTextblock&&r.defaultAttrs)return r}}}function Kp(t){for(let e=t.firstChild,n=null;e;e=e.nextSibling){let r=e.nodeType==1?e.nodeName.toLowerCase():null;r&&id.hasOwnProperty(r)&&n?(n.appendChild(e),e=n):r=="li"?n=e:r&&(n=null)}}function qp(t,e){return(t.matches||t.msMatchesSelector||t.webkitMatchesSelector||t.mozMatchesSelector).call(t,e)}function bl(t){let e={};for(let n in t)e[n]=t[n];return e}function kl(t,e){let n=e.schema.nodes;for(let r in n){let s=n[r];if(!s.allowsMarkType(t))continue;let i=[],o=a=>{i.push(a);for(let l=0;l<a.edgeCount;l++){let{type:c,next:u}=a.edge(l);if(c==e||i.indexOf(u)<0&&o(u))return!0}};if(o(s.contentMatch))return!0}}class Dt{constructor(e,n){this.nodes=e,this.marks=n}serializeFragment(e,n={},r){r||(r=to(n).createDocumentFragment());let s=r,i=[];return e.forEach(o=>{if(i.length||o.marks.length){let a=0,l=0;for(;a<i.length&&l<o.marks.length;){let c=o.marks[l];if(!this.marks[c.type.name]){l++;continue}if(!c.eq(i[a][0])||c.type.spec.spanning===!1)break;a++,l++}for(;a<i.length;)s=i.pop()[1];for(;l<o.marks.length;){let c=o.marks[l++],u=this.serializeMark(c,o.isInline,n);u&&(i.push([c,s]),s.appendChild(u.dom),s=u.contentDOM||u.dom)}}s.appendChild(this.serializeNodeInner(o,n))}),r}serializeNodeInner(e,n){let{dom:r,contentDOM:s}=zs(to(n),this.nodes[e.type.name](e),null,e.attrs);if(s){if(e.isLeaf)throw new RangeError("Content hole not allowed in a leaf node spec");this.serializeFragment(e.content,n,s)}return r}serializeNode(e,n={}){let r=this.serializeNodeInner(e,n);for(let s=e.marks.length-1;s>=0;s--){let i=this.serializeMark(e.marks[s],e.isInline,n);i&&((i.contentDOM||i.dom).appendChild(r),r=i.dom)}return r}serializeMark(e,n,r={}){let s=this.marks[e.type.name];return s&&zs(to(r),s(e,n),null,e.attrs)}static renderSpec(e,n,r=null,s){return zs(e,n,r,s)}static fromSchema(e){return e.cached.domSerializer||(e.cached.domSerializer=new Dt(this.nodesFromSchema(e),this.marksFromSchema(e)))}static nodesFromSchema(e){let n=Sl(e.nodes);return n.text||(n.text=r=>r.text),n}static marksFromSchema(e){return Sl(e.marks)}}function Sl(t){let e={};for(let n in t){let r=t[n].spec.toDOM;r&&(e[n]=r)}return e}function to(t){return t.document||window.document}const wl=new WeakMap;function Jp(t){let e=wl.get(t);return e===void 0&&wl.set(t,e=Gp(t)),e}function Gp(t){let e=null;function n(r){if(r&&typeof r=="object")if(Array.isArray(r))if(typeof r[0]=="string")e||(e=[]),e.push(r);else for(let s=0;s<r.length;s++)n(r[s]);else for(let s in r)n(r[s])}return n(t),e}function zs(t,e,n,r){if(typeof e=="string")return{dom:t.createTextNode(e)};if(e.nodeType!=null)return{dom:e};if(e.dom&&e.dom.nodeType!=null)return e;let s=e[0],i;if(typeof s!="string")throw new RangeError("Invalid array passed to renderSpec");if(r&&(i=Jp(r))&&i.indexOf(e)>-1)throw new RangeError("Using an array from an attribute object as a DOM spec. This may be an attempted cross site scripting attack.");let o=s.indexOf(" ");o>0&&(n=s.slice(0,o),s=s.slice(o+1));let a,l=n?t.createElementNS(n,s):t.createElement(s),c=e[1],u=1;if(c&&typeof c=="object"&&c.nodeType==null&&!Array.isArray(c)){u=2;for(let d in c)if(c[d]!=null){let h=d.indexOf(" ");h>0?l.setAttributeNS(d.slice(0,h),d.slice(h+1),c[d]):l.setAttribute(d,c[d])}}for(let d=u;d<e.length;d++){let h=e[d];if(h===0){if(d<e.length-1||d>u)throw new RangeError("Content hole must be the only child of its parent node");return{dom:l,contentDOM:l}}else{let{dom:f,contentDOM:p}=zs(t,h,n,r);if(l.appendChild(f),p){if(a)throw new RangeError("Multiple content holes");a=p}}}return{dom:l,contentDOM:a}}const od=65535,ad=Math.pow(2,16);function Xp(t,e){return t+e*ad}function vl(t){return t&od}function Yp(t){return(t-(t&od))/ad}const ld=1,cd=2,$s=4,ud=8;class No{constructor(e,n,r){this.pos=e,this.delInfo=n,this.recover=r}get deleted(){return(this.delInfo&ud)>0}get deletedBefore(){return(this.delInfo&(ld|$s))>0}get deletedAfter(){return(this.delInfo&(cd|$s))>0}get deletedAcross(){return(this.delInfo&$s)>0}}class Ke{constructor(e,n=!1){if(this.ranges=e,this.inverted=n,!e.length&&Ke.empty)return Ke.empty}recover(e){let n=0,r=vl(e);if(!this.inverted)for(let s=0;s<r;s++)n+=this.ranges[s*3+2]-this.ranges[s*3+1];return this.ranges[r*3]+n+Yp(e)}mapResult(e,n=1){return this._map(e,n,!1)}map(e,n=1){return this._map(e,n,!0)}_map(e,n,r){let s=0,i=this.inverted?2:1,o=this.inverted?1:2;for(let a=0;a<this.ranges.length;a+=3){let l=this.ranges[a]-(this.inverted?s:0);if(l>e)break;let c=this.ranges[a+i],u=this.ranges[a+o],d=l+c;if(e<=d){let h=c?e==l?-1:e==d?1:n:n,f=l+s+(h<0?0:u);if(r)return f;let p=e==(n<0?l:d)?null:Xp(a/3,e-l),m=e==l?cd:e==d?ld:$s;return(n<0?e!=l:e!=d)&&(m|=ud),new No(f,m,p)}s+=u-c}return r?e+s:new No(e+s,0,null)}touches(e,n){let r=0,s=vl(n),i=this.inverted?2:1,o=this.inverted?1:2;for(let a=0;a<this.ranges.length;a+=3){let l=this.ranges[a]-(this.inverted?r:0);if(l>e)break;let c=this.ranges[a+i],u=l+c;if(e<=u&&a==s*3)return!0;r+=this.ranges[a+o]-c}return!1}forEach(e){let n=this.inverted?2:1,r=this.inverted?1:2;for(let s=0,i=0;s<this.ranges.length;s+=3){let o=this.ranges[s],a=o-(this.inverted?i:0),l=o+(this.inverted?0:i),c=this.ranges[s+n],u=this.ranges[s+r];e(a,a+c,l,l+u),i+=u-c}}invert(){return new Ke(this.ranges,!this.inverted)}toString(){return(this.inverted?"-":"")+JSON.stringify(this.ranges)}static offset(e){return e==0?Ke.empty:new Ke(e<0?[0,-e,0]:[0,0,e])}}Ke.empty=new Ke([]);class Yn{constructor(e=[],n,r=0,s=e.length){this.maps=e,this.mirror=n,this.from=r,this.to=s}slice(e=0,n=this.maps.length){return new Yn(this.maps,this.mirror,e,n)}copy(){return new Yn(this.maps.slice(),this.mirror&&this.mirror.slice(),this.from,this.to)}appendMap(e,n){this.to=this.maps.push(e),n!=null&&this.setMirror(this.maps.length-1,n)}appendMapping(e){for(let n=0,r=this.maps.length;n<e.maps.length;n++){let s=e.getMirror(n);this.appendMap(e.maps[n],s!=null&&s<n?r+s:void 0)}}getMirror(e){if(this.mirror){for(let n=0;n<this.mirror.length;n++)if(this.mirror[n]==e)return this.mirror[n+(n%2?-1:1)]}}setMirror(e,n){this.mirror||(this.mirror=[]),this.mirror.push(e,n)}appendMappingInverted(e){for(let n=e.maps.length-1,r=this.maps.length+e.maps.length;n>=0;n--){let s=e.getMirror(n);this.appendMap(e.maps[n].invert(),s!=null&&s>n?r-s-1:void 0)}}invert(){let e=new Yn;return e.appendMappingInverted(this),e}map(e,n=1){if(this.mirror)return this._map(e,n,!0);for(let r=this.from;r<this.to;r++)e=this.maps[r].map(e,n);return e}mapResult(e,n=1){return this._map(e,n,!1)}_map(e,n,r){let s=0;for(let i=this.from;i<this.to;i++){let o=this.maps[i],a=o.mapResult(e,n);if(a.recover!=null){let l=this.getMirror(i);if(l!=null&&l>i&&l<this.to){i=l,e=this.maps[l].recover(a.recover);continue}}s|=a.delInfo,e=a.pos}return r?e:new No(e,s,null)}}const no=Object.create(null);class ge{getMap(){return Ke.empty}merge(e){return null}static fromJSON(e,n){if(!n||!n.stepType)throw new RangeError("Invalid input for Step.fromJSON");let r=no[n.stepType];if(!r)throw new RangeError(`No step type ${n.stepType} defined`);return r.fromJSON(e,n)}static jsonID(e,n){if(e in no)throw new RangeError("Duplicate use of step JSON ID "+e);return no[e]=n,n.prototype.jsonID=e,n}}class le{constructor(e,n){this.doc=e,this.failed=n}static ok(e){return new le(e,null)}static fail(e){return new le(null,e)}static fromReplace(e,n,r,s){try{return le.ok(e.replace(n,r,s))}catch(i){if(i instanceof oi)return le.fail(i.message);throw i}}}function pa(t,e,n){let r=[];for(let s=0;s<t.childCount;s++){let i=t.child(s);i.content.size&&(i=i.copy(pa(i.content,e,i))),i.isInline&&(i=e(i,n,s)),r.push(i)}return x.fromArray(r)}class qt extends ge{constructor(e,n,r){super(),this.from=e,this.to=n,this.mark=r}apply(e){let n=e.slice(this.from,this.to),r=e.resolve(this.from),s=r.node(r.sharedDepth(this.to)),i=new w(pa(n.content,(o,a)=>!o.isAtom||!a.type.allowsMarkType(this.mark.type)?o:o.mark(this.mark.addToSet(o.marks)),s),n.openStart,n.openEnd);return le.fromReplace(e,this.from,this.to,i)}invert(){return new gt(this.from,this.to,this.mark)}map(e){let n=e.mapResult(this.from,1),r=e.mapResult(this.to,-1);return n.deleted&&r.deleted||n.pos>=r.pos?null:new qt(n.pos,r.pos,this.mark)}merge(e){return e instanceof qt&&e.mark.eq(this.mark)&&this.from<=e.to&&this.to>=e.from?new qt(Math.min(this.from,e.from),Math.max(this.to,e.to),this.mark):null}toJSON(){return{stepType:"addMark",mark:this.mark.toJSON(),from:this.from,to:this.to}}static fromJSON(e,n){if(typeof n.from!="number"||typeof n.to!="number")throw new RangeError("Invalid input for AddMarkStep.fromJSON");return new qt(n.from,n.to,e.markFromJSON(n.mark))}}ge.jsonID("addMark",qt);class gt extends ge{constructor(e,n,r){super(),this.from=e,this.to=n,this.mark=r}apply(e){let n=e.slice(this.from,this.to),r=new w(pa(n.content,s=>s.mark(this.mark.removeFromSet(s.marks)),e),n.openStart,n.openEnd);return le.fromReplace(e,this.from,this.to,r)}invert(){return new qt(this.from,this.to,this.mark)}map(e){let n=e.mapResult(this.from,1),r=e.mapResult(this.to,-1);return n.deleted&&r.deleted||n.pos>=r.pos?null:new gt(n.pos,r.pos,this.mark)}merge(e){return e instanceof gt&&e.mark.eq(this.mark)&&this.from<=e.to&&this.to>=e.from?new gt(Math.min(this.from,e.from),Math.max(this.to,e.to),this.mark):null}toJSON(){return{stepType:"removeMark",mark:this.mark.toJSON(),from:this.from,to:this.to}}static fromJSON(e,n){if(typeof n.from!="number"||typeof n.to!="number")throw new RangeError("Invalid input for RemoveMarkStep.fromJSON");return new gt(n.from,n.to,e.markFromJSON(n.mark))}}ge.jsonID("removeMark",gt);class Jt extends ge{constructor(e,n){super(),this.pos=e,this.mark=n}apply(e){let n=e.nodeAt(this.pos);if(!n)return le.fail("No node at mark step's position");let r=n.type.create(n.attrs,null,this.mark.addToSet(n.marks));return le.fromReplace(e,this.pos,this.pos+1,new w(x.from(r),0,n.isLeaf?0:1))}invert(e){let n=e.nodeAt(this.pos);if(n){let r=this.mark.addToSet(n.marks);if(r.length==n.marks.length){for(let s=0;s<n.marks.length;s++)if(!n.marks[s].isInSet(r))return new Jt(this.pos,n.marks[s]);return new Jt(this.pos,this.mark)}}return new lr(this.pos,this.mark)}map(e){let n=e.mapResult(this.pos,1);return n.deletedAfter?null:new Jt(n.pos,this.mark)}toJSON(){return{stepType:"addNodeMark",pos:this.pos,mark:this.mark.toJSON()}}static fromJSON(e,n){if(typeof n.pos!="number")throw new RangeError("Invalid input for AddNodeMarkStep.fromJSON");return new Jt(n.pos,e.markFromJSON(n.mark))}}ge.jsonID("addNodeMark",Jt);class lr extends ge{constructor(e,n){super(),this.pos=e,this.mark=n}apply(e){let n=e.nodeAt(this.pos);if(!n)return le.fail("No node at mark step's position");let r=n.type.create(n.attrs,null,this.mark.removeFromSet(n.marks));return le.fromReplace(e,this.pos,this.pos+1,new w(x.from(r),0,n.isLeaf?0:1))}invert(e){let n=e.nodeAt(this.pos);return!n||!this.mark.isInSet(n.marks)?this:new Jt(this.pos,this.mark)}map(e){let n=e.mapResult(this.pos,1);return n.deletedAfter?null:new lr(n.pos,this.mark)}toJSON(){return{stepType:"removeNodeMark",pos:this.pos,mark:this.mark.toJSON()}}static fromJSON(e,n){if(typeof n.pos!="number")throw new RangeError("Invalid input for RemoveNodeMarkStep.fromJSON");return new lr(n.pos,e.markFromJSON(n.mark))}}ge.jsonID("removeNodeMark",lr);class Ce extends ge{constructor(e,n,r,s=!1){super(),this.from=e,this.to=n,this.slice=r,this.structure=s}apply(e){return this.structure&&Ao(e,this.from,this.to)?le.fail("Structure replace would overwrite content"):le.fromReplace(e,this.from,this.to,this.slice)}getMap(){return new Ke([this.from,this.to-this.from,this.slice.size])}invert(e){return new Ce(this.from,this.from+this.slice.size,e.slice(this.from,this.to))}map(e){let n=e.mapResult(this.from,1),r=e.mapResult(this.to,-1);return n.deletedAcross&&r.deletedAcross?null:new Ce(n.pos,Math.max(n.pos,r.pos),this.slice)}merge(e){if(!(e instanceof Ce)||e.structure||this.structure)return null;if(this.from+this.slice.size==e.from&&!this.slice.openEnd&&!e.slice.openStart){let n=this.slice.size+e.slice.size==0?w.empty:new w(this.slice.content.append(e.slice.content),this.slice.openStart,e.slice.openEnd);return new Ce(this.from,this.to+(e.to-e.from),n,this.structure)}else if(e.to==this.from&&!this.slice.openStart&&!e.slice.openEnd){let n=this.slice.size+e.slice.size==0?w.empty:new w(e.slice.content.append(this.slice.content),e.slice.openStart,this.slice.openEnd);return new Ce(e.from,this.to,n,this.structure)}else return null}toJSON(){let e={stepType:"replace",from:this.from,to:this.to};return this.slice.size&&(e.slice=this.slice.toJSON()),this.structure&&(e.structure=!0),e}static fromJSON(e,n){if(typeof n.from!="number"||typeof n.to!="number")throw new RangeError("Invalid input for ReplaceStep.fromJSON");return new Ce(n.from,n.to,w.fromJSON(e,n.slice),!!n.structure)}}ge.jsonID("replace",Ce);class pe extends ge{constructor(e,n,r,s,i,o,a=!1){super(),this.from=e,this.to=n,this.gapFrom=r,this.gapTo=s,this.slice=i,this.insert=o,this.structure=a}apply(e){if(this.structure&&(Ao(e,this.from,this.gapFrom)||Ao(e,this.gapTo,this.to)))return le.fail("Structure gap-replace would overwrite content");let n=e.slice(this.gapFrom,this.gapTo);if(n.openStart||n.openEnd)return le.fail("Gap is not a flat range");let r=this.slice.insertAt(this.insert,n.content);return r?le.fromReplace(e,this.from,this.to,r):le.fail("Content does not fit in gap")}getMap(){return new Ke([this.from,this.gapFrom-this.from,this.insert,this.gapTo,this.to-this.gapTo,this.slice.size-this.insert])}invert(e){let n=this.gapTo-this.gapFrom;return new pe(this.from,this.from+this.slice.size+n,this.from+this.insert,this.from+this.insert+n,e.slice(this.from,this.to).removeBetween(this.gapFrom-this.from,this.gapTo-this.from),this.gapFrom-this.from,this.structure)}map(e){let n=e.mapResult(this.from,1),r=e.mapResult(this.to,-1),s=this.from==this.gapFrom?n.pos:e.map(this.gapFrom,-1),i=this.to==this.gapTo?r.pos:e.map(this.gapTo,1);return n.deletedAcross&&r.deletedAcross||s<n.pos||i>r.pos?null:new pe(n.pos,r.pos,s,i,this.slice,this.insert,this.structure)}toJSON(){let e={stepType:"replaceAround",from:this.from,to:this.to,gapFrom:this.gapFrom,gapTo:this.gapTo,insert:this.insert};return this.slice.size&&(e.slice=this.slice.toJSON()),this.structure&&(e.structure=!0),e}static fromJSON(e,n){if(typeof n.from!="number"||typeof n.to!="number"||typeof n.gapFrom!="number"||typeof n.gapTo!="number"||typeof n.insert!="number")throw new RangeError("Invalid input for ReplaceAroundStep.fromJSON");return new pe(n.from,n.to,n.gapFrom,n.gapTo,w.fromJSON(e,n.slice),n.insert,!!n.structure)}}ge.jsonID("replaceAround",pe);function Ao(t,e,n){let r=t.resolve(e),s=n-e,i=r.depth;for(;s>0&&i>0&&r.indexAfter(i)==r.node(i).childCount;)i--,s--;if(s>0){let o=r.node(i).maybeChild(r.indexAfter(i));for(;s>0;){if(!o||o.isLeaf)return!0;o=o.firstChild,s--}}return!1}function Zp(t,e,n,r){let s=[],i=[],o,a;t.doc.nodesBetween(e,n,(l,c,u)=>{if(!l.isInline)return;let d=l.marks;if(!r.isInSet(d)&&u.type.allowsMarkType(r.type)){let h=Math.max(c,e),f=Math.min(c+l.nodeSize,n),p=r.addToSet(d);for(let m=0;m<d.length;m++)d[m].isInSet(p)||(o&&o.to==h&&o.mark.eq(d[m])?o.to=f:s.push(o=new gt(h,f,d[m])));a&&a.to==h?a.to=f:i.push(a=new qt(h,f,r))}}),s.forEach(l=>t.step(l)),i.forEach(l=>t.step(l))}function Qp(t,e,n,r){let s=[],i=0;t.doc.nodesBetween(e,n,(o,a)=>{if(!o.isInline)return;i++;let l=null;if(r instanceof Es){let c=o.marks,u;for(;u=r.isInSet(c);)(l||(l=[])).push(u),c=u.removeFromSet(c)}else r?r.isInSet(o.marks)&&(l=[r]):l=o.marks;if(l&&l.length){let c=Math.min(a+o.nodeSize,n);for(let u=0;u<l.length;u++){let d=l[u],h;for(let f=0;f<s.length;f++){let p=s[f];p.step==i-1&&d.eq(s[f].style)&&(h=p)}h?(h.to=c,h.step=i):s.push({style:d,from:Math.max(a,e),to:c,step:i})}}}),s.forEach(o=>t.step(new gt(o.from,o.to,o.style)))}function dd(t,e,n,r=n.contentMatch,s=!0){let i=t.doc.nodeAt(e),o=[],a=e+1;for(let l=0;l<i.childCount;l++){let c=i.child(l),u=a+c.nodeSize,d=r.matchType(c.type);if(!d)o.push(new Ce(a,u,w.empty));else{r=d;for(let h=0;h<c.marks.length;h++)n.allowsMarkType(c.marks[h].type)||t.step(new gt(a,u,c.marks[h]));if(s&&c.isText&&n.whitespace!="pre"){let h,f=/\r?\n|\r/g,p;for(;h=f.exec(c.text);)p||(p=new w(x.from(n.schema.text(" ",n.allowedMarks(c.marks))),0,0)),o.push(new Ce(a+h.index,a+h.index+h[0].length,p))}}a=u}if(!r.validEnd){let l=r.fillBefore(x.empty,!0);t.replace(a,a,new w(l,0,0))}for(let l=o.length-1;l>=0;l--)t.step(o[l])}function em(t,e,n){return(e==0||t.canReplace(e,t.childCount))&&(n==t.childCount||t.canReplace(0,n))}function xr(t){let n=t.parent.content.cutByIndex(t.startIndex,t.endIndex);for(let r=t.depth;;--r){let s=t.$from.node(r),i=t.$from.index(r),o=t.$to.indexAfter(r);if(r<t.depth&&s.canReplace(i,o,n))return r;if(r==0||s.type.spec.isolating||!em(s,i,o))break}return null}function tm(t,e,n){let{$from:r,$to:s,depth:i}=e,o=r.before(i+1),a=s.after(i+1),l=o,c=a,u=x.empty,d=0;for(let p=i,m=!1;p>n;p--)m||r.index(p)>0?(m=!0,u=x.from(r.node(p).copy(u)),d++):l--;let h=x.empty,f=0;for(let p=i,m=!1;p>n;p--)m||s.after(p+1)<s.end(p)?(m=!0,h=x.from(s.node(p).copy(h)),f++):c++;t.step(new pe(l,c,o,a,new w(u.append(h),d,f),u.size-d,!0))}function ma(t,e,n=null,r=t){let s=nm(t,e),i=s&&rm(r,e);return i?s.map(El).concat({type:e,attrs:n}).concat(i.map(El)):null}function El(t){return{type:t,attrs:null}}function nm(t,e){let{parent:n,startIndex:r,endIndex:s}=t,i=n.contentMatchAt(r).findWrapping(e);if(!i)return null;let o=i.length?i[0]:e;return n.canReplaceWith(r,s,o)?i:null}function rm(t,e){let{parent:n,startIndex:r,endIndex:s}=t,i=n.child(r),o=e.contentMatch.findWrapping(i.type);if(!o)return null;let l=(o.length?o[o.length-1]:e).contentMatch;for(let c=r;l&&c<s;c++)l=l.matchType(n.child(c).type);return!l||!l.validEnd?null:o}function sm(t,e,n){let r=x.empty;for(let o=n.length-1;o>=0;o--){if(r.size){let a=n[o].type.contentMatch.matchFragment(r);if(!a||!a.validEnd)throw new RangeError("Wrapper type given to Transform.wrap does not form valid content of its parent wrapper")}r=x.from(n[o].type.create(n[o].attrs,r))}let s=e.start,i=e.end;t.step(new pe(s,i,s,i,new w(r,0,0),n.length,!0))}function im(t,e,n,r,s){if(!r.isTextblock)throw new RangeError("Type given to setBlockType should be a textblock");let i=t.steps.length;t.doc.nodesBetween(e,n,(o,a)=>{if(o.isTextblock&&!o.hasMarkup(r,s)&&lm(t.doc,t.mapping.slice(i).map(a),r)){let l=null;if(r.schema.linebreakReplacement){let h=r.whitespace=="pre",f=!!r.contentMatch.matchType(r.schema.linebreakReplacement);h&&!f?l=!1:!h&&f&&(l=!0)}l===!1&&am(t,o,a,i),dd(t,t.mapping.slice(i).map(a,1),r,void 0,l===null);let c=t.mapping.slice(i),u=c.map(a,1),d=c.map(a+o.nodeSize,1);return t.step(new pe(u,d,u+1,d-1,new w(x.from(r.create(s,null,o.marks)),0,0),1,!0)),l===!0&&om(t,o,a,i),!1}})}function om(t,e,n,r){e.forEach((s,i)=>{if(s.isText){let o,a=/\r?\n|\r/g;for(;o=a.exec(s.text);){let l=t.mapping.slice(r).map(n+1+i+o.index);t.replaceWith(l,l+1,e.type.schema.linebreakReplacement.create())}}})}function am(t,e,n,r){e.forEach((s,i)=>{if(s.type==s.type.schema.linebreakReplacement){let o=t.mapping.slice(r).map(n+1+i);t.replaceWith(o,o+1,e.type.schema.text(`
|
|
34
|
+
`))}})}function lm(t,e,n){let r=t.resolve(e),s=r.index();return r.parent.canReplaceWith(s,s+1,n)}function cm(t,e,n,r,s){let i=t.doc.nodeAt(e);if(!i)throw new RangeError("No node at given position");n||(n=i.type);let o=n.create(r,null,s||i.marks);if(i.isLeaf)return t.replaceWith(e,e+i.nodeSize,o);if(!n.validContent(i.content))throw new RangeError("Invalid content for node type "+n.name);t.step(new pe(e,e+i.nodeSize,e+1,e+i.nodeSize-1,new w(x.from(o),0,0),1,!0))}function Zn(t,e,n=1,r){let s=t.resolve(e),i=s.depth-n,o=r&&r[r.length-1]||s.parent;if(i<0||s.parent.type.spec.isolating||!s.parent.canReplace(s.index(),s.parent.childCount)||!o.type.validContent(s.parent.content.cutByIndex(s.index(),s.parent.childCount)))return!1;for(let c=s.depth-1,u=n-2;c>i;c--,u--){let d=s.node(c),h=s.index(c);if(d.type.spec.isolating)return!1;let f=d.content.cutByIndex(h,d.childCount),p=r&&r[u+1];p&&(f=f.replaceChild(0,p.type.create(p.attrs)));let m=r&&r[u]||d;if(!d.canReplace(h+1,d.childCount)||!m.type.validContent(f))return!1}let a=s.indexAfter(i),l=r&&r[0];return s.node(i).canReplaceWith(a,a,l?l.type:s.node(i+1).type)}function um(t,e,n=1,r){let s=t.doc.resolve(e),i=x.empty,o=x.empty;for(let a=s.depth,l=s.depth-n,c=n-1;a>l;a--,c--){i=x.from(s.node(a).copy(i));let u=r&&r[c];o=x.from(u?u.type.create(u.attrs,o):s.node(a).copy(o))}t.step(new Ce(e,e,new w(i.append(o),n,n),!0))}function Cs(t,e){let n=t.resolve(e),r=n.index();return dm(n.nodeBefore,n.nodeAfter)&&n.parent.canReplace(r,r+1)}function dm(t,e){return!!(t&&e&&!t.isLeaf&&t.canAppend(e))}function hm(t,e,n){let r=new Ce(e-n,e+n,w.empty,!0);t.step(r)}function fm(t,e,n){let r=t.resolve(e);if(r.parent.canReplaceWith(r.index(),r.index(),n))return e;if(r.parentOffset==0)for(let s=r.depth-1;s>=0;s--){let i=r.index(s);if(r.node(s).canReplaceWith(i,i,n))return r.before(s+1);if(i>0)return null}if(r.parentOffset==r.parent.content.size)for(let s=r.depth-1;s>=0;s--){let i=r.indexAfter(s);if(r.node(s).canReplaceWith(i,i,n))return r.after(s+1);if(i<r.node(s).childCount)return null}return null}function pm(t,e,n){let r=t.resolve(e);if(!n.content.size)return e;let s=n.content;for(let i=0;i<n.openStart;i++)s=s.firstChild.content;for(let i=1;i<=(n.openStart==0&&n.size?2:1);i++)for(let o=r.depth;o>=0;o--){let a=o==r.depth?0:r.pos<=(r.start(o+1)+r.end(o+1))/2?-1:1,l=r.index(o)+(a>0?1:0),c=r.node(o),u=!1;if(i==1)u=c.canReplace(l,l,s);else{let d=c.contentMatchAt(l).findWrapping(s.firstChild.type);u=d&&c.canReplaceWith(l,l,d[0])}if(u)return a==0?r.pos:a<0?r.before(o+1):r.after(o+1)}return null}function ga(t,e,n=e,r=w.empty){if(e==n&&!r.size)return null;let s=t.resolve(e),i=t.resolve(n);return hd(s,i,r)?new Ce(e,n,r):new mm(s,i,r).fit()}function hd(t,e,n){return!n.openStart&&!n.openEnd&&t.start()==e.start()&&t.parent.canReplace(t.index(),e.index(),n.content)}class mm{constructor(e,n,r){this.$from=e,this.$to=n,this.unplaced=r,this.frontier=[],this.placed=x.empty;for(let s=0;s<=e.depth;s++){let i=e.node(s);this.frontier.push({type:i.type,match:i.contentMatchAt(e.indexAfter(s))})}for(let s=e.depth;s>0;s--)this.placed=x.from(e.node(s).copy(this.placed))}get depth(){return this.frontier.length-1}fit(){for(;this.unplaced.size;){let c=this.findFittable();c?this.placeNodes(c):this.openMore()||this.dropNode()}let e=this.mustMoveInline(),n=this.placed.size-this.depth-this.$from.depth,r=this.$from,s=this.close(e<0?this.$to:r.doc.resolve(e));if(!s)return null;let i=this.placed,o=r.depth,a=s.depth;for(;o&&a&&i.childCount==1;)i=i.firstChild.content,o--,a--;let l=new w(i,o,a);return e>-1?new pe(r.pos,e,this.$to.pos,this.$to.end(),l,n):l.size||r.pos!=this.$to.pos?new Ce(r.pos,s.pos,l):null}findFittable(){let e=this.unplaced.openStart;for(let n=this.unplaced.content,r=0,s=this.unplaced.openEnd;r<e;r++){let i=n.firstChild;if(n.childCount>1&&(s=0),i.type.spec.isolating&&s<=r){e=r;break}n=i.content}for(let n=1;n<=2;n++)for(let r=n==1?e:this.unplaced.openStart;r>=0;r--){let s,i=null;r?(i=ro(this.unplaced.content,r-1).firstChild,s=i.content):s=this.unplaced.content;let o=s.firstChild;for(let a=this.depth;a>=0;a--){let{type:l,match:c}=this.frontier[a],u,d=null;if(n==1&&(o?c.matchType(o.type)||(d=c.fillBefore(x.from(o),!1)):i&&l.compatibleContent(i.type)))return{sliceDepth:r,frontierDepth:a,parent:i,inject:d};if(n==2&&o&&(u=c.findWrapping(o.type)))return{sliceDepth:r,frontierDepth:a,parent:i,wrap:u};if(i&&c.matchType(i.type))break}}}openMore(){let{content:e,openStart:n,openEnd:r}=this.unplaced,s=ro(e,n);return!s.childCount||s.firstChild.isLeaf?!1:(this.unplaced=new w(e,n+1,Math.max(r,s.size+n>=e.size-r?n+1:0)),!0)}dropNode(){let{content:e,openStart:n,openEnd:r}=this.unplaced,s=ro(e,n);if(s.childCount<=1&&n>0){let i=e.size-n<=n+s.size;this.unplaced=new w(Tr(e,n-1,1),n-1,i?n-1:r)}else this.unplaced=new w(Tr(e,n,1),n,r)}placeNodes({sliceDepth:e,frontierDepth:n,parent:r,inject:s,wrap:i}){for(;this.depth>n;)this.closeFrontierNode();if(i)for(let m=0;m<i.length;m++)this.openFrontierNode(i[m]);let o=this.unplaced,a=r?r.content:o.content,l=o.openStart-e,c=0,u=[],{match:d,type:h}=this.frontier[n];if(s){for(let m=0;m<s.childCount;m++)u.push(s.child(m));d=d.matchFragment(s)}let f=a.size+e-(o.content.size-o.openEnd);for(;c<a.childCount;){let m=a.child(c),g=d.matchType(m.type);if(!g)break;c++,(c>1||l==0||m.content.size)&&(d=g,u.push(fd(m.mark(h.allowedMarks(m.marks)),c==1?l:0,c==a.childCount?f:-1)))}let p=c==a.childCount;p||(f=-1),this.placed=Or(this.placed,n,x.from(u)),this.frontier[n].match=d,p&&f<0&&r&&r.type==this.frontier[this.depth].type&&this.frontier.length>1&&this.closeFrontierNode();for(let m=0,g=a;m<f;m++){let y=g.lastChild;this.frontier.push({type:y.type,match:y.contentMatchAt(y.childCount)}),g=y.content}this.unplaced=p?e==0?w.empty:new w(Tr(o.content,e-1,1),e-1,f<0?o.openEnd:e-1):new w(Tr(o.content,e,c),o.openStart,o.openEnd)}mustMoveInline(){if(!this.$to.parent.isTextblock)return-1;let e=this.frontier[this.depth],n;if(!e.type.isTextblock||!so(this.$to,this.$to.depth,e.type,e.match,!1)||this.$to.depth==this.depth&&(n=this.findCloseLevel(this.$to))&&n.depth==this.depth)return-1;let{depth:r}=this.$to,s=this.$to.after(r);for(;r>1&&s==this.$to.end(--r);)++s;return s}findCloseLevel(e){e:for(let n=Math.min(this.depth,e.depth);n>=0;n--){let{match:r,type:s}=this.frontier[n],i=n<e.depth&&e.end(n+1)==e.pos+(e.depth-(n+1)),o=so(e,n,s,r,i);if(o){for(let a=n-1;a>=0;a--){let{match:l,type:c}=this.frontier[a],u=so(e,a,c,l,!0);if(!u||u.childCount)continue e}return{depth:n,fit:o,move:i?e.doc.resolve(e.after(n+1)):e}}}}close(e){let n=this.findCloseLevel(e);if(!n)return null;for(;this.depth>n.depth;)this.closeFrontierNode();n.fit.childCount&&(this.placed=Or(this.placed,n.depth,n.fit)),e=n.move;for(let r=n.depth+1;r<=e.depth;r++){let s=e.node(r),i=s.type.contentMatch.fillBefore(s.content,!0,e.index(r));this.openFrontierNode(s.type,s.attrs,i)}return e}openFrontierNode(e,n=null,r){let s=this.frontier[this.depth];s.match=s.match.matchType(e),this.placed=Or(this.placed,this.depth,x.from(e.create(n,r))),this.frontier.push({type:e,match:e.contentMatch})}closeFrontierNode(){let n=this.frontier.pop().match.fillBefore(x.empty,!0);n.childCount&&(this.placed=Or(this.placed,this.frontier.length,n))}}function Tr(t,e,n){return e==0?t.cutByIndex(n,t.childCount):t.replaceChild(0,t.firstChild.copy(Tr(t.firstChild.content,e-1,n)))}function Or(t,e,n){return e==0?t.append(n):t.replaceChild(t.childCount-1,t.lastChild.copy(Or(t.lastChild.content,e-1,n)))}function ro(t,e){for(let n=0;n<e;n++)t=t.firstChild.content;return t}function fd(t,e,n){if(e<=0)return t;let r=t.content;return e>1&&(r=r.replaceChild(0,fd(r.firstChild,e-1,r.childCount==1?n-1:0))),e>0&&(r=t.type.contentMatch.fillBefore(r).append(r),n<=0&&(r=r.append(t.type.contentMatch.matchFragment(r).fillBefore(x.empty,!0)))),t.copy(r)}function so(t,e,n,r,s){let i=t.node(e),o=s?t.indexAfter(e):t.index(e);if(o==i.childCount&&!n.compatibleContent(i.type))return null;let a=r.fillBefore(i.content,!0,o);return a&&!gm(n,i.content,o)?a:null}function gm(t,e,n){for(let r=n;r<e.childCount;r++)if(!t.allowsMarks(e.child(r).marks))return!0;return!1}function ym(t){return t.spec.defining||t.spec.definingForContent}function xm(t,e,n,r){if(!r.size)return t.deleteRange(e,n);let s=t.doc.resolve(e),i=t.doc.resolve(n);if(hd(s,i,r))return t.step(new Ce(e,n,r));let o=md(s,t.doc.resolve(n));o[o.length-1]==0&&o.pop();let a=-(s.depth+1);o.unshift(a);for(let h=s.depth,f=s.pos-1;h>0;h--,f--){let p=s.node(h).type.spec;if(p.defining||p.definingAsContext||p.isolating)break;o.indexOf(h)>-1?a=h:s.before(h)==f&&o.splice(1,0,-h)}let l=o.indexOf(a),c=[],u=r.openStart;for(let h=r.content,f=0;;f++){let p=h.firstChild;if(c.push(p),f==r.openStart)break;h=p.content}for(let h=u-1;h>=0;h--){let f=c[h],p=ym(f.type);if(p&&!f.sameMarkup(s.node(Math.abs(a)-1)))u=h;else if(p||!f.type.isTextblock)break}for(let h=r.openStart;h>=0;h--){let f=(h+u+1)%(r.openStart+1),p=c[f];if(p)for(let m=0;m<o.length;m++){let g=o[(m+l)%o.length],y=!0;g<0&&(y=!1,g=-g);let k=s.node(g-1),D=s.index(g-1);if(k.canReplaceWith(D,D,p.type,p.marks))return t.replace(s.before(g),y?i.after(g):n,new w(pd(r.content,0,r.openStart,f),f,r.openEnd))}}let d=t.steps.length;for(let h=o.length-1;h>=0&&(t.replace(e,n,r),!(t.steps.length>d));h--){let f=o[h];f<0||(e=s.before(f),n=i.after(f))}}function pd(t,e,n,r,s){if(e<n){let i=t.firstChild;t=t.replaceChild(0,i.copy(pd(i.content,e+1,n,r,i)))}if(e>r){let i=s.contentMatchAt(0),o=i.fillBefore(t).append(t);t=o.append(i.matchFragment(o).fillBefore(x.empty,!0))}return t}function bm(t,e,n,r){if(!r.isInline&&e==n&&t.doc.resolve(e).parent.content.size){let s=fm(t.doc,e,r.type);s!=null&&(e=n=s)}t.replaceRange(e,n,new w(x.from(r),0,0))}function km(t,e,n){let r=t.doc.resolve(e),s=t.doc.resolve(n),i=md(r,s);for(let o=0;o<i.length;o++){let a=i[o],l=o==i.length-1;if(l&&a==0||r.node(a).type.contentMatch.validEnd)return t.delete(r.start(a),s.end(a));if(a>0&&(l||r.node(a-1).canReplace(r.index(a-1),s.indexAfter(a-1))))return t.delete(r.before(a),s.after(a))}for(let o=1;o<=r.depth&&o<=s.depth;o++)if(e-r.start(o)==r.depth-o&&n>r.end(o)&&s.end(o)-n!=s.depth-o)return t.delete(r.before(o),n);t.delete(e,n)}function md(t,e){let n=[],r=Math.min(t.depth,e.depth);for(let s=r;s>=0;s--){let i=t.start(s);if(i<t.pos-(t.depth-s)||e.end(s)>e.pos+(e.depth-s)||t.node(s).type.spec.isolating||e.node(s).type.spec.isolating)break;(i==e.start(s)||s==t.depth&&s==e.depth&&t.parent.inlineContent&&e.parent.inlineContent&&s&&e.start(s-1)==i-1)&&n.push(s)}return n}class Qn extends ge{constructor(e,n,r){super(),this.pos=e,this.attr=n,this.value=r}apply(e){let n=e.nodeAt(this.pos);if(!n)return le.fail("No node at attribute step's position");let r=Object.create(null);for(let i in n.attrs)r[i]=n.attrs[i];r[this.attr]=this.value;let s=n.type.create(r,null,n.marks);return le.fromReplace(e,this.pos,this.pos+1,new w(x.from(s),0,n.isLeaf?0:1))}getMap(){return Ke.empty}invert(e){return new Qn(this.pos,this.attr,e.nodeAt(this.pos).attrs[this.attr])}map(e){let n=e.mapResult(this.pos,1);return n.deletedAfter?null:new Qn(n.pos,this.attr,this.value)}toJSON(){return{stepType:"attr",pos:this.pos,attr:this.attr,value:this.value}}static fromJSON(e,n){if(typeof n.pos!="number"||typeof n.attr!="string")throw new RangeError("Invalid input for AttrStep.fromJSON");return new Qn(n.pos,n.attr,n.value)}}ge.jsonID("attr",Qn);class as extends ge{constructor(e,n){super(),this.attr=e,this.value=n}apply(e){let n=Object.create(null);for(let s in e.attrs)n[s]=e.attrs[s];n[this.attr]=this.value;let r=e.type.create(n,e.content,e.marks);return le.ok(r)}getMap(){return Ke.empty}invert(e){return new as(this.attr,e.attrs[this.attr])}map(e){return this}toJSON(){return{stepType:"docAttr",attr:this.attr,value:this.value}}static fromJSON(e,n){if(typeof n.attr!="string")throw new RangeError("Invalid input for DocAttrStep.fromJSON");return new as(n.attr,n.value)}}ge.jsonID("docAttr",as);let cr=class extends Error{};cr=function t(e){let n=Error.call(this,e);return n.__proto__=t.prototype,n};cr.prototype=Object.create(Error.prototype);cr.prototype.constructor=cr;cr.prototype.name="TransformError";class Sm{constructor(e){this.doc=e,this.steps=[],this.docs=[],this.mapping=new Yn}get before(){return this.docs.length?this.docs[0]:this.doc}step(e){let n=this.maybeStep(e);if(n.failed)throw new cr(n.failed);return this}maybeStep(e){let n=e.apply(this.doc);return n.failed||this.addStep(e,n.doc),n}get docChanged(){return this.steps.length>0}addStep(e,n){this.docs.push(this.doc),this.steps.push(e),this.mapping.appendMap(e.getMap()),this.doc=n}replace(e,n=e,r=w.empty){let s=ga(this.doc,e,n,r);return s&&this.step(s),this}replaceWith(e,n,r){return this.replace(e,n,new w(x.from(r),0,0))}delete(e,n){return this.replace(e,n,w.empty)}insert(e,n){return this.replaceWith(e,e,n)}replaceRange(e,n,r){return xm(this,e,n,r),this}replaceRangeWith(e,n,r){return bm(this,e,n,r),this}deleteRange(e,n){return km(this,e,n),this}lift(e,n){return tm(this,e,n),this}join(e,n=1){return hm(this,e,n),this}wrap(e,n){return sm(this,e,n),this}setBlockType(e,n=e,r,s=null){return im(this,e,n,r,s),this}setNodeMarkup(e,n,r=null,s){return cm(this,e,n,r,s),this}setNodeAttribute(e,n,r){return this.step(new Qn(e,n,r)),this}setDocAttribute(e,n){return this.step(new as(e,n)),this}addNodeMark(e,n){return this.step(new Jt(e,n)),this}removeNodeMark(e,n){if(!(n instanceof U)){let r=this.doc.nodeAt(e);if(!r)throw new RangeError("No node at position "+e);if(n=n.isInSet(r.marks),!n)return this}return this.step(new lr(e,n)),this}split(e,n=1,r){return um(this,e,n,r),this}addMark(e,n,r){return Zp(this,e,n,r),this}removeMark(e,n,r){return Qp(this,e,n,r),this}clearIncompatible(e,n,r){return dd(this,e,n,r),this}}const io=Object.create(null);class V{constructor(e,n,r){this.$anchor=e,this.$head=n,this.ranges=r||[new wm(e.min(n),e.max(n))]}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 e=this.ranges;for(let n=0;n<e.length;n++)if(e[n].$from.pos!=e[n].$to.pos)return!1;return!0}content(){return this.$from.doc.slice(this.from,this.to,!0)}replace(e,n=w.empty){let r=n.content.lastChild,s=null;for(let a=0;a<n.openEnd;a++)s=r,r=r.lastChild;let i=e.steps.length,o=this.ranges;for(let a=0;a<o.length;a++){let{$from:l,$to:c}=o[a],u=e.mapping.slice(i);e.replaceRange(u.map(l.pos),u.map(c.pos),a?w.empty:n),a==0&&Ol(e,i,(r?r.isInline:s&&s.isTextblock)?-1:1)}}replaceWith(e,n){let r=e.steps.length,s=this.ranges;for(let i=0;i<s.length;i++){let{$from:o,$to:a}=s[i],l=e.mapping.slice(r),c=l.map(o.pos),u=l.map(a.pos);i?e.deleteRange(c,u):(e.replaceRangeWith(c,u,n),Ol(e,r,n.isInline?-1:1))}}static findFrom(e,n,r=!1){let s=e.parent.inlineContent?new L(e):jn(e.node(0),e.parent,e.pos,e.index(),n,r);if(s)return s;for(let i=e.depth-1;i>=0;i--){let o=n<0?jn(e.node(0),e.node(i),e.before(i+1),e.index(i),n,r):jn(e.node(0),e.node(i),e.after(i+1),e.index(i)+1,n,r);if(o)return o}return null}static near(e,n=1){return this.findFrom(e,n)||this.findFrom(e,-n)||new Be(e.node(0))}static atStart(e){return jn(e,e,0,0,1)||new Be(e)}static atEnd(e){return jn(e,e,e.content.size,e.childCount,-1)||new Be(e)}static fromJSON(e,n){if(!n||!n.type)throw new RangeError("Invalid input for Selection.fromJSON");let r=io[n.type];if(!r)throw new RangeError(`No selection type ${n.type} defined`);return r.fromJSON(e,n)}static jsonID(e,n){if(e in io)throw new RangeError("Duplicate use of selection JSON ID "+e);return io[e]=n,n.prototype.jsonID=e,n}getBookmark(){return L.between(this.$anchor,this.$head).getBookmark()}}V.prototype.visible=!0;class wm{constructor(e,n){this.$from=e,this.$to=n}}let Cl=!1;function Tl(t){!Cl&&!t.parent.inlineContent&&(Cl=!0,console.warn("TextSelection endpoint not pointing into a node with inline content ("+t.parent.type.name+")"))}class L extends V{constructor(e,n=e){Tl(e),Tl(n),super(e,n)}get $cursor(){return this.$anchor.pos==this.$head.pos?this.$head:null}map(e,n){let r=e.resolve(n.map(this.head));if(!r.parent.inlineContent)return V.near(r);let s=e.resolve(n.map(this.anchor));return new L(s.parent.inlineContent?s:r,r)}replace(e,n=w.empty){if(super.replace(e,n),n==w.empty){let r=this.$from.marksAcross(this.$to);r&&e.ensureMarks(r)}}eq(e){return e instanceof L&&e.anchor==this.anchor&&e.head==this.head}getBookmark(){return new Di(this.anchor,this.head)}toJSON(){return{type:"text",anchor:this.anchor,head:this.head}}static fromJSON(e,n){if(typeof n.anchor!="number"||typeof n.head!="number")throw new RangeError("Invalid input for TextSelection.fromJSON");return new L(e.resolve(n.anchor),e.resolve(n.head))}static create(e,n,r=n){let s=e.resolve(n);return new this(s,r==n?s:e.resolve(r))}static between(e,n,r){let s=e.pos-n.pos;if((!r||s)&&(r=s>=0?1:-1),!n.parent.inlineContent){let i=V.findFrom(n,r,!0)||V.findFrom(n,-r,!0);if(i)n=i.$head;else return V.near(n,r)}return e.parent.inlineContent||(s==0?e=n:(e=(V.findFrom(e,-r,!0)||V.findFrom(e,r,!0)).$anchor,e.pos<n.pos!=s<0&&(e=n))),new L(e,n)}}V.jsonID("text",L);class Di{constructor(e,n){this.anchor=e,this.head=n}map(e){return new Di(e.map(this.anchor),e.map(this.head))}resolve(e){return L.between(e.resolve(this.anchor),e.resolve(this.head))}}class I extends V{constructor(e){let n=e.nodeAfter,r=e.node(0).resolve(e.pos+n.nodeSize);super(e,r),this.node=n}map(e,n){let{deleted:r,pos:s}=n.mapResult(this.anchor),i=e.resolve(s);return r?V.near(i):new I(i)}content(){return new w(x.from(this.node),0,0)}eq(e){return e instanceof I&&e.anchor==this.anchor}toJSON(){return{type:"node",anchor:this.anchor}}getBookmark(){return new ya(this.anchor)}static fromJSON(e,n){if(typeof n.anchor!="number")throw new RangeError("Invalid input for NodeSelection.fromJSON");return new I(e.resolve(n.anchor))}static create(e,n){return new I(e.resolve(n))}static isSelectable(e){return!e.isText&&e.type.spec.selectable!==!1}}I.prototype.visible=!1;V.jsonID("node",I);class ya{constructor(e){this.anchor=e}map(e){let{deleted:n,pos:r}=e.mapResult(this.anchor);return n?new Di(r,r):new ya(r)}resolve(e){let n=e.resolve(this.anchor),r=n.nodeAfter;return r&&I.isSelectable(r)?new I(n):V.near(n)}}class Be extends V{constructor(e){super(e.resolve(0),e.resolve(e.content.size))}replace(e,n=w.empty){if(n==w.empty){e.delete(0,e.doc.content.size);let r=V.atStart(e.doc);r.eq(e.selection)||e.setSelection(r)}else super.replace(e,n)}toJSON(){return{type:"all"}}static fromJSON(e){return new Be(e)}map(e){return new Be(e)}eq(e){return e instanceof Be}getBookmark(){return vm}}V.jsonID("all",Be);const vm={map(){return this},resolve(t){return new Be(t)}};function jn(t,e,n,r,s,i=!1){if(e.inlineContent)return L.create(t,n);for(let o=r-(s>0?0:1);s>0?o<e.childCount:o>=0;o+=s){let a=e.child(o);if(a.isAtom){if(!i&&I.isSelectable(a))return I.create(t,n-(s<0?a.nodeSize:0))}else{let l=jn(t,a,n+s,s<0?a.childCount:0,s,i);if(l)return l}n+=a.nodeSize*s}return null}function Ol(t,e,n){let r=t.steps.length-1;if(r<e)return;let s=t.steps[r];if(!(s instanceof Ce||s instanceof pe))return;let i=t.mapping.maps[r],o;i.forEach((a,l,c,u)=>{o==null&&(o=u)}),t.setSelection(V.near(t.doc.resolve(o),n))}const Ml=1,Ds=2,_l=4;class Em extends Sm{constructor(e){super(e.doc),this.curSelectionFor=0,this.updated=0,this.meta=Object.create(null),this.time=Date.now(),this.curSelection=e.selection,this.storedMarks=e.storedMarks}get selection(){return this.curSelectionFor<this.steps.length&&(this.curSelection=this.curSelection.map(this.doc,this.mapping.slice(this.curSelectionFor)),this.curSelectionFor=this.steps.length),this.curSelection}setSelection(e){if(e.$from.doc!=this.doc)throw new RangeError("Selection passed to setSelection must point at the current document");return this.curSelection=e,this.curSelectionFor=this.steps.length,this.updated=(this.updated|Ml)&~Ds,this.storedMarks=null,this}get selectionSet(){return(this.updated&Ml)>0}setStoredMarks(e){return this.storedMarks=e,this.updated|=Ds,this}ensureMarks(e){return U.sameSet(this.storedMarks||this.selection.$from.marks(),e)||this.setStoredMarks(e),this}addStoredMark(e){return this.ensureMarks(e.addToSet(this.storedMarks||this.selection.$head.marks()))}removeStoredMark(e){return this.ensureMarks(e.removeFromSet(this.storedMarks||this.selection.$head.marks()))}get storedMarksSet(){return(this.updated&Ds)>0}addStep(e,n){super.addStep(e,n),this.updated=this.updated&~Ds,this.storedMarks=null}setTime(e){return this.time=e,this}replaceSelection(e){return this.selection.replace(this,e),this}replaceSelectionWith(e,n=!0){let r=this.selection;return n&&(e=e.mark(this.storedMarks||(r.empty?r.$from.marks():r.$from.marksAcross(r.$to)||U.none))),r.replaceWith(this,e),this}deleteSelection(){return this.selection.replace(this),this}insertText(e,n,r){let s=this.doc.type.schema;if(n==null)return e?this.replaceSelectionWith(s.text(e),!0):this.deleteSelection();{if(r==null&&(r=n),r=r??n,!e)return this.deleteRange(n,r);let i=this.storedMarks;if(!i){let o=this.doc.resolve(n);i=r==n?o.marks():o.marksAcross(this.doc.resolve(r))}return this.replaceRangeWith(n,r,s.text(e,i)),this.selection.empty||this.setSelection(V.near(this.selection.$to)),this}}setMeta(e,n){return this.meta[typeof e=="string"?e:e.key]=n,this}getMeta(e){return this.meta[typeof e=="string"?e:e.key]}get isGeneric(){for(let e in this.meta)return!1;return!0}scrollIntoView(){return this.updated|=_l,this}get scrolledIntoView(){return(this.updated&_l)>0}}function Nl(t,e){return!e||!t?t:t.bind(e)}class Mr{constructor(e,n,r){this.name=e,this.init=Nl(n.init,r),this.apply=Nl(n.apply,r)}}const Cm=[new Mr("doc",{init(t){return t.doc||t.schema.topNodeType.createAndFill()},apply(t){return t.doc}}),new Mr("selection",{init(t,e){return t.selection||V.atStart(e.doc)},apply(t){return t.selection}}),new Mr("storedMarks",{init(t){return t.storedMarks||null},apply(t,e,n,r){return r.selection.$cursor?t.storedMarks:null}}),new Mr("scrollToSelection",{init(){return 0},apply(t,e){return t.scrolledIntoView?e+1:e}})];class oo{constructor(e,n){this.schema=e,this.plugins=[],this.pluginsByKey=Object.create(null),this.fields=Cm.slice(),n&&n.forEach(r=>{if(this.pluginsByKey[r.key])throw new RangeError("Adding different instances of a keyed plugin ("+r.key+")");this.plugins.push(r),this.pluginsByKey[r.key]=r,r.spec.state&&this.fields.push(new Mr(r.key,r.spec.state,r))})}}class kn{constructor(e){this.config=e}get schema(){return this.config.schema}get plugins(){return this.config.plugins}apply(e){return this.applyTransaction(e).state}filterTransaction(e,n=-1){for(let r=0;r<this.config.plugins.length;r++)if(r!=n){let s=this.config.plugins[r];if(s.spec.filterTransaction&&!s.spec.filterTransaction.call(s,e,this))return!1}return!0}applyTransaction(e){if(!this.filterTransaction(e))return{state:this,transactions:[]};let n=[e],r=this.applyInner(e),s=null;for(;;){let i=!1;for(let o=0;o<this.config.plugins.length;o++){let a=this.config.plugins[o];if(a.spec.appendTransaction){let l=s?s[o].n:0,c=s?s[o].state:this,u=l<n.length&&a.spec.appendTransaction.call(a,l?n.slice(l):n,c,r);if(u&&r.filterTransaction(u,o)){if(u.setMeta("appendedTransaction",e),!s){s=[];for(let d=0;d<this.config.plugins.length;d++)s.push(d<o?{state:r,n:n.length}:{state:this,n:0})}n.push(u),r=r.applyInner(u),i=!0}s&&(s[o]={state:r,n:n.length})}}if(!i)return{state:r,transactions:n}}}applyInner(e){if(!e.before.eq(this.doc))throw new RangeError("Applying a mismatched transaction");let n=new kn(this.config),r=this.config.fields;for(let s=0;s<r.length;s++){let i=r[s];n[i.name]=i.apply(e,this[i.name],this,n)}return n}get tr(){return new Em(this)}static create(e){let n=new oo(e.doc?e.doc.type.schema:e.schema,e.plugins),r=new kn(n);for(let s=0;s<n.fields.length;s++)r[n.fields[s].name]=n.fields[s].init(e,r);return r}reconfigure(e){let n=new oo(this.schema,e.plugins),r=n.fields,s=new kn(n);for(let i=0;i<r.length;i++){let o=r[i].name;s[o]=this.hasOwnProperty(o)?this[o]:r[i].init(e,s)}return s}toJSON(e){let n={doc:this.doc.toJSON(),selection:this.selection.toJSON()};if(this.storedMarks&&(n.storedMarks=this.storedMarks.map(r=>r.toJSON())),e&&typeof e=="object")for(let r in e){if(r=="doc"||r=="selection")throw new RangeError("The JSON fields `doc` and `selection` are reserved");let s=e[r],i=s.spec.state;i&&i.toJSON&&(n[r]=i.toJSON.call(s,this[s.key]))}return n}static fromJSON(e,n,r){if(!n)throw new RangeError("Invalid input for EditorState.fromJSON");if(!e.schema)throw new RangeError("Required config field 'schema' missing");let s=new oo(e.schema,e.plugins),i=new kn(s);return s.fields.forEach(o=>{if(o.name=="doc")i.doc=Xt.fromJSON(e.schema,n.doc);else if(o.name=="selection")i.selection=V.fromJSON(i.doc,n.selection);else if(o.name=="storedMarks")n.storedMarks&&(i.storedMarks=n.storedMarks.map(e.schema.markFromJSON));else{if(r)for(let a in r){let l=r[a],c=l.spec.state;if(l.key==o.name&&c&&c.fromJSON&&Object.prototype.hasOwnProperty.call(n,a)){i[o.name]=c.fromJSON.call(l,e,n[a],i);return}}i[o.name]=o.init(e,i)}}),i}}function gd(t,e,n){for(let r in t){let s=t[r];s instanceof Function?s=s.bind(e):r=="handleDOMEvents"&&(s=gd(s,e,{})),n[r]=s}return n}class dn{constructor(e){this.spec=e,this.props={},e.props&&gd(e.props,this,this.props),this.key=e.key?e.key.key:yd("plugin")}getState(e){return e[this.key]}}const ao=Object.create(null);function yd(t){return t in ao?t+"$"+ ++ao[t]:(ao[t]=0,t+"$")}class br{constructor(e="key"){this.key=yd(e)}get(e){return e.config.pluginsByKey[this.key]}getState(e){return e[this.key]}}function xd(){return typeof document<"u"?document:null}function bd(t,e){if(typeof t!="string")return[t];var n=[t];typeof e=="string"||Array.isArray(e)?e={brackets:e}:e||(e={});var r=e.brackets?Array.isArray(e.brackets)?e.brackets:[e.brackets]:["{}","[]","()"],s=e.escape||"___",i=!!e.flat;r.forEach(function(l){var c=new RegExp(["\\",l[0],"[^\\",l[0],"\\",l[1],"]*\\",l[1]].join("")),u=[];function d(h,f,p){var m=n.push(h.slice(l[0].length,-l[1].length))-1;return u.push(m),s+m+s}n.forEach(function(h,f){for(var p,m=0;h!=p;)if(p=h,h=h.replace(c,d),m++>1e4)throw Error("References have circular dependency. Please, check them.");n[f]=h}),u=u.reverse(),n=n.map(function(h){return u.forEach(function(f){h=h.replace(new RegExp("(\\"+s+f+"\\"+s+")","g"),l[0]+"$1"+l[1])}),h})});var o=new RegExp("\\"+s+"([0-9]+)\\"+s);function a(l,c,u){for(var d=[],h,f=0;h=o.exec(l);){if(f++>1e4)throw Error("Circular references in parenthesis");d.push(l.slice(0,h.index)),d.push(a(c[h[1]],c)),l=l.slice(h.index+h[0].length)}return d.push(l),d}return i?n:a(n[0],n)}function kd(t,e){if(e&&e.flat){var n=e&&e.escape||"___",r=t[0],s;if(!r)return"";for(var i=new RegExp("\\"+n+"([0-9]+)\\"+n),o=0;r!=s;){if(o++>1e4)throw Error("Circular references in "+t);s=r,r=r.replace(i,a)}return r}return t.reduce(function l(c,u){return Array.isArray(u)&&(u=u.reduce(l,"")),c+u},"");function a(l,c){if(t[c]==null)throw Error("Reference "+c+"is undefined");return t[c]}}function Sd(t,e){return Array.isArray(t)?kd(t,e):bd(t,e)}Sd.parse=bd;Sd.stringify=kd;const Tm={id:"extension.command.copy.label",message:"Copy",comment:"Label for copy command."},Om={id:"extension.command.copy.description",message:"Copy the selected text",comment:"Description for copy command."},Mm={id:"extension.command.cut.label",message:"Cut",comment:"Label for cut command."},_m={id:"extension.command.cut.description",message:"Cut the selected text",comment:"Description for cut command."},Nm={id:"extension.command.paste.label",message:"Paste",comment:"Label for paste command."},Am={id:"extension.command.paste.description",message:"Paste content into the editor",comment:"Description for paste command."},Rm={id:"extension.command.select-all.label",message:"Select all",comment:"Label for select all command."},Im={id:"extension.command.select-all.description",message:"Select all content within the editor",comment:"Description for select all command."};var rn=Object.freeze({__proto__:null,COPY_DESCRIPTION:Om,COPY_LABEL:Tm,CUT_DESCRIPTION:_m,CUT_LABEL:Mm,PASTE_DESCRIPTION:Am,PASTE_LABEL:Nm,SELECT_ALL_DESCRIPTION:Im,SELECT_ALL_LABEL:Rm});const Dm={id:"extension.command.toggle-bold.label",message:"Bold",comment:"Label for bold formatting command."},Pm={id:"extension.command.toggle-bold.description",message:"Add bold formatting to the selected text",comment:"Description for bold formatting command."};var Al=Object.freeze({__proto__:null,DESCRIPTION:Pm,LABEL:Dm});const Lm={id:"extension.command.toggle-code.label",message:"Code",comment:"Label for the inline code formatting."},Bm={id:"extension.command.toggle-code.description",message:"Add inline code formatting to the selected text",comment:"Description for the inline code formatting command."};var zm=Object.freeze({__proto__:null,DESCRIPTION:Bm,LABEL:Lm});const $m={id:"extension.command.undo.label",message:"Undo",comment:"Label for undo."},Fm={id:"extension.command.undo.description",message:"Undo the most recent action",comment:"Description for undo."},Vm={id:"extension.command.redo.label",message:"Redo",comment:"Label for redo."},Hm={id:"extension.command.redo.description",message:"Redo the most recent action",comment:"Description for redo."};var di=Object.freeze({__proto__:null,REDO_DESCRIPTION:Hm,REDO_LABEL:Vm,UNDO_DESCRIPTION:Fm,UNDO_LABEL:$m});const Um={id:"extension.command.toggle-italic.label",message:"Italic",comment:"Label for italic formatting command."},jm={id:"extension.command.toggle-italic.description",message:"Italicize the selected text",comment:"Description for italic formatting command."};var Rl=Object.freeze({__proto__:null,DESCRIPTION:jm,LABEL:Um});const Wm={id:"extension.command.toggle-ordered-list.label",message:"Ordered list",comment:"Label for inserting an ordered list into the editor."},Km={id:"extension.command.toggle-bullet-list.description",message:"Bulleted list",comment:"Description for inserting a bullet list into the editor."},qm={id:"extension.command.toggle-task-list.description",message:"Tasked list",comment:"Description for inserting a task list into the editor."};var xa=Object.freeze({__proto__:null,BULLET_LIST_LABEL:Km,ORDERED_LIST_LABEL:Wm,TASK_LIST_LABEL:qm});const Jm={id:"extension.command.insert-paragraph.label",message:"Insert Paragraph",comment:"Label for inserting a paragraph."},Gm={id:"extension.command.insert-paragraph.description",message:"Insert a new paragraph",comment:"Description for inserting a paragraph."},Xm={id:"extension.command.convert-paragraph.label",message:"Convert Paragraph",comment:"Label for converting the current node into a paragraph."},Ym={id:"extension.command.convert-paragraph.description",message:"Convert current block into a paragraph block.",comment:"Description for converting a paragraph."};var hi=Object.freeze({__proto__:null,CONVERT_DESCRIPTION:Ym,CONVERT_LABEL:Xm,INSERT_DESCRIPTION:Gm,INSERT_LABEL:Jm});class dt{constructor(e,n,r={}){this.match=e,this.match=e,this.handler=typeof n=="string"?Zm(n):n,this.undoable=r.undoable!==!1,this.inCode=r.inCode||!1}}function Zm(t){return function(e,n,r,s){let i=t;if(n[1]){let o=n[0].lastIndexOf(n[1]);i+=n[0].slice(o+n[1].length),r+=o;let a=r-s;a>0&&(i=n[0].slice(o-a,o)+i,r=s)}return e.tr.insertText(i,r,s)}}const Qm=500;function eg({rules:t}){let e=new dn({state:{init(){return null},apply(n,r){let s=n.getMeta(this);return s||(n.selectionSet||n.docChanged?null:r)}},props:{handleTextInput(n,r,s,i){return Il(n,r,s,i,t,e)},handleDOMEvents:{compositionend:n=>{setTimeout(()=>{let{$cursor:r}=n.state.selection;r&&Il(n,r.pos,r.pos,"",t,e)})}}},isInputRules:!0});return e}function Il(t,e,n,r,s,i){if(t.composing)return!1;let o=t.state,a=o.doc.resolve(e),l=a.parent.textBetween(Math.max(0,a.parentOffset-Qm),a.parentOffset,null,"")+r;for(let c=0;c<s.length;c++){let u=s[c];if(a.parent.type.spec.code){if(!u.inCode)continue}else if(u.inCode==="only")continue;let d=u.match.exec(l),h=d&&u.handler(o,d,e-(d[0].length-r.length),n);if(h)return u.undoable&&h.setMeta(i,{transform:h,from:e,to:n,text:r}),t.dispatch(h),!0}return!1}const tg=(t,e)=>{let n=t.plugins;for(let r=0;r<n.length;r++){let s=n[r],i;if(s.spec.isInputRules&&(i=s.getState(t))){if(e){let o=t.tr,a=i.transform;for(let l=a.steps.length-1;l>=0;l--)o.step(a.steps[l].invert(a.docs[l]));if(i.text){let l=o.doc.resolve(i.from).marks();o.replaceWith(i.from,i.to,t.schema.text(i.text,l))}else o.delete(i.from,i.to);e(o)}return!0}}return!1};new dt(/--$/,"—");new dt(/\.\.\.$/,"…");new dt(/(?:^|[\s\{\[\(\<'"\u2018\u201C])(")$/,"“");new dt(/"$/,"”");new dt(/(?:^|[\s\{\[\(\<'"\u2018\u201C])(')$/,"‘");new dt(/'$/,"’");function ba(t,e,n=null,r){return new dt(t,(s,i,o,a)=>{let l=n instanceof Function?n(i):n,c=s.tr.delete(o,a),u=c.doc.resolve(o),d=u.blockRange(),h=d&&ma(d,e,l);if(!h)return null;c.wrap(d,h);let f=c.doc.resolve(o-1).nodeBefore;return f&&f.type==e&&Cs(c.doc,o-1)&&(!r||r(i,f))&&c.join(o-1),c})}const Se=function(t){for(var e=0;;e++)if(t=t.previousSibling,!t)return e},ls=function(t){let e=t.assignedSlot||t.parentNode;return e&&e.nodeType==11?e.host:e};let Ro=null;const Ct=function(t,e,n){let r=Ro||(Ro=document.createRange());return r.setEnd(t,n??t.nodeValue.length),r.setStart(t,e||0),r},ng=function(){Ro=null},Rn=function(t,e,n,r){return n&&(Dl(t,e,n,r,-1)||Dl(t,e,n,r,1))},rg=/^(img|br|input|textarea|hr)$/i;function Dl(t,e,n,r,s){for(;;){if(t==n&&e==r)return!0;if(e==(s<0?0:mt(t))){let i=t.parentNode;if(!i||i.nodeType!=1||Ts(t)||rg.test(t.nodeName)||t.contentEditable=="false")return!1;e=Se(t)+(s<0?0:1),t=i}else if(t.nodeType==1){if(t=t.childNodes[e+(s<0?-1:0)],t.contentEditable=="false")return!1;e=s<0?mt(t):0}else return!1}}function mt(t){return t.nodeType==3?t.nodeValue.length:t.childNodes.length}function sg(t,e){for(;;){if(t.nodeType==3&&e)return t;if(t.nodeType==1&&e>0){if(t.contentEditable=="false")return null;t=t.childNodes[e-1],e=mt(t)}else if(t.parentNode&&!Ts(t))e=Se(t),t=t.parentNode;else return null}}function ig(t,e){for(;;){if(t.nodeType==3&&e<t.nodeValue.length)return t;if(t.nodeType==1&&e<t.childNodes.length){if(t.contentEditable=="false")return null;t=t.childNodes[e],e=0}else if(t.parentNode&&!Ts(t))e=Se(t)+1,t=t.parentNode;else return null}}function og(t,e,n){for(let r=e==0,s=e==mt(t);r||s;){if(t==n)return!0;let i=Se(t);if(t=t.parentNode,!t)return!1;r=r&&i==0,s=s&&i==mt(t)}}function Ts(t){let e;for(let n=t;n&&!(e=n.pmViewDesc);n=n.parentNode);return e&&e.node&&e.node.isBlock&&(e.dom==t||e.contentDOM==t)}const Pi=function(t){return t.focusNode&&Rn(t.focusNode,t.focusOffset,t.anchorNode,t.anchorOffset)};function xn(t,e){let n=document.createEvent("Event");return n.initEvent("keydown",!0,!0),n.keyCode=t,n.key=n.code=e,n}function ag(t){let e=t.activeElement;for(;e&&e.shadowRoot;)e=e.shadowRoot.activeElement;return e}function lg(t,e,n){if(t.caretPositionFromPoint)try{let r=t.caretPositionFromPoint(e,n);if(r)return{node:r.offsetNode,offset:r.offset}}catch{}if(t.caretRangeFromPoint){let r=t.caretRangeFromPoint(e,n);if(r)return{node:r.startContainer,offset:r.startOffset}}}const xt=typeof navigator<"u"?navigator:null,Pl=typeof document<"u"?document:null,hn=xt&&xt.userAgent||"",Io=/Edge\/(\d+)/.exec(hn),wd=/MSIE \d/.exec(hn),Do=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(hn),ze=!!(wd||Do||Io),Yt=wd?document.documentMode:Do?+Do[1]:Io?+Io[1]:0,lt=!ze&&/gecko\/(\d+)/i.test(hn);lt&&+(/Firefox\/(\d+)/.exec(hn)||[0,0])[1];const Po=!ze&&/Chrome\/(\d+)/.exec(hn),Te=!!Po,vd=Po?+Po[1]:0,Ae=!ze&&!!xt&&/Apple Computer/.test(xt.vendor),ur=Ae&&(/Mobile\/\w+/.test(hn)||!!xt&&xt.maxTouchPoints>2),qe=ur||(xt?/Mac/.test(xt.platform):!1),cg=xt?/Win/.test(xt.platform):!1,rt=/Android \d/.test(hn),Os=!!Pl&&"webkitFontSmoothing"in Pl.documentElement.style,ug=Os?+(/\bAppleWebKit\/(\d+)/.exec(navigator.userAgent)||[0,0])[1]:0;function dg(t){let e=t.defaultView&&t.defaultView.visualViewport;return e?{left:0,right:e.width,top:0,bottom:e.height}:{left:0,right:t.documentElement.clientWidth,top:0,bottom:t.documentElement.clientHeight}}function St(t,e){return typeof t=="number"?t:t[e]}function hg(t){let e=t.getBoundingClientRect(),n=e.width/t.offsetWidth||1,r=e.height/t.offsetHeight||1;return{left:e.left,right:e.left+t.clientWidth*n,top:e.top,bottom:e.top+t.clientHeight*r}}function Ll(t,e,n){let r=t.someProp("scrollThreshold")||0,s=t.someProp("scrollMargin")||5,i=t.dom.ownerDocument;for(let o=n||t.dom;o;o=ls(o)){if(o.nodeType!=1)continue;let a=o,l=a==i.body,c=l?dg(i):hg(a),u=0,d=0;if(e.top<c.top+St(r,"top")?d=-(c.top-e.top+St(s,"top")):e.bottom>c.bottom-St(r,"bottom")&&(d=e.bottom-e.top>c.bottom-c.top?e.top+St(s,"top")-c.top:e.bottom-c.bottom+St(s,"bottom")),e.left<c.left+St(r,"left")?u=-(c.left-e.left+St(s,"left")):e.right>c.right-St(r,"right")&&(u=e.right-c.right+St(s,"right")),u||d)if(l)i.defaultView.scrollBy(u,d);else{let h=a.scrollLeft,f=a.scrollTop;d&&(a.scrollTop+=d),u&&(a.scrollLeft+=u);let p=a.scrollLeft-h,m=a.scrollTop-f;e={left:e.left-p,top:e.top-m,right:e.right-p,bottom:e.bottom-m}}if(l||/^(fixed|sticky)$/.test(getComputedStyle(o).position))break}}function fg(t){let e=t.dom.getBoundingClientRect(),n=Math.max(0,e.top),r,s;for(let i=(e.left+e.right)/2,o=n+1;o<Math.min(innerHeight,e.bottom);o+=5){let a=t.root.elementFromPoint(i,o);if(!a||a==t.dom||!t.dom.contains(a))continue;let l=a.getBoundingClientRect();if(l.top>=n-20){r=a,s=l.top;break}}return{refDOM:r,refTop:s,stack:Ed(t.dom)}}function Ed(t){let e=[],n=t.ownerDocument;for(let r=t;r&&(e.push({dom:r,top:r.scrollTop,left:r.scrollLeft}),t!=n);r=ls(r));return e}function pg({refDOM:t,refTop:e,stack:n}){let r=t?t.getBoundingClientRect().top:0;Cd(n,r==0?0:r-e)}function Cd(t,e){for(let n=0;n<t.length;n++){let{dom:r,top:s,left:i}=t[n];r.scrollTop!=s+e&&(r.scrollTop=s+e),r.scrollLeft!=i&&(r.scrollLeft=i)}}let Fn=null;function mg(t){if(t.setActive)return t.setActive();if(Fn)return t.focus(Fn);let e=Ed(t);t.focus(Fn==null?{get preventScroll(){return Fn={preventScroll:!0},!0}}:void 0),Fn||(Fn=!1,Cd(e,0))}function Td(t,e){let n,r=2e8,s,i=0,o=e.top,a=e.top,l,c;for(let u=t.firstChild,d=0;u;u=u.nextSibling,d++){let h;if(u.nodeType==1)h=u.getClientRects();else if(u.nodeType==3)h=Ct(u).getClientRects();else continue;for(let f=0;f<h.length;f++){let p=h[f];if(p.top<=o&&p.bottom>=a){o=Math.max(p.bottom,o),a=Math.min(p.top,a);let m=p.left>e.left?p.left-e.left:p.right<e.left?e.left-p.right:0;if(m<r){n=u,r=m,s=m&&n.nodeType==3?{left:p.right<e.left?p.right:p.left,top:e.top}:e,u.nodeType==1&&m&&(i=d+(e.left>=(p.left+p.right)/2?1:0));continue}}else p.top>e.top&&!l&&p.left<=e.left&&p.right>=e.left&&(l=u,c={left:Math.max(p.left,Math.min(p.right,e.left)),top:p.top});!n&&(e.left>=p.right&&e.top>=p.top||e.left>=p.left&&e.top>=p.bottom)&&(i=d+1)}}return!n&&l&&(n=l,s=c,r=0),n&&n.nodeType==3?gg(n,s):!n||r&&n.nodeType==1?{node:t,offset:i}:Td(n,s)}function gg(t,e){let n=t.nodeValue.length,r=document.createRange();for(let s=0;s<n;s++){r.setEnd(t,s+1),r.setStart(t,s);let i=Ft(r,1);if(i.top!=i.bottom&&ka(e,i))return{node:t,offset:s+(e.left>=(i.left+i.right)/2?1:0)}}return{node:t,offset:0}}function ka(t,e){return t.left>=e.left-1&&t.left<=e.right+1&&t.top>=e.top-1&&t.top<=e.bottom+1}function yg(t,e){let n=t.parentNode;return n&&/^li$/i.test(n.nodeName)&&e.left<t.getBoundingClientRect().left?n:t}function xg(t,e,n){let{node:r,offset:s}=Td(e,n),i=-1;if(r.nodeType==1&&!r.firstChild){let o=r.getBoundingClientRect();i=o.left!=o.right&&n.left>(o.left+o.right)/2?1:-1}return t.docView.posFromDOM(r,s,i)}function bg(t,e,n,r){let s=-1;for(let i=e,o=!1;i!=t.dom;){let a=t.docView.nearestDesc(i,!0);if(!a)return null;if(a.dom.nodeType==1&&(a.node.isBlock&&a.parent||!a.contentDOM)){let l=a.dom.getBoundingClientRect();if(a.node.isBlock&&a.parent&&(!o&&l.left>r.left||l.top>r.top?s=a.posBefore:(!o&&l.right<r.left||l.bottom<r.top)&&(s=a.posAfter),o=!0),!a.contentDOM&&s<0&&!a.node.isText)return(a.node.isBlock?r.top<(l.top+l.bottom)/2:r.left<(l.left+l.right)/2)?a.posBefore:a.posAfter}i=a.dom.parentNode}return s>-1?s:t.docView.posFromDOM(e,n,-1)}function Od(t,e,n){let r=t.childNodes.length;if(r&&n.top<n.bottom)for(let s=Math.max(0,Math.min(r-1,Math.floor(r*(e.top-n.top)/(n.bottom-n.top))-2)),i=s;;){let o=t.childNodes[i];if(o.nodeType==1){let a=o.getClientRects();for(let l=0;l<a.length;l++){let c=a[l];if(ka(e,c))return Od(o,e,c)}}if((i=(i+1)%r)==s)break}return t}function kg(t,e){let n=t.dom.ownerDocument,r,s=0,i=lg(n,e.left,e.top);i&&({node:r,offset:s}=i);let o=(t.root.elementFromPoint?t.root:n).elementFromPoint(e.left,e.top),a;if(!o||!t.dom.contains(o.nodeType!=1?o.parentNode:o)){let c=t.dom.getBoundingClientRect();if(!ka(e,c)||(o=Od(t.dom,e,c),!o))return null}if(Ae)for(let c=o;r&&c;c=ls(c))c.draggable&&(r=void 0);if(o=yg(o,e),r){if(lt&&r.nodeType==1&&(s=Math.min(s,r.childNodes.length),s<r.childNodes.length)){let u=r.childNodes[s],d;u.nodeName=="IMG"&&(d=u.getBoundingClientRect()).right<=e.left&&d.bottom>e.top&&s++}let c;Os&&s&&r.nodeType==1&&(c=r.childNodes[s-1]).nodeType==1&&c.contentEditable=="false"&&c.getBoundingClientRect().top>=e.top&&s--,r==t.dom&&s==r.childNodes.length-1&&r.lastChild.nodeType==1&&e.top>r.lastChild.getBoundingClientRect().bottom?a=t.state.doc.content.size:(s==0||r.nodeType!=1||r.childNodes[s-1].nodeName!="BR")&&(a=bg(t,r,s,e))}a==null&&(a=xg(t,o,e));let l=t.docView.nearestDesc(o,!0);return{pos:a,inside:l?l.posAtStart-l.border:-1}}function Bl(t){return t.top<t.bottom||t.left<t.right}function Ft(t,e){let n=t.getClientRects();if(n.length){let r=n[e<0?0:n.length-1];if(Bl(r))return r}return Array.prototype.find.call(n,Bl)||t.getBoundingClientRect()}const Sg=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/;function Md(t,e,n){let{node:r,offset:s,atom:i}=t.docView.domFromPos(e,n<0?-1:1),o=Os||lt;if(r.nodeType==3)if(o&&(Sg.test(r.nodeValue)||(n<0?!s:s==r.nodeValue.length))){let l=Ft(Ct(r,s,s),n);if(lt&&s&&/\s/.test(r.nodeValue[s-1])&&s<r.nodeValue.length){let c=Ft(Ct(r,s-1,s-1),-1);if(c.top==l.top){let u=Ft(Ct(r,s,s+1),-1);if(u.top!=l.top)return Er(u,u.left<c.left)}}return l}else{let l=s,c=s,u=n<0?1:-1;return n<0&&!s?(c++,u=-1):n>=0&&s==r.nodeValue.length?(l--,u=1):n<0?l--:c++,Er(Ft(Ct(r,l,c),u),u<0)}if(!t.state.doc.resolve(e-(i||0)).parent.inlineContent){if(i==null&&s&&(n<0||s==mt(r))){let l=r.childNodes[s-1];if(l.nodeType==1)return lo(l.getBoundingClientRect(),!1)}if(i==null&&s<mt(r)){let l=r.childNodes[s];if(l.nodeType==1)return lo(l.getBoundingClientRect(),!0)}return lo(r.getBoundingClientRect(),n>=0)}if(i==null&&s&&(n<0||s==mt(r))){let l=r.childNodes[s-1],c=l.nodeType==3?Ct(l,mt(l)-(o?0:1)):l.nodeType==1&&(l.nodeName!="BR"||!l.nextSibling)?l:null;if(c)return Er(Ft(c,1),!1)}if(i==null&&s<mt(r)){let l=r.childNodes[s];for(;l.pmViewDesc&&l.pmViewDesc.ignoreForCoords;)l=l.nextSibling;let c=l?l.nodeType==3?Ct(l,0,o?0:1):l.nodeType==1?l:null:null;if(c)return Er(Ft(c,-1),!0)}return Er(Ft(r.nodeType==3?Ct(r):r,-n),n>=0)}function Er(t,e){if(t.width==0)return t;let n=e?t.left:t.right;return{top:t.top,bottom:t.bottom,left:n,right:n}}function lo(t,e){if(t.height==0)return t;let n=e?t.top:t.bottom;return{top:n,bottom:n,left:t.left,right:t.right}}function _d(t,e,n){let r=t.state,s=t.root.activeElement;r!=e&&t.updateState(e),s!=t.dom&&t.focus();try{return n()}finally{r!=e&&t.updateState(r),s!=t.dom&&s&&s.focus()}}function wg(t,e,n){let r=e.selection,s=n=="up"?r.$from:r.$to;return _d(t,e,()=>{let{node:i}=t.docView.domFromPos(s.pos,n=="up"?-1:1);for(;;){let a=t.docView.nearestDesc(i,!0);if(!a)break;if(a.node.isBlock){i=a.contentDOM||a.dom;break}i=a.dom.parentNode}let o=Md(t,s.pos,1);for(let a=i.firstChild;a;a=a.nextSibling){let l;if(a.nodeType==1)l=a.getClientRects();else if(a.nodeType==3)l=Ct(a,0,a.nodeValue.length).getClientRects();else continue;for(let c=0;c<l.length;c++){let u=l[c];if(u.bottom>u.top+1&&(n=="up"?o.top-u.top>(u.bottom-o.top)*2:u.bottom-o.bottom>(o.bottom-u.top)*2))return!1}}return!0})}const vg=/[\u0590-\u08ac]/;function Eg(t,e,n){let{$head:r}=e.selection;if(!r.parent.isTextblock)return!1;let s=r.parentOffset,i=!s,o=s==r.parent.content.size,a=t.domSelection();return!vg.test(r.parent.textContent)||!a.modify?n=="left"||n=="backward"?i:o:_d(t,e,()=>{let{focusNode:l,focusOffset:c,anchorNode:u,anchorOffset:d}=t.domSelectionRange(),h=a.caretBidiLevel;a.modify("move",n,"character");let f=r.depth?t.docView.domAfterPos(r.before()):t.dom,{focusNode:p,focusOffset:m}=t.domSelectionRange(),g=p&&!f.contains(p.nodeType==1?p:p.parentNode)||l==p&&c==m;try{a.collapse(u,d),l&&(l!=u||c!=d)&&a.extend&&a.extend(l,c)}catch{}return h!=null&&(a.caretBidiLevel=h),g})}let zl=null,$l=null,Fl=!1;function Cg(t,e,n){return zl==e&&$l==n?Fl:(zl=e,$l=n,Fl=n=="up"||n=="down"?wg(t,e,n):Eg(t,e,n))}const Je=0,Vl=1,Sn=2,bt=3;class Ms{constructor(e,n,r,s){this.parent=e,this.children=n,this.dom=r,this.contentDOM=s,this.dirty=Je,r.pmViewDesc=this}matchesWidget(e){return!1}matchesMark(e){return!1}matchesNode(e,n,r){return!1}matchesHack(e){return!1}parseRule(){return null}stopEvent(e){return!1}get size(){let e=0;for(let n=0;n<this.children.length;n++)e+=this.children[n].size;return e}get border(){return 0}destroy(){this.parent=void 0,this.dom.pmViewDesc==this&&(this.dom.pmViewDesc=void 0);for(let e=0;e<this.children.length;e++)this.children[e].destroy()}posBeforeChild(e){for(let n=0,r=this.posAtStart;;n++){let s=this.children[n];if(s==e)return r;r+=s.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(e,n,r){if(this.contentDOM&&this.contentDOM.contains(e.nodeType==1?e:e.parentNode))if(r<0){let i,o;if(e==this.contentDOM)i=e.childNodes[n-1];else{for(;e.parentNode!=this.contentDOM;)e=e.parentNode;i=e.previousSibling}for(;i&&!((o=i.pmViewDesc)&&o.parent==this);)i=i.previousSibling;return i?this.posBeforeChild(o)+o.size:this.posAtStart}else{let i,o;if(e==this.contentDOM)i=e.childNodes[n];else{for(;e.parentNode!=this.contentDOM;)e=e.parentNode;i=e.nextSibling}for(;i&&!((o=i.pmViewDesc)&&o.parent==this);)i=i.nextSibling;return i?this.posBeforeChild(o):this.posAtEnd}let s;if(e==this.dom&&this.contentDOM)s=n>Se(this.contentDOM);else if(this.contentDOM&&this.contentDOM!=this.dom&&this.dom.contains(this.contentDOM))s=e.compareDocumentPosition(this.contentDOM)&2;else if(this.dom.firstChild){if(n==0)for(let i=e;;i=i.parentNode){if(i==this.dom){s=!1;break}if(i.previousSibling)break}if(s==null&&n==e.childNodes.length)for(let i=e;;i=i.parentNode){if(i==this.dom){s=!0;break}if(i.nextSibling)break}}return s??r>0?this.posAtEnd:this.posAtStart}nearestDesc(e,n=!1){for(let r=!0,s=e;s;s=s.parentNode){let i=this.getDesc(s),o;if(i&&(!n||i.node))if(r&&(o=i.nodeDOM)&&!(o.nodeType==1?o.contains(e.nodeType==1?e:e.parentNode):o==e))r=!1;else return i}}getDesc(e){let n=e.pmViewDesc;for(let r=n;r;r=r.parent)if(r==this)return n}posFromDOM(e,n,r){for(let s=e;s;s=s.parentNode){let i=this.getDesc(s);if(i)return i.localPosFromDOM(e,n,r)}return-1}descAt(e){for(let n=0,r=0;n<this.children.length;n++){let s=this.children[n],i=r+s.size;if(r==e&&i!=r){for(;!s.border&&s.children.length;)s=s.children[0];return s}if(e<i)return s.descAt(e-r-s.border);r=i}}domFromPos(e,n){if(!this.contentDOM)return{node:this.dom,offset:0,atom:e+1};let r=0,s=0;for(let i=0;r<this.children.length;r++){let o=this.children[r],a=i+o.size;if(a>e||o instanceof Ad){s=e-i;break}i=a}if(s)return this.children[r].domFromPos(s-this.children[r].border,n);for(let i;r&&!(i=this.children[r-1]).size&&i instanceof Nd&&i.side>=0;r--);if(n<=0){let i,o=!0;for(;i=r?this.children[r-1]:null,!(!i||i.dom.parentNode==this.contentDOM);r--,o=!1);return i&&n&&o&&!i.border&&!i.domAtom?i.domFromPos(i.size,n):{node:this.contentDOM,offset:i?Se(i.dom)+1:0}}else{let i,o=!0;for(;i=r<this.children.length?this.children[r]:null,!(!i||i.dom.parentNode==this.contentDOM);r++,o=!1);return i&&o&&!i.border&&!i.domAtom?i.domFromPos(0,n):{node:this.contentDOM,offset:i?Se(i.dom):this.contentDOM.childNodes.length}}}parseRange(e,n,r=0){if(this.children.length==0)return{node:this.contentDOM,from:e,to:n,fromOffset:0,toOffset:this.contentDOM.childNodes.length};let s=-1,i=-1;for(let o=r,a=0;;a++){let l=this.children[a],c=o+l.size;if(s==-1&&e<=c){let u=o+l.border;if(e>=u&&n<=c-l.border&&l.node&&l.contentDOM&&this.contentDOM.contains(l.contentDOM))return l.parseRange(e,n,u);e=o;for(let d=a;d>0;d--){let h=this.children[d-1];if(h.size&&h.dom.parentNode==this.contentDOM&&!h.emptyChildAt(1)){s=Se(h.dom)+1;break}e-=h.size}s==-1&&(s=0)}if(s>-1&&(c>n||a==this.children.length-1)){n=c;for(let u=a+1;u<this.children.length;u++){let d=this.children[u];if(d.size&&d.dom.parentNode==this.contentDOM&&!d.emptyChildAt(-1)){i=Se(d.dom);break}n+=d.size}i==-1&&(i=this.contentDOM.childNodes.length);break}o=c}return{node:this.contentDOM,from:e,to:n,fromOffset:s,toOffset:i}}emptyChildAt(e){if(this.border||!this.contentDOM||!this.children.length)return!1;let n=this.children[e<0?0:this.children.length-1];return n.size==0||n.emptyChildAt(e)}domAfterPos(e){let{node:n,offset:r}=this.domFromPos(e,0);if(n.nodeType!=1||r==n.childNodes.length)throw new RangeError("No node after pos "+e);return n.childNodes[r]}setSelection(e,n,r,s=!1){let i=Math.min(e,n),o=Math.max(e,n);for(let h=0,f=0;h<this.children.length;h++){let p=this.children[h],m=f+p.size;if(i>f&&o<m)return p.setSelection(e-f-p.border,n-f-p.border,r,s);f=m}let a=this.domFromPos(e,e?-1:1),l=n==e?a:this.domFromPos(n,n?-1:1),c=r.getSelection(),u=!1;if((lt||Ae)&&e==n){let{node:h,offset:f}=a;if(h.nodeType==3){if(u=!!(f&&h.nodeValue[f-1]==`
|
|
35
|
+
`),u&&f==h.nodeValue.length)for(let p=h,m;p;p=p.parentNode){if(m=p.nextSibling){m.nodeName=="BR"&&(a=l={node:m.parentNode,offset:Se(m)+1});break}let g=p.pmViewDesc;if(g&&g.node&&g.node.isBlock)break}}else{let p=h.childNodes[f-1];u=p&&(p.nodeName=="BR"||p.contentEditable=="false")}}if(lt&&c.focusNode&&c.focusNode!=l.node&&c.focusNode.nodeType==1){let h=c.focusNode.childNodes[c.focusOffset];h&&h.contentEditable=="false"&&(s=!0)}if(!(s||u&&Ae)&&Rn(a.node,a.offset,c.anchorNode,c.anchorOffset)&&Rn(l.node,l.offset,c.focusNode,c.focusOffset))return;let d=!1;if((c.extend||e==n)&&!u){c.collapse(a.node,a.offset);try{e!=n&&c.extend(l.node,l.offset),d=!0}catch{}}if(!d){if(e>n){let f=a;a=l,l=f}let h=document.createRange();h.setEnd(l.node,l.offset),h.setStart(a.node,a.offset),c.removeAllRanges(),c.addRange(h)}}ignoreMutation(e){return!this.contentDOM&&e.type!="selection"}get contentLost(){return this.contentDOM&&this.contentDOM!=this.dom&&!this.dom.contains(this.contentDOM)}markDirty(e,n){for(let r=0,s=0;s<this.children.length;s++){let i=this.children[s],o=r+i.size;if(r==o?e<=o&&n>=r:e<o&&n>r){let a=r+i.border,l=o-i.border;if(e>=a&&n<=l){this.dirty=e==r||n==o?Sn:Vl,e==a&&n==l&&(i.contentLost||i.dom.parentNode!=this.contentDOM)?i.dirty=bt:i.markDirty(e-a,n-a);return}else i.dirty=i.dom==i.contentDOM&&i.dom.parentNode==this.contentDOM&&!i.children.length?Sn:bt}r=o}this.dirty=Sn}markParentsDirty(){let e=1;for(let n=this.parent;n;n=n.parent,e++){let r=e==1?Sn:Vl;n.dirty<r&&(n.dirty=r)}}get domAtom(){return!1}get ignoreForCoords(){return!1}isText(e){return!1}}class Nd extends Ms{constructor(e,n,r,s){let i,o=n.type.toDOM;if(typeof o=="function"&&(o=o(r,()=>{if(!i)return s;if(i.parent)return i.parent.posBeforeChild(i)})),!n.type.spec.raw){if(o.nodeType!=1){let a=document.createElement("span");a.appendChild(o),o=a}o.contentEditable="false",o.classList.add("ProseMirror-widget")}super(e,[],o,null),this.widget=n,this.widget=n,i=this}matchesWidget(e){return this.dirty==Je&&e.type.eq(this.widget.type)}parseRule(){return{ignore:!0}}stopEvent(e){let n=this.widget.spec.stopEvent;return n?n(e):!1}ignoreMutation(e){return e.type!="selection"||this.widget.spec.ignoreSelection}destroy(){this.widget.type.destroy(this.dom),super.destroy()}get domAtom(){return!0}get side(){return this.widget.type.side}}class Tg extends Ms{constructor(e,n,r,s){super(e,[],n,null),this.textDOM=r,this.text=s}get size(){return this.text.length}localPosFromDOM(e,n){return e!=this.textDOM?this.posAtStart+(n?this.size:0):this.posAtStart+n}domFromPos(e){return{node:this.textDOM,offset:e}}ignoreMutation(e){return e.type==="characterData"&&e.target.nodeValue==e.oldValue}}class In extends Ms{constructor(e,n,r,s){super(e,[],r,s),this.mark=n}static create(e,n,r,s){let i=s.nodeViews[n.type.name],o=i&&i(n,s,r);return(!o||!o.dom)&&(o=Dt.renderSpec(document,n.type.spec.toDOM(n,r),null,n.attrs)),new In(e,n,o.dom,o.contentDOM||o.dom)}parseRule(){return this.dirty&bt||this.mark.type.spec.reparseInView?null:{mark:this.mark.type.name,attrs:this.mark.attrs,contentElement:this.contentDOM}}matchesMark(e){return this.dirty!=bt&&this.mark.eq(e)}markDirty(e,n){if(super.markDirty(e,n),this.dirty!=Je){let r=this.parent;for(;!r.node;)r=r.parent;r.dirty<this.dirty&&(r.dirty=this.dirty),this.dirty=Je}}slice(e,n,r){let s=In.create(this.parent,this.mark,!0,r),i=this.children,o=this.size;n<o&&(i=zo(i,n,o,r)),e>0&&(i=zo(i,0,e,r));for(let a=0;a<i.length;a++)i[a].parent=s;return s.children=i,s}}class Zt extends Ms{constructor(e,n,r,s,i,o,a,l,c){super(e,[],i,o),this.node=n,this.outerDeco=r,this.innerDeco=s,this.nodeDOM=a}static create(e,n,r,s,i,o){let a=i.nodeViews[n.type.name],l,c=a&&a(n,i,()=>{if(!l)return o;if(l.parent)return l.parent.posBeforeChild(l)},r,s),u=c&&c.dom,d=c&&c.contentDOM;if(n.isText){if(!u)u=document.createTextNode(n.text);else if(u.nodeType!=3)throw new RangeError("Text must be rendered as a DOM text node")}else u||({dom:u,contentDOM:d}=Dt.renderSpec(document,n.type.spec.toDOM(n),null,n.attrs));!d&&!n.isText&&u.nodeName!="BR"&&(u.hasAttribute("contenteditable")||(u.contentEditable="false"),n.type.spec.draggable&&(u.draggable=!0));let h=u;return u=Dd(u,r,n),c?l=new Og(e,n,r,s,u,d||null,h,c,i,o+1):n.isText?new Li(e,n,r,s,u,h,i):new Zt(e,n,r,s,u,d||null,h,i,o+1)}parseRule(){if(this.node.type.spec.reparseInView)return null;let e={node:this.node.type.name,attrs:this.node.attrs};if(this.node.type.whitespace=="pre"&&(e.preserveWhitespace="full"),!this.contentDOM)e.getContent=()=>this.node.content;else if(!this.contentLost)e.contentElement=this.contentDOM;else{for(let n=this.children.length-1;n>=0;n--){let r=this.children[n];if(this.dom.contains(r.dom.parentNode)){e.contentElement=r.dom.parentNode;break}}e.contentElement||(e.getContent=()=>x.empty)}return e}matchesNode(e,n,r){return this.dirty==Je&&e.eq(this.node)&&Bo(n,this.outerDeco)&&r.eq(this.innerDeco)}get size(){return this.node.nodeSize}get border(){return this.node.isLeaf?0:1}updateChildren(e,n){let r=this.node.inlineContent,s=n,i=e.composing?this.localCompositionInfo(e,n):null,o=i&&i.pos>-1?i:null,a=i&&i.pos<0,l=new _g(this,o&&o.node,e);Rg(this.node,this.innerDeco,(c,u,d)=>{c.spec.marks?l.syncToMarks(c.spec.marks,r,e):c.type.side>=0&&!d&&l.syncToMarks(u==this.node.childCount?U.none:this.node.child(u).marks,r,e),l.placeWidget(c,e,s)},(c,u,d,h)=>{l.syncToMarks(c.marks,r,e);let f;l.findNodeMatch(c,u,d,h)||a&&e.state.selection.from>s&&e.state.selection.to<s+c.nodeSize&&(f=l.findIndexWithChild(i.node))>-1&&l.updateNodeAt(c,u,d,f,e)||l.updateNextNode(c,u,d,e,h,s)||l.addNode(c,u,d,e,s),s+=c.nodeSize}),l.syncToMarks([],r,e),this.node.isTextblock&&l.addTextblockHacks(),l.destroyRest(),(l.changed||this.dirty==Sn)&&(o&&this.protectLocalComposition(e,o),Rd(this.contentDOM,this.children,e),ur&&Ig(this.dom))}localCompositionInfo(e,n){let{from:r,to:s}=e.state.selection;if(!(e.state.selection instanceof L)||r<n||s>n+this.node.content.size)return null;let i=e.input.compositionNode;if(!i||!this.dom.contains(i.parentNode))return null;if(this.node.inlineContent){let o=i.nodeValue,a=Dg(this.node.content,o,r-n,s-n);return a<0?null:{node:i,pos:a,text:o}}else return{node:i,pos:-1,text:""}}protectLocalComposition(e,{node:n,pos:r,text:s}){if(this.getDesc(n))return;let i=n;for(;i.parentNode!=this.contentDOM;i=i.parentNode){for(;i.previousSibling;)i.parentNode.removeChild(i.previousSibling);for(;i.nextSibling;)i.parentNode.removeChild(i.nextSibling);i.pmViewDesc&&(i.pmViewDesc=void 0)}let o=new Tg(this,i,n,s);e.input.compositionNodes.push(o),this.children=zo(this.children,r,r+s.length,e,o)}update(e,n,r,s){return this.dirty==bt||!e.sameMarkup(this.node)?!1:(this.updateInner(e,n,r,s),!0)}updateInner(e,n,r,s){this.updateOuterDeco(n),this.node=e,this.innerDeco=r,this.contentDOM&&this.updateChildren(s,this.posAtStart),this.dirty=Je}updateOuterDeco(e){if(Bo(e,this.outerDeco))return;let n=this.nodeDOM.nodeType!=1,r=this.dom;this.dom=Id(this.dom,this.nodeDOM,Lo(this.outerDeco,this.node,n),Lo(e,this.node,n)),this.dom!=r&&(r.pmViewDesc=void 0,this.dom.pmViewDesc=this),this.outerDeco=e}selectNode(){this.nodeDOM.nodeType==1&&this.nodeDOM.classList.add("ProseMirror-selectednode"),(this.contentDOM||!this.node.type.spec.draggable)&&(this.dom.draggable=!0)}deselectNode(){this.nodeDOM.nodeType==1&&(this.nodeDOM.classList.remove("ProseMirror-selectednode"),(this.contentDOM||!this.node.type.spec.draggable)&&this.dom.removeAttribute("draggable"))}get domAtom(){return this.node.isAtom}}function Hl(t,e,n,r,s){Dd(r,e,t);let i=new Zt(void 0,t,e,n,r,r,r,s,0);return i.contentDOM&&i.updateChildren(s,0),i}class Li extends Zt{constructor(e,n,r,s,i,o,a){super(e,n,r,s,i,null,o,a,0)}parseRule(){let e=this.nodeDOM.parentNode;for(;e&&e!=this.dom&&!e.pmIsDeco;)e=e.parentNode;return{skip:e||!0}}update(e,n,r,s){return this.dirty==bt||this.dirty!=Je&&!this.inParent()||!e.sameMarkup(this.node)?!1:(this.updateOuterDeco(n),(this.dirty!=Je||e.text!=this.node.text)&&e.text!=this.nodeDOM.nodeValue&&(this.nodeDOM.nodeValue=e.text,s.trackWrites==this.nodeDOM&&(s.trackWrites=null)),this.node=e,this.dirty=Je,!0)}inParent(){let e=this.parent.contentDOM;for(let n=this.nodeDOM;n;n=n.parentNode)if(n==e)return!0;return!1}domFromPos(e){return{node:this.nodeDOM,offset:e}}localPosFromDOM(e,n,r){return e==this.nodeDOM?this.posAtStart+Math.min(n,this.node.text.length):super.localPosFromDOM(e,n,r)}ignoreMutation(e){return e.type!="characterData"&&e.type!="selection"}slice(e,n,r){let s=this.node.cut(e,n),i=document.createTextNode(s.text);return new Li(this.parent,s,this.outerDeco,this.innerDeco,i,i,r)}markDirty(e,n){super.markDirty(e,n),this.dom!=this.nodeDOM&&(e==0||n==this.nodeDOM.nodeValue.length)&&(this.dirty=bt)}get domAtom(){return!1}isText(e){return this.node.text==e}}class Ad extends Ms{parseRule(){return{ignore:!0}}matchesHack(e){return this.dirty==Je&&this.dom.nodeName==e}get domAtom(){return!0}get ignoreForCoords(){return this.dom.nodeName=="IMG"}}class Og extends Zt{constructor(e,n,r,s,i,o,a,l,c,u){super(e,n,r,s,i,o,a,c,u),this.spec=l}update(e,n,r,s){if(this.dirty==bt)return!1;if(this.spec.update){let i=this.spec.update(e,n,r);return i&&this.updateInner(e,n,r,s),i}else return!this.contentDOM&&!e.isLeaf?!1:super.update(e,n,r,s)}selectNode(){this.spec.selectNode?this.spec.selectNode():super.selectNode()}deselectNode(){this.spec.deselectNode?this.spec.deselectNode():super.deselectNode()}setSelection(e,n,r,s){this.spec.setSelection?this.spec.setSelection(e,n,r):super.setSelection(e,n,r,s)}destroy(){this.spec.destroy&&this.spec.destroy(),super.destroy()}stopEvent(e){return this.spec.stopEvent?this.spec.stopEvent(e):!1}ignoreMutation(e){return this.spec.ignoreMutation?this.spec.ignoreMutation(e):super.ignoreMutation(e)}}function Rd(t,e,n){let r=t.firstChild,s=!1;for(let i=0;i<e.length;i++){let o=e[i],a=o.dom;if(a.parentNode==t){for(;a!=r;)r=Ul(r),s=!0;r=r.nextSibling}else s=!0,t.insertBefore(a,r);if(o instanceof In){let l=r?r.previousSibling:t.lastChild;Rd(o.contentDOM,o.children,n),r=l?l.nextSibling:t.firstChild}}for(;r;)r=Ul(r),s=!0;s&&n.trackWrites==t&&(n.trackWrites=null)}const ns=function(t){t&&(this.nodeName=t)};ns.prototype=Object.create(null);const wn=[new ns];function Lo(t,e,n){if(t.length==0)return wn;let r=n?wn[0]:new ns,s=[r];for(let i=0;i<t.length;i++){let o=t[i].type.attrs;if(o){o.nodeName&&s.push(r=new ns(o.nodeName));for(let a in o){let l=o[a];l!=null&&(n&&s.length==1&&s.push(r=new ns(e.isInline?"span":"div")),a=="class"?r.class=(r.class?r.class+" ":"")+l:a=="style"?r.style=(r.style?r.style+";":"")+l:a!="nodeName"&&(r[a]=l))}}}return s}function Id(t,e,n,r){if(n==wn&&r==wn)return e;let s=e;for(let i=0;i<r.length;i++){let o=r[i],a=n[i];if(i){let l;a&&a.nodeName==o.nodeName&&s!=t&&(l=s.parentNode)&&l.nodeName.toLowerCase()==o.nodeName||(l=document.createElement(o.nodeName),l.pmIsDeco=!0,l.appendChild(s),a=wn[0]),s=l}Mg(s,a||wn[0],o)}return s}function Mg(t,e,n){for(let r in e)r!="class"&&r!="style"&&r!="nodeName"&&!(r in n)&&t.removeAttribute(r);for(let r in n)r!="class"&&r!="style"&&r!="nodeName"&&n[r]!=e[r]&&t.setAttribute(r,n[r]);if(e.class!=n.class){let r=e.class?e.class.split(" ").filter(Boolean):[],s=n.class?n.class.split(" ").filter(Boolean):[];for(let i=0;i<r.length;i++)s.indexOf(r[i])==-1&&t.classList.remove(r[i]);for(let i=0;i<s.length;i++)r.indexOf(s[i])==-1&&t.classList.add(s[i]);t.classList.length==0&&t.removeAttribute("class")}if(e.style!=n.style){if(e.style){let r=/\s*([\w\-\xa1-\uffff]+)\s*:(?:"(?:\\.|[^"])*"|'(?:\\.|[^'])*'|\(.*?\)|[^;])*/g,s;for(;s=r.exec(e.style);)t.style.removeProperty(s[1])}n.style&&(t.style.cssText+=n.style)}}function Dd(t,e,n){return Id(t,t,wn,Lo(e,n,t.nodeType!=1))}function Bo(t,e){if(t.length!=e.length)return!1;for(let n=0;n<t.length;n++)if(!t[n].type.eq(e[n].type))return!1;return!0}function Ul(t){let e=t.nextSibling;return t.parentNode.removeChild(t),e}class _g{constructor(e,n,r){this.lock=n,this.view=r,this.index=0,this.stack=[],this.changed=!1,this.top=e,this.preMatch=Ng(e.node.content,e)}destroyBetween(e,n){if(e!=n){for(let r=e;r<n;r++)this.top.children[r].destroy();this.top.children.splice(e,n-e),this.changed=!0}}destroyRest(){this.destroyBetween(this.index,this.top.children.length)}syncToMarks(e,n,r){let s=0,i=this.stack.length>>1,o=Math.min(i,e.length);for(;s<o&&(s==i-1?this.top:this.stack[s+1<<1]).matchesMark(e[s])&&e[s].type.spec.spanning!==!1;)s++;for(;s<i;)this.destroyRest(),this.top.dirty=Je,this.index=this.stack.pop(),this.top=this.stack.pop(),i--;for(;i<e.length;){this.stack.push(this.top,this.index+1);let a=-1;for(let l=this.index;l<Math.min(this.index+3,this.top.children.length);l++){let c=this.top.children[l];if(c.matchesMark(e[i])&&!this.isLocked(c.dom)){a=l;break}}if(a>-1)a>this.index&&(this.changed=!0,this.destroyBetween(this.index,a)),this.top=this.top.children[this.index];else{let l=In.create(this.top,e[i],n,r);this.top.children.splice(this.index,0,l),this.top=l,this.changed=!0}this.index=0,i++}}findNodeMatch(e,n,r,s){let i=-1,o;if(s>=this.preMatch.index&&(o=this.preMatch.matches[s-this.preMatch.index]).parent==this.top&&o.matchesNode(e,n,r))i=this.top.children.indexOf(o,this.index);else for(let a=this.index,l=Math.min(this.top.children.length,a+5);a<l;a++){let c=this.top.children[a];if(c.matchesNode(e,n,r)&&!this.preMatch.matched.has(c)){i=a;break}}return i<0?!1:(this.destroyBetween(this.index,i),this.index++,!0)}updateNodeAt(e,n,r,s,i){let o=this.top.children[s];return o.dirty==bt&&o.dom==o.contentDOM&&(o.dirty=Sn),o.update(e,n,r,i)?(this.destroyBetween(this.index,s),this.index++,!0):!1}findIndexWithChild(e){for(;;){let n=e.parentNode;if(!n)return-1;if(n==this.top.contentDOM){let r=e.pmViewDesc;if(r){for(let s=this.index;s<this.top.children.length;s++)if(this.top.children[s]==r)return s}return-1}e=n}}updateNextNode(e,n,r,s,i,o){for(let a=this.index;a<this.top.children.length;a++){let l=this.top.children[a];if(l instanceof Zt){let c=this.preMatch.matched.get(l);if(c!=null&&c!=i)return!1;let u=l.dom,d,h=this.isLocked(u)&&!(e.isText&&l.node&&l.node.isText&&l.nodeDOM.nodeValue==e.text&&l.dirty!=bt&&Bo(n,l.outerDeco));if(!h&&l.update(e,n,r,s))return this.destroyBetween(this.index,a),l.dom!=u&&(this.changed=!0),this.index++,!0;if(!h&&(d=this.recreateWrapper(l,e,n,r,s,o)))return this.top.children[this.index]=d,d.contentDOM&&(d.dirty=Sn,d.updateChildren(s,o+1),d.dirty=Je),this.changed=!0,this.index++,!0;break}}return!1}recreateWrapper(e,n,r,s,i,o){if(e.dirty||n.isAtom||!e.children.length||!e.node.content.eq(n.content))return null;let a=Zt.create(this.top,n,r,s,i,o);if(a.contentDOM){a.children=e.children,e.children=[];for(let l of a.children)l.parent=a}return e.destroy(),a}addNode(e,n,r,s,i){let o=Zt.create(this.top,e,n,r,s,i);o.contentDOM&&o.updateChildren(s,i+1),this.top.children.splice(this.index++,0,o),this.changed=!0}placeWidget(e,n,r){let s=this.index<this.top.children.length?this.top.children[this.index]:null;if(s&&s.matchesWidget(e)&&(e==s.widget||!s.widget.type.toDOM.parentNode))this.index++;else{let i=new Nd(this.top,e,n,r);this.top.children.splice(this.index++,0,i),this.changed=!0}}addTextblockHacks(){let e=this.top.children[this.index-1],n=this.top;for(;e instanceof In;)n=e,e=n.children[n.children.length-1];(!e||!(e instanceof Li)||/\n$/.test(e.node.text)||this.view.requiresGeckoHackNode&&/\s$/.test(e.node.text))&&((Ae||Te)&&e&&e.dom.contentEditable=="false"&&this.addHackNode("IMG",n),this.addHackNode("BR",this.top))}addHackNode(e,n){if(n==this.top&&this.index<n.children.length&&n.children[this.index].matchesHack(e))this.index++;else{let r=document.createElement(e);e=="IMG"&&(r.className="ProseMirror-separator",r.alt=""),e=="BR"&&(r.className="ProseMirror-trailingBreak");let s=new Ad(this.top,[],r,null);n!=this.top?n.children.push(s):n.children.splice(this.index++,0,s),this.changed=!0}}isLocked(e){return this.lock&&(e==this.lock||e.nodeType==1&&e.contains(this.lock.parentNode))}}function Ng(t,e){let n=e,r=n.children.length,s=t.childCount,i=new Map,o=[];e:for(;s>0;){let a;for(;;)if(r){let c=n.children[r-1];if(c instanceof In)n=c,r=c.children.length;else{a=c,r--;break}}else{if(n==e)break e;r=n.parent.children.indexOf(n),n=n.parent}let l=a.node;if(l){if(l!=t.child(s-1))break;--s,i.set(a,s),o.push(a)}}return{index:s,matched:i,matches:o.reverse()}}function Ag(t,e){return t.type.side-e.type.side}function Rg(t,e,n,r){let s=e.locals(t),i=0;if(s.length==0){for(let c=0;c<t.childCount;c++){let u=t.child(c);r(u,s,e.forChild(i,u),c),i+=u.nodeSize}return}let o=0,a=[],l=null;for(let c=0;;){let u,d;for(;o<s.length&&s[o].to==i;){let g=s[o++];g.widget&&(u?(d||(d=[u])).push(g):u=g)}if(u)if(d){d.sort(Ag);for(let g=0;g<d.length;g++)n(d[g],c,!!l)}else n(u,c,!!l);let h,f;if(l)f=-1,h=l,l=null;else if(c<t.childCount)f=c,h=t.child(c++);else break;for(let g=0;g<a.length;g++)a[g].to<=i&&a.splice(g--,1);for(;o<s.length&&s[o].from<=i&&s[o].to>i;)a.push(s[o++]);let p=i+h.nodeSize;if(h.isText){let g=p;o<s.length&&s[o].from<g&&(g=s[o].from);for(let y=0;y<a.length;y++)a[y].to<g&&(g=a[y].to);g<p&&(l=h.cut(g-i),h=h.cut(0,g-i),p=g,f=-1)}else for(;o<s.length&&s[o].to<p;)o++;let m=h.isInline&&!h.isLeaf?a.filter(g=>!g.inline):a.slice();r(h,m,e.forChild(i,h),f),i=p}}function Ig(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 Dg(t,e,n,r){for(let s=0,i=0;s<t.childCount&&i<=r;){let o=t.child(s++),a=i;if(i+=o.nodeSize,!o.isText)continue;let l=o.text;for(;s<t.childCount;){let c=t.child(s++);if(i+=c.nodeSize,!c.isText)break;l+=c.text}if(i>=n){if(i>=r&&l.slice(r-e.length-a,r-a)==e)return r-e.length;let c=a<r?l.lastIndexOf(e,r-a-1):-1;if(c>=0&&c+e.length+a>=n)return a+c;if(n==r&&l.length>=r+e.length-a&&l.slice(r-a,r-a+e.length)==e)return r}}return-1}function zo(t,e,n,r,s){let i=[];for(let o=0,a=0;o<t.length;o++){let l=t[o],c=a,u=a+=l.size;c>=n||u<=e?i.push(l):(c<e&&i.push(l.slice(0,e-c,r)),s&&(i.push(s),s=void 0),u>n&&i.push(l.slice(n-c,l.size,r)))}return i}function Sa(t,e=null){let n=t.domSelectionRange(),r=t.state.doc;if(!n.focusNode)return null;let s=t.docView.nearestDesc(n.focusNode),i=s&&s.size==0,o=t.docView.posFromDOM(n.focusNode,n.focusOffset,1);if(o<0)return null;let a=r.resolve(o),l,c;if(Pi(n)){for(l=a;s&&!s.node;)s=s.parent;let u=s.node;if(s&&u.isAtom&&I.isSelectable(u)&&s.parent&&!(u.isInline&&og(n.focusNode,n.focusOffset,s.dom))){let d=s.posBefore;c=new I(o==d?a:r.resolve(d))}}else{let u=t.docView.posFromDOM(n.anchorNode,n.anchorOffset,1);if(u<0)return null;l=r.resolve(u)}if(!c){let u=e=="pointer"||t.state.selection.head<a.pos&&!i?1:-1;c=wa(t,l,a,u)}return c}function Pd(t){return t.editable?t.hasFocus():Bd(t)&&document.activeElement&&document.activeElement.contains(t.dom)}function At(t,e=!1){let n=t.state.selection;if(Ld(t,n),!!Pd(t)){if(!e&&t.input.mouseDown&&t.input.mouseDown.allowDefault&&Te){let r=t.domSelectionRange(),s=t.domObserver.currentSelection;if(r.anchorNode&&s.anchorNode&&Rn(r.anchorNode,r.anchorOffset,s.anchorNode,s.anchorOffset)){t.input.mouseDown.delayedSelectionSync=!0,t.domObserver.setCurSelection();return}}if(t.domObserver.disconnectSelection(),t.cursorWrapper)Lg(t);else{let{anchor:r,head:s}=n,i,o;jl&&!(n instanceof L)&&(n.$from.parent.inlineContent||(i=Wl(t,n.from)),!n.empty&&!n.$from.parent.inlineContent&&(o=Wl(t,n.to))),t.docView.setSelection(r,s,t.root,e),jl&&(i&&Kl(i),o&&Kl(o)),n.visible?t.dom.classList.remove("ProseMirror-hideselection"):(t.dom.classList.add("ProseMirror-hideselection"),"onselectionchange"in document&&Pg(t))}t.domObserver.setCurSelection(),t.domObserver.connectSelection()}}const jl=Ae||Te&&vd<63;function Wl(t,e){let{node:n,offset:r}=t.docView.domFromPos(e,0),s=r<n.childNodes.length?n.childNodes[r]:null,i=r?n.childNodes[r-1]:null;if(Ae&&s&&s.contentEditable=="false")return co(s);if((!s||s.contentEditable=="false")&&(!i||i.contentEditable=="false")){if(s)return co(s);if(i)return co(i)}}function co(t){return t.contentEditable="true",Ae&&t.draggable&&(t.draggable=!1,t.wasDraggable=!0),t}function Kl(t){t.contentEditable="false",t.wasDraggable&&(t.draggable=!0,t.wasDraggable=null)}function Pg(t){let e=t.dom.ownerDocument;e.removeEventListener("selectionchange",t.input.hideSelectionGuard);let n=t.domSelectionRange(),r=n.anchorNode,s=n.anchorOffset;e.addEventListener("selectionchange",t.input.hideSelectionGuard=()=>{(n.anchorNode!=r||n.anchorOffset!=s)&&(e.removeEventListener("selectionchange",t.input.hideSelectionGuard),setTimeout(()=>{(!Pd(t)||t.state.selection.visible)&&t.dom.classList.remove("ProseMirror-hideselection")},20))})}function Lg(t){let e=t.domSelection(),n=document.createRange(),r=t.cursorWrapper.dom,s=r.nodeName=="IMG";s?n.setEnd(r.parentNode,Se(r)+1):n.setEnd(r,0),n.collapse(!1),e.removeAllRanges(),e.addRange(n),!s&&!t.state.selection.visible&&ze&&Yt<=11&&(r.disabled=!0,r.disabled=!1)}function Ld(t,e){if(e instanceof I){let n=t.docView.descAt(e.from);n!=t.lastSelectedViewDesc&&(ql(t),n&&n.selectNode(),t.lastSelectedViewDesc=n)}else ql(t)}function ql(t){t.lastSelectedViewDesc&&(t.lastSelectedViewDesc.parent&&t.lastSelectedViewDesc.deselectNode(),t.lastSelectedViewDesc=void 0)}function wa(t,e,n,r){return t.someProp("createSelectionBetween",s=>s(t,e,n))||L.between(e,n,r)}function Jl(t){return t.editable&&!t.hasFocus()?!1:Bd(t)}function Bd(t){let e=t.domSelectionRange();if(!e.anchorNode)return!1;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{return!1}}function Bg(t){let e=t.docView.domFromPos(t.state.selection.anchor,0),n=t.domSelectionRange();return Rn(e.node,e.offset,n.anchorNode,n.anchorOffset)}function $o(t,e){let{$anchor:n,$head:r}=t.selection,s=e>0?n.max(r):n.min(r),i=s.parent.inlineContent?s.depth?t.doc.resolve(e>0?s.after():s.before()):null:s;return i&&V.findFrom(i,e)}function Ut(t,e){return t.dispatch(t.state.tr.setSelection(e).scrollIntoView()),!0}function Gl(t,e,n){let r=t.state.selection;if(r instanceof L)if(n.indexOf("s")>-1){let{$head:s}=r,i=s.textOffset?null:e<0?s.nodeBefore:s.nodeAfter;if(!i||i.isText||!i.isLeaf)return!1;let o=t.state.doc.resolve(s.pos+i.nodeSize*(e<0?-1:1));return Ut(t,new L(r.$anchor,o))}else if(r.empty){if(t.endOfTextblock(e>0?"forward":"backward")){let s=$o(t.state,e);return s&&s instanceof I?Ut(t,s):!1}else if(!(qe&&n.indexOf("m")>-1)){let s=r.$head,i=s.textOffset?null:e<0?s.nodeBefore:s.nodeAfter,o;if(!i||i.isText)return!1;let a=e<0?s.pos-i.nodeSize:s.pos;return i.isAtom||(o=t.docView.descAt(a))&&!o.contentDOM?I.isSelectable(i)?Ut(t,new I(e<0?t.state.doc.resolve(s.pos-i.nodeSize):s)):Os?Ut(t,new L(t.state.doc.resolve(e<0?a:a+i.nodeSize))):!1:!1}}else return!1;else{if(r instanceof I&&r.node.isInline)return Ut(t,new L(e>0?r.$to:r.$from));{let s=$o(t.state,e);return s?Ut(t,s):!1}}}function fi(t){return t.nodeType==3?t.nodeValue.length:t.childNodes.length}function rs(t,e){let n=t.pmViewDesc;return n&&n.size==0&&(e<0||t.nextSibling||t.nodeName!="BR")}function Vn(t,e){return e<0?zg(t):$g(t)}function zg(t){let e=t.domSelectionRange(),n=e.focusNode,r=e.focusOffset;if(!n)return;let s,i,o=!1;for(lt&&n.nodeType==1&&r<fi(n)&&rs(n.childNodes[r],-1)&&(o=!0);;)if(r>0){if(n.nodeType!=1)break;{let a=n.childNodes[r-1];if(rs(a,-1))s=n,i=--r;else if(a.nodeType==3)n=a,r=n.nodeValue.length;else break}}else{if(zd(n))break;{let a=n.previousSibling;for(;a&&rs(a,-1);)s=n.parentNode,i=Se(a),a=a.previousSibling;if(a)n=a,r=fi(n);else{if(n=n.parentNode,n==t.dom)break;r=0}}}o?Fo(t,n,r):s&&Fo(t,s,i)}function $g(t){let e=t.domSelectionRange(),n=e.focusNode,r=e.focusOffset;if(!n)return;let s=fi(n),i,o;for(;;)if(r<s){if(n.nodeType!=1)break;let a=n.childNodes[r];if(rs(a,1))i=n,o=++r;else break}else{if(zd(n))break;{let a=n.nextSibling;for(;a&&rs(a,1);)i=a.parentNode,o=Se(a)+1,a=a.nextSibling;if(a)n=a,r=0,s=fi(n);else{if(n=n.parentNode,n==t.dom)break;r=s=0}}}i&&Fo(t,i,o)}function zd(t){let e=t.pmViewDesc;return e&&e.node&&e.node.isBlock}function Fg(t,e){for(;t&&e==t.childNodes.length&&!Ts(t);)e=Se(t)+1,t=t.parentNode;for(;t&&e<t.childNodes.length;){let n=t.childNodes[e];if(n.nodeType==3)return n;if(n.nodeType==1&&n.contentEditable=="false")break;t=n,e=0}}function Vg(t,e){for(;t&&!e&&!Ts(t);)e=Se(t),t=t.parentNode;for(;t&&e;){let n=t.childNodes[e-1];if(n.nodeType==3)return n;if(n.nodeType==1&&n.contentEditable=="false")break;t=n,e=t.childNodes.length}}function Fo(t,e,n){if(e.nodeType!=3){let i,o;(o=Fg(e,n))?(e=o,n=0):(i=Vg(e,n))&&(e=i,n=i.nodeValue.length)}let r=t.domSelection();if(Pi(r)){let i=document.createRange();i.setEnd(e,n),i.setStart(e,n),r.removeAllRanges(),r.addRange(i)}else r.extend&&r.extend(e,n);t.domObserver.setCurSelection();let{state:s}=t;setTimeout(()=>{t.state==s&&At(t)},50)}function Xl(t,e){let n=t.state.doc.resolve(e);if(!(Te||cg)&&n.parent.inlineContent){let s=t.coordsAtPos(e);if(e>n.start()){let i=t.coordsAtPos(e-1),o=(i.top+i.bottom)/2;if(o>s.top&&o<s.bottom&&Math.abs(i.left-s.left)>1)return i.left<s.left?"ltr":"rtl"}if(e<n.end()){let i=t.coordsAtPos(e+1),o=(i.top+i.bottom)/2;if(o>s.top&&o<s.bottom&&Math.abs(i.left-s.left)>1)return i.left>s.left?"ltr":"rtl"}}return getComputedStyle(t.dom).direction=="rtl"?"rtl":"ltr"}function Yl(t,e,n){let r=t.state.selection;if(r instanceof L&&!r.empty||n.indexOf("s")>-1||qe&&n.indexOf("m")>-1)return!1;let{$from:s,$to:i}=r;if(!s.parent.inlineContent||t.endOfTextblock(e<0?"up":"down")){let o=$o(t.state,e);if(o&&o instanceof I)return Ut(t,o)}if(!s.parent.inlineContent){let o=e<0?s:i,a=r instanceof Be?V.near(o,e):V.findFrom(o,e);return a?Ut(t,a):!1}return!1}function Zl(t,e){if(!(t.state.selection instanceof L))return!0;let{$head:n,$anchor:r,empty:s}=t.state.selection;if(!n.sameParent(r))return!0;if(!s)return!1;if(t.endOfTextblock(e>0?"forward":"backward"))return!0;let i=!n.textOffset&&(e<0?n.nodeBefore:n.nodeAfter);if(i&&!i.isText){let o=t.state.tr;return e<0?o.delete(n.pos-i.nodeSize,n.pos):o.delete(n.pos,n.pos+i.nodeSize),t.dispatch(o),!0}return!1}function Ql(t,e,n){t.domObserver.stop(),e.contentEditable=n,t.domObserver.start()}function Hg(t){if(!Ae||t.state.selection.$head.parentOffset>0)return!1;let{focusNode:e,focusOffset:n}=t.domSelectionRange();if(e&&e.nodeType==1&&n==0&&e.firstChild&&e.firstChild.contentEditable=="false"){let r=e.firstChild;Ql(t,r,"true"),setTimeout(()=>Ql(t,r,"false"),20)}return!1}function Ug(t){let e="";return t.ctrlKey&&(e+="c"),t.metaKey&&(e+="m"),t.altKey&&(e+="a"),t.shiftKey&&(e+="s"),e}function jg(t,e){let n=e.keyCode,r=Ug(e);if(n==8||qe&&n==72&&r=="c")return Zl(t,-1)||Vn(t,-1);if(n==46&&!e.shiftKey||qe&&n==68&&r=="c")return Zl(t,1)||Vn(t,1);if(n==13||n==27)return!0;if(n==37||qe&&n==66&&r=="c"){let s=n==37?Xl(t,t.state.selection.from)=="ltr"?-1:1:-1;return Gl(t,s,r)||Vn(t,s)}else if(n==39||qe&&n==70&&r=="c"){let s=n==39?Xl(t,t.state.selection.from)=="ltr"?1:-1:1;return Gl(t,s,r)||Vn(t,s)}else{if(n==38||qe&&n==80&&r=="c")return Yl(t,-1,r)||Vn(t,-1);if(n==40||qe&&n==78&&r=="c")return Hg(t)||Yl(t,1,r)||Vn(t,1);if(r==(qe?"m":"c")&&(n==66||n==73||n==89||n==90))return!0}return!1}function $d(t,e){t.someProp("transformCopied",f=>{e=f(e,t)});let n=[],{content:r,openStart:s,openEnd:i}=e;for(;s>1&&i>1&&r.childCount==1&&r.firstChild.childCount==1;){s--,i--;let f=r.firstChild;n.push(f.type.name,f.attrs!=f.type.defaultAttrs?f.attrs:null),r=f.content}let o=t.someProp("clipboardSerializer")||Dt.fromSchema(t.state.schema),a=Wd(),l=a.createElement("div");l.appendChild(o.serializeFragment(r,{document:a}));let c=l.firstChild,u,d=0;for(;c&&c.nodeType==1&&(u=jd[c.nodeName.toLowerCase()]);){for(let f=u.length-1;f>=0;f--){let p=a.createElement(u[f]);for(;l.firstChild;)p.appendChild(l.firstChild);l.appendChild(p),d++}c=l.firstChild}c&&c.nodeType==1&&c.setAttribute("data-pm-slice",`${s} ${i}${d?` -${d}`:""} ${JSON.stringify(n)}`);let h=t.someProp("clipboardTextSerializer",f=>f(e,t))||e.content.textBetween(0,e.content.size,`
|
|
36
36
|
|
|
37
|
-
`);return{dom:l,text:h,slice:e}}function
|
|
38
|
-
`))),0,0):w.empty;let d=t.someProp("clipboardTextParser",h=>h(e,s,r,t));if(d)a=d;else{let h=s.marks(),{schema:f}=t.state,p=Dt.fromSchema(f);o=document.createElement("div"),e.split(/(?:\r\n?|\n)+/).forEach(m=>{let g=o.appendChild(document.createElement("p"));m&&g.appendChild(p.serializeNode(f.text(m,h)))})}}else t.someProp("transformPastedHTML",d=>{n=d(n,t)}),o=Jg(n),Os&&Gg(o);let c=o&&o.querySelector("[data-pm-slice]"),u=c&&/^(\d+) (\d+)(?: -(\d+))? (.*)/.exec(c.getAttribute("data-pm-slice")||"");if(u&&u[3])for(let d=+u[3];d>0;d--){let h=o.firstChild;for(;h&&h.nodeType!=1;)h=h.nextSibling;if(!h)break;o=h}if(a||(a=(t.someProp("clipboardParser")||t.someProp("domParser")||ar.fromSchema(t.state.schema)).parseSlice(o,{preserveWhitespace:!!(l||u),context:s,ruleFromNode(h){return h.nodeName=="BR"&&!h.nextSibling&&h.parentNode&&!Kg.test(h.parentNode.nodeName)?{ignore:!0}:null}})),u)a=Xg(Ql(a,+u[1],+u[2]),u[4]);else if(a=w.maxOpen(qg(a.content,s),!0),a.openStart||a.openEnd){let d=0,h=0;for(let f=a.content.firstChild;d<a.openStart&&!f.type.spec.isolating;d++,f=f.firstChild);for(let f=a.content.lastChild;h<a.openEnd&&!f.type.spec.isolating;h++,f=f.lastChild);a=Ql(a,d,h)}return t.someProp("transformPasted",d=>{a=d(a,t)}),a}const Kg=/^(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 qg(t,e){if(t.childCount<2)return t;for(let n=e.depth;n>=0;n--){let s=e.node(n).contentMatchAt(e.index(n)),i,o=[];if(t.forEach(a=>{if(!o)return;let l=s.findWrapping(a.type),c;if(!l)return o=null;if(c=o.length&&i.length&&Vd(l,i,a,o[o.length-1],0))o[o.length-1]=c;else{o.length&&(o[o.length-1]=Hd(o[o.length-1],i.length));let u=Fd(a,l);o.push(u),s=s.matchType(u.type),i=l}}),o)return x.from(o)}return t}function Fd(t,e,n=0){for(let r=e.length-1;r>=n;r--)t=e[r].create(null,x.from(t));return t}function Vd(t,e,n,r,s){if(s<t.length&&s<e.length&&t[s]==e[s]){let i=Vd(t,e,n,r.lastChild,s+1);if(i)return r.copy(r.content.replaceChild(r.childCount-1,i));if(r.contentMatchAt(r.childCount).matchType(s==t.length-1?n.type:t[s+1]))return r.copy(r.content.append(x.from(Fd(n,t,s+1))))}}function Hd(t,e){if(e==0)return t;let n=t.content.replaceChild(t.childCount-1,Hd(t.lastChild,e-1)),r=t.contentMatchAt(t.childCount).fillBefore(x.empty,!0);return t.copy(n.append(r))}function Vo(t,e,n,r,s,i){let o=e<0?t.firstChild:t.lastChild,a=o.content;return t.childCount>1&&(i=0),s<r-1&&(a=Vo(a,e,n,r,s+1,i)),s>=n&&(a=e<0?o.contentMatchAt(0).fillBefore(a,i<=s).append(a):a.append(o.contentMatchAt(o.childCount).fillBefore(x.empty,!0))),t.replaceChild(e<0?0:t.childCount-1,o.copy(a))}function Ql(t,e,n){return e<t.openStart&&(t=new w(Vo(t.content,-1,e,t.openStart,0,t.openEnd),e,t.openEnd)),n<t.openEnd&&(t=new w(Vo(t.content,1,n,t.openEnd,0,0),t.openStart,n)),t}const Ud={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 ec=null;function jd(){return ec||(ec=document.implementation.createHTMLDocument("title"))}function Jg(t){let e=/^(\s*<meta [^>]*>)*/.exec(t);e&&(t=t.slice(e[0].length));let n=jd().createElement("div"),r=/<([a-z][^>\s]+)/i.exec(t),s;if((s=r&&Ud[r[1].toLowerCase()])&&(t=s.map(i=>"<"+i+">").join("")+t+s.map(i=>"</"+i+">").reverse().join("")),n.innerHTML=t,s)for(let i=0;i<s.length;i++)n=n.querySelector(s[i])||n;return n}function Gg(t){let e=t.querySelectorAll(Te?"span:not([class]):not([style])":"span.Apple-converted-space");for(let n=0;n<e.length;n++){let r=e[n];r.childNodes.length==1&&r.textContent==" "&&r.parentNode&&r.parentNode.replaceChild(t.ownerDocument.createTextNode(" "),r)}}function Xg(t,e){if(!t.size)return t;let n=t.content.firstChild.type.schema,r;try{r=JSON.parse(e)}catch{return t}let{content:s,openStart:i,openEnd:o}=t;for(let a=r.length-2;a>=0;a-=2){let l=n.nodes[r[a]];if(!l||l.hasRequiredAttrs())break;s=x.from(l.create(r[a+1],s)),i++,o++}return new w(s,i,o)}const Re={},Ie={},Yg={touchstart:!0,touchmove:!0};class Zg{constructor(){this.shiftKey=!1,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=!1,this.compositionNode=null,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 Qg(t){for(let e in Re){let n=Re[e];t.dom.addEventListener(e,t.input.eventHandlers[e]=r=>{ty(t,r)&&!va(t,r)&&(t.editable||!(r.type in Ie))&&n(t,r)},Yg[e]?{passive:!0}:void 0)}Ae&&t.dom.addEventListener("input",()=>null),Ho(t)}function Gt(t,e){t.input.lastSelectionOrigin=e,t.input.lastSelectionTime=Date.now()}function ey(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 Ho(t){t.someProp("handleDOMEvents",e=>{for(let n in e)t.input.eventHandlers[n]||t.dom.addEventListener(n,t.input.eventHandlers[n]=r=>va(t,r))})}function va(t,e){return t.someProp("handleDOMEvents",n=>{let r=n[e.type];return r?r(t,e)||e.defaultPrevented:!1})}function ty(t,e){if(!e.bubbles)return!0;if(e.defaultPrevented)return!1;for(let n=e.target;n!=t.dom;n=n.parentNode)if(!n||n.nodeType==11||n.pmViewDesc&&n.pmViewDesc.stopEvent(e))return!1;return!0}function ny(t,e){!va(t,e)&&Re[e.type]&&(t.editable||!(e.type in Ie))&&Re[e.type](t,e)}Ie.keydown=(t,e)=>{let n=e;if(t.input.shiftKey=n.keyCode==16||n.shiftKey,!Kd(t,n)&&(t.input.lastKeyCode=n.keyCode,t.input.lastKeyCodeTime=Date.now(),!(rt&&Te&&n.keyCode==13)))if(n.keyCode!=229&&t.domObserver.forceFlush(),ur&&n.keyCode==13&&!n.ctrlKey&&!n.altKey&&!n.metaKey){let r=Date.now();t.input.lastIOSEnter=r,t.input.lastIOSEnterFallbackTimeout=setTimeout(()=>{t.input.lastIOSEnter==r&&(t.someProp("handleKeyDown",s=>s(t,xn(13,"Enter"))),t.input.lastIOSEnter=0)},200)}else t.someProp("handleKeyDown",r=>r(t,n))||Wg(t,n)?n.preventDefault():Gt(t,"key")};Ie.keyup=(t,e)=>{e.keyCode==16&&(t.input.shiftKey=!1)};Ie.keypress=(t,e)=>{let n=e;if(Kd(t,n)||!n.charCode||n.ctrlKey&&!n.altKey||qe&&n.metaKey)return;if(t.someProp("handleKeyPress",s=>s(t,n))){n.preventDefault();return}let r=t.state.selection;if(!(r instanceof L)||!r.$from.sameParent(r.$to)){let s=String.fromCharCode(n.charCode);!/[\r\n]/.test(s)&&!t.someProp("handleTextInput",i=>i(t,r.$from.pos,r.$to.pos,s))&&t.dispatch(t.state.tr.insertText(s).scrollIntoView()),n.preventDefault()}};function Bi(t){return{left:t.clientX,top:t.clientY}}function ry(t,e){let n=e.x-t.clientX,r=e.y-t.clientY;return n*n+r*r<100}function Ea(t,e,n,r,s){if(r==-1)return!1;let i=t.state.doc.resolve(r);for(let o=i.depth+1;o>0;o--)if(t.someProp(e,a=>o>i.depth?a(t,n,i.nodeAfter,i.before(o),s,!0):a(t,n,i.node(o),i.before(o),s,!1)))return!0;return!1}function er(t,e,n){t.focused||t.focus();let r=t.state.tr.setSelection(e);r.setMeta("pointer",!0),t.dispatch(r)}function sy(t,e){if(e==-1)return!1;let n=t.state.doc.resolve(e),r=n.nodeAfter;return r&&r.isAtom&&I.isSelectable(r)?(er(t,new I(n)),!0):!1}function iy(t,e){if(e==-1)return!1;let n=t.state.selection,r,s;n instanceof I&&(r=n.node);let i=t.state.doc.resolve(e);for(let o=i.depth+1;o>0;o--){let a=o>i.depth?i.nodeAfter:i.node(o);if(I.isSelectable(a)){r&&n.$from.depth>0&&o>=n.$from.depth&&i.before(n.$from.depth+1)==n.$from.pos?s=i.before(n.$from.depth):s=i.before(o);break}}return s!=null?(er(t,I.create(t.state.doc,s)),!0):!1}function oy(t,e,n,r,s){return Ea(t,"handleClickOn",e,n,r)||t.someProp("handleClick",i=>i(t,e,r))||(s?iy(t,n):sy(t,n))}function ay(t,e,n,r){return Ea(t,"handleDoubleClickOn",e,n,r)||t.someProp("handleDoubleClick",s=>s(t,e,r))}function ly(t,e,n,r){return Ea(t,"handleTripleClickOn",e,n,r)||t.someProp("handleTripleClick",s=>s(t,e,r))||cy(t,n,r)}function cy(t,e,n){if(n.button!=0)return!1;let r=t.state.doc;if(e==-1)return r.inlineContent?(er(t,L.create(r,0,r.content.size)),!0):!1;let s=r.resolve(e);for(let i=s.depth+1;i>0;i--){let o=i>s.depth?s.nodeAfter:s.node(i),a=s.before(i);if(o.inlineContent)er(t,L.create(r,a+1,a+1+o.content.size));else if(I.isSelectable(o))er(t,I.create(r,a));else continue;return!0}}function Ca(t){return pi(t)}const Wd=qe?"metaKey":"ctrlKey";Re.mousedown=(t,e)=>{let n=e;t.input.shiftKey=n.shiftKey;let r=Ca(t),s=Date.now(),i="singleClick";s-t.input.lastClick.time<500&&ry(n,t.input.lastClick)&&!n[Wd]&&(t.input.lastClick.type=="singleClick"?i="doubleClick":t.input.lastClick.type=="doubleClick"&&(i="tripleClick")),t.input.lastClick={time:s,x:n.clientX,y:n.clientY,type:i};let o=t.posAtCoords(Bi(n));o&&(i=="singleClick"?(t.input.mouseDown&&t.input.mouseDown.done(),t.input.mouseDown=new uy(t,o,n,!!r)):(i=="doubleClick"?ay:ly)(t,o.pos,o.inside,n)?n.preventDefault():Gt(t,"pointer"))};class uy{constructor(e,n,r,s){this.view=e,this.pos=n,this.event=r,this.flushed=s,this.delayedSelectionSync=!1,this.mightDrag=null,this.startDoc=e.state.doc,this.selectNode=!!r[Wd],this.allowDefault=r.shiftKey;let i,o;if(n.inside>-1)i=e.state.doc.nodeAt(n.inside),o=n.inside;else{let u=e.state.doc.resolve(n.pos);i=u.parent,o=u.depth?u.before():0}const a=s?null:r.target,l=a?e.docView.nearestDesc(a,!0):null;this.target=l&&l.dom.nodeType==1?l.dom:null;let{selection:c}=e.state;(r.button==0&&i.type.spec.draggable&&i.type.spec.selectable!==!1||c instanceof I&&c.from<=o&&c.to>o)&&(this.mightDrag={node:i,pos:o,addAttr:!!(this.target&&!this.target.draggable),setUneditable:!!(this.target&<&&!this.target.hasAttribute("contentEditable"))}),this.target&&this.mightDrag&&(this.mightDrag.addAttr||this.mightDrag.setUneditable)&&(this.view.domObserver.stop(),this.mightDrag.addAttr&&(this.target.draggable=!0),this.mightDrag.setUneditable&&setTimeout(()=>{this.view.input.mouseDown==this&&this.target.setAttribute("contentEditable","false")},20),this.view.domObserver.start()),e.root.addEventListener("mouseup",this.up=this.up.bind(this)),e.root.addEventListener("mousemove",this.move=this.move.bind(this)),Gt(e,"pointer")}done(){this.view.root.removeEventListener("mouseup",this.up),this.view.root.removeEventListener("mousemove",this.move),this.mightDrag&&this.target&&(this.view.domObserver.stop(),this.mightDrag.addAttr&&this.target.removeAttribute("draggable"),this.mightDrag.setUneditable&&this.target.removeAttribute("contentEditable"),this.view.domObserver.start()),this.delayedSelectionSync&&setTimeout(()=>At(this.view)),this.view.input.mouseDown=null}up(e){if(this.done(),!this.view.dom.contains(e.target))return;let n=this.pos;this.view.state.doc!=this.startDoc&&(n=this.view.posAtCoords(Bi(e))),this.updateAllowDefault(e),this.allowDefault||!n?Gt(this.view,"pointer"):oy(this.view,n.pos,n.inside,e,this.selectNode)?e.preventDefault():e.button==0&&(this.flushed||Ae&&this.mightDrag&&!this.mightDrag.node.isAtom||Te&&!this.view.state.selection.visible&&Math.min(Math.abs(n.pos-this.view.state.selection.from),Math.abs(n.pos-this.view.state.selection.to))<=2)?(er(this.view,V.near(this.view.state.doc.resolve(n.pos))),e.preventDefault()):Gt(this.view,"pointer")}move(e){this.updateAllowDefault(e),Gt(this.view,"pointer"),e.buttons==0&&this.done()}updateAllowDefault(e){!this.allowDefault&&(Math.abs(this.event.x-e.clientX)>4||Math.abs(this.event.y-e.clientY)>4)&&(this.allowDefault=!0)}}Re.touchstart=t=>{t.input.lastTouch=Date.now(),Ca(t),Gt(t,"pointer")};Re.touchmove=t=>{t.input.lastTouch=Date.now(),Gt(t,"pointer")};Re.contextmenu=t=>Ca(t);function Kd(t,e){return t.composing?!0:Ae&&Math.abs(e.timeStamp-t.input.compositionEndedAt)<500?(t.input.compositionEndedAt=-2e8,!0):!1}const dy=rt?5e3:-1;Ie.compositionstart=Ie.compositionupdate=t=>{if(!t.composing){t.domObserver.flush();let{state:e}=t,n=e.selection.$from;if(e.selection.empty&&(e.storedMarks||!n.textOffset&&n.parentOffset&&n.nodeBefore.marks.some(r=>r.type.spec.inclusive===!1)))t.markCursor=t.state.storedMarks||n.marks(),pi(t,!0),t.markCursor=null;else if(pi(t),lt&&e.selection.empty&&n.parentOffset&&!n.textOffset&&n.nodeBefore.marks.length){let r=t.domSelectionRange();for(let s=r.focusNode,i=r.focusOffset;s&&s.nodeType==1&&i!=0;){let o=i<0?s.lastChild:s.childNodes[i-1];if(!o)break;if(o.nodeType==3){t.domSelection().collapse(o,o.nodeValue.length);break}else s=o,i=-1}}t.input.composing=!0}qd(t,dy)};Ie.compositionend=(t,e)=>{t.composing&&(t.input.composing=!1,t.input.compositionEndedAt=e.timeStamp,t.input.compositionPendingChanges=t.domObserver.pendingRecords().length?t.input.compositionID:0,t.input.compositionNode=null,t.input.compositionPendingChanges&&Promise.resolve().then(()=>t.domObserver.flush()),t.input.compositionID++,qd(t,20))};function qd(t,e){clearTimeout(t.input.composingTimeout),e>-1&&(t.input.composingTimeout=setTimeout(()=>pi(t),e))}function Jd(t){for(t.composing&&(t.input.composing=!1,t.input.compositionEndedAt=fy());t.input.compositionNodes.length>0;)t.input.compositionNodes.pop().markParentsDirty()}function hy(t){let e=t.domSelectionRange();if(!e.focusNode)return null;let n=ig(e.focusNode,e.focusOffset),r=og(e.focusNode,e.focusOffset);if(n&&r&&n!=r){let s=r.pmViewDesc,i=t.domObserver.lastChangedTextNode;if(n==i||r==i)return i;if(!s||!s.isText(r.nodeValue))return r;if(t.input.compositionNode==r){let o=n.pmViewDesc;if(!(!o||!o.isText(n.nodeValue)))return r}}return n||r}function fy(){let t=document.createEvent("Event");return t.initEvent("event",!0,!0),t.timeStamp}function pi(t,e=!1){if(!(rt&&t.domObserver.flushingSoon>=0)){if(t.domObserver.forceFlush(),Jd(t),e||t.docView&&t.docView.dirty){let n=Sa(t);return n&&!n.eq(t.state.selection)?t.dispatch(t.state.tr.setSelection(n)):t.updateState(t.state),!0}return!1}}function py(t,e){if(!t.dom.parentNode)return;let n=t.dom.parentNode.appendChild(document.createElement("div"));n.appendChild(e),n.style.cssText="position: fixed; left: -10000px; top: 10px";let r=getSelection(),s=document.createRange();s.selectNodeContents(e),t.dom.blur(),r.removeAllRanges(),r.addRange(s),setTimeout(()=>{n.parentNode&&n.parentNode.removeChild(n),t.focus()},50)}const cs=ze&&Yt<15||ur&&dg<604;Re.copy=Ie.cut=(t,e)=>{let n=e,r=t.state.selection,s=n.type=="cut";if(r.empty)return;let i=cs?null:n.clipboardData,o=r.content(),{dom:a,text:l}=zd(t,o);i?(n.preventDefault(),i.clearData(),i.setData("text/html",a.innerHTML),i.setData("text/plain",l)):py(t,a),s&&t.dispatch(t.state.tr.deleteSelection().scrollIntoView().setMeta("uiEvent","cut"))};function my(t){return t.openStart==0&&t.openEnd==0&&t.content.childCount==1?t.content.firstChild:null}function gy(t,e){if(!t.dom.parentNode)return;let n=t.input.shiftKey||t.state.selection.$from.parent.type.spec.code,r=t.dom.parentNode.appendChild(document.createElement(n?"textarea":"div"));n||(r.contentEditable="true"),r.style.cssText="position: fixed; left: -10000px; top: 10px",r.focus();let s=t.input.shiftKey&&t.input.lastKeyCode!=45;setTimeout(()=>{t.focus(),r.parentNode&&r.parentNode.removeChild(r),n?us(t,r.value,null,s,e):us(t,r.textContent,r.innerHTML,s,e)},50)}function us(t,e,n,r,s){let i=$d(t,e,n,r,t.state.selection.$from);if(t.someProp("handlePaste",l=>l(t,s,i||w.empty)))return!0;if(!i)return!1;let o=my(i),a=o?t.state.tr.replaceSelectionWith(o,r):t.state.tr.replaceSelection(i);return t.dispatch(a.scrollIntoView().setMeta("paste",!0).setMeta("uiEvent","paste")),!0}function Gd(t){let e=t.getData("text/plain")||t.getData("Text");if(e)return e;let n=t.getData("text/uri-list");return n?n.replace(/\r?\n/g," "):""}Ie.paste=(t,e)=>{let n=e;if(t.composing&&!rt)return;let r=cs?null:n.clipboardData,s=t.input.shiftKey&&t.input.lastKeyCode!=45;r&&us(t,Gd(r),r.getData("text/html"),s,n)?n.preventDefault():gy(t,n)};class Xd{constructor(e,n,r){this.slice=e,this.move=n,this.node=r}}const Yd=qe?"altKey":"ctrlKey";Re.dragstart=(t,e)=>{let n=e,r=t.input.mouseDown;if(r&&r.done(),!n.dataTransfer)return;let s=t.state.selection,i=s.empty?null:t.posAtCoords(Bi(n)),o;if(!(i&&i.pos>=s.from&&i.pos<=(s instanceof I?s.to-1:s.to))){if(r&&r.mightDrag)o=I.create(t.state.doc,r.mightDrag.pos);else if(n.target&&n.target.nodeType==1){let d=t.docView.nearestDesc(n.target,!0);d&&d.node.type.spec.draggable&&d!=t.docView&&(o=I.create(t.state.doc,d.posBefore))}}let a=(o||t.state.selection).content(),{dom:l,text:c,slice:u}=zd(t,a);(!n.dataTransfer.files.length||!Te||wd>120)&&n.dataTransfer.clearData(),n.dataTransfer.setData(cs?"Text":"text/html",l.innerHTML),n.dataTransfer.effectAllowed="copyMove",cs||n.dataTransfer.setData("text/plain",c),t.dragging=new Xd(u,!n[Yd],o)};Re.dragend=t=>{let e=t.dragging;window.setTimeout(()=>{t.dragging==e&&(t.dragging=null)},50)};Ie.dragover=Ie.dragenter=(t,e)=>e.preventDefault();Ie.drop=(t,e)=>{let n=e,r=t.dragging;if(t.dragging=null,!n.dataTransfer)return;let s=t.posAtCoords(Bi(n));if(!s)return;let i=t.state.doc.resolve(s.pos),o=r&&r.slice;o?t.someProp("transformPasted",p=>{o=p(o,t)}):o=$d(t,Gd(n.dataTransfer),cs?null:n.dataTransfer.getData("text/html"),!1,i);let a=!!(r&&!n[Yd]);if(t.someProp("handleDrop",p=>p(t,n,o||w.empty,a))){n.preventDefault();return}if(!o)return;n.preventDefault();let l=o?mm(t.state.doc,i.pos,o):i.pos;l==null&&(l=i.pos);let c=t.state.tr;if(a){let{node:p}=r;p?p.replace(c):c.deleteSelection()}let u=c.mapping.map(l),d=o.openStart==0&&o.openEnd==0&&o.content.childCount==1,h=c.doc;if(d?c.replaceRangeWith(u,u,o.content.firstChild):c.replaceRange(u,u,o),c.doc.eq(h))return;let f=c.doc.resolve(u);if(d&&I.isSelectable(o.content.firstChild)&&f.nodeAfter&&f.nodeAfter.sameMarkup(o.content.firstChild))c.setSelection(new I(f));else{let p=c.mapping.map(l);c.mapping.maps[c.mapping.maps.length-1].forEach((m,g,y,k)=>p=k),c.setSelection(wa(t,f,c.doc.resolve(p)))}t.focus(),t.dispatch(c.setMeta("uiEvent","drop"))};Re.focus=t=>{t.input.lastFocus=Date.now(),t.focused||(t.domObserver.stop(),t.dom.classList.add("ProseMirror-focused"),t.domObserver.start(),t.focused=!0,setTimeout(()=>{t.docView&&t.hasFocus()&&!t.domObserver.currentSelection.eq(t.domSelectionRange())&&At(t)},20))};Re.blur=(t,e)=>{let n=e;t.focused&&(t.domObserver.stop(),t.dom.classList.remove("ProseMirror-focused"),t.domObserver.start(),n.relatedTarget&&t.dom.contains(n.relatedTarget)&&t.domObserver.currentSelection.clear(),t.focused=!1)};Re.beforeinput=(t,e)=>{if(Te&&rt&&e.inputType=="deleteContentBackward"){t.domObserver.flushSoon();let{domChangeCount:r}=t.input;setTimeout(()=>{if(t.input.domChangeCount!=r||(t.dom.blur(),t.focus(),t.someProp("handleKeyDown",i=>i(t,xn(8,"Backspace")))))return;let{$cursor:s}=t.state.selection;s&&s.pos>0&&t.dispatch(t.state.tr.delete(s.pos-1,s.pos).scrollIntoView())},50)}};for(let t in Ie)Re[t]=Ie[t];function ds(t,e){if(t==e)return!0;for(let n in t)if(t[n]!==e[n])return!1;for(let n in e)if(!(n in t))return!1;return!0}class mi{constructor(e,n){this.toDOM=e,this.spec=n||On,this.side=this.spec.side||0}map(e,n,r,s){let{pos:i,deleted:o}=e.mapResult(n.from+s,this.side<0?-1:1);return o?null:new Q(i-r,i-r,this)}valid(){return!0}eq(e){return this==e||e instanceof mi&&(this.spec.key&&this.spec.key==e.spec.key||this.toDOM==e.toDOM&&ds(this.spec,e.spec))}destroy(e){this.spec.destroy&&this.spec.destroy(e)}}class Qt{constructor(e,n){this.attrs=e,this.spec=n||On}map(e,n,r,s){let i=e.map(n.from+s,this.spec.inclusiveStart?-1:1)-r,o=e.map(n.to+s,this.spec.inclusiveEnd?1:-1)-r;return i>=o?null:new Q(i,o,this)}valid(e,n){return n.from<n.to}eq(e){return this==e||e instanceof Qt&&ds(this.attrs,e.attrs)&&ds(this.spec,e.spec)}static is(e){return e.type instanceof Qt}destroy(){}}class Ta{constructor(e,n){this.attrs=e,this.spec=n||On}map(e,n,r,s){let i=e.mapResult(n.from+s,1);if(i.deleted)return null;let o=e.mapResult(n.to+s,-1);return o.deleted||o.pos<=i.pos?null:new Q(i.pos-r,o.pos-r,this)}valid(e,n){let{index:r,offset:s}=e.content.findIndex(n.from),i;return s==n.from&&!(i=e.child(r)).isText&&s+i.nodeSize==n.to}eq(e){return this==e||e instanceof Ta&&ds(this.attrs,e.attrs)&&ds(this.spec,e.spec)}destroy(){}}class Q{constructor(e,n,r){this.from=e,this.to=n,this.type=r}copy(e,n){return new Q(e,n,this.type)}eq(e,n=0){return this.type.eq(e.type)&&this.from+n==e.from&&this.to+n==e.to}map(e,n,r){return this.type.map(e,this,n,r)}static widget(e,n,r){return new Q(e,e,new mi(n,r))}static inline(e,n,r,s){return new Q(e,n,new Qt(r,s))}static node(e,n,r,s){return new Q(e,n,new Ta(r,s))}get spec(){return this.type.spec}get inline(){return this.type instanceof Qt}get widget(){return this.type instanceof mi}}const Wn=[],On={};class W{constructor(e,n){this.local=e.length?e:Wn,this.children=n.length?n:Wn}static create(e,n){return n.length?gi(n,e,0,On):ve}find(e,n,r){let s=[];return this.findInner(e??0,n??1e9,s,0,r),s}findInner(e,n,r,s,i){for(let o=0;o<this.local.length;o++){let a=this.local[o];a.from<=n&&a.to>=e&&(!i||i(a.spec))&&r.push(a.copy(a.from+s,a.to+s))}for(let o=0;o<this.children.length;o+=3)if(this.children[o]<n&&this.children[o+1]>e){let a=this.children[o]+1;this.children[o+2].findInner(e-a,n-a,r,s+a,i)}}map(e,n,r){return this==ve||e.maps.length==0?this:this.mapInner(e,n,0,0,r||On)}mapInner(e,n,r,s,i){let o;for(let a=0;a<this.local.length;a++){let l=this.local[a].map(e,r,s);l&&l.type.valid(n,l)?(o||(o=[])).push(l):i.onRemove&&i.onRemove(this.local[a].spec)}return this.children.length?yy(this.children,o||[],e,n,r,s,i):o?new W(o.sort(Mn),Wn):ve}add(e,n){return n.length?this==ve?W.create(e,n):this.addInner(e,n,0):this}addInner(e,n,r){let s,i=0;e.forEach((a,l)=>{let c=l+r,u;if(u=Qd(n,a,c)){for(s||(s=this.children.slice());i<s.length&&s[i]<l;)i+=3;s[i]==l?s[i+2]=s[i+2].addInner(a,u,c+1):s.splice(i,0,l,l+a.nodeSize,gi(u,a,c+1,On)),i+=3}});let o=Zd(i?eh(n):n,-r);for(let a=0;a<o.length;a++)o[a].type.valid(e,o[a])||o.splice(a--,1);return new W(o.length?this.local.concat(o).sort(Mn):this.local,s||this.children)}remove(e){return e.length==0||this==ve?this:this.removeInner(e,0)}removeInner(e,n){let r=this.children,s=this.local;for(let i=0;i<r.length;i+=3){let o,a=r[i]+n,l=r[i+1]+n;for(let u=0,d;u<e.length;u++)(d=e[u])&&d.from>a&&d.to<l&&(e[u]=null,(o||(o=[])).push(d));if(!o)continue;r==this.children&&(r=this.children.slice());let c=r[i+2].removeInner(o,a+1);c!=ve?r[i+2]=c:(r.splice(i,3),i-=3)}if(s.length){for(let i=0,o;i<e.length;i++)if(o=e[i])for(let a=0;a<s.length;a++)s[a].eq(o,n)&&(s==this.local&&(s=this.local.slice()),s.splice(a--,1))}return r==this.children&&s==this.local?this:s.length||r.length?new W(s,r):ve}forChild(e,n){if(this==ve)return this;if(n.isLeaf)return W.empty;let r,s;for(let a=0;a<this.children.length;a+=3)if(this.children[a]>=e){this.children[a]==e&&(r=this.children[a+2]);break}let i=e+1,o=i+n.content.size;for(let a=0;a<this.local.length;a++){let l=this.local[a];if(l.from<o&&l.to>i&&l.type instanceof Qt){let c=Math.max(i,l.from)-i,u=Math.min(o,l.to)-i;c<u&&(s||(s=[])).push(l.copy(c,u))}}if(s){let a=new W(s.sort(Mn),Wn);return r?new Wt([a,r]):a}return r||ve}eq(e){if(this==e)return!0;if(!(e instanceof W)||this.local.length!=e.local.length||this.children.length!=e.children.length)return!1;for(let n=0;n<this.local.length;n++)if(!this.local[n].eq(e.local[n]))return!1;for(let n=0;n<this.children.length;n+=3)if(this.children[n]!=e.children[n]||this.children[n+1]!=e.children[n+1]||!this.children[n+2].eq(e.children[n+2]))return!1;return!0}locals(e){return Oa(this.localsInner(e))}localsInner(e){if(this==ve)return Wn;if(e.inlineContent||!this.local.some(Qt.is))return this.local;let n=[];for(let r=0;r<this.local.length;r++)this.local[r].type instanceof Qt||n.push(this.local[r]);return n}}W.empty=new W([],[]);W.removeOverlap=Oa;const ve=W.empty;class Wt{constructor(e){this.members=e}map(e,n){const r=this.members.map(s=>s.map(e,n,On));return Wt.from(r)}forChild(e,n){if(n.isLeaf)return W.empty;let r=[];for(let s=0;s<this.members.length;s++){let i=this.members[s].forChild(e,n);i!=ve&&(i instanceof Wt?r=r.concat(i.members):r.push(i))}return Wt.from(r)}eq(e){if(!(e instanceof Wt)||e.members.length!=this.members.length)return!1;for(let n=0;n<this.members.length;n++)if(!this.members[n].eq(e.members[n]))return!1;return!0}locals(e){let n,r=!0;for(let s=0;s<this.members.length;s++){let i=this.members[s].localsInner(e);if(i.length)if(!n)n=i;else{r&&(n=n.slice(),r=!1);for(let o=0;o<i.length;o++)n.push(i[o])}}return n?Oa(r?n:n.sort(Mn)):Wn}static from(e){switch(e.length){case 0:return ve;case 1:return e[0];default:return new Wt(e.every(n=>n instanceof W)?e:e.reduce((n,r)=>n.concat(r instanceof W?r:r.members),[]))}}}function yy(t,e,n,r,s,i,o){let a=t.slice();for(let c=0,u=i;c<n.maps.length;c++){let d=0;n.maps[c].forEach((h,f,p,m)=>{let g=m-p-(f-h);for(let y=0;y<a.length;y+=3){let k=a[y+1];if(k<0||h>k+u-d)continue;let D=a[y]+u-d;f>=D?a[y+1]=h<=D?-2:-1:h>=u&&g&&(a[y]+=g,a[y+1]+=g)}d+=g}),u=n.maps[c].map(u,-1)}let l=!1;for(let c=0;c<a.length;c+=3)if(a[c+1]<0){if(a[c+1]==-2){l=!0,a[c+1]=-1;continue}let u=n.map(t[c]+i),d=u-s;if(d<0||d>=r.content.size){l=!0;continue}let h=n.map(t[c+1]+i,-1),f=h-s,{index:p,offset:m}=r.content.findIndex(d),g=r.maybeChild(p);if(g&&m==d&&m+g.nodeSize==f){let y=a[c+2].mapInner(n,g,u+1,t[c]+i+1,o);y!=ve?(a[c]=d,a[c+1]=f,a[c+2]=y):(a[c+1]=-2,l=!0)}else l=!0}if(l){let c=xy(a,t,e,n,s,i,o),u=gi(c,r,0,o);e=u.local;for(let d=0;d<a.length;d+=3)a[d+1]<0&&(a.splice(d,3),d-=3);for(let d=0,h=0;d<u.children.length;d+=3){let f=u.children[d];for(;h<a.length&&a[h]<f;)h+=3;a.splice(h,0,u.children[d],u.children[d+1],u.children[d+2])}}return new W(e.sort(Mn),a)}function Zd(t,e){if(!e||!t.length)return t;let n=[];for(let r=0;r<t.length;r++){let s=t[r];n.push(new Q(s.from+e,s.to+e,s.type))}return n}function xy(t,e,n,r,s,i,o){function a(l,c){for(let u=0;u<l.local.length;u++){let d=l.local[u].map(r,s,c);d?n.push(d):o.onRemove&&o.onRemove(l.local[u].spec)}for(let u=0;u<l.children.length;u+=3)a(l.children[u+2],l.children[u]+c+1)}for(let l=0;l<t.length;l+=3)t[l+1]==-1&&a(t[l+2],e[l]+i+1);return n}function Qd(t,e,n){if(e.isLeaf)return null;let r=n+e.nodeSize,s=null;for(let i=0,o;i<t.length;i++)(o=t[i])&&o.from>n&&o.to<r&&((s||(s=[])).push(o),t[i]=null);return s}function eh(t){let e=[];for(let n=0;n<t.length;n++)t[n]!=null&&e.push(t[n]);return e}function gi(t,e,n,r){let s=[],i=!1;e.forEach((a,l)=>{let c=Qd(t,a,l+n);if(c){i=!0;let u=gi(c,a,n+l+1,r);u!=ve&&s.push(l,l+a.nodeSize,u)}});let o=Zd(i?eh(t):t,-n).sort(Mn);for(let a=0;a<o.length;a++)o[a].type.valid(e,o[a])||(r.onRemove&&r.onRemove(o[a].spec),o.splice(a--,1));return o.length||s.length?new W(o,s):ve}function Mn(t,e){return t.from-e.from||t.to-e.to}function Oa(t){let e=t;for(let n=0;n<e.length-1;n++){let r=e[n];if(r.from!=r.to)for(let s=n+1;s<e.length;s++){let i=e[s];if(i.from==r.from){i.to!=r.to&&(e==t&&(e=t.slice()),e[s]=i.copy(i.from,r.to),tc(e,s+1,i.copy(r.to,i.to)));continue}else{i.from<r.to&&(e==t&&(e=t.slice()),e[n]=r.copy(r.from,i.from),tc(e,s,r.copy(i.from,r.to)));break}}}return e}function tc(t,e,n){for(;e<t.length&&Mn(n,t[e])>0;)e++;t.splice(e,0,n)}function uo(t){let e=[];return t.someProp("decorations",n=>{let r=n(t.state);r&&r!=ve&&e.push(r)}),t.cursorWrapper&&e.push(W.create(t.state.doc,[t.cursorWrapper.deco])),Wt.from(e)}const by={childList:!0,characterData:!0,characterDataOldValue:!0,attributes:!0,attributeOldValue:!0,subtree:!0},ky=ze&&Yt<=11;class Sy{constructor(){this.anchorNode=null,this.anchorOffset=0,this.focusNode=null,this.focusOffset=0}set(e){this.anchorNode=e.anchorNode,this.anchorOffset=e.anchorOffset,this.focusNode=e.focusNode,this.focusOffset=e.focusOffset}clear(){this.anchorNode=this.focusNode=null}eq(e){return e.anchorNode==this.anchorNode&&e.anchorOffset==this.anchorOffset&&e.focusNode==this.focusNode&&e.focusOffset==this.focusOffset}}class wy{constructor(e,n){this.view=e,this.handleDOMChange=n,this.queue=[],this.flushingSoon=-1,this.observer=null,this.currentSelection=new Sy,this.onCharData=null,this.suppressingSelectionUpdates=!1,this.lastChangedTextNode=null,this.observer=window.MutationObserver&&new window.MutationObserver(r=>{for(let s=0;s<r.length;s++)this.queue.push(r[s]);ze&&Yt<=11&&r.some(s=>s.type=="childList"&&s.removedNodes.length||s.type=="characterData"&&s.oldValue.length>s.target.nodeValue.length)?this.flushSoon():this.flush()}),ky&&(this.onCharData=r=>{this.queue.push({target:r.target,type:"characterData",oldValue:r.prevValue}),this.flushSoon()}),this.onSelectionChange=this.onSelectionChange.bind(this)}flushSoon(){this.flushingSoon<0&&(this.flushingSoon=window.setTimeout(()=>{this.flushingSoon=-1,this.flush()},20))}forceFlush(){this.flushingSoon>-1&&(window.clearTimeout(this.flushingSoon),this.flushingSoon=-1,this.flush())}start(){this.observer&&(this.observer.takeRecords(),this.observer.observe(this.view.dom,by)),this.onCharData&&this.view.dom.addEventListener("DOMCharacterDataModified",this.onCharData),this.connectSelection()}stop(){if(this.observer){let e=this.observer.takeRecords();if(e.length){for(let n=0;n<e.length;n++)this.queue.push(e[n]);window.setTimeout(()=>this.flush(),20)}this.observer.disconnect()}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=!0,setTimeout(()=>this.suppressingSelectionUpdates=!1,50)}onSelectionChange(){if(ql(this.view)){if(this.suppressingSelectionUpdates)return At(this.view);if(ze&&Yt<=11&&!this.view.state.selection.empty){let e=this.view.domSelectionRange();if(e.focusNode&&Rn(e.focusNode,e.focusOffset,e.anchorNode,e.anchorOffset))return this.flushSoon()}this.flush()}}setCurSelection(){this.currentSelection.set(this.view.domSelectionRange())}ignoreSelectionChange(e){if(!e.focusNode)return!0;let n=new Set,r;for(let i=e.focusNode;i;i=ls(i))n.add(i);for(let i=e.anchorNode;i;i=ls(i))if(n.has(i)){r=i;break}let s=r&&this.view.docView.nearestDesc(r);if(s&&s.ignoreMutation({type:"selection",target:r.nodeType==3?r.parentNode:r}))return this.setCurSelection(),!0}pendingRecords(){if(this.observer)for(let e of this.observer.takeRecords())this.queue.push(e);return this.queue}flush(){let{view:e}=this;if(!e.docView||this.flushingSoon>-1)return;let n=this.pendingRecords();n.length&&(this.queue=[]);let r=e.domSelectionRange(),s=!this.suppressingSelectionUpdates&&!this.currentSelection.eq(r)&&ql(e)&&!this.ignoreSelectionChange(r),i=-1,o=-1,a=!1,l=[];if(e.editable)for(let u=0;u<n.length;u++){let d=this.registerMutation(n[u],l);d&&(i=i<0?d.from:Math.min(d.from,i),o=o<0?d.to:Math.max(d.to,o),d.typeOver&&(a=!0))}if(lt&&l.length){let u=l.filter(d=>d.nodeName=="BR");if(u.length==2){let[d,h]=u;d.parentNode&&d.parentNode.parentNode==h.parentNode?h.remove():d.remove()}else{let{focusNode:d}=this.currentSelection;for(let h of u){let f=h.parentNode;f&&f.nodeName=="LI"&&(!d||Cy(e,d)!=f)&&h.remove()}}}let c=null;i<0&&s&&e.input.lastFocus>Date.now()-200&&Math.max(e.input.lastTouch,e.input.lastClick.time)<Date.now()-300&&Pi(r)&&(c=Sa(e))&&c.eq(V.near(e.state.doc.resolve(0),1))?(e.input.lastFocus=0,At(e),this.currentSelection.set(r),e.scrollToSelection()):(i>-1||s)&&(i>-1&&(e.docView.markDirty(i,o),vy(e)),this.handleDOMChange(i,o,a,l),e.docView&&e.docView.dirty?e.updateState(e.state):this.currentSelection.eq(r)||At(e),this.currentSelection.set(r))}registerMutation(e,n){if(n.indexOf(e.target)>-1)return null;let r=this.view.docView.nearestDesc(e.target);if(e.type=="attributes"&&(r==this.view.docView||e.attributeName=="contenteditable"||e.attributeName=="style"&&!e.oldValue&&!e.target.getAttribute("style"))||!r||r.ignoreMutation(e))return null;if(e.type=="childList"){for(let u=0;u<e.addedNodes.length;u++){let d=e.addedNodes[u];n.push(d),d.nodeType==3&&(this.lastChangedTextNode=d)}if(r.contentDOM&&r.contentDOM!=r.dom&&!r.contentDOM.contains(e.target))return{from:r.posBefore,to:r.posAfter};let s=e.previousSibling,i=e.nextSibling;if(ze&&Yt<=11&&e.addedNodes.length)for(let u=0;u<e.addedNodes.length;u++){let{previousSibling:d,nextSibling:h}=e.addedNodes[u];(!d||Array.prototype.indexOf.call(e.addedNodes,d)<0)&&(s=d),(!h||Array.prototype.indexOf.call(e.addedNodes,h)<0)&&(i=h)}let o=s&&s.parentNode==e.target?Se(s)+1:0,a=r.localPosFromDOM(e.target,o,-1),l=i&&i.parentNode==e.target?Se(i):e.target.childNodes.length,c=r.localPosFromDOM(e.target,l,1);return{from:a,to:c}}else return e.type=="attributes"?{from:r.posAtStart-r.border,to:r.posAtEnd+r.border}:(this.lastChangedTextNode=e.target,{from:r.posAtStart,to:r.posAtEnd,typeOver:e.target.nodeValue==e.oldValue})}}let nc=new WeakMap,rc=!1;function vy(t){if(!nc.has(t)&&(nc.set(t,null),["normal","nowrap","pre-line"].indexOf(getComputedStyle(t.dom).whiteSpace)!==-1)){if(t.requiresGeckoHackNode=lt,rc)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."),rc=!0}}function sc(t,e){let n=e.startContainer,r=e.startOffset,s=e.endContainer,i=e.endOffset,o=t.domAtPos(t.state.selection.anchor);return Rn(o.node,o.offset,s,i)&&([n,r,s,i]=[s,i,n,r]),{anchorNode:n,anchorOffset:r,focusNode:s,focusOffset:i}}function Ey(t,e){if(e.getComposedRanges){let s=e.getComposedRanges(t.root)[0];if(s)return sc(t,s)}let n;function r(s){s.preventDefault(),s.stopImmediatePropagation(),n=s.getTargetRanges()[0]}return t.dom.addEventListener("beforeinput",r,!0),document.execCommand("indent"),t.dom.removeEventListener("beforeinput",r,!0),n?sc(t,n):null}function Cy(t,e){for(let n=e.parentNode;n&&n!=t.dom;n=n.parentNode){let r=t.docView.nearestDesc(n,!0);if(r&&r.node.isBlock)return n}return null}function Ty(t,e,n){let{node:r,fromOffset:s,toOffset:i,from:o,to:a}=t.docView.parseRange(e,n),l=t.domSelectionRange(),c,u=l.anchorNode;if(u&&t.dom.contains(u.nodeType==1?u:u.parentNode)&&(c=[{node:u,offset:l.anchorOffset}],Pi(l)||c.push({node:l.focusNode,offset:l.focusOffset})),Te&&t.input.lastKeyCode===8)for(let g=i;g>s;g--){let y=r.childNodes[g-1],k=y.pmViewDesc;if(y.nodeName=="BR"&&!k){i=g;break}if(!k||k.size)break}let d=t.state.doc,h=t.someProp("domParser")||ar.fromSchema(t.state.schema),f=d.resolve(o),p=null,m=h.parse(r,{topNode:f.parent,topMatch:f.parent.contentMatchAt(f.index()),topOpen:!0,from:s,to:i,preserveWhitespace:f.parent.type.whitespace=="pre"?"full":!0,findPositions:c,ruleFromNode:Oy,context:f});if(c&&c[0].pos!=null){let g=c[0].pos,y=c[1]&&c[1].pos;y==null&&(y=g),p={anchor:g+o,head:y+o}}return{doc:m,sel:p,from:o,to:a}}function Oy(t){let e=t.pmViewDesc;if(e)return e.parseRule();if(t.nodeName=="BR"&&t.parentNode){if(Ae&&/^(ul|ol)$/i.test(t.parentNode.nodeName)){let n=document.createElement("div");return n.appendChild(document.createElement("li")),{skip:n}}else if(t.parentNode.lastChild==t||Ae&&/^(tr|table)$/i.test(t.parentNode.nodeName))return{ignore:!0}}else if(t.nodeName=="IMG"&&t.getAttribute("mark-placeholder"))return{ignore:!0};return null}const My=/^(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 _y(t,e,n,r,s){let i=t.input.compositionPendingChanges||(t.composing?t.input.compositionID:0);if(t.input.compositionPendingChanges=0,e<0){let F=t.input.lastSelectionTime>Date.now()-50?t.input.lastSelectionOrigin:null,ht=Sa(t,F);if(ht&&!t.state.selection.eq(ht)){if(Te&&rt&&t.input.lastKeyCode===13&&Date.now()-100<t.input.lastKeyCodeTime&&t.someProp("handleKeyDown",Qi=>Qi(t,xn(13,"Enter"))))return;let Bt=t.state.tr.setSelection(ht);F=="pointer"?Bt.setMeta("pointer",!0):F=="key"&&Bt.scrollIntoView(),i&&Bt.setMeta("composition",i),t.dispatch(Bt)}return}let o=t.state.doc.resolve(e),a=o.sharedDepth(n);e=o.before(a+1),n=t.state.doc.resolve(n).after(a+1);let l=t.state.selection,c=Ty(t,e,n),u=t.state.doc,d=u.slice(c.from,c.to),h,f;t.input.lastKeyCode===8&&Date.now()-100<t.input.lastKeyCodeTime?(h=t.state.selection.to,f="end"):(h=t.state.selection.from,f="start"),t.input.lastKeyCode=null;let p=Ry(d.content,c.doc.content,c.from,h,f);if((ur&&t.input.lastIOSEnter>Date.now()-225||rt)&&s.some(F=>F.nodeType==1&&!My.test(F.nodeName))&&(!p||p.endA>=p.endB)&&t.someProp("handleKeyDown",F=>F(t,xn(13,"Enter")))){t.input.lastIOSEnter=0;return}if(!p)if(r&&l instanceof L&&!l.empty&&l.$head.sameParent(l.$anchor)&&!t.composing&&!(c.sel&&c.sel.anchor!=c.sel.head))p={start:l.from,endA:l.to,endB:l.to};else{if(c.sel){let F=ic(t,t.state.doc,c.sel);if(F&&!F.eq(t.state.selection)){let ht=t.state.tr.setSelection(F);i&&ht.setMeta("composition",i),t.dispatch(ht)}}return}t.input.domChangeCount++,t.state.selection.from<t.state.selection.to&&p.start==p.endB&&t.state.selection instanceof L&&(p.start>t.state.selection.from&&p.start<=t.state.selection.from+2&&t.state.selection.from>=c.from?p.start=t.state.selection.from:p.endA<t.state.selection.to&&p.endA>=t.state.selection.to-2&&t.state.selection.to<=c.to&&(p.endB+=t.state.selection.to-p.endA,p.endA=t.state.selection.to)),ze&&Yt<=11&&p.endB==p.start+1&&p.endA==p.start&&p.start>c.from&&c.doc.textBetween(p.start-c.from-1,p.start-c.from+1)==" "&&(p.start--,p.endA--,p.endB--);let m=c.doc.resolveNoCache(p.start-c.from),g=c.doc.resolveNoCache(p.endB-c.from),y=u.resolve(p.start),k=m.sameParent(g)&&m.parent.inlineContent&&y.end()>=p.endA,D;if((ur&&t.input.lastIOSEnter>Date.now()-225&&(!k||s.some(F=>F.nodeName=="DIV"||F.nodeName=="P"))||!k&&m.pos<c.doc.content.size&&!m.sameParent(g)&&(D=V.findFrom(c.doc.resolve(m.pos+1),1,!0))&&D.head==g.pos)&&t.someProp("handleKeyDown",F=>F(t,xn(13,"Enter")))){t.input.lastIOSEnter=0;return}if(t.state.selection.anchor>p.start&&Ay(u,p.start,p.endA,m,g)&&t.someProp("handleKeyDown",F=>F(t,xn(8,"Backspace")))){rt&&Te&&t.domObserver.suppressSelectionUpdates();return}Te&&rt&&p.endB==p.start&&(t.input.lastAndroidDelete=Date.now()),rt&&!k&&m.start()!=g.start()&&g.parentOffset==0&&m.depth==g.depth&&c.sel&&c.sel.anchor==c.sel.head&&c.sel.head==p.endA&&(p.endB-=2,g=c.doc.resolveNoCache(p.endB-c.from),setTimeout(()=>{t.someProp("handleKeyDown",function(F){return F(t,xn(13,"Enter"))})},20));let q=p.start,J=p.endA,$,oe,Ve;if(k){if(m.pos==g.pos)ze&&Yt<=11&&m.parentOffset==0&&(t.domObserver.suppressSelectionUpdates(),setTimeout(()=>At(t),20)),$=t.state.tr.delete(q,J),oe=u.resolve(p.start).marksAcross(u.resolve(p.endA));else if(p.endA==p.endB&&(Ve=Ny(m.parent.content.cut(m.parentOffset,g.parentOffset),y.parent.content.cut(y.parentOffset,p.endA-y.start()))))$=t.state.tr,Ve.type=="add"?$.addMark(q,J,Ve.mark):$.removeMark(q,J,Ve.mark);else if(m.parent.child(m.index()).isText&&m.index()==g.index()-(g.textOffset?0:1)){let F=m.parent.textBetween(m.parentOffset,g.parentOffset);if(t.someProp("handleTextInput",ht=>ht(t,q,J,F)))return;$=t.state.tr.insertText(F,q,J)}}if($||($=t.state.tr.replace(q,J,c.doc.slice(p.start-c.from,p.endB-c.from))),c.sel){let F=ic(t,$.doc,c.sel);F&&!(Te&&rt&&t.composing&&F.empty&&(p.start!=p.endB||t.input.lastAndroidDelete<Date.now()-100)&&(F.head==q||F.head==$.mapping.map(J)-1)||ze&&F.empty&&F.head==q)&&$.setSelection(F)}oe&&$.ensureMarks(oe),i&&$.setMeta("composition",i),t.dispatch($.scrollIntoView())}function ic(t,e,n){return Math.max(n.anchor,n.head)>e.content.size?null:wa(t,e.resolve(n.anchor),e.resolve(n.head))}function Ny(t,e){let n=t.firstChild.marks,r=e.firstChild.marks,s=n,i=r,o,a,l;for(let u=0;u<r.length;u++)s=r[u].removeFromSet(s);for(let u=0;u<n.length;u++)i=n[u].removeFromSet(i);if(s.length==1&&i.length==0)a=s[0],o="add",l=u=>u.mark(a.addToSet(u.marks));else if(s.length==0&&i.length==1)a=i[0],o="remove",l=u=>u.mark(a.removeFromSet(u.marks));else return null;let c=[];for(let u=0;u<e.childCount;u++)c.push(l(e.child(u)));if(x.from(c).eq(t))return{mark:a,type:o}}function Ay(t,e,n,r,s){if(n-e<=s.pos-r.pos||ho(r,!0,!1)<s.pos)return!1;let i=t.resolve(e);if(!r.parent.isTextblock){let a=i.nodeAfter;return a!=null&&n==e+a.nodeSize}if(i.parentOffset<i.parent.content.size||!i.parent.isTextblock)return!1;let o=t.resolve(ho(i,!0,!0));return!o.parent.isTextblock||o.pos>n||ho(o,!0,!1)<n?!1:r.parent.content.cut(r.parentOffset).eq(o.parent.content)}function ho(t,e,n){let r=t.depth,s=e?t.end():t.pos;for(;r>0&&(e||t.indexAfter(r)==t.node(r).childCount);)r--,s++,e=!1;if(n){let i=t.node(r).maybeChild(t.indexAfter(r));for(;i&&!i.isLeaf;)i=i.firstChild,s++}return s}function Ry(t,e,n,r,s){let i=t.findDiffStart(e,n);if(i==null)return null;let{a:o,b:a}=t.findDiffEnd(e,n+t.size,n+e.size);if(s=="end"){let l=Math.max(0,i-Math.min(o,a));r-=o+l-i}if(o<i&&t.size<e.size){let l=r<=i&&r>=o?i-r:0;i-=l,i&&i<e.size&&oc(e.textBetween(i-1,i+1))&&(i+=l?1:-1),a=i+(a-o),o=i}else if(a<i){let l=r<=i&&r>=a?i-r:0;i-=l,i&&i<t.size&&oc(t.textBetween(i-1,i+1))&&(i+=l?1:-1),o=i+(o-a),a=i}return{start:i,endA:o,endB:a}}function oc(t){if(t.length!=2)return!1;let e=t.charCodeAt(0),n=t.charCodeAt(1);return e>=56320&&e<=57343&&n>=55296&&n<=56319}class Iy{constructor(e,n){this._root=null,this.focused=!1,this.trackWrites=null,this.mounted=!1,this.markCursor=null,this.cursorWrapper=null,this.lastSelectedViewDesc=void 0,this.input=new Zg,this.prevDirectPlugins=[],this.pluginViews=[],this.requiresGeckoHackNode=!1,this.dragging=null,this._props=n,this.state=n.state,this.directPlugins=n.plugins||[],this.directPlugins.forEach(dc),this.dispatch=this.dispatch.bind(this),this.dom=e&&e.mount||document.createElement("div"),e&&(e.appendChild?e.appendChild(this.dom):typeof e=="function"?e(this.dom):e.mount&&(this.mounted=!0)),this.editable=cc(this),lc(this),this.nodeViews=uc(this),this.docView=Vl(this.state.doc,ac(this),uo(this),this.dom,this),this.domObserver=new wy(this,(r,s,i,o)=>_y(this,r,s,i,o)),this.domObserver.start(),Qg(this),this.updatePluginViews()}get composing(){return this.input.composing}get props(){if(this._props.state!=this.state){let e=this._props;this._props={};for(let n in e)this._props[n]=e[n];this._props.state=this.state}return this._props}update(e){e.handleDOMEvents!=this._props.handleDOMEvents&&Ho(this);let n=this._props;this._props=e,e.plugins&&(e.plugins.forEach(dc),this.directPlugins=e.plugins),this.updateStateInner(e.state,n)}setProps(e){let n={};for(let r in this._props)n[r]=this._props[r];n.state=this.state;for(let r in e)n[r]=e[r];this.update(n)}updateState(e){this.updateStateInner(e,this._props)}updateStateInner(e,n){var r;let s=this.state,i=!1,o=!1;e.storedMarks&&this.composing&&(Jd(this),o=!0),this.state=e;let a=s.plugins!=e.plugins||this._props.plugins!=n.plugins;if(a||this._props.plugins!=n.plugins||this._props.nodeViews!=n.nodeViews){let f=uc(this);Py(f,this.nodeViews)&&(this.nodeViews=f,i=!0)}(a||n.handleDOMEvents!=this._props.handleDOMEvents)&&Ho(this),this.editable=cc(this),lc(this);let l=uo(this),c=ac(this),u=s.plugins!=e.plugins&&!s.doc.eq(e.doc)?"reset":e.scrollToSelection>s.scrollToSelection?"to selection":"preserve",d=i||!this.docView.matchesNode(e.doc,c,l);(d||!e.selection.eq(s.selection))&&(o=!0);let h=u=="preserve"&&o&&this.dom.style.overflowAnchor==null&&pg(this);if(o){this.domObserver.stop();let f=d&&(ze||Te)&&!this.composing&&!s.selection.empty&&!e.selection.empty&&Dy(s.selection,e.selection);if(d){let p=Te?this.trackWrites=this.domSelectionRange().focusNode:null;this.composing&&(this.input.compositionNode=hy(this)),(i||!this.docView.update(e.doc,c,l,this))&&(this.docView.updateOuterDeco(c),this.docView.destroy(),this.docView=Vl(e.doc,c,l,this.dom,this)),p&&!this.trackWrites&&(f=!0)}f||!(this.input.mouseDown&&this.domObserver.currentSelection.eq(this.domSelectionRange())&&zg(this))?At(this,f):(Pd(this,e.selection),this.domObserver.setCurSelection()),this.domObserver.start()}this.updatePluginViews(s),!((r=this.dragging)===null||r===void 0)&&r.node&&!s.doc.eq(e.doc)&&this.updateDraggedNode(this.dragging,s),u=="reset"?this.dom.scrollTop=0:u=="to selection"?this.scrollToSelection():h&&mg(h)}scrollToSelection(){let e=this.domSelectionRange().focusNode;if(!this.someProp("handleScrollToSelection",n=>n(this)))if(this.state.selection instanceof I){let n=this.docView.domAfterPos(this.state.selection.from);n.nodeType==1&&Pl(this,n.getBoundingClientRect(),e)}else Pl(this,this.coordsAtPos(this.state.selection.head,1),e)}destroyPluginViews(){let e;for(;e=this.pluginViews.pop();)e.destroy&&e.destroy()}updatePluginViews(e){if(!e||e.plugins!=this.state.plugins||this.directPlugins!=this.prevDirectPlugins){this.prevDirectPlugins=this.directPlugins,this.destroyPluginViews();for(let n=0;n<this.directPlugins.length;n++){let r=this.directPlugins[n];r.spec.view&&this.pluginViews.push(r.spec.view(this))}for(let n=0;n<this.state.plugins.length;n++){let r=this.state.plugins[n];r.spec.view&&this.pluginViews.push(r.spec.view(this))}}else for(let n=0;n<this.pluginViews.length;n++){let r=this.pluginViews[n];r.update&&r.update(this,e)}}updateDraggedNode(e,n){let r=e.node,s=-1;if(this.state.doc.nodeAt(r.from)==r.node)s=r.from;else{let i=r.from+(this.state.doc.content.size-n.doc.content.size);(i>0&&this.state.doc.nodeAt(i))==r.node&&(s=i)}this.dragging=new Xd(e.slice,e.move,s<0?void 0:I.create(this.state.doc,s))}someProp(e,n){let r=this._props&&this._props[e],s;if(r!=null&&(s=n?n(r):r))return s;for(let o=0;o<this.directPlugins.length;o++){let a=this.directPlugins[o].props[e];if(a!=null&&(s=n?n(a):a))return s}let i=this.state.plugins;if(i)for(let o=0;o<i.length;o++){let a=i[o].props[e];if(a!=null&&(s=n?n(a):a))return s}}hasFocus(){if(ze){let e=this.root.activeElement;if(e==this.dom)return!0;if(!e||!this.dom.contains(e))return!1;for(;e&&this.dom!=e&&this.dom.contains(e);){if(e.contentEditable=="false")return!1;e=e.parentElement}return!0}return this.root.activeElement==this.dom}focus(){this.domObserver.stop(),this.editable&&gg(this.dom),At(this),this.domObserver.start()}get root(){let e=this._root;if(e==null){for(let n=this.dom.parentNode;n;n=n.parentNode)if(n.nodeType==9||n.nodeType==11&&n.host)return n.getSelection||(Object.getPrototypeOf(n).getSelection=()=>n.ownerDocument.getSelection()),this._root=n}return e||document}updateRoot(){this._root=null}posAtCoords(e){return Sg(this,e)}coordsAtPos(e,n=1){return Od(this,e,n)}domAtPos(e,n=0){return this.docView.domFromPos(e,n)}nodeDOM(e){let n=this.docView.descAt(e);return n?n.nodeDOM:null}posAtDOM(e,n,r=-1){let s=this.docView.posFromDOM(e,n,r);if(s==null)throw new RangeError("DOM position not inside the editor");return s}endOfTextblock(e,n){return Tg(this,n||this.state,e)}pasteHTML(e,n){return us(this,"",e,!1,n||new ClipboardEvent("paste"))}pasteText(e,n){return us(this,e,null,!0,n||new ClipboardEvent("paste"))}destroy(){this.docView&&(ey(this),this.destroyPluginViews(),this.mounted?(this.docView.update(this.state.doc,[],uo(this),this),this.dom.textContent=""):this.dom.parentNode&&this.dom.parentNode.removeChild(this.dom),this.docView.destroy(),this.docView=null,rg())}get isDestroyed(){return this.docView==null}dispatchEvent(e){return ny(this,e)}dispatch(e){let n=this._props.dispatchTransaction;n?n.call(this,e):this.updateState(this.state.apply(e))}domSelectionRange(){let e=this.domSelection();return Ae&&this.root.nodeType===11&&lg(this.dom.ownerDocument)==this.dom&&Ey(this,e)||e}domSelection(){return this.root.getSelection()}}function ac(t){let e=Object.create(null);return e.class="ProseMirror",e.contenteditable=String(t.editable),t.someProp("attributes",n=>{if(typeof n=="function"&&(n=n(t.state)),n)for(let r in n)r=="class"?e.class+=" "+n[r]:r=="style"?e.style=(e.style?e.style+";":"")+n[r]:!e[r]&&r!="contenteditable"&&r!="nodeName"&&(e[r]=String(n[r]))}),e.translate||(e.translate="no"),[Q.node(0,t.state.doc.content.size,e)]}function lc(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:Q.widget(t.state.selection.head,e,{raw:!0,marks:t.markCursor})}}else t.cursorWrapper=null}function cc(t){return!t.someProp("editable",e=>e(t.state)===!1)}function Dy(t,e){let n=Math.min(t.$anchor.sharedDepth(t.head),e.$anchor.sharedDepth(e.head));return t.$anchor.start(n)!=e.$anchor.start(n)}function uc(t){let e=Object.create(null);function n(r){for(let s in r)Object.prototype.hasOwnProperty.call(e,s)||(e[s]=r[s])}return t.someProp("nodeViews",n),t.someProp("markViews",n),e}function Py(t,e){let n=0,r=0;for(let s in t){if(t[s]!=e[s])return!0;n++}for(let s in e)r++;return n!=r}function dc(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")}var Ly=t=>{if(typeof t!="string")throw new TypeError("Expected a string");return t.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")};const By=Ai(Ly);function zy(t){return!!(t.prev&&t.next&&t.prev.text.full!==t.next.text.full)}function $y(t){return!!(t.prev&&t.next&&t.prev.range.cursor!==t.next.range.cursor)}function Fy(t){return!!(!t.prev&&t.next)}function Vy(t){return!!(t.prev&&!t.next)}function Hy(t){return!!(t.prev&&t.next&&t.prev.range.from!==t.next.range.from)}function Uy(t){return t==="invalid-exit-split"}var jy=["jump-backward-exit","jump-forward-exit"],Wy=["jump-backward-change","jump-forward-change"];function Ky(t){var e,n;return yt(jy,(e=t.exit)==null?void 0:e.exitReason)||yt(Wy,(n=t.change)==null?void 0:n.changeReason)}function hc(t){return!!(t&&t.query.full.length>=t.suggester.matchOffset)}function fc(t){return De(t)&&t instanceof L}function Le(t){const{match:e,changeReason:n,exitReason:r}=t;return{...e,changeReason:n,exitReason:r}}function qy(t,e){const{invalidPrefixCharacters:n,validPrefixCharacters:r}=e;return n?!new RegExp(jo(n)).test(t):new RegExp(jo(r)).test(t)}function Jy(t){const{text:e,regexp:n,$pos:r,suggester:s}=t,i=r.start();let o;return fa(e,n).forEach(a=>{const l=a.input.slice(Math.max(0,a.index-1),a.index);if(qy(l,s)){const c=a.index+i,u=a[0],d=a[1];if(!P(u)||!P(d))return;const h=c+u.length,f=Math.min(h,r.pos),p=f-c;c<r.pos&&h>=r.pos&&(o={range:{from:c,to:h,cursor:f},match:a,query:{partial:u.slice(d.length,p),full:u.slice(d.length)},text:{partial:u.slice(0,p),full:u},textAfter:r.doc.textBetween(h,r.end(),Kt,Kt),textBefore:r.doc.textBetween(i,c,Kt,Kt),suggester:s})}}),o}function th(t){const{$pos:e,suggester:n}=t,{char:r,name:s,startOfLine:i,supportedCharacters:o,matchOffset:a,multiline:l,caseInsensitive:c,unicode:u}=n,d=r0({char:r,matchOffset:a,startOfLine:i,supportedCharacters:o,multiline:l,caseInsensitive:c,unicode:u}),h=e.doc.textBetween(e.before(),e.end(),Kt,Kt);return Jy({suggester:n,text:h,regexp:d,$pos:e,char:r,name:s})}function nh(t){const{state:e,match:n}=t;try{return th({$pos:e.doc.resolve(n.range.cursor),suggester:n.suggester})}catch{return}}function rh(t){const{prev:e,next:n,state:r}=t;return!n&&e.range.from>=r.doc.nodeSize?{exit:Le({match:e,exitReason:"delete"})}:!n||!e.query.partial?{exit:Le({match:e,exitReason:"invalid-exit-split"})}:e.range.to===n.range.cursor?{exit:Le({match:n,exitReason:"exit-end"})}:e.query.partial?{exit:Le({match:n,exitReason:"exit-split"})}:{}}function Gy(t){const{prev:e,next:n,state:r}=t,s=M(),i=nh({state:r,match:e}),{exit:o}=i&&i.query.full!==e.query.full?rh({prev:e,next:i,state:r}):s;return e.range.from<n.range.from?{exit:o??Le({match:e,exitReason:"jump-forward-exit"}),change:Le({match:n,changeReason:"jump-forward-change"})}:{exit:o??Le({match:e,exitReason:"jump-backward-exit"}),change:Le({match:n,changeReason:"jump-backward-change"})}}function Xy(t){const{match:e,state:n,$pos:r}=t,{selection:s}=n,i=nh({match:e,state:n});return!i||i.text.full!==e.text.full?rh({prev:e,next:i,state:n}):!s.empty&&(s.from<=e.range.from||s.to>=e.range.to)?{exit:Le({match:e,exitReason:"selection-outside"})}:r.pos>e.range.to?{exit:Le({match:e,exitReason:"move-end"})}:r.pos<=e.range.from?{exit:Le({match:e,exitReason:"move-start"})}:{}}function Yy(t){const{prev:e,next:n,state:r,$pos:s}=t,i=M();if(!e&&!n)return i;const o={prev:e,next:n};return Hy(o)?Gy({prev:o.prev,next:o.next,state:r}):Fy(o)?{change:Le({match:o.next,changeReason:"start"})}:Vy(o)?Xy({$pos:s,match:o.prev,state:r}):zy(o)?{change:Le({match:o.next,changeReason:"change-character"})}:$y(o)?{change:Le({match:o.next,changeReason:r.selection.empty?"move":"selection-inside"})}:i}function pc(t,e){for(let n=t.depth;n>0;n--){const r=t.node(n);if(e.includes(r.type.name))return!0}return!1}function Uo(t,e){const{$from:n,$to:r}=t;return sh(t,e)?!0:zu(n.pos,r.pos).some(s=>Zy(n.doc.resolve(s),e))}function sh(t,e){const{$from:n,$to:r}=t,s=new Set((n.marksAcross(r)??[]).map(i=>i.type.name));return e.some(i=>s.has(i))}function Zy(t,e){const n=new Set(t.marks().map(r=>r.type.name));return e.some(r=>n.has(r))}function Qy(t,e){const{$cursor:n}=e,{validMarks:r,validNodes:s,invalidMarks:i,invalidNodes:o}=t;return!r&&!s&&nn(i)&&nn(o)?!0:!(r&&!sh(e,r)||s&&!pc(n,s)||!r&&Uo(e,i)||!s&&pc(n,o))}function mc(t){const{suggesters:e,$pos:n,selectionEmpty:r}=t;for(const s of e)if(!(s.emptySelectionsOnly&&!r))try{const i=th({suggester:s,$pos:n});if(!i)continue;const o={$from:n.doc.resolve(i.range.from),$to:n.doc.resolve(i.range.to),$cursor:n};if(Qy(s,o)&&s.isValidPosition(o,i))return i}catch{}}function jo(t){return up(t)?t.source:t}function e0(t){return t?"^":""}function t0(t,e){return`(?:${jo(t)}){${e},}`}function n0(t){return P(t)?new RegExp(By(t)):t}function r0(t){const{char:e,matchOffset:n,startOfLine:r,supportedCharacters:s,captureChar:i=!0,caseInsensitive:o=!1,multiline:a=!1,unicode:l=!1}=t,c=`g${a?"m":""}${o?"i":""}${l?"u":""}`;let u=n0(e).source;return i&&(u=`(${u})`),new RegExp(`${e0(r)}${u}${t0(s,n)}`,c)}var s0={appendTransaction:!1,priority:50,ignoredTag:"span",matchOffset:0,disableDecorations:!1,startOfLine:!1,suggestClassName:"suggest",suggestTag:"span",supportedCharacters:/\w+/,validPrefixCharacters:/^[\s\0]?$/,invalidPrefixCharacters:null,ignoredClassName:null,invalidMarks:[],invalidNodes:[],validMarks:null,validNodes:null,isValidPosition:()=>!0,checkNextValidSelection:null,emptySelectionsOnly:!1,caseInsensitive:!1,multiline:!1,unicode:!1,captureChar:!0},ih="__ignore_prosemirror_suggest_update__",ws,nr,he,Ot,vn,nt,ce,Mt,En,rr,i0=(rr=class{constructor(e){ft(this,ws,!1);ft(this,nr,!1);ft(this,he);ft(this,Ot);ft(this,vn);ft(this,nt,M());Me(this,"view");ft(this,ce,W.empty);ft(this,Mt,!1);ft(this,En,!1);Me(this,"setMarkRemoved",()=>{X(this,Mt,!0)});Me(this,"findNextTextSelection",e=>{const n=e.$from.doc,r=Math.min(n.nodeSize-2,e.to+1),s=n.resolve(r),i=V.findFrom(s,1,!0);if(fc(i))return i});Me(this,"ignoreNextExit",()=>{X(this,nr,!0)});Me(this,"addIgnored",({from:e,name:n,specific:r=!1})=>{const s=B(this,he).find(c=>c.name===n);if(!s)throw new Error(`No suggester exists for the name provided: ${n}`);const i=P(s.char)?s.char.length:1,o=e+i,a=s.ignoredClassName?{class:s.ignoredClassName}:{},l=Q.inline(e,o,{nodeName:s.ignoredTag,...a},{name:n,specific:r,char:s.char});X(this,ce,B(this,ce).add(this.view.state.doc,[l]))});Me(this,"removeIgnored",({from:e,name:n})=>{const r=B(this,he).find(o=>o.name===n);if(!r)throw new Error(`No suggester exists for the name provided: ${n}`);const s=P(r.char)?r.char.length:1,i=B(this,ce).find(e,e+s)[0];!i||i.spec.name!==n||X(this,ce,B(this,ce).remove([i]))});Me(this,"clearIgnored",e=>{if(!e){X(this,ce,W.empty);return}const r=B(this,ce).find().filter(({spec:s})=>s.name===e);X(this,ce,B(this,ce).remove(r))});Me(this,"findMatchAtPosition",(e,n)=>{const r=n?B(this,he).filter(s=>s.name===n):B(this,he);return mc({suggesters:r,$pos:e,docChanged:!1,selectionEmpty:!0})});Me(this,"setLastChangeFromAppend",()=>{X(this,En,!0)});const n=gc();X(this,he,e.map(n)),X(this,he,ir(B(this,he),(r,s)=>s.priority-r.priority))}static create(e){return new rr(e)}get decorationSet(){return B(this,ce)}get removed(){return B(this,Mt)}get match(){return B(this,Ot)?B(this,Ot):B(this,vn)&&B(this,nt).exit?B(this,vn):void 0}init(e){return this.view=e,this}createProps(e){const{name:n,char:r}=e.suggester;return{view:this.view,addIgnored:this.addIgnored,clearIgnored:this.clearIgnored,ignoreNextExit:this.ignoreNextExit,setMarkRemoved:this.setMarkRemoved,name:n,char:r,...e}}shouldRunExit(){return B(this,nr)?(X(this,nr,!1),!1):!0}updateWithNextSelection(e){var r,s,i;const n=this.findNextTextSelection(e.selection);if(n)for(const o of B(this,he)){const a=(r=B(this,nt).change)==null?void 0:r.suggester.name,l=(s=B(this,nt).exit)==null?void 0:s.suggester.name;(i=o.checkNextValidSelection)==null||i.call(o,n.$from,e,{change:a,exit:l})}}changeHandler(e,n){const{change:r,exit:s}=B(this,nt),i=this.match;if(!r&&!s||!hc(i))return;const o=n===(s==null?void 0:s.suggester.appendTransaction)&&this.shouldRunExit(),a=n===(r==null?void 0:r.suggester.appendTransaction);if(!(!o&&!a)){if(r&&s&&Ky({change:r,exit:s})){const l=this.createProps(s),c=this.createProps(r),u=s.range.from<r.range.from;o&&s.suggester.onChange(l,e),a&&r.suggester.onChange(c,e),o&&X(this,Mt,!1);return}r&&a&&r.suggester.onChange(this.createProps(r),e),s&&o&&(s.suggester.onChange(this.createProps(s),e),X(this,Mt,!1),Uy(s.exitReason)&&X(this,nt,M()))}}mapIgnoredDecorations(e){const n=B(this,ce).map(e.mapping,e.doc),s=n.find().filter(({from:i,to:o,spec:a})=>{const l=P(a.char)?a.char.length:1;return o-i!==l});X(this,ce,n.remove(s))}shouldIgnoreMatch({range:e,suggester:{name:n}}){return B(this,ce).find().some(({spec:i,from:o})=>o!==e.from?!1:i.specific?i.name===n:!0)}resetState(){X(this,nt,M()),X(this,Ot,void 0),X(this,Mt,!1),X(this,En,!1)}updateReasons(e){const{$pos:n,state:r}=e,s=B(this,ws),i=B(this,he),o=r.selection.empty,a=fc(r.selection)?mc({suggesters:i,$pos:n,docChanged:s,selectionEmpty:o}):void 0;X(this,Ot,a&&this.shouldIgnoreMatch(a)?void 0:a),X(this,nt,Yy({next:B(this,Ot),prev:B(this,vn),state:r,$pos:n}))}addSuggester(e){const n=B(this,he).find(s=>s.name===e.name),r=gc();if(n)X(this,he,B(this,he).map(s=>s===n?r(e):s));else{const s=[...B(this,he),r(e)];X(this,he,ir(s,(i,o)=>o.priority-i.priority))}return()=>this.removeSuggester(e.name)}removeSuggester(e){const n=P(e)?e:e.name;X(this,he,B(this,he).filter(r=>r.name!==n)),this.clearIgnored(n)}toJSON(){return this.match}apply(e){const{exit:n,change:r}=B(this,nt);if(B(this,En)&&(X(this,En,!1),!(n!=null&&n.suggester.appendTransaction)&&!(r!=null&&r.suggester.appendTransaction)))return this;const{tr:s,state:i}=e,o=s.docChanged||s.selectionSet;return s.getMeta(ih)||!o&&!B(this,Mt)?this:(X(this,ws,s.docChanged),this.mapIgnoredDecorations(s),n&&this.resetState(),X(this,vn,B(this,Ot)),this.updateReasons({$pos:s.selection.$from,state:i}),this)}createDecorations(e){const n=this.match;if(!hc(n))return B(this,ce);const{disableDecorations:r}=n.suggester;if(ee(r)?r(e,n):r)return B(this,ce);const{range:i,suggester:o}=n,{name:a,suggestTag:l,suggestClassName:c}=o,{from:u,to:d}=i;return this.shouldIgnoreMatch(n)?B(this,ce):B(this,ce).add(e.doc,[Q.inline(u,d,{nodeName:l,class:a?`${c} suggest-${a}`:c},{name:a})])}},ws=new WeakMap,nr=new WeakMap,he=new WeakMap,Ot=new WeakMap,vn=new WeakMap,nt=new WeakMap,ce=new WeakMap,Mt=new WeakMap,En=new WeakMap,rr);function gc(){const t=new Set;return e=>{if(t.has(e.name))throw new Error(`A suggester already exists with the name '${e.name}'. The name provided must be unique.`);const n={...s0,...e};return t.add(e.name),n}}var oh=new br("suggest");function Ma(t){return oh.getState(t)}function yc(t,e){return Ma(t).addSuggester(e)}function xc(t){t.setMeta(ih,!0)}function o0(t,e){return Ma(t).removeSuggester(e)}function a0(...t){const e=i0.create(t);return new dn({key:oh,view:n=>(e.init(n),{update:r=>e.changeHandler(r.state.tr,!1)}),state:{init:()=>e,apply:(n,r,s,i)=>e.apply({tr:n,state:i})},appendTransaction:(n,r,s)=>{const i=s.tr;return e.updateWithNextSelection(i),e.changeHandler(i,!0),i.docChanged||i.steps.length>0||i.selectionSet||i.storedMarksSet?(e.setLastChangeFromAppend(),i):null},props:{decorations:n=>e.createDecorations(n)}})}function _a(t,e){const n=Object.getPrototypeOf(e);let r=t.selection,s=t.doc,i=t.storedMarks;const o=M();for(const[a,l]of Object.entries(e))o[a]={value:l};return Object.create(n,{...o,storedMarks:{get(){return i}},selection:{get(){return r}},doc:{get(){return s}},tr:{get(){return r=t.selection,s=t.doc,i=t.storedMarks,t}}})}function Fs(t){return({state:e,dispatch:n,view:r,tr:s})=>t(_a(s,e),n,r)}function bc(t){return e=>{var n;return R(e.dispatch===void 0||e.dispatch===((n=e.view)==null?void 0:n.dispatch),{code:b.NON_CHAINABLE_COMMAND}),t(e)}}var st={get isBrowser(){return!!(typeof window<"u"&&typeof window.document<"u"&&window.navigator&&window.navigator.userAgent)},get isJSDOM(){return st.isBrowser&&window.navigator.userAgent.includes("jsdom")},get isNode(){return typeof process<"u"&&process.versions!=null&&process.versions.node!=null},get isIos(){return st.isBrowser&&/iPod|iPhone|iPad/.test(navigator.platform)},get isMac(){return st.isBrowser&&/Mac|iPod|iPhone|iPad/.test(navigator.platform)},get isApple(){return st.isNode?process.platform==="darwin":st.isBrowser?/Mac|iPod|iPhone|iPad/.test(window.navigator.platform):!1},get isDevelopment(){return!1},get isTest(){return!1},get isProduction(){return!0}};function zt(t,e){var n;const r=_0(t);return((n=r==null?void 0:r.getComputedStyle(t))==null?void 0:n.getPropertyValue(e))??""}function Wo(t){return De(t)&&Ge(t.nodeType)&&P(t.nodeName)}function $e(t){return Wo(t)&&t.nodeType===1}function Na(t){const{types:e,node:n}=t;if(!n)return!1;const r=s=>s===n.type||s===n.type.name;return me(e)?e.some(r):r(e)}function zi(t){const{predicate:e,selection:n}=t,r=ch(n)?n.selection.$from:Ra(n)?n.$from:n;for(let s=r.depth;s>0;s--){const i=r.node(s),o=s>0?r.before(s):0,a=r.start(s),l=o+i.nodeSize;if(e(i,o))return{pos:o,depth:s,node:i,start:a,end:l}}}function l0(t){const{depth:e}=t,n=e>0?t.before(e):0,r=t.node(e),s=t.start(e),i=n+r.nodeSize;return{pos:n,start:s,node:r,end:i,depth:e}}function hs(t){const{types:e,selection:n}=t;return zi({predicate:r=>Na({types:e,node:r}),selection:n})}function c0(t){const{types:e,selection:n}=t;if(!(!Fi(n)||!Na({types:e,node:n.node})))return{pos:n.$from.pos,depth:n.$from.depth,start:n.$from.start(),end:n.$from.pos+n.node.nodeSize,node:n.node}}function ah(t){return Ra(t)?t.empty:t.selection.empty}function u0(t){return t.docChanged||t.selectionSet}function d0(t){return!!fs(t)}function fs(t){const{state:e,type:n,attrs:r}=t,{selection:s,doc:i}=e,o=P(n)?i.type.schema.nodes[n]:n;R(o,{code:b.SCHEMA,message:`No node exists for ${n}`});const a=c0({selection:s,types:n})??zi({predicate:l=>l.type===o,selection:s});return!r||ni(r)||!a||a.node.hasMarkup(o,{...a.node.attrs,...r})?a:void 0}function yi(...t){return e=>{if(!dl(t))return!1;const[n,...r]=t;let s=!1;const i=(...l)=>()=>{if(!dl(l))return!1;s=!0;const[,...c]=l;return yi(...l)({...e,next:i(...c)})},o=i(...r),a=n({...e,next:o});return s||a?a:o()}}function h0(t,e){const n=new Map,r=M();for(const s of t)for(const[i,o]of fe(s)){const l=[...n.get(i)??[],o],c=yi(...l);n.set(i,l),r[i]=e(c)}return r}function f0(t){return h0(t,e=>(n,r,s)=>e({state:n,dispatch:r,view:s,tr:n.tr,next:()=>!1}))}function Aa(t,e){const n=t.attrs??{};return Object.entries(e).every(([r,s])=>n[r]===s)}function kr(t){return De(t)}function Sr(t,e){return me(e)?yt(e,t[It]):e===t[It]}function p0(t){return De(t)&&t instanceof _o}function m0(t,e){return P(t)?re(e.nodes,t):t}function lh(t){return De(t)&&t instanceof Es}function g0(t,e){return P(t)?re(e.marks,t):t}function $i(t){return De(t)&&t instanceof Xt}function y0(t){return De(t)&&t instanceof x}function x0(t){return De(t)&&t instanceof U}function ch(t){return De(t)&&t instanceof kn}function wr(t){return De(t)&&t instanceof L}function Ra(t){return De(t)&&t instanceof V}function b0(t){return De(t)&&t instanceof or}function kc(t){const{trState:e,from:n,to:r,type:s,attrs:i={}}=t,{doc:o}=e,a=g0(s,o.type.schema);if(Object.keys(i).length===0)return o.rangeHasMark(n,r,a);let l=!1;return r>n&&o.nodesBetween(n,r,c=>l?!1:(l=(c.marks??[]).some(d=>d.type!==a?!1:Aa(d,i)),!l)),l}function Fi(t){return De(t)&&t instanceof I}function uh(t){const{trState:e,type:n,attrs:r={},from:s,to:i}=t,{selection:o,doc:a,storedMarks:l}=e,c=P(n)?a.type.schema.marks[n]:n;if(R(c,{code:b.SCHEMA,message:`Mark type: ${n} does not exist on the current schema.`}),s&&i)try{return Math.max(s,i)<a.nodeSize&&kc({...t,from:s,to:i})}catch{return!1}return o.empty?(l??o.$from.marks()).some(d=>d.type!==n?!1:Aa(d,r??{})):kc({...t,from:o.from,to:o.to})}function Ia(t,e={}){const n=k0(t.type.schema);if(!n)return!1;const{ignoreAttributes:r,ignoreDocAttributes:s}=e;return r?dh(n,t):s?n.content.eq(t.content):n.eq(t)}function dh(t,e){if(t===e)return!0;const n=t.type===e.type&&U.sameSet(t.marks,e.marks);function r(){if(t.content===e.content)return!0;if(t.content.size!==e.content.size)return!1;const s=[],i=[];t.content.forEach(o=>s.push(o)),e.content.forEach(o=>i.push(o));for(const[o,a]of s.entries()){const l=i[o];if(!l||!dh(a,l))return!1}return!0}return n&&r()}function k0(t){var e;return((e=t.nodes.doc)==null?void 0:e.createAndFill())??void 0}function Vi(t){for(const e of Object.values(t.nodes))if(e.name!=="doc"&&(e.isBlock||e.isTextblock))return e;R(!1,{code:b.SCHEMA,message:"No default block node found for the provided schema."})}function S0(t){return t.type===Vi(t.type.schema)}function Da(t){return!!t&&t.type.isBlock&&!t.textContent&&!t.childCount}function Bn(t,e,n){const r=t.parent.childAfter(t.parentOffset);if(!r.node)return;const s=P(e)?e:e.name,i=r.node.marks.find(({type:d})=>d.name===s);let o=t.index(),a=t.start()+r.offset,l=o+1,c=a+r.node.nodeSize;if(!i)return n&&c<n.pos?Bn(t.doc.resolve(c+1),e,n):void 0;for(;o>0&&i.isInSet(t.parent.child(o-1).marks);)o-=1,a-=t.parent.child(o).nodeSize;for(;l<t.parent.childCount&&i.isInSet(t.parent.child(l).marks);)c+=t.parent.child(l).nodeSize,l+=1;const u=t.doc.textBetween(a,c,da,`
|
|
37
|
+
`);return{dom:l,text:h,slice:e}}function Fd(t,e,n,r,s){let i=s.parent.type.spec.code,o,a;if(!n&&!e)return null;let l=e&&(r||i||!n);if(l){if(t.someProp("transformPastedText",h=>{e=h(e,i||r,t)}),i)return e?new w(x.from(t.state.schema.text(e.replace(/\r\n?/g,`
|
|
38
|
+
`))),0,0):w.empty;let d=t.someProp("clipboardTextParser",h=>h(e,s,r,t));if(d)a=d;else{let h=s.marks(),{schema:f}=t.state,p=Dt.fromSchema(f);o=document.createElement("div"),e.split(/(?:\r\n?|\n)+/).forEach(m=>{let g=o.appendChild(document.createElement("p"));m&&g.appendChild(p.serializeNode(f.text(m,h)))})}}else t.someProp("transformPastedHTML",d=>{n=d(n,t)}),o=qg(n),Os&&Jg(o);let c=o&&o.querySelector("[data-pm-slice]"),u=c&&/^(\d+) (\d+)(?: -(\d+))? (.*)/.exec(c.getAttribute("data-pm-slice")||"");if(u&&u[3])for(let d=+u[3];d>0;d--){let h=o.firstChild;for(;h&&h.nodeType!=1;)h=h.nextSibling;if(!h)break;o=h}if(a||(a=(t.someProp("clipboardParser")||t.someProp("domParser")||ar.fromSchema(t.state.schema)).parseSlice(o,{preserveWhitespace:!!(l||u),context:s,ruleFromNode(h){return h.nodeName=="BR"&&!h.nextSibling&&h.parentNode&&!Wg.test(h.parentNode.nodeName)?{ignore:!0}:null}})),u)a=Gg(ec(a,+u[1],+u[2]),u[4]);else if(a=w.maxOpen(Kg(a.content,s),!0),a.openStart||a.openEnd){let d=0,h=0;for(let f=a.content.firstChild;d<a.openStart&&!f.type.spec.isolating;d++,f=f.firstChild);for(let f=a.content.lastChild;h<a.openEnd&&!f.type.spec.isolating;h++,f=f.lastChild);a=ec(a,d,h)}return t.someProp("transformPasted",d=>{a=d(a,t)}),a}const Wg=/^(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 Kg(t,e){if(t.childCount<2)return t;for(let n=e.depth;n>=0;n--){let s=e.node(n).contentMatchAt(e.index(n)),i,o=[];if(t.forEach(a=>{if(!o)return;let l=s.findWrapping(a.type),c;if(!l)return o=null;if(c=o.length&&i.length&&Hd(l,i,a,o[o.length-1],0))o[o.length-1]=c;else{o.length&&(o[o.length-1]=Ud(o[o.length-1],i.length));let u=Vd(a,l);o.push(u),s=s.matchType(u.type),i=l}}),o)return x.from(o)}return t}function Vd(t,e,n=0){for(let r=e.length-1;r>=n;r--)t=e[r].create(null,x.from(t));return t}function Hd(t,e,n,r,s){if(s<t.length&&s<e.length&&t[s]==e[s]){let i=Hd(t,e,n,r.lastChild,s+1);if(i)return r.copy(r.content.replaceChild(r.childCount-1,i));if(r.contentMatchAt(r.childCount).matchType(s==t.length-1?n.type:t[s+1]))return r.copy(r.content.append(x.from(Vd(n,t,s+1))))}}function Ud(t,e){if(e==0)return t;let n=t.content.replaceChild(t.childCount-1,Ud(t.lastChild,e-1)),r=t.contentMatchAt(t.childCount).fillBefore(x.empty,!0);return t.copy(n.append(r))}function Vo(t,e,n,r,s,i){let o=e<0?t.firstChild:t.lastChild,a=o.content;return t.childCount>1&&(i=0),s<r-1&&(a=Vo(a,e,n,r,s+1,i)),s>=n&&(a=e<0?o.contentMatchAt(0).fillBefore(a,i<=s).append(a):a.append(o.contentMatchAt(o.childCount).fillBefore(x.empty,!0))),t.replaceChild(e<0?0:t.childCount-1,o.copy(a))}function ec(t,e,n){return e<t.openStart&&(t=new w(Vo(t.content,-1,e,t.openStart,0,t.openEnd),e,t.openEnd)),n<t.openEnd&&(t=new w(Vo(t.content,1,n,t.openEnd,0,0),t.openStart,n)),t}const jd={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 tc=null;function Wd(){return tc||(tc=document.implementation.createHTMLDocument("title"))}function qg(t){let e=/^(\s*<meta [^>]*>)*/.exec(t);e&&(t=t.slice(e[0].length));let n=Wd().createElement("div"),r=/<([a-z][^>\s]+)/i.exec(t),s;if((s=r&&jd[r[1].toLowerCase()])&&(t=s.map(i=>"<"+i+">").join("")+t+s.map(i=>"</"+i+">").reverse().join("")),n.innerHTML=t,s)for(let i=0;i<s.length;i++)n=n.querySelector(s[i])||n;return n}function Jg(t){let e=t.querySelectorAll(Te?"span:not([class]):not([style])":"span.Apple-converted-space");for(let n=0;n<e.length;n++){let r=e[n];r.childNodes.length==1&&r.textContent==" "&&r.parentNode&&r.parentNode.replaceChild(t.ownerDocument.createTextNode(" "),r)}}function Gg(t,e){if(!t.size)return t;let n=t.content.firstChild.type.schema,r;try{r=JSON.parse(e)}catch{return t}let{content:s,openStart:i,openEnd:o}=t;for(let a=r.length-2;a>=0;a-=2){let l=n.nodes[r[a]];if(!l||l.hasRequiredAttrs())break;s=x.from(l.create(r[a+1],s)),i++,o++}return new w(s,i,o)}const Re={},Ie={},Xg={touchstart:!0,touchmove:!0};class Yg{constructor(){this.shiftKey=!1,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=!1,this.compositionNode=null,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 Zg(t){for(let e in Re){let n=Re[e];t.dom.addEventListener(e,t.input.eventHandlers[e]=r=>{ey(t,r)&&!va(t,r)&&(t.editable||!(r.type in Ie))&&n(t,r)},Xg[e]?{passive:!0}:void 0)}Ae&&t.dom.addEventListener("input",()=>null),Ho(t)}function Gt(t,e){t.input.lastSelectionOrigin=e,t.input.lastSelectionTime=Date.now()}function Qg(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 Ho(t){t.someProp("handleDOMEvents",e=>{for(let n in e)t.input.eventHandlers[n]||t.dom.addEventListener(n,t.input.eventHandlers[n]=r=>va(t,r))})}function va(t,e){return t.someProp("handleDOMEvents",n=>{let r=n[e.type];return r?r(t,e)||e.defaultPrevented:!1})}function ey(t,e){if(!e.bubbles)return!0;if(e.defaultPrevented)return!1;for(let n=e.target;n!=t.dom;n=n.parentNode)if(!n||n.nodeType==11||n.pmViewDesc&&n.pmViewDesc.stopEvent(e))return!1;return!0}function ty(t,e){!va(t,e)&&Re[e.type]&&(t.editable||!(e.type in Ie))&&Re[e.type](t,e)}Ie.keydown=(t,e)=>{let n=e;if(t.input.shiftKey=n.keyCode==16||n.shiftKey,!qd(t,n)&&(t.input.lastKeyCode=n.keyCode,t.input.lastKeyCodeTime=Date.now(),!(rt&&Te&&n.keyCode==13)))if(n.keyCode!=229&&t.domObserver.forceFlush(),ur&&n.keyCode==13&&!n.ctrlKey&&!n.altKey&&!n.metaKey){let r=Date.now();t.input.lastIOSEnter=r,t.input.lastIOSEnterFallbackTimeout=setTimeout(()=>{t.input.lastIOSEnter==r&&(t.someProp("handleKeyDown",s=>s(t,xn(13,"Enter"))),t.input.lastIOSEnter=0)},200)}else t.someProp("handleKeyDown",r=>r(t,n))||jg(t,n)?n.preventDefault():Gt(t,"key")};Ie.keyup=(t,e)=>{e.keyCode==16&&(t.input.shiftKey=!1)};Ie.keypress=(t,e)=>{let n=e;if(qd(t,n)||!n.charCode||n.ctrlKey&&!n.altKey||qe&&n.metaKey)return;if(t.someProp("handleKeyPress",s=>s(t,n))){n.preventDefault();return}let r=t.state.selection;if(!(r instanceof L)||!r.$from.sameParent(r.$to)){let s=String.fromCharCode(n.charCode);!/[\r\n]/.test(s)&&!t.someProp("handleTextInput",i=>i(t,r.$from.pos,r.$to.pos,s))&&t.dispatch(t.state.tr.insertText(s).scrollIntoView()),n.preventDefault()}};function Bi(t){return{left:t.clientX,top:t.clientY}}function ny(t,e){let n=e.x-t.clientX,r=e.y-t.clientY;return n*n+r*r<100}function Ea(t,e,n,r,s){if(r==-1)return!1;let i=t.state.doc.resolve(r);for(let o=i.depth+1;o>0;o--)if(t.someProp(e,a=>o>i.depth?a(t,n,i.nodeAfter,i.before(o),s,!0):a(t,n,i.node(o),i.before(o),s,!1)))return!0;return!1}function er(t,e,n){t.focused||t.focus();let r=t.state.tr.setSelection(e);r.setMeta("pointer",!0),t.dispatch(r)}function ry(t,e){if(e==-1)return!1;let n=t.state.doc.resolve(e),r=n.nodeAfter;return r&&r.isAtom&&I.isSelectable(r)?(er(t,new I(n)),!0):!1}function sy(t,e){if(e==-1)return!1;let n=t.state.selection,r,s;n instanceof I&&(r=n.node);let i=t.state.doc.resolve(e);for(let o=i.depth+1;o>0;o--){let a=o>i.depth?i.nodeAfter:i.node(o);if(I.isSelectable(a)){r&&n.$from.depth>0&&o>=n.$from.depth&&i.before(n.$from.depth+1)==n.$from.pos?s=i.before(n.$from.depth):s=i.before(o);break}}return s!=null?(er(t,I.create(t.state.doc,s)),!0):!1}function iy(t,e,n,r,s){return Ea(t,"handleClickOn",e,n,r)||t.someProp("handleClick",i=>i(t,e,r))||(s?sy(t,n):ry(t,n))}function oy(t,e,n,r){return Ea(t,"handleDoubleClickOn",e,n,r)||t.someProp("handleDoubleClick",s=>s(t,e,r))}function ay(t,e,n,r){return Ea(t,"handleTripleClickOn",e,n,r)||t.someProp("handleTripleClick",s=>s(t,e,r))||ly(t,n,r)}function ly(t,e,n){if(n.button!=0)return!1;let r=t.state.doc;if(e==-1)return r.inlineContent?(er(t,L.create(r,0,r.content.size)),!0):!1;let s=r.resolve(e);for(let i=s.depth+1;i>0;i--){let o=i>s.depth?s.nodeAfter:s.node(i),a=s.before(i);if(o.inlineContent)er(t,L.create(r,a+1,a+1+o.content.size));else if(I.isSelectable(o))er(t,I.create(r,a));else continue;return!0}}function Ca(t){return pi(t)}const Kd=qe?"metaKey":"ctrlKey";Re.mousedown=(t,e)=>{let n=e;t.input.shiftKey=n.shiftKey;let r=Ca(t),s=Date.now(),i="singleClick";s-t.input.lastClick.time<500&&ny(n,t.input.lastClick)&&!n[Kd]&&(t.input.lastClick.type=="singleClick"?i="doubleClick":t.input.lastClick.type=="doubleClick"&&(i="tripleClick")),t.input.lastClick={time:s,x:n.clientX,y:n.clientY,type:i};let o=t.posAtCoords(Bi(n));o&&(i=="singleClick"?(t.input.mouseDown&&t.input.mouseDown.done(),t.input.mouseDown=new cy(t,o,n,!!r)):(i=="doubleClick"?oy:ay)(t,o.pos,o.inside,n)?n.preventDefault():Gt(t,"pointer"))};class cy{constructor(e,n,r,s){this.view=e,this.pos=n,this.event=r,this.flushed=s,this.delayedSelectionSync=!1,this.mightDrag=null,this.startDoc=e.state.doc,this.selectNode=!!r[Kd],this.allowDefault=r.shiftKey;let i,o;if(n.inside>-1)i=e.state.doc.nodeAt(n.inside),o=n.inside;else{let u=e.state.doc.resolve(n.pos);i=u.parent,o=u.depth?u.before():0}const a=s?null:r.target,l=a?e.docView.nearestDesc(a,!0):null;this.target=l&&l.dom.nodeType==1?l.dom:null;let{selection:c}=e.state;(r.button==0&&i.type.spec.draggable&&i.type.spec.selectable!==!1||c instanceof I&&c.from<=o&&c.to>o)&&(this.mightDrag={node:i,pos:o,addAttr:!!(this.target&&!this.target.draggable),setUneditable:!!(this.target&<&&!this.target.hasAttribute("contentEditable"))}),this.target&&this.mightDrag&&(this.mightDrag.addAttr||this.mightDrag.setUneditable)&&(this.view.domObserver.stop(),this.mightDrag.addAttr&&(this.target.draggable=!0),this.mightDrag.setUneditable&&setTimeout(()=>{this.view.input.mouseDown==this&&this.target.setAttribute("contentEditable","false")},20),this.view.domObserver.start()),e.root.addEventListener("mouseup",this.up=this.up.bind(this)),e.root.addEventListener("mousemove",this.move=this.move.bind(this)),Gt(e,"pointer")}done(){this.view.root.removeEventListener("mouseup",this.up),this.view.root.removeEventListener("mousemove",this.move),this.mightDrag&&this.target&&(this.view.domObserver.stop(),this.mightDrag.addAttr&&this.target.removeAttribute("draggable"),this.mightDrag.setUneditable&&this.target.removeAttribute("contentEditable"),this.view.domObserver.start()),this.delayedSelectionSync&&setTimeout(()=>At(this.view)),this.view.input.mouseDown=null}up(e){if(this.done(),!this.view.dom.contains(e.target))return;let n=this.pos;this.view.state.doc!=this.startDoc&&(n=this.view.posAtCoords(Bi(e))),this.updateAllowDefault(e),this.allowDefault||!n?Gt(this.view,"pointer"):iy(this.view,n.pos,n.inside,e,this.selectNode)?e.preventDefault():e.button==0&&(this.flushed||Ae&&this.mightDrag&&!this.mightDrag.node.isAtom||Te&&!this.view.state.selection.visible&&Math.min(Math.abs(n.pos-this.view.state.selection.from),Math.abs(n.pos-this.view.state.selection.to))<=2)?(er(this.view,V.near(this.view.state.doc.resolve(n.pos))),e.preventDefault()):Gt(this.view,"pointer")}move(e){this.updateAllowDefault(e),Gt(this.view,"pointer"),e.buttons==0&&this.done()}updateAllowDefault(e){!this.allowDefault&&(Math.abs(this.event.x-e.clientX)>4||Math.abs(this.event.y-e.clientY)>4)&&(this.allowDefault=!0)}}Re.touchstart=t=>{t.input.lastTouch=Date.now(),Ca(t),Gt(t,"pointer")};Re.touchmove=t=>{t.input.lastTouch=Date.now(),Gt(t,"pointer")};Re.contextmenu=t=>Ca(t);function qd(t,e){return t.composing?!0:Ae&&Math.abs(e.timeStamp-t.input.compositionEndedAt)<500?(t.input.compositionEndedAt=-2e8,!0):!1}const uy=rt?5e3:-1;Ie.compositionstart=Ie.compositionupdate=t=>{if(!t.composing){t.domObserver.flush();let{state:e}=t,n=e.selection.$from;if(e.selection.empty&&(e.storedMarks||!n.textOffset&&n.parentOffset&&n.nodeBefore.marks.some(r=>r.type.spec.inclusive===!1)))t.markCursor=t.state.storedMarks||n.marks(),pi(t,!0),t.markCursor=null;else if(pi(t),lt&&e.selection.empty&&n.parentOffset&&!n.textOffset&&n.nodeBefore.marks.length){let r=t.domSelectionRange();for(let s=r.focusNode,i=r.focusOffset;s&&s.nodeType==1&&i!=0;){let o=i<0?s.lastChild:s.childNodes[i-1];if(!o)break;if(o.nodeType==3){t.domSelection().collapse(o,o.nodeValue.length);break}else s=o,i=-1}}t.input.composing=!0}Jd(t,uy)};Ie.compositionend=(t,e)=>{t.composing&&(t.input.composing=!1,t.input.compositionEndedAt=e.timeStamp,t.input.compositionPendingChanges=t.domObserver.pendingRecords().length?t.input.compositionID:0,t.input.compositionNode=null,t.input.compositionPendingChanges&&Promise.resolve().then(()=>t.domObserver.flush()),t.input.compositionID++,Jd(t,20))};function Jd(t,e){clearTimeout(t.input.composingTimeout),e>-1&&(t.input.composingTimeout=setTimeout(()=>pi(t),e))}function Gd(t){for(t.composing&&(t.input.composing=!1,t.input.compositionEndedAt=hy());t.input.compositionNodes.length>0;)t.input.compositionNodes.pop().markParentsDirty()}function dy(t){let e=t.domSelectionRange();if(!e.focusNode)return null;let n=sg(e.focusNode,e.focusOffset),r=ig(e.focusNode,e.focusOffset);if(n&&r&&n!=r){let s=r.pmViewDesc,i=t.domObserver.lastChangedTextNode;if(n==i||r==i)return i;if(!s||!s.isText(r.nodeValue))return r;if(t.input.compositionNode==r){let o=n.pmViewDesc;if(!(!o||!o.isText(n.nodeValue)))return r}}return n||r}function hy(){let t=document.createEvent("Event");return t.initEvent("event",!0,!0),t.timeStamp}function pi(t,e=!1){if(!(rt&&t.domObserver.flushingSoon>=0)){if(t.domObserver.forceFlush(),Gd(t),e||t.docView&&t.docView.dirty){let n=Sa(t);return n&&!n.eq(t.state.selection)?t.dispatch(t.state.tr.setSelection(n)):t.updateState(t.state),!0}return!1}}function fy(t,e){if(!t.dom.parentNode)return;let n=t.dom.parentNode.appendChild(document.createElement("div"));n.appendChild(e),n.style.cssText="position: fixed; left: -10000px; top: 10px";let r=getSelection(),s=document.createRange();s.selectNodeContents(e),t.dom.blur(),r.removeAllRanges(),r.addRange(s),setTimeout(()=>{n.parentNode&&n.parentNode.removeChild(n),t.focus()},50)}const cs=ze&&Yt<15||ur&&ug<604;Re.copy=Ie.cut=(t,e)=>{let n=e,r=t.state.selection,s=n.type=="cut";if(r.empty)return;let i=cs?null:n.clipboardData,o=r.content(),{dom:a,text:l}=$d(t,o);i?(n.preventDefault(),i.clearData(),i.setData("text/html",a.innerHTML),i.setData("text/plain",l)):fy(t,a),s&&t.dispatch(t.state.tr.deleteSelection().scrollIntoView().setMeta("uiEvent","cut"))};function py(t){return t.openStart==0&&t.openEnd==0&&t.content.childCount==1?t.content.firstChild:null}function my(t,e){if(!t.dom.parentNode)return;let n=t.input.shiftKey||t.state.selection.$from.parent.type.spec.code,r=t.dom.parentNode.appendChild(document.createElement(n?"textarea":"div"));n||(r.contentEditable="true"),r.style.cssText="position: fixed; left: -10000px; top: 10px",r.focus();let s=t.input.shiftKey&&t.input.lastKeyCode!=45;setTimeout(()=>{t.focus(),r.parentNode&&r.parentNode.removeChild(r),n?us(t,r.value,null,s,e):us(t,r.textContent,r.innerHTML,s,e)},50)}function us(t,e,n,r,s){let i=Fd(t,e,n,r,t.state.selection.$from);if(t.someProp("handlePaste",l=>l(t,s,i||w.empty)))return!0;if(!i)return!1;let o=py(i),a=o?t.state.tr.replaceSelectionWith(o,r):t.state.tr.replaceSelection(i);return t.dispatch(a.scrollIntoView().setMeta("paste",!0).setMeta("uiEvent","paste")),!0}function Xd(t){let e=t.getData("text/plain")||t.getData("Text");if(e)return e;let n=t.getData("text/uri-list");return n?n.replace(/\r?\n/g," "):""}Ie.paste=(t,e)=>{let n=e;if(t.composing&&!rt)return;let r=cs?null:n.clipboardData,s=t.input.shiftKey&&t.input.lastKeyCode!=45;r&&us(t,Xd(r),r.getData("text/html"),s,n)?n.preventDefault():my(t,n)};class Yd{constructor(e,n,r){this.slice=e,this.move=n,this.node=r}}const Zd=qe?"altKey":"ctrlKey";Re.dragstart=(t,e)=>{let n=e,r=t.input.mouseDown;if(r&&r.done(),!n.dataTransfer)return;let s=t.state.selection,i=s.empty?null:t.posAtCoords(Bi(n)),o;if(!(i&&i.pos>=s.from&&i.pos<=(s instanceof I?s.to-1:s.to))){if(r&&r.mightDrag)o=I.create(t.state.doc,r.mightDrag.pos);else if(n.target&&n.target.nodeType==1){let d=t.docView.nearestDesc(n.target,!0);d&&d.node.type.spec.draggable&&d!=t.docView&&(o=I.create(t.state.doc,d.posBefore))}}let a=(o||t.state.selection).content(),{dom:l,text:c,slice:u}=$d(t,a);(!n.dataTransfer.files.length||!Te||vd>120)&&n.dataTransfer.clearData(),n.dataTransfer.setData(cs?"Text":"text/html",l.innerHTML),n.dataTransfer.effectAllowed="copyMove",cs||n.dataTransfer.setData("text/plain",c),t.dragging=new Yd(u,!n[Zd],o)};Re.dragend=t=>{let e=t.dragging;window.setTimeout(()=>{t.dragging==e&&(t.dragging=null)},50)};Ie.dragover=Ie.dragenter=(t,e)=>e.preventDefault();Ie.drop=(t,e)=>{let n=e,r=t.dragging;if(t.dragging=null,!n.dataTransfer)return;let s=t.posAtCoords(Bi(n));if(!s)return;let i=t.state.doc.resolve(s.pos),o=r&&r.slice;o?t.someProp("transformPasted",p=>{o=p(o,t)}):o=Fd(t,Xd(n.dataTransfer),cs?null:n.dataTransfer.getData("text/html"),!1,i);let a=!!(r&&!n[Zd]);if(t.someProp("handleDrop",p=>p(t,n,o||w.empty,a))){n.preventDefault();return}if(!o)return;n.preventDefault();let l=o?pm(t.state.doc,i.pos,o):i.pos;l==null&&(l=i.pos);let c=t.state.tr;if(a){let{node:p}=r;p?p.replace(c):c.deleteSelection()}let u=c.mapping.map(l),d=o.openStart==0&&o.openEnd==0&&o.content.childCount==1,h=c.doc;if(d?c.replaceRangeWith(u,u,o.content.firstChild):c.replaceRange(u,u,o),c.doc.eq(h))return;let f=c.doc.resolve(u);if(d&&I.isSelectable(o.content.firstChild)&&f.nodeAfter&&f.nodeAfter.sameMarkup(o.content.firstChild))c.setSelection(new I(f));else{let p=c.mapping.map(l);c.mapping.maps[c.mapping.maps.length-1].forEach((m,g,y,k)=>p=k),c.setSelection(wa(t,f,c.doc.resolve(p)))}t.focus(),t.dispatch(c.setMeta("uiEvent","drop"))};Re.focus=t=>{t.input.lastFocus=Date.now(),t.focused||(t.domObserver.stop(),t.dom.classList.add("ProseMirror-focused"),t.domObserver.start(),t.focused=!0,setTimeout(()=>{t.docView&&t.hasFocus()&&!t.domObserver.currentSelection.eq(t.domSelectionRange())&&At(t)},20))};Re.blur=(t,e)=>{let n=e;t.focused&&(t.domObserver.stop(),t.dom.classList.remove("ProseMirror-focused"),t.domObserver.start(),n.relatedTarget&&t.dom.contains(n.relatedTarget)&&t.domObserver.currentSelection.clear(),t.focused=!1)};Re.beforeinput=(t,e)=>{if(Te&&rt&&e.inputType=="deleteContentBackward"){t.domObserver.flushSoon();let{domChangeCount:r}=t.input;setTimeout(()=>{if(t.input.domChangeCount!=r||(t.dom.blur(),t.focus(),t.someProp("handleKeyDown",i=>i(t,xn(8,"Backspace")))))return;let{$cursor:s}=t.state.selection;s&&s.pos>0&&t.dispatch(t.state.tr.delete(s.pos-1,s.pos).scrollIntoView())},50)}};for(let t in Ie)Re[t]=Ie[t];function ds(t,e){if(t==e)return!0;for(let n in t)if(t[n]!==e[n])return!1;for(let n in e)if(!(n in t))return!1;return!0}class mi{constructor(e,n){this.toDOM=e,this.spec=n||On,this.side=this.spec.side||0}map(e,n,r,s){let{pos:i,deleted:o}=e.mapResult(n.from+s,this.side<0?-1:1);return o?null:new Q(i-r,i-r,this)}valid(){return!0}eq(e){return this==e||e instanceof mi&&(this.spec.key&&this.spec.key==e.spec.key||this.toDOM==e.toDOM&&ds(this.spec,e.spec))}destroy(e){this.spec.destroy&&this.spec.destroy(e)}}class Qt{constructor(e,n){this.attrs=e,this.spec=n||On}map(e,n,r,s){let i=e.map(n.from+s,this.spec.inclusiveStart?-1:1)-r,o=e.map(n.to+s,this.spec.inclusiveEnd?1:-1)-r;return i>=o?null:new Q(i,o,this)}valid(e,n){return n.from<n.to}eq(e){return this==e||e instanceof Qt&&ds(this.attrs,e.attrs)&&ds(this.spec,e.spec)}static is(e){return e.type instanceof Qt}destroy(){}}class Ta{constructor(e,n){this.attrs=e,this.spec=n||On}map(e,n,r,s){let i=e.mapResult(n.from+s,1);if(i.deleted)return null;let o=e.mapResult(n.to+s,-1);return o.deleted||o.pos<=i.pos?null:new Q(i.pos-r,o.pos-r,this)}valid(e,n){let{index:r,offset:s}=e.content.findIndex(n.from),i;return s==n.from&&!(i=e.child(r)).isText&&s+i.nodeSize==n.to}eq(e){return this==e||e instanceof Ta&&ds(this.attrs,e.attrs)&&ds(this.spec,e.spec)}destroy(){}}class Q{constructor(e,n,r){this.from=e,this.to=n,this.type=r}copy(e,n){return new Q(e,n,this.type)}eq(e,n=0){return this.type.eq(e.type)&&this.from+n==e.from&&this.to+n==e.to}map(e,n,r){return this.type.map(e,this,n,r)}static widget(e,n,r){return new Q(e,e,new mi(n,r))}static inline(e,n,r,s){return new Q(e,n,new Qt(r,s))}static node(e,n,r,s){return new Q(e,n,new Ta(r,s))}get spec(){return this.type.spec}get inline(){return this.type instanceof Qt}get widget(){return this.type instanceof mi}}const Wn=[],On={};class W{constructor(e,n){this.local=e.length?e:Wn,this.children=n.length?n:Wn}static create(e,n){return n.length?gi(n,e,0,On):ve}find(e,n,r){let s=[];return this.findInner(e??0,n??1e9,s,0,r),s}findInner(e,n,r,s,i){for(let o=0;o<this.local.length;o++){let a=this.local[o];a.from<=n&&a.to>=e&&(!i||i(a.spec))&&r.push(a.copy(a.from+s,a.to+s))}for(let o=0;o<this.children.length;o+=3)if(this.children[o]<n&&this.children[o+1]>e){let a=this.children[o]+1;this.children[o+2].findInner(e-a,n-a,r,s+a,i)}}map(e,n,r){return this==ve||e.maps.length==0?this:this.mapInner(e,n,0,0,r||On)}mapInner(e,n,r,s,i){let o;for(let a=0;a<this.local.length;a++){let l=this.local[a].map(e,r,s);l&&l.type.valid(n,l)?(o||(o=[])).push(l):i.onRemove&&i.onRemove(this.local[a].spec)}return this.children.length?gy(this.children,o||[],e,n,r,s,i):o?new W(o.sort(Mn),Wn):ve}add(e,n){return n.length?this==ve?W.create(e,n):this.addInner(e,n,0):this}addInner(e,n,r){let s,i=0;e.forEach((a,l)=>{let c=l+r,u;if(u=eh(n,a,c)){for(s||(s=this.children.slice());i<s.length&&s[i]<l;)i+=3;s[i]==l?s[i+2]=s[i+2].addInner(a,u,c+1):s.splice(i,0,l,l+a.nodeSize,gi(u,a,c+1,On)),i+=3}});let o=Qd(i?th(n):n,-r);for(let a=0;a<o.length;a++)o[a].type.valid(e,o[a])||o.splice(a--,1);return new W(o.length?this.local.concat(o).sort(Mn):this.local,s||this.children)}remove(e){return e.length==0||this==ve?this:this.removeInner(e,0)}removeInner(e,n){let r=this.children,s=this.local;for(let i=0;i<r.length;i+=3){let o,a=r[i]+n,l=r[i+1]+n;for(let u=0,d;u<e.length;u++)(d=e[u])&&d.from>a&&d.to<l&&(e[u]=null,(o||(o=[])).push(d));if(!o)continue;r==this.children&&(r=this.children.slice());let c=r[i+2].removeInner(o,a+1);c!=ve?r[i+2]=c:(r.splice(i,3),i-=3)}if(s.length){for(let i=0,o;i<e.length;i++)if(o=e[i])for(let a=0;a<s.length;a++)s[a].eq(o,n)&&(s==this.local&&(s=this.local.slice()),s.splice(a--,1))}return r==this.children&&s==this.local?this:s.length||r.length?new W(s,r):ve}forChild(e,n){if(this==ve)return this;if(n.isLeaf)return W.empty;let r,s;for(let a=0;a<this.children.length;a+=3)if(this.children[a]>=e){this.children[a]==e&&(r=this.children[a+2]);break}let i=e+1,o=i+n.content.size;for(let a=0;a<this.local.length;a++){let l=this.local[a];if(l.from<o&&l.to>i&&l.type instanceof Qt){let c=Math.max(i,l.from)-i,u=Math.min(o,l.to)-i;c<u&&(s||(s=[])).push(l.copy(c,u))}}if(s){let a=new W(s.sort(Mn),Wn);return r?new Wt([a,r]):a}return r||ve}eq(e){if(this==e)return!0;if(!(e instanceof W)||this.local.length!=e.local.length||this.children.length!=e.children.length)return!1;for(let n=0;n<this.local.length;n++)if(!this.local[n].eq(e.local[n]))return!1;for(let n=0;n<this.children.length;n+=3)if(this.children[n]!=e.children[n]||this.children[n+1]!=e.children[n+1]||!this.children[n+2].eq(e.children[n+2]))return!1;return!0}locals(e){return Oa(this.localsInner(e))}localsInner(e){if(this==ve)return Wn;if(e.inlineContent||!this.local.some(Qt.is))return this.local;let n=[];for(let r=0;r<this.local.length;r++)this.local[r].type instanceof Qt||n.push(this.local[r]);return n}}W.empty=new W([],[]);W.removeOverlap=Oa;const ve=W.empty;class Wt{constructor(e){this.members=e}map(e,n){const r=this.members.map(s=>s.map(e,n,On));return Wt.from(r)}forChild(e,n){if(n.isLeaf)return W.empty;let r=[];for(let s=0;s<this.members.length;s++){let i=this.members[s].forChild(e,n);i!=ve&&(i instanceof Wt?r=r.concat(i.members):r.push(i))}return Wt.from(r)}eq(e){if(!(e instanceof Wt)||e.members.length!=this.members.length)return!1;for(let n=0;n<this.members.length;n++)if(!this.members[n].eq(e.members[n]))return!1;return!0}locals(e){let n,r=!0;for(let s=0;s<this.members.length;s++){let i=this.members[s].localsInner(e);if(i.length)if(!n)n=i;else{r&&(n=n.slice(),r=!1);for(let o=0;o<i.length;o++)n.push(i[o])}}return n?Oa(r?n:n.sort(Mn)):Wn}static from(e){switch(e.length){case 0:return ve;case 1:return e[0];default:return new Wt(e.every(n=>n instanceof W)?e:e.reduce((n,r)=>n.concat(r instanceof W?r:r.members),[]))}}}function gy(t,e,n,r,s,i,o){let a=t.slice();for(let c=0,u=i;c<n.maps.length;c++){let d=0;n.maps[c].forEach((h,f,p,m)=>{let g=m-p-(f-h);for(let y=0;y<a.length;y+=3){let k=a[y+1];if(k<0||h>k+u-d)continue;let D=a[y]+u-d;f>=D?a[y+1]=h<=D?-2:-1:h>=u&&g&&(a[y]+=g,a[y+1]+=g)}d+=g}),u=n.maps[c].map(u,-1)}let l=!1;for(let c=0;c<a.length;c+=3)if(a[c+1]<0){if(a[c+1]==-2){l=!0,a[c+1]=-1;continue}let u=n.map(t[c]+i),d=u-s;if(d<0||d>=r.content.size){l=!0;continue}let h=n.map(t[c+1]+i,-1),f=h-s,{index:p,offset:m}=r.content.findIndex(d),g=r.maybeChild(p);if(g&&m==d&&m+g.nodeSize==f){let y=a[c+2].mapInner(n,g,u+1,t[c]+i+1,o);y!=ve?(a[c]=d,a[c+1]=f,a[c+2]=y):(a[c+1]=-2,l=!0)}else l=!0}if(l){let c=yy(a,t,e,n,s,i,o),u=gi(c,r,0,o);e=u.local;for(let d=0;d<a.length;d+=3)a[d+1]<0&&(a.splice(d,3),d-=3);for(let d=0,h=0;d<u.children.length;d+=3){let f=u.children[d];for(;h<a.length&&a[h]<f;)h+=3;a.splice(h,0,u.children[d],u.children[d+1],u.children[d+2])}}return new W(e.sort(Mn),a)}function Qd(t,e){if(!e||!t.length)return t;let n=[];for(let r=0;r<t.length;r++){let s=t[r];n.push(new Q(s.from+e,s.to+e,s.type))}return n}function yy(t,e,n,r,s,i,o){function a(l,c){for(let u=0;u<l.local.length;u++){let d=l.local[u].map(r,s,c);d?n.push(d):o.onRemove&&o.onRemove(l.local[u].spec)}for(let u=0;u<l.children.length;u+=3)a(l.children[u+2],l.children[u]+c+1)}for(let l=0;l<t.length;l+=3)t[l+1]==-1&&a(t[l+2],e[l]+i+1);return n}function eh(t,e,n){if(e.isLeaf)return null;let r=n+e.nodeSize,s=null;for(let i=0,o;i<t.length;i++)(o=t[i])&&o.from>n&&o.to<r&&((s||(s=[])).push(o),t[i]=null);return s}function th(t){let e=[];for(let n=0;n<t.length;n++)t[n]!=null&&e.push(t[n]);return e}function gi(t,e,n,r){let s=[],i=!1;e.forEach((a,l)=>{let c=eh(t,a,l+n);if(c){i=!0;let u=gi(c,a,n+l+1,r);u!=ve&&s.push(l,l+a.nodeSize,u)}});let o=Qd(i?th(t):t,-n).sort(Mn);for(let a=0;a<o.length;a++)o[a].type.valid(e,o[a])||(r.onRemove&&r.onRemove(o[a].spec),o.splice(a--,1));return o.length||s.length?new W(o,s):ve}function Mn(t,e){return t.from-e.from||t.to-e.to}function Oa(t){let e=t;for(let n=0;n<e.length-1;n++){let r=e[n];if(r.from!=r.to)for(let s=n+1;s<e.length;s++){let i=e[s];if(i.from==r.from){i.to!=r.to&&(e==t&&(e=t.slice()),e[s]=i.copy(i.from,r.to),nc(e,s+1,i.copy(r.to,i.to)));continue}else{i.from<r.to&&(e==t&&(e=t.slice()),e[n]=r.copy(r.from,i.from),nc(e,s,r.copy(i.from,r.to)));break}}}return e}function nc(t,e,n){for(;e<t.length&&Mn(n,t[e])>0;)e++;t.splice(e,0,n)}function uo(t){let e=[];return t.someProp("decorations",n=>{let r=n(t.state);r&&r!=ve&&e.push(r)}),t.cursorWrapper&&e.push(W.create(t.state.doc,[t.cursorWrapper.deco])),Wt.from(e)}const xy={childList:!0,characterData:!0,characterDataOldValue:!0,attributes:!0,attributeOldValue:!0,subtree:!0},by=ze&&Yt<=11;class ky{constructor(){this.anchorNode=null,this.anchorOffset=0,this.focusNode=null,this.focusOffset=0}set(e){this.anchorNode=e.anchorNode,this.anchorOffset=e.anchorOffset,this.focusNode=e.focusNode,this.focusOffset=e.focusOffset}clear(){this.anchorNode=this.focusNode=null}eq(e){return e.anchorNode==this.anchorNode&&e.anchorOffset==this.anchorOffset&&e.focusNode==this.focusNode&&e.focusOffset==this.focusOffset}}class Sy{constructor(e,n){this.view=e,this.handleDOMChange=n,this.queue=[],this.flushingSoon=-1,this.observer=null,this.currentSelection=new ky,this.onCharData=null,this.suppressingSelectionUpdates=!1,this.lastChangedTextNode=null,this.observer=window.MutationObserver&&new window.MutationObserver(r=>{for(let s=0;s<r.length;s++)this.queue.push(r[s]);ze&&Yt<=11&&r.some(s=>s.type=="childList"&&s.removedNodes.length||s.type=="characterData"&&s.oldValue.length>s.target.nodeValue.length)?this.flushSoon():this.flush()}),by&&(this.onCharData=r=>{this.queue.push({target:r.target,type:"characterData",oldValue:r.prevValue}),this.flushSoon()}),this.onSelectionChange=this.onSelectionChange.bind(this)}flushSoon(){this.flushingSoon<0&&(this.flushingSoon=window.setTimeout(()=>{this.flushingSoon=-1,this.flush()},20))}forceFlush(){this.flushingSoon>-1&&(window.clearTimeout(this.flushingSoon),this.flushingSoon=-1,this.flush())}start(){this.observer&&(this.observer.takeRecords(),this.observer.observe(this.view.dom,xy)),this.onCharData&&this.view.dom.addEventListener("DOMCharacterDataModified",this.onCharData),this.connectSelection()}stop(){if(this.observer){let e=this.observer.takeRecords();if(e.length){for(let n=0;n<e.length;n++)this.queue.push(e[n]);window.setTimeout(()=>this.flush(),20)}this.observer.disconnect()}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=!0,setTimeout(()=>this.suppressingSelectionUpdates=!1,50)}onSelectionChange(){if(Jl(this.view)){if(this.suppressingSelectionUpdates)return At(this.view);if(ze&&Yt<=11&&!this.view.state.selection.empty){let e=this.view.domSelectionRange();if(e.focusNode&&Rn(e.focusNode,e.focusOffset,e.anchorNode,e.anchorOffset))return this.flushSoon()}this.flush()}}setCurSelection(){this.currentSelection.set(this.view.domSelectionRange())}ignoreSelectionChange(e){if(!e.focusNode)return!0;let n=new Set,r;for(let i=e.focusNode;i;i=ls(i))n.add(i);for(let i=e.anchorNode;i;i=ls(i))if(n.has(i)){r=i;break}let s=r&&this.view.docView.nearestDesc(r);if(s&&s.ignoreMutation({type:"selection",target:r.nodeType==3?r.parentNode:r}))return this.setCurSelection(),!0}pendingRecords(){if(this.observer)for(let e of this.observer.takeRecords())this.queue.push(e);return this.queue}flush(){let{view:e}=this;if(!e.docView||this.flushingSoon>-1)return;let n=this.pendingRecords();n.length&&(this.queue=[]);let r=e.domSelectionRange(),s=!this.suppressingSelectionUpdates&&!this.currentSelection.eq(r)&&Jl(e)&&!this.ignoreSelectionChange(r),i=-1,o=-1,a=!1,l=[];if(e.editable)for(let u=0;u<n.length;u++){let d=this.registerMutation(n[u],l);d&&(i=i<0?d.from:Math.min(d.from,i),o=o<0?d.to:Math.max(d.to,o),d.typeOver&&(a=!0))}if(lt&&l.length){let u=l.filter(d=>d.nodeName=="BR");if(u.length==2){let[d,h]=u;d.parentNode&&d.parentNode.parentNode==h.parentNode?h.remove():d.remove()}else{let{focusNode:d}=this.currentSelection;for(let h of u){let f=h.parentNode;f&&f.nodeName=="LI"&&(!d||Ey(e,d)!=f)&&h.remove()}}}let c=null;i<0&&s&&e.input.lastFocus>Date.now()-200&&Math.max(e.input.lastTouch,e.input.lastClick.time)<Date.now()-300&&Pi(r)&&(c=Sa(e))&&c.eq(V.near(e.state.doc.resolve(0),1))?(e.input.lastFocus=0,At(e),this.currentSelection.set(r),e.scrollToSelection()):(i>-1||s)&&(i>-1&&(e.docView.markDirty(i,o),wy(e)),this.handleDOMChange(i,o,a,l),e.docView&&e.docView.dirty?e.updateState(e.state):this.currentSelection.eq(r)||At(e),this.currentSelection.set(r))}registerMutation(e,n){if(n.indexOf(e.target)>-1)return null;let r=this.view.docView.nearestDesc(e.target);if(e.type=="attributes"&&(r==this.view.docView||e.attributeName=="contenteditable"||e.attributeName=="style"&&!e.oldValue&&!e.target.getAttribute("style"))||!r||r.ignoreMutation(e))return null;if(e.type=="childList"){for(let u=0;u<e.addedNodes.length;u++){let d=e.addedNodes[u];n.push(d),d.nodeType==3&&(this.lastChangedTextNode=d)}if(r.contentDOM&&r.contentDOM!=r.dom&&!r.contentDOM.contains(e.target))return{from:r.posBefore,to:r.posAfter};let s=e.previousSibling,i=e.nextSibling;if(ze&&Yt<=11&&e.addedNodes.length)for(let u=0;u<e.addedNodes.length;u++){let{previousSibling:d,nextSibling:h}=e.addedNodes[u];(!d||Array.prototype.indexOf.call(e.addedNodes,d)<0)&&(s=d),(!h||Array.prototype.indexOf.call(e.addedNodes,h)<0)&&(i=h)}let o=s&&s.parentNode==e.target?Se(s)+1:0,a=r.localPosFromDOM(e.target,o,-1),l=i&&i.parentNode==e.target?Se(i):e.target.childNodes.length,c=r.localPosFromDOM(e.target,l,1);return{from:a,to:c}}else return e.type=="attributes"?{from:r.posAtStart-r.border,to:r.posAtEnd+r.border}:(this.lastChangedTextNode=e.target,{from:r.posAtStart,to:r.posAtEnd,typeOver:e.target.nodeValue==e.oldValue})}}let rc=new WeakMap,sc=!1;function wy(t){if(!rc.has(t)&&(rc.set(t,null),["normal","nowrap","pre-line"].indexOf(getComputedStyle(t.dom).whiteSpace)!==-1)){if(t.requiresGeckoHackNode=lt,sc)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."),sc=!0}}function ic(t,e){let n=e.startContainer,r=e.startOffset,s=e.endContainer,i=e.endOffset,o=t.domAtPos(t.state.selection.anchor);return Rn(o.node,o.offset,s,i)&&([n,r,s,i]=[s,i,n,r]),{anchorNode:n,anchorOffset:r,focusNode:s,focusOffset:i}}function vy(t,e){if(e.getComposedRanges){let s=e.getComposedRanges(t.root)[0];if(s)return ic(t,s)}let n;function r(s){s.preventDefault(),s.stopImmediatePropagation(),n=s.getTargetRanges()[0]}return t.dom.addEventListener("beforeinput",r,!0),document.execCommand("indent"),t.dom.removeEventListener("beforeinput",r,!0),n?ic(t,n):null}function Ey(t,e){for(let n=e.parentNode;n&&n!=t.dom;n=n.parentNode){let r=t.docView.nearestDesc(n,!0);if(r&&r.node.isBlock)return n}return null}function Cy(t,e,n){let{node:r,fromOffset:s,toOffset:i,from:o,to:a}=t.docView.parseRange(e,n),l=t.domSelectionRange(),c,u=l.anchorNode;if(u&&t.dom.contains(u.nodeType==1?u:u.parentNode)&&(c=[{node:u,offset:l.anchorOffset}],Pi(l)||c.push({node:l.focusNode,offset:l.focusOffset})),Te&&t.input.lastKeyCode===8)for(let g=i;g>s;g--){let y=r.childNodes[g-1],k=y.pmViewDesc;if(y.nodeName=="BR"&&!k){i=g;break}if(!k||k.size)break}let d=t.state.doc,h=t.someProp("domParser")||ar.fromSchema(t.state.schema),f=d.resolve(o),p=null,m=h.parse(r,{topNode:f.parent,topMatch:f.parent.contentMatchAt(f.index()),topOpen:!0,from:s,to:i,preserveWhitespace:f.parent.type.whitespace=="pre"?"full":!0,findPositions:c,ruleFromNode:Ty,context:f});if(c&&c[0].pos!=null){let g=c[0].pos,y=c[1]&&c[1].pos;y==null&&(y=g),p={anchor:g+o,head:y+o}}return{doc:m,sel:p,from:o,to:a}}function Ty(t){let e=t.pmViewDesc;if(e)return e.parseRule();if(t.nodeName=="BR"&&t.parentNode){if(Ae&&/^(ul|ol)$/i.test(t.parentNode.nodeName)){let n=document.createElement("div");return n.appendChild(document.createElement("li")),{skip:n}}else if(t.parentNode.lastChild==t||Ae&&/^(tr|table)$/i.test(t.parentNode.nodeName))return{ignore:!0}}else if(t.nodeName=="IMG"&&t.getAttribute("mark-placeholder"))return{ignore:!0};return null}const Oy=/^(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 My(t,e,n,r,s){let i=t.input.compositionPendingChanges||(t.composing?t.input.compositionID:0);if(t.input.compositionPendingChanges=0,e<0){let F=t.input.lastSelectionTime>Date.now()-50?t.input.lastSelectionOrigin:null,ht=Sa(t,F);if(ht&&!t.state.selection.eq(ht)){if(Te&&rt&&t.input.lastKeyCode===13&&Date.now()-100<t.input.lastKeyCodeTime&&t.someProp("handleKeyDown",Qi=>Qi(t,xn(13,"Enter"))))return;let Bt=t.state.tr.setSelection(ht);F=="pointer"?Bt.setMeta("pointer",!0):F=="key"&&Bt.scrollIntoView(),i&&Bt.setMeta("composition",i),t.dispatch(Bt)}return}let o=t.state.doc.resolve(e),a=o.sharedDepth(n);e=o.before(a+1),n=t.state.doc.resolve(n).after(a+1);let l=t.state.selection,c=Cy(t,e,n),u=t.state.doc,d=u.slice(c.from,c.to),h,f;t.input.lastKeyCode===8&&Date.now()-100<t.input.lastKeyCodeTime?(h=t.state.selection.to,f="end"):(h=t.state.selection.from,f="start"),t.input.lastKeyCode=null;let p=Ay(d.content,c.doc.content,c.from,h,f);if((ur&&t.input.lastIOSEnter>Date.now()-225||rt)&&s.some(F=>F.nodeType==1&&!Oy.test(F.nodeName))&&(!p||p.endA>=p.endB)&&t.someProp("handleKeyDown",F=>F(t,xn(13,"Enter")))){t.input.lastIOSEnter=0;return}if(!p)if(r&&l instanceof L&&!l.empty&&l.$head.sameParent(l.$anchor)&&!t.composing&&!(c.sel&&c.sel.anchor!=c.sel.head))p={start:l.from,endA:l.to,endB:l.to};else{if(c.sel){let F=oc(t,t.state.doc,c.sel);if(F&&!F.eq(t.state.selection)){let ht=t.state.tr.setSelection(F);i&&ht.setMeta("composition",i),t.dispatch(ht)}}return}t.input.domChangeCount++,t.state.selection.from<t.state.selection.to&&p.start==p.endB&&t.state.selection instanceof L&&(p.start>t.state.selection.from&&p.start<=t.state.selection.from+2&&t.state.selection.from>=c.from?p.start=t.state.selection.from:p.endA<t.state.selection.to&&p.endA>=t.state.selection.to-2&&t.state.selection.to<=c.to&&(p.endB+=t.state.selection.to-p.endA,p.endA=t.state.selection.to)),ze&&Yt<=11&&p.endB==p.start+1&&p.endA==p.start&&p.start>c.from&&c.doc.textBetween(p.start-c.from-1,p.start-c.from+1)==" "&&(p.start--,p.endA--,p.endB--);let m=c.doc.resolveNoCache(p.start-c.from),g=c.doc.resolveNoCache(p.endB-c.from),y=u.resolve(p.start),k=m.sameParent(g)&&m.parent.inlineContent&&y.end()>=p.endA,D;if((ur&&t.input.lastIOSEnter>Date.now()-225&&(!k||s.some(F=>F.nodeName=="DIV"||F.nodeName=="P"))||!k&&m.pos<c.doc.content.size&&!m.sameParent(g)&&(D=V.findFrom(c.doc.resolve(m.pos+1),1,!0))&&D.head==g.pos)&&t.someProp("handleKeyDown",F=>F(t,xn(13,"Enter")))){t.input.lastIOSEnter=0;return}if(t.state.selection.anchor>p.start&&Ny(u,p.start,p.endA,m,g)&&t.someProp("handleKeyDown",F=>F(t,xn(8,"Backspace")))){rt&&Te&&t.domObserver.suppressSelectionUpdates();return}Te&&rt&&p.endB==p.start&&(t.input.lastAndroidDelete=Date.now()),rt&&!k&&m.start()!=g.start()&&g.parentOffset==0&&m.depth==g.depth&&c.sel&&c.sel.anchor==c.sel.head&&c.sel.head==p.endA&&(p.endB-=2,g=c.doc.resolveNoCache(p.endB-c.from),setTimeout(()=>{t.someProp("handleKeyDown",function(F){return F(t,xn(13,"Enter"))})},20));let q=p.start,J=p.endA,$,oe,Ve;if(k){if(m.pos==g.pos)ze&&Yt<=11&&m.parentOffset==0&&(t.domObserver.suppressSelectionUpdates(),setTimeout(()=>At(t),20)),$=t.state.tr.delete(q,J),oe=u.resolve(p.start).marksAcross(u.resolve(p.endA));else if(p.endA==p.endB&&(Ve=_y(m.parent.content.cut(m.parentOffset,g.parentOffset),y.parent.content.cut(y.parentOffset,p.endA-y.start()))))$=t.state.tr,Ve.type=="add"?$.addMark(q,J,Ve.mark):$.removeMark(q,J,Ve.mark);else if(m.parent.child(m.index()).isText&&m.index()==g.index()-(g.textOffset?0:1)){let F=m.parent.textBetween(m.parentOffset,g.parentOffset);if(t.someProp("handleTextInput",ht=>ht(t,q,J,F)))return;$=t.state.tr.insertText(F,q,J)}}if($||($=t.state.tr.replace(q,J,c.doc.slice(p.start-c.from,p.endB-c.from))),c.sel){let F=oc(t,$.doc,c.sel);F&&!(Te&&rt&&t.composing&&F.empty&&(p.start!=p.endB||t.input.lastAndroidDelete<Date.now()-100)&&(F.head==q||F.head==$.mapping.map(J)-1)||ze&&F.empty&&F.head==q)&&$.setSelection(F)}oe&&$.ensureMarks(oe),i&&$.setMeta("composition",i),t.dispatch($.scrollIntoView())}function oc(t,e,n){return Math.max(n.anchor,n.head)>e.content.size?null:wa(t,e.resolve(n.anchor),e.resolve(n.head))}function _y(t,e){let n=t.firstChild.marks,r=e.firstChild.marks,s=n,i=r,o,a,l;for(let u=0;u<r.length;u++)s=r[u].removeFromSet(s);for(let u=0;u<n.length;u++)i=n[u].removeFromSet(i);if(s.length==1&&i.length==0)a=s[0],o="add",l=u=>u.mark(a.addToSet(u.marks));else if(s.length==0&&i.length==1)a=i[0],o="remove",l=u=>u.mark(a.removeFromSet(u.marks));else return null;let c=[];for(let u=0;u<e.childCount;u++)c.push(l(e.child(u)));if(x.from(c).eq(t))return{mark:a,type:o}}function Ny(t,e,n,r,s){if(n-e<=s.pos-r.pos||ho(r,!0,!1)<s.pos)return!1;let i=t.resolve(e);if(!r.parent.isTextblock){let a=i.nodeAfter;return a!=null&&n==e+a.nodeSize}if(i.parentOffset<i.parent.content.size||!i.parent.isTextblock)return!1;let o=t.resolve(ho(i,!0,!0));return!o.parent.isTextblock||o.pos>n||ho(o,!0,!1)<n?!1:r.parent.content.cut(r.parentOffset).eq(o.parent.content)}function ho(t,e,n){let r=t.depth,s=e?t.end():t.pos;for(;r>0&&(e||t.indexAfter(r)==t.node(r).childCount);)r--,s++,e=!1;if(n){let i=t.node(r).maybeChild(t.indexAfter(r));for(;i&&!i.isLeaf;)i=i.firstChild,s++}return s}function Ay(t,e,n,r,s){let i=t.findDiffStart(e,n);if(i==null)return null;let{a:o,b:a}=t.findDiffEnd(e,n+t.size,n+e.size);if(s=="end"){let l=Math.max(0,i-Math.min(o,a));r-=o+l-i}if(o<i&&t.size<e.size){let l=r<=i&&r>=o?i-r:0;i-=l,i&&i<e.size&&ac(e.textBetween(i-1,i+1))&&(i+=l?1:-1),a=i+(a-o),o=i}else if(a<i){let l=r<=i&&r>=a?i-r:0;i-=l,i&&i<t.size&&ac(t.textBetween(i-1,i+1))&&(i+=l?1:-1),o=i+(o-a),a=i}return{start:i,endA:o,endB:a}}function ac(t){if(t.length!=2)return!1;let e=t.charCodeAt(0),n=t.charCodeAt(1);return e>=56320&&e<=57343&&n>=55296&&n<=56319}class Ry{constructor(e,n){this._root=null,this.focused=!1,this.trackWrites=null,this.mounted=!1,this.markCursor=null,this.cursorWrapper=null,this.lastSelectedViewDesc=void 0,this.input=new Yg,this.prevDirectPlugins=[],this.pluginViews=[],this.requiresGeckoHackNode=!1,this.dragging=null,this._props=n,this.state=n.state,this.directPlugins=n.plugins||[],this.directPlugins.forEach(hc),this.dispatch=this.dispatch.bind(this),this.dom=e&&e.mount||document.createElement("div"),e&&(e.appendChild?e.appendChild(this.dom):typeof e=="function"?e(this.dom):e.mount&&(this.mounted=!0)),this.editable=uc(this),cc(this),this.nodeViews=dc(this),this.docView=Hl(this.state.doc,lc(this),uo(this),this.dom,this),this.domObserver=new Sy(this,(r,s,i,o)=>My(this,r,s,i,o)),this.domObserver.start(),Zg(this),this.updatePluginViews()}get composing(){return this.input.composing}get props(){if(this._props.state!=this.state){let e=this._props;this._props={};for(let n in e)this._props[n]=e[n];this._props.state=this.state}return this._props}update(e){e.handleDOMEvents!=this._props.handleDOMEvents&&Ho(this);let n=this._props;this._props=e,e.plugins&&(e.plugins.forEach(hc),this.directPlugins=e.plugins),this.updateStateInner(e.state,n)}setProps(e){let n={};for(let r in this._props)n[r]=this._props[r];n.state=this.state;for(let r in e)n[r]=e[r];this.update(n)}updateState(e){this.updateStateInner(e,this._props)}updateStateInner(e,n){var r;let s=this.state,i=!1,o=!1;e.storedMarks&&this.composing&&(Gd(this),o=!0),this.state=e;let a=s.plugins!=e.plugins||this._props.plugins!=n.plugins;if(a||this._props.plugins!=n.plugins||this._props.nodeViews!=n.nodeViews){let f=dc(this);Dy(f,this.nodeViews)&&(this.nodeViews=f,i=!0)}(a||n.handleDOMEvents!=this._props.handleDOMEvents)&&Ho(this),this.editable=uc(this),cc(this);let l=uo(this),c=lc(this),u=s.plugins!=e.plugins&&!s.doc.eq(e.doc)?"reset":e.scrollToSelection>s.scrollToSelection?"to selection":"preserve",d=i||!this.docView.matchesNode(e.doc,c,l);(d||!e.selection.eq(s.selection))&&(o=!0);let h=u=="preserve"&&o&&this.dom.style.overflowAnchor==null&&fg(this);if(o){this.domObserver.stop();let f=d&&(ze||Te)&&!this.composing&&!s.selection.empty&&!e.selection.empty&&Iy(s.selection,e.selection);if(d){let p=Te?this.trackWrites=this.domSelectionRange().focusNode:null;this.composing&&(this.input.compositionNode=dy(this)),(i||!this.docView.update(e.doc,c,l,this))&&(this.docView.updateOuterDeco(c),this.docView.destroy(),this.docView=Hl(e.doc,c,l,this.dom,this)),p&&!this.trackWrites&&(f=!0)}f||!(this.input.mouseDown&&this.domObserver.currentSelection.eq(this.domSelectionRange())&&Bg(this))?At(this,f):(Ld(this,e.selection),this.domObserver.setCurSelection()),this.domObserver.start()}this.updatePluginViews(s),!((r=this.dragging)===null||r===void 0)&&r.node&&!s.doc.eq(e.doc)&&this.updateDraggedNode(this.dragging,s),u=="reset"?this.dom.scrollTop=0:u=="to selection"?this.scrollToSelection():h&&pg(h)}scrollToSelection(){let e=this.domSelectionRange().focusNode;if(!this.someProp("handleScrollToSelection",n=>n(this)))if(this.state.selection instanceof I){let n=this.docView.domAfterPos(this.state.selection.from);n.nodeType==1&&Ll(this,n.getBoundingClientRect(),e)}else Ll(this,this.coordsAtPos(this.state.selection.head,1),e)}destroyPluginViews(){let e;for(;e=this.pluginViews.pop();)e.destroy&&e.destroy()}updatePluginViews(e){if(!e||e.plugins!=this.state.plugins||this.directPlugins!=this.prevDirectPlugins){this.prevDirectPlugins=this.directPlugins,this.destroyPluginViews();for(let n=0;n<this.directPlugins.length;n++){let r=this.directPlugins[n];r.spec.view&&this.pluginViews.push(r.spec.view(this))}for(let n=0;n<this.state.plugins.length;n++){let r=this.state.plugins[n];r.spec.view&&this.pluginViews.push(r.spec.view(this))}}else for(let n=0;n<this.pluginViews.length;n++){let r=this.pluginViews[n];r.update&&r.update(this,e)}}updateDraggedNode(e,n){let r=e.node,s=-1;if(this.state.doc.nodeAt(r.from)==r.node)s=r.from;else{let i=r.from+(this.state.doc.content.size-n.doc.content.size);(i>0&&this.state.doc.nodeAt(i))==r.node&&(s=i)}this.dragging=new Yd(e.slice,e.move,s<0?void 0:I.create(this.state.doc,s))}someProp(e,n){let r=this._props&&this._props[e],s;if(r!=null&&(s=n?n(r):r))return s;for(let o=0;o<this.directPlugins.length;o++){let a=this.directPlugins[o].props[e];if(a!=null&&(s=n?n(a):a))return s}let i=this.state.plugins;if(i)for(let o=0;o<i.length;o++){let a=i[o].props[e];if(a!=null&&(s=n?n(a):a))return s}}hasFocus(){if(ze){let e=this.root.activeElement;if(e==this.dom)return!0;if(!e||!this.dom.contains(e))return!1;for(;e&&this.dom!=e&&this.dom.contains(e);){if(e.contentEditable=="false")return!1;e=e.parentElement}return!0}return this.root.activeElement==this.dom}focus(){this.domObserver.stop(),this.editable&&mg(this.dom),At(this),this.domObserver.start()}get root(){let e=this._root;if(e==null){for(let n=this.dom.parentNode;n;n=n.parentNode)if(n.nodeType==9||n.nodeType==11&&n.host)return n.getSelection||(Object.getPrototypeOf(n).getSelection=()=>n.ownerDocument.getSelection()),this._root=n}return e||document}updateRoot(){this._root=null}posAtCoords(e){return kg(this,e)}coordsAtPos(e,n=1){return Md(this,e,n)}domAtPos(e,n=0){return this.docView.domFromPos(e,n)}nodeDOM(e){let n=this.docView.descAt(e);return n?n.nodeDOM:null}posAtDOM(e,n,r=-1){let s=this.docView.posFromDOM(e,n,r);if(s==null)throw new RangeError("DOM position not inside the editor");return s}endOfTextblock(e,n){return Cg(this,n||this.state,e)}pasteHTML(e,n){return us(this,"",e,!1,n||new ClipboardEvent("paste"))}pasteText(e,n){return us(this,e,null,!0,n||new ClipboardEvent("paste"))}destroy(){this.docView&&(Qg(this),this.destroyPluginViews(),this.mounted?(this.docView.update(this.state.doc,[],uo(this),this),this.dom.textContent=""):this.dom.parentNode&&this.dom.parentNode.removeChild(this.dom),this.docView.destroy(),this.docView=null,ng())}get isDestroyed(){return this.docView==null}dispatchEvent(e){return ty(this,e)}dispatch(e){let n=this._props.dispatchTransaction;n?n.call(this,e):this.updateState(this.state.apply(e))}domSelectionRange(){let e=this.domSelection();return Ae&&this.root.nodeType===11&&ag(this.dom.ownerDocument)==this.dom&&vy(this,e)||e}domSelection(){return this.root.getSelection()}}function lc(t){let e=Object.create(null);return e.class="ProseMirror",e.contenteditable=String(t.editable),t.someProp("attributes",n=>{if(typeof n=="function"&&(n=n(t.state)),n)for(let r in n)r=="class"?e.class+=" "+n[r]:r=="style"?e.style=(e.style?e.style+";":"")+n[r]:!e[r]&&r!="contenteditable"&&r!="nodeName"&&(e[r]=String(n[r]))}),e.translate||(e.translate="no"),[Q.node(0,t.state.doc.content.size,e)]}function cc(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:Q.widget(t.state.selection.head,e,{raw:!0,marks:t.markCursor})}}else t.cursorWrapper=null}function uc(t){return!t.someProp("editable",e=>e(t.state)===!1)}function Iy(t,e){let n=Math.min(t.$anchor.sharedDepth(t.head),e.$anchor.sharedDepth(e.head));return t.$anchor.start(n)!=e.$anchor.start(n)}function dc(t){let e=Object.create(null);function n(r){for(let s in r)Object.prototype.hasOwnProperty.call(e,s)||(e[s]=r[s])}return t.someProp("nodeViews",n),t.someProp("markViews",n),e}function Dy(t,e){let n=0,r=0;for(let s in t){if(t[s]!=e[s])return!0;n++}for(let s in e)r++;return n!=r}function hc(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")}var Py=t=>{if(typeof t!="string")throw new TypeError("Expected a string");return t.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")};const Ly=Ai(Py);function By(t){return!!(t.prev&&t.next&&t.prev.text.full!==t.next.text.full)}function zy(t){return!!(t.prev&&t.next&&t.prev.range.cursor!==t.next.range.cursor)}function $y(t){return!!(!t.prev&&t.next)}function Fy(t){return!!(t.prev&&!t.next)}function Vy(t){return!!(t.prev&&t.next&&t.prev.range.from!==t.next.range.from)}function Hy(t){return t==="invalid-exit-split"}var Uy=["jump-backward-exit","jump-forward-exit"],jy=["jump-backward-change","jump-forward-change"];function Wy(t){var e,n;return yt(Uy,(e=t.exit)==null?void 0:e.exitReason)||yt(jy,(n=t.change)==null?void 0:n.changeReason)}function fc(t){return!!(t&&t.query.full.length>=t.suggester.matchOffset)}function pc(t){return De(t)&&t instanceof L}function Le(t){const{match:e,changeReason:n,exitReason:r}=t;return{...e,changeReason:n,exitReason:r}}function Ky(t,e){const{invalidPrefixCharacters:n,validPrefixCharacters:r}=e;return n?!new RegExp(jo(n)).test(t):new RegExp(jo(r)).test(t)}function qy(t){const{text:e,regexp:n,$pos:r,suggester:s}=t,i=r.start();let o;return fa(e,n).forEach(a=>{const l=a.input.slice(Math.max(0,a.index-1),a.index);if(Ky(l,s)){const c=a.index+i,u=a[0],d=a[1];if(!P(u)||!P(d))return;const h=c+u.length,f=Math.min(h,r.pos),p=f-c;c<r.pos&&h>=r.pos&&(o={range:{from:c,to:h,cursor:f},match:a,query:{partial:u.slice(d.length,p),full:u.slice(d.length)},text:{partial:u.slice(0,p),full:u},textAfter:r.doc.textBetween(h,r.end(),Kt,Kt),textBefore:r.doc.textBetween(i,c,Kt,Kt),suggester:s})}}),o}function nh(t){const{$pos:e,suggester:n}=t,{char:r,name:s,startOfLine:i,supportedCharacters:o,matchOffset:a,multiline:l,caseInsensitive:c,unicode:u}=n,d=n0({char:r,matchOffset:a,startOfLine:i,supportedCharacters:o,multiline:l,caseInsensitive:c,unicode:u}),h=e.doc.textBetween(e.before(),e.end(),Kt,Kt);return qy({suggester:n,text:h,regexp:d,$pos:e,char:r,name:s})}function rh(t){const{state:e,match:n}=t;try{return nh({$pos:e.doc.resolve(n.range.cursor),suggester:n.suggester})}catch{return}}function sh(t){const{prev:e,next:n,state:r}=t;return!n&&e.range.from>=r.doc.nodeSize?{exit:Le({match:e,exitReason:"delete"})}:!n||!e.query.partial?{exit:Le({match:e,exitReason:"invalid-exit-split"})}:e.range.to===n.range.cursor?{exit:Le({match:n,exitReason:"exit-end"})}:e.query.partial?{exit:Le({match:n,exitReason:"exit-split"})}:{}}function Jy(t){const{prev:e,next:n,state:r}=t,s=M(),i=rh({state:r,match:e}),{exit:o}=i&&i.query.full!==e.query.full?sh({prev:e,next:i,state:r}):s;return e.range.from<n.range.from?{exit:o??Le({match:e,exitReason:"jump-forward-exit"}),change:Le({match:n,changeReason:"jump-forward-change"})}:{exit:o??Le({match:e,exitReason:"jump-backward-exit"}),change:Le({match:n,changeReason:"jump-backward-change"})}}function Gy(t){const{match:e,state:n,$pos:r}=t,{selection:s}=n,i=rh({match:e,state:n});return!i||i.text.full!==e.text.full?sh({prev:e,next:i,state:n}):!s.empty&&(s.from<=e.range.from||s.to>=e.range.to)?{exit:Le({match:e,exitReason:"selection-outside"})}:r.pos>e.range.to?{exit:Le({match:e,exitReason:"move-end"})}:r.pos<=e.range.from?{exit:Le({match:e,exitReason:"move-start"})}:{}}function Xy(t){const{prev:e,next:n,state:r,$pos:s}=t,i=M();if(!e&&!n)return i;const o={prev:e,next:n};return Vy(o)?Jy({prev:o.prev,next:o.next,state:r}):$y(o)?{change:Le({match:o.next,changeReason:"start"})}:Fy(o)?Gy({$pos:s,match:o.prev,state:r}):By(o)?{change:Le({match:o.next,changeReason:"change-character"})}:zy(o)?{change:Le({match:o.next,changeReason:r.selection.empty?"move":"selection-inside"})}:i}function mc(t,e){for(let n=t.depth;n>0;n--){const r=t.node(n);if(e.includes(r.type.name))return!0}return!1}function Uo(t,e){const{$from:n,$to:r}=t;return ih(t,e)?!0:$u(n.pos,r.pos).some(s=>Yy(n.doc.resolve(s),e))}function ih(t,e){const{$from:n,$to:r}=t,s=new Set((n.marksAcross(r)??[]).map(i=>i.type.name));return e.some(i=>s.has(i))}function Yy(t,e){const n=new Set(t.marks().map(r=>r.type.name));return e.some(r=>n.has(r))}function Zy(t,e){const{$cursor:n}=e,{validMarks:r,validNodes:s,invalidMarks:i,invalidNodes:o}=t;return!r&&!s&&nn(i)&&nn(o)?!0:!(r&&!ih(e,r)||s&&!mc(n,s)||!r&&Uo(e,i)||!s&&mc(n,o))}function gc(t){const{suggesters:e,$pos:n,selectionEmpty:r}=t;for(const s of e)if(!(s.emptySelectionsOnly&&!r))try{const i=nh({suggester:s,$pos:n});if(!i)continue;const o={$from:n.doc.resolve(i.range.from),$to:n.doc.resolve(i.range.to),$cursor:n};if(Zy(s,o)&&s.isValidPosition(o,i))return i}catch{}}function jo(t){return dp(t)?t.source:t}function Qy(t){return t?"^":""}function e0(t,e){return`(?:${jo(t)}){${e},}`}function t0(t){return P(t)?new RegExp(Ly(t)):t}function n0(t){const{char:e,matchOffset:n,startOfLine:r,supportedCharacters:s,captureChar:i=!0,caseInsensitive:o=!1,multiline:a=!1,unicode:l=!1}=t,c=`g${a?"m":""}${o?"i":""}${l?"u":""}`;let u=t0(e).source;return i&&(u=`(${u})`),new RegExp(`${Qy(r)}${u}${e0(s,n)}`,c)}var r0={appendTransaction:!1,priority:50,ignoredTag:"span",matchOffset:0,disableDecorations:!1,startOfLine:!1,suggestClassName:"suggest",suggestTag:"span",supportedCharacters:/\w+/,validPrefixCharacters:/^[\s\0]?$/,invalidPrefixCharacters:null,ignoredClassName:null,invalidMarks:[],invalidNodes:[],validMarks:null,validNodes:null,isValidPosition:()=>!0,checkNextValidSelection:null,emptySelectionsOnly:!1,caseInsensitive:!1,multiline:!1,unicode:!1,captureChar:!0},oh="__ignore_prosemirror_suggest_update__",ws,nr,he,Ot,vn,nt,ce,Mt,En,rr,s0=(rr=class{constructor(e){ft(this,ws,!1);ft(this,nr,!1);ft(this,he);ft(this,Ot);ft(this,vn);ft(this,nt,M());Me(this,"view");ft(this,ce,W.empty);ft(this,Mt,!1);ft(this,En,!1);Me(this,"setMarkRemoved",()=>{X(this,Mt,!0)});Me(this,"findNextTextSelection",e=>{const n=e.$from.doc,r=Math.min(n.nodeSize-2,e.to+1),s=n.resolve(r),i=V.findFrom(s,1,!0);if(pc(i))return i});Me(this,"ignoreNextExit",()=>{X(this,nr,!0)});Me(this,"addIgnored",({from:e,name:n,specific:r=!1})=>{const s=B(this,he).find(c=>c.name===n);if(!s)throw new Error(`No suggester exists for the name provided: ${n}`);const i=P(s.char)?s.char.length:1,o=e+i,a=s.ignoredClassName?{class:s.ignoredClassName}:{},l=Q.inline(e,o,{nodeName:s.ignoredTag,...a},{name:n,specific:r,char:s.char});X(this,ce,B(this,ce).add(this.view.state.doc,[l]))});Me(this,"removeIgnored",({from:e,name:n})=>{const r=B(this,he).find(o=>o.name===n);if(!r)throw new Error(`No suggester exists for the name provided: ${n}`);const s=P(r.char)?r.char.length:1,i=B(this,ce).find(e,e+s)[0];!i||i.spec.name!==n||X(this,ce,B(this,ce).remove([i]))});Me(this,"clearIgnored",e=>{if(!e){X(this,ce,W.empty);return}const r=B(this,ce).find().filter(({spec:s})=>s.name===e);X(this,ce,B(this,ce).remove(r))});Me(this,"findMatchAtPosition",(e,n)=>{const r=n?B(this,he).filter(s=>s.name===n):B(this,he);return gc({suggesters:r,$pos:e,docChanged:!1,selectionEmpty:!0})});Me(this,"setLastChangeFromAppend",()=>{X(this,En,!0)});const n=yc();X(this,he,e.map(n)),X(this,he,ir(B(this,he),(r,s)=>s.priority-r.priority))}static create(e){return new rr(e)}get decorationSet(){return B(this,ce)}get removed(){return B(this,Mt)}get match(){return B(this,Ot)?B(this,Ot):B(this,vn)&&B(this,nt).exit?B(this,vn):void 0}init(e){return this.view=e,this}createProps(e){const{name:n,char:r}=e.suggester;return{view:this.view,addIgnored:this.addIgnored,clearIgnored:this.clearIgnored,ignoreNextExit:this.ignoreNextExit,setMarkRemoved:this.setMarkRemoved,name:n,char:r,...e}}shouldRunExit(){return B(this,nr)?(X(this,nr,!1),!1):!0}updateWithNextSelection(e){var r,s,i;const n=this.findNextTextSelection(e.selection);if(n)for(const o of B(this,he)){const a=(r=B(this,nt).change)==null?void 0:r.suggester.name,l=(s=B(this,nt).exit)==null?void 0:s.suggester.name;(i=o.checkNextValidSelection)==null||i.call(o,n.$from,e,{change:a,exit:l})}}changeHandler(e,n){const{change:r,exit:s}=B(this,nt),i=this.match;if(!r&&!s||!fc(i))return;const o=n===(s==null?void 0:s.suggester.appendTransaction)&&this.shouldRunExit(),a=n===(r==null?void 0:r.suggester.appendTransaction);if(!(!o&&!a)){if(r&&s&&Wy({change:r,exit:s})){const l=this.createProps(s),c=this.createProps(r),u=s.range.from<r.range.from;o&&s.suggester.onChange(l,e),a&&r.suggester.onChange(c,e),o&&X(this,Mt,!1);return}r&&a&&r.suggester.onChange(this.createProps(r),e),s&&o&&(s.suggester.onChange(this.createProps(s),e),X(this,Mt,!1),Hy(s.exitReason)&&X(this,nt,M()))}}mapIgnoredDecorations(e){const n=B(this,ce).map(e.mapping,e.doc),s=n.find().filter(({from:i,to:o,spec:a})=>{const l=P(a.char)?a.char.length:1;return o-i!==l});X(this,ce,n.remove(s))}shouldIgnoreMatch({range:e,suggester:{name:n}}){return B(this,ce).find().some(({spec:i,from:o})=>o!==e.from?!1:i.specific?i.name===n:!0)}resetState(){X(this,nt,M()),X(this,Ot,void 0),X(this,Mt,!1),X(this,En,!1)}updateReasons(e){const{$pos:n,state:r}=e,s=B(this,ws),i=B(this,he),o=r.selection.empty,a=pc(r.selection)?gc({suggesters:i,$pos:n,docChanged:s,selectionEmpty:o}):void 0;X(this,Ot,a&&this.shouldIgnoreMatch(a)?void 0:a),X(this,nt,Xy({next:B(this,Ot),prev:B(this,vn),state:r,$pos:n}))}addSuggester(e){const n=B(this,he).find(s=>s.name===e.name),r=yc();if(n)X(this,he,B(this,he).map(s=>s===n?r(e):s));else{const s=[...B(this,he),r(e)];X(this,he,ir(s,(i,o)=>o.priority-i.priority))}return()=>this.removeSuggester(e.name)}removeSuggester(e){const n=P(e)?e:e.name;X(this,he,B(this,he).filter(r=>r.name!==n)),this.clearIgnored(n)}toJSON(){return this.match}apply(e){const{exit:n,change:r}=B(this,nt);if(B(this,En)&&(X(this,En,!1),!(n!=null&&n.suggester.appendTransaction)&&!(r!=null&&r.suggester.appendTransaction)))return this;const{tr:s,state:i}=e,o=s.docChanged||s.selectionSet;return s.getMeta(oh)||!o&&!B(this,Mt)?this:(X(this,ws,s.docChanged),this.mapIgnoredDecorations(s),n&&this.resetState(),X(this,vn,B(this,Ot)),this.updateReasons({$pos:s.selection.$from,state:i}),this)}createDecorations(e){const n=this.match;if(!fc(n))return B(this,ce);const{disableDecorations:r}=n.suggester;if(ee(r)?r(e,n):r)return B(this,ce);const{range:i,suggester:o}=n,{name:a,suggestTag:l,suggestClassName:c}=o,{from:u,to:d}=i;return this.shouldIgnoreMatch(n)?B(this,ce):B(this,ce).add(e.doc,[Q.inline(u,d,{nodeName:l,class:a?`${c} suggest-${a}`:c},{name:a})])}},ws=new WeakMap,nr=new WeakMap,he=new WeakMap,Ot=new WeakMap,vn=new WeakMap,nt=new WeakMap,ce=new WeakMap,Mt=new WeakMap,En=new WeakMap,rr);function yc(){const t=new Set;return e=>{if(t.has(e.name))throw new Error(`A suggester already exists with the name '${e.name}'. The name provided must be unique.`);const n={...r0,...e};return t.add(e.name),n}}var ah=new br("suggest");function Ma(t){return ah.getState(t)}function xc(t,e){return Ma(t).addSuggester(e)}function bc(t){t.setMeta(oh,!0)}function i0(t,e){return Ma(t).removeSuggester(e)}function o0(...t){const e=s0.create(t);return new dn({key:ah,view:n=>(e.init(n),{update:r=>e.changeHandler(r.state.tr,!1)}),state:{init:()=>e,apply:(n,r,s,i)=>e.apply({tr:n,state:i})},appendTransaction:(n,r,s)=>{const i=s.tr;return e.updateWithNextSelection(i),e.changeHandler(i,!0),i.docChanged||i.steps.length>0||i.selectionSet||i.storedMarksSet?(e.setLastChangeFromAppend(),i):null},props:{decorations:n=>e.createDecorations(n)}})}function _a(t,e){const n=Object.getPrototypeOf(e);let r=t.selection,s=t.doc,i=t.storedMarks;const o=M();for(const[a,l]of Object.entries(e))o[a]={value:l};return Object.create(n,{...o,storedMarks:{get(){return i}},selection:{get(){return r}},doc:{get(){return s}},tr:{get(){return r=t.selection,s=t.doc,i=t.storedMarks,t}}})}function Fs(t){return({state:e,dispatch:n,view:r,tr:s})=>t(_a(s,e),n,r)}function kc(t){return e=>{var n;return R(e.dispatch===void 0||e.dispatch===((n=e.view)==null?void 0:n.dispatch),{code:b.NON_CHAINABLE_COMMAND}),t(e)}}var st={get isBrowser(){return!!(typeof window<"u"&&typeof window.document<"u"&&window.navigator&&window.navigator.userAgent)},get isJSDOM(){return st.isBrowser&&window.navigator.userAgent.includes("jsdom")},get isNode(){return typeof process<"u"&&process.versions!=null&&process.versions.node!=null},get isIos(){return st.isBrowser&&/iPod|iPhone|iPad/.test(navigator.platform)},get isMac(){return st.isBrowser&&/Mac|iPod|iPhone|iPad/.test(navigator.platform)},get isApple(){return st.isNode?process.platform==="darwin":st.isBrowser?/Mac|iPod|iPhone|iPad/.test(window.navigator.platform):!1},get isDevelopment(){return!1},get isTest(){return!1},get isProduction(){return!0}};function zt(t,e){var n;const r=M0(t);return((n=r==null?void 0:r.getComputedStyle(t))==null?void 0:n.getPropertyValue(e))??""}function Wo(t){return De(t)&&Ge(t.nodeType)&&P(t.nodeName)}function $e(t){return Wo(t)&&t.nodeType===1}function Na(t){const{types:e,node:n}=t;if(!n)return!1;const r=s=>s===n.type||s===n.type.name;return me(e)?e.some(r):r(e)}function zi(t){const{predicate:e,selection:n}=t,r=uh(n)?n.selection.$from:Ra(n)?n.$from:n;for(let s=r.depth;s>0;s--){const i=r.node(s),o=s>0?r.before(s):0,a=r.start(s),l=o+i.nodeSize;if(e(i,o))return{pos:o,depth:s,node:i,start:a,end:l}}}function a0(t){const{depth:e}=t,n=e>0?t.before(e):0,r=t.node(e),s=t.start(e),i=n+r.nodeSize;return{pos:n,start:s,node:r,end:i,depth:e}}function hs(t){const{types:e,selection:n}=t;return zi({predicate:r=>Na({types:e,node:r}),selection:n})}function l0(t){const{types:e,selection:n}=t;if(!(!Fi(n)||!Na({types:e,node:n.node})))return{pos:n.$from.pos,depth:n.$from.depth,start:n.$from.start(),end:n.$from.pos+n.node.nodeSize,node:n.node}}function lh(t){return Ra(t)?t.empty:t.selection.empty}function c0(t){return t.docChanged||t.selectionSet}function u0(t){return!!fs(t)}function fs(t){const{state:e,type:n,attrs:r}=t,{selection:s,doc:i}=e,o=P(n)?i.type.schema.nodes[n]:n;R(o,{code:b.SCHEMA,message:`No node exists for ${n}`});const a=l0({selection:s,types:n})??zi({predicate:l=>l.type===o,selection:s});return!r||ni(r)||!a||a.node.hasMarkup(o,{...a.node.attrs,...r})?a:void 0}function yi(...t){return e=>{if(!dl(t))return!1;const[n,...r]=t;let s=!1;const i=(...l)=>()=>{if(!dl(l))return!1;s=!0;const[,...c]=l;return yi(...l)({...e,next:i(...c)})},o=i(...r),a=n({...e,next:o});return s||a?a:o()}}function d0(t,e){const n=new Map,r=M();for(const s of t)for(const[i,o]of fe(s)){const l=[...n.get(i)??[],o],c=yi(...l);n.set(i,l),r[i]=e(c)}return r}function h0(t){return d0(t,e=>(n,r,s)=>e({state:n,dispatch:r,view:s,tr:n.tr,next:()=>!1}))}function Aa(t,e){const n=t.attrs??{};return Object.entries(e).every(([r,s])=>n[r]===s)}function kr(t){return De(t)}function Sr(t,e){return me(e)?yt(e,t[It]):e===t[It]}function f0(t){return De(t)&&t instanceof _o}function p0(t,e){return P(t)?re(e.nodes,t):t}function ch(t){return De(t)&&t instanceof Es}function m0(t,e){return P(t)?re(e.marks,t):t}function $i(t){return De(t)&&t instanceof Xt}function g0(t){return De(t)&&t instanceof x}function y0(t){return De(t)&&t instanceof U}function uh(t){return De(t)&&t instanceof kn}function wr(t){return De(t)&&t instanceof L}function Ra(t){return De(t)&&t instanceof V}function x0(t){return De(t)&&t instanceof or}function Sc(t){const{trState:e,from:n,to:r,type:s,attrs:i={}}=t,{doc:o}=e,a=m0(s,o.type.schema);if(Object.keys(i).length===0)return o.rangeHasMark(n,r,a);let l=!1;return r>n&&o.nodesBetween(n,r,c=>l?!1:(l=(c.marks??[]).some(d=>d.type!==a?!1:Aa(d,i)),!l)),l}function Fi(t){return De(t)&&t instanceof I}function dh(t){const{trState:e,type:n,attrs:r={},from:s,to:i}=t,{selection:o,doc:a,storedMarks:l}=e,c=P(n)?a.type.schema.marks[n]:n;if(R(c,{code:b.SCHEMA,message:`Mark type: ${n} does not exist on the current schema.`}),s&&i)try{return Math.max(s,i)<a.nodeSize&&Sc({...t,from:s,to:i})}catch{return!1}return o.empty?(l??o.$from.marks()).some(d=>d.type!==n?!1:Aa(d,r??{})):Sc({...t,from:o.from,to:o.to})}function Ia(t,e={}){const n=b0(t.type.schema);if(!n)return!1;const{ignoreAttributes:r,ignoreDocAttributes:s}=e;return r?hh(n,t):s?n.content.eq(t.content):n.eq(t)}function hh(t,e){if(t===e)return!0;const n=t.type===e.type&&U.sameSet(t.marks,e.marks);function r(){if(t.content===e.content)return!0;if(t.content.size!==e.content.size)return!1;const s=[],i=[];t.content.forEach(o=>s.push(o)),e.content.forEach(o=>i.push(o));for(const[o,a]of s.entries()){const l=i[o];if(!l||!hh(a,l))return!1}return!0}return n&&r()}function b0(t){var e;return((e=t.nodes.doc)==null?void 0:e.createAndFill())??void 0}function Vi(t){for(const e of Object.values(t.nodes))if(e.name!=="doc"&&(e.isBlock||e.isTextblock))return e;R(!1,{code:b.SCHEMA,message:"No default block node found for the provided schema."})}function k0(t){return t.type===Vi(t.type.schema)}function Da(t){return!!t&&t.type.isBlock&&!t.textContent&&!t.childCount}function Bn(t,e,n){const r=t.parent.childAfter(t.parentOffset);if(!r.node)return;const s=P(e)?e:e.name,i=r.node.marks.find(({type:d})=>d.name===s);let o=t.index(),a=t.start()+r.offset,l=o+1,c=a+r.node.nodeSize;if(!i)return n&&c<n.pos?Bn(t.doc.resolve(c+1),e,n):void 0;for(;o>0&&i.isInSet(t.parent.child(o-1).marks);)o-=1,a-=t.parent.child(o).nodeSize;for(;l<t.parent.childCount&&i.isInSet(t.parent.child(l).marks);)c+=t.parent.child(l).nodeSize,l+=1;const u=t.doc.textBetween(a,c,da,`
|
|
39
39
|
|
|
40
|
-
`);return{from:a,to:c,text:u,mark:i}}function
|
|
40
|
+
`);return{from:a,to:c,text:u,mark:i}}function S0(t){var e;return((e=t.content.firstChild)==null?void 0:e.textContent)??""}function w0(t,e){if(!wr(t.selection))return;let{from:n,to:r}=t.selection;const s=(o,a)=>S0(L.between(t.doc.resolve(o),t.doc.resolve(a)).content());for(let o=s(n-1,n);o&&!e.test(o);n--,o=s(n-1,n));for(let o=s(r,r+1);o&&!e.test(o);r++,o=s(r,r+1));if(n===r)return;const i=t.doc.textBetween(n,r,da,`
|
|
41
41
|
|
|
42
|
-
`);return{from:n,to:r,text:i}}function
|
|
42
|
+
`);return{from:n,to:r,text:i}}function v0(t){return w0(t,/\W/)}function wc(t,e=0){const n=me(t)?t[e]:t;return Pu(P(n),`No match string found for match ${t}`),n??""}function E0(t){return wr(t)?t.$cursor:void 0}function C0(t,e){return $i(t)?e?t.type===e.nodes.doc:t.type.name==="doc":!1}function T0(t){return De(t)&&Ge(t.anchor)&&Ge(t.head)}function ct(t,e){const n=e.nodeSize-2,r=0;let s;const i=l=>yp({min:r,max:n,value:l});if(Ra(t))return t;if(t==="all")return new Be(e);if(t==="start"?s=r:t==="end"?s=n:x0(t)?s=t.pos:s=t,Ge(s))return s=i(s),L.near(e.resolve(s));if(T0(s)){const l=i(s.anchor),c=i(s.head);return L.between(e.resolve(l),e.resolve(c))}const o=i(s.from),a=i(s.to);return L.between(e.resolve(o),e.resolve(a))}var O0=3;function fh(t){const{content:e,schema:n,document:r,stringHandler:s,onError:i,attempts:o=0}=t,a=i&&o<=O0||o===0;if(R(a,{code:b.INVALID_CONTENT,message:"The invalid content has been called recursively more than ${MAX_ATTEMPTS} times. The content is invalid and the error handler has not been able to recover properly."}),P(e))return R(s,{code:b.INVALID_CONTENT,message:`The string '${e}' was added to the editor, but no \`stringHandler\` was added. Please provide a valid string handler which transforms your content to a \`ProsemirrorNode\` to prevent this error.`}),s({document:r,content:e,schema:n});if(uh(e))return e.doc;if($i(e))return e;try{return n.nodeFromJSON(e)}catch(l){const c=D0({schema:n,error:l,json:e}),u=i==null?void 0:i(c);return R(u,{code:b.INVALID_CONTENT,message:`An error occurred when processing the content. Please provide an \`onError\` handler to process the invalid content: ${JSON.stringify(c.invalidContent,null,2)}`}),fh({...t,content:u,attempts:o+1})}}function Hi(){const t=xd();if(t)return t;throw new Error(`Unable to retrieve the document from the global scope.
|
|
43
43
|
It seems that you are running Remirror in a non-browser environment. Remirror need browser APIs to work.
|
|
44
44
|
If you are using Jest (or other testing frameworks), make sure that you are using the JSDOM environment (https://jestjs.io/docs/29.0/configuration#testenvironment-string).
|
|
45
45
|
If you are using Next.js (or other server-side rendering frameworks), please use dynamic import with \`ssr: false\` to load the editor component without rendering it on the server (https://nextjs.org/docs/advanced-features/dynamic-import#with-no-ssr).
|
|
46
|
-
If you are using Node.js, you can install JSDOM and Remirror will try to use it automatically, or you can create a fake document and pass it to Remirror`)}function
|
|
47
|
-
`).scrollIntoView()),!0)};function Pa(t){for(let e=0;e<t.edgeCount;e++){let{type:n}=t.edge(e);if(n.isTextblock&&!n.hasRequiredAttrs())return n}return null}const Q0=(t,e)=>{let{$head:n,$anchor:r}=t.selection;if(!n.parent.type.spec.code||!n.sameParent(r))return!1;let s=n.node(-1),i=n.indexAfter(-1),o=Pa(s.contentMatchAt(i));if(!o||!s.canReplaceWith(i,i,o))return!1;if(e){let a=n.after(),l=t.tr.replaceWith(a,a,o.createAndFill());l.setSelection(V.near(l.doc.resolve(a),1)),e(l.scrollIntoView())}return!0},ex=(t,e)=>{let n=t.selection,{$from:r,$to:s}=n;if(n instanceof Be||r.parent.inlineContent||s.parent.inlineContent)return!1;let i=Pa(s.parent.contentMatchAt(s.indexAfter()));if(!i||!i.isTextblock)return!1;if(e){let o=(!r.parentOffset&&s.index()<s.parent.childCount?r:s).pos,a=t.tr.insert(o,i.createAndFill());a.setSelection(L.create(a.doc,o+1)),e(a.scrollIntoView())}return!0},tx=(t,e)=>{let{$cursor:n}=t.selection;if(!n||n.parent.content.size)return!1;if(n.depth>1&&n.after()!=n.end(-1)){let i=n.before();if(Zn(t.doc,i))return e&&e(t.tr.split(i).scrollIntoView()),!0}let r=n.blockRange(),s=r&&xr(r);return s==null?!1:(e&&e(t.tr.lift(r,s).scrollIntoView()),!0)};function nx(t){return(e,n)=>{let{$from:r,$to:s}=e.selection;if(e.selection instanceof I&&e.selection.node.isBlock)return!r.parentOffset||!Zn(e.doc,r.pos)?!1:(n&&n(e.tr.split(r.pos).scrollIntoView()),!0);if(!r.parent.isBlock)return!1;if(n){let i=s.parentOffset==s.parent.content.size,o=e.tr;(e.selection instanceof L||e.selection instanceof Be)&&o.deleteSelection();let a=r.depth==0?null:Pa(r.node(-1).contentMatchAt(r.indexAfter(-1))),l=i&&a?[{type:a}]:void 0,c=Zn(o.doc,o.mapping.map(r.pos),1,l);if(!l&&!c&&Zn(o.doc,o.mapping.map(r.pos),1,a?[{type:a}]:void 0)&&(a&&(l=[{type:a}]),c=!0),c&&(o.split(o.mapping.map(r.pos),1,l),!i&&!r.parentOffset&&r.parent.type!=a)){let u=o.mapping.map(r.before()),d=o.doc.resolve(u);a&&r.node(-1).canReplaceWith(d.index(),d.index()+1,a)&&o.setNodeMarkup(o.mapping.map(r.before()),a)}n(o.scrollIntoView())}return!0}}const rx=nx(),sx=(t,e)=>{let{$from:n,to:r}=t.selection,s,i=n.sharedDepth(r);return i==0?!1:(s=n.before(i),e&&e(t.tr.setSelection(I.create(t.doc,s))),!0)},ix=(t,e)=>(e&&e(t.tr.setSelection(new Be(t.doc))),!0);function ox(t,e,n){let r=e.nodeBefore,s=e.nodeAfter,i=e.index();return!r||!s||!r.type.compatibleContent(s.type)?!1:!r.content.size&&e.parent.canReplace(i-1,i)?(n&&n(t.tr.delete(e.pos-r.nodeSize,e.pos).scrollIntoView()),!0):!e.parent.canReplace(i,i+1)||!(s.isTextblock||Cs(t.doc,e.pos))?!1:(n&&n(t.tr.clearIncompatible(e.pos,r.type,r.contentMatchAt(r.childCount)).join(e.pos).scrollIntoView()),!0)}function Sh(t,e,n,r){let s=e.nodeBefore,i=e.nodeAfter,o,a,l=s.type.spec.isolating||i.type.spec.isolating;if(!l&&ox(t,e,n))return!0;let c=!l&&e.parent.canReplace(e.index(),e.index()+1);if(c&&(o=(a=s.contentMatchAt(s.childCount)).findWrapping(i.type))&&a.matchType(o[0]||i.type).validEnd){if(n){let f=e.pos+i.nodeSize,p=x.empty;for(let y=o.length-1;y>=0;y--)p=x.from(o[y].create(null,p));p=x.from(s.copy(p));let m=t.tr.step(new pe(e.pos-1,f,e.pos,f,new w(p,1,0),o.length,!0)),g=f+2*o.length;Cs(m.doc,g)&&m.join(g),n(m.scrollIntoView())}return!0}let u=i.type.spec.isolating||r>0&&l?null:V.findFrom(e,1),d=u&&u.$from.blockRange(u.$to),h=d&&xr(d);if(h!=null&&h>=e.depth)return n&&n(t.tr.lift(d,h).scrollIntoView()),!0;if(c&&dr(i,"start",!0)&&dr(s,"end")){let f=s,p=[];for(;p.push(f),!f.isTextblock;)f=f.lastChild;let m=i,g=1;for(;!m.isTextblock;m=m.firstChild)g++;if(f.canReplace(f.childCount,f.childCount,m.content)){if(n){let y=x.empty;for(let D=p.length-1;D>=0;D--)y=x.from(p[D].copy(y));let k=t.tr.step(new pe(e.pos-p.length,e.pos+i.nodeSize,e.pos+g,e.pos+i.nodeSize-g,new w(y,p.length,0),0,!0));n(k.scrollIntoView())}return!0}}return!1}function wh(t){return function(e,n){let r=e.selection,s=t<0?r.$from:r.$to,i=s.depth;for(;s.node(i).isInline;){if(!i)return!1;i--}return s.node(i).isTextblock?(n&&n(e.tr.setSelection(L.create(e.doc,t<0?s.start(i):s.end(i)))),!0):!1}}const ax=wh(-1),lx=wh(1);function cx(t,e,n,r){for(let s=0;s<e.length;s++){let{$from:i,$to:o}=e[s],a=i.depth==0?t.inlineContent&&t.type.allowsMarkType(n):!1;if(t.nodesBetween(i.pos,o.pos,(l,c)=>{if(a||!r)return!1;a=l.inlineContent&&l.type.allowsMarkType(n)}),a)return!0}return!1}function ux(t,e=null,n){let r=n!==!1;return function(s,i){let{empty:o,$cursor:a,ranges:l}=s.selection;if(o&&!a||!cx(s.doc,l,t,r))return!1;if(i)if(a)t.isInSet(s.storedMarks||a.marks())?i(s.tr.removeStoredMark(t)):i(s.tr.addStoredMark(t.create(e)));else{let c,u=s.tr;c=!l.some(d=>s.doc.rangeHasMark(d.$from.pos,d.$to.pos,t));for(let d=0;d<l.length;d++){let{$from:h,$to:f}=l[d];if(!c)u.removeMark(h.pos,f.pos,t);else{let p=h.pos,m=f.pos,g=h.nodeAfter,y=f.nodeBefore,k=g&&g.isText?/^\s*/.exec(g.text)[0].length:0,D=y&&y.isText?/\s*$/.exec(y.text)[0].length:0;p+k<m&&(p+=k,m-=D),u.addMark(p,m,t.create(e))}}i(u.scrollIntoView())}return!0}}function Ui(...t){return function(e,n,r){for(let s=0;s<t.length;s++)if(t[s](e,n,r))return!0;return!1}}let fo=Ui(yh,xh,J0),Ec=Ui(yh,X0,Y0);const Tt={Enter:Ui(Z0,ex,tx,rx),"Mod-Enter":Q0,Backspace:fo,"Mod-Backspace":fo,"Shift-Backspace":fo,Delete:Ec,"Mod-Delete":Ec,"Mod-a":ix},vh={"Ctrl-h":Tt.Backspace,"Alt-Backspace":Tt["Mod-Backspace"],"Ctrl-d":Tt.Delete,"Ctrl-Alt-Backspace":Tt["Mod-Delete"],"Alt-Delete":Tt["Mod-Delete"],"Alt-d":Tt["Mod-Delete"],"Ctrl-a":ax,"Ctrl-e":lx};for(let t in Tt)vh[t]=Tt[t];const dx=typeof navigator<"u"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):typeof os<"u"&&os.platform?os.platform()=="darwin":!1,po=dx?vh:Tt;var sn={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:"'"},bi={48:")",49:"!",50:"@",51:"#",52:"$",53:"%",54:"^",55:"&",56:"*",57:"(",59:":",61:"+",173:"_",186:":",187:"+",188:"<",189:"_",190:">",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},hx=typeof navigator<"u"&&/Mac/.test(navigator.platform),fx=typeof navigator<"u"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(var we=0;we<10;we++)sn[48+we]=sn[96+we]=String(we);for(var we=1;we<=24;we++)sn[we+111]="F"+we;for(var we=65;we<=90;we++)sn[we]=String.fromCharCode(we+32),bi[we]=String.fromCharCode(we);for(var mo in sn)bi.hasOwnProperty(mo)||(bi[mo]=sn[mo]);function px(t){var e=hx&&t.metaKey&&t.shiftKey&&!t.ctrlKey&&!t.altKey||fx&&t.shiftKey&&t.key&&t.key.length==1||t.key=="Unidentified",n=!e&&t.key||(t.shiftKey?bi:sn)[t.keyCode]||t.key||"Unidentified";return n=="Esc"&&(n="Escape"),n=="Del"&&(n="Delete"),n=="Left"&&(n="ArrowLeft"),n=="Up"&&(n="ArrowUp"),n=="Right"&&(n="ArrowRight"),n=="Down"&&(n="ArrowDown"),n}const mx=typeof navigator<"u"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):!1;function gx(t){let e=t.split(/-(?!$)/),n=e[e.length-1];n=="Space"&&(n=" ");let r,s,i,o;for(let a=0;a<e.length-1;a++){let l=e[a];if(/^(cmd|meta|m)$/i.test(l))o=!0;else if(/^a(lt)?$/i.test(l))r=!0;else if(/^(c|ctrl|control)$/i.test(l))s=!0;else if(/^s(hift)?$/i.test(l))i=!0;else if(/^mod$/i.test(l))mx?o=!0:s=!0;else throw new Error("Unrecognized modifier name: "+l)}return r&&(n="Alt-"+n),s&&(n="Ctrl-"+n),o&&(n="Meta-"+n),i&&(n="Shift-"+n),n}function yx(t){let e=Object.create(null);for(let n in t)e[gx(n)]=t[n];return e}function go(t,e,n=!0){return e.altKey&&(t="Alt-"+t),e.ctrlKey&&(t="Ctrl-"+t),e.metaKey&&(t="Meta-"+t),n&&e.shiftKey&&(t="Shift-"+t),t}function Eh(t){let e=yx(t);return function(n,r){let s=px(r),i,o=e[go(s,r)];if(o&&o(n.state,n.dispatch,n))return!0;if(s.length==1&&s!=" "){if(r.shiftKey){let a=e[go(s,r,!1)];if(a&&a(n.state,n.dispatch,n))return!0}if((r.shiftKey||r.altKey||r.metaKey||s.charCodeAt(0)>127)&&(i=sn[r.keyCode])&&i!=s){let a=e[go(i,r)];if(a&&a(n.state,n.dispatch,n))return!0}}return!1}}function xx(t){const e=ir(t,(i,o)=>(o.priority??Y.Low)-(i.priority??Y.Low)),n=[],r=[];for(const i of e)Cx(i)?n.push(i):r.push(i);let s;return new dn({key:bx,view:i=>(s=i,{}),props:{transformPasted:i=>{var c,u,d;const o=s.state.selection.$from,a=o.node().type.name,l=new Set(o.marks().map(h=>h.type.name));for(const h of n){if((c=h.ignoredNodes)!=null&&c.includes(a)||(u=h.ignoredMarks)!=null&&u.some(k=>l.has(k)))continue;const f=((d=i.content.firstChild)==null?void 0:d.textContent)??"",p=!s.state.selection.empty&&i.content.childCount===1&&f,m=fa(f,h.regexp)[0];if(p&&m&&h.type==="mark"&&h.replaceSelection){const{from:k,to:D}=s.state.selection,q=s.state.doc.slice(k,D),J=q.content.textBetween(0,q.content.size);if(typeof h.replaceSelection!="boolean"?h.replaceSelection(J):h.replaceSelection){const $=[],{getAttributes:oe,markType:Ve}=h,F=ee(oe)?oe(m,!0):oe,ht=Ve.create(F);return q.content.forEach(Bt=>{if(Bt.isText){const Qi=ht.addToSet(Bt.marks);$.push(Bt.mark(Qi))}}),w.maxOpen(x.fromArray($))}}const{nodes:g,transformed:y}=vx(i.content,h,s.state.schema);y&&(i=h.type==="node"&&h.nodeType.isBlock?new w(x.fromArray(g),0,0):new w(x.fromArray(g),i.openStart,i.openEnd))}return _x(i)},handleDOMEvents:{paste:(i,o)=>{var d,h;const a=o;if(!((h=(d=i.props).editable)!=null&&h.call(d,i.state)))return!1;const{clipboardData:l}=a;if(!l)return!1;const c=[...l.items].map(f=>f.getAsFile()).filter(f=>!!f);if(c.length===0)return!1;const{selection:u}=i.state;for(const{fileHandler:f,regexp:p}of r){const m=p?c.filter(g=>p.test(g.type)):c;if(m.length!==0&&f({event:a,files:m,selection:u,view:i,type:"paste"}))return a.preventDefault(),!0}return!1},drop:(i,o)=>{var f,p,m;const a=o;if(!((p=(f=i.props).editable)!=null&&p.call(f,i.state)))return!1;const{dataTransfer:l,clientX:c,clientY:u}=a;if(!l)return!1;const d=Mx(a);if(d.length===0)return!1;const h=((m=i.posAtCoords({left:c,top:u}))==null?void 0:m.pos)??i.state.selection.anchor;for(const{fileHandler:g,regexp:y}of r){const k=y?d.filter(D=>y.test(D.type)):d;if(k.length!==0&&g({event:a,files:k,pos:h,view:i,type:"drop"}))return a.preventDefault(),!0}return!1}}}})}var bx=new br("pasteRule");function yo(t,e){return function n(r){const{fragment:s,rule:i,nodes:o}=r,{regexp:a,ignoreWhitespace:l,ignoredMarks:c,ignoredNodes:u}=i;let d=!1;return s.forEach(h=>{if(u!=null&&u.includes(h.type.name)||Tx(h)){o.push(h);return}if(!h.isText){const m=n({fragment:h.content,rule:i,nodes:[]});d||(d=m.transformed);const g=x.fromArray(m.nodes);h.type.validContent(g)?o.push(h.copy(g)):o.push(...m.nodes);return}if(h.marks.some(m=>Ox(m)||(c==null?void 0:c.includes(m.type.name)))){o.push(h);return}const f=h.text??"";let p=0;for(const m of fa(f,a)){const g=m[1],y=m[0];if(l&&(g==null?void 0:g.trim())===""||!y)return;const k=m.index,D=k+y.length;k>p&&o.push(h.cut(p,k));let q=h.cut(k,D);if(y&&g){const J=y.search(/\S/),$=k+y.indexOf(g),oe=$+g.length;J&&o.push(h.cut(k,k+J)),q=h.cut($,oe)}t({nodes:o,rule:i,textNode:q,match:m,schema:e}),d=!0,p=D}f&&p<f.length&&o.push(h.cut(p))}),{nodes:o,transformed:d}}}function kx(t){const{nodes:e,rule:n,textNode:r,match:s,schema:i}=t,{transformMatch:o,getAttributes:a,markType:l}=n,c=ee(a)?a(s,!1):a,u=r.text??"",d=l.create(c),h=o==null?void 0:o(s);if(h==="")return;if(h===!1){e.push(i.text(u,r.marks));return}const f=d.addToSet(r.marks);e.push(i.text(h??u,f))}function Sx(t){const{nodes:e,rule:n,textNode:r,match:s,schema:i}=t,{transformMatch:o}=n,a=o==null?void 0:o(s);if(a===""||a===!1)return;const l=a??r.text??"";e.push(i.text(l,r.marks))}function wx(t){const{nodes:e,rule:n,textNode:r,match:s}=t,{getAttributes:i,nodeType:o,getContent:a}=n,l=ee(i)?i(s,!1):i,c=(a?a(s):r)||void 0;e.push(o.createChecked(l,c))}function vx(t,e,n){const r=[];switch(e.type){case"mark":return yo(kx,n)({fragment:t,nodes:r,rule:e});case"node":return yo(wx,n)({fragment:t,nodes:r,rule:e});default:return yo(Sx,n)({fragment:t,nodes:r,rule:e})}}var Ex=["mark","node","text"];function Cx(t){return yt(Ex,t.type)}function Tx(t){var e;return t.type.spec.code||((e=t.type.spec.group)==null?void 0:e.split(" ").includes("code"))}function Ox(t){var e;return t.type.name==="code"||((e=t.type.spec.group)==null?void 0:e.split(" ").includes("code"))}function Mx(t){var n,r;const{dataTransfer:e}=t;return e?((n=e.files)==null?void 0:n.length)>0?[...e.files]:(r=e.items)!=null&&r.length?[...e.items].map(s=>s.getAsFile()).filter(s=>!!s):[]:[]}function _x(t){const e=w.maxOpen(t.content);return e.openStart<t.openStart||e.openEnd<t.openEnd?e:t}let ji=()=>({events:{},emit(t,...e){(this.events[t]||[]).forEach(n=>n(...e))},on(t,e){return(this.events[t]=this.events[t]||[]).push(e),()=>this.events[t]=(this.events[t]||[]).filter(n=>n!==e)}});var Nx=Object.defineProperty,Ax=Object.getOwnPropertyDescriptor,T=(t,e,n,r)=>{for(var s=r>1?void 0:r?Ax(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&Nx(e,n,s),s},Ch=(t,e,n)=>{if(!e.has(t))throw TypeError("Cannot "+n)},v=(t,e,n)=>(Ch(t,e,"read from private field"),n?n.call(t):e.get(t)),ue=(t,e,n)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,n)},ye=(t,e,n,r)=>(Ch(t,e,"write to private field"),e.set(t,n),n);function Rx(t,e){return t===e}function Cc(t){const{previousOptions:e,update:n,equals:r=Rx}=t,s=bn({...e,...n}),i=M(),o=ti(e);for(const l of o){const c=e[l],u=s[l];if(r(c,u)){i[l]={changed:!1};continue}i[l]={changed:!0,previousValue:c,value:u}}const a=l=>{const c=M();for(const u of l){const d=i[u];d!=null&&d.changed&&(c[u]=d.value)}return c};return{changes:bn(i),options:s,pickChanged:a}}var Ix={[b.DUPLICATE_HELPER_NAMES]:"helper method",[b.DUPLICATE_COMMAND_NAMES]:"command method"};function Th(t){const{name:e,set:n,code:r}=t,s=Ix[r];R(!n.has(e),{code:r,message:`There is a naming conflict for the name: ${e} used in this '${s}'. Please rename or remove from the editor to avoid runtime errors.`}),n.add(e)}function Go(...t){return is(K0(...t).split(" ")).join(" ")}var Tc="__IGNORE__",Dx="__ALL__",vr=class{constructor(t,...[e]){this["~O"]={},this._mappedHandlers=M(),this.populateMappedHandlers(),this._options=this._initialOptions=mp(t,this.constructor.defaultOptions,e??M(),this.createDefaultHandlerOptions()),this._dynamicKeys=this.getDynamicKeys(),this.init()}get options(){return this._options}get dynamicKeys(){return this._dynamicKeys}get initialOptions(){return this._initialOptions}init(){}getDynamicKeys(){const t=[],{customHandlerKeys:e,handlerKeys:n,staticKeys:r}=this.constructor;for(const s of ti(this._options))r.includes(s)||n.includes(s)||e.includes(s)||t.push(s);return t}ensureAllKeysAreDynamic(t){}setOptions(t){var e;const n=this.getDynamicOptions();this.ensureAllKeysAreDynamic(t);const{changes:r,options:s,pickChanged:i}=Cc({previousOptions:n,update:t});this.updateDynamicOptions(s),(e=this.onSetOptions)==null||e.call(this,{reason:"set",changes:r,options:s,pickChanged:i,initialOptions:this._initialOptions})}resetOptions(){var t;const e=this.getDynamicOptions(),{changes:n,options:r,pickChanged:s}=Cc({previousOptions:e,update:this._initialOptions});this.updateDynamicOptions(r),(t=this.onSetOptions)==null||t.call(this,{reason:"reset",options:r,changes:n,pickChanged:s,initialOptions:this._initialOptions})}getDynamicOptions(){return Nu(this._options,[...this.constructor.customHandlerKeys,...this.constructor.handlerKeys])}updateDynamicOptions(t){this._options={...this._options,...t}}populateMappedHandlers(){for(const t of this.constructor.handlerKeys)this._mappedHandlers[t]=[]}createDefaultHandlerOptions(){const t=M();for(const e of this.constructor.handlerKeys)t[e]=(...n)=>{var r;const{handlerKeyOptions:s}=this.constructor,i=(r=s[e])==null?void 0:r.reducer;let o=i==null?void 0:i.getDefault(...n);for(const[,a]of this._mappedHandlers[e]){const l=a(...n);if(o=i?i.accumulator(o,l,...n):l,Px(s,o,e))return o}return o};return t}addHandler(t,e,n=Y.Default){return this._mappedHandlers[t].push([n,e]),this.sortHandlers(t),()=>this._mappedHandlers[t]=this._mappedHandlers[t].filter(([,r])=>r!==e)}hasHandlers(t){return(this._mappedHandlers[t]??[]).length>0}sortHandlers(t){this._mappedHandlers[t]=ir(this._mappedHandlers[t],([e],[n])=>n-e)}addCustomHandler(t,e){var n;return((n=this.onAddCustomHandler)==null?void 0:n.call(this,{[t]:e}))??Bu}};vr.defaultOptions={};vr.staticKeys=[];vr.handlerKeys=[];vr.handlerKeyOptions={};vr.customHandlerKeys=[];function Px(t,e,n){const{[Dx]:r}=t,s=t[n];return!r&&!s?!1:!!(s&&s.earlyReturnValue!==Tc&&(ee(s.earlyReturnValue)?s.earlyReturnValue(e)===!0:e===s.earlyReturnValue)||r&&r.earlyReturnValue!==Tc&&(ee(r.earlyReturnValue)?r.earlyReturnValue(e)===!0:e===r.earlyReturnValue))}var Wi=class extends vr{constructor(...t){super(Lx,...t),this["~E"]={},this._extensions=kp(this.createExtensions(),e=>e.constructor),this.extensionMap=new Map;for(const e of this._extensions)this.extensionMap.set(e.constructor,e)}get priority(){return this.priorityOverride??this.options.priority??this.constructor.defaultPriority}get constructorName(){return`${Iu(this.name)}Extension`}get store(){return R(this._store,{code:b.MANAGER_PHASE_ERROR,message:"An error occurred while attempting to access the 'extension.store' when the Manager has not yet set created the lifecycle methods."}),bn(this._store,{requireKeys:!0})}get extensions(){return this._extensions}replaceChildExtension(t,e){this.extensionMap.has(t)&&(this.extensionMap.set(t,e),this._extensions=this.extensions.map(n=>e.constructor===t?e:n))}createExtensions(){return[]}getExtension(t){const e=this.extensionMap.get(t);return R(e,{code:b.INVALID_GET_EXTENSION,message:`'${t.name}' does not exist within the preset: '${this.name}'`}),e}isOfType(t){return this.constructor===t}setStore(t){this._store||(this._store=t)}clone(...t){return new this.constructor(...t)}setPriority(t){this.priorityOverride=t}};Wi.defaultPriority=Y.Default;var te=class extends Wi{static get[It](){return xe.PlainExtensionConstructor}get[It](){return xe.PlainExtension}},Ki=class extends Wi{static get[It](){return xe.MarkExtensionConstructor}get[It](){return xe.MarkExtension}get type(){return re(this.store.schema.marks,this.name)}constructor(...t){super(...t)}};Ki.disableExtraAttributes=!1;var Pt=class extends Wi{static get[It](){return xe.NodeExtensionConstructor}get[It](){return xe.NodeExtension}get type(){return re(this.store.schema.nodes,this.name)}constructor(...t){super(...t)}};Pt.disableExtraAttributes=!1;var Lx={priority:void 0,extraAttributes:{},disableExtraAttributes:!1,exclude:{}};function Oh(t){return kr(t)&&Sr(t,[xe.PlainExtension,xe.MarkExtension,xe.NodeExtension])}function Bx(t){return kr(t)&&Sr(t,[xe.PlainExtensionConstructor,xe.MarkExtensionConstructor,xe.NodeExtensionConstructor])}function Mh(t){return kr(t)&&Sr(t,xe.PlainExtension)}function _s(t){return kr(t)&&Sr(t,xe.NodeExtension)}function qi(t){return kr(t)&&Sr(t,xe.MarkExtension)}function G(t){return e=>{const{defaultOptions:n,customHandlerKeys:r,handlerKeys:s,staticKeys:i,defaultPriority:o,handlerKeyOptions:a,...l}=t,c=e;n&&(c.defaultOptions=n),o&&(c.defaultPriority=o),a&&(c.handlerKeyOptions=a),c.staticKeys=i??[],c.handlerKeys=s??[],c.customHandlerKeys=r??[];for(const[u,d]of Object.entries(l))c[u]||(c[u]=d);return c}}var zx=class extends te{constructor(){super(...arguments),this.attributeList=[],this.attributeObject=M(),this.updateAttributes=(t=!0)=>{this.transformAttributes(),t&&this.store.commands.forceUpdate("attributes")}}get name(){return"attributes"}onCreate(){this.transformAttributes(),this.store.setExtensionStore("updateAttributes",this.updateAttributes)}transformAttributes(){var t,e,n;if(this.attributeObject=M(),(t=this.store.managerSettings.exclude)!=null&&t.attributes){this.store.setStoreKey("attributes",this.attributeObject);return}this.attributeList=[];for(const r of this.store.extensions){if((e=r.options.exclude)!=null&&e.attributes)continue;const s=(n=r.createAttributes)==null?void 0:n.call(r),i={...s,class:Go(...r.classNames??[],s==null?void 0:s.class)};this.attributeList.unshift(i)}for(const r of this.attributeList)this.attributeObject={...this.attributeObject,...r,class:Go(this.attributeObject.class,r.class)};this.store.setStoreKey("attributes",this.attributeObject)}};function se(t={}){return(e,n,r)=>{(e.decoratedHelpers??(e.decoratedHelpers={}))[n]=t}}function _(t={}){return(e,n,r)=>{(e.decoratedCommands??(e.decoratedCommands={}))[n]=t}}function Ye(t){return(e,n,r)=>{(e.decoratedKeybindings??(e.decoratedKeybindings={}))[n]=t}}var $x=class{constructor(t){this.promiseCreator=t,this.failureHandlers=[],this.successHandlers=[],this.validateHandlers=[],this.generateCommand=()=>e=>{let n=!0;const{view:r,tr:s,dispatch:i}=e;if(!r)return!1;for(const a of this.validateHandlers)if(!a({...e,dispatch:()=>{}})){n=!1;break}return!i||!n?n:(this.promiseCreator(e).then(a=>{this.runHandlers(this.successHandlers,{value:a,state:r.state,tr:r.state.tr,dispatch:r.dispatch,view:r})}).catch(a=>{this.runHandlers(this.failureHandlers,{error:a,state:r.state,tr:r.state.tr,dispatch:r.dispatch,view:r})}),i(s),!0)}}validate(t,e="push"){return this.validateHandlers[e](t),this}success(t,e="push"){return this.successHandlers[e](t),this}failure(t,e="push"){return this.failureHandlers[e](t),this}runHandlers(t,e){var n;for(const r of t)if(!r({...e,dispatch:()=>{}}))break;(n=e.dispatch)==null||n.call(e,e.tr)}};function hr(t){const{type:e,attrs:n,range:r,selection:s}=t;return i=>{const{dispatch:o,tr:a,state:l}=i,c=P(e)?l.schema.marks[e]:e;if(R(c,{code:b.SCHEMA,message:`Mark type: ${e} does not exist on the current schema.`}),r||s){const{from:u,to:d}=ct(s??r??a.selection,a.doc);return uh({trState:a,type:e,...r})?o==null||o(a.removeMark(u,d,c)):o==null||o(a.addMark(u,d,c.create(n))),!0}return Fs(ux(c,n))(i)}}function Fx(t,e,n){for(const{$from:r,$to:s}of n){let i=r.depth===0?e.type.allowsMarkType(t):!1;if(e.nodesBetween(r.pos,s.pos,o=>{if(i)return!1;i=o.inlineContent&&o.type.allowsMarkType(t)}),i)return!0}return!1}function Vx(t,e,n){return({tr:r,dispatch:s,state:i})=>{const o=ct(n??r.selection,r.doc),a=C0(o),l=P(t)?i.schema.marks[t]:t;if(R(l,{code:b.SCHEMA,message:`Mark type: ${t} does not exist on the current schema.`}),o.empty&&!a||!Fx(l,r.doc,o.ranges))return!1;if(!s)return!0;if(a)return r.removeStoredMark(l),e&&r.addStoredMark(l.create(e)),s(r),!0;let c=!1;for(const{$from:u,$to:d}of o.ranges){if(c)break;c=r.doc.rangeHasMark(u.pos,d.pos,l)}for(const{$from:u,$to:d}of o.ranges)c&&r.removeMark(u.pos,d.pos,l),e&&r.addMark(u.pos,d.pos,l.create(e));return s(r),!0}}function Hx(t,e={}){return({tr:n,dispatch:r,state:s})=>{const i=s.schema,o=n.selection,{from:a=o.from,to:l=a??o.to,marks:c={}}=e;if(!r)return!0;n.insertText(t,a,l);const u=re(n.steps,n.steps.length-1).getMap().map(l);for(const[d,h]of fe(c))n.addMark(a,u,re(i.marks,d).create(h));return r(n),!0}}var H=class extends te{constructor(){super(...arguments),this.decorated=new Map,this.forceUpdateTransaction=(t,...e)=>{const{forcedUpdates:n}=this.getCommandMeta(t);return this.setCommandMeta(t,{forcedUpdates:is([...n,...e])}),t}}get name(){return"commands"}get transaction(){const t=this.store.getState();this._transaction||(this._transaction=t.tr);const e=this._transaction.before.eq(t.doc),n=!nn(this._transaction.steps);if(!e){const r=t.tr;if(n)for(const s of this._transaction.steps)r.step(s);this._transaction=r}return this._transaction}onCreate(){this.store.setStoreKey("getForcedUpdates",this.getForcedUpdates.bind(this))}onView(t){var e;const{extensions:n,helpers:r}=this.store,s=M(),i=new Set;let o=M();const a=c=>{var u;const d=M(),h=()=>c??this.transaction;let f=[];const p=()=>f;for(const[g,y]of Object.entries(s))(u=o[g])!=null&&u.disableChaining||(d[g]=this.chainedFactory({chain:d,command:y.original,getTr:h,getChain:p}));const m=g=>{R(g===h(),{message:"Chaining currently only supports `CommandFunction` methods which do not use the `state.tr` property. Instead you should use the provided `tr` property."})};return d.run=(g={})=>{const y=f;f=[];for(const k of y)if(!k(m)&&g.exitEarly)return;t.dispatch(h())},d.tr=()=>{const g=f;f=[];for(const y of g)y(m);return h()},d.enabled=()=>{for(const g of f)if(!g())return!1;return!0},d.new=g=>a(g),d};for(const c of n){const u=((e=c.createCommands)==null?void 0:e.call(c))??{},d=c.decoratedCommands??{},h={};o={...o,decoratedCommands:d};for(const[f,p]of Object.entries(d)){const m=P(p.shortcut)&&p.shortcut.startsWith("_|")?{shortcut:r.getNamedShortcut(p.shortcut,c.options)}:void 0;this.updateDecorated(f,{...p,name:c.name,...m}),u[f]=c[f].bind(c),p.active&&(h[f]=()=>{var g;return((g=p.active)==null?void 0:g.call(p,c.options,this.store))??!1})}ni(u)||this.addCommands({active:h,names:i,commands:s,extensionCommands:u})}const l=a();for(const[c,u]of Object.entries(l))a[c]=u;this.store.setStoreKey("commands",s),this.store.setStoreKey("chain",a),this.store.setExtensionStore("commands",s),this.store.setExtensionStore("chain",a)}onStateUpdate({state:t}){this._transaction=t.tr}createPlugin(){return{}}customDispatch(t){return t}insertText(t,e={}){return P(t)?Hx(t,e):this.store.createPlaceholderCommand({promise:t,placeholder:{type:"inline"},onSuccess:(n,r,s)=>this.insertText(n,{...e,...r})(s)}).generateCommand()}selectText(t,e={}){return({tr:n,dispatch:r})=>{const s=ct(t,n.doc);return n.selection.anchor===s.anchor&&n.selection.head===s.head&&!e.forceUpdate?!1:(r==null||r(n.setSelection(s)),!0)}}selectMark(t){return e=>{const{tr:n}=e,r=Bn(n.selection.$from,t);return r?this.store.commands.selectText.original({from:r.from,to:r.to})(e):!1}}delete(t){return({tr:e,dispatch:n})=>{const{from:r,to:s}=t??e.selection;return n==null||n(e.delete(r,s)),!0}}emptyUpdate(t){return({tr:e,dispatch:n})=>(n&&(t==null||t(),n(e)),!0)}forceUpdate(...t){return({tr:e,dispatch:n})=>(n==null||n(this.forceUpdateTransaction(e,...t)),!0)}updateNodeAttributes(t,e){return({tr:n,dispatch:r})=>(r==null||r(n.setNodeMarkup(t,void 0,e)),!0)}setContent(t,e){return n=>{const{tr:r,dispatch:s}=n,i=this.store.manager.createState({content:t,selection:e});return i?(s==null||s(r.replaceRangeWith(0,r.doc.nodeSize-2,i.doc)),!0):!1}}resetContent(){return t=>{const{tr:e,dispatch:n}=t,r=this.store.manager.createEmptyDoc();return r?this.setContent(r)(t):(n==null||n(e.delete(0,e.doc.nodeSize)),!0)}}emptySelection(){return({tr:t,dispatch:e})=>t.selection.empty?!1:(e==null||e(t.setSelection(L.near(t.selection.$anchor))),!0)}insertNewLine(){return({dispatch:t,tr:e})=>wr(e.selection)?(t==null||t(e.insertText(`
|
|
48
|
-
`)),!0):!1}insertNode(t,e={}){return({dispatch:n,tr:r,state:s})=>{var i;const{attrs:o,range:a,selection:l,replaceEmptyParentBlock:c=!1}=e,{from:u,to:d,$from:h}=ct(l??a??r.selection,r.doc);if($i(t)||y0(t)){const y=h.before(h.depth);return n==null||n(c&&u===d&&Da(h.parent)?r.replaceWith(y,y+h.parent.nodeSize,t):r.replaceWith(u,d,t)),!0}const f=P(t)?s.schema.nodes[t]:t;R(f,{code:b.SCHEMA,message:`The requested node type ${t} does not exist in the schema.`});const p=(i=e.marks)==null?void 0:i.map(y=>{if(y instanceof U)return y;const k=P(y)?s.schema.marks[y]:y;return R(k,{code:b.SCHEMA,message:`The requested mark type ${y} does not exist in the schema.`}),k.create()}),m=f.createAndFill(o,P(e.content)?s.schema.text(e.content):e.content,p);if(!m)return!1;const g=u!==d;return n==null||n(g?r.replaceRangeWith(u,d,m):r.insert(u,m)),!0}}focus(t){return e=>{const{dispatch:n,tr:r}=e,{view:s}=this.store;if(t===!1||s.hasFocus()&&(t===void 0||t===!0))return!1;if(t===void 0||t===!0){const{from:i=0,to:o=i}=r.selection;t={from:i,to:o}}return n&&this.delayedFocus(),this.selectText(t)(e)}}blur(t){return e=>{const{view:n}=this.store;return n.hasFocus()?(requestAnimationFrame(()=>{n.dom.blur()}),t?this.selectText(t)(e):!0):!1}}setBlockNodeType(t,e,n,r=!0){return Jo(t,e,n,r)}toggleWrappingNode(t,e,n){return z0(t,e,n)}toggleBlockNodeItem(t){return $0(t)}wrapInNode(t,e,n){return mh(t,e,n)}applyMark(t,e,n){return Vx(t,e,n)}toggleMark(t){return hr(t)}removeMark(t){return U0(t)}setMeta(t,e){return({tr:n})=>(n.setMeta(t,e),!0)}selectAll(){return this.selectText("all")}copy(){return t=>t.tr.selection.empty?!1:(t.dispatch&&document.execCommand("copy"),!0)}paste(){return this.store.createPlaceholderCommand({promise:async()=>{var t;return(t=navigator.clipboard)!=null&&t.readText?await navigator.clipboard.readText():""},placeholder:{type:"inline"},onSuccess:(t,e,n)=>this.insertNode(Ko({content:t,schema:n.state.schema}),{selection:e})(n)}).generateCommand()}cut(){return t=>t.tr.selection.empty?!1:(t.dispatch&&document.execCommand("cut"),!0)}replaceText(t){return H0(t)}getAllCommandOptions(){const t={};for(const[e,n]of this.decorated)ni(n)||(t[e]=n);return t}getCommandOptions(t){return this.decorated.get(t)}getCommandProp(){return{tr:this.transaction,dispatch:this.store.view.dispatch,state:this.store.view.state,view:this.store.view}}updateDecorated(t,e){if(!e){this.decorated.delete(t);return}const n=this.decorated.get(t)??{name:""};this.decorated.set(t,{...n,...e})}handleIosFocus(){st.isIos&&this.store.view.dom.focus()}delayedFocus(){this.handleIosFocus(),requestAnimationFrame(()=>{this.store.view.focus(),this.store.view.dispatch(this.transaction.scrollIntoView())})}getForcedUpdates(t){return this.getCommandMeta(t).forcedUpdates}getCommandMeta(t){const e=t.getMeta(this.pluginKey)??{};return{...Ux,...e}}setCommandMeta(t,e){const n=this.getCommandMeta(t);t.setMeta(this.pluginKey,{...n,...e})}addCommands(t){const{extensionCommands:e,commands:n,names:r,active:s}=t;for(const[i,o]of fe(e))Th({name:i,set:r,code:b.DUPLICATE_COMMAND_NAMES}),R(!jx.has(i),{code:b.DUPLICATE_COMMAND_NAMES,message:"The command name you chose is forbidden."}),n[i]=this.createUnchainedCommand(o,s[i])}unchainedFactory(t){return(...e)=>{const{shouldDispatch:n=!0,command:r}=t,{view:s}=this.store,{state:i}=s;let o;return n&&(o=s.dispatch),r(...e)({state:i,dispatch:o,view:s,tr:i.tr})}}createUnchainedCommand(t,e){const n=this.unchainedFactory({command:t});return n.enabled=this.unchainedFactory({command:t,shouldDispatch:!1}),n.isEnabled=n.enabled,n.original=t,n.active=e,n}chainedFactory(t){return(...e)=>{const{chain:n,command:r,getTr:s,getChain:i}=t,o=i(),{view:a}=this.store,{state:l}=a;return o.push(c=>r(...e)({state:l,dispatch:c,view:a,tr:s()})),n}}};T([_()],H.prototype,"customDispatch",1);T([_()],H.prototype,"insertText",1);T([_()],H.prototype,"selectText",1);T([_()],H.prototype,"selectMark",1);T([_()],H.prototype,"delete",1);T([_()],H.prototype,"emptyUpdate",1);T([_()],H.prototype,"forceUpdate",1);T([_()],H.prototype,"updateNodeAttributes",1);T([_()],H.prototype,"setContent",1);T([_()],H.prototype,"resetContent",1);T([_()],H.prototype,"emptySelection",1);T([_()],H.prototype,"insertNewLine",1);T([_()],H.prototype,"insertNode",1);T([_()],H.prototype,"focus",1);T([_()],H.prototype,"blur",1);T([_()],H.prototype,"setBlockNodeType",1);T([_()],H.prototype,"toggleWrappingNode",1);T([_()],H.prototype,"toggleBlockNodeItem",1);T([_()],H.prototype,"wrapInNode",1);T([_()],H.prototype,"applyMark",1);T([_()],H.prototype,"toggleMark",1);T([_()],H.prototype,"removeMark",1);T([_()],H.prototype,"setMeta",1);T([_({description:({t})=>t(rn.SELECT_ALL_DESCRIPTION),label:({t})=>t(rn.SELECT_ALL_LABEL),shortcut:E.SelectAll})],H.prototype,"selectAll",1);T([_({description:({t})=>t(rn.COPY_DESCRIPTION),label:({t})=>t(rn.COPY_LABEL),shortcut:E.Copy,icon:"fileCopyLine"})],H.prototype,"copy",1);T([_({description:({t})=>t(rn.PASTE_DESCRIPTION),label:({t})=>t(rn.PASTE_LABEL),shortcut:E.Paste,icon:"clipboardLine"})],H.prototype,"paste",1);T([_({description:({t})=>t(rn.CUT_DESCRIPTION),label:({t})=>t(rn.CUT_LABEL),shortcut:E.Cut,icon:"scissorsFill"})],H.prototype,"cut",1);T([_()],H.prototype,"replaceText",1);T([se()],H.prototype,"getAllCommandOptions",1);T([se()],H.prototype,"getCommandOptions",1);T([se()],H.prototype,"getCommandProp",1);H=T([G({defaultPriority:Y.Highest,defaultOptions:{trackerClassName:"remirror-tracker-position",trackerNodeName:"span"},staticKeys:["trackerClassName","trackerNodeName"]})],H);var Ux={forcedUpdates:[]},jx=new Set(["run","chain","original","raw","enabled","tr","new"]),ut=class extends te{constructor(){super(...arguments),this.placeholders=W.empty,this.placeholderWidgets=new Map,this.createPlaceholderCommand=t=>{const e=si(),{promise:n,placeholder:r,onFailure:s,onSuccess:i}=t;return new $x(n).validate(o=>this.addPlaceholder(e,r)(o)).success(o=>{const{state:a,tr:l,dispatch:c,view:u,value:d}=o,h=this.store.helpers.findPlaceholder(e);if(!h){const f=new Error("The placeholder has been removed");return(s==null?void 0:s({error:f,state:a,tr:l,dispatch:c,view:u}))??!1}return this.removePlaceholder(e)({state:a,tr:l,view:u,dispatch:()=>{}}),i(d,h,{state:a,tr:l,dispatch:c,view:u})}).failure(o=>(this.removePlaceholder(e)({...o,dispatch:()=>{}}),(s==null?void 0:s(o))??!1))}}get name(){return"decorations"}onCreate(){this.store.setExtensionStore("createPlaceholderCommand",this.createPlaceholderCommand)}createPlugin(){return{state:{init:()=>{},apply:t=>{var e,n,r,s,i,o;const{added:a,clearTrackers:l,removed:c,updated:u}=this.getMeta(t);if(l){this.placeholders=W.empty;for(const[,d]of this.placeholderWidgets)(n=(e=d.spec).onDestroy)==null||n.call(e,this.store.view,d.spec.element);this.placeholderWidgets.clear();return}this.placeholders=this.placeholders.map(t.mapping,t.doc,{onRemove:d=>{var h,f;const p=this.placeholderWidgets.get(d.id);p&&((f=(h=p.spec).onDestroy)==null||f.call(h,this.store.view,p.spec.element))}});for(const[,d]of this.placeholderWidgets)(s=(r=d.spec).onUpdate)==null||s.call(r,this.store.view,d.from,d.spec.element,d.spec.data);for(const d of a){if(d.type==="inline"){this.addInlinePlaceholder(d,t);continue}if(d.type==="node"){this.addNodePlaceholder(d,t);continue}if(d.type==="widget"){this.addWidgetPlaceholder(d,t);continue}}for(const{id:d,data:h}of u){const f=this.placeholderWidgets.get(d);if(!f)continue;const p=Q.widget(f.from,f.spec.element,{...f.spec,data:h});this.placeholders=this.placeholders.remove([f]).add(t.doc,[p]),this.placeholderWidgets.set(d,p)}for(const d of c){const h=this.placeholders.find(void 0,void 0,p=>p.id===d&&p.__type===Hn),f=this.placeholderWidgets.get(d);f&&((o=(i=f.spec).onDestroy)==null||o.call(i,this.store.view,f.spec.element)),this.placeholders=this.placeholders.remove(h),this.placeholderWidgets.delete(d)}}},props:{decorations:t=>{let e=this.options.decorations(t);e=e.add(t.doc,this.placeholders.find());for(const n of this.store.extensions){if(!n.createDecorations)continue;const r=n.createDecorations(t).find();e=e.add(t.doc,r)}return e},handleDOMEvents:{blur:t=>(this.options.persistentSelectionClass&&t.dispatch(t.state.tr.setMeta(Oc,!1)),!1),focus:t=>(this.options.persistentSelectionClass&&t.dispatch(t.state.tr.setMeta(Oc,!0)),!1)}}}}updateDecorations(){return({tr:t,dispatch:e})=>(e==null||e(t),!0)}addPlaceholder(t,e,n){return({dispatch:r,tr:s})=>this.addPlaceholderTransaction(t,e,s,!r)?(r==null||r(n?s.deleteSelection():s),!0):!1}updatePlaceholder(t,e){return({dispatch:n,tr:r})=>this.updatePlaceholderTransaction({id:t,data:e,tr:r,checkOnly:!n})?(n==null||n(r),!0):!1}removePlaceholder(t){return({dispatch:e,tr:n})=>this.removePlaceholderTransaction({id:t,tr:n,checkOnly:!e})?(e==null||e(n),!0):!1}clearPlaceholders(){return({tr:t,dispatch:e})=>this.clearPlaceholdersTransaction({tr:t,checkOnly:!e})?(e==null||e(t),!0):!1}findPlaceholder(t){return this.findAllPlaceholders().get(t)}findAllPlaceholders(){const t=new Map,e=this.placeholders.find(void 0,void 0,n=>n.__type===Hn);for(const n of e)t.set(n.spec.id,{from:n.from,to:n.to});return t}createDecorations(t){var e,n,r;const{persistentSelectionClass:s}=this.options;return!s||(e=this.store.view)!=null&&e.hasFocus()||(r=(n=this.store.helpers).isInteracting)!=null&&r.call(n)?W.empty:Kx(t,W.empty,{class:P(s)?s:"selection"})}onApplyState(){}addWidgetPlaceholder(t,e){const{pos:n,createElement:r,onDestroy:s,onUpdate:i,className:o,nodeName:a,id:l,type:c}=t,u=(r==null?void 0:r(this.store.view,n))??document.createElement(a);u.classList.add(o);const d=Q.widget(n,u,{id:l,__type:Hn,type:c,element:u,onDestroy:s,onUpdate:i});this.placeholderWidgets.set(l,d),this.placeholders=this.placeholders.add(e.doc,[d])}addInlinePlaceholder(t,e){const{from:n=e.selection.from,to:r=e.selection.to,className:s,nodeName:i,id:o,type:a}=t;let l;if(n===r){const c=document.createElement(i);c.classList.add(s),l=Q.widget(n,c,{id:o,type:a,__type:Hn,widget:c})}else l=Q.inline(n,r,{nodeName:i,class:s},{id:o,__type:Hn});this.placeholders=this.placeholders.add(e.doc,[l])}addNodePlaceholder(t,e){const{pos:n,className:r,nodeName:s,id:i}=t,o=Ge(n)?e.doc.resolve(n):e.selection.$from,a=Ge(n)?o.nodeAfter?{pos:n,end:o.nodeAfter.nodeSize}:void 0:l0(o);if(!a)return;const l=Q.node(a.pos,a.end,{nodeName:s,class:r},{id:i,__type:Hn});this.placeholders=this.placeholders.add(e.doc,[l])}withRequiredBase(t,e){const{placeholderNodeName:n,placeholderClassName:r}=this.options,{nodeName:s=n,className:i,...o}=e,a=(i?[r,i]:[r]).join(" ");return{nodeName:s,className:a,...o,id:t}}getMeta(t){const e=t.getMeta(this.pluginKey)??{};return{...Wx,...e}}setMeta(t,e){const n=this.getMeta(t);t.setMeta(this.pluginKey,{...n,...e})}addPlaceholderTransaction(t,e,n,r=!1){if(this.findPlaceholder(t))return!1;if(r)return!0;const{added:i}=this.getMeta(n);return this.setMeta(n,{added:[...i,this.withRequiredBase(t,e)]}),!0}updatePlaceholderTransaction(t){const{id:e,tr:n,checkOnly:r=!1,data:s}=t;if(!this.findPlaceholder(e))return!1;if(r)return!0;const{updated:o}=this.getMeta(n);return this.setMeta(n,{updated:is([...o,{id:e,data:s}])}),!0}removePlaceholderTransaction(t){const{id:e,tr:n,checkOnly:r=!1}=t;if(!this.findPlaceholder(e))return!1;if(r)return!0;const{removed:i}=this.getMeta(n);return this.setMeta(n,{removed:is([...i,e])}),!0}clearPlaceholdersTransaction(t){const{tr:e,checkOnly:n=!1}=t;return this.getPluginState()===W.empty?!1:(n||this.setMeta(e,{clearTrackers:!0}),!0)}};T([_()],ut.prototype,"updateDecorations",1);T([_()],ut.prototype,"addPlaceholder",1);T([_()],ut.prototype,"updatePlaceholder",1);T([_()],ut.prototype,"removePlaceholder",1);T([_()],ut.prototype,"clearPlaceholders",1);T([se()],ut.prototype,"findPlaceholder",1);T([se()],ut.prototype,"findAllPlaceholders",1);ut=T([G({defaultOptions:{persistentSelectionClass:void 0,placeholderClassName:"placeholder",placeholderNodeName:"span"},staticKeys:["placeholderClassName","placeholderNodeName"],handlerKeys:["decorations"],handlerKeyOptions:{decorations:{reducer:{accumulator:(t,e,n)=>t.add(n.doc,e.find()),getDefault:()=>W.empty}}},defaultPriority:Y.Low})],ut);var Wx={added:[],updated:[],clearTrackers:!1,removed:[]},Hn="placeholderDecoration",Oc="persistentSelectionFocus";function Kx(t,e,n){const{selection:r,doc:s}=t;if(r.empty)return e;const{from:i,to:o}=r,a=Fi(r)?Q.node(i,o,n):Q.inline(i,o,n);return e.add(s,[a])}var Xo=class extends te{get name(){return"docChanged"}onStateUpdate(t){const{firstUpdate:e,transactions:n,tr:r}=t;e||(n??[r]).some(s=>s==null?void 0:s.docChanged)&&this.options.docChanged(t)}};Xo=T([G({handlerKeys:["docChanged"],handlerKeyOptions:{docChanged:{earlyReturnValue:!1}},defaultPriority:Y.Lowest})],Xo);var Xe=class extends te{get name(){return"helpers"}onCreate(){var t;this.store.setStringHandler("text",this.textToProsemirrorNode.bind(this)),this.store.setStringHandler("html",Ko);const e=M(),n=M(),r=M(),s=new Set;for(const i of this.store.extensions){_s(i)&&(n[i.name]=a=>d0({state:this.store.getState(),type:i.type,attrs:a}),r[i.name]=a=>{var l;return(l=fs({state:this.store.getState(),type:i.type,attrs:a}))==null?void 0:l.node.attrs}),qi(i)&&(n[i.name]=a=>uh({trState:this.store.getState(),type:i.type,attrs:a}),r[i.name]=a=>{const l=Bn(this.store.getState().selection.$from,i.type);if(!l||!a)return l==null?void 0:l.mark.attrs;if(Aa(l.mark,a))return l.mark.attrs});const o=((t=i.createHelpers)==null?void 0:t.call(i))??{};for(const a of Object.keys(i.decoratedHelpers??{}))o[a]=i[a].bind(i);if(!ni(o))for(const[a,l]of fe(o))Th({name:a,set:s,code:b.DUPLICATE_HELPER_NAMES}),e[a]=l}this.store.setStoreKey("attrs",r),this.store.setStoreKey("active",n),this.store.setStoreKey("helpers",e),this.store.setExtensionStore("attrs",r),this.store.setExtensionStore("active",n),this.store.setExtensionStore("helpers",e)}isSelectionEmpty(t=this.store.getState()){return ah(t)}isViewEditable(t=this.store.getState()){var e,n;return((n=(e=this.store.view.props).editable)==null?void 0:n.call(e,t))??!1}getStateJSON(t=this.store.getState()){return t.toJSON()}getJSON(t=this.store.getState()){return t.doc.toJSON()}getRemirrorJSON(t=this.store.getState()){return this.getJSON(t)}insertHtml(t,e){return n=>{const{state:r}=n,s=Ko({content:t,schema:r.schema,fragment:!0});return this.store.commands.insertNode.original(s,e)(n)}}getText({lineBreakDivider:t=`
|
|
46
|
+
If you are using Node.js, you can install JSDOM and Remirror will try to use it automatically, or you can create a fake document and pass it to Remirror`)}function ph(t){var e;return(t==null?void 0:t.defaultView)??(typeof window<"u"?window:void 0)??((e=xd())==null?void 0:e.defaultView)}function M0(t){return ph(t==null?void 0:t.ownerDocument)}function _0(t){const e=ph(t)??Hi().defaultView;if(e)return e;throw new Error("Unable to retrieve the window from the global scope")}function N0(t,e=Hi()){const n=C0(t,t.type.schema)?t.content:x.from(t);return Dt.fromSchema(t.type.schema).serializeFragment(n,{document:e})}function A0(t,e){return new(_0(e)).DOMParser().parseFromString(`<body>${t}</body>`,"text/html").body}function R0(t,e=Hi()){const n=e.createElement("div");return n.append(N0(t,e)),n.innerHTML}function Ko(t){const{content:e,schema:n,document:r,fragment:s=!1,...i}=t,o=A0(e,r),a=ar.fromSchema(n);return s?a.parseSlice(o,{...vc,...i}).content:a.parse(o,{...vc,...i})}var vc={preserveWhitespace:!1},I0={remove(t,e){let n=t;for(const r of e)r.invalidParentNode||(n=bp(r.path,n));return n}};function D0({json:t,schema:e,...n}){const r=new Set(ti(e.marks)),s=new Set(ti(e.nodes)),i=mh({json:t,path:[],validNodes:s,validMarks:r});return{json:t,invalidContent:i,transformers:I0,...n}}function mh(t){const{json:e,validMarks:n,validNodes:r,path:s=[]}=t,i={validMarks:n,validNodes:r},o=[],{type:a,marks:l,content:c}=e;let{invalidParentMark:u=!1,invalidParentNode:d=!1}=t;if(l){const h=[];for(const[f,p]of l.entries()){const m=P(p)?p:p.type;n.has(m)||(h.unshift({name:m,path:[...s,"marks",`${f}`],type:"mark",invalidParentMark:u,invalidParentNode:d}),u=!0)}o.push(...h)}if(r.has(a)||(o.push({name:a,type:"node",path:s,invalidParentMark:u,invalidParentNode:d}),d=!0),c){const h=[];for(const[f,p]of c.entries())h.unshift(...mh({...i,json:p,path:[...s,"content",`${f}`],invalidParentMark:u,invalidParentNode:d}));o.unshift(...h)}return o}function P0(t){return!!(wr(t)&&t.$cursor&&t.$cursor.parentOffset>=t.$cursor.parent.content.size)}function qo(t){return!!(wr(t)&&t.$cursor&&t.$cursor.parentOffset<=0)}function Ec(t){const e=V.atStart(t.$anchor.doc);return!!(qo(t)&&e.anchor===t.anchor)}function L0({tr:t,dispatch:e}){const{$from:n,$to:r}=t.selection,s=n.blockRange(r),i=s&&xr(s);return!Ge(i)||!s?!1:(e==null||e(t.lift(s,i).scrollIntoView()),!0)}function gh(t,e={},n){return function(r){const{tr:s,dispatch:i,state:o}=r,a=P(t)?re(o.schema.nodes,t):t,{from:l,to:c}=ct(n??s.selection,s.doc),u=s.doc.resolve(l),d=s.doc.resolve(c),h=u.blockRange(d),f=h&&ma(h,a,e);return!f||!h?!1:(i==null||i(s.wrap(h,f).scrollIntoView()),!0)}}function B0(t,e={},n){return r=>{const{tr:s,state:i}=r,o=P(t)?re(i.schema.nodes,t):t;return fs({state:s,type:o,attrs:e})?L0(r):gh(t,e,n)(r)}}function Jo(t,e,n,r=!0){return function(s){const{tr:i,dispatch:o,state:a}=s,l=P(t)?re(a.schema.nodes,t):t,{from:c,to:u}=ct(n??i.selection,i.doc);let d=!1,h;return i.doc.nodesBetween(c,u,(f,p)=>{if(d)return!1;if(!f.isTextblock||f.hasMarkup(l,e))return;if(f.type===l){d=!0,h=f.attrs;return}const m=i.doc.resolve(p),g=m.index();d=m.parent.canReplaceWith(g,g+1,l),d&&(h=m.parent.attrs)}),d?(o==null||o(i.setBlockType(c,u,l,{...r?h:{},...e}).scrollIntoView()),!0):!1}}function z0(t){return e=>{const{tr:n,state:r}=e,{type:s,attrs:i,preserveAttrs:o=!0}=t,a=fs({state:n,type:s,attrs:i}),l=t.toggleType??Vi(r.schema);if(a)return Jo(l,{...o?a.node.attrs:{},...i})(e);const c=fs({state:n,type:l,attrs:i});return Jo(s,{...o?c==null?void 0:c.node.attrs:{},...i})(e)}}function $0(t=0){const e=navigator.userAgent.match(/Chrom(e|ium)\/(\d+)\./);return e?Number.parseInt(re(e,2),10)>=t:!1}function F0(t,e){let{head:n,empty:r,anchor:s}=t;for(const i of e.steps)n=i.getMap().map(n);r?e.setSelection(L.near(e.doc.resolve(n))):e.setSelection(L.between(e.doc.resolve(s),e.doc.resolve(n)))}function V0(t){const{attrs:e={},appendText:n="",content:r="",keepSelection:s=!1,range:i}=t;return({state:o,tr:a,dispatch:l})=>{var c;const u=o.schema,d=ct(t.selection??i??a.selection,a.doc),h=d.$from.index(),{from:f,to:p,$from:m}=d,g=P(t.type)?u.nodes[t.type]??u.marks[t.type]:t.type;if(R(P(t.type)?g:!0,{code:b.SCHEMA,message:`Schema contains no marks or nodes with name ${g}`}),f0(g)){if(!m.parent.canReplaceWith(h,h,g))return!1;a.replaceWith(f,p,g.create(e,r?u.text(r):void 0))}else R(r,{message:"`replaceText` cannot be called without content when using a mark type"}),a.replaceWith(f,p,u.text(r,ch(g)?[g.create(e)]:void 0));return n&&a.insertText(n),s&&F0(o.selection,a),l&&($0(60)&&((c=document.getSelection())==null||c.empty()),l(a)),!0}}function yh(t,e){const n=t.parent.childAfter(t.parentOffset);if(!n.node)return;const{marks:r,nodeSize:s}=n.node;if(r[0])return r[0].type;const o=t.start()+n.offset+s;return yh(t.doc.resolve(o+1))}function H0(t){return({dispatch:e,tr:n,state:r})=>{const{type:s,expand:i=!0,range:o}=t,a=ct(t.selection??o??n.selection,n.doc);let{from:l,to:c,$from:u,$to:d}=a;const h=P(s)?r.schema.marks[s]:s;h!==null&&R(h,{code:b.SCHEMA,message:`Mark type: ${s} does not exist on the current schema.`});const f=h??yh(u);if(!f)return!1;const p=Bn(u,f,d);return i&&p&&(l=Math.max(0,Math.min(l,p.from)),c=Math.min(Math.max(c,p.to),n.doc.nodeSize-2)),e==null||e(n.removeMark(l,Ge(c)?c:l,ch(h)?h:void 0)),!0}}function xi(t){const{regexp:e,type:n,getAttributes:r,ignoreWhitespace:s=!1,beforeDispatch:i,updateCaptured:o,shouldSkip:a,invalidMarks:l}=t;let c;const u=new dt(e,(d,h,f,p)=>{const{tr:m,schema:g}=d;c||(c=P(n)?g.marks[n]:n,R(c,{code:b.SCHEMA,message:`Mark type: ${n} does not exist on the current schema.`}));let y=h[1],k=h[0];const D=U0({captureGroup:y,fullMatch:k,end:p,start:f,rule:u,state:d,ignoreWhitespace:s,invalidMarks:l,shouldSkip:a,updateCaptured:o});if(!D)return null;({start:f,end:p,captureGroup:y,fullMatch:k}=D);const q=ee(r)?r(h):r;let J=p,$=[];if(y){const oe=k.search(/\S/),Ve=f+k.indexOf(y),F=Ve+y.length;$=m.storedMarks??[],F<p&&m.delete(F,p),Ve>f&&m.delete(f+oe,Ve),J=f+oe+y.length}return m.addMark(f,J,c.create(q)),m.setStoredMarks($),i==null||i({tr:m,match:h,start:f,end:p}),m});return u}function U0({captureGroup:t,fullMatch:e,end:n,start:r,rule:s,ignoreWhitespace:i,shouldSkip:o,updateCaptured:a,state:l,invalidMarks:c}){var u;if(e==null)return null;const d=(a==null?void 0:a({captureGroup:t,fullMatch:e,start:r,end:n}))??{};t=d.captureGroup??t,e=d.fullMatch??e,r=d.start??r,n=d.end??n;const h=l.doc.resolve(r),f=l.doc.resolve(n);return c&&Uo({$from:h,$to:f},c)||s.invalidMarks&&Uo({$from:h,$to:f},s.invalidMarks)||i&&(t==null?void 0:t.trim())===""||o!=null&&o({state:l,captureGroup:t,fullMatch:e,start:r,end:n,ruleType:"mark"})||(u=s.shouldSkip)!=null&&u.call(s,{state:l,captureGroup:t,fullMatch:e,start:r,end:n,ruleType:"mark"})?null:{captureGroup:t,end:n,fullMatch:e,start:r}}var j0=function(){const e=Array.prototype.slice.call(arguments).filter(Boolean),n={},r=[];e.forEach(i=>{(i?i.split(" "):[]).forEach(a=>{if(a.startsWith("atm_")){const[,l]=a.split("_");n[l]=a}else r.push(a)})});const s=[];for(const i in n)Object.prototype.hasOwnProperty.call(n,i)&&s.push(n[i]);return s.push(...r),s.join(" ")},W0=j0;const xh=(t,e)=>t.selection.empty?!1:(e&&e(t.tr.deleteSelection().scrollIntoView()),!0);function K0(t,e){let{$cursor:n}=t.selection;return!n||(e?!e.endOfTextblock("backward",t):n.parentOffset>0)?null:n}const bh=(t,e,n)=>{let r=K0(t,n);if(!r)return!1;let s=kh(r);if(!s){let o=r.blockRange(),a=o&&xr(o);return a==null?!1:(e&&e(t.tr.lift(o,a).scrollIntoView()),!0)}let i=s.nodeBefore;if(wh(t,s,e,-1))return!0;if(r.parent.content.size==0&&(dr(i,"end")||I.isSelectable(i)))for(let o=r.depth;;o--){let a=ga(t.doc,r.before(o),r.after(o),w.empty);if(a&&a.slice.size<a.to-a.from){if(e){let l=t.tr.step(a);l.setSelection(dr(i,"end")?V.findFrom(l.doc.resolve(l.mapping.map(s.pos,-1)),-1):I.create(l.doc,s.pos-i.nodeSize)),e(l.scrollIntoView())}return!0}if(o==1||r.node(o-1).childCount>1)break}return i.isAtom&&s.depth==r.depth-1?(e&&e(t.tr.delete(s.pos-i.nodeSize,s.pos).scrollIntoView()),!0):!1};function dr(t,e,n=!1){for(let r=t;r;r=e=="start"?r.firstChild:r.lastChild){if(r.isTextblock)return!0;if(n&&r.childCount!=1)return!1}return!1}const q0=(t,e,n)=>{let{$head:r,empty:s}=t.selection,i=r;if(!s)return!1;if(r.parent.isTextblock){if(n?!n.endOfTextblock("backward",t):r.parentOffset>0)return!1;i=kh(r)}let o=i&&i.nodeBefore;return!o||!I.isSelectable(o)?!1:(e&&e(t.tr.setSelection(I.create(t.doc,i.pos-o.nodeSize)).scrollIntoView()),!0)};function kh(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 J0(t,e){let{$cursor:n}=t.selection;return!n||(e?!e.endOfTextblock("forward",t):n.parentOffset<n.parent.content.size)?null:n}const G0=(t,e,n)=>{let r=J0(t,n);if(!r)return!1;let s=Sh(r);if(!s)return!1;let i=s.nodeAfter;if(wh(t,s,e,1))return!0;if(r.parent.content.size==0&&(dr(i,"start")||I.isSelectable(i))){let o=ga(t.doc,r.before(),r.after(),w.empty);if(o&&o.slice.size<o.to-o.from){if(e){let a=t.tr.step(o);a.setSelection(dr(i,"start")?V.findFrom(a.doc.resolve(a.mapping.map(s.pos)),1):I.create(a.doc,a.mapping.map(s.pos))),e(a.scrollIntoView())}return!0}}return i.isAtom&&s.depth==r.depth-1?(e&&e(t.tr.delete(s.pos,s.pos+i.nodeSize).scrollIntoView()),!0):!1},X0=(t,e,n)=>{let{$head:r,empty:s}=t.selection,i=r;if(!s)return!1;if(r.parent.isTextblock){if(n?!n.endOfTextblock("forward",t):r.parentOffset<r.parent.content.size)return!1;i=Sh(r)}let o=i&&i.nodeAfter;return!o||!I.isSelectable(o)?!1:(e&&e(t.tr.setSelection(I.create(t.doc,i.pos)).scrollIntoView()),!0)};function Sh(t){if(!t.parent.type.spec.isolating)for(let e=t.depth-1;e>=0;e--){let n=t.node(e);if(t.index(e)+1<n.childCount)return t.doc.resolve(t.after(e+1));if(n.type.spec.isolating)break}return null}const Y0=(t,e)=>{let{$head:n,$anchor:r}=t.selection;return!n.parent.type.spec.code||!n.sameParent(r)?!1:(e&&e(t.tr.insertText(`
|
|
47
|
+
`).scrollIntoView()),!0)};function Pa(t){for(let e=0;e<t.edgeCount;e++){let{type:n}=t.edge(e);if(n.isTextblock&&!n.hasRequiredAttrs())return n}return null}const Z0=(t,e)=>{let{$head:n,$anchor:r}=t.selection;if(!n.parent.type.spec.code||!n.sameParent(r))return!1;let s=n.node(-1),i=n.indexAfter(-1),o=Pa(s.contentMatchAt(i));if(!o||!s.canReplaceWith(i,i,o))return!1;if(e){let a=n.after(),l=t.tr.replaceWith(a,a,o.createAndFill());l.setSelection(V.near(l.doc.resolve(a),1)),e(l.scrollIntoView())}return!0},Q0=(t,e)=>{let n=t.selection,{$from:r,$to:s}=n;if(n instanceof Be||r.parent.inlineContent||s.parent.inlineContent)return!1;let i=Pa(s.parent.contentMatchAt(s.indexAfter()));if(!i||!i.isTextblock)return!1;if(e){let o=(!r.parentOffset&&s.index()<s.parent.childCount?r:s).pos,a=t.tr.insert(o,i.createAndFill());a.setSelection(L.create(a.doc,o+1)),e(a.scrollIntoView())}return!0},ex=(t,e)=>{let{$cursor:n}=t.selection;if(!n||n.parent.content.size)return!1;if(n.depth>1&&n.after()!=n.end(-1)){let i=n.before();if(Zn(t.doc,i))return e&&e(t.tr.split(i).scrollIntoView()),!0}let r=n.blockRange(),s=r&&xr(r);return s==null?!1:(e&&e(t.tr.lift(r,s).scrollIntoView()),!0)};function tx(t){return(e,n)=>{let{$from:r,$to:s}=e.selection;if(e.selection instanceof I&&e.selection.node.isBlock)return!r.parentOffset||!Zn(e.doc,r.pos)?!1:(n&&n(e.tr.split(r.pos).scrollIntoView()),!0);if(!r.parent.isBlock)return!1;if(n){let i=s.parentOffset==s.parent.content.size,o=e.tr;(e.selection instanceof L||e.selection instanceof Be)&&o.deleteSelection();let a=r.depth==0?null:Pa(r.node(-1).contentMatchAt(r.indexAfter(-1))),l=i&&a?[{type:a}]:void 0,c=Zn(o.doc,o.mapping.map(r.pos),1,l);if(!l&&!c&&Zn(o.doc,o.mapping.map(r.pos),1,a?[{type:a}]:void 0)&&(a&&(l=[{type:a}]),c=!0),c&&(o.split(o.mapping.map(r.pos),1,l),!i&&!r.parentOffset&&r.parent.type!=a)){let u=o.mapping.map(r.before()),d=o.doc.resolve(u);a&&r.node(-1).canReplaceWith(d.index(),d.index()+1,a)&&o.setNodeMarkup(o.mapping.map(r.before()),a)}n(o.scrollIntoView())}return!0}}const nx=tx(),rx=(t,e)=>{let{$from:n,to:r}=t.selection,s,i=n.sharedDepth(r);return i==0?!1:(s=n.before(i),e&&e(t.tr.setSelection(I.create(t.doc,s))),!0)},sx=(t,e)=>(e&&e(t.tr.setSelection(new Be(t.doc))),!0);function ix(t,e,n){let r=e.nodeBefore,s=e.nodeAfter,i=e.index();return!r||!s||!r.type.compatibleContent(s.type)?!1:!r.content.size&&e.parent.canReplace(i-1,i)?(n&&n(t.tr.delete(e.pos-r.nodeSize,e.pos).scrollIntoView()),!0):!e.parent.canReplace(i,i+1)||!(s.isTextblock||Cs(t.doc,e.pos))?!1:(n&&n(t.tr.clearIncompatible(e.pos,r.type,r.contentMatchAt(r.childCount)).join(e.pos).scrollIntoView()),!0)}function wh(t,e,n,r){let s=e.nodeBefore,i=e.nodeAfter,o,a,l=s.type.spec.isolating||i.type.spec.isolating;if(!l&&ix(t,e,n))return!0;let c=!l&&e.parent.canReplace(e.index(),e.index()+1);if(c&&(o=(a=s.contentMatchAt(s.childCount)).findWrapping(i.type))&&a.matchType(o[0]||i.type).validEnd){if(n){let f=e.pos+i.nodeSize,p=x.empty;for(let y=o.length-1;y>=0;y--)p=x.from(o[y].create(null,p));p=x.from(s.copy(p));let m=t.tr.step(new pe(e.pos-1,f,e.pos,f,new w(p,1,0),o.length,!0)),g=f+2*o.length;Cs(m.doc,g)&&m.join(g),n(m.scrollIntoView())}return!0}let u=i.type.spec.isolating||r>0&&l?null:V.findFrom(e,1),d=u&&u.$from.blockRange(u.$to),h=d&&xr(d);if(h!=null&&h>=e.depth)return n&&n(t.tr.lift(d,h).scrollIntoView()),!0;if(c&&dr(i,"start",!0)&&dr(s,"end")){let f=s,p=[];for(;p.push(f),!f.isTextblock;)f=f.lastChild;let m=i,g=1;for(;!m.isTextblock;m=m.firstChild)g++;if(f.canReplace(f.childCount,f.childCount,m.content)){if(n){let y=x.empty;for(let D=p.length-1;D>=0;D--)y=x.from(p[D].copy(y));let k=t.tr.step(new pe(e.pos-p.length,e.pos+i.nodeSize,e.pos+g,e.pos+i.nodeSize-g,new w(y,p.length,0),0,!0));n(k.scrollIntoView())}return!0}}return!1}function vh(t){return function(e,n){let r=e.selection,s=t<0?r.$from:r.$to,i=s.depth;for(;s.node(i).isInline;){if(!i)return!1;i--}return s.node(i).isTextblock?(n&&n(e.tr.setSelection(L.create(e.doc,t<0?s.start(i):s.end(i)))),!0):!1}}const ox=vh(-1),ax=vh(1);function lx(t,e,n,r){for(let s=0;s<e.length;s++){let{$from:i,$to:o}=e[s],a=i.depth==0?t.inlineContent&&t.type.allowsMarkType(n):!1;if(t.nodesBetween(i.pos,o.pos,(l,c)=>{if(a||!r)return!1;a=l.inlineContent&&l.type.allowsMarkType(n)}),a)return!0}return!1}function cx(t,e=null,n){let r=n!==!1;return function(s,i){let{empty:o,$cursor:a,ranges:l}=s.selection;if(o&&!a||!lx(s.doc,l,t,r))return!1;if(i)if(a)t.isInSet(s.storedMarks||a.marks())?i(s.tr.removeStoredMark(t)):i(s.tr.addStoredMark(t.create(e)));else{let c,u=s.tr;c=!l.some(d=>s.doc.rangeHasMark(d.$from.pos,d.$to.pos,t));for(let d=0;d<l.length;d++){let{$from:h,$to:f}=l[d];if(!c)u.removeMark(h.pos,f.pos,t);else{let p=h.pos,m=f.pos,g=h.nodeAfter,y=f.nodeBefore,k=g&&g.isText?/^\s*/.exec(g.text)[0].length:0,D=y&&y.isText?/\s*$/.exec(y.text)[0].length:0;p+k<m&&(p+=k,m-=D),u.addMark(p,m,t.create(e))}}i(u.scrollIntoView())}return!0}}function Ui(...t){return function(e,n,r){for(let s=0;s<t.length;s++)if(t[s](e,n,r))return!0;return!1}}let fo=Ui(xh,bh,q0),Cc=Ui(xh,G0,X0);const Tt={Enter:Ui(Y0,Q0,ex,nx),"Mod-Enter":Z0,Backspace:fo,"Mod-Backspace":fo,"Shift-Backspace":fo,Delete:Cc,"Mod-Delete":Cc,"Mod-a":sx},Eh={"Ctrl-h":Tt.Backspace,"Alt-Backspace":Tt["Mod-Backspace"],"Ctrl-d":Tt.Delete,"Ctrl-Alt-Backspace":Tt["Mod-Delete"],"Alt-Delete":Tt["Mod-Delete"],"Alt-d":Tt["Mod-Delete"],"Ctrl-a":ox,"Ctrl-e":ax};for(let t in Tt)Eh[t]=Tt[t];const ux=typeof navigator<"u"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):typeof os<"u"&&os.platform?os.platform()=="darwin":!1,po=ux?Eh:Tt;var sn={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:"'"},bi={48:")",49:"!",50:"@",51:"#",52:"$",53:"%",54:"^",55:"&",56:"*",57:"(",59:":",61:"+",173:"_",186:":",187:"+",188:"<",189:"_",190:">",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},dx=typeof navigator<"u"&&/Mac/.test(navigator.platform),hx=typeof navigator<"u"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(var we=0;we<10;we++)sn[48+we]=sn[96+we]=String(we);for(var we=1;we<=24;we++)sn[we+111]="F"+we;for(var we=65;we<=90;we++)sn[we]=String.fromCharCode(we+32),bi[we]=String.fromCharCode(we);for(var mo in sn)bi.hasOwnProperty(mo)||(bi[mo]=sn[mo]);function fx(t){var e=dx&&t.metaKey&&t.shiftKey&&!t.ctrlKey&&!t.altKey||hx&&t.shiftKey&&t.key&&t.key.length==1||t.key=="Unidentified",n=!e&&t.key||(t.shiftKey?bi:sn)[t.keyCode]||t.key||"Unidentified";return n=="Esc"&&(n="Escape"),n=="Del"&&(n="Delete"),n=="Left"&&(n="ArrowLeft"),n=="Up"&&(n="ArrowUp"),n=="Right"&&(n="ArrowRight"),n=="Down"&&(n="ArrowDown"),n}const px=typeof navigator<"u"?/Mac|iP(hone|[oa]d)/.test(navigator.platform):!1;function mx(t){let e=t.split(/-(?!$)/),n=e[e.length-1];n=="Space"&&(n=" ");let r,s,i,o;for(let a=0;a<e.length-1;a++){let l=e[a];if(/^(cmd|meta|m)$/i.test(l))o=!0;else if(/^a(lt)?$/i.test(l))r=!0;else if(/^(c|ctrl|control)$/i.test(l))s=!0;else if(/^s(hift)?$/i.test(l))i=!0;else if(/^mod$/i.test(l))px?o=!0:s=!0;else throw new Error("Unrecognized modifier name: "+l)}return r&&(n="Alt-"+n),s&&(n="Ctrl-"+n),o&&(n="Meta-"+n),i&&(n="Shift-"+n),n}function gx(t){let e=Object.create(null);for(let n in t)e[mx(n)]=t[n];return e}function go(t,e,n=!0){return e.altKey&&(t="Alt-"+t),e.ctrlKey&&(t="Ctrl-"+t),e.metaKey&&(t="Meta-"+t),n&&e.shiftKey&&(t="Shift-"+t),t}function Ch(t){let e=gx(t);return function(n,r){let s=fx(r),i,o=e[go(s,r)];if(o&&o(n.state,n.dispatch,n))return!0;if(s.length==1&&s!=" "){if(r.shiftKey){let a=e[go(s,r,!1)];if(a&&a(n.state,n.dispatch,n))return!0}if((r.shiftKey||r.altKey||r.metaKey||s.charCodeAt(0)>127)&&(i=sn[r.keyCode])&&i!=s){let a=e[go(i,r)];if(a&&a(n.state,n.dispatch,n))return!0}}return!1}}function yx(t){const e=ir(t,(i,o)=>(o.priority??Y.Low)-(i.priority??Y.Low)),n=[],r=[];for(const i of e)Ex(i)?n.push(i):r.push(i);let s;return new dn({key:xx,view:i=>(s=i,{}),props:{transformPasted:i=>{var c,u,d;const o=s.state.selection.$from,a=o.node().type.name,l=new Set(o.marks().map(h=>h.type.name));for(const h of n){if((c=h.ignoredNodes)!=null&&c.includes(a)||(u=h.ignoredMarks)!=null&&u.some(k=>l.has(k)))continue;const f=((d=i.content.firstChild)==null?void 0:d.textContent)??"",p=!s.state.selection.empty&&i.content.childCount===1&&f,m=fa(f,h.regexp)[0];if(p&&m&&h.type==="mark"&&h.replaceSelection){const{from:k,to:D}=s.state.selection,q=s.state.doc.slice(k,D),J=q.content.textBetween(0,q.content.size);if(typeof h.replaceSelection!="boolean"?h.replaceSelection(J):h.replaceSelection){const $=[],{getAttributes:oe,markType:Ve}=h,F=ee(oe)?oe(m,!0):oe,ht=Ve.create(F);return q.content.forEach(Bt=>{if(Bt.isText){const Qi=ht.addToSet(Bt.marks);$.push(Bt.mark(Qi))}}),w.maxOpen(x.fromArray($))}}const{nodes:g,transformed:y}=wx(i.content,h,s.state.schema);y&&(i=h.type==="node"&&h.nodeType.isBlock?new w(x.fromArray(g),0,0):new w(x.fromArray(g),i.openStart,i.openEnd))}return Mx(i)},handleDOMEvents:{paste:(i,o)=>{var d,h;const a=o;if(!((h=(d=i.props).editable)!=null&&h.call(d,i.state)))return!1;const{clipboardData:l}=a;if(!l)return!1;const c=[...l.items].map(f=>f.getAsFile()).filter(f=>!!f);if(c.length===0)return!1;const{selection:u}=i.state;for(const{fileHandler:f,regexp:p}of r){const m=p?c.filter(g=>p.test(g.type)):c;if(m.length!==0&&f({event:a,files:m,selection:u,view:i,type:"paste"}))return a.preventDefault(),!0}return!1},drop:(i,o)=>{var f,p,m;const a=o;if(!((p=(f=i.props).editable)!=null&&p.call(f,i.state)))return!1;const{dataTransfer:l,clientX:c,clientY:u}=a;if(!l)return!1;const d=Ox(a);if(d.length===0)return!1;const h=((m=i.posAtCoords({left:c,top:u}))==null?void 0:m.pos)??i.state.selection.anchor;for(const{fileHandler:g,regexp:y}of r){const k=y?d.filter(D=>y.test(D.type)):d;if(k.length!==0&&g({event:a,files:k,pos:h,view:i,type:"drop"}))return a.preventDefault(),!0}return!1}}}})}var xx=new br("pasteRule");function yo(t,e){return function n(r){const{fragment:s,rule:i,nodes:o}=r,{regexp:a,ignoreWhitespace:l,ignoredMarks:c,ignoredNodes:u}=i;let d=!1;return s.forEach(h=>{if(u!=null&&u.includes(h.type.name)||Cx(h)){o.push(h);return}if(!h.isText){const m=n({fragment:h.content,rule:i,nodes:[]});d||(d=m.transformed);const g=x.fromArray(m.nodes);h.type.validContent(g)?o.push(h.copy(g)):o.push(...m.nodes);return}if(h.marks.some(m=>Tx(m)||(c==null?void 0:c.includes(m.type.name)))){o.push(h);return}const f=h.text??"";let p=0;for(const m of fa(f,a)){const g=m[1],y=m[0];if(l&&(g==null?void 0:g.trim())===""||!y)return;const k=m.index,D=k+y.length;k>p&&o.push(h.cut(p,k));let q=h.cut(k,D);if(y&&g){const J=y.search(/\S/),$=k+y.indexOf(g),oe=$+g.length;J&&o.push(h.cut(k,k+J)),q=h.cut($,oe)}t({nodes:o,rule:i,textNode:q,match:m,schema:e}),d=!0,p=D}f&&p<f.length&&o.push(h.cut(p))}),{nodes:o,transformed:d}}}function bx(t){const{nodes:e,rule:n,textNode:r,match:s,schema:i}=t,{transformMatch:o,getAttributes:a,markType:l}=n,c=ee(a)?a(s,!1):a,u=r.text??"",d=l.create(c),h=o==null?void 0:o(s);if(h==="")return;if(h===!1){e.push(i.text(u,r.marks));return}const f=d.addToSet(r.marks);e.push(i.text(h??u,f))}function kx(t){const{nodes:e,rule:n,textNode:r,match:s,schema:i}=t,{transformMatch:o}=n,a=o==null?void 0:o(s);if(a===""||a===!1)return;const l=a??r.text??"";e.push(i.text(l,r.marks))}function Sx(t){const{nodes:e,rule:n,textNode:r,match:s}=t,{getAttributes:i,nodeType:o,getContent:a}=n,l=ee(i)?i(s,!1):i,c=(a?a(s):r)||void 0;e.push(o.createChecked(l,c))}function wx(t,e,n){const r=[];switch(e.type){case"mark":return yo(bx,n)({fragment:t,nodes:r,rule:e});case"node":return yo(Sx,n)({fragment:t,nodes:r,rule:e});default:return yo(kx,n)({fragment:t,nodes:r,rule:e})}}var vx=["mark","node","text"];function Ex(t){return yt(vx,t.type)}function Cx(t){var e;return t.type.spec.code||((e=t.type.spec.group)==null?void 0:e.split(" ").includes("code"))}function Tx(t){var e;return t.type.name==="code"||((e=t.type.spec.group)==null?void 0:e.split(" ").includes("code"))}function Ox(t){var n,r;const{dataTransfer:e}=t;return e?((n=e.files)==null?void 0:n.length)>0?[...e.files]:(r=e.items)!=null&&r.length?[...e.items].map(s=>s.getAsFile()).filter(s=>!!s):[]:[]}function Mx(t){const e=w.maxOpen(t.content);return e.openStart<t.openStart||e.openEnd<t.openEnd?e:t}let ji=()=>({events:{},emit(t,...e){(this.events[t]||[]).forEach(n=>n(...e))},on(t,e){return(this.events[t]=this.events[t]||[]).push(e),()=>this.events[t]=(this.events[t]||[]).filter(n=>n!==e)}});var _x=Object.defineProperty,Nx=Object.getOwnPropertyDescriptor,T=(t,e,n,r)=>{for(var s=r>1?void 0:r?Nx(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&_x(e,n,s),s},Th=(t,e,n)=>{if(!e.has(t))throw TypeError("Cannot "+n)},v=(t,e,n)=>(Th(t,e,"read from private field"),n?n.call(t):e.get(t)),ue=(t,e,n)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,n)},ye=(t,e,n,r)=>(Th(t,e,"write to private field"),e.set(t,n),n);function Ax(t,e){return t===e}function Tc(t){const{previousOptions:e,update:n,equals:r=Ax}=t,s=bn({...e,...n}),i=M(),o=ti(e);for(const l of o){const c=e[l],u=s[l];if(r(c,u)){i[l]={changed:!1};continue}i[l]={changed:!0,previousValue:c,value:u}}const a=l=>{const c=M();for(const u of l){const d=i[u];d!=null&&d.changed&&(c[u]=d.value)}return c};return{changes:bn(i),options:s,pickChanged:a}}var Rx={[b.DUPLICATE_HELPER_NAMES]:"helper method",[b.DUPLICATE_COMMAND_NAMES]:"command method"};function Oh(t){const{name:e,set:n,code:r}=t,s=Rx[r];R(!n.has(e),{code:r,message:`There is a naming conflict for the name: ${e} used in this '${s}'. Please rename or remove from the editor to avoid runtime errors.`}),n.add(e)}function Go(...t){return is(W0(...t).split(" ")).join(" ")}var Oc="__IGNORE__",Ix="__ALL__",vr=class{constructor(t,...[e]){this["~O"]={},this._mappedHandlers=M(),this.populateMappedHandlers(),this._options=this._initialOptions=gp(t,this.constructor.defaultOptions,e??M(),this.createDefaultHandlerOptions()),this._dynamicKeys=this.getDynamicKeys(),this.init()}get options(){return this._options}get dynamicKeys(){return this._dynamicKeys}get initialOptions(){return this._initialOptions}init(){}getDynamicKeys(){const t=[],{customHandlerKeys:e,handlerKeys:n,staticKeys:r}=this.constructor;for(const s of ti(this._options))r.includes(s)||n.includes(s)||e.includes(s)||t.push(s);return t}ensureAllKeysAreDynamic(t){}setOptions(t){var e;const n=this.getDynamicOptions();this.ensureAllKeysAreDynamic(t);const{changes:r,options:s,pickChanged:i}=Tc({previousOptions:n,update:t});this.updateDynamicOptions(s),(e=this.onSetOptions)==null||e.call(this,{reason:"set",changes:r,options:s,pickChanged:i,initialOptions:this._initialOptions})}resetOptions(){var t;const e=this.getDynamicOptions(),{changes:n,options:r,pickChanged:s}=Tc({previousOptions:e,update:this._initialOptions});this.updateDynamicOptions(r),(t=this.onSetOptions)==null||t.call(this,{reason:"reset",options:r,changes:n,pickChanged:s,initialOptions:this._initialOptions})}getDynamicOptions(){return Au(this._options,[...this.constructor.customHandlerKeys,...this.constructor.handlerKeys])}updateDynamicOptions(t){this._options={...this._options,...t}}populateMappedHandlers(){for(const t of this.constructor.handlerKeys)this._mappedHandlers[t]=[]}createDefaultHandlerOptions(){const t=M();for(const e of this.constructor.handlerKeys)t[e]=(...n)=>{var r;const{handlerKeyOptions:s}=this.constructor,i=(r=s[e])==null?void 0:r.reducer;let o=i==null?void 0:i.getDefault(...n);for(const[,a]of this._mappedHandlers[e]){const l=a(...n);if(o=i?i.accumulator(o,l,...n):l,Dx(s,o,e))return o}return o};return t}addHandler(t,e,n=Y.Default){return this._mappedHandlers[t].push([n,e]),this.sortHandlers(t),()=>this._mappedHandlers[t]=this._mappedHandlers[t].filter(([,r])=>r!==e)}hasHandlers(t){return(this._mappedHandlers[t]??[]).length>0}sortHandlers(t){this._mappedHandlers[t]=ir(this._mappedHandlers[t],([e],[n])=>n-e)}addCustomHandler(t,e){var n;return((n=this.onAddCustomHandler)==null?void 0:n.call(this,{[t]:e}))??zu}};vr.defaultOptions={};vr.staticKeys=[];vr.handlerKeys=[];vr.handlerKeyOptions={};vr.customHandlerKeys=[];function Dx(t,e,n){const{[Ix]:r}=t,s=t[n];return!r&&!s?!1:!!(s&&s.earlyReturnValue!==Oc&&(ee(s.earlyReturnValue)?s.earlyReturnValue(e)===!0:e===s.earlyReturnValue)||r&&r.earlyReturnValue!==Oc&&(ee(r.earlyReturnValue)?r.earlyReturnValue(e)===!0:e===r.earlyReturnValue))}var Wi=class extends vr{constructor(...t){super(Px,...t),this["~E"]={},this._extensions=Sp(this.createExtensions(),e=>e.constructor),this.extensionMap=new Map;for(const e of this._extensions)this.extensionMap.set(e.constructor,e)}get priority(){return this.priorityOverride??this.options.priority??this.constructor.defaultPriority}get constructorName(){return`${Du(this.name)}Extension`}get store(){return R(this._store,{code:b.MANAGER_PHASE_ERROR,message:"An error occurred while attempting to access the 'extension.store' when the Manager has not yet set created the lifecycle methods."}),bn(this._store,{requireKeys:!0})}get extensions(){return this._extensions}replaceChildExtension(t,e){this.extensionMap.has(t)&&(this.extensionMap.set(t,e),this._extensions=this.extensions.map(n=>e.constructor===t?e:n))}createExtensions(){return[]}getExtension(t){const e=this.extensionMap.get(t);return R(e,{code:b.INVALID_GET_EXTENSION,message:`'${t.name}' does not exist within the preset: '${this.name}'`}),e}isOfType(t){return this.constructor===t}setStore(t){this._store||(this._store=t)}clone(...t){return new this.constructor(...t)}setPriority(t){this.priorityOverride=t}};Wi.defaultPriority=Y.Default;var te=class extends Wi{static get[It](){return xe.PlainExtensionConstructor}get[It](){return xe.PlainExtension}},Ki=class extends Wi{static get[It](){return xe.MarkExtensionConstructor}get[It](){return xe.MarkExtension}get type(){return re(this.store.schema.marks,this.name)}constructor(...t){super(...t)}};Ki.disableExtraAttributes=!1;var Pt=class extends Wi{static get[It](){return xe.NodeExtensionConstructor}get[It](){return xe.NodeExtension}get type(){return re(this.store.schema.nodes,this.name)}constructor(...t){super(...t)}};Pt.disableExtraAttributes=!1;var Px={priority:void 0,extraAttributes:{},disableExtraAttributes:!1,exclude:{}};function Mh(t){return kr(t)&&Sr(t,[xe.PlainExtension,xe.MarkExtension,xe.NodeExtension])}function Lx(t){return kr(t)&&Sr(t,[xe.PlainExtensionConstructor,xe.MarkExtensionConstructor,xe.NodeExtensionConstructor])}function _h(t){return kr(t)&&Sr(t,xe.PlainExtension)}function _s(t){return kr(t)&&Sr(t,xe.NodeExtension)}function qi(t){return kr(t)&&Sr(t,xe.MarkExtension)}function G(t){return e=>{const{defaultOptions:n,customHandlerKeys:r,handlerKeys:s,staticKeys:i,defaultPriority:o,handlerKeyOptions:a,...l}=t,c=e;n&&(c.defaultOptions=n),o&&(c.defaultPriority=o),a&&(c.handlerKeyOptions=a),c.staticKeys=i??[],c.handlerKeys=s??[],c.customHandlerKeys=r??[];for(const[u,d]of Object.entries(l))c[u]||(c[u]=d);return c}}var Bx=class extends te{constructor(){super(...arguments),this.attributeList=[],this.attributeObject=M(),this.updateAttributes=(t=!0)=>{this.transformAttributes(),t&&this.store.commands.forceUpdate("attributes")}}get name(){return"attributes"}onCreate(){this.transformAttributes(),this.store.setExtensionStore("updateAttributes",this.updateAttributes)}transformAttributes(){var t,e,n;if(this.attributeObject=M(),(t=this.store.managerSettings.exclude)!=null&&t.attributes){this.store.setStoreKey("attributes",this.attributeObject);return}this.attributeList=[];for(const r of this.store.extensions){if((e=r.options.exclude)!=null&&e.attributes)continue;const s=(n=r.createAttributes)==null?void 0:n.call(r),i={...s,class:Go(...r.classNames??[],s==null?void 0:s.class)};this.attributeList.unshift(i)}for(const r of this.attributeList)this.attributeObject={...this.attributeObject,...r,class:Go(this.attributeObject.class,r.class)};this.store.setStoreKey("attributes",this.attributeObject)}};function se(t={}){return(e,n,r)=>{(e.decoratedHelpers??(e.decoratedHelpers={}))[n]=t}}function _(t={}){return(e,n,r)=>{(e.decoratedCommands??(e.decoratedCommands={}))[n]=t}}function Ye(t){return(e,n,r)=>{(e.decoratedKeybindings??(e.decoratedKeybindings={}))[n]=t}}var zx=class{constructor(t){this.promiseCreator=t,this.failureHandlers=[],this.successHandlers=[],this.validateHandlers=[],this.generateCommand=()=>e=>{let n=!0;const{view:r,tr:s,dispatch:i}=e;if(!r)return!1;for(const a of this.validateHandlers)if(!a({...e,dispatch:()=>{}})){n=!1;break}return!i||!n?n:(this.promiseCreator(e).then(a=>{this.runHandlers(this.successHandlers,{value:a,state:r.state,tr:r.state.tr,dispatch:r.dispatch,view:r})}).catch(a=>{this.runHandlers(this.failureHandlers,{error:a,state:r.state,tr:r.state.tr,dispatch:r.dispatch,view:r})}),i(s),!0)}}validate(t,e="push"){return this.validateHandlers[e](t),this}success(t,e="push"){return this.successHandlers[e](t),this}failure(t,e="push"){return this.failureHandlers[e](t),this}runHandlers(t,e){var n;for(const r of t)if(!r({...e,dispatch:()=>{}}))break;(n=e.dispatch)==null||n.call(e,e.tr)}};function hr(t){const{type:e,attrs:n,range:r,selection:s}=t;return i=>{const{dispatch:o,tr:a,state:l}=i,c=P(e)?l.schema.marks[e]:e;if(R(c,{code:b.SCHEMA,message:`Mark type: ${e} does not exist on the current schema.`}),r||s){const{from:u,to:d}=ct(s??r??a.selection,a.doc);return dh({trState:a,type:e,...r})?o==null||o(a.removeMark(u,d,c)):o==null||o(a.addMark(u,d,c.create(n))),!0}return Fs(cx(c,n))(i)}}function $x(t,e,n){for(const{$from:r,$to:s}of n){let i=r.depth===0?e.type.allowsMarkType(t):!1;if(e.nodesBetween(r.pos,s.pos,o=>{if(i)return!1;i=o.inlineContent&&o.type.allowsMarkType(t)}),i)return!0}return!1}function Fx(t,e,n){return({tr:r,dispatch:s,state:i})=>{const o=ct(n??r.selection,r.doc),a=E0(o),l=P(t)?i.schema.marks[t]:t;if(R(l,{code:b.SCHEMA,message:`Mark type: ${t} does not exist on the current schema.`}),o.empty&&!a||!$x(l,r.doc,o.ranges))return!1;if(!s)return!0;if(a)return r.removeStoredMark(l),e&&r.addStoredMark(l.create(e)),s(r),!0;let c=!1;for(const{$from:u,$to:d}of o.ranges){if(c)break;c=r.doc.rangeHasMark(u.pos,d.pos,l)}for(const{$from:u,$to:d}of o.ranges)c&&r.removeMark(u.pos,d.pos,l),e&&r.addMark(u.pos,d.pos,l.create(e));return s(r),!0}}function Vx(t,e={}){return({tr:n,dispatch:r,state:s})=>{const i=s.schema,o=n.selection,{from:a=o.from,to:l=a??o.to,marks:c={}}=e;if(!r)return!0;n.insertText(t,a,l);const u=re(n.steps,n.steps.length-1).getMap().map(l);for(const[d,h]of fe(c))n.addMark(a,u,re(i.marks,d).create(h));return r(n),!0}}var H=class extends te{constructor(){super(...arguments),this.decorated=new Map,this.forceUpdateTransaction=(t,...e)=>{const{forcedUpdates:n}=this.getCommandMeta(t);return this.setCommandMeta(t,{forcedUpdates:is([...n,...e])}),t}}get name(){return"commands"}get transaction(){const t=this.store.getState();this._transaction||(this._transaction=t.tr);const e=this._transaction.before.eq(t.doc),n=!nn(this._transaction.steps);if(!e){const r=t.tr;if(n)for(const s of this._transaction.steps)r.step(s);this._transaction=r}return this._transaction}onCreate(){this.store.setStoreKey("getForcedUpdates",this.getForcedUpdates.bind(this))}onView(t){var e;const{extensions:n,helpers:r}=this.store,s=M(),i=new Set;let o=M();const a=c=>{var u;const d=M(),h=()=>c??this.transaction;let f=[];const p=()=>f;for(const[g,y]of Object.entries(s))(u=o[g])!=null&&u.disableChaining||(d[g]=this.chainedFactory({chain:d,command:y.original,getTr:h,getChain:p}));const m=g=>{R(g===h(),{message:"Chaining currently only supports `CommandFunction` methods which do not use the `state.tr` property. Instead you should use the provided `tr` property."})};return d.run=(g={})=>{const y=f;f=[];for(const k of y)if(!k(m)&&g.exitEarly)return;t.dispatch(h())},d.tr=()=>{const g=f;f=[];for(const y of g)y(m);return h()},d.enabled=()=>{for(const g of f)if(!g())return!1;return!0},d.new=g=>a(g),d};for(const c of n){const u=((e=c.createCommands)==null?void 0:e.call(c))??{},d=c.decoratedCommands??{},h={};o={...o,decoratedCommands:d};for(const[f,p]of Object.entries(d)){const m=P(p.shortcut)&&p.shortcut.startsWith("_|")?{shortcut:r.getNamedShortcut(p.shortcut,c.options)}:void 0;this.updateDecorated(f,{...p,name:c.name,...m}),u[f]=c[f].bind(c),p.active&&(h[f]=()=>{var g;return((g=p.active)==null?void 0:g.call(p,c.options,this.store))??!1})}ni(u)||this.addCommands({active:h,names:i,commands:s,extensionCommands:u})}const l=a();for(const[c,u]of Object.entries(l))a[c]=u;this.store.setStoreKey("commands",s),this.store.setStoreKey("chain",a),this.store.setExtensionStore("commands",s),this.store.setExtensionStore("chain",a)}onStateUpdate({state:t}){this._transaction=t.tr}createPlugin(){return{}}customDispatch(t){return t}insertText(t,e={}){return P(t)?Vx(t,e):this.store.createPlaceholderCommand({promise:t,placeholder:{type:"inline"},onSuccess:(n,r,s)=>this.insertText(n,{...e,...r})(s)}).generateCommand()}selectText(t,e={}){return({tr:n,dispatch:r})=>{const s=ct(t,n.doc);return n.selection.anchor===s.anchor&&n.selection.head===s.head&&!e.forceUpdate?!1:(r==null||r(n.setSelection(s)),!0)}}selectMark(t){return e=>{const{tr:n}=e,r=Bn(n.selection.$from,t);return r?this.store.commands.selectText.original({from:r.from,to:r.to})(e):!1}}delete(t){return({tr:e,dispatch:n})=>{const{from:r,to:s}=t??e.selection;return n==null||n(e.delete(r,s)),!0}}emptyUpdate(t){return({tr:e,dispatch:n})=>(n&&(t==null||t(),n(e)),!0)}forceUpdate(...t){return({tr:e,dispatch:n})=>(n==null||n(this.forceUpdateTransaction(e,...t)),!0)}updateNodeAttributes(t,e){return({tr:n,dispatch:r})=>(r==null||r(n.setNodeMarkup(t,void 0,e)),!0)}setContent(t,e){return n=>{const{tr:r,dispatch:s}=n,i=this.store.manager.createState({content:t,selection:e});return i?(s==null||s(r.replaceRangeWith(0,r.doc.nodeSize-2,i.doc)),!0):!1}}resetContent(){return t=>{const{tr:e,dispatch:n}=t,r=this.store.manager.createEmptyDoc();return r?this.setContent(r)(t):(n==null||n(e.delete(0,e.doc.nodeSize)),!0)}}emptySelection(){return({tr:t,dispatch:e})=>t.selection.empty?!1:(e==null||e(t.setSelection(L.near(t.selection.$anchor))),!0)}insertNewLine(){return({dispatch:t,tr:e})=>wr(e.selection)?(t==null||t(e.insertText(`
|
|
48
|
+
`)),!0):!1}insertNode(t,e={}){return({dispatch:n,tr:r,state:s})=>{var i;const{attrs:o,range:a,selection:l,replaceEmptyParentBlock:c=!1}=e,{from:u,to:d,$from:h}=ct(l??a??r.selection,r.doc);if($i(t)||g0(t)){const y=h.before(h.depth);return n==null||n(c&&u===d&&Da(h.parent)?r.replaceWith(y,y+h.parent.nodeSize,t):r.replaceWith(u,d,t)),!0}const f=P(t)?s.schema.nodes[t]:t;R(f,{code:b.SCHEMA,message:`The requested node type ${t} does not exist in the schema.`});const p=(i=e.marks)==null?void 0:i.map(y=>{if(y instanceof U)return y;const k=P(y)?s.schema.marks[y]:y;return R(k,{code:b.SCHEMA,message:`The requested mark type ${y} does not exist in the schema.`}),k.create()}),m=f.createAndFill(o,P(e.content)?s.schema.text(e.content):e.content,p);if(!m)return!1;const g=u!==d;return n==null||n(g?r.replaceRangeWith(u,d,m):r.insert(u,m)),!0}}focus(t){return e=>{const{dispatch:n,tr:r}=e,{view:s}=this.store;if(t===!1||s.hasFocus()&&(t===void 0||t===!0))return!1;if(t===void 0||t===!0){const{from:i=0,to:o=i}=r.selection;t={from:i,to:o}}return n&&this.delayedFocus(),this.selectText(t)(e)}}blur(t){return e=>{const{view:n}=this.store;return n.hasFocus()?(requestAnimationFrame(()=>{n.dom.blur()}),t?this.selectText(t)(e):!0):!1}}setBlockNodeType(t,e,n,r=!0){return Jo(t,e,n,r)}toggleWrappingNode(t,e,n){return B0(t,e,n)}toggleBlockNodeItem(t){return z0(t)}wrapInNode(t,e,n){return gh(t,e,n)}applyMark(t,e,n){return Fx(t,e,n)}toggleMark(t){return hr(t)}removeMark(t){return H0(t)}setMeta(t,e){return({tr:n})=>(n.setMeta(t,e),!0)}selectAll(){return this.selectText("all")}copy(){return t=>t.tr.selection.empty?!1:(t.dispatch&&document.execCommand("copy"),!0)}paste(){return this.store.createPlaceholderCommand({promise:async()=>{var t;return(t=navigator.clipboard)!=null&&t.readText?await navigator.clipboard.readText():""},placeholder:{type:"inline"},onSuccess:(t,e,n)=>this.insertNode(Ko({content:t,schema:n.state.schema}),{selection:e})(n)}).generateCommand()}cut(){return t=>t.tr.selection.empty?!1:(t.dispatch&&document.execCommand("cut"),!0)}replaceText(t){return V0(t)}getAllCommandOptions(){const t={};for(const[e,n]of this.decorated)ni(n)||(t[e]=n);return t}getCommandOptions(t){return this.decorated.get(t)}getCommandProp(){return{tr:this.transaction,dispatch:this.store.view.dispatch,state:this.store.view.state,view:this.store.view}}updateDecorated(t,e){if(!e){this.decorated.delete(t);return}const n=this.decorated.get(t)??{name:""};this.decorated.set(t,{...n,...e})}handleIosFocus(){st.isIos&&this.store.view.dom.focus()}delayedFocus(){this.handleIosFocus(),requestAnimationFrame(()=>{this.store.view.focus(),this.store.view.dispatch(this.transaction.scrollIntoView())})}getForcedUpdates(t){return this.getCommandMeta(t).forcedUpdates}getCommandMeta(t){const e=t.getMeta(this.pluginKey)??{};return{...Hx,...e}}setCommandMeta(t,e){const n=this.getCommandMeta(t);t.setMeta(this.pluginKey,{...n,...e})}addCommands(t){const{extensionCommands:e,commands:n,names:r,active:s}=t;for(const[i,o]of fe(e))Oh({name:i,set:r,code:b.DUPLICATE_COMMAND_NAMES}),R(!Ux.has(i),{code:b.DUPLICATE_COMMAND_NAMES,message:"The command name you chose is forbidden."}),n[i]=this.createUnchainedCommand(o,s[i])}unchainedFactory(t){return(...e)=>{const{shouldDispatch:n=!0,command:r}=t,{view:s}=this.store,{state:i}=s;let o;return n&&(o=s.dispatch),r(...e)({state:i,dispatch:o,view:s,tr:i.tr})}}createUnchainedCommand(t,e){const n=this.unchainedFactory({command:t});return n.enabled=this.unchainedFactory({command:t,shouldDispatch:!1}),n.isEnabled=n.enabled,n.original=t,n.active=e,n}chainedFactory(t){return(...e)=>{const{chain:n,command:r,getTr:s,getChain:i}=t,o=i(),{view:a}=this.store,{state:l}=a;return o.push(c=>r(...e)({state:l,dispatch:c,view:a,tr:s()})),n}}};T([_()],H.prototype,"customDispatch",1);T([_()],H.prototype,"insertText",1);T([_()],H.prototype,"selectText",1);T([_()],H.prototype,"selectMark",1);T([_()],H.prototype,"delete",1);T([_()],H.prototype,"emptyUpdate",1);T([_()],H.prototype,"forceUpdate",1);T([_()],H.prototype,"updateNodeAttributes",1);T([_()],H.prototype,"setContent",1);T([_()],H.prototype,"resetContent",1);T([_()],H.prototype,"emptySelection",1);T([_()],H.prototype,"insertNewLine",1);T([_()],H.prototype,"insertNode",1);T([_()],H.prototype,"focus",1);T([_()],H.prototype,"blur",1);T([_()],H.prototype,"setBlockNodeType",1);T([_()],H.prototype,"toggleWrappingNode",1);T([_()],H.prototype,"toggleBlockNodeItem",1);T([_()],H.prototype,"wrapInNode",1);T([_()],H.prototype,"applyMark",1);T([_()],H.prototype,"toggleMark",1);T([_()],H.prototype,"removeMark",1);T([_()],H.prototype,"setMeta",1);T([_({description:({t})=>t(rn.SELECT_ALL_DESCRIPTION),label:({t})=>t(rn.SELECT_ALL_LABEL),shortcut:E.SelectAll})],H.prototype,"selectAll",1);T([_({description:({t})=>t(rn.COPY_DESCRIPTION),label:({t})=>t(rn.COPY_LABEL),shortcut:E.Copy,icon:"fileCopyLine"})],H.prototype,"copy",1);T([_({description:({t})=>t(rn.PASTE_DESCRIPTION),label:({t})=>t(rn.PASTE_LABEL),shortcut:E.Paste,icon:"clipboardLine"})],H.prototype,"paste",1);T([_({description:({t})=>t(rn.CUT_DESCRIPTION),label:({t})=>t(rn.CUT_LABEL),shortcut:E.Cut,icon:"scissorsFill"})],H.prototype,"cut",1);T([_()],H.prototype,"replaceText",1);T([se()],H.prototype,"getAllCommandOptions",1);T([se()],H.prototype,"getCommandOptions",1);T([se()],H.prototype,"getCommandProp",1);H=T([G({defaultPriority:Y.Highest,defaultOptions:{trackerClassName:"remirror-tracker-position",trackerNodeName:"span"},staticKeys:["trackerClassName","trackerNodeName"]})],H);var Hx={forcedUpdates:[]},Ux=new Set(["run","chain","original","raw","enabled","tr","new"]),ut=class extends te{constructor(){super(...arguments),this.placeholders=W.empty,this.placeholderWidgets=new Map,this.createPlaceholderCommand=t=>{const e=si(),{promise:n,placeholder:r,onFailure:s,onSuccess:i}=t;return new zx(n).validate(o=>this.addPlaceholder(e,r)(o)).success(o=>{const{state:a,tr:l,dispatch:c,view:u,value:d}=o,h=this.store.helpers.findPlaceholder(e);if(!h){const f=new Error("The placeholder has been removed");return(s==null?void 0:s({error:f,state:a,tr:l,dispatch:c,view:u}))??!1}return this.removePlaceholder(e)({state:a,tr:l,view:u,dispatch:()=>{}}),i(d,h,{state:a,tr:l,dispatch:c,view:u})}).failure(o=>(this.removePlaceholder(e)({...o,dispatch:()=>{}}),(s==null?void 0:s(o))??!1))}}get name(){return"decorations"}onCreate(){this.store.setExtensionStore("createPlaceholderCommand",this.createPlaceholderCommand)}createPlugin(){return{state:{init:()=>{},apply:t=>{var e,n,r,s,i,o;const{added:a,clearTrackers:l,removed:c,updated:u}=this.getMeta(t);if(l){this.placeholders=W.empty;for(const[,d]of this.placeholderWidgets)(n=(e=d.spec).onDestroy)==null||n.call(e,this.store.view,d.spec.element);this.placeholderWidgets.clear();return}this.placeholders=this.placeholders.map(t.mapping,t.doc,{onRemove:d=>{var h,f;const p=this.placeholderWidgets.get(d.id);p&&((f=(h=p.spec).onDestroy)==null||f.call(h,this.store.view,p.spec.element))}});for(const[,d]of this.placeholderWidgets)(s=(r=d.spec).onUpdate)==null||s.call(r,this.store.view,d.from,d.spec.element,d.spec.data);for(const d of a){if(d.type==="inline"){this.addInlinePlaceholder(d,t);continue}if(d.type==="node"){this.addNodePlaceholder(d,t);continue}if(d.type==="widget"){this.addWidgetPlaceholder(d,t);continue}}for(const{id:d,data:h}of u){const f=this.placeholderWidgets.get(d);if(!f)continue;const p=Q.widget(f.from,f.spec.element,{...f.spec,data:h});this.placeholders=this.placeholders.remove([f]).add(t.doc,[p]),this.placeholderWidgets.set(d,p)}for(const d of c){const h=this.placeholders.find(void 0,void 0,p=>p.id===d&&p.__type===Hn),f=this.placeholderWidgets.get(d);f&&((o=(i=f.spec).onDestroy)==null||o.call(i,this.store.view,f.spec.element)),this.placeholders=this.placeholders.remove(h),this.placeholderWidgets.delete(d)}}},props:{decorations:t=>{let e=this.options.decorations(t);e=e.add(t.doc,this.placeholders.find());for(const n of this.store.extensions){if(!n.createDecorations)continue;const r=n.createDecorations(t).find();e=e.add(t.doc,r)}return e},handleDOMEvents:{blur:t=>(this.options.persistentSelectionClass&&t.dispatch(t.state.tr.setMeta(Mc,!1)),!1),focus:t=>(this.options.persistentSelectionClass&&t.dispatch(t.state.tr.setMeta(Mc,!0)),!1)}}}}updateDecorations(){return({tr:t,dispatch:e})=>(e==null||e(t),!0)}addPlaceholder(t,e,n){return({dispatch:r,tr:s})=>this.addPlaceholderTransaction(t,e,s,!r)?(r==null||r(n?s.deleteSelection():s),!0):!1}updatePlaceholder(t,e){return({dispatch:n,tr:r})=>this.updatePlaceholderTransaction({id:t,data:e,tr:r,checkOnly:!n})?(n==null||n(r),!0):!1}removePlaceholder(t){return({dispatch:e,tr:n})=>this.removePlaceholderTransaction({id:t,tr:n,checkOnly:!e})?(e==null||e(n),!0):!1}clearPlaceholders(){return({tr:t,dispatch:e})=>this.clearPlaceholdersTransaction({tr:t,checkOnly:!e})?(e==null||e(t),!0):!1}findPlaceholder(t){return this.findAllPlaceholders().get(t)}findAllPlaceholders(){const t=new Map,e=this.placeholders.find(void 0,void 0,n=>n.__type===Hn);for(const n of e)t.set(n.spec.id,{from:n.from,to:n.to});return t}createDecorations(t){var e,n,r;const{persistentSelectionClass:s}=this.options;return!s||(e=this.store.view)!=null&&e.hasFocus()||(r=(n=this.store.helpers).isInteracting)!=null&&r.call(n)?W.empty:Wx(t,W.empty,{class:P(s)?s:"selection"})}onApplyState(){}addWidgetPlaceholder(t,e){const{pos:n,createElement:r,onDestroy:s,onUpdate:i,className:o,nodeName:a,id:l,type:c}=t,u=(r==null?void 0:r(this.store.view,n))??document.createElement(a);u.classList.add(o);const d=Q.widget(n,u,{id:l,__type:Hn,type:c,element:u,onDestroy:s,onUpdate:i});this.placeholderWidgets.set(l,d),this.placeholders=this.placeholders.add(e.doc,[d])}addInlinePlaceholder(t,e){const{from:n=e.selection.from,to:r=e.selection.to,className:s,nodeName:i,id:o,type:a}=t;let l;if(n===r){const c=document.createElement(i);c.classList.add(s),l=Q.widget(n,c,{id:o,type:a,__type:Hn,widget:c})}else l=Q.inline(n,r,{nodeName:i,class:s},{id:o,__type:Hn});this.placeholders=this.placeholders.add(e.doc,[l])}addNodePlaceholder(t,e){const{pos:n,className:r,nodeName:s,id:i}=t,o=Ge(n)?e.doc.resolve(n):e.selection.$from,a=Ge(n)?o.nodeAfter?{pos:n,end:o.nodeAfter.nodeSize}:void 0:a0(o);if(!a)return;const l=Q.node(a.pos,a.end,{nodeName:s,class:r},{id:i,__type:Hn});this.placeholders=this.placeholders.add(e.doc,[l])}withRequiredBase(t,e){const{placeholderNodeName:n,placeholderClassName:r}=this.options,{nodeName:s=n,className:i,...o}=e,a=(i?[r,i]:[r]).join(" ");return{nodeName:s,className:a,...o,id:t}}getMeta(t){const e=t.getMeta(this.pluginKey)??{};return{...jx,...e}}setMeta(t,e){const n=this.getMeta(t);t.setMeta(this.pluginKey,{...n,...e})}addPlaceholderTransaction(t,e,n,r=!1){if(this.findPlaceholder(t))return!1;if(r)return!0;const{added:i}=this.getMeta(n);return this.setMeta(n,{added:[...i,this.withRequiredBase(t,e)]}),!0}updatePlaceholderTransaction(t){const{id:e,tr:n,checkOnly:r=!1,data:s}=t;if(!this.findPlaceholder(e))return!1;if(r)return!0;const{updated:o}=this.getMeta(n);return this.setMeta(n,{updated:is([...o,{id:e,data:s}])}),!0}removePlaceholderTransaction(t){const{id:e,tr:n,checkOnly:r=!1}=t;if(!this.findPlaceholder(e))return!1;if(r)return!0;const{removed:i}=this.getMeta(n);return this.setMeta(n,{removed:is([...i,e])}),!0}clearPlaceholdersTransaction(t){const{tr:e,checkOnly:n=!1}=t;return this.getPluginState()===W.empty?!1:(n||this.setMeta(e,{clearTrackers:!0}),!0)}};T([_()],ut.prototype,"updateDecorations",1);T([_()],ut.prototype,"addPlaceholder",1);T([_()],ut.prototype,"updatePlaceholder",1);T([_()],ut.prototype,"removePlaceholder",1);T([_()],ut.prototype,"clearPlaceholders",1);T([se()],ut.prototype,"findPlaceholder",1);T([se()],ut.prototype,"findAllPlaceholders",1);ut=T([G({defaultOptions:{persistentSelectionClass:void 0,placeholderClassName:"placeholder",placeholderNodeName:"span"},staticKeys:["placeholderClassName","placeholderNodeName"],handlerKeys:["decorations"],handlerKeyOptions:{decorations:{reducer:{accumulator:(t,e,n)=>t.add(n.doc,e.find()),getDefault:()=>W.empty}}},defaultPriority:Y.Low})],ut);var jx={added:[],updated:[],clearTrackers:!1,removed:[]},Hn="placeholderDecoration",Mc="persistentSelectionFocus";function Wx(t,e,n){const{selection:r,doc:s}=t;if(r.empty)return e;const{from:i,to:o}=r,a=Fi(r)?Q.node(i,o,n):Q.inline(i,o,n);return e.add(s,[a])}var Xo=class extends te{get name(){return"docChanged"}onStateUpdate(t){const{firstUpdate:e,transactions:n,tr:r}=t;e||(n??[r]).some(s=>s==null?void 0:s.docChanged)&&this.options.docChanged(t)}};Xo=T([G({handlerKeys:["docChanged"],handlerKeyOptions:{docChanged:{earlyReturnValue:!1}},defaultPriority:Y.Lowest})],Xo);var Xe=class extends te{get name(){return"helpers"}onCreate(){var t;this.store.setStringHandler("text",this.textToProsemirrorNode.bind(this)),this.store.setStringHandler("html",Ko);const e=M(),n=M(),r=M(),s=new Set;for(const i of this.store.extensions){_s(i)&&(n[i.name]=a=>u0({state:this.store.getState(),type:i.type,attrs:a}),r[i.name]=a=>{var l;return(l=fs({state:this.store.getState(),type:i.type,attrs:a}))==null?void 0:l.node.attrs}),qi(i)&&(n[i.name]=a=>dh({trState:this.store.getState(),type:i.type,attrs:a}),r[i.name]=a=>{const l=Bn(this.store.getState().selection.$from,i.type);if(!l||!a)return l==null?void 0:l.mark.attrs;if(Aa(l.mark,a))return l.mark.attrs});const o=((t=i.createHelpers)==null?void 0:t.call(i))??{};for(const a of Object.keys(i.decoratedHelpers??{}))o[a]=i[a].bind(i);if(!ni(o))for(const[a,l]of fe(o))Oh({name:a,set:s,code:b.DUPLICATE_HELPER_NAMES}),e[a]=l}this.store.setStoreKey("attrs",r),this.store.setStoreKey("active",n),this.store.setStoreKey("helpers",e),this.store.setExtensionStore("attrs",r),this.store.setExtensionStore("active",n),this.store.setExtensionStore("helpers",e)}isSelectionEmpty(t=this.store.getState()){return lh(t)}isViewEditable(t=this.store.getState()){var e,n;return((n=(e=this.store.view.props).editable)==null?void 0:n.call(e,t))??!1}getStateJSON(t=this.store.getState()){return t.toJSON()}getJSON(t=this.store.getState()){return t.doc.toJSON()}getRemirrorJSON(t=this.store.getState()){return this.getJSON(t)}insertHtml(t,e){return n=>{const{state:r}=n,s=Ko({content:t,schema:r.schema,fragment:!0});return this.store.commands.insertNode.original(s,e)(n)}}getText({lineBreakDivider:t=`
|
|
49
49
|
|
|
50
50
|
`,state:e=this.store.getState()}={}){return e.doc.textBetween(0,e.doc.content.size,t,Kt)}getTextBetween(t,e,n=this.store.getState().doc){return n.textBetween(t,e,`
|
|
51
51
|
|
|
52
|
-
`,Kt)}getHTML(t=this.store.getState()){return I0(t.doc,this.store.document)}textToProsemirrorNode(t){const e=`<pre>${t.content}</pre>`;return this.store.stringHandlers.html({...t,content:e})}};T([se()],Xe.prototype,"isSelectionEmpty",1);T([se()],Xe.prototype,"isViewEditable",1);T([se()],Xe.prototype,"getStateJSON",1);T([se()],Xe.prototype,"getJSON",1);T([se()],Xe.prototype,"getRemirrorJSON",1);T([_()],Xe.prototype,"insertHtml",1);T([se()],Xe.prototype,"getText",1);T([se()],Xe.prototype,"getTextBetween",1);T([se()],Xe.prototype,"getHTML",1);Xe=T([G({})],Xe);var Yo=class extends te{get name(){return"inputRules"}onCreate(){this.store.setExtensionStore("rebuildInputRules",this.rebuildInputRules.bind(this))}createExternalPlugins(){return[this.generateInputRulesPlugin()]}generateInputRulesPlugin(){var t,e;const n=[],r=this.store.markTags[j.ExcludeInputRules];for(const s of this.store.extensions)if(!((t=this.store.managerSettings.exclude)!=null&&t.inputRules||!s.createInputRules||(e=s.options.exclude)!=null&&e.inputRules))for(const i of s.createInputRules())i.shouldSkip=this.options.shouldSkipInputRule,i.invalidMarks=r,n.push(i);return tg({rules:n})}rebuildInputRules(){this.store.updateExtensionPlugins(this)}};Yo=T([G({defaultPriority:Y.Default,handlerKeys:["shouldSkipInputRule"],handlerKeyOptions:{shouldSkipInputRule:{earlyReturnValue:!0}}})],Yo);var it=class extends te{constructor(){super(...arguments),this.extraKeyBindings=[],this.backwardMarkExitTracker=new Map,this.keydownHandler=null,this.onAddCustomHandler=({keymap:t})=>{var e,n;if(t)return this.extraKeyBindings=[...this.extraKeyBindings,t],(n=(e=this.store).rebuildKeymap)==null||n.call(e),()=>{var r,s;this.extraKeyBindings=this.extraKeyBindings.filter(i=>i!==t),(s=(r=this.store).rebuildKeymap)==null||s.call(r)}},this.rebuildKeymap=()=>{this.setupKeydownHandler()}}get name(){return"keymap"}get shortcutMap(){const{shortcuts:t}=this.options;return P(t)?Xx[t]:t}onCreate(){this.store.setExtensionStore("rebuildKeymap",this.rebuildKeymap)}createExternalPlugins(){var t;return(t=this.store.managerSettings.exclude)!=null&&t.keymap?[]:(this.setupKeydownHandler(),[new dn({props:{handleKeyDown:(e,n)=>{var r;return(r=this.keydownHandler)==null?void 0:r.call(this,e,n)}}})])}setupKeydownHandler(){const t=this.generateKeymapBindings();this.keydownHandler=Eh(t)}generateKeymapBindings(){var t;const e=[],n=this.shortcutMap,r=this.store.getExtension(H),s=a=>l=>Vs({shortcut:l,map:n,store:this.store,options:a.options});for(const a of this.store.extensions){const l=a.decoratedKeybindings??{};if(!((t=a.options.exclude)!=null&&t.keymap)){a.createKeymap&&e.push(Jx(a.createKeymap(s(a)),n));for(const[c,u]of fe(l)){if(u.isActive&&!u.isActive(a.options,this.store))continue;const d=a[c].bind(a),h=Vs({shortcut:u.shortcut,map:n,options:a.options,store:this.store}),f=ee(u.priority)?u.priority(a.options,this.store):u.priority??Y.Low,p=M();for(const m of h)p[m]=d;e.push([f,p]),u.command&&r.updateDecorated(u.command,{shortcut:h})}}}const i=this.sortKeymaps([...this.extraKeyBindings,...e]);return f0(i)}arrowRightShortcut(t){const e=this.store.markTags[j.PreventExits],n=this.store.nodeTags[j.PreventExits];return this.exitMarkForwards(e,n)(t)}arrowLeftShortcut(t){const e=this.store.markTags[j.PreventExits],n=this.store.nodeTags[j.PreventExits];return yi(this.exitNodeBackwards(n),this.exitMarkBackwards(e,n))(t)}backspace(t){const e=this.store.markTags[j.PreventExits],n=this.store.nodeTags[j.PreventExits];return yi(this.exitNodeBackwards(n,!0),this.exitMarkBackwards(e,n,!0))(t)}createKeymap(){const{selectParentNodeOnEscape:t,undoInputRuleOnBackspace:e,excludeBaseKeymap:n}=this.options,r=M();if(!n)for(const[s,i]of fe(po))r[s]=Fs(i);return e&&po.Backspace&&(r.Backspace=Fs(Ui(ng,po.Backspace))),t&&(r.Escape=Fs(sx)),[Y.Low,r]}getNamedShortcut(t,e={}){return t.startsWith("_|")?Vs({shortcut:t,map:this.shortcutMap,store:this.store,options:e}):[t]}onSetOptions(t){var e,n;const{changes:r}=t;(r.excludeBaseKeymap.changed||r.selectParentNodeOnEscape.changed||r.undoInputRuleOnBackspace.changed)&&((n=(e=this.store).rebuildKeymap)==null||n.call(e))}sortKeymaps(t){return ir(t.map(e=>me(e)?e:[Y.Default,e]),(e,n)=>n[0]-e[0]).map(e=>e[1])}exitMarkForwards(t,e){return n=>{const{tr:r,dispatch:s}=n;if(!L0(r.selection)||hs({selection:r.selection,types:e}))return!1;const a=r.selection.$from.marks().filter(l=>!t.includes(l.type.name));if(nn(a))return!1;if(!s)return!0;for(const l of a)r.removeStoredMark(l);return s(r.insertText(" ",r.selection.from)),!0}}exitNodeBackwards(t,e=!1){return n=>{const{tr:r}=n;if(!(e?vc:qo)(r.selection))return!1;const i=r.selection.$anchor.node();return!Da(i)||S0(i)||t.includes(i.type.name)?!1:this.store.commands.toggleBlockNodeItem.original({type:i.type})(n)}}exitMarkBackwards(t,e,n=!1){return r=>{const{tr:s,dispatch:i}=r;if(!(n?vc:qo)(s.selection)||this.backwardMarkExitTracker.has(s.selection.anchor))return this.backwardMarkExitTracker.clear(),!1;if(hs({selection:s.selection,types:e}))return!1;const l=[...s.storedMarks??[],...s.selection.$from.marks()].filter(c=>!t.includes(c.type.name));if(nn(l))return!1;if(!i)return!0;for(const c of l)s.removeStoredMark(c);return this.backwardMarkExitTracker.set(s.selection.anchor,!0),i(s),!0}}};T([Ye({shortcut:"ArrowRight",isActive:t=>t.exitMarksOnArrowPress})],it.prototype,"arrowRightShortcut",1);T([Ye({shortcut:"ArrowLeft",isActive:t=>t.exitMarksOnArrowPress})],it.prototype,"arrowLeftShortcut",1);T([Ye({shortcut:"Backspace",isActive:t=>t.exitMarksOnArrowPress})],it.prototype,"backspace",1);T([se()],it.prototype,"getNamedShortcut",1);it=T([G({defaultPriority:Y.Low,defaultOptions:{shortcuts:"default",undoInputRuleOnBackspace:!0,selectParentNodeOnEscape:!1,excludeBaseKeymap:!1,exitMarksOnArrowPress:!0},customHandlerKeys:["keymap"]})],it);function qx(t){return yt(Ri(E),t)}function Vs({shortcut:t,map:e,options:n,store:r}){return P(t)?[Zo(t,e)]:me(t)?t.map(s=>Zo(s,e)):(t=t(n,r),Vs({shortcut:t,map:e,options:n,store:r}))}function Zo(t,e){return qx(t)?e[t]:t}function Jx(t,e){const n={};let r,s;me(t)?[s,r]=t:r=t;for(const[i,o]of fe(r))n[Zo(i,e)]=o;return Ii(s)?n:[s,n]}var _h={[E.Copy]:"Mod-c",[E.Cut]:"Mod-x",[E.Paste]:"Mod-v",[E.PastePlain]:"Mod-Shift-v",[E.SelectAll]:"Mod-a",[E.Undo]:"Mod-z",[E.Redo]:st.isMac?"Shift-Mod-z":"Mod-y",[E.Bold]:"Mod-b",[E.Italic]:"Mod-i",[E.Underline]:"Mod-u",[E.Strike]:"Mod-d",[E.Code]:"Mod-`",[E.Paragraph]:"Mod-Shift-0",[E.H1]:"Mod-Shift-1",[E.H2]:"Mod-Shift-2",[E.H3]:"Mod-Shift-3",[E.H4]:"Mod-Shift-4",[E.H5]:"Mod-Shift-5",[E.H6]:"Mod-Shift-6",[E.TaskList]:"Mod-Shift-7",[E.BulletList]:"Mod-Shift-8",[E.OrderedList]:"Mod-Shift-9",[E.Quote]:"Mod->",[E.Divider]:"Mod-Shift-|",[E.Codeblock]:"Mod-Shift-~",[E.ClearFormatting]:"Mod-Shift-C",[E.Superscript]:"Mod-.",[E.Subscript]:"Mod-,",[E.LeftAlignment]:"Mod-Shift-L",[E.CenterAlignment]:"Mod-Shift-E",[E.RightAlignment]:"Mod-Shift-R",[E.JustifyAlignment]:"Mod-Shift-J",[E.InsertLink]:"Mod-k",[E.Find]:"Mod-f",[E.FindBackwards]:"Mod-Shift-f",[E.FindReplace]:"Mod-Shift-H",[E.AddFootnote]:"Mod-Alt-f",[E.AddComment]:"Mod-Alt-m",[E.ContextMenu]:"Mod-Shift-\\",[E.IncreaseFontSize]:"Mod-Shift-.",[E.DecreaseFontSize]:"Mod-Shift-,",[E.IncreaseIndent]:"Tab",[E.DecreaseIndent]:"Shift-Tab",[E.Shortcuts]:"Mod-/",[E.Format]:st.isMac?"Alt-Shift-f":"Shift-Ctrl-f"},Gx={..._h,[E.Strike]:"Mod-Shift-S",[E.Code]:"Mod-Shift-M",[E.Paragraph]:"Mod-Alt-0",[E.H1]:"Mod-Alt-1",[E.H2]:"Mod-Alt-2",[E.H3]:"Mod-Alt-3",[E.H4]:"Mod-Alt-4",[E.H5]:"Mod-Alt-5",[E.H6]:"Mod-Alt-6",[E.OrderedList]:"Mod-Alt-7",[E.BulletList]:"Mod-Alt-8",[E.Quote]:"Mod-Alt-9",[E.ClearFormatting]:"Mod-\\",[E.IncreaseIndent]:"Mod-[",[E.DecreaseIndent]:"Mod-]"},Xx={default:_h,googleDoc:Gx},Yx=class extends te{get name(){return"nodeViews"}createPlugin(){const t=[],e=M();for(const n of this.store.extensions){if(!n.createNodeViews)continue;const r=n.createNodeViews();t.unshift(ee(r)?{[n.name]:r}:r)}t.unshift(this.store.managerSettings.nodeViews??{});for(const n of t)Object.assign(e,n);return{props:{nodeViews:e}}}},Zx=class extends te{get name(){return"pasteRules"}createExternalPlugins(){return[this.generatePasteRulesPlugin()]}generatePasteRulesPlugin(){var t,e;const n=[];for(const r of this.store.extensions){if((t=this.store.managerSettings.exclude)!=null&&t.pasteRules||!r.createPasteRules||(e=r.options.exclude)!=null&&e.pasteRules)continue;const s=r.createPasteRules(),i=me(s)?s:[s];n.push(...i)}return xx(n)}},Qo=class extends te{constructor(){super(...arguments),this.plugins=[],this.managerPlugins=[],this.applyStateHandlers=[],this.initStateHandlers=[],this.appendTransactionHandlers=[],this.pluginKeys=M(),this.stateGetters=new Map,this.getPluginStateCreator=t=>e=>t.getState(e??this.store.getState()),this.getStateByName=t=>{const e=this.stateGetters.get(t);return R(e,{message:"No plugin exists for the requested extension name."}),e()}}get name(){return"plugins"}onCreate(){const{setStoreKey:t,setExtensionStore:e,managerSettings:n,extensions:r}=this.store;this.updateExtensionStore();const{plugins:s=[]}=n;this.updatePlugins(s,this.managerPlugins);for(const i of r)i.onApplyState&&this.applyStateHandlers.push(i.onApplyState.bind(i)),i.onInitState&&this.initStateHandlers.push(i.onInitState.bind(i)),i.onAppendTransaction&&this.appendTransactionHandlers.push(i.onAppendTransaction.bind(i)),this.extractExtensionPlugins(i);this.managerPlugins=s,this.store.setStoreKey("plugins",this.plugins),t("pluginKeys",this.pluginKeys),t("getPluginState",this.getStateByName),e("getPluginState",this.getStateByName)}createPlugin(){return{appendTransaction:(t,e,n)=>{const r=n.tr,s={previousState:e,tr:r,transactions:t,state:n};for(const i of this.appendTransactionHandlers)i(s);return this.options.appendTransaction(s),r.docChanged||r.steps.length>0||r.selectionSet||r.storedMarksSet?r:void 0},state:{init:(t,e)=>{for(const n of this.initStateHandlers)n(e)},apply:(t,e,n,r)=>{const s={previousState:n,state:r,tr:t};for(const i of this.applyStateHandlers)i(s);this.options.applyState(s)}}}}extractExtensionPlugins(t){var e,n;if(!(!t.createPlugin&&!t.createExternalPlugins||(e=this.store.managerSettings.exclude)!=null&&e.plugins||(n=t.options.exclude)!=null&&n.plugins)){if(t.createPlugin){const s=new br(t.name);this.pluginKeys[t.name]=s;const i=this.getPluginStateCreator(s);t.pluginKey=s,t.getPluginState=i,this.stateGetters.set(t.name,i),this.stateGetters.set(t.constructor,i);const o={...t.createPlugin(),key:s},a=new dn(o);this.updatePlugins([a],t.plugin?[t.plugin]:void 0),t.plugin=a}if(t.createExternalPlugins){const s=t.createExternalPlugins();this.updatePlugins(s,t.externalPlugins),t.externalPlugins=s}}}updatePlugins(t,e){if(!e||nn(e)){this.plugins=[...this.plugins,...t];return}if(t.length!==e.length){this.plugins=[...this.plugins.filter(r=>!e.includes(r)),...t];return}const n=new Map;for(const[r,s]of t.entries())n.set(re(e,r),s);this.plugins=this.plugins.map(r=>e.includes(r)?n.get(r):r)}updateExtensionStore(){const{setExtensionStore:t}=this.store;t("updatePlugins",this.updatePlugins.bind(this)),t("dispatchPluginUpdate",this.dispatchPluginUpdate.bind(this)),t("updateExtensionPlugins",this.updateExtensionPlugins.bind(this))}updateExtensionPlugins(t){const e=Oh(t)?t:Bx(t)?this.store.manager.getExtension(t):this.store.extensions.find(n=>n.name===t);R(e,{code:b.INVALID_MANAGER_EXTENSION,message:`The extension ${t} does not exist within the editor.`}),this.extractExtensionPlugins(e),this.store.setStoreKey("plugins",this.plugins),this.dispatchPluginUpdate()}dispatchPluginUpdate(){R(this.store.phase>=Pe.EditorView,{code:b.MANAGER_PHASE_ERROR,message:"`dispatchPluginUpdate` should only be called after the view has been added to the manager."});const{view:t,updateState:e}=this.store,n=t.state.reconfigure({plugins:this.plugins});e(n)}};Qo=T([G({defaultPriority:Y.Highest,handlerKeys:["applyState","appendTransaction"]})],Qo);var ea=class extends te{constructor(){super(...arguments),this.dynamicAttributes={marks:M(),nodes:M()}}get name(){return"schema"}onCreate(){const{managerSettings:t,tags:e,markNames:n,nodeNames:r,extensions:s}=this.store,{defaultBlockNode:i,disableExtraAttributes:o,nodeOverride:a,markOverride:l}=t,c=p=>!!(p&&e[j.Block].includes(p));if(t.schema){const{nodes:p,marks:m}=ob(t.schema);this.addSchema(t.schema,p,m);return}const u=c(i)?{doc:M(),[i]:M()}:M(),d=M(),h=Qx({settings:t,gatheredSchemaAttributes:this.gatherExtraAttributes(s),nodeNames:r,markNames:n,tags:e});for(const p of s){h[p.name]={...h[p.name],...p.options.extraAttributes};const m=o===!0||p.options.disableExtraAttributes===!0||p.constructor.disableExtraAttributes===!0;if(_s(p)){const{spec:g,dynamic:y}=Mc({createExtensionSpec:(k,D)=>p.createNodeSpec(k,D),extraAttributes:re(h,p.name),override:{...a,...p.options.nodeOverride},ignoreExtraAttributes:m,name:p.constructorName,tags:p.tags});p.spec=g,u[p.name]=g,Object.keys(y).length>0&&(this.dynamicAttributes.nodes[p.name]=y)}if(qi(p)){const{spec:g,dynamic:y}=Mc({createExtensionSpec:(k,D)=>p.createMarkSpec(k,D),extraAttributes:re(h,p.name),override:{...l,...p.options.markOverride},ignoreExtraAttributes:m,name:p.constructorName,tags:p.tags??[]});p.spec=g,d[p.name]=g,Object.keys(y).length>0&&(this.dynamicAttributes.marks[p.name]=y)}}const f=new Vp({nodes:u,marks:d,topNode:"doc"});this.addSchema(f,u,d)}createPlugin(){return{appendTransaction:(t,e,n)=>{const{tr:r}=n;return!t.some(i=>i.docChanged)||Object.keys(this.dynamicAttributes.nodes).length===0&&Object.keys(this.dynamicAttributes.marks).length===0?null:(r.doc.descendants((i,o)=>(this.checkAndUpdateDynamicNodes(i,o,r),this.checkAndUpdateDynamicMarks(i,o,r),!0)),r.steps.length>0?r:null)}}}addSchema(t,e,n){this.store.setStoreKey("nodes",e),this.store.setStoreKey("marks",n),this.store.setStoreKey("schema",t),this.store.setExtensionStore("schema",t),this.store.setStoreKey("defaultBlockNode",Vi(t).name);for(const r of Object.values(t.nodes))if(r.name!=="doc"&&(r.isBlock||r.isTextblock))break}checkAndUpdateDynamicNodes(t,e,n){for(const[r,s]of fe(this.dynamicAttributes.nodes))if(t.type.name===r)for(const[i,o]of fe(s)){if(!tn(t.attrs[i]))continue;const a={...t.attrs,[i]:o(t)};n.setNodeMarkup(e,void 0,a),xc(n)}}checkAndUpdateDynamicMarks(t,e,n){for(const[r,s]of fe(this.dynamicAttributes.marks)){const i=re(this.store.schema.marks,r),o=t.marks.find(a=>a.type.name===r);if(o)for(const[a,l]of fe(s)){if(!tn(o.attrs[a]))continue;const c=Bn(n.doc.resolve(e),i);if(!c)continue;const{from:u,to:d}=c,h=i.create({...o.attrs,[a]:l(o)});n.removeMark(u,d,i).addMark(u,d,h),xc(n)}}}gatherExtraAttributes(t){const e=[];for(const n of t)n.createSchemaAttributes&&e.push(...n.createSchemaAttributes());return e}};ea=T([G({defaultPriority:Y.Highest})],ea);function Qx(t){const{settings:e,gatheredSchemaAttributes:n,nodeNames:r,markNames:s,tags:i}=t,o=M();if(e.disableExtraAttributes)return o;const a=[...n,...e.extraAttributes??[]];for(const l of a??[]){const c=tb({identifiers:l.identifiers,nodeNames:r,markNames:s,tags:i});for(const u of c){const d=o[u]??{};o[u]={...d,...l.attributes}}}return o}function eb(t){return Ln(t)&&me(t.tags)}function tb(t){const{identifiers:e,nodeNames:n,markNames:r,tags:s}=t;if(e==="nodes")return n;if(e==="marks")return r;if(e==="all")return[...n,...r];if(me(e))return e;R(eb(e),{code:b.EXTENSION_EXTRA_ATTRIBUTES,message:"Invalid value passed as an identifier when creating `extraAttributes`."});const{tags:i=[],names:o=[],behavior:a="any",excludeNames:l,excludeTags:c,type:u}=e,d=new Set,h=u==="mark"?r:u==="node"?n:[...r,...n],f=m=>h.includes(m)&&!(l!=null&&l.includes(m));for(const m of o)f(m)&&d.add(m);const p=new Map;for(const m of i)if(!(c!=null&&c.includes(m)))for(const g of s[m]){if(!f(g))continue;if(a==="any"){d.add(g);continue}const y=p.get(g)??new Set;y.add(m),p.set(g,y)}for(const[m,g]of p)g.size===i.length&&d.add(m);return[...d]}function Mc(t){var e;const{createExtensionSpec:n,extraAttributes:r,ignoreExtraAttributes:s,name:i,tags:o,override:a}=t,l=M();function c(g,y){l[g]=y}let u=!1;function d(){u=!0}const h=nb(r,s,d,c),f=rb(r,s),p=sb(r,s),m=n({defaults:h,parse:f,dom:p},a);return R(s||u,{code:b.EXTENSION_SPEC,message:`When creating a node specification you must call the 'defaults', and parse, and 'dom' methods. To avoid this error you can set the static property 'disableExtraAttributes' of '${i}' to 'true'.`}),m.group=[...((e=m.group)==null?void 0:e.split(" "))??[],...o].join(" ")||void 0,{spec:m,dynamic:l}}function La(t){return P(t)||ee(t)?{default:t}:(R(t,{message:`${Pu(t)} is not supported`,code:b.EXTENSION_EXTRA_ATTRIBUTES}),t)}function nb(t,e,n,r){return()=>{n();const s=M();if(e)return s;for(const[i,o]of fe(t)){let l=La(o).default;ee(l)&&(r(i,l),l=null),s[i]=l===void 0?{}:{default:l}}return s}}function rb(t,e){return n=>{const r=M();if(e)return r;for(const[s,i]of fe(t)){const{parseDOM:o,...a}=La(i);if($e(n)){if(tn(o)){r[s]=n.getAttribute(s)??a.default;continue}if(ee(o)){r[s]=o(n)??a.default;continue}r[s]=n.getAttribute(o)??a.default}}return r}}function sb(t,e){return n=>{const r=M();if(e)return r;function s(i,o){if(i){if(P(i)){r[o]=i;return}if(me(i)){const[a,l]=i;r[a]=l??n.attrs[o];return}for(const[a,l]of fe(i))r[a]=l}}for(const[i,o]of fe(t)){const{toDOM:a,parseDOM:l}=La(o);if(tn(a)){const c=P(l)?l:i;r[c]=n.attrs[i];continue}if(ee(a)){s(a(n.attrs,ib(n)),i);continue}s(a,i)}return r}}function ib(t){return $i(t)?{node:t}:x0(t)?{mark:t}:{}}function ob(t){const e=M(),n=M();for(const[r,s]of Object.entries(t.nodes))e[r]=s.spec;for(const[r,s]of Object.entries(t.marks))n[r]=s.spec;return{nodes:e,marks:n}}var fr=class extends te{constructor(){super(...arguments),this.onAddCustomHandler=({suggester:t})=>{var e;if(!(!t||(e=this.store.managerSettings.exclude)!=null&&e.suggesters))return yc(this.store.getState(),t)}}get name(){return"suggest"}onCreate(){this.store.setExtensionStore("addSuggester",t=>yc(this.store.getState(),t)),this.store.setExtensionStore("removeSuggester",t=>o0(this.store.getState(),t))}createExternalPlugins(){var t,e;const n=[];for(const r of this.store.extensions){if((t=this.store.managerSettings.exclude)!=null&&t.suggesters)break;if(!r.createSuggesters||(e=r.options.exclude)!=null&&e.suggesters)continue;const s=r.createSuggesters(),i=me(s)?s:[s];n.push(...i)}return[a0(...n)]}getSuggestState(t){return Ma(t??this.store.getState())}getSuggestMethods(){const{addIgnored:t,clearIgnored:e,removeIgnored:n,ignoreNextExit:r,setMarkRemoved:s,findMatchAtPosition:i,findNextTextSelection:o,setLastChangeFromAppend:a}=this.getSuggestState();return{addIgnored:t,clearIgnored:e,removeIgnored:n,ignoreNextExit:r,setMarkRemoved:s,findMatchAtPosition:i,findNextTextSelection:o,setLastChangeFromAppend:a}}isSuggesterActive(t){var e;return yt(me(t)?t:[t],(e=this.getSuggestState().match)==null?void 0:e.suggester.name)}};T([se()],fr.prototype,"getSuggestState",1);T([se()],fr.prototype,"getSuggestMethods",1);T([se()],fr.prototype,"isSuggesterActive",1);fr=T([G({customHandlerKeys:["suggester"]})],fr);var ta=class extends te{constructor(){super(...arguments),this.allTags=M(),this.plainTags=M(),this.markTags=M(),this.nodeTags=M()}get name(){return"tags"}onCreate(){this.resetTags();for(const t of this.store.extensions)this.updateTagForExtension(t);this.store.setStoreKey("tags",this.allTags),this.store.setExtensionStore("tags",this.allTags),this.store.setStoreKey("plainTags",this.plainTags),this.store.setExtensionStore("plainTags",this.plainTags),this.store.setStoreKey("markTags",this.markTags),this.store.setExtensionStore("markTags",this.markTags),this.store.setStoreKey("nodeTags",this.nodeTags),this.store.setExtensionStore("nodeTags",this.nodeTags)}resetTags(){const t=M(),e=M(),n=M(),r=M();for(const s of Ri(j))t[s]=[],e[s]=[],n[s]=[],r[s]=[];this.allTags=t,this.plainTags=e,this.markTags=n,this.nodeTags=r}updateTagForExtension(t){var e,n;const r=new Set([...t.tags??[],...((e=t.createTags)==null?void 0:e.call(t))??[],...t.options.extraTags??[],...((n=this.store.managerSettings.extraTags)==null?void 0:n[t.name])??[]]);for(const s of r)R(ab(s),{code:b.EXTENSION,message:`The tag provided by the extension: ${t.constructorName} is not supported by the editor. To add custom tags you can use the 'mutateTag' method.`}),this.allTags[s].push(t.name),Mh(t)&&this.plainTags[s].push(t.name),qi(t)&&this.markTags[s].push(t.name),_s(t)&&this.nodeTags[s].push(t.name);t.tags=[...r]}};ta=T([G({defaultPriority:Y.Highest})],ta);function ab(t){return yt(Ri(j),t)}var lb=new br("remirrorFilePlaceholderPlugin");function cb(){const t=new dn({key:lb,state:{init(){return{set:W.empty,payloads:new Map}},apply(e,{set:n,payloads:r}){n=n.map(e.mapping,e.doc);const s=e.getMeta(t);if(s)if(s.type===0){const i=document.createElement("placeholder"),o=Q.widget(s.pos,i,{id:s.id});n=n.add(e.doc,[o]),r.set(s.id,s.payload)}else s.type===1&&(n=n.remove(n.find(void 0,void 0,i=>i.id===s.id)),r.delete(s.id));return{set:n,payloads:r}}},props:{decorations(e){var n;return((n=t.getState(e))==null?void 0:n.set)??null}}});return t}var ub=class extends te{get name(){return"upload"}createExternalPlugins(){return[cb()]}};function db(t={}){t={...{exitMarksOnArrowPress:it.defaultOptions.exitMarksOnArrowPress,excludeBaseKeymap:it.defaultOptions.excludeBaseKeymap,selectParentNodeOnEscape:it.defaultOptions.selectParentNodeOnEscape,undoInputRuleOnBackspace:it.defaultOptions.undoInputRuleOnBackspace,persistentSelectionClass:ut.defaultOptions.persistentSelectionClass},...t};const n=To(t,["excludeBaseKeymap","selectParentNodeOnEscape","undoInputRuleOnBackspace"]),r=To(t,["persistentSelectionClass"]);return[new ta,new ea,new zx,new Qo,new Yo,new Zx,new Yx,new fr,new H,new Xe,new it(n),new Xo,new ub,new ut(r)]}var _c=class extends te{get name(){return"meta"}onCreate(){if(this.store.setStoreKey("getCommandMeta",this.getCommandMeta.bind(this)),!!this.options.capture)for(const t of this.store.extensions)this.captureCommands(t),this.captureKeybindings(t)}createPlugin(){return{}}captureCommands(t){const e=t.decoratedCommands??{},n=t.createCommands;for(const r of Object.keys(e)){const s=t[r];t[r]=(...i)=>o=>{var a;const l=s(...i)(o);return o.dispatch&&l&&this.setCommandMeta(o.tr,{type:"command",chain:o.dispatch!==((a=o.view)==null?void 0:a.dispatch),name:r,extension:t.name,decorated:!0}),l}}n&&(t.createCommands=()=>{const r=n();for(const[s,i]of Object.entries(r))r[s]=(...o)=>a=>{var l;const c=i(...o)(a);return a.dispatch&&c&&this.setCommandMeta(a.tr,{type:"command",chain:a.dispatch!==((l=a.view)==null?void 0:l.dispatch),name:s,extension:t.name,decorated:!1}),c};return r})}captureKeybindings(t){}getCommandMeta(t){return t.getMeta(this.pluginKey)??[]}setCommandMeta(t,e){const n=this.getCommandMeta(t);t.setMeta(this.pluginKey,[...n,e])}};_c=T([G({defaultOptions:{capture:st.isDevelopment},staticKeys:["capture"],defaultPriority:Y.Highest})],_c);var Hs,_r,Us,Kn,Vt,js,Ws,hb=class{constructor(t){ue(this,Hs,si()),ue(this,_r,void 0),ue(this,Us,void 0),ue(this,Kn,!0),ue(this,Vt,ji()),ue(this,js,void 0),ue(this,Ws,void 0),this.getState=()=>this.view.state??this.initialEditorState,this.getPreviousState=()=>this.previousState,this.dispatchTransaction=i=>{var o,a;R(!this.manager.destroyed,{code:b.MANAGER_PHASE_ERROR,message:"A transaction was dispatched to a manager that has already been destroyed. Please check your set up, or open an issue."}),i=((a=(o=this.props).onDispatchTransaction)==null?void 0:a.call(o,i,this.getState()))??i;const l=this.getState(),{state:c,transactions:u}=l.applyTransaction(i);ye(this,Us,l),this.updateState({state:c,tr:i,transactions:u});const d=this.manager.store.getForcedUpdates(i);nn(d)||this.updateViewProps(...d)},this.onChange=(i=M())=>{var o,a;const l=this.eventListenerProps(i);v(this,Kn)&&ye(this,Kn,!1),(a=(o=this.props).onChange)==null||a.call(o,l)},this.onBlur=i=>{var o,a;const l=this.eventListenerProps();(a=(o=this.props).onBlur)==null||a.call(o,l,i),v(this,Vt).emit("blur",l,i)},this.onFocus=i=>{var o,a;const l=this.eventListenerProps();(a=(o=this.props).onFocus)==null||a.call(o,l,i),v(this,Vt).emit("focus",l,i)},this.setContent=(i,{triggerChange:o=!1}={})=>{const{doc:a}=this.manager.createState({content:i}),l=this.getState(),{state:c}=this.getState().applyTransaction(l.tr.replaceRangeWith(0,l.doc.nodeSize-2,a));if(o)return this.updateState({state:c,triggerChange:o});this.view.updateState(c)},this.clearContent=({triggerChange:i=!1}={})=>{this.setContent(this.manager.createEmptyDoc(),{triggerChange:i})},this.createStateFromContent=(i,o)=>this.manager.createState({content:i,selection:o}),this.focus=i=>{this.manager.store.commands.focus(i)},this.blur=i=>{this.manager.store.commands.blur(i)};const{getProps:e,initialEditorState:n,element:r}=t;if(ye(this,_r,e),ye(this,Ws,n),this.manager.attachFramework(this,this.updateListener.bind(this)),this.manager.view)return;const s=this.createView(n,r);this.manager.addView(s)}get addHandler(){return v(this,js)??ye(this,js,v(this,Vt).on.bind(v(this,Vt)))}get updatableViewProps(){return{attributes:()=>this.getAttributes(),editable:()=>this.props.editable??!0}}get firstRender(){return v(this,Kn)}get props(){return v(this,_r).call(this)}get previousState(){return this.previousStateOverride??v(this,Us)??this.initialEditorState}get manager(){return this.props.manager}get view(){return this.manager.view}get uid(){return v(this,Hs)}get initialEditorState(){return v(this,Ws)}updateListener(t){const{state:e,tr:n}=t;return v(this,Vt).emit("updated",this.eventListenerProps({state:e,tr:n}))}update(t){const{getProps:e}=t;return ye(this,_r,e),this}updateViewProps(...t){const e=To(this.updatableViewProps,t);this.view.setProps({...this.view.props,...e})}getAttributes(t){var e;const{attributes:n,autoFocus:r,classNames:s=[],label:i,editable:o}=this.props,a=(e=this.manager.store)==null?void 0:e.attributes,l=ee(n)?n(this.eventListenerProps()):n;let c={};(r||Ge(r))&&(c=t?{autoFocus:!0}:{autofocus:"true"});const u=is(Go(t&&"Prosemirror","remirror-editor",a==null?void 0:a.class,...s).split(" ")).join(" "),d={role:"textbox",...c,"aria-multiline":"true",...o??!0?{}:{"aria-readonly":"true"},"aria-label":i??"",...a,class:u};return fp({...d,...l})}addFocusListeners(){this.view.dom.addEventListener("blur",this.onBlur),this.view.dom.addEventListener("focus",this.onFocus)}removeFocusListeners(){this.view.dom.removeEventListener("blur",this.onBlur),this.view.dom.removeEventListener("focus",this.onFocus)}destroy(){v(this,Vt).emit("destroy"),this.view&&this.removeFocusListeners()}eventListenerProps(t=M()){const{state:e,tr:n,transactions:r}=t;return{tr:n,transactions:r,internalUpdate:!n,view:this.view,firstRender:v(this,Kn),state:e??this.getState(),createStateFromContent:this.createStateFromContent,previousState:this.previousState,helpers:this.manager.store.helpers}}get baseOutput(){return{manager:this.manager,...this.manager.store,addHandler:this.addHandler,focus:this.focus,blur:this.blur,uid:v(this,Hs),view:this.view,getState:this.getState,getPreviousState:this.getPreviousState,getExtension:this.manager.getExtension.bind(this.manager),hasExtension:this.manager.hasExtension.bind(this.manager),clearContent:this.clearContent,setContent:this.setContent}}};Hs=new WeakMap;_r=new WeakMap;Us=new WeakMap;Kn=new WeakMap;Vt=new WeakMap;js=new WeakMap;Ws=new WeakMap;function fb(t,e){const n=[],r=new WeakMap,s=[],i=new WeakMap;let o=[];const a={duplicateMap:i,parentExtensions:s,gatheredExtensions:o,settings:e};for(const d of t)Nh(a,{extension:d});o=ir(o,(d,h)=>h.priority-d.priority);const l=new WeakSet,c=new Set;for(const d of o){const h=d.constructor,f=d.name,p=i.get(h);R(p,{message:`No entries were found for the ExtensionConstructor ${d.name}`,code:b.INTERNAL}),!(l.has(h)||c.has(f))&&(l.add(h),c.add(f),n.push(d),r.set(h,d),p.forEach(m=>m==null?void 0:m.replaceChildExtension(h,d)))}const u=[];for(const d of n)pb({extension:d,found:l,missing:u});return R(nn(u),{code:b.MISSING_REQUIRED_EXTENSION,message:u.map(({Constructor:d,extension:h})=>`The extension '${h.name}' requires '${d.name} in order to run correctly.`).join(`
|
|
53
|
-
`)}),{extensions:n,extensionMap:r}}function Nh(t,e){var n;const{gatheredExtensions:r,duplicateMap:s,parentExtensions:i,settings:o}=t,{extension:a,parentExtension:l}=e;let{names:c=[]}=e;R(Oh(a),{code:b.INVALID_MANAGER_EXTENSION,message:`An invalid extension: ${a} was provided to the [[\`RemirrorManager\`]].`});const u=a.extensions;if(a.setPriority((n=o.priority)==null?void 0:n[a.name]),r.push(a),mb({duplicateMap:s,extension:a,parentExtension:l}),u.length!==0){if(c.includes(a.name)){`${c.join(" > ")}${a.name}`;return}c=[...c,a.name],i.push(a);for(const d of u)Nh(t,{names:c,extension:d,parentExtension:a})}}function pb(t){const{extension:e,found:n,missing:r}=t;if(e.requiredExtensions)for(const s of e.requiredExtensions??[])n.has(s)||r.push({Constructor:s,extension:e})}function mb(t){const{duplicateMap:e,extension:n,parentExtension:r}=t,s=n.constructor,i=e.get(s),o=r?[r]:[];e.set(s,i?[...i,...o]:o)}function gb(t){var e,n,r,s;const{extension:i,nodeNames:o,markNames:a,plainNames:l,store:c,handlers:u}=t;i.setStore(c);const d=(e=i.onCreate)==null?void 0:e.bind(i),h=(n=i.onView)==null?void 0:n.bind(i),f=(r=i.onStateUpdate)==null?void 0:r.bind(i),p=(s=i.onDestroy)==null?void 0:s.bind(i);d&&u.create.push(d),h&&u.view.push(h),f&&u.update.push(f),p&&u.destroy.push(p),qi(i)&&a.push(i.name),_s(i)&&i.name!=="doc"&&o.push(i.name),Mh(i)&&l.push(i.name)}var Ht,Nr,Qe,vt,Ar,Ue,pn,Rr,mn,Ir,gn,et,Dr,Ks=class{constructor(t,e={}){ue(this,Ht,void 0),ue(this,Nr,M()),ue(this,Qe,M()),ue(this,vt,void 0),ue(this,Ar,void 0),ue(this,Ue,Pe.None),ue(this,pn,void 0),ue(this,Rr,!0),ue(this,mn,{create:[],view:[],update:[],destroy:[]}),ue(this,Ir,[]),ue(this,gn,ji()),ue(this,et,void 0),ue(this,Dr,void 0),this.getState=()=>{var s;return v(this,Ue)>=Pe.EditorView?this.view.state:(R(v(this,et),{code:b.MANAGER_PHASE_ERROR,message:"`getState` can only be called after the `Framework` or the `EditorView` has been added to the manager`. Check your plugins to make sure that the decorations callback uses the state argument."}),(s=v(this,et))==null?void 0:s.initialEditorState)},this.updateState=s=>{const i=this.getState();this.view.updateState(s),this.onStateUpdate({previousState:i,state:s})};const{extensions:n,extensionMap:r}=fb(t,e);ye(this,pn,e),ye(this,vt,bn(n)),ye(this,Ar,r),ye(this,Ht,this.createExtensionStore()),ye(this,Ue,Pe.Create),this.setupLifecycleHandlers();for(const s of v(this,mn).create){const i=s();i&&v(this,Ir).push(i)}}static create(t,e={}){return new Ks([...$u(t),...db(e.builtin)],e)}get[It](){return xe.Manager}get destroyed(){return v(this,Ue)===Pe.Destroy}get mounted(){return v(this,Ue)>=Pe.EditorView&&v(this,Ue)<Pe.Destroy}get output(){var t;return(t=v(this,et))==null?void 0:t.frameworkOutput}get frameworkAttached(){return!!v(this,et)}get extensions(){return v(this,vt)}get stringHandlers(){return v(this,Nr)}get store(){return bn(v(this,Qe))}get extensionStore(){return bn(v(this,Ht))}get tr(){return this.getExtension(H).transaction}get nodes(){return v(this,Qe).nodes}get marks(){return v(this,Qe).marks}get schema(){return v(this,Qe).schema}get extensionTags(){return v(this,Qe).tags}get view(){return v(this,Qe).view}get settings(){return v(this,pn)}get document(){return v(this,pn).document??Hi()}setupLifecycleHandlers(){const t=v(this,Ht),e=v(this,mn),n=[],r=[],s=[];t.nodeNames=n,t.markNames=r,t.plainNames=s;for(const i of v(this,vt))gb({extension:i,nodeNames:n,markNames:r,plainNames:s,handlers:e,store:t})}setStringHandler(t,e){v(this,Nr)[t]=e}setStoreKey(t,e){v(this,Qe)[t]=e}getStoreKey(t){const e=v(this,Qe)[t];return R(!tn(e),{code:b.MANAGER_PHASE_ERROR,message:"`getStoreKey` should not be called before the values are available."}),e}setExtensionStore(t,e){R(v(this,Ue)<=Pe.EditorView,{code:b.MANAGER_PHASE_ERROR,message:"`setExtensionStore` should only be called during the `onCreate` lifecycle hook. Make sure to only call it within the returned methods."}),v(this,Ht)[t]=e}createExtensionStore(){const t=M(),e=!0;let n,r;return Object.defineProperties(t,{extensions:{get:()=>v(this,vt),enumerable:e},phase:{get:()=>v(this,Ue),enumerable:e},view:{get:()=>this.view,enumerable:e},managerSettings:{get:()=>bn(v(this,pn)),enumerable:e},getState:{value:this.getState,enumerable:e},updateState:{value:this.updateState,enumerable:e},isMounted:{value:()=>this.mounted,enumerable:e},getExtension:{value:this.getExtension.bind(this),enumerable:e},manager:{get:()=>this,enumerable:e},document:{get:()=>this.document,enumerable:e},stringHandlers:{get:()=>v(this,Nr),enumerable:e},currentState:{get:()=>n??(n=this.getState()),set:s=>{n=s},enumerable:e},previousState:{get:()=>r,set:s=>{r=s},enumerable:e}}),t.getStoreKey=this.getStoreKey.bind(this),t.setStoreKey=this.setStoreKey.bind(this),t.setExtensionStore=this.setExtensionStore.bind(this),t.setStringHandler=this.setStringHandler.bind(this),t}addView(t){if(v(this,Ue)>=Pe.EditorView)return this;ye(this,Rr,!0),ye(this,Ue,Pe.EditorView),v(this,Qe).view=t;for(const e of v(this,mn).view){const n=e(t);n&&v(this,Ir).push(n)}return this}attachFramework(t,e){var n;v(this,et)!==t&&(v(this,et)&&(v(this,et).destroy(),(n=v(this,Dr))==null||n.call(this)),ye(this,et,t),ye(this,Dr,this.addHandler("stateUpdate",e)))}createEmptyDoc(){var t;const e=(t=this.schema.nodes.doc)==null?void 0:t.createAndFill();return R(e,{code:b.INVALID_CONTENT,message:"An empty node could not be created due to an invalid schema."}),e}createState(t={}){const{onError:e,defaultSelection:n="end"}=this.settings,{content:r=this.createEmptyDoc(),selection:s=n,stringHandler:i=this.settings.stringHandler}=t,{schema:o,plugins:a}=this.store,l=hh({stringHandler:P(i)?this.stringHandlers[i]:i,document:this.document,content:r,onError:e,schema:o,selection:s});return kn.create({schema:o,doc:l,plugins:a,selection:ct(s,l)})}addHandler(t,e){return v(this,gn).on(t,e)}onStateUpdate(t){const e=v(this,Rr);v(this,Ht).currentState=t.state,v(this,Ht).previousState=t.previousState,e&&(ye(this,Ue,Pe.Runtime),ye(this,Rr,!1));const n={...t,firstUpdate:e};for(const r of v(this,mn).update)r(n);v(this,gn).emit("stateUpdate",n)}getExtension(t){const e=v(this,Ar).get(t);return R(e,{code:b.INVALID_MANAGER_EXTENSION,message:`'${t.name}' doesn't exist within this manager. Make sure it is properly added before attempting to use it.`}),e}hasExtension(t){return!!v(this,Ar).get(t)}clone(){const t=v(this,vt).map(n=>n.clone(n.options)),e=Ks.create(()=>t,v(this,pn));return v(this,gn).emit("clone",e),e}recreate(t=[],e={}){const n=v(this,vt).map(s=>s.clone(s.initialOptions)),r=Ks.create(()=>[...n,...t],e);return v(this,gn).emit("recreate",r),r}destroy(){var t,e,n,r,s,i;ye(this,Ue,Pe.Destroy);for(const o of((t=this.view)==null?void 0:t.state.plugins)??[])(n=(e=o.getState(this.view.state))==null?void 0:e.destroy)==null||n.call(e);(r=v(this,et))==null||r.destroy(),(s=v(this,Dr))==null||s.call(this);for(const o of v(this,Ir))o();for(const o of v(this,mn).destroy)o();(i=this.view)==null||i.destroy(),v(this,gn).emit("destroy")}includes(t){const e=[],n=[];for(const r of v(this,vt))e.push(r.name,r.constructorName),n.push(r.constructor);return t.every(r=>P(r)?yt(e,r):yt(n,r))}},yb=Ks;Ht=new WeakMap;Nr=new WeakMap;Qe=new WeakMap;vt=new WeakMap;Ar=new WeakMap;Ue=new WeakMap;pn=new WeakMap;Rr=new WeakMap;mn=new WeakMap;Ir=new WeakMap;gn=new WeakMap;et=new WeakMap;Dr=new WeakMap;function xb(t,e){return!(!kr(t)||!Sr(t,xe.Manager))}function _t(t,e,n){return Math.min(Math.max(t,n),e)}class bb extends Error{constructor(e){super(`Failed to parse color: "${e}"`)}}var Pr=bb;function Ba(t){if(typeof t!="string")throw new Pr(t);if(t.trim().toLowerCase()==="transparent")return[0,0,0,0];let e=t.trim();e=Ob.test(t)?wb(t):t;const n=vb.exec(e);if(n){const o=Array.from(n).slice(1);return[...o.slice(0,3).map(a=>parseInt(ps(a,2),16)),parseInt(ps(o[3]||"f",2),16)/255]}const r=Eb.exec(e);if(r){const o=Array.from(r).slice(1);return[...o.slice(0,3).map(a=>parseInt(a,16)),parseInt(o[3]||"ff",16)/255]}const s=Cb.exec(e);if(s){const o=Array.from(s).slice(1);return[...o.slice(0,3).map(a=>parseInt(a,10)),parseFloat(o[3]||"1")]}const i=Tb.exec(e);if(i){const[o,a,l,c]=Array.from(i).slice(1).map(parseFloat);if(_t(0,100,a)!==a)throw new Pr(t);if(_t(0,100,l)!==l)throw new Pr(t);return[...Mb(o,a,l),Number.isNaN(c)?1:c]}throw new Pr(t)}function kb(t){let e=5381,n=t.length;for(;n;)e=e*33^t.charCodeAt(--n);return(e>>>0)%2341}const Nc=t=>parseInt(t.replace(/_/g,""),36),Sb="1q29ehhb 1n09sgk7 1kl1ekf_ _yl4zsno 16z9eiv3 1p29lhp8 _bd9zg04 17u0____ _iw9zhe5 _to73___ _r45e31e _7l6g016 _jh8ouiv _zn3qba8 1jy4zshs 11u87k0u 1ro9yvyo 1aj3xael 1gz9zjz0 _3w8l4xo 1bf1ekf_ _ke3v___ _4rrkb__ 13j776yz _646mbhl _nrjr4__ _le6mbhl 1n37ehkb _m75f91n _qj3bzfz 1939yygw 11i5z6x8 _1k5f8xs 1509441m 15t5lwgf _ae2th1n _tg1ugcv 1lp1ugcv 16e14up_ _h55rw7n _ny9yavn _7a11xb_ 1ih442g9 _pv442g9 1mv16xof 14e6y7tu 1oo9zkds 17d1cisi _4v9y70f _y98m8kc 1019pq0v 12o9zda8 _348j4f4 1et50i2o _8epa8__ _ts6senj 1o350i2o 1mi9eiuo 1259yrp0 1ln80gnw _632xcoy 1cn9zldc _f29edu4 1n490c8q _9f9ziet 1b94vk74 _m49zkct 1kz6s73a 1eu9dtog _q58s1rz 1dy9sjiq __u89jo3 _aj5nkwg _ld89jo3 13h9z6wx _qa9z2ii _l119xgq _bs5arju 1hj4nwk9 1qt4nwk9 1ge6wau6 14j9zlcw 11p1edc_ _ms1zcxe _439shk6 _jt9y70f _754zsow 1la40eju _oq5p___ _x279qkz 1fa5r3rv _yd2d9ip _424tcku _8y1di2_ _zi2uabw _yy7rn9h 12yz980_ __39ljp6 1b59zg0x _n39zfzp 1fy9zest _b33k___ _hp9wq92 1il50hz4 _io472ub _lj9z3eo 19z9ykg0 _8t8iu3a 12b9bl4a 1ak5yw0o _896v4ku _tb8k8lv _s59zi6t _c09ze0p 1lg80oqn 1id9z8wb _238nba5 1kq6wgdi _154zssg _tn3zk49 _da9y6tc 1sg7cv4f _r12jvtt 1gq5fmkz 1cs9rvci _lp9jn1c _xw1tdnb 13f9zje6 16f6973h _vo7ir40 _bt5arjf _rc45e4t _hr4e100 10v4e100 _hc9zke2 _w91egv_ _sj2r1kk 13c87yx8 _vqpds__ _ni8ggk8 _tj9yqfb 1ia2j4r4 _7x9b10u 1fc9ld4j 1eq9zldr _5j9lhpx _ez9zl6o _md61fzm".split(" ").reduce((t,e)=>{const n=Nc(e.substring(0,3)),r=Nc(e.substring(3)).toString(16);let s="";for(let i=0;i<6-r.length;i++)s+="0";return t[n]=`${s}${r}`,t},{});function wb(t){const e=t.toLowerCase().trim(),n=Sb[kb(e)];if(!n)throw new Pr(t);return`#${n}`}const ps=(t,e)=>Array.from(Array(e)).map(()=>t).join(""),vb=new RegExp(`^#${ps("([a-f0-9])",3)}([a-f0-9])?$`,"i"),Eb=new RegExp(`^#${ps("([a-f0-9]{2})",3)}([a-f0-9]{2})?$`,"i"),Cb=new RegExp(`^rgba?\\(\\s*(\\d+)\\s*${ps(",\\s*(\\d+)\\s*",2)}(?:,\\s*([\\d.]+))?\\s*\\)$`,"i"),Tb=/^hsla?\(\s*([\d.]+)\s*,\s*([\d.]+)%\s*,\s*([\d.]+)%(?:\s*,\s*([\d.]+))?\s*\)$/i,Ob=/^[a-z]+$/i,Ac=t=>Math.round(t*255),Mb=(t,e,n)=>{let r=n/100;if(e===0)return[r,r,r].map(Ac);const s=(t%360+360)%360/60,i=(1-Math.abs(2*r-1))*(e/100),o=i*(1-Math.abs(s%2-1));let a=0,l=0,c=0;s>=0&&s<1?(a=i,l=o):s>=1&&s<2?(a=o,l=i):s>=2&&s<3?(l=i,c=o):s>=3&&s<4?(l=o,c=i):s>=4&&s<5?(a=o,c=i):s>=5&&s<6&&(a=i,c=o);const u=r-i/2,d=a+u,h=l+u,f=c+u;return[d,h,f].map(Ac)};function _b(t){const[e,n,r,s]=Ba(t).map((d,h)=>h===3?d:d/255),i=Math.max(e,n,r),o=Math.min(e,n,r),a=(i+o)/2;if(i===o)return[0,0,a,s];const l=i-o,c=a>.5?l/(2-i-o):l/(i+o);return[60*(e===i?(n-r)/l+(n<r?6:0):n===i?(r-e)/l+2:(e-n)/l+4),c,a,s]}function Nb(t,e,n,r){return`hsla(${(t%360).toFixed()}, ${_t(0,100,e*100).toFixed()}%, ${_t(0,100,n*100).toFixed()}%, ${parseFloat(_t(0,1,r).toFixed(3))})`}function We(t,e){const[n,r,s,i]=_b(t);return Nb(n,r,s-e,i)}function Ab(t){if(t==="transparent")return 0;function e(i){const o=i/255;return o<=.04045?o/12.92:Math.pow((o+.055)/1.055,2.4)}const[n,r,s]=Ba(t);return .2126*e(n)+.7152*e(r)+.0722*e(s)}function Rb(t,e,n,r){return`rgba(${_t(0,255,t).toFixed()}, ${_t(0,255,e).toFixed()}, ${_t(0,255,n).toFixed()}, ${parseFloat(_t(0,1,r).toFixed(3))})`}function qs(t,e){return We(t,-e)}function ki(t,e){const[n,r,s,i]=Ba(t);return Rb(n,r,s,i-e)}function Ib(t){return Ab(t)>.179}function tr(t){return Ib(t)?"#000":"#fff"}const Db="remirror-editor-wrapper",Pb="remirror-button-active",Lb="remirror-button",Bb="remirror-composite",zb="remirror-dialog",$b="remirror-dialog-backdrop",Fb="remirror-form",Vb="remirror-form-message",Hb="remirror-form-label",Ub="remirror-form-group",jb="remirror-group",Wb="remirror-input",Kb="remirror-menu",qb="remirror-menu-pane",Jb="remirror-menu-pane-active",Gb="remirror-menu-dropdown-label",Xb="remirror-menu-pane-icon",Yb="remirror-menu-pane-label",Zb="remirror-menu-pane-shortcut",Qb="remirror-menu-button-left",e1="remirror-menu-button-right",t1="remirror-menu-button-nested-left",n1="remirror-menu-button-nested-right",r1="remirror-menu-button",s1="remirror-menu-bar",i1="remirror-flex-column",o1="remirror-flex-row",a1="remirror-menu-item",l1="remirror-menu-item-row",c1="remirror-menu-item-column",u1="remirror-menu-item-checkbox",d1="remirror-menu-item-radio",h1="remirror-menu-group",f1="remirror-floating-popover",p1="remirror-popover",m1="remirror-animated-popover",g1="remirror-role",y1="remirror-separator",x1="remirror-tab",b1="remirror-tab-list",k1="remirror-tabbable",S1="remirror-toolbar",w1="remirror-tooltip",v1="remirror-table-size-editor",E1="remirror-table-size-editor-body",C1="remirror-table-size-editor-cell",T1="remirror-table-size-editor-cell-selected",O1="remirror-table-size-editor-footer",M1="remirror-color-picker",_1="remirror-color-picker-cell",N1="remirror-color-picker-cell-selected";var A1=Object.freeze({__proto__:null,ANIMATED_POPOVER:m1,BUTTON:Lb,BUTTON_ACTIVE:Pb,COLOR_PICKER:M1,COLOR_PICKER_CELL:_1,COLOR_PICKER_CELL_SELECTED:N1,COMPOSITE:Bb,DIALOG:zb,DIALOG_BACKDROP:$b,EDITOR_WRAPPER:Db,FLEX_COLUMN:i1,FLEX_ROW:o1,FLOATING_POPOVER:f1,FORM:Fb,FORM_GROUP:Ub,FORM_LABEL:Hb,FORM_MESSAGE:Vb,GROUP:jb,INPUT:Wb,MENU:Kb,MENU_BAR:s1,MENU_BUTTON:r1,MENU_BUTTON_LEFT:Qb,MENU_BUTTON_NESTED_LEFT:t1,MENU_BUTTON_NESTED_RIGHT:n1,MENU_BUTTON_RIGHT:e1,MENU_DROPDOWN_LABEL:Gb,MENU_GROUP:h1,MENU_ITEM:a1,MENU_ITEM_CHECKBOX:u1,MENU_ITEM_COLUMN:c1,MENU_ITEM_RADIO:d1,MENU_ITEM_ROW:l1,MENU_PANE:qb,MENU_PANE_ACTIVE:Jb,MENU_PANE_ICON:Xb,MENU_PANE_LABEL:Yb,MENU_PANE_SHORTCUT:Zb,POPOVER:p1,ROLE:g1,SEPARATOR:y1,TAB:x1,TABBABLE:k1,TABLE_SIZE_EDITOR:v1,TABLE_SIZE_EDITOR_BODY:E1,TABLE_SIZE_EDITOR_CELL:C1,TABLE_SIZE_EDITOR_CELL_SELECTED:T1,TABLE_SIZE_EDITOR_FOOTER:O1,TAB_LIST:b1,TOOLBAR:S1,TOOLTIP:w1});const R1="remirror-list-item-with-custom-mark",I1="remirror-ul-list-content",D1="remirror-editor",P1="remirror-list-item-marker-container",L1="remirror-list-item-checkbox",B1="remirror-collapsible-list-item-closed",z1="remirror-collapsible-list-item-button",$1="remirror-list-spine";var on=Object.freeze({__proto__:null,COLLAPSIBLE_LIST_ITEM_BUTTON:z1,COLLAPSIBLE_LIST_ITEM_CLOSED:B1,EDITOR:D1,LIST_ITEM_CHECKBOX:L1,LIST_ITEM_MARKER_CONTAINER:P1,LIST_ITEM_WITH_CUSTOM_MARKER:R1,LIST_SPINE:$1,UL_LIST_CONTENT:I1});const F1="remirror-is-empty";var V1=Object.freeze({__proto__:null,IS_EMPTY:F1});const H1="remirror-editor",U1="remirror-positioner",j1="remirror-positioner-widget";var W1=Object.freeze({__proto__:null,EDITOR:H1,POSITIONER:U1,POSITIONER_WIDGET:j1});const tt={gray:["#f8f9fa","#f1f3f5","#e9ecef","#dee2e6","#ced4da","#adb5bd","#868e96","#495057","#343a40","#212529"],red:["#fff5f5","#ffe3e3","#ffc9c9","#ffa8a8","#ff8787","#ff6b6b","#fa5252","#f03e3e","#e03131","#c92a2a"],pink:["#fff0f6","#ffdeeb","#fcc2d7","#faa2c1","#f783ac","#f06595","#e64980","#d6336c","#c2255c","#a61e4d"],grape:["#f8f0fc","#f3d9fa","#eebefa","#e599f7","#da77f2","#cc5de8","#be4bdb","#ae3ec9","#9c36b5","#862e9c"],violet:["#f3f0ff","#e5dbff","#d0bfff","#b197fc","#9775fa","#845ef7","#7950f2","#7048e8","#6741d9","#5f3dc4"],indigo:["#edf2ff","#dbe4ff","#bac8ff","#91a7ff","#748ffc","#5c7cfa","#4c6ef5","#4263eb","#3b5bdb","#364fc7"],blue:["#e7f5ff","#d0ebff","#a5d8ff","#74c0fc","#4dabf7","#339af0","#228be6","#1c7ed6","#1971c2","#1864ab"],cyan:["#e3fafc","#c5f6fa","#99e9f2","#66d9e8","#3bc9db","#22b8cf","#15aabf","#1098ad","#0c8599","#0b7285"],teal:["#e6fcf5","#c3fae8","#96f2d7","#63e6be","#38d9a9","#20c997","#12b886","#0ca678","#099268","#087f5b"],green:["#ebfbee","#d3f9d8","#b2f2bb","#8ce99a","#69db7c","#51cf66","#40c057","#37b24d","#2f9e44","#2b8a3e"],lime:["#f4fce3","#e9fac8","#d8f5a2","#c0eb75","#a9e34b","#94d82d","#82c91e","#74b816","#66a80f","#5c940d"],yellow:["#fff9db","#fff3bf","#ffec99","#ffe066","#ffd43b","#fcc419","#fab005","#f59f00","#f08c00","#e67700"],orange:["#fff4e6","#ffe8cc","#ffd8a8","#ffc078","#ffa94d","#ff922b","#fd7e14","#f76707","#e8590c","#d9480f"]},Nt="#000000",za="#ffffff",K1="#252103",$a=ki(Nt,.75),Ji="#7963d2",Fa="#bcd263",q1="#fff",J1="#fff",Va=tt.gray[1],Rc="rgba(10,31,68,0.08)",Ic="rgba(10,31,68,0.10)",Dc="rgba(10,31,68,0.12)",G1=qs(ki(Nt,.1),.13),Ha={background:za,border:$a,foreground:Nt,muted:Va,primary:Ji,secondary:Fa,primaryText:q1,secondaryText:J1,text:K1,faded:G1},X1={...Ha,background:We(za,.15),border:We($a,.15),foreground:We(Nt,.15),muted:We(Va,.15),primary:We(Ji,.15),secondary:We(Fa,.15),get text(){return tr(this.background)},get primaryText(){return tr(this.primary)},get secondaryText(){return tr(this.secondary)}},Y1={...Ha,background:We(za,.075),border:We($a,.075),foreground:We(Nt,.075),muted:We(Va,.075),primary:We(Ji,.075),secondary:We(Fa,.075),get text(){return tr(this.background)},get primaryText(){return tr(this.primary)},get secondaryText(){return tr(this.secondary)}};({...Ha,backdrop:ki(Nt,.1),outline:ki(Ji,.6),table:(qs(Nt,.8),qs(Nt,.4),tt.gray[3],tt.blue[7],tt.blue[1],tt.blue[5],tt.blue[7],qs(Nt,.4),tt.blue[5],tt.red[7],tt.red[1],tt.red[5])},`${Rc}`,`${Ic}`,`${Dc}`);var Z1=Object.defineProperty,Q1=Object.getOwnPropertyDescriptor,Ua=(t,e,n,r)=>{for(var s=r>1?void 0:r?Q1(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&Z1(e,n,s),s},Ah=(t,e,n)=>{if(!e.has(t))throw TypeError("Cannot "+n)},de=(t,e,n)=>(Ah(t,e,"read from private field"),n?n.call(t):e.get(t)),wt=(t,e,n)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,n)},$t=(t,e,n,r)=>(Ah(t,e,"write to private field"),e.set(t,n),n),Lr,Br,qn,zr,Js,$r,Fr,Vr,Hr,Gs=class{constructor(t){wt(this,Lr,ji()),wt(this,Br,[]),wt(this,qn,new Map),wt(this,zr,[]),wt(this,Js,!1),wt(this,$r,void 0),wt(this,Fr,void 0),wt(this,Vr,void 0),wt(this,Hr,void 0),this.addListener=(e,n)=>de(this,Lr).on(e,n),$t(this,$r,t),$t(this,Fr,t.getActive),$t(this,Hr,t.getPosition),$t(this,Vr,t.getID),this.hasChanged=t.hasChanged,this.events=t.events??["state","scroll"]}static create(t){return new Gs(t)}static fromPositioner(t,e){return Gs.create({...t.basePositioner,...e})}get basePositioner(){return{getActive:de(this,Fr),getPosition:de(this,Hr),hasChanged:this.hasChanged,events:this.events,getID:de(this,Vr)}}onActiveChanged(t){this.recentUpdate=t;const e=de(this,Fr).call(this,t);$t(this,Br,e),$t(this,qn,new Map),$t(this,Js,!1),$t(this,zr,[]);const n=[];for(const[r,s]of e.entries()){const i=this.getID(s,r);de(this,zr).push(i),n.push({setElement:o=>this.addProps({...t,data:s,element:o},r),id:i,data:s})}de(this,Lr).emit("update",n)}getID(t,e){var n;return((n=de(this,Vr))==null?void 0:n.call(this,t,e))??e.toString()}addProps(t,e){if(de(this,Js)||(de(this,qn).set(e,t),de(this,qn).size<de(this,Br).length))return;const n=[];for(const r of de(this,Br).keys()){const s=de(this,qn).get(r);R(s,{code:b.INTERNAL,message:"Something went wrong when retrieving the parameters"});const i=de(this,zr)[r];if(!i)return;n.push({position:de(this,Hr).call(this,s),element:s.element,id:i})}de(this,Lr).emit("done",n)}clone(t){return Gs.create({...de(this,$r),...ee(t)?t(de(this,$r)):t})}active(t){const e=ee(t)?t:()=>t;return this.clone(n=>({getActive:r=>n.getActive(r).filter(e)}))}},at=Gs;Lr=new WeakMap;Br=new WeakMap;qn=new WeakMap;zr=new WeakMap;Js=new WeakMap;$r=new WeakMap;Fr=new WeakMap;Vr=new WeakMap;Hr=new WeakMap;at.EMPTY=[];function ek(t,e=Ph){const{key:n}=(t==null?void 0:t.getMeta(Dh))??{};return n===e}function Rh(t){const{tr:e,state:n,previousState:r}=t;return!r||e&&ek(e)?!0:e?u0(e):!n.doc.eq(r.doc)||!n.selection.eq(r.selection)}function Ih(t,e,n={}){const r=e.getBoundingClientRect(),{accountForPadding:s=!1}=n;let i=0,o=0,a=0,l=0;if($e(e)&&s){const u=Number.parseFloat(zt(e,"padding-left").replace("px","")),d=Number.parseFloat(zt(e,"padding-right").replace("px","")),h=Number.parseFloat(zt(e,"padding-top").replace("px","")),f=Number.parseFloat(zt(e,"padding-bottom").replace("px","")),p=Number.parseFloat(zt(e,"border-left").replace("px","")),m=Number.parseFloat(zt(e,"border-right").replace("px","")),g=Number.parseFloat(zt(e,"border-top").replace("px","")),y=Number.parseFloat(zt(e,"border-bottom").replace("px","")),k=e.offsetWidth-e.clientWidth,D=e.offsetHeight-e.clientHeight;i+=u+p+(e.dir==="rtl"?k:0),o+=d+m+(e.dir==="rtl"?0:k),a+=h+g,l+=f+y+D}const c=new DOMRect(r.left+i,r.top+a,r.width-o,r.height-l);for(const[u,d]of[[t.top,t.left],[t.top,t.right],[t.bottom,t.left],[t.bottom,t.right]])if(hl(u,c.top,c.bottom)&&hl(d,c.left,c.right))return!0;return!1}var tk="remirror-positioner-widget",Dh="positionerUpdate",Ph="__all_positioners__",Lh={y:-999999,x:-999999,width:0,height:0},Pc={...Lh,left:-999999,top:-999999,bottom:-999999,right:-999999},nk={...Lh,rect:{...Pc,toJSON:()=>Pc},visible:!1},rk=at.create({hasChanged:Rh,getActive(t){const{state:e}=t;if(!ah(e)||e.selection.$anchor.depth>2)return at.EMPTY;const n=zi({predicate:r=>r.type.isBlock,selection:e});return n?[n]:at.EMPTY},getPosition(t){const{view:e,data:n}=t,r=e.nodeDOM(n.pos);if(!$e(r))return nk;const s=r.getBoundingClientRect(),i=e.dom.getBoundingClientRect(),o=s.height,a=s.width,l=e.dom.scrollLeft+s.left-i.left,c=e.dom.scrollTop+s.top-i.top,u=Ih(s,e.dom);return{y:c,x:l,height:o,width:a,rect:s,visible:u}}}),Bh=rk.clone(({getActive:t})=>({getActive:e=>{const[n]=t(e);return n&&Da(n.node)&&n.node.type===Vi(e.state.schema)?[n]:at.EMPTY}}));Bh.clone(({getPosition:t})=>({getPosition:e=>({...t(e),width:1})}));Bh.clone(({getPosition:t})=>({getPosition:e=>{const{width:n,x:r,y:s,height:i}=t(e);return{...t(e),width:1,x:n+r,rect:new DOMRect(n+r,s,1,i)}}}));function ja(t){return at.create({hasChanged:Rh,getActive:e=>{const{state:n,view:r}=e;if(!t(n)||!wr(n.selection))return at.EMPTY;try{const{head:s,anchor:i}=n.selection;return[{from:r.coordsAtPos(i),to:r.coordsAtPos(s)}]}catch{return at.EMPTY}},getPosition(e){const{element:n,data:r,view:s}=e,{from:i,to:o}=r,a=n.offsetParent??s.dom,l=a.getBoundingClientRect(),c=Math.abs(o.bottom-i.top),u=c>i.bottom-i.top,d=Math.min(i.left,o.left),h=Math.min(i.top,o.top),f=a.scrollLeft+(u?o.left-l.left:d-l.left),p=a.scrollTop+h-l.top,m=u?1:Math.abs(i.left-o.right),g=new DOMRect(u?o.left:d,h,m,c),y=Ih(g,s.dom);return{rect:g,y:p,x:f,height:c,width:m,visible:y}}})}var sk=ja(t=>!t.selection.empty);ja(t=>t.selection.empty);ja(()=>!0);sk.clone(()=>({getActive:t=>{const{state:e,view:n}=t;if(!e.selection.empty)return at.EMPTY;const r=E0(e);if(!r)return at.EMPTY;try{return[{from:n.coordsAtPos(r.from),to:n.coordsAtPos(r.to)}]}catch{return at.EMPTY}}}));var ms=class extends te{constructor(){super(...arguments),this.positioners=[],this.onAddCustomHandler=({positioner:t})=>{if(t)return this.positioners=[...this.positioners,t],this.store.commands.forceUpdate(),()=>{this.positioners=this.positioners.filter(e=>e!==t)}}}get name(){return"positioner"}createAttributes(){return{class:W1.EDITOR}}init(){this.onScroll=ip(this.options.scrollDebounce,this.onScroll.bind(this))}createEventHandlers(){return{scroll:()=>(this.onScroll(),!1),hover:(t,e)=>(this.positioner(this.getBaseProps("hover",{hover:e})),!1),contextmenu:(t,e)=>(this.positioner(this.getBaseProps("contextmenu",{contextmenu:e})),!1)}}onStateUpdate(t){this.positioner({...t,previousState:t.firstUpdate?void 0:t.previousState,event:"state",helpers:this.store.helpers})}createDecorations(t){if(this.element??(this.element=this.createElement()),!this.element.hasChildNodes())return W.empty;const e=Q.widget(0,this.element,{key:"positioner-widget",side:-1,stopEvent:()=>!0});return W.create(t.doc,[e])}forceUpdatePositioners(t=Ph){return({tr:e,dispatch:n})=>(n==null||n(e.setMeta(Dh,{key:t})),!0)}getPositionerWidget(){return this.element??(this.element=this.createElement())}createElement(){const t=document.createElement("span");return t.dataset.id=tk,t.setAttribute("role","presentation"),t}triggerPositioner(t,e){t.hasChanged(e)&&t.onActiveChanged({...e,view:this.store.view})}positioner(t){for(const e of this.positioners)e.events.includes(t.event)&&this.triggerPositioner(e,t)}getBaseProps(t,e){const n=this.store.getState(),r=this.store.previousState;return{helpers:this.store.helpers,event:t,firstUpdate:!1,previousState:r,state:n,...e}}onScroll(){this.positioner(this.getBaseProps("scroll",{scroll:{scrollTop:this.store.view.dom.scrollTop}}))}};Ua([_()],ms.prototype,"forceUpdatePositioners",1);Ua([se()],ms.prototype,"getPositionerWidget",1);ms=Ua([G({defaultOptions:{scrollDebounce:100},customHandlerKeys:["positioner"],staticKeys:["scrollDebounce"]})],ms);var ik=Object.defineProperty,ok=Object.getOwnPropertyDescriptor,Ns=(t,e,n,r)=>{for(var s=r>1?void 0:r?ok(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&ik(e,n,s),s},ak={icon:"bold",label:({t})=>t(Nl.LABEL),description:({t})=>t(Nl.DESCRIPTION)},Dn=class extends Ki{get name(){return"bold"}createTags(){return[j.FormattingMark,j.FontStyle]}createMarkSpec(t,e){return{...e,attrs:t.defaults(),parseDOM:[{tag:"strong",getAttrs:t.parse},{tag:"b",getAttrs:n=>$e(n)&&n.style.fontWeight!=="normal"?t.parse(n):!1},{style:"font-weight",getAttrs:n=>P(n)&&/^(bold(er)?|[5-9]\d{2,})$/.test(n)?null:!1},...e.parseDOM??[]],toDOM:n=>{const{weight:r}=this.options;return r?["strong",{"font-weight":r.toString()},0]:["strong",t.dom(n),0]}}}createInputRules(){return[xi({regexp:/(?:\*\*|__)([^*_]+)(?:\*\*|__)$/,type:this.type,ignoreWhitespace:!0})]}toggleBold(t){return hr({type:this.type,selection:t})}setBold(t){return({tr:e,dispatch:n})=>{const{from:r,to:s}=ct(t??e.selection,e.doc);return n==null||n(e.addMark(r,s,this.type.create())),!0}}removeBold(t){return({tr:e,dispatch:n})=>{const{from:r,to:s}=ct(t??e.selection,e.doc);return e.doc.rangeHasMark(r,s,this.type)?(n==null||n(e.removeMark(r,s,this.type)),!0):!1}}shortcut(t){return this.toggleBold()(t)}};Ns([_(ak)],Dn.prototype,"toggleBold",1);Ns([_()],Dn.prototype,"setBold",1);Ns([_()],Dn.prototype,"removeBold",1);Ns([Ye({shortcut:E.Bold,command:"toggleBold"})],Dn.prototype,"shortcut",1);Dn=Ns([G({defaultOptions:{weight:void 0},staticKeys:["weight"]})],Dn);var lk=Object.defineProperty,ck=Object.getOwnPropertyDescriptor,Wa=(t,e,n,r)=>{for(var s=r>1?void 0:r?ck(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&lk(e,n,s),s},{DESCRIPTION:uk,LABEL:dk}=$m,hk={icon:"codeLine",description:({t})=>t(uk),label:({t})=>t(dk)},gs=class extends Ki{get name(){return"code"}createTags(){return[j.Code,j.ExcludeInputRules]}createMarkSpec(t,e){return{excludes:"_",...e,attrs:t.defaults(),parseDOM:[{tag:"code",getAttrs:t.parse},...e.parseDOM??[]],toDOM:n=>["code",{spellcheck:"false",...t.dom(n)},0]}}createKeymap(){return{"Mod-`":hr({type:this.type})}}keyboardShortcut(t){return this.toggleCode()(t)}toggleCode(){return hr({type:this.type})}createInputRules(){return[xi({regexp:new RegExp(`(?:\`)([^\`${da}]+)(?:\`)$`),type:this.type,ignoreWhitespace:!0})]}createPasteRules(){return[{type:"mark",regexp:/`([^`]+)`/g,markType:this.type}]}};Wa([Ye({shortcut:E.Code,command:"toggleCode"})],gs.prototype,"keyboardShortcut",1);Wa([_(hk)],gs.prototype,"toggleCode",1);gs=Wa([G({})],gs);var Si=200,be=function(){};be.prototype.append=function(e){return e.length?(e=be.from(e),!this.length&&e||e.length<Si&&this.leafAppend(e)||this.length<Si&&e.leafPrepend(this)||this.appendInner(e)):this};be.prototype.prepend=function(e){return e.length?be.from(e).append(this):this};be.prototype.appendInner=function(e){return new fk(this,e)};be.prototype.slice=function(e,n){return e===void 0&&(e=0),n===void 0&&(n=this.length),e>=n?be.empty:this.sliceInner(Math.max(0,e),Math.min(this.length,n))};be.prototype.get=function(e){if(!(e<0||e>=this.length))return this.getInner(e)};be.prototype.forEach=function(e,n,r){n===void 0&&(n=0),r===void 0&&(r=this.length),n<=r?this.forEachInner(e,n,r,0):this.forEachInvertedInner(e,n,r,0)};be.prototype.map=function(e,n,r){n===void 0&&(n=0),r===void 0&&(r=this.length);var s=[];return this.forEach(function(i,o){return s.push(e(i,o))},n,r),s};be.from=function(e){return e instanceof be?e:e&&e.length?new zh(e):be.empty};var zh=function(t){function e(r){t.call(this),this.values=r}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var n={length:{configurable:!0},depth:{configurable:!0}};return e.prototype.flatten=function(){return this.values},e.prototype.sliceInner=function(s,i){return s==0&&i==this.length?this:new e(this.values.slice(s,i))},e.prototype.getInner=function(s){return this.values[s]},e.prototype.forEachInner=function(s,i,o,a){for(var l=i;l<o;l++)if(s(this.values[l],a+l)===!1)return!1},e.prototype.forEachInvertedInner=function(s,i,o,a){for(var l=i-1;l>=o;l--)if(s(this.values[l],a+l)===!1)return!1},e.prototype.leafAppend=function(s){if(this.length+s.length<=Si)return new e(this.values.concat(s.flatten()))},e.prototype.leafPrepend=function(s){if(this.length+s.length<=Si)return new e(s.flatten().concat(this.values))},n.length.get=function(){return this.values.length},n.depth.get=function(){return 0},Object.defineProperties(e.prototype,n),e}(be);be.empty=new zh([]);var fk=function(t){function e(n,r){t.call(this),this.left=n,this.right=r,this.length=n.length+r.length,this.depth=Math.max(n.depth,r.depth)+1}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.flatten=function(){return this.left.flatten().concat(this.right.flatten())},e.prototype.getInner=function(r){return r<this.left.length?this.left.get(r):this.right.get(r-this.left.length)},e.prototype.forEachInner=function(r,s,i,o){var a=this.left.length;if(s<a&&this.left.forEachInner(r,s,Math.min(i,a),o)===!1||i>a&&this.right.forEachInner(r,Math.max(s-a,0),Math.min(this.length,i)-a,o+a)===!1)return!1},e.prototype.forEachInvertedInner=function(r,s,i,o){var a=this.left.length;if(s>a&&this.right.forEachInvertedInner(r,s-a,Math.max(i,a)-a,o+a)===!1||i<a&&this.left.forEachInvertedInner(r,Math.min(s,a),i,o)===!1)return!1},e.prototype.sliceInner=function(r,s){if(r==0&&s==this.length)return this;var i=this.left.length;return s<=i?this.left.slice(r,s):r>=i?this.right.slice(r-i,s-i):this.left.slice(r,i).append(this.right.slice(0,s-i))},e.prototype.leafAppend=function(r){var s=this.right.leafAppend(r);if(s)return new e(this.left,s)},e.prototype.leafPrepend=function(r){var s=this.left.leafPrepend(r);if(s)return new e(s,this.right)},e.prototype.appendInner=function(r){return this.left.depth>=Math.max(this.right.depth,r.depth)+1?new e(this.left,new e(this.right,r)):new e(this,r)},e}(be);const pk=500;class ot{constructor(e,n){this.items=e,this.eventCount=n}popEvent(e,n){if(this.eventCount==0)return null;let r=this.items.length;for(;;r--)if(this.items.get(r-1).selection){--r;break}let s,i;n&&(s=this.remapping(r,this.items.length),i=s.maps.length);let o=e.tr,a,l,c=[],u=[];return this.items.forEach((d,h)=>{if(!d.step){s||(s=this.remapping(r,h+1),i=s.maps.length),i--,u.push(d);return}if(s){u.push(new pt(d.map));let f=d.step.map(s.slice(i)),p;f&&o.maybeStep(f).doc&&(p=o.mapping.maps[o.mapping.maps.length-1],c.push(new pt(p,void 0,void 0,c.length+u.length))),i--,p&&s.appendMap(p,i)}else o.maybeStep(d.step);if(d.selection)return a=s?d.selection.map(s.slice(i)):d.selection,l=new ot(this.items.slice(0,r).append(u.reverse().concat(c)),this.eventCount-1),!1},this.items.length,0),{remaining:l,transform:o,selection:a}}addTransform(e,n,r,s){let i=[],o=this.eventCount,a=this.items,l=!s&&a.length?a.get(a.length-1):null;for(let u=0;u<e.steps.length;u++){let d=e.steps[u].invert(e.docs[u]),h=new pt(e.mapping.maps[u],d,n),f;(f=l&&l.merge(h))&&(h=f,u?i.pop():a=a.slice(0,a.length-1)),i.push(h),n&&(o++,n=void 0),s||(l=h)}let c=o-r.depth;return c>gk&&(a=mk(a,c),o-=c),new ot(a.append(i),o)}remapping(e,n){let r=new Yn;return this.items.forEach((s,i)=>{let o=s.mirrorOffset!=null&&i-s.mirrorOffset>=e?r.maps.length-s.mirrorOffset:void 0;r.appendMap(s.map,o)},e,n),r}addMaps(e){return this.eventCount==0?this:new ot(this.items.append(e.map(n=>new pt(n))),this.eventCount)}rebased(e,n){if(!this.eventCount)return this;let r=[],s=Math.max(0,this.items.length-n),i=e.mapping,o=e.steps.length,a=this.eventCount;this.items.forEach(h=>{h.selection&&a--},s);let l=n;this.items.forEach(h=>{let f=i.getMirror(--l);if(f==null)return;o=Math.min(o,f);let p=i.maps[f];if(h.step){let m=e.steps[f].invert(e.docs[f]),g=h.selection&&h.selection.map(i.slice(l+1,f));g&&a++,r.push(new pt(p,m,g))}else r.push(new pt(p))},s);let c=[];for(let h=n;h<o;h++)c.push(new pt(i.maps[h]));let u=this.items.slice(0,s).append(c).append(r),d=new ot(u,a);return d.emptyItemCount()>pk&&(d=d.compress(this.items.length-r.length)),d}emptyItemCount(){let e=0;return this.items.forEach(n=>{n.step||e++}),e}compress(e=this.items.length){let n=this.remapping(0,e),r=n.maps.length,s=[],i=0;return this.items.forEach((o,a)=>{if(a>=e)s.push(o),o.selection&&i++;else if(o.step){let l=o.step.map(n.slice(r)),c=l&&l.getMap();if(r--,c&&n.appendMap(c,r),l){let u=o.selection&&o.selection.map(n.slice(r));u&&i++;let d=new pt(c.invert(),l,u),h,f=s.length-1;(h=s.length&&s[f].merge(d))?s[f]=h:s.push(d)}}else o.map&&r--},this.items.length,0),new ot(be.from(s.reverse()),i)}}ot.empty=new ot(be.empty,0);function mk(t,e){let n;return t.forEach((r,s)=>{if(r.selection&&e--==0)return n=s,!1}),t.slice(n)}class pt{constructor(e,n,r,s){this.map=e,this.step=n,this.selection=r,this.mirrorOffset=s}merge(e){if(this.step&&e.step&&!e.selection){let n=e.step.merge(this.step);if(n)return new pt(n.getMap().invert(),n,this.selection)}}}class jt{constructor(e,n,r,s,i){this.done=e,this.undone=n,this.prevRanges=r,this.prevTime=s,this.prevComposition=i}}const gk=20;function yk(t,e,n,r){let s=n.getMeta(Rt),i;if(s)return s.historyState;n.getMeta(kk)&&(t=new jt(t.done,t.undone,null,0,-1));let o=n.getMeta("appendedTransaction");if(n.steps.length==0)return t;if(o&&o.getMeta(Rt))return o.getMeta(Rt).redo?new jt(t.done.addTransform(n,void 0,r,Xs(e)),t.undone,Lc(n.mapping.maps),t.prevTime,t.prevComposition):new jt(t.done,t.undone.addTransform(n,void 0,r,Xs(e)),null,t.prevTime,t.prevComposition);if(n.getMeta("addToHistory")!==!1&&!(o&&o.getMeta("addToHistory")===!1)){let a=n.getMeta("composition"),l=t.prevTime==0||!o&&t.prevComposition!=a&&(t.prevTime<(n.time||0)-r.newGroupDelay||!xk(n,t.prevRanges)),c=o?xo(t.prevRanges,n.mapping):Lc(n.mapping.maps);return new jt(t.done.addTransform(n,l?e.selection.getBookmark():void 0,r,Xs(e)),ot.empty,c,n.time,a??t.prevComposition)}else return(i=n.getMeta("rebased"))?new jt(t.done.rebased(n,i),t.undone.rebased(n,i),xo(t.prevRanges,n.mapping),t.prevTime,t.prevComposition):new jt(t.done.addMaps(n.mapping.maps),t.undone.addMaps(n.mapping.maps),xo(t.prevRanges,n.mapping),t.prevTime,t.prevComposition)}function xk(t,e){if(!e)return!1;if(!t.docChanged)return!0;let n=!1;return t.mapping.maps[0].forEach((r,s)=>{for(let i=0;i<e.length;i+=2)r<=e[i+1]&&s>=e[i]&&(n=!0)}),n}function Lc(t){let e=[];for(let n=t.length-1;n>=0&&e.length==0;n--)t[n].forEach((r,s,i,o)=>e.push(i,o));return e}function xo(t,e){if(!t)return null;let n=[];for(let r=0;r<t.length;r+=2){let s=e.map(t[r],1),i=e.map(t[r+1],-1);s<=i&&n.push(s,i)}return n}function bk(t,e,n){let r=Xs(e),s=Rt.get(e).spec.config,i=(n?t.undone:t.done).popEvent(e,r);if(!i)return null;let o=i.selection.resolve(i.transform.doc),a=(n?t.done:t.undone).addTransform(i.transform,e.selection.getBookmark(),s,r),l=new jt(n?a:i.remaining,n?i.remaining:a,null,0,-1);return i.transform.setSelection(o).setMeta(Rt,{redo:n,historyState:l})}let bo=!1,Bc=null;function Xs(t){let e=t.plugins;if(Bc!=e){bo=!1,Bc=e;for(let n=0;n<e.length;n++)if(e[n].spec.historyPreserveItems){bo=!0;break}}return bo}const Rt=new br("history"),kk=new br("closeHistory");function Sk(t={}){return t={depth:t.depth||100,newGroupDelay:t.newGroupDelay||500},new dn({key:Rt,state:{init(){return new jt(ot.empty,ot.empty,null,0,-1)},apply(e,n,r){return yk(n,r,e,t)}},config:t,props:{handleDOMEvents:{beforeinput(e,n){let r=n.inputType,s=r=="historyUndo"?Ys:r=="historyRedo"?Ur:null;return s?(n.preventDefault(),s(e.state,e.dispatch)):!1}}}})}function $h(t,e){return(n,r)=>{let s=Rt.getState(n);if(!s||(t?s.undone:s.done).eventCount==0)return!1;if(r){let i=bk(s,n,t);i&&r(e?i.scrollIntoView():i)}return!0}}const Ys=$h(!1,!0),Ur=$h(!0,!0);function wk(t){let e=Rt.getState(t);return e?e.done.eventCount:0}function vk(t){let e=Rt.getState(t);return e?e.undone.eventCount:0}var Ek=Object.defineProperty,Ck=Object.getOwnPropertyDescriptor,Ka=(t,e,n,r)=>{for(var s=r>1?void 0:r?Ck(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&Ek(e,n,s),s},pr=class extends Pt{get name(){return"doc"}createNodeSpec(t,e){const{docAttributes:n,content:r}=this.options,s=M();if(Ln(n))for(const[i,o]of fe(n))s[i]={default:o};else for(const i of n)s[i]={default:null};return{attrs:s,content:r,...e}}setDocAttributes(t){return({tr:e,dispatch:n})=>{if(n){for(const[r,s]of Object.entries(t))e.step(new na(r,s));n(e)}return!0}}isDefaultDocNode({state:t=this.store.getState(),options:e}={}){return Ia(t.doc,e)}};Ka([_()],pr.prototype,"setDocAttributes",1);Ka([se()],pr.prototype,"isDefaultDocNode",1);pr=Ka([G({defaultOptions:{content:"block+",docAttributes:[]},defaultPriority:Y.Medium,staticKeys:["content","docAttributes"],disableExtraAttributes:!0})],pr);var Fh="SetDocAttribute",Vh="RevertSetDocAttribute",na=class ra extends ge{constructor(n,r,s=Fh){super();Me(this,"key");Me(this,"stepType");Me(this,"value");Me(this,"previous");this.stepType=s,this.key=n,this.value=r}static fromJSON(n,r){return new ra(r.key,r.value,r.stepType)}apply(n){this.previous=n.attrs[this.key];const r={...n.attrs,[this.key]:this.value};return le.ok(n.type.create(r,n.content,n.marks))}invert(){return new ra(this.key,this.previous,Vh)}map(){return this}toJSON(){return{stepType:this.stepType,key:this.key,value:this.value}}};try{ge.jsonID(Fh,na),ge.jsonID(Vh,na)}catch(t){if(!t.message.startsWith("Duplicate use of step JSON ID"))throw t}var Tk=Object.defineProperty,Ok=Object.getOwnPropertyDescriptor,Hh=(t,e,n,r)=>{for(var s=r>1?void 0:r?Ok(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&Tk(e,n,s),s};function Mk(t,e,n,r){const s=t.docView.posFromDOM(e,n,r);return s===null||s<0?null:s}function _k(t,e){const n=e.target;if(n){const r=Mk(t,n,0);if(r!==null){const s=t.state.doc.resolve(r),i=s.node().isLeaf?0:1,o=s.start()-i;return{pos:r,inside:o}}}return t.posAtCoords({left:e.clientX,top:e.clientY})??void 0}var wi=class extends te{constructor(){super(...arguments),this.mousedown=!1,this.mouseover=!1,this.createMouseEventHandler=t=>(e,n)=>{const r=n,s=_k(e,r);if(!s)return!1;const i=[],o=[],{inside:a,pos:l}=s;if(a===-1)return!1;const c=e.state.doc.resolve(l),u=c.depth+1;for(const d of zu(u,1))i.push({node:d>c.depth&&c.nodeAfter?c.nodeAfter:c.node(d),pos:c.before(d)});for(const{type:d}of c.marksAcross(c)??[]){const h=Bn(c,d);h&&o.push(h)}return t(r,{view:e,nodes:i,marks:o,getMark:d=>{const h=P(d)?e.state.schema.marks[d]:d;return R(h,{code:b.EXTENSION,message:`The mark ${d} being checked does not exist within the editor schema.`}),o.find(f=>f.mark.type===h)},getNode:d=>{var h;const f=P(d)?e.state.schema.nodes[d]:d;R(f,{code:b.EXTENSION,message:"The node being checked does not exist"});const p=i.find(({node:m})=>m.type===f);if(p)return{...p,isRoot:!!((h=i[0])!=null&&h.node.eq(p.node))}}})}}get name(){return"events"}onView(){var t,e;if(!((t=this.store.managerSettings.exclude)!=null&&t.clickHandler))for(const n of this.store.extensions){if(!n.createEventHandlers||(e=n.options.exclude)!=null&&e.clickHandler)continue;const r=n.createEventHandlers();for(const[s,i]of fe(r))this.addHandler(s,i)}}createPlugin(){const t=new WeakMap,e=(n,r,s,i,o,a,l,c)=>{const u=this.store.currentState,{schema:d,doc:h}=u,f=h.resolve(i),p=t.has(l),m=Nk({$pos:f,handled:p,view:s,state:u});let g=!1;p||(g=n(l,m)||g);const y={...m,pos:i,direct:c,nodeWithPosition:{node:o,pos:a},getNode:k=>{const D=P(k)?d.nodes[k]:k;return R(D,{code:b.EXTENSION,message:"The node being checked does not exist"}),D===o.type?{node:o,pos:a}:void 0}};return t.set(l,!0),r(l,y)||g};return{props:{handleKeyPress:(n,r)=>this.options.keypress(r)||!1,handleKeyDown:(n,r)=>this.options.keydown(r)||!1,handleTextInput:(n,r,s,i)=>this.options.textInput({from:r,to:s,text:i})||!1,handleClickOn:(n,r,s,i,o,a)=>e(this.options.clickMark,this.options.click,n,r,s,i,o,a),handleDoubleClickOn:(n,r,s,i,o,a)=>e(this.options.doubleClickMark,this.options.doubleClick,n,r,s,i,o,a),handleTripleClickOn:(n,r,s,i,o,a)=>e(this.options.tripleClickMark,this.options.tripleClick,n,r,s,i,o,a),handleDOMEvents:{focus:(n,r)=>this.options.focus(r)||!1,blur:(n,r)=>this.options.blur(r)||!1,mousedown:(n,r)=>(this.startMouseover(),this.options.mousedown(r)||!1),mouseup:(n,r)=>(this.endMouseover(),this.options.mouseup(r)||!1),mouseleave:(n,r)=>(this.mouseover=!1,this.options.mouseleave(r)||!1),mouseenter:(n,r)=>(this.mouseover=!0,this.options.mouseenter(r)||!1),keyup:(n,r)=>this.options.keyup(r)||!1,mouseout:this.createMouseEventHandler((n,r)=>{const s={...r,hovering:!1};return this.options.hover(n,s)||!1}),mouseover:this.createMouseEventHandler((n,r)=>{const s={...r,hovering:!0};return this.options.hover(n,s)||!1}),contextmenu:this.createMouseEventHandler((n,r)=>this.options.contextmenu(n,r)||!1),scroll:(n,r)=>this.options.scroll(r)||!1,copy:(n,r)=>this.options.copy(r)||!1,cut:(n,r)=>this.options.cut(r)||!1,paste:(n,r)=>this.options.paste(r)||!1}},view:n=>{let r=n.editable;const s=this.options;return{update(i){const o=i.editable;o!==r&&(s.editable(o),r=o)}}}}}isInteracting(){return this.mousedown&&this.mouseover}startMouseover(){this.mouseover=!0,!this.mousedown&&(this.mousedown=!0,this.store.document.documentElement.addEventListener("mouseup",()=>{this.endMouseover()},{once:!0}))}endMouseover(){this.mousedown&&(this.mousedown=!1,this.store.commands.emptyUpdate())}};Hh([se()],wi.prototype,"isInteracting",1);wi=Hh([G({handlerKeys:["blur","focus","mousedown","mouseup","mouseenter","mouseleave","textInput","keypress","keyup","keydown","click","clickMark","doubleClick","doubleClickMark","tripleClick","tripleClickMark","contextmenu","hover","scroll","copy","cut","paste","editable"],handlerKeyOptions:{blur:{earlyReturnValue:!0},focus:{earlyReturnValue:!0},mousedown:{earlyReturnValue:!0},mouseleave:{earlyReturnValue:!0},mouseup:{earlyReturnValue:!0},click:{earlyReturnValue:!0},doubleClick:{earlyReturnValue:!0},tripleClick:{earlyReturnValue:!0},hover:{earlyReturnValue:!0},contextmenu:{earlyReturnValue:!0},scroll:{earlyReturnValue:!0},copy:{earlyReturnValue:!0},cut:{earlyReturnValue:!0},paste:{earlyReturnValue:!0}},defaultPriority:Y.High})],wi);function Nk(t){const{handled:e,view:n,$pos:r,state:s}=t,i={getMark:Bu,markRanges:[],view:n,state:s};if(e)return i;for(const{type:o}of r.marksAcross(r)??[]){const a=Bn(r,o);a&&i.markRanges.push(a)}return i.getMark=o=>{const a=P(o)?s.schema.marks[o]:o;return R(a,{code:b.EXTENSION,message:`The mark ${o} being checked does not exist within the editor schema.`}),i.markRanges.find(l=>l.mark.type===a)},i}class ie extends V{constructor(e){super(e,e)}map(e,n){let r=e.resolve(n.map(this.head));return ie.valid(r)?new ie(r):V.near(r)}content(){return w.empty}eq(e){return e instanceof ie&&e.head==this.head}toJSON(){return{type:"gapcursor",pos:this.head}}static fromJSON(e,n){if(typeof n.pos!="number")throw new RangeError("Invalid input for GapCursor.fromJSON");return new ie(e.resolve(n.pos))}getBookmark(){return new qa(this.anchor)}static valid(e){let n=e.parent;if(n.isTextblock||!Ak(e)||!Rk(e))return!1;let r=n.type.spec.allowGapCursor;if(r!=null)return r;let s=n.contentMatchAt(e.index()).defaultType;return s&&s.isTextblock}static findGapCursorFrom(e,n,r=!1){e:for(;;){if(!r&&ie.valid(e))return e;let s=e.pos,i=null;for(let o=e.depth;;o--){let a=e.node(o);if(n>0?e.indexAfter(o)<a.childCount:e.index(o)>0){i=a.child(n>0?e.indexAfter(o):e.index(o)-1);break}else if(o==0)return null;s+=n;let l=e.doc.resolve(s);if(ie.valid(l))return l}for(;;){let o=n>0?i.firstChild:i.lastChild;if(!o){if(i.isAtom&&!i.isText&&!I.isSelectable(i)){e=e.doc.resolve(s+i.nodeSize*n),r=!1;continue e}break}i=o,s+=n;let a=e.doc.resolve(s);if(ie.valid(a))return a}return null}}}ie.prototype.visible=!1;ie.findFrom=ie.findGapCursorFrom;V.jsonID("gapcursor",ie);class qa{constructor(e){this.pos=e}map(e){return new qa(e.map(this.pos))}resolve(e){let n=e.resolve(this.pos);return ie.valid(n)?new ie(n):V.near(n)}}function Ak(t){for(let e=t.depth;e>=0;e--){let n=t.index(e),r=t.node(e);if(n==0){if(r.type.spec.isolating)return!0;continue}for(let s=r.child(n-1);;s=s.lastChild){if(s.childCount==0&&!s.inlineContent||s.isAtom||s.type.spec.isolating)return!0;if(s.inlineContent)return!1}}return!0}function Rk(t){for(let e=t.depth;e>=0;e--){let n=t.indexAfter(e),r=t.node(e);if(n==r.childCount){if(r.type.spec.isolating)return!0;continue}for(let s=r.child(n);;s=s.firstChild){if(s.childCount==0&&!s.inlineContent||s.isAtom||s.type.spec.isolating)return!0;if(s.inlineContent)return!1}}return!0}function Ik(){return new dn({props:{decorations:Bk,createSelectionBetween(t,e,n){return e.pos==n.pos&&ie.valid(n)?new ie(n):null},handleClick:Pk,handleKeyDown:Dk,handleDOMEvents:{beforeinput:Lk}}})}const Dk=Eh({ArrowLeft:Ps("horiz",-1),ArrowRight:Ps("horiz",1),ArrowUp:Ps("vert",-1),ArrowDown:Ps("vert",1)});function Ps(t,e){const n=t=="vert"?e>0?"down":"up":e>0?"right":"left";return function(r,s,i){let o=r.selection,a=e>0?o.$to:o.$from,l=o.empty;if(o instanceof L){if(!i.endOfTextblock(n)||a.depth==0)return!1;l=!1,a=r.doc.resolve(e>0?a.after():a.before())}let c=ie.findGapCursorFrom(a,e,l);return c?(s&&s(r.tr.setSelection(new ie(c))),!0):!1}}function Pk(t,e,n){if(!t||!t.editable)return!1;let r=t.state.doc.resolve(e);if(!ie.valid(r))return!1;let s=t.posAtCoords({left:n.clientX,top:n.clientY});return s&&s.inside>-1&&I.isSelectable(t.state.doc.nodeAt(s.inside))?!1:(t.dispatch(t.state.tr.setSelection(new ie(r))),!0)}function Lk(t,e){if(e.inputType!="insertCompositionText"||!(t.state.selection instanceof ie))return!1;let{$from:n}=t.state.selection,r=n.parent.contentMatchAt(n.index()).findWrapping(t.state.schema.nodes.text);if(!r)return!1;let s=x.empty;for(let o=r.length-1;o>=0;o--)s=x.from(r[o].createAndFill(null,s));let i=t.state.tr.replace(n.pos,n.pos,new w(s,0,0));return i.setSelection(L.near(i.doc.resolve(n.pos+1))),t.dispatch(i),!1}function Bk(t){if(!(t.selection instanceof ie))return null;let e=document.createElement("div");return e.className="ProseMirror-gapcursor",W.create(t.doc,[Q.widget(t.selection.head,e,{key:"gapcursor"})])}var zk=Object.defineProperty,$k=Object.getOwnPropertyDescriptor,Fk=(t,e,n,r)=>{for(var s=r>1?void 0:r?$k(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&zk(e,n,s),s},sa=class extends te{get name(){return"gapCursor"}createExternalPlugins(){return[Ik()]}};sa=Fk([G({})],sa);var Vk=Object.defineProperty,Hk=Object.getOwnPropertyDescriptor,zn=(t,e,n,r)=>{for(var s=r>1?void 0:r?Hk(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&Vk(e,n,s),s},kt=class extends te{constructor(){super(...arguments),this.wrapMethod=(t,e)=>({state:n,dispatch:r,view:s})=>{const{getState:i,getDispatch:o}=this.options,a=ee(i)?i():n,l=ee(o)&&r?o():r,c=t(a,l,s);return e==null||e(c),c}}get name(){return"history"}createKeymap(){return{"Mod-y":st.isMac?()=>!1:this.wrapMethod(Ur,this.options.onRedo),"Mod-z":this.wrapMethod(Ys,this.options.onUndo),"Shift-Mod-z":this.wrapMethod(Ur,this.options.onRedo)}}undoShortcut(t){return this.wrapMethod(Ys,this.options.onUndo)(t)}redoShortcut(t){return this.wrapMethod(Ur,this.options.onRedo)(t)}createExternalPlugins(){const{depth:t,newGroupDelay:e}=this.options;return[Sk({depth:t,newGroupDelay:e})]}undo(){return bc(this.wrapMethod(Ys,this.options.onUndo))}redo(){return bc(this.wrapMethod(Ur,this.options.onRedo))}undoDepth(t=this.store.getState()){return wk(t)}redoDepth(t=this.store.getState()){return vk(t)}};zn([Ye({shortcut:E.Undo,command:"undo"})],kt.prototype,"undoShortcut",1);zn([Ye({shortcut:E.Redo,command:"redo"})],kt.prototype,"redoShortcut",1);zn([_({disableChaining:!0,description:({t})=>t(di.UNDO_DESCRIPTION),label:({t})=>t(di.UNDO_LABEL),icon:"arrowGoBackFill"})],kt.prototype,"undo",1);zn([_({disableChaining:!0,description:({t})=>t(di.REDO_DESCRIPTION),label:({t})=>t(di.REDO_LABEL),icon:"arrowGoForwardFill"})],kt.prototype,"redo",1);zn([se()],kt.prototype,"undoDepth",1);zn([se()],kt.prototype,"redoDepth",1);kt=zn([G({defaultOptions:{depth:100,newGroupDelay:500,getDispatch:void 0,getState:void 0},staticKeys:["depth","newGroupDelay"],handlerKeys:["onUndo","onRedo"]})],kt);var Uk=Object.defineProperty,jk=Object.getOwnPropertyDescriptor,Ja=(t,e,n,r)=>{for(var s=r>1?void 0:r?jk(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&Uk(e,n,s),s},Wk={icon:"italic",label:({t})=>t(Al.LABEL),description:({t})=>t(Al.DESCRIPTION)},ys=class extends Ki{get name(){return"italic"}createTags(){return[j.FontStyle,j.FormattingMark]}createMarkSpec(t,e){return{...e,attrs:t.defaults(),parseDOM:[{tag:"i",getAttrs:t.parse},{tag:"em",getAttrs:t.parse},{style:"font-style=italic"},...e.parseDOM??[]],toDOM:n=>["em",t.dom(n),0]}}createKeymap(){return{"Mod-i":hr({type:this.type})}}createInputRules(){return[xi({regexp:/(?:^|[^*])\*([^*]+)\*$/,type:this.type,ignoreWhitespace:!0,updateCaptured:({fullMatch:t,start:e})=>t.startsWith("*")?{}:{fullMatch:t.slice(1),start:e+1}}),xi({regexp:/(?:^|\W)_([^_]+)_$/,type:this.type,ignoreWhitespace:!0,updateCaptured:({fullMatch:t,start:e})=>t.startsWith("_")?{}:{fullMatch:t.slice(1),start:e+1}})]}createPasteRules(){return[{type:"mark",markType:this.type,regexp:/(?:^|\W)_([^_]+)_/g},{type:"mark",markType:this.type,regexp:/\*([^*]+)\*/g}]}toggleItalic(t){return hr({type:this.type,selection:t})}shortcut(t){return this.toggleItalic()(t)}};Ja([_(Wk)],ys.prototype,"toggleItalic",1);Ja([Ye({shortcut:E.Italic,command:"toggleItalic"})],ys.prototype,"shortcut",1);ys=Ja([G({})],ys);function Kk(t,e=null){return function(n,r){let{$from:s,$to:i}=n.selection,o=s.blockRange(i),a=!1,l=o;if(!o)return!1;if(o.depth>=2&&s.node(o.depth-1).type.compatibleContent(t)&&o.startIndex==0){if(s.index(o.depth-1)==0)return!1;let u=n.doc.resolve(o.start-2);l=new Nn(u,u,o.depth),o.endIndex<o.parent.childCount&&(o=new Nn(s,n.doc.resolve(i.end(o.depth)),o.depth)),a=!0}let c=ma(l,t,e,o);return c?(r&&r(qk(n.tr,o,c,a,t).scrollIntoView()),!0):!1}}function qk(t,e,n,r,s){let i=x.empty;for(let u=n.length-1;u>=0;u--)i=x.from(n[u].type.create(n[u].attrs,i));t.step(new pe(e.start-(r?2:0),e.end,e.start,e.end,new w(i,0,0),n.length,!0));let o=0;for(let u=0;u<n.length;u++)n[u].type==s&&(o=u+1);let a=n.length-o,l=e.start+n.length-(r?2:0),c=e.parent;for(let u=e.startIndex,d=e.endIndex,h=!0;u<d;u++,h=!1)!h&&Zn(t.doc,l,a)&&(t.split(l,a),l+=2*a),l+=c.child(u).nodeSize;return t}function Jk(t){return function(e,n){let{$from:r,$to:s}=e.selection,i=r.blockRange(s,o=>o.childCount>0&&o.firstChild.type==t);return i?n?r.node(i.depth-1).type==t?Gk(e,n,t,i):Xk(e,n,i):!0:!1}}function Gk(t,e,n,r){let s=t.tr,i=r.end,o=r.$to.end(r.depth);i<o&&(s.step(new pe(i-1,o,i,o,new w(x.from(n.create(null,r.parent.copy())),1,0),1,!0)),r=new Nn(s.doc.resolve(r.$from.pos),s.doc.resolve(o),r.depth));const a=xr(r);if(a==null)return!1;s.lift(r,a);let l=s.mapping.map(i,-1)-1;return Cs(s.doc,l)&&s.join(l),e(s.scrollIntoView()),!0}function Xk(t,e,n){let r=t.tr,s=n.parent;for(let f=n.end,p=n.endIndex-1,m=n.startIndex;p>m;p--)f-=s.child(p).nodeSize,r.delete(f-1,f+1);let i=r.doc.resolve(n.start),o=i.nodeAfter;if(r.mapping.map(n.end)!=n.start+i.nodeAfter.nodeSize)return!1;let a=n.startIndex==0,l=n.endIndex==s.childCount,c=i.node(-1),u=i.index(-1);if(!c.canReplace(u+(a?0:1),u+1,o.content.append(l?x.empty:x.from(s))))return!1;let d=i.pos,h=d+o.nodeSize;return r.step(new pe(d-(a?1:0),h+(l?1:0),d+1,h-1,new w((a?x.empty:x.from(s.copy(x.empty))).append(l?x.empty:x.from(s.copy(x.empty))),a?0:1,l?0:1),a?0:1)),e(r.scrollIntoView()),!0}var Yk=Object.defineProperty,Zk=Object.getOwnPropertyDescriptor,Ze=(t,e,n,r)=>{for(var s=r>1?void 0:r?Zk(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&Yk(e,n,s),s};function ia(t){var e;return!!((e=t.spec.group)!=null&&e.includes(j.ListContainerNode))}function Qk(t){var e;return!!((e=t.spec.group)!=null&&e.includes(j.ListItemNode))}function an(t){return ia(t.type)}function en(t){return Qk(t.type)}function Ga(t,e){return n=>{const{dispatch:r,tr:s}=n,i=_a(s,n.state),{$from:o,$to:a}=s.selection,l=o.blockRange(a);if(!l)return!1;const c=zi({predicate:u=>ia(u.type),selection:s.selection});if(c&&l.depth-c.depth<=1&&l.startIndex===0){if(c.node.type===t)return Wh(e)(n);if(ia(c.node.type))return t.validContent(c.node.content)?(r==null||r(s.setNodeMarkup(c.pos,t)),!0):eS(s,c,t,e)?(r==null||r(s.scrollIntoView()),!0):!1}return Kk(t)(i,r)}}function Uh(t,e=["checked"]){return function({tr:n,dispatch:r,state:s}){var f,p;const i=m0(t,s.schema),{$from:o,$to:a}=n.selection;if(Fi(n.selection)&&n.selection.node.isBlock||o.depth<2||!o.sameParent(a))return!1;const l=o.node(-1);if(l.type!==i)return!1;if(o.parent.content.size===0&&o.node(-1).childCount===o.indexAfter(-1)){if(o.depth===2||o.node(-3).type!==i||o.index(-2)!==o.node(-2).childCount-1)return!1;if(r){const m=o.index(-1)>0;let g=x.empty;for(let D=o.depth-(m?1:2);D>=o.depth-3;D--)g=x.from(o.node(D).copy(g));const y=((f=i.contentMatch.defaultType)==null?void 0:f.createAndFill())||void 0;g=g.append(x.from(i.createAndFill(null,y)||void 0));const k=o.indexAfter(-1)<o.node(-2).childCount?1:o.indexAfter(-2)<o.node(-3).childCount?2:3;n.replace(o.before(m?void 0:-1),o.after(-k),new w(g,m?3:2,2)),n.setSelection(n.selection.constructor.near(n.doc.resolve(o.pos+(m?3:2)))),r(n.scrollIntoView())}return!0}if(l.attrs.closed&&o.sameParent(a)&&a.pos===a.end()){if(r){const m=o.after(-1),g=((p=i.contentMatch.defaultType)==null?void 0:p.createAndFill())||void 0,y=i.createAndFill(null,g);y&&(n.insert(m,y),n.setSelection(L.near(n.doc.resolve(m+1)))),n.delete(o.pos,a.pos),r(n.scrollIntoView())}return!0}const c=Object.fromEntries(Object.entries(l.attrs).filter(([m])=>!e.includes(m))),u=a.pos===o.end()?l.contentMatchAt(0).defaultType:null,d={...o.node().attrs};n.delete(o.pos,a.pos);const h=u?[{type:i,attrs:c},{type:u,attrs:d}]:[{type:i,attrs:c}];return Zn(n.doc,o.pos,2)?(r&&r(n.split(o.pos,2,h).scrollIntoView()),!0):!1}}function eS(t,e,n,r){const s=e.node,i=t.doc.resolve(e.start),o=i.node(-1),a=i.index(-1);if(!o||!o.canReplace(a,a+1,x.from(n.create())))return!1;const l=[];for(let f=0;f<s.childCount;f++){const p=s.child(f);if(!r.validContent(p.content))return!1;const m=r.createChecked(null,p.content);l.push(m)}const c=n.createChecked(null,l),u=e.pos,d=u+s.nodeSize,h=t.selection.from;return t.replaceRangeWith(u,d,c),t.setSelection(t.selection.constructor.near(t.doc.resolve(h))),!0}function tS({listType:t,itemType:e,tr:n,range:r}){var l;const s=r.parent,i=n.doc.slice(r.start,r.end);if(s.type===t&&((l=i.content.firstChild)==null?void 0:l.type)===e)return!1;const o=[];for(let c=0;c<i.content.childCount;c++){const u=i.content.child(c);if(!e.validContent(u.content))return!1;const d=e.createChecked(null,u.content);o.push(d)}const a=t.createChecked(null,o);return n.replaceRange(r.start,r.end,new w(x.from(a),0,0)),!0}function mr({listType:t,itemType:e,tr:n}){const r=vi(n.selection);if(!r)return!1;const s=r.startIndex===0,{from:i,to:o}=n.selection;return tS({listType:t,itemType:e,tr:n,range:r})?(n.setSelection(L.between(n.doc.resolve(s?i:i+2),n.doc.resolve(s?o:o+2))),n.scrollIntoView(),!0):!1}function nS(t,e,n){const r=t.tr,s=n.parent,i=r.mapping.maps.length;for(let p=n.end,m=n.endIndex-1,g=n.startIndex;m>g;m--)p-=s.child(m).nodeSize,r.delete(p-1,p+1);const o=r.doc.resolve(n.start),a=o.nodeAfter;if(!a||r.mapping.slice(i).map(n.end)!==n.start+a.nodeSize)return!1;const l=n.startIndex===0,c=n.endIndex===s.childCount,u=o.node(-1),d=o.index(-1);if(!u.canReplace(d+(l?0:1),d+1,a.content.append(c?x.empty:x.from(s))))return!1;const h=o.pos,f=h+a.nodeSize;return r.step(new pe(h-(l?1:0),f+(c?1:0),h+1,f-1,new w((l?x.empty:x.from(s.copy(x.empty))).append(c?x.empty:x.from(s.copy(x.empty))),l?0:1,c?0:1),l?0:1)),e(r.scrollIntoView()),!0}function jh(t,e){const n=e||t.selection.$from;let r=[],s,i,o,a;for(let c=n.depth;c>=0;c--){if(i=n.node(c),s=n.index(c),o=i.maybeChild(s-1),a=i.maybeChild(s),o&&a&&o.type.name===a.type.name&&an(o)){const u=n.before(c+1);r.push(u)}if(s=n.indexAfter(c),o=i.maybeChild(s-1),a=i.maybeChild(s),o&&a&&o.type.name===a.type.name&&an(o)){const u=n.after(c+1);r.push(u)}}r=[...new Set(r)].sort((c,u)=>u-c);let l=!1;for(const c of r)Cs(t.doc,c)&&(t.join(c),l=!0);return l}function Wh(t){return e=>{const{dispatch:n,tr:r}=e,s=_a(r,e.state),i=rS(t,r.selection);return i?(n&&nS(s,n,i),!0):!1}}function rS(t,e){const{$from:n,$to:r}=e;return n.blockRange(r,i=>{var o;return((o=i.firstChild)==null?void 0:o.type)===t})}function vi(t){const{$from:e,$to:n}=t;return e.blockRange(n,an)}function sS(t){const e=t.selection.$from,n=e.blockRange();if(!n||!en(n.parent)||n.startIndex!==0)return!1;const r=e.node(n.depth-2),s=e.index(n.depth),i=e.index(n.depth-1),o=e.index(n.depth-2),a=r.maybeChild(o-1),l=a==null?void 0:a.lastChild;if(s!==0||i!==0)return!1;if(a&&an(a)&&l&&en(l))return mr({listType:a.type,itemType:l.type,tr:t});if(en(r)){const c=r,u=e.node(n.depth-3);if(an(u))return mr({listType:u.type,itemType:c.type,tr:t})}return!1}function zc({view:t}){if(!t)return!1;{const e=t.state.selection.$cursor;if(!e||e.parentOffset>0)return!1;const n=e.blockRange();if(!n||!en(n.parent)||n.startIndex!==0)return!1}{const e=t.state.tr;sS(e)&&t.dispatch(e)}{const e=t.state.selection.$cursor;if(!e||e.parentOffset>0)return!1;const n=e.blockRange();if(!n||!en(n.parent)||n.startIndex!==0)return!1;const r=e.index(n.depth),s=e.index(n.depth-1),i=e.index(n.depth-2),o=n.depth-2>=1&&en(e.node(n.depth-2));r===0&&s===0&&i<=1&&o&&Jk(n.parent.type)(t.state,t.dispatch)}return xh(t.state,t.dispatch,t),!0}function Kh({node:t,mark:e,updateDOM:n,updateMark:r}){const s=document.createElement("label");s.contentEditable="false",s.classList.add(on.LIST_ITEM_MARKER_CONTAINER),s.append(e);const i=document.createElement("div"),o=document.createElement("li");o.classList.add(on.LIST_ITEM_WITH_CUSTOM_MARKER),o.append(s),o.append(i);const a=l=>l.type!==t.type?!1:(t=l,n(t,o),r(t,e),!0);return a(t),{dom:o,contentDOM:i,update:a}}function iS(t,e){const n=t.node(e.depth-1),r=t.node(e.depth-2);return!en(n)||!an(r)?!1:{parentItem:n,parentList:r}}function oS(t,e){const n=e.parent,r=e.parent.child(e.endIndex-1),s=e.end,i=e.$to.end(e.depth);return s<i?(t.step(new pe(s-1,i,s,i,new w(x.from(r.type.create(null,n.copy())),1,0),1,!0)),new Nn(t.doc.resolve(e.$from.pos),t.doc.resolve(i),e.depth)):e}function aS(t,e){const n=e.parent,r=e.parent.child(e.endIndex-1),s=e.end,i=e.$to.end(e.depth-1);return s+1<i?(t.step(new pe(s-1,i,s+1,i,new w(x.from(n.type.create(null,r.type.create(null))),2,0),0,!0)),new Nn(t.selection.$from,t.selection.$to,e.depth)):e}function lS(t,e,n,r){return mr({listType:n.type,itemType:r.type,tr:t})?new Nn(t.selection.$from,t.selection.$to,e.depth):e}function cS(t){let e=vi(t.selection);if(!e)return!1;const n=iS(t.selection.$from,e);if(!n)return!1;const{parentItem:r,parentList:s}=n;e=oS(t,e),e=aS(t,e),e=lS(t,e,s,r);const i=xr(e);return typeof i!="number"||(t.lift(e,i),e=vi(t.selection),e&&jh(t,t.doc.resolve(e.end-2))),!0}var uS=({tr:t,dispatch:e})=>cS(t)?(e==null||e(t.scrollIntoView()),!0):!1;function dS(t,e,n){let r,s,i,o;const a=e.doc;if(n.startIndex>=1){r=t.child(n.startIndex-1),s=t,o=a.resolve(n.start).start(n.depth),i=o+1;for(let l=0;l<n.startIndex-1;l++)i+=s.child(l).nodeSize}else{const l=e.index(n.depth-1);if(l>=1){const c=e.node(n.depth-1),u=e.start(n.depth-1);if(s=c.child(l-1),!an(s))return!1;o=u+1;for(let d=0;d<l-1;d++)o+=c.child(d).nodeSize;if(r=s.child(s.childCount-1),i=o+s.nodeSize-r.nodeSize-1,!en(r))return!1}else return!1}return{previousItem:r,previousList:s,previousItemStart:i,previousListStart:o}}function hS(t,e,n){let r,s;const i=n.start,o=e.depth>=n.depth+2?e.end(n.depth+2):n.end-1,a=n.end;return o+1>=a?(r=t.slice(i,a),s=null):(r=t.slice(i,o),s=t.slice(o+1,a-1)),{selectedSlice:r,unselectedSlice:s}}function fS(t){const{$from:e,$to:n}=t.selection,r=vi(t.selection);if(!r)return!1;const s=t.doc.resolve(r.start).node();if(!an(s))return!1;const i=dS(s,e,r);if(!i)return!1;const{previousItem:o,previousList:a,previousItemStart:l}=i,{selectedSlice:c,unselectedSlice:u}=hS(t.doc,n,r),d=o.content.append(x.fromArray([s.copy(c.content)])).append(u?u.content:x.empty);t.deleteRange(r.start,r.end);const h=l+o.nodeSize-2,f=o.copy(d);return f.check(),t.replaceRangeWith(l-1,h+1,f),t.setSelection(a===s?L.between(t.doc.resolve(e.pos),t.doc.resolve(n.pos)):L.between(t.doc.resolve(e.pos-2),t.doc.resolve(n.pos-2))),!0}var pS=({tr:t,dispatch:e})=>fS(t)?(e==null||e(t.scrollIntoView()),!0):!1,qh=class extends te{get name(){return"listItemShared"}createKeymap(){const t={Tab:pS,"Shift-Tab":uS,Backspace:zc,"Mod-Backspace":zc};if(st.isMac){const e={"Ctrl-h":t.Backspace,"Alt-Backspace":t["Mod-Backspace"]};return{...t,...e}}return t}createPlugin(){return{appendTransaction:(t,e,n)=>{const r=n.tr;return jh(r)?r:null}}}},gr=class extends Pt{get name(){return"listItem"}createTags(){return[j.ListItemNode]}createNodeSpec(t,e){return{content:"paragraph block*",defining:!0,draggable:!1,...e,attrs:{...t.defaults(),closed:{default:!1},nested:{default:!1}},parseDOM:[{tag:"li",getAttrs:t.parse,priority:Y.Lowest},...e.parseDOM??[]],toDOM:n=>["li",t.dom(n),0]}}createNodeViews(){return this.options.enableCollapsible?(t,e,n)=>{const r=document.createElement("div");return r.classList.add(on.COLLAPSIBLE_LIST_ITEM_BUTTON),r.contentEditable="false",r.addEventListener("click",()=>{if(r.classList.contains("disabled"))return;const s=n(),i=I.create(e.state.doc,s);return e.dispatch(e.state.tr.setSelection(i)),this.store.commands.toggleListItemClosed(),!0}),Kh({mark:r,node:t,updateDOM:mS,updateMark:gS})}:{}}createKeymap(){return{Enter:Uh(this.type)}}createExtensions(){return[new qh]}toggleListItemClosed(t){return({state:{tr:e,selection:n},dispatch:r})=>{if(!Fi(n)||n.node.type.name!==this.name)return!1;const{node:s,from:i}=n;return t=lp(t)?t:!s.attrs.closed,r==null||r(e.setNodeMarkup(i,void 0,{...s.attrs,closed:t})),!0}}liftListItemOutOfList(t){return Wh(t??this.type)}};Ze([_()],gr.prototype,"toggleListItemClosed",1);Ze([_()],gr.prototype,"liftListItemOutOfList",1);gr=Ze([G({defaultOptions:{enableCollapsible:!1},staticKeys:["enableCollapsible"]})],gr);function mS(t,e){t.attrs.closed?e.classList.add(on.COLLAPSIBLE_LIST_ITEM_CLOSED):e.classList.remove(on.COLLAPSIBLE_LIST_ITEM_CLOSED)}function gS(t,e){t.childCount<=1?e.classList.add("disabled"):e.classList.remove("disabled")}var xs=class extends Pt{get name(){return"bulletList"}createTags(){return[j.Block,j.ListContainerNode]}createNodeSpec(t,e){return{content:"listItem+",...e,attrs:t.defaults(),parseDOM:[{tag:"ul",getAttrs:t.parse},...e.parseDOM??[]],toDOM:n=>["ul",t.dom(n),0]}}createNodeViews(){return this.options.enableSpine?(t,e,n)=>{var c;const r=document.createElement("div");r.style.position="relative";const s=n(),i=e.state.doc.resolve(s+1),o=i.node(i.depth-1);if(!(((c=o==null?void 0:o.type)==null?void 0:c.name)!=="listItem")){const u=document.createElement("div");u.contentEditable="false",u.classList.add(on.LIST_SPINE),u.addEventListener("click",d=>{const h=n(),f=e.state.doc.resolve(h+1),p=f.start(f.depth-1),m=I.create(e.state.doc,p-1);e.dispatch(e.state.tr.setSelection(m)),this.store.commands.toggleListItemClosed(),d.preventDefault(),d.stopPropagation()}),r.append(u)}const l=document.createElement("ul");return l.classList.add(on.UL_LIST_CONTENT),r.append(l),{dom:r,contentDOM:l}}:{}}createExtensions(){return[new gr({priority:Y.Low,enableCollapsible:this.options.enableSpine})]}toggleBulletList(){return Ga(this.type,re(this.store.schema.nodes,"listItem"))}listShortcut(t){return this.toggleBulletList()(t)}createInputRules(){const t=/^\s*([*+-])\s$/;return[ba(t,this.type),new dt(t,(e,n,r,s)=>{const i=e.tr;return i.deleteRange(r,s),mr({listType:this.type,itemType:re(this.store.schema.nodes,"listItem"),tr:i})?i:null})]}};Ze([_({icon:"listUnordered",label:({t})=>t(xa.BULLET_LIST_LABEL)})],xs.prototype,"toggleBulletList",1);Ze([Ye({shortcut:E.BulletList,command:"toggleBulletList"})],xs.prototype,"listShortcut",1);xs=Ze([G({defaultOptions:{enableSpine:!1},staticKeys:["enableSpine"]})],xs);var bs=class extends Pt{get name(){return"orderedList"}createTags(){return[j.Block,j.ListContainerNode]}createNodeSpec(t,e){return{content:"listItem+",...e,attrs:{...t.defaults(),order:{default:1}},parseDOM:[{tag:"ol",getAttrs:n=>$e(n)?{...t.parse(n),order:+(n.getAttribute("start")??1)}:{}},...e.parseDOM??[]],toDOM:n=>{const r=t.dom(n);return n.attrs.order===1?["ol",r,0]:["ol",{...r,start:n.attrs.order},0]}}}createExtensions(){return[new gr({priority:Y.Low})]}toggleOrderedList(){return Ga(this.type,re(this.store.schema.nodes,"listItem"))}listShortcut(t){return this.toggleOrderedList()(t)}createInputRules(){const t=/^(\d+)\.\s$/;return[ba(t,this.type,e=>({order:+re(e,1)}),(e,n)=>n.childCount+n.attrs.order===+re(e,1)),new dt(t,(e,n,r,s)=>{const i=e.tr;if(i.deleteRange(r,s),!mr({listType:this.type,itemType:re(this.store.schema.nodes,"listItem"),tr:i}))return null;const a=+re(n,1);if(a!==1){const l=hs({selection:i.selection,types:this.type});l&&i.setNodeMarkup(l.pos,void 0,{order:a})}return i})]}};Ze([_({icon:"listOrdered",label:({t})=>t(xa.ORDERED_LIST_LABEL)})],bs.prototype,"toggleOrderedList",1);Ze([Ye({shortcut:E.OrderedList,command:"toggleOrderedList"})],bs.prototype,"listShortcut",1);bs=Ze([G({})],bs);var Jh=class extends Pt{get name(){return"taskListItem"}createTags(){return[j.ListItemNode]}createNodeSpec(t,e){return{content:"paragraph block*",defining:!0,draggable:!1,...e,attrs:{...t.defaults(),checked:{default:!1}},parseDOM:[{tag:"li[data-task-list-item]",getAttrs:n=>{let r=!1;return $e(n)&&n.getAttribute("data-checked")!==null&&(r=!0),{checked:r,...t.parse(n)}},priority:Y.Medium},...e.parseDOM??[]],toDOM:n=>["li",{...t.dom(n),"data-task-list-item":"","data-checked":n.attrs.checked?"":void 0},0]}}createNodeViews(){return(t,e,n)=>{const r=document.createElement("input");return r.type="checkbox",r.classList.add(on.LIST_ITEM_CHECKBOX),r.contentEditable="false",r.addEventListener("click",s=>{e.editable||s.preventDefault()}),r.addEventListener("change",()=>{const s=n(),i=e.state.doc.resolve(s+1);this.store.commands.toggleCheckboxChecked({$pos:i})}),r.checked=t.attrs.checked,Kh({node:t,mark:r,updateDOM:yS,updateMark:xS})}}createKeymap(){return{Enter:Uh(this.type)}}createExtensions(){return[new qh]}toggleCheckboxChecked(t){let e,n;return typeof t=="boolean"?e=t:t&&(e=t.checked,n=t.$pos),({tr:r,dispatch:s})=>{const i=hs({selection:n??r.selection.$from,types:this.type});if(!i)return!1;const{node:o,pos:a}=i,l={...o.attrs,checked:e??!o.attrs.checked};return s==null||s(r.setNodeMarkup(a,void 0,l)),!0}}createInputRules(){const t=/^\s*(\[( ?|x|X)]\s)$/;return[ba(t,this.type,e=>({checked:["x","X"].includes(Sc(e,2))})),new dt(t,(e,n,r,s)=>{const i=e.tr;if(i.deleteRange(r,s),!mr({listType:re(this.store.schema.nodes,"taskList"),itemType:this.type,tr:i}))return null;const a=["x","X"].includes(Sc(n,2));if(a){const l=hs({selection:i.selection,types:this.type});l&&i.setNodeMarkup(l.pos,void 0,{checked:a})}return i})]}};Ze([_()],Jh.prototype,"toggleCheckboxChecked",1);function yS(t,e){t.attrs.checked?e.setAttribute("data-checked",""):e.removeAttribute("data-checked"),e.setAttribute("data-task-list-item","")}function xS(t,e){e.checked=!!t.attrs.checked}var Gh=class extends Pt{get name(){return"taskList"}createTags(){return[j.Block,j.ListContainerNode]}createNodeSpec(t,e){return{content:"taskListItem+",...e,attrs:t.defaults(),parseDOM:[{tag:"ul[data-task-list]",getAttrs:t.parse,priority:Y.Medium},...e.parseDOM??[]],toDOM:n=>["ul",{...t.dom(n),"data-task-list":""},0]}}createExtensions(){return[new Jh({})]}toggleTaskList(){return Ga(this.type,re(this.store.schema.nodes,"taskListItem"))}listShortcut(t){return this.toggleTaskList()(t)}};Ze([_({icon:"checkboxMultipleLine",label:({t})=>t(xa.TASK_LIST_LABEL)})],Gh.prototype,"toggleTaskList",1);Ze([Ye({shortcut:E.TaskList,command:"toggleTaskList"})],Gh.prototype,"listShortcut",1);function bS(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)n.hasOwnProperty(r)&&(t[r]=n[r])}return t}function oa(t,e){return Array(e+1).join(t)}function kS(t){return t.replace(/^\n*/,"")}function SS(t){for(var e=t.length;e>0&&t[e-1]===`
|
|
54
|
-
`;)e--;return t.substring(0,e)}var
|
|
52
|
+
`,Kt)}getHTML(t=this.store.getState()){return R0(t.doc,this.store.document)}textToProsemirrorNode(t){const e=`<pre>${t.content}</pre>`;return this.store.stringHandlers.html({...t,content:e})}};T([se()],Xe.prototype,"isSelectionEmpty",1);T([se()],Xe.prototype,"isViewEditable",1);T([se()],Xe.prototype,"getStateJSON",1);T([se()],Xe.prototype,"getJSON",1);T([se()],Xe.prototype,"getRemirrorJSON",1);T([_()],Xe.prototype,"insertHtml",1);T([se()],Xe.prototype,"getText",1);T([se()],Xe.prototype,"getTextBetween",1);T([se()],Xe.prototype,"getHTML",1);Xe=T([G({})],Xe);var Yo=class extends te{get name(){return"inputRules"}onCreate(){this.store.setExtensionStore("rebuildInputRules",this.rebuildInputRules.bind(this))}createExternalPlugins(){return[this.generateInputRulesPlugin()]}generateInputRulesPlugin(){var t,e;const n=[],r=this.store.markTags[j.ExcludeInputRules];for(const s of this.store.extensions)if(!((t=this.store.managerSettings.exclude)!=null&&t.inputRules||!s.createInputRules||(e=s.options.exclude)!=null&&e.inputRules))for(const i of s.createInputRules())i.shouldSkip=this.options.shouldSkipInputRule,i.invalidMarks=r,n.push(i);return eg({rules:n})}rebuildInputRules(){this.store.updateExtensionPlugins(this)}};Yo=T([G({defaultPriority:Y.Default,handlerKeys:["shouldSkipInputRule"],handlerKeyOptions:{shouldSkipInputRule:{earlyReturnValue:!0}}})],Yo);var it=class extends te{constructor(){super(...arguments),this.extraKeyBindings=[],this.backwardMarkExitTracker=new Map,this.keydownHandler=null,this.onAddCustomHandler=({keymap:t})=>{var e,n;if(t)return this.extraKeyBindings=[...this.extraKeyBindings,t],(n=(e=this.store).rebuildKeymap)==null||n.call(e),()=>{var r,s;this.extraKeyBindings=this.extraKeyBindings.filter(i=>i!==t),(s=(r=this.store).rebuildKeymap)==null||s.call(r)}},this.rebuildKeymap=()=>{this.setupKeydownHandler()}}get name(){return"keymap"}get shortcutMap(){const{shortcuts:t}=this.options;return P(t)?Gx[t]:t}onCreate(){this.store.setExtensionStore("rebuildKeymap",this.rebuildKeymap)}createExternalPlugins(){var t;return(t=this.store.managerSettings.exclude)!=null&&t.keymap?[]:(this.setupKeydownHandler(),[new dn({props:{handleKeyDown:(e,n)=>{var r;return(r=this.keydownHandler)==null?void 0:r.call(this,e,n)}}})])}setupKeydownHandler(){const t=this.generateKeymapBindings();this.keydownHandler=Ch(t)}generateKeymapBindings(){var t;const e=[],n=this.shortcutMap,r=this.store.getExtension(H),s=a=>l=>Vs({shortcut:l,map:n,store:this.store,options:a.options});for(const a of this.store.extensions){const l=a.decoratedKeybindings??{};if(!((t=a.options.exclude)!=null&&t.keymap)){a.createKeymap&&e.push(qx(a.createKeymap(s(a)),n));for(const[c,u]of fe(l)){if(u.isActive&&!u.isActive(a.options,this.store))continue;const d=a[c].bind(a),h=Vs({shortcut:u.shortcut,map:n,options:a.options,store:this.store}),f=ee(u.priority)?u.priority(a.options,this.store):u.priority??Y.Low,p=M();for(const m of h)p[m]=d;e.push([f,p]),u.command&&r.updateDecorated(u.command,{shortcut:h})}}}const i=this.sortKeymaps([...this.extraKeyBindings,...e]);return h0(i)}arrowRightShortcut(t){const e=this.store.markTags[j.PreventExits],n=this.store.nodeTags[j.PreventExits];return this.exitMarkForwards(e,n)(t)}arrowLeftShortcut(t){const e=this.store.markTags[j.PreventExits],n=this.store.nodeTags[j.PreventExits];return yi(this.exitNodeBackwards(n),this.exitMarkBackwards(e,n))(t)}backspace(t){const e=this.store.markTags[j.PreventExits],n=this.store.nodeTags[j.PreventExits];return yi(this.exitNodeBackwards(n,!0),this.exitMarkBackwards(e,n,!0))(t)}createKeymap(){const{selectParentNodeOnEscape:t,undoInputRuleOnBackspace:e,excludeBaseKeymap:n}=this.options,r=M();if(!n)for(const[s,i]of fe(po))r[s]=Fs(i);return e&&po.Backspace&&(r.Backspace=Fs(Ui(tg,po.Backspace))),t&&(r.Escape=Fs(rx)),[Y.Low,r]}getNamedShortcut(t,e={}){return t.startsWith("_|")?Vs({shortcut:t,map:this.shortcutMap,store:this.store,options:e}):[t]}onSetOptions(t){var e,n;const{changes:r}=t;(r.excludeBaseKeymap.changed||r.selectParentNodeOnEscape.changed||r.undoInputRuleOnBackspace.changed)&&((n=(e=this.store).rebuildKeymap)==null||n.call(e))}sortKeymaps(t){return ir(t.map(e=>me(e)?e:[Y.Default,e]),(e,n)=>n[0]-e[0]).map(e=>e[1])}exitMarkForwards(t,e){return n=>{const{tr:r,dispatch:s}=n;if(!P0(r.selection)||hs({selection:r.selection,types:e}))return!1;const a=r.selection.$from.marks().filter(l=>!t.includes(l.type.name));if(nn(a))return!1;if(!s)return!0;for(const l of a)r.removeStoredMark(l);return s(r.insertText(" ",r.selection.from)),!0}}exitNodeBackwards(t,e=!1){return n=>{const{tr:r}=n;if(!(e?Ec:qo)(r.selection))return!1;const i=r.selection.$anchor.node();return!Da(i)||k0(i)||t.includes(i.type.name)?!1:this.store.commands.toggleBlockNodeItem.original({type:i.type})(n)}}exitMarkBackwards(t,e,n=!1){return r=>{const{tr:s,dispatch:i}=r;if(!(n?Ec:qo)(s.selection)||this.backwardMarkExitTracker.has(s.selection.anchor))return this.backwardMarkExitTracker.clear(),!1;if(hs({selection:s.selection,types:e}))return!1;const l=[...s.storedMarks??[],...s.selection.$from.marks()].filter(c=>!t.includes(c.type.name));if(nn(l))return!1;if(!i)return!0;for(const c of l)s.removeStoredMark(c);return this.backwardMarkExitTracker.set(s.selection.anchor,!0),i(s),!0}}};T([Ye({shortcut:"ArrowRight",isActive:t=>t.exitMarksOnArrowPress})],it.prototype,"arrowRightShortcut",1);T([Ye({shortcut:"ArrowLeft",isActive:t=>t.exitMarksOnArrowPress})],it.prototype,"arrowLeftShortcut",1);T([Ye({shortcut:"Backspace",isActive:t=>t.exitMarksOnArrowPress})],it.prototype,"backspace",1);T([se()],it.prototype,"getNamedShortcut",1);it=T([G({defaultPriority:Y.Low,defaultOptions:{shortcuts:"default",undoInputRuleOnBackspace:!0,selectParentNodeOnEscape:!1,excludeBaseKeymap:!1,exitMarksOnArrowPress:!0},customHandlerKeys:["keymap"]})],it);function Kx(t){return yt(Ri(E),t)}function Vs({shortcut:t,map:e,options:n,store:r}){return P(t)?[Zo(t,e)]:me(t)?t.map(s=>Zo(s,e)):(t=t(n,r),Vs({shortcut:t,map:e,options:n,store:r}))}function Zo(t,e){return Kx(t)?e[t]:t}function qx(t,e){const n={};let r,s;me(t)?[s,r]=t:r=t;for(const[i,o]of fe(r))n[Zo(i,e)]=o;return Ii(s)?n:[s,n]}var Nh={[E.Copy]:"Mod-c",[E.Cut]:"Mod-x",[E.Paste]:"Mod-v",[E.PastePlain]:"Mod-Shift-v",[E.SelectAll]:"Mod-a",[E.Undo]:"Mod-z",[E.Redo]:st.isMac?"Shift-Mod-z":"Mod-y",[E.Bold]:"Mod-b",[E.Italic]:"Mod-i",[E.Underline]:"Mod-u",[E.Strike]:"Mod-d",[E.Code]:"Mod-`",[E.Paragraph]:"Mod-Shift-0",[E.H1]:"Mod-Shift-1",[E.H2]:"Mod-Shift-2",[E.H3]:"Mod-Shift-3",[E.H4]:"Mod-Shift-4",[E.H5]:"Mod-Shift-5",[E.H6]:"Mod-Shift-6",[E.TaskList]:"Mod-Shift-7",[E.BulletList]:"Mod-Shift-8",[E.OrderedList]:"Mod-Shift-9",[E.Quote]:"Mod->",[E.Divider]:"Mod-Shift-|",[E.Codeblock]:"Mod-Shift-~",[E.ClearFormatting]:"Mod-Shift-C",[E.Superscript]:"Mod-.",[E.Subscript]:"Mod-,",[E.LeftAlignment]:"Mod-Shift-L",[E.CenterAlignment]:"Mod-Shift-E",[E.RightAlignment]:"Mod-Shift-R",[E.JustifyAlignment]:"Mod-Shift-J",[E.InsertLink]:"Mod-k",[E.Find]:"Mod-f",[E.FindBackwards]:"Mod-Shift-f",[E.FindReplace]:"Mod-Shift-H",[E.AddFootnote]:"Mod-Alt-f",[E.AddComment]:"Mod-Alt-m",[E.ContextMenu]:"Mod-Shift-\\",[E.IncreaseFontSize]:"Mod-Shift-.",[E.DecreaseFontSize]:"Mod-Shift-,",[E.IncreaseIndent]:"Tab",[E.DecreaseIndent]:"Shift-Tab",[E.Shortcuts]:"Mod-/",[E.Format]:st.isMac?"Alt-Shift-f":"Shift-Ctrl-f"},Jx={...Nh,[E.Strike]:"Mod-Shift-S",[E.Code]:"Mod-Shift-M",[E.Paragraph]:"Mod-Alt-0",[E.H1]:"Mod-Alt-1",[E.H2]:"Mod-Alt-2",[E.H3]:"Mod-Alt-3",[E.H4]:"Mod-Alt-4",[E.H5]:"Mod-Alt-5",[E.H6]:"Mod-Alt-6",[E.OrderedList]:"Mod-Alt-7",[E.BulletList]:"Mod-Alt-8",[E.Quote]:"Mod-Alt-9",[E.ClearFormatting]:"Mod-\\",[E.IncreaseIndent]:"Mod-[",[E.DecreaseIndent]:"Mod-]"},Gx={default:Nh,googleDoc:Jx},Xx=class extends te{get name(){return"nodeViews"}createPlugin(){const t=[],e=M();for(const n of this.store.extensions){if(!n.createNodeViews)continue;const r=n.createNodeViews();t.unshift(ee(r)?{[n.name]:r}:r)}t.unshift(this.store.managerSettings.nodeViews??{});for(const n of t)Object.assign(e,n);return{props:{nodeViews:e}}}},Yx=class extends te{get name(){return"pasteRules"}createExternalPlugins(){return[this.generatePasteRulesPlugin()]}generatePasteRulesPlugin(){var t,e;const n=[];for(const r of this.store.extensions){if((t=this.store.managerSettings.exclude)!=null&&t.pasteRules||!r.createPasteRules||(e=r.options.exclude)!=null&&e.pasteRules)continue;const s=r.createPasteRules(),i=me(s)?s:[s];n.push(...i)}return yx(n)}},Qo=class extends te{constructor(){super(...arguments),this.plugins=[],this.managerPlugins=[],this.applyStateHandlers=[],this.initStateHandlers=[],this.appendTransactionHandlers=[],this.pluginKeys=M(),this.stateGetters=new Map,this.getPluginStateCreator=t=>e=>t.getState(e??this.store.getState()),this.getStateByName=t=>{const e=this.stateGetters.get(t);return R(e,{message:"No plugin exists for the requested extension name."}),e()}}get name(){return"plugins"}onCreate(){const{setStoreKey:t,setExtensionStore:e,managerSettings:n,extensions:r}=this.store;this.updateExtensionStore();const{plugins:s=[]}=n;this.updatePlugins(s,this.managerPlugins);for(const i of r)i.onApplyState&&this.applyStateHandlers.push(i.onApplyState.bind(i)),i.onInitState&&this.initStateHandlers.push(i.onInitState.bind(i)),i.onAppendTransaction&&this.appendTransactionHandlers.push(i.onAppendTransaction.bind(i)),this.extractExtensionPlugins(i);this.managerPlugins=s,this.store.setStoreKey("plugins",this.plugins),t("pluginKeys",this.pluginKeys),t("getPluginState",this.getStateByName),e("getPluginState",this.getStateByName)}createPlugin(){return{appendTransaction:(t,e,n)=>{const r=n.tr,s={previousState:e,tr:r,transactions:t,state:n};for(const i of this.appendTransactionHandlers)i(s);return this.options.appendTransaction(s),r.docChanged||r.steps.length>0||r.selectionSet||r.storedMarksSet?r:void 0},state:{init:(t,e)=>{for(const n of this.initStateHandlers)n(e)},apply:(t,e,n,r)=>{const s={previousState:n,state:r,tr:t};for(const i of this.applyStateHandlers)i(s);this.options.applyState(s)}}}}extractExtensionPlugins(t){var e,n;if(!(!t.createPlugin&&!t.createExternalPlugins||(e=this.store.managerSettings.exclude)!=null&&e.plugins||(n=t.options.exclude)!=null&&n.plugins)){if(t.createPlugin){const s=new br(t.name);this.pluginKeys[t.name]=s;const i=this.getPluginStateCreator(s);t.pluginKey=s,t.getPluginState=i,this.stateGetters.set(t.name,i),this.stateGetters.set(t.constructor,i);const o={...t.createPlugin(),key:s},a=new dn(o);this.updatePlugins([a],t.plugin?[t.plugin]:void 0),t.plugin=a}if(t.createExternalPlugins){const s=t.createExternalPlugins();this.updatePlugins(s,t.externalPlugins),t.externalPlugins=s}}}updatePlugins(t,e){if(!e||nn(e)){this.plugins=[...this.plugins,...t];return}if(t.length!==e.length){this.plugins=[...this.plugins.filter(r=>!e.includes(r)),...t];return}const n=new Map;for(const[r,s]of t.entries())n.set(re(e,r),s);this.plugins=this.plugins.map(r=>e.includes(r)?n.get(r):r)}updateExtensionStore(){const{setExtensionStore:t}=this.store;t("updatePlugins",this.updatePlugins.bind(this)),t("dispatchPluginUpdate",this.dispatchPluginUpdate.bind(this)),t("updateExtensionPlugins",this.updateExtensionPlugins.bind(this))}updateExtensionPlugins(t){const e=Mh(t)?t:Lx(t)?this.store.manager.getExtension(t):this.store.extensions.find(n=>n.name===t);R(e,{code:b.INVALID_MANAGER_EXTENSION,message:`The extension ${t} does not exist within the editor.`}),this.extractExtensionPlugins(e),this.store.setStoreKey("plugins",this.plugins),this.dispatchPluginUpdate()}dispatchPluginUpdate(){R(this.store.phase>=Pe.EditorView,{code:b.MANAGER_PHASE_ERROR,message:"`dispatchPluginUpdate` should only be called after the view has been added to the manager."});const{view:t,updateState:e}=this.store,n=t.state.reconfigure({plugins:this.plugins});e(n)}};Qo=T([G({defaultPriority:Y.Highest,handlerKeys:["applyState","appendTransaction"]})],Qo);var ea=class extends te{constructor(){super(...arguments),this.dynamicAttributes={marks:M(),nodes:M()}}get name(){return"schema"}onCreate(){const{managerSettings:t,tags:e,markNames:n,nodeNames:r,extensions:s}=this.store,{defaultBlockNode:i,disableExtraAttributes:o,nodeOverride:a,markOverride:l}=t,c=p=>!!(p&&e[j.Block].includes(p));if(t.schema){const{nodes:p,marks:m}=ib(t.schema);this.addSchema(t.schema,p,m);return}const u=c(i)?{doc:M(),[i]:M()}:M(),d=M(),h=Zx({settings:t,gatheredSchemaAttributes:this.gatherExtraAttributes(s),nodeNames:r,markNames:n,tags:e});for(const p of s){h[p.name]={...h[p.name],...p.options.extraAttributes};const m=o===!0||p.options.disableExtraAttributes===!0||p.constructor.disableExtraAttributes===!0;if(_s(p)){const{spec:g,dynamic:y}=_c({createExtensionSpec:(k,D)=>p.createNodeSpec(k,D),extraAttributes:re(h,p.name),override:{...a,...p.options.nodeOverride},ignoreExtraAttributes:m,name:p.constructorName,tags:p.tags});p.spec=g,u[p.name]=g,Object.keys(y).length>0&&(this.dynamicAttributes.nodes[p.name]=y)}if(qi(p)){const{spec:g,dynamic:y}=_c({createExtensionSpec:(k,D)=>p.createMarkSpec(k,D),extraAttributes:re(h,p.name),override:{...l,...p.options.markOverride},ignoreExtraAttributes:m,name:p.constructorName,tags:p.tags??[]});p.spec=g,d[p.name]=g,Object.keys(y).length>0&&(this.dynamicAttributes.marks[p.name]=y)}}const f=new Hp({nodes:u,marks:d,topNode:"doc"});this.addSchema(f,u,d)}createPlugin(){return{appendTransaction:(t,e,n)=>{const{tr:r}=n;return!t.some(i=>i.docChanged)||Object.keys(this.dynamicAttributes.nodes).length===0&&Object.keys(this.dynamicAttributes.marks).length===0?null:(r.doc.descendants((i,o)=>(this.checkAndUpdateDynamicNodes(i,o,r),this.checkAndUpdateDynamicMarks(i,o,r),!0)),r.steps.length>0?r:null)}}}addSchema(t,e,n){this.store.setStoreKey("nodes",e),this.store.setStoreKey("marks",n),this.store.setStoreKey("schema",t),this.store.setExtensionStore("schema",t),this.store.setStoreKey("defaultBlockNode",Vi(t).name);for(const r of Object.values(t.nodes))if(r.name!=="doc"&&(r.isBlock||r.isTextblock))break}checkAndUpdateDynamicNodes(t,e,n){for(const[r,s]of fe(this.dynamicAttributes.nodes))if(t.type.name===r)for(const[i,o]of fe(s)){if(!tn(t.attrs[i]))continue;const a={...t.attrs,[i]:o(t)};n.setNodeMarkup(e,void 0,a),bc(n)}}checkAndUpdateDynamicMarks(t,e,n){for(const[r,s]of fe(this.dynamicAttributes.marks)){const i=re(this.store.schema.marks,r),o=t.marks.find(a=>a.type.name===r);if(o)for(const[a,l]of fe(s)){if(!tn(o.attrs[a]))continue;const c=Bn(n.doc.resolve(e),i);if(!c)continue;const{from:u,to:d}=c,h=i.create({...o.attrs,[a]:l(o)});n.removeMark(u,d,i).addMark(u,d,h),bc(n)}}}gatherExtraAttributes(t){const e=[];for(const n of t)n.createSchemaAttributes&&e.push(...n.createSchemaAttributes());return e}};ea=T([G({defaultPriority:Y.Highest})],ea);function Zx(t){const{settings:e,gatheredSchemaAttributes:n,nodeNames:r,markNames:s,tags:i}=t,o=M();if(e.disableExtraAttributes)return o;const a=[...n,...e.extraAttributes??[]];for(const l of a??[]){const c=eb({identifiers:l.identifiers,nodeNames:r,markNames:s,tags:i});for(const u of c){const d=o[u]??{};o[u]={...d,...l.attributes}}}return o}function Qx(t){return Ln(t)&&me(t.tags)}function eb(t){const{identifiers:e,nodeNames:n,markNames:r,tags:s}=t;if(e==="nodes")return n;if(e==="marks")return r;if(e==="all")return[...n,...r];if(me(e))return e;R(Qx(e),{code:b.EXTENSION_EXTRA_ATTRIBUTES,message:"Invalid value passed as an identifier when creating `extraAttributes`."});const{tags:i=[],names:o=[],behavior:a="any",excludeNames:l,excludeTags:c,type:u}=e,d=new Set,h=u==="mark"?r:u==="node"?n:[...r,...n],f=m=>h.includes(m)&&!(l!=null&&l.includes(m));for(const m of o)f(m)&&d.add(m);const p=new Map;for(const m of i)if(!(c!=null&&c.includes(m)))for(const g of s[m]){if(!f(g))continue;if(a==="any"){d.add(g);continue}const y=p.get(g)??new Set;y.add(m),p.set(g,y)}for(const[m,g]of p)g.size===i.length&&d.add(m);return[...d]}function _c(t){var e;const{createExtensionSpec:n,extraAttributes:r,ignoreExtraAttributes:s,name:i,tags:o,override:a}=t,l=M();function c(g,y){l[g]=y}let u=!1;function d(){u=!0}const h=tb(r,s,d,c),f=nb(r,s),p=rb(r,s),m=n({defaults:h,parse:f,dom:p},a);return R(s||u,{code:b.EXTENSION_SPEC,message:`When creating a node specification you must call the 'defaults', and parse, and 'dom' methods. To avoid this error you can set the static property 'disableExtraAttributes' of '${i}' to 'true'.`}),m.group=[...((e=m.group)==null?void 0:e.split(" "))??[],...o].join(" ")||void 0,{spec:m,dynamic:l}}function La(t){return P(t)||ee(t)?{default:t}:(R(t,{message:`${Lu(t)} is not supported`,code:b.EXTENSION_EXTRA_ATTRIBUTES}),t)}function tb(t,e,n,r){return()=>{n();const s=M();if(e)return s;for(const[i,o]of fe(t)){let l=La(o).default;ee(l)&&(r(i,l),l=null),s[i]=l===void 0?{}:{default:l}}return s}}function nb(t,e){return n=>{const r=M();if(e)return r;for(const[s,i]of fe(t)){const{parseDOM:o,...a}=La(i);if($e(n)){if(tn(o)){r[s]=n.getAttribute(s)??a.default;continue}if(ee(o)){r[s]=o(n)??a.default;continue}r[s]=n.getAttribute(o)??a.default}}return r}}function rb(t,e){return n=>{const r=M();if(e)return r;function s(i,o){if(i){if(P(i)){r[o]=i;return}if(me(i)){const[a,l]=i;r[a]=l??n.attrs[o];return}for(const[a,l]of fe(i))r[a]=l}}for(const[i,o]of fe(t)){const{toDOM:a,parseDOM:l}=La(o);if(tn(a)){const c=P(l)?l:i;r[c]=n.attrs[i];continue}if(ee(a)){s(a(n.attrs,sb(n)),i);continue}s(a,i)}return r}}function sb(t){return $i(t)?{node:t}:y0(t)?{mark:t}:{}}function ib(t){const e=M(),n=M();for(const[r,s]of Object.entries(t.nodes))e[r]=s.spec;for(const[r,s]of Object.entries(t.marks))n[r]=s.spec;return{nodes:e,marks:n}}var fr=class extends te{constructor(){super(...arguments),this.onAddCustomHandler=({suggester:t})=>{var e;if(!(!t||(e=this.store.managerSettings.exclude)!=null&&e.suggesters))return xc(this.store.getState(),t)}}get name(){return"suggest"}onCreate(){this.store.setExtensionStore("addSuggester",t=>xc(this.store.getState(),t)),this.store.setExtensionStore("removeSuggester",t=>i0(this.store.getState(),t))}createExternalPlugins(){var t,e;const n=[];for(const r of this.store.extensions){if((t=this.store.managerSettings.exclude)!=null&&t.suggesters)break;if(!r.createSuggesters||(e=r.options.exclude)!=null&&e.suggesters)continue;const s=r.createSuggesters(),i=me(s)?s:[s];n.push(...i)}return[o0(...n)]}getSuggestState(t){return Ma(t??this.store.getState())}getSuggestMethods(){const{addIgnored:t,clearIgnored:e,removeIgnored:n,ignoreNextExit:r,setMarkRemoved:s,findMatchAtPosition:i,findNextTextSelection:o,setLastChangeFromAppend:a}=this.getSuggestState();return{addIgnored:t,clearIgnored:e,removeIgnored:n,ignoreNextExit:r,setMarkRemoved:s,findMatchAtPosition:i,findNextTextSelection:o,setLastChangeFromAppend:a}}isSuggesterActive(t){var e;return yt(me(t)?t:[t],(e=this.getSuggestState().match)==null?void 0:e.suggester.name)}};T([se()],fr.prototype,"getSuggestState",1);T([se()],fr.prototype,"getSuggestMethods",1);T([se()],fr.prototype,"isSuggesterActive",1);fr=T([G({customHandlerKeys:["suggester"]})],fr);var ta=class extends te{constructor(){super(...arguments),this.allTags=M(),this.plainTags=M(),this.markTags=M(),this.nodeTags=M()}get name(){return"tags"}onCreate(){this.resetTags();for(const t of this.store.extensions)this.updateTagForExtension(t);this.store.setStoreKey("tags",this.allTags),this.store.setExtensionStore("tags",this.allTags),this.store.setStoreKey("plainTags",this.plainTags),this.store.setExtensionStore("plainTags",this.plainTags),this.store.setStoreKey("markTags",this.markTags),this.store.setExtensionStore("markTags",this.markTags),this.store.setStoreKey("nodeTags",this.nodeTags),this.store.setExtensionStore("nodeTags",this.nodeTags)}resetTags(){const t=M(),e=M(),n=M(),r=M();for(const s of Ri(j))t[s]=[],e[s]=[],n[s]=[],r[s]=[];this.allTags=t,this.plainTags=e,this.markTags=n,this.nodeTags=r}updateTagForExtension(t){var e,n;const r=new Set([...t.tags??[],...((e=t.createTags)==null?void 0:e.call(t))??[],...t.options.extraTags??[],...((n=this.store.managerSettings.extraTags)==null?void 0:n[t.name])??[]]);for(const s of r)R(ob(s),{code:b.EXTENSION,message:`The tag provided by the extension: ${t.constructorName} is not supported by the editor. To add custom tags you can use the 'mutateTag' method.`}),this.allTags[s].push(t.name),_h(t)&&this.plainTags[s].push(t.name),qi(t)&&this.markTags[s].push(t.name),_s(t)&&this.nodeTags[s].push(t.name);t.tags=[...r]}};ta=T([G({defaultPriority:Y.Highest})],ta);function ob(t){return yt(Ri(j),t)}var ab=new br("remirrorFilePlaceholderPlugin");function lb(){const t=new dn({key:ab,state:{init(){return{set:W.empty,payloads:new Map}},apply(e,{set:n,payloads:r}){n=n.map(e.mapping,e.doc);const s=e.getMeta(t);if(s)if(s.type===0){const i=document.createElement("placeholder"),o=Q.widget(s.pos,i,{id:s.id});n=n.add(e.doc,[o]),r.set(s.id,s.payload)}else s.type===1&&(n=n.remove(n.find(void 0,void 0,i=>i.id===s.id)),r.delete(s.id));return{set:n,payloads:r}}},props:{decorations(e){var n;return((n=t.getState(e))==null?void 0:n.set)??null}}});return t}var cb=class extends te{get name(){return"upload"}createExternalPlugins(){return[lb()]}};function ub(t={}){t={...{exitMarksOnArrowPress:it.defaultOptions.exitMarksOnArrowPress,excludeBaseKeymap:it.defaultOptions.excludeBaseKeymap,selectParentNodeOnEscape:it.defaultOptions.selectParentNodeOnEscape,undoInputRuleOnBackspace:it.defaultOptions.undoInputRuleOnBackspace,persistentSelectionClass:ut.defaultOptions.persistentSelectionClass},...t};const n=To(t,["excludeBaseKeymap","selectParentNodeOnEscape","undoInputRuleOnBackspace"]),r=To(t,["persistentSelectionClass"]);return[new ta,new ea,new Bx,new Qo,new Yo,new Yx,new Xx,new fr,new H,new Xe,new it(n),new Xo,new cb,new ut(r)]}var Nc=class extends te{get name(){return"meta"}onCreate(){if(this.store.setStoreKey("getCommandMeta",this.getCommandMeta.bind(this)),!!this.options.capture)for(const t of this.store.extensions)this.captureCommands(t),this.captureKeybindings(t)}createPlugin(){return{}}captureCommands(t){const e=t.decoratedCommands??{},n=t.createCommands;for(const r of Object.keys(e)){const s=t[r];t[r]=(...i)=>o=>{var a;const l=s(...i)(o);return o.dispatch&&l&&this.setCommandMeta(o.tr,{type:"command",chain:o.dispatch!==((a=o.view)==null?void 0:a.dispatch),name:r,extension:t.name,decorated:!0}),l}}n&&(t.createCommands=()=>{const r=n();for(const[s,i]of Object.entries(r))r[s]=(...o)=>a=>{var l;const c=i(...o)(a);return a.dispatch&&c&&this.setCommandMeta(a.tr,{type:"command",chain:a.dispatch!==((l=a.view)==null?void 0:l.dispatch),name:s,extension:t.name,decorated:!1}),c};return r})}captureKeybindings(t){}getCommandMeta(t){return t.getMeta(this.pluginKey)??[]}setCommandMeta(t,e){const n=this.getCommandMeta(t);t.setMeta(this.pluginKey,[...n,e])}};Nc=T([G({defaultOptions:{capture:st.isDevelopment},staticKeys:["capture"],defaultPriority:Y.Highest})],Nc);var Hs,_r,Us,Kn,Vt,js,Ws,db=class{constructor(t){ue(this,Hs,si()),ue(this,_r,void 0),ue(this,Us,void 0),ue(this,Kn,!0),ue(this,Vt,ji()),ue(this,js,void 0),ue(this,Ws,void 0),this.getState=()=>this.view.state??this.initialEditorState,this.getPreviousState=()=>this.previousState,this.dispatchTransaction=i=>{var o,a;R(!this.manager.destroyed,{code:b.MANAGER_PHASE_ERROR,message:"A transaction was dispatched to a manager that has already been destroyed. Please check your set up, or open an issue."}),i=((a=(o=this.props).onDispatchTransaction)==null?void 0:a.call(o,i,this.getState()))??i;const l=this.getState(),{state:c,transactions:u}=l.applyTransaction(i);ye(this,Us,l),this.updateState({state:c,tr:i,transactions:u});const d=this.manager.store.getForcedUpdates(i);nn(d)||this.updateViewProps(...d)},this.onChange=(i=M())=>{var o,a;const l=this.eventListenerProps(i);v(this,Kn)&&ye(this,Kn,!1),(a=(o=this.props).onChange)==null||a.call(o,l)},this.onBlur=i=>{var o,a;const l=this.eventListenerProps();(a=(o=this.props).onBlur)==null||a.call(o,l,i),v(this,Vt).emit("blur",l,i)},this.onFocus=i=>{var o,a;const l=this.eventListenerProps();(a=(o=this.props).onFocus)==null||a.call(o,l,i),v(this,Vt).emit("focus",l,i)},this.setContent=(i,{triggerChange:o=!1}={})=>{const{doc:a}=this.manager.createState({content:i}),l=this.getState(),{state:c}=this.getState().applyTransaction(l.tr.replaceRangeWith(0,l.doc.nodeSize-2,a));if(o)return this.updateState({state:c,triggerChange:o});this.view.updateState(c)},this.clearContent=({triggerChange:i=!1}={})=>{this.setContent(this.manager.createEmptyDoc(),{triggerChange:i})},this.createStateFromContent=(i,o)=>this.manager.createState({content:i,selection:o}),this.focus=i=>{this.manager.store.commands.focus(i)},this.blur=i=>{this.manager.store.commands.blur(i)};const{getProps:e,initialEditorState:n,element:r}=t;if(ye(this,_r,e),ye(this,Ws,n),this.manager.attachFramework(this,this.updateListener.bind(this)),this.manager.view)return;const s=this.createView(n,r);this.manager.addView(s)}get addHandler(){return v(this,js)??ye(this,js,v(this,Vt).on.bind(v(this,Vt)))}get updatableViewProps(){return{attributes:()=>this.getAttributes(),editable:()=>this.props.editable??!0}}get firstRender(){return v(this,Kn)}get props(){return v(this,_r).call(this)}get previousState(){return this.previousStateOverride??v(this,Us)??this.initialEditorState}get manager(){return this.props.manager}get view(){return this.manager.view}get uid(){return v(this,Hs)}get initialEditorState(){return v(this,Ws)}updateListener(t){const{state:e,tr:n}=t;return v(this,Vt).emit("updated",this.eventListenerProps({state:e,tr:n}))}update(t){const{getProps:e}=t;return ye(this,_r,e),this}updateViewProps(...t){const e=To(this.updatableViewProps,t);this.view.setProps({...this.view.props,...e})}getAttributes(t){var e;const{attributes:n,autoFocus:r,classNames:s=[],label:i,editable:o}=this.props,a=(e=this.manager.store)==null?void 0:e.attributes,l=ee(n)?n(this.eventListenerProps()):n;let c={};(r||Ge(r))&&(c=t?{autoFocus:!0}:{autofocus:"true"});const u=is(Go(t&&"Prosemirror","remirror-editor",a==null?void 0:a.class,...s).split(" ")).join(" "),d={role:"textbox",...c,"aria-multiline":"true",...o??!0?{}:{"aria-readonly":"true"},"aria-label":i??"",...a,class:u};return pp({...d,...l})}addFocusListeners(){this.view.dom.addEventListener("blur",this.onBlur),this.view.dom.addEventListener("focus",this.onFocus)}removeFocusListeners(){this.view.dom.removeEventListener("blur",this.onBlur),this.view.dom.removeEventListener("focus",this.onFocus)}destroy(){v(this,Vt).emit("destroy"),this.view&&this.removeFocusListeners()}eventListenerProps(t=M()){const{state:e,tr:n,transactions:r}=t;return{tr:n,transactions:r,internalUpdate:!n,view:this.view,firstRender:v(this,Kn),state:e??this.getState(),createStateFromContent:this.createStateFromContent,previousState:this.previousState,helpers:this.manager.store.helpers}}get baseOutput(){return{manager:this.manager,...this.manager.store,addHandler:this.addHandler,focus:this.focus,blur:this.blur,uid:v(this,Hs),view:this.view,getState:this.getState,getPreviousState:this.getPreviousState,getExtension:this.manager.getExtension.bind(this.manager),hasExtension:this.manager.hasExtension.bind(this.manager),clearContent:this.clearContent,setContent:this.setContent}}};Hs=new WeakMap;_r=new WeakMap;Us=new WeakMap;Kn=new WeakMap;Vt=new WeakMap;js=new WeakMap;Ws=new WeakMap;function hb(t,e){const n=[],r=new WeakMap,s=[],i=new WeakMap;let o=[];const a={duplicateMap:i,parentExtensions:s,gatheredExtensions:o,settings:e};for(const d of t)Ah(a,{extension:d});o=ir(o,(d,h)=>h.priority-d.priority);const l=new WeakSet,c=new Set;for(const d of o){const h=d.constructor,f=d.name,p=i.get(h);R(p,{message:`No entries were found for the ExtensionConstructor ${d.name}`,code:b.INTERNAL}),!(l.has(h)||c.has(f))&&(l.add(h),c.add(f),n.push(d),r.set(h,d),p.forEach(m=>m==null?void 0:m.replaceChildExtension(h,d)))}const u=[];for(const d of n)fb({extension:d,found:l,missing:u});return R(nn(u),{code:b.MISSING_REQUIRED_EXTENSION,message:u.map(({Constructor:d,extension:h})=>`The extension '${h.name}' requires '${d.name} in order to run correctly.`).join(`
|
|
53
|
+
`)}),{extensions:n,extensionMap:r}}function Ah(t,e){var n;const{gatheredExtensions:r,duplicateMap:s,parentExtensions:i,settings:o}=t,{extension:a,parentExtension:l}=e;let{names:c=[]}=e;R(Mh(a),{code:b.INVALID_MANAGER_EXTENSION,message:`An invalid extension: ${a} was provided to the [[\`RemirrorManager\`]].`});const u=a.extensions;if(a.setPriority((n=o.priority)==null?void 0:n[a.name]),r.push(a),pb({duplicateMap:s,extension:a,parentExtension:l}),u.length!==0){if(c.includes(a.name)){`${c.join(" > ")}${a.name}`;return}c=[...c,a.name],i.push(a);for(const d of u)Ah(t,{names:c,extension:d,parentExtension:a})}}function fb(t){const{extension:e,found:n,missing:r}=t;if(e.requiredExtensions)for(const s of e.requiredExtensions??[])n.has(s)||r.push({Constructor:s,extension:e})}function pb(t){const{duplicateMap:e,extension:n,parentExtension:r}=t,s=n.constructor,i=e.get(s),o=r?[r]:[];e.set(s,i?[...i,...o]:o)}function mb(t){var e,n,r,s;const{extension:i,nodeNames:o,markNames:a,plainNames:l,store:c,handlers:u}=t;i.setStore(c);const d=(e=i.onCreate)==null?void 0:e.bind(i),h=(n=i.onView)==null?void 0:n.bind(i),f=(r=i.onStateUpdate)==null?void 0:r.bind(i),p=(s=i.onDestroy)==null?void 0:s.bind(i);d&&u.create.push(d),h&&u.view.push(h),f&&u.update.push(f),p&&u.destroy.push(p),qi(i)&&a.push(i.name),_s(i)&&i.name!=="doc"&&o.push(i.name),_h(i)&&l.push(i.name)}var Ht,Nr,Qe,vt,Ar,Ue,pn,Rr,mn,Ir,gn,et,Dr,Ks=class{constructor(t,e={}){ue(this,Ht,void 0),ue(this,Nr,M()),ue(this,Qe,M()),ue(this,vt,void 0),ue(this,Ar,void 0),ue(this,Ue,Pe.None),ue(this,pn,void 0),ue(this,Rr,!0),ue(this,mn,{create:[],view:[],update:[],destroy:[]}),ue(this,Ir,[]),ue(this,gn,ji()),ue(this,et,void 0),ue(this,Dr,void 0),this.getState=()=>{var s;return v(this,Ue)>=Pe.EditorView?this.view.state:(R(v(this,et),{code:b.MANAGER_PHASE_ERROR,message:"`getState` can only be called after the `Framework` or the `EditorView` has been added to the manager`. Check your plugins to make sure that the decorations callback uses the state argument."}),(s=v(this,et))==null?void 0:s.initialEditorState)},this.updateState=s=>{const i=this.getState();this.view.updateState(s),this.onStateUpdate({previousState:i,state:s})};const{extensions:n,extensionMap:r}=hb(t,e);ye(this,pn,e),ye(this,vt,bn(n)),ye(this,Ar,r),ye(this,Ht,this.createExtensionStore()),ye(this,Ue,Pe.Create),this.setupLifecycleHandlers();for(const s of v(this,mn).create){const i=s();i&&v(this,Ir).push(i)}}static create(t,e={}){return new Ks([...Fu(t),...ub(e.builtin)],e)}get[It](){return xe.Manager}get destroyed(){return v(this,Ue)===Pe.Destroy}get mounted(){return v(this,Ue)>=Pe.EditorView&&v(this,Ue)<Pe.Destroy}get output(){var t;return(t=v(this,et))==null?void 0:t.frameworkOutput}get frameworkAttached(){return!!v(this,et)}get extensions(){return v(this,vt)}get stringHandlers(){return v(this,Nr)}get store(){return bn(v(this,Qe))}get extensionStore(){return bn(v(this,Ht))}get tr(){return this.getExtension(H).transaction}get nodes(){return v(this,Qe).nodes}get marks(){return v(this,Qe).marks}get schema(){return v(this,Qe).schema}get extensionTags(){return v(this,Qe).tags}get view(){return v(this,Qe).view}get settings(){return v(this,pn)}get document(){return v(this,pn).document??Hi()}setupLifecycleHandlers(){const t=v(this,Ht),e=v(this,mn),n=[],r=[],s=[];t.nodeNames=n,t.markNames=r,t.plainNames=s;for(const i of v(this,vt))mb({extension:i,nodeNames:n,markNames:r,plainNames:s,handlers:e,store:t})}setStringHandler(t,e){v(this,Nr)[t]=e}setStoreKey(t,e){v(this,Qe)[t]=e}getStoreKey(t){const e=v(this,Qe)[t];return R(!tn(e),{code:b.MANAGER_PHASE_ERROR,message:"`getStoreKey` should not be called before the values are available."}),e}setExtensionStore(t,e){R(v(this,Ue)<=Pe.EditorView,{code:b.MANAGER_PHASE_ERROR,message:"`setExtensionStore` should only be called during the `onCreate` lifecycle hook. Make sure to only call it within the returned methods."}),v(this,Ht)[t]=e}createExtensionStore(){const t=M(),e=!0;let n,r;return Object.defineProperties(t,{extensions:{get:()=>v(this,vt),enumerable:e},phase:{get:()=>v(this,Ue),enumerable:e},view:{get:()=>this.view,enumerable:e},managerSettings:{get:()=>bn(v(this,pn)),enumerable:e},getState:{value:this.getState,enumerable:e},updateState:{value:this.updateState,enumerable:e},isMounted:{value:()=>this.mounted,enumerable:e},getExtension:{value:this.getExtension.bind(this),enumerable:e},manager:{get:()=>this,enumerable:e},document:{get:()=>this.document,enumerable:e},stringHandlers:{get:()=>v(this,Nr),enumerable:e},currentState:{get:()=>n??(n=this.getState()),set:s=>{n=s},enumerable:e},previousState:{get:()=>r,set:s=>{r=s},enumerable:e}}),t.getStoreKey=this.getStoreKey.bind(this),t.setStoreKey=this.setStoreKey.bind(this),t.setExtensionStore=this.setExtensionStore.bind(this),t.setStringHandler=this.setStringHandler.bind(this),t}addView(t){if(v(this,Ue)>=Pe.EditorView)return this;ye(this,Rr,!0),ye(this,Ue,Pe.EditorView),v(this,Qe).view=t;for(const e of v(this,mn).view){const n=e(t);n&&v(this,Ir).push(n)}return this}attachFramework(t,e){var n;v(this,et)!==t&&(v(this,et)&&(v(this,et).destroy(),(n=v(this,Dr))==null||n.call(this)),ye(this,et,t),ye(this,Dr,this.addHandler("stateUpdate",e)))}createEmptyDoc(){var t;const e=(t=this.schema.nodes.doc)==null?void 0:t.createAndFill();return R(e,{code:b.INVALID_CONTENT,message:"An empty node could not be created due to an invalid schema."}),e}createState(t={}){const{onError:e,defaultSelection:n="end"}=this.settings,{content:r=this.createEmptyDoc(),selection:s=n,stringHandler:i=this.settings.stringHandler}=t,{schema:o,plugins:a}=this.store,l=fh({stringHandler:P(i)?this.stringHandlers[i]:i,document:this.document,content:r,onError:e,schema:o,selection:s});return kn.create({schema:o,doc:l,plugins:a,selection:ct(s,l)})}addHandler(t,e){return v(this,gn).on(t,e)}onStateUpdate(t){const e=v(this,Rr);v(this,Ht).currentState=t.state,v(this,Ht).previousState=t.previousState,e&&(ye(this,Ue,Pe.Runtime),ye(this,Rr,!1));const n={...t,firstUpdate:e};for(const r of v(this,mn).update)r(n);v(this,gn).emit("stateUpdate",n)}getExtension(t){const e=v(this,Ar).get(t);return R(e,{code:b.INVALID_MANAGER_EXTENSION,message:`'${t.name}' doesn't exist within this manager. Make sure it is properly added before attempting to use it.`}),e}hasExtension(t){return!!v(this,Ar).get(t)}clone(){const t=v(this,vt).map(n=>n.clone(n.options)),e=Ks.create(()=>t,v(this,pn));return v(this,gn).emit("clone",e),e}recreate(t=[],e={}){const n=v(this,vt).map(s=>s.clone(s.initialOptions)),r=Ks.create(()=>[...n,...t],e);return v(this,gn).emit("recreate",r),r}destroy(){var t,e,n,r,s,i;ye(this,Ue,Pe.Destroy);for(const o of((t=this.view)==null?void 0:t.state.plugins)??[])(n=(e=o.getState(this.view.state))==null?void 0:e.destroy)==null||n.call(e);(r=v(this,et))==null||r.destroy(),(s=v(this,Dr))==null||s.call(this);for(const o of v(this,Ir))o();for(const o of v(this,mn).destroy)o();(i=this.view)==null||i.destroy(),v(this,gn).emit("destroy")}includes(t){const e=[],n=[];for(const r of v(this,vt))e.push(r.name,r.constructorName),n.push(r.constructor);return t.every(r=>P(r)?yt(e,r):yt(n,r))}},gb=Ks;Ht=new WeakMap;Nr=new WeakMap;Qe=new WeakMap;vt=new WeakMap;Ar=new WeakMap;Ue=new WeakMap;pn=new WeakMap;Rr=new WeakMap;mn=new WeakMap;Ir=new WeakMap;gn=new WeakMap;et=new WeakMap;Dr=new WeakMap;function yb(t,e){return!(!kr(t)||!Sr(t,xe.Manager))}function _t(t,e,n){return Math.min(Math.max(t,n),e)}class xb extends Error{constructor(e){super(`Failed to parse color: "${e}"`)}}var Pr=xb;function Ba(t){if(typeof t!="string")throw new Pr(t);if(t.trim().toLowerCase()==="transparent")return[0,0,0,0];let e=t.trim();e=Tb.test(t)?Sb(t):t;const n=wb.exec(e);if(n){const o=Array.from(n).slice(1);return[...o.slice(0,3).map(a=>parseInt(ps(a,2),16)),parseInt(ps(o[3]||"f",2),16)/255]}const r=vb.exec(e);if(r){const o=Array.from(r).slice(1);return[...o.slice(0,3).map(a=>parseInt(a,16)),parseInt(o[3]||"ff",16)/255]}const s=Eb.exec(e);if(s){const o=Array.from(s).slice(1);return[...o.slice(0,3).map(a=>parseInt(a,10)),parseFloat(o[3]||"1")]}const i=Cb.exec(e);if(i){const[o,a,l,c]=Array.from(i).slice(1).map(parseFloat);if(_t(0,100,a)!==a)throw new Pr(t);if(_t(0,100,l)!==l)throw new Pr(t);return[...Ob(o,a,l),Number.isNaN(c)?1:c]}throw new Pr(t)}function bb(t){let e=5381,n=t.length;for(;n;)e=e*33^t.charCodeAt(--n);return(e>>>0)%2341}const Ac=t=>parseInt(t.replace(/_/g,""),36),kb="1q29ehhb 1n09sgk7 1kl1ekf_ _yl4zsno 16z9eiv3 1p29lhp8 _bd9zg04 17u0____ _iw9zhe5 _to73___ _r45e31e _7l6g016 _jh8ouiv _zn3qba8 1jy4zshs 11u87k0u 1ro9yvyo 1aj3xael 1gz9zjz0 _3w8l4xo 1bf1ekf_ _ke3v___ _4rrkb__ 13j776yz _646mbhl _nrjr4__ _le6mbhl 1n37ehkb _m75f91n _qj3bzfz 1939yygw 11i5z6x8 _1k5f8xs 1509441m 15t5lwgf _ae2th1n _tg1ugcv 1lp1ugcv 16e14up_ _h55rw7n _ny9yavn _7a11xb_ 1ih442g9 _pv442g9 1mv16xof 14e6y7tu 1oo9zkds 17d1cisi _4v9y70f _y98m8kc 1019pq0v 12o9zda8 _348j4f4 1et50i2o _8epa8__ _ts6senj 1o350i2o 1mi9eiuo 1259yrp0 1ln80gnw _632xcoy 1cn9zldc _f29edu4 1n490c8q _9f9ziet 1b94vk74 _m49zkct 1kz6s73a 1eu9dtog _q58s1rz 1dy9sjiq __u89jo3 _aj5nkwg _ld89jo3 13h9z6wx _qa9z2ii _l119xgq _bs5arju 1hj4nwk9 1qt4nwk9 1ge6wau6 14j9zlcw 11p1edc_ _ms1zcxe _439shk6 _jt9y70f _754zsow 1la40eju _oq5p___ _x279qkz 1fa5r3rv _yd2d9ip _424tcku _8y1di2_ _zi2uabw _yy7rn9h 12yz980_ __39ljp6 1b59zg0x _n39zfzp 1fy9zest _b33k___ _hp9wq92 1il50hz4 _io472ub _lj9z3eo 19z9ykg0 _8t8iu3a 12b9bl4a 1ak5yw0o _896v4ku _tb8k8lv _s59zi6t _c09ze0p 1lg80oqn 1id9z8wb _238nba5 1kq6wgdi _154zssg _tn3zk49 _da9y6tc 1sg7cv4f _r12jvtt 1gq5fmkz 1cs9rvci _lp9jn1c _xw1tdnb 13f9zje6 16f6973h _vo7ir40 _bt5arjf _rc45e4t _hr4e100 10v4e100 _hc9zke2 _w91egv_ _sj2r1kk 13c87yx8 _vqpds__ _ni8ggk8 _tj9yqfb 1ia2j4r4 _7x9b10u 1fc9ld4j 1eq9zldr _5j9lhpx _ez9zl6o _md61fzm".split(" ").reduce((t,e)=>{const n=Ac(e.substring(0,3)),r=Ac(e.substring(3)).toString(16);let s="";for(let i=0;i<6-r.length;i++)s+="0";return t[n]=`${s}${r}`,t},{});function Sb(t){const e=t.toLowerCase().trim(),n=kb[bb(e)];if(!n)throw new Pr(t);return`#${n}`}const ps=(t,e)=>Array.from(Array(e)).map(()=>t).join(""),wb=new RegExp(`^#${ps("([a-f0-9])",3)}([a-f0-9])?$`,"i"),vb=new RegExp(`^#${ps("([a-f0-9]{2})",3)}([a-f0-9]{2})?$`,"i"),Eb=new RegExp(`^rgba?\\(\\s*(\\d+)\\s*${ps(",\\s*(\\d+)\\s*",2)}(?:,\\s*([\\d.]+))?\\s*\\)$`,"i"),Cb=/^hsla?\(\s*([\d.]+)\s*,\s*([\d.]+)%\s*,\s*([\d.]+)%(?:\s*,\s*([\d.]+))?\s*\)$/i,Tb=/^[a-z]+$/i,Rc=t=>Math.round(t*255),Ob=(t,e,n)=>{let r=n/100;if(e===0)return[r,r,r].map(Rc);const s=(t%360+360)%360/60,i=(1-Math.abs(2*r-1))*(e/100),o=i*(1-Math.abs(s%2-1));let a=0,l=0,c=0;s>=0&&s<1?(a=i,l=o):s>=1&&s<2?(a=o,l=i):s>=2&&s<3?(l=i,c=o):s>=3&&s<4?(l=o,c=i):s>=4&&s<5?(a=o,c=i):s>=5&&s<6&&(a=i,c=o);const u=r-i/2,d=a+u,h=l+u,f=c+u;return[d,h,f].map(Rc)};function Mb(t){const[e,n,r,s]=Ba(t).map((d,h)=>h===3?d:d/255),i=Math.max(e,n,r),o=Math.min(e,n,r),a=(i+o)/2;if(i===o)return[0,0,a,s];const l=i-o,c=a>.5?l/(2-i-o):l/(i+o);return[60*(e===i?(n-r)/l+(n<r?6:0):n===i?(r-e)/l+2:(e-n)/l+4),c,a,s]}function _b(t,e,n,r){return`hsla(${(t%360).toFixed()}, ${_t(0,100,e*100).toFixed()}%, ${_t(0,100,n*100).toFixed()}%, ${parseFloat(_t(0,1,r).toFixed(3))})`}function We(t,e){const[n,r,s,i]=Mb(t);return _b(n,r,s-e,i)}function Nb(t){if(t==="transparent")return 0;function e(i){const o=i/255;return o<=.04045?o/12.92:Math.pow((o+.055)/1.055,2.4)}const[n,r,s]=Ba(t);return .2126*e(n)+.7152*e(r)+.0722*e(s)}function Ab(t,e,n,r){return`rgba(${_t(0,255,t).toFixed()}, ${_t(0,255,e).toFixed()}, ${_t(0,255,n).toFixed()}, ${parseFloat(_t(0,1,r).toFixed(3))})`}function qs(t,e){return We(t,-e)}function ki(t,e){const[n,r,s,i]=Ba(t);return Ab(n,r,s,i-e)}function Rb(t){return Nb(t)>.179}function tr(t){return Rb(t)?"#000":"#fff"}const Ib="remirror-editor-wrapper",Db="remirror-button-active",Pb="remirror-button",Lb="remirror-composite",Bb="remirror-dialog",zb="remirror-dialog-backdrop",$b="remirror-form",Fb="remirror-form-message",Vb="remirror-form-label",Hb="remirror-form-group",Ub="remirror-group",jb="remirror-input",Wb="remirror-menu",Kb="remirror-menu-pane",qb="remirror-menu-pane-active",Jb="remirror-menu-dropdown-label",Gb="remirror-menu-pane-icon",Xb="remirror-menu-pane-label",Yb="remirror-menu-pane-shortcut",Zb="remirror-menu-button-left",Qb="remirror-menu-button-right",e1="remirror-menu-button-nested-left",t1="remirror-menu-button-nested-right",n1="remirror-menu-button",r1="remirror-menu-bar",s1="remirror-flex-column",i1="remirror-flex-row",o1="remirror-menu-item",a1="remirror-menu-item-row",l1="remirror-menu-item-column",c1="remirror-menu-item-checkbox",u1="remirror-menu-item-radio",d1="remirror-menu-group",h1="remirror-floating-popover",f1="remirror-popover",p1="remirror-animated-popover",m1="remirror-role",g1="remirror-separator",y1="remirror-tab",x1="remirror-tab-list",b1="remirror-tabbable",k1="remirror-toolbar",S1="remirror-tooltip",w1="remirror-table-size-editor",v1="remirror-table-size-editor-body",E1="remirror-table-size-editor-cell",C1="remirror-table-size-editor-cell-selected",T1="remirror-table-size-editor-footer",O1="remirror-color-picker",M1="remirror-color-picker-cell",_1="remirror-color-picker-cell-selected";var N1=Object.freeze({__proto__:null,ANIMATED_POPOVER:p1,BUTTON:Pb,BUTTON_ACTIVE:Db,COLOR_PICKER:O1,COLOR_PICKER_CELL:M1,COLOR_PICKER_CELL_SELECTED:_1,COMPOSITE:Lb,DIALOG:Bb,DIALOG_BACKDROP:zb,EDITOR_WRAPPER:Ib,FLEX_COLUMN:s1,FLEX_ROW:i1,FLOATING_POPOVER:h1,FORM:$b,FORM_GROUP:Hb,FORM_LABEL:Vb,FORM_MESSAGE:Fb,GROUP:Ub,INPUT:jb,MENU:Wb,MENU_BAR:r1,MENU_BUTTON:n1,MENU_BUTTON_LEFT:Zb,MENU_BUTTON_NESTED_LEFT:e1,MENU_BUTTON_NESTED_RIGHT:t1,MENU_BUTTON_RIGHT:Qb,MENU_DROPDOWN_LABEL:Jb,MENU_GROUP:d1,MENU_ITEM:o1,MENU_ITEM_CHECKBOX:c1,MENU_ITEM_COLUMN:l1,MENU_ITEM_RADIO:u1,MENU_ITEM_ROW:a1,MENU_PANE:Kb,MENU_PANE_ACTIVE:qb,MENU_PANE_ICON:Gb,MENU_PANE_LABEL:Xb,MENU_PANE_SHORTCUT:Yb,POPOVER:f1,ROLE:m1,SEPARATOR:g1,TAB:y1,TABBABLE:b1,TABLE_SIZE_EDITOR:w1,TABLE_SIZE_EDITOR_BODY:v1,TABLE_SIZE_EDITOR_CELL:E1,TABLE_SIZE_EDITOR_CELL_SELECTED:C1,TABLE_SIZE_EDITOR_FOOTER:T1,TAB_LIST:x1,TOOLBAR:k1,TOOLTIP:S1});const A1="remirror-list-item-with-custom-mark",R1="remirror-ul-list-content",I1="remirror-editor",D1="remirror-list-item-marker-container",P1="remirror-list-item-checkbox",L1="remirror-collapsible-list-item-closed",B1="remirror-collapsible-list-item-button",z1="remirror-list-spine";var on=Object.freeze({__proto__:null,COLLAPSIBLE_LIST_ITEM_BUTTON:B1,COLLAPSIBLE_LIST_ITEM_CLOSED:L1,EDITOR:I1,LIST_ITEM_CHECKBOX:P1,LIST_ITEM_MARKER_CONTAINER:D1,LIST_ITEM_WITH_CUSTOM_MARKER:A1,LIST_SPINE:z1,UL_LIST_CONTENT:R1});const $1="remirror-is-empty";var F1=Object.freeze({__proto__:null,IS_EMPTY:$1});const V1="remirror-editor",H1="remirror-positioner",U1="remirror-positioner-widget";var j1=Object.freeze({__proto__:null,EDITOR:V1,POSITIONER:H1,POSITIONER_WIDGET:U1});const tt={gray:["#f8f9fa","#f1f3f5","#e9ecef","#dee2e6","#ced4da","#adb5bd","#868e96","#495057","#343a40","#212529"],red:["#fff5f5","#ffe3e3","#ffc9c9","#ffa8a8","#ff8787","#ff6b6b","#fa5252","#f03e3e","#e03131","#c92a2a"],pink:["#fff0f6","#ffdeeb","#fcc2d7","#faa2c1","#f783ac","#f06595","#e64980","#d6336c","#c2255c","#a61e4d"],grape:["#f8f0fc","#f3d9fa","#eebefa","#e599f7","#da77f2","#cc5de8","#be4bdb","#ae3ec9","#9c36b5","#862e9c"],violet:["#f3f0ff","#e5dbff","#d0bfff","#b197fc","#9775fa","#845ef7","#7950f2","#7048e8","#6741d9","#5f3dc4"],indigo:["#edf2ff","#dbe4ff","#bac8ff","#91a7ff","#748ffc","#5c7cfa","#4c6ef5","#4263eb","#3b5bdb","#364fc7"],blue:["#e7f5ff","#d0ebff","#a5d8ff","#74c0fc","#4dabf7","#339af0","#228be6","#1c7ed6","#1971c2","#1864ab"],cyan:["#e3fafc","#c5f6fa","#99e9f2","#66d9e8","#3bc9db","#22b8cf","#15aabf","#1098ad","#0c8599","#0b7285"],teal:["#e6fcf5","#c3fae8","#96f2d7","#63e6be","#38d9a9","#20c997","#12b886","#0ca678","#099268","#087f5b"],green:["#ebfbee","#d3f9d8","#b2f2bb","#8ce99a","#69db7c","#51cf66","#40c057","#37b24d","#2f9e44","#2b8a3e"],lime:["#f4fce3","#e9fac8","#d8f5a2","#c0eb75","#a9e34b","#94d82d","#82c91e","#74b816","#66a80f","#5c940d"],yellow:["#fff9db","#fff3bf","#ffec99","#ffe066","#ffd43b","#fcc419","#fab005","#f59f00","#f08c00","#e67700"],orange:["#fff4e6","#ffe8cc","#ffd8a8","#ffc078","#ffa94d","#ff922b","#fd7e14","#f76707","#e8590c","#d9480f"]},Nt="#000000",za="#ffffff",W1="#252103",$a=ki(Nt,.75),Ji="#7963d2",Fa="#bcd263",K1="#fff",q1="#fff",Va=tt.gray[1],Ic="rgba(10,31,68,0.08)",Dc="rgba(10,31,68,0.10)",Pc="rgba(10,31,68,0.12)",J1=qs(ki(Nt,.1),.13),Ha={background:za,border:$a,foreground:Nt,muted:Va,primary:Ji,secondary:Fa,primaryText:K1,secondaryText:q1,text:W1,faded:J1},G1={...Ha,background:We(za,.15),border:We($a,.15),foreground:We(Nt,.15),muted:We(Va,.15),primary:We(Ji,.15),secondary:We(Fa,.15),get text(){return tr(this.background)},get primaryText(){return tr(this.primary)},get secondaryText(){return tr(this.secondary)}},X1={...Ha,background:We(za,.075),border:We($a,.075),foreground:We(Nt,.075),muted:We(Va,.075),primary:We(Ji,.075),secondary:We(Fa,.075),get text(){return tr(this.background)},get primaryText(){return tr(this.primary)},get secondaryText(){return tr(this.secondary)}};({...Ha,backdrop:ki(Nt,.1),outline:ki(Ji,.6),table:(qs(Nt,.8),qs(Nt,.4),tt.gray[3],tt.blue[7],tt.blue[1],tt.blue[5],tt.blue[7],qs(Nt,.4),tt.blue[5],tt.red[7],tt.red[1],tt.red[5])},`${Ic}`,`${Dc}`,`${Pc}`);var Y1=Object.defineProperty,Z1=Object.getOwnPropertyDescriptor,Ua=(t,e,n,r)=>{for(var s=r>1?void 0:r?Z1(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&Y1(e,n,s),s},Rh=(t,e,n)=>{if(!e.has(t))throw TypeError("Cannot "+n)},de=(t,e,n)=>(Rh(t,e,"read from private field"),n?n.call(t):e.get(t)),wt=(t,e,n)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,n)},$t=(t,e,n,r)=>(Rh(t,e,"write to private field"),e.set(t,n),n),Lr,Br,qn,zr,Js,$r,Fr,Vr,Hr,Gs=class{constructor(t){wt(this,Lr,ji()),wt(this,Br,[]),wt(this,qn,new Map),wt(this,zr,[]),wt(this,Js,!1),wt(this,$r,void 0),wt(this,Fr,void 0),wt(this,Vr,void 0),wt(this,Hr,void 0),this.addListener=(e,n)=>de(this,Lr).on(e,n),$t(this,$r,t),$t(this,Fr,t.getActive),$t(this,Hr,t.getPosition),$t(this,Vr,t.getID),this.hasChanged=t.hasChanged,this.events=t.events??["state","scroll"]}static create(t){return new Gs(t)}static fromPositioner(t,e){return Gs.create({...t.basePositioner,...e})}get basePositioner(){return{getActive:de(this,Fr),getPosition:de(this,Hr),hasChanged:this.hasChanged,events:this.events,getID:de(this,Vr)}}onActiveChanged(t){this.recentUpdate=t;const e=de(this,Fr).call(this,t);$t(this,Br,e),$t(this,qn,new Map),$t(this,Js,!1),$t(this,zr,[]);const n=[];for(const[r,s]of e.entries()){const i=this.getID(s,r);de(this,zr).push(i),n.push({setElement:o=>this.addProps({...t,data:s,element:o},r),id:i,data:s})}de(this,Lr).emit("update",n)}getID(t,e){var n;return((n=de(this,Vr))==null?void 0:n.call(this,t,e))??e.toString()}addProps(t,e){if(de(this,Js)||(de(this,qn).set(e,t),de(this,qn).size<de(this,Br).length))return;const n=[];for(const r of de(this,Br).keys()){const s=de(this,qn).get(r);R(s,{code:b.INTERNAL,message:"Something went wrong when retrieving the parameters"});const i=de(this,zr)[r];if(!i)return;n.push({position:de(this,Hr).call(this,s),element:s.element,id:i})}de(this,Lr).emit("done",n)}clone(t){return Gs.create({...de(this,$r),...ee(t)?t(de(this,$r)):t})}active(t){const e=ee(t)?t:()=>t;return this.clone(n=>({getActive:r=>n.getActive(r).filter(e)}))}},at=Gs;Lr=new WeakMap;Br=new WeakMap;qn=new WeakMap;zr=new WeakMap;Js=new WeakMap;$r=new WeakMap;Fr=new WeakMap;Vr=new WeakMap;Hr=new WeakMap;at.EMPTY=[];function Q1(t,e=Lh){const{key:n}=(t==null?void 0:t.getMeta(Ph))??{};return n===e}function Ih(t){const{tr:e,state:n,previousState:r}=t;return!r||e&&Q1(e)?!0:e?c0(e):!n.doc.eq(r.doc)||!n.selection.eq(r.selection)}function Dh(t,e,n={}){const r=e.getBoundingClientRect(),{accountForPadding:s=!1}=n;let i=0,o=0,a=0,l=0;if($e(e)&&s){const u=Number.parseFloat(zt(e,"padding-left").replace("px","")),d=Number.parseFloat(zt(e,"padding-right").replace("px","")),h=Number.parseFloat(zt(e,"padding-top").replace("px","")),f=Number.parseFloat(zt(e,"padding-bottom").replace("px","")),p=Number.parseFloat(zt(e,"border-left").replace("px","")),m=Number.parseFloat(zt(e,"border-right").replace("px","")),g=Number.parseFloat(zt(e,"border-top").replace("px","")),y=Number.parseFloat(zt(e,"border-bottom").replace("px","")),k=e.offsetWidth-e.clientWidth,D=e.offsetHeight-e.clientHeight;i+=u+p+(e.dir==="rtl"?k:0),o+=d+m+(e.dir==="rtl"?0:k),a+=h+g,l+=f+y+D}const c=new DOMRect(r.left+i,r.top+a,r.width-o,r.height-l);for(const[u,d]of[[t.top,t.left],[t.top,t.right],[t.bottom,t.left],[t.bottom,t.right]])if(hl(u,c.top,c.bottom)&&hl(d,c.left,c.right))return!0;return!1}var ek="remirror-positioner-widget",Ph="positionerUpdate",Lh="__all_positioners__",Bh={y:-999999,x:-999999,width:0,height:0},Lc={...Bh,left:-999999,top:-999999,bottom:-999999,right:-999999},tk={...Bh,rect:{...Lc,toJSON:()=>Lc},visible:!1},nk=at.create({hasChanged:Ih,getActive(t){const{state:e}=t;if(!lh(e)||e.selection.$anchor.depth>2)return at.EMPTY;const n=zi({predicate:r=>r.type.isBlock,selection:e});return n?[n]:at.EMPTY},getPosition(t){const{view:e,data:n}=t,r=e.nodeDOM(n.pos);if(!$e(r))return tk;const s=r.getBoundingClientRect(),i=e.dom.getBoundingClientRect(),o=s.height,a=s.width,l=e.dom.scrollLeft+s.left-i.left,c=e.dom.scrollTop+s.top-i.top,u=Dh(s,e.dom);return{y:c,x:l,height:o,width:a,rect:s,visible:u}}}),zh=nk.clone(({getActive:t})=>({getActive:e=>{const[n]=t(e);return n&&Da(n.node)&&n.node.type===Vi(e.state.schema)?[n]:at.EMPTY}}));zh.clone(({getPosition:t})=>({getPosition:e=>({...t(e),width:1})}));zh.clone(({getPosition:t})=>({getPosition:e=>{const{width:n,x:r,y:s,height:i}=t(e);return{...t(e),width:1,x:n+r,rect:new DOMRect(n+r,s,1,i)}}}));function ja(t){return at.create({hasChanged:Ih,getActive:e=>{const{state:n,view:r}=e;if(!t(n)||!wr(n.selection))return at.EMPTY;try{const{head:s,anchor:i}=n.selection;return[{from:r.coordsAtPos(i),to:r.coordsAtPos(s)}]}catch{return at.EMPTY}},getPosition(e){const{element:n,data:r,view:s}=e,{from:i,to:o}=r,a=n.offsetParent??s.dom,l=a.getBoundingClientRect(),c=Math.abs(o.bottom-i.top),u=c>i.bottom-i.top,d=Math.min(i.left,o.left),h=Math.min(i.top,o.top),f=a.scrollLeft+(u?o.left-l.left:d-l.left),p=a.scrollTop+h-l.top,m=u?1:Math.abs(i.left-o.right),g=new DOMRect(u?o.left:d,h,m,c),y=Dh(g,s.dom);return{rect:g,y:p,x:f,height:c,width:m,visible:y}}})}var rk=ja(t=>!t.selection.empty);ja(t=>t.selection.empty);ja(()=>!0);rk.clone(()=>({getActive:t=>{const{state:e,view:n}=t;if(!e.selection.empty)return at.EMPTY;const r=v0(e);if(!r)return at.EMPTY;try{return[{from:n.coordsAtPos(r.from),to:n.coordsAtPos(r.to)}]}catch{return at.EMPTY}}}));var ms=class extends te{constructor(){super(...arguments),this.positioners=[],this.onAddCustomHandler=({positioner:t})=>{if(t)return this.positioners=[...this.positioners,t],this.store.commands.forceUpdate(),()=>{this.positioners=this.positioners.filter(e=>e!==t)}}}get name(){return"positioner"}createAttributes(){return{class:j1.EDITOR}}init(){this.onScroll=op(this.options.scrollDebounce,this.onScroll.bind(this))}createEventHandlers(){return{scroll:()=>(this.onScroll(),!1),hover:(t,e)=>(this.positioner(this.getBaseProps("hover",{hover:e})),!1),contextmenu:(t,e)=>(this.positioner(this.getBaseProps("contextmenu",{contextmenu:e})),!1)}}onStateUpdate(t){this.positioner({...t,previousState:t.firstUpdate?void 0:t.previousState,event:"state",helpers:this.store.helpers})}createDecorations(t){if(this.element??(this.element=this.createElement()),!this.element.hasChildNodes())return W.empty;const e=Q.widget(0,this.element,{key:"positioner-widget",side:-1,stopEvent:()=>!0});return W.create(t.doc,[e])}forceUpdatePositioners(t=Lh){return({tr:e,dispatch:n})=>(n==null||n(e.setMeta(Ph,{key:t})),!0)}getPositionerWidget(){return this.element??(this.element=this.createElement())}createElement(){const t=document.createElement("span");return t.dataset.id=ek,t.setAttribute("role","presentation"),t}triggerPositioner(t,e){t.hasChanged(e)&&t.onActiveChanged({...e,view:this.store.view})}positioner(t){for(const e of this.positioners)e.events.includes(t.event)&&this.triggerPositioner(e,t)}getBaseProps(t,e){const n=this.store.getState(),r=this.store.previousState;return{helpers:this.store.helpers,event:t,firstUpdate:!1,previousState:r,state:n,...e}}onScroll(){this.positioner(this.getBaseProps("scroll",{scroll:{scrollTop:this.store.view.dom.scrollTop}}))}};Ua([_()],ms.prototype,"forceUpdatePositioners",1);Ua([se()],ms.prototype,"getPositionerWidget",1);ms=Ua([G({defaultOptions:{scrollDebounce:100},customHandlerKeys:["positioner"],staticKeys:["scrollDebounce"]})],ms);var sk=Object.defineProperty,ik=Object.getOwnPropertyDescriptor,Ns=(t,e,n,r)=>{for(var s=r>1?void 0:r?ik(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&sk(e,n,s),s},ok={icon:"bold",label:({t})=>t(Al.LABEL),description:({t})=>t(Al.DESCRIPTION)},Dn=class extends Ki{get name(){return"bold"}createTags(){return[j.FormattingMark,j.FontStyle]}createMarkSpec(t,e){return{...e,attrs:t.defaults(),parseDOM:[{tag:"strong",getAttrs:t.parse},{tag:"b",getAttrs:n=>$e(n)&&n.style.fontWeight!=="normal"?t.parse(n):!1},{style:"font-weight",getAttrs:n=>P(n)&&/^(bold(er)?|[5-9]\d{2,})$/.test(n)?null:!1},...e.parseDOM??[]],toDOM:n=>{const{weight:r}=this.options;return r?["strong",{"font-weight":r.toString()},0]:["strong",t.dom(n),0]}}}createInputRules(){return[xi({regexp:/(?:\*\*|__)([^*_]+)(?:\*\*|__)$/,type:this.type,ignoreWhitespace:!0})]}toggleBold(t){return hr({type:this.type,selection:t})}setBold(t){return({tr:e,dispatch:n})=>{const{from:r,to:s}=ct(t??e.selection,e.doc);return n==null||n(e.addMark(r,s,this.type.create())),!0}}removeBold(t){return({tr:e,dispatch:n})=>{const{from:r,to:s}=ct(t??e.selection,e.doc);return e.doc.rangeHasMark(r,s,this.type)?(n==null||n(e.removeMark(r,s,this.type)),!0):!1}}shortcut(t){return this.toggleBold()(t)}};Ns([_(ok)],Dn.prototype,"toggleBold",1);Ns([_()],Dn.prototype,"setBold",1);Ns([_()],Dn.prototype,"removeBold",1);Ns([Ye({shortcut:E.Bold,command:"toggleBold"})],Dn.prototype,"shortcut",1);Dn=Ns([G({defaultOptions:{weight:void 0},staticKeys:["weight"]})],Dn);var ak=Object.defineProperty,lk=Object.getOwnPropertyDescriptor,Wa=(t,e,n,r)=>{for(var s=r>1?void 0:r?lk(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&ak(e,n,s),s},{DESCRIPTION:ck,LABEL:uk}=zm,dk={icon:"codeLine",description:({t})=>t(ck),label:({t})=>t(uk)},gs=class extends Ki{get name(){return"code"}createTags(){return[j.Code,j.ExcludeInputRules]}createMarkSpec(t,e){return{excludes:"_",...e,attrs:t.defaults(),parseDOM:[{tag:"code",getAttrs:t.parse},...e.parseDOM??[]],toDOM:n=>["code",{spellcheck:"false",...t.dom(n)},0]}}createKeymap(){return{"Mod-`":hr({type:this.type})}}keyboardShortcut(t){return this.toggleCode()(t)}toggleCode(){return hr({type:this.type})}createInputRules(){return[xi({regexp:new RegExp(`(?:\`)([^\`${da}]+)(?:\`)$`),type:this.type,ignoreWhitespace:!0})]}createPasteRules(){return[{type:"mark",regexp:/`([^`]+)`/g,markType:this.type}]}};Wa([Ye({shortcut:E.Code,command:"toggleCode"})],gs.prototype,"keyboardShortcut",1);Wa([_(dk)],gs.prototype,"toggleCode",1);gs=Wa([G({})],gs);var Si=200,be=function(){};be.prototype.append=function(e){return e.length?(e=be.from(e),!this.length&&e||e.length<Si&&this.leafAppend(e)||this.length<Si&&e.leafPrepend(this)||this.appendInner(e)):this};be.prototype.prepend=function(e){return e.length?be.from(e).append(this):this};be.prototype.appendInner=function(e){return new hk(this,e)};be.prototype.slice=function(e,n){return e===void 0&&(e=0),n===void 0&&(n=this.length),e>=n?be.empty:this.sliceInner(Math.max(0,e),Math.min(this.length,n))};be.prototype.get=function(e){if(!(e<0||e>=this.length))return this.getInner(e)};be.prototype.forEach=function(e,n,r){n===void 0&&(n=0),r===void 0&&(r=this.length),n<=r?this.forEachInner(e,n,r,0):this.forEachInvertedInner(e,n,r,0)};be.prototype.map=function(e,n,r){n===void 0&&(n=0),r===void 0&&(r=this.length);var s=[];return this.forEach(function(i,o){return s.push(e(i,o))},n,r),s};be.from=function(e){return e instanceof be?e:e&&e.length?new $h(e):be.empty};var $h=function(t){function e(r){t.call(this),this.values=r}t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e;var n={length:{configurable:!0},depth:{configurable:!0}};return e.prototype.flatten=function(){return this.values},e.prototype.sliceInner=function(s,i){return s==0&&i==this.length?this:new e(this.values.slice(s,i))},e.prototype.getInner=function(s){return this.values[s]},e.prototype.forEachInner=function(s,i,o,a){for(var l=i;l<o;l++)if(s(this.values[l],a+l)===!1)return!1},e.prototype.forEachInvertedInner=function(s,i,o,a){for(var l=i-1;l>=o;l--)if(s(this.values[l],a+l)===!1)return!1},e.prototype.leafAppend=function(s){if(this.length+s.length<=Si)return new e(this.values.concat(s.flatten()))},e.prototype.leafPrepend=function(s){if(this.length+s.length<=Si)return new e(s.flatten().concat(this.values))},n.length.get=function(){return this.values.length},n.depth.get=function(){return 0},Object.defineProperties(e.prototype,n),e}(be);be.empty=new $h([]);var hk=function(t){function e(n,r){t.call(this),this.left=n,this.right=r,this.length=n.length+r.length,this.depth=Math.max(n.depth,r.depth)+1}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.flatten=function(){return this.left.flatten().concat(this.right.flatten())},e.prototype.getInner=function(r){return r<this.left.length?this.left.get(r):this.right.get(r-this.left.length)},e.prototype.forEachInner=function(r,s,i,o){var a=this.left.length;if(s<a&&this.left.forEachInner(r,s,Math.min(i,a),o)===!1||i>a&&this.right.forEachInner(r,Math.max(s-a,0),Math.min(this.length,i)-a,o+a)===!1)return!1},e.prototype.forEachInvertedInner=function(r,s,i,o){var a=this.left.length;if(s>a&&this.right.forEachInvertedInner(r,s-a,Math.max(i,a)-a,o+a)===!1||i<a&&this.left.forEachInvertedInner(r,Math.min(s,a),i,o)===!1)return!1},e.prototype.sliceInner=function(r,s){if(r==0&&s==this.length)return this;var i=this.left.length;return s<=i?this.left.slice(r,s):r>=i?this.right.slice(r-i,s-i):this.left.slice(r,i).append(this.right.slice(0,s-i))},e.prototype.leafAppend=function(r){var s=this.right.leafAppend(r);if(s)return new e(this.left,s)},e.prototype.leafPrepend=function(r){var s=this.left.leafPrepend(r);if(s)return new e(s,this.right)},e.prototype.appendInner=function(r){return this.left.depth>=Math.max(this.right.depth,r.depth)+1?new e(this.left,new e(this.right,r)):new e(this,r)},e}(be);const fk=500;class ot{constructor(e,n){this.items=e,this.eventCount=n}popEvent(e,n){if(this.eventCount==0)return null;let r=this.items.length;for(;;r--)if(this.items.get(r-1).selection){--r;break}let s,i;n&&(s=this.remapping(r,this.items.length),i=s.maps.length);let o=e.tr,a,l,c=[],u=[];return this.items.forEach((d,h)=>{if(!d.step){s||(s=this.remapping(r,h+1),i=s.maps.length),i--,u.push(d);return}if(s){u.push(new pt(d.map));let f=d.step.map(s.slice(i)),p;f&&o.maybeStep(f).doc&&(p=o.mapping.maps[o.mapping.maps.length-1],c.push(new pt(p,void 0,void 0,c.length+u.length))),i--,p&&s.appendMap(p,i)}else o.maybeStep(d.step);if(d.selection)return a=s?d.selection.map(s.slice(i)):d.selection,l=new ot(this.items.slice(0,r).append(u.reverse().concat(c)),this.eventCount-1),!1},this.items.length,0),{remaining:l,transform:o,selection:a}}addTransform(e,n,r,s){let i=[],o=this.eventCount,a=this.items,l=!s&&a.length?a.get(a.length-1):null;for(let u=0;u<e.steps.length;u++){let d=e.steps[u].invert(e.docs[u]),h=new pt(e.mapping.maps[u],d,n),f;(f=l&&l.merge(h))&&(h=f,u?i.pop():a=a.slice(0,a.length-1)),i.push(h),n&&(o++,n=void 0),s||(l=h)}let c=o-r.depth;return c>mk&&(a=pk(a,c),o-=c),new ot(a.append(i),o)}remapping(e,n){let r=new Yn;return this.items.forEach((s,i)=>{let o=s.mirrorOffset!=null&&i-s.mirrorOffset>=e?r.maps.length-s.mirrorOffset:void 0;r.appendMap(s.map,o)},e,n),r}addMaps(e){return this.eventCount==0?this:new ot(this.items.append(e.map(n=>new pt(n))),this.eventCount)}rebased(e,n){if(!this.eventCount)return this;let r=[],s=Math.max(0,this.items.length-n),i=e.mapping,o=e.steps.length,a=this.eventCount;this.items.forEach(h=>{h.selection&&a--},s);let l=n;this.items.forEach(h=>{let f=i.getMirror(--l);if(f==null)return;o=Math.min(o,f);let p=i.maps[f];if(h.step){let m=e.steps[f].invert(e.docs[f]),g=h.selection&&h.selection.map(i.slice(l+1,f));g&&a++,r.push(new pt(p,m,g))}else r.push(new pt(p))},s);let c=[];for(let h=n;h<o;h++)c.push(new pt(i.maps[h]));let u=this.items.slice(0,s).append(c).append(r),d=new ot(u,a);return d.emptyItemCount()>fk&&(d=d.compress(this.items.length-r.length)),d}emptyItemCount(){let e=0;return this.items.forEach(n=>{n.step||e++}),e}compress(e=this.items.length){let n=this.remapping(0,e),r=n.maps.length,s=[],i=0;return this.items.forEach((o,a)=>{if(a>=e)s.push(o),o.selection&&i++;else if(o.step){let l=o.step.map(n.slice(r)),c=l&&l.getMap();if(r--,c&&n.appendMap(c,r),l){let u=o.selection&&o.selection.map(n.slice(r));u&&i++;let d=new pt(c.invert(),l,u),h,f=s.length-1;(h=s.length&&s[f].merge(d))?s[f]=h:s.push(d)}}else o.map&&r--},this.items.length,0),new ot(be.from(s.reverse()),i)}}ot.empty=new ot(be.empty,0);function pk(t,e){let n;return t.forEach((r,s)=>{if(r.selection&&e--==0)return n=s,!1}),t.slice(n)}class pt{constructor(e,n,r,s){this.map=e,this.step=n,this.selection=r,this.mirrorOffset=s}merge(e){if(this.step&&e.step&&!e.selection){let n=e.step.merge(this.step);if(n)return new pt(n.getMap().invert(),n,this.selection)}}}class jt{constructor(e,n,r,s,i){this.done=e,this.undone=n,this.prevRanges=r,this.prevTime=s,this.prevComposition=i}}const mk=20;function gk(t,e,n,r){let s=n.getMeta(Rt),i;if(s)return s.historyState;n.getMeta(bk)&&(t=new jt(t.done,t.undone,null,0,-1));let o=n.getMeta("appendedTransaction");if(n.steps.length==0)return t;if(o&&o.getMeta(Rt))return o.getMeta(Rt).redo?new jt(t.done.addTransform(n,void 0,r,Xs(e)),t.undone,Bc(n.mapping.maps),t.prevTime,t.prevComposition):new jt(t.done,t.undone.addTransform(n,void 0,r,Xs(e)),null,t.prevTime,t.prevComposition);if(n.getMeta("addToHistory")!==!1&&!(o&&o.getMeta("addToHistory")===!1)){let a=n.getMeta("composition"),l=t.prevTime==0||!o&&t.prevComposition!=a&&(t.prevTime<(n.time||0)-r.newGroupDelay||!yk(n,t.prevRanges)),c=o?xo(t.prevRanges,n.mapping):Bc(n.mapping.maps);return new jt(t.done.addTransform(n,l?e.selection.getBookmark():void 0,r,Xs(e)),ot.empty,c,n.time,a??t.prevComposition)}else return(i=n.getMeta("rebased"))?new jt(t.done.rebased(n,i),t.undone.rebased(n,i),xo(t.prevRanges,n.mapping),t.prevTime,t.prevComposition):new jt(t.done.addMaps(n.mapping.maps),t.undone.addMaps(n.mapping.maps),xo(t.prevRanges,n.mapping),t.prevTime,t.prevComposition)}function yk(t,e){if(!e)return!1;if(!t.docChanged)return!0;let n=!1;return t.mapping.maps[0].forEach((r,s)=>{for(let i=0;i<e.length;i+=2)r<=e[i+1]&&s>=e[i]&&(n=!0)}),n}function Bc(t){let e=[];for(let n=t.length-1;n>=0&&e.length==0;n--)t[n].forEach((r,s,i,o)=>e.push(i,o));return e}function xo(t,e){if(!t)return null;let n=[];for(let r=0;r<t.length;r+=2){let s=e.map(t[r],1),i=e.map(t[r+1],-1);s<=i&&n.push(s,i)}return n}function xk(t,e,n){let r=Xs(e),s=Rt.get(e).spec.config,i=(n?t.undone:t.done).popEvent(e,r);if(!i)return null;let o=i.selection.resolve(i.transform.doc),a=(n?t.done:t.undone).addTransform(i.transform,e.selection.getBookmark(),s,r),l=new jt(n?a:i.remaining,n?i.remaining:a,null,0,-1);return i.transform.setSelection(o).setMeta(Rt,{redo:n,historyState:l})}let bo=!1,zc=null;function Xs(t){let e=t.plugins;if(zc!=e){bo=!1,zc=e;for(let n=0;n<e.length;n++)if(e[n].spec.historyPreserveItems){bo=!0;break}}return bo}const Rt=new br("history"),bk=new br("closeHistory");function kk(t={}){return t={depth:t.depth||100,newGroupDelay:t.newGroupDelay||500},new dn({key:Rt,state:{init(){return new jt(ot.empty,ot.empty,null,0,-1)},apply(e,n,r){return gk(n,r,e,t)}},config:t,props:{handleDOMEvents:{beforeinput(e,n){let r=n.inputType,s=r=="historyUndo"?Ys:r=="historyRedo"?Ur:null;return s?(n.preventDefault(),s(e.state,e.dispatch)):!1}}}})}function Fh(t,e){return(n,r)=>{let s=Rt.getState(n);if(!s||(t?s.undone:s.done).eventCount==0)return!1;if(r){let i=xk(s,n,t);i&&r(e?i.scrollIntoView():i)}return!0}}const Ys=Fh(!1,!0),Ur=Fh(!0,!0);function Sk(t){let e=Rt.getState(t);return e?e.done.eventCount:0}function wk(t){let e=Rt.getState(t);return e?e.undone.eventCount:0}var vk=Object.defineProperty,Ek=Object.getOwnPropertyDescriptor,Ka=(t,e,n,r)=>{for(var s=r>1?void 0:r?Ek(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&vk(e,n,s),s},pr=class extends Pt{get name(){return"doc"}createNodeSpec(t,e){const{docAttributes:n,content:r}=this.options,s=M();if(Ln(n))for(const[i,o]of fe(n))s[i]={default:o};else for(const i of n)s[i]={default:null};return{attrs:s,content:r,...e}}setDocAttributes(t){return({tr:e,dispatch:n})=>{if(n){for(const[r,s]of Object.entries(t))e.step(new na(r,s));n(e)}return!0}}isDefaultDocNode({state:t=this.store.getState(),options:e}={}){return Ia(t.doc,e)}};Ka([_()],pr.prototype,"setDocAttributes",1);Ka([se()],pr.prototype,"isDefaultDocNode",1);pr=Ka([G({defaultOptions:{content:"block+",docAttributes:[]},defaultPriority:Y.Medium,staticKeys:["content","docAttributes"],disableExtraAttributes:!0})],pr);var Vh="SetDocAttribute",Hh="RevertSetDocAttribute",na=class ra extends ge{constructor(n,r,s=Vh){super();Me(this,"key");Me(this,"stepType");Me(this,"value");Me(this,"previous");this.stepType=s,this.key=n,this.value=r}static fromJSON(n,r){return new ra(r.key,r.value,r.stepType)}apply(n){this.previous=n.attrs[this.key];const r={...n.attrs,[this.key]:this.value};return le.ok(n.type.create(r,n.content,n.marks))}invert(){return new ra(this.key,this.previous,Hh)}map(){return this}toJSON(){return{stepType:this.stepType,key:this.key,value:this.value}}};try{ge.jsonID(Vh,na),ge.jsonID(Hh,na)}catch(t){if(!t.message.startsWith("Duplicate use of step JSON ID"))throw t}var Ck=Object.defineProperty,Tk=Object.getOwnPropertyDescriptor,Uh=(t,e,n,r)=>{for(var s=r>1?void 0:r?Tk(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&Ck(e,n,s),s};function Ok(t,e,n,r){const s=t.docView.posFromDOM(e,n,r);return s===null||s<0?null:s}function Mk(t,e){const n=e.target;if(n){const r=Ok(t,n,0);if(r!==null){const s=t.state.doc.resolve(r),i=s.node().isLeaf?0:1,o=s.start()-i;return{pos:r,inside:o}}}return t.posAtCoords({left:e.clientX,top:e.clientY})??void 0}var wi=class extends te{constructor(){super(...arguments),this.mousedown=!1,this.mouseover=!1,this.createMouseEventHandler=t=>(e,n)=>{const r=n,s=Mk(e,r);if(!s)return!1;const i=[],o=[],{inside:a,pos:l}=s;if(a===-1)return!1;const c=e.state.doc.resolve(l),u=c.depth+1;for(const d of $u(u,1))i.push({node:d>c.depth&&c.nodeAfter?c.nodeAfter:c.node(d),pos:c.before(d)});for(const{type:d}of c.marksAcross(c)??[]){const h=Bn(c,d);h&&o.push(h)}return t(r,{view:e,nodes:i,marks:o,getMark:d=>{const h=P(d)?e.state.schema.marks[d]:d;return R(h,{code:b.EXTENSION,message:`The mark ${d} being checked does not exist within the editor schema.`}),o.find(f=>f.mark.type===h)},getNode:d=>{var h;const f=P(d)?e.state.schema.nodes[d]:d;R(f,{code:b.EXTENSION,message:"The node being checked does not exist"});const p=i.find(({node:m})=>m.type===f);if(p)return{...p,isRoot:!!((h=i[0])!=null&&h.node.eq(p.node))}}})}}get name(){return"events"}onView(){var t,e;if(!((t=this.store.managerSettings.exclude)!=null&&t.clickHandler))for(const n of this.store.extensions){if(!n.createEventHandlers||(e=n.options.exclude)!=null&&e.clickHandler)continue;const r=n.createEventHandlers();for(const[s,i]of fe(r))this.addHandler(s,i)}}createPlugin(){const t=new WeakMap,e=(n,r,s,i,o,a,l,c)=>{const u=this.store.currentState,{schema:d,doc:h}=u,f=h.resolve(i),p=t.has(l),m=_k({$pos:f,handled:p,view:s,state:u});let g=!1;p||(g=n(l,m)||g);const y={...m,pos:i,direct:c,nodeWithPosition:{node:o,pos:a},getNode:k=>{const D=P(k)?d.nodes[k]:k;return R(D,{code:b.EXTENSION,message:"The node being checked does not exist"}),D===o.type?{node:o,pos:a}:void 0}};return t.set(l,!0),r(l,y)||g};return{props:{handleKeyPress:(n,r)=>this.options.keypress(r)||!1,handleKeyDown:(n,r)=>this.options.keydown(r)||!1,handleTextInput:(n,r,s,i)=>this.options.textInput({from:r,to:s,text:i})||!1,handleClickOn:(n,r,s,i,o,a)=>e(this.options.clickMark,this.options.click,n,r,s,i,o,a),handleDoubleClickOn:(n,r,s,i,o,a)=>e(this.options.doubleClickMark,this.options.doubleClick,n,r,s,i,o,a),handleTripleClickOn:(n,r,s,i,o,a)=>e(this.options.tripleClickMark,this.options.tripleClick,n,r,s,i,o,a),handleDOMEvents:{focus:(n,r)=>this.options.focus(r)||!1,blur:(n,r)=>this.options.blur(r)||!1,mousedown:(n,r)=>(this.startMouseover(),this.options.mousedown(r)||!1),mouseup:(n,r)=>(this.endMouseover(),this.options.mouseup(r)||!1),mouseleave:(n,r)=>(this.mouseover=!1,this.options.mouseleave(r)||!1),mouseenter:(n,r)=>(this.mouseover=!0,this.options.mouseenter(r)||!1),keyup:(n,r)=>this.options.keyup(r)||!1,mouseout:this.createMouseEventHandler((n,r)=>{const s={...r,hovering:!1};return this.options.hover(n,s)||!1}),mouseover:this.createMouseEventHandler((n,r)=>{const s={...r,hovering:!0};return this.options.hover(n,s)||!1}),contextmenu:this.createMouseEventHandler((n,r)=>this.options.contextmenu(n,r)||!1),scroll:(n,r)=>this.options.scroll(r)||!1,copy:(n,r)=>this.options.copy(r)||!1,cut:(n,r)=>this.options.cut(r)||!1,paste:(n,r)=>this.options.paste(r)||!1}},view:n=>{let r=n.editable;const s=this.options;return{update(i){const o=i.editable;o!==r&&(s.editable(o),r=o)}}}}}isInteracting(){return this.mousedown&&this.mouseover}startMouseover(){this.mouseover=!0,!this.mousedown&&(this.mousedown=!0,this.store.document.documentElement.addEventListener("mouseup",()=>{this.endMouseover()},{once:!0}))}endMouseover(){this.mousedown&&(this.mousedown=!1,this.store.commands.emptyUpdate())}};Uh([se()],wi.prototype,"isInteracting",1);wi=Uh([G({handlerKeys:["blur","focus","mousedown","mouseup","mouseenter","mouseleave","textInput","keypress","keyup","keydown","click","clickMark","doubleClick","doubleClickMark","tripleClick","tripleClickMark","contextmenu","hover","scroll","copy","cut","paste","editable"],handlerKeyOptions:{blur:{earlyReturnValue:!0},focus:{earlyReturnValue:!0},mousedown:{earlyReturnValue:!0},mouseleave:{earlyReturnValue:!0},mouseup:{earlyReturnValue:!0},click:{earlyReturnValue:!0},doubleClick:{earlyReturnValue:!0},tripleClick:{earlyReturnValue:!0},hover:{earlyReturnValue:!0},contextmenu:{earlyReturnValue:!0},scroll:{earlyReturnValue:!0},copy:{earlyReturnValue:!0},cut:{earlyReturnValue:!0},paste:{earlyReturnValue:!0}},defaultPriority:Y.High})],wi);function _k(t){const{handled:e,view:n,$pos:r,state:s}=t,i={getMark:zu,markRanges:[],view:n,state:s};if(e)return i;for(const{type:o}of r.marksAcross(r)??[]){const a=Bn(r,o);a&&i.markRanges.push(a)}return i.getMark=o=>{const a=P(o)?s.schema.marks[o]:o;return R(a,{code:b.EXTENSION,message:`The mark ${o} being checked does not exist within the editor schema.`}),i.markRanges.find(l=>l.mark.type===a)},i}class ie extends V{constructor(e){super(e,e)}map(e,n){let r=e.resolve(n.map(this.head));return ie.valid(r)?new ie(r):V.near(r)}content(){return w.empty}eq(e){return e instanceof ie&&e.head==this.head}toJSON(){return{type:"gapcursor",pos:this.head}}static fromJSON(e,n){if(typeof n.pos!="number")throw new RangeError("Invalid input for GapCursor.fromJSON");return new ie(e.resolve(n.pos))}getBookmark(){return new qa(this.anchor)}static valid(e){let n=e.parent;if(n.isTextblock||!Nk(e)||!Ak(e))return!1;let r=n.type.spec.allowGapCursor;if(r!=null)return r;let s=n.contentMatchAt(e.index()).defaultType;return s&&s.isTextblock}static findGapCursorFrom(e,n,r=!1){e:for(;;){if(!r&&ie.valid(e))return e;let s=e.pos,i=null;for(let o=e.depth;;o--){let a=e.node(o);if(n>0?e.indexAfter(o)<a.childCount:e.index(o)>0){i=a.child(n>0?e.indexAfter(o):e.index(o)-1);break}else if(o==0)return null;s+=n;let l=e.doc.resolve(s);if(ie.valid(l))return l}for(;;){let o=n>0?i.firstChild:i.lastChild;if(!o){if(i.isAtom&&!i.isText&&!I.isSelectable(i)){e=e.doc.resolve(s+i.nodeSize*n),r=!1;continue e}break}i=o,s+=n;let a=e.doc.resolve(s);if(ie.valid(a))return a}return null}}}ie.prototype.visible=!1;ie.findFrom=ie.findGapCursorFrom;V.jsonID("gapcursor",ie);class qa{constructor(e){this.pos=e}map(e){return new qa(e.map(this.pos))}resolve(e){let n=e.resolve(this.pos);return ie.valid(n)?new ie(n):V.near(n)}}function Nk(t){for(let e=t.depth;e>=0;e--){let n=t.index(e),r=t.node(e);if(n==0){if(r.type.spec.isolating)return!0;continue}for(let s=r.child(n-1);;s=s.lastChild){if(s.childCount==0&&!s.inlineContent||s.isAtom||s.type.spec.isolating)return!0;if(s.inlineContent)return!1}}return!0}function Ak(t){for(let e=t.depth;e>=0;e--){let n=t.indexAfter(e),r=t.node(e);if(n==r.childCount){if(r.type.spec.isolating)return!0;continue}for(let s=r.child(n);;s=s.firstChild){if(s.childCount==0&&!s.inlineContent||s.isAtom||s.type.spec.isolating)return!0;if(s.inlineContent)return!1}}return!0}function Rk(){return new dn({props:{decorations:Lk,createSelectionBetween(t,e,n){return e.pos==n.pos&&ie.valid(n)?new ie(n):null},handleClick:Dk,handleKeyDown:Ik,handleDOMEvents:{beforeinput:Pk}}})}const Ik=Ch({ArrowLeft:Ps("horiz",-1),ArrowRight:Ps("horiz",1),ArrowUp:Ps("vert",-1),ArrowDown:Ps("vert",1)});function Ps(t,e){const n=t=="vert"?e>0?"down":"up":e>0?"right":"left";return function(r,s,i){let o=r.selection,a=e>0?o.$to:o.$from,l=o.empty;if(o instanceof L){if(!i.endOfTextblock(n)||a.depth==0)return!1;l=!1,a=r.doc.resolve(e>0?a.after():a.before())}let c=ie.findGapCursorFrom(a,e,l);return c?(s&&s(r.tr.setSelection(new ie(c))),!0):!1}}function Dk(t,e,n){if(!t||!t.editable)return!1;let r=t.state.doc.resolve(e);if(!ie.valid(r))return!1;let s=t.posAtCoords({left:n.clientX,top:n.clientY});return s&&s.inside>-1&&I.isSelectable(t.state.doc.nodeAt(s.inside))?!1:(t.dispatch(t.state.tr.setSelection(new ie(r))),!0)}function Pk(t,e){if(e.inputType!="insertCompositionText"||!(t.state.selection instanceof ie))return!1;let{$from:n}=t.state.selection,r=n.parent.contentMatchAt(n.index()).findWrapping(t.state.schema.nodes.text);if(!r)return!1;let s=x.empty;for(let o=r.length-1;o>=0;o--)s=x.from(r[o].createAndFill(null,s));let i=t.state.tr.replace(n.pos,n.pos,new w(s,0,0));return i.setSelection(L.near(i.doc.resolve(n.pos+1))),t.dispatch(i),!1}function Lk(t){if(!(t.selection instanceof ie))return null;let e=document.createElement("div");return e.className="ProseMirror-gapcursor",W.create(t.doc,[Q.widget(t.selection.head,e,{key:"gapcursor"})])}var Bk=Object.defineProperty,zk=Object.getOwnPropertyDescriptor,$k=(t,e,n,r)=>{for(var s=r>1?void 0:r?zk(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&Bk(e,n,s),s},sa=class extends te{get name(){return"gapCursor"}createExternalPlugins(){return[Rk()]}};sa=$k([G({})],sa);var Fk=Object.defineProperty,Vk=Object.getOwnPropertyDescriptor,zn=(t,e,n,r)=>{for(var s=r>1?void 0:r?Vk(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&Fk(e,n,s),s},kt=class extends te{constructor(){super(...arguments),this.wrapMethod=(t,e)=>({state:n,dispatch:r,view:s})=>{const{getState:i,getDispatch:o}=this.options,a=ee(i)?i():n,l=ee(o)&&r?o():r,c=t(a,l,s);return e==null||e(c),c}}get name(){return"history"}createKeymap(){return{"Mod-y":st.isMac?()=>!1:this.wrapMethod(Ur,this.options.onRedo),"Mod-z":this.wrapMethod(Ys,this.options.onUndo),"Shift-Mod-z":this.wrapMethod(Ur,this.options.onRedo)}}undoShortcut(t){return this.wrapMethod(Ys,this.options.onUndo)(t)}redoShortcut(t){return this.wrapMethod(Ur,this.options.onRedo)(t)}createExternalPlugins(){const{depth:t,newGroupDelay:e}=this.options;return[kk({depth:t,newGroupDelay:e})]}undo(){return kc(this.wrapMethod(Ys,this.options.onUndo))}redo(){return kc(this.wrapMethod(Ur,this.options.onRedo))}undoDepth(t=this.store.getState()){return Sk(t)}redoDepth(t=this.store.getState()){return wk(t)}};zn([Ye({shortcut:E.Undo,command:"undo"})],kt.prototype,"undoShortcut",1);zn([Ye({shortcut:E.Redo,command:"redo"})],kt.prototype,"redoShortcut",1);zn([_({disableChaining:!0,description:({t})=>t(di.UNDO_DESCRIPTION),label:({t})=>t(di.UNDO_LABEL),icon:"arrowGoBackFill"})],kt.prototype,"undo",1);zn([_({disableChaining:!0,description:({t})=>t(di.REDO_DESCRIPTION),label:({t})=>t(di.REDO_LABEL),icon:"arrowGoForwardFill"})],kt.prototype,"redo",1);zn([se()],kt.prototype,"undoDepth",1);zn([se()],kt.prototype,"redoDepth",1);kt=zn([G({defaultOptions:{depth:100,newGroupDelay:500,getDispatch:void 0,getState:void 0},staticKeys:["depth","newGroupDelay"],handlerKeys:["onUndo","onRedo"]})],kt);var Hk=Object.defineProperty,Uk=Object.getOwnPropertyDescriptor,Ja=(t,e,n,r)=>{for(var s=r>1?void 0:r?Uk(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&Hk(e,n,s),s},jk={icon:"italic",label:({t})=>t(Rl.LABEL),description:({t})=>t(Rl.DESCRIPTION)},ys=class extends Ki{get name(){return"italic"}createTags(){return[j.FontStyle,j.FormattingMark]}createMarkSpec(t,e){return{...e,attrs:t.defaults(),parseDOM:[{tag:"i",getAttrs:t.parse},{tag:"em",getAttrs:t.parse},{style:"font-style=italic"},...e.parseDOM??[]],toDOM:n=>["em",t.dom(n),0]}}createKeymap(){return{"Mod-i":hr({type:this.type})}}createInputRules(){return[xi({regexp:/(?:^|[^*])\*([^*]+)\*$/,type:this.type,ignoreWhitespace:!0,updateCaptured:({fullMatch:t,start:e})=>t.startsWith("*")?{}:{fullMatch:t.slice(1),start:e+1}}),xi({regexp:/(?:^|\W)_([^_]+)_$/,type:this.type,ignoreWhitespace:!0,updateCaptured:({fullMatch:t,start:e})=>t.startsWith("_")?{}:{fullMatch:t.slice(1),start:e+1}})]}createPasteRules(){return[{type:"mark",markType:this.type,regexp:/(?:^|\W)_([^_]+)_/g},{type:"mark",markType:this.type,regexp:/\*([^*]+)\*/g}]}toggleItalic(t){return hr({type:this.type,selection:t})}shortcut(t){return this.toggleItalic()(t)}};Ja([_(jk)],ys.prototype,"toggleItalic",1);Ja([Ye({shortcut:E.Italic,command:"toggleItalic"})],ys.prototype,"shortcut",1);ys=Ja([G({})],ys);function Wk(t,e=null){return function(n,r){let{$from:s,$to:i}=n.selection,o=s.blockRange(i),a=!1,l=o;if(!o)return!1;if(o.depth>=2&&s.node(o.depth-1).type.compatibleContent(t)&&o.startIndex==0){if(s.index(o.depth-1)==0)return!1;let u=n.doc.resolve(o.start-2);l=new Nn(u,u,o.depth),o.endIndex<o.parent.childCount&&(o=new Nn(s,n.doc.resolve(i.end(o.depth)),o.depth)),a=!0}let c=ma(l,t,e,o);return c?(r&&r(Kk(n.tr,o,c,a,t).scrollIntoView()),!0):!1}}function Kk(t,e,n,r,s){let i=x.empty;for(let u=n.length-1;u>=0;u--)i=x.from(n[u].type.create(n[u].attrs,i));t.step(new pe(e.start-(r?2:0),e.end,e.start,e.end,new w(i,0,0),n.length,!0));let o=0;for(let u=0;u<n.length;u++)n[u].type==s&&(o=u+1);let a=n.length-o,l=e.start+n.length-(r?2:0),c=e.parent;for(let u=e.startIndex,d=e.endIndex,h=!0;u<d;u++,h=!1)!h&&Zn(t.doc,l,a)&&(t.split(l,a),l+=2*a),l+=c.child(u).nodeSize;return t}function qk(t){return function(e,n){let{$from:r,$to:s}=e.selection,i=r.blockRange(s,o=>o.childCount>0&&o.firstChild.type==t);return i?n?r.node(i.depth-1).type==t?Jk(e,n,t,i):Gk(e,n,i):!0:!1}}function Jk(t,e,n,r){let s=t.tr,i=r.end,o=r.$to.end(r.depth);i<o&&(s.step(new pe(i-1,o,i,o,new w(x.from(n.create(null,r.parent.copy())),1,0),1,!0)),r=new Nn(s.doc.resolve(r.$from.pos),s.doc.resolve(o),r.depth));const a=xr(r);if(a==null)return!1;s.lift(r,a);let l=s.mapping.map(i,-1)-1;return Cs(s.doc,l)&&s.join(l),e(s.scrollIntoView()),!0}function Gk(t,e,n){let r=t.tr,s=n.parent;for(let f=n.end,p=n.endIndex-1,m=n.startIndex;p>m;p--)f-=s.child(p).nodeSize,r.delete(f-1,f+1);let i=r.doc.resolve(n.start),o=i.nodeAfter;if(r.mapping.map(n.end)!=n.start+i.nodeAfter.nodeSize)return!1;let a=n.startIndex==0,l=n.endIndex==s.childCount,c=i.node(-1),u=i.index(-1);if(!c.canReplace(u+(a?0:1),u+1,o.content.append(l?x.empty:x.from(s))))return!1;let d=i.pos,h=d+o.nodeSize;return r.step(new pe(d-(a?1:0),h+(l?1:0),d+1,h-1,new w((a?x.empty:x.from(s.copy(x.empty))).append(l?x.empty:x.from(s.copy(x.empty))),a?0:1,l?0:1),a?0:1)),e(r.scrollIntoView()),!0}var Xk=Object.defineProperty,Yk=Object.getOwnPropertyDescriptor,Ze=(t,e,n,r)=>{for(var s=r>1?void 0:r?Yk(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&Xk(e,n,s),s};function ia(t){var e;return!!((e=t.spec.group)!=null&&e.includes(j.ListContainerNode))}function Zk(t){var e;return!!((e=t.spec.group)!=null&&e.includes(j.ListItemNode))}function an(t){return ia(t.type)}function en(t){return Zk(t.type)}function Ga(t,e){return n=>{const{dispatch:r,tr:s}=n,i=_a(s,n.state),{$from:o,$to:a}=s.selection,l=o.blockRange(a);if(!l)return!1;const c=zi({predicate:u=>ia(u.type),selection:s.selection});if(c&&l.depth-c.depth<=1&&l.startIndex===0){if(c.node.type===t)return Kh(e)(n);if(ia(c.node.type))return t.validContent(c.node.content)?(r==null||r(s.setNodeMarkup(c.pos,t)),!0):Qk(s,c,t,e)?(r==null||r(s.scrollIntoView()),!0):!1}return Wk(t)(i,r)}}function jh(t,e=["checked"]){return function({tr:n,dispatch:r,state:s}){var f,p;const i=p0(t,s.schema),{$from:o,$to:a}=n.selection;if(Fi(n.selection)&&n.selection.node.isBlock||o.depth<2||!o.sameParent(a))return!1;const l=o.node(-1);if(l.type!==i)return!1;if(o.parent.content.size===0&&o.node(-1).childCount===o.indexAfter(-1)){if(o.depth===2||o.node(-3).type!==i||o.index(-2)!==o.node(-2).childCount-1)return!1;if(r){const m=o.index(-1)>0;let g=x.empty;for(let D=o.depth-(m?1:2);D>=o.depth-3;D--)g=x.from(o.node(D).copy(g));const y=((f=i.contentMatch.defaultType)==null?void 0:f.createAndFill())||void 0;g=g.append(x.from(i.createAndFill(null,y)||void 0));const k=o.indexAfter(-1)<o.node(-2).childCount?1:o.indexAfter(-2)<o.node(-3).childCount?2:3;n.replace(o.before(m?void 0:-1),o.after(-k),new w(g,m?3:2,2)),n.setSelection(n.selection.constructor.near(n.doc.resolve(o.pos+(m?3:2)))),r(n.scrollIntoView())}return!0}if(l.attrs.closed&&o.sameParent(a)&&a.pos===a.end()){if(r){const m=o.after(-1),g=((p=i.contentMatch.defaultType)==null?void 0:p.createAndFill())||void 0,y=i.createAndFill(null,g);y&&(n.insert(m,y),n.setSelection(L.near(n.doc.resolve(m+1)))),n.delete(o.pos,a.pos),r(n.scrollIntoView())}return!0}const c=Object.fromEntries(Object.entries(l.attrs).filter(([m])=>!e.includes(m))),u=a.pos===o.end()?l.contentMatchAt(0).defaultType:null,d={...o.node().attrs};n.delete(o.pos,a.pos);const h=u?[{type:i,attrs:c},{type:u,attrs:d}]:[{type:i,attrs:c}];return Zn(n.doc,o.pos,2)?(r&&r(n.split(o.pos,2,h).scrollIntoView()),!0):!1}}function Qk(t,e,n,r){const s=e.node,i=t.doc.resolve(e.start),o=i.node(-1),a=i.index(-1);if(!o||!o.canReplace(a,a+1,x.from(n.create())))return!1;const l=[];for(let f=0;f<s.childCount;f++){const p=s.child(f);if(!r.validContent(p.content))return!1;const m=r.createChecked(null,p.content);l.push(m)}const c=n.createChecked(null,l),u=e.pos,d=u+s.nodeSize,h=t.selection.from;return t.replaceRangeWith(u,d,c),t.setSelection(t.selection.constructor.near(t.doc.resolve(h))),!0}function eS({listType:t,itemType:e,tr:n,range:r}){var l;const s=r.parent,i=n.doc.slice(r.start,r.end);if(s.type===t&&((l=i.content.firstChild)==null?void 0:l.type)===e)return!1;const o=[];for(let c=0;c<i.content.childCount;c++){const u=i.content.child(c);if(!e.validContent(u.content))return!1;const d=e.createChecked(null,u.content);o.push(d)}const a=t.createChecked(null,o);return n.replaceRange(r.start,r.end,new w(x.from(a),0,0)),!0}function mr({listType:t,itemType:e,tr:n}){const r=vi(n.selection);if(!r)return!1;const s=r.startIndex===0,{from:i,to:o}=n.selection;return eS({listType:t,itemType:e,tr:n,range:r})?(n.setSelection(L.between(n.doc.resolve(s?i:i+2),n.doc.resolve(s?o:o+2))),n.scrollIntoView(),!0):!1}function tS(t,e,n){const r=t.tr,s=n.parent,i=r.mapping.maps.length;for(let p=n.end,m=n.endIndex-1,g=n.startIndex;m>g;m--)p-=s.child(m).nodeSize,r.delete(p-1,p+1);const o=r.doc.resolve(n.start),a=o.nodeAfter;if(!a||r.mapping.slice(i).map(n.end)!==n.start+a.nodeSize)return!1;const l=n.startIndex===0,c=n.endIndex===s.childCount,u=o.node(-1),d=o.index(-1);if(!u.canReplace(d+(l?0:1),d+1,a.content.append(c?x.empty:x.from(s))))return!1;const h=o.pos,f=h+a.nodeSize;return r.step(new pe(h-(l?1:0),f+(c?1:0),h+1,f-1,new w((l?x.empty:x.from(s.copy(x.empty))).append(c?x.empty:x.from(s.copy(x.empty))),l?0:1,c?0:1),l?0:1)),e(r.scrollIntoView()),!0}function Wh(t,e){const n=e||t.selection.$from;let r=[],s,i,o,a;for(let c=n.depth;c>=0;c--){if(i=n.node(c),s=n.index(c),o=i.maybeChild(s-1),a=i.maybeChild(s),o&&a&&o.type.name===a.type.name&&an(o)){const u=n.before(c+1);r.push(u)}if(s=n.indexAfter(c),o=i.maybeChild(s-1),a=i.maybeChild(s),o&&a&&o.type.name===a.type.name&&an(o)){const u=n.after(c+1);r.push(u)}}r=[...new Set(r)].sort((c,u)=>u-c);let l=!1;for(const c of r)Cs(t.doc,c)&&(t.join(c),l=!0);return l}function Kh(t){return e=>{const{dispatch:n,tr:r}=e,s=_a(r,e.state),i=nS(t,r.selection);return i?(n&&tS(s,n,i),!0):!1}}function nS(t,e){const{$from:n,$to:r}=e;return n.blockRange(r,i=>{var o;return((o=i.firstChild)==null?void 0:o.type)===t})}function vi(t){const{$from:e,$to:n}=t;return e.blockRange(n,an)}function rS(t){const e=t.selection.$from,n=e.blockRange();if(!n||!en(n.parent)||n.startIndex!==0)return!1;const r=e.node(n.depth-2),s=e.index(n.depth),i=e.index(n.depth-1),o=e.index(n.depth-2),a=r.maybeChild(o-1),l=a==null?void 0:a.lastChild;if(s!==0||i!==0)return!1;if(a&&an(a)&&l&&en(l))return mr({listType:a.type,itemType:l.type,tr:t});if(en(r)){const c=r,u=e.node(n.depth-3);if(an(u))return mr({listType:u.type,itemType:c.type,tr:t})}return!1}function $c({view:t}){if(!t)return!1;{const e=t.state.selection.$cursor;if(!e||e.parentOffset>0)return!1;const n=e.blockRange();if(!n||!en(n.parent)||n.startIndex!==0)return!1}{const e=t.state.tr;rS(e)&&t.dispatch(e)}{const e=t.state.selection.$cursor;if(!e||e.parentOffset>0)return!1;const n=e.blockRange();if(!n||!en(n.parent)||n.startIndex!==0)return!1;const r=e.index(n.depth),s=e.index(n.depth-1),i=e.index(n.depth-2),o=n.depth-2>=1&&en(e.node(n.depth-2));r===0&&s===0&&i<=1&&o&&qk(n.parent.type)(t.state,t.dispatch)}return bh(t.state,t.dispatch,t),!0}function qh({node:t,mark:e,updateDOM:n,updateMark:r}){const s=document.createElement("label");s.contentEditable="false",s.classList.add(on.LIST_ITEM_MARKER_CONTAINER),s.append(e);const i=document.createElement("div"),o=document.createElement("li");o.classList.add(on.LIST_ITEM_WITH_CUSTOM_MARKER),o.append(s),o.append(i);const a=l=>l.type!==t.type?!1:(t=l,n(t,o),r(t,e),!0);return a(t),{dom:o,contentDOM:i,update:a}}function sS(t,e){const n=t.node(e.depth-1),r=t.node(e.depth-2);return!en(n)||!an(r)?!1:{parentItem:n,parentList:r}}function iS(t,e){const n=e.parent,r=e.parent.child(e.endIndex-1),s=e.end,i=e.$to.end(e.depth);return s<i?(t.step(new pe(s-1,i,s,i,new w(x.from(r.type.create(null,n.copy())),1,0),1,!0)),new Nn(t.doc.resolve(e.$from.pos),t.doc.resolve(i),e.depth)):e}function oS(t,e){const n=e.parent,r=e.parent.child(e.endIndex-1),s=e.end,i=e.$to.end(e.depth-1);return s+1<i?(t.step(new pe(s-1,i,s+1,i,new w(x.from(n.type.create(null,r.type.create(null))),2,0),0,!0)),new Nn(t.selection.$from,t.selection.$to,e.depth)):e}function aS(t,e,n,r){return mr({listType:n.type,itemType:r.type,tr:t})?new Nn(t.selection.$from,t.selection.$to,e.depth):e}function lS(t){let e=vi(t.selection);if(!e)return!1;const n=sS(t.selection.$from,e);if(!n)return!1;const{parentItem:r,parentList:s}=n;e=iS(t,e),e=oS(t,e),e=aS(t,e,s,r);const i=xr(e);return typeof i!="number"||(t.lift(e,i),e=vi(t.selection),e&&Wh(t,t.doc.resolve(e.end-2))),!0}var cS=({tr:t,dispatch:e})=>lS(t)?(e==null||e(t.scrollIntoView()),!0):!1;function uS(t,e,n){let r,s,i,o;const a=e.doc;if(n.startIndex>=1){r=t.child(n.startIndex-1),s=t,o=a.resolve(n.start).start(n.depth),i=o+1;for(let l=0;l<n.startIndex-1;l++)i+=s.child(l).nodeSize}else{const l=e.index(n.depth-1);if(l>=1){const c=e.node(n.depth-1),u=e.start(n.depth-1);if(s=c.child(l-1),!an(s))return!1;o=u+1;for(let d=0;d<l-1;d++)o+=c.child(d).nodeSize;if(r=s.child(s.childCount-1),i=o+s.nodeSize-r.nodeSize-1,!en(r))return!1}else return!1}return{previousItem:r,previousList:s,previousItemStart:i,previousListStart:o}}function dS(t,e,n){let r,s;const i=n.start,o=e.depth>=n.depth+2?e.end(n.depth+2):n.end-1,a=n.end;return o+1>=a?(r=t.slice(i,a),s=null):(r=t.slice(i,o),s=t.slice(o+1,a-1)),{selectedSlice:r,unselectedSlice:s}}function hS(t){const{$from:e,$to:n}=t.selection,r=vi(t.selection);if(!r)return!1;const s=t.doc.resolve(r.start).node();if(!an(s))return!1;const i=uS(s,e,r);if(!i)return!1;const{previousItem:o,previousList:a,previousItemStart:l}=i,{selectedSlice:c,unselectedSlice:u}=dS(t.doc,n,r),d=o.content.append(x.fromArray([s.copy(c.content)])).append(u?u.content:x.empty);t.deleteRange(r.start,r.end);const h=l+o.nodeSize-2,f=o.copy(d);return f.check(),t.replaceRangeWith(l-1,h+1,f),t.setSelection(a===s?L.between(t.doc.resolve(e.pos),t.doc.resolve(n.pos)):L.between(t.doc.resolve(e.pos-2),t.doc.resolve(n.pos-2))),!0}var fS=({tr:t,dispatch:e})=>hS(t)?(e==null||e(t.scrollIntoView()),!0):!1,Jh=class extends te{get name(){return"listItemShared"}createKeymap(){const t={Tab:fS,"Shift-Tab":cS,Backspace:$c,"Mod-Backspace":$c};if(st.isMac){const e={"Ctrl-h":t.Backspace,"Alt-Backspace":t["Mod-Backspace"]};return{...t,...e}}return t}createPlugin(){return{appendTransaction:(t,e,n)=>{const r=n.tr;return Wh(r)?r:null}}}},gr=class extends Pt{get name(){return"listItem"}createTags(){return[j.ListItemNode]}createNodeSpec(t,e){return{content:"paragraph block*",defining:!0,draggable:!1,...e,attrs:{...t.defaults(),closed:{default:!1},nested:{default:!1}},parseDOM:[{tag:"li",getAttrs:t.parse,priority:Y.Lowest},...e.parseDOM??[]],toDOM:n=>["li",t.dom(n),0]}}createNodeViews(){return this.options.enableCollapsible?(t,e,n)=>{const r=document.createElement("div");return r.classList.add(on.COLLAPSIBLE_LIST_ITEM_BUTTON),r.contentEditable="false",r.addEventListener("click",()=>{if(r.classList.contains("disabled"))return;const s=n(),i=I.create(e.state.doc,s);return e.dispatch(e.state.tr.setSelection(i)),this.store.commands.toggleListItemClosed(),!0}),qh({mark:r,node:t,updateDOM:pS,updateMark:mS})}:{}}createKeymap(){return{Enter:jh(this.type)}}createExtensions(){return[new Jh]}toggleListItemClosed(t){return({state:{tr:e,selection:n},dispatch:r})=>{if(!Fi(n)||n.node.type.name!==this.name)return!1;const{node:s,from:i}=n;return t=cp(t)?t:!s.attrs.closed,r==null||r(e.setNodeMarkup(i,void 0,{...s.attrs,closed:t})),!0}}liftListItemOutOfList(t){return Kh(t??this.type)}};Ze([_()],gr.prototype,"toggleListItemClosed",1);Ze([_()],gr.prototype,"liftListItemOutOfList",1);gr=Ze([G({defaultOptions:{enableCollapsible:!1},staticKeys:["enableCollapsible"]})],gr);function pS(t,e){t.attrs.closed?e.classList.add(on.COLLAPSIBLE_LIST_ITEM_CLOSED):e.classList.remove(on.COLLAPSIBLE_LIST_ITEM_CLOSED)}function mS(t,e){t.childCount<=1?e.classList.add("disabled"):e.classList.remove("disabled")}var xs=class extends Pt{get name(){return"bulletList"}createTags(){return[j.Block,j.ListContainerNode]}createNodeSpec(t,e){return{content:"listItem+",...e,attrs:t.defaults(),parseDOM:[{tag:"ul",getAttrs:t.parse},...e.parseDOM??[]],toDOM:n=>["ul",t.dom(n),0]}}createNodeViews(){return this.options.enableSpine?(t,e,n)=>{var c;const r=document.createElement("div");r.style.position="relative";const s=n(),i=e.state.doc.resolve(s+1),o=i.node(i.depth-1);if(!(((c=o==null?void 0:o.type)==null?void 0:c.name)!=="listItem")){const u=document.createElement("div");u.contentEditable="false",u.classList.add(on.LIST_SPINE),u.addEventListener("click",d=>{const h=n(),f=e.state.doc.resolve(h+1),p=f.start(f.depth-1),m=I.create(e.state.doc,p-1);e.dispatch(e.state.tr.setSelection(m)),this.store.commands.toggleListItemClosed(),d.preventDefault(),d.stopPropagation()}),r.append(u)}const l=document.createElement("ul");return l.classList.add(on.UL_LIST_CONTENT),r.append(l),{dom:r,contentDOM:l}}:{}}createExtensions(){return[new gr({priority:Y.Low,enableCollapsible:this.options.enableSpine})]}toggleBulletList(){return Ga(this.type,re(this.store.schema.nodes,"listItem"))}listShortcut(t){return this.toggleBulletList()(t)}createInputRules(){const t=/^\s*([*+-])\s$/;return[ba(t,this.type),new dt(t,(e,n,r,s)=>{const i=e.tr;return i.deleteRange(r,s),mr({listType:this.type,itemType:re(this.store.schema.nodes,"listItem"),tr:i})?i:null})]}};Ze([_({icon:"listUnordered",label:({t})=>t(xa.BULLET_LIST_LABEL)})],xs.prototype,"toggleBulletList",1);Ze([Ye({shortcut:E.BulletList,command:"toggleBulletList"})],xs.prototype,"listShortcut",1);xs=Ze([G({defaultOptions:{enableSpine:!1},staticKeys:["enableSpine"]})],xs);var bs=class extends Pt{get name(){return"orderedList"}createTags(){return[j.Block,j.ListContainerNode]}createNodeSpec(t,e){return{content:"listItem+",...e,attrs:{...t.defaults(),order:{default:1}},parseDOM:[{tag:"ol",getAttrs:n=>$e(n)?{...t.parse(n),order:+(n.getAttribute("start")??1)}:{}},...e.parseDOM??[]],toDOM:n=>{const r=t.dom(n);return n.attrs.order===1?["ol",r,0]:["ol",{...r,start:n.attrs.order},0]}}}createExtensions(){return[new gr({priority:Y.Low})]}toggleOrderedList(){return Ga(this.type,re(this.store.schema.nodes,"listItem"))}listShortcut(t){return this.toggleOrderedList()(t)}createInputRules(){const t=/^(\d+)\.\s$/;return[ba(t,this.type,e=>({order:+re(e,1)}),(e,n)=>n.childCount+n.attrs.order===+re(e,1)),new dt(t,(e,n,r,s)=>{const i=e.tr;if(i.deleteRange(r,s),!mr({listType:this.type,itemType:re(this.store.schema.nodes,"listItem"),tr:i}))return null;const a=+re(n,1);if(a!==1){const l=hs({selection:i.selection,types:this.type});l&&i.setNodeMarkup(l.pos,void 0,{order:a})}return i})]}};Ze([_({icon:"listOrdered",label:({t})=>t(xa.ORDERED_LIST_LABEL)})],bs.prototype,"toggleOrderedList",1);Ze([Ye({shortcut:E.OrderedList,command:"toggleOrderedList"})],bs.prototype,"listShortcut",1);bs=Ze([G({})],bs);var Gh=class extends Pt{get name(){return"taskListItem"}createTags(){return[j.ListItemNode]}createNodeSpec(t,e){return{content:"paragraph block*",defining:!0,draggable:!1,...e,attrs:{...t.defaults(),checked:{default:!1}},parseDOM:[{tag:"li[data-task-list-item]",getAttrs:n=>{let r=!1;return $e(n)&&n.getAttribute("data-checked")!==null&&(r=!0),{checked:r,...t.parse(n)}},priority:Y.Medium},...e.parseDOM??[]],toDOM:n=>["li",{...t.dom(n),"data-task-list-item":"","data-checked":n.attrs.checked?"":void 0},0]}}createNodeViews(){return(t,e,n)=>{const r=document.createElement("input");return r.type="checkbox",r.classList.add(on.LIST_ITEM_CHECKBOX),r.contentEditable="false",r.addEventListener("click",s=>{e.editable||s.preventDefault()}),r.addEventListener("change",()=>{const s=n(),i=e.state.doc.resolve(s+1);this.store.commands.toggleCheckboxChecked({$pos:i})}),r.checked=t.attrs.checked,qh({node:t,mark:r,updateDOM:gS,updateMark:yS})}}createKeymap(){return{Enter:jh(this.type)}}createExtensions(){return[new Jh]}toggleCheckboxChecked(t){let e,n;return typeof t=="boolean"?e=t:t&&(e=t.checked,n=t.$pos),({tr:r,dispatch:s})=>{const i=hs({selection:n??r.selection.$from,types:this.type});if(!i)return!1;const{node:o,pos:a}=i,l={...o.attrs,checked:e??!o.attrs.checked};return s==null||s(r.setNodeMarkup(a,void 0,l)),!0}}createInputRules(){const t=/^\s*(\[( ?|x|X)]\s)$/;return[ba(t,this.type,e=>({checked:["x","X"].includes(wc(e,2))})),new dt(t,(e,n,r,s)=>{const i=e.tr;if(i.deleteRange(r,s),!mr({listType:re(this.store.schema.nodes,"taskList"),itemType:this.type,tr:i}))return null;const a=["x","X"].includes(wc(n,2));if(a){const l=hs({selection:i.selection,types:this.type});l&&i.setNodeMarkup(l.pos,void 0,{checked:a})}return i})]}};Ze([_()],Gh.prototype,"toggleCheckboxChecked",1);function gS(t,e){t.attrs.checked?e.setAttribute("data-checked",""):e.removeAttribute("data-checked"),e.setAttribute("data-task-list-item","")}function yS(t,e){e.checked=!!t.attrs.checked}var Xh=class extends Pt{get name(){return"taskList"}createTags(){return[j.Block,j.ListContainerNode]}createNodeSpec(t,e){return{content:"taskListItem+",...e,attrs:t.defaults(),parseDOM:[{tag:"ul[data-task-list]",getAttrs:t.parse,priority:Y.Medium},...e.parseDOM??[]],toDOM:n=>["ul",{...t.dom(n),"data-task-list":""},0]}}createExtensions(){return[new Gh({})]}toggleTaskList(){return Ga(this.type,re(this.store.schema.nodes,"taskListItem"))}listShortcut(t){return this.toggleTaskList()(t)}};Ze([_({icon:"checkboxMultipleLine",label:({t})=>t(xa.TASK_LIST_LABEL)})],Xh.prototype,"toggleTaskList",1);Ze([Ye({shortcut:E.TaskList,command:"toggleTaskList"})],Xh.prototype,"listShortcut",1);function xS(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)n.hasOwnProperty(r)&&(t[r]=n[r])}return t}function oa(t,e){return Array(e+1).join(t)}function bS(t){return t.replace(/^\n*/,"")}function kS(t){for(var e=t.length;e>0&&t[e-1]===`
|
|
54
|
+
`;)e--;return t.substring(0,e)}var SS=["ADDRESS","ARTICLE","ASIDE","AUDIO","BLOCKQUOTE","BODY","CANVAS","CENTER","DD","DIR","DIV","DL","DT","FIELDSET","FIGCAPTION","FIGURE","FOOTER","FORM","FRAMESET","H1","H2","H3","H4","H5","H6","HEADER","HGROUP","HR","HTML","ISINDEX","LI","MAIN","MENU","NAV","NOFRAMES","NOSCRIPT","OL","OUTPUT","P","PRE","SECTION","TABLE","TBODY","TD","TFOOT","TH","THEAD","TR","UL"];function Xa(t){return Ya(t,SS)}var Yh=["AREA","BASE","BR","COL","COMMAND","EMBED","HR","IMG","INPUT","KEYGEN","LINK","META","PARAM","SOURCE","TRACK","WBR"];function Zh(t){return Ya(t,Yh)}function wS(t){return ef(t,Yh)}var Qh=["A","TABLE","THEAD","TBODY","TFOOT","TH","TD","IFRAME","SCRIPT","AUDIO","VIDEO"];function vS(t){return Ya(t,Qh)}function ES(t){return ef(t,Qh)}function Ya(t,e){return e.indexOf(t.nodeName)>=0}function ef(t,e){return t.getElementsByTagName&&e.some(function(n){return t.getElementsByTagName(n).length})}var Oe={};Oe.paragraph={filter:"p",replacement:function(t){return`
|
|
55
55
|
|
|
56
56
|
`+t+`
|
|
57
57
|
|
|
@@ -98,7 +98,7 @@ If you are using Node.js, you can install JSDOM and Remirror will try to use it
|
|
|
98
98
|
`)+`
|
|
99
99
|
|
|
100
100
|
`,this.references=[]),e}};Oe.emphasis={filter:["em","i"],replacement:function(t,e,n){return t.trim()?n.emDelimiter+t+n.emDelimiter:""}};Oe.strong={filter:["strong","b"],replacement:function(t,e,n){return t.trim()?n.strongDelimiter+t+n.strongDelimiter:""}};Oe.code={filter:function(t){var e=t.previousSibling||t.nextSibling,n=t.parentNode.nodeName==="PRE"&&!e;return t.nodeName==="CODE"&&!n},replacement:function(t){if(!t)return"";t=t.replace(/\r?\n|\r/g," ");for(var e=/^`|^ .*?[^ ].* $|`$/.test(t)?" ":"",n="`",r=t.match(/`+/gm)||[];r.indexOf(n)!==-1;)n=n+"`";return n+e+t+e+n}};Oe.image={filter:"img",replacement:function(t,e){var n=Ei(e.getAttribute("alt")),r=e.getAttribute("src")||"",s=Ei(e.getAttribute("title")),i=s?' "'+s+'"':"";return r?"":""}};function Ei(t){return t?t.replace(/(\n+\s*)+/g,`
|
|
101
|
-
`):""}function
|
|
101
|
+
`):""}function tf(t){this.options=t,this._keep=[],this._remove=[],this.blankRule={replacement:t.blankReplacement},this.keepReplacement=t.keepReplacement,this.defaultRule={replacement:t.defaultReplacement},this.array=[];for(var e in t.rules)this.array.push(t.rules[e])}tf.prototype={add:function(t,e){this.array.unshift(e)},keep:function(t){this._keep.unshift({filter:t,replacement:this.keepReplacement})},remove:function(t){this._remove.unshift({filter:t,replacement:function(){return""}})},forNode:function(t){if(t.isBlank)return this.blankRule;var e;return(e=ko(this.array,t,this.options))||(e=ko(this._keep,t,this.options))||(e=ko(this._remove,t,this.options))?e:this.defaultRule},forEach:function(t){for(var e=0;e<this.array.length;e++)t(this.array[e],e)}};function ko(t,e,n){for(var r=0;r<t.length;r++){var s=t[r];if(CS(s,e,n))return s}}function CS(t,e,n){var r=t.filter;if(typeof r=="string"){if(r===e.nodeName.toLowerCase())return!0}else if(Array.isArray(r)){if(r.indexOf(e.nodeName.toLowerCase())>-1)return!0}else if(typeof r=="function"){if(r.call(t,e,n))return!0}else throw new TypeError("`filter` needs to be a string, array, or function")}function TS(t){var e=t.element,n=t.isBlock,r=t.isVoid,s=t.isPre||function(d){return d.nodeName==="PRE"};if(!(!e.firstChild||s(e))){for(var i=null,o=!1,a=null,l=Fc(a,e,s);l!==e;){if(l.nodeType===3||l.nodeType===4){var c=l.data.replace(/[ \r\n\t]+/g," ");if((!i||/ $/.test(i.data))&&!o&&c[0]===" "&&(c=c.substr(1)),!c){l=So(l);continue}l.data=c,i=l}else if(l.nodeType===1)n(l)||l.nodeName==="BR"?(i&&(i.data=i.data.replace(/ $/,"")),i=null,o=!1):r(l)||s(l)?(i=null,o=!0):i&&(o=!1);else{l=So(l);continue}var u=Fc(a,l,s);a=l,l=u}i&&(i.data=i.data.replace(/ $/,""),i.data||So(i))}}function So(t){var e=t.nextSibling||t.parentNode;return t.parentNode.removeChild(t),e}function Fc(t,e,n){return t&&t.parentNode===e||n(e)?e.nextSibling||e.parentNode:e.firstChild||e.nextSibling||e.parentNode}var Za=typeof window<"u"?window:{};function OS(){var t=Za.DOMParser,e=!1;try{new t().parseFromString("","text/html")&&(e=!0)}catch{}return e}function MS(){var t=function(){};return _S()?t.prototype.parseFromString=function(e){var n=new window.ActiveXObject("htmlfile");return n.designMode="on",n.open(),n.write(e),n.close(),n}:t.prototype.parseFromString=function(e){var n=document.implementation.createHTMLDocument("");return n.open(),n.write(e),n.close(),n},t}function _S(){var t=!1;try{document.implementation.createHTMLDocument("").open()}catch{Za.ActiveXObject&&(t=!0)}return t}var NS=OS()?Za.DOMParser:MS();function AS(t,e){var n;if(typeof t=="string"){var r=RS().parseFromString('<x-turndown id="turndown-root">'+t+"</x-turndown>","text/html");n=r.getElementById("turndown-root")}else n=t.cloneNode(!0);return TS({element:n,isBlock:Xa,isVoid:Zh,isPre:e.preformattedCode?IS:null}),n}var wo;function RS(){return wo=wo||new NS,wo}function IS(t){return t.nodeName==="PRE"||t.nodeName==="CODE"}function DS(t,e){return t.isBlock=Xa(t),t.isCode=t.nodeName==="CODE"||t.parentNode.isCode,t.isBlank=PS(t),t.flankingWhitespace=LS(t,e),t}function PS(t){return!Zh(t)&&!vS(t)&&/^\s*$/i.test(t.textContent)&&!wS(t)&&!ES(t)}function LS(t,e){if(t.isBlock||e.preformattedCode&&t.isCode)return{leading:"",trailing:""};var n=BS(t.textContent);return n.leadingAscii&&Vc("left",t,e)&&(n.leading=n.leadingNonAscii),n.trailingAscii&&Vc("right",t,e)&&(n.trailing=n.trailingNonAscii),{leading:n.leading,trailing:n.trailing}}function BS(t){var e=t.match(/^(([ \t\r\n]*)(\s*))(?:(?=\S)[\s\S]*\S)?((\s*?)([ \t\r\n]*))$/);return{leading:e[1],leadingAscii:e[2],leadingNonAscii:e[3],trailing:e[4],trailingNonAscii:e[5],trailingAscii:e[6]}}function Vc(t,e,n){var r,s,i;return t==="left"?(r=e.previousSibling,s=/ $/):(r=e.nextSibling,s=/^ /),r&&(r.nodeType===3?i=s.test(r.nodeValue):n.preformattedCode&&r.nodeName==="CODE"?i=!1:r.nodeType===1&&!Xa(r)&&(i=s.test(r.textContent))),i}var zS=Array.prototype.reduce,$S=[[/\\/g,"\\\\"],[/\*/g,"\\*"],[/^-/g,"\\-"],[/^\+ /g,"\\+ "],[/^(=+)/g,"\\$1"],[/^(#{1,6}) /g,"\\$1 "],[/`/g,"\\`"],[/^~~~/g,"\\~~~"],[/\[/g,"\\["],[/\]/g,"\\]"],[/^>/g,"\\>"],[/_/g,"\\_"],[/^(\d+)\. /g,"$1\\. "]];function Ci(t){if(!(this instanceof Ci))return new Ci(t);var e={rules:Oe,headingStyle:"setext",hr:"* * *",bulletListMarker:"*",codeBlockStyle:"indented",fence:"```",emDelimiter:"_",strongDelimiter:"**",linkStyle:"inlined",linkReferenceStyle:"full",br:" ",preformattedCode:!1,blankReplacement:function(n,r){return r.isBlock?`
|
|
102
102
|
|
|
103
103
|
`:""},keepReplacement:function(n,r){return r.isBlock?`
|
|
104
104
|
|
|
@@ -108,22 +108,22 @@ If you are using Node.js, you can install JSDOM and Remirror will try to use it
|
|
|
108
108
|
|
|
109
109
|
`+n+`
|
|
110
110
|
|
|
111
|
-
`:n}};this.options=
|
|
111
|
+
`:n}};this.options=xS({},e,t),this.rules=new tf(this.options)}Ci.prototype={turndown:function(t){if(!HS(t))throw new TypeError(t+" is not a string, or an element/document/fragment node.");if(t==="")return"";var e=nf.call(this,new AS(t,this.options));return FS.call(this,e)},use:function(t){if(Array.isArray(t))for(var e=0;e<t.length;e++)this.use(t[e]);else if(typeof t=="function")t(this);else throw new TypeError("plugin must be a Function or an Array of Functions");return this},addRule:function(t,e){return this.rules.add(t,e),this},keep:function(t){return this.rules.keep(t),this},remove:function(t){return this.rules.remove(t),this},escape:function(t){return $S.reduce(function(e,n){return e.replace(n[0],n[1])},t)}};function nf(t){var e=this;return zS.call(t.childNodes,function(n,r){r=new DS(r,e.options);var s="";return r.nodeType===3?s=r.isCode?r.nodeValue:e.escape(r.nodeValue):r.nodeType===1&&(s=VS.call(e,r)),rf(n,s)},"")}function FS(t){var e=this;return this.rules.forEach(function(n){typeof n.append=="function"&&(t=rf(t,n.append(e.options)))}),t.replace(/^[\t\r\n]+/,"").replace(/[\t\r\n\s]+$/,"")}function VS(t){var e=this.rules.forNode(t),n=nf.call(this,t),r=t.flankingWhitespace;return(r.leading||r.trailing)&&(n=n.trim()),r.leading+e.replacement(n,t,this.options)+r.trailing}function rf(t,e){var n=kS(t),r=bS(e),s=Math.max(t.length-n.length,e.length-r.length),i=`
|
|
112
112
|
|
|
113
|
-
`.substring(0,s);return n+i+r}function
|
|
113
|
+
`.substring(0,s);return n+i+r}function HS(t){return t!=null&&(typeof t=="string"||t.nodeType&&(t.nodeType===1||t.nodeType===9||t.nodeType===11))}function sf(){return{async:!1,baseUrl:null,breaks:!1,extensions:null,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,hooks:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:null,sanitize:!1,sanitizer:null,silent:!1,smartypants:!1,tokenizer:null,walkTokens:null,xhtml:!1}}let $n=sf();function US(t){$n=t}const of=/[&<>"']/,jS=new RegExp(of.source,"g"),af=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,WS=new RegExp(af.source,"g"),KS={"&":"&","<":"<",">":">",'"':""","'":"'"},Hc=t=>KS[t];function Ee(t,e){if(e){if(of.test(t))return t.replace(jS,Hc)}else if(af.test(t))return t.replace(WS,Hc);return t}const qS=/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig;function lf(t){return t.replace(qS,(e,n)=>(n=n.toLowerCase(),n==="colon"?":":n.charAt(0)==="#"?n.charAt(1)==="x"?String.fromCharCode(parseInt(n.substring(2),16)):String.fromCharCode(+n.substring(1)):""))}const JS=/(^|[^\[])\^/g;function Z(t,e){t=typeof t=="string"?t:t.source,e=e||"";const n={replace:(r,s)=>(s=s.source||s,s=s.replace(JS,"$1"),t=t.replace(r,s),n),getRegex:()=>new RegExp(t,e)};return n}const GS=/[^\w:]/g,XS=/^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;function Uc(t,e,n){if(t){let r;try{r=decodeURIComponent(lf(n)).replace(GS,"").toLowerCase()}catch{return null}if(r.indexOf("javascript:")===0||r.indexOf("vbscript:")===0||r.indexOf("data:")===0)return null}e&&!XS.test(n)&&(n=ew(e,n));try{n=encodeURI(n).replace(/%25/g,"%")}catch{return null}return n}const Ls={},YS=/^[^:]+:\/*[^/]*$/,ZS=/^([^:]+:)[\s\S]*$/,QS=/^([^:]+:\/*[^/]*)[\s\S]*$/;function ew(t,e){Ls[" "+t]||(YS.test(t)?Ls[" "+t]=t+"/":Ls[" "+t]=Zs(t,"/",!0)),t=Ls[" "+t];const n=t.indexOf(":")===-1;return e.substring(0,2)==="//"?n?e:t.replace(ZS,"$1")+e:e.charAt(0)==="/"?n?e:t.replace(QS,"$1")+e:t+e}const Ti={exec:function(){}};function jc(t,e){const n=t.replace(/\|/g,(i,o,a)=>{let l=!1,c=o;for(;--c>=0&&a[c]==="\\";)l=!l;return l?"|":" |"}),r=n.split(/ \|/);let s=0;if(r[0].trim()||r.shift(),r.length>0&&!r[r.length-1].trim()&&r.pop(),r.length>e)r.splice(e);else for(;r.length<e;)r.push("");for(;s<r.length;s++)r[s]=r[s].trim().replace(/\\\|/g,"|");return r}function Zs(t,e,n){const r=t.length;if(r===0)return"";let s=0;for(;s<r;){const i=t.charAt(r-s-1);if(i===e&&!n)s++;else if(i!==e&&n)s++;else break}return t.slice(0,r-s)}function tw(t,e){if(t.indexOf(e[1])===-1)return-1;const n=t.length;let r=0,s=0;for(;s<n;s++)if(t[s]==="\\")s++;else if(t[s]===e[0])r++;else if(t[s]===e[1]&&(r--,r<0))return s;return-1}function nw(t){t&&t.sanitize&&!t.silent&&console.warn("marked(): sanitize and sanitizer parameters are deprecated since version 0.7.0, should not be used and will be removed in the future. Read more here: https://marked.js.org/#/USING_ADVANCED.md#options")}function Wc(t,e){if(e<1)return"";let n="";for(;e>1;)e&1&&(n+=t),e>>=1,t+=t;return n+t}function Kc(t,e,n,r){const s=e.href,i=e.title?Ee(e.title):null,o=t[1].replace(/\\([\[\]])/g,"$1");if(t[0].charAt(0)!=="!"){r.state.inLink=!0;const a={type:"link",raw:n,href:s,title:i,text:o,tokens:r.inlineTokens(o)};return r.state.inLink=!1,a}return{type:"image",raw:n,href:s,title:i,text:Ee(o)}}function rw(t,e){const n=t.match(/^(\s+)(?:```)/);if(n===null)return e;const r=n[1];return e.split(`
|
|
114
114
|
`).map(s=>{const i=s.match(/^\s+/);if(i===null)return s;const[o]=i;return o.length>=r.length?s.slice(r.length):s}).join(`
|
|
115
115
|
`)}class Qa{constructor(e){this.options=e||$n}space(e){const n=this.rules.block.newline.exec(e);if(n&&n[0].length>0)return{type:"space",raw:n[0]}}code(e){const n=this.rules.block.code.exec(e);if(n){const r=n[0].replace(/^ {1,4}/gm,"");return{type:"code",raw:n[0],codeBlockStyle:"indented",text:this.options.pedantic?r:Zs(r,`
|
|
116
|
-
`)}}}fences(e){const n=this.rules.block.fences.exec(e);if(n){const r=n[0],s=
|
|
116
|
+
`)}}}fences(e){const n=this.rules.block.fences.exec(e);if(n){const r=n[0],s=rw(r,n[3]||"");return{type:"code",raw:r,lang:n[2]?n[2].trim().replace(this.rules.inline._escapes,"$1"):n[2],text:s}}}heading(e){const n=this.rules.block.heading.exec(e);if(n){let r=n[2].trim();if(/#$/.test(r)){const s=Zs(r,"#");(this.options.pedantic||!s||/ $/.test(s))&&(r=s.trim())}return{type:"heading",raw:n[0],depth:n[1].length,text:r,tokens:this.lexer.inline(r)}}}hr(e){const n=this.rules.block.hr.exec(e);if(n)return{type:"hr",raw:n[0]}}blockquote(e){const n=this.rules.block.blockquote.exec(e);if(n){const r=n[0].replace(/^ *>[ \t]?/gm,""),s=this.lexer.state.top;this.lexer.state.top=!0;const i=this.lexer.blockTokens(r);return this.lexer.state.top=s,{type:"blockquote",raw:n[0],tokens:i,text:r}}}list(e){let n=this.rules.block.list.exec(e);if(n){let r,s,i,o,a,l,c,u,d,h,f,p,m=n[1].trim();const g=m.length>1,y={type:"list",raw:"",ordered:g,start:g?+m.slice(0,-1):"",loose:!1,items:[]};m=g?`\\d{1,9}\\${m.slice(-1)}`:`\\${m}`,this.options.pedantic&&(m=g?m:"[*+-]");const k=new RegExp(`^( {0,3}${m})((?:[ ][^\\n]*)?(?:\\n|$))`);for(;e&&(p=!1,!(!(n=k.exec(e))||this.rules.block.hr.test(e)));){if(r=n[0],e=e.substring(r.length),u=n[2].split(`
|
|
117
117
|
`,1)[0].replace(/^\t+/,q=>" ".repeat(3*q.length)),d=e.split(`
|
|
118
118
|
`,1)[0],this.options.pedantic?(o=2,f=u.trimLeft()):(o=n[2].search(/[^ ]/),o=o>4?1:o,f=u.slice(o),o+=n[1].length),l=!1,!u&&/^ *$/.test(d)&&(r+=d+`
|
|
119
119
|
`,e=e.substring(d.length+1),p=!0),!p){const q=new RegExp(`^ {0,${Math.min(3,o-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),J=new RegExp(`^ {0,${Math.min(3,o-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),$=new RegExp(`^ {0,${Math.min(3,o-1)}}(?:\`\`\`|~~~)`),oe=new RegExp(`^ {0,${Math.min(3,o-1)}}#`);for(;e&&(h=e.split(`
|
|
120
120
|
`,1)[0],d=h,this.options.pedantic&&(d=d.replace(/^ {1,4}(?=( {4})*[^ ])/g," ")),!($.test(d)||oe.test(d)||q.test(d)||J.test(e)));){if(d.search(/[^ ]/)>=o||!d.trim())f+=`
|
|
121
121
|
`+d.slice(o);else{if(l||u.search(/[^ ]/)>=4||$.test(u)||oe.test(u)||J.test(u))break;f+=`
|
|
122
122
|
`+d}!l&&!d.trim()&&(l=!0),r+=h+`
|
|
123
|
-
`,e=e.substring(h.length+1),u=d.slice(o)}}y.loose||(c?y.loose=!0:/\n *\n *$/.test(r)&&(c=!0)),this.options.gfm&&(s=/^\[[ xX]\] /.exec(f),s&&(i=s[0]!=="[ ] ",f=f.replace(/^\[[ xX]\] +/,""))),y.items.push({type:"list_item",raw:r,task:!!s,checked:i,loose:!1,text:f}),y.raw+=r}y.items[y.items.length-1].raw=r.trimRight(),y.items[y.items.length-1].text=f.trimRight(),y.raw=y.raw.trimRight();const D=y.items.length;for(a=0;a<D;a++)if(this.lexer.state.top=!1,y.items[a].tokens=this.lexer.blockTokens(y.items[a].text,[]),!y.loose){const q=y.items[a].tokens.filter($=>$.type==="space"),J=q.length>0&&q.some($=>/\n.*\n/.test($.raw));y.loose=J}if(y.loose)for(a=0;a<D;a++)y.items[a].loose=!0;return y}}html(e){const n=this.rules.block.html.exec(e);if(n){const r={type:"html",raw:n[0],pre:!this.options.sanitizer&&(n[1]==="pre"||n[1]==="script"||n[1]==="style"),text:n[0]};if(this.options.sanitize){const s=this.options.sanitizer?this.options.sanitizer(n[0]):Ee(n[0]);r.type="paragraph",r.text=s,r.tokens=this.lexer.inline(s)}return r}}def(e){const n=this.rules.block.def.exec(e);if(n){const r=n[1].toLowerCase().replace(/\s+/g," "),s=n[2]?n[2].replace(/^<(.*)>$/,"$1").replace(this.rules.inline._escapes,"$1"):"",i=n[3]?n[3].substring(1,n[3].length-1).replace(this.rules.inline._escapes,"$1"):n[3];return{type:"def",tag:r,raw:n[0],href:s,title:i}}}table(e){const n=this.rules.block.table.exec(e);if(n){const r={type:"table",header:
|
|
124
|
-
`):[]};if(r.header.length===r.align.length){r.raw=n[0];let s=r.align.length,i,o,a,l;for(i=0;i<s;i++)/^ *-+: *$/.test(r.align[i])?r.align[i]="right":/^ *:-+: *$/.test(r.align[i])?r.align[i]="center":/^ *:-+ *$/.test(r.align[i])?r.align[i]="left":r.align[i]=null;for(s=r.rows.length,i=0;i<s;i++)r.rows[i]=
|
|
125
|
-
`?n[1].slice(0,-1):n[1];return{type:"paragraph",raw:n[0],text:r,tokens:this.lexer.inline(r)}}}text(e){const n=this.rules.block.text.exec(e);if(n)return{type:"text",raw:n[0],text:n[0],tokens:this.lexer.inline(n[0])}}escape(e){const n=this.rules.inline.escape.exec(e);if(n)return{type:"escape",raw:n[0],text:Ee(n[1])}}tag(e){const n=this.rules.inline.tag.exec(e);if(n)return!this.lexer.state.inLink&&/^<a /i.test(n[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&/^<\/a>/i.test(n[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(n[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(n[0])&&(this.lexer.state.inRawBlock=!1),{type:this.options.sanitize?"text":"html",raw:n[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(n[0]):Ee(n[0]):n[0]}}link(e){const n=this.rules.inline.link.exec(e);if(n){const r=n[2].trim();if(!this.options.pedantic&&/^</.test(r)){if(!/>$/.test(r))return;const o=Zs(r.slice(0,-1),"\\");if((r.length-o.length)%2===0)return}else{const o=
|
|
126
|
-
]`).replace("lheading",A.lheading).replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").getRegex()};const C={escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,autolink:/^<(scheme:[^\s\x00-\x1f<>]*|email)>/,url:Ti,tag:"^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>",link:/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,reflink:/^!?\[(label)\]\[(ref)\]/,nolink:/^!?\[(ref)\](?:\[\])?/,reflinkSearch:"reflink|nolink(?!\\()",emStrong:{lDelim:/^(?:\*+(?:([punct_])|[^\s*]))|^_+(?:([punct*])|([^\s_]))/,rDelimAst:/^(?:[^_*\\]|\\.)*?\_\_(?:[^_*\\]|\\.)*?\*(?:[^_*\\]|\\.)*?(?=\_\_)|(?:[^*\\]|\\.)+(?=[^*])|[punct_](\*+)(?=[\s]|$)|(?:[^punct*_\s\\]|\\.)(\*+)(?=[punct_\s]|$)|[punct_\s](\*+)(?=[^punct*_\s])|[\s](\*+)(?=[punct_])|[punct_](\*+)(?=[punct_])|(?:[^punct*_\s\\]|\\.)(\*+)(?=[^punct*_\s])/,rDelimUnd:/^(?:[^_*\\]|\\.)*?\*\*(?:[^_*\\]|\\.)*?\_(?:[^_*\\]|\\.)*?(?=\*\*)|(?:[^_\\]|\\.)+(?=[^_])|[punct*](\_+)(?=[\s]|$)|(?:[^punct*_\s\\]|\\.)(\_+)(?=[punct*\s]|$)|[punct*\s](\_+)(?=[^punct*_\s])|[\s](\_+)(?=[punct*])|[punct*](\_+)(?=[punct*])/},code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,br:/^( {2,}|\\)\n(?!\s*$)/,del:Ti,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,punctuation:/^([\spunctuation])/};C._punctuation="!\"#$%&'()+\\-.,/:;<=>?@\\[\\]`^{|}~";C.punctuation=Z(C.punctuation).replace(/punctuation/g,C._punctuation).getRegex();C.blockSkip=/\[[^\]]*?\]\([^\)]*?\)|`[^`]*?`|<[^>]*?>/g;C.escapedEmSt=/(?:^|[^\\])(?:\\\\)*\\[*_]/g;C._comment=Z(A._comment).replace("(?:-->|$)","-->").getRegex();C.emStrong.lDelim=Z(C.emStrong.lDelim).replace(/punct/g,C._punctuation).getRegex();C.emStrong.rDelimAst=Z(C.emStrong.rDelimAst,"g").replace(/punct/g,C._punctuation).getRegex();C.emStrong.rDelimUnd=Z(C.emStrong.rDelimUnd,"g").replace(/punct/g,C._punctuation).getRegex();C._escapes=/\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g;C._scheme=/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/;C._email=/[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])?)+(?![-_])/;C.autolink=Z(C.autolink).replace("scheme",C._scheme).replace("email",C._email).getRegex();C._attribute=/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/;C.tag=Z(C.tag).replace("comment",C._comment).replace("attribute",C._attribute).getRegex();C._label=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/;C._href=/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/;C._title=/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/;C.link=Z(C.link).replace("label",C._label).replace("href",C._href).replace("title",C._title).getRegex();C.reflink=Z(C.reflink).replace("label",C._label).replace("ref",A._label).getRegex();C.nolink=Z(C.nolink).replace("ref",A._label).getRegex();C.reflinkSearch=Z(C.reflinkSearch,"g").replace("reflink",C.reflink).replace("nolink",C.nolink).getRegex();C.normal={...C};C.pedantic={...C.normal,strong:{start:/^__|\*\*/,middle:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,endAst:/\*\*(?!\*)/g,endUnd:/__(?!_)/g},em:{start:/^_|\*/,middle:/^()\*(?=\S)([\s\S]*?\S)\*(?!\*)|^_(?=\S)([\s\S]*?\S)_(?!_)/,endAst:/\*(?!\*)/g,endUnd:/_(?!_)/g},link:Z(/^!?\[(label)\]\((.*?)\)/).replace("label",C._label).getRegex(),reflink:Z(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",C._label).getRegex()};C.gfm={...C.normal,escape:Z(C.escape).replace("])","~|])").getRegex(),_extended_email:/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,url:/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/};C.gfm.url=Z(C.gfm.url,"i").replace("email",C.gfm._extended_email).getRegex();C.breaks={...C.gfm,br:Z(C.br).replace("{2,}","*").getRegex(),text:Z(C.gfm.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()};function
|
|
123
|
+
`,e=e.substring(h.length+1),u=d.slice(o)}}y.loose||(c?y.loose=!0:/\n *\n *$/.test(r)&&(c=!0)),this.options.gfm&&(s=/^\[[ xX]\] /.exec(f),s&&(i=s[0]!=="[ ] ",f=f.replace(/^\[[ xX]\] +/,""))),y.items.push({type:"list_item",raw:r,task:!!s,checked:i,loose:!1,text:f}),y.raw+=r}y.items[y.items.length-1].raw=r.trimRight(),y.items[y.items.length-1].text=f.trimRight(),y.raw=y.raw.trimRight();const D=y.items.length;for(a=0;a<D;a++)if(this.lexer.state.top=!1,y.items[a].tokens=this.lexer.blockTokens(y.items[a].text,[]),!y.loose){const q=y.items[a].tokens.filter($=>$.type==="space"),J=q.length>0&&q.some($=>/\n.*\n/.test($.raw));y.loose=J}if(y.loose)for(a=0;a<D;a++)y.items[a].loose=!0;return y}}html(e){const n=this.rules.block.html.exec(e);if(n){const r={type:"html",raw:n[0],pre:!this.options.sanitizer&&(n[1]==="pre"||n[1]==="script"||n[1]==="style"),text:n[0]};if(this.options.sanitize){const s=this.options.sanitizer?this.options.sanitizer(n[0]):Ee(n[0]);r.type="paragraph",r.text=s,r.tokens=this.lexer.inline(s)}return r}}def(e){const n=this.rules.block.def.exec(e);if(n){const r=n[1].toLowerCase().replace(/\s+/g," "),s=n[2]?n[2].replace(/^<(.*)>$/,"$1").replace(this.rules.inline._escapes,"$1"):"",i=n[3]?n[3].substring(1,n[3].length-1).replace(this.rules.inline._escapes,"$1"):n[3];return{type:"def",tag:r,raw:n[0],href:s,title:i}}}table(e){const n=this.rules.block.table.exec(e);if(n){const r={type:"table",header:jc(n[1]).map(s=>({text:s})),align:n[2].replace(/^ *|\| *$/g,"").split(/ *\| */),rows:n[3]&&n[3].trim()?n[3].replace(/\n[ \t]*$/,"").split(`
|
|
124
|
+
`):[]};if(r.header.length===r.align.length){r.raw=n[0];let s=r.align.length,i,o,a,l;for(i=0;i<s;i++)/^ *-+: *$/.test(r.align[i])?r.align[i]="right":/^ *:-+: *$/.test(r.align[i])?r.align[i]="center":/^ *:-+ *$/.test(r.align[i])?r.align[i]="left":r.align[i]=null;for(s=r.rows.length,i=0;i<s;i++)r.rows[i]=jc(r.rows[i],r.header.length).map(c=>({text:c}));for(s=r.header.length,o=0;o<s;o++)r.header[o].tokens=this.lexer.inline(r.header[o].text);for(s=r.rows.length,o=0;o<s;o++)for(l=r.rows[o],a=0;a<l.length;a++)l[a].tokens=this.lexer.inline(l[a].text);return r}}}lheading(e){const n=this.rules.block.lheading.exec(e);if(n)return{type:"heading",raw:n[0],depth:n[2].charAt(0)==="="?1:2,text:n[1],tokens:this.lexer.inline(n[1])}}paragraph(e){const n=this.rules.block.paragraph.exec(e);if(n){const r=n[1].charAt(n[1].length-1)===`
|
|
125
|
+
`?n[1].slice(0,-1):n[1];return{type:"paragraph",raw:n[0],text:r,tokens:this.lexer.inline(r)}}}text(e){const n=this.rules.block.text.exec(e);if(n)return{type:"text",raw:n[0],text:n[0],tokens:this.lexer.inline(n[0])}}escape(e){const n=this.rules.inline.escape.exec(e);if(n)return{type:"escape",raw:n[0],text:Ee(n[1])}}tag(e){const n=this.rules.inline.tag.exec(e);if(n)return!this.lexer.state.inLink&&/^<a /i.test(n[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&/^<\/a>/i.test(n[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(n[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(n[0])&&(this.lexer.state.inRawBlock=!1),{type:this.options.sanitize?"text":"html",raw:n[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,text:this.options.sanitize?this.options.sanitizer?this.options.sanitizer(n[0]):Ee(n[0]):n[0]}}link(e){const n=this.rules.inline.link.exec(e);if(n){const r=n[2].trim();if(!this.options.pedantic&&/^</.test(r)){if(!/>$/.test(r))return;const o=Zs(r.slice(0,-1),"\\");if((r.length-o.length)%2===0)return}else{const o=tw(n[2],"()");if(o>-1){const l=(n[0].indexOf("!")===0?5:4)+n[1].length+o;n[2]=n[2].substring(0,o),n[0]=n[0].substring(0,l).trim(),n[3]=""}}let s=n[2],i="";if(this.options.pedantic){const o=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(s);o&&(s=o[1],i=o[3])}else i=n[3]?n[3].slice(1,-1):"";return s=s.trim(),/^</.test(s)&&(this.options.pedantic&&!/>$/.test(r)?s=s.slice(1):s=s.slice(1,-1)),Kc(n,{href:s&&s.replace(this.rules.inline._escapes,"$1"),title:i&&i.replace(this.rules.inline._escapes,"$1")},n[0],this.lexer)}}reflink(e,n){let r;if((r=this.rules.inline.reflink.exec(e))||(r=this.rules.inline.nolink.exec(e))){let s=(r[2]||r[1]).replace(/\s+/g," ");if(s=n[s.toLowerCase()],!s){const i=r[0].charAt(0);return{type:"text",raw:i,text:i}}return Kc(r,s,r[0],this.lexer)}}emStrong(e,n,r=""){let s=this.rules.inline.emStrong.lDelim.exec(e);if(!s||s[3]&&r.match(/[\p{L}\p{N}]/u))return;const i=s[1]||s[2]||"";if(!i||i&&(r===""||this.rules.inline.punctuation.exec(r))){const o=s[0].length-1;let a,l,c=o,u=0;const d=s[0][0]==="*"?this.rules.inline.emStrong.rDelimAst:this.rules.inline.emStrong.rDelimUnd;for(d.lastIndex=0,n=n.slice(-1*e.length+o);(s=d.exec(n))!=null;){if(a=s[1]||s[2]||s[3]||s[4]||s[5]||s[6],!a)continue;if(l=a.length,s[3]||s[4]){c+=l;continue}else if((s[5]||s[6])&&o%3&&!((o+l)%3)){u+=l;continue}if(c-=l,c>0)continue;l=Math.min(l,l+c+u);const h=e.slice(0,o+s.index+(s[0].length-a.length)+l);if(Math.min(o,l)%2){const p=h.slice(1,-1);return{type:"em",raw:h,text:p,tokens:this.lexer.inlineTokens(p)}}const f=h.slice(2,-2);return{type:"strong",raw:h,text:f,tokens:this.lexer.inlineTokens(f)}}}}codespan(e){const n=this.rules.inline.code.exec(e);if(n){let r=n[2].replace(/\n/g," ");const s=/[^ ]/.test(r),i=/^ /.test(r)&&/ $/.test(r);return s&&i&&(r=r.substring(1,r.length-1)),r=Ee(r,!0),{type:"codespan",raw:n[0],text:r}}}br(e){const n=this.rules.inline.br.exec(e);if(n)return{type:"br",raw:n[0]}}del(e){const n=this.rules.inline.del.exec(e);if(n)return{type:"del",raw:n[0],text:n[2],tokens:this.lexer.inlineTokens(n[2])}}autolink(e,n){const r=this.rules.inline.autolink.exec(e);if(r){let s,i;return r[2]==="@"?(s=Ee(this.options.mangle?n(r[1]):r[1]),i="mailto:"+s):(s=Ee(r[1]),i=s),{type:"link",raw:r[0],text:s,href:i,tokens:[{type:"text",raw:s,text:s}]}}}url(e,n){let r;if(r=this.rules.inline.url.exec(e)){let s,i;if(r[2]==="@")s=Ee(this.options.mangle?n(r[0]):r[0]),i="mailto:"+s;else{let o;do o=r[0],r[0]=this.rules.inline._backpedal.exec(r[0])[0];while(o!==r[0]);s=Ee(r[0]),r[1]==="www."?i="http://"+r[0]:i=r[0]}return{type:"link",raw:r[0],text:s,href:i,tokens:[{type:"text",raw:s,text:s}]}}}inlineText(e,n){const r=this.rules.inline.text.exec(e);if(r){let s;return this.lexer.state.inRawBlock?s=this.options.sanitize?this.options.sanitizer?this.options.sanitizer(r[0]):Ee(r[0]):r[0]:s=Ee(this.options.smartypants?n(r[0]):r[0]),{type:"text",raw:r[0],text:s}}}}const A={newline:/^(?: *(?:\n|$))+/,code:/^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,fences:/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,hr:/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,blockquote:/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,list:/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/,html:"^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))",def:/^ {0,3}\[(label)\]: *(?:\n *)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/,table:Ti,lheading:/^((?:.|\n(?!\n))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,_paragraph:/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,text:/^[^\n]+/};A._label=/(?!\s*\])(?:\\.|[^\[\]\\])+/;A._title=/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/;A.def=Z(A.def).replace("label",A._label).replace("title",A._title).getRegex();A.bullet=/(?:[*+-]|\d{1,9}[.)])/;A.listItemStart=Z(/^( *)(bull) */).replace("bull",A.bullet).getRegex();A.list=Z(A.list).replace(/bull/g,A.bullet).replace("hr","\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def","\\n+(?="+A.def.source+")").getRegex();A._tag="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|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul";A._comment=/<!--(?!-?>)[\s\S]*?(?:-->|$)/;A.html=Z(A.html,"i").replace("comment",A._comment).replace("tag",A._tag).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex();A.paragraph=Z(A._paragraph).replace("hr",A.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",A._tag).getRegex();A.blockquote=Z(A.blockquote).replace("paragraph",A.paragraph).getRegex();A.normal={...A};A.gfm={...A.normal,table:"^ *([^\\n ].*\\|.*)\\n {0,3}(?:\\| *)?(:?-+:? *(?:\\| *:?-+:? *)*)(?:\\| *)?(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)"};A.gfm.table=Z(A.gfm.table).replace("hr",A.hr).replace("heading"," {0,3}#{1,6} ").replace("blockquote"," {0,3}>").replace("code"," {4}[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",A._tag).getRegex();A.gfm.paragraph=Z(A._paragraph).replace("hr",A.hr).replace("heading"," {0,3}#{1,6} ").replace("|lheading","").replace("table",A.gfm.table).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",A._tag).getRegex();A.pedantic={...A.normal,html:Z(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",A._comment).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:Ti,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:Z(A.normal._paragraph).replace("hr",A.hr).replace("heading",` *#{1,6} *[^
|
|
126
|
+
]`).replace("lheading",A.lheading).replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").getRegex()};const C={escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,autolink:/^<(scheme:[^\s\x00-\x1f<>]*|email)>/,url:Ti,tag:"^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>",link:/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,reflink:/^!?\[(label)\]\[(ref)\]/,nolink:/^!?\[(ref)\](?:\[\])?/,reflinkSearch:"reflink|nolink(?!\\()",emStrong:{lDelim:/^(?:\*+(?:([punct_])|[^\s*]))|^_+(?:([punct*])|([^\s_]))/,rDelimAst:/^(?:[^_*\\]|\\.)*?\_\_(?:[^_*\\]|\\.)*?\*(?:[^_*\\]|\\.)*?(?=\_\_)|(?:[^*\\]|\\.)+(?=[^*])|[punct_](\*+)(?=[\s]|$)|(?:[^punct*_\s\\]|\\.)(\*+)(?=[punct_\s]|$)|[punct_\s](\*+)(?=[^punct*_\s])|[\s](\*+)(?=[punct_])|[punct_](\*+)(?=[punct_])|(?:[^punct*_\s\\]|\\.)(\*+)(?=[^punct*_\s])/,rDelimUnd:/^(?:[^_*\\]|\\.)*?\*\*(?:[^_*\\]|\\.)*?\_(?:[^_*\\]|\\.)*?(?=\*\*)|(?:[^_\\]|\\.)+(?=[^_])|[punct*](\_+)(?=[\s]|$)|(?:[^punct*_\s\\]|\\.)(\_+)(?=[punct*\s]|$)|[punct*\s](\_+)(?=[^punct*_\s])|[\s](\_+)(?=[punct*])|[punct*](\_+)(?=[punct*])/},code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,br:/^( {2,}|\\)\n(?!\s*$)/,del:Ti,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,punctuation:/^([\spunctuation])/};C._punctuation="!\"#$%&'()+\\-.,/:;<=>?@\\[\\]`^{|}~";C.punctuation=Z(C.punctuation).replace(/punctuation/g,C._punctuation).getRegex();C.blockSkip=/\[[^\]]*?\]\([^\)]*?\)|`[^`]*?`|<[^>]*?>/g;C.escapedEmSt=/(?:^|[^\\])(?:\\\\)*\\[*_]/g;C._comment=Z(A._comment).replace("(?:-->|$)","-->").getRegex();C.emStrong.lDelim=Z(C.emStrong.lDelim).replace(/punct/g,C._punctuation).getRegex();C.emStrong.rDelimAst=Z(C.emStrong.rDelimAst,"g").replace(/punct/g,C._punctuation).getRegex();C.emStrong.rDelimUnd=Z(C.emStrong.rDelimUnd,"g").replace(/punct/g,C._punctuation).getRegex();C._escapes=/\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g;C._scheme=/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/;C._email=/[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])?)+(?![-_])/;C.autolink=Z(C.autolink).replace("scheme",C._scheme).replace("email",C._email).getRegex();C._attribute=/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/;C.tag=Z(C.tag).replace("comment",C._comment).replace("attribute",C._attribute).getRegex();C._label=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/;C._href=/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/;C._title=/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/;C.link=Z(C.link).replace("label",C._label).replace("href",C._href).replace("title",C._title).getRegex();C.reflink=Z(C.reflink).replace("label",C._label).replace("ref",A._label).getRegex();C.nolink=Z(C.nolink).replace("ref",A._label).getRegex();C.reflinkSearch=Z(C.reflinkSearch,"g").replace("reflink",C.reflink).replace("nolink",C.nolink).getRegex();C.normal={...C};C.pedantic={...C.normal,strong:{start:/^__|\*\*/,middle:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,endAst:/\*\*(?!\*)/g,endUnd:/__(?!_)/g},em:{start:/^_|\*/,middle:/^()\*(?=\S)([\s\S]*?\S)\*(?!\*)|^_(?=\S)([\s\S]*?\S)_(?!_)/,endAst:/\*(?!\*)/g,endUnd:/_(?!_)/g},link:Z(/^!?\[(label)\]\((.*?)\)/).replace("label",C._label).getRegex(),reflink:Z(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",C._label).getRegex()};C.gfm={...C.normal,escape:Z(C.escape).replace("])","~|])").getRegex(),_extended_email:/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,url:/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/};C.gfm.url=Z(C.gfm.url,"i").replace("email",C.gfm._extended_email).getRegex();C.breaks={...C.gfm,br:Z(C.br).replace("{2,}","*").getRegex(),text:Z(C.gfm.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()};function sw(t){return t.replace(/---/g,"—").replace(/--/g,"–").replace(/(^|[-\u2014/(\[{"\s])'/g,"$1‘").replace(/'/g,"’").replace(/(^|[-\u2014/(\[{\u2018\s])"/g,"$1“").replace(/"/g,"”").replace(/\.{3}/g,"…")}function qc(t){let e="",n,r;const s=t.length;for(n=0;n<s;n++)r=t.charCodeAt(n),Math.random()>.5&&(r="x"+r.toString(16)),e+="&#"+r+";";return e}class ln{constructor(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||$n,this.options.tokenizer=this.options.tokenizer||new Qa,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};const n={block:A.normal,inline:C.normal};this.options.pedantic?(n.block=A.pedantic,n.inline=C.pedantic):this.options.gfm&&(n.block=A.gfm,this.options.breaks?n.inline=C.breaks:n.inline=C.gfm),this.tokenizer.rules=n}static get rules(){return{block:A,inline:C}}static lex(e,n){return new ln(n).lex(e)}static lexInline(e,n){return new ln(n).inlineTokens(e)}lex(e){e=e.replace(/\r\n|\r/g,`
|
|
127
127
|
`),this.blockTokens(e,this.tokens);let n;for(;n=this.inlineQueue.shift();)this.inlineTokens(n.src,n.tokens);return this.tokens}blockTokens(e,n=[]){this.options.pedantic?e=e.replace(/\t/g," ").replace(/^ +$/gm,""):e=e.replace(/^( *)(\t+)/gm,(a,l,c)=>l+" ".repeat(c.length));let r,s,i,o;for(;e;)if(!(this.options.extensions&&this.options.extensions.block&&this.options.extensions.block.some(a=>(r=a.call({lexer:this},e,n))?(e=e.substring(r.raw.length),n.push(r),!0):!1))){if(r=this.tokenizer.space(e)){e=e.substring(r.raw.length),r.raw.length===1&&n.length>0?n[n.length-1].raw+=`
|
|
128
128
|
`:n.push(r);continue}if(r=this.tokenizer.code(e)){e=e.substring(r.raw.length),s=n[n.length-1],s&&(s.type==="paragraph"||s.type==="text")?(s.raw+=`
|
|
129
129
|
`+r.raw,s.text+=`
|
|
@@ -133,7 +133,7 @@ If you are using Node.js, you can install JSDOM and Remirror will try to use it
|
|
|
133
133
|
`+r.raw,s.text+=`
|
|
134
134
|
`+r.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=s.text):n.push(r),o=i.length!==e.length,e=e.substring(r.raw.length);continue}if(r=this.tokenizer.text(e)){e=e.substring(r.raw.length),s=n[n.length-1],s&&s.type==="text"?(s.raw+=`
|
|
135
135
|
`+r.raw,s.text+=`
|
|
136
|
-
`+r.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=s.text):n.push(r);continue}if(e){const a="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(a);break}else throw new Error(a)}}return this.state.top=!0,n}inline(e,n=[]){return this.inlineQueue.push({src:e,tokens:n}),n}inlineTokens(e,n=[]){let r,s,i,o=e,a,l,c;if(this.tokens.links){const u=Object.keys(this.tokens.links);if(u.length>0)for(;(a=this.tokenizer.rules.inline.reflinkSearch.exec(o))!=null;)u.includes(a[0].slice(a[0].lastIndexOf("[")+1,-1))&&(o=o.slice(0,a.index)+"["+
|
|
136
|
+
`+r.text,this.inlineQueue.pop(),this.inlineQueue[this.inlineQueue.length-1].src=s.text):n.push(r);continue}if(e){const a="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(a);break}else throw new Error(a)}}return this.state.top=!0,n}inline(e,n=[]){return this.inlineQueue.push({src:e,tokens:n}),n}inlineTokens(e,n=[]){let r,s,i,o=e,a,l,c;if(this.tokens.links){const u=Object.keys(this.tokens.links);if(u.length>0)for(;(a=this.tokenizer.rules.inline.reflinkSearch.exec(o))!=null;)u.includes(a[0].slice(a[0].lastIndexOf("[")+1,-1))&&(o=o.slice(0,a.index)+"["+Wc("a",a[0].length-2)+"]"+o.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(a=this.tokenizer.rules.inline.blockSkip.exec(o))!=null;)o=o.slice(0,a.index)+"["+Wc("a",a[0].length-2)+"]"+o.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);for(;(a=this.tokenizer.rules.inline.escapedEmSt.exec(o))!=null;)o=o.slice(0,a.index+a[0].length-2)+"++"+o.slice(this.tokenizer.rules.inline.escapedEmSt.lastIndex),this.tokenizer.rules.inline.escapedEmSt.lastIndex--;for(;e;)if(l||(c=""),l=!1,!(this.options.extensions&&this.options.extensions.inline&&this.options.extensions.inline.some(u=>(r=u.call({lexer:this},e,n))?(e=e.substring(r.raw.length),n.push(r),!0):!1))){if(r=this.tokenizer.escape(e)){e=e.substring(r.raw.length),n.push(r);continue}if(r=this.tokenizer.tag(e)){e=e.substring(r.raw.length),s=n[n.length-1],s&&r.type==="text"&&s.type==="text"?(s.raw+=r.raw,s.text+=r.text):n.push(r);continue}if(r=this.tokenizer.link(e)){e=e.substring(r.raw.length),n.push(r);continue}if(r=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(r.raw.length),s=n[n.length-1],s&&r.type==="text"&&s.type==="text"?(s.raw+=r.raw,s.text+=r.text):n.push(r);continue}if(r=this.tokenizer.emStrong(e,o,c)){e=e.substring(r.raw.length),n.push(r);continue}if(r=this.tokenizer.codespan(e)){e=e.substring(r.raw.length),n.push(r);continue}if(r=this.tokenizer.br(e)){e=e.substring(r.raw.length),n.push(r);continue}if(r=this.tokenizer.del(e)){e=e.substring(r.raw.length),n.push(r);continue}if(r=this.tokenizer.autolink(e,qc)){e=e.substring(r.raw.length),n.push(r);continue}if(!this.state.inLink&&(r=this.tokenizer.url(e,qc))){e=e.substring(r.raw.length),n.push(r);continue}if(i=e,this.options.extensions&&this.options.extensions.startInline){let u=1/0;const d=e.slice(1);let h;this.options.extensions.startInline.forEach(function(f){h=f.call({lexer:this},d),typeof h=="number"&&h>=0&&(u=Math.min(u,h))}),u<1/0&&u>=0&&(i=e.substring(0,u+1))}if(r=this.tokenizer.inlineText(i,sw)){e=e.substring(r.raw.length),r.raw.slice(-1)!=="_"&&(c=r.raw.slice(-1)),l=!0,s=n[n.length-1],s&&s.type==="text"?(s.raw+=r.raw,s.text+=r.text):n.push(r);continue}if(e){const u="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(u);break}else throw new Error(u)}}return n}}class el{constructor(e){this.options=e||$n}code(e,n,r){const s=(n||"").match(/\S*/)[0];if(this.options.highlight){const i=this.options.highlight(e,s);i!=null&&i!==e&&(r=!0,e=i)}return e=e.replace(/\n$/,"")+`
|
|
137
137
|
`,s?'<pre><code class="'+this.options.langPrefix+Ee(s)+'">'+(r?e:Ee(e,!0))+`</code></pre>
|
|
138
138
|
`:"<pre><code>"+(r?e:Ee(e,!0))+`</code></pre>
|
|
139
139
|
`}blockquote(e){return`<blockquote>
|
|
@@ -153,18 +153,18 @@ ${e}</blockquote>
|
|
|
153
153
|
`}tablerow(e){return`<tr>
|
|
154
154
|
${e}</tr>
|
|
155
155
|
`}tablecell(e,n){const r=n.header?"th":"td";return(n.align?`<${r} align="${n.align}">`:`<${r}>`)+e+`</${r}>
|
|
156
|
-
`}strong(e){return`<strong>${e}</strong>`}em(e){return`<em>${e}</em>`}codespan(e){return`<code>${e}</code>`}br(){return this.options.xhtml?"<br/>":"<br>"}del(e){return`<del>${e}</del>`}link(e,n,r){if(e=
|
|
157
|
-
`+(f.tokens?this.parseInline(f.tokens):f.text);r+=n?this.renderer.paragraph(h):h;continue}default:{const Ve='Token with "'+f.type+'" type was not found.';if(this.options.silent){console.error(Ve);return}else throw new Error(Ve)}}}return r}parseInline(e,n){n=n||this.renderer;let r="",s,i,o;const a=e.length;for(s=0;s<a;s++){if(i=e[s],this.options.extensions&&this.options.extensions.renderers&&this.options.extensions.renderers[i.type]&&(o=this.options.extensions.renderers[i.type].call({parser:this},i),o!==!1||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(i.type))){r+=o||"";continue}switch(i.type){case"escape":{r+=n.text(i.text);break}case"html":{r+=n.html(i.text);break}case"link":{r+=n.link(i.href,i.title,this.parseInline(i.tokens,n));break}case"image":{r+=n.image(i.href,i.title,i.text);break}case"strong":{r+=n.strong(this.parseInline(i.tokens,n));break}case"em":{r+=n.em(this.parseInline(i.tokens,n));break}case"codespan":{r+=n.codespan(i.text);break}case"br":{r+=n.br();break}case"del":{r+=n.del(this.parseInline(i.tokens,n));break}case"text":{r+=n.text(i.text);break}default:{const l='Token with "'+i.type+'" type was not found.';if(this.options.silent){console.error(l);return}else throw new Error(l)}}}return r}}class Oi{constructor(e){this.options=e||$n}preprocess(e){return e}postprocess(e){return e}}Me(Oi,"passThroughHooks",new Set(["preprocess","postprocess"]));function
|
|
158
|
-
Please report this to https://github.com/markedjs/marked.`,t){const s="<p>An error occurred:</p><pre>"+Ee(r.message+"",!0)+"</pre>";if(e)return Promise.resolve(s);if(n){n(null,s);return}return s}if(e)return Promise.reject(r);if(n){n(r);return}throw r}}function
|
|
156
|
+
`}strong(e){return`<strong>${e}</strong>`}em(e){return`<em>${e}</em>`}codespan(e){return`<code>${e}</code>`}br(){return this.options.xhtml?"<br/>":"<br>"}del(e){return`<del>${e}</del>`}link(e,n,r){if(e=Uc(this.options.sanitize,this.options.baseUrl,e),e===null)return r;let s='<a href="'+e+'"';return n&&(s+=' title="'+n+'"'),s+=">"+r+"</a>",s}image(e,n,r){if(e=Uc(this.options.sanitize,this.options.baseUrl,e),e===null)return r;let s=`<img src="${e}" alt="${r}"`;return n&&(s+=` title="${n}"`),s+=this.options.xhtml?"/>":">",s}text(e){return e}}class cf{strong(e){return e}em(e){return e}codespan(e){return e}del(e){return e}html(e){return e}text(e){return e}link(e,n,r){return""+r}image(e,n,r){return""+r}br(){return""}}class uf{constructor(){this.seen={}}serialize(e){return e.toLowerCase().trim().replace(/<[!\/a-z].*?>/ig,"").replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g,"").replace(/\s/g,"-")}getNextSafeSlug(e,n){let r=e,s=0;if(this.seen.hasOwnProperty(r)){s=this.seen[e];do s++,r=e+"-"+s;while(this.seen.hasOwnProperty(r))}return n||(this.seen[e]=s,this.seen[r]=0),r}slug(e,n={}){const r=this.serialize(e);return this.getNextSafeSlug(r,n.dryrun)}}class cn{constructor(e){this.options=e||$n,this.options.renderer=this.options.renderer||new el,this.renderer=this.options.renderer,this.renderer.options=this.options,this.textRenderer=new cf,this.slugger=new uf}static parse(e,n){return new cn(n).parse(e)}static parseInline(e,n){return new cn(n).parseInline(e)}parse(e,n=!0){let r="",s,i,o,a,l,c,u,d,h,f,p,m,g,y,k,D,q,J,$;const oe=e.length;for(s=0;s<oe;s++){if(f=e[s],this.options.extensions&&this.options.extensions.renderers&&this.options.extensions.renderers[f.type]&&($=this.options.extensions.renderers[f.type].call({parser:this},f),$!==!1||!["space","hr","heading","code","table","blockquote","list","html","paragraph","text"].includes(f.type))){r+=$||"";continue}switch(f.type){case"space":continue;case"hr":{r+=this.renderer.hr();continue}case"heading":{r+=this.renderer.heading(this.parseInline(f.tokens),f.depth,lf(this.parseInline(f.tokens,this.textRenderer)),this.slugger);continue}case"code":{r+=this.renderer.code(f.text,f.lang,f.escaped);continue}case"table":{for(d="",u="",a=f.header.length,i=0;i<a;i++)u+=this.renderer.tablecell(this.parseInline(f.header[i].tokens),{header:!0,align:f.align[i]});for(d+=this.renderer.tablerow(u),h="",a=f.rows.length,i=0;i<a;i++){for(c=f.rows[i],u="",l=c.length,o=0;o<l;o++)u+=this.renderer.tablecell(this.parseInline(c[o].tokens),{header:!1,align:f.align[o]});h+=this.renderer.tablerow(u)}r+=this.renderer.table(d,h);continue}case"blockquote":{h=this.parse(f.tokens),r+=this.renderer.blockquote(h);continue}case"list":{for(p=f.ordered,m=f.start,g=f.loose,a=f.items.length,h="",i=0;i<a;i++)k=f.items[i],D=k.checked,q=k.task,y="",k.task&&(J=this.renderer.checkbox(D),g?k.tokens.length>0&&k.tokens[0].type==="paragraph"?(k.tokens[0].text=J+" "+k.tokens[0].text,k.tokens[0].tokens&&k.tokens[0].tokens.length>0&&k.tokens[0].tokens[0].type==="text"&&(k.tokens[0].tokens[0].text=J+" "+k.tokens[0].tokens[0].text)):k.tokens.unshift({type:"text",text:J}):y+=J),y+=this.parse(k.tokens,g),h+=this.renderer.listitem(y,q,D);r+=this.renderer.list(h,p,m);continue}case"html":{r+=this.renderer.html(f.text);continue}case"paragraph":{r+=this.renderer.paragraph(this.parseInline(f.tokens));continue}case"text":{for(h=f.tokens?this.parseInline(f.tokens):f.text;s+1<oe&&e[s+1].type==="text";)f=e[++s],h+=`
|
|
157
|
+
`+(f.tokens?this.parseInline(f.tokens):f.text);r+=n?this.renderer.paragraph(h):h;continue}default:{const Ve='Token with "'+f.type+'" type was not found.';if(this.options.silent){console.error(Ve);return}else throw new Error(Ve)}}}return r}parseInline(e,n){n=n||this.renderer;let r="",s,i,o;const a=e.length;for(s=0;s<a;s++){if(i=e[s],this.options.extensions&&this.options.extensions.renderers&&this.options.extensions.renderers[i.type]&&(o=this.options.extensions.renderers[i.type].call({parser:this},i),o!==!1||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(i.type))){r+=o||"";continue}switch(i.type){case"escape":{r+=n.text(i.text);break}case"html":{r+=n.html(i.text);break}case"link":{r+=n.link(i.href,i.title,this.parseInline(i.tokens,n));break}case"image":{r+=n.image(i.href,i.title,i.text);break}case"strong":{r+=n.strong(this.parseInline(i.tokens,n));break}case"em":{r+=n.em(this.parseInline(i.tokens,n));break}case"codespan":{r+=n.codespan(i.text);break}case"br":{r+=n.br();break}case"del":{r+=n.del(this.parseInline(i.tokens,n));break}case"text":{r+=n.text(i.text);break}default:{const l='Token with "'+i.type+'" type was not found.';if(this.options.silent){console.error(l);return}else throw new Error(l)}}}return r}}class Oi{constructor(e){this.options=e||$n}preprocess(e){return e}postprocess(e){return e}}Me(Oi,"passThroughHooks",new Set(["preprocess","postprocess"]));function iw(t,e,n){return r=>{if(r.message+=`
|
|
158
|
+
Please report this to https://github.com/markedjs/marked.`,t){const s="<p>An error occurred:</p><pre>"+Ee(r.message+"",!0)+"</pre>";if(e)return Promise.resolve(s);if(n){n(null,s);return}return s}if(e)return Promise.reject(r);if(n){n(r);return}throw r}}function df(t,e){return(n,r,s)=>{typeof r=="function"&&(s=r,r=null);const i={...r};r={...N.defaults,...i};const o=iw(r.silent,r.async,s);if(typeof n>"u"||n===null)return o(new Error("marked(): input parameter is undefined or null"));if(typeof n!="string")return o(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(n)+", string expected"));if(nw(r),r.hooks&&(r.hooks.options=r),s){const a=r.highlight;let l;try{r.hooks&&(n=r.hooks.preprocess(n)),l=t(n,r)}catch(d){return o(d)}const c=function(d){let h;if(!d)try{r.walkTokens&&N.walkTokens(l,r.walkTokens),h=e(l,r),r.hooks&&(h=r.hooks.postprocess(h))}catch(f){d=f}return r.highlight=a,d?o(d):s(null,h)};if(!a||a.length<3||(delete r.highlight,!l.length))return c();let u=0;N.walkTokens(l,function(d){d.type==="code"&&(u++,setTimeout(()=>{a(d.text,d.lang,function(h,f){if(h)return c(h);f!=null&&f!==d.text&&(d.text=f,d.escaped=!0),u--,u===0&&c()})},0))}),u===0&&c();return}if(r.async)return Promise.resolve(r.hooks?r.hooks.preprocess(n):n).then(a=>t(a,r)).then(a=>r.walkTokens?Promise.all(N.walkTokens(a,r.walkTokens)).then(()=>a):a).then(a=>e(a,r)).then(a=>r.hooks?r.hooks.postprocess(a):a).catch(o);try{r.hooks&&(n=r.hooks.preprocess(n));const a=t(n,r);r.walkTokens&&N.walkTokens(a,r.walkTokens);let l=e(a,r);return r.hooks&&(l=r.hooks.postprocess(l)),l}catch(a){return o(a)}}}function N(t,e,n){return df(ln.lex,cn.parse)(t,e,n)}N.options=N.setOptions=function(t){return N.defaults={...N.defaults,...t},US(N.defaults),N};N.getDefaults=sf;N.defaults=$n;N.use=function(...t){const e=N.defaults.extensions||{renderers:{},childTokens:{}};t.forEach(n=>{const r={...n};if(r.async=N.defaults.async||r.async||!1,n.extensions&&(n.extensions.forEach(s=>{if(!s.name)throw new Error("extension name required");if(s.renderer){const i=e.renderers[s.name];i?e.renderers[s.name]=function(...o){let a=s.renderer.apply(this,o);return a===!1&&(a=i.apply(this,o)),a}:e.renderers[s.name]=s.renderer}if(s.tokenizer){if(!s.level||s.level!=="block"&&s.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");e[s.level]?e[s.level].unshift(s.tokenizer):e[s.level]=[s.tokenizer],s.start&&(s.level==="block"?e.startBlock?e.startBlock.push(s.start):e.startBlock=[s.start]:s.level==="inline"&&(e.startInline?e.startInline.push(s.start):e.startInline=[s.start]))}s.childTokens&&(e.childTokens[s.name]=s.childTokens)}),r.extensions=e),n.renderer){const s=N.defaults.renderer||new el;for(const i in n.renderer){const o=s[i];s[i]=(...a)=>{let l=n.renderer[i].apply(s,a);return l===!1&&(l=o.apply(s,a)),l}}r.renderer=s}if(n.tokenizer){const s=N.defaults.tokenizer||new Qa;for(const i in n.tokenizer){const o=s[i];s[i]=(...a)=>{let l=n.tokenizer[i].apply(s,a);return l===!1&&(l=o.apply(s,a)),l}}r.tokenizer=s}if(n.hooks){const s=N.defaults.hooks||new Oi;for(const i in n.hooks){const o=s[i];Oi.passThroughHooks.has(i)?s[i]=a=>{if(N.defaults.async)return Promise.resolve(n.hooks[i].call(s,a)).then(c=>o.call(s,c));const l=n.hooks[i].call(s,a);return o.call(s,l)}:s[i]=(...a)=>{let l=n.hooks[i].apply(s,a);return l===!1&&(l=o.apply(s,a)),l}}r.hooks=s}if(n.walkTokens){const s=N.defaults.walkTokens;r.walkTokens=function(i){let o=[];return o.push(n.walkTokens.call(this,i)),s&&(o=o.concat(s.call(this,i))),o}}N.setOptions(r)})};N.walkTokens=function(t,e){let n=[];for(const r of t)switch(n=n.concat(e.call(N,r)),r.type){case"table":{for(const s of r.header)n=n.concat(N.walkTokens(s.tokens,e));for(const s of r.rows)for(const i of s)n=n.concat(N.walkTokens(i.tokens,e));break}case"list":{n=n.concat(N.walkTokens(r.items,e));break}default:N.defaults.extensions&&N.defaults.extensions.childTokens&&N.defaults.extensions.childTokens[r.type]?N.defaults.extensions.childTokens[r.type].forEach(function(s){n=n.concat(N.walkTokens(r[s],e))}):r.tokens&&(n=n.concat(N.walkTokens(r.tokens,e)))}return n};N.parseInline=df(ln.lexInline,cn.parseInline);N.Parser=cn;N.parser=cn.parse;N.Renderer=el;N.TextRenderer=cf;N.Lexer=ln;N.lexer=ln.lex;N.Tokenizer=Qa;N.Slugger=uf;N.Hooks=Oi;N.parse=N;N.options;N.setOptions;N.use;N.walkTokens;N.parseInline;cn.parse;ln.lex;var ow=Object.defineProperty,aw=Object.getOwnPropertyDescriptor,Gi=(t,e,n,r)=>{for(var s=r>1?void 0:r?aw(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&ow(e,n,s),s},lw=Cp(Ci);function cw(t){return dw.turndown(t)}function vo(t){const e=t.parentNode;if(!$e(e))return!1;if(e.nodeName==="THEAD")return!0;if(e.nodeName!=="TABLE"&&!hf(e))return!1;const n=[...t.childNodes];return n.every(r=>r.nodeName==="TH")&&n.some(r=>!!r.textContent)}function Mi(t){return $e(t)&&t.matches("th[data-controller-cell]")}function uw(t){const e=t.parentNode;return!$e(e)||e.nodeName!=="TABLE"&&!hf(e)?!1:[...t.childNodes].every(r=>Mi(r))}function hf(t){var n;if(t.nodeName!=="TBODY")return!1;const e=t.previousSibling;return e?$e(e)&&e.nodeName==="THEAD"&&!((n=e.textContent)!=null&&n.trim()):!0}function Jc(t){const e=t.closest("table");if(!e)return!1;const{parentNode:n}=e;return n?!!n.closest("table"):!0}function Gc(t,e){var i;const n=[];for(const o of((i=e.parentNode)==null?void 0:i.childNodes)??[])Mi(o)||n.push(o);return`${(n.indexOf(e)===0?"| ":" ")+t.trim()} |`}var dw=new lw({codeBlockStyle:"fenced",headingStyle:"atx"}).addRule("taskListItems",{filter:t=>t.nodeName==="LI"&&t.hasAttribute("data-task-list-item"),replacement:(t,e)=>`- ${e.hasAttribute("data-checked")?"[x]":"[ ]"} ${t.trimStart()}`}).addRule("tableCell",{filter:["th","td"],replacement:(t,e)=>Mi(e)?"":Gc(t,e)}).addRule("tableRow",{filter:"tr",replacement:(t,e)=>{let n="";const r={left:":--",right:"--:",center:":-:"},s=[...e.childNodes].filter(i=>!Mi(i));if(vo(e))for(const i of s){if(!$e(i))continue;let o="---";const a=(i.getAttribute("align")??"").toLowerCase();a&&(o=r[a]||o),n+=Gc(o,i)}return`
|
|
159
159
|
${t}${n?`
|
|
160
|
-
${n}`:""}`}}).addRule("table",{filter:t=>{if(t.nodeName!=="TABLE"||
|
|
160
|
+
${n}`:""}`}}).addRule("table",{filter:t=>{if(t.nodeName!=="TABLE"||Jc(t))return!1;const e=[...t.rows].filter(n=>!uw(n));return vo(e[0])},replacement:t=>(t=t.replace(`
|
|
161
161
|
|
|
162
162
|
`,`
|
|
163
163
|
`),`
|
|
164
164
|
|
|
165
165
|
${t}
|
|
166
166
|
|
|
167
|
-
`)}).addRule("tableSection",{filter:["thead","tbody","tfoot"],replacement:function(t){return t}}).keep(t=>t.nodeName==="TABLE"&&!vo(t.rows[0])).keep(t=>t.nodeName==="TABLE"&&
|
|
167
|
+
`)}).addRule("tableSection",{filter:["thead","tbody","tfoot"],replacement:function(t){return t}}).keep(t=>t.nodeName==="TABLE"&&!vo(t.rows[0])).keep(t=>t.nodeName==="TABLE"&&Jc(t)).addRule("strikethrough",{filter:["del","s","strike"],replacement:function(t){return`~${t}~`}}).addRule("fencedCodeBlock",{filter:(t,e)=>!!(e.codeBlockStyle==="fenced"&&t.nodeName==="PRE"&&t.firstChild&&t.firstChild.nodeName==="CODE"),replacement:(t,e,n)=>{var i,o;R($e(e.firstChild),{code:b.EXTENSION,message:`Invalid node \`${(i=e.firstChild)==null?void 0:i.nodeName}\` encountered for codeblock when converting html to markdown.`});const s=((o=(e.firstChild.getAttribute("class")??"").match(/(?:lang|language)-(\S+)/))==null?void 0:o[1])??e.firstChild.getAttribute("data-code-block-language")??"";return`
|
|
168
168
|
|
|
169
169
|
${n.fence}${s}
|
|
170
170
|
${e.firstChild.textContent}
|
|
@@ -176,14 +176,14 @@ ${t}</ol>
|
|
|
176
176
|
${t}</ul>
|
|
177
177
|
`},listitem(t,e,n){return e?`<li data-task-list-item ${n?"data-checked":""}>${t}</li>
|
|
178
178
|
`:`<li>${t}</li>
|
|
179
|
-
`}}});function
|
|
180
|
-
`)?s.slice(3,-5):`<div>${s}</div>`;const i=this.store.stringHandlers.html({content:s,schema:r.schema,fragment:!0});return this.store.commands.insertNode.original(i,{...e,replaceEmptyParentBlock:!0})(n)}}getMarkdown(t){return this.options.htmlToMarkdown(this.store.helpers.getHTML(t))}toggleBoldMarkdown(){return t=>!1}};Gi([_()],yr.prototype,"insertMarkdown",1);Gi([se()],yr.prototype,"getMarkdown",1);Gi([_()],yr.prototype,"toggleBoldMarkdown",1);yr=Gi([G({defaultOptions:{htmlToMarkdown:uw,markdownToHtml:fw,htmlSanitizer:void 0,activeNodes:[j.Code],copyAsMarkdown:!1},staticKeys:["htmlToMarkdown","markdownToHtml","htmlSanitizer"]})],yr);var pw=Object.defineProperty,mw=Object.getOwnPropertyDescriptor,Xi=(t,e,n,r)=>{for(var s=r>1?void 0:r?mw(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&pw(e,n,s),s},gw={icon:"paragraph",label:({t})=>t(hi.INSERT_LABEL),description:({t})=>t(hi.INSERT_DESCRIPTION)},yw={icon:"paragraph",label:({t})=>t(hi.CONVERT_LABEL),description:({t})=>t(hi.CONVERT_DESCRIPTION)},Pn=class extends Pt{get name(){return"paragraph"}createTags(){return[j.LastNodeCompatible,j.TextBlock,j.Block,j.FormattingNode]}createNodeSpec(t,e){return{content:"inline*",draggable:!1,...e,attrs:{...t.defaults()},parseDOM:[{tag:"p",getAttrs:n=>({...t.parse(n)})},...e.parseDOM??[]],toDOM:n=>["p",t.dom(n),0]}}convertParagraph(t={}){const{attrs:e,selection:n,preserveAttrs:r}=t;return this.store.commands.setBlockNodeType.original(this.type,e,n,r)}insertParagraph(t,e={}){const{selection:n,attrs:r}=e;return this.store.commands.insertNode.original(this.type,{content:t,selection:n,attrs:r})}shortcut(t){return this.convertParagraph()(t)}};Xi([_(yw)],Pn.prototype,"convertParagraph",1);Xi([_(gw)],Pn.prototype,"insertParagraph",1);Xi([Ye({shortcut:E.Paragraph,command:"convertParagraph"})],Pn.prototype,"shortcut",1);Pn=Xi([G({defaultPriority:Y.Medium})],Pn);var xw=Object.defineProperty,bw=Object.getOwnPropertyDescriptor,kw=(t,e,n,r)=>{for(var s=r>1?void 0:r?bw(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&xw(e,n,s),s},un=class extends te{get name(){return"placeholder"}createAttributes(){return{"aria-placeholder":this.options.placeholder}}createPlugin(){return{state:{init:(t,e)=>({...this.options,empty:Ia(e.doc,{ignoreAttributes:!0})}),apply:(t,e,n,r)=>Sw({pluginState:e,tr:t,extension:this,state:r})},props:{decorations:t=>ww({state:t,extension:this})}}}onSetOptions(t){const{changes:e}=t;e.placeholder.changed&&this.store.phase>=Pe.EditorView&&this.store.updateAttributes()}};un=kw([G({defaultOptions:{emptyNodeClass:V1.IS_EMPTY,placeholder:""}})],un);function Sw(t){const{pluginState:e,extension:n,tr:r,state:s}=t;return r.docChanged?{...n.options,empty:Ia(s.doc)}:e}function ww(t){const{extension:e,state:n}=t,{empty:r}=e.pluginKey.getState(n),{emptyNodeClass:s,placeholder:i}=e.options;if(!r)return null;const o=[];return n.doc.descendants((a,l)=>{const c=Q.node(l,l+a.nodeSize,{class:s,"data-placeholder":i});o.push(c)}),W.create(n.doc,o)}var vw=Object.defineProperty,Ew=Object.getOwnPropertyDescriptor,Cw=(t,e,n,r)=>{for(var s=r>1?void 0:r?Ew(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&vw(e,n,s),s},aa=class extends Pt{get name(){return"text"}createTags(){return[j.InlineNode]}createNodeSpec(){return{}}};aa=Cw([G({disableExtraAttributes:!0,defaultPriority:Y.Medium})],aa);var Tw={...pr.defaultOptions,...Pn.defaultOptions,...kt.defaultOptions,excludeExtensions:[]};function Ow(t={}){t={...Tw,...t};const{content:e,depth:n,getDispatch:r,getState:s,newGroupDelay:i,excludeExtensions:o}=t,a={};for(const c of o??[])a[c]=!0;const l=[];if(!a.history){const c=new kt({depth:n,getDispatch:r,getState:s,newGroupDelay:i});l.push(c)}return a.doc||l.push(new pr({content:e})),a.text||l.push(new aa),a.paragraph||l.push(new Pn),a.positioner||l.push(new ms),a.gapCursor||l.push(new sa),a.events||l.push(new wi),l}var Mw=Object.defineProperty,_w=Object.getOwnPropertyDescriptor,Nw=(t,e,n,r)=>{for(var s=r>1?void 0:r?_w(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&Mw(e,n,s),s},hf=(t,e,n)=>{if(!e.has(t))throw TypeError("Cannot "+n)},O=(t,e,n)=>(hf(t,e,"read from private field"),n?n.call(t):e.get(t)),je=(t,e,n)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,n)},He=(t,e,n,r)=>(hf(t,e,"write to private field"),e.set(t,n),n),jr,Aw=class{constructor(){this.portals=new Map,je(this,jr,ji()),this.on=t=>O(this,jr).on("update",t),this.once=t=>{const e=O(this,jr).on("update",n=>{e(),t(n)});return e}}update(){O(this,jr).emit("update",this.portals)}render({Component:t,container:e}){const n=this.portals.get(e);this.portals.set(e,{Component:t,key:(n==null?void 0:n.key)??si()}),this.update()}forceUpdate(){for(const[t,{Component:e}]of this.portals)this.portals.set(t,{Component:e,key:si()})}remove(t){this.portals.delete(t),this.update()}};jr=new WeakMap;var Rw=t=>{const{portals:e}=t;return Ne.createElement(Ne.Fragment,null,e.map(([n,{Component:r,key:s}])=>Nf.createPortal(Ne.createElement(r,null),n,s)))};function Iw(t){const[e,n]=z.useState(()=>Array.from(t.portals.entries()));return z.useEffect(()=>t.on(r=>{n(Array.from(r.entries()))}),[t]),z.useMemo(()=>e,[e])}var ne,Wr,yn,Kr,Qs,qr,Jn,Jr,ei,Et,_e,la,ff=class{constructor({getPosition:t,node:e,portalContainer:n,view:r,ReactComponent:s,options:i}){je(this,ne,void 0),je(this,Wr,[]),je(this,yn,void 0),je(this,Kr,void 0),je(this,Qs,void 0),je(this,qr,void 0),je(this,Jn,void 0),je(this,Jr,!1),je(this,ei,void 0),je(this,Et,void 0),je(this,_e,void 0),je(this,la,l=>{l&&(R(O(this,Et),{code:b.REACT_NODE_VIEW,message:`You have applied a ref to a node view provided for '${O(this,ne).type.name}' which doesn't support content.`}),l.append(O(this,Et)))}),this.Component=()=>{const l=O(this,Qs);return R(l,{code:b.REACT_NODE_VIEW,message:`The custom react node view provided for ${O(this,ne).type.name} doesn't have a valid ReactComponent`}),Ne.createElement(l,{updateAttributes:this.updateAttributes,selected:this.selected,view:O(this,yn),getPosition:O(this,qr),node:O(this,ne),forwardRef:O(this,la),decorations:O(this,Wr)})},this.updateAttributes=l=>{if(!O(this,yn).editable)return;const c=O(this,qr).call(this);if(c==null)return;const u=O(this,yn).state.tr.setNodeMarkup(c,void 0,{...O(this,ne).attrs,...l});O(this,yn).dispatch(u)},R(ee(t),{message:"You are attempting to use a node view for a mark type. This is not supported yet. Please check your configuration."}),He(this,ne,e),He(this,yn,r),He(this,Kr,n),He(this,Qs,s),He(this,qr,t),He(this,Jn,i),He(this,_e,this.createDom());const{contentDOM:o,wrapper:a}=this.createContentDom()??{};He(this,ei,o??void 0),He(this,Et,a),O(this,Et)&&O(this,_e).append(O(this,Et)),this.setDomAttributes(O(this,ne),O(this,_e)),this.Component.displayName=Iu(`${O(this,ne).type.name}NodeView`),this.renderComponent()}static create(t){const{portalContainer:e,ReactComponent:n,options:r}=t;return(s,i,o)=>new ff({options:r,node:s,view:i,getPosition:o,portalContainer:e,ReactComponent:n})}get selected(){return O(this,Jr)}get contentDOM(){return O(this,ei)}get dom(){return O(this,_e)}renderComponent(){O(this,Kr).render({Component:this.Component,container:O(this,_e)})}createDom(){const{defaultBlockNode:t,defaultInlineNode:e}=O(this,Jn),n=O(this,ne).isInline?document.createElement(e):document.createElement(t);return n.classList.add(`${cl(O(this,ne).type.name)}-node-view-wrapper`),n}createContentDom(){var t,e;if(O(this,ne).isLeaf)return;const n=(e=(t=O(this,ne).type.spec).toDOM)==null?void 0:e.call(t,O(this,ne));if(!n)return;const{contentDOM:r,dom:s}=Dt.renderSpec(document,n);let i;if($e(s))return i=s,s===r&&(i=document.createElement("span"),i.classList.add(`${cl(O(this,ne).type.name)}-node-view-content-wrapper`),i.append(r)),$e(r),{wrapper:i,contentDOM:r}}update(t,e){return Na({types:O(this,ne).type,node:t})?(O(this,ne)===t&&O(this,Wr)===e||(O(this,ne).sameMarkup(t)||this.setDomAttributes(t,O(this,_e)),He(this,ne,t),He(this,Wr,e),this.renderComponent()),!0):!1}setDomAttributes(t,e){const{toDOM:n}=O(this,ne).type.spec;let r=t.attrs;if(n){const s=n(t);if(P(s)||Dw(s))return;Ln(s[1])&&(r=s[1])}for(const[s,i]of fe(r))e.setAttribute(s,i)}selectNode(){He(this,Jr,!0),O(this,_e)&&O(this,_e).classList.add(il),this.renderComponent()}deselectNode(){He(this,Jr,!1),O(this,_e)&&O(this,_e).classList.remove(il),this.renderComponent()}destroy(){O(this,Kr).remove(O(this,_e))}ignoreMutation(t){return t.type==="selection"?!O(this,ne).type.spec.selectable:O(this,Et)?!O(this,Et).contains(t.target):!0}stopEvent(t){var e;if(!O(this,_e))return!1;if(ee(O(this,Jn).stopEvent))return O(this,Jn).stopEvent({event:t});const n=t.target;if(!(O(this,_e).contains(n)&&!((e=this.contentDOM)!=null&&e.contains(n))))return!1;const s=t.type==="drop";if((["INPUT","BUTTON","SELECT","TEXTAREA"].includes(n.tagName)||n.isContentEditable)&&!s)return!0;const o=!!O(this,ne).type.spec.draggable,a=I.isSelectable(O(this,ne)),l=t.type==="copy",c=t.type==="paste",u=t.type==="cut",d=t.type==="mousedown",h=t.type.startsWith("drag");return!o&&a&&h&&t.preventDefault(),!(h||s||l||c||u||d&&a)}},Gc=ff;ne=new WeakMap;Wr=new WeakMap;yn=new WeakMap;Kr=new WeakMap;Qs=new WeakMap;qr=new WeakMap;Jn=new WeakMap;Jr=new WeakMap;ei=new WeakMap;Et=new WeakMap;_e=new WeakMap;la=new WeakMap;function Dw(t){return Wo(t)||Ln(t)&&Wo(t.dom)}var ks=class extends te{constructor(){super(...arguments),this.portalContainer=new Aw}get name(){return"reactComponent"}onCreate(){this.store.setStoreKey("portalContainer",this.portalContainer)}createNodeViews(){const t=M(),e=this.store.managerSettings.nodeViewComponents??{};for(const r of this.store.extensions)!r.ReactComponent||!_s(r)||r.reactComponentEnvironment==="ssr"||(t[r.name]=Gc.create({options:this.options,ReactComponent:r.ReactComponent,portalContainer:this.portalContainer}));const n=fe({...this.options.nodeViewComponents,...e});for(const[r,s]of n)t[r]=Gc.create({options:this.options,ReactComponent:s,portalContainer:this.portalContainer});return t}};ks=Nw([G({defaultOptions:{defaultBlockNode:"div",defaultInlineNode:"span",defaultContentNode:"span",defaultEnvironment:"both",nodeViewComponents:{},stopEvent:null},staticKeys:["defaultBlockNode","defaultInlineNode","defaultContentNode","defaultEnvironment"]})],ks);var Pw=Object.defineProperty,Xc=Object.getOwnPropertySymbols,Lw=Object.prototype.hasOwnProperty,Bw=Object.prototype.propertyIsEnumerable,Yc=(t,e,n)=>e in t?Pw(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Zc=(t,e)=>{for(var n in e||(e={}))Lw.call(e,n)&&Yc(t,n,e[n]);if(Xc)for(var n of Xc(e))Bw.call(e,n)&&Yc(t,n,e[n]);return t};function zw(t){const e=z.createContext(null),n=$w(e);return[s=>{const i=t(s);return Ne.createElement(e.Provider,{value:i},s.children)},n,e]}function $w(t){return(e,n)=>{const r=z.useContext(t),s=Fw(r);if(!r)throw new Error("`useContextHook` must be placed inside the `Provider` returned by the `createContextState` method");if(!e)return r;if(typeof e!="function")throw new TypeError("invalid arguments passed to `useContextHook`. This hook must be called with zero arguments, a getter function or a path string.");const i=e(r);if(!s||!n)return i;const o=e(s);return n(o,i)?o:i}}function Fw(t){const e=z.useRef();return Vw(()=>{e.current=t}),e.current}var Vw=typeof document<"u"?z.useLayoutEffect:z.useEffect;function Hw(t,e){return zw(n=>{const r=z.useRef(null),s=z.useRef(),i=void 0,[o,a]=z.useState(()=>t({get:Qc(r),set:eu(s),previousContext:void 0,props:n,state:i})),l=[...Object.values(n),i];return z.useEffect(()=>{l.length!==0&&a(c=>t({get:Qc(r),set:eu(s),previousContext:c,props:n,state:i}))},l),r.current=o,s.current=a,o})}function Qc(t){return e=>{if(!t.current)throw new Error("`get` called outside of function scope. `get` can only be called within a function.");if(!e)return t.current;if(typeof e!="function")throw new TypeError("Invalid arguments passed to `useContextHook`. The hook must be called with zero arguments, a getter function or a path string.");return e(t.current)}}function eu(t){return e=>{if(!t.current)throw new Error("`set` called outside of function scope. `set` can only be called within a function.");t.current(n=>Zc(Zc({},n),typeof e=="function"?e(n):e))}}var pf={},mf={};(function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.errorMessages=t.ErrorType=void 0;var e;(function(n){n.MalformedUnicode="MALFORMED_UNICODE",n.MalformedHexadecimal="MALFORMED_HEXADECIMAL",n.CodePointLimit="CODE_POINT_LIMIT",n.OctalDeprecation="OCTAL_DEPRECATION",n.EndOfString="END_OF_STRING"})(e=t.ErrorType||(t.ErrorType={})),t.errorMessages=new Map([[e.MalformedUnicode,"malformed Unicode character escape sequence"],[e.MalformedHexadecimal,"malformed hexadecimal character escape sequence"],[e.CodePointLimit,"Unicode codepoint must not be greater than 0x10FFFF in escape sequence"],[e.OctalDeprecation,'"0"-prefixed octal literals and octal escape sequences are deprecated; for octal literals use the "0o" prefix instead'],[e.EndOfString,"malformed escape sequence at end of string"]])})(mf);(function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.unraw=t.errorMessages=t.ErrorType=void 0;const e=mf;Object.defineProperty(t,"ErrorType",{enumerable:!0,get:function(){return e.ErrorType}}),Object.defineProperty(t,"errorMessages",{enumerable:!0,get:function(){return e.errorMessages}});function n(f){return!f.match(/[^a-f0-9]/i)?parseInt(f,16):NaN}function r(f,p,m){const g=n(f);if(Number.isNaN(g)||m!==void 0&&m!==f.length)throw new SyntaxError(e.errorMessages.get(p));return g}function s(f){const p=r(f,e.ErrorType.MalformedHexadecimal,2);return String.fromCharCode(p)}function i(f,p){const m=r(f,e.ErrorType.MalformedUnicode,4);if(p!==void 0){const g=r(p,e.ErrorType.MalformedUnicode,4);return String.fromCharCode(m,g)}return String.fromCharCode(m)}function o(f){return f.charAt(0)==="{"&&f.charAt(f.length-1)==="}"}function a(f){if(!o(f))throw new SyntaxError(e.errorMessages.get(e.ErrorType.MalformedUnicode));const p=f.slice(1,-1),m=r(p,e.ErrorType.MalformedUnicode);try{return String.fromCodePoint(m)}catch(g){throw g instanceof RangeError?new SyntaxError(e.errorMessages.get(e.ErrorType.CodePointLimit)):g}}function l(f,p=!1){if(p)throw new SyntaxError(e.errorMessages.get(e.ErrorType.OctalDeprecation));const m=parseInt(f,8);return String.fromCharCode(m)}const c=new Map([["b","\b"],["f","\f"],["n",`
|
|
181
|
-
`],["r","\r"],["t"," "],["v","\v"],["0","\0"]]);function u(f){return c.get(f)||f}const d=/\\(?:(\\)|x([\s\S]{0,2})|u(\{[^}]*\}?)|u([\s\S]{4})\\u([^{][\s\S]{0,3})|u([\s\S]{0,4})|([0-3]?[0-7]{1,2})|([\s\S])|$)/g;function h(f,p=!1){return f.replace(d,function(m,g,y,k,D,q,J,$,oe){if(g!==void 0)return"\\";if(y!==void 0)return s(y);if(k!==void 0)return a(k);if(D!==void 0)return i(D,q);if(J!==void 0)return i(J);if($==="0")return"\0";if($!==void 0)return l($,!p);if(oe!==void 0)return u(oe);throw new SyntaxError(e.errorMessages.get(e.ErrorType.EndOfString))})}t.unraw=h,t.default=h})(pf);const _n=t=>typeof t=="string",Uw=t=>typeof t=="function",tu=new Map,gf="en";function tl(t){return[...Array.isArray(t)?t:[t],gf]}function yf(t,e,n){const r=tl(t);return _i(()=>Ni("date",r,n),()=>new Intl.DateTimeFormat(r,n)).format(_n(e)?new Date(e):e)}function ca(t,e,n){const r=tl(t);return _i(()=>Ni("number",r,n),()=>new Intl.NumberFormat(r,n)).format(e)}function nu(t,e,n,{offset:r=0,...s}){const i=tl(t),o=e?_i(()=>Ni("plural-ordinal",i),()=>new Intl.PluralRules(i,{type:"ordinal"})):_i(()=>Ni("plural-cardinal",i),()=>new Intl.PluralRules(i,{type:"cardinal"}));return s[n]??s[o.select(n-r)]??s.other}function _i(t,e){const n=t();let r=tu.get(n);return r||(r=e(),tu.set(n,r)),r}function Ni(t,e,n){const r=e.join("-");return`${t}-${r}-${JSON.stringify(n)}`}const xf=/\\u[a-fA-F0-9]{4}|\\x[a-fA-F0-9]{2}/g,bf="%__lingui_octothorpe__%",jw=(t,e,n={})=>{const r=e||t,s=o=>typeof o=="object"?o:n[o]||{style:o},i=(o,a)=>{const l=Object.keys(n).length?s("number"):void 0,c=ca(r,o,l);return a.replace(new RegExp(bf,"g"),c)};return{plural:(o,a)=>{const{offset:l=0}=a,c=nu(r,!1,o,a);return i(o-l,c)},selectordinal:(o,a)=>{const{offset:l=0}=a,c=nu(r,!0,o,a);return i(o-l,c)},select:Ww,number:(o,a)=>ca(r,o,s(a)),date:(o,a)=>yf(r,o,s(a))}},Ww=(t,e)=>e[t]??e.other;function Kw(t,e,n){return(r={},s)=>{const i=jw(e,n,s),o=(l,c=!1)=>Array.isArray(l)?l.reduce((u,d)=>{if(d==="#"&&c)return u+bf;if(_n(d))return u+d;const[h,f,p]=d;let m={};f==="plural"||f==="selectordinal"||f==="select"?Object.entries(p).forEach(([y,k])=>{m[y]=o(k,f==="plural"||f==="selectordinal")}):m=p;let g;if(f){const y=i[f];g=y(r[h],m)}else g=r[h];return g==null?u:u+g},""):l,a=o(t);return _n(a)&&xf.test(a)?pf.unraw(a.trim()):_n(a)?a.trim():a?String(a):""}}var qw=Object.defineProperty,Jw=(t,e,n)=>e in t?qw(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Gw=(t,e,n)=>(Jw(t,e+"",n),n);class Xw{constructor(){Gw(this,"_events",{})}on(e,n){var r;return(r=this._events)[e]??(r[e]=[]),this._events[e].push(n),()=>this.removeListener(e,n)}removeListener(e,n){const r=this._getListeners(e);if(!r)return;const s=r.indexOf(n);~s&&r.splice(s,1)}emit(e,...n){const r=this._getListeners(e);r&&r.map(s=>s.apply(this,n))}_getListeners(e){const n=this._events[e];return Array.isArray(n)?n:!1}}var Yw=Object.defineProperty,Zw=(t,e,n)=>e in t?Yw(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Un=(t,e,n)=>(Zw(t,typeof e!="symbol"?e+"":e,n),n);class Qw extends Xw{constructor(e){super(),Un(this,"_locale",""),Un(this,"_locales"),Un(this,"_localeData",{}),Un(this,"_messages",{}),Un(this,"_missing"),Un(this,"t",this._.bind(this)),e.missing!=null&&(this._missing=e.missing),e.messages!=null&&this.load(e.messages),e.localeData!=null&&this.loadLocaleData(e.localeData),(typeof e.locale=="string"||e.locales)&&this.activate(e.locale??gf,e.locales)}get locale(){return this._locale}get locales(){return this._locales}get messages(){return this._messages[this._locale]??{}}get localeData(){return this._localeData[this._locale]??{}}_loadLocaleData(e,n){const r=this._localeData[e];r?Object.assign(r,n):this._localeData[e]=n}loadLocaleData(e,n){n!=null?this._loadLocaleData(e,n):Object.keys(e).forEach(r=>this._loadLocaleData(r,e[r])),this.emit("change")}_load(e,n){const r=this._messages[e];r?Object.assign(r,n):this._messages[e]=n}load(e,n){typeof e=="string"&&typeof n=="object"?this._load(e,n):Object.entries(e).forEach(([r,s])=>this._load(r,s)),this.emit("change")}loadAndActivate({locale:e,locales:n,messages:r}){this._locale=e,this._locales=n||void 0,this._messages[this._locale]=r,this.emit("change")}activate(e,n){this._locale=e,this._locales=n,this.emit("change")}_(e,n,r){let s=r==null?void 0:r.message;e||(e=""),_n(e)||(n=e.values||n,s=e.message,e=e.id);const i=this.messages[e],o=i===void 0,a=this._missing;if(a&&o)return Uw(a)?a(this._locale,e):a;o&&this.emit("missing",{id:e,locale:this._locale});let l=i||s||e;return _n(l)&&xf.test(l)?JSON.parse(`"${l}"`):_n(l)?l:Kw(l,this._locale,this._locales)(n,r==null?void 0:r.formats)}date(e,n){return yf(this._locales||this._locale,e,n)}number(e,n){return ca(this._locales||this._locale,e,n)}}function ev(t={}){return new Qw(t)}const Yi=ev();function S(t,e){return e?"other":t==1?"one":"other"}function Lt(t,e){return e?"other":t==0||t==1?"one":"other"}function Fe(t,e){var n=String(t).split("."),r=!n[1];return e?"other":t==1&&r?"one":"other"}function K(t,e){return"other"}function fn(t,e){return e?"other":t==1?"one":t==2?"two":"other"}const tv=K,nv=S,rv=Lt;function sv(t,e){return e?"other":t>=0&&t<=1?"one":"other"}const iv=S;function ov(t,e){var n=String(t).split("."),r=Number(n[0])==t,s=r&&n[0].slice(-2);return e?"other":t==0?"zero":t==1?"one":t==2?"two":s>=3&&s<=10?"few":s>=11&&s<=99?"many":"other"}function av(t,e){var n=String(t).split("."),r=Number(n[0])==t,s=r&&n[0].slice(-2);return e?"other":t==0?"zero":t==1?"one":t==2?"two":s>=3&&s<=10?"few":s>=11&&s<=99?"many":"other"}function lv(t,e){return e?t==1||t==5||t==7||t==8||t==9||t==10?"one":t==2||t==3?"two":t==4?"few":t==6?"many":"other":t>=0&&t<=1?"one":"other"}const cv=S,uv=Fe;function dv(t,e){var n=String(t).split("."),r=n[0],s=r.slice(-1),i=r.slice(-2),o=r.slice(-3);return e?s==1||s==2||s==5||s==7||s==8||i==20||i==50||i==70||i==80?"one":s==3||s==4||o==100||o==200||o==300||o==400||o==500||o==600||o==700||o==800||o==900?"few":r==0||s==6||i==40||i==60||i==90?"many":"other":t==1?"one":"other"}function hv(t,e){var n=String(t).split("."),r=Number(n[0])==t,s=r&&n[0].slice(-1),i=r&&n[0].slice(-2);return e?(s==2||s==3)&&i!=12&&i!=13?"few":"other":s==1&&i!=11?"one":s>=2&&s<=4&&(i<12||i>14)?"few":r&&s==0||s>=5&&s<=9||i>=11&&i<=14?"many":"other"}const fv=S,pv=S,mv=S,gv=Lt,yv=K;function xv(t,e){return e?t==1||t==5||t==7||t==8||t==9||t==10?"one":t==2||t==3?"two":t==4?"few":t==6?"many":"other":t>=0&&t<=1?"one":"other"}const bv=K;function kv(t,e){var n=String(t).split("."),r=Number(n[0])==t,s=r&&n[0].slice(-1),i=r&&n[0].slice(-2),o=r&&n[0].slice(-6);return e?"other":s==1&&i!=11&&i!=71&&i!=91?"one":s==2&&i!=12&&i!=72&&i!=92?"two":(s==3||s==4||s==9)&&(i<10||i>19)&&(i<70||i>79)&&(i<90||i>99)?"few":t!=0&&r&&o==0?"many":"other"}const Sv=S;function wv(t,e){var n=String(t).split("."),r=n[0],s=n[1]||"",i=!n[1],o=r.slice(-1),a=r.slice(-2),l=s.slice(-1),c=s.slice(-2);return e?"other":i&&o==1&&a!=11||l==1&&c!=11?"one":i&&o>=2&&o<=4&&(a<12||a>14)||l>=2&&l<=4&&(c<12||c>14)?"few":"other"}function vv(t,e){var n=String(t).split("."),r=!n[1];return e?t==1||t==3?"one":t==2?"two":t==4?"few":"other":t==1&&r?"one":"other"}const Ev=S;function Cv(t,e){var n=String(t).split("."),r=n[0],s=n[1]||"",i=!n[1],o=r.slice(-1),a=s.slice(-1);return e?"other":i&&(r==1||r==2||r==3)||i&&o!=4&&o!=6&&o!=9||!i&&a!=4&&a!=6&&a!=9?"one":"other"}const Tv=S,Ov=S,Mv=S;function _v(t,e){var n=String(t).split("."),r=n[0],s=!n[1];return e?"other":t==1&&s?"one":r>=2&&r<=4&&s?"few":s?"other":"many"}function Nv(t,e){return e?t==0||t==7||t==8||t==9?"zero":t==1?"one":t==2?"two":t==3||t==4?"few":t==5||t==6?"many":"other":t==0?"zero":t==1?"one":t==2?"two":t==3?"few":t==6?"many":"other"}function Av(t,e){var n=String(t).split("."),r=n[0],s=Number(n[0])==t;return e?"other":t==1||!s&&(r==0||r==1)?"one":"other"}const Rv=Fe;function Iv(t,e){var n=String(t).split("."),r=n[0],s=n[1]||"",i=!n[1],o=r.slice(-2),a=s.slice(-2);return e?"other":i&&o==1||a==1?"one":i&&o==2||a==2?"two":i&&(o==3||o==4)||a==3||a==4?"few":"other"}const Dv=S,Pv=K,Lv=S,Bv=S;function zv(t,e){var n=String(t).split("."),r=!n[1],s=Number(n[0])==t,i=s&&n[0].slice(-1),o=s&&n[0].slice(-2);return e?i==1&&o!=11?"one":i==2&&o!=12?"two":i==3&&o!=13?"few":"other":t==1&&r?"one":"other"}const $v=S,Fv=S,Vv=Fe,Hv=S;function Uv(t,e){return e?"other":t>=0&&t<=1?"one":"other"}function jv(t,e){return e?"other":t>=0&&t<2?"one":"other"}const Wv=Fe;function Kv(t,e){var n=String(t).split("."),r=n[0],s=n[1]||"",i=!n[1],o=r.slice(-1),a=s.slice(-1);return e?t==1?"one":"other":i&&(r==1||r==2||r==3)||i&&o!=4&&o!=6&&o!=9||!i&&a!=4&&a!=6&&a!=9?"one":"other"}const qv=S;function Jv(t,e){return e?t==1?"one":"other":t>=0&&t<2?"one":"other"}const Gv=S,Xv=Fe;function Yv(t,e){var n=String(t).split("."),r=Number(n[0])==t;return e?t==1?"one":"other":t==1?"one":t==2?"two":r&&t>=3&&t<=6?"few":r&&t>=7&&t<=10?"many":"other"}function Zv(t,e){var n=String(t).split("."),r=Number(n[0])==t;return e?t==1||t==11?"one":t==2||t==12?"two":t==3||t==13?"few":"other":t==1||t==11?"one":t==2||t==12?"two":r&&t>=3&&t<=10||r&&t>=13&&t<=19?"few":"other"}const Qv=Fe,eE=S;function tE(t,e){return e?t==1?"one":t==2||t==3?"two":t==4?"few":t==6?"many":"other":t>=0&&t<=1?"one":"other"}const nE=Lt;function rE(t,e){var n=String(t).split("."),r=n[0],s=!n[1],i=r.slice(-1),o=r.slice(-2);return e?"other":s&&i==1?"one":s&&i==2?"two":s&&(o==0||o==20||o==40||o==60||o==80)?"few":s?"other":"many"}const sE=S,iE=S;function oE(t,e){var n=String(t).split("."),r=n[0],s=!n[1],i=Number(n[0])==t,o=i&&n[0].slice(-1);return e?"other":t==1&&s?"one":r==2&&s?"two":s&&(t<0||t>10)&&i&&o==0?"many":"other"}function aE(t,e){return e?t==1?"one":t==2||t==3?"two":t==4?"few":t==6?"many":"other":t>=0&&t<=1?"one":"other"}function lE(t,e){var n=String(t).split("."),r=n[0],s=n[1]||"",i=!n[1],o=r.slice(-1),a=r.slice(-2),l=s.slice(-1),c=s.slice(-2);return e?"other":i&&o==1&&a!=11||l==1&&c!=11?"one":i&&o>=2&&o<=4&&(a<12||a>14)||l>=2&&l<=4&&(c<12||c>14)?"few":"other"}function cE(t,e){var n=String(t).split("."),r=n[0],s=n[1]||"",i=!n[1],o=r.slice(-2),a=s.slice(-2);return e?"other":i&&o==1||a==1?"one":i&&o==2||a==2?"two":i&&(o==3||o==4)||a==3||a==4?"few":"other"}function uE(t,e){return e?t==1||t==5?"one":"other":t==1?"one":"other"}function dE(t,e){return e?t==1?"one":"other":t>=0&&t<2?"one":"other"}const hE=Fe,fE=K,pE=K,mE=K,gE=Fe;function yE(t,e){var n=String(t).split("."),r=n[0],s=Number(n[0])==t,i=r.slice(-1),o=r.slice(-2);return e?"other":s&&i==1&&o!=11||!s?"one":"other"}function xE(t,e){var n=String(t).split("."),r=!n[1];return e?t==11||t==8||t==80||t==800?"many":"other":t==1&&r?"one":"other"}const bE=fn;function kE(t,e){var n=String(t).split("."),r=n[0],s=!n[1],i=Number(n[0])==t,o=i&&n[0].slice(-1);return e?"other":t==1&&s?"one":r==2&&s?"two":s&&(t<0||t>10)&&i&&o==0?"many":"other"}const SE=K,wE=K,vE=S,EE=Fe,CE=S,TE=K,OE=K;function ME(t,e){var n=String(t).split("."),r=n[0],s=r.slice(-2);return e?r==1?"one":r==0||s>=2&&s<=20||s==40||s==60||s==80?"many":"other":t==1?"one":"other"}function _E(t,e){return e?"other":t>=0&&t<2?"one":"other"}const NE=S,AE=S,RE=K,IE=K;function DE(t,e){var n=String(t).split("."),r=Number(n[0])==t,s=r&&n[0].slice(-1);return e?s==6||s==9||r&&s==0&&t!=0?"many":"other":t==1?"one":"other"}const PE=S,LE=S,BE=K;function zE(t,e){return e?"other":t>=0&&t<=1?"one":"other"}const $E=K,FE=S,VE=S;function HE(t,e){return e?"other":t==0?"zero":t==1?"one":"other"}const UE=S;function jE(t,e){var n=String(t).split("."),r=Number(n[0])==t,s=r&&n[0].slice(-2),i=r&&n[0].slice(-3),o=r&&n[0].slice(-5),a=r&&n[0].slice(-6);return e?r&&t>=1&&t<=4||s>=1&&s<=4||s>=21&&s<=24||s>=41&&s<=44||s>=61&&s<=64||s>=81&&s<=84?"one":t==5||s==5?"many":"other":t==0?"zero":t==1?"one":s==2||s==22||s==42||s==62||s==82||r&&i==0&&(o>=1e3&&o<=2e4||o==4e4||o==6e4||o==8e4)||t!=0&&a==1e5?"two":s==3||s==23||s==43||s==63||s==83?"few":t!=1&&(s==1||s==21||s==41||s==61||s==81)?"many":"other"}const WE=S;function KE(t,e){var n=String(t).split("."),r=n[0];return e?"other":t==0?"zero":(r==0||r==1)&&t!=0?"one":"other"}const qE=S,JE=S,GE=K,XE=Lt;function YE(t,e){return e&&t==1?"one":"other"}function ZE(t,e){var n=String(t).split("."),r=n[1]||"",s=Number(n[0])==t,i=s&&n[0].slice(-1),o=s&&n[0].slice(-2);return e?"other":i==1&&(o<11||o>19)?"one":i>=2&&i<=9&&(o<11||o>19)?"few":r!=0?"many":"other"}function QE(t,e){var n=String(t).split("."),r=n[1]||"",s=r.length,i=Number(n[0])==t,o=i&&n[0].slice(-1),a=i&&n[0].slice(-2),l=r.slice(-2),c=r.slice(-1);return e?"other":i&&o==0||a>=11&&a<=19||s==2&&l>=11&&l<=19?"zero":o==1&&a!=11||s==2&&c==1&&l!=11||s!=2&&c==1?"one":"other"}const eC=S,tC=Lt,nC=S;function rC(t,e){var n=String(t).split("."),r=n[0],s=n[1]||"",i=!n[1],o=r.slice(-1),a=r.slice(-2),l=s.slice(-1),c=s.slice(-2);return e?o==1&&a!=11?"one":o==2&&a!=12?"two":(o==7||o==8)&&a!=17&&a!=18?"many":"other":i&&o==1&&a!=11||l==1&&c!=11?"one":"other"}const sC=S,iC=S;function oC(t,e){var n=String(t).split("."),r=!n[1],s=Number(n[0])==t,i=s&&n[0].slice(-2);return e?t==1?"one":"other":t==1&&r?"one":!r||t==0||i>=2&&i<=19?"few":"other"}function aC(t,e){return e?t==1?"one":t==2||t==3?"two":t==4?"few":"other":t==1?"one":"other"}function lC(t,e){return e&&t==1?"one":"other"}function cC(t,e){var n=String(t).split("."),r=Number(n[0])==t,s=r&&n[0].slice(-2);return e?"other":t==1?"one":t==0||s>=2&&s<=10?"few":s>=11&&s<=19?"many":"other"}const uC=K,dC=S,hC=fn,fC=S,pC=S;function mC(t,e){var n=String(t).split("."),r=Number(n[0])==t;return e?r&&t>=1&&t<=4?"one":"other":t==1?"one":"other"}const gC=Fe,yC=S,xC=S,bC=S,kC=K,SC=S,wC=Lt,vC=S,EC=S,CC=S;function TC(t,e){var n=String(t).split("."),r=Number(n[0])==t;return e?t==1||t==5||r&&t>=7&&t<=9?"one":t==2||t==3?"two":t==4?"few":t==6?"many":"other":t==1?"one":"other"}const OC=S,MC=K,_C=Lt,NC=S;function AC(t,e){var n=String(t).split("."),r=n[0],s=!n[1],i=r.slice(-1),o=r.slice(-2);return e?"other":t==1&&s?"one":s&&i>=2&&i<=4&&(o<12||o>14)?"few":s&&r!=1&&(i==0||i==1)||s&&i>=5&&i<=9||s&&o>=12&&o<=14?"many":"other"}function RC(t,e){var n=String(t).split("."),r=n[1]||"",s=r.length,i=Number(n[0])==t,o=i&&n[0].slice(-1),a=i&&n[0].slice(-2),l=r.slice(-2),c=r.slice(-1);return e?"other":i&&o==0||a>=11&&a<=19||s==2&&l>=11&&l<=19?"zero":o==1&&a!=11||s==2&&c==1&&l!=11||s!=2&&c==1?"one":"other"}const IC=S;function DC(t,e){var n=String(t).split("."),r=n[0];return e?"other":r==0||r==1?"one":"other"}const PC=Fe,LC=S;function BC(t,e){var n=String(t).split("."),r=!n[1],s=Number(n[0])==t,i=s&&n[0].slice(-2);return e?t==1?"one":"other":t==1&&r?"one":!r||t==0||i>=2&&i<=19?"few":"other"}const zC=S,$C=K;function FC(t,e){var n=String(t).split("."),r=n[0],s=!n[1],i=r.slice(-1),o=r.slice(-2);return e?"other":s&&i==1&&o!=11?"one":s&&i>=2&&i<=4&&(o<12||o>14)?"few":s&&i==0||s&&i>=5&&i<=9||s&&o>=11&&o<=14?"many":"other"}const VC=S,HC=K,UC=S;function jC(t,e){var n=String(t).split("."),r=!n[1];return e?t==11||t==8||t==80||t==800?"many":"other":t==1&&r?"one":"other"}function WC(t,e){var n=String(t).split("."),r=!n[1];return e?t==11||t==8||t==80||t==800?"many":"other":t==1&&r?"one":"other"}const KC=S,qC=S,JC=fn,GC=S,XC=K,YC=K;function ZC(t,e){var n=String(t).split("."),r=n[0],s=n[1]||"",i=!n[1],o=r.slice(-1),a=r.slice(-2),l=s.slice(-1),c=s.slice(-2);return e?"other":i&&o==1&&a!=11||l==1&&c!=11?"one":i&&o>=2&&o<=4&&(a<12||a>14)||l>=2&&l<=4&&(c<12||c>14)?"few":"other"}function QC(t,e){var n=String(t).split("."),r=Number(n[0])==t;return e?"other":t>=0&&t<=1?"one":r&&t>=2&&t<=10?"few":"other"}function eT(t,e){var n=String(t).split("."),r=n[0],s=n[1]||"";return e?"other":t==0||t==1||r==0&&s==1?"one":"other"}function tT(t,e){var n=String(t).split("."),r=n[0],s=!n[1];return e?"other":t==1&&s?"one":r>=2&&r<=4&&s?"few":s?"other":"many"}function nT(t,e){var n=String(t).split("."),r=n[0],s=!n[1],i=r.slice(-2);return e?"other":s&&i==1?"one":s&&i==2?"two":s&&(i==3||i==4)||!s?"few":"other"}const rT=fn,sT=fn,iT=fn,oT=fn,aT=fn,lT=S,cT=S;function uT(t,e){var n=String(t).split("."),r=Number(n[0])==t,s=r&&n[0].slice(-1),i=r&&n[0].slice(-2);return e?t==1?"one":s==4&&i!=14?"many":"other":t==1?"one":"other"}function dT(t,e){var n=String(t).split("."),r=n[0],s=n[1]||"",i=!n[1],o=r.slice(-1),a=r.slice(-2),l=s.slice(-1),c=s.slice(-2);return e?"other":i&&o==1&&a!=11||l==1&&c!=11?"one":i&&o>=2&&o<=4&&(a<12||a>14)||l>=2&&l<=4&&(c<12||c>14)?"few":"other"}const hT=S,fT=S,pT=S,mT=K;function gT(t,e){var n=String(t).split("."),r=!n[1],s=Number(n[0])==t,i=s&&n[0].slice(-1),o=s&&n[0].slice(-2);return e?(i==1||i==2)&&o!=11&&o!=12?"one":"other":t==1&&r?"one":"other"}const yT=Fe,xT=S,bT=S,kT=S,ST=S,wT=K,vT=Lt,ET=S;function CT(t,e){var n=String(t).split("."),r=Number(n[0])==t,s=r&&n[0].slice(-1);return e?s==6||s==9||t==10?"few":"other":t==1?"one":"other"}function TT(t,e){var n=String(t).split("."),r=n[0],s=n[1]||"",i=!n[1],o=r.slice(-1),a=s.slice(-1);return e?t==1?"one":"other":i&&(r==1||r==2||r==3)||i&&o!=4&&o!=6&&o!=9||!i&&a!=4&&a!=6&&a!=9?"one":"other"}const OT=S,MT=K,_T=S,NT=S;function AT(t,e){var n=String(t).split("."),r=Number(n[0])==t;return e?"other":t==0||t==1||r&&t>=11&&t<=99?"one":"other"}const RT=S;function IT(t,e){var n=String(t).split("."),r=n[0],s=!n[1],i=Number(n[0])==t,o=i&&n[0].slice(-1),a=i&&n[0].slice(-2),l=r.slice(-1),c=r.slice(-2);return e?o==3&&a!=13?"few":"other":s&&l==1&&c!=11?"one":s&&l>=2&&l<=4&&(c<12||c>14)?"few":s&&l==0||s&&l>=5&&l<=9||s&&c>=11&&c<=14?"many":"other"}const DT=Fe,PT=S,LT=S;function BT(t,e){return e&&t==1?"one":"other"}const zT=S,$T=S,FT=Lt,VT=S,HT=K,UT=S,jT=S,WT=Fe,KT=K,qT=K,JT=K;function GT(t,e){return e?"other":t>=0&&t<=1?"one":"other"}const XT=Object.freeze(Object.defineProperty({__proto__:null,_in:tv,af:nv,ak:rv,am:sv,an:iv,ar:ov,ars:av,as:lv,asa:cv,ast:uv,az:dv,be:hv,bem:fv,bez:pv,bg:mv,bho:gv,bm:yv,bn:xv,bo:bv,br:kv,brx:Sv,bs:wv,ca:vv,ce:Ev,ceb:Cv,cgg:Tv,chr:Ov,ckb:Mv,cs:_v,cy:Nv,da:Av,de:Rv,dsb:Iv,dv:Dv,dz:Pv,ee:Lv,el:Bv,en:zv,eo:$v,es:Fv,et:Vv,eu:Hv,fa:Uv,ff:jv,fi:Wv,fil:Kv,fo:qv,fr:Jv,fur:Gv,fy:Xv,ga:Yv,gd:Zv,gl:Qv,gsw:eE,gu:tE,guw:nE,gv:rE,ha:sE,haw:iE,he:oE,hi:aE,hr:lE,hsb:cE,hu:uE,hy:dE,ia:hE,id:fE,ig:pE,ii:mE,io:gE,is:yE,it:xE,iu:bE,iw:kE,ja:SE,jbo:wE,jgo:vE,ji:EE,jmc:CE,jv:TE,jw:OE,ka:ME,kab:_E,kaj:NE,kcg:AE,kde:RE,kea:IE,kk:DE,kkj:PE,kl:LE,km:BE,kn:zE,ko:$E,ks:FE,ksb:VE,ksh:HE,ku:UE,kw:jE,ky:WE,lag:KE,lb:qE,lg:JE,lkt:GE,ln:XE,lo:YE,lt:ZE,lv:QE,mas:eC,mg:tC,mgo:nC,mk:rC,ml:sC,mn:iC,mo:oC,mr:aC,ms:lC,mt:cC,my:uC,nah:dC,naq:hC,nb:fC,nd:pC,ne:mC,nl:gC,nn:yC,nnh:xC,no:bC,nqo:kC,nr:SC,nso:wC,ny:vC,nyn:EC,om:CC,or:TC,os:OC,osa:MC,pa:_C,pap:NC,pl:AC,prg:RC,ps:IC,pt:DC,pt_PT:PC,rm:LC,ro:BC,rof:zC,root:$C,ru:FC,rwk:VC,sah:HC,saq:UC,sc:jC,scn:WC,sd:KC,sdh:qC,se:JC,seh:GC,ses:XC,sg:YC,sh:ZC,shi:QC,si:eT,sk:tT,sl:nT,sma:rT,smi:sT,smj:iT,smn:oT,sms:aT,sn:lT,so:cT,sq:uT,sr:dT,ss:hT,ssy:fT,st:pT,su:mT,sv:gT,sw:yT,syr:xT,ta:bT,te:kT,teo:ST,th:wT,ti:vT,tig:ET,tk:CT,tl:TT,tn:OT,to:MT,tr:_T,ts:NT,tzm:AT,ug:RT,uk:IT,ur:DT,uz:PT,ve:LT,vi:BT,vo:zT,vun:$T,wa:FT,wae:VT,wo:HT,xh:UT,xog:jT,yi:WT,yo:KT,yue:qT,zh:JT,zu:GT},Symbol.toStringTag,{value:"Module"}));var YT=Object.defineProperty,ZT=Object.getOwnPropertyDescriptor,QT=Object.getOwnPropertyNames,eO=Object.prototype.hasOwnProperty,tO=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of QT(e))!eO.call(t,s)&&s!==n&&YT(t,s,{get:()=>e[s],enumerable:!(r=ZT(e,s))||r.enumerable});return t},nO=(t,e,n)=>(tO(t,e,"default"),n),rO=JSON.parse('{"extension.command.toggle-upper-case.label":[["case","select",{"upper":"Uppercase","lower":"Lowercase","capitalize":"Sentence case","smallCaps":"Small caps","other":"Text case"}]],"extension.table.column_count":[["count","plural",{"one":["#"," column"],"other":["#"," columns"]}]],"extension.table.row_count":[["count","plural",{"one":["#"," row"],"other":["#"," rows"]}]],"extension.command.toggle-columns.description":[["count","select",{"2":"Split the block into two columns","3":"Split the current block into three columns","4":"Split the current block into four columns","other":"Split the current block into multiple columns"}]],"extension.command.toggle-columns.label":[["count","select",{"2":"Two Column Block","3":"Three Column Block","4":"Four Column Block","other":"Multi Column Block"}]],"extension.command.set-text-direction.label":[["dir","select",{"ltr":"Left-To-Right","rtl":"Right-To-Left","other":"Reset Direction"}]],"extension.command.set-text-direction.description":[["dir","select",{"ltr":"Set the text direction from left to right","rtl":"Set the text direction from right to left","other":"Reset text direction"}]],"extension.command.toggle-heading.label":[["level","select",{"1":"Heading 1","2":"Heading 2","3":"Heading 3","4":"Heading 4","5":"Heading 5","6":"Heading 6","other":"Heading"}]],"extension.command.toggle-callout.description":[["type","select",{"info":"Create an information callout block","warning":"Create a warning callout block","error":"Create an error callout block","success":"Create a success callout block","other":"Create a callout block"}]],"extension.command.toggle-callout.label":[["type","select",{"info":"Information Callout","warning":"Warning Callout","error":"Error Callout","success":"Success Callout","other":"Callout"}]],"extension.command.toggle-code-block.description":"Add a code block","extension.command.add-annotation.label":"Add annotation","extension.command.toggle-blockquote.description":"Add blockquote formatting to the selected text","extension.command.toggle-bold.description":"Add bold formatting to the selected text","extension.command.toggle-code.description":"Add inline code formatting to the selected text","keyboard.shortcut.alt":"Alt","keyboard.shortcut.arrowDown":"Arrow Down","keyboard.shortcut.arrowLeft":"Arrow Left","keyboard.shortcut.arrowRight":"Arrow Right","keyboard.shortcut.arrowUp":"Arrow Up","keyboard.shortcut.backspace":"Backspace","ui.text-color.black":"Black","extension.command.toggle-blockquote.label":"Blockquote","ui.text-color.blue":"Blue","ui.text-color.blue.hue":["Blue ",["hue"]],"extension.command.toggle-bold.label":"Bold","extension.command.toggle-bullet-list.description":"Bulleted list","keyboard.shortcut.capsLock":"Caps Lock","extension.command.center-align.label":"Center align","extension.command.toggle-code.label":"Code","extension.command.toggle-code-block.label":"Codeblock","keyboard.shortcut.command":"Command","QcPNd6":"Image description","ogrUzJ":"Add a short description here.","yqdyzr":"Image","6/02F4":"Image source","X8H91v":"Image","zhQ7Zt":"Italic","ZL7E7l":"Underline","keyboard.shortcut.control":"Control","extension.command.convert-paragraph.description":"Convert current block into a paragraph block.","extension.command.convert-paragraph.label":"Convert Paragraph","extension.command.copy.label":"Copy","extension.command.copy.description":"Copy the selected text","extension.command.create-table.description":"Create a table with set number of rows and columns.","extension.command.create-table.label":"Create table","extension.command.cut.label":"Cut","extension.command.cut.description":"Cut the selected text","ui.text-color.cyan":"Cyan","ui.text-color.cyan.hue":["Cyan ",["hue"]],"extension.command.decrease-font-size.label":"Decrease","extension.command.decrease-indent.label":"Decrease indentation","extension.command.decrease-font-size.description":"Decrease the font size.","keyboard.shortcut.delete":"Delete","extension.command.insert-horizontal-rule.label":"Divider","keyboard.shortcut.end":"End","keyboard.shortcut.escape":"Enter","keyboard.shortcut.enter":"Enter","6PjrOF":"Add annotation","OTq5WC":"Center align","oeZ3ox":"Convert current block into a paragraph block.","m1khs+":"Convert Paragraph","w/1U+3":"Copy the selected text","kdodi0":"Copy","k0KR/u":"Create a table with set number of rows and columns.","zrwMyD":"Create table","D/nWxh":"Cut the selected text","jHPv5m":"Cut","5cNgRx":"Decrease the font size.","vyRNWx":"Decrease","Jgiol4":"Decrease indentation","1gJSHH":"Increase the font size","OQXJXz":"Increase","72TLhr":"Increase indentation","HFlfzJ":"Insert Emoji","RPq9fY":"Separate content with a diving horizontal line","OKQF+e":"Divider","zjYb9C":"Insert a new paragraph","4M4sXC":"Insert Paragraph","1Q+eVc":"Justify","ejWWtP":"Left align","wVqrpS":"Paste content into the editor","07v9aw":"Paste","zUYfou":"Redo the most recent action","9Nq9zr":"Redo","0uxaZe":"Remove annotation","iJWZAz":"Right align","g5WpPn":"Select all content within the editor","2+pZDT":"Select all","yChCR1":"Set text case","GMzAC/":"Set the font size for the selected text.","vzEyrv":"Font size","7VCkJ8":"Set the text color for the selected text.","qjWFaR":"Text color","LVWgFu":[["dir","select",{"ltr":"Set the text direction from left to right","rtl":"Set the text direction from right to left","other":"Reset text direction"}]],"WXwRy1":[["dir","select",{"ltr":"Left-To-Right","rtl":"Right-To-Left","other":"Reset Direction"}]],"G/o315":"Set the text highlight color for the selected text.","xtHg6d":"Text highlight","1p1W/p":"Add blockquote formatting to the selected text","6+rh6I":"Blockquote","0yB3LV":"Add bold formatting to the selected text","sFMo4Z":"Bold","SMKG/s":"Bulleted list","/BYCMi":[["type","select",{"info":"Create an information callout block","warning":"Create a warning callout block","error":"Create an error callout block","success":"Create a success callout block","other":"Create a callout block"}]],"V+3IBe":[["type","select",{"info":"Information Callout","warning":"Warning Callout","error":"Error Callout","success":"Success Callout","other":"Callout"}]],"hbIo4L":"Add a code block","7GkMcx":"Codeblock","2r4JYl":"Add inline code formatting to the selected text","Up8Tpe":"Code","ATHSPS":[["count","select",{"2":"Split the block into two columns","3":"Split the current block into three columns","4":"Split the current block into four columns","other":"Split the current block into multiple columns"}]],"7DC1VE":[["count","select",{"2":"Two Column Block","3":"Three Column Block","4":"Four Column Block","other":"Multi Column Block"}]],"hnrBeo":[["level","select",{"1":"Heading 1","2":"Heading 2","3":"Heading 3","4":"Heading 4","5":"Heading 5","6":"Heading 6","other":"Heading"}]],"NkZAcw":"Italicize the selected text","2fTW9e":"Italic","c759Ra":"Ordered list","uQwrZu":"Strikethrough the selected text","pT3qly":"Strikethrough","BHk+zu":"Subscript","18BVwM":"Superscript","tOIVCV":"Tasked list","4Janx3":"Underline the selected text","dCHt+D":"Underline","YYAprs":[["case","select",{"upper":"Uppercase","lower":"Lowercase","capitalize":"Sentence case","smallCaps":"Small caps","other":"Text case"}]],"tczyZL":"Show hidden whitespace characters in your editor.","0qAX23":"Toggle Whitespace","ezMADU":"Undo the most recent action","N3P7EC":"Undo","2nj/+s":"Update annotation","dWD7u4":[["count","plural",{"one":["#"," column"],"other":["#"," columns"]}]],"qXqgVT":[["count","plural",{"one":["#"," row"],"other":["#"," rows"]}]],"extension.command.set-font-size.label":"Font size","ui.text-color.grape":"Grape","ui.text-color.grape.hue":["Grape ",["hue"]],"ui.text-color.gray":"Gray","ui.text-color.gray.hue":["Gray ",["hue"]],"ui.text-color.green":"Green","ui.text-color.green.hue":["Green ",["hue"]],"keyboard.shortcut.home":"Home","extension.command.increase-font-size.label":"Increase","extension.command.increase-indent.label":"Increase indentation","extension.command.increase-font-size.description":"Increase the font size","ui.text-color.indigo":"Indigo","ui.text-color.indigo.hue":["Indigo ",["hue"]],"extension.command.insert-paragraph.description":"Insert a new paragraph","extension.command.insert-emoji.label":"Insert Emoji","extension.command.insert-paragraph.label":"Insert Paragraph","extension.command.toggle-italic.label":"Italic","extension.command.toggle-italic.description":"Italicize the selected text","extension.command.justify-align.label":"Justify","R7NlCw":"Alt","RbDiK5":"Arrow Down","Dgyd+E":"Arrow Left","8pdCk4":"Arrow Right","Gp/343":"Arrow Up","PFPV0A":"Backspace","0IRYvp":"Caps Lock","X7HX0D":"Command","zq0AdD":"Control","8SfToN":"Delete","Ys/uah":"End","3K5hww":"Enter","veQt1j":"Enter","ySv7i+":"Home","e6RUI1":"Page Down","EEJk31":"Page Up","7sbhAU":"Shift","Q4eplT":"Space","SUhVVC":"Tab","extension.command.left-align.label":"Left align","ui.text-color.lime":"Lime","ui.text-color.lime.hue":["Lime ",["hue"]],"react-components.mention-atom-component.zero-items":"No items available","ui.text-color.orange":"Orange","ui.text-color.orange.hue":["Orange ",["hue"]],"extension.command.toggle-ordered-list.label":"Ordered list","keyboard.shortcut.pageDown":"Page Down","keyboard.shortcut.pageUp":"Page Up","extension.command.paste.label":"Paste","extension.command.paste.description":"Paste content into the editor","ui.text-color.pink":"Pink","ui.text-color.pink.hue":["Pink ",["hue"]],"zvMfIA":"No items available","pEjhti":"Static Menu","ui.text-color.red":"Red","ui.text-color.red.hue":["Red ",["hue"]],"extension.command.redo.label":"Redo","extension.command.redo.description":"Redo the most recent action","extension.command.remove-annotation.label":"Remove annotation","extension.command.right-align.label":"Right align","extension.command.select-all.label":"Select all","extension.command.select-all.description":"Select all content within the editor","extension.command.insert-horizontal-rule.description":"Separate content with a diving horizontal line","extension.command.set-casing.label":"Set text case","extension.command.set-font-size.description":"Set the font size for the selected text.","extension.command.set-text-color.description":"Set the text color for the selected text.","extension.command.set-text-highlight.description":"Set the text highlight color for the selected text.","keyboard.shortcut.shift":"Shift","extension.command.toggle-whitespace.description":"Show hidden whitespace characters in your editor.","keyboard.shortcut.space":"Space","extension.command.toggle-strike.label":"Strikethrough","extension.command.toggle-strike.description":"Strikethrough the selected text","extension.command.toggle-subscript.label":"Subscript","extension.command.toggle-superscript.label":"Superscript","keyboard.shortcut.tab":"Tab","extension.command.toggle-task-list.description":"Tasked list","ui.text-color.teal":"Teal","ui.text-color.teal.hue":["Teal ",["hue"]],"extension.command.set-text-color.label":"Text color","extension.command.set-text-highlight.label":"Text highlight","extension.command.toggle-whitespace.label":"Toggle Whitespace","ui.text-color.transparent":"Transparent","slrB1c":"Black","6QML30":"Blue","xw+keN":["Blue ",["hue"]],"38RHqP":"Cyan","D89yPf":["Cyan ",["hue"]],"VjBLnd":"Grape","Rp40yv":["Grape ",["hue"]],"5Dm9D1":"Gray","HGjXjC":["Gray ",["hue"]],"b9fz+n":"Green","18jo3M":["Green ",["hue"]],"CFzqCV":"Indigo","aVlDku":["Indigo ",["hue"]],"04PfLc":"Lime","KRTK6Y":["Lime ",["hue"]],"pSnXFd":"Orange","ve/MJZ":["Orange ",["hue"]],"OvCgDa":"Pink","l7NqyT":["Pink ",["hue"]],"IT9k0j":"Red","AdyJ7/":["Red ",["hue"]],"3D2UWc":"Teal","Dcq0Y1":["Teal ",["hue"]],"bsi2ik":"Transparent","Tj3PRR":"Violet","xxMH5N":["Violet ",["hue"]],"Rum0ah":"White","4gaw/Q":"Yellow","hhauc3":["Yellow ",["hue"]],"extension.command.toggle-underline.label":"Underline","extension.command.toggle-underline.description":"Underline the selected text","extension.command.undo.label":"Undo","extension.command.undo.description":"Undo the most recent action","extension.command.update-annotation.label":"Update annotation","ui.text-color.violet":"Violet","ui.text-color.violet.hue":["Violet ",["hue"]],"ui.text-color.white":"White","ui.text-color.yellow":"Yellow","ui.text-color.yellow.hue":["Yellow ",["hue"]]}'),kf={};nO(kf,XT);Yi.loadLocaleData("en",{plurals:kf.en});Yi.load("en",rO);Yi.activate("en");var sO=Object.defineProperty,iO=Object.getOwnPropertyDescriptor,oO=(t,e,n,r)=>{for(var s=r>1?void 0:r?iO(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&sO(e,n,s),s},aO={...un.defaultOptions,...ks.defaultOptions},lO=[...un.staticKeys,...ks.staticKeys],Ss=class extends te{get name(){return"react"}onSetOptions(t){const{pickChanged:e}=t;this.getExtension(un).setOptions(e(["placeholder"]))}createExtensions(){const{emptyNodeClass:t,placeholder:e,defaultBlockNode:n,defaultContentNode:r,defaultEnvironment:s,defaultInlineNode:i,nodeViewComponents:o}=this.options;return[new un({emptyNodeClass:t,placeholder:e,priority:Y.Low}),new ks({defaultBlockNode:n,defaultContentNode:r,defaultEnvironment:s,defaultInlineNode:i,nodeViewComponents:o})]}};Ss=oO([G({defaultOptions:aO,staticKeys:lO})],Ss);var Sf={};Object.defineProperty(Sf,"__esModule",{value:!0});function cO(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];if(t.length===2)return su(t[0],t[1])||null;var n=t.slice(1).reduce(function(r,s){return su(r,s)},t[0]);return n||null}var Cr=Sf.default=cO,ru=new WeakMap;function su(t,e){if(t&&e){var n=ru.get(t)||new WeakMap;ru.set(t,n);var r=n.get(e)||function(s){iu(t,s),iu(e,s)};return n.set(e,r),r}return t||e}function iu(t,e){typeof t=="function"?t(e):t.current=e}var wf=(t,e,n)=>{if(!e.has(t))throw TypeError("Cannot "+n)},Eo=(t,e,n)=>(wf(t,e,"read from private field"),e.get(t)),uO=(t,e,n)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,n)},dO=(t,e,n,r)=>(wf(t,e,"write to private field"),e.set(t,n),n);function hO(){const[,t]=z.useState(M());return z.useCallback(()=>{t(M())},[])}var vf=z.createContext(null);function nl(t){const e=z.useContext(vf),n=z.useRef(hO());R(e,{code:b.REACT_PROVIDER_CONTEXT});const{addHandler:r}=e;return z.useEffect(()=>{let s=t;if(s){if(Ln(s)){const{autoUpdate:i}=s;s=i?()=>n.current():void 0}if(ee(s))return r("updated",s)}},[r,t]),e}function fO(t=!0){return nl({autoUpdate:t}).active}function pO(){return nl().commands}var[mO,uM]=Hw(({props:t})=>{const e=t.locale??"en",n=t.i18n??Yi,r=t.supportedLocales??[e],s=n._.bind(n);return{locale:e,i18n:n,supportedLocales:r,t:s}});function ou(t,e={}){const{core:n,react:r,...s}=e;return xb(t)?t:yb.create(()=>[...$u(t),new Ss(r),...Ow(n)],s)}function gO(t,e={}){const n=z.useRef(t),r=z.useRef(e),[s,i]=z.useState(()=>ou(t,e));return n.current=t,r.current=e,z.useEffect(()=>s.addHandler("destroy",()=>{i(()=>ou(n.current,r.current))}),[s]),s}var yO=typeof Cr=="object"&&Cr.__esModule&&Cr.default?Cr.default:Cr,Gn,xO=class extends hb{constructor(t){if(super(t),uO(this,Gn,void 0),this.rootPropsConfig={called:!1,count:0},this.getRootProps=e=>this.internalGetRootProps(e,null),this.internalGetRootProps=(e,n)=>{this.rootPropsConfig.called=!0;const{refKey:r="ref",ref:s,...i}=e??M();return{[r]:yO(s,this.onRef),key:this.uid,...i,children:n}},this.onRef=e=>{e&&(this.rootPropsConfig.count+=1,R(this.rootPropsConfig.count<=1,{code:b.REACT_GET_ROOT_PROPS,message:`Called ${this.rootPropsConfig.count} times`}),dO(this,Gn,e),this.onRefLoad())},this.manager.view){this.manager.view.setProps({state:this.manager.view.state,dispatchTransaction:this.dispatchTransaction,attributes:()=>this.getAttributes(),editable:()=>this.props.editable??!0});return}this.manager.getExtension(un).setOptions({placeholder:this.props.placeholder??""})}get name(){return"react"}update(t){return super.update(t),this}createView(t){return new Iy(null,{state:t,dispatchTransaction:this.dispatchTransaction,attributes:()=>this.getAttributes(),editable:()=>this.props.editable??!0,plugins:[]})}updateState({state:t,...e}){const{triggerChange:n=!0,tr:r,transactions:s}=e;if(this.props.state){const{onChange:i}=this.props;R(i,{code:b.REACT_CONTROLLED,message:"You are required to provide the `onChange` handler when creating a controlled editor."}),R(n,{code:b.REACT_CONTROLLED,message:"Controlled editors do not support `clearContent` or `setContent` where `triggerChange` is `true`. Update the `state` prop instead."}),this.previousStateOverride||(this.previousStateOverride=this.getState()),this.onChange({state:t,tr:r,transactions:s});return}!r&&!s&&(t=t.apply(t.tr.setMeta(ol,{}))),this.view.updateState(t),n&&(s==null?void 0:s.length)!==0&&this.onChange({state:t,tr:r,transactions:s}),this.manager.onStateUpdate({previousState:this.previousState,state:t,tr:r,transactions:s})}updateControlledState(t,e){this.previousStateOverride=e,t=t.apply(t.tr.setMeta(ol,{})),this.view.updateState(t),this.manager.onStateUpdate({previousState:this.previousState,state:t}),this.previousStateOverride=void 0}addProsemirrorViewToDom(t,e){this.props.insertPosition==="start"?t.insertBefore(e,t.firstChild):t.append(e)}onRefLoad(){R(Eo(this,Gn),{code:b.REACT_EDITOR_VIEW,message:"Something went wrong when initializing the text editor. Please check your setup."});const{autoFocus:t}=this.props;this.addProsemirrorViewToDom(Eo(this,Gn),this.view.dom),t&&this.focus(t),this.onChange(),this.addFocusListeners()}onUpdate(){this.view&&Eo(this,Gn)&&this.view.setProps({...this.view.props,editable:()=>this.props.editable??!0})}get frameworkOutput(){return{...this.baseOutput,getRootProps:this.getRootProps,portalContainer:this.manager.store.portalContainer}}resetRender(){this.rootPropsConfig.called=!1,this.rootPropsConfig.count=0}};Gn=new WeakMap;var Ef=typeof document<"u"?z.useLayoutEffect:z.useEffect;function bO(t){const e=z.useRef();return Ef(()=>{e.current=t}),e.current}function kO(t){const{manager:e,state:n}=t,{placeholder:r,editable:s}=t;z.useRef(!0).current&&!tn(r)&&e.getExtension(Ss).setOptions({placeholder:r}),z.useEffect(()=>{r!=null&&e.getExtension(Ss).setOptions({placeholder:r})},[r,e]);const[o]=z.useState(()=>{if(n)return n;const l=e.createEmptyDoc(),[c,u]=me(t.initialContent)?t.initialContent:[t.initialContent??l];return e.createState({content:c,selection:u})}),a=SO({initialEditorState:o,getProps:()=>t});return z.useEffect(()=>()=>{a.destroy()},[a]),z.useEffect(()=>{a.onUpdate()},[s,a]),wO(a),a.frameworkOutput}function SO(t){const e=z.useRef(t);e.current=t;const n=z.useMemo(()=>new xO(e.current),[]);return n.update(t),n}function wO(t){const{state:e}=t.props,n=z.useRef(!!e),r=bO(e);Ef(()=>{const s=e?n.current===!0:n.current===!1;R(s,{code:b.REACT_CONTROLLED,message:n.current?"You have attempted to switch from a controlled to an uncontrolled editor. Once you set up an editor as a controlled editor it must always provide a `state` prop.":"You have provided a `state` prop to an uncontrolled editor. In order to set up your editor as controlled you must provide the `state` prop from the very first render."}),!(!e||e===r)&&t.updateControlledState(e,r??void 0)},[e,r,t])}function vO(t={}){const{content:e,document:n,selection:r,extensions:s,...i}=t,o=gO(s??(()=>[]),i),[a,l]=z.useState(()=>o.createState({selection:r,content:e??o.createEmptyDoc()})),c=z.useCallback(({state:d})=>{l(d)},[]),u=z.useCallback(()=>o.output,[o]);return z.useMemo(()=>({state:a,setState:l,manager:o,onChange:c,getContext:u}),[u,o,c,a])}var ua=()=>Ne.createElement("div",{className:A1.EDITOR_WRAPPER,...nl().getRootProps()}),EO=t=>(t.hook(),null);function CO(t){const{children:e,autoRender:n,i18n:r,locale:s,supportedLocales:i,hooks:o=[],...a}=t,l=kO(a),c=Iw(l.portalContainer),u=n==="start"||n===!0||!e&&tn(n),d=n==="end";return Ne.createElement(mO,{i18n:r,locale:s,supportedLocales:i},Ne.createElement(vf.Provider,{value:l},Ne.createElement(Rw,{portals:c}),o.map((h,f)=>Ne.createElement(EO,{hook:h,key:f})),u&&Ne.createElement(ua,null),e,d&&Ne.createElement(ua,null)))}const TO="_richTextToolbar_1gbkk_1",OO="_richTextToolbarContainer_1gbkk_5",au={richTextToolbar:TO,richTextToolbarContainer:OO};var Xn=(t=>(t.BOLD="bold",t.ITALIC="italic",t.CODE="code",t.UL="ul",t.OL="ol",t))(Xn||{});const Cf=({disabled:t=!1,toolbarComponent:e=null})=>{const{focus:n,toggleBold:r,toggleBulletList:s,toggleCode:i,toggleItalic:o,toggleOrderedList:a}=pO(),l=fO(),c=[{icon:Xn.BOLD,onClick:r,active:l.bold()},{icon:Xn.ITALIC,onClick:o,active:l.italic()},{icon:Xn.CODE,onClick:i,active:l.code()},{icon:Xn.UL,onClick:s,active:l.bulletList()},{icon:Xn.OL,onClick:a,active:l.orderedList()}];return ae.jsxs("div",{className:au.richTextToolbarContainer,children:[ae.jsx("div",{className:au.richTextToolbar,children:c.map((u,d)=>ae.jsx(Tu,{small:!0,round:!0,basic:!0,icon:u.icon,colored:_f.MUTED,onClick:()=>{u.onClick(),n()},active:u.active,disabled:t},d))}),e]})};Cf.__docgenInfo={description:"",methods:[],displayName:"RichTextToolbar",props:{disabled:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},toolbarComponent:{required:!1,tsType:{name:"ReactNode"},description:"",defaultValue:{value:"null",computed:!1}}}};const MO="_inputInTable_19adc_1",_O="_error_19adc_7",NO="_warning_19adc_7",AO="_inputHover_19adc_13",RO="_inputFocus_19adc_18",IO="_inputError_19adc_25",DO="_inputWarning_19adc_26",PO="_inputDisabled_19adc_61",LO="_hideScrollbars_19adc_67",BO="_richTextInput_19adc_77",zO={inputInTable:MO,error:_O,warning:NO,inputHover:AO,inputFocus:RO,inputError:IO,inputWarning:DO,inputDisabled:PO,hideScrollbars:LO,richTextInput:BO},Zi=z.forwardRef(({placeholder:t,onChange:e,value:n,disabled:r,toolbarComponent:s},i)=>{const o=z.useContext(Mf),a=r||o,{manager:l,state:c,setState:u,getContext:d}=vO({extensions:()=>[new Dn({}),new xs({}),new gs,new ys,new yr({}),new bs,new un({placeholder:t})],content:n,selection:"start",stringHandler:"markdown"});z.useImperativeHandle(i,()=>d(),[d]);const h=({helpers:f,state:p})=>{const m=f.getMarkdown(p);e&&e(m),u(p)};return ae.jsx("div",{className:zO.richTextInput,children:ae.jsxs(CO,{manager:l,state:c,placeholder:t,onChange:h,editable:!a,children:[ae.jsx(Cf,{disabled:a,toolbarComponent:s}),ae.jsx(ua,{})]})})});Zi.__docgenInfo={description:"",methods:[],displayName:"RichTextInput"};const dM={title:"Forms/RichTextInput",component:Zi,args:{}},As=t=>{const[e,n]=Ne.useState(t.value);return ae.jsxs(ae.Fragment,{children:[ae.jsx(Zi,{...t,value:e,onChange:n}),ae.jsx("pre",{children:ae.jsx("strong",{children:"Markdown output:"})}),ae.jsx("pre",{children:e})]})},Bs=As.bind({}),Gr=As.bind({});Gr.args={value:`Paragraph goes here lorem ipsum dolor.
|
|
179
|
+
`}}});function hw(t,e){const n=N(t,{gfm:!0,smartLists:!0,xhtml:!0});return e?e(n):n}var yr=class extends te{get name(){return"markdown"}onCreate(){this.store.setStringHandler("markdown",this.markdownToProsemirrorNode.bind(this))}createPlugin(){return{props:{clipboardTextSerializer:this.options.copyAsMarkdown?e=>{const n=document.createElement("div"),r=Dt.fromSchema(this.store.schema);return n.append(r.serializeFragment(e.content)),this.options.htmlToMarkdown(n.innerHTML)}:void 0}}}markdownToProsemirrorNode(t){return this.store.stringHandlers.html({...t,content:this.options.markdownToHtml(t.content,this.options.htmlSanitizer)})}insertMarkdown(t,e){return n=>{const{state:r}=n;let s=this.options.markdownToHtml(t,this.options.htmlSanitizer);s=!(e!=null&&e.alwaysWrapInBlock)&&s.startsWith("<p><")&&s.endsWith(`</p>
|
|
180
|
+
`)?s.slice(3,-5):`<div>${s}</div>`;const i=this.store.stringHandlers.html({content:s,schema:r.schema,fragment:!0});return this.store.commands.insertNode.original(i,{...e,replaceEmptyParentBlock:!0})(n)}}getMarkdown(t){return this.options.htmlToMarkdown(this.store.helpers.getHTML(t))}toggleBoldMarkdown(){return t=>!1}};Gi([_()],yr.prototype,"insertMarkdown",1);Gi([se()],yr.prototype,"getMarkdown",1);Gi([_()],yr.prototype,"toggleBoldMarkdown",1);yr=Gi([G({defaultOptions:{htmlToMarkdown:cw,markdownToHtml:hw,htmlSanitizer:void 0,activeNodes:[j.Code],copyAsMarkdown:!1},staticKeys:["htmlToMarkdown","markdownToHtml","htmlSanitizer"]})],yr);var fw=Object.defineProperty,pw=Object.getOwnPropertyDescriptor,Xi=(t,e,n,r)=>{for(var s=r>1?void 0:r?pw(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&fw(e,n,s),s},mw={icon:"paragraph",label:({t})=>t(hi.INSERT_LABEL),description:({t})=>t(hi.INSERT_DESCRIPTION)},gw={icon:"paragraph",label:({t})=>t(hi.CONVERT_LABEL),description:({t})=>t(hi.CONVERT_DESCRIPTION)},Pn=class extends Pt{get name(){return"paragraph"}createTags(){return[j.LastNodeCompatible,j.TextBlock,j.Block,j.FormattingNode]}createNodeSpec(t,e){return{content:"inline*",draggable:!1,...e,attrs:{...t.defaults()},parseDOM:[{tag:"p",getAttrs:n=>({...t.parse(n)})},...e.parseDOM??[]],toDOM:n=>["p",t.dom(n),0]}}convertParagraph(t={}){const{attrs:e,selection:n,preserveAttrs:r}=t;return this.store.commands.setBlockNodeType.original(this.type,e,n,r)}insertParagraph(t,e={}){const{selection:n,attrs:r}=e;return this.store.commands.insertNode.original(this.type,{content:t,selection:n,attrs:r})}shortcut(t){return this.convertParagraph()(t)}};Xi([_(gw)],Pn.prototype,"convertParagraph",1);Xi([_(mw)],Pn.prototype,"insertParagraph",1);Xi([Ye({shortcut:E.Paragraph,command:"convertParagraph"})],Pn.prototype,"shortcut",1);Pn=Xi([G({defaultPriority:Y.Medium})],Pn);var yw=Object.defineProperty,xw=Object.getOwnPropertyDescriptor,bw=(t,e,n,r)=>{for(var s=r>1?void 0:r?xw(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&yw(e,n,s),s},un=class extends te{get name(){return"placeholder"}createAttributes(){return{"aria-placeholder":this.options.placeholder}}createPlugin(){return{state:{init:(t,e)=>({...this.options,empty:Ia(e.doc,{ignoreAttributes:!0})}),apply:(t,e,n,r)=>kw({pluginState:e,tr:t,extension:this,state:r})},props:{decorations:t=>Sw({state:t,extension:this})}}}onSetOptions(t){const{changes:e}=t;e.placeholder.changed&&this.store.phase>=Pe.EditorView&&this.store.updateAttributes()}};un=bw([G({defaultOptions:{emptyNodeClass:F1.IS_EMPTY,placeholder:""}})],un);function kw(t){const{pluginState:e,extension:n,tr:r,state:s}=t;return r.docChanged?{...n.options,empty:Ia(s.doc)}:e}function Sw(t){const{extension:e,state:n}=t,{empty:r}=e.pluginKey.getState(n),{emptyNodeClass:s,placeholder:i}=e.options;if(!r)return null;const o=[];return n.doc.descendants((a,l)=>{const c=Q.node(l,l+a.nodeSize,{class:s,"data-placeholder":i});o.push(c)}),W.create(n.doc,o)}var ww=Object.defineProperty,vw=Object.getOwnPropertyDescriptor,Ew=(t,e,n,r)=>{for(var s=r>1?void 0:r?vw(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&ww(e,n,s),s},aa=class extends Pt{get name(){return"text"}createTags(){return[j.InlineNode]}createNodeSpec(){return{}}};aa=Ew([G({disableExtraAttributes:!0,defaultPriority:Y.Medium})],aa);var Cw={...pr.defaultOptions,...Pn.defaultOptions,...kt.defaultOptions,excludeExtensions:[]};function Tw(t={}){t={...Cw,...t};const{content:e,depth:n,getDispatch:r,getState:s,newGroupDelay:i,excludeExtensions:o}=t,a={};for(const c of o??[])a[c]=!0;const l=[];if(!a.history){const c=new kt({depth:n,getDispatch:r,getState:s,newGroupDelay:i});l.push(c)}return a.doc||l.push(new pr({content:e})),a.text||l.push(new aa),a.paragraph||l.push(new Pn),a.positioner||l.push(new ms),a.gapCursor||l.push(new sa),a.events||l.push(new wi),l}var Ow=Object.defineProperty,Mw=Object.getOwnPropertyDescriptor,_w=(t,e,n,r)=>{for(var s=r>1?void 0:r?Mw(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&Ow(e,n,s),s},ff=(t,e,n)=>{if(!e.has(t))throw TypeError("Cannot "+n)},O=(t,e,n)=>(ff(t,e,"read from private field"),n?n.call(t):e.get(t)),je=(t,e,n)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,n)},He=(t,e,n,r)=>(ff(t,e,"write to private field"),e.set(t,n),n),jr,Nw=class{constructor(){this.portals=new Map,je(this,jr,ji()),this.on=t=>O(this,jr).on("update",t),this.once=t=>{const e=O(this,jr).on("update",n=>{e(),t(n)});return e}}update(){O(this,jr).emit("update",this.portals)}render({Component:t,container:e}){const n=this.portals.get(e);this.portals.set(e,{Component:t,key:(n==null?void 0:n.key)??si()}),this.update()}forceUpdate(){for(const[t,{Component:e}]of this.portals)this.portals.set(t,{Component:e,key:si()})}remove(t){this.portals.delete(t),this.update()}};jr=new WeakMap;var Aw=t=>{const{portals:e}=t;return Ne.createElement(Ne.Fragment,null,e.map(([n,{Component:r,key:s}])=>Af.createPortal(Ne.createElement(r,null),n,s)))};function Rw(t){const[e,n]=z.useState(()=>Array.from(t.portals.entries()));return z.useEffect(()=>t.on(r=>{n(Array.from(r.entries()))}),[t]),z.useMemo(()=>e,[e])}var ne,Wr,yn,Kr,Qs,qr,Jn,Jr,ei,Et,_e,la,pf=class{constructor({getPosition:t,node:e,portalContainer:n,view:r,ReactComponent:s,options:i}){je(this,ne,void 0),je(this,Wr,[]),je(this,yn,void 0),je(this,Kr,void 0),je(this,Qs,void 0),je(this,qr,void 0),je(this,Jn,void 0),je(this,Jr,!1),je(this,ei,void 0),je(this,Et,void 0),je(this,_e,void 0),je(this,la,l=>{l&&(R(O(this,Et),{code:b.REACT_NODE_VIEW,message:`You have applied a ref to a node view provided for '${O(this,ne).type.name}' which doesn't support content.`}),l.append(O(this,Et)))}),this.Component=()=>{const l=O(this,Qs);return R(l,{code:b.REACT_NODE_VIEW,message:`The custom react node view provided for ${O(this,ne).type.name} doesn't have a valid ReactComponent`}),Ne.createElement(l,{updateAttributes:this.updateAttributes,selected:this.selected,view:O(this,yn),getPosition:O(this,qr),node:O(this,ne),forwardRef:O(this,la),decorations:O(this,Wr)})},this.updateAttributes=l=>{if(!O(this,yn).editable)return;const c=O(this,qr).call(this);if(c==null)return;const u=O(this,yn).state.tr.setNodeMarkup(c,void 0,{...O(this,ne).attrs,...l});O(this,yn).dispatch(u)},R(ee(t),{message:"You are attempting to use a node view for a mark type. This is not supported yet. Please check your configuration."}),He(this,ne,e),He(this,yn,r),He(this,Kr,n),He(this,Qs,s),He(this,qr,t),He(this,Jn,i),He(this,_e,this.createDom());const{contentDOM:o,wrapper:a}=this.createContentDom()??{};He(this,ei,o??void 0),He(this,Et,a),O(this,Et)&&O(this,_e).append(O(this,Et)),this.setDomAttributes(O(this,ne),O(this,_e)),this.Component.displayName=Du(`${O(this,ne).type.name}NodeView`),this.renderComponent()}static create(t){const{portalContainer:e,ReactComponent:n,options:r}=t;return(s,i,o)=>new pf({options:r,node:s,view:i,getPosition:o,portalContainer:e,ReactComponent:n})}get selected(){return O(this,Jr)}get contentDOM(){return O(this,ei)}get dom(){return O(this,_e)}renderComponent(){O(this,Kr).render({Component:this.Component,container:O(this,_e)})}createDom(){const{defaultBlockNode:t,defaultInlineNode:e}=O(this,Jn),n=O(this,ne).isInline?document.createElement(e):document.createElement(t);return n.classList.add(`${cl(O(this,ne).type.name)}-node-view-wrapper`),n}createContentDom(){var t,e;if(O(this,ne).isLeaf)return;const n=(e=(t=O(this,ne).type.spec).toDOM)==null?void 0:e.call(t,O(this,ne));if(!n)return;const{contentDOM:r,dom:s}=Dt.renderSpec(document,n);let i;if($e(s))return i=s,s===r&&(i=document.createElement("span"),i.classList.add(`${cl(O(this,ne).type.name)}-node-view-content-wrapper`),i.append(r)),$e(r),{wrapper:i,contentDOM:r}}update(t,e){return Na({types:O(this,ne).type,node:t})?(O(this,ne)===t&&O(this,Wr)===e||(O(this,ne).sameMarkup(t)||this.setDomAttributes(t,O(this,_e)),He(this,ne,t),He(this,Wr,e),this.renderComponent()),!0):!1}setDomAttributes(t,e){const{toDOM:n}=O(this,ne).type.spec;let r=t.attrs;if(n){const s=n(t);if(P(s)||Iw(s))return;Ln(s[1])&&(r=s[1])}for(const[s,i]of fe(r))e.setAttribute(s,i)}selectNode(){He(this,Jr,!0),O(this,_e)&&O(this,_e).classList.add(il),this.renderComponent()}deselectNode(){He(this,Jr,!1),O(this,_e)&&O(this,_e).classList.remove(il),this.renderComponent()}destroy(){O(this,Kr).remove(O(this,_e))}ignoreMutation(t){return t.type==="selection"?!O(this,ne).type.spec.selectable:O(this,Et)?!O(this,Et).contains(t.target):!0}stopEvent(t){var e;if(!O(this,_e))return!1;if(ee(O(this,Jn).stopEvent))return O(this,Jn).stopEvent({event:t});const n=t.target;if(!(O(this,_e).contains(n)&&!((e=this.contentDOM)!=null&&e.contains(n))))return!1;const s=t.type==="drop";if((["INPUT","BUTTON","SELECT","TEXTAREA"].includes(n.tagName)||n.isContentEditable)&&!s)return!0;const o=!!O(this,ne).type.spec.draggable,a=I.isSelectable(O(this,ne)),l=t.type==="copy",c=t.type==="paste",u=t.type==="cut",d=t.type==="mousedown",h=t.type.startsWith("drag");return!o&&a&&h&&t.preventDefault(),!(h||s||l||c||u||d&&a)}},Xc=pf;ne=new WeakMap;Wr=new WeakMap;yn=new WeakMap;Kr=new WeakMap;Qs=new WeakMap;qr=new WeakMap;Jn=new WeakMap;Jr=new WeakMap;ei=new WeakMap;Et=new WeakMap;_e=new WeakMap;la=new WeakMap;function Iw(t){return Wo(t)||Ln(t)&&Wo(t.dom)}var ks=class extends te{constructor(){super(...arguments),this.portalContainer=new Nw}get name(){return"reactComponent"}onCreate(){this.store.setStoreKey("portalContainer",this.portalContainer)}createNodeViews(){const t=M(),e=this.store.managerSettings.nodeViewComponents??{};for(const r of this.store.extensions)!r.ReactComponent||!_s(r)||r.reactComponentEnvironment==="ssr"||(t[r.name]=Xc.create({options:this.options,ReactComponent:r.ReactComponent,portalContainer:this.portalContainer}));const n=fe({...this.options.nodeViewComponents,...e});for(const[r,s]of n)t[r]=Xc.create({options:this.options,ReactComponent:s,portalContainer:this.portalContainer});return t}};ks=_w([G({defaultOptions:{defaultBlockNode:"div",defaultInlineNode:"span",defaultContentNode:"span",defaultEnvironment:"both",nodeViewComponents:{},stopEvent:null},staticKeys:["defaultBlockNode","defaultInlineNode","defaultContentNode","defaultEnvironment"]})],ks);var Dw=Object.defineProperty,Yc=Object.getOwnPropertySymbols,Pw=Object.prototype.hasOwnProperty,Lw=Object.prototype.propertyIsEnumerable,Zc=(t,e,n)=>e in t?Dw(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Qc=(t,e)=>{for(var n in e||(e={}))Pw.call(e,n)&&Zc(t,n,e[n]);if(Yc)for(var n of Yc(e))Lw.call(e,n)&&Zc(t,n,e[n]);return t};function Bw(t){const e=z.createContext(null),n=zw(e);return[s=>{const i=t(s);return Ne.createElement(e.Provider,{value:i},s.children)},n,e]}function zw(t){return(e,n)=>{const r=z.useContext(t),s=$w(r);if(!r)throw new Error("`useContextHook` must be placed inside the `Provider` returned by the `createContextState` method");if(!e)return r;if(typeof e!="function")throw new TypeError("invalid arguments passed to `useContextHook`. This hook must be called with zero arguments, a getter function or a path string.");const i=e(r);if(!s||!n)return i;const o=e(s);return n(o,i)?o:i}}function $w(t){const e=z.useRef();return Fw(()=>{e.current=t}),e.current}var Fw=typeof document<"u"?z.useLayoutEffect:z.useEffect;function Vw(t,e){return Bw(n=>{const r=z.useRef(null),s=z.useRef(),i=void 0,[o,a]=z.useState(()=>t({get:eu(r),set:tu(s),previousContext:void 0,props:n,state:i})),l=[...Object.values(n),i];return z.useEffect(()=>{l.length!==0&&a(c=>t({get:eu(r),set:tu(s),previousContext:c,props:n,state:i}))},l),r.current=o,s.current=a,o})}function eu(t){return e=>{if(!t.current)throw new Error("`get` called outside of function scope. `get` can only be called within a function.");if(!e)return t.current;if(typeof e!="function")throw new TypeError("Invalid arguments passed to `useContextHook`. The hook must be called with zero arguments, a getter function or a path string.");return e(t.current)}}function tu(t){return e=>{if(!t.current)throw new Error("`set` called outside of function scope. `set` can only be called within a function.");t.current(n=>Qc(Qc({},n),typeof e=="function"?e(n):e))}}var mf={},gf={};(function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.errorMessages=t.ErrorType=void 0;var e;(function(n){n.MalformedUnicode="MALFORMED_UNICODE",n.MalformedHexadecimal="MALFORMED_HEXADECIMAL",n.CodePointLimit="CODE_POINT_LIMIT",n.OctalDeprecation="OCTAL_DEPRECATION",n.EndOfString="END_OF_STRING"})(e=t.ErrorType||(t.ErrorType={})),t.errorMessages=new Map([[e.MalformedUnicode,"malformed Unicode character escape sequence"],[e.MalformedHexadecimal,"malformed hexadecimal character escape sequence"],[e.CodePointLimit,"Unicode codepoint must not be greater than 0x10FFFF in escape sequence"],[e.OctalDeprecation,'"0"-prefixed octal literals and octal escape sequences are deprecated; for octal literals use the "0o" prefix instead'],[e.EndOfString,"malformed escape sequence at end of string"]])})(gf);(function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.unraw=t.errorMessages=t.ErrorType=void 0;const e=gf;Object.defineProperty(t,"ErrorType",{enumerable:!0,get:function(){return e.ErrorType}}),Object.defineProperty(t,"errorMessages",{enumerable:!0,get:function(){return e.errorMessages}});function n(f){return!f.match(/[^a-f0-9]/i)?parseInt(f,16):NaN}function r(f,p,m){const g=n(f);if(Number.isNaN(g)||m!==void 0&&m!==f.length)throw new SyntaxError(e.errorMessages.get(p));return g}function s(f){const p=r(f,e.ErrorType.MalformedHexadecimal,2);return String.fromCharCode(p)}function i(f,p){const m=r(f,e.ErrorType.MalformedUnicode,4);if(p!==void 0){const g=r(p,e.ErrorType.MalformedUnicode,4);return String.fromCharCode(m,g)}return String.fromCharCode(m)}function o(f){return f.charAt(0)==="{"&&f.charAt(f.length-1)==="}"}function a(f){if(!o(f))throw new SyntaxError(e.errorMessages.get(e.ErrorType.MalformedUnicode));const p=f.slice(1,-1),m=r(p,e.ErrorType.MalformedUnicode);try{return String.fromCodePoint(m)}catch(g){throw g instanceof RangeError?new SyntaxError(e.errorMessages.get(e.ErrorType.CodePointLimit)):g}}function l(f,p=!1){if(p)throw new SyntaxError(e.errorMessages.get(e.ErrorType.OctalDeprecation));const m=parseInt(f,8);return String.fromCharCode(m)}const c=new Map([["b","\b"],["f","\f"],["n",`
|
|
181
|
+
`],["r","\r"],["t"," "],["v","\v"],["0","\0"]]);function u(f){return c.get(f)||f}const d=/\\(?:(\\)|x([\s\S]{0,2})|u(\{[^}]*\}?)|u([\s\S]{4})\\u([^{][\s\S]{0,3})|u([\s\S]{0,4})|([0-3]?[0-7]{1,2})|([\s\S])|$)/g;function h(f,p=!1){return f.replace(d,function(m,g,y,k,D,q,J,$,oe){if(g!==void 0)return"\\";if(y!==void 0)return s(y);if(k!==void 0)return a(k);if(D!==void 0)return i(D,q);if(J!==void 0)return i(J);if($==="0")return"\0";if($!==void 0)return l($,!p);if(oe!==void 0)return u(oe);throw new SyntaxError(e.errorMessages.get(e.ErrorType.EndOfString))})}t.unraw=h,t.default=h})(mf);const _n=t=>typeof t=="string",Hw=t=>typeof t=="function",nu=new Map,yf="en";function tl(t){return[...Array.isArray(t)?t:[t],yf]}function xf(t,e,n){const r=tl(t);return _i(()=>Ni("date",r,n),()=>new Intl.DateTimeFormat(r,n)).format(_n(e)?new Date(e):e)}function ca(t,e,n){const r=tl(t);return _i(()=>Ni("number",r,n),()=>new Intl.NumberFormat(r,n)).format(e)}function ru(t,e,n,{offset:r=0,...s}){const i=tl(t),o=e?_i(()=>Ni("plural-ordinal",i),()=>new Intl.PluralRules(i,{type:"ordinal"})):_i(()=>Ni("plural-cardinal",i),()=>new Intl.PluralRules(i,{type:"cardinal"}));return s[n]??s[o.select(n-r)]??s.other}function _i(t,e){const n=t();let r=nu.get(n);return r||(r=e(),nu.set(n,r)),r}function Ni(t,e,n){const r=e.join("-");return`${t}-${r}-${JSON.stringify(n)}`}const bf=/\\u[a-fA-F0-9]{4}|\\x[a-fA-F0-9]{2}/g,kf="%__lingui_octothorpe__%",Uw=(t,e,n={})=>{const r=e||t,s=o=>typeof o=="object"?o:n[o]||{style:o},i=(o,a)=>{const l=Object.keys(n).length?s("number"):void 0,c=ca(r,o,l);return a.replace(new RegExp(kf,"g"),c)};return{plural:(o,a)=>{const{offset:l=0}=a,c=ru(r,!1,o,a);return i(o-l,c)},selectordinal:(o,a)=>{const{offset:l=0}=a,c=ru(r,!0,o,a);return i(o-l,c)},select:jw,number:(o,a)=>ca(r,o,s(a)),date:(o,a)=>xf(r,o,s(a))}},jw=(t,e)=>e[t]??e.other;function Ww(t,e,n){return(r={},s)=>{const i=Uw(e,n,s),o=(l,c=!1)=>Array.isArray(l)?l.reduce((u,d)=>{if(d==="#"&&c)return u+kf;if(_n(d))return u+d;const[h,f,p]=d;let m={};f==="plural"||f==="selectordinal"||f==="select"?Object.entries(p).forEach(([y,k])=>{m[y]=o(k,f==="plural"||f==="selectordinal")}):m=p;let g;if(f){const y=i[f];g=y(r[h],m)}else g=r[h];return g==null?u:u+g},""):l,a=o(t);return _n(a)&&bf.test(a)?mf.unraw(a.trim()):_n(a)?a.trim():a?String(a):""}}var Kw=Object.defineProperty,qw=(t,e,n)=>e in t?Kw(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Jw=(t,e,n)=>(qw(t,e+"",n),n);class Gw{constructor(){Jw(this,"_events",{})}on(e,n){var r;return(r=this._events)[e]??(r[e]=[]),this._events[e].push(n),()=>this.removeListener(e,n)}removeListener(e,n){const r=this._getListeners(e);if(!r)return;const s=r.indexOf(n);~s&&r.splice(s,1)}emit(e,...n){const r=this._getListeners(e);r&&r.map(s=>s.apply(this,n))}_getListeners(e){const n=this._events[e];return Array.isArray(n)?n:!1}}var Xw=Object.defineProperty,Yw=(t,e,n)=>e in t?Xw(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Un=(t,e,n)=>(Yw(t,typeof e!="symbol"?e+"":e,n),n);class Zw extends Gw{constructor(e){super(),Un(this,"_locale",""),Un(this,"_locales"),Un(this,"_localeData",{}),Un(this,"_messages",{}),Un(this,"_missing"),Un(this,"t",this._.bind(this)),e.missing!=null&&(this._missing=e.missing),e.messages!=null&&this.load(e.messages),e.localeData!=null&&this.loadLocaleData(e.localeData),(typeof e.locale=="string"||e.locales)&&this.activate(e.locale??yf,e.locales)}get locale(){return this._locale}get locales(){return this._locales}get messages(){return this._messages[this._locale]??{}}get localeData(){return this._localeData[this._locale]??{}}_loadLocaleData(e,n){const r=this._localeData[e];r?Object.assign(r,n):this._localeData[e]=n}loadLocaleData(e,n){n!=null?this._loadLocaleData(e,n):Object.keys(e).forEach(r=>this._loadLocaleData(r,e[r])),this.emit("change")}_load(e,n){const r=this._messages[e];r?Object.assign(r,n):this._messages[e]=n}load(e,n){typeof e=="string"&&typeof n=="object"?this._load(e,n):Object.entries(e).forEach(([r,s])=>this._load(r,s)),this.emit("change")}loadAndActivate({locale:e,locales:n,messages:r}){this._locale=e,this._locales=n||void 0,this._messages[this._locale]=r,this.emit("change")}activate(e,n){this._locale=e,this._locales=n,this.emit("change")}_(e,n,r){let s=r==null?void 0:r.message;e||(e=""),_n(e)||(n=e.values||n,s=e.message,e=e.id);const i=this.messages[e],o=i===void 0,a=this._missing;if(a&&o)return Hw(a)?a(this._locale,e):a;o&&this.emit("missing",{id:e,locale:this._locale});let l=i||s||e;return _n(l)&&bf.test(l)?JSON.parse(`"${l}"`):_n(l)?l:Ww(l,this._locale,this._locales)(n,r==null?void 0:r.formats)}date(e,n){return xf(this._locales||this._locale,e,n)}number(e,n){return ca(this._locales||this._locale,e,n)}}function Qw(t={}){return new Zw(t)}const Yi=Qw();function S(t,e){return e?"other":t==1?"one":"other"}function Lt(t,e){return e?"other":t==0||t==1?"one":"other"}function Fe(t,e){var n=String(t).split("."),r=!n[1];return e?"other":t==1&&r?"one":"other"}function K(t,e){return"other"}function fn(t,e){return e?"other":t==1?"one":t==2?"two":"other"}const ev=K,tv=S,nv=Lt;function rv(t,e){return e?"other":t>=0&&t<=1?"one":"other"}const sv=S;function iv(t,e){var n=String(t).split("."),r=Number(n[0])==t,s=r&&n[0].slice(-2);return e?"other":t==0?"zero":t==1?"one":t==2?"two":s>=3&&s<=10?"few":s>=11&&s<=99?"many":"other"}function ov(t,e){var n=String(t).split("."),r=Number(n[0])==t,s=r&&n[0].slice(-2);return e?"other":t==0?"zero":t==1?"one":t==2?"two":s>=3&&s<=10?"few":s>=11&&s<=99?"many":"other"}function av(t,e){return e?t==1||t==5||t==7||t==8||t==9||t==10?"one":t==2||t==3?"two":t==4?"few":t==6?"many":"other":t>=0&&t<=1?"one":"other"}const lv=S,cv=Fe;function uv(t,e){var n=String(t).split("."),r=n[0],s=r.slice(-1),i=r.slice(-2),o=r.slice(-3);return e?s==1||s==2||s==5||s==7||s==8||i==20||i==50||i==70||i==80?"one":s==3||s==4||o==100||o==200||o==300||o==400||o==500||o==600||o==700||o==800||o==900?"few":r==0||s==6||i==40||i==60||i==90?"many":"other":t==1?"one":"other"}function dv(t,e){var n=String(t).split("."),r=Number(n[0])==t,s=r&&n[0].slice(-1),i=r&&n[0].slice(-2);return e?(s==2||s==3)&&i!=12&&i!=13?"few":"other":s==1&&i!=11?"one":s>=2&&s<=4&&(i<12||i>14)?"few":r&&s==0||s>=5&&s<=9||i>=11&&i<=14?"many":"other"}const hv=S,fv=S,pv=S,mv=Lt,gv=K;function yv(t,e){return e?t==1||t==5||t==7||t==8||t==9||t==10?"one":t==2||t==3?"two":t==4?"few":t==6?"many":"other":t>=0&&t<=1?"one":"other"}const xv=K;function bv(t,e){var n=String(t).split("."),r=Number(n[0])==t,s=r&&n[0].slice(-1),i=r&&n[0].slice(-2),o=r&&n[0].slice(-6);return e?"other":s==1&&i!=11&&i!=71&&i!=91?"one":s==2&&i!=12&&i!=72&&i!=92?"two":(s==3||s==4||s==9)&&(i<10||i>19)&&(i<70||i>79)&&(i<90||i>99)?"few":t!=0&&r&&o==0?"many":"other"}const kv=S;function Sv(t,e){var n=String(t).split("."),r=n[0],s=n[1]||"",i=!n[1],o=r.slice(-1),a=r.slice(-2),l=s.slice(-1),c=s.slice(-2);return e?"other":i&&o==1&&a!=11||l==1&&c!=11?"one":i&&o>=2&&o<=4&&(a<12||a>14)||l>=2&&l<=4&&(c<12||c>14)?"few":"other"}function wv(t,e){var n=String(t).split("."),r=!n[1];return e?t==1||t==3?"one":t==2?"two":t==4?"few":"other":t==1&&r?"one":"other"}const vv=S;function Ev(t,e){var n=String(t).split("."),r=n[0],s=n[1]||"",i=!n[1],o=r.slice(-1),a=s.slice(-1);return e?"other":i&&(r==1||r==2||r==3)||i&&o!=4&&o!=6&&o!=9||!i&&a!=4&&a!=6&&a!=9?"one":"other"}const Cv=S,Tv=S,Ov=S;function Mv(t,e){var n=String(t).split("."),r=n[0],s=!n[1];return e?"other":t==1&&s?"one":r>=2&&r<=4&&s?"few":s?"other":"many"}function _v(t,e){return e?t==0||t==7||t==8||t==9?"zero":t==1?"one":t==2?"two":t==3||t==4?"few":t==5||t==6?"many":"other":t==0?"zero":t==1?"one":t==2?"two":t==3?"few":t==6?"many":"other"}function Nv(t,e){var n=String(t).split("."),r=n[0],s=Number(n[0])==t;return e?"other":t==1||!s&&(r==0||r==1)?"one":"other"}const Av=Fe;function Rv(t,e){var n=String(t).split("."),r=n[0],s=n[1]||"",i=!n[1],o=r.slice(-2),a=s.slice(-2);return e?"other":i&&o==1||a==1?"one":i&&o==2||a==2?"two":i&&(o==3||o==4)||a==3||a==4?"few":"other"}const Iv=S,Dv=K,Pv=S,Lv=S;function Bv(t,e){var n=String(t).split("."),r=!n[1],s=Number(n[0])==t,i=s&&n[0].slice(-1),o=s&&n[0].slice(-2);return e?i==1&&o!=11?"one":i==2&&o!=12?"two":i==3&&o!=13?"few":"other":t==1&&r?"one":"other"}const zv=S,$v=S,Fv=Fe,Vv=S;function Hv(t,e){return e?"other":t>=0&&t<=1?"one":"other"}function Uv(t,e){return e?"other":t>=0&&t<2?"one":"other"}const jv=Fe;function Wv(t,e){var n=String(t).split("."),r=n[0],s=n[1]||"",i=!n[1],o=r.slice(-1),a=s.slice(-1);return e?t==1?"one":"other":i&&(r==1||r==2||r==3)||i&&o!=4&&o!=6&&o!=9||!i&&a!=4&&a!=6&&a!=9?"one":"other"}const Kv=S;function qv(t,e){return e?t==1?"one":"other":t>=0&&t<2?"one":"other"}const Jv=S,Gv=Fe;function Xv(t,e){var n=String(t).split("."),r=Number(n[0])==t;return e?t==1?"one":"other":t==1?"one":t==2?"two":r&&t>=3&&t<=6?"few":r&&t>=7&&t<=10?"many":"other"}function Yv(t,e){var n=String(t).split("."),r=Number(n[0])==t;return e?t==1||t==11?"one":t==2||t==12?"two":t==3||t==13?"few":"other":t==1||t==11?"one":t==2||t==12?"two":r&&t>=3&&t<=10||r&&t>=13&&t<=19?"few":"other"}const Zv=Fe,Qv=S;function eE(t,e){return e?t==1?"one":t==2||t==3?"two":t==4?"few":t==6?"many":"other":t>=0&&t<=1?"one":"other"}const tE=Lt;function nE(t,e){var n=String(t).split("."),r=n[0],s=!n[1],i=r.slice(-1),o=r.slice(-2);return e?"other":s&&i==1?"one":s&&i==2?"two":s&&(o==0||o==20||o==40||o==60||o==80)?"few":s?"other":"many"}const rE=S,sE=S;function iE(t,e){var n=String(t).split("."),r=n[0],s=!n[1],i=Number(n[0])==t,o=i&&n[0].slice(-1);return e?"other":t==1&&s?"one":r==2&&s?"two":s&&(t<0||t>10)&&i&&o==0?"many":"other"}function oE(t,e){return e?t==1?"one":t==2||t==3?"two":t==4?"few":t==6?"many":"other":t>=0&&t<=1?"one":"other"}function aE(t,e){var n=String(t).split("."),r=n[0],s=n[1]||"",i=!n[1],o=r.slice(-1),a=r.slice(-2),l=s.slice(-1),c=s.slice(-2);return e?"other":i&&o==1&&a!=11||l==1&&c!=11?"one":i&&o>=2&&o<=4&&(a<12||a>14)||l>=2&&l<=4&&(c<12||c>14)?"few":"other"}function lE(t,e){var n=String(t).split("."),r=n[0],s=n[1]||"",i=!n[1],o=r.slice(-2),a=s.slice(-2);return e?"other":i&&o==1||a==1?"one":i&&o==2||a==2?"two":i&&(o==3||o==4)||a==3||a==4?"few":"other"}function cE(t,e){return e?t==1||t==5?"one":"other":t==1?"one":"other"}function uE(t,e){return e?t==1?"one":"other":t>=0&&t<2?"one":"other"}const dE=Fe,hE=K,fE=K,pE=K,mE=Fe;function gE(t,e){var n=String(t).split("."),r=n[0],s=Number(n[0])==t,i=r.slice(-1),o=r.slice(-2);return e?"other":s&&i==1&&o!=11||!s?"one":"other"}function yE(t,e){var n=String(t).split("."),r=!n[1];return e?t==11||t==8||t==80||t==800?"many":"other":t==1&&r?"one":"other"}const xE=fn;function bE(t,e){var n=String(t).split("."),r=n[0],s=!n[1],i=Number(n[0])==t,o=i&&n[0].slice(-1);return e?"other":t==1&&s?"one":r==2&&s?"two":s&&(t<0||t>10)&&i&&o==0?"many":"other"}const kE=K,SE=K,wE=S,vE=Fe,EE=S,CE=K,TE=K;function OE(t,e){var n=String(t).split("."),r=n[0],s=r.slice(-2);return e?r==1?"one":r==0||s>=2&&s<=20||s==40||s==60||s==80?"many":"other":t==1?"one":"other"}function ME(t,e){return e?"other":t>=0&&t<2?"one":"other"}const _E=S,NE=S,AE=K,RE=K;function IE(t,e){var n=String(t).split("."),r=Number(n[0])==t,s=r&&n[0].slice(-1);return e?s==6||s==9||r&&s==0&&t!=0?"many":"other":t==1?"one":"other"}const DE=S,PE=S,LE=K;function BE(t,e){return e?"other":t>=0&&t<=1?"one":"other"}const zE=K,$E=S,FE=S;function VE(t,e){return e?"other":t==0?"zero":t==1?"one":"other"}const HE=S;function UE(t,e){var n=String(t).split("."),r=Number(n[0])==t,s=r&&n[0].slice(-2),i=r&&n[0].slice(-3),o=r&&n[0].slice(-5),a=r&&n[0].slice(-6);return e?r&&t>=1&&t<=4||s>=1&&s<=4||s>=21&&s<=24||s>=41&&s<=44||s>=61&&s<=64||s>=81&&s<=84?"one":t==5||s==5?"many":"other":t==0?"zero":t==1?"one":s==2||s==22||s==42||s==62||s==82||r&&i==0&&(o>=1e3&&o<=2e4||o==4e4||o==6e4||o==8e4)||t!=0&&a==1e5?"two":s==3||s==23||s==43||s==63||s==83?"few":t!=1&&(s==1||s==21||s==41||s==61||s==81)?"many":"other"}const jE=S;function WE(t,e){var n=String(t).split("."),r=n[0];return e?"other":t==0?"zero":(r==0||r==1)&&t!=0?"one":"other"}const KE=S,qE=S,JE=K,GE=Lt;function XE(t,e){return e&&t==1?"one":"other"}function YE(t,e){var n=String(t).split("."),r=n[1]||"",s=Number(n[0])==t,i=s&&n[0].slice(-1),o=s&&n[0].slice(-2);return e?"other":i==1&&(o<11||o>19)?"one":i>=2&&i<=9&&(o<11||o>19)?"few":r!=0?"many":"other"}function ZE(t,e){var n=String(t).split("."),r=n[1]||"",s=r.length,i=Number(n[0])==t,o=i&&n[0].slice(-1),a=i&&n[0].slice(-2),l=r.slice(-2),c=r.slice(-1);return e?"other":i&&o==0||a>=11&&a<=19||s==2&&l>=11&&l<=19?"zero":o==1&&a!=11||s==2&&c==1&&l!=11||s!=2&&c==1?"one":"other"}const QE=S,eC=Lt,tC=S;function nC(t,e){var n=String(t).split("."),r=n[0],s=n[1]||"",i=!n[1],o=r.slice(-1),a=r.slice(-2),l=s.slice(-1),c=s.slice(-2);return e?o==1&&a!=11?"one":o==2&&a!=12?"two":(o==7||o==8)&&a!=17&&a!=18?"many":"other":i&&o==1&&a!=11||l==1&&c!=11?"one":"other"}const rC=S,sC=S;function iC(t,e){var n=String(t).split("."),r=!n[1],s=Number(n[0])==t,i=s&&n[0].slice(-2);return e?t==1?"one":"other":t==1&&r?"one":!r||t==0||i>=2&&i<=19?"few":"other"}function oC(t,e){return e?t==1?"one":t==2||t==3?"two":t==4?"few":"other":t==1?"one":"other"}function aC(t,e){return e&&t==1?"one":"other"}function lC(t,e){var n=String(t).split("."),r=Number(n[0])==t,s=r&&n[0].slice(-2);return e?"other":t==1?"one":t==0||s>=2&&s<=10?"few":s>=11&&s<=19?"many":"other"}const cC=K,uC=S,dC=fn,hC=S,fC=S;function pC(t,e){var n=String(t).split("."),r=Number(n[0])==t;return e?r&&t>=1&&t<=4?"one":"other":t==1?"one":"other"}const mC=Fe,gC=S,yC=S,xC=S,bC=K,kC=S,SC=Lt,wC=S,vC=S,EC=S;function CC(t,e){var n=String(t).split("."),r=Number(n[0])==t;return e?t==1||t==5||r&&t>=7&&t<=9?"one":t==2||t==3?"two":t==4?"few":t==6?"many":"other":t==1?"one":"other"}const TC=S,OC=K,MC=Lt,_C=S;function NC(t,e){var n=String(t).split("."),r=n[0],s=!n[1],i=r.slice(-1),o=r.slice(-2);return e?"other":t==1&&s?"one":s&&i>=2&&i<=4&&(o<12||o>14)?"few":s&&r!=1&&(i==0||i==1)||s&&i>=5&&i<=9||s&&o>=12&&o<=14?"many":"other"}function AC(t,e){var n=String(t).split("."),r=n[1]||"",s=r.length,i=Number(n[0])==t,o=i&&n[0].slice(-1),a=i&&n[0].slice(-2),l=r.slice(-2),c=r.slice(-1);return e?"other":i&&o==0||a>=11&&a<=19||s==2&&l>=11&&l<=19?"zero":o==1&&a!=11||s==2&&c==1&&l!=11||s!=2&&c==1?"one":"other"}const RC=S;function IC(t,e){var n=String(t).split("."),r=n[0];return e?"other":r==0||r==1?"one":"other"}const DC=Fe,PC=S;function LC(t,e){var n=String(t).split("."),r=!n[1],s=Number(n[0])==t,i=s&&n[0].slice(-2);return e?t==1?"one":"other":t==1&&r?"one":!r||t==0||i>=2&&i<=19?"few":"other"}const BC=S,zC=K;function $C(t,e){var n=String(t).split("."),r=n[0],s=!n[1],i=r.slice(-1),o=r.slice(-2);return e?"other":s&&i==1&&o!=11?"one":s&&i>=2&&i<=4&&(o<12||o>14)?"few":s&&i==0||s&&i>=5&&i<=9||s&&o>=11&&o<=14?"many":"other"}const FC=S,VC=K,HC=S;function UC(t,e){var n=String(t).split("."),r=!n[1];return e?t==11||t==8||t==80||t==800?"many":"other":t==1&&r?"one":"other"}function jC(t,e){var n=String(t).split("."),r=!n[1];return e?t==11||t==8||t==80||t==800?"many":"other":t==1&&r?"one":"other"}const WC=S,KC=S,qC=fn,JC=S,GC=K,XC=K;function YC(t,e){var n=String(t).split("."),r=n[0],s=n[1]||"",i=!n[1],o=r.slice(-1),a=r.slice(-2),l=s.slice(-1),c=s.slice(-2);return e?"other":i&&o==1&&a!=11||l==1&&c!=11?"one":i&&o>=2&&o<=4&&(a<12||a>14)||l>=2&&l<=4&&(c<12||c>14)?"few":"other"}function ZC(t,e){var n=String(t).split("."),r=Number(n[0])==t;return e?"other":t>=0&&t<=1?"one":r&&t>=2&&t<=10?"few":"other"}function QC(t,e){var n=String(t).split("."),r=n[0],s=n[1]||"";return e?"other":t==0||t==1||r==0&&s==1?"one":"other"}function eT(t,e){var n=String(t).split("."),r=n[0],s=!n[1];return e?"other":t==1&&s?"one":r>=2&&r<=4&&s?"few":s?"other":"many"}function tT(t,e){var n=String(t).split("."),r=n[0],s=!n[1],i=r.slice(-2);return e?"other":s&&i==1?"one":s&&i==2?"two":s&&(i==3||i==4)||!s?"few":"other"}const nT=fn,rT=fn,sT=fn,iT=fn,oT=fn,aT=S,lT=S;function cT(t,e){var n=String(t).split("."),r=Number(n[0])==t,s=r&&n[0].slice(-1),i=r&&n[0].slice(-2);return e?t==1?"one":s==4&&i!=14?"many":"other":t==1?"one":"other"}function uT(t,e){var n=String(t).split("."),r=n[0],s=n[1]||"",i=!n[1],o=r.slice(-1),a=r.slice(-2),l=s.slice(-1),c=s.slice(-2);return e?"other":i&&o==1&&a!=11||l==1&&c!=11?"one":i&&o>=2&&o<=4&&(a<12||a>14)||l>=2&&l<=4&&(c<12||c>14)?"few":"other"}const dT=S,hT=S,fT=S,pT=K;function mT(t,e){var n=String(t).split("."),r=!n[1],s=Number(n[0])==t,i=s&&n[0].slice(-1),o=s&&n[0].slice(-2);return e?(i==1||i==2)&&o!=11&&o!=12?"one":"other":t==1&&r?"one":"other"}const gT=Fe,yT=S,xT=S,bT=S,kT=S,ST=K,wT=Lt,vT=S;function ET(t,e){var n=String(t).split("."),r=Number(n[0])==t,s=r&&n[0].slice(-1);return e?s==6||s==9||t==10?"few":"other":t==1?"one":"other"}function CT(t,e){var n=String(t).split("."),r=n[0],s=n[1]||"",i=!n[1],o=r.slice(-1),a=s.slice(-1);return e?t==1?"one":"other":i&&(r==1||r==2||r==3)||i&&o!=4&&o!=6&&o!=9||!i&&a!=4&&a!=6&&a!=9?"one":"other"}const TT=S,OT=K,MT=S,_T=S;function NT(t,e){var n=String(t).split("."),r=Number(n[0])==t;return e?"other":t==0||t==1||r&&t>=11&&t<=99?"one":"other"}const AT=S;function RT(t,e){var n=String(t).split("."),r=n[0],s=!n[1],i=Number(n[0])==t,o=i&&n[0].slice(-1),a=i&&n[0].slice(-2),l=r.slice(-1),c=r.slice(-2);return e?o==3&&a!=13?"few":"other":s&&l==1&&c!=11?"one":s&&l>=2&&l<=4&&(c<12||c>14)?"few":s&&l==0||s&&l>=5&&l<=9||s&&c>=11&&c<=14?"many":"other"}const IT=Fe,DT=S,PT=S;function LT(t,e){return e&&t==1?"one":"other"}const BT=S,zT=S,$T=Lt,FT=S,VT=K,HT=S,UT=S,jT=Fe,WT=K,KT=K,qT=K;function JT(t,e){return e?"other":t>=0&&t<=1?"one":"other"}const GT=Object.freeze(Object.defineProperty({__proto__:null,_in:ev,af:tv,ak:nv,am:rv,an:sv,ar:iv,ars:ov,as:av,asa:lv,ast:cv,az:uv,be:dv,bem:hv,bez:fv,bg:pv,bho:mv,bm:gv,bn:yv,bo:xv,br:bv,brx:kv,bs:Sv,ca:wv,ce:vv,ceb:Ev,cgg:Cv,chr:Tv,ckb:Ov,cs:Mv,cy:_v,da:Nv,de:Av,dsb:Rv,dv:Iv,dz:Dv,ee:Pv,el:Lv,en:Bv,eo:zv,es:$v,et:Fv,eu:Vv,fa:Hv,ff:Uv,fi:jv,fil:Wv,fo:Kv,fr:qv,fur:Jv,fy:Gv,ga:Xv,gd:Yv,gl:Zv,gsw:Qv,gu:eE,guw:tE,gv:nE,ha:rE,haw:sE,he:iE,hi:oE,hr:aE,hsb:lE,hu:cE,hy:uE,ia:dE,id:hE,ig:fE,ii:pE,io:mE,is:gE,it:yE,iu:xE,iw:bE,ja:kE,jbo:SE,jgo:wE,ji:vE,jmc:EE,jv:CE,jw:TE,ka:OE,kab:ME,kaj:_E,kcg:NE,kde:AE,kea:RE,kk:IE,kkj:DE,kl:PE,km:LE,kn:BE,ko:zE,ks:$E,ksb:FE,ksh:VE,ku:HE,kw:UE,ky:jE,lag:WE,lb:KE,lg:qE,lkt:JE,ln:GE,lo:XE,lt:YE,lv:ZE,mas:QE,mg:eC,mgo:tC,mk:nC,ml:rC,mn:sC,mo:iC,mr:oC,ms:aC,mt:lC,my:cC,nah:uC,naq:dC,nb:hC,nd:fC,ne:pC,nl:mC,nn:gC,nnh:yC,no:xC,nqo:bC,nr:kC,nso:SC,ny:wC,nyn:vC,om:EC,or:CC,os:TC,osa:OC,pa:MC,pap:_C,pl:NC,prg:AC,ps:RC,pt:IC,pt_PT:DC,rm:PC,ro:LC,rof:BC,root:zC,ru:$C,rwk:FC,sah:VC,saq:HC,sc:UC,scn:jC,sd:WC,sdh:KC,se:qC,seh:JC,ses:GC,sg:XC,sh:YC,shi:ZC,si:QC,sk:eT,sl:tT,sma:nT,smi:rT,smj:sT,smn:iT,sms:oT,sn:aT,so:lT,sq:cT,sr:uT,ss:dT,ssy:hT,st:fT,su:pT,sv:mT,sw:gT,syr:yT,ta:xT,te:bT,teo:kT,th:ST,ti:wT,tig:vT,tk:ET,tl:CT,tn:TT,to:OT,tr:MT,ts:_T,tzm:NT,ug:AT,uk:RT,ur:IT,uz:DT,ve:PT,vi:LT,vo:BT,vun:zT,wa:$T,wae:FT,wo:VT,xh:HT,xog:UT,yi:jT,yo:WT,yue:KT,zh:qT,zu:JT},Symbol.toStringTag,{value:"Module"}));var XT=Object.defineProperty,YT=Object.getOwnPropertyDescriptor,ZT=Object.getOwnPropertyNames,QT=Object.prototype.hasOwnProperty,eO=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of ZT(e))!QT.call(t,s)&&s!==n&&XT(t,s,{get:()=>e[s],enumerable:!(r=YT(e,s))||r.enumerable});return t},tO=(t,e,n)=>(eO(t,e,"default"),n),nO=JSON.parse('{"extension.command.toggle-upper-case.label":[["case","select",{"upper":"Uppercase","lower":"Lowercase","capitalize":"Sentence case","smallCaps":"Small caps","other":"Text case"}]],"extension.table.column_count":[["count","plural",{"one":["#"," column"],"other":["#"," columns"]}]],"extension.table.row_count":[["count","plural",{"one":["#"," row"],"other":["#"," rows"]}]],"extension.command.toggle-columns.description":[["count","select",{"2":"Split the block into two columns","3":"Split the current block into three columns","4":"Split the current block into four columns","other":"Split the current block into multiple columns"}]],"extension.command.toggle-columns.label":[["count","select",{"2":"Two Column Block","3":"Three Column Block","4":"Four Column Block","other":"Multi Column Block"}]],"extension.command.set-text-direction.label":[["dir","select",{"ltr":"Left-To-Right","rtl":"Right-To-Left","other":"Reset Direction"}]],"extension.command.set-text-direction.description":[["dir","select",{"ltr":"Set the text direction from left to right","rtl":"Set the text direction from right to left","other":"Reset text direction"}]],"extension.command.toggle-heading.label":[["level","select",{"1":"Heading 1","2":"Heading 2","3":"Heading 3","4":"Heading 4","5":"Heading 5","6":"Heading 6","other":"Heading"}]],"extension.command.toggle-callout.description":[["type","select",{"info":"Create an information callout block","warning":"Create a warning callout block","error":"Create an error callout block","success":"Create a success callout block","other":"Create a callout block"}]],"extension.command.toggle-callout.label":[["type","select",{"info":"Information Callout","warning":"Warning Callout","error":"Error Callout","success":"Success Callout","other":"Callout"}]],"extension.command.toggle-code-block.description":"Add a code block","extension.command.add-annotation.label":"Add annotation","extension.command.toggle-blockquote.description":"Add blockquote formatting to the selected text","extension.command.toggle-bold.description":"Add bold formatting to the selected text","extension.command.toggle-code.description":"Add inline code formatting to the selected text","keyboard.shortcut.alt":"Alt","keyboard.shortcut.arrowDown":"Arrow Down","keyboard.shortcut.arrowLeft":"Arrow Left","keyboard.shortcut.arrowRight":"Arrow Right","keyboard.shortcut.arrowUp":"Arrow Up","keyboard.shortcut.backspace":"Backspace","ui.text-color.black":"Black","extension.command.toggle-blockquote.label":"Blockquote","ui.text-color.blue":"Blue","ui.text-color.blue.hue":["Blue ",["hue"]],"extension.command.toggle-bold.label":"Bold","extension.command.toggle-bullet-list.description":"Bulleted list","keyboard.shortcut.capsLock":"Caps Lock","extension.command.center-align.label":"Center align","extension.command.toggle-code.label":"Code","extension.command.toggle-code-block.label":"Codeblock","keyboard.shortcut.command":"Command","QcPNd6":"Image description","ogrUzJ":"Add a short description here.","yqdyzr":"Image","6/02F4":"Image source","X8H91v":"Image","zhQ7Zt":"Italic","ZL7E7l":"Underline","keyboard.shortcut.control":"Control","extension.command.convert-paragraph.description":"Convert current block into a paragraph block.","extension.command.convert-paragraph.label":"Convert Paragraph","extension.command.copy.label":"Copy","extension.command.copy.description":"Copy the selected text","extension.command.create-table.description":"Create a table with set number of rows and columns.","extension.command.create-table.label":"Create table","extension.command.cut.label":"Cut","extension.command.cut.description":"Cut the selected text","ui.text-color.cyan":"Cyan","ui.text-color.cyan.hue":["Cyan ",["hue"]],"extension.command.decrease-font-size.label":"Decrease","extension.command.decrease-indent.label":"Decrease indentation","extension.command.decrease-font-size.description":"Decrease the font size.","keyboard.shortcut.delete":"Delete","extension.command.insert-horizontal-rule.label":"Divider","keyboard.shortcut.end":"End","keyboard.shortcut.escape":"Enter","keyboard.shortcut.enter":"Enter","6PjrOF":"Add annotation","OTq5WC":"Center align","oeZ3ox":"Convert current block into a paragraph block.","m1khs+":"Convert Paragraph","w/1U+3":"Copy the selected text","kdodi0":"Copy","k0KR/u":"Create a table with set number of rows and columns.","zrwMyD":"Create table","D/nWxh":"Cut the selected text","jHPv5m":"Cut","5cNgRx":"Decrease the font size.","vyRNWx":"Decrease","Jgiol4":"Decrease indentation","1gJSHH":"Increase the font size","OQXJXz":"Increase","72TLhr":"Increase indentation","HFlfzJ":"Insert Emoji","RPq9fY":"Separate content with a diving horizontal line","OKQF+e":"Divider","zjYb9C":"Insert a new paragraph","4M4sXC":"Insert Paragraph","1Q+eVc":"Justify","ejWWtP":"Left align","wVqrpS":"Paste content into the editor","07v9aw":"Paste","zUYfou":"Redo the most recent action","9Nq9zr":"Redo","0uxaZe":"Remove annotation","iJWZAz":"Right align","g5WpPn":"Select all content within the editor","2+pZDT":"Select all","yChCR1":"Set text case","GMzAC/":"Set the font size for the selected text.","vzEyrv":"Font size","7VCkJ8":"Set the text color for the selected text.","qjWFaR":"Text color","LVWgFu":[["dir","select",{"ltr":"Set the text direction from left to right","rtl":"Set the text direction from right to left","other":"Reset text direction"}]],"WXwRy1":[["dir","select",{"ltr":"Left-To-Right","rtl":"Right-To-Left","other":"Reset Direction"}]],"G/o315":"Set the text highlight color for the selected text.","xtHg6d":"Text highlight","1p1W/p":"Add blockquote formatting to the selected text","6+rh6I":"Blockquote","0yB3LV":"Add bold formatting to the selected text","sFMo4Z":"Bold","SMKG/s":"Bulleted list","/BYCMi":[["type","select",{"info":"Create an information callout block","warning":"Create a warning callout block","error":"Create an error callout block","success":"Create a success callout block","other":"Create a callout block"}]],"V+3IBe":[["type","select",{"info":"Information Callout","warning":"Warning Callout","error":"Error Callout","success":"Success Callout","other":"Callout"}]],"hbIo4L":"Add a code block","7GkMcx":"Codeblock","2r4JYl":"Add inline code formatting to the selected text","Up8Tpe":"Code","ATHSPS":[["count","select",{"2":"Split the block into two columns","3":"Split the current block into three columns","4":"Split the current block into four columns","other":"Split the current block into multiple columns"}]],"7DC1VE":[["count","select",{"2":"Two Column Block","3":"Three Column Block","4":"Four Column Block","other":"Multi Column Block"}]],"hnrBeo":[["level","select",{"1":"Heading 1","2":"Heading 2","3":"Heading 3","4":"Heading 4","5":"Heading 5","6":"Heading 6","other":"Heading"}]],"NkZAcw":"Italicize the selected text","2fTW9e":"Italic","c759Ra":"Ordered list","uQwrZu":"Strikethrough the selected text","pT3qly":"Strikethrough","BHk+zu":"Subscript","18BVwM":"Superscript","tOIVCV":"Tasked list","4Janx3":"Underline the selected text","dCHt+D":"Underline","YYAprs":[["case","select",{"upper":"Uppercase","lower":"Lowercase","capitalize":"Sentence case","smallCaps":"Small caps","other":"Text case"}]],"tczyZL":"Show hidden whitespace characters in your editor.","0qAX23":"Toggle Whitespace","ezMADU":"Undo the most recent action","N3P7EC":"Undo","2nj/+s":"Update annotation","dWD7u4":[["count","plural",{"one":["#"," column"],"other":["#"," columns"]}]],"qXqgVT":[["count","plural",{"one":["#"," row"],"other":["#"," rows"]}]],"extension.command.set-font-size.label":"Font size","ui.text-color.grape":"Grape","ui.text-color.grape.hue":["Grape ",["hue"]],"ui.text-color.gray":"Gray","ui.text-color.gray.hue":["Gray ",["hue"]],"ui.text-color.green":"Green","ui.text-color.green.hue":["Green ",["hue"]],"keyboard.shortcut.home":"Home","extension.command.increase-font-size.label":"Increase","extension.command.increase-indent.label":"Increase indentation","extension.command.increase-font-size.description":"Increase the font size","ui.text-color.indigo":"Indigo","ui.text-color.indigo.hue":["Indigo ",["hue"]],"extension.command.insert-paragraph.description":"Insert a new paragraph","extension.command.insert-emoji.label":"Insert Emoji","extension.command.insert-paragraph.label":"Insert Paragraph","extension.command.toggle-italic.label":"Italic","extension.command.toggle-italic.description":"Italicize the selected text","extension.command.justify-align.label":"Justify","R7NlCw":"Alt","RbDiK5":"Arrow Down","Dgyd+E":"Arrow Left","8pdCk4":"Arrow Right","Gp/343":"Arrow Up","PFPV0A":"Backspace","0IRYvp":"Caps Lock","X7HX0D":"Command","zq0AdD":"Control","8SfToN":"Delete","Ys/uah":"End","3K5hww":"Enter","veQt1j":"Enter","ySv7i+":"Home","e6RUI1":"Page Down","EEJk31":"Page Up","7sbhAU":"Shift","Q4eplT":"Space","SUhVVC":"Tab","extension.command.left-align.label":"Left align","ui.text-color.lime":"Lime","ui.text-color.lime.hue":["Lime ",["hue"]],"react-components.mention-atom-component.zero-items":"No items available","ui.text-color.orange":"Orange","ui.text-color.orange.hue":["Orange ",["hue"]],"extension.command.toggle-ordered-list.label":"Ordered list","keyboard.shortcut.pageDown":"Page Down","keyboard.shortcut.pageUp":"Page Up","extension.command.paste.label":"Paste","extension.command.paste.description":"Paste content into the editor","ui.text-color.pink":"Pink","ui.text-color.pink.hue":["Pink ",["hue"]],"zvMfIA":"No items available","pEjhti":"Static Menu","ui.text-color.red":"Red","ui.text-color.red.hue":["Red ",["hue"]],"extension.command.redo.label":"Redo","extension.command.redo.description":"Redo the most recent action","extension.command.remove-annotation.label":"Remove annotation","extension.command.right-align.label":"Right align","extension.command.select-all.label":"Select all","extension.command.select-all.description":"Select all content within the editor","extension.command.insert-horizontal-rule.description":"Separate content with a diving horizontal line","extension.command.set-casing.label":"Set text case","extension.command.set-font-size.description":"Set the font size for the selected text.","extension.command.set-text-color.description":"Set the text color for the selected text.","extension.command.set-text-highlight.description":"Set the text highlight color for the selected text.","keyboard.shortcut.shift":"Shift","extension.command.toggle-whitespace.description":"Show hidden whitespace characters in your editor.","keyboard.shortcut.space":"Space","extension.command.toggle-strike.label":"Strikethrough","extension.command.toggle-strike.description":"Strikethrough the selected text","extension.command.toggle-subscript.label":"Subscript","extension.command.toggle-superscript.label":"Superscript","keyboard.shortcut.tab":"Tab","extension.command.toggle-task-list.description":"Tasked list","ui.text-color.teal":"Teal","ui.text-color.teal.hue":["Teal ",["hue"]],"extension.command.set-text-color.label":"Text color","extension.command.set-text-highlight.label":"Text highlight","extension.command.toggle-whitespace.label":"Toggle Whitespace","ui.text-color.transparent":"Transparent","slrB1c":"Black","6QML30":"Blue","xw+keN":["Blue ",["hue"]],"38RHqP":"Cyan","D89yPf":["Cyan ",["hue"]],"VjBLnd":"Grape","Rp40yv":["Grape ",["hue"]],"5Dm9D1":"Gray","HGjXjC":["Gray ",["hue"]],"b9fz+n":"Green","18jo3M":["Green ",["hue"]],"CFzqCV":"Indigo","aVlDku":["Indigo ",["hue"]],"04PfLc":"Lime","KRTK6Y":["Lime ",["hue"]],"pSnXFd":"Orange","ve/MJZ":["Orange ",["hue"]],"OvCgDa":"Pink","l7NqyT":["Pink ",["hue"]],"IT9k0j":"Red","AdyJ7/":["Red ",["hue"]],"3D2UWc":"Teal","Dcq0Y1":["Teal ",["hue"]],"bsi2ik":"Transparent","Tj3PRR":"Violet","xxMH5N":["Violet ",["hue"]],"Rum0ah":"White","4gaw/Q":"Yellow","hhauc3":["Yellow ",["hue"]],"extension.command.toggle-underline.label":"Underline","extension.command.toggle-underline.description":"Underline the selected text","extension.command.undo.label":"Undo","extension.command.undo.description":"Undo the most recent action","extension.command.update-annotation.label":"Update annotation","ui.text-color.violet":"Violet","ui.text-color.violet.hue":["Violet ",["hue"]],"ui.text-color.white":"White","ui.text-color.yellow":"Yellow","ui.text-color.yellow.hue":["Yellow ",["hue"]]}'),Sf={};tO(Sf,GT);Yi.loadLocaleData("en",{plurals:Sf.en});Yi.load("en",nO);Yi.activate("en");var rO=Object.defineProperty,sO=Object.getOwnPropertyDescriptor,iO=(t,e,n,r)=>{for(var s=r>1?void 0:r?sO(e,n):e,i=t.length-1,o;i>=0;i--)(o=t[i])&&(s=(r?o(e,n,s):o(s))||s);return r&&s&&rO(e,n,s),s},oO={...un.defaultOptions,...ks.defaultOptions},aO=[...un.staticKeys,...ks.staticKeys],Ss=class extends te{get name(){return"react"}onSetOptions(t){const{pickChanged:e}=t;this.getExtension(un).setOptions(e(["placeholder"]))}createExtensions(){const{emptyNodeClass:t,placeholder:e,defaultBlockNode:n,defaultContentNode:r,defaultEnvironment:s,defaultInlineNode:i,nodeViewComponents:o}=this.options;return[new un({emptyNodeClass:t,placeholder:e,priority:Y.Low}),new ks({defaultBlockNode:n,defaultContentNode:r,defaultEnvironment:s,defaultInlineNode:i,nodeViewComponents:o})]}};Ss=iO([G({defaultOptions:oO,staticKeys:aO})],Ss);var wf={};Object.defineProperty(wf,"__esModule",{value:!0});function lO(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];if(t.length===2)return iu(t[0],t[1])||null;var n=t.slice(1).reduce(function(r,s){return iu(r,s)},t[0]);return n||null}var Cr=wf.default=lO,su=new WeakMap;function iu(t,e){if(t&&e){var n=su.get(t)||new WeakMap;su.set(t,n);var r=n.get(e)||function(s){ou(t,s),ou(e,s)};return n.set(e,r),r}return t||e}function ou(t,e){typeof t=="function"?t(e):t.current=e}var vf=(t,e,n)=>{if(!e.has(t))throw TypeError("Cannot "+n)},Eo=(t,e,n)=>(vf(t,e,"read from private field"),e.get(t)),cO=(t,e,n)=>{if(e.has(t))throw TypeError("Cannot add the same private member more than once");e instanceof WeakSet?e.add(t):e.set(t,n)},uO=(t,e,n,r)=>(vf(t,e,"write to private field"),e.set(t,n),n);function dO(){const[,t]=z.useState(M());return z.useCallback(()=>{t(M())},[])}var Ef=z.createContext(null);function nl(t){const e=z.useContext(Ef),n=z.useRef(dO());R(e,{code:b.REACT_PROVIDER_CONTEXT});const{addHandler:r}=e;return z.useEffect(()=>{let s=t;if(s){if(Ln(s)){const{autoUpdate:i}=s;s=i?()=>n.current():void 0}if(ee(s))return r("updated",s)}},[r,t]),e}function hO(t=!0){return nl({autoUpdate:t}).active}function fO(){return nl().commands}var[pO,cM]=Vw(({props:t})=>{const e=t.locale??"en",n=t.i18n??Yi,r=t.supportedLocales??[e],s=n._.bind(n);return{locale:e,i18n:n,supportedLocales:r,t:s}});function au(t,e={}){const{core:n,react:r,...s}=e;return yb(t)?t:gb.create(()=>[...Fu(t),new Ss(r),...Tw(n)],s)}function mO(t,e={}){const n=z.useRef(t),r=z.useRef(e),[s,i]=z.useState(()=>au(t,e));return n.current=t,r.current=e,z.useEffect(()=>s.addHandler("destroy",()=>{i(()=>au(n.current,r.current))}),[s]),s}var gO=typeof Cr=="object"&&Cr.__esModule&&Cr.default?Cr.default:Cr,Gn,yO=class extends db{constructor(t){if(super(t),cO(this,Gn,void 0),this.rootPropsConfig={called:!1,count:0},this.getRootProps=e=>this.internalGetRootProps(e,null),this.internalGetRootProps=(e,n)=>{this.rootPropsConfig.called=!0;const{refKey:r="ref",ref:s,...i}=e??M();return{[r]:gO(s,this.onRef),key:this.uid,...i,children:n}},this.onRef=e=>{e&&(this.rootPropsConfig.count+=1,R(this.rootPropsConfig.count<=1,{code:b.REACT_GET_ROOT_PROPS,message:`Called ${this.rootPropsConfig.count} times`}),uO(this,Gn,e),this.onRefLoad())},this.manager.view){this.manager.view.setProps({state:this.manager.view.state,dispatchTransaction:this.dispatchTransaction,attributes:()=>this.getAttributes(),editable:()=>this.props.editable??!0});return}this.manager.getExtension(un).setOptions({placeholder:this.props.placeholder??""})}get name(){return"react"}update(t){return super.update(t),this}createView(t){return new Ry(null,{state:t,dispatchTransaction:this.dispatchTransaction,attributes:()=>this.getAttributes(),editable:()=>this.props.editable??!0,plugins:[]})}updateState({state:t,...e}){const{triggerChange:n=!0,tr:r,transactions:s}=e;if(this.props.state){const{onChange:i}=this.props;R(i,{code:b.REACT_CONTROLLED,message:"You are required to provide the `onChange` handler when creating a controlled editor."}),R(n,{code:b.REACT_CONTROLLED,message:"Controlled editors do not support `clearContent` or `setContent` where `triggerChange` is `true`. Update the `state` prop instead."}),this.previousStateOverride||(this.previousStateOverride=this.getState()),this.onChange({state:t,tr:r,transactions:s});return}!r&&!s&&(t=t.apply(t.tr.setMeta(ol,{}))),this.view.updateState(t),n&&(s==null?void 0:s.length)!==0&&this.onChange({state:t,tr:r,transactions:s}),this.manager.onStateUpdate({previousState:this.previousState,state:t,tr:r,transactions:s})}updateControlledState(t,e){this.previousStateOverride=e,t=t.apply(t.tr.setMeta(ol,{})),this.view.updateState(t),this.manager.onStateUpdate({previousState:this.previousState,state:t}),this.previousStateOverride=void 0}addProsemirrorViewToDom(t,e){this.props.insertPosition==="start"?t.insertBefore(e,t.firstChild):t.append(e)}onRefLoad(){R(Eo(this,Gn),{code:b.REACT_EDITOR_VIEW,message:"Something went wrong when initializing the text editor. Please check your setup."});const{autoFocus:t}=this.props;this.addProsemirrorViewToDom(Eo(this,Gn),this.view.dom),t&&this.focus(t),this.onChange(),this.addFocusListeners()}onUpdate(){this.view&&Eo(this,Gn)&&this.view.setProps({...this.view.props,editable:()=>this.props.editable??!0})}get frameworkOutput(){return{...this.baseOutput,getRootProps:this.getRootProps,portalContainer:this.manager.store.portalContainer}}resetRender(){this.rootPropsConfig.called=!1,this.rootPropsConfig.count=0}};Gn=new WeakMap;var Cf=typeof document<"u"?z.useLayoutEffect:z.useEffect;function xO(t){const e=z.useRef();return Cf(()=>{e.current=t}),e.current}function bO(t){const{manager:e,state:n}=t,{placeholder:r,editable:s}=t;z.useRef(!0).current&&!tn(r)&&e.getExtension(Ss).setOptions({placeholder:r}),z.useEffect(()=>{r!=null&&e.getExtension(Ss).setOptions({placeholder:r})},[r,e]);const[o]=z.useState(()=>{if(n)return n;const l=e.createEmptyDoc(),[c,u]=me(t.initialContent)?t.initialContent:[t.initialContent??l];return e.createState({content:c,selection:u})}),a=kO({initialEditorState:o,getProps:()=>t});return z.useEffect(()=>()=>{a.destroy()},[a]),z.useEffect(()=>{a.onUpdate()},[s,a]),SO(a),a.frameworkOutput}function kO(t){const e=z.useRef(t);e.current=t;const n=z.useMemo(()=>new yO(e.current),[]);return n.update(t),n}function SO(t){const{state:e}=t.props,n=z.useRef(!!e),r=xO(e);Cf(()=>{const s=e?n.current===!0:n.current===!1;R(s,{code:b.REACT_CONTROLLED,message:n.current?"You have attempted to switch from a controlled to an uncontrolled editor. Once you set up an editor as a controlled editor it must always provide a `state` prop.":"You have provided a `state` prop to an uncontrolled editor. In order to set up your editor as controlled you must provide the `state` prop from the very first render."}),!(!e||e===r)&&t.updateControlledState(e,r??void 0)},[e,r,t])}function wO(t={}){const{content:e,document:n,selection:r,extensions:s,...i}=t,o=mO(s??(()=>[]),i),[a,l]=z.useState(()=>o.createState({selection:r,content:e??o.createEmptyDoc()})),c=z.useCallback(({state:d})=>{l(d)},[]),u=z.useCallback(()=>o.output,[o]);return z.useMemo(()=>({state:a,setState:l,manager:o,onChange:c,getContext:u}),[u,o,c,a])}var ua=()=>Ne.createElement("div",{className:N1.EDITOR_WRAPPER,...nl().getRootProps()}),vO=t=>(t.hook(),null);function EO(t){const{children:e,autoRender:n,i18n:r,locale:s,supportedLocales:i,hooks:o=[],...a}=t,l=bO(a),c=Rw(l.portalContainer),u=n==="start"||n===!0||!e&&tn(n),d=n==="end";return Ne.createElement(pO,{i18n:r,locale:s,supportedLocales:i},Ne.createElement(Ef.Provider,{value:l},Ne.createElement(Aw,{portals:c}),o.map((h,f)=>Ne.createElement(vO,{hook:h,key:f})),u&&Ne.createElement(ua,null),e,d&&Ne.createElement(ua,null)))}const CO="_richTextToolbar_1gbkk_1",TO="_richTextToolbarContainer_1gbkk_5",lu={richTextToolbar:CO,richTextToolbarContainer:TO};var Xn=(t=>(t.BOLD="bold",t.ITALIC="italic",t.CODE="code",t.UL="ul",t.OL="ol",t))(Xn||{});const Tf=({disabled:t=!1,toolbarComponent:e=null})=>{const{focus:n,toggleBold:r,toggleBulletList:s,toggleCode:i,toggleItalic:o,toggleOrderedList:a}=fO(),l=hO(),c=[{icon:Xn.BOLD,onClick:r,active:l.bold()},{icon:Xn.ITALIC,onClick:o,active:l.italic()},{icon:Xn.CODE,onClick:i,active:l.code()},{icon:Xn.UL,onClick:s,active:l.bulletList()},{icon:Xn.OL,onClick:a,active:l.orderedList()}];return ae.jsxs("div",{className:lu.richTextToolbarContainer,children:[ae.jsx("div",{className:lu.richTextToolbar,children:c.map((u,d)=>ae.jsx(Ou,{small:!0,round:!0,basic:!0,icon:u.icon,colored:Nf.MUTED,onClick:()=>{u.onClick(),n()},active:u.active,disabled:t},d))}),e]})};Tf.__docgenInfo={description:"",methods:[],displayName:"RichTextToolbar",props:{disabled:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},toolbarComponent:{required:!1,tsType:{name:"ReactNode"},description:"",defaultValue:{value:"null",computed:!1}}}};const OO="_inputInTable_19adc_1",MO="_error_19adc_7",_O="_warning_19adc_7",NO="_inputHover_19adc_13",AO="_inputFocus_19adc_18",RO="_inputError_19adc_25",IO="_inputWarning_19adc_26",DO="_inputDisabled_19adc_61",PO="_hideScrollbars_19adc_67",LO="_richTextInput_19adc_77",BO={inputInTable:OO,error:MO,warning:_O,inputHover:NO,inputFocus:AO,inputError:RO,inputWarning:IO,inputDisabled:DO,hideScrollbars:PO,richTextInput:LO},Zi=z.forwardRef(({placeholder:t,onChange:e,value:n,disabled:r,toolbarComponent:s},i)=>{const o=z.useContext(_f),a=r||o,{manager:l,state:c,setState:u,getContext:d}=wO({extensions:()=>[new Dn({}),new xs({}),new gs,new ys,new yr({}),new bs,new un({placeholder:t})],content:n,selection:"start",stringHandler:"markdown"});z.useImperativeHandle(i,()=>d(),[d]);const h=({helpers:f,state:p})=>{const m=f.getMarkdown(p);e&&e(m),u(p)};return ae.jsx("div",{className:BO.richTextInput,children:ae.jsxs(EO,{manager:l,state:c,placeholder:t,onChange:h,editable:!a,children:[ae.jsx(Tf,{disabled:a,toolbarComponent:s}),ae.jsx(ua,{})]})})});Zi.__docgenInfo={description:"",methods:[],displayName:"RichTextInput"};const uM={title:"Forms/RichTextInput",component:Zi,args:{}},As=t=>{const[e,n]=Ne.useState(t.value);return ae.jsxs(ae.Fragment,{children:[ae.jsx(Zi,{...t,value:e,onChange:n}),ae.jsx("pre",{children:ae.jsx("strong",{children:"Markdown output:"})}),ae.jsx("pre",{children:e})]})},Bs=As.bind({}),Gr=As.bind({});Gr.args={value:`Paragraph goes here lorem ipsum dolor.
|
|
182
182
|
1. Item (*italic*)
|
|
183
183
|
2. Item (**bold**)
|
|
184
184
|
3. Item (\`code\`)
|
|
185
185
|
* Item
|
|
186
|
-
* Item`};const Xr=As.bind({});Xr.args={placeholder:"Enter message..."};const Yr=As.bind({});Yr.args={disabled:!0};const Zr=()=>{const[t,e]=Ne.useState("starting value"),n=Ne.useRef(null),r=s=>{e(""),s.current.clearContent()};return ae.jsxs(ae.Fragment,{children:[ae.jsx(
|
|
186
|
+
* Item`};const Xr=As.bind({});Xr.args={placeholder:"Enter message..."};const Yr=As.bind({});Yr.args={disabled:!0};const Zr=()=>{const[t,e]=Ne.useState("starting value"),n=Ne.useRef(null),r=s=>{e(""),s.current.clearContent()};return ae.jsxs(ae.Fragment,{children:[ae.jsx(Ou,{label:"Clear input!",colored:"red",onClick:()=>r(n)}),ae.jsx(Zi,{value:t,onChange:e,ref:n}),ae.jsx("pre",{children:ae.jsx("strong",{children:"Markdown output:"})}),ae.jsx("pre",{children:t})]})},zO=ae.jsx(Rf,{options:[{label:"Aardvarks",value:"termites"},{label:"Kangaroos",value:"grass"},{label:"Koalas",value:"leaves"},{label:"Wombats",value:"bark"}],width:"auto",value:"termites",small:!0}),Qr=As.bind({});Qr.args={toolbarComponent:zO};Zr.__docgenInfo={description:"",methods:[],displayName:"HandlingStateExternallyWithRef"};var cu,uu,du;Bs.parameters={...Bs.parameters,docs:{...(cu=Bs.parameters)==null?void 0:cu.docs,source:{originalSource:`args => {
|
|
187
187
|
const [value, setValue] = React.useState(args.value);
|
|
188
188
|
return <>
|
|
189
189
|
<RichTextInput
|
|
@@ -194,7 +194,7 @@ ${t}</ul>
|
|
|
194
194
|
</pre>
|
|
195
195
|
<pre>{value}</pre>
|
|
196
196
|
</>;
|
|
197
|
-
}`,...(
|
|
197
|
+
}`,...(du=(uu=Bs.parameters)==null?void 0:uu.docs)==null?void 0:du.source}}};var hu,fu,pu;Gr.parameters={...Gr.parameters,docs:{...(hu=Gr.parameters)==null?void 0:hu.docs,source:{originalSource:`args => {
|
|
198
198
|
const [value, setValue] = React.useState(args.value);
|
|
199
199
|
return <>
|
|
200
200
|
<RichTextInput
|
|
@@ -205,7 +205,7 @@ ${t}</ul>
|
|
|
205
205
|
</pre>
|
|
206
206
|
<pre>{value}</pre>
|
|
207
207
|
</>;
|
|
208
|
-
}`,...(
|
|
208
|
+
}`,...(pu=(fu=Gr.parameters)==null?void 0:fu.docs)==null?void 0:pu.source}}};var mu,gu,yu;Xr.parameters={...Xr.parameters,docs:{...(mu=Xr.parameters)==null?void 0:mu.docs,source:{originalSource:`args => {
|
|
209
209
|
const [value, setValue] = React.useState(args.value);
|
|
210
210
|
return <>
|
|
211
211
|
<RichTextInput
|
|
@@ -216,7 +216,7 @@ ${t}</ul>
|
|
|
216
216
|
</pre>
|
|
217
217
|
<pre>{value}</pre>
|
|
218
218
|
</>;
|
|
219
|
-
}`,...(
|
|
219
|
+
}`,...(yu=(gu=Xr.parameters)==null?void 0:gu.docs)==null?void 0:yu.source}}};var xu,bu,ku;Yr.parameters={...Yr.parameters,docs:{...(xu=Yr.parameters)==null?void 0:xu.docs,source:{originalSource:`args => {
|
|
220
220
|
const [value, setValue] = React.useState(args.value);
|
|
221
221
|
return <>
|
|
222
222
|
<RichTextInput
|
|
@@ -227,7 +227,7 @@ ${t}</ul>
|
|
|
227
227
|
</pre>
|
|
228
228
|
<pre>{value}</pre>
|
|
229
229
|
</>;
|
|
230
|
-
}`,...(
|
|
230
|
+
}`,...(ku=(bu=Yr.parameters)==null?void 0:bu.docs)==null?void 0:ku.source}}};var Su,wu,vu;Zr.parameters={...Zr.parameters,docs:{...(Su=Zr.parameters)==null?void 0:Su.docs,source:{originalSource:`() => {
|
|
231
231
|
const [value, setValue] = React.useState('starting value');
|
|
232
232
|
const editorRef = React.useRef(null);
|
|
233
233
|
const handleClick = (ref: any) => {
|
|
@@ -242,7 +242,7 @@ ${t}</ul>
|
|
|
242
242
|
</pre>
|
|
243
243
|
<pre>{value}</pre>
|
|
244
244
|
</>;
|
|
245
|
-
}`,...(
|
|
245
|
+
}`,...(vu=(wu=Zr.parameters)==null?void 0:wu.docs)==null?void 0:vu.source}}};var Eu,Cu,Tu;Qr.parameters={...Qr.parameters,docs:{...(Eu=Qr.parameters)==null?void 0:Eu.docs,source:{originalSource:`args => {
|
|
246
246
|
const [value, setValue] = React.useState(args.value);
|
|
247
247
|
return <>
|
|
248
248
|
<RichTextInput
|
|
@@ -253,4 +253,4 @@ ${t}</ul>
|
|
|
253
253
|
</pre>
|
|
254
254
|
<pre>{value}</pre>
|
|
255
255
|
</>;
|
|
256
|
-
}`,...(
|
|
256
|
+
}`,...(Tu=(Cu=Qr.parameters)==null?void 0:Cu.docs)==null?void 0:Tu.source}}};const dM=["Default","Filled","Placeholder","Disabled","HandlingStateExternallyWithRef","WithToolbarComponent"];export{Bs as Default,Yr as Disabled,Gr as Filled,Zr as HandlingStateExternallyWithRef,Xr as Placeholder,Qr as WithToolbarComponent,dM as __namedExportsOrder,uM as default};
|