@meowdown/core 0.61.0 → 0.62.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/index.d.ts CHANGED
@@ -521,11 +521,9 @@ declare function defineEditorExtensionImpl(options: EditorExtensionOptions): imp
521
521
  }>, import("@prosekit/core").Extension<{
522
522
  Commands: {
523
523
  cycleCheckableList: [];
524
+ cycleOrderedList: [];
524
525
  wrapInCircleTask: [];
525
526
  wrapInSquareTask: [];
526
- };
527
- }>, import("@prosekit/core").Extension<{
528
- Commands: {
529
527
  toggleListCollapsed: [];
530
528
  };
531
529
  }>]>, import("@prosekit/core").Union<readonly [import("@prosekit/extensions/heading").HeadingSpecExtension, import("@prosekit/core").Extension<{
@@ -646,7 +644,7 @@ declare function defineEditorExtensionImpl(options: EditorExtensionOptions): imp
646
644
  Commands: {
647
645
  setMarkMode: [mode: MarkMode];
648
646
  };
649
- }>]>, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").BaseCommandsExtension, import("@prosekit/core").HistoryExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").Extension<{
647
+ }>]>, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").BaseCommandsExtension, import("@prosekit/core").HistoryExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").PlainExtension, import("@prosekit/core").Extension<{
650
648
  Commands: {
651
649
  insertMarkdown: [markdown: string];
652
650
  insertTrigger: [text: string];
@@ -1124,6 +1122,19 @@ declare function defineViewAttributes(attributes: {
1124
1122
  [name: string]: string;
1125
1123
  })): PlainExtension;
1126
1124
  //#endregion
1125
+ //#region src/extensions/virtual-caret.d.ts
1126
+ /**
1127
+ * Draws the caret as an overlay element and hides the native caret via CSS
1128
+ * (`caret-color: transparent`). The native DOM selection stays fully alive,
1129
+ * so IME, clicks, and typing keep their native behavior; only the caret pixels
1130
+ * are ours. Applies to every mark mode.
1131
+ *
1132
+ * `layer` is the element the caret draws into. The host owns its placement:
1133
+ * it must live outside the contenteditable and scroll together with the
1134
+ * content.
1135
+ */
1136
+ declare function defineVirtualCaret(layer: HTMLElement): PlainExtension;
1137
+ //#endregion
1127
1138
  //#region src/extensions/wikilink-hover.d.ts
1128
1139
  /** A wikilink currently under the pointer. */
1129
1140
  interface WikilinkHoverHit extends WikilinkHit {
@@ -1202,4 +1213,4 @@ declare function getSelectedText(state: EditorState): string;
1202
1213
  */
1203
1214
  declare function getVirtualElementFromRange(view: EditorView, range: PositionRange): VirtualElement;
1204
1215
  //#endregion
1205
- export { type AcceptPendingReplacementOptions, type CheckRoundTripOptions, type CodeBlockAttrs, type CodeBlockFenceStyle, type CodeToken, type DocToMarkdownOptions, EDITOR_KEY_BINDINGS, type EditorExtension, type EditorExtensionOptions, type EmbedDescriptor, type ExitBoundaryHandler, type ExitBoundaryOptions, type FileClickHandler, type FileClickPayload, type FileInfo, type FileInfoResolver, type FileLinkOptions, type FileLinkPayload, type FileLinkResolver, type FilePasteHandler, type FilePasteOptions, type FileSaveErrorHandler, type FileViewOptions, type FollowLinkHandlers, type ImageClickHandler, type ImageClickPayload, type ImageOptions, type InlineMarkContext, type InlineMarkOptions, type KaTeXRender, type LanguageItem, type LinkAttrs, type LinkClickHandler, type LinkClickPayload, type LinkCopyHandler, type LinkCopyPayload, type LinkEditHandler, type LinkEditOptions, type LinkHoverHandler, type LinkUnit, type ListMarker, type MarkChunk, type MarkMode, type MarkName, type MarkdownToDocOptions, type MdFileAttrs, type MdImageAttrs, type MdLinkTextAttrs, type MdMathAttrs, type MdWikilinkAttrs, type MeowdownCodeBlockAttrs, type MeowdownHTMLCommentAttrs, type MeowdownListAttrs, type MeowdownTableCellAttrs, type NodeName, type ParsedWikiEmbed, type PendingReplacement, type PendingReplacementEvent, type PendingReplacementHandler, type PendingReplacementMode, type PendingReplacementOutcome, type PlaceholderOptions, type PositionRange, Priority, type ReferenceDefinition, type ReferenceDefinitionIndex, type ReferenceDefinitions, type RoundTripFidelity, type SearchStatus, type SearchStatusHandler, type StartPendingReplacementOptions, type TableColumnAlign, type TagClickHandler, type TagClickPayload, type TypedEditor, type TypedMarkBuilders, type VirtualElement, type WikiEmbedOptions, type WikiEmbedResolution, type WikiEmbedResolver, type WikilinkClickHandler, type WikilinkClickPayload, type WikilinkHoverHandler, type WikilinkHoverHit, buildFileMarkdown, checkRoundTrip, codeBlockLanguages, collectReferenceDefinitions, defaultResolveImageUrl, defineBulletAfterHeading, defineCodeBlockPreviewPlugin, defineCodeBlockSyntaxHighlight, defineEditorExtension, defineEmbedPaste, defineExitBoundaryHandler, defineFileClickHandler, defineFilePaste, defineFileView, defineFollowLinkHandler, defineHTMLComment, defineImage, defineImageClickHandler, defineLinkClickHandler, defineLinkCommands, defineLinkEditKeymap, defineLinkHoverHandler, defineLinkPaste, defineMath, definePendingReplacementHandler, definePlaceholder, defineReadonly, defineSearchStatusHandler, defineSpellCheckPlugin, defineSubstitution, defineTagClickHandler, defineViewAttributes, defineWikilinkClickHandler, defineWikilinkHoverHandler, defineWikilinkTrigger, docToMarkdown, formatFileSize, formatSizedWikiEmbed, getCodeTokens, getFileKind, getIsComposing, getLinkUnitAt, getMarkBuilders, getPendingReplacement, getSearchStatus, getSelectedText, getTableColumnAlign, getTextblockDisplayText, getVirtualElementFromRange, inlineTextToMarkChunks, inlineTextToMarkChunksWithContext, insertLink, isCodeBlockPreviewHiddenDecoration, isMarkOfType, isNodeOfType, isSelectionInTableCell, listenForTweetHeight, loadKaTeX, markdownToDoc, matchEmbed, parseWikiEmbed, removeLink, renderMathInto, updateLink, wikiEmbedBasename, withPriority };
1216
+ export { type AcceptPendingReplacementOptions, type CheckRoundTripOptions, type CodeBlockAttrs, type CodeBlockFenceStyle, type CodeToken, type DocToMarkdownOptions, EDITOR_KEY_BINDINGS, type EditorExtension, type EditorExtensionOptions, type EmbedDescriptor, type ExitBoundaryHandler, type ExitBoundaryOptions, type FileClickHandler, type FileClickPayload, type FileInfo, type FileInfoResolver, type FileLinkOptions, type FileLinkPayload, type FileLinkResolver, type FilePasteHandler, type FilePasteOptions, type FileSaveErrorHandler, type FileViewOptions, type FollowLinkHandlers, type ImageClickHandler, type ImageClickPayload, type ImageOptions, type InlineMarkContext, type InlineMarkOptions, type KaTeXRender, type LanguageItem, type LinkAttrs, type LinkClickHandler, type LinkClickPayload, type LinkCopyHandler, type LinkCopyPayload, type LinkEditHandler, type LinkEditOptions, type LinkHoverHandler, type LinkUnit, type ListMarker, type MarkChunk, type MarkMode, type MarkName, type MarkdownToDocOptions, type MdFileAttrs, type MdImageAttrs, type MdLinkTextAttrs, type MdMathAttrs, type MdWikilinkAttrs, type MeowdownCodeBlockAttrs, type MeowdownHTMLCommentAttrs, type MeowdownListAttrs, type MeowdownTableCellAttrs, type NodeName, type ParsedWikiEmbed, type PendingReplacement, type PendingReplacementEvent, type PendingReplacementHandler, type PendingReplacementMode, type PendingReplacementOutcome, type PlaceholderOptions, type PositionRange, Priority, type ReferenceDefinition, type ReferenceDefinitionIndex, type ReferenceDefinitions, type RoundTripFidelity, type SearchStatus, type SearchStatusHandler, type StartPendingReplacementOptions, type TableColumnAlign, type TagClickHandler, type TagClickPayload, type TypedEditor, type TypedMarkBuilders, type VirtualElement, type WikiEmbedOptions, type WikiEmbedResolution, type WikiEmbedResolver, type WikilinkClickHandler, type WikilinkClickPayload, type WikilinkHoverHandler, type WikilinkHoverHit, buildFileMarkdown, checkRoundTrip, codeBlockLanguages, collectReferenceDefinitions, defaultResolveImageUrl, defineBulletAfterHeading, defineCodeBlockPreviewPlugin, defineCodeBlockSyntaxHighlight, defineEditorExtension, defineEmbedPaste, defineExitBoundaryHandler, defineFileClickHandler, defineFilePaste, defineFileView, defineFollowLinkHandler, defineHTMLComment, defineImage, defineImageClickHandler, defineLinkClickHandler, defineLinkCommands, defineLinkEditKeymap, defineLinkHoverHandler, defineLinkPaste, defineMath, definePendingReplacementHandler, definePlaceholder, defineReadonly, defineSearchStatusHandler, defineSpellCheckPlugin, defineSubstitution, defineTagClickHandler, defineViewAttributes, defineVirtualCaret, defineWikilinkClickHandler, defineWikilinkHoverHandler, defineWikilinkTrigger, docToMarkdown, formatFileSize, formatSizedWikiEmbed, getCodeTokens, getFileKind, getIsComposing, getLinkUnitAt, getMarkBuilders, getPendingReplacement, getSearchStatus, getSelectedText, getTableColumnAlign, getTextblockDisplayText, getVirtualElementFromRange, inlineTextToMarkChunks, inlineTextToMarkChunksWithContext, insertLink, isCodeBlockPreviewHiddenDecoration, isMarkOfType, isNodeOfType, isSelectionInTableCell, listenForTweetHeight, loadKaTeX, markdownToDoc, matchEmbed, parseWikiEmbed, removeLink, renderMathInto, updateLink, wikiEmbedBasename, withPriority };
package/dist/index.js CHANGED
@@ -1,8 +1,8 @@
1
1
  import{Priority as e,Priority as t,createMarkBuilders as n,createNodeBuilders as r,defineBaseCommands as i,defineBaseKeymap as a,defineClipboardSerializer as o,defineCommands as s,defineHistory as c,defineKeymap as l,defineMarkSpec as u,defineMarkView as d,defineNodeAttr as f,defineNodeSpec as p,definePlugin as m,getMarkRange as h,getMarkType as g,getNodeType as _,isAllSelection as v,isApple as ee,isAtBlockStart as te,isNodeSelection as ne,isTextSelection as y,setBlockType as re,toggleNode as ie,union as b,unsetBlockType as ae,withPriority as oe,withPriority as x,withSkipCodeBlock as se}from"@prosekit/core";import{defineCodeBlock as ce,defineCodeBlockHighlight as le,defineCodeBlockPreviewPlugin as ue,isCodeBlockPreviewHiddenDecoration as de}from"@prosekit/extensions/code-block";import{definePlaceholder as fe}from"@prosekit/extensions/placeholder";import{defineReadonly as pe}from"@prosekit/extensions/readonly";import{defineSearchCommands as me,defineSearchQuery as he,defineSearchStatusHandler as ge,getSearchStatus as _e,getSearchStatus as ve}from"@prosekit/extensions/search";import{LEZER_NODE_IDS as S,collectInlineElements as ye,getAutolinkHref as be,gfmBlockOnlyParser as xe,gfmParser as Se,isSpaceChar as C,parseInline as Ce}from"@meowdown/markdown";import{isElementLike as we,isHTMLElement as Te,isObject as Ee,once as De}from"@ocavue/utils";import{defineBlockquote as Oe}from"@prosekit/extensions/blockquote";import{defineDoc as ke}from"@prosekit/extensions/doc";import{defineGapCursor as Ae}from"@prosekit/extensions/gap-cursor";import{defineModClickPrevention as je}from"@prosekit/extensions/mod-click-prevention";import{defineText as Me}from"@prosekit/extensions/text";import{defineVirtualSelection as Ne}from"@prosekit/extensions/virtual-selection";import{NodeSelection as Pe,Plugin as w,PluginKey as T,Selection as Fe,TextSelection as E}from"@prosekit/pm/state";import{Decoration as D,DecorationSet as O}from"@prosekit/pm/view";import{NO_BREAK_SPACE as Ie}from"unicode-by-name";import{defaultHandlers as Le}from"hast-util-to-mdast";import{defaultHandlers as Re}from"mdast-util-to-markdown";import ze from"rehype-parse";import Be from"rehype-remark";import Ve from"remark-gfm";import He from"remark-stringify";import{unified as Ue}from"unified";import{DOMParser as We,DOMSerializer as Ge,Fragment as k,Mark as Ke,Slice as A}from"@prosekit/pm/model";import{defineHeadingCommands as qe,defineHeadingInputRule as Je,defineHeadingSpec as Ye}from"@prosekit/extensions/heading";import{defineParagraphCommands as Xe,defineParagraphKeymap as Ze}from"@prosekit/extensions/paragraph";import{LanguageDescription as Qe}from"@codemirror/language";import{languages as $e}from"@codemirror/language-data";import{classHighlighter as et,highlightTree as tt}from"@lezer/highlight";import{createParser as nt}from"prosemirror-highlight/lezer";import{defineEnterRule as rt,defineTextBlockEnterRule as it}from"@prosekit/extensions/enter-rule";import{defineInputRule as at,defineTextBlockInputRule as ot}from"@prosekit/extensions/input-rule";import{triggerAutocomplete as st}from"@prosekit/extensions/autocomplete";import{defineListCommands as ct,defineListDropIndicator as lt,defineListKeymap as ut,defineListSpec as dt,moveList as ft,toggleList as pt,unwrapList as mt,wrapInList as ht}from"@prosekit/extensions/list";import{chainCommands as gt,lift as _t}from"@prosekit/pm/commands";import{defineHorizontalRule as vt}from"@prosekit/extensions/horizontal-rule";import{AddMarkStep as yt,AddNodeMarkStep as bt,AttrStep as xt,RemoveMarkStep as St,RemoveNodeMarkStep as Ct,ReplaceStep as wt,Step as Tt,StepResult as Et,Transform as Dt}from"@prosekit/pm/transform";import{decodeString as Ot}from"micromark-util-decode-string";import{normalizeIdentifier as kt}from"micromark-util-normalize-identifier";import{createListRenderingPlugin as At,createSafariInputMethodWorkaroundPlugin as jt,createToggleCollapsedCommand as Mt,defaultAttributesGetter as Nt,findCheckboxInListItem as Pt,handleListMarkerMouseDown as Ft,joinListElements as It,listToDOM as Lt,unwrapListSlice as Rt,wrappingListInputRule as zt}from"prosemirror-flat-list";import{defineTableCellSpec as Bt,defineTableCommands as Vt,defineTableDropIndicator as Ht,defineTableEditingPlugin as Ut,defineTableHeaderCellSpec as Wt,defineTableRowSpec as Gt,defineTableSpec as Kt,deleteTable as qt,isCellSelection as Jt}from"@prosekit/extensions/table";import{closeHistory as Yt}from"@prosekit/pm/history";import{registerResizableHandleElement as Xt,registerResizableRootElement as Zt}from"@prosekit/web/resizable";import{InputRule as Qt}from"@prosekit/pm/inputrules";function j(e,t,n,r){let i=e.doc.content.size;if(t<0||t>i)return;let a=e.doc.resolve(t);if(!(!a.parent.isTextblock||a.parent.type.spec.code))return h(a,n,r)}const $t=new T(`mark-mode`);function en(e){return $t.getState(e)}function tn(e){return new w({key:$t,state:{init:()=>e,apply:(e,t)=>e.getMeta($t)??t},props:{attributes:t=>({"data-mark-mode":en(t)??e}),decorations:e=>{let t=en(e);if(t===`focus`)return an(e);if(t===`hide`)return on(e)}}})}function nn(e){return(t,n)=>M(t)===e?!1:(n?.(t.tr.setMeta($t,e)),!0)}function rn(e){return b(m(tn(e)),s({setMarkMode:nn}))}function M(e){return $t.getState(e)}function an(e){return sn(e,void 0)}function on(e){return sn(e,{key:`math`})}function sn(e,t){let{selection:n}=e;if(!n.empty)return O.empty;let r=n.$head,{parent:i}=r;if(!i.isTextblock||i.type.spec.code)return O.empty;let a=h(r,g(e.schema,`mdPack`),t);return a?O.create(e.doc,[D.inline(a.from,a.to,{class:`show`})]):O.empty}const cn=[`mdImage`,`mdWikilink`,`mdFile`];function N(e,t){let n=M(t);return n?e.flatMap(e=>e.modes.includes(n)?[e.name]:[]):[]}function ln(e,t,n){for(let r of n){let n=j(e,t,r);if(n)return n}}function P(e,t,n){let r=ln(e,t,n);return r&&r.to===t?r:void 0}function F(e,t,n){let r=ln(e,t,n);return r&&r.from===t?r:void 0}function un(e,t){let{from:n,to:r,empty:i}=e.selection;if(i)return;let a=ln(e,n,t);return a&&a.from===n&&a.to===r?a:void 0}function dn(e,t){return E.create(e.doc,t.from,t.to)}function fn(e,t,n,r){let i=e.doc.resolve(t);if(!(r===-1?i.parentOffset===0:i.parentOffset===i.parent.content.size)||i.depth===0)return;let a=r===-1?F(e,t,n):P(e,t,n),o=r===-1?i.before():i.after(),s=Fe.findFrom(e.doc.resolve(o),r);if(!s)return;let c=y(s)?r===-1?P(e,s.head,n):F(e,s.head,n):void 0;if(a!=null||c!=null)return s}function pn(e){return(t,n)=>{let r=N(e,t);if(r.length===0||!y(t.selection))return!1;let i=t.selection;if(i.empty){let e=F(t,i.from,r);if(e)return n?.(t.tr.setSelection(dn(t,e))),!0;if(P(t,i.from,r)&&i.from<t.doc.resolve(i.from).end())return n?.(t.tr.setSelection(E.create(t.doc,i.from+1))),!0;let a=fn(t,i.from,r,1);return a?(n?.(t.tr.setSelection(a).scrollIntoView()),!0):!1}let a=un(t,r);return a?(n?.(t.tr.setSelection(E.create(t.doc,a.to))),!0):!1}}function mn(e){return(t,n)=>{let r=N(e,t);if(r.length===0||!y(t.selection))return!1;let i=t.selection;if(i.empty){let e=P(t,i.from,r);if(e)return n?.(t.tr.setSelection(dn(t,e))),!0;let a=fn(t,i.from,r,-1);return a?(n?.(t.tr.setSelection(a).scrollIntoView()),!0):!1}let a=un(t,r);return a?(n?.(t.tr.setSelection(E.create(t.doc,a.from))),!0):!1}}function hn(e,t){return(n,r)=>{let i=N(e,n);if(i.length===0||!y(n.selection))return!1;let{anchor:a,head:o}=n.selection,s=t===-1?P(n,o,i):F(n,o,i);if(s){let e=t===-1?s.from:s.to;return r?.(n.tr.setSelection(E.create(n.doc,a,e)).scrollIntoView()),!0}let c=fn(n,o,i,t);return!c||!y(c)?!1:(r?.(n.tr.setSelection(E.create(n.doc,a,c.head)).scrollIntoView()),!0)}}function gn(e){return(t,n)=>{let r=N(e,t);if(r.length===0||!t.selection.empty)return!1;let i=t.selection.from,a=P(t,i,r);return a?(n?.(t.tr.delete(a.from,a.to)),!0):!F(t,i,r)||i<=t.doc.resolve(i).start()?!1:(n?.(t.tr.delete(i-1,i)),!0)}}function _n(e){return(t,n)=>{let r=N(e,t);if(r.length===0||!t.selection.empty)return!1;let i=t.selection.from,a=F(t,i,r);return a?(n?.(t.tr.delete(a.from,a.to)),!0):!P(t,i,r)||i>=t.doc.resolve(i).end()?!1:(n?.(t.tr.delete(i,i+1)),!0)}}const vn=`md-atom-selected`;function yn(e){return new w({key:new T(`atom-mark-selection`),props:{decorations:t=>{let n=N(e,t);if(n.length===0||ne(t.selection))return;let r=un(t,n);if(r)return O.create(t.doc,[D.inline(r.from,r.to,{class:vn})]);let{from:i,to:a,empty:o}=t.selection;if(o)return null;let s=[];return t.doc.nodesBetween(i,a,(e,t)=>{e.marks.some(e=>n.includes(e.type.name))&&s.push(D.inline(t,t+e.nodeSize,{class:vn}))}),O.create(t.doc,s)}}})}function bn({marks:e}){return b(x(l({ArrowRight:pn(e),ArrowLeft:mn(e),"Shift-ArrowRight":hn(e,1),"Shift-ArrowLeft":hn(e,-1),Backspace:gn(e),Delete:_n(e)}),t.high),m(yn(e)))}const xn=(e,t)=>{let n={type:`highlight`,children:e.all(t)};return e.patch(t,n),n},Sn=(e,t,n,r)=>{let i=e,a=n.createTracker(r),o=a.move(`==`);return o+=a.move(n.containerPhrasing(i,{...a.current(),before:o,after:`=`})),o+=a.move(`==`),o};function Cn(e){return e.tagName===`input`&&e.properties.type===`checkbox`}function wn(e){for(let t of e.children){if(t.type!==`element`)continue;if(Cn(t))return t;if(t.tagName===`ul`||t.tagName===`ol`)continue;let e=wn(t);if(e)return e}}function Tn(e){let t=e.properties.dataChecked,n=wn(e);if(t==null&&e.properties.dataType!==`taskItem`&&e.properties.dataTaskListItem==null&&n===void 0)return;let r=typeof t==`string`?t!==`false`:!!n?.properties.checked,i=e.children.filter(e=>e.type!==`element`||!(Cn(e)||e.tagName===`label`&&wn(e)));for(let e of[`div`,`p`]){let t=i.length===1&&i[0].type===`element`?i[0]:void 0;t?.tagName===e&&(i=t.children)}let a={type:`element`,tagName:`input`,properties:{type:`checkbox`,checked:r},children:[]};return{...e,children:[a,...i]}}const En=(e,t)=>Le.li(e,Tn(t)??t);function Dn(e){return e.filter(e=>e.character!==`[`&&e.character!==`~`?!0:e.atBreak?e.character===`~`:!(Array.isArray(e.inConstruct)?e.inConstruct:e.inConstruct?[e.inConstruct]:[]).includes(`phrasing`))}const On=(e,t,n,r)=>Re.text(e,t,{...n,unsafe:Dn(n.unsafe)},r);function kn(){return Ue().use(ze).use(Be,{handlers:{mark:xn,li:En}}).use(Ve).use(He,{bullet:`-`,emphasis:`*`,strong:`*`,fence:"`",fences:!0,rule:`-`,ruleRepetition:3,listItemIndent:`one`,handlers:{highlight:Sn,text:On}}).freeze()}const An=De(kn);function jn(e){return String(An().processSync(e))}function Mn(e){if(e==null)return;let t=Number.parseInt(e,10);return Number.isSafeInteger(t)?t:void 0}function Nn(e){let t=Mn(e);return t!=null&&t>0?t:void 0}function Pn(e,t){return e.type.name===t}const Fn=new Set([`mdMark`,`mdLinkUri`,`mdLinkTitle`]),In=new Set([`mdWikilink`,`mdImage`,`mdFile`,`mdMath`]);function Ln(e){return e.find(e=>In.has(e.type.name))}function Rn(e){return e.some(e=>Fn.has(e.type.name))}function zn(e){let t=[];return e.forEach(e=>{if(!e.isText||!e.text)return;let n=Ln(e.marks),r=t.at(-1);if(n!=null&&r!=null&&r.atom===n){r.text+=e.text,r.children.push(e);return}t.push({atom:n,text:e.text,children:[e]})}),t}const Bn={mdStrong:`strong`,mdEm:`em`,mdCode:`code`,mdDel:`del`,mdHighlight:`mark`,mdLinkText:`a`};function Vn(e,t,n={}){let r=document.createElement(e);r.setAttribute(`data-md`,t.textContent);for(let[e,t]of Object.entries(n))t!=null&&r.setAttribute(e,t);return Un(t,r),r}function Hn(e,t,n){return{tag:`${e}[data-md]`,node:t,priority:100,getAttrs:n,getContent:(e,t)=>{let n=(Te(e)?e:void 0)?.getAttribute(`data-md`)??``;return n?k.from(t.text(n)):k.empty}}}function Un(e,t){let n=[];for(let r of zn(e)){if(r.atom!=null){n.length=0,t.append(Kn(r.atom,r.text));continue}for(let e of r.children)Rn(e.marks)||(Wn(n,e.marks.filter(e=>Bn[e.type.name]),t),Gn(n.at(-1)?.element??t,e.text??``))}}function Wn(e,t,n){let r=0;for(;r<e.length&&r<t.length&&t[r].eq(e[r].mark);)r++;e.length=r;for(let i=r;i<t.length;i++){let r=t[i],a=document.createElement(Bn[r.type.name]??`span`);Pn(r,`mdLinkText`)&&a.setAttribute(`href`,r.attrs.href),(e.at(-1)?.element??n).append(a),e.push({mark:r,element:a})}}function Gn(e,t){let n=t.split(`
2
2
  `);for(let[t,r]of n.entries())t>0&&e.append(document.createElement(`br`)),r&&e.append(document.createTextNode(r))}function Kn(e,t){switch(e.type.name){case`mdImage`:{let t=e.attrs,n=document.createElement(`img`);return n.setAttribute(`src`,t.src),t.alt&&n.setAttribute(`alt`,t.alt),t.title&&n.setAttribute(`title`,t.title),t.width!=null&&n.setAttribute(`width`,String(t.width)),t.height!=null&&n.setAttribute(`height`,String(t.height)),n}case`mdWikilink`:{let t=e.attrs;return document.createTextNode(t.display||t.target)}case`mdFile`:{let t=e.attrs,n=document.createElement(`a`);return n.setAttribute(`href`,t.href),n.append(document.createTextNode(t.name||t.href)),n}default:return document.createTextNode(t)}}function I(e,t){return e.type.name===t}function qn(){return p({name:`heading`,whitespace:`pre`})}function Jn(e){let t=e.attrs;return Vn(`h${t.level}`,e,{"data-setext-underline":t.setextUnderline==null?void 0:String(t.setextUnderline),"data-closing-hashes":t.closingHashes==null?void 0:String(t.closingHashes)})}function Yn(){return[1,2,3,4,5,6].map(e=>Hn(`h${e}`,`heading`,t=>({level:e,setextUnderline:Nn(t.getAttribute(`data-setext-underline`))??null,closingHashes:Nn(t.getAttribute(`data-closing-hashes`))??null})))}function Xn(){return f({type:`heading`,attr:`setextUnderline`,default:null,toDOM:e=>e==null?null:[`data-setext-underline`,String(e)],parseDOM:e=>Nn(e.getAttribute(`data-setext-underline`))??null})}function Zn(){return f({type:`heading`,attr:`closingHashes`,default:null,toDOM:e=>e==null?null:[`data-closing-hashes`,String(e)],parseDOM:e=>Nn(e.getAttribute(`data-closing-hashes`))??null})}function L(e){return se(ie({type:`heading`,attrs:{level:e}}))}const Qn=(e,t,n)=>{let r=te(e,n);return r!=null&&I(r.parent,`heading`)?ae()(e,t,n):!1};function $n(){return l({"Mod-1":L(1),"Mod-2":L(2),"Mod-3":L(3),"Mod-4":L(4),"Mod-5":L(5),"Mod-6":L(6),Backspace:Qn})}function er(){return b(Ye(),qn(),Xn(),Zn(),Je(),qe(),$n())}function tr(){return p({name:`paragraph`,content:`inline*`,group:`block`,whitespace:`pre`,parseDOM:[{tag:`p`}],toDOM(){return[`p`,0]}})}function nr(e){return Vn(`p`,e)}function rr(){return[Hn(`p`,`paragraph`)]}function ir(){return b(x(tr(),t.highest),Xe(),Ze())}function ar(e){return{...e,paragraph:e=>({dom:nr(e)}),heading:e=>({dom:Jn(e)})}}function or(){return o({serializeFragmentWrapper:e=>(...t)=>{let n=e(...t);for(let e of n.children)e.setAttribute(`data-meowdown`,``);return n},nodesFromSchemaWrapper:e=>(...t)=>ar(e(...t))})}const sr=new WeakMap;function cr(e){let t=sr.get(e);return t??(t=new Ge(ar(Ge.nodesFromSchema(e)),Ge.marksFromSchema(e)),sr.set(e,t)),t}const lr=new T(`meowdown-html-paste`);function ur(e){return e.includes(`data-meowdown`)?!0:e.includes(`data-pm-slice`)&&e.includes(`md-mark`)}const dr=new Set([`html`,`head`,`body`,`meta`,`style`,`title`,`div`,`span`,`p`,`br`,`font`,`wbr`]);function fr(e){let t=new window.DOMParser().parseFromString(e,`text/html`),n={chunks:[],hasContent:!1,trailingNewlines:0,hasStyledLine:!1};if(hr(t.documentElement,n,!1)&&n.hasStyledLine)return n.chunks.join(``).replaceAll(Ie,` `)}function pr(e,t){!e.hasContent||e.trailingNewlines>=t||mr(e,`
3
3
  `.repeat(t-e.trailingNewlines))}function mr(e,t){if(!t)return;e.chunks.push(t);let n=t.length;for(;n>0&&t.charCodeAt(n-1)===10;)n--;n===0?e.trailingNewlines+=t.length:(e.hasContent=!0,e.trailingNewlines=t.length-n)}function hr(e,t,n){if(e.nodeType===Node.TEXT_NODE)return mr(t,e.nodeValue??``),!0;if(e.nodeType!==Node.ELEMENT_NODE)return!0;let r=e,i=r.tagName;if(!dr.has(i.toLowerCase()))return!1;if(n||=i===`DIV`,n&&r.getAttribute(`style`)?.trim()&&(t.hasStyledLine=!0),i===`BR`)return mr(t,`
4
- `),!0;if(i===`STYLE`||i===`TITLE`)return!0;let a=i===`DIV`?1:i===`P`?2:0;a&&pr(t,a);for(let r of e.childNodes)if(!hr(r,t,n))return!1;return a&&pr(t,a),!0}function gr(){return m(new w({key:lr,props:{transformPastedHTML:(e,t)=>{if(ur(e))return e;let n=t.state.selection.$from.parent;if(!n.inlineContent||n.type.spec.code)return e;let r=fr(e)??jn(e);if(!r.trim())return e;let i=Z(r,{nodes:il(t.state.schema)}),a=cr(t.state.schema),o=document.createElement(`div`);return o.append(a.serializeFragment(i.content)),o.innerHTML}}}))}function _r(e){return new We(e,[...rr(),...Yn(),...We.fromSchema(e).rules])}const vr=new T(`meowdown-clipboard-parser`);function yr(){return m(({schema:e})=>new w({key:vr,props:{clipboardParser:_r(e)}}))}function br(e,t){let n=t.replaceAll(/\r\n?/g,`
5
- `).replace(/^\n+/,``).replace(/\n+$/,``);if(!n)return A.empty;let r=Z(n,{nodes:il(e)}),i=_(e,`paragraph`),a=+(r.childCount>0&&r.child(0).type===i),o=+(r.childCount>0&&r.child(r.childCount-1).type===i);return new A(r.content,a,o)}function xr(e,t,n){let r=n.marks(),i=Ge.fromSchema(e),a=document.createElement(`div`);for(let n of t.split(/(?:\r\n?|\n)+/)){let t=a.appendChild(document.createElement(`p`));n&&t.appendChild(i.serializeNode(e.text(n,r)))}return We.fromSchema(e).parseSlice(a,{preserveWhitespace:!0,context:n})}function Sr(){let e;return m(new w({key:new T(`meowdown-plain-paste`),props:{clipboardTextParser:(t,n,r,i)=>{let{schema:a}=i.state;return r?xr(a,t,n):e=br(a,t)},transformPasted:t=>{if(e==null)return t;let n=e;return e=void 0,n}}}))}function Cr(e,t,n=0){let r=n,i=0;for(let n=0;n<e.length;n++)e.charCodeAt(n)===t?(i++,i>r&&(r=i)):i=0;return r}function wr(e,t=0){return Cr(e,96,t)}function Tr(e,t={}){let n=new kr;return t.frontmatter&&Er(e.attrs.frontmatter,n),Ar(e,n),n.finish()}function Er(e,t){e!==null&&(t.write(`---`),t.write(`
4
+ `),!0;if(i===`STYLE`||i===`TITLE`)return!0;let a=i===`DIV`?1:i===`P`?2:0;a&&pr(t,a);for(let r of e.childNodes)if(!hr(r,t,n))return!1;return a&&pr(t,a),!0}function gr(){return m(new w({key:lr,props:{transformPastedHTML:(e,t)=>{if(ur(e))return e;let n=t.state.selection.$from.parent;if(!n.inlineContent||n.type.spec.code)return e;let r=fr(e)??jn(e);if(!r.trim())return e;let i=Z(r,{nodes:Xc(t.state.schema)}),a=cr(t.state.schema),o=document.createElement(`div`);return o.append(a.serializeFragment(i.content)),o.innerHTML}}}))}function _r(e){return new We(e,[...rr(),...Yn(),...We.fromSchema(e).rules])}const vr=new T(`meowdown-clipboard-parser`);function yr(){return m(({schema:e})=>new w({key:vr,props:{clipboardParser:_r(e)}}))}function br(e,t){let n=t.replaceAll(/\r\n?/g,`
5
+ `).replace(/^\n+/,``).replace(/\n+$/,``);if(!n)return A.empty;let r=Z(n,{nodes:Xc(e)}),i=_(e,`paragraph`),a=+(r.childCount>0&&r.child(0).type===i),o=+(r.childCount>0&&r.child(r.childCount-1).type===i);return new A(r.content,a,o)}function xr(e,t,n){let r=n.marks(),i=Ge.fromSchema(e),a=document.createElement(`div`);for(let n of t.split(/(?:\r\n?|\n)+/)){let t=a.appendChild(document.createElement(`p`));n&&t.appendChild(i.serializeNode(e.text(n,r)))}return We.fromSchema(e).parseSlice(a,{preserveWhitespace:!0,context:n})}function Sr(){let e;return m(new w({key:new T(`meowdown-plain-paste`),props:{clipboardTextParser:(t,n,r,i)=>{let{schema:a}=i.state;return r?xr(a,t,n):e=br(a,t)},transformPasted:t=>{if(e==null)return t;let n=e;return e=void 0,n}}}))}function Cr(e,t,n=0){let r=n,i=0;for(let n=0;n<e.length;n++)e.charCodeAt(n)===t?(i++,i>r&&(r=i)):i=0;return r}function wr(e,t=0){return Cr(e,96,t)}function Tr(e,t={}){let n=new kr;return t.frontmatter&&Er(e.attrs.frontmatter,n),Ar(e,n),n.finish()}function Er(e,t){e!==null&&(t.write(`---`),t.write(`
6
6
  `),e!==``&&(t.write(e),t.write(`
7
7
  `)),t.write(`---`),t.closeBlock())}const Dr=[``,`# `,`## `,`### `,`#### `,`##### `,`###### `];function Or(e,t){let n=e.attrs,r=n.setextUnderline;if(r!=null&&e.content.size>0&&n.level<=2){Pr(e,t);let i=n.level===1?`=`:`-`;t.write(`
8
8
  `+i.repeat(Math.max(1,r))),t.closeBlock();return}t.write(Dr[n.level]??`# `),Pr(e,t);let i=n.closingHashes;i!=null&&i>0&&t.write(` `+`#`.repeat(i)),t.closeBlock()}var kr=class{constructor(){this.parts=[],this.linePrefix=``,this.pendingFirst=null,this.atLineStart=!0,this.deferredBlankPrefix=null}write(e){if(e===``)return;if(this.emitDeferredBlankLine(),this.atLineStart&&=(this.parts.push(this.pendingFirst??this.linePrefix),this.pendingFirst=null,!1),!e.includes(`
@@ -26,14 +26,14 @@ import{Priority as e,Priority as t,createMarkBuilders as n,createNodeBuilders as
26
26
  `,`
27
27
  `)}function Kr(e,t,n){let{content:r,openStart:i,openEnd:a}=t;if(r.childCount===0||i===0&&a===0)return r;let o=y(n)&&Ur(n.$from),s=y(n)&&Wr(n.$to),c=r.childCount-1,l=[];return r.forEach((t,n,r)=>{r===0&&i>0&&!o?l.push(Jr(e,t)):r===c&&a>0&&!s?l.push(qr(e,t,a)):l.push(t)}),k.from(l)}function qr(e,t,n){if(I(t,`codeBlock`)||I(t,`table`))return Jr(e,t);if(I(t,`heading`)){let n=t.attrs;if(n.setextUnderline!=null)return Jr(e,t);if(n.closingHashes!=null)return t.type.create({...n,closingHashes:null},t.content,t.marks)}if(n<=1||t.childCount===0)return t;let r=t.childCount-1,i=t.child(r),a=qr(e,i,n-1);return a===i?t:t.copy(t.content.replaceChild(r,a))}function Jr(e,t){let n=_(e,`paragraph`),r=t.textBetween(0,t.content.size,`
28
28
  `,`
29
- `);return n.create(void 0,r?e.text(r):void 0)}function Yr(){return m(new w({key:new T(`meowdown-plain-text-copy`),props:{clipboardTextSerializer:(e,t)=>{let n=M(t.state)===`hide`?Xr(e):e;return Gr(t.state.schema,n,t.state.selection)}}}))}function Xr(e){return new A(Zr(e.content),e.openStart,e.openEnd)}function Zr(e){let t=[];return e.forEach(e=>{t.push(e.isTextblock?$r(e):Qr(e))}),k.from(t)}function Qr(e){return e.childCount>0?e.copy(Zr(e.content)):e}function $r(e){let t=e.type.schema,n=[];for(let r of zn(e)){let e=r.atom;if(e!=null){if(Pn(e,`mdWikilink`)){let r=e.attrs,i=r.display||r.target;i&&n.push(t.text(i))}else n.push(...r.children);continue}for(let e of r.children)Rn(e.marks)||n.push(e)}return e.copy(k.from(n))}function ei(){return b(or(),Yr(),yr(),gr(),Sr())}const R=new Map,ti=new Map,ni={math:`latex`};async function ri(e){let t=R.get(e);if(t!==void 0)return t;let n=Qe.matchLanguageName($e,ni[e]??e,!0);if(!n)return R.set(e,null),null;let r=n.support;if(!r)try{r=await n.load()}catch(t){return console.error(`[meowdown] Failed to load language "${e}":`,t),R.set(e,null),null}return R.set(e,r),r}function ii(e,t){let n=ti.get(e);if(n)return n;let r=nt({parse:e=>t.language.parser.parse(e.content),highlighter:et});return ti.set(e,r),r}const ai=e=>{let t=e.language?.trim();if(!t)return[];let n=R.get(t);return n===null?[]:n?ii(t,n)(e):ri(t).then(()=>void 0)};function oi(){return le({parser:ai,nodeTypes:[`codeBlock`]})}function si(e,t){let n=t.language.parser.parse(e),r=[];return tt(n,et,(e,t,n)=>{r.push([e,t,n])}),r}function ci(e,t){let n=t.trim();if(!n)return[];let r=R.get(n);return r===null?[]:r?si(e,r):ri(n).then(t=>t?si(e,t):[])}function li(){return f({type:`codeBlock`,attr:`fenceStyle`,default:null,toDOM:e=>e==null?null:[`data-fence-style`,e],parseDOM:e=>{let t=e.getAttribute(`data-fence-style`);return t===`tilde`||t===`indented`||t===`dollar`?t:null}})}function ui(){return f({type:`codeBlock`,attr:`fenceLength`,default:null,toDOM:e=>e==null?null:[`data-fence-length`,String(e)],parseDOM:e=>{let t=Mn(e.getAttribute(`data-fence-length`));return t!=null&&t>3?t:null}})}function di(e){return{language:e[1]||``,fenceStyle:`tilde`}}function fi(){return ot({regex:/^~~~(\S*)\s$/,type:`codeBlock`,attrs:di})}function pi(){return it({regex:/^~~~(\S*)$/,type:`codeBlock`,attrs:di})}function mi(){return it({regex:/^\$\$$/,type:`codeBlock`,attrs:()=>({language:`math`,fenceStyle:`dollar`})})}function hi(){return b(ce(),li(),ui(),fi(),pi(),mi())}function gi(e,t){return(n,r)=>{if(r){let i=E.create(n.doc,e,t);r(n.tr.setSelection(i))}return!0}}function _i(e,t,n){return(r,i)=>{if(i){let a=E.between(e,t,n);i(r.tr.setSelection(a))}return!0}}function vi(e){return(t,n)=>{if(!e.trim())return!1;let r=Z(e,{nodes:il(t.schema)}).content;if(r.childCount===0)return!1;let i=r.childCount===1&&I(r.child(0),`paragraph`)?new A(r,1,1):new A(r,0,A.maxOpen(r).openEnd);if(n){let e=t.tr,r=e.selection;(!y(r)||!r.empty)&&e.setSelection(E.near(r.$from)),n(e.replaceSelection(i).scrollIntoView())}return!0}}function yi(e){return(t,n)=>{if(!e)return!1;let r=t.selection.$from;if(r.parent.type.spec.code)return!1;if(n){let i=r.parentOffset,a=i===0?``:r.parent.textBetween(i-1,i),o=a!==``&&!/\s/u.test(a),s=t.tr.insertText(o?` ${e}`:e);st(s),n(s.scrollIntoView())}return!0}}function bi(){return gt(re({type:`paragraph`}),mt(),_t)}function xi(){return(e,t)=>(t&&t(e.tr.scrollIntoView()),!0)}function Si(){return s({insertMarkdown:vi,insertTrigger:yi,scrollIntoView:xi,selectText:gi,selectTextBetween:_i,turnIntoText:bi})}const Ci=new Set;function wi(e){for(let t of Ci)if(t!==e&&!t.isDestroyed&&t.editable&&t.dragging)return t}function Ti(e,t){let n=e.state.tr;if(t.node){if(e.state.doc.nodeAt(t.node.from)!==t.node.node)return;t.node.replace(n)}else n.deleteSelection();n.docChanged&&e.dispatch(n.setMeta(`uiEvent`,`drop`))}function Ei(e,t,n,r){if(r||n.size===0)return!1;let i=wi(e);if(!i)return!1;let a=i.dragging;if(!a||(ee?t.altKey:t.ctrlKey))return!1;i.dragging=null;let o=e.state.doc;return queueMicrotask(()=>{i.isDestroyed||e.isDestroyed||e.state.doc!==o&&Ti(i,a)}),!1}function Di(){return new w({key:new T(`meowdown-cross-editor-drag`),view:e=>(Ci.add(e),{destroy:()=>{Ci.delete(e)}}),props:{handleDrop:Ei}})}function Oi(){return x(m(Di()),t.high)}const ki=(e,t,n)=>{let{selection:r}=e;return r.empty||n?.composing?!1:(t?.(e.tr.setSelection(E.near(r.$head))),!0)};function Ai(){return x(l({Escape:ki}),t.low)}const ji=new w({props:{decorations:e=>{let{from:t,to:n,empty:r}=e.selection;if(!(r||ve(e).active===0))return O.create(e.doc,[D.inline(t,n,{class:`show`})])}}});function Mi(){return b(he(),me(),m(ji))}function Ni(){return f({type:`doc`,attr:`frontmatter`,default:null})}let Pi=-1,Fi=!1;typeof window<`u`&&(window.addEventListener(`compositionstart`,()=>{Fi=!0},{capture:!0,passive:!0}),window.addEventListener(`compositionend`,()=>{Fi=!1,Pi=Date.now()},{capture:!0,passive:!0}));function Ii(){return Fi||Pi>0&&Date.now()-Pi<=50}function Li(e,t){return t(e.state,e.dispatch,e)}function Ri(e,t){if(t<0||t+1>e.doc.content.size)return;let n=e.doc.resolve(t),r=n.parent.maybeChild(n.index());if(!(r==null||!r.isText))return r.marks}function z(e,t){let n=Ri(e,t);return n!=null&&n.some(e=>Fn.has(e.type.name))}function zi(e,t){if(t<0||t>e.doc.content.size)return!1;let n=e.doc.resolve(t);return n.parent.isTextblock&&!n.parent.type.spec.code}function B(e,t){if(!zi(e,t))return;let n=e.doc.resolve(t).start(),r=t;for(;r>n&&z(e,r-1);)r--;return r<t?{from:r,to:t}:void 0}function V(e,t){if(!zi(e,t))return;let n=e.doc.resolve(t).end(),r=t;for(;r<n&&z(e,r);)r++;return r>t?{from:t,to:r}:void 0}function Bi(e,t){return z(e,t-1)&&z(e,t)}function Vi(e,t){if(!Bi(e,t))return;let n=B(e,t);if(!n)return;let r=V(e,t);if(r)return{from:n.from,to:r.to}}function Hi(e,t,n){let r=Ri(e,t);return r!=null&&n.isInSet(r)}function Ui(e,t){let n=Ri(e,t);if(n==null)return;let r=g(e.schema,`mdPack`),i=n.filter(e=>e.type===r);if(i.length===0)return;let a=e.doc.resolve(t),o=a.start(),s=a.end(),c;for(let n of i){let r=t;for(;r>o&&Hi(e,r-1,n);)r--;let i=t+1;for(;i<s&&Hi(e,i,n);)i++;(c==null||i-r<c.to-c.from)&&(c={from:r,to:i})}return c}function Wi(e,t,n){let r=Ui(e,n===`from`?t.from:t.to-1);return r==null?!1:n===`from`?r.from===t.from:r.to===t.to}function Gi(e,t,n){let r=Wi(e,t,`from`),i=Wi(e,t,`to`);return r&&!i?t.from:i&&!r?t.to:n-t.from<=t.to-n?t.from:t.to}function Ki(e,t,n,r){if(!zi(e,n))return n;let i=Vi(e,n);if(i!=null)return r?Gi(e,i,n):n>=t?i.to:i.from;if(!r)return n;let a=B(e,n);if(a!=null&&Wi(e,a,`from`))return a.from;let o=V(e,n);return o!=null&&Wi(e,o,`to`)?o.to:n}function qi(e,t){if(!zi(e,t))return;let n=z(e,t-1),r=z(e,t);if(n!==r)return r?`left`:`right`}function Ji(e,t){let n=Ui(e,t);if(n==null)return[];let r=V(e,n.from),i=B(e,n.to),a=[];return i!=null&&a.push(i),r!=null&&(i==null||r.from!==i.from)&&a.push(r),a}const Yi=new T(`meowdown-hidden-run-snap`),Xi=new T(`meowdown-hidden-run-beforeinput`);function Zi(){return new w({key:Yi,appendTransaction:(e,t,n)=>{if(Ii()||M(n)!==`hide`)return null;let r=n.selection;if(!y(r))return null;let i=e.some(e=>e.getMeta(`pointer`)!=null);if(r.empty){let e=Ki(n,t.selection.head,r.head,i);return e===r.head?null:n.tr.setSelection(E.create(n.doc,e))}let a=Vi(n,r.from)?.from??r.from,o=Vi(n,r.to)?.to??r.to;if(a===r.from&&o===r.to)return null;let s=r.anchor===r.from?a:o,c=r.head===r.from?a:o;return n.tr.setSelection(E.create(n.doc,s,c))}})}const Qi=(e,t)=>{if(M(e)!==`hide`)return!1;let n=e.selection;if(!y(n)||!n.empty)return!1;let r=Ki(e,n.head,n.head,!0);return r===n.head||t?.(e.tr.setSelection(E.create(e.doc,r))),!1};function $i(e){return(t,n)=>{if(M(t)!==`hide`)return!1;let r=t.selection;if(!y(r)||!r.empty)return!1;let i=r.$head;if(!i.parent.isTextblock||i.parent.type.spec.code)return!1;let a=e===-1?B(t,r.head):V(t,r.head);if(a==null)return!1;let o=Ji(t,e===-1?a.to-1:a.from),s=t.tr;if(o.length===0)s.delete(a.from,a.to);else for(let e of o)s.delete(e.from,e.to);return n?.(s),!0}}const ea=$i(-1),ta=$i(1);function na(){return new w({key:Xi,props:{handleDOMEvents:{beforeinput:(e,t)=>{if(e.composing)return!1;let n=t.inputType===`deleteContentBackward`?ea:t.inputType===`deleteContentForward`?ta:void 0;return n==null||!Li(e,n)?!1:(t.preventDefault(),!0)}}}})}function ra(){return b(m(Zi()),m(na()),x(l({Enter:Qi,Backspace:ea,Delete:ta}),t.highest))}function ia(){return f({type:`horizontalRule`,attr:`marker`,default:null,toDOM:e=>e?[`data-hr-marker`,e]:null,parseDOM:e=>e.getAttribute(`data-hr-marker`)})}function aa(){return b(vt(),ia())}function oa(){return p({name:`htmlComment`,group:`block`,atom:!0,selectable:!1,attrs:{content:{default:``}},toDOM:e=>[`div`,{"data-html-comment":e.attrs.content,style:`display: none`}],parseDOM:[{tag:`div[data-html-comment]`,getAttrs:e=>({content:e.getAttribute(`data-html-comment`)??``})}]})}function sa(e){let[t,n,r]=e;return[t,n,r.map(e=>e.toJSON())]}function ca(e,t){let[n,r,i]=t;return[n,r,i.map(t=>Ke.fromJSON(e,t))]}function la(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(!e[n].eq(t[n]))return!1;return!0}function ua(e,t){let n=e.content.size,r;for(let[i,a,o]of t){if(i>=a)continue;let t=Math.max(0,Math.min(i,n)),s=Math.max(t,Math.min(a,n));if(t>=s)continue;let c=Ke.setFrom(o);e.nodesBetween(t,s,(n,i)=>{if(!n.isText)return!0;let a=Math.max(t,i),o=Math.min(s,i+n.nodeSize);if(a>=o||la(n.marks,c))return!1;r??=new Dt(e);for(let e of n.marks)r.removeMark(a,o,e);for(let e of c)r.addMark(a,o,e);return!1})}return Et.ok(r?.doc??e)}function da(e,t){let n=e.content.size,r=[...t].filter(([e,t])=>e<t&&e<n).sort((e,t)=>e[0]-t[0]);if(r.length===0)return Et.ok(e);let i=r.map(([,,e])=>Ke.setFrom(e)),a=Math.max(0,r[0][0]),o=0;for(let[,e]of r)e>o&&(o=e);if(o=Math.min(o,n),a>=o)return Et.ok(e);let s=0;function c(e,t){let n=t+e.nodeSize;for(;s<r.length&&r[s][1]<=t;)s++;let a=[],o=t,c=!1;for(let t=s;t<r.length;t++){let[s,l]=r[t];if(s>=n)break;let u=Math.max(s,o),d=Math.min(l,n);if(u>=d)continue;u>o&&a.push({from:o,to:u,marks:void 0});let f=i[t],p=!la(e.marks,f);p&&(c=!0),a.push({from:u,to:d,marks:p?f:void 0}),o=d}if(c)return o<n&&a.push({from:o,to:n,marks:void 0}),a.map(n=>{let r=e.cut(n.from-t,n.to-t);return n.marks==null?r:r.mark(n.marks)})}function l(e,t){let n,r=t;for(let t=0;t<e.childCount;t++){let i=e.child(t),s=r+i.nodeSize,u=i;if(s>a&&r<o){if(i.isText)u=c(i,r)??i;else if(i.childCount>0){let e=l(i,r+1);e!=null&&(u=i.copy(e))}}if(u!==i&&n==null){n=[];for(let r=0;r<t;r++)n.push(e.child(r))}n!=null&&(Array.isArray(u)?n.push(...u):n.push(u)),r=s}return n==null?void 0:k.fromArray(n)}let u=l(e,0);return Et.ok(u==null?e:e.copy(u))}var fa=class e extends Tt{constructor(e){super(),this.chunks=e}apply(e){return this.chunks.length===0?Et.ok(e):this.chunks.length<=32?ua(e,this.chunks):da(e,this.chunks)}invert(e){if(this.chunks.length===0)return pa;let t=this.chunks[0][0],n=this.chunks[0][1];for(let[,e]of this.chunks)e>n&&(n=e);let r=e.content.size,i=Math.max(0,Math.min(t,r)),a=Math.max(i,Math.min(n,r));return new wt(i,a,e.slice(i,a),!1)}map(e){return null}toJSON(){return{stepType:`batchSetMark`,chunks:this.chunks.map(sa)}}static fromJSON(t,n){let r=n.chunks;return new e(r.map(e=>ca(t,e)))}};Tt.jsonID(`batchSetMark`,fa);const pa=new fa([]),ma=/^<!--\s*(\{[^}]*\})\s*-->$/,ha=/<!--\s*\{[^}]*\}\s*-->$/;function ga(e){let t=ma.exec(e.trim());if(!t)return;let n;try{n=JSON.parse(t[1])}catch{return}if(!Ee(n))return;let r=_a(n.width),i=_a(n.height);if(!(!r&&!i))return{width:r,height:i}}function _a(e){if(typeof e==`number`&&Number.isFinite(e)&&e>0)return Math.round(e)}function va(e){return`<!-- ${JSON.stringify(e)} -->`}function ya(e){return e.replace(ha,``)}function ba(e){return kt(e)}function xa(e){if(e.length>1024)return!1;let t=e.search(/\S/);return t<0||e.charCodeAt(t)!==91?!1:e.includes(`]:`,t+1)}function Sa(e){if(!xa(e))return;let t=Se.parse(e).topNode.firstChild;if(t?.type.id===S.LinkReference&&t.nextSibling==null)return t}function Ca(e){return Ot(e.startsWith(`<`)&&e.endsWith(`>`)?e.slice(1,-1):e)}function wa(e){return e.length<2?``:Ot(e.slice(1,-1))}function Ta(e){let t=Sa(e);if(t==null)return;let n=t.getChild(`LinkLabel`),r=t.getChild(`URL`);if(n==null||r==null)return;let i=ba(e.slice(n.from+1,n.to-1));if(i===``)return;let a=t.getChild(`LinkTitle`);return{key:i,href:Ca(e.slice(r.from,r.to)),title:a==null?``:wa(e.slice(a.from,a.to))}}function Ea(e,t){return e==null?!0:I(e,`tableCell`)||I(e,`tableHeaderCell`)?!1:!I(e,`list`)||e.attrs.kind!==`task`||t>0}function Da(e,t,n){return I(e,`paragraph`)&&Ea(t,n)}const H=new WeakMap;function Oa(e,t,n){if(!Da(e,t,n))return;if(H.has(e))return H.get(e);let r=Ta(e.textContent);return H.set(e,r),r}function ka(e,t,n){return Oa(e,t,n)!=null}function Aa(e){let t=new Map,n=new Set;return e.descendants((e,r,i,a)=>{if(e.type.spec.code)return!1;if(!e.isTextblock)return!0;let o=Oa(e,i,a);return o!=null&&(n.add(e),t.has(o.key)||t.set(o.key,o)),!1}),{definitions:t,nodes:n}}function ja(e,t,n){let r=e.content.size,i=!1;return e.nodesBetween(Math.max(0,t-1),Math.min(r,n+1),(e,t,n,r)=>i||e.type.spec.code?!1:e.isTextblock?(Da(e,n,r)&&(H.has(e)?H.get(e)!=null:xa(e.textContent))&&(i=!0),!1):!0),i}function Ma(e){if(e.steps.some(e=>e instanceof xt&&e.attr===`kind`))return!0;for(let[t,n]of e.mapping.maps.entries()){let r=e.docs[t],i=t+1<e.docs.length?e.docs[t+1]:e.doc,a=!1;if(n.forEach((e,t,n,o)=>{a||=ja(r,e,t)||ja(i,n,o)}),a)return!0}return!1}function Na(e,t,n){return!t.docChanged||!Ma(t)?e:Aa(n)}const Pa=/^(\d+)(?:x(\d+))?$/i;function Fa(e){if(!e)return null;let t=Number.parseInt(e,10);return Number.isSafeInteger(t)&&t>0?t:null}function Ia(e){let t=e.replace(/^!\[\[/,``).replace(/\]\]$/,``),n=t.lastIndexOf(`|`);if(n<0)return{target:t.trim(),display:``,width:null,height:null};let r=t.slice(0,n).trim(),i=t.slice(n+1).trim(),a=Pa.exec(i);if(!a)return{target:r,display:i,width:null,height:null};let o=Fa(a[1]),s=Fa(a[2]);return o==null||a[2]&&s==null?{target:r,display:i,width:null,height:null}:{target:r,display:``,width:o,height:s}}function La(e,t,n){return`![[${e}|${Math.round(t)}x${Math.round(n)}]]`}function Ra(e){let t=e.split(/[?#]/,1)[0],n=t.split(/[/\\]/).findLast(Boolean)??t;try{return decodeURIComponent(n)}catch{return n}}function za(e){let t=e.replace(/^\[\[/,``).replace(/\]\]$/,``),n=t.indexOf(`|`);return n<0?{target:t.trim(),display:``}:{target:t.slice(0,n).trim(),display:t.slice(n+1).trim()}}function Ba(){return e=>{let t=e.attrs,n=document.createElement(`span`);n.className=`md-wikilink-view md-atom-view`;let r=document.createElement(`span`);r.className=`md-wikilink-view-preview md-atom-view-preview`,r.contentEditable=`false`,r.dataset.testid=`wikilink`,n.appendChild(r);let i=document.createElement(`span`);i.className=`md-wikilink-view-label`,i.contentEditable=`false`,i.textContent=t.display||t.target,r.appendChild(i);let a=document.createElement(`span`);return a.className=`md-wikilink-view-content md-atom-view-content`,n.appendChild(a),{dom:n,contentDOM:a,ignoreMutation:e=>!a.contains(e.target)}}}function Va(){return d({name:`mdWikilink`,constructor:Ba()})}const Ha=new Map([[S.Emphasis,`mdEm`],[S.StrongEmphasis,`mdStrong`],[S.InlineCode,`mdCode`],[S.Strikethrough,`mdDel`],[S.Highlight,`mdHighlight`],[S.EmphasisMark,`mdMark`],[S.CodeMark,`mdMark`],[S.LinkMark,`mdMark`],[S.StrikethroughMark,`mdMark`],[S.HighlightMark,`mdMark`],[S.URL,`mdLinkUri`],[S.LinkTitle,`mdLinkTitle`],[S.Hashtag,`mdTag`],[S.WikilinkMark,`mdMark`]]);function Ua(e,t,n){return Wa(e,t,n)}function Wa(e,t,n,r){let i=Ce(t),a=[];return Ka(i,[],0,t.length,t,e,a,n,r),a}function Ga(e){return e.slice(1,-1).replaceAll(/\\(.)/g,`$1`)}function Ka(e,t,n,r,i,a,o,s,c){let l=n;for(let n=0;n<e.length;n++){let r=e[n];if(r.from>l&&U(o,l,r.from,t),r.type===S.Image){let u=ro(r,e[n+1],i);io(r,t,i,a,o,s,c,u),u&&n++,l=u?u.to:r.to;continue}qa(r,t,i,a,o,s,c),l=r.to}l<r&&U(o,l,r,t)}function qa(e,t,n,r,i,a,o){switch(e.type){case S.Link:return Xa(e,t,n,r,i,a,o);case S.Wikilink:return oo(e,t,n,r,i);case S.WikiEmbed:return so(e,t,n,r,i,a);case S.InlineMath:return ao(e,t,n,r,i);case S.URL:return Ya(e,t,n,r,i);default:return Ja(e,t,n,r,i,a,o)}}function Ja(e,t,n,r,i,a,o){let s=e.type,c;s===S.Emphasis?c=`italic`:s===S.StrongEmphasis?c=`bold`:s===S.InlineCode?c=`code`:s===S.Strikethrough?c=`strike`:s===S.Highlight?c=`highlight`:s===S.Autolink&&(c=`autolink`);let l=c?[...t,r.mdPack.create({key:c})]:t,u=Ha.get(s),d=u?[...l,r[u].create()]:l;e.children.length===0?U(i,e.from,e.to,d):Ka(e.children,d,e.from,e.to,n,r,i,a,o)}function Ya(e,t,n,r,i){let a=be(n.slice(e.from,e.to)),o=a?r.mdLinkText.create({href:a}):r.mdLinkUri.create();U(i,e.from,e.to,[...t,o])}function Xa(e,t,n,r,i,a,o){let s=Za(e),c=Qa(s,n,o);if(c==null){$a(e,t,n,r,i,a,o);return}let l=to(s,c,t,n,r,a);if(l){U(i,e.from,e.to,l);return}no(e,s,c,t,n,r,i,a,o)}function Za(e){let t=-1,n=-1,r=null,i=null,a=null,o=0,s=0;for(let c of e.children){let e=c.type;e===S.LinkMark?(s++,o++,o===1&&(t=c.to),o===2&&(n=c.from)):r==null&&e===S.URL?r=c:i==null&&e===S.LinkTitle?i=c:a==null&&e===S.LinkLabel&&(a=c)}return{labelFrom:t,labelTo:n,urlNode:r,titleNode:i,referenceLabelNode:a,linkMarkCount:s}}function Qa(e,t,n){if(e.linkMarkCount>=3)return{href:e.urlNode==null?``:t.slice(e.urlNode.from,e.urlNode.to),title:e.titleNode==null?``:Ga(t.slice(e.titleNode.from,e.titleNode.to)),isReference:!1};if(e.labelFrom<0||e.labelTo<0||n?.isReferenceDefinition===!0)return;let r=t.slice(e.labelFrom,e.labelTo),i=ba(e.referenceLabelNode==null?r:t.slice(e.referenceLabelNode.from+1,e.referenceLabelNode.to-1)||r);if(i===``)return;n?.referencedKeys?.add(i);let a=n?.referenceDefinitions?.get(i);if(a!=null)return{href:a.href,title:a.title,isReference:!0}}function $a(e,t,n,r,i,a,o){Ka(e.children.filter(e=>e.type!==S.LinkMark&&e.type!==S.LinkLabel),t,e.from,e.to,n,r,i,a,o)}function eo(e){let t=e.split(/[?#]/,1)[0],n=t.split(/[/\\]/).findLast(Boolean)??t;try{return decodeURIComponent(n)}catch{return n}}function to(e,t,n,r,i,a){let o=a?.resolveFileLink;if(!o)return;let{labelFrom:s,labelTo:c}=e;if(s<0||c<0)return;let{href:l,title:u}=t;if(!l)return;let d=r.slice(s,c);if(!o({href:l,label:d,title:u}))return;let f=d||eo(l);return[...n,i.mdFile.create({href:l,name:f,title:u})]}function no(e,t,n,r,i,a,o,s,c){let{labelTo:l}=t,{href:u,title:d,isReference:f}=n,p=a.mdLinkText.create({href:u}),m=e=>l>=0&&e<l,h=f?{href:u,title:d,reference:!0}:{href:u,title:d},g=a.mdPack.create({key:`link`,data:h}),_=[...r,g],v=e.from;for(let t of e.children){if(t.from>v){let e=m(v)?[..._,p]:_;U(o,v,t.from,e)}let e=m(t.from)?[..._,p]:_;if(t.type===S.Wikilink){oo(t,e,i,a,o),v=t.to;continue}if(t.type===S.WikiEmbed){so(t,e,i,a,o,s),v=t.to;continue}if(t.type===S.Image){io(t,e,i,a,o,s,c),v=t.to;continue}if(f&&t.type===S.LinkLabel){U(o,t.from,t.to,[...e,a.mdMark.create()]),v=t.to;continue}let n=Ha.get(t.type),r=n?[...e,a[n].create()]:e;t.children.length===0?U(o,t.from,t.to,r):Ka(t.children,r,t.from,t.to,i,a,o,s,c),v=t.to}v<e.to&&U(o,v,e.to,_)}function ro(e,t,n){if(!t||t.type!==S.Comment||t.from!==e.to)return;let r=ga(n.slice(t.from,t.to));if(r)return{magic:r,to:t.to}}function io(e,t,n,r,i,a,o,s){let c=Qa(Za(e),n,o);if(c==null){$a(e,t,n,r,i,a,o),s!=null&&U(i,e.to,s.to,t);return}let l=e.children.filter(e=>e.type===S.LinkMark),u=c.href,d=l.length>=2?n.slice(l[0].to,l[1].from):``,f=c.title,p=s?.magic.width??null,m=s?.magic.height??null,h=s?.to??e.to;U(i,e.from,h,[...t,r.mdImage.create({src:u,alt:d,title:f,width:p,height:m,syntax:null,wikiTarget:null})])}function ao(e,t,n,r,i){let a=e.children.filter(e=>e.type===S.InlineMathMark);if(a.length<2){U(i,e.from,e.to,t);return}let o=n.slice(a[0].to,a[1].from),s=[...t,r.mdPack.create({key:`math`}),r.mdMath.create({formula:o})];U(i,e.from,a[0].to,[...s,r.mdMark.create()]),U(i,a[0].to,a[1].from,s),U(i,a[1].from,e.to,[...s,r.mdMark.create()])}function oo(e,t,n,r,i){let{target:a,display:o}=za(n.slice(e.from,e.to));U(i,e.from,e.to,[...t,r.mdWikilink.create({target:a,display:o})])}function so(e,t,n,r,i,a){let o=Ia(n.slice(e.from,e.to)),s=a?.resolveWikiEmbed?.(o);if(!s){U(i,e.from,e.to,t);return}if(s.kind===`image`){let n=s.src??o.target,a=(s.alt??o.display)||Ra(o.target);U(i,e.from,e.to,[...t,r.mdImage.create({src:n,alt:a,title:``,width:o.width,height:o.height,syntax:`wikiEmbed`,wikiTarget:o.target})]);return}if(s.kind===`file`){let n=s.href??o.target,a=(s.name??o.display)||Ra(o.target);U(i,e.from,e.to,[...t,r.mdFile.create({href:n,name:a,title:s.title??``})]);return}let c=s.target??o.target,l=s.display??o.display;U(i,e.from,e.to,[...t,r.mdWikilink.create({target:c,display:l})])}function U(e,t,n,r){if(t>=n)return;let i=e.at(-1);if(i&&i[1]===t&&la(i[2],r)){e[e.length-1]=[i[0],n,i[2]];return}e.push([t,n,r])}const co=`inline-marks-applied`,lo=`inline-marks-trigger`,uo=`inline-marks-restyle`,W=new T(`inline-mark`),fo=new Set;let po=0,mo=0;function ho(e,t){let n=1/0,r=-1/0;for(let t of e)for(let e of t.mapping.maps)e.forEach((e,t,i,a)=>{i<n&&(n=i),a>r&&(r=a)});let i=t.doc.content.size;return n>r?{from:0,to:i}:{from:Math.max(0,n),to:Math.min(i,r)}}function go(e){let t=new WeakMap;function n(e,t){for(let n of e)if(t.has(n))return!0;return!1}function r(e,t){let n=[];for(let[r,i,a]of e)n.push([r+t,i+t,a]);return n}function i(i,a,o,s,c,l){let u=t.get(i),d;if(u?.isReferenceDefinition===l&&!n(u.referencedKeys,c))mo++,d=u.chunks;else{po++;let n=new Set;d=Wa(nl(o),i.textContent,e,{referenceDefinitions:s.definitions,isReferenceDefinition:l,referencedKeys:n}),t.set(i,{isReferenceDefinition:l,referencedKeys:n,chunks:d})}return a===0?d:r(d,a)}function a(e,r,a,o){let s=[],c=[],l=(l,u,d,f)=>{if(l.type.spec.code)return!1;if(!l.isTextblock)return!0;if(l.childCount===0)return!1;let p=t.get(l),m=u<=r.to&&u+l.nodeSize>=r.from,h=p==null||n(p.referencedKeys,o);if(!m&&!h)return!1;let g=i(l,u+1,e.schema,a,o,ka(l,d,f));g.length>0&&s.push(...g);let _=t.get(l);return _!=null&&c.push({position:u,cached:_}),!1};return o.size===0?e.doc.nodesBetween(r.from,r.to,l):e.doc.descendants(l),{chunks:s,processed:c}}function o(e,n){for(let{position:r,cached:i}of n){let n=e.nodeAt(r);n?.isTextblock&&t.set(n,i)}}return new w({key:W,state:{init(e,t){return{references:Aa(t.doc),pendingReferenceKeys:fo}},apply(e,t,n,r){if(e.getMeta(uo)===!0)return t.pendingReferenceKeys.size===0?t:{references:t.references,pendingReferenceKeys:fo};if(e.getMeta(co))return t;let i=Na(t.references,e,r.doc);if(i===t.references)return t;let a=yo(t.references.definitions,i.definitions);return a.size===0?{references:i,pendingReferenceKeys:t.pendingReferenceKeys}:{references:i,pendingReferenceKeys:bo(t.pendingReferenceKeys,a)}}},appendTransaction(e,t,n){for(let t of e)if(t.getMeta(co))return null;let r=e.some(e=>e.getMeta(uo));if(!(r||e.some(e=>e.docChanged||e.getMeta(lo))))return null;let i=W.getState(n)?.references;if(i==null)return null;let s=r?W.getState(t)?.pendingReferenceKeys??fo:fo,{chunks:c,processed:l}=a(n,r?{from:0,to:0}:ho(e,n),i,s);if(c.length===0)return null;let u=n.tr.step(new fa(c));return o(u.doc,l),u.setMeta(co,!0),u.setMeta(`addToHistory`,!1),u},view(e){e.dispatch(_o(e.state));let t,n=e=>{t=void 0,!e.isDestroyed&&(W.getState(e.state)?.pendingReferenceKeys.size??0)!==0&&e.dispatch(e.state.tr.setMeta(uo,!0))};return{update(e,r){let i=W.getState(e.state);if((i?.pendingReferenceKeys.size??0)===0){t!=null&&clearTimeout(t),t=void 0;return}(t==null||W.getState(r)!==i)&&(t!=null&&clearTimeout(t),t=setTimeout(()=>n(e),200))},destroy(){t!=null&&clearTimeout(t)}}}})}function _o(e){return e.tr.setMeta(lo,!0)}function vo(e,t){return e?.href===t?.href&&e?.title===t?.title}function yo(e,t){if(e==null)return new Set(t.keys());let n=new Set;for(let[r,i]of e)vo(i,t.get(r))||n.add(r);for(let[r,i]of t)vo(i,e.get(r))||n.add(r);return n}function bo(e,t){if(e.size===0)return t;let n=new Set(e);for(let e of t)n.add(e);return n}function xo(e){return m(go(e))}function So(){return u({name:`mdImage`,inclusive:!1,attrs:{src:{default:``},alt:{default:``},title:{default:``},width:{default:null},height:{default:null},syntax:{default:null},wikiTarget:{default:null}},toDOM:()=>[`span`,{class:`md-image`},0],parseDOM:[{tag:`span.md-image`}]})}function Co(){return u({name:`mdMark`,inclusive:!1,toDOM:()=>[`span`,{class:`md-mark`},0],parseDOM:[{tag:`span.md-mark`}]})}function wo(){return u({name:`mdEm`,toDOM:()=>[`em`,0],parseDOM:[{tag:`em`}]})}function To(){return u({name:`mdStrong`,toDOM:()=>[`strong`,0],parseDOM:[{tag:`strong`}]})}function Eo(){return u({name:`mdCode`,toDOM:()=>[`code`,0],parseDOM:[{tag:`code`}]})}function Do(){return u({name:`mdLinkText`,inclusive:!1,attrs:{href:{default:``}},toDOM:e=>[`a`,{class:`md-link`,href:e.attrs.href},0],parseDOM:[{tag:`a`,getAttrs:e=>({href:e.getAttribute(`href`)??``})}]})}function Oo(){return u({name:`mdLinkUri`,inclusive:!1,toDOM:()=>[`span`,{class:`md-link-uri`},0],parseDOM:[{tag:`span.md-link-uri`}]})}function ko(){return u({name:`mdLinkTitle`,inclusive:!1,toDOM:()=>[`span`,{class:`md-link-title`},0],parseDOM:[{tag:`span.md-link-title`}]})}function Ao(){return u({name:`mdDel`,toDOM:()=>[`del`,0],parseDOM:[{tag:`del`}]})}function jo(){return u({name:`mdHighlight`,toDOM:()=>[`mark`,0],parseDOM:[{tag:`mark`}]})}function Mo(){return u({name:`mdTag`,toDOM:()=>[`span`,{class:`md-tag`},0],parseDOM:[{tag:`span.md-tag`}]})}function No(){return u({name:`mdWikilink`,inclusive:!1,attrs:{target:{default:``},display:{default:``}},toDOM:()=>[`span`,{class:`md-wikilink`},0],parseDOM:[{tag:`span.md-wikilink`}]})}function Po(){return u({name:`mdFile`,inclusive:!1,attrs:{href:{default:``},name:{default:``},title:{default:``}},toDOM:()=>[`span`,{class:`md-file`},0],parseDOM:[{tag:`span.md-file`}]})}function Fo(){return u({name:`mdMath`,inclusive:!1,attrs:{formula:{default:``}},toDOM:()=>[`span`,{class:`md-math`},0],parseDOM:[{tag:`span.md-math`}]})}function Io(){return u({name:`mdPack`,excludes:``,inclusive:!1,attrs:{key:{},data:{default:null}},toDOM:e=>[`span`,{class:`md-pack`,"data-key":e.attrs.key},0],parseDOM:[{tag:`span.md-pack`}]})}function Lo(){return b(Co(),wo(),To(),Eo(),Do(),Oo(),ko(),Ao(),jo(),Mo(),No(),So(),Po(),Fo(),Io())}const G={em:{node:S.Emphasis,delim:`*`},strong:{node:S.StrongEmphasis,delim:`**`},code:{node:S.InlineCode,delim:"`"},del:{node:S.Strikethrough,delim:`~~`},highlight:{node:S.Highlight,delim:`==`}},Ro=new Set([S.EmphasisMark,S.CodeMark,S.LinkMark,S.StrikethroughMark,S.HighlightMark]);function zo(e){return[e.children[0],e.children.at(-1)]}function Bo(e){let{type:t,children:n}=e;if(t===S.Emphasis||t===S.StrongEmphasis||t===S.Strikethrough||t===S.Highlight)return[n[0].to,n.at(-1).from];if(t===S.Link||t===S.Image){let e=n.find((e,t)=>t>0&&e.type===S.LinkMark);return e?[n[0].to,e.from]:null}return null}function Vo(e,t,n){for(let r of e){if(r.to<=t||r.from>=n||t<=r.from&&r.to<=n)continue;let i=Bo(r);return i&&i[0]<=t&&n<=i[1]?Vo(r.children,t,n):Vo(e,Math.min(t,r.from),Math.max(n,r.to))}return[t,n]}function Ho(e,t,n){for(let r of e)if(!(r.to<=t||r.from>=n)&&(t>r.from||r.to>n))return Ho(e,Math.min(t,r.from),Math.max(n,r.to));return[t,n]}function Uo(e,t,n){for(;t<n&&C(e.charCodeAt(t));)t++;for(;n>t&&C(e.charCodeAt(n-1));)n--;return[t,n]}function Wo(e,t,n,r){let i=ye(Ce(e),e=>e.type===r.node||Ro.has(e.type));for(let r=t;r<n;r++)if(!C(e.charCodeAt(r))&&i.every(e=>!(e.from<=r&&r<e.to)))return!1;return!0}function Go(e,t,n,r,i){let a=Ce(e),o=ye(a,e=>e.type===r.node);return i?Jo(e,o,t,n):Ko(e,a,o,t,n,r)}function Ko(e,t,n,r,i,a){for(let e=0;e!==i-r;){e=i-r,[r,i]=Vo(t,r,i);for(let e of n)e.to===r&&(r=e.from),e.from===i&&(i=e.to)}let o=[];for(let e of n)if(r<=e.from&&e.to<=i){let[t,n]=zo(e);o.push({from:t.from,to:t.to,insert:``}),o.push({from:n.from,to:n.to,insert:``})}let[s,c]=qo(e,r,i,o,a);return o.push({from:r,to:r,insert:s},{from:i,to:i,insert:c}),o}function qo(e,t,n,r,i){if(i.node!==S.InlineCode)return[i.delim,i.delim];let a=e.slice(t,n);for(let e of[...r].sort((e,t)=>t.from-e.from))a=a.slice(0,e.from-t)+a.slice(e.to-t);let o="`".repeat(wr(a)+1),s=a.startsWith("`")||a.endsWith("`")?` `:``;return[o+s,s+o]}function Jo(e,t,n,r){let i=[];for(let a of t){if(a.to<=n||a.from>=r)continue;let[t,o]=zo(a),s=Math.max(n,t.to),c=Math.min(r,o.from);for(s>=c&&([s,c]=[t.to,o.from]),[s,c]=Ho(a.children.slice(1,-1),s,c);s>t.to&&C(e.charCodeAt(s-1));)s--;for(;c<o.from&&C(e.charCodeAt(c));)c++;s>t.to?i.push({from:s,to:s,insert:e.slice(o.from,o.to)}):i.push({from:t.from,to:t.to,insert:``}),c<o.from?i.push({from:c,to:c,insert:e.slice(t.from,t.to)}):i.push({from:o.from,to:o.to,insert:``})}return i}function Yo(e,t,n){let{delim:r}=n,i=r.length;if(e.slice(t-i,t)===r&&e.startsWith(r,t)&&e[t-i-1]!==r[0]&&e[t+i]!==r[0])return{kind:`unwrap`,from:t-i,to:t+i};let a=Ce(e),o=ye(a,e=>e.type===n.node).findLast(e=>e.from<=t&&t<=e.to);if(o){let[e,n]=zo(o);return{kind:`move`,pos:t===o.from?e.to:t===o.to?n.from:o.to}}return Xo(a,t)||e[t-1]===r[0]||e[t]===r[0]?null:{kind:`insert`,pos:t}}function Xo(e,t){for(let n of e)if(n.from<t&&t<n.to){let e=Bo(n);return!e||t<e[0]||t>e[1]||Xo(n.children,t)}return!1}function K(e){return(t,n)=>{if(t.selection.empty)return Zo(e,t,n);let{from:r,to:i,anchor:a,head:o}=t.selection,s=[];t.doc.nodesBetween(r,i,(t,n)=>{if(t.type.spec.code)return!1;if(!t.isTextblock)return!0;let a=t.textContent,o=n+1,[c,l]=Uo(a,Math.max(r-o,0),Math.min(i-o,a.length));return c<l&&s.push({text:a,base:o,from:c,to:l,active:Wo(a,c,l,e)}),!1});let c=s.length>0&&s.every(e=>e.active),l=s.filter(e=>c||!e.active).flatMap(t=>Go(t.text,t.from,t.to,e,c).map(e=>({from:e.from+t.base,to:e.to+t.base,insert:e.insert})));if(l.length===0)return!1;if(n){let e=t.tr;l.sort((e,t)=>t.from-e.from||t.to-e.to);for(let t of l)t.insert?e.insertText(t.insert,t.from,t.to):e.delete(t.from,t.to);e.setSelection(E.create(e.doc,e.mapping.map(a,a<=o?1:-1),e.mapping.map(o,o<a?1:-1))),n(e.scrollIntoView())}return!0}}function Zo(e,t,n){let{$from:r}=t.selection,i=r.parent;if(!i.isTextblock||i.type.spec.code)return!1;let a=Yo(i.textContent,r.parentOffset,e);if(!a)return!1;if(n){let i=r.start(),o=t.tr;a.kind===`unwrap`&&o.delete(i+a.from,i+a.to),a.kind===`move`&&o.setSelection(E.create(o.doc,i+a.pos)),a.kind===`insert`&&(o.insertText(e.delim+e.delim,i+a.pos),o.setSelection(E.create(o.doc,i+a.pos+e.delim.length))),n(o.scrollIntoView())}return!0}function Qo(){return s({toggleEm:()=>K(G.em),toggleStrong:()=>K(G.strong),toggleCode:()=>K(G.code),toggleDel:()=>K(G.del),toggleHighlight:()=>K(G.highlight)})}function $o(){return l({"Mod-b":K(G.strong),"Mod-i":K(G.em),"Mod-e":K(G.code),"Mod-Shift-x":K(G.del),"Mod-Shift-h":K(G.highlight)})}function es(){return b(Qo(),$o())}function ts(e,t,n){let r;return e.doc.nodesBetween(t.from,t.to,(e,i)=>(e.isText&&e.marks.some(e=>Pn(e,n))&&(r={from:Math.max(i,t.from),to:Math.min(i+e.nodeSize,t.to)}),!0)),r}function q(e,t){let n=j(e,t,`mdLinkText`),r=j(e,t,`mdPack`,{key:`link`})??j(e,t,`mdPack`,{key:`autolink`}),i=r??n;if(!i)return;let a=r?.mark.attrs,o=n?.mark.attrs?.href??``;if(!r||a?.key!==`link`){let t={from:i.from,to:i.to};return{unit:t,text:a?.key===`autolink`?ts(e,t,`mdLinkText`)??{from:i.from+1,to:i.to-1}:t,href:o,title:``}}if(a.data.reference===!0){let e=n==null?{from:i.from,to:i.to}:{from:n.from+1,to:n.to};return{unit:{from:i.from,to:i.to},text:e,href:a.data.href,title:a.data.title}}let s=ts(e,i,`mdLinkUri`),c=s?s.from-2:i.to-3,l=s?s.from:i.to-1,u={from:i.from+1,to:c};return{unit:{from:i.from,to:i.to},text:u,label:u,dest:{from:l,to:i.to-1},href:a.data.href,title:a.data.title}}function ns(e){let t=e.trim();return t?be(t)??t:``}function rs(e,t){return e+(t?` "${t.replaceAll(/(["\\])/g,String.raw`\$1`)}"`:``)}function is(e){let{selection:t}=e,{$from:n,$to:r,empty:i}=t;if(i||!n.sameParent(r)||!y(t))return;let a=n.parent;if(!a.isTextblock||a.type.spec.code)return;let o=n.start(),[s,c]=Uo(a.textContent,n.parentOffset,r.parentOffset);if(!(s>=c))return{from:o+s,to:o+c}}function as({href:e,title:t,wrapText:n=!0}={}){return(r,i)=>{let a=is(r);if(!a)return!1;if(i){let{from:o,to:s}=a,c=r.tr,l=`](${rs(ns(e??``),t??``)})`;c.insertText(l,s).insertText(`[`,o);let u=s+1+l.length;c.setSelection(n?E.create(c.doc,o,u):E.create(c.doc,u)),c.scrollIntoView(),i(c)}return!0}}function os(e){return(t,n)=>{let r=q(t,t.selection.from);if(!r?.dest)return!1;let i=rs(ns(e.href??r.href),e.title??r.title);return n&&n(t.tr.insertText(i,r.dest.from,r.dest.to).scrollIntoView()),!0}}function ss(){return(e,t)=>{let n=q(e,e.selection.from);return n?.label?(t&&t(e.tr.delete(n.label.to,n.unit.to).delete(n.unit.from,n.label.from).scrollIntoView()),!0):!1}}function cs(){return s({insertLink:as,updateLink:os,removeLink:ss})}function ls(e){return(t,n,r)=>{let i=q(t,t.selection.from);if(i){if(i.label==null||i.dest==null)return!1;if(n&&r){let{unit:{from:a,to:o}}=i;n(t.tr.setSelection(E.create(t.doc,a,o)).scrollIntoView()),r.focus(),e({from:a,to:o,link:i})}return!0}let a=is(t);if(a){if(n&&r){let{from:i,to:o}=a;n(t.tr.setSelection(E.create(t.doc,i,o)).scrollIntoView()),r.focus(),e({from:i,to:o,link:void 0})}return!0}return!1}}function us(e){return l({"Mod-k":ls(e)})}function ds(e){return e===`)`||e===`*`||e===`+`?e:void 0}function fs(e){return e===`X`?e:void 0}function ps(e){return gs(e)?String(e):void 0}function ms(){return f({type:`list`,attr:`marker`,default:null,splittable:!0,toDOM:e=>{let t=ds(e);return t==null?null:[`data-list-marker`,t]},parseDOM:e=>{let t=e.getAttribute(`data-list-marker`);return t===`)`||t===`*`||t===`+`?t:null}})}function hs(){return f({type:`list`,attr:`taskMarker`,default:null,splittable:!0,toDOM:e=>{let t=fs(e);return t==null?null:[`data-list-task-marker`,t]},parseDOM:e=>e.getAttribute(`data-list-task-marker`)===`X`?`X`:null})}function gs(e){return e===2||e===3||e===4}function _s(){return f({type:`list`,attr:`markerGap`,default:1,splittable:!0,toDOM:e=>{let t=ps(e);return t==null?null:[`data-list-marker-gap`,t]},parseDOM:e=>{let t=Number.parseInt(e.getAttribute(`data-list-marker-gap`)??``,10);return gs(t)?t:1}})}function vs(e){let t=e.attrs;return{...Nt(e),"data-list-marker":ds(t.marker),"data-list-task-marker":fs(t.taskMarker),"data-list-marker-gap":ps(t.markerGap)}}function ys(){return o({serializeFragmentWrapper:e=>(...t)=>bs(It(e(...t))),serializeNodeWrapper:e=>(...t)=>{let n=e(...t);return we(n)?bs(It(n)):n},nodesFromSchemaWrapper:e=>(...t)=>({...e(...t),list:e=>Lt({node:e,nativeList:!0,getAttributes:vs})})})}function bs(e){we(e)&&xs(e);for(let t of e.children)bs(t);return e}function xs(e){if(!e.classList.contains(`prosemirror-flat-list`)||e.getAttribute(`data-list-kind`)!==`task`||e.children.length!==2)return;let t=e.children.item(0);if(!t||!t.classList.contains(`list-marker`))return;let n=Pt(t);if(!n)return;let r=e.children.item(1);if(!r||!r.classList.contains(`list-content`))return;let i=r.children.item(0);!i||![`P`,`H1`,`H2`,`H3`,`H4`,`H5`,`H6`].includes(i.tagName)||(e.replaceChildren(...r.children),i.prepend(n))}const Ss=[zt(/^\s?([*-])\s$/,{kind:`bullet`,collapsed:!1}),zt(/^\s?(\d+)\.\s$/,({match:e})=>{let t=e[1],n=t?parseInt(t,10):void 0;return{kind:`ordered`,collapsed:!1,order:n&&n>=2&&Number.isSafeInteger(n)?n:null}}),zt(/^\s?\[([\sX]?)\]\s$/i,({match:e})=>({kind:`task`,checked:[`x`,`X`].includes(e[1]),collapsed:!1})),zt(/^\s?\+\s$/,{kind:`task`,marker:`+`,checked:!1,collapsed:!1})];function Cs(){return b(Ss.map(at))}function ws(){return ht({kind:`task`,marker:`+`})}function Ts(){return ht({kind:`task`,marker:null})}function Es(e){let{$from:t}=e.selection;for(let e=t.depth;e>0;e--){let n=t.node(e);if(I(n,`list`))return n.attrs}return null}function Ds(){return(e,t,n)=>{let r=Es(e);return(r?.kind===`task`?r.marker===`+`?Ts():ws():ht({kind:`task`,marker:null,checked:!1}))(e,t,n)}}function Os(){return s({cycleCheckableList:Ds,wrapInCircleTask:ws,wrapInSquareTask:Ts})}function ks(){return(e,t,n)=>{let r=Es(e),i=r?.kind===`task`&&r.marker!==`+`,a;return a=i&&!r?.checked?{kind:`task`,marker:r?.marker??null,checked:!0}:i&&r?.checked?{kind:`bullet`,marker:null,checked:!1}:{kind:`task`,marker:null,checked:!1},ht(a)(e,t,n)}}function As(){return(e,t,n)=>{let r=Es(e),i=r?.kind===`task`&&r.marker===`+`,a;return a=i&&!r?.checked?{kind:`task`,marker:`+`,checked:!0}:i&&r?.checked?{kind:`bullet`,marker:null,checked:!1}:{kind:`task`,marker:`+`,checked:!1},ht(a)(e,t,n)}}function js(e){return I(e,`list`)&&e.attrs.kind===`bullet`&&e.childCount>=2&&e.firstChild?.type!==e.type}const Ms=e=>{let t=e.attrs;return t.kind===`task`?{...t,checked:!t.checked}:js(e)?{...t,collapsed:!t.collapsed}:t};function Ns(){return m(()=>[new w({props:{handleDOMEvents:{mousedown:(e,t)=>Ft({view:e,event:t,onListClick:Ms})}}}),At(),new w({props:{transformCopied:Rt}}),jt()])}function Ps(){return s({toggleListCollapsed:()=>Mt({isToggleable:js})})}function Fs(){return l({"Mod-Enter":ks(),"Mod-Shift-Enter":As(),"Mod-.":Mt({isToggleable:js}),"Mod-Shift-7":pt({kind:`ordered`,collapsed:!1}),"Mod-Shift-8":pt({kind:`bullet`,collapsed:!1}),"Mod-Shift-9":pt({kind:`task`,checked:!1,collapsed:!1})})}function Is(){return b(dt(),Ns(),ut(),ct(),ys(),lt(),Cs(),Fs(),ms(),hs(),_s(),Os(),Ps())}let Ls;function Rs(){return Ls??=import(`./katex-chunk-Ch7kgbXr.js`).then(e=>e.render),Ls}function zs(e,t,n,r){try{e(n,t,{displayMode:r,throwOnError:!1,output:`mathml`})}catch(e){t.textContent=String(e)}}var Bs=class{#e;#t;#n;#r;constructor(e,t){this.#r=e.attrs.formula,this.#e=document.createElement(`span`),this.#e.className=`md-math-view`,this.#n=document.createElement(`span`),this.#n.className=`md-math-view-preview`,this.#n.dataset.testid=`math-preview`,this.#n.contentEditable=`false`,this.#n.addEventListener(`mousedown`,e=>{e.preventDefault();let n=t.posAtDOM(this.#t,0);if(n<0)return;let r=E.near(t.state.doc.resolve(n),1);t.dispatch(t.state.tr.setSelection(r)),t.focus()}),this.#t=document.createElement(`span`),this.#t.className=`md-math-view-content`,this.#e.appendChild(this.#n),this.#e.appendChild(this.#t),this.#i()}get dom(){return this.#e}get contentDOM(){return this.#t}update(e){let t=e.attrs.formula;return t!==this.#r&&(this.#r=t,this.#i()),!0}ignoreMutation(e){return!this.#t.contains(e.target)}#i(){let e=this.#r;Rs().then(t=>{e===this.#r&&zs(t,this.#n,e,!1)})}};function Vs(){return d({name:`mdMath`,constructor:(e,t)=>new Bs(e,t)})}function Hs(e){return e===`left`||e===`center`||e===`right`?e:null}function Us(){return f({type:`tableCell`,attr:`align`,default:null,toDOM:e=>e?[`data-align`,e]:null,parseDOM:e=>Hs(e.getAttribute(`data-align`))})}function Ws(){return f({type:`tableHeaderCell`,attr:`align`,default:null,toDOM:e=>e?[`data-align`,e]:null,parseDOM:e=>Hs(e.getAttribute(`data-align`))})}function Gs(e){for(let t=0;t<e.childCount;t++){let n=e.child(t);for(let e=0;e<n.childCount;e++)if(I(n.child(e),`tableHeaderCell`))return t}return 0}function Ks(e){return e.child(Gs(e))}function qs(e,t){return t>=e.childCount?null:e.child(t).attrs.align??null}function Js(e,t,n){if(e.childCount===0)return;let r=Ks(e),i=t+1;for(let t=0;t<e.childCount;t++){let a=e.child(t),o=i+1;for(let e=0;e<a.childCount;e++){let t=a.child(e),i=qs(r,e);(t.attrs.align??null)!==i&&n.setNodeMarkup(o,void 0,{...t.attrs,align:i}),o+=t.nodeSize}i+=a.nodeSize}}function Ys(e){let t,n;for(let r of e){if(!r.docChanged)continue;t!=null&&n!=null&&(t=r.mapping.map(t,-1),n=r.mapping.map(n,1));let e=r.mapping;for(let[r,i]of e.maps.entries()){let a=e.slice(r+1);i.forEach((e,r,i,o)=>{let s=a.map(i,-1),c=a.map(o,1);t=t==null?s:Math.min(t,s),n=n==null?c:Math.max(n,c)})}}if(t!=null&&n!=null)return{from:t,to:n}}function Xs(){return new w({key:new T(`table-align-sync`),appendTransaction(e,t,n){if(!e.some(e=>e.docChanged))return;let r=Ys(e);if(!r)return;let i=n.doc,a=Math.max(0,Math.min(r.from,i.content.size)),o=Math.max(a,Math.min(r.to,i.content.size)),s;return i.nodesBetween(a,o,(e,t)=>I(e,`table`)?(s??=n.tr,Js(e,t,s),!1):!0),s?.docChanged?s:void 0}})}function Zs(){return m(Xs())}function Qs(e){let{selection:t}=e;if(Jt(t)){let{$anchorCell:e,$headCell:n}=t,r=e.depth-1,i=e.index(),a=n.index();return{table:e.node(r),tablePos:e.before(r),firstColumn:Math.min(i,a),lastColumn:Math.max(i,a)}}let{$from:n}=t;for(let e=n.depth;e>2;e--){let t=n.node(e).type.name;if(t===`tableCell`||t===`tableHeaderCell`){let t=n.index(e-1);return{table:n.node(e-2),tablePos:n.before(e-2),firstColumn:t,lastColumn:t}}}}function $s(e){return(t,n)=>{let r=Qs(t);if(!r||r.table.childCount===0)return!1;if(n){let{table:i,tablePos:a,firstColumn:o,lastColumn:s}=r,c=Gs(i),l=a+1;for(let e=0;e<c;e++)l+=i.child(e).nodeSize;let u=i.child(c),d=t.tr,f=l+1;for(let t=0;t<u.childCount;t++){let n=u.child(t);t>=o&&t<=s&&(n.attrs.align??null)!==e&&d.setNodeMarkup(f,void 0,{...n.attrs,align:e}),f+=n.nodeSize}n(d)}return!0}}function ec(e){let t=Qs(e);if(!(!t||t.table.childCount===0))return qs(Ks(t.table),t.lastColumn)??void 0}function tc(){return s({setTableColumnAlign:$s})}function nc(){return b(Us(),Ws(),Zs(),tc())}function rc(e){let{$from:t}=e.selection;for(let e=t.depth;e>0;e--){let n=t.node(e).type.name;if(n===`tableCell`||n===`tableHeaderCell`)return!0}return!1}const ic=`paragraph`;function ac(){return b(p({name:`tableCell`,content:ic}),p({name:`tableHeaderCell`,content:ic}))}const oc=(e,t)=>{let{selection:n}=e;return!Jt(n)||!n.isColSelection()||!n.isRowSelection()?!1:qt(e,t)};function sc(){return x(l({Backspace:oc,Delete:oc}),t.high)}function cc(){return b(Kt(),Gt(),Bt(),Wt(),ac(),nc(),Ut({allowTableNodeSelection:!0}),Vt(),Ht(),sc())}function lc(e){let{selection:t}=e,{$from:n,$to:r}=t;if(ne(t)&&n.depth===0||n.depth>0&&r.depth>0&&n.index(0)===r.index(0))return n.index(0)}function uc(e){return(t,n)=>{if(rc(t))return!1;let r=lc(t);if(r==null)return!1;let i=r+e;if(i<0||i>=t.doc.childCount)return!1;if(n){let{selection:a}=t,o=Math.min(r,i),s=a.$from.posAtIndex(o,0),c=t.doc.child(o),l=t.doc.child(o+1),u=t.tr.replaceWith(s,s+c.nodeSize+l.nodeSize,[l,c]),d=e===-1?-c.nodeSize:l.nodeSize,f=ne(a)?Pe.create(u.doc,a.from+d):E.create(u.doc,a.anchor+d,a.head+d);u.setSelection(f),n(u.scrollIntoView())}return!0}}function dc(e){return(t,n,r)=>ft(e)(t,n,r)||uc(e===`up`?-1:1)(t,n,r)}function fc(){return l({"Alt-ArrowUp":dc(`up`),"Alt-ArrowDown":dc(`down`)})}const J=new T(`meowdownPendingReplacement`);function pc(e){return J.getState(e)?.pending??null}function mc(e,t){switch(e.type){case`start`:return{pending:{from:e.from,to:e.to,mode:e.mode,text:``}};case`append`:return t.pending?{pending:{...t.pending,text:t.pending.text+e.text}}:t;case`accept`:return t.pending?{pending:null,ended:{pending:t.pending,outcome:`accepted`}}:t;case`discard`:return t.pending?{pending:null,ended:{pending:t.pending,outcome:`discarded`}}:t}}const hc=new w({key:J,state:{init:()=>({pending:null}),apply:(e,t)=>{let n=e.getMeta(J);if(n)return mc(n,t);if(e.docChanged&&t.pending){let n=e.mapping.mapResult(t.pending.from,1),r=e.mapping.mapResult(t.pending.to,-1),i=Math.min(n.pos,r.pos),a=Math.max(n.pos,r.pos);return(n.deletedAfter&&r.deletedBefore||i>=a)&&t.pending.mode===`replace`?{pending:null,ended:{pending:t.pending,outcome:`discarded`}}:{pending:{...t.pending,from:i,to:a}}}return t}},props:{decorations:e=>{let t=pc(e);return!t||t.from>=t.to?null:O.create(e.doc,[D.inline(t.from,t.to,{class:`md-pending-replacement`})])}}});function gc(e){return(t,n)=>{let{from:r,to:i,mode:a}=e;return r<0||i>t.doc.content.size||r>i||r===i&&a===`replace`?!1:(n?.(t.tr.setMeta(J,{type:`start`,from:r,to:i,mode:a})),!0)}}function _c(e){return(t,n)=>pc(t)?(n?.(t.tr.setMeta(J,{type:`append`,text:e})),!0):!1}function vc(){return(e,t)=>pc(e)?(t?.(e.tr.setMeta(J,{type:`discard`})),!0):!1}function yc(e={}){return(t,n)=>{let r=pc(t);if(!r||!r.text.trim())return!1;if(n){let i=e.mode??r.mode,a=il(t.schema),o=Z(r.text,{nodes:a}),s=t.tr;if(s.setMeta(J,{type:`accept`}),i===`append`){let e=t.doc.resolve(r.to).after(1);s.insert(e,o.content),s.setSelection(E.near(s.doc.resolve(e+o.content.size),-1))}else{let e=t.doc.resolve(r.from),n=t.doc.resolve(r.to),i=o.childCount===1?o.firstChild:null;i!=null&&I(i,`paragraph`)&&e.sameParent(n)&&e.parent.isTextblock?(s.replaceWith(r.from,r.to,i.content),s.setSelection(E.near(s.doc.resolve(r.from+i.content.size),-1))):(s.replaceRange(r.from,r.to,new A(o.content,0,0)),s.setSelection(E.near(s.doc.resolve(s.mapping.map(r.to)),-1)))}n(s.scrollIntoView())}return!0}}function bc(){return s({startPendingReplacement:gc,appendPendingReplacementText:_c,acceptPendingReplacement:yc,discardPendingReplacement:vc})}function xc(){return l({"Mod-Enter":yc(),Escape:vc()})}function Sc(){return b(m(hc),bc(),xc())}function Cc(e){return m(new w({view:()=>({update:(t,n)=>{let r=J.getState(n),i=J.getState(t.state);!i||r===i||(i.pending?i.pending!==r?.pending&&e({type:`update`,pending:i.pending}):i.ended&&i.ended!==r?.ended&&e({type:`ended`,pending:i.ended.pending,outcome:i.ended.outcome}))}})}))}function wc(e){return e.left===e.right&&e.top===e.bottom}function Y(e,t,n){if(t<0||t>e.state.doc.content.size)return;let r;try{r=e.coordsAtPos(t,n)}catch{return}return wc(r)?void 0:r}function Tc(e){let t=e.dom.ownerDocument.getSelection();if(t==null||t.rangeCount===0||!e.dom.contains(t.anchorNode))return;let n=t.getRangeAt(0).cloneRange();n.collapse(!0);let r=Array.from(n.getClientRects()).filter(e=>e.height>0);if(r.length===0)return;let i=r[r.length-1];return{left:i.left,top:i.top,height:i.height}}function Ec(e){let t=e.state,n=t.selection.head,r=B(t,n),i=V(t,n),a=t.doc.resolve(n),o=a.parentOffset>0&&a.parent.textBetween(a.parentOffset-1,a.parentOffset)===`
30
- `,s=r==null&&!o,c=[[n,s],[n,!s]];r!=null&&c.push([r.from,!0]),i!=null&&c.push([i.to,!1]);for(let[t,n]of c){let r=Y(e,t,n?-1:1);if(r!=null&&r.bottom>r.top)return{left:r.left,top:r.top,height:r.bottom-r.top}}}function Dc(e){let t=e.state,n=t.selection.head;for(let r of cn){let i=j(t,n,r);if(i==null||i.from!==n&&i.to!==n)continue;let a=kc(e,i.from+1);if(a==null)continue;let o=Array.from(a.getClientRects()).filter(e=>e.height>0);if(o.length===0)continue;let s=i.to===n,c=s?o[o.length-1]:o[0];return{left:s?c.right:c.left,top:c.top,height:c.height}}}function Oc(e,t,n){let r=e.state;for(let i of cn){let a=j(r,t,i);if(a==null)continue;let o=kc(e,a.from+1);if(o==null)continue;let s=Array.from(o.getClientRects()).filter(e=>e.height>0);if(s.length!==0)return n===1?s[0]:s[s.length-1]}}function kc(e,t){let{node:n}=e.domAtPos(t,0);return(n instanceof Element?n:n.parentElement)?.closest(`.md-atom-view`)?.querySelector(`.md-atom-view-preview`)??void 0}function Ac(e){return Ec(e)??Dc(e)}const jc=new T(`meowdown-scroll-to-selection`);function Mc(e){let t=e.state.selection;if(!y(t)||Y(e,t.head,1)!=null)return!1;let n=Ac(e);if(n==null)return!1;let r=e.domAtPos(t.head).node;return Ic(e,{left:n.left,right:n.left,top:n.top,bottom:n.top+n.height},r),!0}function X(e,t){return typeof e==`number`?e:e[t]}function Nc(e){let t=e.assignedSlot??e.parentNode;return t?.nodeType===11?t.host:t}function Pc(e){let t=e.defaultView?.visualViewport;return t?{left:0,right:t.width,top:0,bottom:t.height}:{left:0,right:e.documentElement.clientWidth,top:0,bottom:e.documentElement.clientHeight}}function Fc(e){let t=e.getBoundingClientRect(),n=t.width/e.offsetWidth||1,r=t.height/e.offsetHeight||1;return{left:t.left,right:t.left+e.clientWidth*n,top:t.top,bottom:t.top+e.clientHeight*r}}function Ic(e,t,n){let r=e.someProp(`scrollThreshold`)??0,i=e.someProp(`scrollMargin`)??5,a=e.dom.ownerDocument;for(let e=n;e;){if(e.nodeType!==1){e=Nc(e);continue}let n=e,o=n===a.body,s=o?Pc(a):Fc(n),c=0,l=0;if(t.top<s.top+X(r,`top`)?l=-(s.top-t.top+X(i,`top`)):t.bottom>s.bottom-X(r,`bottom`)&&(l=t.bottom-t.top>s.bottom-s.top?t.top+X(i,`top`)-s.top:t.bottom-s.bottom+X(i,`bottom`)),t.left<s.left+X(r,`left`)?c=-(s.left-t.left+X(i,`left`)):t.right>s.right-X(r,`right`)&&(c=t.right-s.right+X(i,`right`)),c||l)if(o)a.defaultView?.scrollBy(c,l);else{let e=n.scrollLeft,r=n.scrollTop;l&&(n.scrollTop+=l),c&&(n.scrollLeft+=c);let i=n.scrollLeft-e,a=n.scrollTop-r;t={left:t.left-i,top:t.top-a,right:t.right-i,bottom:t.bottom-a}}let u=o?`fixed`:getComputedStyle(n).position;if(/^(?:fixed|sticky)$/.test(u))break;e=u===`absolute`?n.offsetParent:Nc(n)}}function Lc(){return m(new w({key:jc,props:{handleScrollToSelection:Mc}}))}function Rc(e,t){return(n,r)=>{let i=e<0?Fe.atStart(n.doc):Fe.atEnd(n.doc),a=t?E.between(n.selection.$anchor,i.$head):i;return n.selection.eq(a)||r?.(n.tr.setSelection(a).scrollIntoView()),!0}}function zc(){return l({"Meta-ArrowUp":Rc(-1,!1),"Meta-ArrowDown":Rc(1,!1),"Shift-Meta-ArrowUp":Rc(-1,!0),"Shift-Meta-ArrowDown":Rc(1,!0)})}function Bc(e){return m(new w({props:{attributes:e}}))}function Vc(e){e.offsetWidth}const Hc=new T(`meowdown-virtual-caret`),Uc=[`md-virtual-caret-blink`,`md-virtual-caret-blink2`],Wc=`data-meowdown-virtual-caret`;function Gc(e){let t=e.height*.19999999999999996;return{left:e.left,top:e.top-t/2,height:e.height+t}}function Kc(e){let t=Tc(e)??Ec(e);return t==null?Dc(e):Gc(t)}function qc(e,t){return e==null||t==null?e===t:e.left===t.left&&e.top===t.top&&e.height===t.height}var Jc=class{#e;#t;#n;#r;#i;#a;#o;#s=0;constructor(e){this.#e=e,this.#r=e.dom.ownerDocument,this.#t=this.#r.createElement(`div`),this.#t.className=`md-virtual-caret-layer`,this.#n=this.#t.appendChild(this.#r.createElement(`div`)),this.#n.className=`md-virtual-caret`,this.#n.dataset.testid=`virtual-caret`,e.dom.insertAdjacentElement(`afterend`,this.#t),this.#r.addEventListener(`selectionchange`,this.#l),typeof ResizeObserver<`u`&&(this.#i=new ResizeObserver(this.#l),this.#i.observe(e.dom)),this.#l()}update(e,t){e.state.selection.eq(t.selection)||this.#c(),this.#l()}destroy(){this.#r.removeEventListener(`selectionchange`,this.#l),this.#i?.disconnect(),this.#t.remove()}#c(){this.#s=1-this.#s,this.#n.style.animationName=Uc[this.#s]}#l=()=>{let e=this.#e;if(e.isDestroyed)return;let t=e.state,n=t.selection,r=y(n)&&n.empty?Kc(e):void 0,i=r!=null&&M(t)===`hide`?qi(t,n.head):void 0;if(qc(r,this.#a)&&i===this.#o)return;let a=this.#a==null;if(this.#a=r,this.#o=i,i==null?delete this.#n.dataset.tail:this.#n.dataset.tail=i,r==null){this.#n.style.visibility=`hidden`,e.dom.removeAttribute(Wc);return}let o=this.#t.getBoundingClientRect();a&&(this.#n.style.transitionProperty=`none`),this.#n.style.visibility=``,this.#n.style.left=`${r.left-o.left}px`,this.#n.style.top=`${r.top-o.top}px`,this.#n.style.height=`${r.height}px`,e.dom.setAttribute(Wc,``),a&&(Vc(this.#n),this.#n.style.transitionProperty=``)}};function Yc(){return m(new w({key:Hc,view:e=>new Jc(e)}))}function Xc(e){return b(ir(),ke(),Ni(),Me(),Oe(),Is(),er(),cc(),hi(),aa(),oa(),Lo(),Bc({class:`meowdown-content`}),oi(),Oi(),Ai(),fc(),zc(),xo(e),es(),cs(),Va(),Vs(),rn(e.markMode??`focus`),ei(),Yc(),Lc(),ra(),bn({marks:cn.map(e=>({name:e,modes:[`hide`,`focus`,`show`]}))}),a(),i(),c(),Ae(),Ne(),je(),Si(),Sc(),Mi())}function Zc(e={}){return Xc(e)}const Qc=De(()=>{let e=Zc().schema;if(e==null)throw Error(`Unexpected empty schema`);return e}),$c=De(()=>r(Qc())),el=De(()=>n(Qc())),tl=`meowdown_mark_builders`;function nl(e){let t=e.cached[tl];if(t)return t;let r=n(e);return e.cached[tl]=r,r}const rl=`meowdown_node_builders`;function il(e){let t=e.cached[rl];if(t)return t;let n=r(e);return e.cached[rl]=n,n}function Z(e,t={}){let{nodes:n=$c(),frontmatter:r=!1}=t,i,a=e;if(r){let[t,n]=ol(e);i=t,n&&(a=e.slice(n))}let o=sl(n,xe.parse(a).cursor(),a);return n.doc(i===void 0?{}:{frontmatter:i},o)}const al=/^---[ \t]*\r?\n([\s\S]*?\n)?---[ \t]*(?:\r?\n|$)/;function ol(e){let t=al.exec(e);return t?[(t[1]??``).replace(/\r?\n$/,``),t[0].length]:[]}function sl(e,t,n){let r=[];if(!t.firstChild())return r;let i;do i!=null&&cl(r,e,n,i,t.from),i=t.to,r.push(...ll(e,t,n));while(t.nextSibling());return t.parent(),r}function cl(e,t,n,r,i){let a=0;for(let e=r;e<i;e++)n.charCodeAt(e)===10&&a++;for(let n=2;n<a;n++)e.push(t.paragraph())}function ll(e,t,n){switch(t.type.id){case S.ATXHeading1:return[Q(e,t,n,1,!1)];case S.ATXHeading2:return[Q(e,t,n,2,!1)];case S.ATXHeading3:return[Q(e,t,n,3,!1)];case S.ATXHeading4:return[Q(e,t,n,4,!1)];case S.ATXHeading5:return[Q(e,t,n,5,!1)];case S.ATXHeading6:return[Q(e,t,n,6,!1)];case S.SetextHeading1:return[Q(e,t,n,1,!0)];case S.SetextHeading2:return[Q(e,t,n,2,!0)];case S.Paragraph:return[hl(e,t,n)];case S.LinkReference:return[hl(e,t,n)];case S.CommentBlock:return[gl(e,t,n)];case S.HTMLBlock:case S.ProcessingInstructionBlock:return[hl(e,t,n)];case S.Blockquote:return[_l(e,t,n)];case S.BulletList:return vl(e,t,n,`bullet`);case S.OrderedList:return vl(e,t,n,`ordered`);case S.FencedCode:case S.CodeBlock:return[Sl(e,t,n)];case S.BlockMath:return[Cl(e,t,n)];case S.HorizontalRule:{let r=n.slice(t.from,t.to).trimEnd();return[e.horizontalRule({marker:r===`---`?null:r})]}case S.Table:return[wl(e,t,n)];case S.Task:return[hl(e,t,n)];default:return n.slice(t.from,t.to).trim()===``?[]:(console.warn(`[meowdown] unsupported lezer block "${t.type.name}"`),[hl(e,t,n)])}}function Q(e,t,n,r,i){let a=t.from,o=t.from,s=t.to,c=-1,l=-1;if(t.firstChild()){t.type.id===S.HeaderMark&&t.from===a&&(o=t.to);let e=-1,n=-1,r=-1;do e=t.type.id,n=t.from,r=t.to;while(t.nextSibling());e===S.HeaderMark&&n>o&&(s=n,c=n,l=r),t.parent()}let u=pl(n.slice(o,s),$(n,o)).trim(),d=i?ul(n,c,l)||1:null,f=!i&&c>=0&&dl(n,c,l)||null;return e.heading({level:r,setextUnderline:d,closingHashes:f},u)}function ul(e,t,n){if(t<0)return 0;let r=0;for(let i=t;i<n;i++){let t=e.charCodeAt(i);(t===61||t===45)&&r++}return r}function dl(e,t,n){if(t<0)return 0;let r=0;for(let i=t;i<n;i++)e.charCodeAt(i)===35&&r++;return r}function $(e,t){let n=e.lastIndexOf(`
31
- `,t-1)+1,r=0;for(let i=n;i<t;i++)r+=e.charCodeAt(i)===9?4-r%4:1;return r}function fl(e,t){let n=0,r=0;for(;r<e.length&&n<t;){let t=e.charCodeAt(r);if(t===32)n+=1;else if(t===9)n+=4-n%4;else break;r++}return e.slice(r)}function pl(e,t){return t===0||!e.includes(`
29
+ `);return n.create(void 0,r?e.text(r):void 0)}function Yr(){return m(new w({key:new T(`meowdown-plain-text-copy`),props:{clipboardTextSerializer:(e,t)=>{let n=M(t.state)===`hide`?Xr(e):e;return Gr(t.state.schema,n,t.state.selection)}}}))}function Xr(e){return new A(Zr(e.content),e.openStart,e.openEnd)}function Zr(e){let t=[];return e.forEach(e=>{t.push(e.isTextblock?$r(e):Qr(e))}),k.from(t)}function Qr(e){return e.childCount>0?e.copy(Zr(e.content)):e}function $r(e){let t=e.type.schema,n=[];for(let r of zn(e)){let e=r.atom;if(e!=null){if(Pn(e,`mdWikilink`)){let r=e.attrs,i=r.display||r.target;i&&n.push(t.text(i))}else n.push(...r.children);continue}for(let e of r.children)Rn(e.marks)||n.push(e)}return e.copy(k.from(n))}function ei(){return b(or(),Yr(),yr(),gr(),Sr())}const R=new Map,ti=new Map,ni={math:`latex`};async function ri(e){let t=R.get(e);if(t!==void 0)return t;let n=Qe.matchLanguageName($e,ni[e]??e,!0);if(!n)return R.set(e,null),null;let r=n.support;if(!r)try{r=await n.load()}catch(t){return console.error(`[meowdown] Failed to load language "${e}":`,t),R.set(e,null),null}return R.set(e,r),r}function ii(e,t){let n=ti.get(e);if(n)return n;let r=nt({parse:e=>t.language.parser.parse(e.content),highlighter:et});return ti.set(e,r),r}const ai=e=>{let t=e.language?.trim();if(!t)return[];let n=R.get(t);return n===null?[]:n?ii(t,n)(e):ri(t).then(()=>void 0)};function oi(){return le({parser:ai,nodeTypes:[`codeBlock`]})}function si(e,t){let n=t.language.parser.parse(e),r=[];return tt(n,et,(e,t,n)=>{r.push([e,t,n])}),r}function ci(e,t){let n=t.trim();if(!n)return[];let r=R.get(n);return r===null?[]:r?si(e,r):ri(n).then(t=>t?si(e,t):[])}function li(){return f({type:`codeBlock`,attr:`fenceStyle`,default:null,toDOM:e=>e==null?null:[`data-fence-style`,e],parseDOM:e=>{let t=e.getAttribute(`data-fence-style`);return t===`tilde`||t===`indented`||t===`dollar`?t:null}})}function ui(){return f({type:`codeBlock`,attr:`fenceLength`,default:null,toDOM:e=>e==null?null:[`data-fence-length`,String(e)],parseDOM:e=>{let t=Mn(e.getAttribute(`data-fence-length`));return t!=null&&t>3?t:null}})}function di(e){return{language:e[1]||``,fenceStyle:`tilde`}}function fi(){return ot({regex:/^~~~(\S*)\s$/,type:`codeBlock`,attrs:di})}function pi(){return it({regex:/^~~~(\S*)$/,type:`codeBlock`,attrs:di})}function mi(){return it({regex:/^\$\$$/,type:`codeBlock`,attrs:()=>({language:`math`,fenceStyle:`dollar`})})}function hi(){return b(ce(),li(),ui(),fi(),pi(),mi())}function gi(e,t){return(n,r)=>{if(r){let i=E.create(n.doc,e,t);r(n.tr.setSelection(i))}return!0}}function _i(e,t,n){return(r,i)=>{if(i){let a=E.between(e,t,n);i(r.tr.setSelection(a))}return!0}}function vi(e){return(t,n)=>{if(!e.trim())return!1;let r=Z(e,{nodes:Xc(t.schema)}).content;if(r.childCount===0)return!1;let i=r.childCount===1&&I(r.child(0),`paragraph`)?new A(r,1,1):new A(r,0,A.maxOpen(r).openEnd);if(n){let e=t.tr,r=e.selection;(!y(r)||!r.empty)&&e.setSelection(E.near(r.$from)),n(e.replaceSelection(i).scrollIntoView())}return!0}}function yi(e){return(t,n)=>{if(!e)return!1;let r=t.selection.$from;if(r.parent.type.spec.code)return!1;if(n){let i=r.parentOffset,a=i===0?``:r.parent.textBetween(i-1,i),o=a!==``&&!/\s/u.test(a),s=t.tr.insertText(o?` ${e}`:e);st(s),n(s.scrollIntoView())}return!0}}function bi(){return gt(re({type:`paragraph`}),mt(),_t)}function xi(){return(e,t)=>(t&&t(e.tr.scrollIntoView()),!0)}function Si(){return s({insertMarkdown:vi,insertTrigger:yi,scrollIntoView:xi,selectText:gi,selectTextBetween:_i,turnIntoText:bi})}const Ci=new Set;function wi(e){for(let t of Ci)if(t!==e&&!t.isDestroyed&&t.editable&&t.dragging)return t}function Ti(e,t){let n=e.state.tr;if(t.node){if(e.state.doc.nodeAt(t.node.from)!==t.node.node)return;t.node.replace(n)}else n.deleteSelection();n.docChanged&&e.dispatch(n.setMeta(`uiEvent`,`drop`))}function Ei(e,t,n,r){if(r||n.size===0)return!1;let i=wi(e);if(!i)return!1;let a=i.dragging;if(!a||(ee?t.altKey:t.ctrlKey))return!1;i.dragging=null;let o=e.state.doc;return queueMicrotask(()=>{i.isDestroyed||e.isDestroyed||e.state.doc!==o&&Ti(i,a)}),!1}function Di(){return new w({key:new T(`meowdown-cross-editor-drag`),view:e=>(Ci.add(e),{destroy:()=>{Ci.delete(e)}}),props:{handleDrop:Ei}})}function Oi(){return x(m(Di()),t.high)}const ki=(e,t,n)=>{let{selection:r}=e;return r.empty||n?.composing?!1:(t?.(e.tr.setSelection(E.near(r.$head))),!0)};function Ai(){return x(l({Escape:ki}),t.low)}const ji=new w({props:{decorations:e=>{let{from:t,to:n,empty:r}=e.selection;if(!(r||ve(e).active===0))return O.create(e.doc,[D.inline(t,n,{class:`show`})])}}});function Mi(){return b(he(),me(),m(ji))}function Ni(){return f({type:`doc`,attr:`frontmatter`,default:null})}let Pi=-1,Fi=!1;typeof window<`u`&&(window.addEventListener(`compositionstart`,()=>{Fi=!0},{capture:!0,passive:!0}),window.addEventListener(`compositionend`,()=>{Fi=!1,Pi=Date.now()},{capture:!0,passive:!0}));function Ii(){return Fi||Pi>0&&Date.now()-Pi<=50}function Li(e,t){return t(e.state,e.dispatch,e)}function Ri(e,t){if(t<0||t+1>e.doc.content.size)return;let n=e.doc.resolve(t),r=n.parent.maybeChild(n.index());if(!(r==null||!r.isText))return r.marks}function z(e,t){let n=Ri(e,t);return n!=null&&n.some(e=>Fn.has(e.type.name))}function zi(e,t){if(t<0||t>e.doc.content.size)return!1;let n=e.doc.resolve(t);return n.parent.isTextblock&&!n.parent.type.spec.code}function B(e,t){if(!zi(e,t))return;let n=e.doc.resolve(t).start(),r=t;for(;r>n&&z(e,r-1);)r--;return r<t?{from:r,to:t}:void 0}function V(e,t){if(!zi(e,t))return;let n=e.doc.resolve(t).end(),r=t;for(;r<n&&z(e,r);)r++;return r>t?{from:t,to:r}:void 0}function Bi(e,t){return z(e,t-1)&&z(e,t)}function Vi(e,t){if(!Bi(e,t))return;let n=B(e,t);if(!n)return;let r=V(e,t);if(r)return{from:n.from,to:r.to}}function Hi(e,t,n){let r=Ri(e,t);return r!=null&&n.isInSet(r)}function Ui(e,t){let n=Ri(e,t);if(n==null)return;let r=g(e.schema,`mdPack`),i=n.filter(e=>e.type===r);if(i.length===0)return;let a=e.doc.resolve(t),o=a.start(),s=a.end(),c;for(let n of i){let r=t;for(;r>o&&Hi(e,r-1,n);)r--;let i=t+1;for(;i<s&&Hi(e,i,n);)i++;(c==null||i-r<c.to-c.from)&&(c={from:r,to:i})}return c}function Wi(e,t,n){let r=Ui(e,n===`from`?t.from:t.to-1);return r==null?!1:n===`from`?r.from===t.from:r.to===t.to}function Gi(e,t,n){let r=Wi(e,t,`from`),i=Wi(e,t,`to`);return r&&!i?t.from:i&&!r?t.to:n-t.from<=t.to-n?t.from:t.to}function Ki(e,t,n,r){if(!zi(e,n))return n;let i=Vi(e,n);if(i!=null)return r?Gi(e,i,n):n>=t?i.to:i.from;if(!r)return n;let a=B(e,n);if(a!=null&&Wi(e,a,`from`))return a.from;let o=V(e,n);return o!=null&&Wi(e,o,`to`)?o.to:n}function qi(e,t){if(!zi(e,t))return;let n=z(e,t-1),r=z(e,t);if(n!==r)return r?`left`:`right`}function Ji(e,t){let n=Ui(e,t);if(n==null)return[];let r=V(e,n.from),i=B(e,n.to),a=[];return i!=null&&a.push(i),r!=null&&(i==null||r.from!==i.from)&&a.push(r),a}const Yi=new T(`meowdown-hidden-run-snap`),Xi=new T(`meowdown-hidden-run-beforeinput`);function Zi(){return new w({key:Yi,appendTransaction:(e,t,n)=>{if(Ii()||M(n)!==`hide`)return null;let r=n.selection;if(!y(r))return null;let i=e.some(e=>e.getMeta(`pointer`)!=null);if(r.empty){let e=Ki(n,t.selection.head,r.head,i);return e===r.head?null:n.tr.setSelection(E.create(n.doc,e))}let a=Vi(n,r.from)?.from??r.from,o=Vi(n,r.to)?.to??r.to;if(a===r.from&&o===r.to)return null;let s=r.anchor===r.from?a:o,c=r.head===r.from?a:o;return n.tr.setSelection(E.create(n.doc,s,c))}})}const Qi=(e,t)=>{if(M(e)!==`hide`)return!1;let n=e.selection;if(!y(n)||!n.empty)return!1;let r=Ki(e,n.head,n.head,!0);return r===n.head||t?.(e.tr.setSelection(E.create(e.doc,r))),!1};function $i(e){return(t,n)=>{if(M(t)!==`hide`)return!1;let r=t.selection;if(!y(r)||!r.empty)return!1;let i=r.$head;if(!i.parent.isTextblock||i.parent.type.spec.code)return!1;let a=e===-1?B(t,r.head):V(t,r.head);if(a==null)return!1;let o=Ji(t,e===-1?a.to-1:a.from),s=t.tr;if(o.length===0)s.delete(a.from,a.to);else for(let e of o)s.delete(e.from,e.to);return n?.(s),!0}}const ea=$i(-1),ta=$i(1);function na(){return new w({key:Xi,props:{handleDOMEvents:{beforeinput:(e,t)=>{if(e.composing)return!1;let n=t.inputType===`deleteContentBackward`?ea:t.inputType===`deleteContentForward`?ta:void 0;return n==null||!Li(e,n)?!1:(t.preventDefault(),!0)}}}})}function ra(){return b(m(Zi()),m(na()),x(l({Enter:Qi,Backspace:ea,Delete:ta}),t.highest))}function ia(){return f({type:`horizontalRule`,attr:`marker`,default:null,toDOM:e=>e?[`data-hr-marker`,e]:null,parseDOM:e=>e.getAttribute(`data-hr-marker`)})}function aa(){return b(vt(),ia())}function oa(){return p({name:`htmlComment`,group:`block`,atom:!0,selectable:!1,attrs:{content:{default:``}},toDOM:e=>[`div`,{"data-html-comment":e.attrs.content,style:`display: none`}],parseDOM:[{tag:`div[data-html-comment]`,getAttrs:e=>({content:e.getAttribute(`data-html-comment`)??``})}]})}function sa(e){let[t,n,r]=e;return[t,n,r.map(e=>e.toJSON())]}function ca(e,t){let[n,r,i]=t;return[n,r,i.map(t=>Ke.fromJSON(e,t))]}function la(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(!e[n].eq(t[n]))return!1;return!0}function ua(e,t){let n=e.content.size,r;for(let[i,a,o]of t){if(i>=a)continue;let t=Math.max(0,Math.min(i,n)),s=Math.max(t,Math.min(a,n));if(t>=s)continue;let c=Ke.setFrom(o);e.nodesBetween(t,s,(n,i)=>{if(!n.isText)return!0;let a=Math.max(t,i),o=Math.min(s,i+n.nodeSize);if(a>=o||la(n.marks,c))return!1;r??=new Dt(e);for(let e of n.marks)r.removeMark(a,o,e);for(let e of c)r.addMark(a,o,e);return!1})}return Et.ok(r?.doc??e)}function da(e,t){let n=e.content.size,r=[...t].filter(([e,t])=>e<t&&e<n).sort((e,t)=>e[0]-t[0]);if(r.length===0)return Et.ok(e);let i=r.map(([,,e])=>Ke.setFrom(e)),a=Math.max(0,r[0][0]),o=0;for(let[,e]of r)e>o&&(o=e);if(o=Math.min(o,n),a>=o)return Et.ok(e);let s=0;function c(e,t){let n=t+e.nodeSize;for(;s<r.length&&r[s][1]<=t;)s++;let a=[],o=t,c=!1;for(let t=s;t<r.length;t++){let[s,l]=r[t];if(s>=n)break;let u=Math.max(s,o),d=Math.min(l,n);if(u>=d)continue;u>o&&a.push({from:o,to:u,marks:void 0});let f=i[t],p=!la(e.marks,f);p&&(c=!0),a.push({from:u,to:d,marks:p?f:void 0}),o=d}if(c)return o<n&&a.push({from:o,to:n,marks:void 0}),a.map(n=>{let r=e.cut(n.from-t,n.to-t);return n.marks==null?r:r.mark(n.marks)})}function l(e,t){let n,r=t;for(let t=0;t<e.childCount;t++){let i=e.child(t),s=r+i.nodeSize,u=i;if(s>a&&r<o){if(i.isText)u=c(i,r)??i;else if(i.childCount>0){let e=l(i,r+1);e!=null&&(u=i.copy(e))}}if(u!==i&&n==null){n=[];for(let r=0;r<t;r++)n.push(e.child(r))}n!=null&&(Array.isArray(u)?n.push(...u):n.push(u)),r=s}return n==null?void 0:k.fromArray(n)}let u=l(e,0);return Et.ok(u==null?e:e.copy(u))}var fa=class e extends Tt{constructor(e){super(),this.chunks=e}apply(e){return this.chunks.length===0?Et.ok(e):this.chunks.length<=32?ua(e,this.chunks):da(e,this.chunks)}invert(e){if(this.chunks.length===0)return pa;let t=this.chunks[0][0],n=this.chunks[0][1];for(let[,e]of this.chunks)e>n&&(n=e);let r=e.content.size,i=Math.max(0,Math.min(t,r)),a=Math.max(i,Math.min(n,r));return new wt(i,a,e.slice(i,a),!1)}map(e){return null}toJSON(){return{stepType:`batchSetMark`,chunks:this.chunks.map(sa)}}static fromJSON(t,n){let r=n.chunks;return new e(r.map(e=>ca(t,e)))}};Tt.jsonID(`batchSetMark`,fa);const pa=new fa([]),ma=/^<!--\s*(\{[^}]*\})\s*-->$/,ha=/<!--\s*\{[^}]*\}\s*-->$/;function ga(e){let t=ma.exec(e.trim());if(!t)return;let n;try{n=JSON.parse(t[1])}catch{return}if(!Ee(n))return;let r=_a(n.width),i=_a(n.height);if(!(!r&&!i))return{width:r,height:i}}function _a(e){if(typeof e==`number`&&Number.isFinite(e)&&e>0)return Math.round(e)}function va(e){return`<!-- ${JSON.stringify(e)} -->`}function ya(e){return e.replace(ha,``)}function ba(e){return kt(e)}function xa(e){if(e.length>1024)return!1;let t=e.search(/\S/);return t<0||e.charCodeAt(t)!==91?!1:e.includes(`]:`,t+1)}function Sa(e){if(!xa(e))return;let t=Se.parse(e).topNode.firstChild;if(t?.type.id===S.LinkReference&&t.nextSibling==null)return t}function Ca(e){return Ot(e.startsWith(`<`)&&e.endsWith(`>`)?e.slice(1,-1):e)}function wa(e){return e.length<2?``:Ot(e.slice(1,-1))}function Ta(e){let t=Sa(e);if(t==null)return;let n=t.getChild(`LinkLabel`),r=t.getChild(`URL`);if(n==null||r==null)return;let i=ba(e.slice(n.from+1,n.to-1));if(i===``)return;let a=t.getChild(`LinkTitle`);return{key:i,href:Ca(e.slice(r.from,r.to)),title:a==null?``:wa(e.slice(a.from,a.to))}}function Ea(e,t){return e==null?!0:I(e,`tableCell`)||I(e,`tableHeaderCell`)?!1:!I(e,`list`)||e.attrs.kind!==`task`||t>0}function Da(e,t,n){return I(e,`paragraph`)&&Ea(t,n)}const H=new WeakMap;function Oa(e,t,n){if(!Da(e,t,n))return;if(H.has(e))return H.get(e);let r=Ta(e.textContent);return H.set(e,r),r}function ka(e,t,n){return Oa(e,t,n)!=null}function Aa(e){let t=new Map,n=new Set;return e.descendants((e,r,i,a)=>{if(e.type.spec.code)return!1;if(!e.isTextblock)return!0;let o=Oa(e,i,a);return o!=null&&(n.add(e),t.has(o.key)||t.set(o.key,o)),!1}),{definitions:t,nodes:n}}function ja(e,t,n){let r=e.content.size,i=!1;return e.nodesBetween(Math.max(0,t-1),Math.min(r,n+1),(e,t,n,r)=>i||e.type.spec.code?!1:e.isTextblock?(Da(e,n,r)&&(H.has(e)?H.get(e)!=null:xa(e.textContent))&&(i=!0),!1):!0),i}function Ma(e){if(e.steps.some(e=>e instanceof xt&&e.attr===`kind`))return!0;for(let[t,n]of e.mapping.maps.entries()){let r=e.docs[t],i=t+1<e.docs.length?e.docs[t+1]:e.doc,a=!1;if(n.forEach((e,t,n,o)=>{a||=ja(r,e,t)||ja(i,n,o)}),a)return!0}return!1}function Na(e,t,n){return!t.docChanged||!Ma(t)?e:Aa(n)}const Pa=/^(\d+)(?:x(\d+))?$/i;function Fa(e){if(!e)return null;let t=Number.parseInt(e,10);return Number.isSafeInteger(t)&&t>0?t:null}function Ia(e){let t=e.replace(/^!\[\[/,``).replace(/\]\]$/,``),n=t.lastIndexOf(`|`);if(n<0)return{target:t.trim(),display:``,width:null,height:null};let r=t.slice(0,n).trim(),i=t.slice(n+1).trim(),a=Pa.exec(i);if(!a)return{target:r,display:i,width:null,height:null};let o=Fa(a[1]),s=Fa(a[2]);return o==null||a[2]&&s==null?{target:r,display:i,width:null,height:null}:{target:r,display:``,width:o,height:s}}function La(e,t,n){return`![[${e}|${Math.round(t)}x${Math.round(n)}]]`}function Ra(e){let t=e.split(/[?#]/,1)[0],n=t.split(/[/\\]/).findLast(Boolean)??t;try{return decodeURIComponent(n)}catch{return n}}function za(e){let t=e.replace(/^\[\[/,``).replace(/\]\]$/,``),n=t.indexOf(`|`);return n<0?{target:t.trim(),display:``}:{target:t.slice(0,n).trim(),display:t.slice(n+1).trim()}}function Ba(){return e=>{let t=e.attrs,n=document.createElement(`span`);n.className=`md-wikilink-view md-atom-view`;let r=document.createElement(`span`);r.className=`md-wikilink-view-preview md-atom-view-preview`,r.contentEditable=`false`,r.dataset.testid=`wikilink`,n.appendChild(r);let i=document.createElement(`span`);i.className=`md-wikilink-view-label`,i.contentEditable=`false`,i.textContent=t.display||t.target,r.appendChild(i);let a=document.createElement(`span`);return a.className=`md-wikilink-view-content md-atom-view-content`,n.appendChild(a),{dom:n,contentDOM:a,ignoreMutation:e=>!a.contains(e.target)}}}function Va(){return d({name:`mdWikilink`,constructor:Ba()})}const Ha=new Map([[S.Emphasis,`mdEm`],[S.StrongEmphasis,`mdStrong`],[S.InlineCode,`mdCode`],[S.Strikethrough,`mdDel`],[S.Highlight,`mdHighlight`],[S.EmphasisMark,`mdMark`],[S.CodeMark,`mdMark`],[S.LinkMark,`mdMark`],[S.StrikethroughMark,`mdMark`],[S.HighlightMark,`mdMark`],[S.URL,`mdLinkUri`],[S.LinkTitle,`mdLinkTitle`],[S.Hashtag,`mdTag`],[S.WikilinkMark,`mdMark`]]);function Ua(e,t,n){return Wa(e,t,n)}function Wa(e,t,n,r){let i=Ce(t),a=[];return Ka(i,[],0,t.length,t,e,a,n,r),a}function Ga(e){return e.slice(1,-1).replaceAll(/\\(.)/g,`$1`)}function Ka(e,t,n,r,i,a,o,s,c){let l=n;for(let n=0;n<e.length;n++){let r=e[n];if(r.from>l&&U(o,l,r.from,t),r.type===S.Image){let u=ro(r,e[n+1],i);io(r,t,i,a,o,s,c,u),u&&n++,l=u?u.to:r.to;continue}qa(r,t,i,a,o,s,c),l=r.to}l<r&&U(o,l,r,t)}function qa(e,t,n,r,i,a,o){switch(e.type){case S.Link:return Xa(e,t,n,r,i,a,o);case S.Wikilink:return oo(e,t,n,r,i);case S.WikiEmbed:return so(e,t,n,r,i,a);case S.InlineMath:return ao(e,t,n,r,i);case S.URL:return Ya(e,t,n,r,i);default:return Ja(e,t,n,r,i,a,o)}}function Ja(e,t,n,r,i,a,o){let s=e.type,c;s===S.Emphasis?c=`italic`:s===S.StrongEmphasis?c=`bold`:s===S.InlineCode?c=`code`:s===S.Strikethrough?c=`strike`:s===S.Highlight?c=`highlight`:s===S.Autolink&&(c=`autolink`);let l=c?[...t,r.mdPack.create({key:c})]:t,u=Ha.get(s),d=u?[...l,r[u].create()]:l;e.children.length===0?U(i,e.from,e.to,d):Ka(e.children,d,e.from,e.to,n,r,i,a,o)}function Ya(e,t,n,r,i){let a=be(n.slice(e.from,e.to)),o=a?r.mdLinkText.create({href:a}):r.mdLinkUri.create();U(i,e.from,e.to,[...t,o])}function Xa(e,t,n,r,i,a,o){let s=Za(e),c=Qa(s,n,o);if(c==null){$a(e,t,n,r,i,a,o);return}let l=to(s,c,t,n,r,a);if(l){U(i,e.from,e.to,l);return}no(e,s,c,t,n,r,i,a,o)}function Za(e){let t=-1,n=-1,r=null,i=null,a=null,o=0,s=0;for(let c of e.children){let e=c.type;e===S.LinkMark?(s++,o++,o===1&&(t=c.to),o===2&&(n=c.from)):r==null&&e===S.URL?r=c:i==null&&e===S.LinkTitle?i=c:a==null&&e===S.LinkLabel&&(a=c)}return{labelFrom:t,labelTo:n,urlNode:r,titleNode:i,referenceLabelNode:a,linkMarkCount:s}}function Qa(e,t,n){if(e.linkMarkCount>=3)return{href:e.urlNode==null?``:t.slice(e.urlNode.from,e.urlNode.to),title:e.titleNode==null?``:Ga(t.slice(e.titleNode.from,e.titleNode.to)),isReference:!1};if(e.labelFrom<0||e.labelTo<0||n?.isReferenceDefinition===!0)return;let r=t.slice(e.labelFrom,e.labelTo),i=ba(e.referenceLabelNode==null?r:t.slice(e.referenceLabelNode.from+1,e.referenceLabelNode.to-1)||r);if(i===``)return;n?.referencedKeys?.add(i);let a=n?.referenceDefinitions?.get(i);if(a!=null)return{href:a.href,title:a.title,isReference:!0}}function $a(e,t,n,r,i,a,o){Ka(e.children.filter(e=>e.type!==S.LinkMark&&e.type!==S.LinkLabel),t,e.from,e.to,n,r,i,a,o)}function eo(e){let t=e.split(/[?#]/,1)[0],n=t.split(/[/\\]/).findLast(Boolean)??t;try{return decodeURIComponent(n)}catch{return n}}function to(e,t,n,r,i,a){let o=a?.resolveFileLink;if(!o)return;let{labelFrom:s,labelTo:c}=e;if(s<0||c<0)return;let{href:l,title:u}=t;if(!l)return;let d=r.slice(s,c);if(!o({href:l,label:d,title:u}))return;let f=d||eo(l);return[...n,i.mdFile.create({href:l,name:f,title:u})]}function no(e,t,n,r,i,a,o,s,c){let{labelTo:l}=t,{href:u,title:d,isReference:f}=n,p=a.mdLinkText.create({href:u}),m=e=>l>=0&&e<l,h=f?{href:u,title:d,reference:!0}:{href:u,title:d},g=a.mdPack.create({key:`link`,data:h}),_=[...r,g],v=e.from;for(let t of e.children){if(t.from>v){let e=m(v)?[..._,p]:_;U(o,v,t.from,e)}let e=m(t.from)?[..._,p]:_;if(t.type===S.Wikilink){oo(t,e,i,a,o),v=t.to;continue}if(t.type===S.WikiEmbed){so(t,e,i,a,o,s),v=t.to;continue}if(t.type===S.Image){io(t,e,i,a,o,s,c),v=t.to;continue}if(f&&t.type===S.LinkLabel){U(o,t.from,t.to,[...e,a.mdMark.create()]),v=t.to;continue}let n=Ha.get(t.type),r=n?[...e,a[n].create()]:e;t.children.length===0?U(o,t.from,t.to,r):Ka(t.children,r,t.from,t.to,i,a,o,s,c),v=t.to}v<e.to&&U(o,v,e.to,_)}function ro(e,t,n){if(!t||t.type!==S.Comment||t.from!==e.to)return;let r=ga(n.slice(t.from,t.to));if(r)return{magic:r,to:t.to}}function io(e,t,n,r,i,a,o,s){let c=Qa(Za(e),n,o);if(c==null){$a(e,t,n,r,i,a,o),s!=null&&U(i,e.to,s.to,t);return}let l=e.children.filter(e=>e.type===S.LinkMark),u=c.href,d=l.length>=2?n.slice(l[0].to,l[1].from):``,f=c.title,p=s?.magic.width??null,m=s?.magic.height??null,h=s?.to??e.to;U(i,e.from,h,[...t,r.mdImage.create({src:u,alt:d,title:f,width:p,height:m,syntax:null,wikiTarget:null})])}function ao(e,t,n,r,i){let a=e.children.filter(e=>e.type===S.InlineMathMark);if(a.length<2){U(i,e.from,e.to,t);return}let o=n.slice(a[0].to,a[1].from),s=[...t,r.mdPack.create({key:`math`}),r.mdMath.create({formula:o})];U(i,e.from,a[0].to,[...s,r.mdMark.create()]),U(i,a[0].to,a[1].from,s),U(i,a[1].from,e.to,[...s,r.mdMark.create()])}function oo(e,t,n,r,i){let{target:a,display:o}=za(n.slice(e.from,e.to));U(i,e.from,e.to,[...t,r.mdWikilink.create({target:a,display:o})])}function so(e,t,n,r,i,a){let o=Ia(n.slice(e.from,e.to)),s=a?.resolveWikiEmbed?.(o);if(!s){U(i,e.from,e.to,t);return}if(s.kind===`image`){let n=s.src??o.target,a=(s.alt??o.display)||Ra(o.target);U(i,e.from,e.to,[...t,r.mdImage.create({src:n,alt:a,title:``,width:o.width,height:o.height,syntax:`wikiEmbed`,wikiTarget:o.target})]);return}if(s.kind===`file`){let n=s.href??o.target,a=(s.name??o.display)||Ra(o.target);U(i,e.from,e.to,[...t,r.mdFile.create({href:n,name:a,title:s.title??``})]);return}let c=s.target??o.target,l=s.display??o.display;U(i,e.from,e.to,[...t,r.mdWikilink.create({target:c,display:l})])}function U(e,t,n,r){if(t>=n)return;let i=e.at(-1);if(i&&i[1]===t&&la(i[2],r)){e[e.length-1]=[i[0],n,i[2]];return}e.push([t,n,r])}const co=`inline-marks-applied`,lo=`inline-marks-trigger`,uo=`inline-marks-restyle`,W=new T(`inline-mark`),fo=new Set;let po=0,mo=0;function ho(e,t){let n=1/0,r=-1/0;for(let t of e)for(let e of t.mapping.maps)e.forEach((e,t,i,a)=>{i<n&&(n=i),a>r&&(r=a)});let i=t.doc.content.size;return n>r?{from:0,to:i}:{from:Math.max(0,n),to:Math.min(i,r)}}function go(e){let t=new WeakMap;function n(e,t){for(let n of e)if(t.has(n))return!0;return!1}function r(e,t){let n=[];for(let[r,i,a]of e)n.push([r+t,i+t,a]);return n}function i(i,a,o,s,c,l){let u=t.get(i),d;if(u?.isReferenceDefinition===l&&!n(u.referencedKeys,c))mo++,d=u.chunks;else{po++;let n=new Set;d=Wa(Jc(o),i.textContent,e,{referenceDefinitions:s.definitions,isReferenceDefinition:l,referencedKeys:n}),t.set(i,{isReferenceDefinition:l,referencedKeys:n,chunks:d})}return a===0?d:r(d,a)}function a(e,r,a,o){let s=[],c=[],l=(l,u,d,f)=>{if(l.type.spec.code)return!1;if(!l.isTextblock)return!0;if(l.childCount===0)return!1;let p=t.get(l),m=u<=r.to&&u+l.nodeSize>=r.from,h=p==null||n(p.referencedKeys,o);if(!m&&!h)return!1;let g=i(l,u+1,e.schema,a,o,ka(l,d,f));g.length>0&&s.push(...g);let _=t.get(l);return _!=null&&c.push({position:u,cached:_}),!1};return o.size===0?e.doc.nodesBetween(r.from,r.to,l):e.doc.descendants(l),{chunks:s,processed:c}}function o(e,n){for(let{position:r,cached:i}of n){let n=e.nodeAt(r);n?.isTextblock&&t.set(n,i)}}return new w({key:W,state:{init(e,t){return{references:Aa(t.doc),pendingReferenceKeys:fo}},apply(e,t,n,r){if(e.getMeta(uo)===!0)return t.pendingReferenceKeys.size===0?t:{references:t.references,pendingReferenceKeys:fo};if(e.getMeta(co))return t;let i=Na(t.references,e,r.doc);if(i===t.references)return t;let a=yo(t.references.definitions,i.definitions);return a.size===0?{references:i,pendingReferenceKeys:t.pendingReferenceKeys}:{references:i,pendingReferenceKeys:bo(t.pendingReferenceKeys,a)}}},appendTransaction(e,t,n){for(let t of e)if(t.getMeta(co))return null;let r=e.some(e=>e.getMeta(uo));if(!(r||e.some(e=>e.docChanged||e.getMeta(lo))))return null;let i=W.getState(n)?.references;if(i==null)return null;let s=r?W.getState(t)?.pendingReferenceKeys??fo:fo,{chunks:c,processed:l}=a(n,r?{from:0,to:0}:ho(e,n),i,s);if(c.length===0)return null;let u=n.tr.step(new fa(c));return o(u.doc,l),u.setMeta(co,!0),u.setMeta(`addToHistory`,!1),u},view(e){e.dispatch(_o(e.state));let t,n=e=>{t=void 0,!e.isDestroyed&&(W.getState(e.state)?.pendingReferenceKeys.size??0)!==0&&e.dispatch(e.state.tr.setMeta(uo,!0))};return{update(e,r){let i=W.getState(e.state);if((i?.pendingReferenceKeys.size??0)===0){t!=null&&clearTimeout(t),t=void 0;return}(t==null||W.getState(r)!==i)&&(t!=null&&clearTimeout(t),t=setTimeout(()=>n(e),200))},destroy(){t!=null&&clearTimeout(t)}}}})}function _o(e){return e.tr.setMeta(lo,!0)}function vo(e,t){return e?.href===t?.href&&e?.title===t?.title}function yo(e,t){if(e==null)return new Set(t.keys());let n=new Set;for(let[r,i]of e)vo(i,t.get(r))||n.add(r);for(let[r,i]of t)vo(i,e.get(r))||n.add(r);return n}function bo(e,t){if(e.size===0)return t;let n=new Set(e);for(let e of t)n.add(e);return n}function xo(e){return m(go(e))}function So(){return u({name:`mdImage`,inclusive:!1,attrs:{src:{default:``},alt:{default:``},title:{default:``},width:{default:null},height:{default:null},syntax:{default:null},wikiTarget:{default:null}},toDOM:()=>[`span`,{class:`md-image`},0],parseDOM:[{tag:`span.md-image`}]})}function Co(){return u({name:`mdMark`,inclusive:!1,toDOM:()=>[`span`,{class:`md-mark`},0],parseDOM:[{tag:`span.md-mark`}]})}function wo(){return u({name:`mdEm`,toDOM:()=>[`em`,0],parseDOM:[{tag:`em`}]})}function To(){return u({name:`mdStrong`,toDOM:()=>[`strong`,0],parseDOM:[{tag:`strong`}]})}function Eo(){return u({name:`mdCode`,toDOM:()=>[`code`,0],parseDOM:[{tag:`code`}]})}function Do(){return u({name:`mdLinkText`,inclusive:!1,attrs:{href:{default:``}},toDOM:e=>[`a`,{class:`md-link`,href:e.attrs.href},0],parseDOM:[{tag:`a`,getAttrs:e=>({href:e.getAttribute(`href`)??``})}]})}function Oo(){return u({name:`mdLinkUri`,inclusive:!1,toDOM:()=>[`span`,{class:`md-link-uri`},0],parseDOM:[{tag:`span.md-link-uri`}]})}function ko(){return u({name:`mdLinkTitle`,inclusive:!1,toDOM:()=>[`span`,{class:`md-link-title`},0],parseDOM:[{tag:`span.md-link-title`}]})}function Ao(){return u({name:`mdDel`,toDOM:()=>[`del`,0],parseDOM:[{tag:`del`}]})}function jo(){return u({name:`mdHighlight`,toDOM:()=>[`mark`,0],parseDOM:[{tag:`mark`}]})}function Mo(){return u({name:`mdTag`,toDOM:()=>[`span`,{class:`md-tag`},0],parseDOM:[{tag:`span.md-tag`}]})}function No(){return u({name:`mdWikilink`,inclusive:!1,attrs:{target:{default:``},display:{default:``}},toDOM:()=>[`span`,{class:`md-wikilink`},0],parseDOM:[{tag:`span.md-wikilink`}]})}function Po(){return u({name:`mdFile`,inclusive:!1,attrs:{href:{default:``},name:{default:``},title:{default:``}},toDOM:()=>[`span`,{class:`md-file`},0],parseDOM:[{tag:`span.md-file`}]})}function Fo(){return u({name:`mdMath`,inclusive:!1,attrs:{formula:{default:``}},toDOM:()=>[`span`,{class:`md-math`},0],parseDOM:[{tag:`span.md-math`}]})}function Io(){return u({name:`mdPack`,excludes:``,inclusive:!1,attrs:{key:{},data:{default:null}},toDOM:e=>[`span`,{class:`md-pack`,"data-key":e.attrs.key},0],parseDOM:[{tag:`span.md-pack`}]})}function Lo(){return b(Co(),wo(),To(),Eo(),Do(),Oo(),ko(),Ao(),jo(),Mo(),No(),So(),Po(),Fo(),Io())}const G={em:{node:S.Emphasis,delim:`*`},strong:{node:S.StrongEmphasis,delim:`**`},code:{node:S.InlineCode,delim:"`"},del:{node:S.Strikethrough,delim:`~~`},highlight:{node:S.Highlight,delim:`==`}},Ro=new Set([S.EmphasisMark,S.CodeMark,S.LinkMark,S.StrikethroughMark,S.HighlightMark]);function zo(e){return[e.children[0],e.children.at(-1)]}function Bo(e){let{type:t,children:n}=e;if(t===S.Emphasis||t===S.StrongEmphasis||t===S.Strikethrough||t===S.Highlight)return[n[0].to,n.at(-1).from];if(t===S.Link||t===S.Image){let e=n.find((e,t)=>t>0&&e.type===S.LinkMark);return e?[n[0].to,e.from]:null}return null}function Vo(e,t,n){for(let r of e){if(r.to<=t||r.from>=n||t<=r.from&&r.to<=n)continue;let i=Bo(r);return i&&i[0]<=t&&n<=i[1]?Vo(r.children,t,n):Vo(e,Math.min(t,r.from),Math.max(n,r.to))}return[t,n]}function Ho(e,t,n){for(let r of e)if(!(r.to<=t||r.from>=n)&&(t>r.from||r.to>n))return Ho(e,Math.min(t,r.from),Math.max(n,r.to));return[t,n]}function Uo(e,t,n){for(;t<n&&C(e.charCodeAt(t));)t++;for(;n>t&&C(e.charCodeAt(n-1));)n--;return[t,n]}function Wo(e,t,n,r){let i=ye(Ce(e),e=>e.type===r.node||Ro.has(e.type));for(let r=t;r<n;r++)if(!C(e.charCodeAt(r))&&i.every(e=>!(e.from<=r&&r<e.to)))return!1;return!0}function Go(e,t,n,r,i){let a=Ce(e),o=ye(a,e=>e.type===r.node);return i?Jo(e,o,t,n):Ko(e,a,o,t,n,r)}function Ko(e,t,n,r,i,a){for(let e=0;e!==i-r;){e=i-r,[r,i]=Vo(t,r,i);for(let e of n)e.to===r&&(r=e.from),e.from===i&&(i=e.to)}let o=[];for(let e of n)if(r<=e.from&&e.to<=i){let[t,n]=zo(e);o.push({from:t.from,to:t.to,insert:``}),o.push({from:n.from,to:n.to,insert:``})}let[s,c]=qo(e,r,i,o,a);return o.push({from:r,to:r,insert:s},{from:i,to:i,insert:c}),o}function qo(e,t,n,r,i){if(i.node!==S.InlineCode)return[i.delim,i.delim];let a=e.slice(t,n);for(let e of[...r].sort((e,t)=>t.from-e.from))a=a.slice(0,e.from-t)+a.slice(e.to-t);let o="`".repeat(wr(a)+1),s=a.startsWith("`")||a.endsWith("`")?` `:``;return[o+s,s+o]}function Jo(e,t,n,r){let i=[];for(let a of t){if(a.to<=n||a.from>=r)continue;let[t,o]=zo(a),s=Math.max(n,t.to),c=Math.min(r,o.from);for(s>=c&&([s,c]=[t.to,o.from]),[s,c]=Ho(a.children.slice(1,-1),s,c);s>t.to&&C(e.charCodeAt(s-1));)s--;for(;c<o.from&&C(e.charCodeAt(c));)c++;s>t.to?i.push({from:s,to:s,insert:e.slice(o.from,o.to)}):i.push({from:t.from,to:t.to,insert:``}),c<o.from?i.push({from:c,to:c,insert:e.slice(t.from,t.to)}):i.push({from:o.from,to:o.to,insert:``})}return i}function Yo(e,t,n){let{delim:r}=n,i=r.length;if(e.slice(t-i,t)===r&&e.startsWith(r,t)&&e[t-i-1]!==r[0]&&e[t+i]!==r[0])return{kind:`unwrap`,from:t-i,to:t+i};let a=Ce(e),o=ye(a,e=>e.type===n.node).findLast(e=>e.from<=t&&t<=e.to);if(o){let[e,n]=zo(o);return{kind:`move`,pos:t===o.from?e.to:t===o.to?n.from:o.to}}return Xo(a,t)||e[t-1]===r[0]||e[t]===r[0]?null:{kind:`insert`,pos:t}}function Xo(e,t){for(let n of e)if(n.from<t&&t<n.to){let e=Bo(n);return!e||t<e[0]||t>e[1]||Xo(n.children,t)}return!1}function K(e){return(t,n)=>{if(t.selection.empty)return Zo(e,t,n);let{from:r,to:i,anchor:a,head:o}=t.selection,s=[];t.doc.nodesBetween(r,i,(t,n)=>{if(t.type.spec.code)return!1;if(!t.isTextblock)return!0;let a=t.textContent,o=n+1,[c,l]=Uo(a,Math.max(r-o,0),Math.min(i-o,a.length));return c<l&&s.push({text:a,base:o,from:c,to:l,active:Wo(a,c,l,e)}),!1});let c=s.length>0&&s.every(e=>e.active),l=s.filter(e=>c||!e.active).flatMap(t=>Go(t.text,t.from,t.to,e,c).map(e=>({from:e.from+t.base,to:e.to+t.base,insert:e.insert})));if(l.length===0)return!1;if(n){let e=t.tr;l.sort((e,t)=>t.from-e.from||t.to-e.to);for(let t of l)t.insert?e.insertText(t.insert,t.from,t.to):e.delete(t.from,t.to);e.setSelection(E.create(e.doc,e.mapping.map(a,a<=o?1:-1),e.mapping.map(o,o<a?1:-1))),n(e.scrollIntoView())}return!0}}function Zo(e,t,n){let{$from:r}=t.selection,i=r.parent;if(!i.isTextblock||i.type.spec.code)return!1;let a=Yo(i.textContent,r.parentOffset,e);if(!a)return!1;if(n){let i=r.start(),o=t.tr;a.kind===`unwrap`&&o.delete(i+a.from,i+a.to),a.kind===`move`&&o.setSelection(E.create(o.doc,i+a.pos)),a.kind===`insert`&&(o.insertText(e.delim+e.delim,i+a.pos),o.setSelection(E.create(o.doc,i+a.pos+e.delim.length))),n(o.scrollIntoView())}return!0}function Qo(){return s({toggleEm:()=>K(G.em),toggleStrong:()=>K(G.strong),toggleCode:()=>K(G.code),toggleDel:()=>K(G.del),toggleHighlight:()=>K(G.highlight)})}function $o(){return l({"Mod-b":K(G.strong),"Mod-i":K(G.em),"Mod-e":K(G.code),"Mod-Shift-x":K(G.del),"Mod-Shift-h":K(G.highlight)})}function es(){return b(Qo(),$o())}function ts(e,t,n){let r;return e.doc.nodesBetween(t.from,t.to,(e,i)=>(e.isText&&e.marks.some(e=>Pn(e,n))&&(r={from:Math.max(i,t.from),to:Math.min(i+e.nodeSize,t.to)}),!0)),r}function q(e,t){let n=j(e,t,`mdLinkText`),r=j(e,t,`mdPack`,{key:`link`})??j(e,t,`mdPack`,{key:`autolink`}),i=r??n;if(!i)return;let a=r?.mark.attrs,o=n?.mark.attrs?.href??``;if(!r||a?.key!==`link`){let t={from:i.from,to:i.to};return{unit:t,text:a?.key===`autolink`?ts(e,t,`mdLinkText`)??{from:i.from+1,to:i.to-1}:t,href:o,title:``}}if(a.data.reference===!0){let e=n==null?{from:i.from,to:i.to}:{from:n.from+1,to:n.to};return{unit:{from:i.from,to:i.to},text:e,href:a.data.href,title:a.data.title}}let s=ts(e,i,`mdLinkUri`),c=s?s.from-2:i.to-3,l=s?s.from:i.to-1,u={from:i.from+1,to:c};return{unit:{from:i.from,to:i.to},text:u,label:u,dest:{from:l,to:i.to-1},href:a.data.href,title:a.data.title}}function ns(e){let t=e.trim();return t?be(t)??t:``}function rs(e,t){return e+(t?` "${t.replaceAll(/(["\\])/g,String.raw`\$1`)}"`:``)}function is(e){let{selection:t}=e,{$from:n,$to:r,empty:i}=t;if(i||!n.sameParent(r)||!y(t))return;let a=n.parent;if(!a.isTextblock||a.type.spec.code)return;let o=n.start(),[s,c]=Uo(a.textContent,n.parentOffset,r.parentOffset);if(!(s>=c))return{from:o+s,to:o+c}}function as({href:e,title:t,wrapText:n=!0}={}){return(r,i)=>{let a=is(r);if(!a)return!1;if(i){let{from:o,to:s}=a,c=r.tr,l=`](${rs(ns(e??``),t??``)})`;c.insertText(l,s).insertText(`[`,o);let u=s+1+l.length;c.setSelection(n?E.create(c.doc,o,u):E.create(c.doc,u)),c.scrollIntoView(),i(c)}return!0}}function os(e){return(t,n)=>{let r=q(t,t.selection.from);if(!r?.dest)return!1;let i=rs(ns(e.href??r.href),e.title??r.title);return n&&n(t.tr.insertText(i,r.dest.from,r.dest.to).scrollIntoView()),!0}}function ss(){return(e,t)=>{let n=q(e,e.selection.from);return n?.label?(t&&t(e.tr.delete(n.label.to,n.unit.to).delete(n.unit.from,n.label.from).scrollIntoView()),!0):!1}}function cs(){return s({insertLink:as,updateLink:os,removeLink:ss})}function ls(e){return(t,n,r)=>{let i=q(t,t.selection.from);if(i){if(i.label==null||i.dest==null)return!1;if(n&&r){let{unit:{from:a,to:o}}=i;n(t.tr.setSelection(E.create(t.doc,a,o)).scrollIntoView()),r.focus(),e({from:a,to:o,link:i})}return!0}let a=is(t);if(a){if(n&&r){let{from:i,to:o}=a;n(t.tr.setSelection(E.create(t.doc,i,o)).scrollIntoView()),r.focus(),e({from:i,to:o,link:void 0})}return!0}return!1}}function us(e){return l({"Mod-k":ls(e)})}function ds(e){return e===`)`||e===`*`||e===`+`?e:void 0}function fs(e){return e===`X`?e:void 0}function ps(e){return gs(e)?String(e):void 0}function ms(){return f({type:`list`,attr:`marker`,default:null,splittable:!0,toDOM:e=>{let t=ds(e);return t==null?null:[`data-list-marker`,t]},parseDOM:e=>{let t=e.getAttribute(`data-list-marker`);return t===`)`||t===`*`||t===`+`?t:null}})}function hs(){return f({type:`list`,attr:`taskMarker`,default:null,splittable:!0,toDOM:e=>{let t=fs(e);return t==null?null:[`data-list-task-marker`,t]},parseDOM:e=>e.getAttribute(`data-list-task-marker`)===`X`?`X`:null})}function gs(e){return e===2||e===3||e===4}function _s(){return f({type:`list`,attr:`markerGap`,default:1,splittable:!0,toDOM:e=>{let t=ps(e);return t==null?null:[`data-list-marker-gap`,t]},parseDOM:e=>{let t=Number.parseInt(e.getAttribute(`data-list-marker-gap`)??``,10);return gs(t)?t:1}})}function vs(e){let t=e.attrs;return{...Nt(e),"data-list-marker":ds(t.marker),"data-list-task-marker":fs(t.taskMarker),"data-list-marker-gap":ps(t.markerGap)}}function ys(){return o({serializeFragmentWrapper:e=>(...t)=>bs(It(e(...t))),serializeNodeWrapper:e=>(...t)=>{let n=e(...t);return we(n)?bs(It(n)):n},nodesFromSchemaWrapper:e=>(...t)=>({...e(...t),list:e=>Lt({node:e,nativeList:!0,getAttributes:vs})})})}function bs(e){we(e)&&xs(e);for(let t of e.children)bs(t);return e}function xs(e){if(!e.classList.contains(`prosemirror-flat-list`)||e.getAttribute(`data-list-kind`)!==`task`||e.children.length!==2)return;let t=e.children.item(0);if(!t||!t.classList.contains(`list-marker`))return;let n=Pt(t);if(!n)return;let r=e.children.item(1);if(!r||!r.classList.contains(`list-content`))return;let i=r.children.item(0);!i||![`P`,`H1`,`H2`,`H3`,`H4`,`H5`,`H6`].includes(i.tagName)||(e.replaceChildren(...r.children),i.prepend(n))}const Ss=[zt(/^\s?([*-])\s$/,{kind:`bullet`,collapsed:!1}),zt(/^\s?(\d+)\.\s$/,({match:e})=>{let t=e[1],n=t?parseInt(t,10):void 0;return{kind:`ordered`,collapsed:!1,order:n&&n>=2&&Number.isSafeInteger(n)?n:null}}),zt(/^\s?\[([\sX]?)\]\s$/i,({match:e})=>({kind:`task`,checked:[`x`,`X`].includes(e[1]),collapsed:!1})),zt(/^\s?\+\s$/,{kind:`task`,marker:`+`,checked:!1,collapsed:!1})];function Cs(){return b(Ss.map(at))}function ws(){return ht({kind:`task`,marker:`+`})}function Ts(){return ht({kind:`task`,marker:null})}function Es(e){let{$from:t}=e.selection;for(let e=t.depth;e>0;e--){let n=t.node(e);if(I(n,`list`))return n.attrs}return null}function Ds(){return(e,t,n)=>{let r=Es(e);return(r?.kind===`task`?r.marker===`+`?Ts():ws():ht({kind:`task`,marker:null,checked:!1}))(e,t,n)}}function Os(){return(e,t,n)=>{let r=Es(e);return pt(r?.kind===`bullet`||r?.kind===`ordered`?{kind:`ordered`,marker:null,checked:!1,collapsed:!1}:{kind:`bullet`,marker:null,checked:!1,collapsed:!1})(e,t,n)}}function ks(){return Mt({isToggleable:Ns})}function As(){return s({cycleCheckableList:Ds,cycleOrderedList:Os,wrapInCircleTask:ws,wrapInSquareTask:Ts,toggleListCollapsed:ks})}function js(){return(e,t,n)=>{let r=Es(e),i=r?.kind===`task`&&r.marker!==`+`,a;return a=i&&!r?.checked?{kind:`task`,marker:r?.marker??null,checked:!0}:i&&r?.checked?{kind:`bullet`,marker:null,checked:!1}:{kind:`task`,marker:null,checked:!1},ht(a)(e,t,n)}}function Ms(){return(e,t,n)=>{let r=Es(e),i=r?.kind===`task`&&r.marker===`+`,a;return a=i&&!r?.checked?{kind:`task`,marker:`+`,checked:!0}:i&&r?.checked?{kind:`bullet`,marker:null,checked:!1}:{kind:`task`,marker:`+`,checked:!1},ht(a)(e,t,n)}}function Ns(e){return I(e,`list`)&&e.attrs.kind===`bullet`&&e.childCount>=2&&e.firstChild?.type!==e.type}const Ps=e=>{let t=e.attrs;return t.kind===`task`?{...t,checked:!t.checked}:Ns(e)?{...t,collapsed:!t.collapsed}:t};function Fs(){return m(()=>[new w({props:{handleDOMEvents:{mousedown:(e,t)=>Ft({view:e,event:t,onListClick:Ps})}}}),At(),new w({props:{transformCopied:Rt}}),jt()])}function Is(){return l({"Mod-Enter":js(),"Mod-Shift-Enter":Ms(),"Mod-.":Mt({isToggleable:Ns}),"Mod-Shift-7":pt({kind:`ordered`,collapsed:!1}),"Mod-Shift-8":pt({kind:`bullet`,collapsed:!1}),"Mod-Shift-9":pt({kind:`task`,checked:!1,collapsed:!1})})}function Ls(){return b(dt(),Fs(),ut(),ct(),ys(),lt(),Cs(),Is(),ms(),hs(),_s(),As())}let Rs;function zs(){return Rs??=import(`./katex-chunk-Ch7kgbXr.js`).then(e=>e.render),Rs}function Bs(e,t,n,r){try{e(n,t,{displayMode:r,throwOnError:!1,output:`mathml`})}catch(e){t.textContent=String(e)}}var Vs=class{#e;#t;#n;#r;constructor(e,t){this.#r=e.attrs.formula,this.#e=document.createElement(`span`),this.#e.className=`md-math-view`,this.#n=document.createElement(`span`),this.#n.className=`md-math-view-preview`,this.#n.dataset.testid=`math-preview`,this.#n.contentEditable=`false`,this.#n.addEventListener(`mousedown`,e=>{e.preventDefault();let n=t.posAtDOM(this.#t,0);if(n<0)return;let r=E.near(t.state.doc.resolve(n),1);t.dispatch(t.state.tr.setSelection(r)),t.focus()}),this.#t=document.createElement(`span`),this.#t.className=`md-math-view-content`,this.#e.appendChild(this.#n),this.#e.appendChild(this.#t),this.#i()}get dom(){return this.#e}get contentDOM(){return this.#t}update(e){let t=e.attrs.formula;return t!==this.#r&&(this.#r=t,this.#i()),!0}ignoreMutation(e){return!this.#t.contains(e.target)}#i(){let e=this.#r;zs().then(t=>{e===this.#r&&Bs(t,this.#n,e,!1)})}};function Hs(){return d({name:`mdMath`,constructor:(e,t)=>new Vs(e,t)})}function Us(e){return e===`left`||e===`center`||e===`right`?e:null}function Ws(){return f({type:`tableCell`,attr:`align`,default:null,toDOM:e=>e?[`data-align`,e]:null,parseDOM:e=>Us(e.getAttribute(`data-align`))})}function Gs(){return f({type:`tableHeaderCell`,attr:`align`,default:null,toDOM:e=>e?[`data-align`,e]:null,parseDOM:e=>Us(e.getAttribute(`data-align`))})}function Ks(e){for(let t=0;t<e.childCount;t++){let n=e.child(t);for(let e=0;e<n.childCount;e++)if(I(n.child(e),`tableHeaderCell`))return t}return 0}function qs(e){return e.child(Ks(e))}function Js(e,t){return t>=e.childCount?null:e.child(t).attrs.align??null}function Ys(e,t,n){if(e.childCount===0)return;let r=qs(e),i=t+1;for(let t=0;t<e.childCount;t++){let a=e.child(t),o=i+1;for(let e=0;e<a.childCount;e++){let t=a.child(e),i=Js(r,e);(t.attrs.align??null)!==i&&n.setNodeMarkup(o,void 0,{...t.attrs,align:i}),o+=t.nodeSize}i+=a.nodeSize}}function Xs(e){let t,n;for(let r of e){if(!r.docChanged)continue;t!=null&&n!=null&&(t=r.mapping.map(t,-1),n=r.mapping.map(n,1));let e=r.mapping;for(let[r,i]of e.maps.entries()){let a=e.slice(r+1);i.forEach((e,r,i,o)=>{let s=a.map(i,-1),c=a.map(o,1);t=t==null?s:Math.min(t,s),n=n==null?c:Math.max(n,c)})}}if(t!=null&&n!=null)return{from:t,to:n}}function Zs(){return new w({key:new T(`table-align-sync`),appendTransaction(e,t,n){if(!e.some(e=>e.docChanged))return;let r=Xs(e);if(!r)return;let i=n.doc,a=Math.max(0,Math.min(r.from,i.content.size)),o=Math.max(a,Math.min(r.to,i.content.size)),s;return i.nodesBetween(a,o,(e,t)=>I(e,`table`)?(s??=n.tr,Ys(e,t,s),!1):!0),s?.docChanged?s:void 0}})}function Qs(){return m(Zs())}function $s(e){let{selection:t}=e;if(Jt(t)){let{$anchorCell:e,$headCell:n}=t,r=e.depth-1,i=e.index(),a=n.index();return{table:e.node(r),tablePos:e.before(r),firstColumn:Math.min(i,a),lastColumn:Math.max(i,a)}}let{$from:n}=t;for(let e=n.depth;e>2;e--){let t=n.node(e).type.name;if(t===`tableCell`||t===`tableHeaderCell`){let t=n.index(e-1);return{table:n.node(e-2),tablePos:n.before(e-2),firstColumn:t,lastColumn:t}}}}function ec(e){return(t,n)=>{let r=$s(t);if(!r||r.table.childCount===0)return!1;if(n){let{table:i,tablePos:a,firstColumn:o,lastColumn:s}=r,c=Ks(i),l=a+1;for(let e=0;e<c;e++)l+=i.child(e).nodeSize;let u=i.child(c),d=t.tr,f=l+1;for(let t=0;t<u.childCount;t++){let n=u.child(t);t>=o&&t<=s&&(n.attrs.align??null)!==e&&d.setNodeMarkup(f,void 0,{...n.attrs,align:e}),f+=n.nodeSize}n(d)}return!0}}function tc(e){let t=$s(e);if(!(!t||t.table.childCount===0))return Js(qs(t.table),t.lastColumn)??void 0}function nc(){return s({setTableColumnAlign:ec})}function rc(){return b(Ws(),Gs(),Qs(),nc())}function ic(e){let{$from:t}=e.selection;for(let e=t.depth;e>0;e--){let n=t.node(e).type.name;if(n===`tableCell`||n===`tableHeaderCell`)return!0}return!1}const ac=`paragraph`;function oc(){return b(p({name:`tableCell`,content:ac}),p({name:`tableHeaderCell`,content:ac}))}const sc=(e,t)=>{let{selection:n}=e;return!Jt(n)||!n.isColSelection()||!n.isRowSelection()?!1:qt(e,t)};function cc(){return x(l({Backspace:sc,Delete:sc}),t.high)}function lc(){return b(Kt(),Gt(),Bt(),Wt(),oc(),rc(),Ut({allowTableNodeSelection:!0}),Vt(),Ht(),cc())}function uc(e){let{selection:t}=e,{$from:n,$to:r}=t;if(ne(t)&&n.depth===0||n.depth>0&&r.depth>0&&n.index(0)===r.index(0))return n.index(0)}function dc(e){return(t,n)=>{if(ic(t))return!1;let r=uc(t);if(r==null)return!1;let i=r+e;if(i<0||i>=t.doc.childCount)return!1;if(n){let{selection:a}=t,o=Math.min(r,i),s=a.$from.posAtIndex(o,0),c=t.doc.child(o),l=t.doc.child(o+1),u=t.tr.replaceWith(s,s+c.nodeSize+l.nodeSize,[l,c]),d=e===-1?-c.nodeSize:l.nodeSize,f=ne(a)?Pe.create(u.doc,a.from+d):E.create(u.doc,a.anchor+d,a.head+d);u.setSelection(f),n(u.scrollIntoView())}return!0}}function fc(e){return(t,n,r)=>ft(e)(t,n,r)||dc(e===`up`?-1:1)(t,n,r)}function pc(){return l({"Alt-ArrowUp":fc(`up`),"Alt-ArrowDown":fc(`down`)})}const J=new T(`meowdownPendingReplacement`);function mc(e){return J.getState(e)?.pending??null}function hc(e,t){switch(e.type){case`start`:return{pending:{from:e.from,to:e.to,mode:e.mode,text:``}};case`append`:return t.pending?{pending:{...t.pending,text:t.pending.text+e.text}}:t;case`accept`:return t.pending?{pending:null,ended:{pending:t.pending,outcome:`accepted`}}:t;case`discard`:return t.pending?{pending:null,ended:{pending:t.pending,outcome:`discarded`}}:t}}const gc=new w({key:J,state:{init:()=>({pending:null}),apply:(e,t)=>{let n=e.getMeta(J);if(n)return hc(n,t);if(e.docChanged&&t.pending){let n=e.mapping.mapResult(t.pending.from,1),r=e.mapping.mapResult(t.pending.to,-1),i=Math.min(n.pos,r.pos),a=Math.max(n.pos,r.pos);return(n.deletedAfter&&r.deletedBefore||i>=a)&&t.pending.mode===`replace`?{pending:null,ended:{pending:t.pending,outcome:`discarded`}}:{pending:{...t.pending,from:i,to:a}}}return t}},props:{decorations:e=>{let t=mc(e);return!t||t.from>=t.to?null:O.create(e.doc,[D.inline(t.from,t.to,{class:`md-pending-replacement`})])}}});function _c(e){return(t,n)=>{let{from:r,to:i,mode:a}=e;return r<0||i>t.doc.content.size||r>i||r===i&&a===`replace`?!1:(n?.(t.tr.setMeta(J,{type:`start`,from:r,to:i,mode:a})),!0)}}function vc(e){return(t,n)=>mc(t)?(n?.(t.tr.setMeta(J,{type:`append`,text:e})),!0):!1}function yc(){return(e,t)=>mc(e)?(t?.(e.tr.setMeta(J,{type:`discard`})),!0):!1}function bc(e={}){return(t,n)=>{let r=mc(t);if(!r||!r.text.trim())return!1;if(n){let i=e.mode??r.mode,a=Xc(t.schema),o=Z(r.text,{nodes:a}),s=t.tr;if(s.setMeta(J,{type:`accept`}),i===`append`){let e=t.doc.resolve(r.to).after(1);s.insert(e,o.content),s.setSelection(E.near(s.doc.resolve(e+o.content.size),-1))}else{let e=t.doc.resolve(r.from),n=t.doc.resolve(r.to),i=o.childCount===1?o.firstChild:null;i!=null&&I(i,`paragraph`)&&e.sameParent(n)&&e.parent.isTextblock?(s.replaceWith(r.from,r.to,i.content),s.setSelection(E.near(s.doc.resolve(r.from+i.content.size),-1))):(s.replaceRange(r.from,r.to,new A(o.content,0,0)),s.setSelection(E.near(s.doc.resolve(s.mapping.map(r.to)),-1)))}n(s.scrollIntoView())}return!0}}function xc(){return s({startPendingReplacement:_c,appendPendingReplacementText:vc,acceptPendingReplacement:bc,discardPendingReplacement:yc})}function Sc(){return l({"Mod-Enter":bc(),Escape:yc()})}function Cc(){return b(m(gc),xc(),Sc())}function wc(e){return m(new w({view:()=>({update:(t,n)=>{let r=J.getState(n),i=J.getState(t.state);!i||r===i||(i.pending?i.pending!==r?.pending&&e({type:`update`,pending:i.pending}):i.ended&&i.ended!==r?.ended&&e({type:`ended`,pending:i.ended.pending,outcome:i.ended.outcome}))}})}))}function Tc(e){return e.left===e.right&&e.top===e.bottom}function Y(e,t,n){if(t<0||t>e.state.doc.content.size)return;let r;try{r=e.coordsAtPos(t,n)}catch{return}return Tc(r)?void 0:r}function Ec(e){let t=e.dom.ownerDocument.getSelection();if(t==null||t.rangeCount===0||!e.dom.contains(t.anchorNode))return;let n=t.getRangeAt(0).cloneRange();n.collapse(!0);let r=Array.from(n.getClientRects()).filter(e=>e.height>0);if(r.length===0)return;let i=r[r.length-1];return{left:i.left,top:i.top,height:i.height}}function Dc(e){let t=e.state,n=t.selection.head,r=B(t,n),i=V(t,n),a=t.doc.resolve(n),o=a.parentOffset>0&&a.parent.textBetween(a.parentOffset-1,a.parentOffset)===`
30
+ `,s=r==null&&!o,c=[[n,s],[n,!s]];r!=null&&c.push([r.from,!0]),i!=null&&c.push([i.to,!1]);for(let[t,n]of c){let r=Y(e,t,n?-1:1);if(r!=null&&r.bottom>r.top)return{left:r.left,top:r.top,height:r.bottom-r.top}}}function Oc(e){let t=e.state,n=t.selection.head;for(let r of cn){let i=j(t,n,r);if(i==null||i.from!==n&&i.to!==n)continue;let a=Ac(e,i.from+1);if(a==null)continue;let o=Array.from(a.getClientRects()).filter(e=>e.height>0);if(o.length===0)continue;let s=i.to===n,c=s?o[o.length-1]:o[0];return{left:s?c.right:c.left,top:c.top,height:c.height}}}function kc(e,t,n){let r=e.state;for(let i of cn){let a=j(r,t,i);if(a==null)continue;let o=Ac(e,a.from+1);if(o==null)continue;let s=Array.from(o.getClientRects()).filter(e=>e.height>0);if(s.length!==0)return n===1?s[0]:s[s.length-1]}}function Ac(e,t){let{node:n}=e.domAtPos(t,0);return(n instanceof Element?n:n.parentElement)?.closest(`.md-atom-view`)?.querySelector(`.md-atom-view-preview`)??void 0}function jc(e){return Dc(e)??Oc(e)}const Mc=new T(`meowdown-scroll-to-selection`);function Nc(e){let t=e.state.selection;if(!y(t)||Y(e,t.head,1)!=null)return!1;let n=jc(e);if(n==null)return!1;let r=e.domAtPos(t.head).node;return Lc(e,{left:n.left,right:n.left,top:n.top,bottom:n.top+n.height},r),!0}function X(e,t){return typeof e==`number`?e:e[t]}function Pc(e){let t=e.assignedSlot??e.parentNode;return t?.nodeType===11?t.host:t}function Fc(e){let t=e.defaultView?.visualViewport;return t?{left:0,right:t.width,top:0,bottom:t.height}:{left:0,right:e.documentElement.clientWidth,top:0,bottom:e.documentElement.clientHeight}}function Ic(e){let t=e.getBoundingClientRect(),n=t.width/e.offsetWidth||1,r=t.height/e.offsetHeight||1;return{left:t.left,right:t.left+e.clientWidth*n,top:t.top,bottom:t.top+e.clientHeight*r}}function Lc(e,t,n){let r=e.someProp(`scrollThreshold`)??0,i=e.someProp(`scrollMargin`)??5,a=e.dom.ownerDocument;for(let e=n;e;){if(e.nodeType!==1){e=Pc(e);continue}let n=e,o=n===a.body,s=o?Fc(a):Ic(n),c=0,l=0;if(t.top<s.top+X(r,`top`)?l=-(s.top-t.top+X(i,`top`)):t.bottom>s.bottom-X(r,`bottom`)&&(l=t.bottom-t.top>s.bottom-s.top?t.top+X(i,`top`)-s.top:t.bottom-s.bottom+X(i,`bottom`)),t.left<s.left+X(r,`left`)?c=-(s.left-t.left+X(i,`left`)):t.right>s.right-X(r,`right`)&&(c=t.right-s.right+X(i,`right`)),c||l)if(o)a.defaultView?.scrollBy(c,l);else{let e=n.scrollLeft,r=n.scrollTop;l&&(n.scrollTop+=l),c&&(n.scrollLeft+=c);let i=n.scrollLeft-e,a=n.scrollTop-r;t={left:t.left-i,top:t.top-a,right:t.right-i,bottom:t.bottom-a}}let u=o?`fixed`:getComputedStyle(n).position;if(/^(?:fixed|sticky)$/.test(u))break;e=u===`absolute`?n.offsetParent:Pc(n)}}function Rc(){return m(new w({key:Mc,props:{handleScrollToSelection:Nc}}))}function zc(e,t){return(n,r)=>{let i=e<0?Fe.atStart(n.doc):Fe.atEnd(n.doc),a=t?E.between(n.selection.$anchor,i.$head):i;return n.selection.eq(a)||r?.(n.tr.setSelection(a).scrollIntoView()),!0}}function Bc(){return l({"Meta-ArrowUp":zc(-1,!1),"Meta-ArrowDown":zc(1,!1),"Shift-Meta-ArrowUp":zc(-1,!0),"Shift-Meta-ArrowDown":zc(1,!0)})}function Vc(e){return m(new w({props:{attributes:e}}))}function Hc(e){return b(ir(),ke(),Ni(),Me(),Oe(),Ls(),er(),lc(),hi(),aa(),oa(),Lo(),Vc({class:`meowdown-content`}),oi(),Oi(),Ai(),pc(),Bc(),xo(e),es(),cs(),Va(),Hs(),rn(e.markMode??`focus`),ei(),Rc(),ra(),bn({marks:cn.map(e=>({name:e,modes:[`hide`,`focus`,`show`]}))}),a(),i(),c(),Ae(),Ne(),je(),Si(),Cc(),Mi())}function Uc(e={}){return Hc(e)}const Wc=De(()=>{let e=Uc().schema;if(e==null)throw Error(`Unexpected empty schema`);return e}),Gc=De(()=>r(Wc())),Kc=De(()=>n(Wc())),qc=`meowdown_mark_builders`;function Jc(e){let t=e.cached[qc];if(t)return t;let r=n(e);return e.cached[qc]=r,r}const Yc=`meowdown_node_builders`;function Xc(e){let t=e.cached[Yc];if(t)return t;let n=r(e);return e.cached[Yc]=n,n}function Z(e,t={}){let{nodes:n=Gc(),frontmatter:r=!1}=t,i,a=e;if(r){let[t,n]=Qc(e);i=t,n&&(a=e.slice(n))}let o=$c(n,xe.parse(a).cursor(),a);return n.doc(i===void 0?{}:{frontmatter:i},o)}const Zc=/^---[ \t]*\r?\n([\s\S]*?\n)?---[ \t]*(?:\r?\n|$)/;function Qc(e){let t=Zc.exec(e);return t?[(t[1]??``).replace(/\r?\n$/,``),t[0].length]:[]}function $c(e,t,n){let r=[];if(!t.firstChild())return r;let i;do i!=null&&el(r,e,n,i,t.from),i=t.to,r.push(...tl(e,t,n));while(t.nextSibling());return t.parent(),r}function el(e,t,n,r,i){let a=0;for(let e=r;e<i;e++)n.charCodeAt(e)===10&&a++;for(let n=2;n<a;n++)e.push(t.paragraph())}function tl(e,t,n){switch(t.type.id){case S.ATXHeading1:return[Q(e,t,n,1,!1)];case S.ATXHeading2:return[Q(e,t,n,2,!1)];case S.ATXHeading3:return[Q(e,t,n,3,!1)];case S.ATXHeading4:return[Q(e,t,n,4,!1)];case S.ATXHeading5:return[Q(e,t,n,5,!1)];case S.ATXHeading6:return[Q(e,t,n,6,!1)];case S.SetextHeading1:return[Q(e,t,n,1,!0)];case S.SetextHeading2:return[Q(e,t,n,2,!0)];case S.Paragraph:return[sl(e,t,n)];case S.LinkReference:return[sl(e,t,n)];case S.CommentBlock:return[cl(e,t,n)];case S.HTMLBlock:case S.ProcessingInstructionBlock:return[sl(e,t,n)];case S.Blockquote:return[ll(e,t,n)];case S.BulletList:return ul(e,t,n,`bullet`);case S.OrderedList:return ul(e,t,n,`ordered`);case S.FencedCode:case S.CodeBlock:return[ml(e,t,n)];case S.BlockMath:return[hl(e,t,n)];case S.HorizontalRule:{let r=n.slice(t.from,t.to).trimEnd();return[e.horizontalRule({marker:r===`---`?null:r})]}case S.Table:return[gl(e,t,n)];case S.Task:return[sl(e,t,n)];default:return n.slice(t.from,t.to).trim()===``?[]:(console.warn(`[meowdown] unsupported lezer block "${t.type.name}"`),[sl(e,t,n)])}}function Q(e,t,n,r,i){let a=t.from,o=t.from,s=t.to,c=-1,l=-1;if(t.firstChild()){t.type.id===S.HeaderMark&&t.from===a&&(o=t.to);let e=-1,n=-1,r=-1;do e=t.type.id,n=t.from,r=t.to;while(t.nextSibling());e===S.HeaderMark&&n>o&&(s=n,c=n,l=r),t.parent()}let u=al(n.slice(o,s),$(n,o)).trim(),d=i?nl(n,c,l)||1:null,f=!i&&c>=0&&rl(n,c,l)||null;return e.heading({level:r,setextUnderline:d,closingHashes:f},u)}function nl(e,t,n){if(t<0)return 0;let r=0;for(let i=t;i<n;i++){let t=e.charCodeAt(i);(t===61||t===45)&&r++}return r}function rl(e,t,n){if(t<0)return 0;let r=0;for(let i=t;i<n;i++)e.charCodeAt(i)===35&&r++;return r}function $(e,t){let n=e.lastIndexOf(`
31
+ `,t-1)+1,r=0;for(let i=n;i<t;i++)r+=e.charCodeAt(i)===9?4-r%4:1;return r}function il(e,t){let n=0,r=0;for(;r<e.length&&n<t;){let t=e.charCodeAt(r);if(t===32)n+=1;else if(t===9)n+=4-n%4;else break;r++}return e.slice(r)}function al(e,t){return t===0||!e.includes(`
32
32
  `)?e:e.split(`
33
- `).map((e,n)=>n===0?e:fl(e,t)).join(`
34
- `)}function ml(e,t,n){return e.paragraph(pl(t,n))}function hl(e,t,n){let r=t.from,i=t.to,a=$(n,r);if(t.firstChild()){let o=``,s=r;do t.type.id===S.QuoteMark&&(o+=n.slice(s,t.from),s=t.to,C(n.charCodeAt(s))&&(s+=1));while(t.nextSibling());return t.parent(),o+=n.slice(s,i),ml(e,o,a)}return ml(e,n.slice(r,i),a)}function gl(e,t,n){let r=$(n,t.from),i=pl(n.slice(t.from,t.to),r);return e.htmlComment({content:i})}function _l(e,t,n){let r=[];if(t.firstChild()){let i;do{if(t.type.id===S.QuoteMark)continue;i!=null&&cl(r,e,n,i,t.from),i=t.to,r.push(...ll(e,t,n))}while(t.nextSibling());t.parent()}return e.blockquote(r)}function vl(e,t,n,r){let i=[];if(t.firstChild()){do t.type.id===S.ListItem&&i.push(xl(e,t,n,r));while(t.nextSibling());t.parent()}return i}function yl(e,t,n){if(n===`ordered`){let n=t.charCodeAt(e.to-1),r;n===41?r=`)`:n===46&&(r=`.`);let i=Number.parseInt(t.slice(e.from,e.to),10);return{marker:r,order:Number.isFinite(i)?i:1}}let r=t.charCodeAt(e.from);return{marker:r===42?`*`:r===43?`+`:`-`,order:void 0}}function bl(e,t,n){let r=t.from,i=t.to,a=!1,o;if(t.firstChild()){if(t.type.id===S.TaskMarker){let e=n.charCodeAt(t.from+1);e===120?(a=!0,o=`x`):e===88&&(a=!0,o=`X`),r=t.to}t.parent()}C(n.charCodeAt(r))&&(r+=1);let s=ml(e,n.slice(r,i),$(n,r));return{checked:a,taskMarker:o,paragraph:s}}function xl(e,t,n,r){let i=[],a,o,s,c,l,u;if(t.firstChild()){do{if(t.type.id!==S.ListMark&&u==null&&(u=$(n,t.from)),t.type.id===S.ListMark){let e=yl(t,n,r);c=e.marker,s=e.order,l=$(n,t.to);continue}if(r===`bullet`&&t.type.id===S.Task){let r=bl(e,t,n);a=r.checked,o=r.taskMarker,i.push(r.paragraph);continue}i.push(...ll(e,t,n))}while(t.nextSibling());t.parent()}let d=u!=null&&l!=null?u-l:1,f=a!=null,p=!f&&r===`bullet`&&c===`+`,m={kind:f?`task`:r,order:r===`ordered`?s??1:null,checked:a??!1,collapsed:p,marker:p?null:c,taskMarker:o,markerGap:d>=2&&d<=4?d:1};return e.list(m,i)}function Sl(e,t,n){let r=t.type.id===S.CodeBlock,i=``,a=``,o=r?`indented`:null,s=null,c=!1;if(t.firstChild()){do switch(t.type.id){case S.CodeMark:{if(c)break;c=!0,n.charCodeAt(t.from)===126&&(o=`tilde`);let e=t.to-t.from;e>3&&(s=e);break}case S.CodeInfo:i=n.slice(t.from,t.to);break;case S.CodeText:a+=n.slice(t.from,t.to);break}while(t.nextSibling());t.parent()}return e.codeBlock({language:i,fenceStyle:o,fenceLength:s},a)}function Cl(e,t,n){let r=``;if(t.firstChild()){do t.type.id===S.CodeText&&(r+=n.slice(t.from,t.to));while(t.nextSibling());t.parent()}return e.codeBlock({language:`math`,fenceStyle:`dollar`,fenceLength:null},r)}function wl(e,t,n){let r=[];if(t.firstChild()){do t.type.id===S.TableDelimiter&&(r=Tl(n.slice(t.from,t.to)));while(t.nextSibling());t.parent()}let i=[];if(t.firstChild()){do{let a=t.type.id;a===S.TableHeader?i.push(El(e,t,n,!0,r)):a===S.TableRow&&i.push(El(e,t,n,!1,r))}while(t.nextSibling());t.parent()}return e.table(i)}function Tl(e){return e.split(`|`).map(e=>e.trim()).filter(e=>e!==``).map(e=>{let t=e.startsWith(`:`),n=e.endsWith(`:`);return t&&n?`center`:t?`left`:n?`right`:null})}function El(e,t,n,r,i){let a=i.length,o=Array(a).fill(``);if(t.firstChild()){let e=t.type.id===S.TableDelimiter,r=0;do if(t.type.id===S.TableDelimiter)r++;else if(t.type.id===S.TableCell){let i=r-+!!e;i>=0&&i<a&&(o[i]=n.slice(t.from,t.to).trim().replaceAll(String.raw`\|`,`|`))}while(t.nextSibling());t.parent()}let s=o.map((t,n)=>{let a=e.paragraph(t),o={align:i[n]};return r?e.tableHeaderCell(o,a):e.tableCell(o,a)});return e.tableRow(s)}function Dl(e){return e.replace(/\n+$/u,``)}function Ol(e){return/^[\s>]*$/u.test(e)}function kl(e){return e.split(`
35
- `).filter(e=>!Ol(e))}function Al(e){return e.trim().replaceAll(/\s+/gu,` `)}const jl=/^:?-+:?$/u;function Ml(e){let t=e.startsWith(`:`),n=e.endsWith(`:`);return t&&n?`:-:`:t?`:--`:n?`--:`:`---`}function Nl(e){if(!e.includes(`|`))return;let t=/^[\s>]*/u.exec(e)?.[0]??``,n=e.slice(t.length).trim().replace(/^\|/u,``).replace(/\|$/u,``).split(`|`).map(e=>Al(e));return Al(`${t} | ${(n.every(e=>jl.test(e))?n.map(Ml):n).join(` | `)} |`)}function Pl(e){return Nl(e)??Al(e)}function Fl(e,t={}){let n=Tr(Z(e,{frontmatter:t.frontmatter}),{frontmatter:t.frontmatter});if(Dl(n)===Dl(e))return`exact`;let r=kl(e),i=kl(n);return r.length===i.length&&r.every((e,t)=>Pl(e)===Pl(i[t]))?`normalizing`:`lossy`}const Il=(e,t)=>{let{$from:n,empty:r}=e.selection;if(!r||n.depth!==1||n.index(0)!==0||!I(n.parent,`heading`)||n.parentOffset!==n.parent.content.size)return!1;if(t){let r=_(e.schema,`list`),i=_(e.schema,`paragraph`),a=r.create({kind:`bullet`},i.create()),o=n.after(),s=e.tr.insert(o,a);s.setSelection(E.create(s.doc,o+2)),t(s.scrollIntoView())}return!0};function Ll(){return x(l({Enter:Il}),t.high)}const Rl=new Set([`MscGen`,`Xù`,`MsGenny`,`Angular Template`,`Brainfuck`,`Esper`,`Oz`,`Factor`,`Squirrel`,`Yacas`,`mIRC`,`FCL`,`ECL`,`MUMPS`,`Pig`,`Asterisk`,`Z80`,`Mathematica`]),zl=$e.map(e=>({label:e.name,value:e.name.toLowerCase()})).filter(e=>!Rl.has(e.label)).concat([{label:`Plain text`,value:``},{label:`Math`,value:`math`},{label:`Mermaid`,value:`mermaid`}]).sort((e,t)=>e.label.localeCompare(t.label));function Bl(){return typeof window>`u`?!1:window.matchMedia(`(prefers-color-scheme: dark)`).matches}const Vl=/^(?:www\.|mobile\.)?(?:twitter\.com|x\.com)$/i,Hl=/\/status(?:es)?\/(\d+)/;function Ul(e){let t;try{t=new URL(e)}catch{return}if(Vl.test(t.hostname))return Hl.exec(t.pathname)?.[1]}const Wl=e=>{let t=Ul(e);if(!t)return;let n=Bl()?`dark`:`light`;return{kind:`tweet`,key:`tweet:${t}`,src:`https://platform.twitter.com/embed/Tweet.html?id=${t}&theme=${n}&dnt=true`,title:`Tweet`,className:`md-embed md-embed-tweet`,testid:`tweet-embed`}};function Gl(e,t){let n=n=>{if(n.source===e.contentWindow)try{let r=n.data?.[`twttr.embed`]?.params?.[0]?.height;typeof r==`number`&&r>0&&(Kl(e,r),t?.(r))}catch(e){console.warn(`[meowdown] failed to parse tweet resize message:`,e)}};window.addEventListener(`message`,n);let r=!1,i=()=>{r||(r=!0,window.removeEventListener(`message`,n),a.disconnect())},a=new MutationObserver(()=>{e.isConnected||i()});return a.observe(document.body,{childList:!0,subtree:!0}),i}function Kl(e,t){t&&t>0&&(e.style.height=`${t}px`,e.dataset.sized=``)}const ql=/^(?:www\.|m\.)?(?:youtube\.com|youtube-nocookie\.com)$/i,Jl=/^(?:www\.)?youtu\.be$/i,Yl=/^[\w-]{11}$/;function Xl(e){let t;try{t=new URL(e)}catch{return}let n=null;if(Jl.test(t.hostname))n=t.pathname.slice(1);else if(ql.test(t.hostname)){let[,e,r]=t.pathname.split(`/`);t.pathname===`/watch`?n=t.searchParams.get(`v`):(e===`shorts`||e===`embed`||e===`live`)&&(n=r??null)}if(!n||!Yl.test(n))return;let r=t.searchParams.get(`start`)??t.searchParams.get(`t`),i=r?Zl(r):void 0;return{videoId:n,startSeconds:i}}function Zl(e){if(/^\d+$/.test(e))return Number(e);let t=/^(?:(\d+)h)?(?:(\d+)m)?(?:(\d+)s)?$/.exec(e);if(!(!t||!t[1]&&!t[2]&&!t[3]))return Number(t[1]??0)*3600+Number(t[2]??0)*60+Number(t[3]??0)}const Ql=[e=>{let t=Xl(e);if(!t)return;let n=t.startSeconds?`?start=${t.startSeconds}`:``;return{kind:`youtube`,key:`youtube:${t.videoId}:${t.startSeconds??0}`,src:`https://www.youtube-nocookie.com/embed/${t.videoId}${n}`,title:`YouTube video`,className:`md-embed md-embed-youtube`,testid:`youtube-embed`,allow:`accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen`,allowFullscreen:!0}},Wl];function $l(e){for(let t of Ql){let n=t(e);if(n)return n}}function eu(e,t){return e.clipboardData?.getData(`text/plain`)||t.content.textBetween(0,t.content.size,`
36
- `)}const tu=new T(`meowdown-embed-paste`);function nu(e){let t=e.trim();if(!(!t||/\s/.test(t)))return $l(t)?t:void 0}function ru(e,t){let{from:n,to:r}=e.state.selection;e.dispatch(Yt(e.state.tr.insertText(t,n,r)));let i=e.state.tr.insertText(`![](${t})`,n,n+t.length);e.dispatch(Yt(i))}function iu(){return m(new w({key:tu,props:{handlePaste:(e,t,n)=>{let r=e.state.selection.$from.parent;if(!r.inlineContent||r.type.spec.code)return!1;let i=eu(t,n);if(!i)return!1;let a=nu(i);return a?(ru(e,a),!0):!1}}}))}const au=new T(`meowdown-exit-boundary`);function ou(e,t){let{$anchor:n,$head:r}=e.selection,i=t>0?n.max(r):n.min(r),a=i.parent.inlineContent?i.depth?e.doc.resolve(t>0?i.after():i.before()):void 0:i;return!!(a&&Fe.findFrom(a,t))}function su(e,t){let{state:n}=e,{selection:r}=n;return y(r)&&!r.empty||v(r)||r.$from.parent.inlineContent&&!e.endOfTextblock(t<0?`up`:`down`)?!0:ou(n,t)}function cu(e){return new w({key:au,props:{handleKeyDown:(t,n)=>{if(n.shiftKey||n.altKey||n.ctrlKey||n.metaKey)return!1;let r=n.key===`ArrowUp`?-1:n.key===`ArrowDown`?1:void 0;return!(!r||su(t,r)||e({direction:r<0?`up`:`down`,event:n})===!1)}}})}function lu(e){return x(m(cu(e)),t.low)}const uu=new T(`meowdown-file-click`);function du(e,t){let n=j(e,t,`mdFile`);if(!n)return;let{href:r,name:i}=n.mark.attrs;return{href:r,name:i}}function fu(e){return m(new w({key:uu,props:{handleClick:(t,n,r)=>{let i=r.target?.closest?.(`.md-file-view-preview`);if(!i)return!1;let a=i.closest(`.md-file-view`)?.querySelector(`.md-file-view-content`);if(!a)return!1;let o=du(t.state,t.posAtDOM(a,0));return o?(e({href:o.href,name:o.name,event:r}),!0):!1}}}))}const pu=new Set([`avif`,`bmp`,`gif`,`jpeg`,`jpg`,`png`,`svg`,`webp`]);function mu(e){if(e.type?.startsWith(`image/`))return!0;let t=e.name.lastIndexOf(`.`);if(t===-1)return!1;let n=e.name.slice(t+1).toLowerCase();return pu.has(n)}function hu(e,t){return mu(e)?`![](${t})`:`[${vu(e.name)}](${t})`}function gu(e,t){return!e||!t.onFilePaste?[]:Array.from(e.files)}const _u=e=>{console.error(`[meowdown] failed to save pasted file:`,e)};function vu(e){return e.replaceAll(/[\\[\]]/g,String.raw`\$&`)}async function yu(e,t,n,r){let{onFilePaste:i}=n;if(!i)return;let a=n.onFileSaveError??_u,o=r,s=!1;for(let n of t){let t;try{t=await i(n)}catch(e){a(e,n);continue}if(!t||e.isDestroyed)continue;let r=hu(n,t),c=s?`\n${r}`:r,l=o==null?e.state.tr.insertText(c):e.state.tr.insertText(c,o);e.dispatch(l),s=!0,o!=null&&(o+=c.length)}}function bu(e){return new w({key:new T(`file-paste`),props:{handlePaste:(t,n)=>{let r=gu(n.clipboardData,e);return r.length===0?!1:(yu(t,r,e),!0)},handleDrop:(t,n)=>{let r=gu(n.dataTransfer,e);return r.length===0?!1:(yu(t,r,e,t.posAtCoords({left:n.clientX,top:n.clientY})?.pos),!0)}}})}function xu(e={}){return x(m(bu(e)),t.high)}const Su=[`KB`,`MB`,`GB`,`TB`];function Cu(e){let t=e,n=`B`;for(let e of Su){if(t<999.5)break;t/=1e3,n=e}return n===`B`?`${Math.round(t)} B`:`${t<9.95?Math.round(t*10)/10:Math.round(t)} ${n}`}const wu=new Map([[`pdf`,`pdf`],[`zip`,`archive`],[`tar`,`archive`],[`gz`,`archive`],[`tgz`,`archive`],[`rar`,`archive`],[`7z`,`archive`],[`doc`,`doc`],[`docx`,`doc`],[`pages`,`doc`],[`xls`,`sheet`],[`xlsx`,`sheet`],[`csv`,`sheet`],[`numbers`,`sheet`],[`ppt`,`slides`],[`pptx`,`slides`],[`key`,`slides`],[`mp3`,`audio`],[`wav`,`audio`],[`m4a`,`audio`],[`flac`,`audio`],[`ogg`,`audio`],[`mp4`,`video`],[`mov`,`video`],[`mkv`,`video`],[`webm`,`video`],[`txt`,`text`],[`md`,`text`]]);function Tu(e){let t=e.split(/[?#]/,1)[0],n=t.lastIndexOf(`.`);if(n<0)return`generic`;let r=t.slice(n+1).toLowerCase();return wu.get(r)??`generic`}const Eu=`http://www.w3.org/2000/svg`;function Du(){let e=document.createElementNS(Eu,`svg`);e.setAttribute(`class`,`md-file-view-icon`),e.setAttribute(`viewBox`,`0 0 24 24`),e.setAttribute(`aria-hidden`,`true`);for(let t of[`M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z`,`M14 2v4a2 2 0 0 0 2 2h4`]){let n=document.createElementNS(Eu,`path`);n.setAttribute(`d`,t),n.setAttribute(`fill`,`none`),n.setAttribute(`stroke`,`currentColor`),n.setAttribute(`stroke-width`,`2`),n.setAttribute(`stroke-linecap`,`round`),n.setAttribute(`stroke-linejoin`,`round`),e.appendChild(n)}return e}var Ou=class{#e;#t;#n;#r;#i;#a;#o=!1;constructor(e,t){this.#a=e.attrs,this.#e=document.createElement(`span`),this.#e.className=`md-file-view md-atom-view`,this.#n=document.createElement(`span`),this.#n.className=`md-file-view-preview md-atom-view-preview`,this.#n.contentEditable=`false`,this.#n.dataset.testid=`file-pill`,this.#n.dataset.fileKind=Tu(this.#a.href),this.#n.title=this.#a.name,this.#e.appendChild(this.#n),this.#n.appendChild(Du()),this.#r=document.createElement(`span`),this.#r.className=`md-file-view-name`,this.#r.textContent=this.#a.name,this.#n.appendChild(this.#r),this.#i=document.createElement(`span`),this.#i.className=`md-file-view-size`,this.#i.dataset.testid=`file-pill-size`,this.#n.appendChild(this.#i),this.#t=document.createElement(`span`),this.#t.className=`md-file-view-content md-atom-view-content`,this.#e.appendChild(this.#t),this.#s(t.resolveFileInfo)}get dom(){return this.#e}get contentDOM(){return this.#t}update(e){let t=e.attrs,n=this.#a;return t.href===n.href?(this.#a=t,t.name!==n.name&&(this.#r.textContent=t.name,this.#n.title=t.name),!0):!1}ignoreMutation(e){return!this.#t.contains(e.target)}destroy(){this.#o=!0}async#s(e){if(!e)return;let t;try{t=await e(this.#a.href)}catch(e){console.error(`[meowdown] resolveFileInfo failed:`,e);return}if(this.#o||!t)return;let{size:n}=t;n==null||!Number.isFinite(n)||n<0||(this.#i.textContent=Cu(n))}};function ku(e={}){return d({name:`mdFile`,constructor:t=>new Ou(t,e)})}function Au(e){return m(new w({key:e.key,props:{handleClick:(t,n,r)=>{let i=r.target?.closest?.(e.selector);if(!i)return!1;let a=e.findPayloadForElement?e.findPayloadForElement(t,i):e.findPayloadAt(t.state,n);return a==null?!1:(e.preventDefault&&r.preventDefault(),e.onClick(a,r),!0)}}}))}const ju=new T(`meowdown-tag-click`);function Mu(e,t){let n=j(e,t,`mdTag`);if(!n)return;let r=e.doc.textBetween(n.from,n.to),i=r.startsWith(`#`)?r.slice(1):r;return{from:n.from,to:n.to,tag:i}}function Nu(e){return Au({key:ju,selector:`.md-tag`,preventDefault:!1,findPayloadAt:(e,t)=>Mu(e,t)?.tag,onClick:(t,n)=>e({tag:t,event:n})})}const Pu=new T(`meowdown-wikilink-click`);function Fu(e,t){let n=j(e,t,`mdWikilink`);if(!n)return;let{target:r}=n.mark.attrs;return{from:n.from,to:n.to,target:r}}function Iu(e,t){let n=t.closest(`.md-wikilink-view`)?.querySelector(`.md-wikilink-view-content`);if(n)return Fu(e.state,e.posAtDOM(n,0))}function Lu(e){return Au({key:Pu,selector:`.md-wikilink-view-preview`,preventDefault:!1,findPayloadAt:(e,t)=>Fu(e,t)?.target,findPayloadForElement:(e,t)=>Iu(e,t)?.target,onClick:(t,n)=>e({target:t,event:n})})}const Ru=new T(`meowdown-follow-link`);function zu(e){return e.key!==`Enter`||e.shiftKey||e.altKey?!1:ee?e.metaKey&&!e.ctrlKey:e.ctrlKey&&!e.metaKey}function Bu(e){return new w({key:Ru,props:{handleKeyDown:(t,n)=>{if(!zu(n))return!1;let{state:r}=t,i=r.selection.head,a=e.onWikilinkClick&&Fu(r,i);if(a)return e.onWikilinkClick?.({target:a.target,event:n}),!0;let o=e.onTagClick&&Mu(r,i);if(o)return e.onTagClick?.({tag:o.tag,event:n}),!0;let s=e.onFileClick&&du(r,i);if(s)return e.onFileClick?.({href:s.href,name:s.name,event:n}),!0;let c=e.onLinkClick&&q(r,i);return c?(e.onLinkClick?.({href:c.href,event:n}),!0):!1}}})}function Vu(e){return x(m(Bu(e)),t.high)}const Hu=new T(`meowdown-image-click`);function Uu(e){return e instanceof HTMLElement&&e.closest(`.md-image-view-preview`)}function Wu(e,t){let n=j(e,t,`mdImage`);if(!n)return;let{src:r,alt:i}=n.mark.attrs;return{from:n.from,to:n.to,src:r,alt:i}}function Gu(e,t){let n=t.closest(`.md-image-view`)?.querySelector(`.md-image-view-content`);if(n)return Wu(e.state,e.posAtDOM(n,0))}function Ku(e,t){return Array.from(e).find(e=>e.identifier===t)}function qu(e,t){return Math.abs(t.clientX-e.clientX)<=10&&Math.abs(t.clientY-e.clientY)<=10}function Ju(e){let t=new WeakMap;return m(new w({key:Hu,props:{handleDOMEvents:{pointerdown:(e,t)=>(Uu(t.target)&&t.pointerType!==`mouse`&&t.preventDefault(),!1),touchstart:(e,n)=>{if(t.delete(e),n.touches.length!==1||!Uu(n.target)||n.target instanceof HTMLElement&&n.target.closest(`.md-image-resize-handle`))return!1;let r=n.changedTouches[0];return r&&t.set(e,{identifier:r.identifier,clientX:r.clientX,clientY:r.clientY}),!1},touchmove:(e,n)=>{let r=t.get(e);if(!r)return!1;let i=Ku(n.changedTouches,r.identifier);return i&&!qu(r,i)&&t.delete(e),!1},touchcancel:e=>(t.delete(e),!1),touchend:(n,r)=>{let i=t.get(n);if(t.delete(n),!i||r.touches.length>0)return!1;let a=Ku(r.changedTouches,i.identifier);if(!a||!qu(i,a))return!1;let o=Uu(r.target);if(!o)return!1;r.preventDefault();let s=Gu(n,o);return s&&e({src:s.src,alt:s.alt,event:r}),!0}},handleClick:(t,n,r)=>{let i=Uu(r.target);if(!i)return!1;let a=Gu(t,i);return a?(e({src:a.src,alt:a.alt,event:r}),!0):!1}}}))}function Yu(e){return/^https?:\/\//i.test(e)?e:void 0}function Xu(e,t,n){let r=document.createElement(`iframe`);return r.src=e.src,r.title=e.title,r.className=e.className,r.dataset.testid=e.testid,r.loading=`lazy`,r.referrerPolicy=`strict-origin-when-cross-origin`,r.setAttribute(`frameborder`,`0`),e.allow&&(r.allow=e.allow),e.allowFullscreen&&(r.allowFullscreen=!0),e.kind===`tweet`&&(Kl(r,t),Gl(r,n)),r}function Zu(e,t,n){t!=null&&e.setAttribute(`data-width`,String(Math.ceil(t))),n!=null&&e.setAttribute(`data-height`,String(Math.ceil(n)))}function Qu(e,t,n,r){if(n!=null&&r!=null){Zu(e,n,r);return}let i=t.naturalWidth/t.naturalHeight;if(!Number.isFinite(i)||i<=0){Zu(e,n,r);return}let a=n==null?Math.min(t.naturalHeight,500):n/i;Zu(e,n??a*i,a)}function $u(e,t,n,r){let i=e.state.doc.textBetween(t.from,t.to),a=ya(i),o=t.from+a.length,s=i.slice(a.length),c=va({...ga(s),...n});if(c===s)return;let l=e.state.tr.insertText(c,o,t.to);r||l.setMeta(`addToHistory`,!1),e.dispatch(l)}function ed(e,t,n,r){let i=e.posAtDOM(t,0),a=j(e.state,i,`mdImage`);if(!a)return;let o=a.mark.attrs;if(o.syntax===`wikiEmbed`){let t=e.state.doc.textBetween(a.from,a.to),i=o.wikiTarget||Ia(t).target;if(!i)return;let s=La(i,n,r);s!==t&&e.dispatch(e.state.tr.insertText(s,a.from,a.to));return}$u(e,a,{width:Math.round(n),height:Math.round(r)},!0)}function td(e,t,n){if(!e.editable||!t.isConnected)return;let r=e.posAtDOM(t,0),i=j(e.state,r,`mdImage`);if(!i)return;let a=i.mark.attrs;a.height!=null&&Math.abs(n-a.height)<=8||$u(e,i,{height:Math.round(n)},!1)}var nd=class{#e;#t;#n;#r;#i;#a;#o;#s;#c;constructor(e,t,n){this.#a=e.attrs,this.#n=t,this.#r=n.resolveImageUrl,this.#i=n.persistTweetHeight??!0,this.#e=document.createElement(`span`),this.#e.className=`md-image-view md-atom-view`,this.#t=document.createElement(`span`),this.#t.className=`md-image-view-content md-atom-view-content`;let r=this.#l();r&&(r.contentEditable=`false`,this.#e.appendChild(r)),this.#e.appendChild(this.#t)}get dom(){return this.#e}get contentDOM(){return this.#t}update(e){let t=e.attrs,n=this.#a;return t.src===n.src?(this.#a=t,this.#s&&t.alt!==n.alt&&(this.#s.alt=t.alt),this.#o&&(t.width!==n.width||t.height!==n.height)&&(this.#s?Qu(this.#o,this.#s,t.width,t.height):Zu(this.#o,t.width,t.height)),this.#c&&t.height!==n.height&&Kl(this.#c,t.height),!0):!1}ignoreMutation(e){return!this.#t.contains(e.target)}#l(){let{src:e}=this.#a,t=$l(e);if(t){let e=document.createElement(`span`);e.className=`md-image-view-preview md-atom-view-preview`;let n=this.#i?e=>{td(this.#n,this.#t,e)}:void 0,r=Xu(t,this.#a.height,n);return t.kind===`tweet`&&(this.#c=r),e.appendChild(t.kind===`youtube`?this.#u(r):r),e}let n=(this.#r??Yu)(e);if(!n)return;let r=document.createElement(`span`);return r.className=`md-image-view-preview md-atom-view-preview`,r.dataset.testid=`image-preview`,r.appendChild(this.#d(n)),r}#u(e){Zt(),Xt();let t=document.createElement(`prosekit-resizable-root`);t.className=`md-embed-resizable`,t.dataset.testid=`embed-resizable`,t.setAttribute(`data-aspect-ratio`,`1.7777777777777777`),Zu(t,this.#a.width,this.#a.height),t.appendChild(e);let n=document.createElement(`prosekit-resizable-handle`);return n.className=`md-image-resize-handle`,n.setAttribute(`position`,`bottom-right`),n.addEventListener(`click`,e=>e.stopPropagation()),t.appendChild(n),t.addEventListener(`resizeEnd`,e=>{let{width:t,height:n}=e.detail;ed(this.#n,this.#t,t,n)}),this.#o=t,t}#d(e){Zt(),Xt();let t=document.createElement(`prosekit-resizable-root`);t.className=`md-image-resizable`,t.dataset.testid=`image-resizable`,t.setAttribute(`data-loading`,``);let n=document.createElement(`img`);n.src=e,n.alt=this.#a.alt,n.draggable=!1,Qu(t,n,this.#a.width,this.#a.height),n.addEventListener(`load`,()=>{t.removeAttribute(`data-loading`);let e=n.naturalWidth/n.naturalHeight;!Number.isFinite(e)||e<=0||(t.setAttribute(`data-aspect-ratio`,String(e)),Qu(t,n,this.#a.width,this.#a.height))}),n.addEventListener(`error`,()=>{t.removeAttribute(`data-loading`)}),t.appendChild(n);let r=document.createElement(`prosekit-resizable-handle`);return r.className=`md-image-resize-handle`,r.setAttribute(`position`,`bottom-right`),r.addEventListener(`click`,e=>e.stopPropagation()),t.appendChild(r),t.addEventListener(`resizeEnd`,e=>{let{width:t,height:n}=e.detail;ed(this.#n,this.#t,t,n)}),this.#o=t,this.#s=n,t}};function rd(e={}){return d({name:`mdImage`,constructor:(t,n)=>new nd(t,n,e)})}const id={"Mod-b":`Bold`,"Mod-i":`Italic`,"Mod-e":`Inline code`,"Mod-Shift-x":`Strikethrough`,"Mod-Shift-h":`Highlight`,"Mod-k":`Link`,"Mod-Shift-k":`Insert a wikilink`,"Mod-1":`Heading 1`,"Mod-2":`Heading 2`,"Mod-3":`Heading 3`,"Mod-4":`Heading 4`,"Mod-5":`Heading 5`,"Mod-6":`Heading 6`,"Mod-.":`Fold or unfold a bullet`,"Mod-Enter":`Follow the link under the caret, or cycle a checkbox task`,"Mod-Shift-Enter":`Cycle a circle checkbox task`,"Mod-Shift-7":`Ordered list`,"Mod-Shift-8":`Bullet list`,"Mod-Shift-9":`Checkbox task list`,"Alt-ArrowUp":`Move the block or list item up`,"Alt-ArrowDown":`Move the block or list item down`,"Meta-ArrowUp":`Move the caret to the document start`,"Meta-ArrowDown":`Move the caret to the document end`,"Shift-Meta-ArrowUp":`Select to the document start`,"Shift-Meta-ArrowDown":`Select to the document end`,Escape:`Collapse the selection`},ad=new T(`meowdown-link-click`);function od(e){return Au({key:ad,selector:`.md-link`,preventDefault:!0,findPayloadAt:(e,t)=>q(e,t)?.href,onClick:(t,n)=>e({href:t,event:n})})}function sd(e){let t,n=(t,n)=>e.findPayloadForElement?e.findPayloadForElement(t,n):e.findPayloadAt(t.state,t.posAtDOM(n,0)),r=()=>{t&&(t=void 0,e.onHoverChange(void 0))},i=(i,a)=>{let o=a.target;if(!o||!we(o))return;let s=o.closest(e.selector);if(!s||!i.dom.contains(s)||s===t?.element)return;r();let c=n(i,s);c!=null&&(t={payload:c,element:s},e.onHoverChange(t))},a=e=>{if(!t)return;let n=e.relatedTarget;n instanceof Node&&t.element.contains(n)||r()};return m(new w({key:e.key,props:{handleDOMEvents:{mouseover:(e,t)=>(i(e,t),!1),mouseout:(e,t)=>(a(t),!1)}},view:()=>({update:i=>{if(!t)return;if(!t.element.isConnected||!i.dom.contains(t.element)){r();return}let a=n(i,t.element);if(a==null||!e.isSamePayload(t.payload,a)){r();return}t={...t,payload:a}},destroy:r})}))}const cd=new T(`meowdown-link-hover`);function ld(e){return sd({key:cd,selector:`.md-link`,findPayloadAt:(e,t)=>q(e,t),isSamePayload:(e,t)=>e.href===t.href&&e.title===t.title,onHoverChange:e})}const ud=new T(`meowdown-link-paste`);function dd(e){let t=e.trim();if(!(!t||/\s/.test(t)))return be(t)}function fd(){return x(m(new w({key:ud,props:{handlePaste:(e,t,n)=>{let r=eu(t,n);if(!r)return!1;let i=dd(r);return i?Li(e,as({href:i,wrapText:!1})):!1}}})),t.high)}function pd(e){return e instanceof yt||e instanceof bt||e instanceof St||e instanceof Ct||e instanceof fa}function md(e){for(let t of e)for(let e of t.steps)if(!pd(e))return!0;return!1}function hd(e){let t,n,r=!1,i,a=()=>{let n=t&&!t.isDestroyed&&t.dom;if(!n)return;let a=e&&!r;a!==i&&(i=a,n.spellcheck=a)},o=()=>{n&&clearTimeout(n),r=!0,a(),n=setTimeout(()=>{r=!1,a()},1200)};return{pause:o,apply(e){md(e)&&o()},view(e){return t=e,{destroy(){t=void 0}}}}}function gd(e){let t=new T(`spell-check`);return new w({key:t,state:{init:()=>hd(e),apply:(e,t)=>t},view(e){return t.getState(e.state)?.view(e)||{}},props:{handleDOMEvents:{beforeinput:e=>{t.getState(e.state)?.pause()}}},appendTransaction(e,n){t.getState(n)?.apply(e)}})}function _d(e){return m(gd(e))}const vd=[[/<-/,`←`],[/(?<!-)->/,`→`],[/\(c\)/,`©`],[/\(r\)/,`®`],[/1\/2/,`½`],[/\+\/-/,`±`],[/!=/,`≠`],[/<</,`«`],[/>>/,`»`],[/(?<!<!)(?<!^(?:-[ \t]*)+)--/,`—`]],yd=new T(`meowdown-substitution-undo`);function bd(e,t,n){let r=g(e.schema,`mdCode`);return e.doc.rangeHasMark(t,n,r)}function xd(e,t,n,r,i){if(bd(e,t,n))return null;let[,a]=r,o=i==null?a:`${a} `,s=e.tr.replaceWith(t,n,e.schema.text(o));return i!=null&&s.setMeta(yd,{from:t,to:t+o.length,before:i,after:o}),s}function Sd(){return b(vd.map(e=>at(new Qt(new RegExp(String.raw`(?:${e[0].source})\s$`),(t,n,r,i)=>xd(t,r,i,e,n[0])))))}function Cd(){return m(new w({key:yd,state:{init:()=>null,apply:(e,t)=>{let n=e.getMeta(yd);if(n!==void 0)return n;if(!t)return null;let r=e.mapping.map(t.from),i=e.mapping.map(t.to);return e.selection.empty&&e.selection.from===i&&e.doc.textBetween(r,i)===t.after?{...t,from:r,to:i}:null}}}))}function wd(){return x(l({Backspace:(e,t)=>{let n=yd.getState(e);return n?(t?.(e.tr.replaceWith(n.from,n.to,e.schema.text(n.before)).setMeta(yd,null)),!0):!1}}),t.highest)}function Td(){return b(Cd(),wd())}function Ed(){return b(vd.map(e=>rt({regex:RegExp(`(?:${e[0].source})$`),handler:({state:t,from:n,to:r})=>xd(t,n,r,e)})))}function Dd(){return b(Sd(),Td(),Ed())}const Od=new T(`meowdown-wikilink-hover`);function kd(e){return sd({key:Od,selector:`.md-wikilink-view-preview`,findPayloadAt:Fu,findPayloadForElement:Iu,isSamePayload:(e,t)=>e.target===t.target,onHoverChange:t=>{e(t?{...t.payload,element:t.element}:void 0)}})}function Ad(e,t={}){let n=[];return e.content.forEach(e=>{let r=[];e.descendants(e=>{if(!e.isText||!e.text)return!0;let n=e.marks.map(e=>e.type.name);return n.some(e=>Fn.has(e))&&!(t.preserveMathSource&&n.includes(`mdMath`))||r.push(e.text),!1}),n.push(r.join(``))}),n.join(`
37
- `)}function jd({allowEmpty:e}){return(t,n)=>{let{selection:r}=t;if(!y(r)||!e&&r.empty||!r.$head.sameParent(r.$anchor)||r.$head.parent.type.spec.code)return!1;let i=Ad(r.content());if(i.startsWith(`[[`))return!1;i.startsWith(`[`)&&(i=i.slice(1));let a=`[[`+i;if(n){let e=t.tr.insertText(a,r.from,r.to);e.setSelection(E.create(e.doc,r.from+a.length)),st(e),n(e.scrollIntoView())}return!0}}function Md(){return l({"Mod-Shift-k":jd({allowEmpty:!0}),"[":jd({allowEmpty:!1})})}function Nd(e){switch(e.type.name){case`mdWikilink`:{let t=e.attrs;return t.display||t.target}case`mdImage`:return e.attrs.alt;case`mdFile`:return e.attrs.name;case`mdMath`:return e.attrs.formula;default:return``}}function Pd(e){let t=``;for(let n of zn(e)){if(n.atom!=null){t+=Nd(n.atom);continue}for(let e of n.children)Rn(e.marks)||(t+=e.text??``)}return t}function Fd(e){let{selection:t,schema:n}=e;if(t.empty)return``;let r=t.content().content;try{return Tr(n.topNodeType.create(null,r)).replace(/\n+$/,``)}catch{return e.doc.textBetween(t.from,t.to,`
33
+ `).map((e,n)=>n===0?e:il(e,t)).join(`
34
+ `)}function ol(e,t,n){return e.paragraph(al(t,n))}function sl(e,t,n){let r=t.from,i=t.to,a=$(n,r);if(t.firstChild()){let o=``,s=r;do t.type.id===S.QuoteMark&&(o+=n.slice(s,t.from),s=t.to,C(n.charCodeAt(s))&&(s+=1));while(t.nextSibling());return t.parent(),o+=n.slice(s,i),ol(e,o,a)}return ol(e,n.slice(r,i),a)}function cl(e,t,n){let r=$(n,t.from),i=al(n.slice(t.from,t.to),r);return e.htmlComment({content:i})}function ll(e,t,n){let r=[];if(t.firstChild()){let i;do{if(t.type.id===S.QuoteMark)continue;i!=null&&el(r,e,n,i,t.from),i=t.to,r.push(...tl(e,t,n))}while(t.nextSibling());t.parent()}return e.blockquote(r)}function ul(e,t,n,r){let i=[];if(t.firstChild()){do t.type.id===S.ListItem&&i.push(pl(e,t,n,r));while(t.nextSibling());t.parent()}return i}function dl(e,t,n){if(n===`ordered`){let n=t.charCodeAt(e.to-1),r;n===41?r=`)`:n===46&&(r=`.`);let i=Number.parseInt(t.slice(e.from,e.to),10);return{marker:r,order:Number.isFinite(i)?i:1}}let r=t.charCodeAt(e.from);return{marker:r===42?`*`:r===43?`+`:`-`,order:void 0}}function fl(e,t,n){let r=t.from,i=t.to,a=!1,o;if(t.firstChild()){if(t.type.id===S.TaskMarker){let e=n.charCodeAt(t.from+1);e===120?(a=!0,o=`x`):e===88&&(a=!0,o=`X`),r=t.to}t.parent()}C(n.charCodeAt(r))&&(r+=1);let s=ol(e,n.slice(r,i),$(n,r));return{checked:a,taskMarker:o,paragraph:s}}function pl(e,t,n,r){let i=[],a,o,s,c,l,u;if(t.firstChild()){do{if(t.type.id!==S.ListMark&&u==null&&(u=$(n,t.from)),t.type.id===S.ListMark){let e=dl(t,n,r);c=e.marker,s=e.order,l=$(n,t.to);continue}if(r===`bullet`&&t.type.id===S.Task){let r=fl(e,t,n);a=r.checked,o=r.taskMarker,i.push(r.paragraph);continue}i.push(...tl(e,t,n))}while(t.nextSibling());t.parent()}let d=u!=null&&l!=null?u-l:1,f=a!=null,p=!f&&r===`bullet`&&c===`+`,m={kind:f?`task`:r,order:r===`ordered`?s??1:null,checked:a??!1,collapsed:p,marker:p?null:c,taskMarker:o,markerGap:d>=2&&d<=4?d:1};return e.list(m,i)}function ml(e,t,n){let r=t.type.id===S.CodeBlock,i=``,a=``,o=r?`indented`:null,s=null,c=!1;if(t.firstChild()){do switch(t.type.id){case S.CodeMark:{if(c)break;c=!0,n.charCodeAt(t.from)===126&&(o=`tilde`);let e=t.to-t.from;e>3&&(s=e);break}case S.CodeInfo:i=n.slice(t.from,t.to);break;case S.CodeText:a+=n.slice(t.from,t.to);break}while(t.nextSibling());t.parent()}return e.codeBlock({language:i,fenceStyle:o,fenceLength:s},a)}function hl(e,t,n){let r=``;if(t.firstChild()){do t.type.id===S.CodeText&&(r+=n.slice(t.from,t.to));while(t.nextSibling());t.parent()}return e.codeBlock({language:`math`,fenceStyle:`dollar`,fenceLength:null},r)}function gl(e,t,n){let r=[];if(t.firstChild()){do t.type.id===S.TableDelimiter&&(r=_l(n.slice(t.from,t.to)));while(t.nextSibling());t.parent()}let i=[];if(t.firstChild()){do{let a=t.type.id;a===S.TableHeader?i.push(vl(e,t,n,!0,r)):a===S.TableRow&&i.push(vl(e,t,n,!1,r))}while(t.nextSibling());t.parent()}return e.table(i)}function _l(e){return e.split(`|`).map(e=>e.trim()).filter(e=>e!==``).map(e=>{let t=e.startsWith(`:`),n=e.endsWith(`:`);return t&&n?`center`:t?`left`:n?`right`:null})}function vl(e,t,n,r,i){let a=i.length,o=Array(a).fill(``);if(t.firstChild()){let e=t.type.id===S.TableDelimiter,r=0;do if(t.type.id===S.TableDelimiter)r++;else if(t.type.id===S.TableCell){let i=r-+!!e;i>=0&&i<a&&(o[i]=n.slice(t.from,t.to).trim().replaceAll(String.raw`\|`,`|`))}while(t.nextSibling());t.parent()}let s=o.map((t,n)=>{let a=e.paragraph(t),o={align:i[n]};return r?e.tableHeaderCell(o,a):e.tableCell(o,a)});return e.tableRow(s)}function yl(e){return e.replace(/\n+$/u,``)}function bl(e){return/^[\s>]*$/u.test(e)}function xl(e){return e.split(`
35
+ `).filter(e=>!bl(e))}function Sl(e){return e.trim().replaceAll(/\s+/gu,` `)}const Cl=/^:?-+:?$/u;function wl(e){let t=e.startsWith(`:`),n=e.endsWith(`:`);return t&&n?`:-:`:t?`:--`:n?`--:`:`---`}function Tl(e){if(!e.includes(`|`))return;let t=/^[\s>]*/u.exec(e)?.[0]??``,n=e.slice(t.length).trim().replace(/^\|/u,``).replace(/\|$/u,``).split(`|`).map(e=>Sl(e));return Sl(`${t} | ${(n.every(e=>Cl.test(e))?n.map(wl):n).join(` | `)} |`)}function El(e){return Tl(e)??Sl(e)}function Dl(e,t={}){let n=Tr(Z(e,{frontmatter:t.frontmatter}),{frontmatter:t.frontmatter});if(yl(n)===yl(e))return`exact`;let r=xl(e),i=xl(n);return r.length===i.length&&r.every((e,t)=>El(e)===El(i[t]))?`normalizing`:`lossy`}const Ol=(e,t)=>{let{$from:n,empty:r}=e.selection;if(!r||n.depth!==1||n.index(0)!==0||!I(n.parent,`heading`)||n.parentOffset!==n.parent.content.size)return!1;if(t){let r=_(e.schema,`list`),i=_(e.schema,`paragraph`),a=r.create({kind:`bullet`},i.create()),o=n.after(),s=e.tr.insert(o,a);s.setSelection(E.create(s.doc,o+2)),t(s.scrollIntoView())}return!0};function kl(){return x(l({Enter:Ol}),t.high)}const Al=new Set([`MscGen`,`Xù`,`MsGenny`,`Angular Template`,`Brainfuck`,`Esper`,`Oz`,`Factor`,`Squirrel`,`Yacas`,`mIRC`,`FCL`,`ECL`,`MUMPS`,`Pig`,`Asterisk`,`Z80`,`Mathematica`]),jl=$e.map(e=>({label:e.name,value:e.name.toLowerCase()})).filter(e=>!Al.has(e.label)).concat([{label:`Plain text`,value:``},{label:`Math`,value:`math`},{label:`Mermaid`,value:`mermaid`}]).sort((e,t)=>e.label.localeCompare(t.label));function Ml(){return typeof window>`u`?!1:window.matchMedia(`(prefers-color-scheme: dark)`).matches}const Nl=/^(?:www\.|mobile\.)?(?:twitter\.com|x\.com)$/i,Pl=/\/status(?:es)?\/(\d+)/;function Fl(e){let t;try{t=new URL(e)}catch{return}if(Nl.test(t.hostname))return Pl.exec(t.pathname)?.[1]}const Il=e=>{let t=Fl(e);if(!t)return;let n=Ml()?`dark`:`light`;return{kind:`tweet`,key:`tweet:${t}`,src:`https://platform.twitter.com/embed/Tweet.html?id=${t}&theme=${n}&dnt=true`,title:`Tweet`,className:`md-embed md-embed-tweet`,testid:`tweet-embed`}};function Ll(e,t){let n=n=>{if(n.source===e.contentWindow)try{let r=n.data?.[`twttr.embed`]?.params?.[0]?.height;typeof r==`number`&&r>0&&(Rl(e,r),t?.(r))}catch(e){console.warn(`[meowdown] failed to parse tweet resize message:`,e)}};window.addEventListener(`message`,n);let r=!1,i=()=>{r||(r=!0,window.removeEventListener(`message`,n),a.disconnect())},a=new MutationObserver(()=>{e.isConnected||i()});return a.observe(document.body,{childList:!0,subtree:!0}),i}function Rl(e,t){t&&t>0&&(e.style.height=`${t}px`,e.dataset.sized=``)}const zl=/^(?:www\.|m\.)?(?:youtube\.com|youtube-nocookie\.com)$/i,Bl=/^(?:www\.)?youtu\.be$/i,Vl=/^[\w-]{11}$/;function Hl(e){let t;try{t=new URL(e)}catch{return}let n=null;if(Bl.test(t.hostname))n=t.pathname.slice(1);else if(zl.test(t.hostname)){let[,e,r]=t.pathname.split(`/`);t.pathname===`/watch`?n=t.searchParams.get(`v`):(e===`shorts`||e===`embed`||e===`live`)&&(n=r??null)}if(!n||!Vl.test(n))return;let r=t.searchParams.get(`start`)??t.searchParams.get(`t`),i=r?Ul(r):void 0;return{videoId:n,startSeconds:i}}function Ul(e){if(/^\d+$/.test(e))return Number(e);let t=/^(?:(\d+)h)?(?:(\d+)m)?(?:(\d+)s)?$/.exec(e);if(!(!t||!t[1]&&!t[2]&&!t[3]))return Number(t[1]??0)*3600+Number(t[2]??0)*60+Number(t[3]??0)}const Wl=[e=>{let t=Hl(e);if(!t)return;let n=t.startSeconds?`?start=${t.startSeconds}`:``;return{kind:`youtube`,key:`youtube:${t.videoId}:${t.startSeconds??0}`,src:`https://www.youtube-nocookie.com/embed/${t.videoId}${n}`,title:`YouTube video`,className:`md-embed md-embed-youtube`,testid:`youtube-embed`,allow:`accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share; fullscreen`,allowFullscreen:!0}},Il];function Gl(e){for(let t of Wl){let n=t(e);if(n)return n}}function Kl(e,t){return e.clipboardData?.getData(`text/plain`)||t.content.textBetween(0,t.content.size,`
36
+ `)}const ql=new T(`meowdown-embed-paste`);function Jl(e){let t=e.trim();if(!(!t||/\s/.test(t)))return Gl(t)?t:void 0}function Yl(e,t){let{from:n,to:r}=e.state.selection;e.dispatch(Yt(e.state.tr.insertText(t,n,r)));let i=e.state.tr.insertText(`![](${t})`,n,n+t.length);e.dispatch(Yt(i))}function Xl(){return m(new w({key:ql,props:{handlePaste:(e,t,n)=>{let r=e.state.selection.$from.parent;if(!r.inlineContent||r.type.spec.code)return!1;let i=Kl(t,n);if(!i)return!1;let a=Jl(i);return a?(Yl(e,a),!0):!1}}}))}const Zl=new T(`meowdown-exit-boundary`);function Ql(e,t){let{$anchor:n,$head:r}=e.selection,i=t>0?n.max(r):n.min(r),a=i.parent.inlineContent?i.depth?e.doc.resolve(t>0?i.after():i.before()):void 0:i;return!!(a&&Fe.findFrom(a,t))}function $l(e,t){let{state:n}=e,{selection:r}=n;return y(r)&&!r.empty||v(r)||r.$from.parent.inlineContent&&!e.endOfTextblock(t<0?`up`:`down`)?!0:Ql(n,t)}function eu(e){return new w({key:Zl,props:{handleKeyDown:(t,n)=>{if(n.shiftKey||n.altKey||n.ctrlKey||n.metaKey)return!1;let r=n.key===`ArrowUp`?-1:n.key===`ArrowDown`?1:void 0;return!(!r||$l(t,r)||e({direction:r<0?`up`:`down`,event:n})===!1)}}})}function tu(e){return x(m(eu(e)),t.low)}const nu=new T(`meowdown-file-click`);function ru(e,t){let n=j(e,t,`mdFile`);if(!n)return;let{href:r,name:i}=n.mark.attrs;return{href:r,name:i}}function iu(e){return m(new w({key:nu,props:{handleClick:(t,n,r)=>{let i=r.target?.closest?.(`.md-file-view-preview`);if(!i)return!1;let a=i.closest(`.md-file-view`)?.querySelector(`.md-file-view-content`);if(!a)return!1;let o=ru(t.state,t.posAtDOM(a,0));return o?(e({href:o.href,name:o.name,event:r}),!0):!1}}}))}const au=new Set([`avif`,`bmp`,`gif`,`jpeg`,`jpg`,`png`,`svg`,`webp`]);function ou(e){if(e.type?.startsWith(`image/`))return!0;let t=e.name.lastIndexOf(`.`);if(t===-1)return!1;let n=e.name.slice(t+1).toLowerCase();return au.has(n)}function su(e,t){return ou(e)?`![](${t})`:`[${uu(e.name)}](${t})`}function cu(e,t){return!e||!t.onFilePaste?[]:Array.from(e.files)}const lu=e=>{console.error(`[meowdown] failed to save pasted file:`,e)};function uu(e){return e.replaceAll(/[\\[\]]/g,String.raw`\$&`)}async function du(e,t,n,r){let{onFilePaste:i}=n;if(!i)return;let a=n.onFileSaveError??lu,o=r,s=!1;for(let n of t){let t;try{t=await i(n)}catch(e){a(e,n);continue}if(!t||e.isDestroyed)continue;let r=su(n,t),c=s?`\n${r}`:r,l=o==null?e.state.tr.insertText(c):e.state.tr.insertText(c,o);e.dispatch(l),s=!0,o!=null&&(o+=c.length)}}function fu(e){return new w({key:new T(`file-paste`),props:{handlePaste:(t,n)=>{let r=cu(n.clipboardData,e);return r.length===0?!1:(du(t,r,e),!0)},handleDrop:(t,n)=>{let r=cu(n.dataTransfer,e);return r.length===0?!1:(du(t,r,e,t.posAtCoords({left:n.clientX,top:n.clientY})?.pos),!0)}}})}function pu(e={}){return x(m(fu(e)),t.high)}const mu=[`KB`,`MB`,`GB`,`TB`];function hu(e){let t=e,n=`B`;for(let e of mu){if(t<999.5)break;t/=1e3,n=e}return n===`B`?`${Math.round(t)} B`:`${t<9.95?Math.round(t*10)/10:Math.round(t)} ${n}`}const gu=new Map([[`pdf`,`pdf`],[`zip`,`archive`],[`tar`,`archive`],[`gz`,`archive`],[`tgz`,`archive`],[`rar`,`archive`],[`7z`,`archive`],[`doc`,`doc`],[`docx`,`doc`],[`pages`,`doc`],[`xls`,`sheet`],[`xlsx`,`sheet`],[`csv`,`sheet`],[`numbers`,`sheet`],[`ppt`,`slides`],[`pptx`,`slides`],[`key`,`slides`],[`mp3`,`audio`],[`wav`,`audio`],[`m4a`,`audio`],[`flac`,`audio`],[`ogg`,`audio`],[`mp4`,`video`],[`mov`,`video`],[`mkv`,`video`],[`webm`,`video`],[`txt`,`text`],[`md`,`text`]]);function _u(e){let t=e.split(/[?#]/,1)[0],n=t.lastIndexOf(`.`);if(n<0)return`generic`;let r=t.slice(n+1).toLowerCase();return gu.get(r)??`generic`}const vu=`http://www.w3.org/2000/svg`;function yu(){let e=document.createElementNS(vu,`svg`);e.setAttribute(`class`,`md-file-view-icon`),e.setAttribute(`viewBox`,`0 0 24 24`),e.setAttribute(`aria-hidden`,`true`);for(let t of[`M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z`,`M14 2v4a2 2 0 0 0 2 2h4`]){let n=document.createElementNS(vu,`path`);n.setAttribute(`d`,t),n.setAttribute(`fill`,`none`),n.setAttribute(`stroke`,`currentColor`),n.setAttribute(`stroke-width`,`2`),n.setAttribute(`stroke-linecap`,`round`),n.setAttribute(`stroke-linejoin`,`round`),e.appendChild(n)}return e}var bu=class{#e;#t;#n;#r;#i;#a;#o=!1;constructor(e,t){this.#a=e.attrs,this.#e=document.createElement(`span`),this.#e.className=`md-file-view md-atom-view`,this.#n=document.createElement(`span`),this.#n.className=`md-file-view-preview md-atom-view-preview`,this.#n.contentEditable=`false`,this.#n.dataset.testid=`file-pill`,this.#n.dataset.fileKind=_u(this.#a.href),this.#n.title=this.#a.name,this.#e.appendChild(this.#n),this.#n.appendChild(yu()),this.#r=document.createElement(`span`),this.#r.className=`md-file-view-name`,this.#r.textContent=this.#a.name,this.#n.appendChild(this.#r),this.#i=document.createElement(`span`),this.#i.className=`md-file-view-size`,this.#i.dataset.testid=`file-pill-size`,this.#n.appendChild(this.#i),this.#t=document.createElement(`span`),this.#t.className=`md-file-view-content md-atom-view-content`,this.#e.appendChild(this.#t),this.#s(t.resolveFileInfo)}get dom(){return this.#e}get contentDOM(){return this.#t}update(e){let t=e.attrs,n=this.#a;return t.href===n.href?(this.#a=t,t.name!==n.name&&(this.#r.textContent=t.name,this.#n.title=t.name),!0):!1}ignoreMutation(e){return!this.#t.contains(e.target)}destroy(){this.#o=!0}async#s(e){if(!e)return;let t;try{t=await e(this.#a.href)}catch(e){console.error(`[meowdown] resolveFileInfo failed:`,e);return}if(this.#o||!t)return;let{size:n}=t;n==null||!Number.isFinite(n)||n<0||(this.#i.textContent=hu(n))}};function xu(e={}){return d({name:`mdFile`,constructor:t=>new bu(t,e)})}function Su(e){return m(new w({key:e.key,props:{handleClick:(t,n,r)=>{let i=r.target?.closest?.(e.selector);if(!i)return!1;let a=e.findPayloadForElement?e.findPayloadForElement(t,i):e.findPayloadAt(t.state,n);return a==null?!1:(e.preventDefault&&r.preventDefault(),e.onClick(a,r),!0)}}}))}const Cu=new T(`meowdown-tag-click`);function wu(e,t){let n=j(e,t,`mdTag`);if(!n)return;let r=e.doc.textBetween(n.from,n.to),i=r.startsWith(`#`)?r.slice(1):r;return{from:n.from,to:n.to,tag:i}}function Tu(e){return Su({key:Cu,selector:`.md-tag`,preventDefault:!1,findPayloadAt:(e,t)=>wu(e,t)?.tag,onClick:(t,n)=>e({tag:t,event:n})})}const Eu=new T(`meowdown-wikilink-click`);function Du(e,t){let n=j(e,t,`mdWikilink`);if(!n)return;let{target:r}=n.mark.attrs;return{from:n.from,to:n.to,target:r}}function Ou(e,t){let n=t.closest(`.md-wikilink-view`)?.querySelector(`.md-wikilink-view-content`);if(n)return Du(e.state,e.posAtDOM(n,0))}function ku(e){return Su({key:Eu,selector:`.md-wikilink-view-preview`,preventDefault:!1,findPayloadAt:(e,t)=>Du(e,t)?.target,findPayloadForElement:(e,t)=>Ou(e,t)?.target,onClick:(t,n)=>e({target:t,event:n})})}const Au=new T(`meowdown-follow-link`);function ju(e){return e.key!==`Enter`||e.shiftKey||e.altKey?!1:ee?e.metaKey&&!e.ctrlKey:e.ctrlKey&&!e.metaKey}function Mu(e){return new w({key:Au,props:{handleKeyDown:(t,n)=>{if(!ju(n))return!1;let{state:r}=t,i=r.selection.head,a=e.onWikilinkClick&&Du(r,i);if(a)return e.onWikilinkClick?.({target:a.target,event:n}),!0;let o=e.onTagClick&&wu(r,i);if(o)return e.onTagClick?.({tag:o.tag,event:n}),!0;let s=e.onFileClick&&ru(r,i);if(s)return e.onFileClick?.({href:s.href,name:s.name,event:n}),!0;let c=e.onLinkClick&&q(r,i);return c?(e.onLinkClick?.({href:c.href,event:n}),!0):!1}}})}function Nu(e){return x(m(Mu(e)),t.high)}const Pu=new T(`meowdown-image-click`);function Fu(e){return e instanceof HTMLElement&&e.closest(`.md-image-view-preview`)}function Iu(e,t){let n=j(e,t,`mdImage`);if(!n)return;let{src:r,alt:i}=n.mark.attrs;return{from:n.from,to:n.to,src:r,alt:i}}function Lu(e,t){let n=t.closest(`.md-image-view`)?.querySelector(`.md-image-view-content`);if(n)return Iu(e.state,e.posAtDOM(n,0))}function Ru(e,t){return Array.from(e).find(e=>e.identifier===t)}function zu(e,t){return Math.abs(t.clientX-e.clientX)<=10&&Math.abs(t.clientY-e.clientY)<=10}function Bu(e){let t=new WeakMap;return m(new w({key:Pu,props:{handleDOMEvents:{pointerdown:(e,t)=>(Fu(t.target)&&t.pointerType!==`mouse`&&t.preventDefault(),!1),touchstart:(e,n)=>{if(t.delete(e),n.touches.length!==1||!Fu(n.target)||n.target instanceof HTMLElement&&n.target.closest(`.md-image-resize-handle`))return!1;let r=n.changedTouches[0];return r&&t.set(e,{identifier:r.identifier,clientX:r.clientX,clientY:r.clientY}),!1},touchmove:(e,n)=>{let r=t.get(e);if(!r)return!1;let i=Ru(n.changedTouches,r.identifier);return i&&!zu(r,i)&&t.delete(e),!1},touchcancel:e=>(t.delete(e),!1),touchend:(n,r)=>{let i=t.get(n);if(t.delete(n),!i||r.touches.length>0)return!1;let a=Ru(r.changedTouches,i.identifier);if(!a||!zu(i,a))return!1;let o=Fu(r.target);if(!o)return!1;r.preventDefault();let s=Lu(n,o);return s&&e({src:s.src,alt:s.alt,event:r}),!0}},handleClick:(t,n,r)=>{let i=Fu(r.target);if(!i)return!1;let a=Lu(t,i);return a?(e({src:a.src,alt:a.alt,event:r}),!0):!1}}}))}function Vu(e){return/^https?:\/\//i.test(e)?e:void 0}function Hu(e,t,n){let r=document.createElement(`iframe`);return r.src=e.src,r.title=e.title,r.className=e.className,r.dataset.testid=e.testid,r.loading=`lazy`,r.referrerPolicy=`strict-origin-when-cross-origin`,r.setAttribute(`frameborder`,`0`),e.allow&&(r.allow=e.allow),e.allowFullscreen&&(r.allowFullscreen=!0),e.kind===`tweet`&&(Rl(r,t),Ll(r,n)),r}function Uu(e,t,n){t!=null&&e.setAttribute(`data-width`,String(Math.ceil(t))),n!=null&&e.setAttribute(`data-height`,String(Math.ceil(n)))}function Wu(e,t,n,r){if(n!=null&&r!=null){Uu(e,n,r);return}let i=t.naturalWidth/t.naturalHeight;if(!Number.isFinite(i)||i<=0){Uu(e,n,r);return}let a=n==null?Math.min(t.naturalHeight,500):n/i;Uu(e,n??a*i,a)}function Gu(e,t,n,r){let i=e.state.doc.textBetween(t.from,t.to),a=ya(i),o=t.from+a.length,s=i.slice(a.length),c=va({...ga(s),...n});if(c===s)return;let l=e.state.tr.insertText(c,o,t.to);r||l.setMeta(`addToHistory`,!1),e.dispatch(l)}function Ku(e,t,n,r){let i=e.posAtDOM(t,0),a=j(e.state,i,`mdImage`);if(!a)return;let o=a.mark.attrs;if(o.syntax===`wikiEmbed`){let t=e.state.doc.textBetween(a.from,a.to),i=o.wikiTarget||Ia(t).target;if(!i)return;let s=La(i,n,r);s!==t&&e.dispatch(e.state.tr.insertText(s,a.from,a.to));return}Gu(e,a,{width:Math.round(n),height:Math.round(r)},!0)}function qu(e,t,n){if(!e.editable||!t.isConnected)return;let r=e.posAtDOM(t,0),i=j(e.state,r,`mdImage`);if(!i)return;let a=i.mark.attrs;a.height!=null&&Math.abs(n-a.height)<=8||Gu(e,i,{height:Math.round(n)},!1)}var Ju=class{#e;#t;#n;#r;#i;#a;#o;#s;#c;constructor(e,t,n){this.#a=e.attrs,this.#n=t,this.#r=n.resolveImageUrl,this.#i=n.persistTweetHeight??!0,this.#e=document.createElement(`span`),this.#e.className=`md-image-view md-atom-view`,this.#t=document.createElement(`span`),this.#t.className=`md-image-view-content md-atom-view-content`;let r=this.#l();r&&(r.contentEditable=`false`,this.#e.appendChild(r)),this.#e.appendChild(this.#t)}get dom(){return this.#e}get contentDOM(){return this.#t}update(e){let t=e.attrs,n=this.#a;return t.src===n.src?(this.#a=t,this.#s&&t.alt!==n.alt&&(this.#s.alt=t.alt),this.#o&&(t.width!==n.width||t.height!==n.height)&&(this.#s?Wu(this.#o,this.#s,t.width,t.height):Uu(this.#o,t.width,t.height)),this.#c&&t.height!==n.height&&Rl(this.#c,t.height),!0):!1}ignoreMutation(e){return!this.#t.contains(e.target)}#l(){let{src:e}=this.#a,t=Gl(e);if(t){let e=document.createElement(`span`);e.className=`md-image-view-preview md-atom-view-preview`;let n=this.#i?e=>{qu(this.#n,this.#t,e)}:void 0,r=Hu(t,this.#a.height,n);return t.kind===`tweet`&&(this.#c=r),e.appendChild(t.kind===`youtube`?this.#u(r):r),e}let n=(this.#r??Vu)(e);if(!n)return;let r=document.createElement(`span`);return r.className=`md-image-view-preview md-atom-view-preview`,r.dataset.testid=`image-preview`,r.appendChild(this.#d(n)),r}#u(e){Zt(),Xt();let t=document.createElement(`prosekit-resizable-root`);t.className=`md-embed-resizable`,t.dataset.testid=`embed-resizable`,t.setAttribute(`data-aspect-ratio`,`1.7777777777777777`),Uu(t,this.#a.width,this.#a.height),t.appendChild(e);let n=document.createElement(`prosekit-resizable-handle`);return n.className=`md-image-resize-handle`,n.setAttribute(`position`,`bottom-right`),n.addEventListener(`click`,e=>e.stopPropagation()),t.appendChild(n),t.addEventListener(`resizeEnd`,e=>{let{width:t,height:n}=e.detail;Ku(this.#n,this.#t,t,n)}),this.#o=t,t}#d(e){Zt(),Xt();let t=document.createElement(`prosekit-resizable-root`);t.className=`md-image-resizable`,t.dataset.testid=`image-resizable`,t.setAttribute(`data-loading`,``);let n=document.createElement(`img`);n.src=e,n.alt=this.#a.alt,n.draggable=!1,Wu(t,n,this.#a.width,this.#a.height),n.addEventListener(`load`,()=>{t.removeAttribute(`data-loading`);let e=n.naturalWidth/n.naturalHeight;!Number.isFinite(e)||e<=0||(t.setAttribute(`data-aspect-ratio`,String(e)),Wu(t,n,this.#a.width,this.#a.height))}),n.addEventListener(`error`,()=>{t.removeAttribute(`data-loading`)}),t.appendChild(n);let r=document.createElement(`prosekit-resizable-handle`);return r.className=`md-image-resize-handle`,r.setAttribute(`position`,`bottom-right`),r.addEventListener(`click`,e=>e.stopPropagation()),t.appendChild(r),t.addEventListener(`resizeEnd`,e=>{let{width:t,height:n}=e.detail;Ku(this.#n,this.#t,t,n)}),this.#o=t,this.#s=n,t}};function Yu(e={}){return d({name:`mdImage`,constructor:(t,n)=>new Ju(t,n,e)})}const Xu={"Mod-b":`Bold`,"Mod-i":`Italic`,"Mod-e":`Inline code`,"Mod-Shift-x":`Strikethrough`,"Mod-Shift-h":`Highlight`,"Mod-k":`Link`,"Mod-Shift-k":`Insert a wikilink`,"Mod-1":`Heading 1`,"Mod-2":`Heading 2`,"Mod-3":`Heading 3`,"Mod-4":`Heading 4`,"Mod-5":`Heading 5`,"Mod-6":`Heading 6`,"Mod-.":`Fold or unfold a bullet`,"Mod-Enter":`Follow the link under the caret, or cycle a checkbox task`,"Mod-Shift-Enter":`Cycle a circle checkbox task`,"Mod-Shift-7":`Ordered list`,"Mod-Shift-8":`Bullet list`,"Mod-Shift-9":`Checkbox task list`,"Alt-ArrowUp":`Move the block or list item up`,"Alt-ArrowDown":`Move the block or list item down`,"Meta-ArrowUp":`Move the caret to the document start`,"Meta-ArrowDown":`Move the caret to the document end`,"Shift-Meta-ArrowUp":`Select to the document start`,"Shift-Meta-ArrowDown":`Select to the document end`,Escape:`Collapse the selection`},Zu=new T(`meowdown-link-click`);function Qu(e){return Su({key:Zu,selector:`.md-link`,preventDefault:!0,findPayloadAt:(e,t)=>q(e,t)?.href,onClick:(t,n)=>e({href:t,event:n})})}function $u(e){let t,n=(t,n)=>e.findPayloadForElement?e.findPayloadForElement(t,n):e.findPayloadAt(t.state,t.posAtDOM(n,0)),r=()=>{t&&(t=void 0,e.onHoverChange(void 0))},i=(i,a)=>{let o=a.target;if(!o||!we(o))return;let s=o.closest(e.selector);if(!s||!i.dom.contains(s)||s===t?.element)return;r();let c=n(i,s);c!=null&&(t={payload:c,element:s},e.onHoverChange(t))},a=e=>{if(!t)return;let n=e.relatedTarget;n instanceof Node&&t.element.contains(n)||r()};return m(new w({key:e.key,props:{handleDOMEvents:{mouseover:(e,t)=>(i(e,t),!1),mouseout:(e,t)=>(a(t),!1)}},view:()=>({update:i=>{if(!t)return;if(!t.element.isConnected||!i.dom.contains(t.element)){r();return}let a=n(i,t.element);if(a==null||!e.isSamePayload(t.payload,a)){r();return}t={...t,payload:a}},destroy:r})}))}const ed=new T(`meowdown-link-hover`);function td(e){return $u({key:ed,selector:`.md-link`,findPayloadAt:(e,t)=>q(e,t),isSamePayload:(e,t)=>e.href===t.href&&e.title===t.title,onHoverChange:e})}const nd=new T(`meowdown-link-paste`);function rd(e){let t=e.trim();if(!(!t||/\s/.test(t)))return be(t)}function id(){return x(m(new w({key:nd,props:{handlePaste:(e,t,n)=>{let r=Kl(t,n);if(!r)return!1;let i=rd(r);return i?Li(e,as({href:i,wrapText:!1})):!1}}})),t.high)}function ad(e){return e instanceof yt||e instanceof bt||e instanceof St||e instanceof Ct||e instanceof fa}function od(e){for(let t of e)for(let e of t.steps)if(!ad(e))return!0;return!1}function sd(e){let t,n,r=!1,i,a=()=>{let n=t&&!t.isDestroyed&&t.dom;if(!n)return;let a=e&&!r;a!==i&&(i=a,n.spellcheck=a)},o=()=>{n&&clearTimeout(n),r=!0,a(),n=setTimeout(()=>{r=!1,a()},1200)};return{pause:o,apply(e){od(e)&&o()},view(e){return t=e,{destroy(){t=void 0}}}}}function cd(e){let t=new T(`spell-check`);return new w({key:t,state:{init:()=>sd(e),apply:(e,t)=>t},view(e){return t.getState(e.state)?.view(e)||{}},props:{handleDOMEvents:{beforeinput:e=>{t.getState(e.state)?.pause()}}},appendTransaction(e,n){t.getState(n)?.apply(e)}})}function ld(e){return m(cd(e))}const ud=[[/<-/,`←`],[/(?<!-)->/,`→`],[/\(c\)/,`©`],[/\(r\)/,`®`],[/1\/2/,`½`],[/\+\/-/,`±`],[/!=/,`≠`],[/<</,`«`],[/>>/,`»`],[/(?<!<!)(?<!^(?:-[ \t]*)+)--/,`—`]],dd=new T(`meowdown-substitution-undo`);function fd(e,t,n){let r=g(e.schema,`mdCode`);return e.doc.rangeHasMark(t,n,r)}function pd(e,t,n,r,i){if(fd(e,t,n))return null;let[,a]=r,o=i==null?a:`${a} `,s=e.tr.replaceWith(t,n,e.schema.text(o));return i!=null&&s.setMeta(dd,{from:t,to:t+o.length,before:i,after:o}),s}function md(){return b(ud.map(e=>at(new Qt(new RegExp(String.raw`(?:${e[0].source})\s$`),(t,n,r,i)=>pd(t,r,i,e,n[0])))))}function hd(){return m(new w({key:dd,state:{init:()=>null,apply:(e,t)=>{let n=e.getMeta(dd);if(n!==void 0)return n;if(!t)return null;let r=e.mapping.map(t.from),i=e.mapping.map(t.to);return e.selection.empty&&e.selection.from===i&&e.doc.textBetween(r,i)===t.after?{...t,from:r,to:i}:null}}}))}function gd(){return x(l({Backspace:(e,t)=>{let n=dd.getState(e);return n?(t?.(e.tr.replaceWith(n.from,n.to,e.schema.text(n.before)).setMeta(dd,null)),!0):!1}}),t.highest)}function _d(){return b(hd(),gd())}function vd(){return b(ud.map(e=>rt({regex:RegExp(`(?:${e[0].source})$`),handler:({state:t,from:n,to:r})=>pd(t,n,r,e)})))}function yd(){return b(md(),_d(),vd())}function bd(e){e.offsetWidth}const xd=new T(`meowdown-virtual-caret`),Sd=[`md-virtual-caret-blink`,`md-virtual-caret-blink2`],Cd=`data-meowdown-virtual-caret`;function wd(e){let t=e.height*.19999999999999996;return{left:e.left,top:e.top-t/2,height:e.height+t}}function Td(e){let t=Ec(e)??Dc(e);return t==null?Oc(e):wd(t)}function Ed(e,t){return e==null||t==null?e===t:e.left===t.left&&e.top===t.top&&e.height===t.height}var Dd=class{#e;#t;#n;#r;#i;#a;#o;#s=0;constructor(e,t){this.#e=e,this.#r=e.dom.ownerDocument,this.#t=t,this.#t.classList.add(`md-virtual-caret-layer`),this.#n=this.#t.appendChild(this.#r.createElement(`div`)),this.#n.className=`md-virtual-caret`,this.#n.dataset.testid=`virtual-caret`,this.#r.addEventListener(`selectionchange`,this.#d),e.dom.addEventListener(`focus`,this.#c),e.dom.addEventListener(`blur`,this.#l),typeof ResizeObserver<`u`&&(this.#i=new ResizeObserver(this.#d),this.#i.observe(e.dom)),e.hasFocus()&&this.#c(),this.#d()}update(e,t){e.state.selection.eq(t.selection)||this.#u(),this.#d()}destroy(){this.#r.removeEventListener(`selectionchange`,this.#d),this.#e.dom.removeEventListener(`focus`,this.#c),this.#e.dom.removeEventListener(`blur`,this.#l),this.#i?.disconnect(),this.#n.remove(),this.#t.classList.remove(`md-virtual-caret-layer`),delete this.#t.dataset.focused,this.#e.dom.removeAttribute(Cd)}#c=()=>{this.#t.dataset.focused=``};#l=()=>{delete this.#t.dataset.focused};#u(){this.#s=1-this.#s,this.#n.style.animationName=Sd[this.#s]}#d=()=>{let e=this.#e;if(e.isDestroyed)return;let t=e.state,n=t.selection,r=y(n)&&n.empty?Td(e):void 0,i;if(r!=null){let e=this.#t.getBoundingClientRect();i={left:r.left-e.left,top:r.top-e.top,height:r.height}}let a=i!=null&&M(t)===`hide`?qi(t,n.head):void 0;if(Ed(i,this.#a)&&a===this.#o)return;let o=this.#a==null;if(this.#a=i,this.#o=a,a==null?delete this.#n.dataset.tail:this.#n.dataset.tail=a,i==null){this.#n.style.visibility=`hidden`,e.dom.removeAttribute(Cd);return}o&&(this.#n.style.transitionProperty=`none`),this.#n.style.visibility=``,this.#n.style.left=`${i.left}px`,this.#n.style.top=`${i.top}px`,this.#n.style.height=`${i.height}px`,e.dom.setAttribute(Cd,``),o&&(bd(this.#n),this.#n.style.transitionProperty=``)}};function Od(e){return m(new w({key:xd,view:t=>new Dd(t,e)}))}const kd=new T(`meowdown-wikilink-hover`);function Ad(e){return $u({key:kd,selector:`.md-wikilink-view-preview`,findPayloadAt:Du,findPayloadForElement:Ou,isSamePayload:(e,t)=>e.target===t.target,onHoverChange:t=>{e(t?{...t.payload,element:t.element}:void 0)}})}function jd(e,t={}){let n=[];return e.content.forEach(e=>{let r=[];e.descendants(e=>{if(!e.isText||!e.text)return!0;let n=e.marks.map(e=>e.type.name);return n.some(e=>Fn.has(e))&&!(t.preserveMathSource&&n.includes(`mdMath`))||r.push(e.text),!1}),n.push(r.join(``))}),n.join(`
37
+ `)}function Md({allowEmpty:e}){return(t,n)=>{let{selection:r}=t;if(!y(r)||!e&&r.empty||!r.$head.sameParent(r.$anchor)||r.$head.parent.type.spec.code)return!1;let i=jd(r.content());if(i.startsWith(`[[`))return!1;i.startsWith(`[`)&&(i=i.slice(1));let a=`[[`+i;if(n){let e=t.tr.insertText(a,r.from,r.to);e.setSelection(E.create(e.doc,r.from+a.length)),st(e),n(e.scrollIntoView())}return!0}}function Nd(){return l({"Mod-Shift-k":Md({allowEmpty:!0}),"[":Md({allowEmpty:!1})})}function Pd(e){switch(e.type.name){case`mdWikilink`:{let t=e.attrs;return t.display||t.target}case`mdImage`:return e.attrs.alt;case`mdFile`:return e.attrs.name;case`mdMath`:return e.attrs.formula;default:return``}}function Fd(e){let t=``;for(let n of zn(e)){if(n.atom!=null){t+=Pd(n.atom);continue}for(let e of n.children)Rn(e.marks)||(t+=e.text??``)}return t}function Id(e){let{selection:t,schema:n}=e;if(t.empty)return``;let r=t.content().content;try{return Tr(n.topNodeType.create(null,r)).replace(/\n+$/,``)}catch{return e.doc.textBetween(t.from,t.to,`
38
38
 
39
- `)}}function Id(e,t,n){if(n===1){let r=V(e.state,t);return r&&Y(e,r.to,n)}else{let n=B(e.state,t);return n&&Y(e,n.from,-1)}}function Ld(e,t){let n=new DOMRect(0,0,0,0),r=()=>{if(e.isDestroyed)return n;let r=Y(e,t.from,1)??Oc(e,t.from,1)??Id(e,t.from,1)??Y(e,t.from,-1);if(r==null)return n;let i=Y(e,t.to,-1)??Oc(e,t.to,-1)??Id(e,t.to,-1)??Y(e,t.to,1);if(i==null)return n;let a=Math.min(r.left,i.left),o=Math.max(r.right,i.right),s=Math.min(r.top,i.top),c=Math.max(r.bottom,i.bottom);return n=new DOMRect(a,s,o-a,c-s),n};return{getBoundingClientRect:r,getClientRects:()=>[r()]}}export{id as EDITOR_KEY_BINDINGS,e as Priority,hu as buildFileMarkdown,Fl as checkRoundTrip,zl as codeBlockLanguages,Aa as collectReferenceDefinitions,Yu as defaultResolveImageUrl,Ll as defineBulletAfterHeading,ue as defineCodeBlockPreviewPlugin,oi as defineCodeBlockSyntaxHighlight,Zc as defineEditorExtension,iu as defineEmbedPaste,lu as defineExitBoundaryHandler,fu as defineFileClickHandler,xu as defineFilePaste,ku as defineFileView,Vu as defineFollowLinkHandler,oa as defineHTMLComment,rd as defineImage,Ju as defineImageClickHandler,od as defineLinkClickHandler,cs as defineLinkCommands,us as defineLinkEditKeymap,ld as defineLinkHoverHandler,fd as defineLinkPaste,Vs as defineMath,Cc as definePendingReplacementHandler,fe as definePlaceholder,pe as defineReadonly,ge as defineSearchStatusHandler,_d as defineSpellCheckPlugin,Dd as defineSubstitution,Nu as defineTagClickHandler,Bc as defineViewAttributes,Lu as defineWikilinkClickHandler,kd as defineWikilinkHoverHandler,Md as defineWikilinkTrigger,Tr as docToMarkdown,Cu as formatFileSize,La as formatSizedWikiEmbed,ci as getCodeTokens,Tu as getFileKind,Ii as getIsComposing,q as getLinkUnitAt,el as getMarkBuilders,pc as getPendingReplacement,_e as getSearchStatus,Fd as getSelectedText,ec as getTableColumnAlign,Pd as getTextblockDisplayText,Ld as getVirtualElementFromRange,Ua as inlineTextToMarkChunks,Wa as inlineTextToMarkChunksWithContext,as as insertLink,de as isCodeBlockPreviewHiddenDecoration,Pn as isMarkOfType,I as isNodeOfType,rc as isSelectionInTableCell,Gl as listenForTweetHeight,Rs as loadKaTeX,Z as markdownToDoc,$l as matchEmbed,Ia as parseWikiEmbed,ss as removeLink,zs as renderMathInto,os as updateLink,Ra as wikiEmbedBasename,oe as withPriority};
39
+ `)}}function Ld(e,t,n){if(n===1){let r=V(e.state,t);return r&&Y(e,r.to,n)}else{let n=B(e.state,t);return n&&Y(e,n.from,-1)}}function Rd(e,t){let n=new DOMRect(0,0,0,0),r=()=>{if(e.isDestroyed)return n;let r=Y(e,t.from,1)??kc(e,t.from,1)??Ld(e,t.from,1)??Y(e,t.from,-1);if(r==null)return n;let i=Y(e,t.to,-1)??kc(e,t.to,-1)??Ld(e,t.to,-1)??Y(e,t.to,1);if(i==null)return n;let a=Math.min(r.left,i.left),o=Math.max(r.right,i.right),s=Math.min(r.top,i.top),c=Math.max(r.bottom,i.bottom);return n=new DOMRect(a,s,o-a,c-s),n};return{getBoundingClientRect:r,getClientRects:()=>[r()]}}export{Xu as EDITOR_KEY_BINDINGS,e as Priority,su as buildFileMarkdown,Dl as checkRoundTrip,jl as codeBlockLanguages,Aa as collectReferenceDefinitions,Vu as defaultResolveImageUrl,kl as defineBulletAfterHeading,ue as defineCodeBlockPreviewPlugin,oi as defineCodeBlockSyntaxHighlight,Uc as defineEditorExtension,Xl as defineEmbedPaste,tu as defineExitBoundaryHandler,iu as defineFileClickHandler,pu as defineFilePaste,xu as defineFileView,Nu as defineFollowLinkHandler,oa as defineHTMLComment,Yu as defineImage,Bu as defineImageClickHandler,Qu as defineLinkClickHandler,cs as defineLinkCommands,us as defineLinkEditKeymap,td as defineLinkHoverHandler,id as defineLinkPaste,Hs as defineMath,wc as definePendingReplacementHandler,fe as definePlaceholder,pe as defineReadonly,ge as defineSearchStatusHandler,ld as defineSpellCheckPlugin,yd as defineSubstitution,Tu as defineTagClickHandler,Vc as defineViewAttributes,Od as defineVirtualCaret,ku as defineWikilinkClickHandler,Ad as defineWikilinkHoverHandler,Nd as defineWikilinkTrigger,Tr as docToMarkdown,hu as formatFileSize,La as formatSizedWikiEmbed,ci as getCodeTokens,_u as getFileKind,Ii as getIsComposing,q as getLinkUnitAt,Kc as getMarkBuilders,mc as getPendingReplacement,_e as getSearchStatus,Id as getSelectedText,tc as getTableColumnAlign,Fd as getTextblockDisplayText,Rd as getVirtualElementFromRange,Ua as inlineTextToMarkChunks,Wa as inlineTextToMarkChunksWithContext,as as insertLink,de as isCodeBlockPreviewHiddenDecoration,Pn as isMarkOfType,I as isNodeOfType,ic as isSelectionInTableCell,Ll as listenForTweetHeight,zs as loadKaTeX,Z as markdownToDoc,Gl as matchEmbed,Ia as parseWikiEmbed,ss as removeLink,Bs as renderMathInto,os as updateLink,Ra as wikiEmbedBasename,oe as withPriority};
package/dist/style.css CHANGED
@@ -249,7 +249,7 @@
249
249
  }
250
250
  }
251
251
 
252
- .ProseMirror.ProseMirror-focused ~ .md-virtual-caret-layer .md-virtual-caret {
252
+ .md-virtual-caret-layer[data-focused] .md-virtual-caret {
253
253
  animation: 1.2s ease-in-out infinite md-virtual-caret-blink;
254
254
  display: block;
255
255
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@meowdown/core",
3
3
  "type": "module",
4
- "version": "0.61.0",
4
+ "version": "0.62.0",
5
5
  "license": "MIT",
6
6
  "repository": {
7
7
  "type": "git",
@@ -43,7 +43,7 @@
43
43
  "remark-stringify": "^11.0.0",
44
44
  "unicode-by-name": "^0.2.0",
45
45
  "unified": "^11.0.5",
46
- "@meowdown/markdown": "^0.61.0"
46
+ "@meowdown/markdown": "^0.62.0"
47
47
  },
48
48
  "devDependencies": {
49
49
  "@ocavue/tsconfig": "^0.7.1",