@meowdown/core 0.59.1 → 0.61.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
@@ -2,11 +2,11 @@ import { Editor, Extension, ExtractMarkBuilders, ExtractNodeBuilders, PlainExten
2
2
  import { CodeBlockAttrs, CodeBlockAttrs as CodeBlockAttrs$1, defineCodeBlockPreviewPlugin, isCodeBlockPreviewHiddenDecoration } from "@prosekit/extensions/code-block";
3
3
  import { PlaceholderOptions, definePlaceholder } from "@prosekit/extensions/placeholder";
4
4
  import { defineReadonly } from "@prosekit/extensions/readonly";
5
+ import { SearchStatus, SearchStatusHandler, defineSearchStatusHandler, getSearchStatus } from "@prosekit/extensions/search";
5
6
  import { Command, EditorState, PluginKey } from "@prosekit/pm/state";
6
7
  import { EditorView } from "@prosekit/pm/view";
7
8
  import { EditorNode, Mark, ProseMirrorNode } from "@prosekit/pm/model";
8
9
  import { ListAttrs } from "@prosekit/extensions/list";
9
- import { SearchStatus, SearchStatusHandler, defineSearchStatusHandler, getSearchStatus } from "@prosekit/extensions/search";
10
10
  import { HorizontalRuleExtension } from "@prosekit/extensions/horizontal-rule";
11
11
  import { render } from "katex";
12
12
  import { VirtualElement } from "@floating-ui/dom";
@@ -809,11 +809,12 @@ interface EmbedDescriptor {
809
809
  //#region src/extensions/tweet.d.ts
810
810
  /**
811
811
  * `Tweet.html` reports its rendered height via `postMessage`; size the iframe to
812
- * fit. Returns a cleanup that removes the listener. The cleanup also runs once
813
- * the iframe leaves the DOM, so the editor's DOM mark view (which has no destroy
814
- * hook) is covered, while a React caller can call it on unmount.
812
+ * fit and pass each reported height to `onHeight`. Returns a cleanup that
813
+ * removes the listener. The cleanup also runs once the iframe leaves the DOM, so
814
+ * the editor's DOM mark view (which has no destroy hook) is covered, while a
815
+ * React caller can call it on unmount.
815
816
  */
816
- declare function listenForTweetHeight(iframe: HTMLIFrameElement): () => void;
817
+ declare function listenForTweetHeight(iframe: HTMLIFrameElement, onHeight?: (height: number) => void): () => void;
817
818
  //#endregion
818
819
  //#region src/extensions/embed.d.ts
819
820
  /** Detect a tweet/YouTube embed in an image `src`, or `undefined` for a plain image. */
@@ -1010,6 +1011,13 @@ interface ImageOptions {
1010
1011
  * that image. Defaults to `defaultResolveImageUrl`.
1011
1012
  */
1012
1013
  resolveImageUrl?: ImageUrlResolver;
1014
+ /**
1015
+ * Whether to write the height a tweet embed reports back into the trailing
1016
+ * size comment, so the next load can seed the iframe at its final height.
1017
+ * Defaults to `true`; disable when the document must never change without a
1018
+ * user edit (e.g. deterministic tests).
1019
+ */
1020
+ persistTweetHeight?: boolean;
1013
1021
  }
1014
1022
  /** Show an `src` as-is when it is an http(s) URL, otherwise skip rendering it. */
1015
1023
  declare function defaultResolveImageUrl(src: string): string | undefined;
@@ -1140,6 +1148,9 @@ declare function defineWikilinkHoverHandler(onHoverChange: WikilinkHoverHandler)
1140
1148
  */
1141
1149
  declare function defineWikilinkTrigger(): PlainExtension;
1142
1150
  //#endregion
1151
+ //#region src/utils/composition.d.ts
1152
+ declare function getIsComposing(): boolean;
1153
+ //#endregion
1143
1154
  //#region src/utils/display-text.d.ts
1144
1155
  /**
1145
1156
  * The textblock as its live-preview marks display it: syntax runs are
@@ -1191,4 +1202,4 @@ declare function getSelectedText(state: EditorState): string;
1191
1202
  */
1192
1203
  declare function getVirtualElementFromRange(view: EditorView, range: PositionRange): VirtualElement;
1193
1204
  //#endregion
1194
- 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, 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 };
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 };
package/dist/index.js CHANGED
@@ -1,8 +1,8 @@
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{LEZER_NODE_IDS as S,collectInlineElements as me,getAutolinkHref as he,gfmBlockOnlyParser as ge,gfmParser as _e,isSpaceChar as C,parseInline as ve}from"@meowdown/markdown";import{isElementLike as ye,isHTMLElement as be,isObject as xe,once as Se}from"@ocavue/utils";import{defineBlockquote as Ce}from"@prosekit/extensions/blockquote";import{defineDoc as we}from"@prosekit/extensions/doc";import{defineGapCursor as Te}from"@prosekit/extensions/gap-cursor";import{defineModClickPrevention as Ee}from"@prosekit/extensions/mod-click-prevention";import{defineText as De}from"@prosekit/extensions/text";import{defineVirtualSelection as Oe}from"@prosekit/extensions/virtual-selection";import{NodeSelection as ke,Plugin as w,PluginKey as T,Selection as Ae,TextSelection as E}from"@prosekit/pm/state";import{Decoration as je,DecorationSet as D}from"@prosekit/pm/view";import{NO_BREAK_SPACE as Me}from"unicode-by-name";import{defaultHandlers as Ne}from"hast-util-to-mdast";import{defaultHandlers as Pe}from"mdast-util-to-markdown";import Fe from"rehype-parse";import Ie from"rehype-remark";import Le from"remark-gfm";import Re from"remark-stringify";import{unified as ze}from"unified";import{DOMParser as Be,DOMSerializer as Ve,Fragment as O,Mark as He,Slice as k}from"@prosekit/pm/model";import{defineHeadingCommands as Ue,defineHeadingInputRule as We,defineHeadingSpec as Ge}from"@prosekit/extensions/heading";import{defineParagraphCommands as Ke,defineParagraphKeymap as qe}from"@prosekit/extensions/paragraph";import{LanguageDescription as Je}from"@codemirror/language";import{languages as Ye}from"@codemirror/language-data";import{classHighlighter as Xe,highlightTree as Ze}from"@lezer/highlight";import{createParser as Qe}from"prosemirror-highlight/lezer";import{defineEnterRule as $e,defineTextBlockEnterRule as et}from"@prosekit/extensions/enter-rule";import{defineInputRule as tt,defineTextBlockInputRule as nt}from"@prosekit/extensions/input-rule";import{triggerAutocomplete as rt}from"@prosekit/extensions/autocomplete";import{defineListCommands as it,defineListDropIndicator as at,defineListKeymap as ot,defineListSpec as st,moveList as ct,toggleList as lt,unwrapList as ut,wrapInList as dt}from"@prosekit/extensions/list";import{chainCommands as ft,lift as pt}from"@prosekit/pm/commands";import{defineSearchCommands as mt,defineSearchQuery as ht,defineSearchStatusHandler as gt,getSearchStatus as _t,getSearchStatus as vt}from"@prosekit/extensions/search";import{defineHorizontalRule as yt}from"@prosekit/extensions/horizontal-rule";import{AddMarkStep as bt,AddNodeMarkStep as xt,AttrStep as St,RemoveMarkStep as Ct,RemoveNodeMarkStep as wt,ReplaceStep as Tt,Step as Et,StepResult as Dt,Transform as Ot}from"@prosekit/pm/transform";import{decodeString as kt}from"micromark-util-decode-string";import{normalizeIdentifier as At}from"micromark-util-normalize-identifier";import{createListRenderingPlugin as jt,createSafariInputMethodWorkaroundPlugin as Mt,createToggleCollapsedCommand as Nt,defaultAttributesGetter as Pt,findCheckboxInListItem as Ft,handleListMarkerMouseDown as It,joinListElements as Lt,listToDOM as Rt,unwrapListSlice as zt,wrappingListInputRule as Bt}from"prosemirror-flat-list";import{defineTableCellSpec as Vt,defineTableCommands as Ht,defineTableDropIndicator as Ut,defineTableEditingPlugin as Wt,defineTableHeaderCellSpec as Gt,defineTableRowSpec as Kt,defineTableSpec as qt,deleteTable as Jt,isCellSelection as Yt}from"@prosekit/extensions/table";import{closeHistory as Xt}from"@prosekit/pm/history";import{registerResizableHandleElement as Zt,registerResizableRootElement as Qt}from"@prosekit/web/resizable";import{InputRule as $t}from"@prosekit/pm/inputrules";function A(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 j=new T(`mark-mode`);function en(e){return j.getState(e)}function tn(e){return new w({key:j,state:{init:()=>e,apply:(e,t)=>e.getMeta(j)??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(j,e)),!0)}function rn(e){return b(m(tn(e)),s({setMarkMode:nn}))}function M(e){return j.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 D.empty;let r=n.$head,{parent:i}=r;if(!i.isTextblock||i.type.spec.code)return D.empty;let a=h(r,g(e.schema,`mdPack`),t);return a?D.create(e.doc,[je.inline(a.from,a.to,{class:`show`})]):D.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=A(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=Ae.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 D.create(t.doc,[je.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(je.inline(t,t+e.nodeSize,{class:vn}))}),D.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)=>Ne.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)=>Pe.text(e,t,{...n,unsafe:Dn(n.unsafe)},r);function kn(){return ze().use(Fe).use(Ie,{handlers:{mark:xn,li:En}}).use(Le).use(Re,{bullet:`-`,emphasis:`*`,strong:`*`,fence:"`",fences:!0,rule:`-`,ruleRepetition:3,listItemIndent:`one`,handlers:{highlight:Sn,text:On}}).freeze()}const An=Se(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=(be(e)?e:void 0)?.getAttribute(`data-md`)??``;return n?O.from(t.text(n)):O.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
- `);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(Ge(),qn(),Xn(),Zn(),We(),Ue(),$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),Ke(),qe())}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 Ve(ar(Ve.nodesFromSchema(e)),Ve.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(Me,` `)}function pr(e,t){!e.hasContent||e.trailingNewlines>=t||mr(e,`
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
+ `);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:tl(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 Be(e,[...rr(),...Yn(),...Be.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 k.empty;let r=Z(n,{nodes:tl(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 k(r.content,a,o)}function xr(e,t,n){let r=n.marks(),i=Ve.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 Be.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: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(`
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(`
@@ -24,16 +24,16 @@ import{Priority as e,Priority as t,createMarkBuilders as n,createNodeBuilders as
24
24
  `)?t:t.replaceAll(`|`,String.raw`\|`).replaceAll(`
25
25
  `,` `)}function Ur(e){if(e.depth===0)return!0;if(e.parentOffset!==0)return!1;for(let t=1;t<e.depth;t++)if(e.index(t)!==0)return!1;return!0}function Wr(e){if(e.depth===0)return!0;if(e.parentOffset!==e.parent.content.size)return!1;for(let t=1;t<e.depth;t++)if(e.indexAfter(t)!==e.node(t).childCount)return!1;return!0}function Gr(e,t,n){let r=Kr(e,t,n),i;try{i=e.topNodeType.createAndFill(void 0,r)??void 0}catch{i=void 0}return i?Tr(i).replace(/\n+$/,``):r.textBetween(0,r.size,`
26
26
  `,`
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)}),O.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,`
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 k(Zr(e.content),e.openStart,e.openEnd)}function Zr(e){let t=[];return e.forEach(e=>{t.push(e.isTextblock?$r(e):Qr(e))}),O.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(O.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=Je.matchLanguageName(Ye,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=Qe({parse:e=>t.language.parser.parse(e.content),highlighter:Xe});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 Ze(n,Xe,(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 nt({regex:/^~~~(\S*)\s$/,type:`codeBlock`,attrs:di})}function pi(){return et({regex:/^~~~(\S*)$/,type:`codeBlock`,attrs:di})}function mi(){return et({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:tl(t.schema)}).content;if(r.childCount===0)return!1;let i=r.childCount===1&&I(r.child(0),`paragraph`)?new k(r,1,1):new k(r,0,k.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);rt(s),n(s.scrollIntoView())}return!0}}function bi(){return ft(re({type:`paragraph`}),ut(),pt)}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||vt(e).active===0))return D.create(e.doc,[je.inline(t,n,{class:`show`})])}}});function Mi(){return b(ht(),mt(),m(ji))}function Ni(){return f({type:`doc`,attr:`frontmatter`,default:null})}function Pi(e,t){return t(e.state,e.dispatch,e)}function Fi(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=Fi(e,t);return n!=null&&n.some(e=>Fn.has(e.type.name))}function Ii(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(!Ii(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(!Ii(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 Li(e,t){return z(e,t-1)&&z(e,t)}function Ri(e,t){if(!Li(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 zi(e,t,n){let r=Fi(e,t);return r!=null&&n.isInSet(r)}function Bi(e,t){let n=Fi(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&&zi(e,r-1,n);)r--;let i=t+1;for(;i<s&&zi(e,i,n);)i++;(c==null||i-r<c.to-c.from)&&(c={from:r,to:i})}return c}function Vi(e,t,n){let r=Bi(e,n===`from`?t.from:t.to-1);return r==null?!1:n===`from`?r.from===t.from:r.to===t.to}function Hi(e,t,n){let r=Vi(e,t,`from`),i=Vi(e,t,`to`);return r&&!i?t.from:i&&!r?t.to:n-t.from<=t.to-n?t.from:t.to}function Ui(e,t,n,r){if(!Ii(e,n))return n;let i=Ri(e,n);if(i!=null)return r?Hi(e,i,n):n>=t?i.to:i.from;if(!r)return n;let a=B(e,n);if(a!=null&&Vi(e,a,`from`))return a.from;let o=V(e,n);return o!=null&&Vi(e,o,`to`)?o.to:n}function Wi(e,t){if(!Ii(e,t))return;let n=z(e,t-1),r=z(e,t);if(n!==r)return r?`left`:`right`}function Gi(e,t){let n=Bi(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 Ki=new T(`meowdown-hidden-run-snap`),qi=new T(`meowdown-hidden-run-beforeinput`);function Ji(){let e=!1;return new w({key:Ki,props:{handleDOMEvents:{compositionstart:()=>(e=!0,!1),compositionend:()=>(e=!1,!1)}},appendTransaction:(t,n,r)=>{if(e||M(r)!==`hide`)return null;let i=r.selection;if(!y(i))return null;let a=t.some(e=>e.getMeta(`pointer`)!=null);if(i.empty){let e=Ui(r,n.selection.head,i.head,a);return e===i.head?null:r.tr.setSelection(E.create(r.doc,e))}let o=Ri(r,i.from)?.from??i.from,s=Ri(r,i.to)?.to??i.to;if(o===i.from&&s===i.to)return null;let c=i.anchor===i.from?o:s,l=i.head===i.from?o:s;return r.tr.setSelection(E.create(r.doc,c,l))}})}const Yi=(e,t)=>{if(M(e)!==`hide`)return!1;let n=e.selection;if(!y(n)||!n.empty)return!1;let r=Ui(e,n.head,n.head,!0);return r===n.head||t?.(e.tr.setSelection(E.create(e.doc,r))),!1};function Xi(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=Gi(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 Zi=Xi(-1),Qi=Xi(1);function $i(){return new w({key:qi,props:{handleDOMEvents:{beforeinput:(e,t)=>{if(e.composing)return!1;let n=t.inputType===`deleteContentBackward`?Zi:t.inputType===`deleteContentForward`?Qi:void 0;return n==null||!Pi(e,n)?!1:(t.preventDefault(),!0)}}}})}function ea(){return b(m(Ji()),m($i()),x(l({Enter:Yi,Backspace:Zi,Delete:Qi}),t.highest))}function ta(){return f({type:`horizontalRule`,attr:`marker`,default:null,toDOM:e=>e?[`data-hr-marker`,e]:null,parseDOM:e=>e.getAttribute(`data-hr-marker`)})}function na(){return b(yt(),ta())}function ra(){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 ia(e){let[t,n,r]=e;return[t,n,r.map(e=>e.toJSON())]}function aa(e,t){let[n,r,i]=t;return[n,r,i.map(t=>He.fromJSON(e,t))]}function oa(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 sa(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=He.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||oa(n.marks,c))return!1;r??=new Ot(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 Dt.ok(r?.doc??e)}function ca(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 Dt.ok(e);let i=r.map(([,,e])=>He.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 Dt.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=!oa(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:O.fromArray(n)}let u=l(e,0);return Dt.ok(u==null?e:e.copy(u))}var la=class e extends Et{constructor(e){super(),this.chunks=e}apply(e){return this.chunks.length===0?Dt.ok(e):this.chunks.length<=32?sa(e,this.chunks):ca(e,this.chunks)}invert(e){if(this.chunks.length===0)return ua;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 Tt(i,a,e.slice(i,a),!1)}map(e){return null}toJSON(){return{stepType:`batchSetMark`,chunks:this.chunks.map(ia)}}static fromJSON(t,n){let r=n.chunks;return new e(r.map(e=>aa(t,e)))}};Et.jsonID(`batchSetMark`,la);const ua=new la([]),da=/^<!--\s*(\{[^}]*\})\s*-->$/,fa=/<!--\s*\{[^}]*\}\s*-->$/;function pa(e){let t=da.exec(e.trim());if(!t)return;let n;try{n=JSON.parse(t[1])}catch{return}if(!xe(n))return;let r=ma(n);return Object.keys(r).length>0?r:void 0}function ma(e){let t={},{width:n,height:r}=e;return typeof n==`number`&&Number.isFinite(n)&&n>0&&(t.width=Math.round(n)),typeof r==`number`&&Number.isFinite(r)&&r>0&&(t.height=Math.round(r)),t}function ha(e){return`<!-- ${JSON.stringify(e)} -->`}function ga(e){return e.replace(fa,``)}function _a(e){return At(e)}function va(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 ya(e){if(!va(e))return;let t=_e.parse(e).topNode.firstChild;if(t?.type.id===S.LinkReference&&t.nextSibling==null)return t}function ba(e){return kt(e.startsWith(`<`)&&e.endsWith(`>`)?e.slice(1,-1):e)}function xa(e){return e.length<2?``:kt(e.slice(1,-1))}function Sa(e){let t=ya(e);if(t==null)return;let n=t.getChild(`LinkLabel`),r=t.getChild(`URL`);if(n==null||r==null)return;let i=_a(e.slice(n.from+1,n.to-1));if(i===``)return;let a=t.getChild(`LinkTitle`);return{key:i,href:ba(e.slice(r.from,r.to)),title:a==null?``:xa(e.slice(a.from,a.to))}}function Ca(e,t){return e==null?!0:I(e,`tableCell`)||I(e,`tableHeaderCell`)?!1:!I(e,`list`)||e.attrs.kind!==`task`||t>0}function wa(e,t,n){return I(e,`paragraph`)&&Ca(t,n)}const H=new WeakMap;function Ta(e,t,n){if(!wa(e,t,n))return;if(H.has(e))return H.get(e);let r=Sa(e.textContent);return H.set(e,r),r}function Ea(e,t,n){return Ta(e,t,n)!=null}function Da(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=Ta(e,i,a);return o!=null&&(n.add(e),t.has(o.key)||t.set(o.key,o)),!1}),{definitions:t,nodes:n}}function Oa(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?(wa(e,n,r)&&(H.has(e)?H.get(e)!=null:va(e.textContent))&&(i=!0),!1):!0),i}function ka(e){if(e.steps.some(e=>e instanceof St&&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||=Oa(r,e,t)||Oa(i,n,o)}),a)return!0}return!1}function Aa(e,t,n){return!t.docChanged||!ka(t)?e:Da(n)}const ja=/^(\d+)(?:x(\d+))?$/i;function Ma(e){if(!e)return null;let t=Number.parseInt(e,10);return Number.isSafeInteger(t)&&t>0?t:null}function Na(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=ja.exec(i);if(!a)return{target:r,display:i,width:null,height:null};let o=Ma(a[1]),s=Ma(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 Pa(e,t,n){return`![[${e}|${Math.round(t)}x${Math.round(n)}]]`}function Fa(e){let t=e.split(/[?#]/,1)[0],n=t.split(/[/\\]/).findLast(Boolean)??t;try{return decodeURIComponent(n)}catch{return n}}function Ia(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 La(){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 Ra(){return d({name:`mdWikilink`,constructor:La()})}const za=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 Ba(e,t,n){return Va(e,t,n)}function Va(e,t,n,r){let i=ve(t),a=[];return Ua(i,[],0,t.length,t,e,a,n,r),a}function Ha(e){return e.slice(1,-1).replaceAll(/\\(.)/g,`$1`)}function Ua(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=eo(r,e[n+1],i);to(r,t,i,a,o,s,c,u),u&&n++,l=u?u.to:r.to;continue}Wa(r,t,i,a,o,s,c),l=r.to}l<r&&U(o,l,r,t)}function Wa(e,t,n,r,i,a,o){switch(e.type){case S.Link:return qa(e,t,n,r,i,a,o);case S.Wikilink:return ro(e,t,n,r,i);case S.WikiEmbed:return io(e,t,n,r,i,a);case S.InlineMath:return no(e,t,n,r,i);case S.URL:return Ka(e,t,n,r,i);default:return Ga(e,t,n,r,i,a,o)}}function Ga(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=za.get(s),d=u?[...l,r[u].create()]:l;e.children.length===0?U(i,e.from,e.to,d):Ua(e.children,d,e.from,e.to,n,r,i,a,o)}function Ka(e,t,n,r,i){let a=he(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 qa(e,t,n,r,i,a,o){let s=Ja(e),c=Ya(s,n,o);if(c==null){Xa(e,t,n,r,i,a,o);return}let l=Qa(s,c,t,n,r,a);if(l){U(i,e.from,e.to,l);return}$a(e,s,c,t,n,r,i,a,o)}function Ja(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 Ya(e,t,n){if(e.linkMarkCount>=3)return{href:e.urlNode==null?``:t.slice(e.urlNode.from,e.urlNode.to),title:e.titleNode==null?``:Ha(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=_a(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 Xa(e,t,n,r,i,a,o){Ua(e.children.filter(e=>e.type!==S.LinkMark&&e.type!==S.LinkLabel),t,e.from,e.to,n,r,i,a,o)}function Za(e){let t=e.split(/[?#]/,1)[0],n=t.split(/[/\\]/).findLast(Boolean)??t;try{return decodeURIComponent(n)}catch{return n}}function Qa(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||Za(l);return[...n,i.mdFile.create({href:l,name:f,title:u})]}function $a(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){ro(t,e,i,a,o),v=t.to;continue}if(t.type===S.WikiEmbed){io(t,e,i,a,o,s),v=t.to;continue}if(t.type===S.Image){to(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=za.get(t.type),r=n?[...e,a[n].create()]:e;t.children.length===0?U(o,t.from,t.to,r):Ua(t.children,r,t.from,t.to,i,a,o,s,c),v=t.to}v<e.to&&U(o,v,e.to,_)}function eo(e,t,n){if(!t||t.type!==S.Comment||t.from!==e.to)return;let r=pa(n.slice(t.from,t.to));if(r)return{magic:r,to:t.to}}function to(e,t,n,r,i,a,o,s){let c=Ya(Ja(e),n,o);if(c==null){Xa(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 no(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 ro(e,t,n,r,i){let{target:a,display:o}=Ia(n.slice(e.from,e.to));U(i,e.from,e.to,[...t,r.mdWikilink.create({target:a,display:o})])}function io(e,t,n,r,i,a){let o=Na(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)||Fa(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)||Fa(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&&oa(i[2],r)){e[e.length-1]=[i[0],n,i[2]];return}e.push([t,n,r])}const ao=`inline-marks-applied`,oo=`inline-marks-trigger`,so=`inline-marks-restyle`,W=new T(`inline-mark`),co=new Set;let lo=0,uo=0;function fo(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 po(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))uo++,d=u.chunks;else{lo++;let n=new Set;d=Va($c(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,Ea(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:Da(t.doc),pendingReferenceKeys:co}},apply(e,t,n,r){if(e.getMeta(so)===!0)return t.pendingReferenceKeys.size===0?t:{references:t.references,pendingReferenceKeys:co};if(e.getMeta(ao))return t;let i=Aa(t.references,e,r.doc);if(i===t.references)return t;let a=go(t.references.definitions,i.definitions);return a.size===0?{references:i,pendingReferenceKeys:t.pendingReferenceKeys}:{references:i,pendingReferenceKeys:_o(t.pendingReferenceKeys,a)}}},appendTransaction(e,t,n){for(let t of e)if(t.getMeta(ao))return null;let r=e.some(e=>e.getMeta(so));if(!(r||e.some(e=>e.docChanged||e.getMeta(oo))))return null;let i=W.getState(n)?.references;if(i==null)return null;let s=r?W.getState(t)?.pendingReferenceKeys??co:co,{chunks:c,processed:l}=a(n,r?{from:0,to:0}:fo(e,n),i,s);if(c.length===0)return null;let u=n.tr.step(new la(c));return o(u.doc,l),u.setMeta(ao,!0),u.setMeta(`addToHistory`,!1),u},view(e){e.dispatch(mo(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(so,!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 mo(e){return e.tr.setMeta(oo,!0)}function ho(e,t){return e?.href===t?.href&&e?.title===t?.title}function go(e,t){if(e==null)return new Set(t.keys());let n=new Set;for(let[r,i]of e)ho(i,t.get(r))||n.add(r);for(let[r,i]of t)ho(i,e.get(r))||n.add(r);return n}function _o(e,t){if(e.size===0)return t;let n=new Set(e);for(let e of t)n.add(e);return n}function vo(e){return m(po(e))}function yo(){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 bo(){return u({name:`mdMark`,inclusive:!1,toDOM:()=>[`span`,{class:`md-mark`},0],parseDOM:[{tag:`span.md-mark`}]})}function xo(){return u({name:`mdEm`,toDOM:()=>[`em`,0],parseDOM:[{tag:`em`}]})}function So(){return u({name:`mdStrong`,toDOM:()=>[`strong`,0],parseDOM:[{tag:`strong`}]})}function Co(){return u({name:`mdCode`,toDOM:()=>[`code`,0],parseDOM:[{tag:`code`}]})}function wo(){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 To(){return u({name:`mdLinkUri`,inclusive:!1,toDOM:()=>[`span`,{class:`md-link-uri`},0],parseDOM:[{tag:`span.md-link-uri`}]})}function Eo(){return u({name:`mdLinkTitle`,inclusive:!1,toDOM:()=>[`span`,{class:`md-link-title`},0],parseDOM:[{tag:`span.md-link-title`}]})}function Do(){return u({name:`mdDel`,toDOM:()=>[`del`,0],parseDOM:[{tag:`del`}]})}function Oo(){return u({name:`mdHighlight`,toDOM:()=>[`mark`,0],parseDOM:[{tag:`mark`}]})}function ko(){return u({name:`mdTag`,toDOM:()=>[`span`,{class:`md-tag`},0],parseDOM:[{tag:`span.md-tag`}]})}function Ao(){return u({name:`mdWikilink`,inclusive:!1,attrs:{target:{default:``},display:{default:``}},toDOM:()=>[`span`,{class:`md-wikilink`},0],parseDOM:[{tag:`span.md-wikilink`}]})}function jo(){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 Mo(){return u({name:`mdMath`,inclusive:!1,attrs:{formula:{default:``}},toDOM:()=>[`span`,{class:`md-math`},0],parseDOM:[{tag:`span.md-math`}]})}function No(){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 Po(){return b(bo(),xo(),So(),Co(),wo(),To(),Eo(),Do(),Oo(),ko(),Ao(),yo(),jo(),Mo(),No())}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:`==`}},Fo=new Set([S.EmphasisMark,S.CodeMark,S.LinkMark,S.StrikethroughMark,S.HighlightMark]);function Io(e){return[e.children[0],e.children.at(-1)]}function Lo(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 Ro(e,t,n){for(let r of e){if(r.to<=t||r.from>=n||t<=r.from&&r.to<=n)continue;let i=Lo(r);return i&&i[0]<=t&&n<=i[1]?Ro(r.children,t,n):Ro(e,Math.min(t,r.from),Math.max(n,r.to))}return[t,n]}function zo(e,t,n){for(let r of e)if(!(r.to<=t||r.from>=n)&&(t>r.from||r.to>n))return zo(e,Math.min(t,r.from),Math.max(n,r.to));return[t,n]}function Bo(e,t,n){for(;t<n&&C(e.charCodeAt(t));)t++;for(;n>t&&C(e.charCodeAt(n-1));)n--;return[t,n]}function Vo(e,t,n,r){let i=me(ve(e),e=>e.type===r.node||Fo.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 Ho(e,t,n,r,i){let a=ve(e),o=me(a,e=>e.type===r.node);return i?Go(e,o,t,n):Uo(e,a,o,t,n,r)}function Uo(e,t,n,r,i,a){for(let e=0;e!==i-r;){e=i-r,[r,i]=Ro(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]=Io(e);o.push({from:t.from,to:t.to,insert:``}),o.push({from:n.from,to:n.to,insert:``})}let[s,c]=Wo(e,r,i,o,a);return o.push({from:r,to:r,insert:s},{from:i,to:i,insert:c}),o}function Wo(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 Go(e,t,n,r){let i=[];for(let a of t){if(a.to<=n||a.from>=r)continue;let[t,o]=Io(a),s=Math.max(n,t.to),c=Math.min(r,o.from);for(s>=c&&([s,c]=[t.to,o.from]),[s,c]=zo(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 Ko(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=ve(e),o=me(a,e=>e.type===n.node).findLast(e=>e.from<=t&&t<=e.to);if(o){let[e,n]=Io(o);return{kind:`move`,pos:t===o.from?e.to:t===o.to?n.from:o.to}}return qo(a,t)||e[t-1]===r[0]||e[t]===r[0]?null:{kind:`insert`,pos:t}}function qo(e,t){for(let n of e)if(n.from<t&&t<n.to){let e=Lo(n);return!e||t<e[0]||t>e[1]||qo(n.children,t)}return!1}function K(e){return(t,n)=>{if(t.selection.empty)return Jo(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]=Bo(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:Vo(a,c,l,e)}),!1});let c=s.length>0&&s.every(e=>e.active),l=s.filter(e=>c||!e.active).flatMap(t=>Ho(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 Jo(e,t,n){let{$from:r}=t.selection,i=r.parent;if(!i.isTextblock||i.type.spec.code)return!1;let a=Ko(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 Yo(){return s({toggleEm:()=>K(G.em),toggleStrong:()=>K(G.strong),toggleCode:()=>K(G.code),toggleDel:()=>K(G.del),toggleHighlight:()=>K(G.highlight)})}function Xo(){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 Zo(){return b(Yo(),Xo())}function Qo(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=A(e,t,`mdLinkText`),r=A(e,t,`mdPack`,{key:`link`})??A(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`?Qo(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=Qo(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 $o(e){let t=e.trim();return t?he(t)??t:``}function es(e,t){return e+(t?` "${t.replaceAll(/(["\\])/g,String.raw`\$1`)}"`:``)}function ts(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]=Bo(a.textContent,n.parentOffset,r.parentOffset);if(!(s>=c))return{from:o+s,to:o+c}}function ns({href:e,title:t,wrapText:n=!0}={}){return(r,i)=>{let a=ts(r);if(!a)return!1;if(i){let{from:o,to:s}=a,c=r.tr,l=`](${es($o(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 rs(e){return(t,n)=>{let r=q(t,t.selection.from);if(!r?.dest)return!1;let i=es($o(e.href??r.href),e.title??r.title);return n&&n(t.tr.insertText(i,r.dest.from,r.dest.to).scrollIntoView()),!0}}function is(){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 as(){return s({insertLink:ns,updateLink:rs,removeLink:is})}function os(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=ts(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 ss(e){return l({"Mod-k":os(e)})}function cs(e){return e===`)`||e===`*`||e===`+`?e:void 0}function ls(e){return e===`X`?e:void 0}function us(e){return ps(e)?String(e):void 0}function ds(){return f({type:`list`,attr:`marker`,default:null,splittable:!0,toDOM:e=>{let t=cs(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 fs(){return f({type:`list`,attr:`taskMarker`,default:null,splittable:!0,toDOM:e=>{let t=ls(e);return t==null?null:[`data-list-task-marker`,t]},parseDOM:e=>e.getAttribute(`data-list-task-marker`)===`X`?`X`:null})}function ps(e){return e===2||e===3||e===4}function ms(){return f({type:`list`,attr:`markerGap`,default:1,splittable:!0,toDOM:e=>{let t=us(e);return t==null?null:[`data-list-marker-gap`,t]},parseDOM:e=>{let t=Number.parseInt(e.getAttribute(`data-list-marker-gap`)??``,10);return ps(t)?t:1}})}function hs(e){let t=e.attrs;return{...Pt(e),"data-list-marker":cs(t.marker),"data-list-task-marker":ls(t.taskMarker),"data-list-marker-gap":us(t.markerGap)}}function gs(){return o({serializeFragmentWrapper:e=>(...t)=>_s(Lt(e(...t))),serializeNodeWrapper:e=>(...t)=>{let n=e(...t);return ye(n)?_s(Lt(n)):n},nodesFromSchemaWrapper:e=>(...t)=>({...e(...t),list:e=>Rt({node:e,nativeList:!0,getAttributes:hs})})})}function _s(e){ye(e)&&vs(e);for(let t of e.children)_s(t);return e}function vs(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=Ft(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 ys=[Bt(/^\s?([*-])\s$/,{kind:`bullet`,collapsed:!1}),Bt(/^\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}}),Bt(/^\s?\[([\sX]?)\]\s$/i,({match:e})=>({kind:`task`,checked:[`x`,`X`].includes(e[1]),collapsed:!1})),Bt(/^\s?\+\s$/,{kind:`task`,marker:`+`,checked:!1,collapsed:!1})];function bs(){return b(ys.map(tt))}function xs(){return dt({kind:`task`,marker:`+`})}function Ss(){return dt({kind:`task`,marker:null})}function Cs(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 ws(){return(e,t,n)=>{let r=Cs(e);return(r?.kind===`task`?r.marker===`+`?Ss():xs():dt({kind:`task`,marker:null,checked:!1}))(e,t,n)}}function Ts(){return s({cycleCheckableList:ws,wrapInCircleTask:xs,wrapInSquareTask:Ss})}function Es(){return(e,t,n)=>{let r=Cs(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},dt(a)(e,t,n)}}function Ds(){return(e,t,n)=>{let r=Cs(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},dt(a)(e,t,n)}}function Os(e){return I(e,`list`)&&e.attrs.kind===`bullet`&&e.childCount>=2&&e.firstChild?.type!==e.type}const ks=e=>{let t=e.attrs;return t.kind===`task`?{...t,checked:!t.checked}:Os(e)?{...t,collapsed:!t.collapsed}:t};function As(){return m(()=>[new w({props:{handleDOMEvents:{mousedown:(e,t)=>It({view:e,event:t,onListClick:ks})}}}),jt(),new w({props:{transformCopied:zt}}),Mt()])}function js(){return s({toggleListCollapsed:()=>Nt({isToggleable:Os})})}function Ms(){return l({"Mod-Enter":Es(),"Mod-Shift-Enter":Ds(),"Mod-.":Nt({isToggleable:Os}),"Mod-Shift-7":lt({kind:`ordered`,collapsed:!1}),"Mod-Shift-8":lt({kind:`bullet`,collapsed:!1}),"Mod-Shift-9":lt({kind:`task`,checked:!1,collapsed:!1})})}function Ns(){return b(st(),As(),ot(),it(),gs(),at(),bs(),Ms(),ds(),fs(),ms(),Ts(),js())}let Ps;function Fs(){return Ps??=import(`./katex-chunk-Ch7kgbXr.js`).then(e=>e.render),Ps}function Is(e,t,n,r){try{e(n,t,{displayMode:r,throwOnError:!1,output:`mathml`})}catch(e){t.textContent=String(e)}}var Ls=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;Fs().then(t=>{e===this.#r&&Is(t,this.#n,e,!1)})}};function Rs(){return d({name:`mdMath`,constructor:(e,t)=>new Ls(e,t)})}function zs(e){return e===`left`||e===`center`||e===`right`?e:null}function Bs(){return f({type:`tableCell`,attr:`align`,default:null,toDOM:e=>e?[`data-align`,e]:null,parseDOM:e=>zs(e.getAttribute(`data-align`))})}function Vs(){return f({type:`tableHeaderCell`,attr:`align`,default:null,toDOM:e=>e?[`data-align`,e]:null,parseDOM:e=>zs(e.getAttribute(`data-align`))})}function Hs(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 Us(e){return e.child(Hs(e))}function Ws(e,t){return t>=e.childCount?null:e.child(t).attrs.align??null}function Gs(e,t,n){if(e.childCount===0)return;let r=Us(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=Ws(r,e);(t.attrs.align??null)!==i&&n.setNodeMarkup(o,void 0,{...t.attrs,align:i}),o+=t.nodeSize}i+=a.nodeSize}}function Ks(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 qs(){return new w({key:new T(`table-align-sync`),appendTransaction(e,t,n){if(!e.some(e=>e.docChanged))return;let r=Ks(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,Gs(e,t,s),!1):!0),s?.docChanged?s:void 0}})}function Js(){return m(qs())}function Ys(e){let{selection:t}=e;if(Yt(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 Xs(e){return(t,n)=>{let r=Ys(t);if(!r||r.table.childCount===0)return!1;if(n){let{table:i,tablePos:a,firstColumn:o,lastColumn:s}=r,c=Hs(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 Zs(e){let t=Ys(e);if(!(!t||t.table.childCount===0))return Ws(Us(t.table),t.lastColumn)??void 0}function Qs(){return s({setTableColumnAlign:Xs})}function $s(){return b(Bs(),Vs(),Js(),Qs())}function ec(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 tc=`paragraph`;function nc(){return b(p({name:`tableCell`,content:tc}),p({name:`tableHeaderCell`,content:tc}))}const rc=(e,t)=>{let{selection:n}=e;return!Yt(n)||!n.isColSelection()||!n.isRowSelection()?!1:Jt(e,t)};function ic(){return x(l({Backspace:rc,Delete:rc}),t.high)}function ac(){return b(qt(),Kt(),Vt(),Gt(),nc(),$s(),Wt({allowTableNodeSelection:!0}),Ht(),Ut(),ic())}function oc(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 sc(e){return(t,n)=>{if(ec(t))return!1;let r=oc(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)?ke.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 cc(e){return(t,n,r)=>ct(e)(t,n,r)||sc(e===`up`?-1:1)(t,n,r)}function lc(){return l({"Alt-ArrowUp":cc(`up`),"Alt-ArrowDown":cc(`down`)})}const J=new T(`meowdownPendingReplacement`);function uc(e){return J.getState(e)?.pending??null}function dc(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 fc=new w({key:J,state:{init:()=>({pending:null}),apply:(e,t)=>{let n=e.getMeta(J);if(n)return dc(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=uc(e);return!t||t.from>=t.to?null:D.create(e.doc,[je.inline(t.from,t.to,{class:`md-pending-replacement`})])}}});function pc(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 mc(e){return(t,n)=>uc(t)?(n?.(t.tr.setMeta(J,{type:`append`,text:e})),!0):!1}function hc(){return(e,t)=>uc(e)?(t?.(e.tr.setMeta(J,{type:`discard`})),!0):!1}function gc(e={}){return(t,n)=>{let r=uc(t);if(!r||!r.text.trim())return!1;if(n){let i=e.mode??r.mode,a=tl(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 k(o.content,0,0)),s.setSelection(E.near(s.doc.resolve(s.mapping.map(r.to)),-1)))}n(s.scrollIntoView())}return!0}}function _c(){return s({startPendingReplacement:pc,appendPendingReplacementText:mc,acceptPendingReplacement:gc,discardPendingReplacement:hc})}function vc(){return l({"Mod-Enter":gc(),Escape:hc()})}function yc(){return b(m(fc),_c(),vc())}function bc(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 xc(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 xc(r)?void 0:r}function Sc(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 Cc(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 wc(e){let t=e.state,n=t.selection.head;for(let r of cn){let i=A(t,n,r);if(i==null||i.from!==n&&i.to!==n)continue;let a=Ec(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 Tc(e,t,n){let r=e.state;for(let i of cn){let a=A(r,t,i);if(a==null)continue;let o=Ec(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 Ec(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 Dc(e){return Cc(e)??wc(e)}const Oc=new T(`meowdown-scroll-to-selection`);function kc(e){let t=e.state.selection;if(!y(t)||Y(e,t.head,1)!=null)return!1;let n=Dc(e);if(n==null)return!1;let r=e.domAtPos(t.head).node;return Nc(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 Ac(e){let t=e.assignedSlot??e.parentNode;return t?.nodeType===11?t.host:t}function jc(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 Mc(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 Nc(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=Ac(e);continue}let n=e,o=n===a.body,s=o?jc(a):Mc(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:Ac(n)}}function Pc(){return m(new w({key:Oc,props:{handleScrollToSelection:kc}}))}function Fc(e,t){return(n,r)=>{let i=e<0?Ae.atStart(n.doc):Ae.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 Ic(){return l({"Meta-ArrowUp":Fc(-1,!1),"Meta-ArrowDown":Fc(1,!1),"Shift-Meta-ArrowUp":Fc(-1,!0),"Shift-Meta-ArrowDown":Fc(1,!0)})}function Lc(e){return m(new w({props:{attributes:e}}))}function Rc(e){e.offsetWidth}const zc=new T(`meowdown-virtual-caret`),Bc=[`md-virtual-caret-blink`,`md-virtual-caret-blink2`],Vc=`data-meowdown-virtual-caret`;function Hc(e){let t=e.height*.19999999999999996;return{left:e.left,top:e.top-t/2,height:e.height+t}}function Uc(e){let t=Sc(e)??Cc(e);return t==null?wc(e):Hc(t)}function Wc(e,t){return e==null||t==null?e===t:e.left===t.left&&e.top===t.top&&e.height===t.height}var Gc=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=Bc[this.#s]}#l=()=>{let e=this.#e;if(e.isDestroyed)return;let t=e.state,n=t.selection,r=y(n)&&n.empty?Uc(e):void 0,i=r!=null&&M(t)===`hide`?Wi(t,n.head):void 0;if(Wc(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(Vc);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(Vc,``),a&&(Rc(this.#n),this.#n.style.transitionProperty=``)}};function Kc(){return m(new w({key:zc,view:e=>new Gc(e)}))}function qc(e){return b(ir(),we(),Ni(),De(),Ce(),Ns(),er(),ac(),hi(),na(),ra(),Po(),Lc({class:`meowdown-content`}),oi(),Oi(),Ai(),lc(),Ic(),vo(e),Zo(),as(),Ra(),Rs(),rn(e.markMode??`focus`),ei(),Kc(),Pc(),ea(),bn({marks:cn.map(e=>({name:e,modes:[`hide`,`focus`,`show`]}))}),a(),i(),c(),Te(),Oe(),Ee(),Si(),yc(),Mi())}function Jc(e={}){return qc(e)}const Yc=Se(()=>{let e=Jc().schema;if(e==null)throw Error(`Unexpected empty schema`);return e}),Xc=Se(()=>r(Yc())),Zc=Se(()=>n(Yc())),Qc=`meowdown_mark_builders`;function $c(e){let t=e.cached[Qc];if(t)return t;let r=n(e);return e.cached[Qc]=r,r}const el=`meowdown_node_builders`;function tl(e){let t=e.cached[el];if(t)return t;let n=r(e);return e.cached[el]=n,n}function Z(e,t={}){let{nodes:n=Xc(),frontmatter:r=!1}=t,i,a=e;if(r){let[t,n]=rl(e);i=t,n&&(a=e.slice(n))}let o=il(n,ge.parse(a).cursor(),a);return n.doc(i===void 0?{}:{frontmatter:i},o)}const nl=/^---[ \t]*\r?\n([\s\S]*?\n)?---[ \t]*(?:\r?\n|$)/;function rl(e){let t=nl.exec(e);return t?[(t[1]??``).replace(/\r?\n$/,``),t[0].length]:[]}function il(e,t,n){let r=[];if(!t.firstChild())return r;let i;do i!=null&&al(r,e,n,i,t.from),i=t.to,r.push(...ol(e,t,n));while(t.nextSibling());return t.parent(),r}function al(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 ol(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[fl(e,t,n)];case S.LinkReference:return[fl(e,t,n)];case S.CommentBlock:return[pl(e,t,n)];case S.HTMLBlock:case S.ProcessingInstructionBlock:return[fl(e,t,n)];case S.Blockquote:return[ml(e,t,n)];case S.BulletList:return hl(e,t,n,`bullet`);case S.OrderedList:return hl(e,t,n,`ordered`);case S.FencedCode:case S.CodeBlock:return[yl(e,t,n)];case S.BlockMath:return[bl(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[xl(e,t,n)];case S.Task:return[fl(e,t,n)];default:return n.slice(t.from,t.to).trim()===``?[]:(console.warn(`[meowdown] unsupported lezer block "${t.type.name}"`),[fl(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=ul(n.slice(o,s),$(n,o)).trim(),d=i?sl(n,c,l)||1:null,f=!i&&c>=0&&cl(n,c,l)||null;return e.heading({level:r,setextUnderline:d,closingHashes:f},u)}function sl(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 cl(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 ll(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 ul(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: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(`
32
32
  `)?e:e.split(`
33
- `).map((e,n)=>n===0?e:ll(e,t)).join(`
34
- `)}function dl(e,t,n){return e.paragraph(ul(t,n))}function fl(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),dl(e,o,a)}return dl(e,n.slice(r,i),a)}function pl(e,t,n){let r=$(n,t.from),i=ul(n.slice(t.from,t.to),r);return e.htmlComment({content:i})}function ml(e,t,n){let r=[];if(t.firstChild()){let i;do{if(t.type.id===S.QuoteMark)continue;i!=null&&al(r,e,n,i,t.from),i=t.to,r.push(...ol(e,t,n))}while(t.nextSibling());t.parent()}return e.blockquote(r)}function hl(e,t,n,r){let i=[];if(t.firstChild()){do t.type.id===S.ListItem&&i.push(vl(e,t,n,r));while(t.nextSibling());t.parent()}return i}function gl(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 _l(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=dl(e,n.slice(r,i),$(n,r));return{checked:a,taskMarker:o,paragraph:s}}function vl(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=gl(t,n,r);c=e.marker,s=e.order,l=$(n,t.to);continue}if(r===`bullet`&&t.type.id===S.Task){let r=_l(e,t,n);a=r.checked,o=r.taskMarker,i.push(r.paragraph);continue}i.push(...ol(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 yl(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 bl(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 xl(e,t,n){let r=[];if(t.firstChild()){do t.type.id===S.TableDelimiter&&(r=Sl(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(Cl(e,t,n,!0,r)):a===S.TableRow&&i.push(Cl(e,t,n,!1,r))}while(t.nextSibling());t.parent()}return e.table(i)}function Sl(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 Cl(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 wl(e){return e.replace(/\n+$/u,``)}function Tl(e){return/^[\s>]*$/u.test(e)}function El(e){return e.split(`
35
- `).filter(e=>!Tl(e))}function Dl(e){return e.trim().replaceAll(/\s+/gu,` `)}const Ol=/^:?-+:?$/u;function kl(e){let t=e.startsWith(`:`),n=e.endsWith(`:`);return t&&n?`:-:`:t?`:--`:n?`--:`:`---`}function Al(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=>Dl(e));return Dl(`${t} | ${(n.every(e=>Ol.test(e))?n.map(kl):n).join(` | `)} |`)}function jl(e){return Al(e)??Dl(e)}function Ml(e,t={}){let n=Tr(Z(e,{frontmatter:t.frontmatter}),{frontmatter:t.frontmatter});if(wl(n)===wl(e))return`exact`;let r=El(e),i=El(n);return r.length===i.length&&r.every((e,t)=>jl(e)===jl(i[t]))?`normalizing`:`lossy`}const Nl=(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 Pl(){return x(l({Enter:Nl}),t.high)}const Fl=new Set([`MscGen`,`Xù`,`MsGenny`,`Angular Template`,`Brainfuck`,`Esper`,`Oz`,`Factor`,`Squirrel`,`Yacas`,`mIRC`,`FCL`,`ECL`,`MUMPS`,`Pig`,`Asterisk`,`Z80`,`Mathematica`]),Il=Ye.map(e=>({label:e.name,value:e.name.toLowerCase()})).filter(e=>!Fl.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 Ll(){return typeof window>`u`?!1:window.matchMedia(`(prefers-color-scheme: dark)`).matches}const Rl=/^(?:www\.|mobile\.)?(?:twitter\.com|x\.com)$/i,zl=/\/status(?:es)?\/(\d+)/;function Bl(e){let t;try{t=new URL(e)}catch{return}if(Rl.test(t.hostname))return zl.exec(t.pathname)?.[1]}const Vl=e=>{let t=Bl(e);if(!t)return;let n=Ll()?`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 Hl(e){let t=t=>{if(t.source===e.contentWindow)try{let n=t.data?.[`twttr.embed`]?.params?.[0]?.height;typeof n==`number`&&(e.style.height=`${n}px`)}catch(e){console.warn(`[meowdown] failed to parse tweet resize message:`,e)}};window.addEventListener(`message`,t);let n=!1,r=()=>{n||(n=!0,window.removeEventListener(`message`,t),i.disconnect())},i=new MutationObserver(()=>{e.isConnected||r()});return i.observe(document.body,{childList:!0,subtree:!0}),r}const Ul=/^(?:www\.|m\.)?(?:youtube\.com|youtube-nocookie\.com)$/i,Wl=/^(?:www\.)?youtu\.be$/i,Gl=/^[\w-]{11}$/;function Kl(e){let t;try{t=new URL(e)}catch{return}let n=null;if(Wl.test(t.hostname))n=t.pathname.slice(1);else if(Ul.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||!Gl.test(n))return;let r=t.searchParams.get(`start`)??t.searchParams.get(`t`),i=r?ql(r):void 0;return{videoId:n,startSeconds:i}}function ql(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 Jl=[e=>{let t=Kl(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}},Vl];function Yl(e){for(let t of Jl){let n=t(e);if(n)return n}}function Xl(e,t){return e.clipboardData?.getData(`text/plain`)||t.content.textBetween(0,t.content.size,`
36
- `)}const Zl=new T(`meowdown-embed-paste`);function Ql(e){let t=e.trim();if(!(!t||/\s/.test(t)))return Yl(t)?t:void 0}function $l(e,t){let{from:n,to:r}=e.state.selection;e.dispatch(Xt(e.state.tr.insertText(t,n,r)));let i=e.state.tr.insertText(`![](${t})`,n,n+t.length);e.dispatch(Xt(i))}function eu(){return m(new w({key:Zl,props:{handlePaste:(e,t,n)=>{let r=e.state.selection.$from.parent;if(!r.inlineContent||r.type.spec.code)return!1;let i=Xl(t,n);if(!i)return!1;let a=Ql(i);return a?($l(e,a),!0):!1}}}))}const tu=new T(`meowdown-exit-boundary`);function nu(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&&Ae.findFrom(a,t))}function ru(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:nu(n,t)}function iu(e){return new w({key:tu,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||ru(t,r)||e({direction:r<0?`up`:`down`,event:n})===!1)}}})}function au(e){return x(m(iu(e)),t.low)}const ou=new T(`meowdown-file-click`);function su(e,t){let n=A(e,t,`mdFile`);if(!n)return;let{href:r,name:i}=n.mark.attrs;return{href:r,name:i}}function cu(e){return m(new w({key:ou,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=su(t.state,t.posAtDOM(a,0));return o?(e({href:o.href,name:o.name,event:r}),!0):!1}}}))}const lu=new Set([`avif`,`bmp`,`gif`,`jpeg`,`jpg`,`png`,`svg`,`webp`]);function uu(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 lu.has(n)}function du(e,t){return uu(e)?`![](${t})`:`[${mu(e.name)}](${t})`}function fu(e,t){return!e||!t.onFilePaste?[]:Array.from(e.files)}const pu=e=>{console.error(`[meowdown] failed to save pasted file:`,e)};function mu(e){return e.replaceAll(/[\\[\]]/g,String.raw`\$&`)}async function hu(e,t,n,r){let{onFilePaste:i}=n;if(!i)return;let a=n.onFileSaveError??pu,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=du(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 gu(e){return new w({key:new T(`file-paste`),props:{handlePaste:(t,n)=>{let r=fu(n.clipboardData,e);return r.length===0?!1:(hu(t,r,e),!0)},handleDrop:(t,n)=>{let r=fu(n.dataTransfer,e);return r.length===0?!1:(hu(t,r,e,t.posAtCoords({left:n.clientX,top:n.clientY})?.pos),!0)}}})}function _u(e={}){return x(m(gu(e)),t.high)}const vu=[`KB`,`MB`,`GB`,`TB`];function yu(e){let t=e,n=`B`;for(let e of vu){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 bu=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 xu(e){let t=e.split(/[?#]/,1)[0],n=t.lastIndexOf(`.`);if(n<0)return`generic`;let r=t.slice(n+1).toLowerCase();return bu.get(r)??`generic`}const Su=`http://www.w3.org/2000/svg`;function Cu(){let e=document.createElementNS(Su,`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(Su,`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 wu=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=xu(this.#a.href),this.#n.title=this.#a.name,this.#e.appendChild(this.#n),this.#n.appendChild(Cu()),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=yu(n))}};function Tu(e={}){return d({name:`mdFile`,constructor:t=>new wu(t,e)})}function Eu(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 Du=new T(`meowdown-tag-click`);function Ou(e,t){let n=A(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 ku(e){return Eu({key:Du,selector:`.md-tag`,preventDefault:!1,findPayloadAt:(e,t)=>Ou(e,t)?.tag,onClick:(t,n)=>e({tag:t,event:n})})}const Au=new T(`meowdown-wikilink-click`);function ju(e,t){let n=A(e,t,`mdWikilink`);if(!n)return;let{target:r}=n.mark.attrs;return{from:n.from,to:n.to,target:r}}function Mu(e,t){let n=t.closest(`.md-wikilink-view`)?.querySelector(`.md-wikilink-view-content`);if(n)return ju(e.state,e.posAtDOM(n,0))}function Nu(e){return Eu({key:Au,selector:`.md-wikilink-view-preview`,preventDefault:!1,findPayloadAt:(e,t)=>ju(e,t)?.target,findPayloadForElement:(e,t)=>Mu(e,t)?.target,onClick:(t,n)=>e({target:t,event:n})})}const Pu=new T(`meowdown-follow-link`);function Fu(e){return e.key!==`Enter`||e.shiftKey||e.altKey?!1:ee?e.metaKey&&!e.ctrlKey:e.ctrlKey&&!e.metaKey}function Iu(e){return new w({key:Pu,props:{handleKeyDown:(t,n)=>{if(!Fu(n))return!1;let{state:r}=t,i=r.selection.head,a=e.onWikilinkClick&&ju(r,i);if(a)return e.onWikilinkClick?.({target:a.target,event:n}),!0;let o=e.onTagClick&&Ou(r,i);if(o)return e.onTagClick?.({tag:o.tag,event:n}),!0;let s=e.onFileClick&&su(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 Lu(e){return x(m(Iu(e)),t.high)}const Ru=new T(`meowdown-image-click`);function zu(e){return e instanceof HTMLElement&&e.closest(`.md-image-view-preview`)}function Bu(e,t){let n=A(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 Vu(e,t){let n=t.closest(`.md-image-view`)?.querySelector(`.md-image-view-content`);if(n)return Bu(e.state,e.posAtDOM(n,0))}function Hu(e,t){return Array.from(e).find(e=>e.identifier===t)}function Uu(e,t){return Math.abs(t.clientX-e.clientX)<=10&&Math.abs(t.clientY-e.clientY)<=10}function Wu(e){let t=new WeakMap;return m(new w({key:Ru,props:{handleDOMEvents:{pointerdown:(e,t)=>(zu(t.target)&&t.pointerType!==`mouse`&&t.preventDefault(),!1),touchstart:(e,n)=>{if(t.delete(e),n.touches.length!==1||!zu(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=Hu(n.changedTouches,r.identifier);return i&&!Uu(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=Hu(r.changedTouches,i.identifier);if(!a||!Uu(i,a))return!1;let o=zu(r.target);if(!o)return!1;r.preventDefault();let s=Vu(n,o);return s&&e({src:s.src,alt:s.alt,event:r}),!0}},handleClick:(t,n,r)=>{let i=zu(r.target);if(!i)return!1;let a=Vu(t,i);return a?(e({src:a.src,alt:a.alt,event:r}),!0):!1}}}))}function Gu(e){return/^https?:\/\//i.test(e)?e:void 0}function Ku(e){let t=document.createElement(`iframe`);return t.src=e.src,t.title=e.title,t.className=e.className,t.dataset.testid=e.testid,t.loading=`lazy`,t.referrerPolicy=`strict-origin-when-cross-origin`,t.setAttribute(`frameborder`,`0`),e.allow&&(t.allow=e.allow),e.allowFullscreen&&(t.allowFullscreen=!0),e.kind===`tweet`&&Hl(t),t}function qu(e,t,n,r){if(n!=null&&r!=null){e.setAttribute(`data-width`,String(n)),e.setAttribute(`data-height`,String(r));return}let i=t.naturalWidth/t.naturalHeight;if(!Number.isFinite(i)||i<=0){n!=null&&e.setAttribute(`data-width`,String(n)),r!=null&&e.setAttribute(`data-height`,String(r));return}let a=n==null?Math.min(t.naturalHeight,500):n/i,o=n??a*i;e.setAttribute(`data-width`,String(Math.round(o))),e.setAttribute(`data-height`,String(Math.round(a)))}function Ju(e,t,n,r){let i=e.posAtDOM(t,0),a=A(e.state,i,`mdImage`);if(!a)return;let o=e.state.doc.textBetween(a.from,a.to),s=a.mark.attrs;if(s.syntax===`wikiEmbed`){let t=s.wikiTarget||Na(o).target;if(!t)return;let i=Pa(t,n,r);i!==o&&e.dispatch(e.state.tr.insertText(i,a.from,a.to));return}let c=ga(o),l=a.from+c.length,u=o.slice(c.length),d=ha({...pa(u)??{},width:Math.round(n),height:Math.round(r)});d!==u&&e.dispatch(e.state.tr.insertText(d,l,a.to))}var Yu=class{#e;#t;#n;#r;#i;#a;#o;constructor(e,t,n){this.#i=e.attrs,this.#n=n,this.#r=t,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.#s();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.#i;return t.src===n.src?(this.#i=t,this.#o&&t.alt!==n.alt&&(this.#o.alt=t.alt),this.#a&&this.#o&&(t.width!==n.width||t.height!==n.height)&&qu(this.#a,this.#o,t.width,t.height),!0):!1}ignoreMutation(e){return!this.#t.contains(e.target)}#s(){let{src:e}=this.#i,t=Yl(e);if(t){let e=document.createElement(`span`);return e.className=`md-image-view-preview md-atom-view-preview`,e.appendChild(Ku(t)),e}let n=(this.#n.resolveImageUrl??Gu)(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.#c(n)),r}#c(e){Qt(),Zt();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.#i.alt,n.draggable=!1,qu(t,n,this.#i.width,this.#i.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.#i.width,this.#i.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;Ju(this.#r,this.#t,t,n)}),this.#a=t,this.#o=n,t}};function Xu(e={}){return d({name:`mdImage`,constructor:(t,n)=>new Yu(t,n,e)})}const Zu={"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`},Qu=new T(`meowdown-link-click`);function $u(e){return Eu({key:Qu,selector:`.md-link`,preventDefault:!0,findPayloadAt:(e,t)=>q(e,t)?.href,onClick:(t,n)=>e({href:t,event:n})})}function ed(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||!ye(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 td=new T(`meowdown-link-hover`);function nd(e){return ed({key:td,selector:`.md-link`,findPayloadAt:(e,t)=>q(e,t),isSamePayload:(e,t)=>e.href===t.href&&e.title===t.title,onHoverChange:e})}const rd=new T(`meowdown-link-paste`);function id(e){let t=e.trim();if(!(!t||/\s/.test(t)))return he(t)}function ad(){return x(m(new w({key:rd,props:{handlePaste:(e,t,n)=>{let r=Xl(t,n);if(!r)return!1;let i=id(r);return i?Pi(e,ns({href:i,wrapText:!1})):!1}}})),t.high)}function od(e){return e instanceof bt||e instanceof xt||e instanceof Ct||e instanceof wt||e instanceof la}function sd(e){for(let t of e)for(let e of t.steps)if(!od(e))return!0;return!1}function cd(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){sd(e)&&o()},view(e){return t=e,{destroy(){t=void 0}}}}}function ld(e){let t=new T(`spell-check`);return new w({key:t,state:{init:()=>cd(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 ud(e){return m(ld(e))}const dd=[[/<-/,`←`],[/(?<!-)->/,`→`],[/\(c\)/,`©`],[/\(r\)/,`®`],[/1\/2/,`½`],[/\+\/-/,`±`],[/!=/,`≠`],[/<</,`«`],[/>>/,`»`],[/(?<!<!)(?<!^(?:-[ \t]*)+)--/,`—`]],fd=new T(`meowdown-substitution-undo`);function pd(e,t,n){let r=g(e.schema,`mdCode`);return e.doc.rangeHasMark(t,n,r)}function md(e,t,n,r,i){if(pd(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(fd,{from:t,to:t+o.length,before:i,after:o}),s}function hd(){return b(dd.map(e=>tt(new $t(new RegExp(String.raw`(?:${e[0].source})\s$`),(t,n,r,i)=>md(t,r,i,e,n[0])))))}function gd(){return m(new w({key:fd,state:{init:()=>null,apply:(e,t)=>{let n=e.getMeta(fd);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 _d(){return x(l({Backspace:(e,t)=>{let n=fd.getState(e);return n?(t?.(e.tr.replaceWith(n.from,n.to,e.schema.text(n.before)).setMeta(fd,null)),!0):!1}}),t.highest)}function vd(){return b(gd(),_d())}function yd(){return b(dd.map(e=>$e({regex:RegExp(`(?:${e[0].source})$`),handler:({state:t,from:n,to:r})=>md(t,n,r,e)})))}function bd(){return b(hd(),vd(),yd())}const xd=new T(`meowdown-wikilink-hover`);function Sd(e){return ed({key:xd,selector:`.md-wikilink-view-preview`,findPayloadAt:ju,findPayloadForElement:Mu,isSamePayload:(e,t)=>e.target===t.target,onHoverChange:t=>{e(t?{...t.payload,element:t.element}:void 0)}})}function Cd(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 wd({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=Cd(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)),rt(e),n(e.scrollIntoView())}return!0}}function Td(){return l({"Mod-Shift-k":wd({allowEmpty:!0}),"[":wd({allowEmpty:!1})})}function Ed(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 Dd(e){let t=``;for(let n of zn(e)){if(n.atom!=null){t+=Ed(n.atom);continue}for(let e of n.children)Rn(e.marks)||(t+=e.text??``)}return t}function Od(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: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,`
38
38
 
39
- `)}}function kd(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 Ad(e,t){let n=new DOMRect(0,0,0,0),r=()=>{if(e.isDestroyed)return n;let r=Y(e,t.from,1)??Tc(e,t.from,1)??kd(e,t.from,1)??Y(e,t.from,-1);if(r==null)return n;let i=Y(e,t.to,-1)??Tc(e,t.to,-1)??kd(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{Zu as EDITOR_KEY_BINDINGS,e as Priority,du as buildFileMarkdown,Ml as checkRoundTrip,Il as codeBlockLanguages,Da as collectReferenceDefinitions,Gu as defaultResolveImageUrl,Pl as defineBulletAfterHeading,ue as defineCodeBlockPreviewPlugin,oi as defineCodeBlockSyntaxHighlight,Jc as defineEditorExtension,eu as defineEmbedPaste,au as defineExitBoundaryHandler,cu as defineFileClickHandler,_u as defineFilePaste,Tu as defineFileView,Lu as defineFollowLinkHandler,ra as defineHTMLComment,Xu as defineImage,Wu as defineImageClickHandler,$u as defineLinkClickHandler,as as defineLinkCommands,ss as defineLinkEditKeymap,nd as defineLinkHoverHandler,ad as defineLinkPaste,Rs as defineMath,bc as definePendingReplacementHandler,fe as definePlaceholder,pe as defineReadonly,gt as defineSearchStatusHandler,ud as defineSpellCheckPlugin,bd as defineSubstitution,ku as defineTagClickHandler,Lc as defineViewAttributes,Nu as defineWikilinkClickHandler,Sd as defineWikilinkHoverHandler,Td as defineWikilinkTrigger,Tr as docToMarkdown,yu as formatFileSize,Pa as formatSizedWikiEmbed,ci as getCodeTokens,xu as getFileKind,q as getLinkUnitAt,Zc as getMarkBuilders,uc as getPendingReplacement,_t as getSearchStatus,Od as getSelectedText,Zs as getTableColumnAlign,Dd as getTextblockDisplayText,Ad as getVirtualElementFromRange,Ba as inlineTextToMarkChunks,Va as inlineTextToMarkChunksWithContext,ns as insertLink,de as isCodeBlockPreviewHiddenDecoration,Pn as isMarkOfType,I as isNodeOfType,ec as isSelectionInTableCell,Hl as listenForTweetHeight,Fs as loadKaTeX,Z as markdownToDoc,Yl as matchEmbed,Na as parseWikiEmbed,is as removeLink,Is as renderMathInto,rs as updateLink,Fa as wikiEmbedBasename,oe as withPriority};
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};
package/dist/style.css CHANGED
@@ -627,6 +627,7 @@
627
627
  border-radius: var(--meowdown-image-radius, .5rem);
628
628
  border: 0;
629
629
  width: 100%;
630
+ max-width: 100%;
630
631
  display: block;
631
632
  }
632
633
 
@@ -637,6 +638,29 @@
637
638
  display: block;
638
639
  }
639
640
 
641
+ .ProseMirror .md-embed-tweet:not([data-sized]) {
642
+ min-height: 250px;
643
+ }
644
+
645
+ .ProseMirror .md-embed-resizable {
646
+ isolation: isolate;
647
+ min-width: 2.5rem;
648
+ max-width: 100%;
649
+ min-height: 2.5rem;
650
+ display: block;
651
+ position: relative;
652
+ }
653
+
654
+ .ProseMirror .md-embed-resizable .md-embed-youtube {
655
+ aspect-ratio: auto;
656
+ width: 100%;
657
+ height: 100%;
658
+ }
659
+
660
+ .ProseMirror .md-embed-resizable[data-resizing] iframe {
661
+ pointer-events: none;
662
+ }
663
+
640
664
  .ProseMirror .prosekit-placeholder:before {
641
665
  content: attr(data-placeholder);
642
666
  float: left;
@@ -817,7 +841,7 @@
817
841
  transform: scale(.8);
818
842
  }
819
843
 
820
- & .md-image-resizable:hover .md-image-resize-handle, & .md-image-resizable[data-resizing] .md-image-resize-handle {
844
+ & .md-image-resizable:hover .md-image-resize-handle, & .md-image-resizable[data-resizing] .md-image-resize-handle, & .md-embed-resizable:hover .md-image-resize-handle, & .md-embed-resizable[data-resizing] .md-image-resize-handle {
821
845
  opacity: 1;
822
846
  pointer-events: auto;
823
847
  transform: scale(1);
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@meowdown/core",
3
3
  "type": "module",
4
- "version": "0.59.1",
4
+ "version": "0.61.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.59.1"
46
+ "@meowdown/markdown": "^0.61.0"
47
47
  },
48
48
  "devDependencies": {
49
49
  "@ocavue/tsconfig": "^0.7.1",