@mdxeditor/editor 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs ADDED
@@ -0,0 +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"),u=require("lexical"),m=require("react"),h=require("mdast-util-directive"),p=require("mdast-util-frontmatter"),g=require("mdast-util-gfm-table"),E=require("mdast-util-mdx"),v=require("mdast-util-to-markdown"),f=require("@lexical/code"),w=require("@lexical/link"),x=require("@lexical/list"),k=require("@lexical/react/LexicalHorizontalRuleNode"),b=require("@lexical/rich-text"),y=require("mdast-util-from-markdown"),C=require("micromark-extension-directive"),_=require("micromark-extension-frontmatter"),N=require("micromark-extension-gfm-table"),T=require("micromark-extension-mdxjs"),S=require("@lexical/utils"),M=require("@lexical/react/LexicalComposerContext"),L=require("@lexical/selection"),H=require("@lexical/react/LexicalHistoryPlugin"),A=require("@radix-ui/react-popover"),O=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(m),X=Y(A),ee=Y(O),te=Y(z),ne=Y(J),ae=Y(G);class re 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 re(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 oe(e.kind)}exportJSON(){return{...super.exportJSON(),type:"admonition"}}insertNewAfter(e,t){const n=oe();return this.insertAfter(n,t),n}collapseAtStart(){const e=u.$createParagraphNode();return this.getChildren().forEach((t=>e.append(t))),this.replace(e),!0}}function oe(e){return u.$applyNodeReplacement(new re(e))}function le(e){return e instanceof re}function ie(e,t){return t(e),e}function se(){}class ce extends u.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 m.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 ue(e){return e instanceof ce}class me extends u.DecoratorNode{constructor(e,n){super(n),t(this,"__yaml"),this.__yaml=e}static getType(){return"frontmatter"}static clone(e){return new me(e.__yaml,e.__key)}static importJSON(e){const{yaml:t}=e;return he(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 he(e){return new me(e)}function pe(e){return e instanceof me}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 u.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 m.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_1xdbx_1",italic:"_italic_1xdbx_5",underline:"_underline_1xdbx_9",code:"_code_1xdbx_43",strikethrough:"_strikethrough_1xdbx_25",subscript:"_subscript_1xdbx_33",superscript:"_superscript_1xdbx_38",underlineStrikethrough:"_underlineStrikethrough_1xdbx_29"},list:{nested:{listitem:"_nestedListItem_1xdbx_50"}},admonition:{danger:"_admonitionDanger_1xdbx_54",info:"_admonitionInfo_1xdbx_54",note:"_admonitionNote_1xdbx_54",tip:"_admonitionTip_1xdbx_54",caution:"_admonitionCaution_1xdbx_54"}},xe={type:"root",format:"left",indent:0,direction:"ltr",version:1,children:[{type:"paragraph",version:1,direction:"ltr",format:"left",indent:0,children:[]}]},ke={type:"root",format:"left",indent:0,direction:"ltr",version:1,children:[]};class be extends u.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=u.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()?xe:ke},(()=>{if("text"===this.getKind()){const e=u.$getRoot().getFirstChildOrThrow();o(e)}else o(u.$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 ye({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 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:we})}}function ye(e){return new be(e)}function Ce(e){return e instanceof be}class _e extends u.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 m.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 u.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,hildren: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 m.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 Ae={testLexicalNode:u.$isRootNode,visitLexicalNode:({actions:e})=>{e.addAndStepInto("root")}},Oe={testLexicalNode:u.$isParagraphNode,visitLexicalNode:({actions:e})=>{e.addAndStepInto("paragraph")}},Re={testLexicalNode:pe,visitLexicalNode:({actions:e,lexicalNode:t})=>{e.addAndStepInto("yaml",{value:t.getYaml()})}},Ve={testLexicalNode:w.$isLinkNode,visitLexicalNode:({lexicalNode:e,actions:t})=>{t.addAndStepInto("link",{url:e.getURL(),title:e.getTitle()})}},Ie={testLexicalNode:b.$isHeadingNode,visitLexicalNode:({lexicalNode:e,actions:t})=>{const n=parseInt(e.getTag()[1],10);t.addAndStepInto("heading",{depth:n})}},De={testLexicalNode:x.$isListNode,visitLexicalNode:({lexicalNode:e,actions:t})=>{t.addAndStepInto("list",{ordered:"number"===e.getListType(),spread:!1})}},Be={testLexicalNode:x.$isListItemNode,visitLexicalNode:({lexicalNode:e,mdastParent:t,actions:n})=>{const a=e.getChildren(),r=a[0];if(1===a.length&&x.$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:b.$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:({lexicalNode:e,actions:t})=>{t.addAndStepInto("containerDirective",{name:e.getKind()})}},Ze={testLexicalNode:Te,visitLexicalNode:({lexicalNode:e,actions:t})=>{t.addAndStepInto("code",{value:e.getCode(),lang:e.getLanguage(),meta:e.getMeta()})}},Ue={testLexicalNode:ue,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:u.$isLineBreakNode,visitLexicalNode:({mdastParent:e,actions:t})=>{t.appendToParent(e,{type:"text",value:"\n"})}},ze={LexicalRootVisitor:Ae,LexicalParagraphVisitor:Oe,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:u.$isTextNode,visitLexicalNode:({lexicalNode:e,mdastParent:t,actions:n})=>{const a=e.getPreviousSibling(),r=u.$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:k.$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),u.$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 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 h=a,p=h.children.find((e=>"yaml"===e.type));return p?h.children.splice(h.children.indexOf(p)+1,0,...m):h.children.unshift(...m),Je(h,[]),h}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:E.mdxToMarkdown(),frontmatterToMarkdown:p.frontmatterToMarkdown("yaml"),directiveToMarkdown:h.directiveToMarkdown,gfmTableToMarkdown:g.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}){x.$isListItemNode(t)||b.$isQuoteNode(t)||le(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(w.$createLinkNode(e.url,{title:e.title}))}},MdastHeadingVisitor:{testNode:"heading",visitNode:function({mdastNode:e,actions:t}){t.addAndStepInto(b.$createHeadingNode(`h${e.depth}`))}},MdastListVisitor:{testNode:"list",visitNode:function({mdastNode:e,lexicalParent:t,actions:n}){const a=x.$createListNode(e.ordered?"number":"bullet");if(x.$isListItemNode(t)){const e=x.$createListItemNode();e.append(a),t.insertAfter(e)}else t.append(a);n.visitChildren(e,a)}},MdastListItemVisitor:{testNode:"listItem",visitNode({actions:e}){e.addAndStepInto(x.$createListItemNode())}},MdastBlockQuoteVisitor:{testNode:"blockquote",visitNode({actions:e}){e.addAndStepInto(b.$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(k.$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(he(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(ye({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:E.mdxFromMarkdown(),frontmatterFromMarkdown:p.frontmatterFromMarkdown("yaml"),directiveFromMarkdown:h.directiveFromMarkdown,gfmTableFromMarkdown:g.gfmTableFromMarkdown},tt={mdxjs:T.mdxjs(),frontmatter:_.frontmatter(),directive:C.directive(),gfmTable:N.gfmTable};function nt({root:e,markdown:t,visitors:n,syntaxExtensions:a,mdastExtensions:r}){const o=y.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:u.ParagraphNode,LinkNode:w.LinkNode,HeadingNode:b.HeadingNode,QuoteNode:b.QuoteNode,ListNode:x.ListNode,ListItemNode:x.ListItemNode,HorizontalRuleNode:k.HorizontalRuleNode,ImageNode:Ee,SandpackNode:_e,CodeBlockNode:ce,FrontmatterNode:me,AdmonitionNode:re,JsxNode:be,CodeNode:f.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 p({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 u=new Map;function m(o){var l;const i=Object.keys(o),s=i.join(",");u.has(s)||u.set(s,d(i));const c=u.get(s),m=c.refCount.clone(),h=c.participatingNodeKeys.slice(),p=new Map(a);function g(e){n.use(e,(t=>{t.forEach((({sources:t,sink:n})=>{t.has(e)&&m.decrement(n,(()=>{h.splice(h.indexOf(n),1),g(n)}))}))}))}let E;for(;E=h.shift();){let n=!1;const i=e=>{r.has(E)&&r.get(E)(a.get(E),e)?n=!1:(n=!0,p.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=>p.get(e)));e.map(i)(...t)}))})),n){const n=p.get(E);e.use(E,(e=>{e.forEach((e=>e(n)))})),null==(l=t.get(E))||l(n)}else g(E)}}function h(e){return new Set(e.map((e=>e.key)))}function p({sources:e,pulls:t=[],map:a,sink:{key:r}}){const o={map:a,pulls:h(t),sink:r,sources:h(e)};[...e,...t].forEach((({key:e})=>{n.getOrCreate(e).add(o)})),u.clear()}function g(...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])=>ie(e,(e=>e[o[t].key]=n))),{}))}return{combine:function(...e){const t=l();return p({map:e=>(...t)=>e(t),sink:t,sources:e}),t},connect:p,debug:function(){Object.entries(o).forEach((([e,t])=>{a.get(t.key)}))},derive:function(e,t){return ie(l(t,!0),(t=>{p({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){p({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 p({map:t=>n=>e(n)&&t(n),sink:n,sources:[t]}),n}},map:function(e){return t=>{const n=l();return p({map:t=>n=>{t(e(n))},sink:n,sources:[t]}),n}},mapTo:function(e){return t=>{const n=l();return p({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)),p({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 p({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 p({map:e=>(...t)=>e(t),pulls:e,sink:n,sources:[t]}),n}},once:function(){return e=>{const t=l();let n=!1;return p({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())),p({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:m,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=>{p({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 ut="undefined"!=typeof document?Q.useLayoutEffect:Q.useEffect,mt=m.createContext(void 0);function ht(e,t=[],n=ot()){return[{constructor:e,dependencies:t,id:n},{id:n}]}const pt=new Map([["number",x.INSERT_ORDERED_LIST_COMMAND],["bullet",x.INSERT_UNORDERED_LIST_COMMAND],["",x.REMOVE_LIST_COMMAND]]);const[gt,Et]=ht((e=>{const t=e.node(null,!0),n=e.node(""),a=e.node(H.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(),m=e.node(),h=e.node(),p=e.node(),g=e.node(),E=e.node(),v=e.node(),f=e.node([]),w=e.node(!1,!0),y=e.node({type:"lexical"}),C=e.node(null),_=e.node(null),N=e.node(null),T=e.node([]),M=e.node([]);function A(){const t=u.$getSelection();u.$isRangeSelection(t)&&e.pubKeys({currentSelection:t,currentFormat:t.format})}return e.link(e.pipe(v,e.o.withLatestFrom(f),e.o.map((([e,t])=>[...t,e]))),f),e.sub(e.pipe(d,e.o.withLatestFrom(r)),(([e,t])=>{null==t||t.dispatchCommand(pt.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(h,e.o.withLatestFrom(r)),(([,e])=>{null==e||e.dispatchCommand(k.INSERT_HORIZONTAL_RULE_COMMAND,void 0)})),e.sub(e.pipe(E,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=ve({altText:"",src:e,title:""});S.$insertNodeToNearestRoot(t)}))}}))})),e.sub(e.pipe(g,e.o.withLatestFrom(r)),(([,e])=>{null==e||e.update((()=>{const e=u.$getRoot().getFirstChild();if(!pe(e)){const t=he('"": ""');e?e.insertBefore(t):u.$getRoot().append(t)}}))})),e.sub(e.pipe(p,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=He({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))&&L.$setBlocksType(e,(()=>u.$createParagraphNode()))}))})(t);break;case"quote":(e=>{e.update((()=>{const e=u.$getSelection();(u.$isRangeSelection(e)||u.DEPRECATED_$isGridSelection(e))&&L.$setBlocksType(e,(()=>b.$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))&&L.$setBlocksType(e,(()=>oe(t)))}))})(t,e);break;default:((e,t)=>{e.update((()=>{const e=u.$getSelection();(u.$isRangeSelection(e)||u.DEPRECATED_$isGridSelection(e))&&L.$setBlocksType(e,(()=>b.$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:S.$findMatchingParent(a,(e=>{const t=e.getParent();return null!==t&&u.$isRootOrShadowRoot(t)}));null===r&&(r=a.getTopLevelElementOrThrow());const o=r.getKey();if(null!==n.getElementByKey(o))if(x.$isListNode(r)){const t=S.$getNearestNodeOfType(a,x.ListNode),n=t?t.getListType():r.getListType();e.pubIn({[i.key]:n,[s.key]:""})}else{e.pub(i,null);const t=b.$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(u.SELECTION_CHANGE_COMMAND,((t,n)=>(e.pubIn({[r.key]:n,[w.key]:!0}),A(),!1)),u.COMMAND_PRIORITY_CRITICAL)})),e.pipe(e.combine(f,r),e.o.scan(((n,[a,r])=>(n.forEach((e=>e())),r?a.map((n=>n(r,e.getValue(t)))):[])),[])),e.pub(v,(e=>e.registerUpdateListener((({editorState:e})=>{e.read((()=>{A()}))})))),e.pub(v,(n=>n.registerCommand(u.BLUR_COMMAND,(n=>{var a;return!(null==(a=e.getValue(t).getRootElement())?void 0:a.contains(n.relatedTarget))&&e.pub(w,!1),!1}),u.COMMAND_PRIORITY_LOW))),{editor:t,activeEditor:r,currentFormat:o,currentSelection:l,currentListType:i,currentBlockType:s,applyFormat:c,applyListType:d,applyBlockType:m,insertHorizontalRule:h,insertFrontmatter:g,insertImage:E,insertTable:p,createEditorSubscription:v,editorSubscriptions:f,activeEditorType:y,inFocus:w,historyState:a,editorRootElementRef:C,markdownParseOptions:_,lexicalConvertOptions:N,lexicalNodes:T,imageAutocompleteSuggestions:M,markdownSource:n}}),[]),[vt,ft]=ht((e=>({jsxComponentDescriptors:e.node([])})),[]),[wt]=ht(((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((()=>{u.$getRoot().clear(),nt({root:u.$getRoot(),markdown:n,...a})})))})),{viewMode:r,headMarkdown:o}}),[Et,ft]),xt={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'}]},kt={js:"JavaScript",ts:"TypeScript",tsx:"TypeScript (React)",jsx:"JavaScript (React)",css:"CSS"},[bt]=ht(((e,[{activeEditor:t,activeEditorType:n,createEditorSubscription:a}])=>{const r=e.node(xt),o=e.node(kt),l=e.node(),i=e.node();return e.pub(a,(t=>t.registerCommand(u.FOCUS_COMMAND,(()=>(e.pub(n,{type:"lexical"}),!1)),u.COMMAND_PRIORITY_LOW))),e.sub(e.pipe(l,e.o.withLatestFrom(t,r)),(([e,t,n])=>{null==t||t.getEditorState().read((()=>{const a=u.$getSelection();if(u.$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});S.$insertNodeToNearestRoot(e),setTimeout((()=>e.select()),80)}))}}))})),e.sub(e.pipe(i,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=de({code:"",language:"jsx",meta:""});S.$insertNodeToNearestRoot(e),setTimeout((()=>e.select()),80)}))}}))})),{codeBlockLanguages:o,insertSandpack:l,insertCodeBlock:i,sandpackConfig:r}}),[Et]);function yt(e){const t=u.$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 v.toMarkdown(je({root:e,visitors:a,jsxComponentDescriptors:r}),{extensions:n,...t})}({root:u.$getRoot(),...t})}))})).markdown}function _t(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()?L.$isAtNodeEnd(n)?a:r:L.$isAtNodeEnd(t)?a:r}(e),n=t.getParent();return w.$isLinkNode(n)?n:w.$isLinkNode(t)?t:null}const[Nt,Tt]=ht(((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(),m=e.node(),h=e.node(),p=e.node([]);return e.sub(e.pipe(h,e.o.withLatestFrom(n,t),e.o.filter((([,e])=>u.$isRangeSelection(e)))),(([,t,n])=>{null==n||n.getEditorState().read((()=>{const a=_t(t),r=yt(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(m,e.o.withLatestFrom(t)),(([,e])=>{null==e||e.dispatchCommand(w.TOGGLE_LINK_COMMAND,null)})),e.pub(a,(t=>t.registerCommand(u.KEY_ESCAPE_COMMAND,(()=>"preview"===e.getValue(l).type&&(e.pub(l,{type:"inactive"}),!0)),u.COMMAND_PRIORITY_LOW))),e.pub(a,(t=>t.registerCommand(u.KEY_MODIFIER_COMMAND,(t=>!("k"!==t.key||!t.metaKey)&&(e.pub(h,!0),!0)),u.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(w.TOGGLE_LINK_COMMAND,a),e.pub(l,{type:"preview",linkNodeKey:t.linkNodeKey,rectangle:t.rectangle,url:a})):(""!==t.initialUrl&&(null==n||n.dispatchCommand(w.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(u.$isRangeSelection(e)&&t){const n=_t(e);return n?{type:"preview",url:n.getURL(),linkNodeKey:n.getKey(),rectangle:yt(t)}:{type:"inactive"}}return{type:"inactive"}}))),l),{dialogState:r,onWindowChange:o,linkDialogState:l,updateLinkUrl:i,switchFromPreviewToLinkEdit:d,cancelLinkEdit:s,removeLink:m,openLinkEditDialog:h,applyLinkChanges:c,linkAutocompleteSuggestions:p}}),[Et]),[St,Mt]=ht(((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]),[Lt,Ht]=ht((e=>({toolbarComponents:e.node([])})),[]),{Component:At,usePublisher:Ot,useEmitterValues:Rt}=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=mt;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=m.forwardRef(((c,d)=>{const u=m.useMemo((()=>ie(e(),(e=>s(e,c)))),[]);var h;ut((()=>{s(u,c),u.resetSingletonSubs();for(const e of l)e in c&&u.singletonSubKey(t.events[e],c[e]);return()=>{u.resetSingletonSubs()}}),[c]),m.useImperativeHandle(d,(h=function(e){return o.reduce(((n,a)=>{const r=t.methods[a];return n[a]=t=>{e.pubKey(r,t)},n}),{})}(u),()=>h));const p=c.children;return m.createElement(i.Provider,{value:u},n?m.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),p):p)}));return c.displayName="Gurx Component",{Component:c,useEmitter:(e,t)=>{const n=m.useContext(i);ut((()=>n.subKey(e,t)),[t])},useEmitterValues:(...e)=>{const t=m.useContext(i),[n,a]=m.useState((()=>t.getKeyValues(e)));return ut((()=>null==t?void 0:t.subKeys(e,(n=>{const r=()=>{a(1===e.length?[n]:n)};t.suppressFlushSync,r()}))),[e]),n},usePubKeys:()=>m.useContext(i).pubKeys,usePublisher:e=>{const t=Q.useContext(i);return m.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,Nt,vt,St,Lt),{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(Vt,null),e))),Vt=()=>{const e=Ot("editor"),[t]=M.useLexicalComposerContext();return m.useEffect((()=>e(t)),[t,e]),null},It=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"}))),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:"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"}))),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:"M7 18V2h13v16H7Zm2-2h9V4H9v12Zm-6 6V6h2v14h11v2H3Z"}))),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:"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"}))),$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:"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"}))),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:"M3 21V3h9v2H5v14h14v-7h2v9H3Zm6.7-5.3-1.4-1.4L17.6 5H14V3h7v7h-2V6.4l-9.3 9.3Z"}))),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:"m12 15-5-5h10l-5 5Z"}))),Ft={editorRoot:"_editorRoot_1bxeh_43",editorWrapper:"_editorWrapper_1bxeh_121",nestedListItem:"_nestedListItem_1bxeh_125",toolbarRoot:"_toolbarRoot_1bxeh_129",toolbarModeSwitch:"_toolbarModeSwitch_1bxeh_150",toolbarToggleItem:"_toolbarToggleItem_1bxeh_159",toolbarGroupOfGroups:"_toolbarGroupOfGroups_1bxeh_169",toolbarToggleSingleGroup:"_toolbarToggleSingleGroup_1bxeh_173",toolbarButton:"_toolbarButton_1bxeh_187",toolbarNodeKindSelectContainer:"_toolbarNodeKindSelectContainer_1bxeh_216",toolbarButtonDropdownContainer:"_toolbarButtonDropdownContainer_1bxeh_217",toolbarCodeBlockLanguageSelectContent:"_toolbarCodeBlockLanguageSelectContent_1bxeh_218",toolbarNodeKindSelectTrigger:"_toolbarNodeKindSelectTrigger_1bxeh_232",toolbarButtonSelectTrigger:"_toolbarButtonSelectTrigger_1bxeh_233",toolbarCodeBlockLanguageSelectTrigger:"_toolbarCodeBlockLanguageSelectTrigger_1bxeh_266",toolbarNodeKindSelectItem:"_toolbarNodeKindSelectItem_1bxeh_272",toolbarNodeKindSelectDropdownArrow:"_toolbarNodeKindSelectDropdownArrow_1bxeh_295",contentEditable:"_contentEditable_1bxeh_299",sandpackWrapper:"_sandpackWrapper_1bxeh_307",frontmatterWrapper:"_frontmatterWrapper_1bxeh_311",frontmatterToggleButton:"_frontmatterToggleButton_1bxeh_321",frontmatterEditorTable:"_frontmatterEditorTable_1bxeh_329",iconButton:"_iconButton_1bxeh_347",frontmatterInput:"_frontmatterInput_1bxeh_353",primaryButton:"_primaryButton_1bxeh_368",linkDialogEditForm:"_linkDialogEditForm_1bxeh_378",linkDialogInputContainer:"_linkDialogInputContainer_1bxeh_384",linkDialogInputWrapper:"_linkDialogInputWrapper_1bxeh_390",linkDialogInput:"_linkDialogInput_1bxeh_384",linkDialogAutocompleteContainer:"_linkDialogAutocompleteContainer_1bxeh_420",linkDialogAnchor:"_linkDialogAnchor_1bxeh_465",linkDialogPopoverContent:"_linkDialogPopoverContent_1bxeh_479",tableColumnEditorPopoverContent:"_tableColumnEditorPopoverContent_1bxeh_479",dialogContent:"_dialogContent_1bxeh_479",linkDialogPreviewAnchor:"_linkDialogPreviewAnchor_1bxeh_493",tooltipContent:"_tooltipContent_1bxeh_515",actionButton:"_actionButton_1bxeh_527",primaryActionButton:"_primaryActionButton_1bxeh_533",tableEditor:"_tableEditor_1bxeh_542",toolCell:"_toolCell_1bxeh_553",tableColumnEditorTrigger:"_tableColumnEditorTrigger_1bxeh_570",tableRowEditorTrigger:"_tableRowEditorTrigger_1bxeh_570",addRowButton:"_addRowButton_1bxeh_570",addColumnButton:"_addColumnButton_1bxeh_570",tableColumnEditorToolbar:"_tableColumnEditorToolbar_1bxeh_604",toggleGroupRoot:"_toggleGroupRoot_1bxeh_616",tableToolsColumn:"_tableToolsColumn_1bxeh_633",leftAlignedCell:"_leftAlignedCell_1bxeh_641",rightAlignedCell:"_rightAlignedCell_1bxeh_645",centeredCell:"_centeredCell_1bxeh_649",dialogOverlay:"_dialogOverlay_1bxeh_677",overlayShow:"_overlayShow_1bxeh_1",contentShow:"_contentShow_1bxeh_1"};u.createCommand();const Kt=20;function zt({initialUrl:e,onSubmit:t,onCancel:n,linkAutocompleteSuggestions:a}){const[r,o]=m.useState(a.slice(0,Kt)),{isOpen:l,getToggleButtonProps:i,getMenuProps:s,getInputProps:c,highlightedIndex:u,getItemProps:h,selectedItem:p}=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>=Kt))break;o(t)},items:r,itemToString:e=>e??""}),g=m.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 m.createElement("form",{onSubmit:e=>{e.preventDefault(),t(p||"")},onReset:n,className:d(Ft.linkDialogEditForm)},m.createElement("div",{className:Ft.linkDialogInputContainer},m.createElement("div",{"data-visible-dropdown":f,className:Ft.linkDialogInputWrapper},m.createElement("input",{className:Ft.linkDialogInput,...v,autoFocus:!0,size:30,"data-editor-dialog":!0}),m.createElement("button",{"aria-label":"toggle menu",type:"button",...i()},m.createElement(Ut,null))),m.createElement("div",{className:Ft.linkDialogAutocompleteContainer},m.createElement("ul",{...s(),"data-visible":f},r.map(((e,t)=>m.createElement("li",{"data-selected":p===e,"data-highlighted":u===t,key:`${e}${t}`,...h({item:e,index:t})},e)))))),m.createElement(qt,{type:"submit",title:"Set URL","aria-label":"Set URL"},m.createElement(It,null)),m.createElement(qt,{type:"reset",title:"Cancel change","aria-label":"Cancel change"},m.createElement(Dt,null)))}function jt(){const[e]=Rt("editorRootElementRef"),t=Ot("onWindowChange"),[n,a,r]=Rt("linkDialogState","linkAutocompleteSuggestions","activeEditor"),o=Ot("updateLinkUrl"),l=Ot("cancelLinkEdit"),i=Ot("switchFromPreviewToLinkEdit"),s=Ot("removeLink"),c=Ot("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,h]=m.useState(!1),p=null==n?void 0:n.rectangle,g=m.useCallback((e=>{o(e),c(!0)}),[c,o]),E="preview"===n.type&&n.url.startsWith("http");return m.createElement(X.Root,{open:"inactive"!==n.type},m.createElement(X.Anchor,{"data-visible":"edit"===n.type,className:Ft.linkDialogAnchor,style:{top:null==p?void 0:p.top,left:null==p?void 0:p.left,width:null==p?void 0:p.width,height:null==p?void 0:p.height}}),m.createElement(X.Portal,{container:null==e?void 0:e.current},m.createElement(X.Content,{className:d(Ft.linkDialogPopoverContent),sideOffset:5,onOpenAutoFocus:e=>e.preventDefault(),key:n.linkNodeKey},"edit"===n.type&&m.createElement(zt,{initialUrl:n.url,onSubmit:g,onCancel:l.bind(null,!0),linkAutocompleteSuggestions:a}),"preview"===n.type&&m.createElement(m.Fragment,null,m.createElement("a",{className:Ft.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(Zt,null)),m.createElement(qt,{onClick:()=>i(!0),title:"Edit link URL","aria-label":"Edit link URL"},m.createElement(Pt,null)),m.createElement(ee.Provider,null,m.createElement(ee.Root,{open:u},m.createElement(ee.Trigger,{asChild:!0},m.createElement(qt,{title:"Copy to clipboard","aria-label":"Copy link URL",onClick:()=>{window.navigator.clipboard.writeText(n.url).then((()=>{h(!0),setTimeout((()=>h(!1)),1e3)}))}},u?m.createElement(It,null):m.createElement(Bt,null))),m.createElement(ee.Portal,{container:null==e?void 0:e.current},m.createElement(ee.Content,{className:d(Ft.tooltipContent),sideOffset:5},"Copied!",m.createElement(ee.Arrow,null))))),m.createElement(qt,{title:"Remove link","aria-label":"Remove link",onClick:()=>s(!0)},m.createElement($t,null))))))}const qt=m.forwardRef((({className:e,...t},n)=>m.createElement("button",{className:d(Ft.actionButton,e),ref:n,...t})));function Wt(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 a=0;for(const r of n)if(x.$isListNode(r))a=Math.max(x.$getListDepth(r)+1,a);else if(x.$isListItemNode(r)){const e=r.getParent();if(1===(null==e?void 0:e.getChildren().length)){const t=null==e?void 0:e.getParent();if(x.$isListItemNode(t)&&1===t.getChildren().length)return!1}if(!x.$isListNode(e))throw new Error("ListMaxIndentLevelPlugin: A ListItemNode must have a ListNode for a parent.");a=Math.max(x.$getListDepth(e)+1,a)}return a<=e}function Jt({maxDepth:e}){const[t]=M.useLexicalComposerContext();return m.useEffect((()=>t.registerCommand(u.INDENT_CONTENT_COMMAND,(()=>!Wt(e??7)),u.COMMAND_PRIORITY_CRITICAL)),[t,e]),null}const Gt=()=>{return m.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 Yt(e,t,n){const[a]=Rt("activeEditor"),r=Ot("activeEditorType"),o=m.useRef(null),l=m.useRef(!1),i=m.useRef(!1),s=m.useCallback((()=>{r({type:t,nodeKey:e})}),[e,r,t]),c=m.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=u.$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(u.$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=u.$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 m.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 Qt=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"}))),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:"m12 15-5-5h10l-5 5Z"}))),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"})),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"}))),tn=m.forwardRef((({className:e,autofocusIfEmpty:t,...n},a)=>(n.autoFocus=Boolean(!n.value&&t),m.createElement("input",{className:d(Ft.frontmatterInput,e),...n,ref:a})))),nn=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"}))),an=m.forwardRef(((e,t)=>m.createElement(X.Content,{...e,className:"",ref:t}))),rn=m.forwardRef(((e,t)=>m.createElement(X.Trigger,{...e,className:"",ref:t})));const on=({attributes:e,componentName:t,onSubmit:n})=>{const[a,r]=m.useState(!1),o=m.useCallback((e=>{n(e),r(!1)}),[n]);return m.createElement(X.Root,{open:a,onOpenChange:e=>r(e)},m.createElement(rn,null,m.createElement(nn,null)),m.createElement(X.Portal,null,m.createElement(an,null,m.createElement(ln,{attributes:e,componentName:t,onSubmit:o}))))},ln=({attributes:e,componentName:t,onSubmit:n})=>{const[a]=Rt("jsxComponentDescriptors"),r=a.find((e=>e.name===t)),[o]=M.useLexicalComposerContext(),{register:l,handleSubmit:i}=P.useForm({defaultValues:e.reduce(((e,t)=>(e[t.name]=t.value,e)),{})});return m.createElement("form",{onSubmit:i((e=>{o.update((()=>{n(e)}))}))},m.createElement("table",null,m.createElement("thead",null,m.createElement("tr",null,m.createElement("th",null,"Attribute"),m.createElement("th",null,"Value"))),m.createElement("tbody",null,r.props.map((e=>m.createElement("tr",{key:e.name},m.createElement("td",null," ",e.name," "),m.createElement("td",null,m.createElement("input",{...l(e.name)}))))))),m.createElement("button",{type:"submit"},"Submit"))},sn=({onChange:e,snippetFileName:t})=>{const{sandpack:n}=D.useSandpack();return e(n.files[t].code),null};const cn=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 m.createElement("span",{dangerouslySetInnerHTML:{__html:r||"&nbsp;"}})},dn=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"}))),mn=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"}))),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 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"}))),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 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"}))),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"})),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"}))),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",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"}))),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:"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"}))),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:"M10.5 3.25V6h2.75v1.5H10.5v2.75H9V7.5H6.25V6H9V3.25h1.5ZM17 6v8H3V6h2.5v1.5h-1v5h11v-5H14V6h3Z"}))),xn=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"}))),kn=()=>{const[e]=Rt("historyState");return m.createElement(H.HistoryPlugin,{externalHistoryState:e})},bn={center:Ft.centeredCell,left:Ft.leftAlignedCell,right:Ft.rightAlignedCell},yn=({align:e,...t})=>{const[n,a]=t.activeCellTuple,r=n&&n[0]===t.colIndex&&n[1]===t.rowIndex,o=bn[e||"left"];return m.createElement("td",{className:o,"data-active":r,onClick:()=>{a([t.colIndex,t.rowIndex])}},r?m.createElement(Cn,{...t}):m.createElement(cn,{mdastChildren:t.contents}))},Cn=({activeCellTuple:e,parentEditor:t,lexicalTable:n,contents:o,colIndex:l,rowIndex:i})=>{const[c,d,h,p]=Rt("markdownParseOptions","lexicalConvertOptions","jsxComponentDescriptors","lexicalNodes"),[g]=m.useState((()=>{let a=!1;const r=u.createEditor({nodes:p,theme:we});function s(o){a||(a=!0,r.getEditorState().read((()=>{const e=je({root:u.$getRoot(),jsxComponentDescriptors:h,...d});t.update((()=>{n.updateCellContents(l,i,e.children[0].children)}))})),e[1](o))}return r.registerCommand(u.KEY_TAB_COMMAND,(e=>{e.preventDefault();return s(e.shiftKey?[l-1,i]:[l+1,i]),!0}),u.COMMAND_PRIORITY_CRITICAL),r.registerCommand(u.KEY_ENTER_COMMAND,(e=>{null==e||e.preventDefault();return s((null==e?void 0:e.shiftKey)?[l,i-1]:[l,i+1]),!0}),u.COMMAND_PRIORITY_CRITICAL),r.registerCommand(u.BLUR_COMMAND,(e=>{const t=e.relatedTarget;return void 0===(null==t?void 0:t.dataset.editorDialog)&&(s(null),!0)}),u.COMMAND_PRIORITY_CRITICAL),r.registerRootListener((e=>{e&&r.focus()})),r.update((()=>{at({root:u.$getRoot(),mdastRoot:{type:"root",children:[{type:"paragraph",children:o}]},visitors:c.visitors})})),r}));return m.createElement($.LexicalNestedComposer,{initialEditor:g},m.createElement(s.RichTextPlugin,{contentEditable:m.createElement(a.ContentEditable,{autoFocus:!0}),placeholder:m.createElement("div",null),ErrorBoundary:r}),m.createElement(kn,null))},_n=({parentEditor:e,highlightedCoordinates:t,align:n,lexicalTable:a,colIndex:r,setActiveCellWithBoundaries:o})=>{const[l]=Rt("editorRootElementRef"),i=m.useCallback((t=>{e.update((()=>{a.insertColumnAt(t)})),o([t,0])}),[e,a,o]),s=m.useCallback((t=>{e.update((()=>{a.deleteColumnAt(t)}))}),[e,a]),c=m.useCallback(((t,n)=>{e.update((()=>{a.setColumnAlign(t,n)}))}),[e,a]);return m.createElement(X.Root,null,m.createElement(X.PopoverTrigger,{className:Ft.tableColumnEditorTrigger,"data-active":t[0]===r+1,title:"Column menu"},m.createElement(dn,null)),m.createElement(X.Portal,{container:null==l?void 0:l.current},m.createElement(X.PopoverContent,{className:d(Ft.tableColumnEditorPopoverContent),onOpenAutoFocus:e=>e.preventDefault(),sideOffset:5,side:"top"},m.createElement(te.Root,{className:Ft.tableColumnEditorToolbar},m.createElement(te.ToggleGroup,{className:Ft.toggleGroupRoot,onValueChange:e=>{c(r,e)},value:n||"left",type:"single","aria-label":"Text alignment"},m.createElement(te.ToggleItem,{value:"left",title:"Align left"},m.createElement(un,null)),m.createElement(te.ToggleItem,{value:"center",title:"Align center"},m.createElement(mn,null)),m.createElement(te.ToggleItem,{value:"right",title:"Align right"},m.createElement(hn,null))),m.createElement(te.Separator,null),m.createElement(te.Button,{onClick:i.bind(null,r),title:"Insert a column to the left of this one"},m.createElement(pn,null)),m.createElement(te.Button,{onClick:i.bind(null,r+1),title:"Insert a column to the right of this one"},m.createElement(gn,null)),m.createElement(te.Button,{onClick:s.bind(null,r),title:"Delete this column"},m.createElement(En,null))))))},Nn=({parentEditor:e,highlightedCoordinates:t,lexicalTable:n,rowIndex:a,setActiveCellWithBoundaries:r})=>{const[o]=Rt("editorRootElementRef"),l=m.useCallback((t=>{e.update((()=>{n.insertRowAt(t)})),r([0,t])}),[e,n,r]),i=m.useCallback((t=>{e.update((()=>{n.deleteRowAt(t)}))}),[e,n]);return m.createElement(X.Root,null,m.createElement(X.PopoverTrigger,{className:Ft.tableColumnEditorTrigger,"data-active":t[1]===a},m.createElement(dn,null)),m.createElement(X.Portal,{container:null==o?void 0:o.current},m.createElement(X.PopoverContent,{className:d(Ft.tableColumnEditorPopoverContent),onOpenAutoFocus:e=>e.preventDefault(),sideOffset:5,side:"bottom"},m.createElement(te.Root,{className:Ft.tableColumnEditorToolbar},m.createElement(te.Button,{onClick:l.bind(null,a),title:"Insert a row above this one"},m.createElement(vn,null)),m.createElement(te.Button,{onClick:l.bind(null,a+1),title:"Insert a row below this one"},m.createElement(fn,null)),m.createElement(te.Button,{onClick:i.bind(null,a),title:"Delete this row"},m.createElement(En,null))))))};function Tn({oldText:e,newText:t}){const n=W.formatLines(W.diffLines(e,t),{context:3});if(""===n.trim())return m.createElement("div",null,"No changes");const[a]=q.parseDiff(n,{nearbySequences:"zip"});return m.createElement(q.Diff,{viewType:"split",diffType:"modify",hunks:a.hunks||[]},(e=>e.map((e=>m.createElement(q.Hunk,{key:e.content,hunk:e})))))}function Sn(){const[e,t]=Rt("markdownSource","headMarkdown");return m.createElement(Tn,{oldText:t,newText:e})}const Mn=({children:e})=>{const[t]=Rt("viewMode");return m.createElement("div",null,m.createElement("div",{style:{display:"editor"===t?"block":"none"}},e),"diff"===t?m.createElement(Sn,null):null,"markdown"===t?m.createElement(Ln,null):null)},Ln=()=>{const[e]=Rt("markdownSource"),t=Ot("markdownSource"),n=m.useRef(null);return m.createElement("div",null,m.createElement(D.SandpackProvider,null,m.createElement(D.CodeEditor,{showLineNumbers:!0,additionalLanguages:[{name:"markdown",extensions:["md"],language:j.markdown()}],initMode:"lazy",filePath:"file.md",code:e,onCodeUpdate:t,ref:n})))},Hn=m.forwardRef((({children:e,className:t,...n},a)=>m.createElement(ne.Item,{...n,ref:a,className:d(t,Ft.toolbarNodeKindSelectItem)},m.createElement(ne.ItemText,null,e)))),An=({placeholder:e,className:t})=>m.createElement(ne.Trigger,{"aria-label":e,className:d(Ft.toolbarNodeKindSelectTrigger,t)},m.createElement(ne.Value,{placeholder:e}),m.createElement(ne.Icon,{className:Ft.toolbarNodeKindSelectDropdownArrow},m.createElement(Ut,null))),On=({children:e,className:t=Ft.toolbarNodeKindSelectContainer})=>{const[n]=Rt("editorRootElementRef");return m.createElement(ne.Portal,{container:null==n?void 0:n.current},m.createElement(ne.Content,{className:t,onCloseAutoFocus:e=>e.preventDefault(),position:"popper"},m.createElement(ne.Viewport,null,e)))},Rn=({children:e,title:t,className:n})=>m.createElement(ne.Trigger,{className:d(Ft.toolbarButtonSelectTrigger,n),title:t},e,m.createElement(ne.Icon,{className:Ft.toolbarNodeKindSelectDropdownArrow},m.createElement(Ut,null)));function Vn(){const[e,t,n]=Rt("activeEditorType","activeEditor","codeBlockLanguages"),a=m.useMemo((()=>{let n;return t.getEditorState().read((()=>{const t=u.$getNodeByKey(e.nodeKey);n=t.getLanguage()})),n}),[t,e]);return m.createElement(ne.Root,{value:a,onValueChange:n=>{t.update((()=>{const t=u.$getNodeByKey(e.nodeKey);t.setLanguage(n),setTimeout((()=>{t.select()}),80)}))}},m.createElement(An,{placeholder:"Language",className:Ft.toolbarCodeBlockLanguageSelectTrigger}),m.createElement(On,{className:Ft.toolbarCodeBlockLanguageSelectContent},Object.entries(n).map((([e,t])=>m.createElement(Hn,{key:e,value:e},t)))))}const In=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"}))),Dn=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"}))),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 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"}))),Pn=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"}))),$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:"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"}))),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:"M5 19v-2.5h4l3-9H8V5h10v2.5h-3.5l-3 9H15V19H5Z"}))),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:"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"}))),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:"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"}))),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:"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"}))),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 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"}))),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 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"}))),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:"M4 13v-2h16v2H4Z"}))),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:"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"}))),Jn=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"}))),Gn=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"}))),Yn=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"}))),Qn=()=>{const[e]=Rt("currentBlockType"),t=Ot("applyBlockType");return m.createElement(ne.Root,{value:e||"",onValueChange:t},m.createElement(An,{placeholder:"Block type"}),m.createElement(On,null,m.createElement(Hn,{value:"paragraph"},"Paragraph"),m.createElement(Hn,{value:"quote"},"Quote"),m.createElement(ne.Separator,null),m.createElement(Hn,{value:"h1"},"Heading 1"),m.createElement(Hn,{value:"h2"},"Heading 2"),m.createElement(Hn,{value:"h3"},"Heading 3"),m.createElement(Hn,{value:"h4"},"Heading 4"),m.createElement(Hn,{value:"h5"},"Heading 5"),m.createElement(Hn,{value:"h6"},"Heading 6"),m.createElement(ne.Separator,null),m.createElement(Hn,{value:"info"},"Info")))},Xn=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"}))),ea=m.forwardRef(((e,t)=>{const[n,a]=Rt("editorRootElementRef","imageAutocompleteSuggestions"),[r,o]=m.useState(!1),l=Ot("insertImage"),i=m.useCallback((e=>{l(e),o(!1)}),[l]);return m.createElement(ae.Root,{open:r,onOpenChange:o},m.createElement(ae.Trigger,{asChild:!0},m.createElement(te.Button,{className:Ft.toolbarButton,...e,ref:t},m.createElement(Xn,null))),m.createElement(ae.Portal,{container:n.current},m.createElement(ae.Overlay,{className:Ft.dialogOverlay}),m.createElement(ae.Content,{className:Ft.dialogContent},m.createElement(ta,{initialUrl:"",onSubmit:i,imageAutocompleteSuggestions:a}))))}));u.createCommand();const ta=({initialUrl:e,onSubmit:t,imageAutocompleteSuggestions:n})=>{const[a,r]=m.useState(n.slice(0,20)),{isOpen:o,getToggleButtonProps:l,getMenuProps:i,getInputProps:s,highlightedIndex:c,getItemProps:u,selectedItem:h}=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??""}),p=m.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=>{p(e),g.onKeyDown(e)}},v=o&&a.length>0;return m.createElement("form",{onSubmit:e=>{e.preventDefault(),t(h||"")},className:d(Ft.linkDialogEditForm)},m.createElement("div",{className:Ft.linkDialogInputContainer},m.createElement("div",{"data-visible-dropdown":v,className:Ft.linkDialogInputWrapper},m.createElement("input",{placeholder:"Paste or select an image url",className:Ft.linkDialogInput,...E,autoFocus:!0,size:30,"data-editor-dialog":!0}),m.createElement("button",{"aria-label":"toggle menu",type:"button",...l()},m.createElement(Ut,null))),m.createElement("div",{className:Ft.linkDialogAutocompleteContainer},m.createElement("ul",{...i(),"data-visible":v},a.map(((e,t)=>m.createElement("li",{"data-selected":h===e,"data-highlighted":c===t,key:`${e}${t}`,...u({item:e,index:t})},e)))))),m.createElement(na,{type:"submit",title:"Insert image","aria-label":"Insert image",className:Ft.primaryActionButton},m.createElement(It,null)),m.createElement(ae.Close,{className:Ft.actionButton},m.createElement(Dt,null)))},na=m.forwardRef((({className:e,...t},n)=>m.createElement("button",{className:d(Ft.actionButton,e),ref:n,...t}))),aa=m.forwardRef((({className:e,...t},n)=>m.createElement(te.ToggleItem,{className:d(e,Ft.toolbarToggleItem),...t,ref:n}))),ra=m.forwardRef(((e,t)=>m.createElement(te.Button,{className:Ft.toolbarButton,...e,ref:t}))),oa=m.forwardRef((({children:e,className:t,...n},a)=>m.createElement(te.ToggleGroup,{...n,type:"single",ref:a,className:d(Ft.toolbarToggleSingleGroup,t)},e))),la=m.forwardRef((({on:e,children:t,...n},a)=>m.createElement(oa,{...n,value:e?"on":"off",ref:a},m.createElement(aa,{value:"on"},t)))),ia=({children:e})=>m.createElement("div",{className:Ft.toolbarGroupOfGroups},e),sa=te.ToolbarSeparator,ca=()=>{const[e]=Rt("currentFormat","currentListType"),t=Ot("applyFormat");return m.createElement(ia,null,m.createElement(la,{"aria-label":"Bold",on:0!=(1&e),onValueChange:t.bind(null,"bold")},m.createElement($n,null)),m.createElement(la,{"aria-label":"Italic",on:0!=(2&e),onValueChange:t.bind(null,"italic")},m.createElement(Zn,null)),m.createElement(la,{"aria-label":"Underline",on:0!=(8&e),onValueChange:t.bind(null,"underline")},m.createElement(Kn,{style:{transform:"translateY(2px)"}})))},da=()=>{const[e]=Rt("currentListType"),t=Ot("applyListType");return m.createElement(ia,null,m.createElement(oa,{"aria-label":"List type",onValueChange:t,value:e||"",onFocus:e=>e.preventDefault()},m.createElement(aa,{value:"bullet","aria-label":"Bulleted list"},m.createElement(Un,null)),m.createElement(aa,{value:"number","aria-label":"Numbered list"},m.createElement(Fn,null))))},ua=()=>{const e=Ot("openLinkEditDialog");return m.createElement(ra,{onClick:e.bind(null,!0)},m.createElement(Wn,null))},ma=()=>{const e=Ot("insertTable");return m.createElement(ra,{onClick:e.bind(null,!0)},m.createElement(Yn,null))},ha=()=>{const e=Ot("insertCodeBlock");return m.createElement(ra,{onClick:e.bind(null,!0)},m.createElement(zn,null))},pa=()=>{const e=Ot("insertSandpack"),[t]=Rt("sandpackConfig");return m.createElement(m.Fragment,null,1===t.presets.length?m.createElement(ra,{onClick:e.bind(null,"")},m.createElement(Bn,null)):m.createElement(ne.Root,{value:"",onValueChange:e},m.createElement(Rn,{title:"Insert live code snippet"},m.createElement(Bn,null)),m.createElement(On,{className:Ft.toolbarButtonDropdownContainer},t.presets.map((e=>m.createElement(Hn,{key:e.name,value:e.meta},e.label))))))},ga=()=>{const e=Ot("insertFrontmatter");return m.createElement(ra,{onClick:e.bind(null,!0)},m.createElement(jn,null))},Ea=()=>{const[e]=Rt("viewMode","activeEditorType"),t=Ot("viewMode");return m.createElement(oa,{"aria-label":"View Mode",onValueChange:e=>{""!==e&&t(e)},value:e,className:Ft.toolbarModeSwitch},m.createElement(aa,{value:"editor","aria-label":"Rich text",title:"Rich text"},m.createElement(Gn,null)),m.createElement(aa,{value:"diff","aria-label":"View diff",title:"Diff"},m.createElement(Pn,null)),m.createElement(aa,{value:"markdown","aria-label":"View Markdown",title:"Markdown"},m.createElement(Jn,null)))},va={BlockTypeSelect:Qn,BoldItalicUnderlineButtons:ca,CodeBlockButton:ha,FrontmatterButton:ga,GroupGroup:ia,HorizontalRuleIcon:qn,LinkButton:ua,ListButtons:da,SandpackButton:pa,TableButton:ma,ToggleItem:aa,ToggleSingleGroup:oa,ToggleSingleGroupWithItem:la,ToolbarButton:ra,ToolbarSeparator:sa,ImageButton:ea},fa=()=>{const[e,t]=Rt("activeEditorType","viewMode");return m.createElement(te.Root,{className:Ft.toolbarRoot,"aria-label":"Formatting options"},"editor"===t&&("lexical"===e.type?m.createElement(ka,null):"codeblock"===e.type?m.createElement(wa,null):m.createElement(xa,null)),m.createElement(sa,null),m.createElement(Ea,null))},wa=()=>{const[e,t]=Rt("activeEditor","activeEditorType");return m.createElement(m.Fragment,null,m.createElement(Vn,null),m.createElement(ra,{onClick:()=>{e.update((()=>{const e=u.$getNodeByKey(t.nodeKey);e.selectNext(),e.remove()}))}},m.createElement(In,null)))},xa=()=>{const[e,t]=Rt("activeEditor","activeEditorType");return m.createElement(m.Fragment,null,m.createElement(ra,{onClick:()=>{e.update((()=>{const e=u.$getNodeByKey(t.nodeKey);e.selectNext(),e.remove()}))}},m.createElement(In,null)))},ka=()=>{const[e]=Rt("toolbarComponents");return m.createElement(m.Fragment,null,e.map(((e,t)=>m.createElement(e,{key:t}))))},ba={FrontmatterEditor:({yaml:e,onChange:t})=>{const[n,a]=m.useState(!0),r=m.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 m.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]),m.createElement("div",{className:Ft.frontmatterWrapper,"data-expanded":n,"data-editor-type":"frontmatter"},m.createElement("button",{className:Ft.frontmatterToggleButton,onClick:e=>{e.preventDefault(),a((e=>!e))}},n?m.createElement(Xt,null):m.createElement(Qt,null),"Document frontmatter"),n&&m.createElement("form",null,m.createElement("table",{className:Ft.frontmatterEditorTable},m.createElement("colgroup",null,m.createElement("col",null),m.createElement("col",null),m.createElement("col",null)),m.createElement("thead",null,m.createElement("tr",null,m.createElement("th",null,"Key"),m.createElement("th",null,"Value"),m.createElement("th",null))),m.createElement("tbody",null,s.map(((e,t)=>m.createElement("tr",{key:e.id},m.createElement("td",null,m.createElement(tn,{...o(`yamlConfig.${t}.key`,{required:!0}),autofocusIfEmpty:!0})),m.createElement("td",null,m.createElement(tn,{...o(`yamlConfig.${t}.value`,{required:!0})})),m.createElement("td",null,m.createElement("button",{type:"button",onClick:()=>d(t),className:Ft.iconButton},m.createElement(en,null))))))),m.createElement("tfoot",null,m.createElement("tr",null,m.createElement("td",null,m.createElement("button",{className:Ft.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?m.createElement("div",null,m.createElement("div",null,n),m.createElement($.LexicalNestedComposer,{initialEditor:o,initialTheme:i},m.createElement(s.RichTextPlugin,{contentEditable:m.createElement(a.ContentEditable,null),placeholder:m.createElement("div",null,"Type here.."),ErrorBoundary:r}))):m.createElement("span",null,m.createElement("span",null,m.createElement(on,{attributes:t,componentName:n,onSubmit:l})),m.createElement("span",null,n,m.createElement($.LexicalNestedComposer,{initialEditor:o,initialTheme:i},m.createElement(s.RichTextPlugin,{contentEditable:m.createElement(a.ContentEditable,{style:{padding:5,border:"1px solid red"}}),placeholder:m.createElement("div",null,"Type here.."),ErrorBoundary:r}))))},SandpackEditor:({nodeKey:e,code:t,meta:n,onChange:a,focusEmitter:r})=>{const[o]=M.useLexicalComposerContext(),[l]=Rt("sandpackConfig"),i=Yt(e,"sandpack","jsx"),s=Ot("activeEditorType");m.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=m.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 m.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}},m.createElement(D.SandpackLayout,null,m.createElement(D.SandpackCodeEditor,{showLineNumbers:!0,showInlineErrors:!0,ref:i}),m.createElement(D.SandpackPreview,null)),m.createElement(sn,{onChange:c,snippetFileName:d.snippetFileName}))},CodeBlockEditor:({nodeKey:e,code:t,language:n,onChange:a,focusEmitter:r})=>{const[o]=Rt("activeEditor"),l=Yt(e,"codeblock",n),i=Ot("activeEditorType");m.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=m.useCallback((e=>{null==o||o.update((()=>{a(e)}))}),[a,o]);return m.createElement("div",{className:Ft.sandpackWrapper},m.createElement(D.SandpackProvider,null,m.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]=m.useState(null),o=m.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=u.$createParagraphNode();n.insertAfter(e),e.select()}}))):l<0?(r(null),void t.update((()=>{n.getLatest().selectPrevious()}))):void r([o,l])}),[n,t]);m.useEffect((()=>{n.focusEmitter.subscribe(o)}),[n,o]);const l=m.useCallback((()=>{t.update((()=>{n.addRowToBottom()})),o([0,n.getRowCount()])}),[t,n,o]),i=m.useCallback((()=>{t.update((()=>{n.addColumnToRight()})),o([n.getColCount(),0])}),[t,n,o]),[s,c]=m.useState([-1,-1]),d=m.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 m.createElement("table",{className:Ft.tableEditor,onMouseOver:d,onMouseLeave:()=>c([-1,-1])},m.createElement("colgroup",null,m.createElement("col",null),Array.from({length:e.children[0].children.length},((t,n)=>{const a=(e.align||[])[n]||"left",r=bn[a];return m.createElement("col",{key:n,className:r})})),m.createElement("col",null)),m.createElement("thead",null,m.createElement("tr",null,m.createElement("th",{className:Ft.tableToolsColumn,"data-tool-cell":!0},m.createElement("button",{className:Ft.iconButton,title:"Delete table",onClick:()=>{t.update((()=>{n.selectNext(),n.remove()}))}},m.createElement(En,null))),Array.from({length:e.children[0].children.length},((a,r)=>m.createElement("th",{key:r,"data-tool-cell":!0},m.createElement(_n,{setActiveCellWithBoundaries:o,parentEditor:t,colIndex:r,highlightedCoordinates:s,lexicalTable:n,align:(e.align||[])[r]})))),m.createElement("th",{className:Ft.tableToolsColumn}))),m.createElement("tbody",null,e.children.map(((r,l)=>m.createElement("tr",{key:l},m.createElement("td",{className:Ft.toolCell,"data-tool-cell":!0},m.createElement(Nn,{setActiveCellWithBoundaries:o,parentEditor:t,rowIndex:l,highlightedCoordinates:s,lexicalTable:n})),r.children.map(((r,i)=>{var s;return m.createElement(yn,{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&&m.createElement("th",{rowSpan:n.getRowCount(),"data-tool-cell":!0},m.createElement("button",{className:Ft.addColumnButton,onClick:i},m.createElement(xn,null))))))),m.createElement("tfoot",null,m.createElement("tr",null,m.createElement("th",null),m.createElement("th",{colSpan:n.getColCount()},m.createElement("button",{className:Ft.addRowButton,onClick:l},m.createElement(wn,null))),m.createElement("th",null))))}},ya=[ca,sa,()=>{const[e]=Rt("currentFormat","currentListType"),t=Ot("applyFormat");return m.createElement(ia,null,m.createElement(la,{"aria-label":"Inline code",on:0!=(16&e),onValueChange:t.bind(null,"code")},m.createElement(Dn,null)))},sa,da,sa,Qn,sa,ua,ea,ma,()=>{const e=Ot("insertHorizontalRule");return m.createElement(ra,{onClick:e.bind(null,!0)},m.createElement(qn,null))},ga,sa,ha,pa],Ca={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()}]},_a={markdownParse:{defaultVisitors:Qe,defaultSyntaxExtensions:tt,defaultMdastExtensions:et},lexicalConvert:{defaultVisitors:ze,defaultExtensions:Ge,defaultMarkdownOptions:Ye},defaultLexicalNodes:rt},Na=m.forwardRef((({markdown:e,headMarkdown:t,jsxComponentDescriptors:h=[],sandpackConfig:p=Ca,onChange:g,viewMode:E,linkAutocompleteSuggestions:v,imageAutoCompleteSuggestions:f,className:w,contentEditableClassName:x,toolbarComponents:k=ya,markdownParseOptions:{syntaxExtensions:b=Object.values(tt),mdastExtensions:y=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=m.useRef(null);return m.createElement("div",{className:d(Ft.editorRoot,Ft.editorWrapper,w),ref:L},m.createElement(n.LexicalComposer,{initialConfig:{editorState:()=>{nt({root:u.$getRoot(),visitors:C,mdastExtensions:y,markdown:e,syntaxExtensions:b})},namespace:"MDXEditor",theme:{...we,nodeDecoratorComponents:ba},nodes:S,onError:e=>console.error(e)}},m.createElement(At,{markdownSource:e,headMarkdown:t||e,jsxComponentDescriptors:h,sandpackConfig:p,onChange:g,viewMode:E,linkAutocompleteSuggestions:v,imageAutocompleteSuggestions:f,editorRootElementRef:L,toolbarComponents:k,markdownParseOptions:{visitors:C,mdastExtensions:y,syntaxExtensions:b},lexicalConvertOptions:{visitors:T,toMarkdownOptions:N,toMarkdownExtensions:_},lexicalNodes:S},m.createElement(fa,null),m.createElement(Mn,null,m.createElement(s.RichTextPlugin,{contentEditable:m.createElement(a.ContentEditable,{className:d(Ft.contentEditable,x)}),placeholder:m.createElement("div",null),ErrorBoundary:r})),m.createElement(l.LinkPlugin,null),m.createElement(o.HorizontalRulePlugin,null),m.createElement(i.ListPlugin,null),m.createElement(Jt,{maxDepth:7}),m.createElement(c.TabIndentationPlugin,null),m.createElement(jt,null),m.createElement(kn,null),m.createElement(Gt,null),m.createElement(Ta,{mdxRef:M}))))})),Ta=({mdxRef:e})=>{const[t]=Rt("markdownSource");return m.useImperativeHandle(e,(()=>({getMarkdown:()=>t})),[t]),null};Object.defineProperty(exports,"AdmonitionKind",{enumerable:!0,get:()=>u.AdmonitionKind}),exports.$createAdmonitionNode=oe,exports.$createCodeBlockNode=de,exports.$createFrontmatterNode=he,exports.$createImageNode=ve,exports.$createJsxNode=ye,exports.$createSandpackNode=Ne,exports.$createTableNode=He,exports.$isAdmonitionNode=le,exports.$isCodeBlockNode=ue,exports.$isFrontmatterNode=pe,exports.$isImageNode=fe,exports.$isJsxNode=Ce,exports.$isSandpackNode=Te,exports.$isTableNode=Le,exports.AdmonitionNode=re,exports.CodeBlockNode=ce,exports.FrontmatterNode=me,exports.ImageNode=Ee,exports.JsxNode=be,exports.MDXEditor=Na,exports.SandpackNode=_e,exports.TableNode=Me,exports.ToolbarComponents=va,exports.defaultMdxOptionValues=_a;