@mdxeditor/editor 0.4.1 → 0.5.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.
@@ -0,0 +1 @@
1
+ "use strict";var e=Object.defineProperty,t=(t,n,o)=>(((t,n,o)=>{n in t?e(t,n,{enumerable:!0,configurable:!0,writable:!0,value:o}):t[n]=o})(t,"symbol"!=typeof n?n+"":n,o),o);const n=require("@lexical/react/LexicalComposer"),o=require("@lexical/react/LexicalContentEditable"),r=require("@lexical/react/LexicalErrorBoundary"),a=require("@lexical/react/LexicalHorizontalRulePlugin"),i=require("@lexical/react/LexicalLinkPlugin"),l=require("@lexical/react/LexicalListPlugin"),s=require("@lexical/react/LexicalRichTextPlugin"),c=require("@lexical/react/LexicalTabIndentationPlugin"),d=require("classnames"),u=require("lexical"),m=require("react"),p=require("@lexical/code"),g=require("@lexical/link"),h=require("@lexical/list"),E=require("@lexical/react/LexicalHorizontalRuleNode"),f=require("@lexical/rich-text"),v=require("mdast-util-directive"),_=require("mdast-util-from-markdown"),k=require("mdast-util-frontmatter"),w=require("mdast-util-gfm-table"),x=require("mdast-util-mdx"),y=require("micromark-extension-directive"),N=require("micromark-extension-frontmatter"),b=require("micromark-extension-gfm-table"),C=require("micromark-extension-mdxjs"),S=require("@lexical/utils"),L=require("@lexical/react/LexicalComposerContext"),T=require("@lexical/selection"),M=require("@lexical/react/LexicalHistoryPlugin"),O=require("mdast-util-to-markdown"),R=require("@radix-ui/react-popover"),A=require("@radix-ui/react-tooltip"),D=require("downshift"),I=require("@lexical/markdown"),H=require("@lexical/react/LexicalMarkdownShortcutPlugin"),V=require("@codemirror/lang-markdown"),P=require("@codesandbox/sandpack-react"),$=require("react-diff-view"),B=require("unidiff"),F=require("@radix-ui/react-toolbar"),K=require("@radix-ui/react-select"),U=require("@radix-ui/react-dialog");function Z(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e)for(const n in e)if("default"!==n){const o=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,o.get?o:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}const j=Z(m),z=Z(R),q=Z(A),J=Z(F),W=Z(K),G=Z(U);class Y extends u.ElementNode{constructor(e,n){super(n),t(this,"__kind"),this.__kind=e||"note"}static getType(){return"admonition"}getKind(){return this.getLatest().__kind}setKind(e){e!==this.getKind()&&(this.getWritable().__kind=e)}static clone(e){return new Y(e.__kind,e.__key)}createDOM(e){const t=document.createElement("div");return S.addClassNamesToElement(t,e.theme.admonition[this.__kind]),t}updateDOM(e,t){return!1}static importJSON(e){return Q(e.kind)}exportJSON(){return{...super.exportJSON(),type:"admonition"}}insertNewAfter(e,t){const n=Q();return this.insertAfter(n,t),n}collapseAtStart(){const e=u.$createParagraphNode();return this.getChildren().forEach((t=>e.append(t))),this.replace(e),!0}}function Q(e){return u.$applyNodeReplacement(new Y(e))}function X(e){return e instanceof Y}function ee(e,t){return t(e),e}function te(){}class ne extends u.DecoratorNode{constructor(e,n,o,r){super(r),t(this,"__code"),t(this,"__meta"),t(this,"__language"),t(this,"__focusEmitter",function(){let e=te;return{publish:()=>{e()},subscribe:t=>{e=t}}}()),this.__code=e,this.__meta=o,this.__language=n}static getType(){return"codeblock"}static clone(e){return new ne(e.__code,e.__language,e.__meta,e.__key)}static importJSON(e){const{code:t,meta:n,language:o}=e;return oe({code:t,language:o,meta:n})}exportJSON(){return{code:this.getCode(),language:this.getLanguage(),meta:this.getMeta(),type:"codeblock",version:1}}createDOM(e){return document.createElement("div")}updateDOM(){return!1}getCode(){return this.getLatest().__code}getMeta(){return this.getLatest().__meta}getLanguage(){return this.getLatest().__language}setCode(e){e!==this.__code&&(this.getWritable().__code=e)}setMeta(e){e!==this.__meta&&(this.getWritable().__meta=e)}setLanguage(e){e!==this.__language&&(this.getWritable().__language=e)}select(){this.__focusEmitter.publish()}decorate(e,{theme:{nodeDecoratorComponents:{CodeBlockEditor:t}}}){return m.createElement(t,{nodeKey:this.getKey(),code:this.getCode(),meta:this.getMeta(),language:this.getLanguage(),onChange:e=>this.setCode(e),focusEmitter:this.__focusEmitter})}}function oe(e){const{code:t,language:n,meta:o}=e;return new ne(t,n,o)}function re(e){return e instanceof ne}class ae extends u.DecoratorNode{constructor(e,n){super(n),t(this,"__yaml"),this.__yaml=e}static getType(){return"frontmatter"}static clone(e){return new ae(e.__yaml,e.__key)}static importJSON(e){const{yaml:t}=e;return ie(t)}exportJSON(){return{yaml:this.getYaml(),type:"frontmatter",version:1}}createDOM(e){return document.createElement("div")}updateDOM(){return!1}getYaml(){return this.getLatest().__yaml}setYaml(e){e!==this.__yaml&&(this.getWritable().__yaml=e)}decorate(e,{theme:{nodeDecoratorComponents:{FrontmatterEditor:t}}}){return m.createElement(t,{yaml:this.getYaml(),onChange:t=>null==e?void 0:e.update((()=>{this.setYaml(t)}))})}}function ie(e){return new ae(e)}function le(e){return e instanceof ae}function se(e){if(e instanceof HTMLImageElement){const{alt:t,src:n,title:o}=e;return{node:de({altText:t,src:n,title:o})}}return null}class ce extends u.DecoratorNode{constructor(e,n,o,r){super(r),t(this,"__src"),t(this,"__altText"),t(this,"__title"),this.__src=e,this.__title=o,this.__altText=n}static getType(){return"image"}static clone(e){return new ce(e.__src,e.__altText,e.__title,e.__key)}static importJSON(e){const{altText:t,title:n,src:o}=e;return de({altText:t,title:n,src:o})}exportDOM(){const e=document.createElement("img");return e.setAttribute("src",this.__src),e.setAttribute("alt",this.__altText),this.__title&&e.setAttribute("title",this.__title),{element:e}}static importDOM(){return{img:()=>({conversion:se,priority:0})}}exportJSON(){return{altText:this.getAltText(),title:this.getTitle(),src:this.getSrc(),type:"image",version:1}}createDOM(e){const t=document.createElement("span"),n=e.theme.image;return void 0!==n&&(t.className=n),t}updateDOM(){return!1}getSrc(){return this.__src}getAltText(){return this.__altText}getTitle(){return this.__title}setTitle(e){this.getWritable().__title=e}decorate(){return m.createElement("img",{title:this.__title,src:this.__src,alt:this.__altText})}}function de(e){const{altText:t,title:n,src:o,key:r}=e;return new ce(o,t,n,r)}function ue(e){return e instanceof ce}const me={text:{bold:"_bold_13nbk_10",italic:"_italic_13nbk_14",underline:"_underline_13nbk_18",code:"_code_13nbk_52",strikethrough:"_strikethrough_13nbk_34",subscript:"_subscript_13nbk_42",superscript:"_superscript_13nbk_47",underlineStrikethrough:"_underlineStrikethrough_13nbk_38"},list:{nested:{listitem:"_nestedListItem_13nbk_59"}},admonition:{danger:"_admonitionDanger_13nbk_63",info:"_admonitionInfo_13nbk_63",note:"_admonitionNote_13nbk_63",tip:"_admonitionTip_13nbk_63",caution:"_admonitionCaution_13nbk_63"}},pe={type:"root",format:"left",indent:0,direction:"ltr",version:1,children:[{type:"paragraph",version:1,direction:"ltr",format:"left",indent:0,children:[]}]},ge={type:"root",format:"left",indent:0,direction:"ltr",version:1,children:[]};class he extends u.DecoratorNode{constructor({name:e,kind:n,attributes:o,state:r,updateFn:a,key:i}){if(super(i),t(this,"__kind"),t(this,"__name"),t(this,"__attributes"),t(this,"__editor"),this.__name=e,this.__kind=n,this.__attributes=o,this.__editor=u.createEditor(),r){const e=this.__editor.parseEditorState(r);e.isEmpty()||this.__editor.setEditorState(e)}else if(a){const e=this.__editor.parseEditorState({root:"text"===this.getKind()?pe:ge},(()=>{if("text"===this.getKind()){const e=u.$getRoot().getFirstChildOrThrow();a(e)}else a(u.$getRoot())}));e.isEmpty()||this.__editor.setEditorState(e)}}static getType(){return"jsx"}static clone(e){return new he({name:e.__name,kind:e.__kind,attributes:e.__attributes,state:e.__editor.getEditorState().toJSON()})}static importJSON(e){const{name:t,kind:n,attributes:o,state:r}=e;return Ee({kind:n,name:t,attributes:o,state:r})}exportJSON(){return{name:this.getName(),kind:this.getKind(),attributes:this.getAttributes(),state:this.__editor.getEditorState().toJSON(),type:"jsx",version:1}}inNestedEditor(e){this.__editor.getEditorState().read(e)}getChildren(){if("flow"===this.getKey())return u.$getRoot().getChildren()||[];{const e=u.$getRoot().getFirstChild();return e&&e.getChildren()||[]}}createDOM(){return"flow"===this.getKey()?document.createElement("div"):document.createElement("span")}updateDOM(){return!1}getName(){return this.__name}getKind(){return this.__kind}getAttributes(){return this.__attributes}updateAttributes(e){this.getWritable().__attributes=Object.entries(e).map((([e,t])=>({name:e,value:t})))}decorate(e,{theme:{nodeDecoratorComponents:{JsxEditor:t}}}){return m.createElement(t,{attributes:this.getAttributes(),componentName:this.getName(),kind:this.getKind(),editor:this.__editor,onSubmit:e=>this.updateAttributes(e),theme:me})}}function Ee(e){return new he(e)}function fe(e){return e instanceof he}class ve extends u.DecoratorNode{constructor(e,n,o,r){super(r),t(this,"__code"),t(this,"__meta"),t(this,"__language"),t(this,"__focusEmitter",function(){let e=te;return{publish:()=>{e()},subscribe:t=>{e=t}}}()),this.__code=e,this.__meta=o,this.__language=n}static getType(){return"sandpack"}static clone(e){return new ve(e.__code,e.__language,e.__meta,e.__key)}static importJSON(e){const{code:t,meta:n,language:o}=e;return _e({code:t,language:o,meta:n})}exportJSON(){return{code:this.getCode(),language:this.getLanguage(),meta:this.getMeta(),type:"sandpack",version:1}}createDOM(e){return document.createElement("div")}updateDOM(){return!1}getCode(){return this.getLatest().__code}getMeta(){return this.getLatest().__meta}getLanguage(){return this.getLatest().__language}setCode(e){e!==this.__code&&(this.getWritable().__code=e)}setMeta(e){e!==this.__meta&&(this.getWritable().__meta=e)}setLanguage(e){e!==this.__language&&(this.getWritable().__language=e)}select(){this.__focusEmitter.publish()}decorate(e,{theme:{nodeDecoratorComponents:{SandpackEditor:t}}}){return m.createElement(t,{nodeKey:this.getKey(),code:this.getCode(),meta:this.getMeta(),onChange:e=>this.setCode(e),focusEmitter:this.__focusEmitter})}}function _e(e){const{code:t,language:n,meta:o}=e;return new ve(t,n,o)}function ke(e){return e instanceof ve}const we={type:"tableCell",children:[]};class xe extends u.DecoratorNode{constructor(e,n){super(n),t(this,"__mdastNode"),t(this,"focusEmitter",function(){let e=te;return{publish:t=>{e(t)},subscribe:t=>{e=t}}}()),this.__mdastNode=e||{type:"table",children:[]}}static getType(){return"table"}static clone(e){return new xe(structuredClone(e.__mdastNode),e.__key)}static importJSON(e){return Ne(e.mdastNode)}exportJSON(){return{mdastNode:structuredClone(this.__mdastNode),type:"table",version:1}}getMdastNode(){return this.__mdastNode}getRowCount(){return this.__mdastNode.children.length}getColCount(){var e;return(null==(e=this.__mdastNode.children[0])?void 0:e.children.length)||0}createDOM(){return document.createElement("div")}updateDOM(){return!1}updateCellContents(e,t,n){const o=this.getWritable().__mdastNode,r=o.children[t],a=r.children,i=a[e],l=Array.from(a),s={...i,children:n},c={...r,children:l};l[e]=s,o.children[t]=c}insertColumnAt(e){const t=this.getWritable().__mdastNode;for(let n=0;n<t.children.length;n++){const o=t.children[n],r=o.children,a=Array.from(r),i={...o,children:a};a.splice(e,0,structuredClone(we)),t.children[n]=i}t.align&&t.align.length>0&&t.align.splice(e,0,"left")}deleteColumnAt(e){const t=this.getWritable().__mdastNode;for(let n=0;n<t.children.length;n++){const o=t.children[n],r=o.children,a=Array.from(r),i={...o,children:a};a.splice(e,1),t.children[n]=i}}insertRowAt(e){const t=this.getWritable().__mdastNode,n={type:"tableRow",children:Array.from({length:this.getColCount()},(()=>structuredClone(we)))};t.children.splice(e,0,n)}deleteRowAt(e){this.getWritable().__mdastNode.children.splice(e,1)}addRowToBottom(){this.insertRowAt(this.getRowCount())}addColumnToRight(){this.insertColumnAt(this.getColCount())}setColumnAlign(e,t){const n=this.getWritable().__mdastNode;null==n.align&&(n.align=[]),n.align[e]=t}decorate(e,{theme:{nodeDecoratorComponents:{TableEditor:t}}}){return m.createElement(t,{lexicalTable:this,mdastNode:this.__mdastNode,parentEditor:e})}select(e){this.focusEmitter.publish(e)}isInline(){return!1}}function ye(e){return e instanceof xe}function Ne(e){return new xe(e)}const be={testLexicalNode:u.$isRootNode,visitLexicalNode:({actions:e})=>{e.addAndStepInto("root")}},Ce={testLexicalNode:u.$isParagraphNode,visitLexicalNode:({actions:e})=>{e.addAndStepInto("paragraph")}},Se={testLexicalNode:le,visitLexicalNode:({actions:e,lexicalNode:t})=>{e.addAndStepInto("yaml",{value:t.getYaml()})}},Le={testLexicalNode:g.$isLinkNode,visitLexicalNode:({lexicalNode:e,actions:t})=>{t.addAndStepInto("link",{url:e.getURL(),title:e.getTitle()})}},Te={testLexicalNode:f.$isHeadingNode,visitLexicalNode:({lexicalNode:e,actions:t})=>{const n=parseInt(e.getTag()[1],10);t.addAndStepInto("heading",{depth:n})}},Me={testLexicalNode:h.$isListNode,visitLexicalNode:({lexicalNode:e,actions:t})=>{t.addAndStepInto("list",{ordered:"number"===e.getListType(),spread:!1})}},Oe={testLexicalNode:h.$isListItemNode,visitLexicalNode:({lexicalNode:e,mdastParent:t,actions:n})=>{const o=e.getChildren(),r=o[0];if(1===o.length&&h.$isListNode(r)){const o=t.children.at(-1);n.visitChildren(e,o)}else{const o=n.appendToParent(t,{type:"listItem",spread:!1,children:[{type:"paragraph",children:[]}]});n.visitChildren(e,o.children[0])}}},Re={testLexicalNode:f.$isQuoteNode,visitLexicalNode:({lexicalNode:e,mdastParent:t,actions:n})=>{const o=n.appendToParent(t,{type:"blockquote",children:[{type:"paragraph",children:[]}]});n.visitChildren(e,o.children[0])}},Ae={testLexicalNode:X,visitLexicalNode:({mdastParent:e,lexicalNode:t,actions:n})=>{const o=n.appendToParent(e,{type:"containerDirective",name:t.getKind(),children:[{type:"paragraph",children:[]}]});n.visitChildren(t,o.children[0])}},De={testLexicalNode:ke,visitLexicalNode:({lexicalNode:e,actions:t})=>{t.addAndStepInto("code",{value:e.getCode(),lang:e.getLanguage(),meta:e.getMeta()})}},Ie={testLexicalNode:re,visitLexicalNode:({lexicalNode:e,actions:t})=>{t.addAndStepInto("code",{value:e.getCode(),lang:e.getLanguage(),meta:e.getMeta()})}};function He(e){return"text"===e.type}const Ve={testLexicalNode:u.$isLineBreakNode,visitLexicalNode:({mdastParent:e,actions:t})=>{t.appendToParent(e,{type:"text",value:"\n"})}},Pe={LexicalRootVisitor:be,LexicalParagraphVisitor:Ce,LexicalFrontmatterVisitor:Se,LexicalTextVisitor:{shouldJoin:(e,t)=>["text","emphasis","strong","mdxJsxTextElement"].includes(e.type)&&e.type===t.type,join:(e,t)=>He(e)&&He(t)?{type:"text",value:e.value+t.value}:{...e,children:[...e.children,...t.children]},testLexicalNode:u.$isTextNode,visitLexicalNode:({lexicalNode:e,mdastParent:t,actions:n})=>{const o=e.getPreviousSibling(),r=u.$isTextNode(o)?o.getFormat():0,a=e.getTextContent(),i=e.getFormat()??0;if(16&i)return void n.addAndStepInto("inlineCode",{value:a});let l=t;r&i&2&&(l=n.appendToParent(l,{type:"emphasis",children:[]})),r&i&1&&(l=n.appendToParent(l,{type:"strong",children:[]})),r&i&8&&(l=n.appendToParent(l,{type:"mdxJsxTextElement",name:"u",children:[],attributes:[]})),2&i&&!(2&r)&&(l=n.appendToParent(l,{type:"emphasis",children:[]})),1&i&&!(1&r)&&(l=n.appendToParent(l,{type:"strong",children:[]})),8&i&&!(8&r)&&(l=n.appendToParent(l,{type:"mdxJsxTextElement",name:"u",children:[],attributes:[]})),n.appendToParent(l,{type:"text",value:a})}},LexicalLinebreakVisitor:Ve,LexicalLinkVisitor:Le,LexicalHeadingVisitor:Te,LexicalListVisitor:Me,LexicalListItemVisitor:Oe,LexicalQuoteVisitor:Re,SandpackNodeVisitor:De,CodeBlockVisitor:Ie,LexicalThematicBreakVisitor:{testLexicalNode:E.$isHorizontalRuleNode,visitLexicalNode({actions:e}){e.addAndStepInto("thematicBreak")}},AdmonitionVisitor:Ae,LexicalImageVisitor:{testLexicalNode:ue,visitLexicalNode({lexicalNode:e,actions:t}){t.addAndStepInto("image",{url:e.getSrc(),alt:e.getAltText(),title:e.getTitle()})}},JsxVisitor:{testLexicalNode:fe,visitLexicalNode({mdastParent:e,lexicalNode:t,actions:n}){const o="text"===t.getKind()?"mdxJsxTextElement":"mdxJsxFlowElement";n.registerReferredComponent(t.getName());const r={type:o,name:t.getName(),attributes:t.getAttributes(),children:[]};n.appendToParent(e,r),t.inNestedEditor((()=>{n.visitChildren(t,r)}))}},LexicalTableVisitor:{testLexicalNode:ye,visitLexicalNode({actions:e,mdastParent:t,lexicalNode:n}){e.appendToParent(t,n.getMdastNode())}}};function $e({root:e,visitors:t,jsxComponentDescriptors:n}){let o=null;const r=new Set;function a(e){r.add(e)}function i(e,n){if(null===o)return o=n,o;if(!function(e){return e.children instanceof Array}(e))throw new Error("Attempting to append children to a non-parent");const r=e.children,a=r.at(-1);if(a){const e=t.find((e=>{var t;return null==(t=e.shouldJoin)?void 0:t.call(e,a,n)}));if(e){const t=e.join(a,n);return r.splice(r.length-1,1,t),t}}return r.push(n),n}function l(e,t){e.getChildren().forEach((e=>{s(e,t)}))}function s(e,n){var o;const r=t.find((t=>{var n;return null==(n=t.testLexicalNode)?void 0:n.call(t,e)}));if(!r)throw new Error(`no lexical visitor found for ${e.getType()}`,{cause:e});null==(o=r.visitLexicalNode)||o.call(r,{lexicalNode:e,mdastParent:n,actions:{addAndStepInto(t,o={},r=!0){const a={type:t,...o,...r?{children:[]}:{}};i(n,a),u.$isElementNode(e)&&r&&l(e,a)},appendToParent:i,visitChildren:l,registerReferredComponent:a}})}if(s(e,null),null===o)throw new Error("traversal ended with no root element");const c=new Map,d=new Map;for(const u of r){const e=n.find((e=>e.name===u));if(!e)throw new Error(`Component ${u} is used but not imported`);if(e.defaultExport)d.set(u,e.source);else{const{source:t}=e,n=c.get(t);n?n.push(u):c.set(t,[u])}}const m=Array.from(c).map((([e,t])=>({type:"mdxjsEsm",value:`import { ${t.join(", ")} } from '${e}'`})));m.push(...Array.from(d).map((([e,t])=>({type:"mdxjsEsm",value:`import ${e} from '${t}'`}))));const p=o,g=p.children.find((e=>"yaml"===e.type));return g?p.children.splice(p.children.indexOf(g)+1,0,...m):p.children.unshift(...m),Ke(p,[]),p}const Be=/\s+$/,Fe=/^\s+/;function Ke(e,t){if("strong"===e.type||"emphasis"===e.type){const n=e.children.at(-1);if("text"===(null==n?void 0:n.type)){const o=n.value.match(Be);if(o){n.value=n.value.replace(Be,"");const r=t.at(-1);r&&(r.children.splice(r.children.indexOf(e)+1,0,{type:"text",value:o[0]}),Ke(r,t.slice(0,-1)))}}const o=e.children.at(0);if("text"===(null==o?void 0:o.type)){const n=o.value.match(Fe);if(n){o.value=o.value.replace(Fe,"");const r=t.at(-1);r&&(r.children.splice(r.children.indexOf(e),0,{type:"text",value:n[0]}),Ke(r,t.slice(0,-1)))}}}if(Object.hasOwn(e,"children")){const n=e;n.children.forEach((e=>Ke(e,[...t,n])))}}const Ue={mdxToMarkdown:x.mdxToMarkdown(),frontmatterToMarkdown:k.frontmatterToMarkdown("yaml"),directiveToMarkdown:v.directiveToMarkdown,gfmTableToMarkdown:w.gfmTableToMarkdown({tableCellPadding:!0,tablePipeAlign:!0})},Ze={listItemIndent:"one"};const je={MdastRootVisitor:{testNode:"root",visitNode({actions:e,mdastNode:t,lexicalParent:n}){e.visitChildren(t,n)}},MdastParagraphVisitor:{testNode:"paragraph",visitNode:function({mdastNode:e,lexicalParent:t,actions:n}){h.$isListItemNode(t)||f.$isQuoteNode(t)||X(t)?n.visitChildren(e,t):n.addAndStepInto(u.$createParagraphNode())}},MdastTextVisitor:{testNode:"text",visitNode({mdastNode:e,actions:t}){t.addAndStepInto(u.$createTextNode(e.value).setFormat(t.getParentFormatting()))}},MdastFormattingVisitor:{testNode:e=>"emphasis"===e.type||"strong"===e.type||"mdxJsxTextElement"===e.type&&"u"===(null==e?void 0:e.name),visitNode({mdastNode:e,lexicalParent:t,actions:n}){"emphasis"===e.type?n.addFormatting(2):"strong"===e.type?n.addFormatting(1):"mdxJsxTextElement"===e.type&&"u"===e.name&&n.addFormatting(8),n.visitChildren(e,t)}},MdastInlineCodeVisitor:{testNode:"inlineCode",visitNode({mdastNode:e,actions:t}){t.addAndStepInto(u.$createTextNode(e.value).setFormat(16))}},MdastLinkVisitor:{testNode:"link",visitNode({mdastNode:e,actions:t}){t.addAndStepInto(g.$createLinkNode(e.url,{title:e.title}))}},MdastHeadingVisitor:{testNode:"heading",visitNode:function({mdastNode:e,actions:t}){t.addAndStepInto(f.$createHeadingNode(`h${e.depth}`))}},MdastListVisitor:{testNode:"list",visitNode:function({mdastNode:e,lexicalParent:t,actions:n}){const o=h.$createListNode(e.ordered?"number":"bullet");if(h.$isListItemNode(t)){const e=h.$createListItemNode();e.append(o),t.insertAfter(e)}else t.append(o);n.visitChildren(e,o)}},MdastListItemVisitor:{testNode:"listItem",visitNode({actions:e}){e.addAndStepInto(h.$createListItemNode())}},MdastBlockQuoteVisitor:{testNode:"blockquote",visitNode({actions:e}){e.addAndStepInto(f.$createQuoteNode())}},MdastCodeVisitor:{testNode:"code",visitNode({mdastNode:e,actions:t}){var n;const o=(null==(n=e.meta)?void 0:n.startsWith("live"))?_e:oe;t.addAndStepInto(o({code:e.value,language:e.lang,meta:e.meta}))}},MdastThematicBreakVisitor:{testNode:"thematicBreak",visitNode({actions:e}){e.addAndStepInto(E.$createHorizontalRuleNode())}},MdastImageVisitor:{testNode:"image",visitNode({mdastNode:e,actions:t}){t.addAndStepInto(de({src:e.url,altText:e.alt||"",title:e.title||""}))}},MdastFrontmatterVisitor:{testNode:"yaml",visitNode({mdastNode:e,actions:t}){t.addAndStepInto(ie(e.value))}},MdastAdmonitionVisitor:{testNode:"containerDirective",visitNode({mdastNode:e,actions:t}){t.addAndStepInto(Q(e.name))}},MdastMdxJsEsmVisitor:{testNode:"mdxjsEsm",visitNode(){}},MdastMdxJsxElementVisitor:{testNode:e=>"mdxJsxTextElement"===e.type||"mdxJsxFlowElement"===e.type,visitNode({lexicalParent:e,mdastNode:t,actions:n}){e.append(Ee({name:t.name,kind:"mdxJsxTextElement"===t.type?"text":"flow",attributes:t.attributes,updateFn:e=>{n.visitChildren(t,e)}}))}},MdastTableVisitor:{testNode:"table",visitNode({mdastNode:e,lexicalParent:t}){t.append(Ne(e))}}};function ze(e){return e.children instanceof Array}const qe={mdxFromMarkdown:x.mdxFromMarkdown(),frontmatterFromMarkdown:k.frontmatterFromMarkdown("yaml"),directiveFromMarkdown:v.directiveFromMarkdown,gfmTableFromMarkdown:w.gfmTableFromMarkdown},Je={mdxjs:C.mdxjs(),frontmatter:N.frontmatter(),directive:y.directive(),gfmTable:b.gfmTable};function We({root:e,markdown:t,visitors:n,syntaxExtensions:o,mdastExtensions:r}){const a=_.fromMarkdown(t,{extensions:o,mdastExtensions:r});0===a.children.length&&a.children.push({type:"paragraph",children:[]}),Ge({root:e,mdastRoot:a,visitors:n})}function Ge({root:e,mdastRoot:t,visitors:n}){const o=new WeakMap;function r(e,t){if(!ze(e))throw new Error("Attempting to visit children of a non-parent");e.children.forEach((n=>a(n,t,e)))}function a(e,t,a){const i=n.find((t=>"string"==typeof t.testNode?t.testNode===e.type:t.testNode(e)));if(!i)throw new Error(`no unist visitor found for ${e.type}`,{cause:e});i.visitNode({mdastNode:e,lexicalParent:t,actions:{visitChildren:r,addAndStepInto(n){t.append(n),ze(e)&&r(e,n)},addFormatting(t){o.set(e,t|(o.get(a)??0))},getParentFormatting:()=>o.get(a)??0}})}a(t,e,null)}const Ye={ParagraphNode:u.ParagraphNode,LinkNode:g.LinkNode,HeadingNode:f.HeadingNode,QuoteNode:f.QuoteNode,ListNode:h.ListNode,ListItemNode:h.ListItemNode,HorizontalRuleNode:E.HorizontalRuleNode,ImageNode:ce,SandpackNode:ve,CodeBlockNode:ne,FrontmatterNode:ae,AdmonitionNode:Y,JsxNode:he,CodeNode:p.CodeNode,TableNode:xe};function Qe(){const e=[...Array(256).keys()].map((e=>e.toString(16).padStart(2,"0"))),t=crypto.getRandomValues(new Uint8Array(16));return t[6]=15&t[6]|64,t[8]=63&t[8]|128,[...t.entries()].map((([t,n])=>[4,6,8,10].includes(t)?`-${e[n]}`:e[n])).join("")}function Xe(e,t){return e===t}class et{constructor(){t(this,"map",new Map)}getOrCreate(e){let t=this.map.get(e);return t||(t=new Set,this.map.set(e,t)),t}get(e){return this.map.get(e)}use(e,t){const n=this.get(e);void 0!==n&&t(n)}delete(e){return this.map.delete(e)}}class tt{constructor(e=new Map){t(this,"map"),this.map=e}clone(){return new tt(new Map(this.map))}increment(e){const t=this.map.get(e)??0;this.map.set(e,t+1)}decrement(e,t){let n=this.map.get(e);void 0!==n&&(n-=1,this.map.set(e,n),0===n&&t())}}const nt=Symbol("NO_VALUE");function ot(){const e=new et,t=new Map,n=new et,o=new Map,r=new Map,a={};function i(e=nt,t=!1){const n=Qe();return e!==nt&&o.set(n,e),!1!==t&&r.set(n,!0===t?Xe:t),{key:n,toString:()=>n}}function l({key:t},n){const o=e.getOrCreate(t);return o.add(n),()=>o.delete(n)}function s({key:e},n){return t.set(e,n),()=>t.delete(e)}function c(...e){const[t]=e.slice(-1),n=e.slice(0,-1);return 1===n.length?l(n[0],t):function(e,t){const n=i();return g({map:e=>(...t)=>{e(t)},sink:n,sources:e}),l(n,t)}(n,t)}function d(e){const t=[],o=new Set,r=new et,a=new tt,i=new et;function l(e,s=0){a.increment(e),o.has(e)||(r.use(e,(e=>{s=Math.max(...Array.from(e).map((e=>t.indexOf(e))))+1})),n.use(e,(t=>{t.forEach((t=>{t.sources.has(e)?(i.getOrCreate(t.sink).add(t),l(t.sink,s)):r.getOrCreate(t.sink).add(e)}))})),o.add(e),t.splice(s,0,e))}return e.forEach((e=>l(e))),{participatingNodeKeys:t,pendingPulls:r,projections:i,refCount:a}}const u=new Map;function m(a){var i;const l=Object.keys(a),s=l.join(",");u.has(s)||u.set(s,d(l));const c=u.get(s),m=c.refCount.clone(),p=c.participatingNodeKeys.slice(),g=new Map(o);function h(e){n.use(e,(t=>{t.forEach((({sources:t,sink:n})=>{t.has(e)&&m.decrement(n,(()=>{p.splice(p.indexOf(n),1),h(n)}))}))}))}let E;for(;E=p.shift();){let n=!1;const l=e=>{r.has(E)&&r.get(E)(o.get(E),e)?n=!1:(n=!0,g.set(E,e),o.has(E)&&o.set(E,e))};if(Object.prototype.hasOwnProperty.call(a,E)?l(a[E]):c.projections.use(E,(e=>{e.forEach((e=>{const t=[...Array.from(e.sources),...Array.from(e.pulls)].map((e=>g.get(e)));e.map(l)(...t)}))})),n){const n=g.get(E);e.use(E,(e=>{e.forEach((e=>e(n)))})),null==(i=t.get(E))||i(n)}else h(E)}}function p(e){return new Set(e.map((e=>e.key)))}function g({sources:e,pulls:t=[],map:o,sink:{key:r}}){const a={map:o,pulls:p(t),sink:r,sources:p(e)};[...e,...t].forEach((({key:e})=>{n.getOrCreate(e).add(a)})),u.clear()}function h(...e){const t={};for(let n=0;n<e.length;n+=2){t[e[n].key]=e[n+1]}m(t)}function E(e){m(Object.entries(e).reduce(((e,[t,n])=>ee(e,(e=>e[a[t].key]=n))),{}))}return{combine:function(...e){const t=i();return g({map:e=>(...t)=>e(t),sink:t,sources:e}),t},connect:g,debug:function(){Object.entries(a).forEach((([e,t])=>{o.get(t.key)}))},derive:function(e,t){return ee(i(t,!0),(t=>{g({map:e=>t=>e(t),sink:t,sources:[e]})}))},getKeyValue:function(e){return o.get(a[e].key)},getValue:function(e){return o.get(e.key)},getKeyValues:function(e){return e.map((e=>o.get(a[e].key)))},label:function(e){Object.assign(a,e)},labels:a,link:function(e,t){g({map:e=>t=>e(t),sink:t,sources:[e]})},node:i,o:{delayWithMicrotask:function(){return e=>{const t=i();return c(e,(e=>queueMicrotask((()=>h(t,e))))),t}},debounceTime:function(e){return t=>{const n=i();let o,r;return c(t,(t=>{o=t,r&&clearTimeout(r),r=setTimeout((()=>{h(n,o)}),e)})),n}},filter:function(e){return t=>{const n=i();return g({map:t=>n=>e(n)&&t(n),sink:n,sources:[t]}),n}},map:function(e){return t=>{const n=i();return g({map:t=>n=>{t(e(n))},sink:n,sources:[t]}),n}},mapTo:function(e){return t=>{const n=i();return g({map:t=>()=>t(e),sink:n,sources:[t]}),n}},onNext:function(e){return t=>{const n=i();let o=nt;return c(t,(e=>o=e)),g({map:e=>t=>{o!==nt&&(e([o,t]),o=nt)},sink:n,sources:[e]}),n}},scan:function(e,t){return n=>{const o=i();return g({map:n=>o=>n(t=e(t,o)),sink:o,sources:[n]}),o}},throttleTime:function(e){return t=>{const n=i();let o,r;return c(t,(t=>{o=t,r||(r=setTimeout((()=>{r=void 0,h(n,o)}),e))})),n}},withLatestFrom:function(...e){return t=>{const n=i();return g({map:e=>(...t)=>e(t),pulls:e,sink:n,sources:[t]}),n}},once:function(){return e=>{const t=i();let n=!1;return g({map:e=>t=>{n||(n=!0,e(t))},sink:t,sources:[e]}),t}},passOnlyAfterNodeHasEmittedBefore:function(e,t){return n=>{const r=i();let a=0;return c(e,(()=>a=Date.now())),g({map:e=>n=>{Date.now()<a+o.get(t.key)&&e(n)},sink:r,sources:[n]}),r}}},pipe:function(e,...t){for(const n of t)e=n(e);return e},pub:h,pubIn:m,pubKey:function(e,t){E({[e]:t})},pubKeys:E,resetSingletonSubs:function(){t.clear()},singletonSub:s,singletonSubKey:function(e,t){return s(a[e],t)},spread:function(e,t){return t.map(((t,n)=>ee(i(t,!0),(t=>{g({map:e=>t=>{e(t[n])},sink:t,sources:[e]})}))))},sub:c,subKey:function(e,t){return c(a[e],t)},subKeys:function(e,t){return c(...e.map((e=>a[e])).concat(t))}}}const rt="undefined"!=typeof document?j.useLayoutEffect:j.useEffect,at=m.createContext(void 0);function it(e,t=[],n=Qe()){return[{constructor:e,dependencies:t,id:n},{id:n}]}const lt=new Map([["number",h.INSERT_ORDERED_LIST_COMMAND],["bullet",h.INSERT_UNORDERED_LIST_COMMAND],["",h.REMOVE_LIST_COMMAND]]);const[st,ct]=it((e=>{const t=e.node(null,!0),n=e.node(""),o=e.node(M.createEmptyHistoryState()),r=e.derive(t,null),a=e.node(0,!0),i=e.node(null),l=e.node(null),s=e.node(null),c=e.node(),d=e.node(),m=e.node(),p=e.node(),g=e.node(),v=e.node(),_=e.node(),k=e.node(),w=e.node([]),x=e.node(!1,!0),y=e.node({type:"lexical"}),N=e.node(null),b=e.node(null),C=e.node(null),L=e.node([]),O=e.node([]);function R(){const t=u.$getSelection();u.$isRangeSelection(t)&&e.pubKeys({currentSelection:t,currentFormat:t.format})}return e.link(e.pipe(k,e.o.withLatestFrom(w),e.o.map((([e,t])=>[...t,e]))),w),e.sub(e.pipe(d,e.o.withLatestFrom(r)),(([e,t])=>{null==t||t.dispatchCommand(lt.get(e),void 0)})),e.sub(e.pipe(c,e.o.withLatestFrom(r)),(([e,t])=>{null==t||t.dispatchCommand(u.FORMAT_TEXT_COMMAND,e)})),e.sub(e.pipe(p,e.o.withLatestFrom(r)),(([,e])=>{null==e||e.dispatchCommand(E.INSERT_HORIZONTAL_RULE_COMMAND,void 0)})),e.sub(e.pipe(_,e.o.withLatestFrom(r)),(([e,t])=>{null==t||t.getEditorState().read((()=>{const n=u.$getSelection();if(u.$isRangeSelection(n)){null!==n.focus.getNode()&&t.update((()=>{const t=de({altText:"",src:e,title:""});S.$insertNodeToNearestRoot(t)}))}}))})),e.sub(e.pipe(v,e.o.withLatestFrom(r)),(([,e])=>{null==e||e.update((()=>{const e=u.$getRoot().getFirstChild();if(!le(e)){const t=ie('"": ""');e?e.insertBefore(t):u.$getRoot().append(t)}}))})),e.sub(e.pipe(g,e.o.withLatestFrom(r)),(([,e])=>{null==e||e.getEditorState().read((()=>{const t=u.$getSelection();if(u.$isRangeSelection(t)){null!==t.focus.getNode()&&e.update((()=>{const e=Ne({type:"table",children:[{type:"tableRow",children:[{type:"tableCell",children:[]}]}]});S.$insertNodeToNearestRoot(e),setTimeout((()=>{e.select([0,0])}),50)}))}}))})),e.sub(e.pipe(m,e.o.withLatestFrom(r)),(([e,t])=>{if(t)switch(e){case"paragraph":(e=>{e.update((()=>{const e=u.$getSelection();(u.$isRangeSelection(e)||u.DEPRECATED_$isGridSelection(e))&&T.$setBlocksType(e,(()=>u.$createParagraphNode()))}))})(t);break;case"quote":(e=>{e.update((()=>{const e=u.$getSelection();(u.$isRangeSelection(e)||u.DEPRECATED_$isGridSelection(e))&&T.$setBlocksType(e,(()=>f.$createQuoteNode()))}))})(t);break;case"note":case"tip":case"danger":case"caution":case"info":((e,t)=>{e.update((()=>{const e=u.$getSelection();(u.$isRangeSelection(e)||u.DEPRECATED_$isGridSelection(e))&&T.$setBlocksType(e,(()=>Q(t)))}))})(t,e);break;default:((e,t)=>{e.update((()=>{const e=u.$getSelection();(u.$isRangeSelection(e)||u.DEPRECATED_$isGridSelection(e))&&T.$setBlocksType(e,(()=>f.$createHeadingNode(t)))}))})(t,e)}})),e.sub(e.pipe(i,e.o.withLatestFrom(r)),(([t,n])=>{if(!t||!n)return;const o=t.anchor.getNode();let r="root"===o.getKey()?o:S.$findMatchingParent(o,(e=>{const t=e.getParent();return null!==t&&u.$isRootOrShadowRoot(t)}));null===r&&(r=o.getTopLevelElementOrThrow());const a=r.getKey();if(null!==n.getElementByKey(a))if(h.$isListNode(r)){const t=S.$getNearestNodeOfType(o,h.ListNode),n=t?t.getListType():r.getListType();e.pubIn({[l.key]:n,[s.key]:""})}else{e.pub(l,null);const t=f.$isHeadingNode(r)?r.getTag():X(r)?r.getKind():r.getType();e.pubIn({[l.key]:null,[s.key]:t})}})),e.sub(t,(t=>{t&&t.registerCommand(u.SELECTION_CHANGE_COMMAND,((t,n)=>(e.pubIn({[r.key]:n,[x.key]:!0}),R(),!1)),u.COMMAND_PRIORITY_CRITICAL)})),e.pipe(e.combine(w,r),e.o.scan(((n,[o,r])=>(n.forEach((e=>e())),r?o.map((n=>n(r,e.getValue(t)))):[])),[])),e.pub(k,(e=>e.registerUpdateListener((({editorState:e})=>{e.read((()=>{R()}))})))),e.pub(k,(n=>n.registerCommand(u.BLUR_COMMAND,(n=>{var o;return!(null==(o=e.getValue(t).getRootElement())?void 0:o.contains(n.relatedTarget))&&e.pub(x,!1),!1}),u.COMMAND_PRIORITY_LOW))),{editor:t,activeEditor:r,currentFormat:a,currentSelection:i,currentListType:l,currentBlockType:s,applyFormat:c,applyListType:d,applyBlockType:m,insertHorizontalRule:p,insertFrontmatter:v,insertImage:_,insertTable:g,createEditorSubscription:k,editorSubscriptions:w,activeEditorType:y,inFocus:x,historyState:o,editorRootElementRef:N,markdownParseOptions:b,lexicalConvertOptions:C,lexicalNodes:L,imageAutocompleteSuggestions:O,markdownSource:n}}),[]),[dt,ut]=it((e=>({jsxComponentDescriptors:e.node([])})),[]),[mt]=it(((e,[{editor:t,markdownParseOptions:n,markdownSource:o},{}])=>{const r=e.node("editor"),a=e.node("");return e.sub(e.pipe(r,e.o.scan(((e,t)=>({current:e.next,next:t})),{current:"editor",next:"editor"}),e.o.withLatestFrom(t,o,n)),(([{current:e},t,n,o])=>{"markdown"===e&&(null==t||t.update((()=>{u.$getRoot().clear(),We({root:u.$getRoot(),markdown:n,...o})})))})),{viewMode:r,headMarkdown:a}}),[ct,ut]),pt={defaultPreset:"react",presets:[{name:"react",meta:"live react",label:"React",sandpackTemplate:"react",sandpackTheme:"light",snippetFileName:"/App.js",snippetLanguage:"jsx",initialSnippetContent:'\nexport default function App() {\n return (\n <div className="App">\n <h1>Hello CodeSandbox</h1>\n <h2>Start editing to see some magic happen!</h2>\n </div>\n );\n}\n'}]},gt={js:"JavaScript",ts:"TypeScript",tsx:"TypeScript (React)",jsx:"JavaScript (React)",css:"CSS"},[ht]=it(((e,[{activeEditor:t,activeEditorType:n,createEditorSubscription:o}])=>{const r=e.node(pt),a=e.node(gt),i=e.node(),l=e.node();return e.pub(o,(t=>t.registerCommand(u.FOCUS_COMMAND,(()=>(e.pub(n,{type:"lexical"}),!1)),u.COMMAND_PRIORITY_LOW))),e.sub(e.pipe(i,e.o.withLatestFrom(t,r)),(([e,t,n])=>{null==t||t.getEditorState().read((()=>{const o=u.$getSelection();if(u.$isRangeSelection(o)){const r=o.focus.getNode(),a=e?n.presets.find((t=>t.meta===e)):n.presets.find((e=>e.name==n.defaultPreset));if(!a)throw new Error(`No sandpack preset found with ${e}`);null!==r&&t.update((()=>{const e=_e({code:a.initialSnippetContent||"",language:a.snippetLanguage||"jsx",meta:a.meta});S.$insertNodeToNearestRoot(e),setTimeout((()=>e.select()),80)}))}}))})),e.sub(e.pipe(l,e.o.withLatestFrom(t)),(([,e])=>{null==e||e.getEditorState().read((()=>{const t=u.$getSelection();if(u.$isRangeSelection(t)){null!==t.focus.getNode()&&e.update((()=>{const e=oe({code:"",language:"jsx",meta:""});S.$insertNodeToNearestRoot(e),setTimeout((()=>e.select()),80)}))}}))})),{codeBlockLanguages:a,insertSandpack:i,insertCodeBlock:l,sandpackConfig:r}}),[ct]);function Et(e){const t=u.$getSelection(),n=window.getSelection(),o=document.activeElement,r=e.getRootElement();if(null!==t&&null!==n&&null!==r&&r.contains(n.anchorNode)&&e.isEditable()){const e=n.getRangeAt(0);let t;if(n.anchorNode===r){let e=r;for(;null!=e.firstElementChild;)e=e.firstElementChild;t=e.getBoundingClientRect()}else t=e.getBoundingClientRect();return{top:t.top+window.scrollY,left:t.left+window.scrollX,width:t.width,height:t.height}}return o&&o.className,null}function ft(e,t){return ee({markdown:""},(n=>{e.getEditorState().read((()=>{n.markdown=function({root:e,toMarkdownOptions:t,toMarkdownExtensions:n,visitors:o,jsxComponentDescriptors:r}){return O.toMarkdown($e({root:e,visitors:o,jsxComponentDescriptors:r}),{extensions:n,...t})}({root:u.$getRoot(),...t})}))})).markdown}const vt="undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement&&/Mac|iPod|iPhone|iPad/.test(navigator.platform);function _t(e){const t=function(e){const t=e.anchor,n=e.focus,o=e.anchor.getNode(),r=e.focus.getNode();return o===r?o:e.isBackward()?T.$isAtNodeEnd(n)?o:r:T.$isAtNodeEnd(t)?o:r}(e),n=t.getParent();return g.$isLinkNode(n)?n:g.$isLinkNode(t)?t:null}const[kt,wt]=it(((e,[{activeEditor:t,currentSelection:n,createEditorSubscription:o}])=>{const r=e.node(!1),a=e.node(),i=e.node({type:"inactive"},!0),l=e.node(),s=e.node(),c=e.node(),d=e.node(),m=e.node(),p=e.node(),h=e.node([]);return e.sub(e.pipe(p,e.o.withLatestFrom(n,t),e.o.filter((([,e])=>u.$isRangeSelection(e)))),(([,t,n])=>{null==n||n.getEditorState().read((()=>{const o=_t(t),r=Et(n);o?e.pub(i,{type:"edit",initialUrl:o.getURL(),url:o.getURL(),linkNodeKey:o.getKey(),rectangle:r}):e.pub(i,{type:"edit",initialUrl:"",url:"",linkNodeKey:"",rectangle:r})}))})),e.sub(e.pipe(m,e.o.withLatestFrom(t)),(([,e])=>{null==e||e.dispatchCommand(g.TOGGLE_LINK_COMMAND,null)})),e.pub(o,(t=>t.registerCommand(u.KEY_ESCAPE_COMMAND,(()=>"preview"===e.getValue(i).type&&(e.pub(i,{type:"inactive"}),!0)),u.COMMAND_PRIORITY_LOW))),e.pub(o,(t=>t.registerCommand(u.KEY_MODIFIER_COMMAND,(t=>!!("k"===t.key&&vt?t.metaKey:t.ctrlKey)&&(e.pub(p,!0),!0)),u.COMMAND_PRIORITY_HIGH))),e.link(e.pipe(d,e.o.withLatestFrom(i),e.o.map((([,e])=>{if("preview"===e.type)return{type:"edit",initialUrl:e.url,url:e.url,linkNodeKey:e.linkNodeKey,rectangle:e.rectangle};throw new Error("Cannot switch to edit mode when not in preview mode")}))),i),e.sub(e.pipe(c,e.o.withLatestFrom(i,t)),(([,t,n])=>{if("edit"!==t.type)throw new Error("Cannot apply link edit when not in edit mode");{const o=t.url.trim();""!==o.trim()?(null==n||n.dispatchCommand(g.TOGGLE_LINK_COMMAND,o),e.pub(i,{type:"preview",linkNodeKey:t.linkNodeKey,rectangle:t.rectangle,url:o})):(""!==t.initialUrl&&(null==n||n.dispatchCommand(g.TOGGLE_LINK_COMMAND,null)),e.pub(i,{type:"inactive"}))}})),e.link(e.pipe(l,e.o.withLatestFrom(i),e.o.map((([e,t])=>{if("edit"===t.type)return{...t,url:e};throw new Error("Cannot update link url when not in edit mode")}))),i),e.link(e.pipe(s,e.o.withLatestFrom(i,t),e.o.map((([,e,t])=>{if("edit"===e.type)return null==t||t.focus(),""===e.initialUrl?{type:"inactive"}:{type:"preview",url:e.initialUrl,linkNodeKey:e.linkNodeKey,rectangle:e.rectangle};throw new Error("Cannot cancel edit when not in edit mode")}))),i),e.link(e.pipe(e.combine(n,a),e.o.withLatestFrom(t,i),e.o.map((([[e],t])=>{if(u.$isRangeSelection(e)&&t){const n=_t(e);return n?{type:"preview",url:n.getURL(),linkNodeKey:n.getKey(),rectangle:Et(t)}:{type:"inactive"}}return{type:"inactive"}}))),i),{dialogState:r,onWindowChange:a,linkDialogState:i,updateLinkUrl:l,switchFromPreviewToLinkEdit:d,cancelLinkEdit:s,removeLink:m,openLinkEditDialog:p,applyLinkChanges:c,linkAutocompleteSuggestions:h}}),[ct]),[xt,yt]=it(((e,[{createEditorSubscription:t,lexicalConvertOptions:n,markdownSource:o},{jsxComponentDescriptors:r}])=>{const a=e.node();return e.pub(t,((t,i)=>{function l(){const t=e.getValue(r),l=e.getValue(n),s=ft(i,{jsxComponentDescriptors:t,...l});e.pub(a,s),e.pub(o,s)}return l(),t.registerUpdateListener((({dirtyElements:e,dirtyLeaves:t,prevEditorState:n,tags:o})=>{0===e.size&&0===t.size||o.has("history-merge")||n.isEmpty()||l()}))})),{onChange:a}}),[ct,ut]),[Nt,bt]=it((e=>({toolbarComponents:e.node([])})),[]),{Component:Ct,usePublisher:St,useEmitterValues:Lt}=function(e,t,n){const o=Object.keys(t.required||{}),r=Object.keys(t.optional||{}),a=Object.keys(t.methods||{}),i=Object.keys(t.events||{}),l=at;function s(e,n){const a={};for(const r of o){a[t.required[r]]=n[r]}for(const o of r){const e=n[o];if(void 0!==e){a[t.optional[o]]=e}}e.suppressFlushSync=!0,e.pubKeys(a),e.suppressFlushSync=!1}const c=m.forwardRef(((c,d)=>{const u=m.useMemo((()=>ee(e(),(e=>s(e,c)))),[]);var p;rt((()=>{s(u,c),u.resetSingletonSubs();for(const e of i)e in c&&u.singletonSubKey(t.events[e],c[e]);return()=>{u.resetSingletonSubs()}}),[c]),m.useImperativeHandle(d,(p=function(e){return a.reduce(((n,o)=>{const r=t.methods[o];return n[o]=t=>{e.pubKey(r,t)},n}),{})}(u),()=>p));const g=c.children;return m.createElement(l.Provider,{value:u},n?m.createElement(n,function(e,t){const n={},o={};let r=0;const a=e.length;for(;r<a;)o[e[r]]=1,r+=1;for(const i in t)Object.prototype.hasOwnProperty.call(o,i)||(n[i]=t[i]);return n}([...o,...r,...i],c),g):g)}));return c.displayName="Gurx Component",{Component:c,useEmitter:(e,t)=>{const n=m.useContext(l);rt((()=>n.subKey(e,t)),[t])},useEmitterValues:(...e)=>{const t=m.useContext(l),[n,o]=m.useState((()=>t.getKeyValues(e)));return rt((()=>null==t?void 0:t.subKeys(e,(n=>{const r=()=>{o(1===e.length?[n]:n)};t.suppressFlushSync,r()}))),[e]),n},usePubKeys:()=>m.useContext(l).pubKeys,usePublisher:e=>{const t=j.useContext(l);return m.useCallback((n=>{t.pubKey(e,n)}),[e,t])}}}(function(...e){return()=>function(...e){const t=new Map,n=ot(),o=({id:r,constructor:a,dependencies:i})=>{if(t.has(r))return t.get(r);const l=a(n,i.map((t=>o(e.find((e=>e.id===t.id))))));return n.label(l),t.set(r,l),l};return e.forEach(o),n}(...e)}(st,mt,ht,kt,dt,xt,Nt),{required:{markdownSource:"markdownSource",headMarkdown:"headMarkdown",jsxComponentDescriptors:"jsxComponentDescriptors",sandpackConfig:"sandpackConfig",toolbarComponents:"toolbarComponents",markdownParseOptions:"markdownParseOptions",lexicalConvertOptions:"lexicalConvertOptions",lexicalNodes:"lexicalNodes"},optional:{editorRootElementRef:"editorRootElementRef",viewMode:"viewMode",linkAutocompleteSuggestions:"linkAutocompleteSuggestions",imageAutocompleteSuggestions:"imageAutocompleteSuggestions",codeBlockLanguages:"codeBlockLanguages"},events:{onChange:"onChange"}},(({children:e})=>m.createElement("div",null,m.createElement(Tt,null),e))),Tt=()=>{const e=St("editor"),[t]=L.useLexicalComposerContext();return m.useEffect((()=>e(t)),[t,e]),null},Mt=e=>j.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},j.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},j.createElement("path",{d:"M0 0h24v24H0z"})),j.createElement("g",{mask:"url(#a)"},j.createElement("path",{d:"m9.55 18-5.7-5.7 1.425-1.425L9.55 15.15l9.175-9.175L20.15 7.4 9.55 18Z"}))),Ot=e=>j.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},j.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},j.createElement("path",{d:"M0 0h24v24H0z"})),j.createElement("g",{mask:"url(#a)"},j.createElement("path",{d:"M6.4 19 5 17.6l5.6-5.6L5 6.4 6.4 5l5.6 5.6L17.6 5 19 6.4 13.4 12l5.6 5.6-1.4 1.4-5.6-5.6L6.4 19Z"}))),Rt=e=>j.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},j.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},j.createElement("path",{d:"M0 0h24v24H0z"})),j.createElement("g",{mask:"url(#a)"},j.createElement("path",{d:"M7 18V2h13v16H7Zm2-2h9V4H9v12Zm-6 6V6h2v14h11v2H3Z"}))),At=e=>j.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},j.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},j.createElement("path",{d:"M0 0h24v24H0z"})),j.createElement("g",{mask:"url(#a)"},j.createElement("path",{d:"M5 19h1.4l8.625-8.625-1.4-1.4L5 17.6V19ZM19.3 8.925l-4.25-4.2L17.875 1.9 22.1 6.125l-2.8 2.8ZM3 21v-4.25l10.6-10.6 4.25 4.25L7.25 21H3Z"}))),Dt=e=>j.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},j.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},j.createElement("path",{d:"M0 0h24v24H0z"})),j.createElement("g",{mask:"url(#a)"},j.createElement("path",{d:"m19.25 16.45-1.5-1.55a3.05 3.05 0 0 0 1.625-1.063A2.867 2.867 0 0 0 20 12c0-.833-.292-1.542-.875-2.125A2.893 2.893 0 0 0 17 9h-4V7h4c1.383 0 2.563.487 3.538 1.462C21.513 9.437 22 10.617 22 12c0 .95-.246 1.825-.737 2.625a4.79 4.79 0 0 1-2.013 1.825ZM15.85 13l-2-2H16v2h-.15Zm3.95 9.6L1.4 4.2l1.4-1.4 18.4 18.4-1.4 1.4ZM11 17H7c-1.383 0-2.562-.488-3.537-1.463C2.488 14.562 2 13.383 2 12c0-1.15.35-2.175 1.05-3.075.7-.9 1.6-1.492 2.7-1.775L7.6 9H7c-.833 0-1.542.292-2.125.875A2.893 2.893 0 0 0 4 12c0 .833.292 1.542.875 2.125A2.893 2.893 0 0 0 7 15h4v2Zm-3-4v-2h1.625l1.975 2H8Z"}))),It=e=>j.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},j.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},j.createElement("path",{d:"M0 0h24v24H0z"})),j.createElement("g",{mask:"url(#a)"},j.createElement("path",{d:"M3 21V3h9v2H5v14h14v-7h2v9H3Zm6.7-5.3-1.4-1.4L17.6 5H14V3h7v7h-2V6.4l-9.3 9.3Z"}))),Ht=e=>j.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},j.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},j.createElement("path",{d:"M0 0h24v24H0z"})),j.createElement("g",{mask:"url(#a)"},j.createElement("path",{d:"m12 15-5-5h10l-5 5Z"}))),Vt={editorRoot:"_editorRoot_gm91f_47",editorWrapper:"_editorWrapper_gm91f_141",nestedListItem:"_nestedListItem_gm91f_145",toolbarRoot:"_toolbarRoot_gm91f_149",toolbarModeSwitch:"_toolbarModeSwitch_gm91f_170",toolbarToggleItem:"_toolbarToggleItem_gm91f_179",toolbarGroupOfGroups:"_toolbarGroupOfGroups_gm91f_189",toolbarToggleSingleGroup:"_toolbarToggleSingleGroup_gm91f_193",toolbarButton:"_toolbarButton_gm91f_207",toolbarNodeKindSelectContainer:"_toolbarNodeKindSelectContainer_gm91f_236",toolbarButtonDropdownContainer:"_toolbarButtonDropdownContainer_gm91f_237",toolbarCodeBlockLanguageSelectContent:"_toolbarCodeBlockLanguageSelectContent_gm91f_238",toolbarNodeKindSelectTrigger:"_toolbarNodeKindSelectTrigger_gm91f_252",toolbarButtonSelectTrigger:"_toolbarButtonSelectTrigger_gm91f_253",toolbarCodeBlockLanguageSelectTrigger:"_toolbarCodeBlockLanguageSelectTrigger_gm91f_286",toolbarNodeKindSelectItem:"_toolbarNodeKindSelectItem_gm91f_292",toolbarNodeKindSelectDropdownArrow:"_toolbarNodeKindSelectDropdownArrow_gm91f_315",contentEditable:"_contentEditable_gm91f_319",sandpackWrapper:"_sandpackWrapper_gm91f_327",frontmatterWrapper:"_frontmatterWrapper_gm91f_331",frontmatterToggleButton:"_frontmatterToggleButton_gm91f_341",frontmatterEditorTable:"_frontmatterEditorTable_gm91f_349",iconButton:"_iconButton_gm91f_367",frontmatterInput:"_frontmatterInput_gm91f_373",primaryButton:"_primaryButton_gm91f_388",linkDialogEditForm:"_linkDialogEditForm_gm91f_398",linkDialogInputContainer:"_linkDialogInputContainer_gm91f_404",linkDialogInputWrapper:"_linkDialogInputWrapper_gm91f_410",linkDialogInput:"_linkDialogInput_gm91f_404",linkDialogAutocompleteContainer:"_linkDialogAutocompleteContainer_gm91f_440",linkDialogAnchor:"_linkDialogAnchor_gm91f_485",linkDialogPopoverContent:"_linkDialogPopoverContent_gm91f_499",tableColumnEditorPopoverContent:"_tableColumnEditorPopoverContent_gm91f_499",dialogContent:"_dialogContent_gm91f_499",linkDialogPreviewAnchor:"_linkDialogPreviewAnchor_gm91f_513",tooltipContent:"_tooltipContent_gm91f_535",actionButton:"_actionButton_gm91f_549",primaryActionButton:"_primaryActionButton_gm91f_555",tableEditor:"_tableEditor_gm91f_564",toolCell:"_toolCell_gm91f_575",tableColumnEditorTrigger:"_tableColumnEditorTrigger_gm91f_592",tableRowEditorTrigger:"_tableRowEditorTrigger_gm91f_592",addRowButton:"_addRowButton_gm91f_592",addColumnButton:"_addColumnButton_gm91f_592",tableColumnEditorToolbar:"_tableColumnEditorToolbar_gm91f_626",toggleGroupRoot:"_toggleGroupRoot_gm91f_638",tableToolsColumn:"_tableToolsColumn_gm91f_655",leftAlignedCell:"_leftAlignedCell_gm91f_663",rightAlignedCell:"_rightAlignedCell_gm91f_667",centeredCell:"_centeredCell_gm91f_671",dialogOverlay:"_dialogOverlay_gm91f_699",overlayShow:"_overlayShow_gm91f_1",contentShow:"_contentShow_gm91f_1"};u.createCommand();const Pt=20;function $t({initialUrl:e,onSubmit:t,onCancel:n,linkAutocompleteSuggestions:o}){const[r,a]=m.useState(o.slice(0,Pt)),{isOpen:i,getToggleButtonProps:l,getMenuProps:s,getInputProps:c,highlightedIndex:u,getItemProps:p,selectedItem:g}=D.useCombobox({initialInputValue:e,onInputValueChange({inputValue:e}){e=(null==e?void 0:e.toLowerCase())||"";const t=[];for(const n of o)if(n.toLowerCase().includes(e)&&(t.push(n),t.length>=Pt))break;a(t)},items:r,itemToString:e=>e??""}),h=m.useCallback((e=>{var n;"Escape"===e.key?null==(n=e.target.form)||n.reset():"Enter"!==e.key||i&&0!==r.length||(e.preventDefault(),t(e.target.value))}),[i,r,t]),E=c(),f={...E,onKeyDown:e=>{h(e),E.onKeyDown(e)}},v=i&&r.length>0;return m.createElement("form",{onSubmit:e=>{e.preventDefault(),t(g||"")},onReset:n,className:d(Vt.linkDialogEditForm)},m.createElement("div",{className:Vt.linkDialogInputContainer},m.createElement("div",{"data-visible-dropdown":v,className:Vt.linkDialogInputWrapper},m.createElement("input",{className:Vt.linkDialogInput,...f,autoFocus:!0,size:30,"data-editor-dialog":!0}),m.createElement("button",{"aria-label":"toggle menu",type:"button",...l()},m.createElement(Ht,null))),m.createElement("div",{className:Vt.linkDialogAutocompleteContainer},m.createElement("ul",{...s(),"data-visible":v},r.map(((e,t)=>m.createElement("li",{"data-selected":g===e,"data-highlighted":u===t,key:`${e}${t}`,...p({item:e,index:t})},e)))))),m.createElement(Ft,{type:"submit",title:"Set URL","aria-label":"Set URL"},m.createElement(Mt,null)),m.createElement(Ft,{type:"reset",title:"Cancel change","aria-label":"Cancel change"},m.createElement(Ot,null)))}function Bt(){const[e]=Lt("editorRootElementRef"),t=St("onWindowChange"),[n,o,r]=Lt("linkDialogState","linkAutocompleteSuggestions","activeEditor"),a=St("updateLinkUrl"),i=St("cancelLinkEdit"),l=St("switchFromPreviewToLinkEdit"),s=St("removeLink"),c=St("applyLinkChanges");m.useEffect((()=>{const e=()=>{null==r||r.getEditorState().read((()=>{t(!0)}))};return window.addEventListener("resize",e),window.addEventListener("scroll",e),()=>{window.removeEventListener("resize",e),window.removeEventListener("scroll",e)}}),[r,t]);const[u,p]=m.useState(!1),g=null==n?void 0:n.rectangle,h=m.useCallback((e=>{a(e),c(!0)}),[c,a]),E="preview"===n.type&&n.url.startsWith("http");return m.createElement(z.Root,{open:"inactive"!==n.type},m.createElement(z.Anchor,{"data-visible":"edit"===n.type,className:Vt.linkDialogAnchor,style:{top:null==g?void 0:g.top,left:null==g?void 0:g.left,width:null==g?void 0:g.width,height:null==g?void 0:g.height}}),m.createElement(z.Portal,{container:null==e?void 0:e.current},m.createElement(z.Content,{className:d(Vt.linkDialogPopoverContent),sideOffset:5,onOpenAutoFocus:e=>e.preventDefault(),key:n.linkNodeKey},"edit"===n.type&&m.createElement($t,{initialUrl:n.url,onSubmit:h,onCancel:i.bind(null,!0),linkAutocompleteSuggestions:o}),"preview"===n.type&&m.createElement(m.Fragment,null,m.createElement("a",{className:Vt.linkDialogPreviewAnchor,href:n.url,...E?{target:"_blank",rel:"noreferrer"}:{},title:E?`Open ${n.url} in new window`:n.url},m.createElement("span",null,n.url),E&&m.createElement(It,null)),m.createElement(Ft,{onClick:()=>l(!0),title:"Edit link URL","aria-label":"Edit link URL"},m.createElement(At,null)),m.createElement(q.Provider,null,m.createElement(q.Root,{open:u},m.createElement(q.Trigger,{asChild:!0},m.createElement(Ft,{title:"Copy to clipboard","aria-label":"Copy link URL",onClick:()=>{window.navigator.clipboard.writeText(n.url).then((()=>{p(!0),setTimeout((()=>p(!1)),1e3)}))}},u?m.createElement(Mt,null):m.createElement(Rt,null))),m.createElement(q.Portal,{container:null==e?void 0:e.current},m.createElement(q.Content,{className:d(Vt.tooltipContent),sideOffset:5},"Copied!",m.createElement(q.Arrow,null))))),m.createElement(Ft,{title:"Remove link","aria-label":"Remove link",onClick:()=>s(!0)},m.createElement(Dt,null))))))}const Ft=m.forwardRef((({className:e,...t},n)=>m.createElement("button",{className:d(Vt.actionButton,e),ref:n,...t})));function Kt(e){const t=u.$getSelection();if(!u.$isRangeSelection(t))return!1;const n=function(e){const t=e.getNodes();return 0===t.length?new Set([e.anchor.getNode().getParentOrThrow(),e.focus.getNode().getParentOrThrow()]):new Set(t.map((e=>u.$isElementNode(e)?e:e.getParentOrThrow())))}(t);let o=0;for(const r of n)if(h.$isListNode(r))o=Math.max(h.$getListDepth(r)+1,o);else if(h.$isListItemNode(r)){const e=r.getParent();if(1===(null==e?void 0:e.getChildren().length)){const t=null==e?void 0:e.getParent();if(h.$isListItemNode(t)&&1===t.getChildren().length)return!1}if(!h.$isListNode(e))throw new Error("ListMaxIndentLevelPlugin: A ListItemNode must have a ListNode for a parent.");o=Math.max(h.$getListDepth(e)+1,o)}return o<=e}function Ut({maxDepth:e}){const[t]=L.useLexicalComposerContext();return m.useEffect((()=>t.registerCommand(u.INDENT_CONTENT_COMMAND,(()=>!Kt(e??7)),u.COMMAND_PRIORITY_CRITICAL)),[t,e]),null}const Zt=()=>{return m.createElement(H.MarkdownShortcutPlugin,{transformers:(e=I.TRANSFORMERS,e.find((e=>e===I.CODE)).replace=(e,t,n)=>{const o=oe({code:"",language:n?n[1]:"",meta:""});e.replace(o),setTimeout((()=>o.select()),80)},e)});var e},jt=()=>{const[e]=Lt("historyState");return m.createElement(M.HistoryPlugin,{externalHistoryState:e})};function zt({oldText:e,newText:t}){const n=B.formatLines(B.diffLines(e,t),{context:3});if(""===n.trim())return m.createElement("div",null,"No changes");const[o]=$.parseDiff(n,{nearbySequences:"zip"});return m.createElement($.Diff,{viewType:"split",diffType:"modify",hunks:o.hunks||[]},(e=>e.map((e=>m.createElement($.Hunk,{key:e.content,hunk:e})))))}function qt(){const[e,t]=Lt("markdownSource","headMarkdown");return m.createElement(zt,{oldText:t,newText:e})}const Jt=({children:e})=>{const[t]=Lt("viewMode");return m.createElement("div",null,m.createElement("div",{style:{display:"editor"===t?"block":"none"}},e),"diff"===t?m.createElement(qt,null):null,"markdown"===t?m.createElement(Wt,null):null)},Wt=()=>{const[e]=Lt("markdownSource"),t=St("markdownSource"),n=m.useRef(null);return m.createElement("div",null,m.createElement(P.SandpackProvider,null,m.createElement(P.CodeEditor,{showLineNumbers:!0,additionalLanguages:[{name:"markdown",extensions:["md"],language:V.markdown()}],initMode:"lazy",filePath:"file.md",code:e,onCodeUpdate:t,ref:n})))},Gt=m.forwardRef((({title:e,children:t},n)=>{const[o]=Lt("editorRootElementRef");return m.createElement(q.Provider,{delayDuration:100},m.createElement(q.Root,null,m.createElement(q.Trigger,{ref:n,asChild:!0},m.createElement("span",null,t)),m.createElement(q.Portal,{container:null==o?void 0:o.current},m.createElement(q.Content,{className:d(Vt.tooltipContent),sideOffset:10},e))))})),Yt=m.forwardRef((({children:e,className:t,...n},o)=>m.createElement(W.Item,{...n,ref:o,className:d(t,Vt.toolbarNodeKindSelectItem)},m.createElement(W.ItemText,null,e)))),Qt=({title:e,placeholder:t,className:n})=>m.createElement(Gt,{title:e},m.createElement(W.Trigger,{"aria-label":t,className:d(Vt.toolbarNodeKindSelectTrigger,n)},m.createElement(W.Value,{placeholder:t}),m.createElement(W.Icon,{className:Vt.toolbarNodeKindSelectDropdownArrow},m.createElement(Ht,null)))),Xt=({children:e,className:t=Vt.toolbarNodeKindSelectContainer})=>{const[n]=Lt("editorRootElementRef");return m.createElement(W.Portal,{container:null==n?void 0:n.current},m.createElement(W.Content,{className:t,onCloseAutoFocus:e=>e.preventDefault(),position:"popper"},m.createElement(W.Viewport,null,e)))},en=({children:e,title:t,className:n})=>m.createElement(Gt,{title:t},m.createElement(W.Trigger,{className:d(Vt.toolbarButtonSelectTrigger,n)},e,m.createElement(W.Icon,{className:Vt.toolbarNodeKindSelectDropdownArrow},m.createElement(Ht,null))));function tn(){const[e,t,n]=Lt("activeEditorType","activeEditor","codeBlockLanguages"),o=m.useMemo((()=>{let n;return t.getEditorState().read((()=>{const t=u.$getNodeByKey(e.nodeKey);n=t.getLanguage()})),n}),[t,e]);return m.createElement(W.Root,{value:o,onValueChange:n=>{t.update((()=>{const t=u.$getNodeByKey(e.nodeKey);t.setLanguage(n),setTimeout((()=>{t.select()}),80)}))}},m.createElement(Qt,{title:"Change code block language",placeholder:"Language",className:Vt.toolbarCodeBlockLanguageSelectTrigger}),m.createElement(Xt,{className:Vt.toolbarCodeBlockLanguageSelectContent},Object.entries(n).map((([e,t])=>m.createElement(Yt,{key:e,value:e},t)))))}const nn=e=>j.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},j.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},j.createElement("path",{d:"M0 0h24v24H0z"})),j.createElement("g",{mask:"url(#a)"},j.createElement("path",{d:"M5 21V6H4V4h5V3h6v1h5v2h-1v15H5Zm2-2h10V6H7v13Zm2-2h2V8H9v9Zm4 0h2V8h-2v9Z"}))),on=e=>j.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},j.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},j.createElement("path",{d:"M0 0h24v24H0z"})),j.createElement("g",{mask:"url(#a)"},j.createElement("path",{d:"m8 18-6-6 6-6 1.425 1.425-4.6 4.6L9.4 16.6 8 18Zm8 0-1.425-1.425 4.6-4.6L14.6 7.4 16 6l6 6-6 6Z"}))),rn=e=>j.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},j.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},j.createElement("path",{d:"M0 0h24v24H0z"})),j.createElement("g",{mask:"url(#a)"},j.createElement("path",{d:"m5 15.95 6 3.475v-6.85L5 9.1v6.85Zm8 3.475 6-3.475V9.1l-6 3.475v6.85Zm-6.925-12L12 10.85l5.925-3.425L12 4 6.075 7.425ZM3 17.125V6.875L12 1.7l9 5.175v10.25L12 22.3l-9-5.175Z"}))),an=e=>j.createElement("svg",{width:25,height:24,viewBox:"0 0 25 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e},j.createElement("mask",{id:"mask0_318_257",style:{maskType:"alpha"},maskUnits:"userSpaceOnUse",x:0,y:0,width:25,height:24},j.createElement("rect",{x:.929688,width:24,height:24,fill:"#D9D9D9"})),j.createElement("g",{mask:"url(#mask0_318_257)"},j.createElement("path",{d:"M12.4297 12H14.4297V10H16.4297V8H14.4297V6H12.4297V8H10.4297V10H12.4297V12ZM10.4297 16H16.4297V14H10.4297V16ZM5.92969 20V2H14.9297L20.9297 8V20H5.92969ZM7.92969 18H18.9297V9L13.9297 4H7.92969V18Z",fill:"currentColor"}))),ln=e=>j.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},j.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},j.createElement("path",{d:"M0 0h24v24H0z"})),j.createElement("g",{mask:"url(#a)"},j.createElement("path",{d:"M6.8 19V5h5.525c1.083 0 2.083.333 3 1 .917.667 1.375 1.592 1.375 2.775 0 .85-.192 1.504-.575 1.962-.383.459-.742.788-1.075.988.417.183.88.525 1.388 1.025.508.5.762 1.25.762 2.25 0 1.483-.542 2.521-1.625 3.113-1.083.591-2.1.887-3.05.887H6.8Zm3.025-2.8h2.6c.8 0 1.287-.204 1.462-.613.175-.408.263-.704.263-.887 0-.183-.088-.48-.263-.888-.175-.408-.687-.612-1.537-.612H9.825v3Zm0-5.7h2.325c.55 0 .95-.142 1.2-.425a1.4 1.4 0 0 0 .375-.95c0-.4-.142-.725-.425-.975-.283-.25-.65-.375-1.1-.375H9.825V10.5Z"}))),sn=e=>j.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},j.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},j.createElement("path",{d:"M0 0h24v24H0z"})),j.createElement("g",{mask:"url(#a)"},j.createElement("path",{d:"M5 19v-2.5h4l3-9H8V5h10v2.5h-3.5l-3 9H15V19H5Z"}))),cn=e=>j.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},j.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},j.createElement("path",{d:"M0 0h24v24H0z"})),j.createElement("g",{mask:"url(#a)"},j.createElement("path",{d:"M9 19v-2h12v2H9Zm0-6v-2h12v2H9Zm0-6V5h12v2H9ZM5 20a1.93 1.93 0 0 1-1.413-.587A1.928 1.928 0 0 1 3 18c0-.55.196-1.021.587-1.413A1.928 1.928 0 0 1 5 16c.55 0 1.02.196 1.412.587.392.392.588.863.588 1.413s-.196 1.021-.588 1.413A1.925 1.925 0 0 1 5 20Zm0-6c-.55 0-1.021-.196-1.413-.588A1.925 1.925 0 0 1 3 12c0-.55.196-1.021.587-1.413A1.928 1.928 0 0 1 5 10c.55 0 1.02.196 1.412.587.392.392.588.863.588 1.413s-.196 1.02-.588 1.412A1.923 1.923 0 0 1 5 14Zm0-6c-.55 0-1.021-.196-1.413-.588A1.925 1.925 0 0 1 3 6c0-.55.196-1.02.587-1.412A1.927 1.927 0 0 1 5 4c.55 0 1.02.196 1.412.588C6.804 4.979 7 5.45 7 6c0 .55-.196 1.02-.588 1.412A1.923 1.923 0 0 1 5 8Z"}))),dn=e=>j.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},j.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},j.createElement("path",{d:"M0 0h24v24H0z"})),j.createElement("g",{mask:"url(#a)"},j.createElement("path",{d:"M3 22v-1.5h2.5v-.75H4v-1.5h1.5v-.75H3V16h4v2.25L6 19l1 .75V22H3Zm0-7v-3.75h2.5v-.75H3V9h4v3.75H4.5v.75H7V15H3Zm1.5-7V3.5H3V2h3v6H4.5ZM9 19v-2h12v2H9Zm0-6v-2h12v2H9Zm0-6V5h12v2H9Z"}))),un=e=>j.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},j.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},j.createElement("path",{d:"M0 0h24v24H0z"})),j.createElement("g",{mask:"url(#a)"},j.createElement("path",{d:"M5 21v-2h14v2H5Zm7-4c-1.683 0-2.992-.525-3.925-1.575-.933-1.05-1.4-2.442-1.4-4.175V3H9.25v8.4c0 .933.233 1.692.7 2.275.467.583 1.15.875 2.05.875.9 0 1.583-.292 2.05-.875.467-.583.7-1.342.7-2.275V3h2.575v8.25c0 1.733-.467 3.125-1.4 4.175C14.992 16.475 13.683 17 12 17Z"}))),mn=e=>j.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},j.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},j.createElement("path",{d:"M0 0h24v24H0z"})),j.createElement("g",{mask:"url(#a)"},j.createElement("path",{d:"M3 21v-6h2v4h4v2H3Zm12 0v-2h4v-4h2v6h-6Zm-6.4-5.4L5 12l3.6-3.6L10 9.825 7.825 12 10 14.175 8.6 15.6Zm6.8 0L14 14.175 16.175 12 14 9.825 15.4 8.4 19 12l-3.6 3.6ZM3 9V3h6v2H5v4H3Zm16 0V5h-4V3h6v6h-2Z"}))),pn=e=>j.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},j.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},j.createElement("path",{d:"M0 0h24v24H0z"})),j.createElement("g",{mask:"url(#a)"},j.createElement("path",{d:"M5 7h4v2H5z"}),j.createElement("path",{d:"M5 7h4v2H5zm0 7h4v2H5z"}),j.createElement("path",{d:"M5 14h4v2H5zm5-7h4v2h-4z"}),j.createElement("path",{d:"M10 7h4v2h-4zm0 7h4v2h-4z"}),j.createElement("path",{d:"M10 14h4v2h-4zm5-7h4v2h-4z"}),j.createElement("path",{d:"M15 7h4v2h-4zm0 7h4v2h-4z"}),j.createElement("path",{d:"M15 14h4v2h-4z"}))),gn=e=>j.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},j.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},j.createElement("path",{d:"M0 0h24v24H0z"})),j.createElement("g",{mask:"url(#a)"},j.createElement("path",{d:"M4 13v-2h16v2H4Z"}))),hn=e=>j.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},j.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},j.createElement("path",{d:"M0 0h24v24H0z"})),j.createElement("g",{mask:"url(#a)"},j.createElement("path",{d:"M11 17H7c-1.383 0-2.562-.488-3.537-1.463C2.488 14.562 2 13.383 2 12s.488-2.563 1.463-3.538C4.438 7.487 5.617 7 7 7h4v2H7c-.833 0-1.542.292-2.125.875A2.893 2.893 0 0 0 4 12c0 .833.292 1.542.875 2.125A2.893 2.893 0 0 0 7 15h4v2Zm-3-4v-2h8v2H8Zm5 4v-2h4c.833 0 1.542-.292 2.125-.875A2.893 2.893 0 0 0 20 12c0-.833-.292-1.542-.875-2.125A2.893 2.893 0 0 0 17 9h-4V7h4c1.383 0 2.563.487 3.538 1.462C21.513 9.437 22 10.617 22 12s-.487 2.562-1.462 3.537C19.563 16.512 18.383 17 17 17h-4Z"}))),En=e=>j.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e},j.createElement("mask",{id:"mask0_46_56",style:{maskType:"alpha"},maskUnits:"userSpaceOnUse",x:0,y:0,width:24,height:24},j.createElement("rect",{width:24,height:24,fill:"#D9D9D9"})),j.createElement("g",{mask:"url(#mask0_46_56)"},j.createElement("path",{d:"M19 19L14 14L15.4 12.575L18 15.175V5H20V15.175L22.6 12.575L24 14L19 19Z",fill:"currentColor"}),j.createElement("path",{d:"M13 19H10.5V9L6.5 15L2.5 9V19H0V5H2.5L6.5 11L10.5 5H13V19Z",fill:"currentColor"}))),fn=e=>j.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e},j.createElement("mask",{id:"mask0_318_249",style:{maskType:"alpha"},maskUnits:"userSpaceOnUse",x:0,y:0,width:24,height:24},j.createElement("rect",{width:24,height:24,fill:"#D9D9D9"})),j.createElement("g",{mask:"url(#mask0_318_249)"},j.createElement("path",{d:"M5 21V19H19V21H5Z",fill:"currentColor"}),j.createElement("path",{d:"M6.80005 17V3H12.325C13.4084 3 14.4084 3.33333 15.325 4C16.2417 4.66667 16.7001 5.59167 16.7001 6.775C16.7001 7.625 16.5084 8.279 16.125 8.737C15.7417 9.19567 15.3834 9.525 15.05 9.725C15.4667 9.90833 15.9294 10.25 16.438 10.75C16.946 11.25 17.2001 12 17.2001 13C17.2001 14.4833 16.6584 15.521 15.575 16.113C14.4917 16.7043 13.475 17 12.525 17H6.80005ZM9.82505 14.2H12.425C13.225 14.2 13.7124 13.9957 13.887 13.587C14.0624 13.179 14.15 12.8833 14.15 12.7C14.15 12.5167 14.0624 12.2207 13.887 11.812C13.7124 11.404 13.2 11.2 12.35 11.2H9.82505V14.2ZM9.82505 8.5H12.15C12.7 8.5 13.1 8.35833 13.35 8.075C13.6 7.79167 13.725 7.475 13.725 7.125C13.725 6.725 13.5834 6.4 13.3 6.15C13.0167 5.9 12.65 5.775 12.2 5.775H9.82505V8.5Z",fill:"currentColor"}))),vn=e=>j.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},j.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},j.createElement("path",{d:"M0 0h24v24H0z"})),j.createElement("g",{mask:"url(#a)"},j.createElement("path",{d:"M3 21V3h18v18H3ZM5 9h14V5H5v4Zm5.325 5h3.35v-3h-3.35v3Zm0 5h3.35v-3h-3.35v3ZM5 14h3.325v-3H5v3Zm10.675 0H19v-3h-3.325v3ZM5 19h3.325v-3H5v3Zm10.675 0H19v-3h-3.325v3Z"}),j.createElement("path",{d:"M8.325 9h2V5h-2v4Zm5.35 0h2V5h-2v4Z"}))),_n=()=>{const[e]=Lt("currentBlockType"),t=St("applyBlockType");return m.createElement(W.Root,{value:e||"",onValueChange:t},m.createElement(Qt,{title:"Select block type",placeholder:"Block type"}),m.createElement(Xt,null,m.createElement(Yt,{value:"paragraph"},"Paragraph"),m.createElement(Yt,{value:"quote"},"Quote"),m.createElement(W.Separator,null),m.createElement(Yt,{value:"h1"},"Heading 1"),m.createElement(Yt,{value:"h2"},"Heading 2"),m.createElement(Yt,{value:"h3"},"Heading 3"),m.createElement(Yt,{value:"h4"},"Heading 4"),m.createElement(Yt,{value:"h5"},"Heading 5"),m.createElement(Yt,{value:"h6"},"Heading 6"),m.createElement(W.Separator,null),m.createElement(Yt,{value:"note"},"Note"),m.createElement(Yt,{value:"tip"},"Tip"),m.createElement(Yt,{value:"info"},"Info"),m.createElement(Yt,{value:"caution"},"Caution"),m.createElement(Yt,{value:"danger"},"Danger")))},kn=e=>j.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e},j.createElement("mask",{id:"mask0_343_38",style:{maskType:"alpha"},maskUnits:"userSpaceOnUse",x:0,y:0,width:24,height:24},j.createElement("rect",{width:24,height:24,fill:"#D9D9D9"})),j.createElement("g",{mask:"url(#mask0_343_38)"},j.createElement("path",{d:"M3 21V3H14V5H5V19H19V10H21V21H3ZM17 9V7H15V5H17V3H19V5H21V7H19V9H17ZM6 17H18L14.25 12L11.25 16L9 13L6 17Z",fill:"currentColor"}))),wn=m.forwardRef(((e,t)=>{const[n,o]=Lt("editorRootElementRef","imageAutocompleteSuggestions"),[r,a]=m.useState(!1),i=St("insertImage"),l=m.useCallback((e=>{i(e),a(!1)}),[i]);return m.createElement(G.Root,{open:r,onOpenChange:a},m.createElement(G.Trigger,{asChild:!0},m.createElement(J.Button,{className:Vt.toolbarButton,...e,ref:t},m.createElement(Gt,{title:"Insert image"},m.createElement(kn,null)))),m.createElement(G.Portal,{container:n.current},m.createElement(G.Overlay,{className:Vt.dialogOverlay}),m.createElement(G.Content,{className:Vt.dialogContent},m.createElement(xn,{initialUrl:"",onSubmit:l,imageAutocompleteSuggestions:o}))))}));u.createCommand();const xn=({initialUrl:e,onSubmit:t,imageAutocompleteSuggestions:n})=>{const[o,r]=m.useState(n.slice(0,20)),{isOpen:a,getToggleButtonProps:i,getMenuProps:l,getInputProps:s,highlightedIndex:c,getItemProps:u,selectedItem:p}=D.useCombobox({initialInputValue:e,onInputValueChange({inputValue:e}){e=(null==e?void 0:e.toLowerCase())||"";const t=[];for(const o of n)if(o.toLowerCase().includes(e)&&(t.push(o),t.length>=20))break;r(t)},items:o,itemToString:e=>e??""}),g=m.useCallback((e=>{var n;"Escape"===e.key?null==(n=e.target.form)||n.reset():"Enter"!==e.key||a&&0!==o.length||(e.preventDefault(),t(e.target.value))}),[a,o,t]),h=s(),E={...h,onKeyDown:e=>{g(e),h.onKeyDown(e)}},f=a&&o.length>0;return m.createElement("form",{onSubmit:e=>{e.preventDefault(),t(p||"")},className:d(Vt.linkDialogEditForm)},m.createElement("div",{className:Vt.linkDialogInputContainer},m.createElement("div",{"data-visible-dropdown":f,className:Vt.linkDialogInputWrapper},m.createElement("input",{placeholder:"Paste or select an image url",className:Vt.linkDialogInput,...E,autoFocus:!0,size:30,"data-editor-dialog":!0}),m.createElement("button",{"aria-label":"toggle menu",type:"button",...i()},m.createElement(Ht,null))),m.createElement("div",{className:Vt.linkDialogAutocompleteContainer},m.createElement("ul",{...l(),"data-visible":f},o.map(((e,t)=>m.createElement("li",{"data-selected":p===e,"data-highlighted":c===t,key:`${e}${t}`,...u({item:e,index:t})},e)))))),m.createElement(yn,{type:"submit",title:"Insert image","aria-label":"Insert image",className:Vt.primaryActionButton},m.createElement(Mt,null)),m.createElement(G.Close,{className:Vt.actionButton},m.createElement(Ot,null)))},yn=m.forwardRef((({className:e,...t},n)=>m.createElement("button",{className:d(Vt.actionButton,e),ref:n,...t}))),Nn=m.forwardRef((({title:e,children:t,className:n,...o},r)=>m.createElement(J.ToggleItem,{className:d(n,Vt.toolbarToggleItem),...o,ref:r},m.createElement(Gt,{title:e},t)))),bn=m.forwardRef((({title:e,children:t,...n},o)=>m.createElement(J.Button,{className:Vt.toolbarButton,...n,ref:o},m.createElement(Gt,{title:e},t)))),Cn=m.forwardRef((({children:e,className:t,...n},o)=>m.createElement(J.ToggleGroup,{...n,type:"single",ref:o,className:d(Vt.toolbarToggleSingleGroup,t)},e))),Sn=m.forwardRef((({on:e,title:t,children:n,...o},r)=>m.createElement(Cn,{...o,value:e?"on":"off",ref:r},m.createElement(Nn,{title:t,value:"on"},n)))),Ln=({children:e})=>m.createElement("div",{className:Vt.toolbarGroupOfGroups},e),Tn=J.ToolbarSeparator,Mn=()=>{const[e]=Lt("currentFormat","currentListType"),t=St("applyFormat"),n=0!=(1&e),o=0!=(2&e),r=0!=(8&e),a=n?"Remove bold":"Bold",i=o?"Remove italic":"Italic",l=r?"Remove underline":"Underline";return m.createElement(Ln,null,m.createElement(Sn,{title:a,"aria-label":"Bold",on:n,onValueChange:t.bind(null,"bold")},m.createElement(ln,null)),m.createElement(Sn,{title:i,"aria-label":"Italic",on:o,onValueChange:t.bind(null,"italic")},m.createElement(sn,null)),m.createElement(Sn,{"aria-label":"Underline",title:l,on:r,onValueChange:t.bind(null,"underline")},m.createElement(un,{style:{transform:"translateY(2px)"}})))},On=()=>{const[e]=Lt("currentListType"),t=St("applyListType");return m.createElement(Ln,null,m.createElement(Cn,{"aria-label":"List type",onValueChange:t,value:e||"",onFocus:e=>e.preventDefault()},m.createElement(Nn,{title:"Bulleted list",value:"bullet","aria-label":"Bulleted list"},m.createElement(cn,null)),m.createElement(Nn,{title:"Numbered list",value:"number","aria-label":"Numbered list"},m.createElement(dn,null))))},Rn=()=>{const e=St("openLinkEditDialog");return m.createElement(bn,{title:"Create link",onClick:e.bind(null,!0)},m.createElement(hn,null))},An=()=>{const e=St("insertTable");return m.createElement(bn,{title:"Insert table",onClick:e.bind(null,!0)},m.createElement(vn,null))},Dn=()=>{const e=St("insertCodeBlock");return m.createElement(bn,{title:"Insert code block",onClick:e.bind(null,!0)},m.createElement(mn,null))},In=()=>{const e=St("insertSandpack"),[t]=Lt("sandpackConfig");return m.createElement(m.Fragment,null,1===t.presets.length?m.createElement(bn,{title:"Insert live code block",onClick:e.bind(null,"")},m.createElement(rn,null)):m.createElement(W.Root,{value:"",onValueChange:e},m.createElement(en,{title:"Insert live code snippet"},m.createElement(rn,null)),m.createElement(Xt,{className:Vt.toolbarButtonDropdownContainer},t.presets.map((e=>m.createElement(Yt,{key:e.name,value:e.meta},e.label))))))},Hn=()=>{const e=St("insertFrontmatter");return m.createElement(bn,{title:"Insert frontmatter editor",onClick:e.bind(null,!0)},m.createElement(pn,null))},Vn=()=>{const[e]=Lt("viewMode","activeEditorType"),t=St("viewMode");return m.createElement(Cn,{"aria-label":"View Mode",onValueChange:e=>{""!==e&&t(e)},value:e,className:Vt.toolbarModeSwitch},m.createElement(Nn,{value:"editor","aria-label":"Rich text",title:"Rich text mode"},m.createElement(fn,null)),m.createElement(Nn,{value:"diff","aria-label":"View diff",title:"Diff mode"},m.createElement(an,null)),m.createElement(Nn,{value:"markdown","aria-label":"View Markdown",title:"Markdown source mode"},m.createElement(En,null)))},Pn={BlockTypeSelect:_n,BoldItalicUnderlineButtons:Mn,CodeBlockButton:Dn,FrontmatterButton:Hn,GroupGroup:Ln,HorizontalRuleIcon:gn,LinkButton:Rn,ListButtons:On,SandpackButton:In,TableButton:An,ToggleItem:Nn,ToggleSingleGroup:Cn,ToggleSingleGroupWithItem:Sn,ToolbarButton:bn,ToolbarSeparator:Tn,ImageButton:wn},$n=()=>{const[e,t]=Lt("activeEditorType","viewMode");return m.createElement(J.Root,{className:Vt.toolbarRoot,"aria-label":"Formatting options"},"editor"===t&&("lexical"===e.type?m.createElement(Kn,null):"codeblock"===e.type?m.createElement(Bn,null):m.createElement(Fn,null)),m.createElement(Tn,null),m.createElement(Vn,null))},Bn=()=>{const[e,t]=Lt("activeEditor","activeEditorType");return m.createElement(m.Fragment,null,m.createElement(tn,null),m.createElement(bn,{title:"Remove code block",onClick:()=>{e.update((()=>{const e=u.$getNodeByKey(t.nodeKey);e.selectNext(),e.remove()}))}},m.createElement(nn,null)))},Fn=()=>{const[e,t]=Lt("activeEditor","activeEditorType");return m.createElement(m.Fragment,null,m.createElement(bn,{title:"Remove live code block",onClick:()=>{e.update((()=>{const e=u.$getNodeByKey(t.nodeKey);e.selectNext(),e.remove()}))}},m.createElement(nn,null)))},Kn=()=>{const[e]=Lt("toolbarComponents");return m.createElement(m.Fragment,null,e.map(((e,t)=>m.createElement(e,{key:t}))))},Un={FrontmatterEditor:m.lazy((()=>Promise.resolve().then((()=>require("./FrontmatterEditor-bd112c96.cjs"))).then((e=>({default:e.FrontmatterEditor}))))),JsxEditor:m.lazy((()=>Promise.resolve().then((()=>require("./JsxEditor-85e636d6.cjs"))).then((e=>({default:e.JsxEditor}))))),SandpackEditor:m.lazy((()=>Promise.resolve().then((()=>require("./SandpackEditor-04d3c3ce.cjs"))).then((e=>({default:e.SandpackEditor}))))),CodeBlockEditor:m.lazy((()=>Promise.resolve().then((()=>require("./CodeBlockEditor-7e15d01c.cjs"))).then((e=>({default:e.CodeBlockEditor}))))),TableEditor:m.lazy((()=>Promise.resolve().then((()=>require("./TableEditor-d0c5800f.cjs"))).then((e=>({default:e.TableEditor})))))},Zn=[Mn,Tn,()=>{const[e]=Lt("currentFormat","currentListType"),t=St("applyFormat"),n=0!=(16&e),o=n?"Remove inline code":"Inline code";return m.createElement(Ln,null,m.createElement(Sn,{title:o,"aria-label":"Inline code",on:n,onValueChange:t.bind(null,"code")},m.createElement(on,null)))},Tn,On,Tn,_n,Tn,Rn,wn,An,()=>{const e=St("insertHorizontalRule");return m.createElement(bn,{title:"Insert horizontal rule",onClick:e.bind(null,!0)},m.createElement(gn,null))},Hn,Tn,Dn,In],jn={defaultPreset:"react",presets:[{name:"react",meta:"live react",label:"React",sandpackTemplate:"react",sandpackTheme:"light",snippetFileName:"/App.js",snippetLanguage:"jsx",initialSnippetContent:'\nexport default function App() {\n return (\n <div className="App">\n <h1>Hello CodeSandbox</h1>\n <h2>Start editing to see some magic happen!</h2>\n </div>\n );\n}\n'.trim()}]},zn={markdownParse:{defaultVisitors:je,defaultSyntaxExtensions:Je,defaultMdastExtensions:qe},lexicalConvert:{defaultVisitors:Pe,defaultExtensions:Ue,defaultMarkdownOptions:Ze},defaultLexicalNodes:Ye},qn=m.forwardRef((({markdown:e,headMarkdown:t,jsxComponentDescriptors:p=[],sandpackConfig:g=jn,onChange:h,viewMode:E,linkAutocompleteSuggestions:f,imageAutoCompleteSuggestions:v,className:_,contentEditableClassName:k,toolbarComponents:w=Zn,markdownParseOptions:{syntaxExtensions:x=Object.values(Je),mdastExtensions:y=Object.values(qe),visitors:N=Object.values(je)}={},lexicalConvertOptions:{toMarkdownExtensions:b=Object.values(Ue),toMarkdownOptions:C=Ze,visitors:S=Object.values(Pe)}={},lexicalNodes:L=Object.values(Ye)},T)=>{const M=m.useRef(null);return m.createElement("div",{className:d(Vt.editorRoot,Vt.editorWrapper,_),ref:M},m.createElement(n.LexicalComposer,{initialConfig:{editorState:()=>{We({root:u.$getRoot(),visitors:N,mdastExtensions:y,markdown:e,syntaxExtensions:x})},namespace:"MDXEditor",theme:{...me,nodeDecoratorComponents:Un},nodes:L,onError:e=>console.error(e)}},m.createElement(Ct,{markdownSource:e,headMarkdown:t||e,jsxComponentDescriptors:p,sandpackConfig:g,onChange:h,viewMode:E,linkAutocompleteSuggestions:f,imageAutocompleteSuggestions:v,editorRootElementRef:M,toolbarComponents:w,markdownParseOptions:{visitors:N,mdastExtensions:y,syntaxExtensions:x},lexicalConvertOptions:{visitors:S,toMarkdownOptions:C,toMarkdownExtensions:b},lexicalNodes:L},m.createElement($n,null),m.createElement(Jt,null,m.createElement(s.RichTextPlugin,{contentEditable:m.createElement(o.ContentEditable,{className:d(Vt.contentEditable,k)}),placeholder:m.createElement("div",null),ErrorBoundary:r})),m.createElement(i.LinkPlugin,null),m.createElement(a.HorizontalRulePlugin,null),m.createElement(l.ListPlugin,null),m.createElement(Ut,{maxDepth:7}),m.createElement(c.TabIndentationPlugin,null),m.createElement(Bt,null),m.createElement(jt,null),m.createElement(Zt,null),m.createElement(Jn,{mdxRef:T}))))})),Jn=({mdxRef:e})=>{const[t]=Lt("markdownSource");return m.useImperativeHandle(e,(()=>({getMarkdown:()=>t})),[t]),null};exports.$createAdmonitionNode=Q,exports.$createCodeBlockNode=oe,exports.$createFrontmatterNode=ie,exports.$createImageNode=de,exports.$createJsxNode=Ee,exports.$createSandpackNode=_e,exports.$createTableNode=Ne,exports.$isAdmonitionNode=X,exports.$isCodeBlockNode=re,exports.$isFrontmatterNode=le,exports.$isImageNode=ue,exports.$isJsxNode=fe,exports.$isSandpackNode=ke,exports.$isTableNode=ye,exports.AdmonitionNode=Y,exports.CodeBlockNode=ne,exports.FrontmatterNode=ae,exports.ImageNode=ce,exports.JsxNode=he,exports.MDXEditor=qn,exports.SandpackNode=ve,exports.SharedHistoryPlugin=jt,exports.TableNode=xe,exports.ToolbarComponents=Pn,exports.defaultMdxOptionValues=zn,exports.exportLexicalTreeToMdast=$e,exports.importMdastTreeToLexical=Ge,exports.styles=Vt,exports.theme=me,exports.useEmitterValues=Lt,exports.usePublisher=St;
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";var e=Object.defineProperty,t=(t,n,a)=>(((t,n,a)=>{n in t?e(t,n,{enumerable:!0,configurable:!0,writable:!0,value:a}):t[n]=a})(t,"symbol"!=typeof n?n+"":n,a),a);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("@lexical/react/LexicalComposer"),a=require("@lexical/react/LexicalContentEditable"),r=require("@lexical/react/LexicalErrorBoundary"),o=require("@lexical/react/LexicalHorizontalRulePlugin"),l=require("@lexical/react/LexicalLinkPlugin"),i=require("@lexical/react/LexicalListPlugin"),s=require("@lexical/react/LexicalRichTextPlugin"),c=require("@lexical/react/LexicalTabIndentationPlugin"),d=require("classnames"),m=require("lexical"),u=require("react"),p=require("@lexical/code"),h=require("@lexical/link"),g=require("@lexical/list"),E=require("@lexical/react/LexicalHorizontalRuleNode"),v=require("@lexical/rich-text"),f=require("mdast-util-directive"),w=require("mdast-util-from-markdown"),k=require("mdast-util-frontmatter"),y=require("mdast-util-gfm-table"),b=require("mdast-util-mdx"),x=require("micromark-extension-directive"),C=require("micromark-extension-frontmatter"),_=require("micromark-extension-gfm-table"),N=require("micromark-extension-mdxjs"),T=require("@lexical/utils"),S=require("@lexical/react/LexicalComposerContext"),M=require("@lexical/selection"),L=require("@lexical/react/LexicalHistoryPlugin"),H=require("mdast-util-to-markdown"),O=require("@radix-ui/react-popover"),A=require("@radix-ui/react-tooltip"),R=require("downshift"),V=require("@lexical/markdown"),I=require("@lexical/react/LexicalMarkdownShortcutPlugin"),D=require("@codesandbox/sandpack-react"),B=require("js-yaml"),P=require("react-hook-form"),$=require("@lexical/react/LexicalNestedComposer"),Z=require("mdast-util-to-hast"),U=require("hast-util-raw"),F=require("hast-util-sanitize"),K=require("hast-util-to-html"),z=require("@radix-ui/react-toolbar"),j=require("@codemirror/lang-markdown"),q=require("react-diff-view"),W=require("unidiff"),J=require("@radix-ui/react-select"),G=require("@radix-ui/react-dialog");function Y(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e)for(const n in e)if("default"!==n){const a=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,a.get?a:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}const Q=Y(u),X=Y(O),ee=Y(A),te=Y(z),ne=Y(J),ae=Y(G);class re extends m.ElementNode{constructor(e,n){super(n),t(this,"__kind"),this.__kind=e||"note"}static getType(){return"admonition"}getKind(){return this.getLatest().__kind}setKind(e){e!==this.getKind()&&(this.getWritable().__kind=e)}static clone(e){return new re(e.__kind,e.__key)}createDOM(e){const t=document.createElement("div");return T.addClassNamesToElement(t,e.theme.admonition[this.__kind]),t}updateDOM(e,t){return!1}static importJSON(e){return oe(e.kind)}exportJSON(){return{...super.exportJSON(),type:"admonition"}}insertNewAfter(e,t){const n=oe();return this.insertAfter(n,t),n}collapseAtStart(){const e=m.$createParagraphNode();return this.getChildren().forEach((t=>e.append(t))),this.replace(e),!0}}function oe(e){return m.$applyNodeReplacement(new re(e))}function le(e){return e instanceof re}function ie(e,t){return t(e),e}function se(){}class ce extends m.DecoratorNode{constructor(e,n,a,r){super(r),t(this,"__code"),t(this,"__meta"),t(this,"__language"),t(this,"__focusEmitter",function(){let e=se;return{publish:()=>{e()},subscribe:t=>{e=t}}}()),this.__code=e,this.__meta=a,this.__language=n}static getType(){return"codeblock"}static clone(e){return new ce(e.__code,e.__language,e.__meta,e.__key)}static importJSON(e){const{code:t,meta:n,language:a}=e;return de({code:t,language:a,meta:n})}exportJSON(){return{code:this.getCode(),language:this.getLanguage(),meta:this.getMeta(),type:"codeblock",version:1}}createDOM(e){return document.createElement("div")}updateDOM(){return!1}getCode(){return this.getLatest().__code}getMeta(){return this.getLatest().__meta}getLanguage(){return this.getLatest().__language}setCode(e){e!==this.__code&&(this.getWritable().__code=e)}setMeta(e){e!==this.__meta&&(this.getWritable().__meta=e)}setLanguage(e){e!==this.__language&&(this.getWritable().__language=e)}select(){this.__focusEmitter.publish()}decorate(e,{theme:{nodeDecoratorComponents:{CodeBlockEditor:t}}}){return u.createElement(t,{nodeKey:this.getKey(),code:this.getCode(),meta:this.getMeta(),language:this.getLanguage(),onChange:e=>this.setCode(e),focusEmitter:this.__focusEmitter})}}function de(e){const{code:t,language:n,meta:a}=e;return new ce(t,n,a)}function me(e){return e instanceof ce}class ue extends m.DecoratorNode{constructor(e,n){super(n),t(this,"__yaml"),this.__yaml=e}static getType(){return"frontmatter"}static clone(e){return new ue(e.__yaml,e.__key)}static importJSON(e){const{yaml:t}=e;return pe(t)}exportJSON(){return{yaml:this.getYaml(),type:"frontmatter",version:1}}createDOM(e){return document.createElement("div")}updateDOM(){return!1}getYaml(){return this.getLatest().__yaml}setYaml(e){e!==this.__yaml&&(this.getWritable().__yaml=e)}decorate(e,{theme:{nodeDecoratorComponents:{FrontmatterEditor:t}}}){return u.createElement(t,{yaml:this.getYaml(),onChange:t=>null==e?void 0:e.update((()=>{this.setYaml(t)}))})}}function pe(e){return new ue(e)}function he(e){return e instanceof ue}function ge(e){if(e instanceof HTMLImageElement){const{alt:t,src:n,title:a}=e;return{node:ve({altText:t,src:n,title:a})}}return null}class Ee extends m.DecoratorNode{constructor(e,n,a,r){super(r),t(this,"__src"),t(this,"__altText"),t(this,"__title"),this.__src=e,this.__title=a,this.__altText=n}static getType(){return"image"}static clone(e){return new Ee(e.__src,e.__altText,e.__title,e.__key)}static importJSON(e){const{altText:t,title:n,src:a}=e;return ve({altText:t,title:n,src:a})}exportDOM(){const e=document.createElement("img");return e.setAttribute("src",this.__src),e.setAttribute("alt",this.__altText),this.__title&&e.setAttribute("title",this.__title),{element:e}}static importDOM(){return{img:()=>({conversion:ge,priority:0})}}exportJSON(){return{altText:this.getAltText(),title:this.getTitle(),src:this.getSrc(),type:"image",version:1}}createDOM(e){const t=document.createElement("span"),n=e.theme.image;return void 0!==n&&(t.className=n),t}updateDOM(){return!1}getSrc(){return this.__src}getAltText(){return this.__altText}getTitle(){return this.__title}setTitle(e){this.getWritable().__title=e}decorate(){return u.createElement("img",{title:this.__title,src:this.__src,alt:this.__altText})}}function ve(e){const{altText:t,title:n,src:a,key:r}=e;return new Ee(a,t,n,r)}function fe(e){return e instanceof Ee}const we={text:{bold:"_bold_13nbk_10",italic:"_italic_13nbk_14",underline:"_underline_13nbk_18",code:"_code_13nbk_52",strikethrough:"_strikethrough_13nbk_34",subscript:"_subscript_13nbk_42",superscript:"_superscript_13nbk_47",underlineStrikethrough:"_underlineStrikethrough_13nbk_38"},list:{nested:{listitem:"_nestedListItem_13nbk_59"}},admonition:{danger:"_admonitionDanger_13nbk_63",info:"_admonitionInfo_13nbk_63",note:"_admonitionNote_13nbk_63",tip:"_admonitionTip_13nbk_63",caution:"_admonitionCaution_13nbk_63"}},ke={type:"root",format:"left",indent:0,direction:"ltr",version:1,children:[{type:"paragraph",version:1,direction:"ltr",format:"left",indent:0,children:[]}]},ye={type:"root",format:"left",indent:0,direction:"ltr",version:1,children:[]};class be extends m.DecoratorNode{constructor({name:e,kind:n,attributes:a,state:r,updateFn:o,key:l}){if(super(l),t(this,"__kind"),t(this,"__name"),t(this,"__attributes"),t(this,"__editor"),this.__name=e,this.__kind=n,this.__attributes=a,this.__editor=m.createEditor(),r){const e=this.__editor.parseEditorState(r);e.isEmpty()||this.__editor.setEditorState(e)}else if(o){const e=this.__editor.parseEditorState({root:"text"===this.getKind()?ke:ye},(()=>{if("text"===this.getKind()){const e=m.$getRoot().getFirstChildOrThrow();o(e)}else o(m.$getRoot())}));e.isEmpty()||this.__editor.setEditorState(e)}}static getType(){return"jsx"}static clone(e){return new be({name:e.__name,kind:e.__kind,attributes:e.__attributes,state:e.__editor.getEditorState().toJSON()})}static importJSON(e){const{name:t,kind:n,attributes:a,state:r}=e;return xe({kind:n,name:t,attributes:a,state:r})}exportJSON(){return{name:this.getName(),kind:this.getKind(),attributes:this.getAttributes(),state:this.__editor.getEditorState().toJSON(),type:"jsx",version:1}}inNestedEditor(e){this.__editor.getEditorState().read(e)}getChildren(){if("flow"===this.getKey())return m.$getRoot().getChildren()||[];{const e=m.$getRoot().getFirstChild();return e&&e.getChildren()||[]}}createDOM(){return"flow"===this.getKey()?document.createElement("div"):document.createElement("span")}updateDOM(){return!1}getName(){return this.__name}getKind(){return this.__kind}getAttributes(){return this.__attributes}updateAttributes(e){this.getWritable().__attributes=Object.entries(e).map((([e,t])=>({name:e,value:t})))}decorate(e,{theme:{nodeDecoratorComponents:{JsxEditor:t}}}){return u.createElement(t,{attributes:this.getAttributes(),componentName:this.getName(),kind:this.getKind(),editor:this.__editor,onSubmit:e=>this.updateAttributes(e),theme:we})}}function xe(e){return new be(e)}function Ce(e){return e instanceof be}class _e extends m.DecoratorNode{constructor(e,n,a,r){super(r),t(this,"__code"),t(this,"__meta"),t(this,"__language"),t(this,"__focusEmitter",function(){let e=se;return{publish:()=>{e()},subscribe:t=>{e=t}}}()),this.__code=e,this.__meta=a,this.__language=n}static getType(){return"sandpack"}static clone(e){return new _e(e.__code,e.__language,e.__meta,e.__key)}static importJSON(e){const{code:t,meta:n,language:a}=e;return Ne({code:t,language:a,meta:n})}exportJSON(){return{code:this.getCode(),language:this.getLanguage(),meta:this.getMeta(),type:"sandpack",version:1}}createDOM(e){return document.createElement("div")}updateDOM(){return!1}getCode(){return this.getLatest().__code}getMeta(){return this.getLatest().__meta}getLanguage(){return this.getLatest().__language}setCode(e){e!==this.__code&&(this.getWritable().__code=e)}setMeta(e){e!==this.__meta&&(this.getWritable().__meta=e)}setLanguage(e){e!==this.__language&&(this.getWritable().__language=e)}select(){this.__focusEmitter.publish()}decorate(e,{theme:{nodeDecoratorComponents:{SandpackEditor:t}}}){return u.createElement(t,{nodeKey:this.getKey(),code:this.getCode(),meta:this.getMeta(),onChange:e=>this.setCode(e),focusEmitter:this.__focusEmitter})}}function Ne(e){const{code:t,language:n,meta:a}=e;return new _e(t,n,a)}function Te(e){return e instanceof _e}const Se={type:"tableCell",children:[]};class Me extends m.DecoratorNode{constructor(e,n){super(n),t(this,"__mdastNode"),t(this,"focusEmitter",function(){let e=se;return{publish:t=>{e(t)},subscribe:t=>{e=t}}}()),this.__mdastNode=e||{type:"table",children:[]}}static getType(){return"table"}static clone(e){return new Me(structuredClone(e.__mdastNode),e.__key)}static importJSON(e){return He(e.mdastNode)}exportJSON(){return{mdastNode:structuredClone(this.__mdastNode),type:"table",version:1}}getMdastNode(){return this.__mdastNode}getRowCount(){return this.__mdastNode.children.length}getColCount(){var e;return(null==(e=this.__mdastNode.children[0])?void 0:e.children.length)||0}createDOM(){return document.createElement("div")}updateDOM(){return!1}updateCellContents(e,t,n){const a=this.getWritable().__mdastNode,r=a.children[t],o=r.children,l=o[e],i=Array.from(o),s={...l,children:n},c={...r,children:i};i[e]=s,a.children[t]=c}insertColumnAt(e){const t=this.getWritable().__mdastNode;for(let n=0;n<t.children.length;n++){const a=t.children[n],r=a.children,o=Array.from(r),l={...a,children:o};o.splice(e,0,structuredClone(Se)),t.children[n]=l}t.align&&t.align.length>0&&t.align.splice(e,0,"left")}deleteColumnAt(e){const t=this.getWritable().__mdastNode;for(let n=0;n<t.children.length;n++){const a=t.children[n],r=a.children,o=Array.from(r),l={...a,children:o};o.splice(e,1),t.children[n]=l}}insertRowAt(e){const t=this.getWritable().__mdastNode,n={type:"tableRow",children:Array.from({length:this.getColCount()},(()=>structuredClone(Se)))};t.children.splice(e,0,n)}deleteRowAt(e){this.getWritable().__mdastNode.children.splice(e,1)}addRowToBottom(){this.insertRowAt(this.getRowCount())}addColumnToRight(){this.insertColumnAt(this.getColCount())}setColumnAlign(e,t){const n=this.getWritable().__mdastNode;null==n.align&&(n.align=[]),n.align[e]=t}decorate(e,{theme:{nodeDecoratorComponents:{TableEditor:t}}}){return u.createElement(t,{lexicalTable:this,mdastNode:this.__mdastNode,parentEditor:e})}select(e){this.focusEmitter.publish(e)}isInline(){return!1}}function Le(e){return e instanceof Me}function He(e){return new Me(e)}const Oe={testLexicalNode:m.$isRootNode,visitLexicalNode:({actions:e})=>{e.addAndStepInto("root")}},Ae={testLexicalNode:m.$isParagraphNode,visitLexicalNode:({actions:e})=>{e.addAndStepInto("paragraph")}},Re={testLexicalNode:he,visitLexicalNode:({actions:e,lexicalNode:t})=>{e.addAndStepInto("yaml",{value:t.getYaml()})}},Ve={testLexicalNode:h.$isLinkNode,visitLexicalNode:({lexicalNode:e,actions:t})=>{t.addAndStepInto("link",{url:e.getURL(),title:e.getTitle()})}},Ie={testLexicalNode:v.$isHeadingNode,visitLexicalNode:({lexicalNode:e,actions:t})=>{const n=parseInt(e.getTag()[1],10);t.addAndStepInto("heading",{depth:n})}},De={testLexicalNode:g.$isListNode,visitLexicalNode:({lexicalNode:e,actions:t})=>{t.addAndStepInto("list",{ordered:"number"===e.getListType(),spread:!1})}},Be={testLexicalNode:g.$isListItemNode,visitLexicalNode:({lexicalNode:e,mdastParent:t,actions:n})=>{const a=e.getChildren(),r=a[0];if(1===a.length&&g.$isListNode(r)){const a=t.children.at(-1);n.visitChildren(e,a)}else{const a=n.appendToParent(t,{type:"listItem",spread:!1,children:[{type:"paragraph",children:[]}]});n.visitChildren(e,a.children[0])}}},Pe={testLexicalNode:v.$isQuoteNode,visitLexicalNode:({lexicalNode:e,mdastParent:t,actions:n})=>{const a=n.appendToParent(t,{type:"blockquote",children:[{type:"paragraph",children:[]}]});n.visitChildren(e,a.children[0])}},$e={testLexicalNode:le,visitLexicalNode:({mdastParent:e,lexicalNode:t,actions:n})=>{const a=n.appendToParent(e,{type:"containerDirective",name:t.getKind(),children:[{type:"paragraph",children:[]}]});n.visitChildren(t,a.children[0])}},Ze={testLexicalNode:Te,visitLexicalNode:({lexicalNode:e,actions:t})=>{t.addAndStepInto("code",{value:e.getCode(),lang:e.getLanguage(),meta:e.getMeta()})}},Ue={testLexicalNode:me,visitLexicalNode:({lexicalNode:e,actions:t})=>{t.addAndStepInto("code",{value:e.getCode(),lang:e.getLanguage(),meta:e.getMeta()})}};function Fe(e){return"text"===e.type}const Ke={testLexicalNode:m.$isLineBreakNode,visitLexicalNode:({mdastParent:e,actions:t})=>{t.appendToParent(e,{type:"text",value:"\n"})}},ze={LexicalRootVisitor:Oe,LexicalParagraphVisitor:Ae,LexicalFrontmatterVisitor:Re,LexicalTextVisitor:{shouldJoin:(e,t)=>["text","emphasis","strong","mdxJsxTextElement"].includes(e.type)&&e.type===t.type,join:(e,t)=>Fe(e)&&Fe(t)?{type:"text",value:e.value+t.value}:{...e,children:[...e.children,...t.children]},testLexicalNode:m.$isTextNode,visitLexicalNode:({lexicalNode:e,mdastParent:t,actions:n})=>{const a=e.getPreviousSibling(),r=m.$isTextNode(a)?a.getFormat():0,o=e.getTextContent(),l=e.getFormat()??0;if(16&l)return void n.addAndStepInto("inlineCode",{value:o});let i=t;r&l&2&&(i=n.appendToParent(i,{type:"emphasis",children:[]})),r&l&1&&(i=n.appendToParent(i,{type:"strong",children:[]})),r&l&8&&(i=n.appendToParent(i,{type:"mdxJsxTextElement",name:"u",children:[],attributes:[]})),2&l&&!(2&r)&&(i=n.appendToParent(i,{type:"emphasis",children:[]})),1&l&&!(1&r)&&(i=n.appendToParent(i,{type:"strong",children:[]})),8&l&&!(8&r)&&(i=n.appendToParent(i,{type:"mdxJsxTextElement",name:"u",children:[],attributes:[]})),n.appendToParent(i,{type:"text",value:o})}},LexicalLinebreakVisitor:Ke,LexicalLinkVisitor:Ve,LexicalHeadingVisitor:Ie,LexicalListVisitor:De,LexicalListItemVisitor:Be,LexicalQuoteVisitor:Pe,SandpackNodeVisitor:Ze,CodeBlockVisitor:Ue,LexicalThematicBreakVisitor:{testLexicalNode:E.$isHorizontalRuleNode,visitLexicalNode({actions:e}){e.addAndStepInto("thematicBreak")}},AdmonitionVisitor:$e,LexicalImageVisitor:{testLexicalNode:fe,visitLexicalNode({lexicalNode:e,actions:t}){t.addAndStepInto("image",{url:e.getSrc(),alt:e.getAltText(),title:e.getTitle()})}},JsxVisitor:{testLexicalNode:Ce,visitLexicalNode({mdastParent:e,lexicalNode:t,actions:n}){const a="text"===t.getKind()?"mdxJsxTextElement":"mdxJsxFlowElement";n.registerReferredComponent(t.getName());const r={type:a,name:t.getName(),attributes:t.getAttributes(),children:[]};n.appendToParent(e,r),t.inNestedEditor((()=>{n.visitChildren(t,r)}))}},LexicalTableVisitor:{testLexicalNode:Le,visitLexicalNode({actions:e,mdastParent:t,lexicalNode:n}){e.appendToParent(t,n.getMdastNode())}}};function je({root:e,visitors:t,jsxComponentDescriptors:n}){let a=null;const r=new Set;function o(e){r.add(e)}function l(e,n){if(null===a)return a=n,a;if(!function(e){return e.children instanceof Array}(e))throw new Error("Attempting to append children to a non-parent");const r=e.children,o=r.at(-1);if(o){const e=t.find((e=>{var t;return null==(t=e.shouldJoin)?void 0:t.call(e,o,n)}));if(e){const t=e.join(o,n);return r.splice(r.length-1,1,t),t}}return r.push(n),n}function i(e,t){e.getChildren().forEach((e=>{s(e,t)}))}function s(e,n){var a;const r=t.find((t=>{var n;return null==(n=t.testLexicalNode)?void 0:n.call(t,e)}));if(!r)throw new Error(`no lexical visitor found for ${e.getType()}`,{cause:e});null==(a=r.visitLexicalNode)||a.call(r,{lexicalNode:e,mdastParent:n,actions:{addAndStepInto(t,a={},r=!0){const o={type:t,...a,...r?{children:[]}:{}};l(n,o),m.$isElementNode(e)&&r&&i(e,o)},appendToParent:l,visitChildren:i,registerReferredComponent:o}})}if(s(e,null),null===a)throw new Error("traversal ended with no root element");const c=new Map,d=new Map;for(const m of r){const e=n.find((e=>e.name===m));if(!e)throw new Error(`Component ${m} is used but not imported`);if(e.defaultExport)d.set(m,e.source);else{const{source:t}=e,n=c.get(t);n?n.push(m):c.set(t,[m])}}const u=Array.from(c).map((([e,t])=>({type:"mdxjsEsm",value:`import { ${t.join(", ")} } from '${e}'`})));u.push(...Array.from(d).map((([e,t])=>({type:"mdxjsEsm",value:`import ${e} from '${t}'`}))));const p=a,h=p.children.find((e=>"yaml"===e.type));return h?p.children.splice(p.children.indexOf(h)+1,0,...u):p.children.unshift(...u),Je(p,[]),p}const qe=/\s+$/,We=/^\s+/;function Je(e,t){if("strong"===e.type||"emphasis"===e.type){const n=e.children.at(-1);if("text"===(null==n?void 0:n.type)){const a=n.value.match(qe);if(a){n.value=n.value.replace(qe,"");const r=t.at(-1);r&&(r.children.splice(r.children.indexOf(e)+1,0,{type:"text",value:a[0]}),Je(r,t.slice(0,-1)))}}const a=e.children.at(0);if("text"===(null==a?void 0:a.type)){const n=a.value.match(We);if(n){a.value=a.value.replace(We,"");const r=t.at(-1);r&&(r.children.splice(r.children.indexOf(e),0,{type:"text",value:n[0]}),Je(r,t.slice(0,-1)))}}}if(Object.hasOwn(e,"children")){const n=e;n.children.forEach((e=>Je(e,[...t,n])))}}const Ge={mdxToMarkdown:b.mdxToMarkdown(),frontmatterToMarkdown:k.frontmatterToMarkdown("yaml"),directiveToMarkdown:f.directiveToMarkdown,gfmTableToMarkdown:y.gfmTableToMarkdown({tableCellPadding:!0,tablePipeAlign:!0})},Ye={listItemIndent:"one"};const Qe={MdastRootVisitor:{testNode:"root",visitNode({actions:e,mdastNode:t,lexicalParent:n}){e.visitChildren(t,n)}},MdastParagraphVisitor:{testNode:"paragraph",visitNode:function({mdastNode:e,lexicalParent:t,actions:n}){g.$isListItemNode(t)||v.$isQuoteNode(t)||le(t)?n.visitChildren(e,t):n.addAndStepInto(m.$createParagraphNode())}},MdastTextVisitor:{testNode:"text",visitNode({mdastNode:e,actions:t}){t.addAndStepInto(m.$createTextNode(e.value).setFormat(t.getParentFormatting()))}},MdastFormattingVisitor:{testNode:e=>"emphasis"===e.type||"strong"===e.type||"mdxJsxTextElement"===e.type&&"u"===(null==e?void 0:e.name),visitNode({mdastNode:e,lexicalParent:t,actions:n}){"emphasis"===e.type?n.addFormatting(2):"strong"===e.type?n.addFormatting(1):"mdxJsxTextElement"===e.type&&"u"===e.name&&n.addFormatting(8),n.visitChildren(e,t)}},MdastInlineCodeVisitor:{testNode:"inlineCode",visitNode({mdastNode:e,actions:t}){t.addAndStepInto(m.$createTextNode(e.value).setFormat(16))}},MdastLinkVisitor:{testNode:"link",visitNode({mdastNode:e,actions:t}){t.addAndStepInto(h.$createLinkNode(e.url,{title:e.title}))}},MdastHeadingVisitor:{testNode:"heading",visitNode:function({mdastNode:e,actions:t}){t.addAndStepInto(v.$createHeadingNode(`h${e.depth}`))}},MdastListVisitor:{testNode:"list",visitNode:function({mdastNode:e,lexicalParent:t,actions:n}){const a=g.$createListNode(e.ordered?"number":"bullet");if(g.$isListItemNode(t)){const e=g.$createListItemNode();e.append(a),t.insertAfter(e)}else t.append(a);n.visitChildren(e,a)}},MdastListItemVisitor:{testNode:"listItem",visitNode({actions:e}){e.addAndStepInto(g.$createListItemNode())}},MdastBlockQuoteVisitor:{testNode:"blockquote",visitNode({actions:e}){e.addAndStepInto(v.$createQuoteNode())}},MdastCodeVisitor:{testNode:"code",visitNode({mdastNode:e,actions:t}){var n;const a=(null==(n=e.meta)?void 0:n.startsWith("live"))?Ne:de;t.addAndStepInto(a({code:e.value,language:e.lang,meta:e.meta}))}},MdastThematicBreakVisitor:{testNode:"thematicBreak",visitNode({actions:e}){e.addAndStepInto(E.$createHorizontalRuleNode())}},MdastImageVisitor:{testNode:"image",visitNode({mdastNode:e,actions:t}){t.addAndStepInto(ve({src:e.url,altText:e.alt||"",title:e.title||""}))}},MdastFrontmatterVisitor:{testNode:"yaml",visitNode({mdastNode:e,actions:t}){t.addAndStepInto(pe(e.value))}},MdastAdmonitionVisitor:{testNode:"containerDirective",visitNode({mdastNode:e,actions:t}){t.addAndStepInto(oe(e.name))}},MdastMdxJsEsmVisitor:{testNode:"mdxjsEsm",visitNode(){}},MdastMdxJsxElementVisitor:{testNode:e=>"mdxJsxTextElement"===e.type||"mdxJsxFlowElement"===e.type,visitNode({lexicalParent:e,mdastNode:t,actions:n}){e.append(xe({name:t.name,kind:"mdxJsxTextElement"===t.type?"text":"flow",attributes:t.attributes,updateFn:e=>{n.visitChildren(t,e)}}))}},MdastTableVisitor:{testNode:"table",visitNode({mdastNode:e,lexicalParent:t}){t.append(He(e))}}};function Xe(e){return e.children instanceof Array}const et={mdxFromMarkdown:b.mdxFromMarkdown(),frontmatterFromMarkdown:k.frontmatterFromMarkdown("yaml"),directiveFromMarkdown:f.directiveFromMarkdown,gfmTableFromMarkdown:y.gfmTableFromMarkdown},tt={mdxjs:N.mdxjs(),frontmatter:C.frontmatter(),directive:x.directive(),gfmTable:_.gfmTable};function nt({root:e,markdown:t,visitors:n,syntaxExtensions:a,mdastExtensions:r}){const o=w.fromMarkdown(t,{extensions:a,mdastExtensions:r});0===o.children.length&&o.children.push({type:"paragraph",children:[]}),at({root:e,mdastRoot:o,visitors:n})}function at({root:e,mdastRoot:t,visitors:n}){const a=new WeakMap;function r(e,t){if(!Xe(e))throw new Error("Attempting to visit children of a non-parent");e.children.forEach((n=>o(n,t,e)))}function o(e,t,o){const l=n.find((t=>"string"==typeof t.testNode?t.testNode===e.type:t.testNode(e)));if(!l)throw new Error(`no unist visitor found for ${e.type}`,{cause:e});l.visitNode({mdastNode:e,lexicalParent:t,actions:{visitChildren:r,addAndStepInto(n){t.append(n),Xe(e)&&r(e,n)},addFormatting(t){a.set(e,t|(a.get(o)??0))},getParentFormatting:()=>a.get(o)??0}})}o(t,e,null)}const rt={ParagraphNode:m.ParagraphNode,LinkNode:h.LinkNode,HeadingNode:v.HeadingNode,QuoteNode:v.QuoteNode,ListNode:g.ListNode,ListItemNode:g.ListItemNode,HorizontalRuleNode:E.HorizontalRuleNode,ImageNode:Ee,SandpackNode:_e,CodeBlockNode:ce,FrontmatterNode:ue,AdmonitionNode:re,JsxNode:be,CodeNode:p.CodeNode,TableNode:Me};function ot(){const e=[...Array(256).keys()].map((e=>e.toString(16).padStart(2,"0"))),t=crypto.getRandomValues(new Uint8Array(16));return t[6]=15&t[6]|64,t[8]=63&t[8]|128,[...t.entries()].map((([t,n])=>[4,6,8,10].includes(t)?`-${e[n]}`:e[n])).join("")}function lt(e,t){return e===t}class it{constructor(){t(this,"map",new Map)}getOrCreate(e){let t=this.map.get(e);return t||(t=new Set,this.map.set(e,t)),t}get(e){return this.map.get(e)}use(e,t){const n=this.get(e);void 0!==n&&t(n)}delete(e){return this.map.delete(e)}}class st{constructor(e=new Map){t(this,"map"),this.map=e}clone(){return new st(new Map(this.map))}increment(e){const t=this.map.get(e)??0;this.map.set(e,t+1)}decrement(e,t){let n=this.map.get(e);void 0!==n&&(n-=1,this.map.set(e,n),0===n&&t())}}const ct=Symbol("NO_VALUE");function dt(){const e=new it,t=new Map,n=new it,a=new Map,r=new Map,o={};function l(e=ct,t=!1){const n=ot();return e!==ct&&a.set(n,e),!1!==t&&r.set(n,!0===t?lt:t),{key:n,toString:()=>n}}function i({key:t},n){const a=e.getOrCreate(t);return a.add(n),()=>a.delete(n)}function s({key:e},n){return t.set(e,n),()=>t.delete(e)}function c(...e){const[t]=e.slice(-1),n=e.slice(0,-1);return 1===n.length?i(n[0],t):function(e,t){const n=l();return h({map:e=>(...t)=>{e(t)},sink:n,sources:e}),i(n,t)}(n,t)}function d(e){const t=[],a=new Set,r=new it,o=new st,l=new it;function i(e,s=0){o.increment(e),a.has(e)||(r.use(e,(e=>{s=Math.max(...Array.from(e).map((e=>t.indexOf(e))))+1})),n.use(e,(t=>{t.forEach((t=>{t.sources.has(e)?(l.getOrCreate(t.sink).add(t),i(t.sink,s)):r.getOrCreate(t.sink).add(e)}))})),a.add(e),t.splice(s,0,e))}return e.forEach((e=>i(e))),{participatingNodeKeys:t,pendingPulls:r,projections:l,refCount:o}}const m=new Map;function u(o){var l;const i=Object.keys(o),s=i.join(",");m.has(s)||m.set(s,d(i));const c=m.get(s),u=c.refCount.clone(),p=c.participatingNodeKeys.slice(),h=new Map(a);function g(e){n.use(e,(t=>{t.forEach((({sources:t,sink:n})=>{t.has(e)&&u.decrement(n,(()=>{p.splice(p.indexOf(n),1),g(n)}))}))}))}let E;for(;E=p.shift();){let n=!1;const i=e=>{r.has(E)&&r.get(E)(a.get(E),e)?n=!1:(n=!0,h.set(E,e),a.has(E)&&a.set(E,e))};if(Object.prototype.hasOwnProperty.call(o,E)?i(o[E]):c.projections.use(E,(e=>{e.forEach((e=>{const t=[...Array.from(e.sources),...Array.from(e.pulls)].map((e=>h.get(e)));e.map(i)(...t)}))})),n){const n=h.get(E);e.use(E,(e=>{e.forEach((e=>e(n)))})),null==(l=t.get(E))||l(n)}else g(E)}}function p(e){return new Set(e.map((e=>e.key)))}function h({sources:e,pulls:t=[],map:a,sink:{key:r}}){const o={map:a,pulls:p(t),sink:r,sources:p(e)};[...e,...t].forEach((({key:e})=>{n.getOrCreate(e).add(o)})),m.clear()}function g(...e){const t={};for(let n=0;n<e.length;n+=2){t[e[n].key]=e[n+1]}u(t)}function E(e){u(Object.entries(e).reduce(((e,[t,n])=>ie(e,(e=>e[o[t].key]=n))),{}))}return{combine:function(...e){const t=l();return h({map:e=>(...t)=>e(t),sink:t,sources:e}),t},connect:h,debug:function(){Object.entries(o).forEach((([e,t])=>{a.get(t.key)}))},derive:function(e,t){return ie(l(t,!0),(t=>{h({map:e=>t=>e(t),sink:t,sources:[e]})}))},getKeyValue:function(e){return a.get(o[e].key)},getValue:function(e){return a.get(e.key)},getKeyValues:function(e){return e.map((e=>a.get(o[e].key)))},label:function(e){Object.assign(o,e)},labels:o,link:function(e,t){h({map:e=>t=>e(t),sink:t,sources:[e]})},node:l,o:{delayWithMicrotask:function(){return e=>{const t=l();return c(e,(e=>queueMicrotask((()=>g(t,e))))),t}},debounceTime:function(e){return t=>{const n=l();let a,r;return c(t,(t=>{a=t,r&&clearTimeout(r),r=setTimeout((()=>{g(n,a)}),e)})),n}},filter:function(e){return t=>{const n=l();return h({map:t=>n=>e(n)&&t(n),sink:n,sources:[t]}),n}},map:function(e){return t=>{const n=l();return h({map:t=>n=>{t(e(n))},sink:n,sources:[t]}),n}},mapTo:function(e){return t=>{const n=l();return h({map:t=>()=>t(e),sink:n,sources:[t]}),n}},onNext:function(e){return t=>{const n=l();let a=ct;return c(t,(e=>a=e)),h({map:e=>t=>{a!==ct&&(e([a,t]),a=ct)},sink:n,sources:[e]}),n}},scan:function(e,t){return n=>{const a=l();return h({map:n=>a=>n(t=e(t,a)),sink:a,sources:[n]}),a}},throttleTime:function(e){return t=>{const n=l();let a,r;return c(t,(t=>{a=t,r||(r=setTimeout((()=>{r=void 0,g(n,a)}),e))})),n}},withLatestFrom:function(...e){return t=>{const n=l();return h({map:e=>(...t)=>e(t),pulls:e,sink:n,sources:[t]}),n}},once:function(){return e=>{const t=l();let n=!1;return h({map:e=>t=>{n||(n=!0,e(t))},sink:t,sources:[e]}),t}},passOnlyAfterNodeHasEmittedBefore:function(e,t){return n=>{const r=l();let o=0;return c(e,(()=>o=Date.now())),h({map:e=>n=>{Date.now()<o+a.get(t.key)&&e(n)},sink:r,sources:[n]}),r}}},pipe:function(e,...t){for(const n of t)e=n(e);return e},pub:g,pubIn:u,pubKey:function(e,t){E({[e]:t})},pubKeys:E,resetSingletonSubs:function(){t.clear()},singletonSub:s,singletonSubKey:function(e,t){return s(o[e],t)},spread:function(e,t){return t.map(((t,n)=>ie(l(t,!0),(t=>{h({map:e=>t=>{e(t[n])},sink:t,sources:[e]})}))))},sub:c,subKey:function(e,t){return c(o[e],t)},subKeys:function(e,t){return c(...e.map((e=>o[e])).concat(t))}}}const mt="undefined"!=typeof document?Q.useLayoutEffect:Q.useEffect,ut=u.createContext(void 0);function pt(e,t=[],n=ot()){return[{constructor:e,dependencies:t,id:n},{id:n}]}const ht=new Map([["number",g.INSERT_ORDERED_LIST_COMMAND],["bullet",g.INSERT_UNORDERED_LIST_COMMAND],["",g.REMOVE_LIST_COMMAND]]);const[gt,Et]=pt((e=>{const t=e.node(null,!0),n=e.node(""),a=e.node(L.createEmptyHistoryState()),r=e.derive(t,null),o=e.node(0,!0),l=e.node(null),i=e.node(null),s=e.node(null),c=e.node(),d=e.node(),u=e.node(),p=e.node(),h=e.node(),f=e.node(),w=e.node(),k=e.node(),y=e.node([]),b=e.node(!1,!0),x=e.node({type:"lexical"}),C=e.node(null),_=e.node(null),N=e.node(null),S=e.node([]),H=e.node([]);function O(){const t=m.$getSelection();m.$isRangeSelection(t)&&e.pubKeys({currentSelection:t,currentFormat:t.format})}return e.link(e.pipe(k,e.o.withLatestFrom(y),e.o.map((([e,t])=>[...t,e]))),y),e.sub(e.pipe(d,e.o.withLatestFrom(r)),(([e,t])=>{null==t||t.dispatchCommand(ht.get(e),void 0)})),e.sub(e.pipe(c,e.o.withLatestFrom(r)),(([e,t])=>{null==t||t.dispatchCommand(m.FORMAT_TEXT_COMMAND,e)})),e.sub(e.pipe(p,e.o.withLatestFrom(r)),(([,e])=>{null==e||e.dispatchCommand(E.INSERT_HORIZONTAL_RULE_COMMAND,void 0)})),e.sub(e.pipe(w,e.o.withLatestFrom(r)),(([e,t])=>{null==t||t.getEditorState().read((()=>{const n=m.$getSelection();if(m.$isRangeSelection(n)){null!==n.focus.getNode()&&t.update((()=>{const t=ve({altText:"",src:e,title:""});T.$insertNodeToNearestRoot(t)}))}}))})),e.sub(e.pipe(f,e.o.withLatestFrom(r)),(([,e])=>{null==e||e.update((()=>{const e=m.$getRoot().getFirstChild();if(!he(e)){const t=pe('"": ""');e?e.insertBefore(t):m.$getRoot().append(t)}}))})),e.sub(e.pipe(h,e.o.withLatestFrom(r)),(([,e])=>{null==e||e.getEditorState().read((()=>{const t=m.$getSelection();if(m.$isRangeSelection(t)){null!==t.focus.getNode()&&e.update((()=>{const e=He({type:"table",children:[{type:"tableRow",children:[{type:"tableCell",children:[]}]}]});T.$insertNodeToNearestRoot(e),setTimeout((()=>{e.select([0,0])}),50)}))}}))})),e.sub(e.pipe(u,e.o.withLatestFrom(r)),(([e,t])=>{if(t)switch(e){case"paragraph":(e=>{e.update((()=>{const e=m.$getSelection();(m.$isRangeSelection(e)||m.DEPRECATED_$isGridSelection(e))&&M.$setBlocksType(e,(()=>m.$createParagraphNode()))}))})(t);break;case"quote":(e=>{e.update((()=>{const e=m.$getSelection();(m.$isRangeSelection(e)||m.DEPRECATED_$isGridSelection(e))&&M.$setBlocksType(e,(()=>v.$createQuoteNode()))}))})(t);break;case"note":case"tip":case"danger":case"caution":case"info":((e,t)=>{e.update((()=>{const e=m.$getSelection();(m.$isRangeSelection(e)||m.DEPRECATED_$isGridSelection(e))&&M.$setBlocksType(e,(()=>oe(t)))}))})(t,e);break;default:((e,t)=>{e.update((()=>{const e=m.$getSelection();(m.$isRangeSelection(e)||m.DEPRECATED_$isGridSelection(e))&&M.$setBlocksType(e,(()=>v.$createHeadingNode(t)))}))})(t,e)}})),e.sub(e.pipe(l,e.o.withLatestFrom(r)),(([t,n])=>{if(!t||!n)return;const a=t.anchor.getNode();let r="root"===a.getKey()?a:T.$findMatchingParent(a,(e=>{const t=e.getParent();return null!==t&&m.$isRootOrShadowRoot(t)}));null===r&&(r=a.getTopLevelElementOrThrow());const o=r.getKey();if(null!==n.getElementByKey(o))if(g.$isListNode(r)){const t=T.$getNearestNodeOfType(a,g.ListNode),n=t?t.getListType():r.getListType();e.pubIn({[i.key]:n,[s.key]:""})}else{e.pub(i,null);const t=v.$isHeadingNode(r)?r.getTag():le(r)?r.getKind():r.getType();e.pubIn({[i.key]:null,[s.key]:t})}})),e.sub(t,(t=>{t&&t.registerCommand(m.SELECTION_CHANGE_COMMAND,((t,n)=>(e.pubIn({[r.key]:n,[b.key]:!0}),O(),!1)),m.COMMAND_PRIORITY_CRITICAL)})),e.pipe(e.combine(y,r),e.o.scan(((n,[a,r])=>(n.forEach((e=>e())),r?a.map((n=>n(r,e.getValue(t)))):[])),[])),e.pub(k,(e=>e.registerUpdateListener((({editorState:e})=>{e.read((()=>{O()}))})))),e.pub(k,(n=>n.registerCommand(m.BLUR_COMMAND,(n=>{var a;return!(null==(a=e.getValue(t).getRootElement())?void 0:a.contains(n.relatedTarget))&&e.pub(b,!1),!1}),m.COMMAND_PRIORITY_LOW))),{editor:t,activeEditor:r,currentFormat:o,currentSelection:l,currentListType:i,currentBlockType:s,applyFormat:c,applyListType:d,applyBlockType:u,insertHorizontalRule:p,insertFrontmatter:f,insertImage:w,insertTable:h,createEditorSubscription:k,editorSubscriptions:y,activeEditorType:x,inFocus:b,historyState:a,editorRootElementRef:C,markdownParseOptions:_,lexicalConvertOptions:N,lexicalNodes:S,imageAutocompleteSuggestions:H,markdownSource:n}}),[]),[vt,ft]=pt((e=>({jsxComponentDescriptors:e.node([])})),[]),[wt]=pt(((e,[{editor:t,markdownParseOptions:n,markdownSource:a},{}])=>{const r=e.node("editor"),o=e.node("");return e.sub(e.pipe(r,e.o.scan(((e,t)=>({current:e.next,next:t})),{current:"editor",next:"editor"}),e.o.withLatestFrom(t,a,n)),(([{current:e},t,n,a])=>{"markdown"===e&&(null==t||t.update((()=>{m.$getRoot().clear(),nt({root:m.$getRoot(),markdown:n,...a})})))})),{viewMode:r,headMarkdown:o}}),[Et,ft]),kt={defaultPreset:"react",presets:[{name:"react",meta:"live react",label:"React",sandpackTemplate:"react",sandpackTheme:"light",snippetFileName:"/App.js",snippetLanguage:"jsx",initialSnippetContent:'\nexport default function App() {\n return (\n <div className="App">\n <h1>Hello CodeSandbox</h1>\n <h2>Start editing to see some magic happen!</h2>\n </div>\n );\n}\n'}]},yt={js:"JavaScript",ts:"TypeScript",tsx:"TypeScript (React)",jsx:"JavaScript (React)",css:"CSS"},[bt]=pt(((e,[{activeEditor:t,activeEditorType:n,createEditorSubscription:a}])=>{const r=e.node(kt),o=e.node(yt),l=e.node(),i=e.node();return e.pub(a,(t=>t.registerCommand(m.FOCUS_COMMAND,(()=>(e.pub(n,{type:"lexical"}),!1)),m.COMMAND_PRIORITY_LOW))),e.sub(e.pipe(l,e.o.withLatestFrom(t,r)),(([e,t,n])=>{null==t||t.getEditorState().read((()=>{const a=m.$getSelection();if(m.$isRangeSelection(a)){const r=a.focus.getNode(),o=e?n.presets.find((t=>t.meta===e)):n.presets.find((e=>e.name==n.defaultPreset));if(!o)throw new Error(`No sandpack preset found with ${e}`);null!==r&&t.update((()=>{const e=Ne({code:o.initialSnippetContent||"",language:o.snippetLanguage||"jsx",meta:o.meta});T.$insertNodeToNearestRoot(e),setTimeout((()=>e.select()),80)}))}}))})),e.sub(e.pipe(i,e.o.withLatestFrom(t)),(([,e])=>{null==e||e.getEditorState().read((()=>{const t=m.$getSelection();if(m.$isRangeSelection(t)){null!==t.focus.getNode()&&e.update((()=>{const e=de({code:"",language:"jsx",meta:""});T.$insertNodeToNearestRoot(e),setTimeout((()=>e.select()),80)}))}}))})),{codeBlockLanguages:o,insertSandpack:l,insertCodeBlock:i,sandpackConfig:r}}),[Et]);function xt(e){const t=m.$getSelection(),n=window.getSelection(),a=document.activeElement,r=e.getRootElement();if(null!==t&&null!==n&&null!==r&&r.contains(n.anchorNode)&&e.isEditable()){const e=n.getRangeAt(0);let t;if(n.anchorNode===r){let e=r;for(;null!=e.firstElementChild;)e=e.firstElementChild;t=e.getBoundingClientRect()}else t=e.getBoundingClientRect();return{top:t.top+window.scrollY,left:t.left+window.scrollX,width:t.width,height:t.height}}return a&&a.className,null}function Ct(e,t){return ie({markdown:""},(n=>{e.getEditorState().read((()=>{n.markdown=function({root:e,toMarkdownOptions:t,toMarkdownExtensions:n,visitors:a,jsxComponentDescriptors:r}){return H.toMarkdown(je({root:e,visitors:a,jsxComponentDescriptors:r}),{extensions:n,...t})}({root:m.$getRoot(),...t})}))})).markdown}const _t="undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement&&/Mac|iPod|iPhone|iPad/.test(navigator.platform);function Nt(e){const t=function(e){const t=e.anchor,n=e.focus,a=e.anchor.getNode(),r=e.focus.getNode();return a===r?a:e.isBackward()?M.$isAtNodeEnd(n)?a:r:M.$isAtNodeEnd(t)?a:r}(e),n=t.getParent();return h.$isLinkNode(n)?n:h.$isLinkNode(t)?t:null}const[Tt,St]=pt(((e,[{activeEditor:t,currentSelection:n,createEditorSubscription:a}])=>{const r=e.node(!1),o=e.node(),l=e.node({type:"inactive"},!0),i=e.node(),s=e.node(),c=e.node(),d=e.node(),u=e.node(),p=e.node(),g=e.node([]);return e.sub(e.pipe(p,e.o.withLatestFrom(n,t),e.o.filter((([,e])=>m.$isRangeSelection(e)))),(([,t,n])=>{null==n||n.getEditorState().read((()=>{const a=Nt(t),r=xt(n);a?e.pub(l,{type:"edit",initialUrl:a.getURL(),url:a.getURL(),linkNodeKey:a.getKey(),rectangle:r}):e.pub(l,{type:"edit",initialUrl:"",url:"",linkNodeKey:"",rectangle:r})}))})),e.sub(e.pipe(u,e.o.withLatestFrom(t)),(([,e])=>{null==e||e.dispatchCommand(h.TOGGLE_LINK_COMMAND,null)})),e.pub(a,(t=>t.registerCommand(m.KEY_ESCAPE_COMMAND,(()=>"preview"===e.getValue(l).type&&(e.pub(l,{type:"inactive"}),!0)),m.COMMAND_PRIORITY_LOW))),e.pub(a,(t=>t.registerCommand(m.KEY_MODIFIER_COMMAND,(t=>!!("k"===t.key&&_t?t.metaKey:t.ctrlKey)&&(e.pub(p,!0),!0)),m.COMMAND_PRIORITY_HIGH))),e.link(e.pipe(d,e.o.withLatestFrom(l),e.o.map((([,e])=>{if("preview"===e.type)return{type:"edit",initialUrl:e.url,url:e.url,linkNodeKey:e.linkNodeKey,rectangle:e.rectangle};throw new Error("Cannot switch to edit mode when not in preview mode")}))),l),e.sub(e.pipe(c,e.o.withLatestFrom(l,t)),(([,t,n])=>{if("edit"!==t.type)throw new Error("Cannot apply link edit when not in edit mode");{const a=t.url.trim();""!==a.trim()?(null==n||n.dispatchCommand(h.TOGGLE_LINK_COMMAND,a),e.pub(l,{type:"preview",linkNodeKey:t.linkNodeKey,rectangle:t.rectangle,url:a})):(""!==t.initialUrl&&(null==n||n.dispatchCommand(h.TOGGLE_LINK_COMMAND,null)),e.pub(l,{type:"inactive"}))}})),e.link(e.pipe(i,e.o.withLatestFrom(l),e.o.map((([e,t])=>{if("edit"===t.type)return{...t,url:e};throw new Error("Cannot update link url when not in edit mode")}))),l),e.link(e.pipe(s,e.o.withLatestFrom(l,t),e.o.map((([,e,t])=>{if("edit"===e.type)return null==t||t.focus(),""===e.initialUrl?{type:"inactive"}:{type:"preview",url:e.initialUrl,linkNodeKey:e.linkNodeKey,rectangle:e.rectangle};throw new Error("Cannot cancel edit when not in edit mode")}))),l),e.link(e.pipe(e.combine(n,o),e.o.withLatestFrom(t,l),e.o.map((([[e],t])=>{if(m.$isRangeSelection(e)&&t){const n=Nt(e);return n?{type:"preview",url:n.getURL(),linkNodeKey:n.getKey(),rectangle:xt(t)}:{type:"inactive"}}return{type:"inactive"}}))),l),{dialogState:r,onWindowChange:o,linkDialogState:l,updateLinkUrl:i,switchFromPreviewToLinkEdit:d,cancelLinkEdit:s,removeLink:u,openLinkEditDialog:p,applyLinkChanges:c,linkAutocompleteSuggestions:g}}),[Et]),[Mt,Lt]=pt(((e,[{createEditorSubscription:t,lexicalConvertOptions:n,markdownSource:a},{jsxComponentDescriptors:r}])=>{const o=e.node();return e.pub(t,((t,l)=>{function i(){const t=e.getValue(r),i=e.getValue(n),s=Ct(l,{jsxComponentDescriptors:t,...i});e.pub(o,s),e.pub(a,s)}return i(),t.registerUpdateListener((({dirtyElements:e,dirtyLeaves:t,prevEditorState:n,tags:a})=>{0===e.size&&0===t.size||a.has("history-merge")||n.isEmpty()||i()}))})),{onChange:o}}),[Et,ft]),[Ht,Ot]=pt((e=>({toolbarComponents:e.node([])})),[]),{Component:At,usePublisher:Rt,useEmitterValues:Vt}=function(e,t,n){const a=Object.keys(t.required||{}),r=Object.keys(t.optional||{}),o=Object.keys(t.methods||{}),l=Object.keys(t.events||{}),i=ut;function s(e,n){const o={};for(const r of a){o[t.required[r]]=n[r]}for(const a of r){const e=n[a];if(void 0!==e){o[t.optional[a]]=e}}e.suppressFlushSync=!0,e.pubKeys(o),e.suppressFlushSync=!1}const c=u.forwardRef(((c,d)=>{const m=u.useMemo((()=>ie(e(),(e=>s(e,c)))),[]);var p;mt((()=>{s(m,c),m.resetSingletonSubs();for(const e of l)e in c&&m.singletonSubKey(t.events[e],c[e]);return()=>{m.resetSingletonSubs()}}),[c]),u.useImperativeHandle(d,(p=function(e){return o.reduce(((n,a)=>{const r=t.methods[a];return n[a]=t=>{e.pubKey(r,t)},n}),{})}(m),()=>p));const h=c.children;return u.createElement(i.Provider,{value:m},n?u.createElement(n,function(e,t){const n={},a={};let r=0;const o=e.length;for(;r<o;)a[e[r]]=1,r+=1;for(const l in t)Object.prototype.hasOwnProperty.call(a,l)||(n[l]=t[l]);return n}([...a,...r,...l],c),h):h)}));return c.displayName="Gurx Component",{Component:c,useEmitter:(e,t)=>{const n=u.useContext(i);mt((()=>n.subKey(e,t)),[t])},useEmitterValues:(...e)=>{const t=u.useContext(i),[n,a]=u.useState((()=>t.getKeyValues(e)));return mt((()=>null==t?void 0:t.subKeys(e,(n=>{const r=()=>{a(1===e.length?[n]:n)};t.suppressFlushSync,r()}))),[e]),n},usePubKeys:()=>u.useContext(i).pubKeys,usePublisher:e=>{const t=Q.useContext(i);return u.useCallback((n=>{t.pubKey(e,n)}),[e,t])}}}(function(...e){return()=>function(...e){const t=new Map,n=dt(),a=({id:r,constructor:o,dependencies:l})=>{if(t.has(r))return t.get(r);const i=o(n,l.map((t=>a(e.find((e=>e.id===t.id))))));return n.label(i),t.set(r,i),i};return e.forEach(a),n}(...e)}(gt,wt,bt,Tt,vt,Mt,Ht),{required:{markdownSource:"markdownSource",headMarkdown:"headMarkdown",jsxComponentDescriptors:"jsxComponentDescriptors",sandpackConfig:"sandpackConfig",toolbarComponents:"toolbarComponents",markdownParseOptions:"markdownParseOptions",lexicalConvertOptions:"lexicalConvertOptions",lexicalNodes:"lexicalNodes"},optional:{editorRootElementRef:"editorRootElementRef",viewMode:"viewMode",linkAutocompleteSuggestions:"linkAutocompleteSuggestions",imageAutocompleteSuggestions:"imageAutocompleteSuggestions",codeBlockLanguages:"codeBlockLanguages"},events:{onChange:"onChange"}},(({children:e})=>u.createElement("div",null,u.createElement(It,null),e))),It=()=>{const e=Rt("editor"),[t]=S.useLexicalComposerContext();return u.useEffect((()=>e(t)),[t,e]),null},Dt=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Q.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M0 0h24v24H0z"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"m9.55 18-5.7-5.7 1.425-1.425L9.55 15.15l9.175-9.175L20.15 7.4 9.55 18Z"}))),Bt=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Q.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M0 0h24v24H0z"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"M6.4 19 5 17.6l5.6-5.6L5 6.4 6.4 5l5.6 5.6L17.6 5 19 6.4 13.4 12l5.6 5.6-1.4 1.4-5.6-5.6L6.4 19Z"}))),Pt=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Q.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M0 0h24v24H0z"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"M7 18V2h13v16H7Zm2-2h9V4H9v12Zm-6 6V6h2v14h11v2H3Z"}))),$t=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Q.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M0 0h24v24H0z"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"M5 19h1.4l8.625-8.625-1.4-1.4L5 17.6V19ZM19.3 8.925l-4.25-4.2L17.875 1.9 22.1 6.125l-2.8 2.8ZM3 21v-4.25l10.6-10.6 4.25 4.25L7.25 21H3Z"}))),Zt=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Q.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M0 0h24v24H0z"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"m19.25 16.45-1.5-1.55a3.05 3.05 0 0 0 1.625-1.063A2.867 2.867 0 0 0 20 12c0-.833-.292-1.542-.875-2.125A2.893 2.893 0 0 0 17 9h-4V7h4c1.383 0 2.563.487 3.538 1.462C21.513 9.437 22 10.617 22 12c0 .95-.246 1.825-.737 2.625a4.79 4.79 0 0 1-2.013 1.825ZM15.85 13l-2-2H16v2h-.15Zm3.95 9.6L1.4 4.2l1.4-1.4 18.4 18.4-1.4 1.4ZM11 17H7c-1.383 0-2.562-.488-3.537-1.463C2.488 14.562 2 13.383 2 12c0-1.15.35-2.175 1.05-3.075.7-.9 1.6-1.492 2.7-1.775L7.6 9H7c-.833 0-1.542.292-2.125.875A2.893 2.893 0 0 0 4 12c0 .833.292 1.542.875 2.125A2.893 2.893 0 0 0 7 15h4v2Zm-3-4v-2h1.625l1.975 2H8Z"}))),Ut=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Q.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M0 0h24v24H0z"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"M3 21V3h9v2H5v14h14v-7h2v9H3Zm6.7-5.3-1.4-1.4L17.6 5H14V3h7v7h-2V6.4l-9.3 9.3Z"}))),Ft=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Q.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M0 0h24v24H0z"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"m12 15-5-5h10l-5 5Z"}))),Kt={editorRoot:"_editorRoot_15boy_47",editorWrapper:"_editorWrapper_15boy_141",nestedListItem:"_nestedListItem_15boy_145",toolbarRoot:"_toolbarRoot_15boy_149",toolbarModeSwitch:"_toolbarModeSwitch_15boy_170",toolbarToggleItem:"_toolbarToggleItem_15boy_179",toolbarGroupOfGroups:"_toolbarGroupOfGroups_15boy_189",toolbarToggleSingleGroup:"_toolbarToggleSingleGroup_15boy_193",toolbarButton:"_toolbarButton_15boy_207",toolbarNodeKindSelectContainer:"_toolbarNodeKindSelectContainer_15boy_236",toolbarButtonDropdownContainer:"_toolbarButtonDropdownContainer_15boy_237",toolbarCodeBlockLanguageSelectContent:"_toolbarCodeBlockLanguageSelectContent_15boy_238",toolbarNodeKindSelectTrigger:"_toolbarNodeKindSelectTrigger_15boy_252",toolbarButtonSelectTrigger:"_toolbarButtonSelectTrigger_15boy_253",toolbarCodeBlockLanguageSelectTrigger:"_toolbarCodeBlockLanguageSelectTrigger_15boy_286",toolbarNodeKindSelectItem:"_toolbarNodeKindSelectItem_15boy_292",toolbarNodeKindSelectDropdownArrow:"_toolbarNodeKindSelectDropdownArrow_15boy_315",contentEditable:"_contentEditable_15boy_319",sandpackWrapper:"_sandpackWrapper_15boy_327",frontmatterWrapper:"_frontmatterWrapper_15boy_331",frontmatterToggleButton:"_frontmatterToggleButton_15boy_341",frontmatterEditorTable:"_frontmatterEditorTable_15boy_349",iconButton:"_iconButton_15boy_367",frontmatterInput:"_frontmatterInput_15boy_373",primaryButton:"_primaryButton_15boy_388",linkDialogEditForm:"_linkDialogEditForm_15boy_398",linkDialogInputContainer:"_linkDialogInputContainer_15boy_404",linkDialogInputWrapper:"_linkDialogInputWrapper_15boy_410",linkDialogInput:"_linkDialogInput_15boy_404",linkDialogAutocompleteContainer:"_linkDialogAutocompleteContainer_15boy_440",linkDialogAnchor:"_linkDialogAnchor_15boy_485",linkDialogPopoverContent:"_linkDialogPopoverContent_15boy_499",tableColumnEditorPopoverContent:"_tableColumnEditorPopoverContent_15boy_499",dialogContent:"_dialogContent_15boy_499",linkDialogPreviewAnchor:"_linkDialogPreviewAnchor_15boy_513",tooltipContent:"_tooltipContent_15boy_535",actionButton:"_actionButton_15boy_547",primaryActionButton:"_primaryActionButton_15boy_553",tableEditor:"_tableEditor_15boy_562",toolCell:"_toolCell_15boy_573",tableColumnEditorTrigger:"_tableColumnEditorTrigger_15boy_590",tableRowEditorTrigger:"_tableRowEditorTrigger_15boy_590",addRowButton:"_addRowButton_15boy_590",addColumnButton:"_addColumnButton_15boy_590",tableColumnEditorToolbar:"_tableColumnEditorToolbar_15boy_624",toggleGroupRoot:"_toggleGroupRoot_15boy_636",tableToolsColumn:"_tableToolsColumn_15boy_653",leftAlignedCell:"_leftAlignedCell_15boy_661",rightAlignedCell:"_rightAlignedCell_15boy_665",centeredCell:"_centeredCell_15boy_669",dialogOverlay:"_dialogOverlay_15boy_697",overlayShow:"_overlayShow_15boy_1",contentShow:"_contentShow_15boy_1"};m.createCommand();const zt=20;function jt({initialUrl:e,onSubmit:t,onCancel:n,linkAutocompleteSuggestions:a}){const[r,o]=u.useState(a.slice(0,zt)),{isOpen:l,getToggleButtonProps:i,getMenuProps:s,getInputProps:c,highlightedIndex:m,getItemProps:p,selectedItem:h}=R.useCombobox({initialInputValue:e,onInputValueChange({inputValue:e}){e=(null==e?void 0:e.toLowerCase())||"";const t=[];for(const n of a)if(n.toLowerCase().includes(e)&&(t.push(n),t.length>=zt))break;o(t)},items:r,itemToString:e=>e??""}),g=u.useCallback((e=>{var n;"Escape"===e.key?null==(n=e.target.form)||n.reset():"Enter"!==e.key||l&&0!==r.length||(e.preventDefault(),t(e.target.value))}),[l,r,t]),E=c(),v={...E,onKeyDown:e=>{g(e),E.onKeyDown(e)}},f=l&&r.length>0;return u.createElement("form",{onSubmit:e=>{e.preventDefault(),t(h||"")},onReset:n,className:d(Kt.linkDialogEditForm)},u.createElement("div",{className:Kt.linkDialogInputContainer},u.createElement("div",{"data-visible-dropdown":f,className:Kt.linkDialogInputWrapper},u.createElement("input",{className:Kt.linkDialogInput,...v,autoFocus:!0,size:30,"data-editor-dialog":!0}),u.createElement("button",{"aria-label":"toggle menu",type:"button",...i()},u.createElement(Ft,null))),u.createElement("div",{className:Kt.linkDialogAutocompleteContainer},u.createElement("ul",{...s(),"data-visible":f},r.map(((e,t)=>u.createElement("li",{"data-selected":h===e,"data-highlighted":m===t,key:`${e}${t}`,...p({item:e,index:t})},e)))))),u.createElement(Wt,{type:"submit",title:"Set URL","aria-label":"Set URL"},u.createElement(Dt,null)),u.createElement(Wt,{type:"reset",title:"Cancel change","aria-label":"Cancel change"},u.createElement(Bt,null)))}function qt(){const[e]=Vt("editorRootElementRef"),t=Rt("onWindowChange"),[n,a,r]=Vt("linkDialogState","linkAutocompleteSuggestions","activeEditor"),o=Rt("updateLinkUrl"),l=Rt("cancelLinkEdit"),i=Rt("switchFromPreviewToLinkEdit"),s=Rt("removeLink"),c=Rt("applyLinkChanges");u.useEffect((()=>{const e=()=>{null==r||r.getEditorState().read((()=>{t(!0)}))};return window.addEventListener("resize",e),window.addEventListener("scroll",e),()=>{window.removeEventListener("resize",e),window.removeEventListener("scroll",e)}}),[r,t]);const[m,p]=u.useState(!1),h=null==n?void 0:n.rectangle,g=u.useCallback((e=>{o(e),c(!0)}),[c,o]),E="preview"===n.type&&n.url.startsWith("http");return u.createElement(X.Root,{open:"inactive"!==n.type},u.createElement(X.Anchor,{"data-visible":"edit"===n.type,className:Kt.linkDialogAnchor,style:{top:null==h?void 0:h.top,left:null==h?void 0:h.left,width:null==h?void 0:h.width,height:null==h?void 0:h.height}}),u.createElement(X.Portal,{container:null==e?void 0:e.current},u.createElement(X.Content,{className:d(Kt.linkDialogPopoverContent),sideOffset:5,onOpenAutoFocus:e=>e.preventDefault(),key:n.linkNodeKey},"edit"===n.type&&u.createElement(jt,{initialUrl:n.url,onSubmit:g,onCancel:l.bind(null,!0),linkAutocompleteSuggestions:a}),"preview"===n.type&&u.createElement(u.Fragment,null,u.createElement("a",{className:Kt.linkDialogPreviewAnchor,href:n.url,...E?{target:"_blank",rel:"noreferrer"}:{},title:E?`Open ${n.url} in new window`:n.url},u.createElement("span",null,n.url),E&&u.createElement(Ut,null)),u.createElement(Wt,{onClick:()=>i(!0),title:"Edit link URL","aria-label":"Edit link URL"},u.createElement($t,null)),u.createElement(ee.Provider,null,u.createElement(ee.Root,{open:m},u.createElement(ee.Trigger,{asChild:!0},u.createElement(Wt,{title:"Copy to clipboard","aria-label":"Copy link URL",onClick:()=>{window.navigator.clipboard.writeText(n.url).then((()=>{p(!0),setTimeout((()=>p(!1)),1e3)}))}},m?u.createElement(Dt,null):u.createElement(Pt,null))),u.createElement(ee.Portal,{container:null==e?void 0:e.current},u.createElement(ee.Content,{className:d(Kt.tooltipContent),sideOffset:5},"Copied!",u.createElement(ee.Arrow,null))))),u.createElement(Wt,{title:"Remove link","aria-label":"Remove link",onClick:()=>s(!0)},u.createElement(Zt,null))))))}const Wt=u.forwardRef((({className:e,...t},n)=>u.createElement("button",{className:d(Kt.actionButton,e),ref:n,...t})));function Jt(e){const t=m.$getSelection();if(!m.$isRangeSelection(t))return!1;const n=function(e){const t=e.getNodes();return 0===t.length?new Set([e.anchor.getNode().getParentOrThrow(),e.focus.getNode().getParentOrThrow()]):new Set(t.map((e=>m.$isElementNode(e)?e:e.getParentOrThrow())))}(t);let a=0;for(const r of n)if(g.$isListNode(r))a=Math.max(g.$getListDepth(r)+1,a);else if(g.$isListItemNode(r)){const e=r.getParent();if(1===(null==e?void 0:e.getChildren().length)){const t=null==e?void 0:e.getParent();if(g.$isListItemNode(t)&&1===t.getChildren().length)return!1}if(!g.$isListNode(e))throw new Error("ListMaxIndentLevelPlugin: A ListItemNode must have a ListNode for a parent.");a=Math.max(g.$getListDepth(e)+1,a)}return a<=e}function Gt({maxDepth:e}){const[t]=S.useLexicalComposerContext();return u.useEffect((()=>t.registerCommand(m.INDENT_CONTENT_COMMAND,(()=>!Jt(e??7)),m.COMMAND_PRIORITY_CRITICAL)),[t,e]),null}const Yt=()=>{return u.createElement(I.MarkdownShortcutPlugin,{transformers:(e=V.TRANSFORMERS,e.find((e=>e===V.CODE)).replace=(e,t,n)=>{const a=de({code:"",language:n?n[1]:"",meta:""});e.replace(a),setTimeout((()=>a.select()),80)},e)});var e};function Qt(e,t,n){const[a]=Vt("activeEditor"),r=Rt("activeEditorType"),o=u.useRef(null),l=u.useRef(!1),i=u.useRef(!1),s=u.useCallback((()=>{r({type:t,nodeKey:e})}),[e,r,t]),c=u.useCallback((t=>{var n,r,s,c;if("ArrowDown"===t.key){const t=null==(r=null==(n=null==o?void 0:o.current)?void 0:n.getCodemirror())?void 0:r.state;if(t){t.doc.length===t.selection.ranges[0].to&&(l.current?(null==a||a.update((()=>{var t,n;const a=m.$getNodeByKey(e);a.getNextSibling()?(null==(n=null==(t=null==o?void 0:o.current)?void 0:t.getCodemirror())||n.contentDOM.blur(),a.selectNext()):a.insertAfter(m.$createParagraphNode())})),l.current=!1):l.current=!0)}}else if("ArrowUp"===t.key){const t=null==(c=null==(s=null==o?void 0:o.current)?void 0:s.getCodemirror())?void 0:c.state;if(t){0===t.selection.ranges[0].from&&(i.current?(null==a||a.update((()=>{var t,n;const a=m.$getNodeByKey(e);a.getPreviousSibling()&&(null==(n=null==(t=null==o?void 0:o.current)?void 0:t.getCodemirror())||n.contentDOM.blur(),a.selectPrevious())})),i.current=!1):i.current=!0)}}else"Enter"===t.key&&t.stopPropagation()}),[a,e]);return u.useEffect((()=>{const e=o.current;return setTimeout((()=>{var t,n,a,r;null==(n=null==(t=null==e?void 0:e.getCodemirror())?void 0:t.contentDOM)||n.addEventListener("focus",s),null==(r=null==(a=null==e?void 0:e.getCodemirror())?void 0:a.contentDOM)||r.addEventListener("keydown",c)}),100),()=>{var t,n;null==(t=null==e?void 0:e.getCodemirror())||t.contentDOM.removeEventListener("focus",s),null==(n=null==e?void 0:e.getCodemirror())||n.contentDOM.removeEventListener("keydown",c)}}),[o,s,c,n]),o}const Xt=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Q.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M0 0h24v24H0z"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"M10 17V7l5 5-5 5Z"}))),en=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Q.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M0 0h24v24H0z"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"m12 15-5-5h10l-5 5Z"}))),tn=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:20,height:20,fill:"currentColor",viewBox:"0 0 20 20",...e},Q.createElement("mask",{id:"a",width:20,height:20,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M0 0h20v20H0z"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"M5 17V6.5H4V5h4V4h4v1h4v1.5h-1V17H5Zm1.5-1.5h7v-9h-7v9ZM8 14h1.5V8H8v6Zm2.5 0H12V8h-1.5v6Z"}))),nn=u.forwardRef((({className:e,autofocusIfEmpty:t,...n},a)=>(n.autoFocus=Boolean(!n.value&&t),u.createElement("input",{className:d(Kt.frontmatterInput,e),...n,ref:a})))),an=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Q.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M0 0h24v24H0z"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"m9.25 22-.4-3.2a3.79 3.79 0 0 1-.613-.3 8.266 8.266 0 0 1-.562-.375L4.7 19.375l-2.75-4.75 2.575-1.95a2.387 2.387 0 0 1-.025-.338v-.675c0-.108.008-.22.025-.337L1.95 9.375l2.75-4.75 2.975 1.25c.183-.133.375-.258.575-.375.2-.117.4-.217.6-.3l.4-3.2h5.5l.4 3.2c.217.083.42.183.612.3.192.117.38.242.563.375l2.975-1.25 2.75 4.75-2.575 1.95c.017.117.025.23.025.338v.675c0 .108-.017.22-.05.337l2.575 1.95-2.75 4.75-2.95-1.25a6.842 6.842 0 0 1-.575.375c-.2.117-.4.217-.6.3l-.4 3.2h-5.5Zm2.8-6.5c.967 0 1.792-.342 2.475-1.025A3.372 3.372 0 0 0 15.55 12c0-.967-.342-1.792-1.025-2.475A3.373 3.373 0 0 0 12.05 8.5c-.983 0-1.813.342-2.488 1.025A3.393 3.393 0 0 0 8.55 12c0 .967.337 1.792 1.012 2.475.676.683 1.505 1.025 2.488 1.025Zm0-2c-.417 0-.77-.146-1.063-.438A1.446 1.446 0 0 1 10.55 12c0-.417.146-.77.438-1.063a1.446 1.446 0 0 1 1.062-.437c.417 0 .77.146 1.063.438.291.291.437.645.437 1.062 0 .417-.146.77-.438 1.063a1.447 1.447 0 0 1-1.062.437ZM11 20h1.975l.35-2.65a5.61 5.61 0 0 0 1.438-.588c.441-.258.845-.57 1.212-.937l2.475 1.025.975-1.7-2.15-1.625c.083-.233.142-.48.175-.738a6.153 6.153 0 0 0 0-1.575 3.535 3.535 0 0 0-.175-.737l2.15-1.625-.975-1.7-2.475 1.05a5.556 5.556 0 0 0-1.213-.962 5.607 5.607 0 0 0-1.437-.588L13 4h-1.975l-.35 2.65c-.517.133-.996.33-1.438.587a6.015 6.015 0 0 0-1.212.938L5.55 7.15l-.975 1.7 2.15 1.6c-.083.25-.142.5-.175.75a6.122 6.122 0 0 0 0 1.575c.033.25.092.5.175.75l-2.15 1.625.975 1.7 2.475-1.05c.367.383.77.704 1.212.962.442.259.921.455 1.438.588L11 20Z"}))),rn=u.forwardRef(((e,t)=>u.createElement(X.Content,{...e,className:"",ref:t}))),on=u.forwardRef(((e,t)=>u.createElement(X.Trigger,{...e,className:"",ref:t})));const ln=({attributes:e,componentName:t,onSubmit:n})=>{const[a,r]=u.useState(!1),o=u.useCallback((e=>{n(e),r(!1)}),[n]);return u.createElement(X.Root,{open:a,onOpenChange:e=>r(e)},u.createElement(on,null,u.createElement(an,null)),u.createElement(X.Portal,null,u.createElement(rn,null,u.createElement(sn,{attributes:e,componentName:t,onSubmit:o}))))},sn=({attributes:e,componentName:t,onSubmit:n})=>{const[a]=Vt("jsxComponentDescriptors"),r=a.find((e=>e.name===t)),[o]=S.useLexicalComposerContext(),{register:l,handleSubmit:i}=P.useForm({defaultValues:e.reduce(((e,t)=>(e[t.name]=t.value,e)),{})});return u.createElement("form",{onSubmit:i((e=>{o.update((()=>{n(e)}))}))},u.createElement("table",null,u.createElement("thead",null,u.createElement("tr",null,u.createElement("th",null,"Attribute"),u.createElement("th",null,"Value"))),u.createElement("tbody",null,r.props.map((e=>u.createElement("tr",{key:e.name},u.createElement("td",null," ",e.name," "),u.createElement("td",null,u.createElement("input",{...l(e.name)}))))))),u.createElement("button",{type:"submit"},"Submit"))},cn=({onChange:e,snippetFileName:t})=>{const{sandpack:n}=D.useSandpack();return e(n.files[t].code),null};const dn=e=>{const t={type:"root",children:e.mdastChildren},n=U.raw(Z.toHast(t,{allowDangerousHtml:!0})),a=F.sanitize(n),r=K.toHtml(a);return u.createElement("span",{dangerouslySetInnerHTML:{__html:r||"&nbsp;"}})},mn=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Q.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M0 0h24v24H0z"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"M6 14c-.55 0-1.02-.196-1.412-.588A1.926 1.926 0 0 1 4 12c0-.55.196-1.02.588-1.412A1.926 1.926 0 0 1 6 10c.55 0 1.02.196 1.412.588.392.391.588.862.588 1.412 0 .55-.196 1.02-.588 1.412A1.926 1.926 0 0 1 6 14Zm6 0c-.55 0-1.02-.196-1.412-.588A1.926 1.926 0 0 1 10 12c0-.55.196-1.02.588-1.412A1.926 1.926 0 0 1 12 10c.55 0 1.02.196 1.412.588.392.391.588.862.588 1.412 0 .55-.196 1.02-.588 1.412A1.926 1.926 0 0 1 12 14Zm6 0c-.55 0-1.02-.196-1.413-.588A1.926 1.926 0 0 1 16 12c0-.55.196-1.02.587-1.412A1.926 1.926 0 0 1 18 10c.55 0 1.02.196 1.413.588.391.391.587.862.587 1.412 0 .55-.196 1.02-.587 1.412A1.926 1.926 0 0 1 18 14Z"}))),un=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:20,height:20,fill:"currentColor",viewBox:"0 0 20 20",...e},Q.createElement("mask",{id:"a",width:20,height:20,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M0 0h20v20H0z"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"M3 17v-1.5h14V17H3Zm0-3.125v-1.5h10v1.5H3Zm0-3.125v-1.5h14v1.5H3Zm0-3.125v-1.5h10v1.5H3ZM3 4.5V3h14v1.5H3Z"}))),pn=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:20,height:20,fill:"currentColor",viewBox:"0 0 20 20",...e},Q.createElement("mask",{id:"a",width:20,height:20,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M0 0h20v20H0z"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"M3 17v-1.5h14V17H3Zm3-3.125v-1.5h8v1.5H6ZM3 10.75v-1.5h14v1.5H3Zm3-3.125v-1.5h8v1.5H6ZM3 4.5V3h14v1.5H3Z"}))),hn=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:20,height:20,fill:"currentColor",viewBox:"0 0 20 20",...e},Q.createElement("mask",{id:"a",width:20,height:20,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M0 0h20v20H0z"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"M3 17v-1.5h14V17H3Zm4-3.125v-1.5h10v1.5H7ZM3 10.75v-1.5h14v1.5H3Zm4-3.125v-1.5h10v1.5H7ZM3 4.5V3h14v1.5H3Z"}))),gn=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:20,height:20,fill:"currentColor",viewBox:"0 0 20 20",...e},Q.createElement("mask",{id:"a",width:20,height:20,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M0 20h20v20H0z",transform:"rotate(-90 0 20)"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"M15.75 4.5H13v2.75h-1.5V4.5H8.75V3h2.75V.25H13V3h2.75v1.5ZM13 17H5V3h2.25v1.5H6.5v11h5V8.75H13V17Z"}))),En=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:20,height:20,fill:"currentColor",viewBox:"0 0 20 20",...e},Q.createElement("mask",{id:"a",width:20,height:20,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M0 0h20v20H0z",transform:"matrix(0 -1 -1 0 20 20)"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"M4.25 4.5H7v2.75h1.5V4.5h2.75V3H8.5V.25H7V3H4.25v1.5ZM7 17h8V3h-2.25v1.5h.75v11h-5V8.75H7V17Z"}))),vn=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:20,height:20,fill:"currentColor",viewBox:"0 0 20 20",...e},Q.createElement("mask",{id:"a",width:20,height:20,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M0 0h20v20H0z"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"M6.5 17a1.45 1.45 0 0 1-1.06-.44A1.445 1.445 0 0 1 5 15.5v-10H4V4h4V3h4v1h4v1.5h-1v9.991c0 .423-.147.78-.44 1.072A1.45 1.45 0 0 1 13.5 17h-7Zm7-11.5h-7v10h7v-10ZM8 14h1.5V7H8v7Zm2.5 0H12V7h-1.5v7Z"}))),fn=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:20,height:20,fill:"currentColor",viewBox:"0 0 20 20",...e},Q.createElement("mask",{id:"a",width:20,height:20,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M0 0h20v20H0z",transform:"matrix(-1 0 0 1 20 0)"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"M4.5 16.75V14h2.75v-1.5H4.5V9.75H3v2.75H.25V14H3v2.75h1.5ZM17 14V6H3v2.25h1.5V7.5h11v5H8.75V14H17Z"}))),wn=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:20,height:20,fill:"currentColor",viewBox:"0 0 20 20",...e},Q.createElement("mask",{id:"a",width:20,height:20,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M20 20h20v20H20z",transform:"rotate(180 20 20)"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"M4.5 3.25V6h2.75v1.5H4.5v2.75H3V7.5H.25V6H3V3.25h1.5ZM17 6v8H3v-2.25h1.5v.75h11v-5H8.75V6H17Z"}))),kn=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:20,height:20,fill:"currentColor",viewBox:"0 0 20 20",...e},Q.createElement("mask",{id:"a",width:20,height:20,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M20 20h20v20H20z",transform:"rotate(180 20 20)"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"M10.5 3.25V6h2.75v1.5H10.5v2.75H9V7.5H6.25V6H9V3.25h1.5ZM17 6v8H3V6h2.5v1.5h-1v5h11v-5H14V6h3Z"}))),yn=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:20,height:20,fill:"currentColor",viewBox:"0 0 20 20",...e},Q.createElement("mask",{id:"a",width:20,height:20,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M0 0h20v20H0z",transform:"matrix(0 -1 -1 0 20 20)"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"M3.25 10.5H6v2.75h1.5V10.5h2.75V9H7.5V6.25H6V9H3.25v1.5ZM6 17h8V3H6v2.5h1.5v-1h5v11h-5V14H6v3Z"}))),bn=()=>{const[e]=Vt("historyState");return u.createElement(L.HistoryPlugin,{externalHistoryState:e})},xn={center:Kt.centeredCell,left:Kt.leftAlignedCell,right:Kt.rightAlignedCell},Cn=({align:e,...t})=>{const[n,a]=t.activeCellTuple,r=n&&n[0]===t.colIndex&&n[1]===t.rowIndex,o=xn[e||"left"];return u.createElement("td",{className:o,"data-active":r,onClick:()=>{a([t.colIndex,t.rowIndex])}},r?u.createElement(_n,{...t}):u.createElement(dn,{mdastChildren:t.contents}))},_n=({activeCellTuple:e,parentEditor:t,lexicalTable:n,contents:o,colIndex:l,rowIndex:i})=>{const[c,d,p,h]=Vt("markdownParseOptions","lexicalConvertOptions","jsxComponentDescriptors","lexicalNodes"),[g]=u.useState((()=>{let a=!1;const r=m.createEditor({nodes:h,theme:we});function s(o){a||(a=!0,r.getEditorState().read((()=>{const e=je({root:m.$getRoot(),jsxComponentDescriptors:p,...d});t.update((()=>{n.updateCellContents(l,i,e.children[0].children)}))})),e[1](o))}return r.registerCommand(m.KEY_TAB_COMMAND,(e=>{e.preventDefault();return s(e.shiftKey?[l-1,i]:[l+1,i]),!0}),m.COMMAND_PRIORITY_CRITICAL),r.registerCommand(m.KEY_ENTER_COMMAND,(e=>{null==e||e.preventDefault();return s((null==e?void 0:e.shiftKey)?[l,i-1]:[l,i+1]),!0}),m.COMMAND_PRIORITY_CRITICAL),r.registerCommand(m.BLUR_COMMAND,(e=>{const t=e.relatedTarget;return void 0===(null==t?void 0:t.dataset.editorDialog)&&(s(null),!0)}),m.COMMAND_PRIORITY_CRITICAL),r.registerRootListener((e=>{e&&r.focus()})),r.update((()=>{at({root:m.$getRoot(),mdastRoot:{type:"root",children:[{type:"paragraph",children:o}]},visitors:c.visitors})})),r}));return u.createElement($.LexicalNestedComposer,{initialEditor:g},u.createElement(s.RichTextPlugin,{contentEditable:u.createElement(a.ContentEditable,{autoFocus:!0}),placeholder:u.createElement("div",null),ErrorBoundary:r}),u.createElement(bn,null))},Nn=({parentEditor:e,highlightedCoordinates:t,align:n,lexicalTable:a,colIndex:r,setActiveCellWithBoundaries:o})=>{const[l]=Vt("editorRootElementRef"),i=u.useCallback((t=>{e.update((()=>{a.insertColumnAt(t)})),o([t,0])}),[e,a,o]),s=u.useCallback((t=>{e.update((()=>{a.deleteColumnAt(t)}))}),[e,a]),c=u.useCallback(((t,n)=>{e.update((()=>{a.setColumnAlign(t,n)}))}),[e,a]);return u.createElement(X.Root,null,u.createElement(X.PopoverTrigger,{className:Kt.tableColumnEditorTrigger,"data-active":t[0]===r+1,title:"Column menu"},u.createElement(mn,null)),u.createElement(X.Portal,{container:null==l?void 0:l.current},u.createElement(X.PopoverContent,{className:d(Kt.tableColumnEditorPopoverContent),onOpenAutoFocus:e=>e.preventDefault(),sideOffset:5,side:"top"},u.createElement(te.Root,{className:Kt.tableColumnEditorToolbar},u.createElement(te.ToggleGroup,{className:Kt.toggleGroupRoot,onValueChange:e=>{c(r,e)},value:n||"left",type:"single","aria-label":"Text alignment"},u.createElement(te.ToggleItem,{value:"left",title:"Align left"},u.createElement(un,null)),u.createElement(te.ToggleItem,{value:"center",title:"Align center"},u.createElement(pn,null)),u.createElement(te.ToggleItem,{value:"right",title:"Align right"},u.createElement(hn,null))),u.createElement(te.Separator,null),u.createElement(te.Button,{onClick:i.bind(null,r),title:"Insert a column to the left of this one"},u.createElement(gn,null)),u.createElement(te.Button,{onClick:i.bind(null,r+1),title:"Insert a column to the right of this one"},u.createElement(En,null)),u.createElement(te.Button,{onClick:s.bind(null,r),title:"Delete this column"},u.createElement(vn,null))))))},Tn=({parentEditor:e,highlightedCoordinates:t,lexicalTable:n,rowIndex:a,setActiveCellWithBoundaries:r})=>{const[o]=Vt("editorRootElementRef"),l=u.useCallback((t=>{e.update((()=>{n.insertRowAt(t)})),r([0,t])}),[e,n,r]),i=u.useCallback((t=>{e.update((()=>{n.deleteRowAt(t)}))}),[e,n]);return u.createElement(X.Root,null,u.createElement(X.PopoverTrigger,{className:Kt.tableColumnEditorTrigger,"data-active":t[1]===a},u.createElement(mn,null)),u.createElement(X.Portal,{container:null==o?void 0:o.current},u.createElement(X.PopoverContent,{className:d(Kt.tableColumnEditorPopoverContent),onOpenAutoFocus:e=>e.preventDefault(),sideOffset:5,side:"bottom"},u.createElement(te.Root,{className:Kt.tableColumnEditorToolbar},u.createElement(te.Button,{onClick:l.bind(null,a),title:"Insert a row above this one"},u.createElement(fn,null)),u.createElement(te.Button,{onClick:l.bind(null,a+1),title:"Insert a row below this one"},u.createElement(wn,null)),u.createElement(te.Button,{onClick:i.bind(null,a),title:"Delete this row"},u.createElement(vn,null))))))};function Sn({oldText:e,newText:t}){const n=W.formatLines(W.diffLines(e,t),{context:3});if(""===n.trim())return u.createElement("div",null,"No changes");const[a]=q.parseDiff(n,{nearbySequences:"zip"});return u.createElement(q.Diff,{viewType:"split",diffType:"modify",hunks:a.hunks||[]},(e=>e.map((e=>u.createElement(q.Hunk,{key:e.content,hunk:e})))))}function Mn(){const[e,t]=Vt("markdownSource","headMarkdown");return u.createElement(Sn,{oldText:t,newText:e})}const Ln=({children:e})=>{const[t]=Vt("viewMode");return u.createElement("div",null,u.createElement("div",{style:{display:"editor"===t?"block":"none"}},e),"diff"===t?u.createElement(Mn,null):null,"markdown"===t?u.createElement(Hn,null):null)},Hn=()=>{const[e]=Vt("markdownSource"),t=Rt("markdownSource"),n=u.useRef(null);return u.createElement("div",null,u.createElement(D.SandpackProvider,null,u.createElement(D.CodeEditor,{showLineNumbers:!0,additionalLanguages:[{name:"markdown",extensions:["md"],language:j.markdown()}],initMode:"lazy",filePath:"file.md",code:e,onCodeUpdate:t,ref:n})))},On=u.forwardRef((({title:e,children:t},n)=>{const[a]=Vt("editorRootElementRef");return u.createElement(ee.Provider,{delayDuration:100},u.createElement(ee.Root,null,u.createElement(ee.Trigger,{ref:n,asChild:!0},t),u.createElement(ee.Portal,{container:null==a?void 0:a.current},u.createElement(ee.Content,{className:d(Kt.tooltipContent),sideOffset:10},e))))})),An=u.forwardRef((({children:e,className:t,...n},a)=>u.createElement(ne.Item,{...n,ref:a,className:d(t,Kt.toolbarNodeKindSelectItem)},u.createElement(ne.ItemText,null,e)))),Rn=({title:e,placeholder:t,className:n})=>u.createElement(On,{title:e},u.createElement(ne.Trigger,{"aria-label":t,className:d(Kt.toolbarNodeKindSelectTrigger,n)},u.createElement(ne.Value,{placeholder:t}),u.createElement(ne.Icon,{className:Kt.toolbarNodeKindSelectDropdownArrow},u.createElement(Ft,null)))),Vn=({children:e,className:t=Kt.toolbarNodeKindSelectContainer})=>{const[n]=Vt("editorRootElementRef");return u.createElement(ne.Portal,{container:null==n?void 0:n.current},u.createElement(ne.Content,{className:t,onCloseAutoFocus:e=>e.preventDefault(),position:"popper"},u.createElement(ne.Viewport,null,e)))},In=({children:e,title:t,className:n})=>u.createElement(On,{title:t},u.createElement(ne.Trigger,{className:d(Kt.toolbarButtonSelectTrigger,n)},e,u.createElement(ne.Icon,{className:Kt.toolbarNodeKindSelectDropdownArrow},u.createElement(Ft,null))));function Dn(){const[e,t,n]=Vt("activeEditorType","activeEditor","codeBlockLanguages"),a=u.useMemo((()=>{let n;return t.getEditorState().read((()=>{const t=m.$getNodeByKey(e.nodeKey);n=t.getLanguage()})),n}),[t,e]);return u.createElement(ne.Root,{value:a,onValueChange:n=>{t.update((()=>{const t=m.$getNodeByKey(e.nodeKey);t.setLanguage(n),setTimeout((()=>{t.select()}),80)}))}},u.createElement(Rn,{title:"Change code block language",placeholder:"Language",className:Kt.toolbarCodeBlockLanguageSelectTrigger}),u.createElement(Vn,{className:Kt.toolbarCodeBlockLanguageSelectContent},Object.entries(n).map((([e,t])=>u.createElement(An,{key:e,value:e},t)))))}const Bn=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Q.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M0 0h24v24H0z"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"M5 21V6H4V4h5V3h6v1h5v2h-1v15H5Zm2-2h10V6H7v13Zm2-2h2V8H9v9Zm4 0h2V8h-2v9Z"}))),Pn=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Q.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M0 0h24v24H0z"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"m8 18-6-6 6-6 1.425 1.425-4.6 4.6L9.4 16.6 8 18Zm8 0-1.425-1.425 4.6-4.6L14.6 7.4 16 6l6 6-6 6Z"}))),$n=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Q.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M0 0h24v24H0z"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"m5 15.95 6 3.475v-6.85L5 9.1v6.85Zm8 3.475 6-3.475V9.1l-6 3.475v6.85Zm-6.925-12L12 10.85l5.925-3.425L12 4 6.075 7.425ZM3 17.125V6.875L12 1.7l9 5.175v10.25L12 22.3l-9-5.175Z"}))),Zn=e=>Q.createElement("svg",{width:25,height:24,viewBox:"0 0 25 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e},Q.createElement("mask",{id:"mask0_318_257",style:{maskType:"alpha"},maskUnits:"userSpaceOnUse",x:0,y:0,width:25,height:24},Q.createElement("rect",{x:.929688,width:24,height:24,fill:"#D9D9D9"})),Q.createElement("g",{mask:"url(#mask0_318_257)"},Q.createElement("path",{d:"M12.4297 12H14.4297V10H16.4297V8H14.4297V6H12.4297V8H10.4297V10H12.4297V12ZM10.4297 16H16.4297V14H10.4297V16ZM5.92969 20V2H14.9297L20.9297 8V20H5.92969ZM7.92969 18H18.9297V9L13.9297 4H7.92969V18Z",fill:"currentColor"}))),Un=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Q.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M0 0h24v24H0z"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"M6.8 19V5h5.525c1.083 0 2.083.333 3 1 .917.667 1.375 1.592 1.375 2.775 0 .85-.192 1.504-.575 1.962-.383.459-.742.788-1.075.988.417.183.88.525 1.388 1.025.508.5.762 1.25.762 2.25 0 1.483-.542 2.521-1.625 3.113-1.083.591-2.1.887-3.05.887H6.8Zm3.025-2.8h2.6c.8 0 1.287-.204 1.462-.613.175-.408.263-.704.263-.887 0-.183-.088-.48-.263-.888-.175-.408-.687-.612-1.537-.612H9.825v3Zm0-5.7h2.325c.55 0 .95-.142 1.2-.425a1.4 1.4 0 0 0 .375-.95c0-.4-.142-.725-.425-.975-.283-.25-.65-.375-1.1-.375H9.825V10.5Z"}))),Fn=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Q.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M0 0h24v24H0z"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"M5 19v-2.5h4l3-9H8V5h10v2.5h-3.5l-3 9H15V19H5Z"}))),Kn=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Q.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M0 0h24v24H0z"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"M9 19v-2h12v2H9Zm0-6v-2h12v2H9Zm0-6V5h12v2H9ZM5 20a1.93 1.93 0 0 1-1.413-.587A1.928 1.928 0 0 1 3 18c0-.55.196-1.021.587-1.413A1.928 1.928 0 0 1 5 16c.55 0 1.02.196 1.412.587.392.392.588.863.588 1.413s-.196 1.021-.588 1.413A1.925 1.925 0 0 1 5 20Zm0-6c-.55 0-1.021-.196-1.413-.588A1.925 1.925 0 0 1 3 12c0-.55.196-1.021.587-1.413A1.928 1.928 0 0 1 5 10c.55 0 1.02.196 1.412.587.392.392.588.863.588 1.413s-.196 1.02-.588 1.412A1.923 1.923 0 0 1 5 14Zm0-6c-.55 0-1.021-.196-1.413-.588A1.925 1.925 0 0 1 3 6c0-.55.196-1.02.587-1.412A1.927 1.927 0 0 1 5 4c.55 0 1.02.196 1.412.588C6.804 4.979 7 5.45 7 6c0 .55-.196 1.02-.588 1.412A1.923 1.923 0 0 1 5 8Z"}))),zn=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Q.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M0 0h24v24H0z"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"M3 22v-1.5h2.5v-.75H4v-1.5h1.5v-.75H3V16h4v2.25L6 19l1 .75V22H3Zm0-7v-3.75h2.5v-.75H3V9h4v3.75H4.5v.75H7V15H3Zm1.5-7V3.5H3V2h3v6H4.5ZM9 19v-2h12v2H9Zm0-6v-2h12v2H9Zm0-6V5h12v2H9Z"}))),jn=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Q.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M0 0h24v24H0z"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"M5 21v-2h14v2H5Zm7-4c-1.683 0-2.992-.525-3.925-1.575-.933-1.05-1.4-2.442-1.4-4.175V3H9.25v8.4c0 .933.233 1.692.7 2.275.467.583 1.15.875 2.05.875.9 0 1.583-.292 2.05-.875.467-.583.7-1.342.7-2.275V3h2.575v8.25c0 1.733-.467 3.125-1.4 4.175C14.992 16.475 13.683 17 12 17Z"}))),qn=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Q.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M0 0h24v24H0z"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"M3 21v-6h2v4h4v2H3Zm12 0v-2h4v-4h2v6h-6Zm-6.4-5.4L5 12l3.6-3.6L10 9.825 7.825 12 10 14.175 8.6 15.6Zm6.8 0L14 14.175 16.175 12 14 9.825 15.4 8.4 19 12l-3.6 3.6ZM3 9V3h6v2H5v4H3Zm16 0V5h-4V3h6v6h-2Z"}))),Wn=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Q.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M0 0h24v24H0z"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"M5 7h4v2H5z"}),Q.createElement("path",{d:"M5 7h4v2H5zm0 7h4v2H5z"}),Q.createElement("path",{d:"M5 14h4v2H5zm5-7h4v2h-4z"}),Q.createElement("path",{d:"M10 7h4v2h-4zm0 7h4v2h-4z"}),Q.createElement("path",{d:"M10 14h4v2h-4zm5-7h4v2h-4z"}),Q.createElement("path",{d:"M15 7h4v2h-4zm0 7h4v2h-4z"}),Q.createElement("path",{d:"M15 14h4v2h-4z"}))),Jn=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Q.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M0 0h24v24H0z"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"M4 13v-2h16v2H4Z"}))),Gn=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Q.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M0 0h24v24H0z"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"M11 17H7c-1.383 0-2.562-.488-3.537-1.463C2.488 14.562 2 13.383 2 12s.488-2.563 1.463-3.538C4.438 7.487 5.617 7 7 7h4v2H7c-.833 0-1.542.292-2.125.875A2.893 2.893 0 0 0 4 12c0 .833.292 1.542.875 2.125A2.893 2.893 0 0 0 7 15h4v2Zm-3-4v-2h8v2H8Zm5 4v-2h4c.833 0 1.542-.292 2.125-.875A2.893 2.893 0 0 0 20 12c0-.833-.292-1.542-.875-2.125A2.893 2.893 0 0 0 17 9h-4V7h4c1.383 0 2.563.487 3.538 1.462C21.513 9.437 22 10.617 22 12s-.487 2.562-1.462 3.537C19.563 16.512 18.383 17 17 17h-4Z"}))),Yn=e=>Q.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e},Q.createElement("mask",{id:"mask0_46_56",style:{maskType:"alpha"},maskUnits:"userSpaceOnUse",x:0,y:0,width:24,height:24},Q.createElement("rect",{width:24,height:24,fill:"#D9D9D9"})),Q.createElement("g",{mask:"url(#mask0_46_56)"},Q.createElement("path",{d:"M19 19L14 14L15.4 12.575L18 15.175V5H20V15.175L22.6 12.575L24 14L19 19Z",fill:"currentColor"}),Q.createElement("path",{d:"M13 19H10.5V9L6.5 15L2.5 9V19H0V5H2.5L6.5 11L10.5 5H13V19Z",fill:"currentColor"}))),Qn=e=>Q.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e},Q.createElement("mask",{id:"mask0_318_249",style:{maskType:"alpha"},maskUnits:"userSpaceOnUse",x:0,y:0,width:24,height:24},Q.createElement("rect",{width:24,height:24,fill:"#D9D9D9"})),Q.createElement("g",{mask:"url(#mask0_318_249)"},Q.createElement("path",{d:"M5 21V19H19V21H5Z",fill:"currentColor"}),Q.createElement("path",{d:"M6.80005 17V3H12.325C13.4084 3 14.4084 3.33333 15.325 4C16.2417 4.66667 16.7001 5.59167 16.7001 6.775C16.7001 7.625 16.5084 8.279 16.125 8.737C15.7417 9.19567 15.3834 9.525 15.05 9.725C15.4667 9.90833 15.9294 10.25 16.438 10.75C16.946 11.25 17.2001 12 17.2001 13C17.2001 14.4833 16.6584 15.521 15.575 16.113C14.4917 16.7043 13.475 17 12.525 17H6.80005ZM9.82505 14.2H12.425C13.225 14.2 13.7124 13.9957 13.887 13.587C14.0624 13.179 14.15 12.8833 14.15 12.7C14.15 12.5167 14.0624 12.2207 13.887 11.812C13.7124 11.404 13.2 11.2 12.35 11.2H9.82505V14.2ZM9.82505 8.5H12.15C12.7 8.5 13.1 8.35833 13.35 8.075C13.6 7.79167 13.725 7.475 13.725 7.125C13.725 6.725 13.5834 6.4 13.3 6.15C13.0167 5.9 12.65 5.775 12.2 5.775H9.82505V8.5Z",fill:"currentColor"}))),Xn=e=>Q.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Q.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Q.createElement("path",{d:"M0 0h24v24H0z"})),Q.createElement("g",{mask:"url(#a)"},Q.createElement("path",{d:"M3 21V3h18v18H3ZM5 9h14V5H5v4Zm5.325 5h3.35v-3h-3.35v3Zm0 5h3.35v-3h-3.35v3ZM5 14h3.325v-3H5v3Zm10.675 0H19v-3h-3.325v3ZM5 19h3.325v-3H5v3Zm10.675 0H19v-3h-3.325v3Z"}),Q.createElement("path",{d:"M8.325 9h2V5h-2v4Zm5.35 0h2V5h-2v4Z"}))),ea=()=>{const[e]=Vt("currentBlockType"),t=Rt("applyBlockType");return u.createElement(ne.Root,{value:e||"",onValueChange:t},u.createElement(Rn,{title:"Select block type",placeholder:"Block type"}),u.createElement(Vn,null,u.createElement(An,{value:"paragraph"},"Paragraph"),u.createElement(An,{value:"quote"},"Quote"),u.createElement(ne.Separator,null),u.createElement(An,{value:"h1"},"Heading 1"),u.createElement(An,{value:"h2"},"Heading 2"),u.createElement(An,{value:"h3"},"Heading 3"),u.createElement(An,{value:"h4"},"Heading 4"),u.createElement(An,{value:"h5"},"Heading 5"),u.createElement(An,{value:"h6"},"Heading 6"),u.createElement(ne.Separator,null),u.createElement(An,{value:"note"},"Note"),u.createElement(An,{value:"tip"},"Tip"),u.createElement(An,{value:"info"},"Info"),u.createElement(An,{value:"caution"},"Caution"),u.createElement(An,{value:"danger"},"Danger")))},ta=e=>Q.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e},Q.createElement("mask",{id:"mask0_343_38",style:{maskType:"alpha"},maskUnits:"userSpaceOnUse",x:0,y:0,width:24,height:24},Q.createElement("rect",{width:24,height:24,fill:"#D9D9D9"})),Q.createElement("g",{mask:"url(#mask0_343_38)"},Q.createElement("path",{d:"M3 21V3H14V5H5V19H19V10H21V21H3ZM17 9V7H15V5H17V3H19V5H21V7H19V9H17ZM6 17H18L14.25 12L11.25 16L9 13L6 17Z",fill:"currentColor"}))),na=u.forwardRef(((e,t)=>{const[n,a]=Vt("editorRootElementRef","imageAutocompleteSuggestions"),[r,o]=u.useState(!1),l=Rt("insertImage"),i=u.useCallback((e=>{l(e),o(!1)}),[l]);return u.createElement(ae.Root,{open:r,onOpenChange:o},u.createElement(ae.Trigger,{asChild:!0},u.createElement(On,{title:"Insert image"},u.createElement(te.Button,{className:Kt.toolbarButton,...e,ref:t},u.createElement(ta,null)))),u.createElement(ae.Portal,{container:n.current},u.createElement(ae.Overlay,{className:Kt.dialogOverlay}),u.createElement(ae.Content,{className:Kt.dialogContent},u.createElement(aa,{initialUrl:"",onSubmit:i,imageAutocompleteSuggestions:a}))))}));m.createCommand();const aa=({initialUrl:e,onSubmit:t,imageAutocompleteSuggestions:n})=>{const[a,r]=u.useState(n.slice(0,20)),{isOpen:o,getToggleButtonProps:l,getMenuProps:i,getInputProps:s,highlightedIndex:c,getItemProps:m,selectedItem:p}=R.useCombobox({initialInputValue:e,onInputValueChange({inputValue:e}){e=(null==e?void 0:e.toLowerCase())||"";const t=[];for(const a of n)if(a.toLowerCase().includes(e)&&(t.push(a),t.length>=20))break;r(t)},items:a,itemToString:e=>e??""}),h=u.useCallback((e=>{var n;"Escape"===e.key?null==(n=e.target.form)||n.reset():"Enter"!==e.key||o&&0!==a.length||(e.preventDefault(),t(e.target.value))}),[o,a,t]),g=s(),E={...g,onKeyDown:e=>{h(e),g.onKeyDown(e)}},v=o&&a.length>0;return u.createElement("form",{onSubmit:e=>{e.preventDefault(),t(p||"")},className:d(Kt.linkDialogEditForm)},u.createElement("div",{className:Kt.linkDialogInputContainer},u.createElement("div",{"data-visible-dropdown":v,className:Kt.linkDialogInputWrapper},u.createElement("input",{placeholder:"Paste or select an image url",className:Kt.linkDialogInput,...E,autoFocus:!0,size:30,"data-editor-dialog":!0}),u.createElement("button",{"aria-label":"toggle menu",type:"button",...l()},u.createElement(Ft,null))),u.createElement("div",{className:Kt.linkDialogAutocompleteContainer},u.createElement("ul",{...i(),"data-visible":v},a.map(((e,t)=>u.createElement("li",{"data-selected":p===e,"data-highlighted":c===t,key:`${e}${t}`,...m({item:e,index:t})},e)))))),u.createElement(ra,{type:"submit",title:"Insert image","aria-label":"Insert image",className:Kt.primaryActionButton},u.createElement(Dt,null)),u.createElement(ae.Close,{className:Kt.actionButton},u.createElement(Bt,null)))},ra=u.forwardRef((({className:e,...t},n)=>u.createElement("button",{className:d(Kt.actionButton,e),ref:n,...t}))),oa=u.forwardRef((({title:e,className:t,...n},a)=>u.createElement(On,{title:e},u.createElement(te.ToggleItem,{className:d(t,Kt.toolbarToggleItem),...n,ref:a})))),la=u.forwardRef((({title:e,...t},n)=>u.createElement(On,{title:e},u.createElement(te.Button,{className:Kt.toolbarButton,...t,ref:n})))),ia=u.forwardRef((({children:e,className:t,...n},a)=>u.createElement(te.ToggleGroup,{...n,type:"single",ref:a,className:d(Kt.toolbarToggleSingleGroup,t)},e))),sa=u.forwardRef((({on:e,title:t,children:n,...a},r)=>u.createElement(ia,{...a,value:e?"on":"off",ref:r},u.createElement(oa,{title:t,value:"on"},n)))),ca=({children:e})=>u.createElement("div",{className:Kt.toolbarGroupOfGroups},e),da=te.ToolbarSeparator,ma=()=>{const[e]=Vt("currentFormat","currentListType"),t=Rt("applyFormat"),n=0!=(1&e),a=0!=(2&e),r=0!=(8&e),o=n?"Remove bold":"Bold",l=a?"Remove italic":"Italic",i=r?"Remove underline":"Underline";return u.createElement(ca,null,u.createElement(sa,{title:o,"aria-label":"Bold",on:n,onValueChange:t.bind(null,"bold")},u.createElement(Un,null)),u.createElement(sa,{title:l,"aria-label":"Italic",on:a,onValueChange:t.bind(null,"italic")},u.createElement(Fn,null)),u.createElement(sa,{"aria-label":"Underline",title:i,on:r,onValueChange:t.bind(null,"underline")},u.createElement(jn,{style:{transform:"translateY(2px)"}})))},ua=()=>{const[e]=Vt("currentListType"),t=Rt("applyListType");return u.createElement(ca,null,u.createElement(ia,{"aria-label":"List type",onValueChange:t,value:e||"",onFocus:e=>e.preventDefault()},u.createElement(oa,{title:"Bulleted list",value:"bullet","aria-label":"Bulleted list"},u.createElement(Kn,null)),u.createElement(oa,{title:"Numbered list",value:"number","aria-label":"Numbered list"},u.createElement(zn,null))))},pa=()=>{const e=Rt("openLinkEditDialog");return u.createElement(la,{title:"Create link",onClick:e.bind(null,!0)},u.createElement(Gn,null))},ha=()=>{const e=Rt("insertTable");return u.createElement(la,{title:"Insert table",onClick:e.bind(null,!0)},u.createElement(Xn,null))},ga=()=>{const e=Rt("insertCodeBlock");return u.createElement(la,{title:"Insert code block",onClick:e.bind(null,!0)},u.createElement(qn,null))},Ea=()=>{const e=Rt("insertSandpack"),[t]=Vt("sandpackConfig");return u.createElement(u.Fragment,null,1===t.presets.length?u.createElement(la,{title:"Insert live code block",onClick:e.bind(null,"")},u.createElement($n,null)):u.createElement(ne.Root,{value:"",onValueChange:e},u.createElement(In,{title:"Insert live code snippet"},u.createElement($n,null)),u.createElement(Vn,{className:Kt.toolbarButtonDropdownContainer},t.presets.map((e=>u.createElement(An,{key:e.name,value:e.meta},e.label))))))},va=()=>{const e=Rt("insertFrontmatter");return u.createElement(la,{title:"Insert frontmatter editor",onClick:e.bind(null,!0)},u.createElement(Wn,null))},fa=()=>{const[e]=Vt("viewMode","activeEditorType"),t=Rt("viewMode");return u.createElement(ia,{"aria-label":"View Mode",onValueChange:e=>{""!==e&&t(e)},value:e,className:Kt.toolbarModeSwitch},u.createElement(oa,{value:"editor","aria-label":"Rich text",title:"Rich text mode"},u.createElement(Qn,null)),u.createElement(oa,{value:"diff","aria-label":"View diff",title:"Diff mode"},u.createElement(Zn,null)),u.createElement(oa,{value:"markdown","aria-label":"View Markdown",title:"Markdown source mode"},u.createElement(Yn,null)))},wa={BlockTypeSelect:ea,BoldItalicUnderlineButtons:ma,CodeBlockButton:ga,FrontmatterButton:va,GroupGroup:ca,HorizontalRuleIcon:Jn,LinkButton:pa,ListButtons:ua,SandpackButton:Ea,TableButton:ha,ToggleItem:oa,ToggleSingleGroup:ia,ToggleSingleGroupWithItem:sa,ToolbarButton:la,ToolbarSeparator:da,ImageButton:na},ka=()=>{const[e,t]=Vt("activeEditorType","viewMode");return u.createElement(te.Root,{className:Kt.toolbarRoot,"aria-label":"Formatting options"},"editor"===t&&("lexical"===e.type?u.createElement(xa,null):"codeblock"===e.type?u.createElement(ya,null):u.createElement(ba,null)),u.createElement(da,null),u.createElement(fa,null))},ya=()=>{const[e,t]=Vt("activeEditor","activeEditorType");return u.createElement(u.Fragment,null,u.createElement(Dn,null),u.createElement(la,{title:"Remove code block",onClick:()=>{e.update((()=>{const e=m.$getNodeByKey(t.nodeKey);e.selectNext(),e.remove()}))}},u.createElement(Bn,null)))},ba=()=>{const[e,t]=Vt("activeEditor","activeEditorType");return u.createElement(u.Fragment,null,u.createElement(la,{title:"Remove live code block",onClick:()=>{e.update((()=>{const e=m.$getNodeByKey(t.nodeKey);e.selectNext(),e.remove()}))}},u.createElement(Bn,null)))},xa=()=>{const[e]=Vt("toolbarComponents");return u.createElement(u.Fragment,null,e.map(((e,t)=>u.createElement(e,{key:t}))))},Ca={FrontmatterEditor:({yaml:e,onChange:t})=>{const[n,a]=u.useState(!0),r=u.useMemo((()=>e?Object.entries(B.load(e)).map((([e,t])=>({key:e,value:t}))):[]),[e]),{register:o,control:l,watch:i}=P.useForm({defaultValues:{yamlConfig:r}}),{fields:s,append:c,remove:d}=P.useFieldArray({control:l,name:"yamlConfig"});return u.useEffect((()=>{const e=i((({yamlConfig:e})=>{const n=e.reduce(((e,{key:t,value:n})=>(t&&n&&(e[t]=n),e)),{});t(B.dump(n).trim())}));return()=>e.unsubscribe()}),[i,t]),u.createElement("div",{className:Kt.frontmatterWrapper,"data-expanded":n,"data-editor-type":"frontmatter"},u.createElement("button",{className:Kt.frontmatterToggleButton,onClick:e=>{e.preventDefault(),a((e=>!e))}},n?u.createElement(en,null):u.createElement(Xt,null),"Document frontmatter"),n&&u.createElement("form",null,u.createElement("table",{className:Kt.frontmatterEditorTable},u.createElement("colgroup",null,u.createElement("col",null),u.createElement("col",null),u.createElement("col",null)),u.createElement("thead",null,u.createElement("tr",null,u.createElement("th",null,"Key"),u.createElement("th",null,"Value"),u.createElement("th",null))),u.createElement("tbody",null,s.map(((e,t)=>u.createElement("tr",{key:e.id},u.createElement("td",null,u.createElement(nn,{...o(`yamlConfig.${t}.key`,{required:!0}),autofocusIfEmpty:!0})),u.createElement("td",null,u.createElement(nn,{...o(`yamlConfig.${t}.value`,{required:!0})})),u.createElement("td",null,u.createElement("button",{type:"button",onClick:()=>d(t),className:Kt.iconButton},u.createElement(tn,null))))))),u.createElement("tfoot",null,u.createElement("tr",null,u.createElement("td",null,u.createElement("button",{className:Kt.primaryButton,type:"button",onClick:()=>{c({key:"",value:""})}},"Add new key")))))))},JsxEditor:function({kind:e,attributes:t,componentName:n,editor:o,onSubmit:l,theme:i}){return"flow"===e?u.createElement("div",null,u.createElement("div",null,n),u.createElement($.LexicalNestedComposer,{initialEditor:o,initialTheme:i},u.createElement(s.RichTextPlugin,{contentEditable:u.createElement(a.ContentEditable,null),placeholder:u.createElement("div",null,"Type here.."),ErrorBoundary:r}))):u.createElement("span",null,u.createElement("span",null,u.createElement(ln,{attributes:t,componentName:n,onSubmit:l})),u.createElement("span",null,n,u.createElement($.LexicalNestedComposer,{initialEditor:o,initialTheme:i},u.createElement(s.RichTextPlugin,{contentEditable:u.createElement(a.ContentEditable,{style:{padding:5,border:"1px solid red"}}),placeholder:u.createElement("div",null,"Type here.."),ErrorBoundary:r}))))},SandpackEditor:({nodeKey:e,code:t,meta:n,onChange:a,focusEmitter:r})=>{const[o]=S.useLexicalComposerContext(),[l]=Vt("sandpackConfig"),i=Qt(e,"sandpack","jsx"),s=Rt("activeEditorType");u.useEffect((()=>{r.subscribe((()=>{var t,n;null==(n=null==(t=null==i?void 0:i.current)?void 0:t.getCodemirror())||n.focus(),s({type:"sandpack",nodeKey:e})}))}),[r,i,s,e]);const c=u.useCallback((e=>{o.update((()=>{a(e)}))}),[a,o]),d=function(e,t){return t.presets.find((t=>t.meta===e))||t.presets.find((e=>e.name===t.defaultPreset))}(n,l);if(!d)throw new Error(`No sandpack preset found for meta: ${n}`);return u.createElement(D.SandpackProvider,{template:d.sandpackTemplate,theme:d.sandpackTheme,files:{[d.snippetFileName]:t,...Object.entries(d.files||{}).reduce(((e,[t,n])=>({...e,[t]:{code:n,readOnly:!0}})),{})},customSetup:{dependencies:d.dependencies}},u.createElement(D.SandpackLayout,null,u.createElement(D.SandpackCodeEditor,{showLineNumbers:!0,showInlineErrors:!0,ref:i}),u.createElement(D.SandpackPreview,null)),u.createElement(cn,{onChange:c,snippetFileName:d.snippetFileName}))},CodeBlockEditor:({nodeKey:e,code:t,language:n,onChange:a,focusEmitter:r})=>{const[o]=Vt("activeEditor"),l=Qt(e,"codeblock",n),i=Rt("activeEditorType");u.useEffect((()=>{r.subscribe((()=>{var t,n;null==(n=null==(t=null==l?void 0:l.current)?void 0:t.getCodemirror())||n.focus(),i({type:"codeblock",nodeKey:e})}))}),[r,l,i,e]);const s=u.useCallback((e=>{null==o||o.update((()=>{a(e)}))}),[a,o]);return u.createElement("div",{className:Kt.sandpackWrapper},u.createElement(D.SandpackProvider,null,u.createElement(D.CodeEditor,{showLineNumbers:!0,initMode:"immediate",key:n,filePath:`file.${n||"txt"}`,code:t,onCodeUpdate:s,ref:l})))},TableEditor:({mdastNode:e,parentEditor:t,lexicalTable:n})=>{const[a,r]=u.useState(null),o=u.useCallback((e=>{const a=n.getColCount();if(null===e)return void r(null);let[o,l]=e;return o>a-1&&(o=0,l++),o<0&&(o=a-1,l-=1),l>n.getRowCount()-1?(r(null),void t.update((()=>{if(n.getLatest().getNextSibling())n.getLatest().selectNext();else{const e=m.$createParagraphNode();n.insertAfter(e),e.select()}}))):l<0?(r(null),void t.update((()=>{n.getLatest().selectPrevious()}))):void r([o,l])}),[n,t]);u.useEffect((()=>{n.focusEmitter.subscribe(o)}),[n,o]);const l=u.useCallback((()=>{t.update((()=>{n.addRowToBottom(),r([0,n.getRowCount()])}))}),[t,n]),i=u.useCallback((()=>{t.update((()=>{n.addColumnToRight(),r([n.getColCount(),0])}))}),[t,n]),[s,c]=u.useState([-1,-1]),d=u.useCallback((e=>{let t=e.target;for(;t&&!["TH","TD"].includes(t.tagName);){if(t===e.currentTarget)return;t=t.parentElement}if(null===t)return;const n=t.parentElement,a="TFOOT"===n.parentElement.tagName?-1:Array.from(n.children).indexOf(t),r="TH"===t.tagName?-1:Array.from(n.parentElement.children).indexOf(n);c([a,r])}),[]);return u.createElement("table",{className:Kt.tableEditor,onMouseOver:d,onMouseLeave:()=>c([-1,-1])},u.createElement("colgroup",null,u.createElement("col",null),Array.from({length:e.children[0].children.length},((t,n)=>{const a=(e.align||[])[n]||"left",r=xn[a];return u.createElement("col",{key:n,className:r})})),u.createElement("col",null)),u.createElement("thead",null,u.createElement("tr",null,u.createElement("th",{className:Kt.tableToolsColumn,"data-tool-cell":!0},u.createElement("button",{className:Kt.iconButton,title:"Delete table",onClick:()=>{t.update((()=>{n.selectNext(),n.remove()}))}},u.createElement(vn,null))),Array.from({length:e.children[0].children.length},((a,r)=>u.createElement("th",{key:r,"data-tool-cell":!0},u.createElement(Nn,{setActiveCellWithBoundaries:o,parentEditor:t,colIndex:r,highlightedCoordinates:s,lexicalTable:n,align:(e.align||[])[r]})))),u.createElement("th",{className:Kt.tableToolsColumn}))),u.createElement("tbody",null,e.children.map(((r,l)=>u.createElement("tr",{key:l},u.createElement("td",{className:Kt.toolCell,"data-tool-cell":!0},u.createElement(Tn,{setActiveCellWithBoundaries:o,parentEditor:t,rowIndex:l,highlightedCoordinates:s,lexicalTable:n})),r.children.map(((r,i)=>{var s;return u.createElement(Cn,{align:null==(s=e.align)?void 0:s[i],key:i,contents:r.children,rowIndex:l,colIndex:i,lexicalTable:n,parentEditor:t,activeCellTuple:[a,o]})})),0===l&&u.createElement("th",{rowSpan:n.getRowCount(),"data-tool-cell":!0},u.createElement("button",{className:Kt.addColumnButton,onClick:i},u.createElement(yn,null))))))),u.createElement("tfoot",null,u.createElement("tr",null,u.createElement("th",null),u.createElement("th",{colSpan:n.getColCount()},u.createElement("button",{className:Kt.addRowButton,onClick:l},u.createElement(kn,null))),u.createElement("th",null))))}},_a=[ma,da,()=>{const[e]=Vt("currentFormat","currentListType"),t=Rt("applyFormat"),n=0!=(16&e),a=n?"Remove inline code":"Inline code";return u.createElement(ca,null,u.createElement(sa,{title:a,"aria-label":"Inline code",on:n,onValueChange:t.bind(null,"code")},u.createElement(Pn,null)))},da,ua,da,ea,da,pa,na,ha,()=>{const e=Rt("insertHorizontalRule");return u.createElement(la,{title:"Insert horizontal rule",onClick:e.bind(null,!0)},u.createElement(Jn,null))},va,da,ga,Ea],Na={defaultPreset:"react",presets:[{name:"react",meta:"live react",label:"React",sandpackTemplate:"react",sandpackTheme:"light",snippetFileName:"/App.js",snippetLanguage:"jsx",initialSnippetContent:'\nexport default function App() {\n return (\n <div className="App">\n <h1>Hello CodeSandbox</h1>\n <h2>Start editing to see some magic happen!</h2>\n </div>\n );\n}\n'.trim()}]},Ta={markdownParse:{defaultVisitors:Qe,defaultSyntaxExtensions:tt,defaultMdastExtensions:et},lexicalConvert:{defaultVisitors:ze,defaultExtensions:Ge,defaultMarkdownOptions:Ye},defaultLexicalNodes:rt},Sa=u.forwardRef((({markdown:e,headMarkdown:t,jsxComponentDescriptors:p=[],sandpackConfig:h=Na,onChange:g,viewMode:E,linkAutocompleteSuggestions:v,imageAutoCompleteSuggestions:f,className:w,contentEditableClassName:k,toolbarComponents:y=_a,markdownParseOptions:{syntaxExtensions:b=Object.values(tt),mdastExtensions:x=Object.values(et),visitors:C=Object.values(Qe)}={},lexicalConvertOptions:{toMarkdownExtensions:_=Object.values(Ge),toMarkdownOptions:N=Ye,visitors:T=Object.values(ze)}={},lexicalNodes:S=Object.values(rt)},M)=>{const L=u.useRef(null);return u.createElement("div",{className:d(Kt.editorRoot,Kt.editorWrapper,w),ref:L},u.createElement(n.LexicalComposer,{initialConfig:{editorState:()=>{nt({root:m.$getRoot(),visitors:C,mdastExtensions:x,markdown:e,syntaxExtensions:b})},namespace:"MDXEditor",theme:{...we,nodeDecoratorComponents:Ca},nodes:S,onError:e=>console.error(e)}},u.createElement(At,{markdownSource:e,headMarkdown:t||e,jsxComponentDescriptors:p,sandpackConfig:h,onChange:g,viewMode:E,linkAutocompleteSuggestions:v,imageAutocompleteSuggestions:f,editorRootElementRef:L,toolbarComponents:y,markdownParseOptions:{visitors:C,mdastExtensions:x,syntaxExtensions:b},lexicalConvertOptions:{visitors:T,toMarkdownOptions:N,toMarkdownExtensions:_},lexicalNodes:S},u.createElement(ka,null),u.createElement(Ln,null,u.createElement(s.RichTextPlugin,{contentEditable:u.createElement(a.ContentEditable,{className:d(Kt.contentEditable,k)}),placeholder:u.createElement("div",null),ErrorBoundary:r})),u.createElement(l.LinkPlugin,null),u.createElement(o.HorizontalRulePlugin,null),u.createElement(i.ListPlugin,null),u.createElement(Gt,{maxDepth:7}),u.createElement(c.TabIndentationPlugin,null),u.createElement(qt,null),u.createElement(bn,null),u.createElement(Yt,null),u.createElement(Ma,{mdxRef:M}))))})),Ma=({mdxRef:e})=>{const[t]=Vt("markdownSource");return u.useImperativeHandle(e,(()=>({getMarkdown:()=>t})),[t]),null};Object.defineProperty(exports,"AdmonitionKind",{enumerable:!0,get:()=>m.AdmonitionKind}),exports.$createAdmonitionNode=oe,exports.$createCodeBlockNode=de,exports.$createFrontmatterNode=pe,exports.$createImageNode=ve,exports.$createJsxNode=xe,exports.$createSandpackNode=Ne,exports.$createTableNode=He,exports.$isAdmonitionNode=le,exports.$isCodeBlockNode=me,exports.$isFrontmatterNode=he,exports.$isImageNode=fe,exports.$isJsxNode=Ce,exports.$isSandpackNode=Te,exports.$isTableNode=Le,exports.AdmonitionNode=re,exports.CodeBlockNode=ce,exports.FrontmatterNode=ue,exports.ImageNode=Ee,exports.JsxNode=be,exports.MDXEditor=Sa,exports.SandpackNode=_e,exports.TableNode=Me,exports.ToolbarComponents=wa,exports.defaultMdxOptionValues=Ta;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index-731c8e58.cjs"),r=require("lexical");require("@lexical/react/LexicalComposer"),require("@lexical/react/LexicalContentEditable"),require("@lexical/react/LexicalErrorBoundary"),require("@lexical/react/LexicalHorizontalRulePlugin"),require("@lexical/react/LexicalLinkPlugin"),require("@lexical/react/LexicalListPlugin"),require("@lexical/react/LexicalRichTextPlugin"),require("@lexical/react/LexicalTabIndentationPlugin"),require("classnames"),require("react"),require("@lexical/code"),require("@lexical/link"),require("@lexical/list"),require("@lexical/react/LexicalHorizontalRuleNode"),require("@lexical/rich-text"),require("mdast-util-directive"),require("mdast-util-from-markdown"),require("mdast-util-frontmatter"),require("mdast-util-gfm-table"),require("mdast-util-mdx"),require("micromark-extension-directive"),require("micromark-extension-frontmatter"),require("micromark-extension-gfm-table"),require("micromark-extension-mdxjs"),require("@lexical/utils"),require("@lexical/react/LexicalComposerContext"),require("@lexical/selection"),require("@lexical/react/LexicalHistoryPlugin"),require("mdast-util-to-markdown"),require("@radix-ui/react-popover"),require("@radix-ui/react-tooltip"),require("downshift"),require("@lexical/markdown"),require("@lexical/react/LexicalMarkdownShortcutPlugin"),require("@codemirror/lang-markdown"),require("@codesandbox/sandpack-react"),require("react-diff-view"),require("unidiff"),require("@radix-ui/react-toolbar"),require("@radix-ui/react-select"),require("@radix-ui/react-dialog"),exports.$createAdmonitionNode=e.$createAdmonitionNode,exports.$createCodeBlockNode=e.$createCodeBlockNode,exports.$createFrontmatterNode=e.$createFrontmatterNode,exports.$createImageNode=e.$createImageNode,exports.$createJsxNode=e.$createJsxNode,exports.$createSandpackNode=e.$createSandpackNode,exports.$createTableNode=e.$createTableNode,exports.$isAdmonitionNode=e.$isAdmonitionNode,exports.$isCodeBlockNode=e.$isCodeBlockNode,exports.$isFrontmatterNode=e.$isFrontmatterNode,exports.$isImageNode=e.$isImageNode,exports.$isJsxNode=e.$isJsxNode,exports.$isSandpackNode=e.$isSandpackNode,exports.$isTableNode=e.$isTableNode,exports.AdmonitionNode=e.AdmonitionNode,exports.CodeBlockNode=e.CodeBlockNode,exports.FrontmatterNode=e.FrontmatterNode,exports.ImageNode=e.ImageNode,exports.JsxNode=e.JsxNode,exports.MDXEditor=e.MDXEditor,exports.SandpackNode=e.SandpackNode,exports.TableNode=e.TableNode,exports.ToolbarComponents=e.ToolbarComponents,exports.defaultMdxOptionValues=e.defaultMdxOptionValues,Object.defineProperty(exports,"AdmonitionKind",{enumerable:!0,get:()=>r.AdmonitionKind});