@meowdown/core 0.44.2 → 0.45.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/README.md +1 -1
- package/dist/index.d.ts +24 -2
- package/dist/index.js +18 -18
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -112,7 +112,7 @@ Two things the variable list cannot show: `--meowdown-gutter` is the horizontal
|
|
|
112
112
|
|
|
113
113
|
Tags (`#tag`) render as pills via the `.md-tag` class, tinted from `--meowdown-accent`. Wire click handling with `defineTagClickHandler(({ tag, event }) => ...)` (or `@meowdown/react`'s `onTagClick` prop); `tag` is read from the rendered text without the leading `#`.
|
|
114
114
|
|
|
115
|
-
Wikilinks (`[[target]]`/`[[target|alias]]`) render in place via a mark view as an immutable label (the alias, or the target when there is no alias), with the raw source hidden in hide and focus modes and shown dimmed in show mode. The label uses the `.md-wikilink-view-label` class, dashed-underlined and colored by `--meowdown-accent`. In every mark mode the link is a single immutable caret stop: arrowing onto it selects the whole source (ringed with `--meowdown-node-outline` in hide and focus, the native selection over the visible source in show), and Backspace/Delete remove it as a unit. Wire click navigation with `defineWikilinkClickHandler(({ target, event }) => ...)` (or `@meowdown/react`'s `onWikilinkClick` prop); `Mod-Enter` with the caret on a wikilink, tag, or Markdown link fires the same handler, with the `KeyboardEvent` as `event`.
|
|
115
|
+
Wikilinks (`[[target]]`/`[[target|alias]]`) render in place via a mark view as an immutable label (the alias, or the target when there is no alias), with the raw source hidden in hide and focus modes and shown dimmed in show mode. The label uses the `.md-wikilink-view-label` class, dashed-underlined and colored by `--meowdown-accent`. In every mark mode the link is a single immutable caret stop: arrowing onto it selects the whole source (ringed with `--meowdown-node-outline` in hide and focus, the native selection over the visible source in show), and Backspace/Delete remove it as a unit. Wire click navigation with `defineWikilinkClickHandler(({ target, event }) => ...)` (or `@meowdown/react`'s `onWikilinkClick` prop); `Mod-Enter` with the caret on a wikilink, tag, or Markdown link fires the same handler, with the `KeyboardEvent` as `event`. `defineWikilinkHoverHandler` reports the hovered target, source range, and visible anchor element, then reports `undefined` on leave, deletion, replacement, or editor teardown.
|
|
116
116
|
|
|
117
117
|
Markdown links (`[text](url)`) render the label as an `<a href>` with the `.md-link` class, colored by `--meowdown-accent`; the `[`, `]`, and `(url)` syntax dims in show mode and hides in hide and focus modes. Wire click handling with `defineLinkClickHandler(({ href, event }) => ...)` (or `@meowdown/react`'s `onLinkClick` prop).
|
|
118
118
|
|
package/dist/index.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ 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 { Command, EditorState } from "@prosekit/pm/state";
|
|
5
|
+
import { Command, EditorState, PluginKey } from "@prosekit/pm/state";
|
|
6
6
|
import { EditorView } from "@prosekit/pm/view";
|
|
7
7
|
import { Mark, ProseMirrorNode } from "@prosekit/pm/model";
|
|
8
8
|
import { HorizontalRuleExtension } from "@prosekit/extensions/horizontal-rule";
|
|
@@ -868,6 +868,11 @@ type TagClickHandler = (payload: TagClickPayload) => void;
|
|
|
868
868
|
declare function defineTagClickHandler(onClick: TagClickHandler): PlainExtension;
|
|
869
869
|
//#endregion
|
|
870
870
|
//#region src/extensions/wikilink-click.d.ts
|
|
871
|
+
interface WikilinkHit {
|
|
872
|
+
from: number;
|
|
873
|
+
to: number;
|
|
874
|
+
target: string;
|
|
875
|
+
}
|
|
871
876
|
interface WikilinkClickPayload {
|
|
872
877
|
target: string;
|
|
873
878
|
/** The originating click, or the `Mod-Enter` key press that followed the link. */
|
|
@@ -1050,6 +1055,23 @@ type NodeName = (typeof NODE_NAMES)[number];
|
|
|
1050
1055
|
*/
|
|
1051
1056
|
declare function isSelectionInTableCell(state: EditorState): boolean;
|
|
1052
1057
|
//#endregion
|
|
1058
|
+
//#region src/extensions/wikilink-hover.d.ts
|
|
1059
|
+
/** A wikilink currently under the pointer. */
|
|
1060
|
+
interface WikilinkHoverHit extends WikilinkHit {
|
|
1061
|
+
/** The rendered wikilink label used as the popup anchor. */
|
|
1062
|
+
element: HTMLElement;
|
|
1063
|
+
}
|
|
1064
|
+
/** Called once on wikilink enter and with `undefined` on leave or invalidation. */
|
|
1065
|
+
type WikilinkHoverHandler = (hit: WikilinkHoverHit | undefined) => void;
|
|
1066
|
+
/**
|
|
1067
|
+
* Track the wikilink under the pointer without attaching per-link listeners.
|
|
1068
|
+
*
|
|
1069
|
+
* The handler is revalidated after document transactions and receives leave
|
|
1070
|
+
* when the hovered link is deleted, replaced, or changes target. Moving among
|
|
1071
|
+
* descendants of one label is de-duplicated.
|
|
1072
|
+
*/
|
|
1073
|
+
declare function defineWikilinkHoverHandler(onHoverChange: WikilinkHoverHandler): PlainExtension;
|
|
1074
|
+
//#endregion
|
|
1053
1075
|
//#region src/extensions/wikilink-trigger.d.ts
|
|
1054
1076
|
/**
|
|
1055
1077
|
* Binds `Mod-Shift-k` to open the wikilink menu, and `[` to wrap a selected
|
|
@@ -1080,4 +1102,4 @@ declare function getVirtualElementFromRange(view: EditorView, range: PositionRan
|
|
|
1080
1102
|
//#region src/extensions/spell-check.d.ts
|
|
1081
1103
|
declare function defineSpellCheckPlugin(spellCheck: boolean): import("@prosekit/core").PlainExtension;
|
|
1082
1104
|
//#endregion
|
|
1083
|
-
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 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 PendingReplacement, type PendingReplacementEvent, type PendingReplacementHandler, type PendingReplacementMode, type PendingReplacementOutcome, type PlaceholderOptions, type PositionRange, Priority, type RoundTripFidelity, type StartPendingReplacementOptions, type TableColumnAlign, type TagClickHandler, type TagClickPayload, type TypedEditor, type TypedMarkBuilders, type VirtualElement, type WikilinkClickHandler, type WikilinkClickPayload, buildFileMarkdown, checkRoundTrip, codeBlockLanguages, defaultResolveImageUrl, defineBulletAfterHeading, defineCodeBlockPreviewPlugin, defineCodeBlockSyntaxHighlight, defineEditorExtension, defineEmbedPaste, defineExitBoundaryHandler, defineFileClickHandler, defineFilePaste, defineFileView, defineFollowLinkHandler, defineHTMLComment, defineHTMLPaste, defineImage, defineImageClickHandler, defineLinkClickHandler, defineLinkCommands, defineLinkEditKeymap, defineLinkHoverHandler, defineLinkPaste, defineMarkdownCopy, defineMath, definePendingReplacementHandler, definePlaceholder, defineReadonly, defineSpellCheckPlugin, defineTagClickHandler, defineWikilinkClickHandler, defineWikilinkTrigger, docToMarkdown, getCodeTokens, getLinkUnitAt, getMarkBuilders, getPendingReplacement, getSelectedText, getTableColumnAlign, getVirtualElementFromRange, inlineTextToMarkChunks, insertLink, isCodeBlockPreviewHiddenDecoration, isSelectionInTableCell, listenForTweetHeight, loadKaTeX, markdownToDoc, matchEmbed, removeLink, renderMathInto, updateLink, withPriority };
|
|
1105
|
+
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 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 PendingReplacement, type PendingReplacementEvent, type PendingReplacementHandler, type PendingReplacementMode, type PendingReplacementOutcome, type PlaceholderOptions, type PositionRange, Priority, type RoundTripFidelity, type StartPendingReplacementOptions, type TableColumnAlign, type TagClickHandler, type TagClickPayload, type TypedEditor, type TypedMarkBuilders, type VirtualElement, type WikilinkClickHandler, type WikilinkClickPayload, type WikilinkHoverHandler, type WikilinkHoverHit, buildFileMarkdown, checkRoundTrip, codeBlockLanguages, defaultResolveImageUrl, defineBulletAfterHeading, defineCodeBlockPreviewPlugin, defineCodeBlockSyntaxHighlight, defineEditorExtension, defineEmbedPaste, defineExitBoundaryHandler, defineFileClickHandler, defineFilePaste, defineFileView, defineFollowLinkHandler, defineHTMLComment, defineHTMLPaste, defineImage, defineImageClickHandler, defineLinkClickHandler, defineLinkCommands, defineLinkEditKeymap, defineLinkHoverHandler, defineLinkPaste, defineMarkdownCopy, defineMath, definePendingReplacementHandler, definePlaceholder, defineReadonly, defineSpellCheckPlugin, defineTagClickHandler, defineWikilinkClickHandler, defineWikilinkHoverHandler, defineWikilinkTrigger, docToMarkdown, getCodeTokens, getLinkUnitAt, getMarkBuilders, getPendingReplacement, getSelectedText, getTableColumnAlign, getVirtualElementFromRange, inlineTextToMarkChunks, insertLink, isCodeBlockPreviewHiddenDecoration, isSelectionInTableCell, listenForTweetHeight, loadKaTeX, markdownToDoc, matchEmbed, removeLink, renderMathInto, updateLink, withPriority };
|
package/dist/index.js
CHANGED
|
@@ -1,32 +1,32 @@
|
|
|
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,
|
|
2
|
-
`)}function Vt(e){return Ut(e,void 0)}function Ht(e){return Ut(e,{key:`math`})}function Ut(e,t){let{selection:n}=e;if(!n.empty)return C.empty;let r=n.$head,{parent:i}=r;if(!i.isTextblock||i.type.spec.code)return C.empty;let a=ee(r,te(e.schema,`mdPack`),t);return a?C.create(e.doc,[Ee.inline(a.from,a.to,{class:`show`})]):C.empty}const Wt=[`mdImage`,`mdWikilink`,`mdFile`];function O(e,t){let n=D(t);return n?e.flatMap(e=>e.modes.includes(n)?[e.name]:[]):[]}function Gt(e,t,n){for(let r of n){let n=T(e,t,r);if(n)return n}}function k(e,t,n){let r=Gt(e,t,n);return r&&r.to===t?r:void 0}function A(e,t,n){let r=Gt(e,t,n);return r&&r.from===t?r:void 0}function Kt(e,t){let{from:n,to:r,empty:i}=e.selection;if(i)return;let a=Gt(e,n,t);return a&&a.from===n&&a.to===r?a:void 0}function qt(e,t){return S.create(e.doc,t.from,t.to)}function Jt(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?A(e,t,n):k(e,t,n),o=r===-1?i.before():i.after(),s=Te.findFrom(e.doc.resolve(o),r);if(!s)return;let c=g(s)?r===-1?k(e,s.head,n):A(e,s.head,n):void 0;if(!(a==null&&c==null))return s}function Yt(e){return(t,n)=>{let r=O(e,t);if(r.length===0||!g(t.selection))return!1;let i=t.selection;if(i.empty){let e=A(t,i.from,r);if(e)return n?.(t.tr.setSelection(qt(t,e))),!0;if(k(t,i.from,r)&&i.from<t.doc.resolve(i.from).end())return n?.(t.tr.setSelection(S.create(t.doc,i.from+1))),!0;let a=Jt(t,i.from,r,1);return a?(n?.(t.tr.setSelection(a).scrollIntoView()),!0):!1}let a=Kt(t,r);return a?(n?.(t.tr.setSelection(S.create(t.doc,a.to))),!0):!1}}function Xt(e){return(t,n)=>{let r=O(e,t);if(r.length===0||!g(t.selection))return!1;let i=t.selection;if(i.empty){let e=k(t,i.from,r);if(e)return n?.(t.tr.setSelection(qt(t,e))),!0;let a=Jt(t,i.from,r,-1);return a?(n?.(t.tr.setSelection(a).scrollIntoView()),!0):!1}let a=Kt(t,r);return a?(n?.(t.tr.setSelection(S.create(t.doc,a.from))),!0):!1}}function Zt(e,t){return(n,r)=>{let i=O(e,n);if(i.length===0||!g(n.selection))return!1;let{anchor:a,head:o}=n.selection,s=t===-1?k(n,o,i):A(n,o,i);if(s){let e=t===-1?s.from:s.to;return r?.(n.tr.setSelection(S.create(n.doc,a,e)).scrollIntoView()),!0}let c=Jt(n,o,i,t);return!c||!g(c)?!1:(r?.(n.tr.setSelection(S.create(n.doc,a,c.head)).scrollIntoView()),!0)}}function Qt(e){return(t,n)=>{let r=O(e,t);if(r.length===0||!t.selection.empty)return!1;let i=t.selection.from,a=k(t,i,r);return a?(n?.(t.tr.delete(a.from,a.to)),!0):!A(t,i,r)||i<=t.doc.resolve(i).start()?!1:(n?.(t.tr.delete(i-1,i)),!0)}}function $t(e){return(t,n)=>{let r=O(e,t);if(r.length===0||!t.selection.empty)return!1;let i=t.selection.from,a=A(t,i,r);return a?(n?.(t.tr.delete(a.from,a.to)),!0):!k(t,i,r)||i>=t.doc.resolve(i).end()?!1:(n?.(t.tr.delete(i,i+1)),!0)}}const en=`md-atom-selected`;function tn(e){return new b({key:new x(`atom-mark-selection`),props:{decorations:t=>{let n=O(e,t);if(n.length===0||oe(t.selection))return;let r=Kt(t,n);if(r)return C.create(t.doc,[Ee.inline(r.from,r.to,{class:en})]);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(Ee.inline(t,t+e.nodeSize,{class:en}))}),C.create(t.doc,s)}}})}function nn({marks:e}){return _(v(u({ArrowRight:Yt(e),ArrowLeft:Xt(e),"Shift-ArrowRight":Zt(e,1),"Shift-ArrowLeft":Zt(e,-1),Backspace:Qt(e),Delete:$t(e)}),t.high),h(tn(e)))}const j=new Map,rn=new Map,an={math:`latex`};async function on(e){let t=j.get(e);if(t!==void 0)return t;let n=De.matchLanguageName(Oe,an[e]??e,!0);if(!n)return j.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),j.set(e,null),null}return j.set(e,r),r}function sn(e,t){let n=rn.get(e);if(n)return n;let r=je({parse:e=>t.language.parser.parse(e.content),highlighter:ke});return rn.set(e,r),r}const cn=e=>{let t=e.language?.trim();if(!t)return[];let n=j.get(t);return n===null?[]:n?sn(t,n)(e):on(t).then(()=>void 0)};function ln(){return fe({parser:cn,nodeTypes:[`codeBlock`]})}function un(e,t){let n=t.language.parser.parse(e),r=[];return Ae(n,ke,(e,t,n)=>{r.push([e,t,n])}),r}function dn(e,t){let n=t.trim();if(!n)return[];let r=j.get(n);return r===null?[]:r?un(e,r):on(n).then(t=>t?un(e,t):[])}function fn(){return p({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 pn(){return p({type:`codeBlock`,attr:`fenceLength`,default:null,toDOM:e=>e==null?null:[`data-fence-length`,String(e)],parseDOM:e=>{let t=e.getAttribute(`data-fence-length`);if(t==null)return null;let n=Number.parseInt(t,10);return Number.isSafeInteger(n)&&n>3?n:null}})}function mn(e){return{language:e[1]||``,fenceStyle:`tilde`}}function hn(){return Pe({regex:/^~~~(\S*)\s$/,type:`codeBlock`,attrs:mn})}function gn(){return Me({regex:/^~~~(\S*)$/,type:`codeBlock`,attrs:mn})}function _n(){return Me({regex:/^\$\$$/,type:`codeBlock`,attrs:()=>({language:`math`,fenceStyle:`dollar`})})}function vn(){return _(de(),fn(),pn(),hn(),gn(),_n())}function yn(e,t){return(n,r)=>{if(r){let i=S.create(n.doc,e,t);r(n.tr.setSelection(i))}return!0}}function bn(e,t,n){return(r,i)=>{if(i){let a=S.between(e,t,n);i(r.tr.setSelection(a))}return!0}}function xn(e){return(t,n)=>{if(!e.trim())return!1;let r=Z(e,{nodes:qo(t.schema)}).content;if(r.childCount===0)return!1;let i=r.childCount===1&&r.child(0).type.name===`paragraph`?new Re(r,1,1):new Re(r,0,Re.maxOpen(r).openEnd);if(n){let e=t.tr,r=e.selection;(!g(r)||!r.empty)&&e.setSelection(S.near(r.$from)),n(e.replaceSelection(i).scrollIntoView())}return!0}}function Sn(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);Fe(s),n(s.scrollIntoView())}return!0}}function Cn(){return(e,t)=>(t&&t(e.tr.scrollIntoView()),!0)}function wn(){return s({insertMarkdown:xn,insertTrigger:Sn,scrollIntoView:Cn,selectText:yn,selectTextBetween:bn})}const Tn=(e,t,n)=>{let{selection:r}=e;return r.empty||n?.composing?!1:(t?.(e.tr.setSelection(S.near(r.$head))),!0)};function En(){return v(u({Escape:Tn}),t.low)}function Dn(){return p({type:`doc`,attr:`frontmatter`,default:null})}function On(){return m({name:`heading`,whitespace:`pre`})}function kn(){return p({type:`heading`,attr:`setextUnderline`,default:null,toDOM:e=>e==null?null:[`data-setext-underline`,String(e)],parseDOM:e=>{let t=e.getAttribute(`data-setext-underline`);if(t==null)return null;let n=Number.parseInt(t,10);return Number.isSafeInteger(n)&&n>0?n:null}})}function An(){return p({type:`heading`,attr:`closingHashes`,default:null,toDOM:e=>e==null?null:[`data-closing-hashes`,String(e)],parseDOM:e=>{let t=e.getAttribute(`data-closing-hashes`);if(t==null)return null;let n=Number.parseInt(t,10);return Number.isSafeInteger(n)&&n>0?n:null}})}function M(e){return ue(se({type:`heading`,attrs:{level:e}}))}const jn=(e,t,n)=>ae(e,n)?.parent.type.name===`heading`&&ce()(e,t,n);function Mn(){return u({"Mod-1":M(1),"Mod-2":M(2),"Mod-3":M(3),"Mod-4":M(4),"Mod-5":M(5),"Mod-6":M(6),Backspace:jn})}function Nn(){return _(Ve(),On(),kn(),An(),Be(),ze(),Mn())}function Pn(e,t){return t(e.state,e.dispatch,e)}const Fn=new Set([`mdMark`,`mdLinkUri`,`mdLinkTitle`]);function In(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 N(e,t){let n=In(e,t);return n!=null&&n.some(e=>Fn.has(e.type.name))}function P(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 F(e,t){if(!P(e,t))return;let n=e.doc.resolve(t).start(),r=t;for(;r>n&&N(e,r-1);)r--;return r<t?{from:r,to:t}:void 0}function I(e,t){if(!P(e,t))return;let n=e.doc.resolve(t).end(),r=t;for(;r<n&&N(e,r);)r++;return r>t?{from:t,to:r}:void 0}function Ln(e,t){return N(e,t-1)&&N(e,t)}function Rn(e,t){if(!Ln(e,t))return;let n=F(e,t),r=I(e,t);if(!(n==null||r==null))return{from:n.from,to:r.to}}function zn(e,t,n){let r=In(e,t);return r!=null&&n.isInSet(r)}function Bn(e,t){let n=In(e,t);if(n==null)return;let r=te(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&&zn(e,r-1,n);)r--;let i=t+1;for(;i<s&&zn(e,i,n);)i++;(c==null||i-r<c.to-c.from)&&(c={from:r,to:i})}return c}function L(e,t,n){let r=Bn(e,n===`from`?t.from:t.to-1);return r==null?!1:n===`from`?r.from===t.from:r.to===t.to}function Vn(e,t,n){let r=L(e,t,`from`),i=L(e,t,`to`);return r&&!i?t.from:i&&!r?t.to:n-t.from<=t.to-n?t.from:t.to}function Hn(e,t,n,r){if(!P(e,n))return n;let i=Rn(e,n);if(i!=null)return r?Vn(e,i,n):n>=t?i.to:i.from;if(!r)return n;let a=F(e,n);if(a!=null&&L(e,a,`from`))return a.from;let o=I(e,n);return o!=null&&L(e,o,`to`)?o.to:n}function Un(e,t){if(!P(e,t))return;let n=N(e,t-1),r=N(e,t);if(n!==r)return r?`left`:`right`}function Wn(e,t){let n=Bn(e,t);if(n==null)return[];let r=I(e,n.from),i=F(e,n.to),a=[];return i!=null&&a.push(i),r!=null&&(i==null||r.from!==i.from)&&a.push(r),a}const Gn=new x(`meowdown-hidden-run-snap`),Kn=new x(`meowdown-hidden-run-beforeinput`);function qn(){let e=!1;return new b({key:Gn,props:{handleDOMEvents:{compositionstart:()=>(e=!0,!1),compositionend:()=>(e=!1,!1)}},appendTransaction:(t,n,r)=>{if(e||D(r)!==`hide`)return null;let i=r.selection;if(!g(i))return null;let a=t.some(e=>e.getMeta(`pointer`)!=null);if(i.empty){let e=Hn(r,n.selection.head,i.head,a);return e===i.head?null:r.tr.setSelection(S.create(r.doc,e))}let o=Rn(r,i.from)?.from??i.from,s=Rn(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(S.create(r.doc,c,l))}})}const Jn=(e,t)=>{if(D(e)!==`hide`)return!1;let n=e.selection;if(!g(n)||!n.empty)return!1;let r=Hn(e,n.head,n.head,!0);return r===n.head||t?.(e.tr.setSelection(S.create(e.doc,r))),!1};function Yn(e){return(t,n)=>{if(D(t)!==`hide`)return!1;let r=t.selection;if(!g(r)||!r.empty)return!1;let i=r.$head;if(!i.parent.isTextblock||i.parent.type.spec.code)return!1;let a=e===-1?F(t,r.head):I(t,r.head);if(a==null)return!1;let o=Wn(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 Xn=Yn(-1),Zn=Yn(1);function Qn(){return new b({key:Kn,props:{handleDOMEvents:{beforeinput:(e,t)=>{if(e.composing)return!1;let n=t.inputType===`deleteContentBackward`?Xn:t.inputType===`deleteContentForward`?Zn:void 0;return n==null||!Pn(e,n)?!1:(t.preventDefault(),!0)}}}})}function $n(){return _(h(qn()),h(Qn()),v(u({Enter:Jn,Backspace:Xn,Delete:Zn}),t.highest))}function er(){return p({type:`horizontalRule`,attr:`marker`,default:null,toDOM:e=>e?[`data-hr-marker`,e]:null,parseDOM:e=>e.getAttribute(`data-hr-marker`)})}function tr(){return _(He(),er())}function nr(){return m({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 rr(e){let[t,n,r]=e;return[t,n,r.map(e=>e.toJSON())]}function ir(e,t){let[n,r,i]=t;return[n,r,i.map(t=>Le.fromJSON(e,t))]}function ar(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}var R=class e extends Je{constructor(e){super(),this.chunks=e}apply(e){if(this.chunks.length===0)return Ye.ok(e);let t=e.content.size,n;for(let[r,i,a]of this.chunks){if(r>=i)continue;let o=Math.max(0,Math.min(r,t)),s=Math.max(o,Math.min(i,t));if(o>=s)continue;let c=Le.setFrom(a);e.nodesBetween(o,s,(t,r)=>{if(!t.isText)return!0;let i=Math.max(o,r),a=Math.min(s,r+t.nodeSize);if(i>=a)return!1;let l=t.marks;if(ar(l,c))return!1;n??=new Xe(e);for(let e of l)n.removeMark(i,a,e);for(let e of c)n.addMark(i,a,e);return!1})}return Ye.ok(n?n.doc:e)}invert(e){if(this.chunks.length===0)return or;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 qe(i,a,e.slice(i,a),!1)}map(e){return null}toJSON(){return{stepType:`batchSetMark`,chunks:this.chunks.map(rr)}}static fromJSON(t,n){let r=n.chunks;return new e(r.map(e=>ir(t,e)))}};Je.jsonID(`batchSetMark`,R);const or=new R([]),sr=new Set([`com`,`br`,`net`,`jp`,`org`,`in`,`de`,`ru`,`it`,`fr`]),cr=/^[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i;function lr(e){let t=e.indexOf(`/`);return t===-1?e:e.slice(0,t)}function ur(e){let t=e.split(`.`);if(t.length<2)return!1;let n=t[t.length-1].toLowerCase();if(!sr.has(n)||t[t.length-2].length<3)return!1;for(let e of t)if(e.length>63||!cr.test(e))return!1;return!0}function dr(e){if(/^[a-z][a-z0-9+.-]*:/i.test(e))return e;if(/^[^\s@]+@[^\s@]+$/.test(e))return`mailto:${e}`;if(/^www\./i.test(e)||ur(lr(e)))return`https://${e}`}function z(e){return e===32||e===9||e===10||e===13}const fr=/^[a-z0-9-]+(?:\.[a-z0-9-]+)+(?:\/[^\s<]*)?/i,pr=/[\s(*_~]/;function mr(e){return e>=48&&e<=57||e>=65&&e<=90||e>=97&&e<=122||e===45}function hr(e,t,n){let r=0;for(let i=0;i<t;i++)e[i]===n&&r++;return r}function gr(e){let t=e.length;for(;;){let n=e[t-1];if(/[?!.,:*_~]/.test(n)||n===`)`&&hr(e,t,`)`)>hr(e,t,`(`))t--;else if(n===`;`){let n=/&(?:#\d+|#x[a-f\d]+|\w+);$/.exec(e.slice(0,t));if(!n)break;t=n.index}else break}return t}const _r={parseInline:[{name:`BareAutolink`,before:`Link`,parse(e,t,n){if(!mr(t)||e.hasOpenLink)return-1;let r=e.slice(n-1,n);if(r!==``&&!pr.test(r))return-1;let i=fr.exec(e.slice(n,e.end));if(!i)return-1;let a=gr(i[0]);return a===0||!ur(lr(i[0].slice(0,a)))?-1:e.addElement(e.elt(`URL`,n,n+a))}}]};function vr(e){return e>=48&&e<=57||e>=65&&e<=90||e>=97&&e<=122||e===45||e===95||e>127&&/[\p{L}\p{N}]/u.test(String.fromCharCode(e))}function yr(e){return e>=65&&e<=90||e>=97&&e<=122||e>127&&/\p{L}/u.test(String.fromCharCode(e))}const br={defineNodes:[{name:`Hashtag`}],parseInline:[{name:`Hashtag`,parse(e,t,n){if(t!==35||!/\s|^$/.test(e.slice(n-1,n)))return-1;let r=n+1,i=!1;for(;r<e.end;){let t=e.char(r);if(!vr(t))break;i||=yr(t),r++}return i?e.addElement(e.elt(`Hashtag`,n,r)):-1}}]},xr={resolve:`Highlight`,mark:`HighlightMark`},Sr=/[!"#$%&'()*+,\-./:;<=>?@[\\\]^_`{|}~\u{A1}\u{2010}-\u{2027}]/u,Cr={defineNodes:[{name:`Highlight`},{name:`HighlightMark`}],parseInline:[{name:`Highlight`,after:`Emphasis`,parse(e,t,n){if(t!==61||e.char(n+1)!==61||e.char(n+2)===61)return-1;let r=e.slice(n-1,n),i=e.slice(n+2,n+3),a=/\s|^$/.test(r),o=/\s|^$/.test(i),s=Sr.test(r),c=Sr.test(i);return e.addDelimiter(xr,n,n+2,!o&&(!c||a||s),!a&&(!s||o||c))}}]};function wr(e){return e>=48&&e<=57}function Tr(e){return e.next!==36||e.text.charCodeAt(e.pos+1)!==36||e.text.charCodeAt(e.pos+2)===36?!1:e.skipSpace(e.pos+2)===e.text.length}function Er(e){let t=e.depth;return typeof t==`number`?t:2**53-1}const Dr={defineNodes:[{name:`InlineMath`},{name:`InlineMathMark`},{name:`BlockMath`,block:!0},{name:`BlockMathMark`}],parseBlock:[{name:`BlockMath`,before:`FencedCode`,parse(e,t){if(!Tr(t))return!1;let n=e.lineStart+t.pos,r=[e.elt(`BlockMathMark`,n,n+2)];for(let n=!0,i=!0,a=!1;!(!e.nextLine()||Er(t)<e.depth);n=!1){if(Tr(t)){i&&a&&r.push(e.elt(`CodeText`,e.lineStart-1,e.lineStart)),r.push(e.elt(`BlockMathMark`,e.lineStart+t.pos,e.lineStart+t.pos+2)),e.nextLine();break}a=!0,n||(r.push(e.elt(`CodeText`,e.lineStart-1,e.lineStart)),i=!1);let o=e.lineStart+t.basePos,s=e.lineStart+t.text.length;o<s&&(r.push(e.elt(`CodeText`,o,s)),i=!1)}return e.addElement(e.elt(`BlockMath`,n,e.prevLineEnd(),r)),!0},endLeaf(e,t){return Tr(t)}}],parseInline:[{name:`InlineMath`,after:`InlineCode`,parse(e,t,n){if(t!==36||e.char(n-1)===36)return-1;let r=e.char(n+1)===36?2:1;if(e.char(n+r)===36)return-1;let i=n+r;if(z(e.char(i)))return-1;for(let t=i;t<e.end;t++){let a=e.char(t);if(a===10)return-1;if(a===92){t++;continue}if(a!==36)continue;let o=1;for(;e.char(t+o)===36;)o++;if(o!==r||z(e.char(t-1))||wr(e.char(t+o)))return-1;let s=t+o;return e.addElement(e.elt(`InlineMath`,n,s,[e.elt(`InlineMathMark`,n,i),e.elt(`InlineMathMark`,t,s)]))}return-1}}]},Or=/^[a-z][a-z0-9+.-]*:\/\/[^\s<]+/i;function kr(e){return e>=65&&e<=90||e>=97&&e<=122}const Ar={parseInline:[{name:`SchemeAutolink`,after:`Autolink`,parse(e,t,n){if(!kr(t)||e.hasOpenLink)return-1;let r=e.slice(n-1,n);if(r!==``&&!pr.test(r))return-1;let i=Or.exec(e.slice(n,e.end));if(!i)return-1;let a=gr(i[0]);return a<=i[0].indexOf(`://`)+3?-1:e.addElement(e.elt(`URL`,n,n+a))}}]},jr={defineNodes:[{name:`Wikilink`},{name:`WikilinkMark`}],parseInline:[{name:`Wikilink`,before:`Link`,parse(e,t,n){if(t!==91||e.char(n+1)!==91)return-1;let r=!1;for(let t=n+2;t<e.end-1;t++){let i=e.char(t);if(i===93){if(e.char(t+1)!==93||!r)return-1;let i=t+2;return e.addElement(e.elt(`Wikilink`,n,i,[e.elt(`WikilinkMark`,n,n+2),e.elt(`WikilinkMark`,t,i)]))}if(i===91||i===10)return-1;i!==32&&i!==9&&(r=!0)}return-1}}]};function Mr(e){return e.end}const Nr=Qe.configure([Ze,br,jr,_r,Ar,Cr,Dr]),Pr=Nr.configure({parseInline:[{name:`SkipInline`,before:`Escape`,parse:Mr}]});function B(e){return Nr.parseInline(e,0)}function V(e,t,n=[]){for(let r of e)t(r)&&n.push(r),V(r.children,t,n);return n}function Fr(e){let t={};for(let n of e.nodeSet.types)t[n.name]=n.id;return t}const H=Fr(Nr),Ir=/^<!--\s*(\{[^}]*\})\s*-->$/,Lr=/<!--\s*\{[^}]*\}\s*-->$/;function Rr(e){let t=Ir.exec(e.trim());if(!t)return;let n;try{n=JSON.parse(t[1])}catch{return}if(typeof n!=`object`||!n)return;let r=zr(n);return Object.keys(r).length>0?r:void 0}function zr(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 Br(e){return`<!-- ${JSON.stringify(e)} -->`}function Vr(e){return e.replace(Lr,``)}function Hr(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 Ur(){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 Wr(){return f({name:`mdWikilink`,constructor:Ur()})}const Gr=new Map([[H.Emphasis,`mdEm`],[H.StrongEmphasis,`mdStrong`],[H.InlineCode,`mdCode`],[H.Strikethrough,`mdDel`],[H.Highlight,`mdHighlight`],[H.EmphasisMark,`mdMark`],[H.CodeMark,`mdMark`],[H.LinkMark,`mdMark`],[H.StrikethroughMark,`mdMark`],[H.HighlightMark,`mdMark`],[H.URL,`mdLinkUri`],[H.LinkTitle,`mdLinkTitle`],[H.Hashtag,`mdTag`],[H.WikilinkMark,`mdMark`]]);function Kr(e,t,n){let r=B(t),i=[];return Jr(r,[],0,t.length,t,e,i,n),i}function qr(e){return e.slice(1,-1).replaceAll(/\\(.)/g,`$1`)}function Jr(e,t,n,r,i,a,o,s){let c=n;for(let n=0;n<e.length;n++){let r=e[n];r.from>c&&U(o,c,r.from,t);let l=r.type;if(l===H.Link){let e=Zr(r,t,i,a,s);e?U(o,r.from,r.to,e):Qr(r,t,i,a,o)}else if(l===H.Image){let s=$r(r,e[n+1],i);ei(r,t,i,a,o,s),s&&n++,c=s?s.to:r.to;continue}else if(l===H.Wikilink)ni(r,t,i,a,o);else if(l===H.InlineMath)ti(r,t,i,a,o);else if(l===H.URL){let e=dr(i.slice(r.from,r.to)),n=e?a.mdLinkText.create({href:e}):a.mdLinkUri.create();U(o,r.from,r.to,[...t,n])}else{let e;l===H.Emphasis?e=`italic`:l===H.StrongEmphasis?e=`bold`:l===H.InlineCode?e=`code`:l===H.Strikethrough?e=`strike`:l===H.Highlight?e=`highlight`:l===H.Autolink&&(e=`autolink`);let n=e?[...t,a.mdPack.create({key:e})]:t,c=Gr.get(l),u=c?[...n,a[c].create()]:n;r.children.length===0?U(o,r.from,r.to,u):Jr(r.children,u,r.from,r.to,i,a,o,s)}c=r.to}c<r&&U(o,c,r,t)}function Yr(e){let t=-1,n=-1,r=null,i=null,a=0;for(let o of e.children)o.type===H.LinkMark?(a++,a===1&&(t=o.to),a===2&&(n=o.from)):o.type===H.URL&&r===null?r=o:o.type===H.LinkTitle&&i===null&&(i=o);return{labelFrom:t,labelTo:n,urlNode:r,titleNode:i}}function Xr(e){let t=e.split(/[?#]/,1)[0],n=t.split(/[/\\]/).findLast(Boolean)??t;try{return decodeURIComponent(n)}catch{return n}}function Zr(e,t,n,r,i){let a=i?.resolveFileLink;if(!a)return;let{labelFrom:o,labelTo:s,urlNode:c,titleNode:l}=Yr(e);if(o<0||s<0||!c)return;let u=n.slice(c.from,c.to);if(!u)return;let d=n.slice(o,s),f=l?qr(n.slice(l.from,l.to)):``;if(!a({href:u,label:d,title:f}))return;let p=d||Xr(u);return[...t,r.mdFile.create({href:u,name:p,title:f})]}function Qr(e,t,n,r,i){let{labelTo:a,urlNode:o,titleNode:s}=Yr(e),c=o?n.slice(o.from,o.to):``,l=s?qr(n.slice(s.from,s.to)):``,u=c?r.mdLinkText.create({href:c}):null,d=e=>a>=0&&e<a&&u!==null,f=r.mdPack.create({key:`link`,data:{href:c,title:l}}),p=[...t,f],m=e.from;for(let t of e.children){if(t.from>m){let e=d(m)?[...p,u]:p;U(i,m,t.from,e)}let e=d(t.from)?[...p,u]:p;if(t.type===H.Wikilink){ni(t,e,n,r,i),m=t.to;continue}let a=Gr.get(t.type),o=a?[...e,r[a].create()]:e;t.children.length===0?U(i,t.from,t.to,o):Jr(t.children,o,t.from,t.to,n,r,i,void 0),m=t.to}m<e.to&&U(i,m,e.to,p)}function $r(e,t,n){if(!t||t.type!==H.Comment||t.from!==e.to)return;let r=Rr(n.slice(t.from,t.to));if(r)return{magic:r,to:t.to}}function ei(e,t,n,r,i,a){let o=e.children.find(e=>e.type===H.URL);if(!o){Qr(e,t,n,r,i);return}let s=e.children.filter(e=>e.type===H.LinkMark),c=e.children.find(e=>e.type===H.LinkTitle),l=n.slice(o.from,o.to),u=s.length>=2?n.slice(s[0].to,s[1].from):``,d=c?qr(n.slice(c.from,c.to)):``,f=a?.magic.width??null,p=a?.magic.height??null,m=a?.to??e.to;U(i,e.from,m,[...t,r.mdImage.create({src:l,alt:u,title:d,width:f,height:p})])}function ti(e,t,n,r,i){let a=e.children.filter(e=>e.type===H.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 ni(e,t,n,r,i){let{target:a,display:o}=Hr(n.slice(e.from,e.to));U(i,e.from,e.to,[...t,r.mdWikilink.create({target:a,display:o})])}function U(e,t,n,r){if(t>=n)return;let i=e.at(-1);if(i&&i[1]===t&&ar(i[2],r)){e[e.length-1]=[i[0],n,i[2]];return}e.push([t,n,r])}const ri=`inline-marks-applied`;let ii=0,ai=0;function oi(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 si(e){let t=new WeakMap;function n(n,r,i){let a=t.get(n);if(a?ai++:(ii++,a=Kr(Go(i),n.textContent,e),t.set(n,a)),r===0)return a;let o=[];for(let[e,t,n]of a)o.push([e+r,t+r,n]);return o}function r(e,t){let r=[];return e.doc.nodesBetween(t.from,t.to,(t,i)=>{if(t.type.spec.code)return!1;if(!t.isTextblock)return!0;if(t.childCount===0)return!1;let a=n(t,i+1,e.schema);return a.length>0&&r.push(...a),!1}),r}return new b({key:new x(`inline-mark`),appendTransaction(e,t,n){for(let t of e)if(t.getMeta(ri))return null;let i=r(n,oi(e,n));if(i.length===0)return null;let a=n.tr.step(new R(i));return a.setMeta(ri,!0),a.setMeta(`addToHistory`,!1),a},view(e){return e.dispatch(ci(e.state)),{}}})}function ci(e){return e.tr.setMeta(`inline-marks-trigger`,!0)}function li(e){return h(si(e))}function ui(){return d({name:`mdImage`,inclusive:!1,attrs:{src:{default:``},alt:{default:``},title:{default:``},width:{default:null},height:{default:null}},toDOM:()=>[`span`,{class:`md-image`},0],parseDOM:[{tag:`span.md-image`}]})}function di(){return d({name:`mdMark`,inclusive:!1,toDOM:()=>[`span`,{class:`md-mark`},0],parseDOM:[{tag:`span.md-mark`}]})}function fi(){return d({name:`mdEm`,toDOM:()=>[`em`,0],parseDOM:[{tag:`em`}]})}function pi(){return d({name:`mdStrong`,toDOM:()=>[`strong`,0],parseDOM:[{tag:`strong`}]})}function mi(){return d({name:`mdCode`,toDOM:()=>[`code`,0],parseDOM:[{tag:`code`}]})}function hi(){return d({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 gi(){return d({name:`mdLinkUri`,inclusive:!1,toDOM:()=>[`span`,{class:`md-link-uri`},0],parseDOM:[{tag:`span.md-link-uri`}]})}function _i(){return d({name:`mdLinkTitle`,inclusive:!1,toDOM:()=>[`span`,{class:`md-link-title`},0],parseDOM:[{tag:`span.md-link-title`}]})}function vi(){return d({name:`mdDel`,toDOM:()=>[`del`,0],parseDOM:[{tag:`del`}]})}function yi(){return d({name:`mdHighlight`,toDOM:()=>[`mark`,0],parseDOM:[{tag:`mark`}]})}function bi(){return d({name:`mdTag`,toDOM:()=>[`span`,{class:`md-tag`},0],parseDOM:[{tag:`span.md-tag`}]})}function xi(){return d({name:`mdWikilink`,inclusive:!1,attrs:{target:{default:``},display:{default:``}},toDOM:()=>[`span`,{class:`md-wikilink`},0],parseDOM:[{tag:`span.md-wikilink`}]})}function Si(){return d({name:`mdFile`,inclusive:!1,attrs:{href:{default:``},name:{default:``},title:{default:``}},toDOM:()=>[`span`,{class:`md-file`},0],parseDOM:[{tag:`span.md-file`}]})}function Ci(){return d({name:`mdMath`,inclusive:!1,attrs:{formula:{default:``}},toDOM:()=>[`span`,{class:`md-math`},0],parseDOM:[{tag:`span.md-math`}]})}function wi(){return d({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 Ti(){return _(di(),fi(),pi(),mi(),hi(),gi(),_i(),vi(),yi(),bi(),xi(),ui(),Si(),Ci(),wi())}function Ei(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 Di(e,t=0){return Ei(e,96,t)}const W={em:{node:H.Emphasis,delim:`*`},strong:{node:H.StrongEmphasis,delim:`**`},code:{node:H.InlineCode,delim:"`"},del:{node:H.Strikethrough,delim:`~~`},highlight:{node:H.Highlight,delim:`==`}},Oi=new Set([H.EmphasisMark,H.CodeMark,H.LinkMark,H.StrikethroughMark,H.HighlightMark]);function ki(e){return[e.children[0],e.children.at(-1)]}function Ai(e){let{type:t,children:n}=e;if(t===H.Emphasis||t===H.StrongEmphasis||t===H.Strikethrough||t===H.Highlight)return[n[0].to,n.at(-1).from];if(t===H.Link||t===H.Image){let e=n.find((e,t)=>t>0&&e.type===H.LinkMark);return e?[n[0].to,e.from]:null}return null}function ji(e,t,n){for(let r of e){if(r.to<=t||r.from>=n||t<=r.from&&r.to<=n)continue;let i=Ai(r);return i&&i[0]<=t&&n<=i[1]?ji(r.children,t,n):ji(e,Math.min(t,r.from),Math.max(n,r.to))}return[t,n]}function Mi(e,t,n){for(let r of e)if(!(r.to<=t||r.from>=n)&&(t>r.from||r.to>n))return Mi(e,Math.min(t,r.from),Math.max(n,r.to));return[t,n]}function Ni(e,t,n){for(;t<n&&z(e.charCodeAt(t));)t++;for(;n>t&&z(e.charCodeAt(n-1));)n--;return[t,n]}function Pi(e,t,n,r){let i=V(B(e),e=>e.type===r.node||Oi.has(e.type));for(let r=t;r<n;r++)if(!z(e.charCodeAt(r))&&i.every(e=>!(e.from<=r&&r<e.to)))return!1;return!0}function Fi(e,t,n,r,i){let a=B(e),o=V(a,e=>e.type===r.node);return i?Ri(e,o,t,n):Ii(e,a,o,t,n,r)}function Ii(e,t,n,r,i,a){for(let e=0;e!==i-r;){e=i-r,[r,i]=ji(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]=ki(e);o.push({from:t.from,to:t.to,insert:``}),o.push({from:n.from,to:n.to,insert:``})}let[s,c]=Li(e,r,i,o,a);return o.push({from:r,to:r,insert:s},{from:i,to:i,insert:c}),o}function Li(e,t,n,r,i){if(i.node!==H.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(Di(a)+1),s=a.startsWith("`")||a.endsWith("`")?` `:``;return[o+s,s+o]}function Ri(e,t,n,r){let i=[];for(let a of t){if(a.to<=n||a.from>=r)continue;let[t,o]=ki(a),s=Math.max(n,t.to),c=Math.min(r,o.from);for(s>=c&&([s,c]=[t.to,o.from]),[s,c]=Mi(a.children.slice(1,-1),s,c);s>t.to&&z(e.charCodeAt(s-1));)s--;for(;c<o.from&&z(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 zi(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=B(e),o=V(a,e=>e.type===n.node).findLast(e=>e.from<=t&&t<=e.to);if(o){let[e,n]=ki(o);return{kind:`move`,pos:t===o.from?e.to:t===o.to?n.from:o.to}}return Bi(a,t)||e[t-1]===r[0]||e[t]===r[0]?null:{kind:`insert`,pos:t}}function Bi(e,t){for(let n of e)if(n.from<t&&t<n.to){let e=Ai(n);return!e||t<e[0]||t>e[1]||Bi(n.children,t)}return!1}function G(e){return(t,n)=>{if(t.selection.empty)return Vi(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]=Ni(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:Pi(a,c,l,e)}),!1});let c=s.length>0&&s.every(e=>e.active),l=s.filter(e=>c||!e.active).flatMap(t=>Fi(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(S.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 Vi(e,t,n){let{$from:r}=t.selection,i=r.parent;if(!i.isTextblock||i.type.spec.code)return!1;let a=zi(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(S.create(o.doc,i+a.pos)),a.kind===`insert`&&(o.insertText(e.delim+e.delim,i+a.pos),o.setSelection(S.create(o.doc,i+a.pos+e.delim.length))),n(o.scrollIntoView())}return!0}function Hi(){return s({toggleEm:()=>G(W.em),toggleStrong:()=>G(W.strong),toggleCode:()=>G(W.code),toggleDel:()=>G(W.del),toggleHighlight:()=>G(W.highlight)})}function Ui(){return u({"Mod-b":G(W.strong),"Mod-i":G(W.em),"Mod-e":G(W.code),"Mod-Shift-x":G(W.del),"Mod-Shift-h":G(W.highlight)})}function Wi(){return _(Hi(),Ui())}function Gi(e,t,n){let r;return e.doc.nodesBetween(t.from,t.to,(e,i)=>(e.isText&&e.marks.some(e=>e.type.name===n)&&(r={from:Math.max(i,t.from),to:Math.min(i+e.nodeSize,t.to)}),!0)),r}function K(e,t){let n=T(e,t,`mdLinkText`),r=T(e,t,`mdPack`,{key:`link`})??T(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`?Gi(e,t,`mdLinkText`)??{from:i.from+1,to:i.to-1}:t,href:o,title:``}}let s=Gi(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 Ki(e){let t=e.trim();return t?dr(t)??t:``}function qi(e,t){return e+(t?` "${t.replaceAll(/(["\\])/g,String.raw`\$1`)}"`:``)}function Ji(e){let{selection:t}=e,{$from:n,$to:r,empty:i}=t;if(i||!n.sameParent(r)||!g(t))return;let a=n.parent;if(!a.isTextblock||a.type.spec.code)return;let o=n.start(),[s,c]=Ni(a.textContent,n.parentOffset,r.parentOffset);if(!(s>=c))return{from:o+s,to:o+c}}function Yi({href:e,title:t,wrapText:n=!0}={}){return(r,i)=>{let a=Ji(r);if(!a)return!1;if(i){let{from:o,to:s}=a,c=r.tr,l=`](${qi(Ki(e??``),t??``)})`;c.insertText(l,s).insertText(`[`,o);let u=s+1+l.length;c.setSelection(n?S.create(c.doc,o,u):S.create(c.doc,u)),c.scrollIntoView(),i(c)}return!0}}function Xi(e){return(t,n)=>{let r=K(t,t.selection.from);if(!r?.dest)return!1;let i=qi(Ki(e.href??r.href),e.title??r.title);return n&&n(t.tr.insertText(i,r.dest.from,r.dest.to).scrollIntoView()),!0}}function Zi(){return(e,t)=>{let n=K(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 Qi(){return s({insertLink:Yi,updateLink:Xi,removeLink:Zi})}function $i(e){return(t,n,r)=>{let i=K(t,t.selection.from);if(i){if(n&&r){let{unit:{from:a,to:o}}=i;n(t.tr.setSelection(S.create(t.doc,a,o)).scrollIntoView()),r.focus(),e({from:a,to:o,link:i})}return!0}let a=Ji(t);if(a){if(n&&r){let{from:i,to:o}=a;n(t.tr.setSelection(S.create(t.doc,i,o)).scrollIntoView()),r.focus(),e({from:i,to:o,link:void 0})}return!0}return!1}}function ea(e){return u({"Mod-k":$i(e)})}function ta(e){return e===`)`||e===`*`||e===`+`?e:void 0}function na(e){return e===`X`?e:void 0}function ra(e){return oa(e)?String(e):void 0}function ia(){return p({type:`list`,attr:`marker`,default:null,splittable:!0,toDOM:e=>{let t=ta(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 aa(){return p({type:`list`,attr:`taskMarker`,default:null,splittable:!0,toDOM:e=>{let t=na(e);return t==null?null:[`data-list-task-marker`,t]},parseDOM:e=>e.getAttribute(`data-list-task-marker`)===`X`?`X`:null})}function oa(e){return e===2||e===3||e===4}function sa(){return p({type:`list`,attr:`markerGap`,default:1,splittable:!0,toDOM:e=>{let t=ra(e);return t==null?null:[`data-list-marker-gap`,t]},parseDOM:e=>{let t=Number.parseInt(e.getAttribute(`data-list-marker-gap`)??``,10);return oa(t)?t:1}})}function ca(e){let t=e.attrs;return{...ct(e),"data-list-marker":ta(t.marker),"data-list-task-marker":na(t.taskMarker),"data-list-marker-gap":ra(t.markerGap)}}function la(){return o({serializeFragmentWrapper:e=>(...t)=>ua(dt(e(...t))),serializeNodeWrapper:e=>(...t)=>{let n=e(...t);return _e(n)?ua(dt(n)):n},nodesFromSchemaWrapper:e=>(...t)=>({...e(...t),list:e=>ft({node:e,nativeList:!0,getAttributes:ca})})})}function ua(e){_e(e)&&da(e);for(let t of e.children)ua(t);return e}function da(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=lt(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 fa=[mt(/^\s?([*-])\s$/,{kind:`bullet`,collapsed:!1}),mt(/^\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}}),mt(/^\s?\[([\sX]?)\]\s$/i,({match:e})=>({kind:`task`,checked:[`x`,`X`].includes(e[1]),collapsed:!1})),mt(/^\s?\+\s$/,{kind:`task`,marker:`+`,checked:!1,collapsed:!1})];function pa(){return _(fa.map(Ne))}function ma(){return w({kind:`task`,marker:`+`})}function ha(){return w({kind:`task`,marker:null})}function ga(e){let{$from:t}=e.selection;for(let e=t.depth;e>0;e--){let n=t.node(e);if(n.type.name===`list`)return n.attrs}return null}function _a(){return(e,t,n)=>{let r=ga(e);return(r?.kind===`task`?r.marker===`+`?ha():ma():w({kind:`task`,marker:null,checked:!1}))(e,t,n)}}function va(){return s({cycleCheckableList:_a,wrapInCircleTask:ma,wrapInSquareTask:ha})}function ya(){return(e,t,n)=>{let r=ga(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},w(a)(e,t,n)}}function ba(){return(e,t,n)=>{let r=ga(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},w(a)(e,t,n)}}function xa(e){return e.type.name===`list`&&e.attrs.kind===`bullet`&&e.childCount>=2&&e.firstChild?.type!==e.type}const Sa=e=>{let t=e.attrs;return t.kind===`task`?{...t,checked:!t.checked}:xa(e)?{...t,collapsed:!t.collapsed}:t};function Ca(){return h(()=>[new b({props:{handleDOMEvents:{mousedown:(e,t)=>ut({view:e,event:t,onListClick:Sa})}}}),at(),new b({props:{transformCopied:pt}}),ot()])}function wa(){return s({toggleListCollapsed:()=>st({isToggleable:xa})})}function Ta(){return u({"Mod-Enter":ya(),"Mod-Shift-Enter":ba(),"Mod-.":st({isToggleable:xa}),"Mod-Shift-7":it({kind:`ordered`,collapsed:!1}),"Mod-Shift-8":it({kind:`bullet`,collapsed:!1}),"Mod-Shift-9":it({kind:`task`,checked:!1,collapsed:!1})})}function Ea(){return _(nt(),Ca(),tt(),$e(),la(),et(),pa(),Ta(),ia(),aa(),sa(),va(),wa())}let Da;function Oa(){return Da??=import(`katex`).then(e=>e.render),Da}function ka(e,t,n,r){try{e(n,t,{displayMode:r,throwOnError:!1,output:`mathml`})}catch(e){t.textContent=String(e)}}var Aa=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=S.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;Oa().then(t=>{e===this.#r&&ka(t,this.#n,e,!1)})}};function ja(){return f({name:`mdMath`,constructor:(e,t)=>new Aa(e,t)})}function Ma(e){return e===`left`||e===`center`||e===`right`?e:null}function Na(){return p({type:`tableCell`,attr:`align`,default:null,toDOM:e=>e?[`data-align`,e]:null,parseDOM:e=>Ma(e.getAttribute(`data-align`))})}function Pa(){return p({type:`tableHeaderCell`,attr:`align`,default:null,toDOM:e=>e?[`data-align`,e]:null,parseDOM:e=>Ma(e.getAttribute(`data-align`))})}function Fa(e){for(let t=0;t<e.childCount;t++){let n=e.child(t);for(let e=0;e<n.childCount;e++)if(n.child(e).type.name===`tableHeaderCell`)return t}return 0}function Ia(e){return e.child(Fa(e))}function La(e,t){return t>=e.childCount?null:e.child(t).attrs.align??null}function Ra(e,t,n){if(e.childCount===0)return;let r=Ia(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=La(r,e);(t.attrs.align??null)!==i&&n.setNodeMarkup(o,void 0,{...t.attrs,align:i}),o+=t.nodeSize}i+=a.nodeSize}}function za(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 Ba(){return new b({key:new x(`table-align-sync`),appendTransaction(e,t,n){if(!e.some(e=>e.docChanged))return;let r=za(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)=>e.type.name===`table`?(s??=n.tr,Ra(e,t,s),!1):!0),s?.docChanged?s:void 0}})}function Va(){return h(Ba())}function Ha(e){let{selection:t}=e;if(Ct(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 Ua(e){return(t,n)=>{let r=Ha(t);if(!r||r.table.childCount===0)return!1;if(n){let{table:i,tablePos:a,firstColumn:o,lastColumn:s}=r,c=Fa(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 Wa(e){let t=Ha(e);if(!(!t||t.table.childCount===0))return La(Ia(t.table),t.lastColumn)??void 0}function Ga(){return s({setTableColumnAlign:Ua})}function Ka(){return _(Na(),Pa(),Va(),Ga())}function qa(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 Ja=`paragraph`;function Ya(){return _(m({name:`tableCell`,content:Ja}),m({name:`tableHeaderCell`,content:Ja}))}const Xa=(e,t)=>{let{selection:n}=e;return!Ct(n)||!n.isColSelection()||!n.isRowSelection()?!1:St(e,t)};function Za(){return v(u({Backspace:Xa,Delete:Xa}),t.high)}function Qa(){return _(xt(),bt(),ht(),yt(),Ya(),Ka(),vt({allowTableNodeSelection:!0}),gt(),_t(),Za())}function $a(e){let{selection:t}=e,{$from:n,$to:r}=t;if(oe(t)&&n.depth===0||n.depth>0&&r.depth>0&&n.index(0)===r.index(0))return n.index(0)}function eo(e){return(t,n)=>{if(qa(t))return!1;let r=$a(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=oe(a)?we.create(u.doc,a.from+d):S.create(u.doc,a.anchor+d,a.head+d);u.setSelection(f),n(u.scrollIntoView())}return!0}}function to(e){return(t,n,r)=>rt(e)(t,n,r)||eo(e===`up`?-1:1)(t,n,r)}function no(){return u({"Alt-ArrowUp":to(`up`),"Alt-ArrowDown":to(`down`)})}function ro(){return m({name:`paragraph`,content:`inline*`,group:`block`,whitespace:`pre`,parseDOM:[{tag:`p`}],toDOM(){return[`p`,0]}})}function io(){return _(v(ro(),t.highest),wt(),Tt())}const q=new x(`meowdownPendingReplacement`);function J(e){return q.getState(e)?.pending??null}function ao(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 oo=new b({key:q,state:{init:()=>({pending:null}),apply:(e,t)=>{let n=e.getMeta(q);if(n)return ao(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=J(e);return!t||t.from>=t.to?null:C.create(e.doc,[Ee.inline(t.from,t.to,{class:`md-pending-replacement`})])}}});function so(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(q,{type:`start`,from:r,to:i,mode:a})),!0)}}function co(e){return(t,n)=>J(t)?(n?.(t.tr.setMeta(q,{type:`append`,text:e})),!0):!1}function lo(){return(e,t)=>J(e)?(t?.(e.tr.setMeta(q,{type:`discard`})),!0):!1}function uo(e={}){return(t,n)=>{let r=J(t);if(!r||!r.text.trim())return!1;if(n){let i=e.mode??r.mode,a=qo(t.schema),o=Z(r.text,{nodes:a}),s=t.tr;if(s.setMeta(q,{type:`accept`}),i===`append`){let e=t.doc.resolve(r.to).after(1);s.insert(e,o.content),s.setSelection(S.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?.type.name===`paragraph`&&e.sameParent(n)&&e.parent.isTextblock?(s.replaceWith(r.from,r.to,i.content),s.setSelection(S.near(s.doc.resolve(r.from+i.content.size),-1))):(s.replaceRange(r.from,r.to,new Re(o.content,0,0)),s.setSelection(S.near(s.doc.resolve(s.mapping.map(r.to)),-1)))}n(s.scrollIntoView())}return!0}}function fo(){return s({startPendingReplacement:so,appendPendingReplacementText:co,acceptPendingReplacement:uo,discardPendingReplacement:lo})}function po(){return u({"Mod-Enter":uo(),Escape:lo()})}function mo(){return _(h(oo),fo(),po())}function ho(e){return h(new b({view:()=>({update:(t,n)=>{let r=q.getState(n),i=q.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 go(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 go(r)?void 0:r}function _o(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 vo(e){let t=e.state,n=t.selection.head,r=F(t,n),i=I(t,n),a=r==null,o=[[n,a],[n,!a]];r!=null&&o.push([r.from,!0]),i!=null&&o.push([i.to,!1]);for(let[t,n]of o){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 yo(e){let t=e.state,n=t.selection.head;for(let r of Wt){let i=T(t,n,r);if(i==null||i.from!==n&&i.to!==n)continue;let a=bo(e,i.from+1);if(a==null)continue;let o=a.getBoundingClientRect();if(o.height!==0)return{left:i.to===n?o.right:o.left,top:o.top,height:o.height}}}function bo(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 xo(e){return vo(e)??yo(e)}const So=new x(`meowdown-scroll-to-selection`);function Co(e){let t=e.state.selection;if(!g(t)||Y(e,t.head,1)!=null)return!1;let n=xo(e);if(n==null)return!1;let r=e.domAtPos(t.head).node;return Do(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 wo(e){let t=e.assignedSlot??e.parentNode;return t?.nodeType===11?t.host:t}function To(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 Eo(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 Do(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=wo(e);continue}let n=e,o=n===a.body,s=o?To(a):Eo(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:wo(n)}}function Oo(){return h(new b({key:So,props:{handleScrollToSelection:Co}}))}function ko(e,t){return(n,r)=>{let i=e<0?Te.atStart(n.doc):Te.atEnd(n.doc),a=t?S.between(n.selection.$anchor,i.$head):i;return n.selection.eq(a)||r?.(n.tr.setSelection(a).scrollIntoView()),!0}}function Ao(){return u({"Meta-ArrowUp":ko(-1,!1),"Meta-ArrowDown":ko(1,!1),"Shift-Meta-ArrowUp":ko(-1,!0),"Shift-Meta-ArrowDown":ko(1,!0)})}function jo(e){e.offsetWidth}const Mo=new x(`meowdown-virtual-caret`),No=[`md-virtual-caret-blink`,`md-virtual-caret-blink2`];function Po(e){let t=e.height*.19999999999999996;return{left:e.left,top:e.top-t/2,height:e.height+t}}function Fo(e){let t=_o(e)??vo(e);return t==null?yo(e):Po(t)}function Io(e,t){return e==null||t==null?e===t:e.left===t.left&&e.top===t.top&&e.height===t.height}var Lo=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=No[this.#s]}#l=()=>{let e=this.#e;if(e.isDestroyed)return;let t=e.state,n=t.selection,r=g(n)&&n.empty?Fo(e):void 0,i=r!=null&&D(t)===`hide`?Un(t,n.head):void 0;if(Io(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`;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`,a&&(jo(this.#n),this.#n.style.transitionProperty=``)}};function Ro(){return h(new b({key:Mo,view:e=>new Lo(e)}))}function zo(e){return _(io(),ye(),Dn(),Se(),ve(),Ea(),Nn(),Qa(),vn(),tr(),nr(),Ti(),ln(),En(),no(),Ao(),li(e),Wi(),Qi(),Wr(),ja(),zt(e.markMode??`focus`),Ro(),Oo(),$n(),nn({marks:Wt.map(e=>({name:e,modes:[`hide`,`focus`,`show`]}))}),a(),i(),l(),be(),Ce(),xe(),wn(),mo())}function Bo(e={}){return zo(e)}const Vo=y(()=>{let e=Bo().schema;if(e==null)throw Error(`Unexpected empty schema`);return e}),Ho=y(()=>r(Vo())),Uo=y(()=>n(Vo())),Wo=`meowdown_mark_builders`;function Go(e){let t=e.cached[Wo];if(t)return t;let r=n(e);return e.cached[Wo]=r,r}const Ko=`meowdown_node_builders`;function qo(e){let t=e.cached[Ko];if(t)return t;let n=r(e);return e.cached[Ko]=n,n}function Z(e,t={}){let{nodes:n=Ho(),frontmatter:r=!1}=t,i,a=e;if(r){let[t,n]=Yo(e);i=t,n&&(a=e.slice(n))}let o=Xo(n,Pr.parse(a).cursor(),a);return n.doc(i===void 0?{}:{frontmatter:i},o)}const Jo=/^---[ \t]*\r?\n([\s\S]*?\n)?---[ \t]*(?:\r?\n|$)/;function Yo(e){let t=Jo.exec(e);return t?[(t[1]??``).replace(/\r?\n$/,``),t[0].length]:[]}function Xo(e,t,n){let r=[];if(!t.firstChild())return r;let i;do i!=null&&Zo(r,e,n,i,t.from),i=t.to,r.push(...Qo(e,t,n));while(t.nextSibling());return t.parent(),r}function Zo(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 Qo(e,t,n){switch(t.type.id){case H.ATXHeading1:return[Q(e,t,n,1,!1)];case H.ATXHeading2:return[Q(e,t,n,2,!1)];case H.ATXHeading3:return[Q(e,t,n,3,!1)];case H.ATXHeading4:return[Q(e,t,n,4,!1)];case H.ATXHeading5:return[Q(e,t,n,5,!1)];case H.ATXHeading6:return[Q(e,t,n,6,!1)];case H.SetextHeading1:return[Q(e,t,n,1,!0)];case H.SetextHeading2:return[Q(e,t,n,2,!0)];case H.Paragraph:return[is(e,t,n)];case H.CommentBlock:return[as(e,t,n)];case H.HTMLBlock:case H.ProcessingInstructionBlock:return[is(e,t,n)];case H.Blockquote:return[os(e,t,n)];case H.BulletList:return ss(e,t,n,`bullet`);case H.OrderedList:return ss(e,t,n,`ordered`);case H.FencedCode:case H.CodeBlock:return[ls(e,t,n)];case H.BlockMath:return[us(e,t,n)];case H.HorizontalRule:{let r=n.slice(t.from,t.to).trimEnd();return[e.horizontalRule({marker:r===`---`?null:r})]}case H.Table:return[ds(e,t,n)];case H.Task:return[is(e,t,n)];default:return n.slice(t.from,t.to).trim()===``?[]:(console.warn(`[meowdown] unsupported lezer block "${t.type.name}"`),[is(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===H.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===H.HeaderMark&&n>o&&(s=n,c=n,l=r),t.parent()}let u=ns(n.slice(o,s),$(n,o)).trim(),d=i?$o(n,c,l)||1:null,f=!i&&c>=0&&es(n,c,l)||null;return e.heading({level:r,setextUnderline:d,closingHashes:f},u)}function $o(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 es(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(`
|
|
3
|
-
`,t-1)+1,r=0;for(let i=n;i<t;i++)r+=e.charCodeAt(i)===9?4-r%4:1;return r}function
|
|
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 ee,getMarkType as te,getNodeType as ne,isAllSelection as re,isApple as ie,isAtBlockStart as ae,isNodeSelection as oe,isTextSelection as h,toggleNode as se,union as g,unsetBlockType as ce,withPriority as le,withPriority as _,withSkipCodeBlock as ue}from"@prosekit/core";import{defineCodeBlock as de,defineCodeBlockHighlight as fe,defineCodeBlockPreviewPlugin as pe,isCodeBlockPreviewHiddenDecoration as me}from"@prosekit/extensions/code-block";import{definePlaceholder as he}from"@prosekit/extensions/placeholder";import{defineReadonly as ge}from"@prosekit/extensions/readonly";import{isElementLike as _e,once as ve}from"@ocavue/utils";import{defineBlockquote as ye}from"@prosekit/extensions/blockquote";import{defineDoc as be}from"@prosekit/extensions/doc";import{defineGapCursor as xe}from"@prosekit/extensions/gap-cursor";import{defineModClickPrevention as Se}from"@prosekit/extensions/mod-click-prevention";import{defineText as Ce}from"@prosekit/extensions/text";import{defineVirtualSelection as we}from"@prosekit/extensions/virtual-selection";import{NodeSelection as Te,Plugin as v,PluginKey as y,Selection as b,TextSelection as x}from"@prosekit/pm/state";import{Decoration as Ee,DecorationSet as S}from"@prosekit/pm/view";import{LanguageDescription as De}from"@codemirror/language";import{languages as Oe}from"@codemirror/language-data";import{classHighlighter as ke,highlightTree as Ae}from"@lezer/highlight";import{createParser as je}from"prosemirror-highlight/lezer";import{defineTextBlockEnterRule as Me}from"@prosekit/extensions/enter-rule";import{defineInputRule as Ne,defineTextBlockInputRule as Pe}from"@prosekit/extensions/input-rule";import{triggerAutocomplete as Fe}from"@prosekit/extensions/autocomplete";import{DOMSerializer as Ie,Mark as Le,Slice as C}from"@prosekit/pm/model";import{defineHeadingCommands as Re,defineHeadingInputRule as ze,defineHeadingSpec as Be}from"@prosekit/extensions/heading";import{defineHorizontalRule as Ve}from"@prosekit/extensions/horizontal-rule";import{AddMarkStep as He,AddNodeMarkStep as Ue,RemoveMarkStep as We,RemoveNodeMarkStep as Ge,ReplaceStep as Ke,Step as qe,StepResult as Je,Transform as Ye}from"@prosekit/pm/transform";import{GFM as Xe,parser as Ze}from"@lezer/markdown";import{defineListCommands as Qe,defineListDropIndicator as $e,defineListKeymap as et,defineListSpec as tt,moveList as nt,toggleList as rt,wrapInList as w}from"@prosekit/extensions/list";import{createListRenderingPlugin as it,createSafariInputMethodWorkaroundPlugin as at,createToggleCollapsedCommand as ot,defaultAttributesGetter as st,findCheckboxInListItem as ct,handleListMarkerMouseDown as lt,joinListElements as ut,listToDOM as dt,unwrapListSlice as ft,wrappingListInputRule as pt}from"prosemirror-flat-list";import{defineTableCellSpec as mt,defineTableCommands as ht,defineTableDropIndicator as gt,defineTableEditingPlugin as _t,defineTableHeaderCellSpec as vt,defineTableRowSpec as yt,defineTableSpec as bt,deleteTable as xt,isCellSelection as St}from"@prosekit/extensions/table";import{defineParagraphCommands as Ct,defineParagraphKeymap as wt}from"@prosekit/extensions/paragraph";import{closeHistory as Tt}from"@prosekit/pm/history";import Et from"rehype-parse";import Dt from"rehype-remark";import Ot from"remark-gfm";import kt from"remark-stringify";import{unified as At}from"unified";import{registerResizableHandleElement as jt,registerResizableRootElement as Mt}from"@prosekit/web/resizable";function T(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 ee(a,n,r)}const Nt=new Set([`mdMark`,`mdLinkUri`,`mdLinkTitle`]);function Pt(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=>Nt.has(e))&&!(t.preserveMathSource&&n.includes(`mdMath`))||r.push(e.text),!1}),n.push(r.join(``))}),n.join(`
|
|
2
|
+
`)}const E=new y(`mark-mode`);function Ft(e){return E.getState(e)}function It(e){return new v({key:E,state:{init:()=>e,apply:(e,t)=>e.getMeta(E)??t},props:{attributes:t=>({"data-mark-mode":Ft(t)??e}),decorations:e=>{let t=Ft(e);if(t===`focus`)return zt(e);if(t===`hide`)return Bt(e)},clipboardTextSerializer:(e,t)=>Ft(t.state)===`show`?``:Pt(e,{preserveMathSource:!0})}})}function Lt(e){return(t,n)=>D(t)===e?!1:(n?.(t.tr.setMeta(E,e)),!0)}function Rt(e){return g(m(It(e)),s({setMarkMode:Lt}))}function D(e){return E.getState(e)}function zt(e){return Vt(e,void 0)}function Bt(e){return Vt(e,{key:`math`})}function Vt(e,t){let{selection:n}=e;if(!n.empty)return S.empty;let r=n.$head,{parent:i}=r;if(!i.isTextblock||i.type.spec.code)return S.empty;let a=ee(r,te(e.schema,`mdPack`),t);return a?S.create(e.doc,[Ee.inline(a.from,a.to,{class:`show`})]):S.empty}const Ht=[`mdImage`,`mdWikilink`,`mdFile`];function O(e,t){let n=D(t);return n?e.flatMap(e=>e.modes.includes(n)?[e.name]:[]):[]}function Ut(e,t,n){for(let r of n){let n=T(e,t,r);if(n)return n}}function k(e,t,n){let r=Ut(e,t,n);return r&&r.to===t?r:void 0}function A(e,t,n){let r=Ut(e,t,n);return r&&r.from===t?r:void 0}function Wt(e,t){let{from:n,to:r,empty:i}=e.selection;if(i)return;let a=Ut(e,n,t);return a&&a.from===n&&a.to===r?a:void 0}function Gt(e,t){return x.create(e.doc,t.from,t.to)}function Kt(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?A(e,t,n):k(e,t,n),o=r===-1?i.before():i.after(),s=b.findFrom(e.doc.resolve(o),r);if(!s)return;let c=h(s)?r===-1?k(e,s.head,n):A(e,s.head,n):void 0;if(!(a==null&&c==null))return s}function qt(e){return(t,n)=>{let r=O(e,t);if(r.length===0||!h(t.selection))return!1;let i=t.selection;if(i.empty){let e=A(t,i.from,r);if(e)return n?.(t.tr.setSelection(Gt(t,e))),!0;if(k(t,i.from,r)&&i.from<t.doc.resolve(i.from).end())return n?.(t.tr.setSelection(x.create(t.doc,i.from+1))),!0;let a=Kt(t,i.from,r,1);return a?(n?.(t.tr.setSelection(a).scrollIntoView()),!0):!1}let a=Wt(t,r);return a?(n?.(t.tr.setSelection(x.create(t.doc,a.to))),!0):!1}}function Jt(e){return(t,n)=>{let r=O(e,t);if(r.length===0||!h(t.selection))return!1;let i=t.selection;if(i.empty){let e=k(t,i.from,r);if(e)return n?.(t.tr.setSelection(Gt(t,e))),!0;let a=Kt(t,i.from,r,-1);return a?(n?.(t.tr.setSelection(a).scrollIntoView()),!0):!1}let a=Wt(t,r);return a?(n?.(t.tr.setSelection(x.create(t.doc,a.from))),!0):!1}}function Yt(e,t){return(n,r)=>{let i=O(e,n);if(i.length===0||!h(n.selection))return!1;let{anchor:a,head:o}=n.selection,s=t===-1?k(n,o,i):A(n,o,i);if(s){let e=t===-1?s.from:s.to;return r?.(n.tr.setSelection(x.create(n.doc,a,e)).scrollIntoView()),!0}let c=Kt(n,o,i,t);return!c||!h(c)?!1:(r?.(n.tr.setSelection(x.create(n.doc,a,c.head)).scrollIntoView()),!0)}}function Xt(e){return(t,n)=>{let r=O(e,t);if(r.length===0||!t.selection.empty)return!1;let i=t.selection.from,a=k(t,i,r);return a?(n?.(t.tr.delete(a.from,a.to)),!0):!A(t,i,r)||i<=t.doc.resolve(i).start()?!1:(n?.(t.tr.delete(i-1,i)),!0)}}function Zt(e){return(t,n)=>{let r=O(e,t);if(r.length===0||!t.selection.empty)return!1;let i=t.selection.from,a=A(t,i,r);return a?(n?.(t.tr.delete(a.from,a.to)),!0):!k(t,i,r)||i>=t.doc.resolve(i).end()?!1:(n?.(t.tr.delete(i,i+1)),!0)}}const Qt=`md-atom-selected`;function $t(e){return new v({key:new y(`atom-mark-selection`),props:{decorations:t=>{let n=O(e,t);if(n.length===0||oe(t.selection))return;let r=Wt(t,n);if(r)return S.create(t.doc,[Ee.inline(r.from,r.to,{class:Qt})]);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(Ee.inline(t,t+e.nodeSize,{class:Qt}))}),S.create(t.doc,s)}}})}function en({marks:e}){return g(_(l({ArrowRight:qt(e),ArrowLeft:Jt(e),"Shift-ArrowRight":Yt(e,1),"Shift-ArrowLeft":Yt(e,-1),Backspace:Xt(e),Delete:Zt(e)}),t.high),m($t(e)))}const j=new Map,tn=new Map,nn={math:`latex`};async function rn(e){let t=j.get(e);if(t!==void 0)return t;let n=De.matchLanguageName(Oe,nn[e]??e,!0);if(!n)return j.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),j.set(e,null),null}return j.set(e,r),r}function an(e,t){let n=tn.get(e);if(n)return n;let r=je({parse:e=>t.language.parser.parse(e.content),highlighter:ke});return tn.set(e,r),r}const on=e=>{let t=e.language?.trim();if(!t)return[];let n=j.get(t);return n===null?[]:n?an(t,n)(e):rn(t).then(()=>void 0)};function sn(){return fe({parser:on,nodeTypes:[`codeBlock`]})}function cn(e,t){let n=t.language.parser.parse(e),r=[];return Ae(n,ke,(e,t,n)=>{r.push([e,t,n])}),r}function ln(e,t){let n=t.trim();if(!n)return[];let r=j.get(n);return r===null?[]:r?cn(e,r):rn(n).then(t=>t?cn(e,t):[])}function un(){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 dn(){return f({type:`codeBlock`,attr:`fenceLength`,default:null,toDOM:e=>e==null?null:[`data-fence-length`,String(e)],parseDOM:e=>{let t=e.getAttribute(`data-fence-length`);if(t==null)return null;let n=Number.parseInt(t,10);return Number.isSafeInteger(n)&&n>3?n:null}})}function fn(e){return{language:e[1]||``,fenceStyle:`tilde`}}function pn(){return Pe({regex:/^~~~(\S*)\s$/,type:`codeBlock`,attrs:fn})}function mn(){return Me({regex:/^~~~(\S*)$/,type:`codeBlock`,attrs:fn})}function hn(){return Me({regex:/^\$\$$/,type:`codeBlock`,attrs:()=>({language:`math`,fenceStyle:`dollar`})})}function gn(){return g(de(),un(),dn(),pn(),mn(),hn())}function _n(e,t){return(n,r)=>{if(r){let i=x.create(n.doc,e,t);r(n.tr.setSelection(i))}return!0}}function vn(e,t,n){return(r,i)=>{if(i){let a=x.between(e,t,n);i(r.tr.setSelection(a))}return!0}}function yn(e){return(t,n)=>{if(!e.trim())return!1;let r=Z(e,{nodes:Go(t.schema)}).content;if(r.childCount===0)return!1;let i=r.childCount===1&&r.child(0).type.name===`paragraph`?new C(r,1,1):new C(r,0,C.maxOpen(r).openEnd);if(n){let e=t.tr,r=e.selection;(!h(r)||!r.empty)&&e.setSelection(x.near(r.$from)),n(e.replaceSelection(i).scrollIntoView())}return!0}}function bn(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);Fe(s),n(s.scrollIntoView())}return!0}}function xn(){return(e,t)=>(t&&t(e.tr.scrollIntoView()),!0)}function Sn(){return s({insertMarkdown:yn,insertTrigger:bn,scrollIntoView:xn,selectText:_n,selectTextBetween:vn})}const Cn=(e,t,n)=>{let{selection:r}=e;return r.empty||n?.composing?!1:(t?.(e.tr.setSelection(x.near(r.$head))),!0)};function wn(){return _(l({Escape:Cn}),t.low)}function Tn(){return f({type:`doc`,attr:`frontmatter`,default:null})}function En(){return p({name:`heading`,whitespace:`pre`})}function Dn(){return f({type:`heading`,attr:`setextUnderline`,default:null,toDOM:e=>e==null?null:[`data-setext-underline`,String(e)],parseDOM:e=>{let t=e.getAttribute(`data-setext-underline`);if(t==null)return null;let n=Number.parseInt(t,10);return Number.isSafeInteger(n)&&n>0?n:null}})}function On(){return f({type:`heading`,attr:`closingHashes`,default:null,toDOM:e=>e==null?null:[`data-closing-hashes`,String(e)],parseDOM:e=>{let t=e.getAttribute(`data-closing-hashes`);if(t==null)return null;let n=Number.parseInt(t,10);return Number.isSafeInteger(n)&&n>0?n:null}})}function M(e){return ue(se({type:`heading`,attrs:{level:e}}))}const kn=(e,t,n)=>ae(e,n)?.parent.type.name===`heading`&&ce()(e,t,n);function An(){return l({"Mod-1":M(1),"Mod-2":M(2),"Mod-3":M(3),"Mod-4":M(4),"Mod-5":M(5),"Mod-6":M(6),Backspace:kn})}function jn(){return g(Be(),En(),Dn(),On(),ze(),Re(),An())}function Mn(e,t){return t(e.state,e.dispatch,e)}const Nn=new Set([`mdMark`,`mdLinkUri`,`mdLinkTitle`]);function Pn(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 N(e,t){let n=Pn(e,t);return n!=null&&n.some(e=>Nn.has(e.type.name))}function P(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 F(e,t){if(!P(e,t))return;let n=e.doc.resolve(t).start(),r=t;for(;r>n&&N(e,r-1);)r--;return r<t?{from:r,to:t}:void 0}function I(e,t){if(!P(e,t))return;let n=e.doc.resolve(t).end(),r=t;for(;r<n&&N(e,r);)r++;return r>t?{from:t,to:r}:void 0}function Fn(e,t){return N(e,t-1)&&N(e,t)}function In(e,t){if(!Fn(e,t))return;let n=F(e,t),r=I(e,t);if(!(n==null||r==null))return{from:n.from,to:r.to}}function Ln(e,t,n){let r=Pn(e,t);return r!=null&&n.isInSet(r)}function Rn(e,t){let n=Pn(e,t);if(n==null)return;let r=te(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&&Ln(e,r-1,n);)r--;let i=t+1;for(;i<s&&Ln(e,i,n);)i++;(c==null||i-r<c.to-c.from)&&(c={from:r,to:i})}return c}function L(e,t,n){let r=Rn(e,n===`from`?t.from:t.to-1);return r==null?!1:n===`from`?r.from===t.from:r.to===t.to}function zn(e,t,n){let r=L(e,t,`from`),i=L(e,t,`to`);return r&&!i?t.from:i&&!r?t.to:n-t.from<=t.to-n?t.from:t.to}function Bn(e,t,n,r){if(!P(e,n))return n;let i=In(e,n);if(i!=null)return r?zn(e,i,n):n>=t?i.to:i.from;if(!r)return n;let a=F(e,n);if(a!=null&&L(e,a,`from`))return a.from;let o=I(e,n);return o!=null&&L(e,o,`to`)?o.to:n}function Vn(e,t){if(!P(e,t))return;let n=N(e,t-1),r=N(e,t);if(n!==r)return r?`left`:`right`}function Hn(e,t){let n=Rn(e,t);if(n==null)return[];let r=I(e,n.from),i=F(e,n.to),a=[];return i!=null&&a.push(i),r!=null&&(i==null||r.from!==i.from)&&a.push(r),a}const Un=new y(`meowdown-hidden-run-snap`),Wn=new y(`meowdown-hidden-run-beforeinput`);function Gn(){let e=!1;return new v({key:Un,props:{handleDOMEvents:{compositionstart:()=>(e=!0,!1),compositionend:()=>(e=!1,!1)}},appendTransaction:(t,n,r)=>{if(e||D(r)!==`hide`)return null;let i=r.selection;if(!h(i))return null;let a=t.some(e=>e.getMeta(`pointer`)!=null);if(i.empty){let e=Bn(r,n.selection.head,i.head,a);return e===i.head?null:r.tr.setSelection(x.create(r.doc,e))}let o=In(r,i.from)?.from??i.from,s=In(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(x.create(r.doc,c,l))}})}const Kn=(e,t)=>{if(D(e)!==`hide`)return!1;let n=e.selection;if(!h(n)||!n.empty)return!1;let r=Bn(e,n.head,n.head,!0);return r===n.head||t?.(e.tr.setSelection(x.create(e.doc,r))),!1};function qn(e){return(t,n)=>{if(D(t)!==`hide`)return!1;let r=t.selection;if(!h(r)||!r.empty)return!1;let i=r.$head;if(!i.parent.isTextblock||i.parent.type.spec.code)return!1;let a=e===-1?F(t,r.head):I(t,r.head);if(a==null)return!1;let o=Hn(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 Jn=qn(-1),Yn=qn(1);function Xn(){return new v({key:Wn,props:{handleDOMEvents:{beforeinput:(e,t)=>{if(e.composing)return!1;let n=t.inputType===`deleteContentBackward`?Jn:t.inputType===`deleteContentForward`?Yn:void 0;return n==null||!Mn(e,n)?!1:(t.preventDefault(),!0)}}}})}function Zn(){return g(m(Gn()),m(Xn()),_(l({Enter:Kn,Backspace:Jn,Delete:Yn}),t.highest))}function Qn(){return f({type:`horizontalRule`,attr:`marker`,default:null,toDOM:e=>e?[`data-hr-marker`,e]:null,parseDOM:e=>e.getAttribute(`data-hr-marker`)})}function $n(){return g(Ve(),Qn())}function er(){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 tr(e){let[t,n,r]=e;return[t,n,r.map(e=>e.toJSON())]}function nr(e,t){let[n,r,i]=t;return[n,r,i.map(t=>Le.fromJSON(e,t))]}function rr(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}var R=class e extends qe{constructor(e){super(),this.chunks=e}apply(e){if(this.chunks.length===0)return Je.ok(e);let t=e.content.size,n;for(let[r,i,a]of this.chunks){if(r>=i)continue;let o=Math.max(0,Math.min(r,t)),s=Math.max(o,Math.min(i,t));if(o>=s)continue;let c=Le.setFrom(a);e.nodesBetween(o,s,(t,r)=>{if(!t.isText)return!0;let i=Math.max(o,r),a=Math.min(s,r+t.nodeSize);if(i>=a)return!1;let l=t.marks;if(rr(l,c))return!1;n??=new Ye(e);for(let e of l)n.removeMark(i,a,e);for(let e of c)n.addMark(i,a,e);return!1})}return Je.ok(n?n.doc:e)}invert(e){if(this.chunks.length===0)return ir;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 Ke(i,a,e.slice(i,a),!1)}map(e){return null}toJSON(){return{stepType:`batchSetMark`,chunks:this.chunks.map(tr)}}static fromJSON(t,n){let r=n.chunks;return new e(r.map(e=>nr(t,e)))}};qe.jsonID(`batchSetMark`,R);const ir=new R([]),ar=new Set([`com`,`br`,`net`,`jp`,`org`,`in`,`de`,`ru`,`it`,`fr`]),or=/^[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i;function sr(e){let t=e.indexOf(`/`);return t===-1?e:e.slice(0,t)}function cr(e){let t=e.split(`.`);if(t.length<2)return!1;let n=t[t.length-1].toLowerCase();if(!ar.has(n)||t[t.length-2].length<3)return!1;for(let e of t)if(e.length>63||!or.test(e))return!1;return!0}function lr(e){if(/^[a-z][a-z0-9+.-]*:/i.test(e))return e;if(/^[^\s@]+@[^\s@]+$/.test(e))return`mailto:${e}`;if(/^www\./i.test(e)||cr(sr(e)))return`https://${e}`}function z(e){return e===32||e===9||e===10||e===13}const ur=/^[a-z0-9-]+(?:\.[a-z0-9-]+)+(?:\/[^\s<]*)?/i,dr=/[\s(*_~]/;function fr(e){return e>=48&&e<=57||e>=65&&e<=90||e>=97&&e<=122||e===45}function pr(e,t,n){let r=0;for(let i=0;i<t;i++)e[i]===n&&r++;return r}function mr(e){let t=e.length;for(;;){let n=e[t-1];if(/[?!.,:*_~]/.test(n)||n===`)`&&pr(e,t,`)`)>pr(e,t,`(`))t--;else if(n===`;`){let n=/&(?:#\d+|#x[a-f\d]+|\w+);$/.exec(e.slice(0,t));if(!n)break;t=n.index}else break}return t}const hr={parseInline:[{name:`BareAutolink`,before:`Link`,parse(e,t,n){if(!fr(t)||e.hasOpenLink)return-1;let r=e.slice(n-1,n);if(r!==``&&!dr.test(r))return-1;let i=ur.exec(e.slice(n,e.end));if(!i)return-1;let a=mr(i[0]);return a===0||!cr(sr(i[0].slice(0,a)))?-1:e.addElement(e.elt(`URL`,n,n+a))}}]};function gr(e){return e>=48&&e<=57||e>=65&&e<=90||e>=97&&e<=122||e===45||e===95||e>127&&/[\p{L}\p{N}]/u.test(String.fromCharCode(e))}function _r(e){return e>=65&&e<=90||e>=97&&e<=122||e>127&&/\p{L}/u.test(String.fromCharCode(e))}const vr={defineNodes:[{name:`Hashtag`}],parseInline:[{name:`Hashtag`,parse(e,t,n){if(t!==35||!/\s|^$/.test(e.slice(n-1,n)))return-1;let r=n+1,i=!1;for(;r<e.end;){let t=e.char(r);if(!gr(t))break;i||=_r(t),r++}return i?e.addElement(e.elt(`Hashtag`,n,r)):-1}}]},yr={resolve:`Highlight`,mark:`HighlightMark`},br=/[!"#$%&'()*+,\-./:;<=>?@[\\\]^_`{|}~\u{A1}\u{2010}-\u{2027}]/u,xr={defineNodes:[{name:`Highlight`},{name:`HighlightMark`}],parseInline:[{name:`Highlight`,after:`Emphasis`,parse(e,t,n){if(t!==61||e.char(n+1)!==61||e.char(n+2)===61)return-1;let r=e.slice(n-1,n),i=e.slice(n+2,n+3),a=/\s|^$/.test(r),o=/\s|^$/.test(i),s=br.test(r),c=br.test(i);return e.addDelimiter(yr,n,n+2,!o&&(!c||a||s),!a&&(!s||o||c))}}]};function Sr(e){return e>=48&&e<=57}function Cr(e){return e.next!==36||e.text.charCodeAt(e.pos+1)!==36||e.text.charCodeAt(e.pos+2)===36?!1:e.skipSpace(e.pos+2)===e.text.length}function wr(e){let t=e.depth;return typeof t==`number`?t:2**53-1}const Tr={defineNodes:[{name:`InlineMath`},{name:`InlineMathMark`},{name:`BlockMath`,block:!0},{name:`BlockMathMark`}],parseBlock:[{name:`BlockMath`,before:`FencedCode`,parse(e,t){if(!Cr(t))return!1;let n=e.lineStart+t.pos,r=[e.elt(`BlockMathMark`,n,n+2)];for(let n=!0,i=!0,a=!1;!(!e.nextLine()||wr(t)<e.depth);n=!1){if(Cr(t)){i&&a&&r.push(e.elt(`CodeText`,e.lineStart-1,e.lineStart)),r.push(e.elt(`BlockMathMark`,e.lineStart+t.pos,e.lineStart+t.pos+2)),e.nextLine();break}a=!0,n||(r.push(e.elt(`CodeText`,e.lineStart-1,e.lineStart)),i=!1);let o=e.lineStart+t.basePos,s=e.lineStart+t.text.length;o<s&&(r.push(e.elt(`CodeText`,o,s)),i=!1)}return e.addElement(e.elt(`BlockMath`,n,e.prevLineEnd(),r)),!0},endLeaf(e,t){return Cr(t)}}],parseInline:[{name:`InlineMath`,after:`InlineCode`,parse(e,t,n){if(t!==36||e.char(n-1)===36)return-1;let r=e.char(n+1)===36?2:1;if(e.char(n+r)===36)return-1;let i=n+r;if(z(e.char(i)))return-1;for(let t=i;t<e.end;t++){let a=e.char(t);if(a===10)return-1;if(a===92){t++;continue}if(a!==36)continue;let o=1;for(;e.char(t+o)===36;)o++;if(o!==r||z(e.char(t-1))||Sr(e.char(t+o)))return-1;let s=t+o;return e.addElement(e.elt(`InlineMath`,n,s,[e.elt(`InlineMathMark`,n,i),e.elt(`InlineMathMark`,t,s)]))}return-1}}]},Er=/^[a-z][a-z0-9+.-]*:\/\/[^\s<]+/i;function Dr(e){return e>=65&&e<=90||e>=97&&e<=122}const Or={parseInline:[{name:`SchemeAutolink`,after:`Autolink`,parse(e,t,n){if(!Dr(t)||e.hasOpenLink)return-1;let r=e.slice(n-1,n);if(r!==``&&!dr.test(r))return-1;let i=Er.exec(e.slice(n,e.end));if(!i)return-1;let a=mr(i[0]);return a<=i[0].indexOf(`://`)+3?-1:e.addElement(e.elt(`URL`,n,n+a))}}]},kr={defineNodes:[{name:`Wikilink`},{name:`WikilinkMark`}],parseInline:[{name:`Wikilink`,before:`Link`,parse(e,t,n){if(t!==91||e.char(n+1)!==91)return-1;let r=!1;for(let t=n+2;t<e.end-1;t++){let i=e.char(t);if(i===93){if(e.char(t+1)!==93||!r)return-1;let i=t+2;return e.addElement(e.elt(`Wikilink`,n,i,[e.elt(`WikilinkMark`,n,n+2),e.elt(`WikilinkMark`,t,i)]))}if(i===91||i===10)return-1;i!==32&&i!==9&&(r=!0)}return-1}}]};function Ar(e){return e.end}const jr=Ze.configure([Xe,vr,kr,hr,Or,xr,Tr]),Mr=jr.configure({parseInline:[{name:`SkipInline`,before:`Escape`,parse:Ar}]});function B(e){return jr.parseInline(e,0)}function V(e,t,n=[]){for(let r of e)t(r)&&n.push(r),V(r.children,t,n);return n}function Nr(e){let t={};for(let n of e.nodeSet.types)t[n.name]=n.id;return t}const H=Nr(jr),Pr=/^<!--\s*(\{[^}]*\})\s*-->$/,Fr=/<!--\s*\{[^}]*\}\s*-->$/;function Ir(e){let t=Pr.exec(e.trim());if(!t)return;let n;try{n=JSON.parse(t[1])}catch{return}if(typeof n!=`object`||!n)return;let r=Lr(n);return Object.keys(r).length>0?r:void 0}function Lr(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 Rr(e){return`<!-- ${JSON.stringify(e)} -->`}function zr(e){return e.replace(Fr,``)}function Br(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 Vr(){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 Hr(){return d({name:`mdWikilink`,constructor:Vr()})}const Ur=new Map([[H.Emphasis,`mdEm`],[H.StrongEmphasis,`mdStrong`],[H.InlineCode,`mdCode`],[H.Strikethrough,`mdDel`],[H.Highlight,`mdHighlight`],[H.EmphasisMark,`mdMark`],[H.CodeMark,`mdMark`],[H.LinkMark,`mdMark`],[H.StrikethroughMark,`mdMark`],[H.HighlightMark,`mdMark`],[H.URL,`mdLinkUri`],[H.LinkTitle,`mdLinkTitle`],[H.Hashtag,`mdTag`],[H.WikilinkMark,`mdMark`]]);function Wr(e,t,n){let r=B(t),i=[];return Kr(r,[],0,t.length,t,e,i,n),i}function Gr(e){return e.slice(1,-1).replaceAll(/\\(.)/g,`$1`)}function Kr(e,t,n,r,i,a,o,s){let c=n;for(let n=0;n<e.length;n++){let r=e[n];r.from>c&&U(o,c,r.from,t);let l=r.type;if(l===H.Link){let e=Yr(r,t,i,a,s);e?U(o,r.from,r.to,e):Xr(r,t,i,a,o)}else if(l===H.Image){let s=Zr(r,e[n+1],i);Qr(r,t,i,a,o,s),s&&n++,c=s?s.to:r.to;continue}else if(l===H.Wikilink)ei(r,t,i,a,o);else if(l===H.InlineMath)$r(r,t,i,a,o);else if(l===H.URL){let e=lr(i.slice(r.from,r.to)),n=e?a.mdLinkText.create({href:e}):a.mdLinkUri.create();U(o,r.from,r.to,[...t,n])}else{let e;l===H.Emphasis?e=`italic`:l===H.StrongEmphasis?e=`bold`:l===H.InlineCode?e=`code`:l===H.Strikethrough?e=`strike`:l===H.Highlight?e=`highlight`:l===H.Autolink&&(e=`autolink`);let n=e?[...t,a.mdPack.create({key:e})]:t,c=Ur.get(l),u=c?[...n,a[c].create()]:n;r.children.length===0?U(o,r.from,r.to,u):Kr(r.children,u,r.from,r.to,i,a,o,s)}c=r.to}c<r&&U(o,c,r,t)}function qr(e){let t=-1,n=-1,r=null,i=null,a=0;for(let o of e.children)o.type===H.LinkMark?(a++,a===1&&(t=o.to),a===2&&(n=o.from)):o.type===H.URL&&r===null?r=o:o.type===H.LinkTitle&&i===null&&(i=o);return{labelFrom:t,labelTo:n,urlNode:r,titleNode:i}}function Jr(e){let t=e.split(/[?#]/,1)[0],n=t.split(/[/\\]/).findLast(Boolean)??t;try{return decodeURIComponent(n)}catch{return n}}function Yr(e,t,n,r,i){let a=i?.resolveFileLink;if(!a)return;let{labelFrom:o,labelTo:s,urlNode:c,titleNode:l}=qr(e);if(o<0||s<0||!c)return;let u=n.slice(c.from,c.to);if(!u)return;let d=n.slice(o,s),f=l?Gr(n.slice(l.from,l.to)):``;if(!a({href:u,label:d,title:f}))return;let p=d||Jr(u);return[...t,r.mdFile.create({href:u,name:p,title:f})]}function Xr(e,t,n,r,i){let{labelTo:a,urlNode:o,titleNode:s}=qr(e),c=o?n.slice(o.from,o.to):``,l=s?Gr(n.slice(s.from,s.to)):``,u=c?r.mdLinkText.create({href:c}):null,d=e=>a>=0&&e<a&&u!==null,f=r.mdPack.create({key:`link`,data:{href:c,title:l}}),p=[...t,f],m=e.from;for(let t of e.children){if(t.from>m){let e=d(m)?[...p,u]:p;U(i,m,t.from,e)}let e=d(t.from)?[...p,u]:p;if(t.type===H.Wikilink){ei(t,e,n,r,i),m=t.to;continue}let a=Ur.get(t.type),o=a?[...e,r[a].create()]:e;t.children.length===0?U(i,t.from,t.to,o):Kr(t.children,o,t.from,t.to,n,r,i,void 0),m=t.to}m<e.to&&U(i,m,e.to,p)}function Zr(e,t,n){if(!t||t.type!==H.Comment||t.from!==e.to)return;let r=Ir(n.slice(t.from,t.to));if(r)return{magic:r,to:t.to}}function Qr(e,t,n,r,i,a){let o=e.children.find(e=>e.type===H.URL);if(!o){Xr(e,t,n,r,i);return}let s=e.children.filter(e=>e.type===H.LinkMark),c=e.children.find(e=>e.type===H.LinkTitle),l=n.slice(o.from,o.to),u=s.length>=2?n.slice(s[0].to,s[1].from):``,d=c?Gr(n.slice(c.from,c.to)):``,f=a?.magic.width??null,p=a?.magic.height??null,m=a?.to??e.to;U(i,e.from,m,[...t,r.mdImage.create({src:l,alt:u,title:d,width:f,height:p})])}function $r(e,t,n,r,i){let a=e.children.filter(e=>e.type===H.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 ei(e,t,n,r,i){let{target:a,display:o}=Br(n.slice(e.from,e.to));U(i,e.from,e.to,[...t,r.mdWikilink.create({target:a,display:o})])}function U(e,t,n,r){if(t>=n)return;let i=e.at(-1);if(i&&i[1]===t&&rr(i[2],r)){e[e.length-1]=[i[0],n,i[2]];return}e.push([t,n,r])}const ti=`inline-marks-applied`;let ni=0,ri=0;function ii(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 ai(e){let t=new WeakMap;function n(n,r,i){let a=t.get(n);if(a?ri++:(ni++,a=Wr(Uo(i),n.textContent,e),t.set(n,a)),r===0)return a;let o=[];for(let[e,t,n]of a)o.push([e+r,t+r,n]);return o}function r(e,t){let r=[];return e.doc.nodesBetween(t.from,t.to,(t,i)=>{if(t.type.spec.code)return!1;if(!t.isTextblock)return!0;if(t.childCount===0)return!1;let a=n(t,i+1,e.schema);return a.length>0&&r.push(...a),!1}),r}return new v({key:new y(`inline-mark`),appendTransaction(e,t,n){for(let t of e)if(t.getMeta(ti))return null;let i=r(n,ii(e,n));if(i.length===0)return null;let a=n.tr.step(new R(i));return a.setMeta(ti,!0),a.setMeta(`addToHistory`,!1),a},view(e){return e.dispatch(oi(e.state)),{}}})}function oi(e){return e.tr.setMeta(`inline-marks-trigger`,!0)}function si(e){return m(ai(e))}function ci(){return u({name:`mdImage`,inclusive:!1,attrs:{src:{default:``},alt:{default:``},title:{default:``},width:{default:null},height:{default:null}},toDOM:()=>[`span`,{class:`md-image`},0],parseDOM:[{tag:`span.md-image`}]})}function li(){return u({name:`mdMark`,inclusive:!1,toDOM:()=>[`span`,{class:`md-mark`},0],parseDOM:[{tag:`span.md-mark`}]})}function ui(){return u({name:`mdEm`,toDOM:()=>[`em`,0],parseDOM:[{tag:`em`}]})}function di(){return u({name:`mdStrong`,toDOM:()=>[`strong`,0],parseDOM:[{tag:`strong`}]})}function fi(){return u({name:`mdCode`,toDOM:()=>[`code`,0],parseDOM:[{tag:`code`}]})}function pi(){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 mi(){return u({name:`mdLinkUri`,inclusive:!1,toDOM:()=>[`span`,{class:`md-link-uri`},0],parseDOM:[{tag:`span.md-link-uri`}]})}function hi(){return u({name:`mdLinkTitle`,inclusive:!1,toDOM:()=>[`span`,{class:`md-link-title`},0],parseDOM:[{tag:`span.md-link-title`}]})}function gi(){return u({name:`mdDel`,toDOM:()=>[`del`,0],parseDOM:[{tag:`del`}]})}function _i(){return u({name:`mdHighlight`,toDOM:()=>[`mark`,0],parseDOM:[{tag:`mark`}]})}function vi(){return u({name:`mdTag`,toDOM:()=>[`span`,{class:`md-tag`},0],parseDOM:[{tag:`span.md-tag`}]})}function yi(){return u({name:`mdWikilink`,inclusive:!1,attrs:{target:{default:``},display:{default:``}},toDOM:()=>[`span`,{class:`md-wikilink`},0],parseDOM:[{tag:`span.md-wikilink`}]})}function bi(){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 xi(){return u({name:`mdMath`,inclusive:!1,attrs:{formula:{default:``}},toDOM:()=>[`span`,{class:`md-math`},0],parseDOM:[{tag:`span.md-math`}]})}function Si(){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 Ci(){return g(li(),ui(),di(),fi(),pi(),mi(),hi(),gi(),_i(),vi(),yi(),ci(),bi(),xi(),Si())}function wi(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 Ti(e,t=0){return wi(e,96,t)}const W={em:{node:H.Emphasis,delim:`*`},strong:{node:H.StrongEmphasis,delim:`**`},code:{node:H.InlineCode,delim:"`"},del:{node:H.Strikethrough,delim:`~~`},highlight:{node:H.Highlight,delim:`==`}},Ei=new Set([H.EmphasisMark,H.CodeMark,H.LinkMark,H.StrikethroughMark,H.HighlightMark]);function Di(e){return[e.children[0],e.children.at(-1)]}function Oi(e){let{type:t,children:n}=e;if(t===H.Emphasis||t===H.StrongEmphasis||t===H.Strikethrough||t===H.Highlight)return[n[0].to,n.at(-1).from];if(t===H.Link||t===H.Image){let e=n.find((e,t)=>t>0&&e.type===H.LinkMark);return e?[n[0].to,e.from]:null}return null}function ki(e,t,n){for(let r of e){if(r.to<=t||r.from>=n||t<=r.from&&r.to<=n)continue;let i=Oi(r);return i&&i[0]<=t&&n<=i[1]?ki(r.children,t,n):ki(e,Math.min(t,r.from),Math.max(n,r.to))}return[t,n]}function Ai(e,t,n){for(let r of e)if(!(r.to<=t||r.from>=n)&&(t>r.from||r.to>n))return Ai(e,Math.min(t,r.from),Math.max(n,r.to));return[t,n]}function ji(e,t,n){for(;t<n&&z(e.charCodeAt(t));)t++;for(;n>t&&z(e.charCodeAt(n-1));)n--;return[t,n]}function Mi(e,t,n,r){let i=V(B(e),e=>e.type===r.node||Ei.has(e.type));for(let r=t;r<n;r++)if(!z(e.charCodeAt(r))&&i.every(e=>!(e.from<=r&&r<e.to)))return!1;return!0}function Ni(e,t,n,r,i){let a=B(e),o=V(a,e=>e.type===r.node);return i?Ii(e,o,t,n):Pi(e,a,o,t,n,r)}function Pi(e,t,n,r,i,a){for(let e=0;e!==i-r;){e=i-r,[r,i]=ki(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]=Di(e);o.push({from:t.from,to:t.to,insert:``}),o.push({from:n.from,to:n.to,insert:``})}let[s,c]=Fi(e,r,i,o,a);return o.push({from:r,to:r,insert:s},{from:i,to:i,insert:c}),o}function Fi(e,t,n,r,i){if(i.node!==H.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(Ti(a)+1),s=a.startsWith("`")||a.endsWith("`")?` `:``;return[o+s,s+o]}function Ii(e,t,n,r){let i=[];for(let a of t){if(a.to<=n||a.from>=r)continue;let[t,o]=Di(a),s=Math.max(n,t.to),c=Math.min(r,o.from);for(s>=c&&([s,c]=[t.to,o.from]),[s,c]=Ai(a.children.slice(1,-1),s,c);s>t.to&&z(e.charCodeAt(s-1));)s--;for(;c<o.from&&z(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 Li(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=B(e),o=V(a,e=>e.type===n.node).findLast(e=>e.from<=t&&t<=e.to);if(o){let[e,n]=Di(o);return{kind:`move`,pos:t===o.from?e.to:t===o.to?n.from:o.to}}return Ri(a,t)||e[t-1]===r[0]||e[t]===r[0]?null:{kind:`insert`,pos:t}}function Ri(e,t){for(let n of e)if(n.from<t&&t<n.to){let e=Oi(n);return!e||t<e[0]||t>e[1]||Ri(n.children,t)}return!1}function G(e){return(t,n)=>{if(t.selection.empty)return zi(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]=ji(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:Mi(a,c,l,e)}),!1});let c=s.length>0&&s.every(e=>e.active),l=s.filter(e=>c||!e.active).flatMap(t=>Ni(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(x.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 zi(e,t,n){let{$from:r}=t.selection,i=r.parent;if(!i.isTextblock||i.type.spec.code)return!1;let a=Li(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(x.create(o.doc,i+a.pos)),a.kind===`insert`&&(o.insertText(e.delim+e.delim,i+a.pos),o.setSelection(x.create(o.doc,i+a.pos+e.delim.length))),n(o.scrollIntoView())}return!0}function Bi(){return s({toggleEm:()=>G(W.em),toggleStrong:()=>G(W.strong),toggleCode:()=>G(W.code),toggleDel:()=>G(W.del),toggleHighlight:()=>G(W.highlight)})}function Vi(){return l({"Mod-b":G(W.strong),"Mod-i":G(W.em),"Mod-e":G(W.code),"Mod-Shift-x":G(W.del),"Mod-Shift-h":G(W.highlight)})}function Hi(){return g(Bi(),Vi())}function Ui(e,t,n){let r;return e.doc.nodesBetween(t.from,t.to,(e,i)=>(e.isText&&e.marks.some(e=>e.type.name===n)&&(r={from:Math.max(i,t.from),to:Math.min(i+e.nodeSize,t.to)}),!0)),r}function K(e,t){let n=T(e,t,`mdLinkText`),r=T(e,t,`mdPack`,{key:`link`})??T(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`?Ui(e,t,`mdLinkText`)??{from:i.from+1,to:i.to-1}:t,href:o,title:``}}let s=Ui(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 Wi(e){let t=e.trim();return t?lr(t)??t:``}function Gi(e,t){return e+(t?` "${t.replaceAll(/(["\\])/g,String.raw`\$1`)}"`:``)}function Ki(e){let{selection:t}=e,{$from:n,$to:r,empty:i}=t;if(i||!n.sameParent(r)||!h(t))return;let a=n.parent;if(!a.isTextblock||a.type.spec.code)return;let o=n.start(),[s,c]=ji(a.textContent,n.parentOffset,r.parentOffset);if(!(s>=c))return{from:o+s,to:o+c}}function qi({href:e,title:t,wrapText:n=!0}={}){return(r,i)=>{let a=Ki(r);if(!a)return!1;if(i){let{from:o,to:s}=a,c=r.tr,l=`](${Gi(Wi(e??``),t??``)})`;c.insertText(l,s).insertText(`[`,o);let u=s+1+l.length;c.setSelection(n?x.create(c.doc,o,u):x.create(c.doc,u)),c.scrollIntoView(),i(c)}return!0}}function Ji(e){return(t,n)=>{let r=K(t,t.selection.from);if(!r?.dest)return!1;let i=Gi(Wi(e.href??r.href),e.title??r.title);return n&&n(t.tr.insertText(i,r.dest.from,r.dest.to).scrollIntoView()),!0}}function Yi(){return(e,t)=>{let n=K(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 Xi(){return s({insertLink:qi,updateLink:Ji,removeLink:Yi})}function Zi(e){return(t,n,r)=>{let i=K(t,t.selection.from);if(i){if(n&&r){let{unit:{from:a,to:o}}=i;n(t.tr.setSelection(x.create(t.doc,a,o)).scrollIntoView()),r.focus(),e({from:a,to:o,link:i})}return!0}let a=Ki(t);if(a){if(n&&r){let{from:i,to:o}=a;n(t.tr.setSelection(x.create(t.doc,i,o)).scrollIntoView()),r.focus(),e({from:i,to:o,link:void 0})}return!0}return!1}}function Qi(e){return l({"Mod-k":Zi(e)})}function $i(e){return e===`)`||e===`*`||e===`+`?e:void 0}function ea(e){return e===`X`?e:void 0}function ta(e){return ia(e)?String(e):void 0}function na(){return f({type:`list`,attr:`marker`,default:null,splittable:!0,toDOM:e=>{let t=$i(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 ra(){return f({type:`list`,attr:`taskMarker`,default:null,splittable:!0,toDOM:e=>{let t=ea(e);return t==null?null:[`data-list-task-marker`,t]},parseDOM:e=>e.getAttribute(`data-list-task-marker`)===`X`?`X`:null})}function ia(e){return e===2||e===3||e===4}function aa(){return f({type:`list`,attr:`markerGap`,default:1,splittable:!0,toDOM:e=>{let t=ta(e);return t==null?null:[`data-list-marker-gap`,t]},parseDOM:e=>{let t=Number.parseInt(e.getAttribute(`data-list-marker-gap`)??``,10);return ia(t)?t:1}})}function oa(e){let t=e.attrs;return{...st(e),"data-list-marker":$i(t.marker),"data-list-task-marker":ea(t.taskMarker),"data-list-marker-gap":ta(t.markerGap)}}function sa(){return o({serializeFragmentWrapper:e=>(...t)=>ca(ut(e(...t))),serializeNodeWrapper:e=>(...t)=>{let n=e(...t);return _e(n)?ca(ut(n)):n},nodesFromSchemaWrapper:e=>(...t)=>({...e(...t),list:e=>dt({node:e,nativeList:!0,getAttributes:oa})})})}function ca(e){_e(e)&&la(e);for(let t of e.children)ca(t);return e}function la(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=ct(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 ua=[pt(/^\s?([*-])\s$/,{kind:`bullet`,collapsed:!1}),pt(/^\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}}),pt(/^\s?\[([\sX]?)\]\s$/i,({match:e})=>({kind:`task`,checked:[`x`,`X`].includes(e[1]),collapsed:!1})),pt(/^\s?\+\s$/,{kind:`task`,marker:`+`,checked:!1,collapsed:!1})];function da(){return g(ua.map(Ne))}function fa(){return w({kind:`task`,marker:`+`})}function pa(){return w({kind:`task`,marker:null})}function ma(e){let{$from:t}=e.selection;for(let e=t.depth;e>0;e--){let n=t.node(e);if(n.type.name===`list`)return n.attrs}return null}function ha(){return(e,t,n)=>{let r=ma(e);return(r?.kind===`task`?r.marker===`+`?pa():fa():w({kind:`task`,marker:null,checked:!1}))(e,t,n)}}function ga(){return s({cycleCheckableList:ha,wrapInCircleTask:fa,wrapInSquareTask:pa})}function _a(){return(e,t,n)=>{let r=ma(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},w(a)(e,t,n)}}function va(){return(e,t,n)=>{let r=ma(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},w(a)(e,t,n)}}function ya(e){return e.type.name===`list`&&e.attrs.kind===`bullet`&&e.childCount>=2&&e.firstChild?.type!==e.type}const ba=e=>{let t=e.attrs;return t.kind===`task`?{...t,checked:!t.checked}:ya(e)?{...t,collapsed:!t.collapsed}:t};function xa(){return m(()=>[new v({props:{handleDOMEvents:{mousedown:(e,t)=>lt({view:e,event:t,onListClick:ba})}}}),it(),new v({props:{transformCopied:ft}}),at()])}function Sa(){return s({toggleListCollapsed:()=>ot({isToggleable:ya})})}function Ca(){return l({"Mod-Enter":_a(),"Mod-Shift-Enter":va(),"Mod-.":ot({isToggleable:ya}),"Mod-Shift-7":rt({kind:`ordered`,collapsed:!1}),"Mod-Shift-8":rt({kind:`bullet`,collapsed:!1}),"Mod-Shift-9":rt({kind:`task`,checked:!1,collapsed:!1})})}function wa(){return g(tt(),xa(),et(),Qe(),sa(),$e(),da(),Ca(),na(),ra(),aa(),ga(),Sa())}let Ta;function Ea(){return Ta??=import(`katex`).then(e=>e.render),Ta}function Da(e,t,n,r){try{e(n,t,{displayMode:r,throwOnError:!1,output:`mathml`})}catch(e){t.textContent=String(e)}}var Oa=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=x.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;Ea().then(t=>{e===this.#r&&Da(t,this.#n,e,!1)})}};function ka(){return d({name:`mdMath`,constructor:(e,t)=>new Oa(e,t)})}function Aa(e){return e===`left`||e===`center`||e===`right`?e:null}function ja(){return f({type:`tableCell`,attr:`align`,default:null,toDOM:e=>e?[`data-align`,e]:null,parseDOM:e=>Aa(e.getAttribute(`data-align`))})}function Ma(){return f({type:`tableHeaderCell`,attr:`align`,default:null,toDOM:e=>e?[`data-align`,e]:null,parseDOM:e=>Aa(e.getAttribute(`data-align`))})}function Na(e){for(let t=0;t<e.childCount;t++){let n=e.child(t);for(let e=0;e<n.childCount;e++)if(n.child(e).type.name===`tableHeaderCell`)return t}return 0}function Pa(e){return e.child(Na(e))}function Fa(e,t){return t>=e.childCount?null:e.child(t).attrs.align??null}function Ia(e,t,n){if(e.childCount===0)return;let r=Pa(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=Fa(r,e);(t.attrs.align??null)!==i&&n.setNodeMarkup(o,void 0,{...t.attrs,align:i}),o+=t.nodeSize}i+=a.nodeSize}}function La(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 Ra(){return new v({key:new y(`table-align-sync`),appendTransaction(e,t,n){if(!e.some(e=>e.docChanged))return;let r=La(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)=>e.type.name===`table`?(s??=n.tr,Ia(e,t,s),!1):!0),s?.docChanged?s:void 0}})}function za(){return m(Ra())}function Ba(e){let{selection:t}=e;if(St(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 Va(e){return(t,n)=>{let r=Ba(t);if(!r||r.table.childCount===0)return!1;if(n){let{table:i,tablePos:a,firstColumn:o,lastColumn:s}=r,c=Na(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 Ha(e){let t=Ba(e);if(!(!t||t.table.childCount===0))return Fa(Pa(t.table),t.lastColumn)??void 0}function Ua(){return s({setTableColumnAlign:Va})}function Wa(){return g(ja(),Ma(),za(),Ua())}function Ga(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 Ka=`paragraph`;function qa(){return g(p({name:`tableCell`,content:Ka}),p({name:`tableHeaderCell`,content:Ka}))}const Ja=(e,t)=>{let{selection:n}=e;return!St(n)||!n.isColSelection()||!n.isRowSelection()?!1:xt(e,t)};function Ya(){return _(l({Backspace:Ja,Delete:Ja}),t.high)}function Xa(){return g(bt(),yt(),mt(),vt(),qa(),Wa(),_t({allowTableNodeSelection:!0}),ht(),gt(),Ya())}function Za(e){let{selection:t}=e,{$from:n,$to:r}=t;if(oe(t)&&n.depth===0||n.depth>0&&r.depth>0&&n.index(0)===r.index(0))return n.index(0)}function Qa(e){return(t,n)=>{if(Ga(t))return!1;let r=Za(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=oe(a)?Te.create(u.doc,a.from+d):x.create(u.doc,a.anchor+d,a.head+d);u.setSelection(f),n(u.scrollIntoView())}return!0}}function $a(e){return(t,n,r)=>nt(e)(t,n,r)||Qa(e===`up`?-1:1)(t,n,r)}function eo(){return l({"Alt-ArrowUp":$a(`up`),"Alt-ArrowDown":$a(`down`)})}function to(){return p({name:`paragraph`,content:`inline*`,group:`block`,whitespace:`pre`,parseDOM:[{tag:`p`}],toDOM(){return[`p`,0]}})}function no(){return g(_(to(),t.highest),Ct(),wt())}const q=new y(`meowdownPendingReplacement`);function J(e){return q.getState(e)?.pending??null}function ro(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 io=new v({key:q,state:{init:()=>({pending:null}),apply:(e,t)=>{let n=e.getMeta(q);if(n)return ro(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=J(e);return!t||t.from>=t.to?null:S.create(e.doc,[Ee.inline(t.from,t.to,{class:`md-pending-replacement`})])}}});function ao(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(q,{type:`start`,from:r,to:i,mode:a})),!0)}}function oo(e){return(t,n)=>J(t)?(n?.(t.tr.setMeta(q,{type:`append`,text:e})),!0):!1}function so(){return(e,t)=>J(e)?(t?.(e.tr.setMeta(q,{type:`discard`})),!0):!1}function co(e={}){return(t,n)=>{let r=J(t);if(!r||!r.text.trim())return!1;if(n){let i=e.mode??r.mode,a=Go(t.schema),o=Z(r.text,{nodes:a}),s=t.tr;if(s.setMeta(q,{type:`accept`}),i===`append`){let e=t.doc.resolve(r.to).after(1);s.insert(e,o.content),s.setSelection(x.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?.type.name===`paragraph`&&e.sameParent(n)&&e.parent.isTextblock?(s.replaceWith(r.from,r.to,i.content),s.setSelection(x.near(s.doc.resolve(r.from+i.content.size),-1))):(s.replaceRange(r.from,r.to,new C(o.content,0,0)),s.setSelection(x.near(s.doc.resolve(s.mapping.map(r.to)),-1)))}n(s.scrollIntoView())}return!0}}function lo(){return s({startPendingReplacement:ao,appendPendingReplacementText:oo,acceptPendingReplacement:co,discardPendingReplacement:so})}function uo(){return l({"Mod-Enter":co(),Escape:so()})}function fo(){return g(m(io),lo(),uo())}function po(e){return m(new v({view:()=>({update:(t,n)=>{let r=q.getState(n),i=q.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 mo(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 mo(r)?void 0:r}function ho(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 go(e){let t=e.state,n=t.selection.head,r=F(t,n),i=I(t,n),a=r==null,o=[[n,a],[n,!a]];r!=null&&o.push([r.from,!0]),i!=null&&o.push([i.to,!1]);for(let[t,n]of o){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 _o(e){let t=e.state,n=t.selection.head;for(let r of Ht){let i=T(t,n,r);if(i==null||i.from!==n&&i.to!==n)continue;let a=vo(e,i.from+1);if(a==null)continue;let o=a.getBoundingClientRect();if(o.height!==0)return{left:i.to===n?o.right:o.left,top:o.top,height:o.height}}}function vo(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 yo(e){return go(e)??_o(e)}const bo=new y(`meowdown-scroll-to-selection`);function xo(e){let t=e.state.selection;if(!h(t)||Y(e,t.head,1)!=null)return!1;let n=yo(e);if(n==null)return!1;let r=e.domAtPos(t.head).node;return To(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 So(e){let t=e.assignedSlot??e.parentNode;return t?.nodeType===11?t.host:t}function Co(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 wo(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 To(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=So(e);continue}let n=e,o=n===a.body,s=o?Co(a):wo(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:So(n)}}function Eo(){return m(new v({key:bo,props:{handleScrollToSelection:xo}}))}function Do(e,t){return(n,r)=>{let i=e<0?b.atStart(n.doc):b.atEnd(n.doc),a=t?x.between(n.selection.$anchor,i.$head):i;return n.selection.eq(a)||r?.(n.tr.setSelection(a).scrollIntoView()),!0}}function Oo(){return l({"Meta-ArrowUp":Do(-1,!1),"Meta-ArrowDown":Do(1,!1),"Shift-Meta-ArrowUp":Do(-1,!0),"Shift-Meta-ArrowDown":Do(1,!0)})}function ko(e){e.offsetWidth}const Ao=new y(`meowdown-virtual-caret`),jo=[`md-virtual-caret-blink`,`md-virtual-caret-blink2`];function Mo(e){let t=e.height*.19999999999999996;return{left:e.left,top:e.top-t/2,height:e.height+t}}function No(e){let t=ho(e)??go(e);return t==null?_o(e):Mo(t)}function Po(e,t){return e==null||t==null?e===t:e.left===t.left&&e.top===t.top&&e.height===t.height}var Fo=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=jo[this.#s]}#l=()=>{let e=this.#e;if(e.isDestroyed)return;let t=e.state,n=t.selection,r=h(n)&&n.empty?No(e):void 0,i=r!=null&&D(t)===`hide`?Vn(t,n.head):void 0;if(Po(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`;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`,a&&(ko(this.#n),this.#n.style.transitionProperty=``)}};function Io(){return m(new v({key:Ao,view:e=>new Fo(e)}))}function Lo(e){return g(no(),be(),Tn(),Ce(),ye(),wa(),jn(),Xa(),gn(),$n(),er(),Ci(),sn(),wn(),eo(),Oo(),si(e),Hi(),Xi(),Hr(),ka(),Rt(e.markMode??`focus`),Io(),Eo(),Zn(),en({marks:Ht.map(e=>({name:e,modes:[`hide`,`focus`,`show`]}))}),a(),i(),c(),xe(),we(),Se(),Sn(),fo())}function Ro(e={}){return Lo(e)}const zo=ve(()=>{let e=Ro().schema;if(e==null)throw Error(`Unexpected empty schema`);return e}),Bo=ve(()=>r(zo())),Vo=ve(()=>n(zo())),Ho=`meowdown_mark_builders`;function Uo(e){let t=e.cached[Ho];if(t)return t;let r=n(e);return e.cached[Ho]=r,r}const Wo=`meowdown_node_builders`;function Go(e){let t=e.cached[Wo];if(t)return t;let n=r(e);return e.cached[Wo]=n,n}function Z(e,t={}){let{nodes:n=Bo(),frontmatter:r=!1}=t,i,a=e;if(r){let[t,n]=qo(e);i=t,n&&(a=e.slice(n))}let o=Jo(n,Mr.parse(a).cursor(),a);return n.doc(i===void 0?{}:{frontmatter:i},o)}const Ko=/^---[ \t]*\r?\n([\s\S]*?\n)?---[ \t]*(?:\r?\n|$)/;function qo(e){let t=Ko.exec(e);return t?[(t[1]??``).replace(/\r?\n$/,``),t[0].length]:[]}function Jo(e,t,n){let r=[];if(!t.firstChild())return r;let i;do i!=null&&Yo(r,e,n,i,t.from),i=t.to,r.push(...Xo(e,t,n));while(t.nextSibling());return t.parent(),r}function Yo(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 Xo(e,t,n){switch(t.type.id){case H.ATXHeading1:return[Q(e,t,n,1,!1)];case H.ATXHeading2:return[Q(e,t,n,2,!1)];case H.ATXHeading3:return[Q(e,t,n,3,!1)];case H.ATXHeading4:return[Q(e,t,n,4,!1)];case H.ATXHeading5:return[Q(e,t,n,5,!1)];case H.ATXHeading6:return[Q(e,t,n,6,!1)];case H.SetextHeading1:return[Q(e,t,n,1,!0)];case H.SetextHeading2:return[Q(e,t,n,2,!0)];case H.Paragraph:return[ns(e,t,n)];case H.CommentBlock:return[rs(e,t,n)];case H.HTMLBlock:case H.ProcessingInstructionBlock:return[ns(e,t,n)];case H.Blockquote:return[is(e,t,n)];case H.BulletList:return as(e,t,n,`bullet`);case H.OrderedList:return as(e,t,n,`ordered`);case H.FencedCode:case H.CodeBlock:return[ss(e,t,n)];case H.BlockMath:return[cs(e,t,n)];case H.HorizontalRule:{let r=n.slice(t.from,t.to).trimEnd();return[e.horizontalRule({marker:r===`---`?null:r})]}case H.Table:return[ls(e,t,n)];case H.Task:return[ns(e,t,n)];default:return n.slice(t.from,t.to).trim()===``?[]:(console.warn(`[meowdown] unsupported lezer block "${t.type.name}"`),[ns(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===H.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===H.HeaderMark&&n>o&&(s=n,c=n,l=r),t.parent()}let u=es(n.slice(o,s),$(n,o)).trim(),d=i?Zo(n,c,l)||1:null,f=!i&&c>=0&&Qo(n,c,l)||null;return e.heading({level:r,setextUnderline:d,closingHashes:f},u)}function Zo(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 Qo(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(`
|
|
3
|
+
`,t-1)+1,r=0;for(let i=n;i<t;i++)r+=e.charCodeAt(i)===9?4-r%4:1;return r}function $o(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 es(e,t){return t===0||!e.includes(`
|
|
4
4
|
`)?e:e.split(`
|
|
5
|
-
`).map((e,n)=>n===0?e
|
|
6
|
-
`)}function
|
|
5
|
+
`).map((e,n)=>n===0?e:$o(e,t)).join(`
|
|
6
|
+
`)}function ts(e,t,n){return e.paragraph(es(t,n))}function ns(e,t,n){let r=t.from,i=t.to,a=$(n,r);if(t.firstChild()){let o=``,s=r;do t.type.id===H.QuoteMark&&(o+=n.slice(s,t.from),s=t.to,z(n.charCodeAt(s))&&(s+=1));while(t.nextSibling());return t.parent(),o+=n.slice(s,i),ts(e,o,a)}return ts(e,n.slice(r,i),a)}function rs(e,t,n){let r=$(n,t.from),i=es(n.slice(t.from,t.to),r);return e.htmlComment({content:i})}function is(e,t,n){let r=[];if(t.firstChild()){let i;do{if(t.type.id===H.QuoteMark)continue;i!=null&&Yo(r,e,n,i,t.from),i=t.to,r.push(...Xo(e,t,n))}while(t.nextSibling());t.parent()}return e.blockquote(r)}function as(e,t,n,r){let i=[];if(t.firstChild()){do t.type.id===H.ListItem&&i.push(os(e,t,n,r));while(t.nextSibling());t.parent()}return i}function os(e,t,n,r){let i=[],a,o,s,c,l,u;if(t.firstChild()){do{if(t.type.id!==H.ListMark&&u==null&&(u=$(n,t.from)),t.type.id===H.ListMark){if(r===`ordered`){let e=n.charCodeAt(t.to-1);e===41?c=`)`:e===46&&(c=`.`);let r=Number.parseInt(n.slice(t.from,t.to),10);s=Number.isFinite(r)?r:1}else{let e=n.charCodeAt(t.from);c=e===42?`*`:e===43?`+`:`-`}l=$(n,t.to);continue}if(r===`bullet`&&t.type.id===H.Task){let r=t.from,s=t.to;if(a=!1,t.firstChild()){if(t.type.id===H.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()}z(n.charCodeAt(r))&&(r+=1);let c=n.slice(r,s);i.push(ts(e,c,$(n,r)));continue}i.push(...Xo(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===`+`;return e.list({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},i)}function ss(e,t,n){let r=t.type.id===H.CodeBlock,i=``,a=``,o=r?`indented`:null,s=null,c=!1;if(t.firstChild()){do switch(t.type.id){case H.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 H.CodeInfo:i=n.slice(t.from,t.to);break;case H.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 cs(e,t,n){let r=``;if(t.firstChild()){do t.type.id===H.CodeText&&(r+=n.slice(t.from,t.to));while(t.nextSibling());t.parent()}return e.codeBlock({language:`math`,fenceStyle:`dollar`,fenceLength:null},r)}function ls(e,t,n){let r=[];if(t.firstChild()){do t.type.id===H.TableDelimiter&&(r=us(n.slice(t.from,t.to)));while(t.nextSibling());t.parent()}let i=[];if(t.firstChild()){do{let a=t.type.id;a===H.TableHeader?i.push(ds(e,t,n,!0,r)):a===H.TableRow&&i.push(ds(e,t,n,!1,r))}while(t.nextSibling());t.parent()}return e.table(i)}function us(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 ds(e,t,n,r,i){let a=i.length,o=Array(a).fill(``);if(t.firstChild()){let e=t.type.id===H.TableDelimiter,r=0;do if(t.type.id===H.TableDelimiter)r++;else if(t.type.id===H.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 fs(e,t={}){let n=new gs;return t.frontmatter&&ps(e.attrs.frontmatter,n),_s(e,n),n.finish()}function ps(e,t){e!==null&&(t.write(`---`),t.write(`
|
|
7
7
|
`),e!==``&&(t.write(e),t.write(`
|
|
8
|
-
`)),t.write(`---`),t.closeBlock())}const
|
|
9
|
-
`+i.repeat(Math.max(1,r))),t.closeBlock();return}t.write(
|
|
8
|
+
`)),t.write(`---`),t.closeBlock())}const ms=[``,`# `,`## `,`### `,`#### `,`##### `,`###### `];function hs(e,t){let n=e.attrs,r=n.setextUnderline;if(r!=null&&e.content.size>0&&n.level<=2){xs(e,t);let i=n.level===1?`=`:`-`;t.write(`
|
|
9
|
+
`+i.repeat(Math.max(1,r))),t.closeBlock();return}t.write(ms[n.level]??`# `),xs(e,t);let i=n.closingHashes;i!=null&&i>0&&t.write(` `+`#`.repeat(i)),t.closeBlock()}var gs=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(`
|
|
10
10
|
`)){this.parts.push(e);return}let t=e.split(`
|
|
11
11
|
`);for(let e=0;e<t.length;e++)e>0&&this.parts.push(`
|
|
12
12
|
`,this.linePrefix),t[e]!==``&&this.parts.push(t[e])}closeEmptyBlock(){if(!this.atLineStart||this.pendingFirst!==null){this.closeBlock();return}this.parts.length!==0&&(this.emitDeferredBlankLine(),this.deferredBlankPrefix=this.linePrefix)}closeBlock(){this.atLineStart&&this.pendingFirst!==null&&(this.emitDeferredBlankLine(),this.parts.push(this.pendingFirst.trimEnd()),this.pendingFirst=null,this.atLineStart=!1),this.atLineStart||this.parts.push(`
|
|
13
13
|
`),this.atLineStart=!0,this.deferredBlankPrefix=this.linePrefix}suppressBlank(){this.deferredBlankPrefix=null}withPrefix(e,t,n){let r=this.linePrefix,i=this.pendingFirst;if(this.linePrefix=r+e,t!==null){let e=i??r;this.pendingFirst=e+t}n(),this.linePrefix=r,this.pendingFirst=t===null?i:null}finish(){return this.parts.join(``).replace(/\s+$/,``)+`
|
|
14
14
|
`}emitDeferredBlankLine(){let e=this.deferredBlankPrefix;e!==null&&(this.parts.push(e.trimEnd(),`
|
|
15
|
-
`),this.deferredBlankPrefix=null)}};function
|
|
15
|
+
`),this.deferredBlankPrefix=null)}};function _s(e,t){switch(e.type.name){case`doc`:vs(e,t);return;case`paragraph`:if(e.childCount===0){t.closeEmptyBlock();return}xs(e,t),t.closeBlock();return;case`heading`:hs(e,t);return;case`blockquote`:t.withPrefix(`> `,`> `,()=>vs(e,t)),t.closeBlock();return;case`list`:Ss(e,t,bs(e));return;case`codeBlock`:Cs(e,t);return;case`horizontalRule`:{let{marker:n}=e.attrs;t.write(n||`---`),t.closeBlock();return}case`htmlComment`:{let{content:n}=e.attrs;t.write(n),t.closeBlock();return}case`table`:Es(e,t);return;case`text`:e.text&&t.write(e.text);return}}function vs(e,t,n=!1){let r=e.childCount,i=0;for(;i<r;){let a=e.child(i);if(a.type.name!==`list`){n&&i>0&&t.suppressBlank(),_s(a,t),i++;continue}let o=i+1;for(;o<r&&e.child(o).type.name===`list`;)o++;let s=ys(e,i,o);for(let r=i;r<o;r++)(r===i?n&&i>0:s)&&t.suppressBlank(),Ss(e.child(r),t,s);i=o}}function ys(e,t,n){for(let r=t;r<n;r++)if(!bs(e.child(r)))return!1;return!0}function bs(e){let t=e.childCount;for(let n=0;n<t;n++){let t=e.child(n);if(t.type.name!==`list`&&!(t.type.name===`paragraph`&&n===0))return!1}return!0}function xs(e,t){let n=e.childCount;for(let r=0;r<n;r++){let n=e.child(r);n.isText&&n.text&&t.write(n.text)}}function Ss(e,t,n){let{kind:r,marker:i,order:a,taskMarker:o,collapsed:s,markerGap:c,checked:l}=e.attrs,u=r===`task`?i===`+`?`+`:i===`*`?`*`:`-`:s?`+`:i===`*`?`*`:`-`,d=i===`)`?`)`:`.`,f=o===`X`?`X`:`x`,p=Math.min(Math.max(c??1,1),4),m=`${r===`ordered`?`${a??1}${d}`:u}${` `.repeat(p)}`,ee=r===`task`?`${m}[${l?f:` `}] `:m,te=` `.repeat(m.length);t.withPrefix(te,ee,()=>vs(e,t,n)),t.closeBlock()}function Cs(e,t){let n=e.attrs,r=n.language||``,i=e.textContent;if(n.fenceStyle===`indented`&&!r){let e=ws(i);if(e!=null){t.write(e),t.closeBlock();return}}if(n.fenceStyle===`dollar`&&r===`math`&&!Ts(i)){t.write(`$$`),t.write(`
|
|
16
16
|
`),i&&(t.write(i),t.write(`
|
|
17
|
-
`)),t.write(`$$`),t.closeBlock();return}let a=n.fenceStyle===`tilde`,o=
|
|
17
|
+
`)),t.write(`$$`),t.closeBlock();return}let a=n.fenceStyle===`tilde`,o=wi(i,a?126:96,2)+1,s=(a?`~`:"`").repeat(Math.max(n.fenceLength??0,o));t.write(s),r&&t.write(r),t.write(`
|
|
18
18
|
`),i&&(t.write(i),t.write(`
|
|
19
|
-
`)),t.write(s),t.closeBlock()}function
|
|
19
|
+
`)),t.write(s),t.closeBlock()}function ws(e){if(e===``)return;let t=e.split(`
|
|
20
20
|
`);if(!(t[0]===``||t[t.length-1]===``)){for(let e=0;e<t.length;e++)t[e]!==``&&(t[e]=` ${t[e]}`);return t.join(`
|
|
21
|
-
`)}}function
|
|
22
|
-
`).some(e=>e.trim()===`$$`)}function
|
|
21
|
+
`)}}function Ts(e){return e.split(`
|
|
22
|
+
`).some(e=>e.trim()===`$$`)}function Es(e,t){let n=e.childCount;if(n===0)return;let r=[],i=0,a=-1;for(let t=0;t<n;t++){let n=e.child(t),o=[],s=!1;for(let e=0;e<n.childCount;e++){let t=n.child(e);t.type.name===`tableHeaderCell`&&(s=!0),o.push(ks(t))}s&&a<0&&(a=t),o.length>i&&(i=o.length),r.push(o)}if(i===0)return;let o=e.child(a>=0?a:0),s=[];for(let e=0;e<i;e++){let t=e<o.childCount?o.child(e):void 0,n=t?t.attrs.align:void 0;s.push(Ds(n))}let c=`| `+s.join(` | `)+` |`,l=a>=0?r[a]:Array(i).fill(``);t.write(Os(l,i)),t.write(`
|
|
23
23
|
`),t.write(c);for(let e=0;e<n;e++)e!==a&&(t.write(`
|
|
24
|
-
`),t.write(
|
|
24
|
+
`),t.write(Os(r[e],i)));t.closeBlock()}function Ds(e){switch(e){case`left`:return`:--`;case`center`:return`:-:`;case`right`:return`--:`;default:return`---`}}function Os(e,t){let n=`|`;for(let r=0;r<t;r++)n+=` `+(e[r]??``)+` |`;return n}function ks(e){let t=e.textContent.trim();return!t.includes(`|`)&&!t.includes(`
|
|
25
25
|
`)?t:t.replaceAll(`|`,String.raw`\|`).replaceAll(`
|
|
26
|
-
`,` `)}function
|
|
27
|
-
`).filter(e=>!
|
|
28
|
-
`)}const tc=new x(`meowdown-embed-paste`);function nc(e){let t=e.trim();if(!(!t||/\s/.test(t)))return $s(t)?t:void 0}function rc(e,t){let{from:n,to:r}=e.state.selection;e.dispatch(Et(e.state.tr.insertText(t,n,r)));let i=e.state.tr.insertText(``,n,n+t.length);e.dispatch(Et(i))}function ic(){return h(new b({key:tc,props:{handlePaste:(e,t,n)=>{let r=e.state.selection.$from.parent;if(!r.inlineContent||r.type.spec.code)return!1;let i=ec(t,n);if(!i)return!1;let a=nc(i);return a?(rc(e,a),!0):!1}}}))}const ac=new x(`meowdown-exit-boundary`);function oc(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&&Te.findFrom(a,t))}function sc(e,t){let{state:n}=e,{selection:r}=n;return g(r)&&!r.empty||re(r)||r.$from.parent.inlineContent&&!e.endOfTextblock(t<0?`up`:`down`)?!0:oc(n,t)}function cc(e){return new b({key:ac,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||sc(t,r)||e({direction:r<0?`up`:`down`,event:n})===!1)}}})}function lc(e){return v(h(cc(e)),t.low)}function uc(e){return!!e.type?.startsWith(`image/`)}function dc(e,t){return uc(e)?``:`[${mc(e.name)}](${t})`}function fc(e,t){return!e||!t.onFilePaste?[]:Array.from(e.files)}const pc=e=>{console.error(`[meowdown] failed to save pasted file:`,e)};function mc(e){return e.replaceAll(/[\\[\]]/g,String.raw`\$&`)}async function hc(e,t,n,r){let{onFilePaste:i}=n;if(!i)return;let a=n.onFileSaveError??pc,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=dc(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 gc(e){return new b({key:new x(`file-paste`),props:{handlePaste:(t,n)=>{let r=fc(n.clipboardData,e);return r.length===0?!1:(hc(t,r,e),!0)},handleDrop:(t,n)=>{let r=fc(n.dataTransfer,e);return r.length===0?!1:(hc(t,r,e,t.posAtCoords({left:n.clientX,top:n.clientY})?.pos),!0)}}})}function _c(e={}){return v(h(gc(e)),t.high)}const vc=new x(`meowdown-file-click`);function yc(e,t){let n=T(e,t,`mdFile`);if(!n)return;let{href:r,name:i}=n.mark.attrs;return{href:r,name:i}}function bc(e){return h(new b({key:vc,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=yc(t.state,t.posAtDOM(a,0));return o?(e({href:o.href,name:o.name,event:r}),!0):!1}}}))}const xc=[`KB`,`MB`,`GB`,`TB`];function Sc(e){let t=e,n=`B`;for(let e of xc){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 Cc=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 wc(e){let t=e.split(/[?#]/,1)[0],n=t.lastIndexOf(`.`);if(n<0)return`generic`;let r=t.slice(n+1).toLowerCase();return Cc.get(r)??`generic`}const Tc=`http://www.w3.org/2000/svg`;function Ec(){let e=document.createElementNS(Tc,`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(Tc,`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 Dc=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=wc(this.#a.href),this.#n.title=this.#a.name,this.#e.appendChild(this.#n),this.#n.appendChild(Ec()),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=Sc(n))}};function Oc(e={}){return f({name:`mdFile`,constructor:t=>new Dc(t,e)})}function kc(e){return h(new b({key:e.key,props:{handleClick:(t,n,r)=>{if(!r.target?.closest?.(e.selector))return!1;let i=e.findPayloadAt(t.state,n);return i==null?!1:(e.preventDefault&&r.preventDefault(),e.onClick(i,r),!0)}}}))}const Ac=new x(`meowdown-tag-click`);function jc(e,t){let n=T(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 Mc(e){return kc({key:Ac,selector:`.md-tag`,preventDefault:!1,findPayloadAt:(e,t)=>jc(e,t)?.tag,onClick:(t,n)=>e({tag:t,event:n})})}const Nc=new x(`meowdown-wikilink-click`);function Pc(e,t){let n=T(e,t,`mdWikilink`);if(!n)return;let{target:r}=n.mark.attrs;return{from:n.from,to:n.to,target:r}}function Fc(e){return kc({key:Nc,selector:`.md-wikilink-view-preview`,preventDefault:!1,findPayloadAt:(e,t)=>Pc(e,t)?.target,onClick:(t,n)=>e({target:t,event:n})})}const Ic=new x(`meowdown-follow-link`);function Lc(e){return e.key!==`Enter`||e.shiftKey||e.altKey?!1:ie?e.metaKey&&!e.ctrlKey:e.ctrlKey&&!e.metaKey}function Rc(e){return new b({key:Ic,props:{handleKeyDown:(t,n)=>{if(!Lc(n))return!1;let{state:r}=t,i=r.selection.head,a=e.onWikilinkClick&&Pc(r,i);if(a)return e.onWikilinkClick?.({target:a.target,event:n}),!0;let o=e.onTagClick&&jc(r,i);if(o)return e.onTagClick?.({tag:o.tag,event:n}),!0;let s=e.onFileClick&&yc(r,i);if(s)return e.onFileClick?.({href:s.href,name:s.name,event:n}),!0;let c=e.onLinkClick&&K(r,i);return c?(e.onLinkClick?.({href:c.href,event:n}),!0):!1}}})}function zc(e){return v(h(Rc(e)),t.high)}const Bc=(e,t)=>{let n={type:`highlight`,children:e.all(t)};return e.patch(t,n),n},Vc=(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 Hc(){return jt().use(Dt).use(Ot,{handlers:{mark:Bc}}).use(kt).use(At,{bullet:`-`,emphasis:`*`,strong:`*`,fence:"`",fences:!0,rule:`-`,ruleRepetition:3,listItemIndent:`one`,handlers:{highlight:Vc}}).freeze()}const Uc=y(Hc);function Wc(e){return String(Uc().processSync(e))}const Gc=new x(`meowdown-html-paste`);function Kc(){return h(new b({key:Gc,props:{transformPastedHTML:(e,t)=>{if(e.includes(`data-pm-slice`))return e;let n=t.state.selection.$from.parent;if(!n.inlineContent||n.type.spec.code)return e;let r=Wc(e);if(!r.trim())return e;let i=Z(r,{nodes:qo(t.state.schema)}),a=Ie.fromSchema(t.state.schema),o=document.createElement(`div`);return o.append(a.serializeFragment(i.content)),o.innerHTML}}}))}const qc=new x(`meowdown-image-click`);function Jc(e){return e instanceof HTMLElement&&e.closest(`.md-image-view-preview`)}function Yc(e,t){let n=T(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 Xc(e,t){let n=t.closest(`.md-image-view`)?.querySelector(`.md-image-view-content`);if(n)return Yc(e.state,e.posAtDOM(n,0))}function Zc(e,t){return Array.from(e).find(e=>e.identifier===t)}function Qc(e,t){return Math.abs(t.clientX-e.clientX)<=10&&Math.abs(t.clientY-e.clientY)<=10}function $c(e){let t=new WeakMap;return h(new b({key:qc,props:{handleDOMEvents:{pointerdown:(e,t)=>(Jc(t.target)&&t.pointerType!==`mouse`&&t.preventDefault(),!1),touchstart:(e,n)=>{if(t.delete(e),n.touches.length!==1||!Jc(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=Zc(n.changedTouches,r.identifier);return i&&!Qc(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=Zc(r.changedTouches,i.identifier);if(!a||!Qc(i,a))return!1;let o=Jc(r.target);if(!o)return!1;r.preventDefault();let s=Xc(n,o);return s&&e({src:s.src,alt:s.alt,event:r}),!0}},handleClick:(t,n,r)=>{let i=Jc(r.target);if(!i)return!1;let a=Xc(t,i);return a?(e({src:a.src,alt:a.alt,event:r}),!0):!1}}}))}function el(e){return/^https?:\/\//i.test(e)?e:void 0}function tl(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`&&Ks(t),t}function nl(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 rl(e,t,n,r){let i=e.posAtDOM(t,0),a=T(e.state,i,`mdImage`);if(!a)return;let o=e.state.doc.textBetween(a.from,a.to),s=Vr(o),c=a.from+s.length,l=o.slice(s.length),u=Br({...Rr(l)??{},width:Math.round(n),height:Math.round(r)});u!==l&&e.dispatch(e.state.tr.insertText(u,c,a.to))}var il=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)&&nl(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=$s(e);if(t){let e=document.createElement(`span`);return e.className=`md-image-view-preview md-atom-view-preview`,e.appendChild(tl(t)),e}let n=(this.#n.resolveImageUrl??el)(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){Nt(),Mt();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,nl(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)),nl(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;rl(this.#r,this.#t,t,n)}),this.#a=t,this.#o=n,t}};function al(e={}){return f({name:`mdImage`,constructor:(t,n)=>new il(t,n,e)})}const ol={"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`},sl=new x(`meowdown-link-click`);function cl(e){return kc({key:sl,selector:`.md-link`,preventDefault:!0,findPayloadAt:(e,t)=>K(e,t)?.href,onClick:(t,n)=>e({href:t,event:n})})}function ll(e){let t,n=(n,r)=>{let i=r.target;if(!i||!_e(i))return;let a=i.closest(e.selector);if(!a||a===t)return;let o=n.posAtDOM(a,0),s=e.findPayloadAt(n.state,o);s!=null&&(t=a,e.onHoverChange({payload:s,element:a}))},r=n=>{if(!t)return;let r=n.relatedTarget;r&&t.contains(r)||(t=void 0,e.onHoverChange(void 0))};return _(c(`mouseover`,(e,t)=>n(e,t)),c(`mouseout`,(e,t)=>r(t)))}function ul(e){return ll({selector:`.md-link`,findPayloadAt:(e,t)=>K(e,t),onHoverChange:e})}const dl=new x(`meowdown-link-paste`);function fl(e){let t=e.trim();if(!(!t||/\s/.test(t)))return dr(t)}function pl(){return v(h(new b({key:dl,props:{handlePaste:(e,t,n)=>{let r=ec(t,n);if(!r)return!1;let i=fl(r);return i?Pn(e,Yi({href:i,wrapText:!1})):!1}}})),t.high)}const ml=new x(`meowdown-markdown-copy`);function hl(){return h(new b({key:ml,props:{clipboardTextSerializer:(e,t)=>{let n=e.content,r;try{r=t.state.schema.topNodeType.createAndFill(void 0,n)??void 0}catch{r=void 0}return r?ms(r).replace(/\n+$/,``):n.textBetween(0,n.size,`
|
|
26
|
+
`,` `)}function As(e){return e.replace(/\n+$/u,``)}function js(e){return/^[\s>]*$/u.test(e)}function Ms(e){return e.split(`
|
|
27
|
+
`).filter(e=>!js(e))}function Ns(e){return e.trim().replaceAll(/\s+/gu,` `)}function Ps(e,t={}){let n=fs(Z(e,{frontmatter:t.frontmatter}),{frontmatter:t.frontmatter});if(As(n)===As(e))return`exact`;let r=Ms(e),i=Ms(n);return r.length===i.length&&r.every((e,t)=>Ns(e)===Ns(i[t]))?`normalizing`:`lossy`}const Fs=(e,t)=>{let{$from:n,empty:r}=e.selection;if(!r||n.depth!==1||n.index(0)!==0||n.parent.type.name!==`heading`||n.parentOffset!==n.parent.content.size)return!1;if(t){let r=ne(e.schema,`list`),i=ne(e.schema,`paragraph`),a=r.create({kind:`bullet`},i.create()),o=n.after(),s=e.tr.insert(o,a);s.setSelection(x.create(s.doc,o+2)),t(s.scrollIntoView())}return!0};function Is(){return _(l({Enter:Fs}),t.high)}const Ls=new Set([`MscGen`,`Xù`,`MsGenny`,`Angular Template`,`Brainfuck`,`Esper`,`Oz`,`Factor`,`Squirrel`,`Yacas`,`mIRC`,`FCL`,`ECL`,`MUMPS`,`Pig`,`Asterisk`,`Z80`,`Mathematica`]),Rs=Oe.map(e=>({label:e.name,value:e.name.toLowerCase()})).filter(e=>!Ls.has(e.label)).concat([{label:`Plain text`,value:``},{label:`Math`,value:`math`}]).sort((e,t)=>e.label.localeCompare(t.label));function zs(){return typeof window>`u`?!1:window.matchMedia(`(prefers-color-scheme: dark)`).matches}const Bs=/^(?:www\.|mobile\.)?(?:twitter\.com|x\.com)$/i,Vs=/\/status(?:es)?\/(\d+)/;function Hs(e){let t;try{t=new URL(e)}catch{return}if(Bs.test(t.hostname))return Vs.exec(t.pathname)?.[1]}const Us=e=>{let t=Hs(e);if(!t)return;let n=zs()?`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 Ws(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 Gs=/^(?:www\.|m\.)?(?:youtube\.com|youtube-nocookie\.com)$/i,Ks=/^(?:www\.)?youtu\.be$/i,qs=/^[\w-]{11}$/;function Js(e){let t;try{t=new URL(e)}catch{return}let n=null;if(Ks.test(t.hostname))n=t.pathname.slice(1);else if(Gs.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||!qs.test(n))return;let r=t.searchParams.get(`start`)??t.searchParams.get(`t`),i=r?Ys(r):void 0;return{videoId:n,startSeconds:i}}function Ys(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 Xs=[e=>{let t=Js(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}},Us];function Zs(e){for(let t of Xs){let n=t(e);if(n)return n}}function Qs(e,t){return e.clipboardData?.getData(`text/plain`)||t.content.textBetween(0,t.content.size,`
|
|
28
|
+
`)}const $s=new y(`meowdown-embed-paste`);function ec(e){let t=e.trim();if(!(!t||/\s/.test(t)))return Zs(t)?t:void 0}function tc(e,t){let{from:n,to:r}=e.state.selection;e.dispatch(Tt(e.state.tr.insertText(t,n,r)));let i=e.state.tr.insertText(``,n,n+t.length);e.dispatch(Tt(i))}function nc(){return m(new v({key:$s,props:{handlePaste:(e,t,n)=>{let r=e.state.selection.$from.parent;if(!r.inlineContent||r.type.spec.code)return!1;let i=Qs(t,n);if(!i)return!1;let a=ec(i);return a?(tc(e,a),!0):!1}}}))}const rc=new y(`meowdown-exit-boundary`);function ic(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&&b.findFrom(a,t))}function ac(e,t){let{state:n}=e,{selection:r}=n;return h(r)&&!r.empty||re(r)||r.$from.parent.inlineContent&&!e.endOfTextblock(t<0?`up`:`down`)?!0:ic(n,t)}function oc(e){return new v({key:rc,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||ac(t,r)||e({direction:r<0?`up`:`down`,event:n})===!1)}}})}function sc(e){return _(m(oc(e)),t.low)}function cc(e){return!!e.type?.startsWith(`image/`)}function lc(e,t){return cc(e)?``:`[${fc(e.name)}](${t})`}function uc(e,t){return!e||!t.onFilePaste?[]:Array.from(e.files)}const dc=e=>{console.error(`[meowdown] failed to save pasted file:`,e)};function fc(e){return e.replaceAll(/[\\[\]]/g,String.raw`\$&`)}async function pc(e,t,n,r){let{onFilePaste:i}=n;if(!i)return;let a=n.onFileSaveError??dc,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=lc(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 mc(e){return new v({key:new y(`file-paste`),props:{handlePaste:(t,n)=>{let r=uc(n.clipboardData,e);return r.length===0?!1:(pc(t,r,e),!0)},handleDrop:(t,n)=>{let r=uc(n.dataTransfer,e);return r.length===0?!1:(pc(t,r,e,t.posAtCoords({left:n.clientX,top:n.clientY})?.pos),!0)}}})}function hc(e={}){return _(m(mc(e)),t.high)}const gc=new y(`meowdown-file-click`);function _c(e,t){let n=T(e,t,`mdFile`);if(!n)return;let{href:r,name:i}=n.mark.attrs;return{href:r,name:i}}function vc(e){return m(new v({key:gc,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=_c(t.state,t.posAtDOM(a,0));return o?(e({href:o.href,name:o.name,event:r}),!0):!1}}}))}const yc=[`KB`,`MB`,`GB`,`TB`];function bc(e){let t=e,n=`B`;for(let e of yc){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 xc=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 Sc(e){let t=e.split(/[?#]/,1)[0],n=t.lastIndexOf(`.`);if(n<0)return`generic`;let r=t.slice(n+1).toLowerCase();return xc.get(r)??`generic`}const Cc=`http://www.w3.org/2000/svg`;function wc(){let e=document.createElementNS(Cc,`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(Cc,`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 Tc=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=Sc(this.#a.href),this.#n.title=this.#a.name,this.#e.appendChild(this.#n),this.#n.appendChild(wc()),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=bc(n))}};function Ec(e={}){return d({name:`mdFile`,constructor:t=>new Tc(t,e)})}function Dc(e){return m(new v({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 Oc=new y(`meowdown-tag-click`);function kc(e,t){let n=T(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 Ac(e){return Dc({key:Oc,selector:`.md-tag`,preventDefault:!1,findPayloadAt:(e,t)=>kc(e,t)?.tag,onClick:(t,n)=>e({tag:t,event:n})})}const jc=new y(`meowdown-wikilink-click`);function Mc(e,t){let n=T(e,t,`mdWikilink`);if(!n)return;let{target:r}=n.mark.attrs;return{from:n.from,to:n.to,target:r}}function Nc(e,t){let n=t.closest(`.md-wikilink-view`)?.querySelector(`.md-wikilink-view-content`);if(n)return Mc(e.state,e.posAtDOM(n,0))}function Pc(e){return Dc({key:jc,selector:`.md-wikilink-view-preview`,preventDefault:!1,findPayloadAt:(e,t)=>Mc(e,t)?.target,findPayloadForElement:(e,t)=>Nc(e,t)?.target,onClick:(t,n)=>e({target:t,event:n})})}const Fc=new y(`meowdown-follow-link`);function Ic(e){return e.key!==`Enter`||e.shiftKey||e.altKey?!1:ie?e.metaKey&&!e.ctrlKey:e.ctrlKey&&!e.metaKey}function Lc(e){return new v({key:Fc,props:{handleKeyDown:(t,n)=>{if(!Ic(n))return!1;let{state:r}=t,i=r.selection.head,a=e.onWikilinkClick&&Mc(r,i);if(a)return e.onWikilinkClick?.({target:a.target,event:n}),!0;let o=e.onTagClick&&kc(r,i);if(o)return e.onTagClick?.({tag:o.tag,event:n}),!0;let s=e.onFileClick&&_c(r,i);if(s)return e.onFileClick?.({href:s.href,name:s.name,event:n}),!0;let c=e.onLinkClick&&K(r,i);return c?(e.onLinkClick?.({href:c.href,event:n}),!0):!1}}})}function Rc(e){return _(m(Lc(e)),t.high)}const zc=(e,t)=>{let n={type:`highlight`,children:e.all(t)};return e.patch(t,n),n},Bc=(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 Vc(){return At().use(Et).use(Dt,{handlers:{mark:zc}}).use(Ot).use(kt,{bullet:`-`,emphasis:`*`,strong:`*`,fence:"`",fences:!0,rule:`-`,ruleRepetition:3,listItemIndent:`one`,handlers:{highlight:Bc}}).freeze()}const Hc=ve(Vc);function Uc(e){return String(Hc().processSync(e))}const Wc=new y(`meowdown-html-paste`);function Gc(){return m(new v({key:Wc,props:{transformPastedHTML:(e,t)=>{if(e.includes(`data-pm-slice`))return e;let n=t.state.selection.$from.parent;if(!n.inlineContent||n.type.spec.code)return e;let r=Uc(e);if(!r.trim())return e;let i=Z(r,{nodes:Go(t.state.schema)}),a=Ie.fromSchema(t.state.schema),o=document.createElement(`div`);return o.append(a.serializeFragment(i.content)),o.innerHTML}}}))}const Kc=new y(`meowdown-image-click`);function qc(e){return e instanceof HTMLElement&&e.closest(`.md-image-view-preview`)}function Jc(e,t){let n=T(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 Yc(e,t){let n=t.closest(`.md-image-view`)?.querySelector(`.md-image-view-content`);if(n)return Jc(e.state,e.posAtDOM(n,0))}function Xc(e,t){return Array.from(e).find(e=>e.identifier===t)}function Zc(e,t){return Math.abs(t.clientX-e.clientX)<=10&&Math.abs(t.clientY-e.clientY)<=10}function Qc(e){let t=new WeakMap;return m(new v({key:Kc,props:{handleDOMEvents:{pointerdown:(e,t)=>(qc(t.target)&&t.pointerType!==`mouse`&&t.preventDefault(),!1),touchstart:(e,n)=>{if(t.delete(e),n.touches.length!==1||!qc(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=Xc(n.changedTouches,r.identifier);return i&&!Zc(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=Xc(r.changedTouches,i.identifier);if(!a||!Zc(i,a))return!1;let o=qc(r.target);if(!o)return!1;r.preventDefault();let s=Yc(n,o);return s&&e({src:s.src,alt:s.alt,event:r}),!0}},handleClick:(t,n,r)=>{let i=qc(r.target);if(!i)return!1;let a=Yc(t,i);return a?(e({src:a.src,alt:a.alt,event:r}),!0):!1}}}))}function $c(e){return/^https?:\/\//i.test(e)?e:void 0}function el(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`&&Ws(t),t}function tl(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 nl(e,t,n,r){let i=e.posAtDOM(t,0),a=T(e.state,i,`mdImage`);if(!a)return;let o=e.state.doc.textBetween(a.from,a.to),s=zr(o),c=a.from+s.length,l=o.slice(s.length),u=Rr({...Ir(l)??{},width:Math.round(n),height:Math.round(r)});u!==l&&e.dispatch(e.state.tr.insertText(u,c,a.to))}var rl=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)&&tl(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=Zs(e);if(t){let e=document.createElement(`span`);return e.className=`md-image-view-preview md-atom-view-preview`,e.appendChild(el(t)),e}let n=(this.#n.resolveImageUrl??$c)(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){Mt(),jt();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,tl(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)),tl(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;nl(this.#r,this.#t,t,n)}),this.#a=t,this.#o=n,t}};function il(e={}){return d({name:`mdImage`,constructor:(t,n)=>new rl(t,n,e)})}const al={"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`},ol=new y(`meowdown-link-click`);function sl(e){return Dc({key:ol,selector:`.md-link`,preventDefault:!0,findPayloadAt:(e,t)=>K(e,t)?.href,onClick:(t,n)=>e({href:t,event:n})})}function cl(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||!_e(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 v({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 ll=new y(`meowdown-link-hover`);function ul(e){return cl({key:ll,selector:`.md-link`,findPayloadAt:(e,t)=>K(e,t),isSamePayload:(e,t)=>e.href===t.href&&e.title===t.title,onHoverChange:e})}const dl=new y(`meowdown-link-paste`);function fl(e){let t=e.trim();if(!(!t||/\s/.test(t)))return lr(t)}function pl(){return _(m(new v({key:dl,props:{handlePaste:(e,t,n)=>{let r=Qs(t,n);if(!r)return!1;let i=fl(r);return i?Mn(e,qi({href:i,wrapText:!1})):!1}}})),t.high)}const ml=new y(`meowdown-markdown-copy`);function hl(){return m(new v({key:ml,props:{clipboardTextSerializer:(e,t)=>{let n=e.content,r;try{r=t.state.schema.topNodeType.createAndFill(void 0,n)??void 0}catch{r=void 0}return r?fs(r).replace(/\n+$/,``):n.textBetween(0,n.size,`
|
|
29
29
|
`,`
|
|
30
|
-
`)}}}))}function gl({allowEmpty:e}){return(t,n)=>{let{selection:r}=t;if(!
|
|
30
|
+
`)}}}))}const gl=new y(`meowdown-wikilink-hover`);function _l(e){return cl({key:gl,selector:`.md-wikilink-view-preview`,findPayloadAt:Mc,findPayloadForElement:Nc,isSamePayload:(e,t)=>e.target===t.target,onHoverChange:t=>{e(t?{...t.payload,element:t.element}:void 0)}})}function vl({allowEmpty:e}){return(t,n)=>{let{selection:r}=t;if(!h(r)||!e&&r.empty||!r.$head.sameParent(r.$anchor)||r.$head.parent.type.spec.code)return!1;let i=Pt(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(x.create(e.doc,r.from+a.length)),Fe(e),n(e.scrollIntoView())}return!0}}function yl(){return l({"Mod-Shift-k":vl({allowEmpty:!0}),"[":vl({allowEmpty:!1})})}function bl(e){let{selection:t,schema:n}=e;if(t.empty)return``;let r=t.content().content;try{return fs(n.topNodeType.create(null,r)).replace(/\n+$/,``)}catch{return e.doc.textBetween(t.from,t.to,`
|
|
31
31
|
|
|
32
|
-
`)}}function
|
|
32
|
+
`)}}function xl(e,t){let n=new DOMRect(0,0,0,0),r=()=>{if(e.isDestroyed)return n;let r=Y(e,t.from,1)??Y(e,t.from,-1),i=Y(e,t.to,-1)??Y(e,t.to,1);if(r==null||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()]}}function Sl(e){return e instanceof He||e instanceof Ue||e instanceof We||e instanceof Ge||e instanceof R}function Cl(e){for(let t of e)for(let e of t.steps)if(!Sl(e))return!0;return!1}function wl(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){Cl(e)&&o()},view(e){return t=e,{destroy(){t=void 0}}}}}function Tl(e){let t=new y(`spell-check`);return new v({key:t,state:{init:()=>wl(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 El(e){return m(Tl(e))}export{al as EDITOR_KEY_BINDINGS,e as Priority,lc as buildFileMarkdown,Ps as checkRoundTrip,Rs as codeBlockLanguages,$c as defaultResolveImageUrl,Is as defineBulletAfterHeading,pe as defineCodeBlockPreviewPlugin,sn as defineCodeBlockSyntaxHighlight,Ro as defineEditorExtension,nc as defineEmbedPaste,sc as defineExitBoundaryHandler,vc as defineFileClickHandler,hc as defineFilePaste,Ec as defineFileView,Rc as defineFollowLinkHandler,er as defineHTMLComment,Gc as defineHTMLPaste,il as defineImage,Qc as defineImageClickHandler,sl as defineLinkClickHandler,Xi as defineLinkCommands,Qi as defineLinkEditKeymap,ul as defineLinkHoverHandler,pl as defineLinkPaste,hl as defineMarkdownCopy,ka as defineMath,po as definePendingReplacementHandler,he as definePlaceholder,ge as defineReadonly,El as defineSpellCheckPlugin,Ac as defineTagClickHandler,Pc as defineWikilinkClickHandler,_l as defineWikilinkHoverHandler,yl as defineWikilinkTrigger,fs as docToMarkdown,ln as getCodeTokens,K as getLinkUnitAt,Vo as getMarkBuilders,J as getPendingReplacement,bl as getSelectedText,Ha as getTableColumnAlign,xl as getVirtualElementFromRange,Wr as inlineTextToMarkChunks,qi as insertLink,me as isCodeBlockPreviewHiddenDecoration,Ga as isSelectionInTableCell,Ws as listenForTweetHeight,Ea as loadKaTeX,Z as markdownToDoc,Zs as matchEmbed,Yi as removeLink,Da as renderMathInto,Ji as updateLink,le as withPriority};
|