@mdxeditor/editor 0.8.0 → 0.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/{CodeBlockEditor-5ae8b0a9.cjs → CodeBlockEditor-6488d3ea.cjs} +1 -1
- package/dist/{CodeBlockEditor-59b65408.js → CodeBlockEditor-884743e8.js} +3 -2
- package/dist/{FrontmatterEditor-2b27f5a7.js → FrontmatterEditor-435d0430.js} +2 -1
- package/dist/FrontmatterEditor-95b69d31.cjs +1 -0
- package/dist/{ImageEditor-5f203a1c.js → ImageEditor-3725ebef.js} +2 -1
- package/dist/ImageEditor-43997418.cjs +1 -0
- package/dist/{JsxEditor-95724372.cjs → JsxEditor-1b8aa6c6.cjs} +1 -1
- package/dist/{JsxEditor-f061cc75.js → JsxEditor-b2e4afc2.js} +1 -1
- package/dist/LeafDirectiveEditor-792cbb83.js +59 -0
- package/dist/LeafDirectiveEditor-c0daefa4.cjs +1 -0
- package/dist/{SandpackEditor-ce901c3c.js → SandpackEditor-56a51f80.js} +8 -6
- package/dist/SandpackEditor-a09311db.cjs +1 -0
- package/dist/{SourceEditor-6135bf63.cjs → SourceEditor-1fc83319.cjs} +1 -1
- package/dist/{SourceEditor-e499b8bb.js → SourceEditor-32f2b4d8.js} +2 -1
- package/dist/{TableEditor-4d00f956.cjs → TableEditor-616848bc.cjs} +1 -1
- package/dist/{TableEditor-bb94be2b.js → TableEditor-777ac58a.js} +1 -1
- package/dist/index-51585eed.cjs +1 -0
- package/dist/{index-470693d8.js → index-d34aa66b.js} +366 -100
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +145 -13
- package/dist/index.js +23 -17
- package/dist/{useCodeMirrorRef-ff0c2781.js → useCodeMirrorRef-0def7994.js} +1 -1
- package/dist/{useCodeMirrorRef-72d8430b.cjs → useCodeMirrorRef-8f68c999.cjs} +1 -1
- package/package.json +1 -1
- package/dist/FrontmatterEditor-74ad4eb7.cjs +0 -1
- package/dist/ImageEditor-e5fd6b26.cjs +0 -1
- package/dist/SandpackEditor-37261889.cjs +0 -1
- package/dist/index-383c60bb.cjs +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var e=Object.defineProperty,t=(t,n,r)=>(((t,n,r)=>{n in t?e(t,n,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[n]=r})(t,"symbol"!=typeof n?n+"":n,r),r);const n=require("@lexical/react/LexicalComposer"),r=require("@lexical/react/LexicalContentEditable"),o=require("@lexical/react/LexicalErrorBoundary"),a=require("@lexical/react/LexicalHorizontalRulePlugin"),i=require("@lexical/react/LexicalLinkPlugin"),l=require("@lexical/react/LexicalListPlugin"),s=require("@lexical/react/LexicalRichTextPlugin"),c=require("@lexical/react/LexicalTabIndentationPlugin"),d=require("classnames"),u=require("lexical"),m=require("react"),p=require("@lexical/code"),g=require("@lexical/link"),h=require("@lexical/list"),E=require("@lexical/react/LexicalHorizontalRuleNode"),f=require("@lexical/rich-text"),v=require("mdast-util-directive"),_=require("mdast-util-from-markdown"),w=require("mdast-util-frontmatter"),k=require("mdast-util-gfm-table"),b=require("mdast-util-mdx"),x=require("micromark-extension-directive"),N=require("micromark-extension-frontmatter"),y=require("micromark-extension-gfm-table"),C=require("micromark-extension-mdxjs"),S=require("@lexical/utils"),T=require("@lexical/react/LexicalComposerContext"),L=require("@lexical/selection"),M=require("@lexical/react/LexicalHistoryPlugin"),A=require("mdast-util-to-markdown"),O=require("@radix-ui/react-popover"),D=require("@radix-ui/react-tooltip"),R=require("downshift"),I=require("@lexical/markdown"),P=require("@lexical/react/LexicalMarkdownShortcutPlugin"),H=require("react-diff-view"),V=require("unidiff"),$=require("@radix-ui/react-toolbar"),B=require("@radix-ui/react-select"),F=require("@radix-ui/react-dialog"),U=require("@lexical/react/LexicalNestedComposer");function K(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e)for(const n in e)if("default"!==n){const r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:()=>e[n]})}return t.default=e,Object.freeze(t)}const Z=K(m),j=K(O),z=K(D),q=K($),J=K(B),W=K(F);class G 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 G(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 Y(e.kind)}exportJSON(){return{...super.exportJSON(),type:"admonition"}}insertNewAfter(e,t){const n=Y();return this.insertAfter(n,t),n}collapseAtStart(){const e=u.$createParagraphNode();return this.getChildren().forEach((t=>e.append(t))),this.replace(e),!0}}function Y(e){return u.$applyNodeReplacement(new G(e))}function Q(e){return e instanceof G}function X(e,t){return t(e),e}function ee(){}class te extends u.DecoratorNode{constructor(e,n,r,o){super(o),t(this,"__code"),t(this,"__meta"),t(this,"__language"),t(this,"__focusEmitter",function(){let e=ee;return{publish:()=>{e()},subscribe:t=>{e=t}}}()),this.__code=e,this.__meta=r,this.__language=n}static getType(){return"codeblock"}static clone(e){return new te(e.__code,e.__language,e.__meta,e.__key)}static importJSON(e){const{code:t,meta:n,language:r}=e;return ne({code:t,language:r,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 ne(e){const{code:t,language:n,meta:r}=e;return new te(t,n,r)}function re(e){return e instanceof te}class oe extends u.DecoratorNode{constructor(e,n){super(n),t(this,"__yaml"),this.__yaml=e}static getType(){return"frontmatter"}static clone(e){return new oe(e.__yaml,e.__key)}static importJSON(e){const{yaml:t}=e;return ae(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 ae(e){return new oe(e)}function ie(e){return e instanceof oe}function le(e){if(e instanceof HTMLImageElement){const{alt:t,src:n,title:r}=e;return{node:ce({altText:t,src:n,title:r})}}return null}class se extends u.DecoratorNode{constructor(e,n,r,o){super(o),t(this,"__src"),t(this,"__altText"),t(this,"__title"),this.__src=e,this.__title=r,this.__altText=n}static getType(){return"image"}static clone(e){return new se(e.__src,e.__altText,e.__title,e.__key)}static importJSON(e){const{altText:t,title:n,src:r}=e;return ce({altText:t,title:n,src:r})}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:le,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(e,{theme:{nodeDecoratorComponents:{ImageEditor:t}}}){return m.createElement(t,{src:this.getSrc(),title:this.getTitle(),nodeKey:this.getKey()})}}function ce(e){const{altText:t,title:n,src:r,key:o}=e;return new se(r,t,n,o)}function de(e){return e instanceof se}const ue={text:{bold:"_bold_13nbk_10",italic:"_italic_13nbk_14",underline:"_underline_13nbk_18",code:"_code_13nbk_52",strikethrough:"_strikethrough_13nbk_34",subscript:"_subscript_13nbk_42",superscript:"_superscript_13nbk_47",underlineStrikethrough:"_underlineStrikethrough_13nbk_38"},list:{nested:{listitem:"_nestedListItem_13nbk_59"}},admonition:{danger:"_admonitionDanger_13nbk_63",info:"_admonitionInfo_13nbk_63",note:"_admonitionNote_13nbk_63",tip:"_admonitionTip_13nbk_63",caution:"_admonitionCaution_13nbk_63"}},me={type:"root",format:"left",indent:0,direction:"ltr",version:1,children:[{type:"paragraph",version:1,direction:"ltr",format:"left",indent:0,children:[]}]},pe={type:"root",format:"left",indent:0,direction:"ltr",version:1,children:[]};class ge extends u.DecoratorNode{constructor({name:e,kind:n,attributes:r,state:o,updateFn:a,key:i}){if(super(i),t(this,"__kind"),t(this,"__name"),t(this,"__attributes"),t(this,"__editor"),this.__name=e,this.__kind=n,this.__attributes=r,this.__editor=u.createEditor(),o){const e=this.__editor.parseEditorState(o);e.isEmpty()||this.__editor.setEditorState(e)}else if(a){const e=this.__editor.parseEditorState({root:"text"===this.getKind()?me:pe},(()=>{if("text"===this.getKind()){const e=u.$getRoot().getFirstChildOrThrow();a(e)}else a(u.$getRoot())}));e.isEmpty()||this.__editor.setEditorState(e)}}static getType(){return"jsx"}static clone(e){return new ge({name:e.__name,kind:e.__kind,attributes:e.__attributes,state:e.__editor.getEditorState().toJSON()})}static importJSON(e){const{name:t,kind:n,attributes:r,state:o}=e;return he({kind:n,name:t,attributes:r,state:o})}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:ue})}}function he(e){return new ge(e)}function Ee(e){return e instanceof ge}class fe extends u.DecoratorNode{constructor(e,n,r,o){super(o),t(this,"__code"),t(this,"__meta"),t(this,"__language"),t(this,"__focusEmitter",function(){let e=ee;return{publish:()=>{e()},subscribe:t=>{e=t}}}()),this.__code=e,this.__meta=r,this.__language=n}static getType(){return"sandpack"}static clone(e){return new fe(e.__code,e.__language,e.__meta,e.__key)}static importJSON(e){const{code:t,meta:n,language:r}=e;return ve({code:t,language:r,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 ve(e){const{code:t,language:n,meta:r}=e;return new fe(t,n,r)}function _e(e){return e instanceof fe}const we={type:"tableCell",children:[]};class ke extends u.DecoratorNode{constructor(e,n){super(n),t(this,"__mdastNode"),t(this,"focusEmitter",function(){let e=ee;return{publish:t=>{e(t)},subscribe:t=>{e=t}}}()),this.__mdastNode=e||{type:"table",children:[]}}static getType(){return"table"}static clone(e){return new ke(structuredClone(e.__mdastNode),e.__key)}static importJSON(e){return xe(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 r=this.getWritable().__mdastNode,o=r.children[t],a=o.children,i=a[e],l=Array.from(a),s={...i,children:n},c={...o,children:l};l[e]=s,r.children[t]=c}insertColumnAt(e){const t=this.getWritable().__mdastNode;for(let n=0;n<t.children.length;n++){const r=t.children[n],o=r.children,a=Array.from(o),i={...r,children:a};a.splice(e,0,structuredClone(we)),t.children[n]=i}t.align&&t.align.length>0&&t.align.splice(e,0,"left")}deleteColumnAt(e){const t=this.getWritable().__mdastNode;for(let n=0;n<t.children.length;n++){const r=t.children[n],o=r.children,a=Array.from(o),i={...r,children:a};a.splice(e,1),t.children[n]=i}}insertRowAt(e){const t=this.getWritable().__mdastNode,n={type:"tableRow",children:Array.from({length:this.getColCount()},(()=>structuredClone(we)))};t.children.splice(e,0,n)}deleteRowAt(e){this.getWritable().__mdastNode.children.splice(e,1)}addRowToBottom(){this.insertRowAt(this.getRowCount())}addColumnToRight(){this.insertColumnAt(this.getColCount())}setColumnAlign(e,t){const n=this.getWritable().__mdastNode;null==n.align&&(n.align=[]),n.align[e]=t}decorate(e,{theme:{nodeDecoratorComponents:{TableEditor:t}}}){return m.createElement(t,{lexicalTable:this,mdastNode:this.__mdastNode,parentEditor:e})}select(e){this.focusEmitter.publish(e)}isInline(){return!1}}function be(e){return e instanceof ke}function xe(e){return new ke(e)}class Ne extends u.DecoratorNode{constructor(e,n){super(n),t(this,"__mdastNode"),this.__mdastNode=e}static getType(){return"leafDirective"}static clone(e){return new Ne(structuredClone(e.__mdastNode))}static importJSON(e){return ye(e.mdastNode)}getMdastNode(){return this.__mdastNode}exportJSON(){return{mdastNode:this.getMdastNode(),type:"leafDirective",version:1}}createDOM(){return document.createElement("div")}updateDOM(){return!1}setMdastNode(e){this.getWritable().__mdastNode=e}decorate(e,{theme:{nodeDecoratorComponents:{LeafDirectiveEditor:t}}}){return m.createElement(t,{leafDirective:this,mdastNode:this.getMdastNode(),parentEditor:e})}isInline(){return!1}isKeyboardSelectable(){return!0}}function ye(e){return new Ne(e)}function Ce(e){return e instanceof Ne}const Se={testLexicalNode:u.$isRootNode,visitLexicalNode:({actions:e})=>{e.addAndStepInto("root")}},Te={testLexicalNode:u.$isParagraphNode,visitLexicalNode:({actions:e})=>{e.addAndStepInto("paragraph")}},Le={testLexicalNode:ie,visitLexicalNode:({actions:e,lexicalNode:t})=>{e.addAndStepInto("yaml",{value:t.getYaml()})}},Me={testLexicalNode:g.$isLinkNode,visitLexicalNode:({lexicalNode:e,actions:t})=>{t.addAndStepInto("link",{url:e.getURL(),title:e.getTitle()})}},Ae={testLexicalNode:f.$isHeadingNode,visitLexicalNode:({lexicalNode:e,actions:t})=>{const n=parseInt(e.getTag()[1],10);t.addAndStepInto("heading",{depth:n})}},Oe={testLexicalNode:h.$isListNode,visitLexicalNode:({lexicalNode:e,actions:t})=>{t.addAndStepInto("list",{ordered:"number"===e.getListType(),spread:!1})}},De={testLexicalNode:h.$isListItemNode,visitLexicalNode:({lexicalNode:e,mdastParent:t,actions:n})=>{const r=e.getChildren(),o=r[0];if(1===r.length&&h.$isListNode(o)){const r=t.children.at(-1);n.visitChildren(e,r)}else{const r=n.appendToParent(t,{type:"listItem",spread:!1,children:[{type:"paragraph",children:[]}]});n.visitChildren(e,r.children[0])}}},Re={testLexicalNode:f.$isQuoteNode,visitLexicalNode:({lexicalNode:e,mdastParent:t,actions:n})=>{const r=n.appendToParent(t,{type:"blockquote",children:[{type:"paragraph",children:[]}]});n.visitChildren(e,r.children[0])}},Ie={testLexicalNode:Q,visitLexicalNode:({mdastParent:e,lexicalNode:t,actions:n})=>{const r=n.appendToParent(e,{type:"containerDirective",name:t.getKind(),children:[{type:"paragraph",children:[]}]});n.visitChildren(t,r.children[0])}},Pe={testLexicalNode:_e,visitLexicalNode:({lexicalNode:e,actions:t})=>{t.addAndStepInto("code",{value:e.getCode(),lang:e.getLanguage(),meta:e.getMeta()})}},He={testLexicalNode:re,visitLexicalNode:({lexicalNode:e,actions:t})=>{t.addAndStepInto("code",{value:e.getCode(),lang:e.getLanguage(),meta:e.getMeta()})}};function Ve(e){return"text"===e.type}const $e={testLexicalNode:u.$isLineBreakNode,visitLexicalNode:({mdastParent:e,actions:t})=>{t.appendToParent(e,{type:"text",value:"\n"})}},Be={LexicalRootVisitor:Se,LexicalParagraphVisitor:Te,LexicalFrontmatterVisitor:Le,LexicalTextVisitor:{shouldJoin:(e,t)=>["text","emphasis","strong","mdxJsxTextElement"].includes(e.type)&&e.type===t.type,join:(e,t)=>Ve(e)&&Ve(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 r=e.getPreviousSibling(),o=u.$isTextNode(r)?r.getFormat():0,a=e.getTextContent(),i=e.getFormat()??0;if(16&i)return void n.addAndStepInto("inlineCode",{value:a});let l=t;o&i&2&&(l=n.appendToParent(l,{type:"emphasis",children:[]})),o&i&1&&(l=n.appendToParent(l,{type:"strong",children:[]})),o&i&8&&(l=n.appendToParent(l,{type:"mdxJsxTextElement",name:"u",children:[],attributes:[]})),2&i&&!(2&o)&&(l=n.appendToParent(l,{type:"emphasis",children:[]})),1&i&&!(1&o)&&(l=n.appendToParent(l,{type:"strong",children:[]})),8&i&&!(8&o)&&(l=n.appendToParent(l,{type:"mdxJsxTextElement",name:"u",children:[],attributes:[]})),n.appendToParent(l,{type:"text",value:a})}},LexicalLinebreakVisitor:$e,LexicalLinkVisitor:Me,LexicalHeadingVisitor:Ae,LexicalListVisitor:Oe,LexicalListItemVisitor:De,LexicalQuoteVisitor:Re,SandpackNodeVisitor:Pe,CodeBlockVisitor:He,LexicalThematicBreakVisitor:{testLexicalNode:E.$isHorizontalRuleNode,visitLexicalNode({actions:e}){e.addAndStepInto("thematicBreak")}},AdmonitionVisitor:Ie,LexicalImageVisitor:{testLexicalNode:de,visitLexicalNode({mdastParent:e,lexicalNode:t,actions:n}){n.appendToParent(e,{type:"image",url:t.getSrc(),alt:t.getAltText(),title:t.getTitle()})}},JsxVisitor:{testLexicalNode:Ee,visitLexicalNode({mdastParent:e,lexicalNode:t,actions:n}){const r="text"===t.getKind()?"mdxJsxTextElement":"mdxJsxFlowElement";n.registerReferredComponent(t.getName());const o={type:r,name:t.getName(),attributes:t.getAttributes(),children:[]};n.appendToParent(e,o),t.inNestedEditor((()=>{n.visitChildren(t,o)}))}},LexicalTableVisitor:{testLexicalNode:be,visitLexicalNode({actions:e,mdastParent:t,lexicalNode:n}){e.appendToParent(t,n.getMdastNode())}},LexicalLeafDirectiveVisitor:{testLexicalNode:Ce,visitLexicalNode({actions:e,mdastParent:t,lexicalNode:n}){e.appendToParent(t,n.getMdastNode())}}};function Fe({root:e,visitors:t,jsxComponentDescriptors:n}){let r=null;const o=new Set;function a(e){o.add(e)}function i(e,n){if(null===r)return r=n,r;if(!function(e){return e.children instanceof Array}(e))throw new Error("Attempting to append children to a non-parent");const o=e.children,a=o.at(-1);if(a){const e=t.find((e=>{var t;return null==(t=e.shouldJoin)?void 0:t.call(e,a,n)}));if(e){const t=e.join(a,n);return o.splice(o.length-1,1,t),t}}return o.push(n),n}function l(e,t){e.getChildren().forEach((e=>{s(e,t)}))}function s(e,n){var r;const o=t.find((t=>{var n;return null==(n=t.testLexicalNode)?void 0:n.call(t,e)}));if(!o)throw new Error(`no lexical visitor found for ${e.getType()}`,{cause:e});null==(r=o.visitLexicalNode)||r.call(o,{lexicalNode:e,mdastParent:n,actions:{addAndStepInto(t,r={},o=!0){const a={type:t,...r,...o?{children:[]}:{}};i(n,a),u.$isElementNode(e)&&o&&l(e,a)},appendToParent:i,visitChildren:l,registerReferredComponent:a}})}if(s(e,null),null===r)throw new Error("traversal ended with no root element");const c=new Map,d=new Map;for(const u of o){const e=n.find((e=>e.name===u));if(!e)throw new Error(`Component ${u} is used but not imported`);if(e.defaultExport)d.set(u,e.source);else{const{source:t}=e,n=c.get(t);n?n.push(u):c.set(t,[u])}}const m=Array.from(c).map((([e,t])=>({type:"mdxjsEsm",value:`import { ${t.join(", ")} } from '${e}'`})));m.push(...Array.from(d).map((([e,t])=>({type:"mdxjsEsm",value:`import ${e} from '${t}'`}))));const p=r,g=p.children.find((e=>"yaml"===e.type));return g?p.children.splice(p.children.indexOf(g)+1,0,...m):p.children.unshift(...m),Ze(p,[]),p}const Ue=/\s+$/,Ke=/^\s+/;function Ze(e,t){if("strong"===e.type||"emphasis"===e.type){const n=e.children.at(-1);if("text"===(null==n?void 0:n.type)){const r=n.value.match(Ue);if(r){n.value=n.value.replace(Ue,"");const o=t.at(-1);o&&(o.children.splice(o.children.indexOf(e)+1,0,{type:"text",value:r[0]}),Ze(o,t.slice(0,-1)))}}const r=e.children.at(0);if("text"===(null==r?void 0:r.type)){const n=r.value.match(Ke);if(n){r.value=r.value.replace(Ke,"");const o=t.at(-1);o&&(o.children.splice(o.children.indexOf(e),0,{type:"text",value:n[0]}),Ze(o,t.slice(0,-1)))}}}if(Object.hasOwn(e,"children")){const n=e;n.children.forEach((e=>Ze(e,[...t,n])))}}const je={mdxToMarkdown:b.mdxToMarkdown(),frontmatterToMarkdown:w.frontmatterToMarkdown("yaml"),directiveToMarkdown:v.directiveToMarkdown,gfmTableToMarkdown:k.gfmTableToMarkdown({tableCellPadding:!0,tablePipeAlign:!0})},ze={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}){h.$isListItemNode(t)||f.$isQuoteNode(t)||Q(t)?n.visitChildren(e,t):n.addAndStepInto(u.$createParagraphNode())}},MdastTextVisitor:{testNode:"text",visitNode({mdastNode:e,actions:t}){t.addAndStepInto(u.$createTextNode(e.value).setFormat(t.getParentFormatting()))}},MdastFormattingVisitor:{testNode:e=>"emphasis"===e.type||"strong"===e.type||"mdxJsxTextElement"===e.type&&"u"===(null==e?void 0:e.name),visitNode({mdastNode:e,lexicalParent:t,actions:n}){"emphasis"===e.type?n.addFormatting(2):"strong"===e.type?n.addFormatting(1):"mdxJsxTextElement"===e.type&&"u"===e.name&&n.addFormatting(8),n.visitChildren(e,t)}},MdastInlineCodeVisitor:{testNode:"inlineCode",visitNode({mdastNode:e,actions:t}){t.addAndStepInto(u.$createTextNode(e.value).setFormat(16))}},MdastLinkVisitor:{testNode:"link",visitNode({mdastNode:e,actions:t}){t.addAndStepInto(g.$createLinkNode(e.url,{title:e.title}))}},MdastHeadingVisitor:{testNode:"heading",visitNode:function({mdastNode:e,actions:t}){t.addAndStepInto(f.$createHeadingNode(`h${e.depth}`))}},MdastListVisitor:{testNode:"list",visitNode:function({mdastNode:e,lexicalParent:t,actions:n}){const r=h.$createListNode(e.ordered?"number":"bullet");if(h.$isListItemNode(t)){const e=h.$createListItemNode();e.append(r),t.insertAfter(e)}else t.append(r);n.visitChildren(e,r)}},MdastListItemVisitor:{testNode:"listItem",visitNode({actions:e}){e.addAndStepInto(h.$createListItemNode())}},MdastBlockQuoteVisitor:{testNode:"blockquote",visitNode({actions:e}){e.addAndStepInto(f.$createQuoteNode())}},MdastCodeVisitor:{testNode:"code",visitNode({mdastNode:e,actions:t}){var n;const r=(null==(n=e.meta)?void 0:n.startsWith("live"))?ve:ne;t.addAndStepInto(r({code:e.value,language:e.lang,meta:e.meta}))}},MdastThematicBreakVisitor:{testNode:"thematicBreak",visitNode({actions:e}){e.addAndStepInto(E.$createHorizontalRuleNode())}},MdastImageVisitor:{testNode:"image",visitNode({mdastNode:e,actions:t}){t.addAndStepInto(ce({src:e.url,altText:e.alt||"",title:e.title||""}))}},MdastFrontmatterVisitor:{testNode:"yaml",visitNode({mdastNode:e,actions:t}){t.addAndStepInto(ae(e.value))}},MdastAdmonitionVisitor:{testNode:"containerDirective",visitNode({mdastNode:e,actions:t}){t.addAndStepInto(Y(e.name))}},MdastMdxJsEsmVisitor:{testNode:"mdxjsEsm",visitNode(){}},MdastMdxJsxElementVisitor:{testNode:e=>"mdxJsxTextElement"===e.type||"mdxJsxFlowElement"===e.type,visitNode({lexicalParent:e,mdastNode:t,actions:n}){e.append(he({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(xe(e))}},MdastLeafDirectiveVisitor:{testNode:"leafDirective",visitNode({lexicalParent:e,mdastNode:t}){e.append(ye(t))}}};function Je(e){return e.children instanceof Array}const We={mdxFromMarkdown:b.mdxFromMarkdown(),frontmatterFromMarkdown:w.frontmatterFromMarkdown("yaml"),directiveFromMarkdown:v.directiveFromMarkdown,gfmTableFromMarkdown:k.gfmTableFromMarkdown},Ge={mdxjs:C.mdxjs(),frontmatter:N.frontmatter(),directive:x.directive(),gfmTable:y.gfmTable};function Ye({root:e,markdown:t,visitors:n,syntaxExtensions:r,mdastExtensions:o}){const a=_.fromMarkdown(t,{extensions:r,mdastExtensions:o});0===a.children.length&&a.children.push({type:"paragraph",children:[]}),Qe({root:e,mdastRoot:a,visitors:n})}function Qe({root:e,mdastRoot:t,visitors:n}){const r=new WeakMap;function o(e,t){if(!Je(e))throw new Error("Attempting to visit children of a non-parent");e.children.forEach((n=>a(n,t,e)))}function a(e,t,a){const i=n.find((t=>"string"==typeof t.testNode?t.testNode===e.type:t.testNode(e)));if(!i)throw new Error(`no MdastImportVisitor found for ${e.type}`,{cause:e});i.visitNode({mdastNode:e,lexicalParent:t,actions:{visitChildren:o,addAndStepInto(n){t.append(n),Je(e)&&o(e,n)},addFormatting(t){r.set(e,t|(r.get(a)??0))},getParentFormatting:()=>r.get(a)??0}})}a(t,e,null)}const Xe={ParagraphNode:u.ParagraphNode,LinkNode:g.LinkNode,HeadingNode:f.HeadingNode,QuoteNode:f.QuoteNode,ListNode:h.ListNode,ListItemNode:h.ListItemNode,HorizontalRuleNode:E.HorizontalRuleNode,ImageNode:se,SandpackNode:fe,CodeBlockNode:te,FrontmatterNode:oe,AdmonitionNode:G,JsxNode:ge,CodeNode:p.CodeNode,TableNode:ke,LeafDirectiveNode:Ne};function et(){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 tt(e,t){return e===t}class nt{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 rt{constructor(e=new Map){t(this,"map"),this.map=e}clone(){return new rt(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 ot=Symbol("NO_VALUE");function at(){const e=new nt,t=new Map,n=new nt,r=new Map,o=new Map,a={};function i(e=ot,t=!1){const n=et();return e!==ot&&r.set(n,e),!1!==t&&o.set(n,!0===t?tt:t),{key:n,toString:()=>n}}function l({key:t},n){const r=e.getOrCreate(t);return r.add(n),()=>r.delete(n)}function s({key:e},n){return t.set(e,n),()=>t.delete(e)}function c(...e){const[t]=e.slice(-1),n=e.slice(0,-1);return 1===n.length?l(n[0],t):function(e,t){const n=i();return g({map:e=>(...t)=>{e(t)},sink:n,sources:e}),l(n,t)}(n,t)}function d(e){const t=[],r=new Set,o=new nt,a=new rt,i=new nt;function l(e,s=0){a.increment(e),r.has(e)||(o.use(e,(e=>{s=Math.max(...Array.from(e).map((e=>t.indexOf(e))))+1})),n.use(e,(t=>{t.forEach((t=>{t.sources.has(e)?(i.getOrCreate(t.sink).add(t),l(t.sink,s)):o.getOrCreate(t.sink).add(e)}))})),r.add(e),t.splice(s,0,e))}return e.forEach((e=>l(e))),{participatingNodeKeys:t,pendingPulls:o,projections:i,refCount:a}}const u=new Map;function m(a){var i;const l=Object.keys(a),s=l.join(",");u.has(s)||u.set(s,d(l));const c=u.get(s),m=c.refCount.clone(),p=c.participatingNodeKeys.slice(),g=new Map(r);function h(e){n.use(e,(t=>{t.forEach((({sources:t,sink:n})=>{t.has(e)&&m.decrement(n,(()=>{p.splice(p.indexOf(n),1),h(n)}))}))}))}let E;for(;E=p.shift();){let n=!1;const l=e=>{o.has(E)&&o.get(E)(r.get(E),e)?n=!1:(n=!0,g.set(E,e),r.has(E)&&r.set(E,e))};if(Object.prototype.hasOwnProperty.call(a,E)?l(a[E]):c.projections.use(E,(e=>{e.forEach((e=>{const t=[...Array.from(e.sources),...Array.from(e.pulls)].map((e=>g.get(e)));e.map(l)(...t)}))})),n){const n=g.get(E);e.use(E,(e=>{e.forEach((e=>e(n)))})),null==(i=t.get(E))||i(n)}else h(E)}}function p(e){return new Set(e.map((e=>e.key)))}function g({sources:e,pulls:t=[],map:r,sink:{key:o}}){const a={map:r,pulls:p(t),sink:o,sources:p(e)};[...e,...t].forEach((({key:e})=>{n.getOrCreate(e).add(a)})),u.clear()}function h(...e){const t={};for(let n=0;n<e.length;n+=2){t[e[n].key]=e[n+1]}m(t)}function E(e){m(Object.entries(e).reduce(((e,[t,n])=>X(e,(e=>e[a[t].key]=n))),{}))}return{combine:function(...e){const t=i();return g({map:e=>(...t)=>e(t),sink:t,sources:e}),t},connect:g,debug:function(){Object.entries(a).forEach((([e,t])=>{r.get(t.key)}))},derive:function(e,t){return X(i(t,!0),(t=>{g({map:e=>t=>e(t),sink:t,sources:[e]})}))},getKeyValue:function(e){return r.get(a[e].key)},getValue:function(e){return r.get(e.key)},getKeyValues:function(e){return e.map((e=>r.get(a[e].key)))},label:function(e){Object.assign(a,e)},labels:a,link:function(e,t){g({map:e=>t=>e(t),sink:t,sources:[e]})},node:i,o:{delayWithMicrotask:function(){return e=>{const t=i();return c(e,(e=>queueMicrotask((()=>h(t,e))))),t}},debounceTime:function(e){return t=>{const n=i();let r,o;return c(t,(t=>{r=t,o&&clearTimeout(o),o=setTimeout((()=>{h(n,r)}),e)})),n}},filter:function(e){return t=>{const n=i();return g({map:t=>n=>e(n)&&t(n),sink:n,sources:[t]}),n}},map:function(e){return t=>{const n=i();return g({map:t=>n=>{t(e(n))},sink:n,sources:[t]}),n}},mapTo:function(e){return t=>{const n=i();return g({map:t=>()=>t(e),sink:n,sources:[t]}),n}},onNext:function(e){return t=>{const n=i();let r=ot;return c(t,(e=>r=e)),g({map:e=>t=>{r!==ot&&(e([r,t]),r=ot)},sink:n,sources:[e]}),n}},scan:function(e,t){return n=>{const r=i();return g({map:n=>r=>n(t=e(t,r)),sink:r,sources:[n]}),r}},throttleTime:function(e){return t=>{const n=i();let r,o;return c(t,(t=>{r=t,o||(o=setTimeout((()=>{o=void 0,h(n,r)}),e))})),n}},withLatestFrom:function(...e){return t=>{const n=i();return g({map:e=>(...t)=>e(t),pulls:e,sink:n,sources:[t]}),n}},once:function(){return e=>{const t=i();let n=!1;return g({map:e=>t=>{n||(n=!0,e(t))},sink:t,sources:[e]}),t}},passOnlyAfterNodeHasEmittedBefore:function(e,t){return n=>{const o=i();let a=0;return c(e,(()=>a=Date.now())),g({map:e=>n=>{Date.now()<a+r.get(t.key)&&e(n)},sink:o,sources:[n]}),o}}},pipe:function(e,...t){for(const n of t)e=n(e);return e},pub:h,pubIn:m,pubKey:function(e,t){E({[e]:t})},pubKeys:E,resetSingletonSubs:function(){t.clear()},singletonSub:s,singletonSubKey:function(e,t){return s(a[e],t)},spread:function(e,t){return t.map(((t,n)=>X(i(t,!0),(t=>{g({map:e=>t=>{e(t[n])},sink:t,sources:[e]})}))))},sub:c,subKey:function(e,t){return c(a[e],t)},subKeys:function(e,t){return c(...e.map((e=>a[e])).concat(t))}}}const it="undefined"!=typeof document?Z.useLayoutEffect:Z.useEffect,lt=m.createContext(void 0);function st(e,t=[],n=et()){return[{constructor:e,dependencies:t,id:n},{id:n}]}const ct=new Map([["number",h.INSERT_ORDERED_LIST_COMMAND],["bullet",h.INSERT_UNORDERED_LIST_COMMAND],["",h.REMOVE_LIST_COMMAND]]);const[dt,ut]=st((e=>{const t=e.node(null,!0),n=e.node(""),r=e.node(),o=e.node(M.createEmptyHistoryState()),a=e.derive(t,null),i=e.node(0,!0),l=e.node(null),s=e.node(null),c=e.node(null),d=e.node(),m=e.node(),p=e.node(),g=e.node(),v=e.node(),_=e.node(),w=e.node(),k=e.node(),b=e.node([]),x=e.node(!1,!0),N=e.node({type:"lexical"}),y=e.node(null),C=e.node(null),T=e.node([]),A=e.node(null),O=e.node([]),D=e.node([]),R=e.node((e=>{throw new Error("Image upload handling is not implemented")}));function I(){const t=u.$getSelection();u.$isRangeSelection(t)&&e.pubKeys({currentSelection:t,currentFormat:t.format})}return e.link(e.pipe(k,e.o.withLatestFrom(b),e.o.map((([e,t])=>[...t,e]))),b),e.sub(e.pipe(r,e.o.withLatestFrom(t,C)),(([t,r,o])=>{e.pub(n,t),null==r||r.update((()=>{u.$getRoot().clear(),Ye({root:u.$getRoot(),markdown:t,...o})}))})),e.sub(e.pipe(m,e.o.withLatestFrom(a)),(([e,t])=>{null==t||t.dispatchCommand(ct.get(e),void 0)})),e.sub(e.pipe(d,e.o.withLatestFrom(a)),(([e,t])=>{null==t||t.dispatchCommand(u.FORMAT_TEXT_COMMAND,e)})),e.sub(e.pipe(g,e.o.withLatestFrom(a)),(([,e])=>{null==e||e.dispatchCommand(E.INSERT_HORIZONTAL_RULE_COMMAND,void 0)})),e.sub(e.pipe(w,e.o.withLatestFrom(a)),(([e,t])=>{null==t||t.update((()=>{const t=ce({altText:"",src:e,title:""});u.$insertNodes([t]),u.$isRootOrShadowRoot(t.getParentOrThrow())&&S.$wrapNodeInElement(t,u.$createParagraphNode).selectEnd()}))})),e.sub(e.pipe(_,e.o.withLatestFrom(a)),(([,e])=>{null==e||e.update((()=>{const e=u.$getRoot().getFirstChild();if(!ie(e)){const t=ae('"": ""');e?e.insertBefore(t):u.$getRoot().append(t)}}))})),e.sub(e.pipe(v,e.o.withLatestFrom(a)),(([,e])=>{null==e||e.getEditorState().read((()=>{const t=u.$getSelection();if(u.$isRangeSelection(t)){null!==t.focus.getNode()&&e.update((()=>{const e=xe({type:"table",children:[{type:"tableRow",children:[{type:"tableCell",children:[]}]}]});S.$insertNodeToNearestRoot(e),setTimeout((()=>{e.select([0,0])}),50)}))}}))})),e.sub(e.pipe(p,e.o.withLatestFrom(a)),(([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,(()=>f.$createQuoteNode()))}))})(t);break;case"note":case"tip":case"danger":case"caution":case"info":((e,t)=>{e.update((()=>{const e=u.$getSelection();(u.$isRangeSelection(e)||u.DEPRECATED_$isGridSelection(e))&&L.$setBlocksType(e,(()=>Y(t)))}))})(t,e);break;default:((e,t)=>{e.update((()=>{const e=u.$getSelection();(u.$isRangeSelection(e)||u.DEPRECATED_$isGridSelection(e))&&L.$setBlocksType(e,(()=>f.$createHeadingNode(t)))}))})(t,e)}})),e.sub(e.pipe(l,e.o.withLatestFrom(a)),(([t,n])=>{if(!t||!n)return;const r=t.anchor.getNode();let o="root"===r.getKey()?r:S.$findMatchingParent(r,(e=>{const t=e.getParent();return null!==t&&u.$isRootOrShadowRoot(t)}));null===o&&(o=r.getTopLevelElementOrThrow());const a=o.getKey();if(null!==n.getElementByKey(a))if(h.$isListNode(o)){const t=S.$getNearestNodeOfType(r,h.ListNode),n=t?t.getListType():o.getListType();e.pubIn({[s.key]:n,[c.key]:""})}else{e.pub(s,null);const t=f.$isHeadingNode(o)?o.getTag():Q(o)?o.getKind():o.getType();e.pubIn({[s.key]:null,[c.key]:t})}})),e.sub(t,(t=>{t&&t.registerCommand(u.SELECTION_CHANGE_COMMAND,((t,n)=>(e.pubIn({[a.key]:n,[x.key]:!0}),I(),!1)),u.COMMAND_PRIORITY_CRITICAL)})),e.pipe(e.combine(b,a),e.o.scan(((n,[r,o])=>(n.forEach((e=>e())),o?r.map((n=>n(o,e.getValue(t)))):[])),[])),e.pub(k,(e=>e.registerUpdateListener((({editorState:e})=>{e.read((()=>{I()}))})))),e.pub(k,(n=>n.registerCommand(u.BLUR_COMMAND,(n=>{var r;return!(null==(r=e.getValue(t).getRootElement())?void 0:r.contains(n.relatedTarget))&&e.pub(x,!1),!1}),u.COMMAND_PRIORITY_LOW))),e.pub(k,(t=>t.registerCommand(u.PASTE_COMMAND,(t=>{var n;let r=Array.from((null==(n=t.clipboardData)?void 0:n.items)||[]);if(r=r.filter((e=>/image/.test(e.type))),!r.length||0===r.length)return!1;const o=e.getValue(R);return Promise.all(r.map((e=>o(e.getAsFile())))).then((t=>{t.forEach((t=>{e.pub(w,t)}))})).catch((e=>{throw e})),!0}),u.COMMAND_PRIORITY_CRITICAL))),{editor:t,activeEditor:a,currentFormat:i,currentSelection:l,currentListType:s,currentBlockType:c,applyFormat:d,applyListType:m,applyBlockType:p,insertHorizontalRule:g,insertFrontmatter:_,insertImage:w,insertTable:v,createEditorSubscription:k,editorSubscriptions:b,activeEditorType:N,inFocus:x,historyState:o,editorRootElementRef:y,markdownParseOptions:C,lexicalConvertOptions:A,lexicalNodes:O,imageAutocompleteSuggestions:D,markdownSource:n,setMarkdown:r,imageUploadHandler:R,customLeafDirectiveEditors:T}}),[]),[mt,pt]=st((e=>({jsxComponentDescriptors:e.node([])})),[]),[gt]=st(((e,[{markdownSource:t,setMarkdown:n},{}])=>{const r=e.node("editor"),o=e.node(""),a=e.node("");return e.link(t,a),e.sub(e.pipe(r,e.o.scan(((e,t)=>({current:e.next,next:t})),{current:"editor",next:"editor"}),e.o.withLatestFrom(a)),(([{current:t},r])=>{"markdown"===t&&e.pub(n,r)})),{viewMode:r,markdownSourceFromEditor:a,headMarkdown:o}}),[ut,pt]),ht={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'}]},Et={js:"JavaScript",ts:"TypeScript",tsx:"TypeScript (React)",jsx:"JavaScript (React)",css:"CSS"},[ft]=st(((e,[{activeEditor:t,activeEditorType:n,createEditorSubscription:r}])=>{const o=e.node(ht),a=e.node(Et),i=e.node(),l=e.node();return e.pub(r,(t=>t.registerCommand(u.FOCUS_COMMAND,(()=>(e.pub(n,{type:"lexical"}),!1)),u.COMMAND_PRIORITY_LOW))),e.sub(e.pipe(i,e.o.withLatestFrom(t,o)),(([e,t,n])=>{null==t||t.getEditorState().read((()=>{const r=u.$getSelection();if(u.$isRangeSelection(r)){const o=r.focus.getNode(),a=e?n.presets.find((t=>t.meta===e)):n.presets.find((e=>e.name==n.defaultPreset));if(!a)throw new Error(`No sandpack preset found with ${e}`);null!==o&&t.update((()=>{const e=ve({code:a.initialSnippetContent||"",language:a.snippetLanguage||"jsx",meta:a.meta});S.$insertNodeToNearestRoot(e),setTimeout((()=>e.select()),80)}))}}))})),e.sub(e.pipe(l,e.o.withLatestFrom(t)),(([,e])=>{null==e||e.getEditorState().read((()=>{const t=u.$getSelection();if(u.$isRangeSelection(t)){null!==t.focus.getNode()&&e.update((()=>{const e=ne({code:"",language:"jsx",meta:""});S.$insertNodeToNearestRoot(e),setTimeout((()=>e.select()),80)}))}}))})),{codeBlockLanguages:a,insertSandpack:i,insertCodeBlock:l,sandpackConfig:o}}),[ut]),vt="undefined"!=typeof window&&void 0!==window.document&&void 0!==window.document.createElement,_t=vt&&/Mac|iPod|iPhone|iPad/.test(navigator.platform);function wt(e){const t=u.$getSelection(),n=window.getSelection(),r=document.activeElement,o=e.getRootElement();if(null!==t&&null!==n&&null!==o&&o.contains(n.anchorNode)&&e.isEditable()){const e=n.getRangeAt(0);let t;if(n.anchorNode===o){let e=o;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 r&&r.className,null}function kt(e,t){return X({markdown:""},(n=>{e.getEditorState().read((()=>{n.markdown=function({root:e,toMarkdownOptions:t,toMarkdownExtensions:n,visitors:r,jsxComponentDescriptors:o}){return A.toMarkdown(Fe({root:e,visitors:r,jsxComponentDescriptors:o}),{extensions:n,...t})}({root:u.$getRoot(),...t})}))})).markdown}function bt(e){const t=function(e){const t=e.anchor,n=e.focus,r=e.anchor.getNode(),o=e.focus.getNode();return r===o?r:e.isBackward()?L.$isAtNodeEnd(n)?r:o:L.$isAtNodeEnd(t)?r:o}(e),n=t.getParent();return g.$isLinkNode(n)?n:g.$isLinkNode(t)?t:null}const[xt,Nt]=st(((e,[{activeEditor:t,currentSelection:n,createEditorSubscription:r}])=>{const o=e.node(!1),a=e.node(),i=e.node({type:"inactive"},!0),l=e.node(),s=e.node(),c=e.node(),d=e.node(),m=e.node(),p=e.node(),h=e.node([]);return e.sub(e.pipe(p,e.o.withLatestFrom(n,t),e.o.filter((([,e])=>u.$isRangeSelection(e)))),(([,t,n])=>{null==n||n.getEditorState().read((()=>{const r=bt(t),o=wt(n);r?e.pub(i,{type:"edit",initialUrl:r.getURL(),url:r.getURL(),linkNodeKey:r.getKey(),rectangle:o}):e.pub(i,{type:"edit",initialUrl:"",url:"",linkNodeKey:"",rectangle:o})}))})),e.sub(e.pipe(m,e.o.withLatestFrom(t)),(([,e])=>{null==e||e.dispatchCommand(g.TOGGLE_LINK_COMMAND,null)})),e.pub(r,(t=>t.registerCommand(u.KEY_ESCAPE_COMMAND,(()=>"preview"===e.getValue(i).type&&(e.pub(i,{type:"inactive"}),!0)),u.COMMAND_PRIORITY_LOW))),e.pub(r,(t=>t.registerCommand(u.KEY_MODIFIER_COMMAND,(t=>!("k"!==t.key||!(_t?t.metaKey:t.ctrlKey))&&(e.pub(p,!0),!0)),u.COMMAND_PRIORITY_HIGH))),e.link(e.pipe(d,e.o.withLatestFrom(i),e.o.map((([,e])=>{if("preview"===e.type)return{type:"edit",initialUrl:e.url,url:e.url,linkNodeKey:e.linkNodeKey,rectangle:e.rectangle};throw new Error("Cannot switch to edit mode when not in preview mode")}))),i),e.sub(e.pipe(c,e.o.withLatestFrom(i,t)),(([,t,n])=>{if("edit"!==t.type)throw new Error("Cannot apply link edit when not in edit mode");{const r=t.url.trim();""!==r.trim()?(null==n||n.dispatchCommand(g.TOGGLE_LINK_COMMAND,r),e.pub(i,{type:"preview",linkNodeKey:t.linkNodeKey,rectangle:t.rectangle,url:r})):(""!==t.initialUrl&&(null==n||n.dispatchCommand(g.TOGGLE_LINK_COMMAND,null)),e.pub(i,{type:"inactive"}))}})),e.link(e.pipe(l,e.o.withLatestFrom(i),e.o.map((([e,t])=>{if("edit"===t.type)return{...t,url:e};throw new Error("Cannot update link url when not in edit mode")}))),i),e.link(e.pipe(s,e.o.withLatestFrom(i,t),e.o.map((([,e,t])=>{if("edit"===e.type)return null==t||t.focus(),""===e.initialUrl?{type:"inactive"}:{type:"preview",url:e.initialUrl,linkNodeKey:e.linkNodeKey,rectangle:e.rectangle};throw new Error("Cannot cancel edit when not in edit mode")}))),i),e.link(e.pipe(e.combine(n,a),e.o.withLatestFrom(t,i),e.o.map((([[e],t])=>{if(u.$isRangeSelection(e)&&t){const n=bt(e);return n?{type:"preview",url:n.getURL(),linkNodeKey:n.getKey(),rectangle:wt(t)}:{type:"inactive"}}return{type:"inactive"}}))),i),{dialogState:o,onWindowChange:a,linkDialogState:i,updateLinkUrl:l,switchFromPreviewToLinkEdit:d,cancelLinkEdit:s,removeLink:m,openLinkEditDialog:p,applyLinkChanges:c,linkAutocompleteSuggestions:h}}),[ut]),[yt,Ct]=st(((e,[{createEditorSubscription:t,lexicalConvertOptions:n,markdownSource:r},{jsxComponentDescriptors:o}])=>{const a=e.node();return e.pub(t,((t,i)=>{function l(){const t=e.getValue(o),l=e.getValue(n),s=kt(i,{jsxComponentDescriptors:t,...l});e.pub(a,s),e.pub(r,s)}return l(),i.registerUpdateListener((({dirtyElements:e,dirtyLeaves:t,prevEditorState:n,tags:r})=>{0===e.size&&0===t.size||r.has("history-merge")||n.isEmpty()||l()}))})),{onChange:a}}),[ut,pt]),[St,Tt]=st((e=>({toolbarComponents:e.node([])})),[]),{Component:Lt,usePublisher:Mt,useEmitterValues:At}=function(e,t,n){const r=Object.keys(t.required||{}),o=Object.keys(t.optional||{}),a=Object.keys(t.methods||{}),i=Object.keys(t.events||{}),l=lt;function s(e,n){const a={};for(const o of r){a[t.required[o]]=n[o]}for(const r of o){const e=n[r];if(void 0!==e){a[t.optional[r]]=e}}e.suppressFlushSync=!0,e.pubKeys(a),e.suppressFlushSync=!1}const c=m.forwardRef(((c,d)=>{const u=m.useMemo((()=>X(e(),(e=>s(e,c)))),[]);var p;it((()=>{s(u,c),u.resetSingletonSubs();for(const e of i)e in c&&u.singletonSubKey(t.events[e],c[e]);return()=>{u.resetSingletonSubs()}}),[c]),m.useImperativeHandle(d,(p=function(e){return a.reduce(((n,r)=>{const o=t.methods[r];return n[r]=t=>{e.pubKey(o,t)},n}),{})}(u),()=>p));const g=c.children;return m.createElement(l.Provider,{value:u},n?m.createElement(n,function(e,t){const n={},r={};let o=0;const a=e.length;for(;o<a;)r[e[o]]=1,o+=1;for(const i in t)Object.prototype.hasOwnProperty.call(r,i)||(n[i]=t[i]);return n}([...r,...o,...i],c),g):g)}));return c.displayName="Gurx Component",{Component:c,useEmitter:(e,t)=>{const n=m.useContext(l);it((()=>n.subKey(e,t)),[t])},useEmitterValues:(...e)=>{const t=m.useContext(l),[n,r]=m.useState((()=>t.getKeyValues(e)));return it((()=>null==t?void 0:t.subKeys(e,(n=>{const o=()=>{r(1===e.length?[n]:n)};t.suppressFlushSync,o()}))),[e]),n},usePubKeys:()=>m.useContext(l).pubKeys,usePublisher:e=>{const t=Z.useContext(l);return m.useCallback((n=>{t.pubKey(e,n)}),[e,t])}}}(function(...e){return()=>function(...e){const t=new Map,n=at(),r=({id:o,constructor:a,dependencies:i})=>{if(t.has(o))return t.get(o);const l=a(n,i.map((t=>r(e.find((e=>e.id===t.id))))));return n.label(l),t.set(o,l),l};return e.forEach(r),n}(...e)}(dt,gt,ft,xt,mt,yt,St),{required:{markdownSource:"markdownSource",headMarkdown:"headMarkdown",jsxComponentDescriptors:"jsxComponentDescriptors",sandpackConfig:"sandpackConfig",toolbarComponents:"toolbarComponents",markdownParseOptions:"markdownParseOptions",lexicalConvertOptions:"lexicalConvertOptions",lexicalNodes:"lexicalNodes"},optional:{imageUploadHandler:"imageUploadHandler",editorRootElementRef:"editorRootElementRef",viewMode:"viewMode",linkAutocompleteSuggestions:"linkAutocompleteSuggestions",imageAutocompleteSuggestions:"imageAutocompleteSuggestions",codeBlockLanguages:"codeBlockLanguages",customLeafDirectiveEditors:"customLeafDirectiveEditors"},events:{onChange:"onChange"}},(({children:e})=>m.createElement("div",null,m.createElement(Ot,null),e))),Ot=()=>{const e=Mt("editor"),[t]=T.useLexicalComposerContext();return m.useEffect((()=>e(t)),[t,e]),null},Dt=e=>Z.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Z.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Z.createElement("path",{d:"M0 0h24v24H0z"})),Z.createElement("g",{mask:"url(#a)"},Z.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"}))),Rt=e=>Z.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Z.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Z.createElement("path",{d:"M0 0h24v24H0z"})),Z.createElement("g",{mask:"url(#a)"},Z.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"}))),It=e=>Z.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Z.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Z.createElement("path",{d:"M0 0h24v24H0z"})),Z.createElement("g",{mask:"url(#a)"},Z.createElement("path",{d:"M7 18V2h13v16H7Zm2-2h9V4H9v12Zm-6 6V6h2v14h11v2H3Z"}))),Pt=e=>Z.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Z.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Z.createElement("path",{d:"M0 0h24v24H0z"})),Z.createElement("g",{mask:"url(#a)"},Z.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"}))),Ht=e=>Z.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Z.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Z.createElement("path",{d:"M0 0h24v24H0z"})),Z.createElement("g",{mask:"url(#a)"},Z.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"}))),Vt=e=>Z.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Z.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Z.createElement("path",{d:"M0 0h24v24H0z"})),Z.createElement("g",{mask:"url(#a)"},Z.createElement("path",{d:"M3 21V3h9v2H5v14h14v-7h2v9H3Zm6.7-5.3-1.4-1.4L17.6 5H14V3h7v7h-2V6.4l-9.3 9.3Z"}))),$t=e=>Z.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Z.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Z.createElement("path",{d:"M0 0h24v24H0z"})),Z.createElement("g",{mask:"url(#a)"},Z.createElement("path",{d:"m12 15-5-5h10l-5 5Z"}))),Bt={editorRoot:"_editorRoot_3tbtr_47",dropZone:"_dropZone_3tbtr_141",editorWrapper:"_editorWrapper_3tbtr_149",nestedListItem:"_nestedListItem_3tbtr_153",toolbarRoot:"_toolbarRoot_3tbtr_157",toolbarModeSwitch:"_toolbarModeSwitch_3tbtr_178",toolbarToggleItem:"_toolbarToggleItem_3tbtr_187",toolbarGroupOfGroups:"_toolbarGroupOfGroups_3tbtr_197",toolbarToggleSingleGroup:"_toolbarToggleSingleGroup_3tbtr_201",toolbarButton:"_toolbarButton_3tbtr_215",toolbarNodeKindSelectContainer:"_toolbarNodeKindSelectContainer_3tbtr_244",toolbarButtonDropdownContainer:"_toolbarButtonDropdownContainer_3tbtr_245",toolbarCodeBlockLanguageSelectContent:"_toolbarCodeBlockLanguageSelectContent_3tbtr_246",toolbarNodeKindSelectTrigger:"_toolbarNodeKindSelectTrigger_3tbtr_260",toolbarButtonSelectTrigger:"_toolbarButtonSelectTrigger_3tbtr_261",toolbarCodeBlockLanguageSelectTrigger:"_toolbarCodeBlockLanguageSelectTrigger_3tbtr_294",toolbarNodeKindSelectItem:"_toolbarNodeKindSelectItem_3tbtr_300",toolbarNodeKindSelectDropdownArrow:"_toolbarNodeKindSelectDropdownArrow_3tbtr_323",contentEditable:"_contentEditable_3tbtr_327",sandpackWrapper:"_sandpackWrapper_3tbtr_335",frontmatterWrapper:"_frontmatterWrapper_3tbtr_339",frontmatterToggleButton:"_frontmatterToggleButton_3tbtr_349",frontmatterEditorTable:"_frontmatterEditorTable_3tbtr_357",iconButton:"_iconButton_3tbtr_375",frontmatterInput:"_frontmatterInput_3tbtr_381",primaryButton:"_primaryButton_3tbtr_396",linkDialogEditForm:"_linkDialogEditForm_3tbtr_406",linkDialogInputContainer:"_linkDialogInputContainer_3tbtr_412",linkDialogInputWrapper:"_linkDialogInputWrapper_3tbtr_418",linkDialogInput:"_linkDialogInput_3tbtr_412",linkDialogAutocompleteContainer:"_linkDialogAutocompleteContainer_3tbtr_448",linkDialogAnchor:"_linkDialogAnchor_3tbtr_493",linkDialogPopoverContent:"_linkDialogPopoverContent_3tbtr_507",tableColumnEditorPopoverContent:"_tableColumnEditorPopoverContent_3tbtr_507",dialogContent:"_dialogContent_3tbtr_507",linkDialogPreviewAnchor:"_linkDialogPreviewAnchor_3tbtr_521",tooltipContent:"_tooltipContent_3tbtr_543",actionButton:"_actionButton_3tbtr_557",primaryActionButton:"_primaryActionButton_3tbtr_563",tableEditor:"_tableEditor_3tbtr_572",toolCell:"_toolCell_3tbtr_583",tableColumnEditorTrigger:"_tableColumnEditorTrigger_3tbtr_600",tableRowEditorTrigger:"_tableRowEditorTrigger_3tbtr_600",addRowButton:"_addRowButton_3tbtr_600",addColumnButton:"_addColumnButton_3tbtr_600",tableColumnEditorToolbar:"_tableColumnEditorToolbar_3tbtr_634",toggleGroupRoot:"_toggleGroupRoot_3tbtr_646",tableToolsColumn:"_tableToolsColumn_3tbtr_663",leftAlignedCell:"_leftAlignedCell_3tbtr_671",rightAlignedCell:"_rightAlignedCell_3tbtr_675",centeredCell:"_centeredCell_3tbtr_679",dialogOverlay:"_dialogOverlay_3tbtr_707",overlayShow:"_overlayShow_3tbtr_1",contentShow:"_contentShow_3tbtr_1",focusedImage:"_focusedImage_3tbtr_749",imageWrapper:"_imageWrapper_3tbtr_753"};u.createCommand();const Ft=20;function Ut({initialUrl:e,onSubmit:t,onCancel:n,linkAutocompleteSuggestions:r}){const[o,a]=m.useState(r.slice(0,Ft)),{isOpen:i,getToggleButtonProps:l,getMenuProps:s,getInputProps:c,highlightedIndex:u,getItemProps:p,selectedItem:g}=R.useCombobox({initialInputValue:e,onInputValueChange({inputValue:e}){e=(null==e?void 0:e.toLowerCase())||"";const t=[];for(const n of r)if(n.toLowerCase().includes(e)&&(t.push(n),t.length>=Ft))break;a(t)},items:o,itemToString:e=>e??""}),h=m.useCallback((e=>{var n;"Escape"===e.key?null==(n=e.target.form)||n.reset():"Enter"!==e.key||i&&0!==o.length||(e.preventDefault(),t(e.target.value))}),[i,o,t]),E=c(),f={...E,onKeyDown:e=>{h(e),E.onKeyDown(e)}},v=i&&o.length>0;return m.createElement("form",{onSubmit:e=>{e.preventDefault(),t(g||"")},onReset:n,className:d(Bt.linkDialogEditForm)},m.createElement("div",{className:Bt.linkDialogInputContainer},m.createElement("div",{"data-visible-dropdown":v,className:Bt.linkDialogInputWrapper},m.createElement("input",{className:Bt.linkDialogInput,...f,autoFocus:!0,size:30,"data-editor-dialog":!0}),m.createElement("button",{"aria-label":"toggle menu",type:"button",...l()},m.createElement($t,null))),m.createElement("div",{className:Bt.linkDialogAutocompleteContainer},m.createElement("ul",{...s(),"data-visible":v},o.map(((e,t)=>m.createElement("li",{"data-selected":g===e,"data-highlighted":u===t,key:`${e}${t}`,...p({item:e,index:t})},e)))))),m.createElement(Zt,{type:"submit",title:"Set URL","aria-label":"Set URL"},m.createElement(Dt,null)),m.createElement(Zt,{type:"reset",title:"Cancel change","aria-label":"Cancel change"},m.createElement(Rt,null)))}function Kt(){const[e]=At("editorRootElementRef"),t=Mt("onWindowChange"),[n,r,o]=At("linkDialogState","linkAutocompleteSuggestions","activeEditor"),a=Mt("updateLinkUrl"),i=Mt("cancelLinkEdit"),l=Mt("switchFromPreviewToLinkEdit"),s=Mt("removeLink"),c=Mt("applyLinkChanges");m.useEffect((()=>{const e=()=>{null==o||o.getEditorState().read((()=>{t(!0)}))};return window.addEventListener("resize",e),window.addEventListener("scroll",e),()=>{window.removeEventListener("resize",e),window.removeEventListener("scroll",e)}}),[o,t]);const[u,p]=m.useState(!1),g=null==n?void 0:n.rectangle,h=m.useCallback((e=>{a(e),c(!0)}),[c,a]),E="preview"===n.type&&n.url.startsWith("http");return m.createElement(j.Root,{open:"inactive"!==n.type},m.createElement(j.Anchor,{"data-visible":"edit"===n.type,className:Bt.linkDialogAnchor,style:{top:null==g?void 0:g.top,left:null==g?void 0:g.left,width:null==g?void 0:g.width,height:null==g?void 0:g.height}}),m.createElement(j.Portal,{container:null==e?void 0:e.current},m.createElement(j.Content,{className:d(Bt.linkDialogPopoverContent),sideOffset:5,onOpenAutoFocus:e=>e.preventDefault(),key:n.linkNodeKey},"edit"===n.type&&m.createElement(Ut,{initialUrl:n.url,onSubmit:h,onCancel:i.bind(null,!0),linkAutocompleteSuggestions:r}),"preview"===n.type&&m.createElement(m.Fragment,null,m.createElement("a",{className:Bt.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(Vt,null)),m.createElement(Zt,{onClick:()=>l(!0),title:"Edit link URL","aria-label":"Edit link URL"},m.createElement(Pt,null)),m.createElement(z.Provider,null,m.createElement(z.Root,{open:u},m.createElement(z.Trigger,{asChild:!0},m.createElement(Zt,{title:"Copy to clipboard","aria-label":"Copy link URL",onClick:()=>{window.navigator.clipboard.writeText(n.url).then((()=>{p(!0),setTimeout((()=>p(!1)),1e3)}))}},u?m.createElement(Dt,null):m.createElement(It,null))),m.createElement(z.Portal,{container:null==e?void 0:e.current},m.createElement(z.Content,{className:d(Bt.tooltipContent),sideOffset:5},"Copied!",m.createElement(z.Arrow,null))))),m.createElement(Zt,{title:"Remove link","aria-label":"Remove link",onClick:()=>s(!0)},m.createElement(Ht,null))))))}const Zt=m.forwardRef((({className:e,...t},n)=>m.createElement("button",{className:d(Bt.actionButton,e),ref:n,...t})));function jt(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 r=0;for(const o of n)if(h.$isListNode(o))r=Math.max(h.$getListDepth(o)+1,r);else if(h.$isListItemNode(o)){const e=o.getParent();if(1===(null==e?void 0:e.getChildren().length)){const t=null==e?void 0:e.getParent();if(h.$isListItemNode(t)&&1===t.getChildren().length)return!1}if(!h.$isListNode(e))throw new Error("ListMaxIndentLevelPlugin: A ListItemNode must have a ListNode for a parent.");r=Math.max(h.$getListDepth(e)+1,r)}return r<=e}function zt({maxDepth:e}){const[t]=T.useLexicalComposerContext();return m.useEffect((()=>t.registerCommand(u.INDENT_CONTENT_COMMAND,(()=>!jt(e??7)),u.COMMAND_PRIORITY_CRITICAL)),[t,e]),null}const qt=()=>{return m.createElement(P.MarkdownShortcutPlugin,{transformers:(e=I.TRANSFORMERS,e.find((e=>e===I.CODE)).replace=(e,t,n)=>{const r=ne({code:"",language:n?n[1]:"",meta:""});e.replace(r),setTimeout((()=>r.select()),80)},e)});var e},Jt=()=>{const[e]=At("historyState");return m.createElement(M.HistoryPlugin,{externalHistoryState:e})},Wt=m.lazy((()=>Promise.resolve().then((()=>require("./SourceEditor-1fc83319.cjs"))).then((e=>({default:e.SourceEditor})))));function Gt({oldText:e,newText:t}){const n=V.formatLines(V.diffLines(e,t),{context:3});if(""===n.trim())return m.createElement("div",null,"No changes");const[r]=H.parseDiff(n,{nearbySequences:"zip"});return m.createElement(H.Diff,{viewType:"split",diffType:"modify",hunks:r.hunks||[]},(e=>e.map((e=>m.createElement(H.Hunk,{key:e.content,hunk:e})))))}function Yt(){const[e,t]=At("markdownSource","headMarkdown");return m.createElement(Gt,{oldText:t,newText:e})}const Qt=({children:e})=>{const[t]=At("viewMode");return m.createElement("div",null,m.createElement("div",{style:{display:"editor"===t?"block":"none"}},e),"diff"===t?m.createElement(Yt,null):null,"markdown"===t?m.createElement(m.Suspense,{fallback:null},m.createElement(Wt,null)):null)},Xt=m.forwardRef((({title:e,children:t},n)=>{const[r]=At("editorRootElementRef");return m.createElement(z.Provider,{delayDuration:100},m.createElement(z.Root,null,m.createElement(z.Trigger,{ref:n,asChild:!0},m.createElement("span",null,t)),m.createElement(z.Portal,{container:null==r?void 0:r.current},m.createElement(z.Content,{className:d(Bt.tooltipContent),sideOffset:10},e))))})),en=m.forwardRef((({children:e,className:t,...n},r)=>m.createElement(J.Item,{...n,ref:r,className:d(t,Bt.toolbarNodeKindSelectItem)},m.createElement(J.ItemText,null,e)))),tn=({title:e,placeholder:t,className:n})=>m.createElement(Xt,{title:e},m.createElement(J.Trigger,{"aria-label":t,className:d(Bt.toolbarNodeKindSelectTrigger,n)},m.createElement(J.Value,{placeholder:t}),m.createElement(J.Icon,{className:Bt.toolbarNodeKindSelectDropdownArrow},m.createElement($t,null)))),nn=({children:e,className:t=Bt.toolbarNodeKindSelectContainer})=>{const[n]=At("editorRootElementRef");return m.createElement(J.Portal,{container:null==n?void 0:n.current},m.createElement(J.Content,{className:t,onCloseAutoFocus:e=>e.preventDefault(),position:"popper"},m.createElement(J.Viewport,null,e)))},rn=({children:e,title:t,className:n})=>m.createElement(Xt,{title:t},m.createElement(J.Trigger,{className:d(Bt.toolbarButtonSelectTrigger,n)},e,m.createElement(J.Icon,{className:Bt.toolbarNodeKindSelectDropdownArrow},m.createElement($t,null))));function on(){const[e,t,n]=At("activeEditorType","activeEditor","codeBlockLanguages"),r=m.useMemo((()=>{let n;return t.getEditorState().read((()=>{const t=u.$getNodeByKey(e.nodeKey);n=t.getLanguage()})),n}),[t,e]);return m.createElement(J.Root,{value:r,onValueChange:n=>{t.update((()=>{const t=u.$getNodeByKey(e.nodeKey);t.setLanguage(n),setTimeout((()=>{t.select()}),80)}))}},m.createElement(tn,{title:"Change code block language",placeholder:"Language",className:Bt.toolbarCodeBlockLanguageSelectTrigger}),m.createElement(nn,{className:Bt.toolbarCodeBlockLanguageSelectContent},Object.entries(n).map((([e,t])=>m.createElement(en,{key:e,value:e},t)))))}const an=e=>Z.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Z.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Z.createElement("path",{d:"M0 0h24v24H0z"})),Z.createElement("g",{mask:"url(#a)"},Z.createElement("path",{d:"M5 21V6H4V4h5V3h6v1h5v2h-1v15H5Zm2-2h10V6H7v13Zm2-2h2V8H9v9Zm4 0h2V8h-2v9Z"}))),ln=e=>Z.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Z.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Z.createElement("path",{d:"M0 0h24v24H0z"})),Z.createElement("g",{mask:"url(#a)"},Z.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"}))),sn=e=>Z.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Z.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Z.createElement("path",{d:"M0 0h24v24H0z"})),Z.createElement("g",{mask:"url(#a)"},Z.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"}))),cn=e=>Z.createElement("svg",{width:25,height:24,viewBox:"0 0 25 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e},Z.createElement("mask",{id:"mask0_318_257",style:{maskType:"alpha"},maskUnits:"userSpaceOnUse",x:0,y:0,width:25,height:24},Z.createElement("rect",{x:.929688,width:24,height:24,fill:"#D9D9D9"})),Z.createElement("g",{mask:"url(#mask0_318_257)"},Z.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"}))),dn=e=>Z.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Z.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Z.createElement("path",{d:"M0 0h24v24H0z"})),Z.createElement("g",{mask:"url(#a)"},Z.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"}))),un=e=>Z.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Z.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Z.createElement("path",{d:"M0 0h24v24H0z"})),Z.createElement("g",{mask:"url(#a)"},Z.createElement("path",{d:"M5 19v-2.5h4l3-9H8V5h10v2.5h-3.5l-3 9H15V19H5Z"}))),mn=e=>Z.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Z.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Z.createElement("path",{d:"M0 0h24v24H0z"})),Z.createElement("g",{mask:"url(#a)"},Z.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"}))),pn=e=>Z.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Z.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Z.createElement("path",{d:"M0 0h24v24H0z"})),Z.createElement("g",{mask:"url(#a)"},Z.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"}))),gn=e=>Z.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Z.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Z.createElement("path",{d:"M0 0h24v24H0z"})),Z.createElement("g",{mask:"url(#a)"},Z.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"}))),hn=e=>Z.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Z.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Z.createElement("path",{d:"M0 0h24v24H0z"})),Z.createElement("g",{mask:"url(#a)"},Z.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"}))),En=e=>Z.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Z.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Z.createElement("path",{d:"M0 0h24v24H0z"})),Z.createElement("g",{mask:"url(#a)"},Z.createElement("path",{d:"M5 7h4v2H5z"}),Z.createElement("path",{d:"M5 7h4v2H5zm0 7h4v2H5z"}),Z.createElement("path",{d:"M5 14h4v2H5zm5-7h4v2h-4z"}),Z.createElement("path",{d:"M10 7h4v2h-4zm0 7h4v2h-4z"}),Z.createElement("path",{d:"M10 14h4v2h-4zm5-7h4v2h-4z"}),Z.createElement("path",{d:"M15 7h4v2h-4zm0 7h4v2h-4z"}),Z.createElement("path",{d:"M15 14h4v2h-4z"}))),fn=e=>Z.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Z.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Z.createElement("path",{d:"M0 0h24v24H0z"})),Z.createElement("g",{mask:"url(#a)"},Z.createElement("path",{d:"M4 13v-2h16v2H4Z"}))),vn=e=>Z.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Z.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Z.createElement("path",{d:"M0 0h24v24H0z"})),Z.createElement("g",{mask:"url(#a)"},Z.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"}))),_n=e=>Z.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e},Z.createElement("mask",{id:"mask0_46_56",style:{maskType:"alpha"},maskUnits:"userSpaceOnUse",x:0,y:0,width:24,height:24},Z.createElement("rect",{width:24,height:24,fill:"#D9D9D9"})),Z.createElement("g",{mask:"url(#mask0_46_56)"},Z.createElement("path",{d:"M19 19L14 14L15.4 12.575L18 15.175V5H20V15.175L22.6 12.575L24 14L19 19Z",fill:"currentColor"}),Z.createElement("path",{d:"M13 19H10.5V9L6.5 15L2.5 9V19H0V5H2.5L6.5 11L10.5 5H13V19Z",fill:"currentColor"}))),wn=e=>Z.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e},Z.createElement("mask",{id:"mask0_318_249",style:{maskType:"alpha"},maskUnits:"userSpaceOnUse",x:0,y:0,width:24,height:24},Z.createElement("rect",{width:24,height:24,fill:"#D9D9D9"})),Z.createElement("g",{mask:"url(#mask0_318_249)"},Z.createElement("path",{d:"M5 21V19H19V21H5Z",fill:"currentColor"}),Z.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"}))),kn=e=>Z.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,fill:"currentColor",viewBox:"0 0 24 24",...e},Z.createElement("mask",{id:"a",width:24,height:24,x:0,y:0,maskUnits:"userSpaceOnUse",style:{maskType:"alpha"}},Z.createElement("path",{d:"M0 0h24v24H0z"})),Z.createElement("g",{mask:"url(#a)"},Z.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"}),Z.createElement("path",{d:"M8.325 9h2V5h-2v4Zm5.35 0h2V5h-2v4Z"}))),bn=()=>{const[e]=At("currentBlockType"),t=Mt("applyBlockType");return m.createElement(J.Root,{value:e||"",onValueChange:t},m.createElement(tn,{title:"Select block type",placeholder:"Block type"}),m.createElement(nn,null,m.createElement(en,{value:"paragraph"},"Paragraph"),m.createElement(en,{value:"quote"},"Quote"),m.createElement(J.Separator,null),m.createElement(en,{value:"h1"},"Heading 1"),m.createElement(en,{value:"h2"},"Heading 2"),m.createElement(en,{value:"h3"},"Heading 3"),m.createElement(en,{value:"h4"},"Heading 4"),m.createElement(en,{value:"h5"},"Heading 5"),m.createElement(en,{value:"h6"},"Heading 6"),m.createElement(J.Separator,null),m.createElement(en,{value:"note"},"Note"),m.createElement(en,{value:"tip"},"Tip"),m.createElement(en,{value:"info"},"Info"),m.createElement(en,{value:"caution"},"Caution"),m.createElement(en,{value:"danger"},"Danger")))},xn=e=>Z.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...e},Z.createElement("mask",{id:"mask0_343_38",style:{maskType:"alpha"},maskUnits:"userSpaceOnUse",x:0,y:0,width:24,height:24},Z.createElement("rect",{width:24,height:24,fill:"#D9D9D9"})),Z.createElement("g",{mask:"url(#mask0_343_38)"},Z.createElement("path",{d:"M3 21V3H14V5H5V19H19V10H21V21H3ZM17 9V7H15V5H17V3H19V5H21V7H19V9H17ZM6 17H18L14.25 12L11.25 16L9 13L6 17Z",fill:"currentColor"}))),Nn=m.forwardRef((({autocompleteSuggestions:e=[],submitButtonTitle:t,dialogInputPlaceholder:n,onSubmit:r,tooltipTitle:o,buttonContent:a},i)=>{const[l]=At("editorRootElementRef"),[s,c]=m.useState(!1),d=m.useCallback((e=>{r(e),c(!1)}),[r]);return m.createElement(W.Root,{open:s,onOpenChange:c},m.createElement(W.Trigger,{asChild:!0},m.createElement(q.Button,{className:Bt.toolbarButton,ref:i},m.createElement(Xt,{title:o},a))),m.createElement(W.Portal,{container:l.current},m.createElement(W.Overlay,{className:Bt.dialogOverlay}),m.createElement(W.Content,{className:Bt.dialogContent},m.createElement(yn,{submitButtonTitle:t,autocompleteSuggestions:e,onSubmitCallback:d,dialogInputPlaceholder:n}))))})),yn=({autocompleteSuggestions:e,onSubmitCallback:t,dialogInputPlaceholder:n,submitButtonTitle:r})=>{const[o,a]=m.useState(e.slice(0,20)),i=e.length>0,{isOpen:l,getToggleButtonProps:s,getMenuProps:c,getInputProps:u,highlightedIndex:p,getItemProps:g,selectedItem:h}=R.useCombobox({initialInputValue:"",onInputValueChange({inputValue:t}){t=(null==t?void 0:t.toLowerCase())||"";const n=[];for(const r of e)if(r.toLowerCase().includes(t)&&(n.push(r),n.length>=20))break;a(n)},items:o,itemToString:e=>e??""}),E=m.useCallback((e=>{var n;"Escape"===e.key?null==(n=e.target.form)||n.reset():"Enter"!==e.key||l&&0!==o.length||(e.preventDefault(),t(e.target.value))}),[l,o,t]),f=u(),v={...f,onKeyDown:e=>{E(e),f.onKeyDown(e)}},_=l&&o.length>0;return m.createElement("form",{onSubmit:e=>{e.preventDefault(),t(h||"")},className:d(Bt.linkDialogEditForm)},m.createElement("div",{className:Bt.linkDialogInputContainer},m.createElement("div",{"data-visible-dropdown":_,className:Bt.linkDialogInputWrapper},m.createElement("input",{placeholder:n,className:Bt.linkDialogInput,...v,autoFocus:!0,size:30,"data-editor-dialog":!0}),i&&m.createElement("button",{"aria-label":"toggle menu",type:"button",...s()},m.createElement($t,null))),m.createElement("div",{className:Bt.linkDialogAutocompleteContainer},m.createElement("ul",{...c(),"data-visible":_},o.map(((e,t)=>m.createElement("li",{"data-selected":h===e,"data-highlighted":p===t,key:`${e}${t}`,...g({item:e,index:t})},e)))))),m.createElement("button",{type:"submit",title:r,"aria-label":r,className:d(Bt.actionButton,Bt.primaryActionButton)},m.createElement(Dt,null)),m.createElement(W.Close,{className:Bt.actionButton},m.createElement(Rt,null)))},Cn=m.forwardRef(((e,t)=>{const[n]=At("imageAutocompleteSuggestions"),r=Mt("insertImage");return m.createElement(Nn,{ref:t,submitButtonTitle:"Insert Image",dialogInputPlaceholder:"Paste or select image URL",tooltipTitle:"Insert image",onSubmit:r,buttonContent:m.createElement(xn,null),autocompleteSuggestions:n})}));m.forwardRef(((e,t)=>{const[n,r]=At("editorRootElementRef","imageAutocompleteSuggestions"),[o,a]=m.useState(!1),i=Mt("insertImage"),l=m.useCallback((e=>{i(e),a(!1)}),[i]);return m.createElement(W.Root,{open:o,onOpenChange:a},m.createElement(W.Trigger,{asChild:!0},m.createElement(q.Button,{className:Bt.toolbarButton,...e,ref:t},m.createElement(Xt,{title:"Insert image"},m.createElement(xn,null)))),m.createElement(W.Portal,{container:n.current},m.createElement(W.Overlay,{className:Bt.dialogOverlay}),m.createElement(W.Content,{className:Bt.dialogContent},m.createElement(Sn,{initialUrl:"",onSubmit:l,imageAutocompleteSuggestions:r}))))}));const Sn=({initialUrl:e,onSubmit:t,imageAutocompleteSuggestions:n})=>{const[r,o]=m.useState(n.slice(0,20)),{isOpen:a,getToggleButtonProps:i,getMenuProps:l,getInputProps:s,highlightedIndex:c,getItemProps:u,selectedItem:p}=R.useCombobox({initialInputValue:e,onInputValueChange({inputValue:e}){e=(null==e?void 0:e.toLowerCase())||"";const t=[];for(const r of n)if(r.toLowerCase().includes(e)&&(t.push(r),t.length>=20))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||a&&0!==r.length||(e.preventDefault(),t(e.target.value))}),[a,r,t]),h=s(),E={...h,onKeyDown:e=>{g(e),h.onKeyDown(e)}},f=a&&r.length>0;return m.createElement("form",{onSubmit:e=>{e.preventDefault(),t(p||"")},className:d(Bt.linkDialogEditForm)},m.createElement("div",{className:Bt.linkDialogInputContainer},m.createElement("div",{"data-visible-dropdown":f,className:Bt.linkDialogInputWrapper},m.createElement("input",{placeholder:"Paste or select an image url",className:Bt.linkDialogInput,...E,autoFocus:!0,size:30,"data-editor-dialog":!0}),m.createElement("button",{"aria-label":"toggle menu",type:"button",...i()},m.createElement($t,null))),m.createElement("div",{className:Bt.linkDialogAutocompleteContainer},m.createElement("ul",{...l(),"data-visible":f},r.map(((e,t)=>m.createElement("li",{"data-selected":p===e,"data-highlighted":c===t,key:`${e}${t}`,...u({item:e,index:t})},e)))))),m.createElement(Tn,{type:"submit",title:"Insert image","aria-label":"Insert image",className:Bt.primaryActionButton},m.createElement(Dt,null)),m.createElement(W.Close,{className:Bt.actionButton},m.createElement(Rt,null)))},Tn=m.forwardRef((({className:e,...t},n)=>m.createElement("button",{className:d(Bt.actionButton,e),ref:n,...t}))),Ln=m.forwardRef((({title:e,children:t,className:n,...r},o)=>m.createElement(q.ToggleItem,{"data-toolbar-item":!0,className:d(n,Bt.toolbarToggleItem),...r,ref:o},m.createElement(Xt,{title:e},t)))),Mn=m.forwardRef((({title:e,children:t,...n},r)=>m.createElement(q.Button,{"data-toolbar-item":!0,className:Bt.toolbarButton,...n,ref:r},m.createElement(Xt,{title:e},t)))),An=m.forwardRef((({children:e,className:t,...n},r)=>m.createElement(q.ToggleGroup,{...n,type:"single",ref:r,className:d(Bt.toolbarToggleSingleGroup,t)},e))),On=m.forwardRef((({on:e,title:t,children:n,...r},o)=>m.createElement(An,{...r,value:e?"on":"off",ref:o},m.createElement(Ln,{title:t,value:"on"},n)))),Dn=({children:e})=>m.createElement("div",{className:Bt.toolbarGroupOfGroups},e),Rn=q.ToolbarSeparator,In=()=>{const[e]=At("currentFormat","currentListType"),t=Mt("applyFormat"),n=0!=(1&e),r=0!=(2&e),o=0!=(8&e),a=n?"Remove bold":"Bold",i=r?"Remove italic":"Italic",l=o?"Remove underline":"Underline";return m.createElement(Dn,null,m.createElement(On,{title:a,"aria-label":"Bold",on:n,onValueChange:t.bind(null,"bold")},m.createElement(dn,null)),m.createElement(On,{title:i,"aria-label":"Italic",on:r,onValueChange:t.bind(null,"italic")},m.createElement(un,null)),m.createElement(On,{"aria-label":"Underline",title:l,on:o,onValueChange:t.bind(null,"underline")},m.createElement(gn,{style:{transform:"translateY(2px)"}})))},Pn=()=>{const[e]=At("currentFormat","currentListType"),t=Mt("applyFormat"),n=0!=(16&e),r=n?"Remove inline code":"Inline code";return m.createElement(Dn,null,m.createElement(On,{title:r,"aria-label":"Inline code",on:n,onValueChange:t.bind(null,"code")},m.createElement(ln,null)))},Hn=()=>{const[e]=At("currentListType"),t=Mt("applyListType");return m.createElement(Dn,null,m.createElement(An,{"aria-label":"List type",onValueChange:t,value:e||"",onFocus:e=>e.preventDefault()},m.createElement(Ln,{title:"Bulleted list",value:"bullet","aria-label":"Bulleted list"},m.createElement(mn,null)),m.createElement(Ln,{title:"Numbered list",value:"number","aria-label":"Numbered list"},m.createElement(pn,null))))},Vn=()=>{const e=Mt("openLinkEditDialog");return m.createElement(Mn,{title:"Create link",onClick:e.bind(null,!0)},m.createElement(vn,null))},$n=()=>{const e=Mt("insertTable");return m.createElement(Mn,{title:"Insert table",onClick:e.bind(null,!0)},m.createElement(kn,null))},Bn=()=>{const e=Mt("insertCodeBlock");return m.createElement(Mn,{title:"Insert code block",onClick:e.bind(null,!0)},m.createElement(hn,null))},Fn=()=>{const e=Mt("insertHorizontalRule");return m.createElement(Mn,{title:"Insert horizontal rule",onClick:e.bind(null,!0)},m.createElement(fn,null))},Un=()=>{const e=Mt("insertSandpack"),[t]=At("sandpackConfig");return m.createElement(m.Fragment,null,1===t.presets.length?m.createElement(Mn,{title:"Insert live code block",onClick:e.bind(null,"")},m.createElement(sn,null)):m.createElement(J.Root,{value:"",onValueChange:e},m.createElement(rn,{title:"Insert live code snippet"},m.createElement(sn,null)),m.createElement(nn,{className:Bt.toolbarButtonDropdownContainer},t.presets.map((e=>m.createElement(en,{key:e.name,value:e.meta},e.label))))))},Kn=()=>{const e=Mt("insertFrontmatter");return m.createElement(Mn,{title:"Insert frontmatter editor",onClick:e.bind(null,!0)},m.createElement(En,null))},Zn=()=>{const[e]=At("viewMode","activeEditorType"),t=Mt("viewMode");return m.createElement(An,{"aria-label":"View Mode",onValueChange:e=>{""!==e&&t(e)},value:e,className:Bt.toolbarModeSwitch},m.createElement(Ln,{value:"editor","aria-label":"Rich text",title:"Rich text mode"},m.createElement(wn,null)),m.createElement(Ln,{value:"diff","aria-label":"View diff",title:"Diff mode"},m.createElement(cn,null)),m.createElement(Ln,{value:"markdown","aria-label":"View Markdown",title:"Markdown source mode"},m.createElement(_n,null)))},jn={BlockTypeSelect:bn,BoldItalicUnderlineButtons:In,CodeBlockButton:Bn,CodeFormattingButton:Pn,FrontmatterButton:Kn,GroupGroup:Dn,HorizontalRuleButton:Fn,LinkButton:Vn,ListButtons:Hn,SandpackButton:Un,TableButton:$n,ToggleItem:Ln,ToggleSingleGroup:An,ToggleSingleGroupWithItem:On,ToolbarButton:Mn,ToolbarSeparator:Rn,ImageButton:Cn,DialogButton:Nn},zn=()=>{const[e,t]=At("activeEditorType","viewMode");return m.createElement(q.Root,{className:Bt.toolbarRoot,"aria-label":"Formatting options"},"editor"===t&&("lexical"===e.type?m.createElement(Wn,null):"codeblock"===e.type?m.createElement(qn,null):m.createElement(Jn,null)),m.createElement(Rn,null),m.createElement(Zn,null))},qn=()=>{const[e,t]=At("activeEditor","activeEditorType");return m.createElement(m.Fragment,null,m.createElement(on,null),m.createElement(Mn,{title:"Remove code block",onClick:()=>{e.update((()=>{const e=u.$getNodeByKey(t.nodeKey);e.selectNext(),e.remove()}))}},m.createElement(an,null)))},Jn=()=>{const[e,t]=At("activeEditor","activeEditorType");return m.createElement(m.Fragment,null,m.createElement(Mn,{title:"Remove live code block",onClick:()=>{e.update((()=>{const e=u.$getNodeByKey(t.nodeKey);e.selectNext(),e.remove()}))}},m.createElement(an,null)))},Wn=()=>{const[e]=At("toolbarComponents");return m.createElement(m.Fragment,null,e.map(((e,t)=>m.createElement(e,{key:t}))))},Gn=e=>vt?(e||window).getSelection():null,Yn=u.createCommand("INSERT_IMAGE_COMMAND"),Qn=()=>{const[e]=T.useLexicalComposerContext(),[t]=At("imageUploadHandler");return m.useEffect((()=>S.mergeRegister(e.registerCommand(Yn,(e=>{const t=ce(e);return u.$insertNodes([t]),u.$isRootOrShadowRoot(t.getParentOrThrow())&&S.$wrapNodeInElement(t,u.$createParagraphNode).selectEnd(),!0}),u.COMMAND_PRIORITY_EDITOR),e.registerCommand(u.DRAGSTART_COMMAND,(e=>function(e){const t=er();if(!t)return!1;const n=e.dataTransfer;if(!n)return!1;n.setData("text/plain","_");const r=document.createElement("img");return r.src=Xn,n.setDragImage(r,0,0),n.setData("application/x-lexical-drag",JSON.stringify({data:{altText:t.__altText,title:t.__title,key:t.getKey(),src:t.__src},type:"image"})),!0}(e)),u.COMMAND_PRIORITY_HIGH),e.registerCommand(u.DRAGOVER_COMMAND,(e=>function(e){var t;let n=Array.from((null==(t=e.dataTransfer)?void 0:t.items)||[]);if(n=n.filter((e=>/image/.test(e.type))),n.length>0)return e.preventDefault(),!0;if(!er())return!1;tr(e)||e.preventDefault();return!0}(e)),u.COMMAND_PRIORITY_LOW),e.registerCommand(u.DROP_COMMAND,(n=>function(e,t,n){var r;let o=Array.from((null==(r=e.dataTransfer)?void 0:r.items)||[]);if(o=o.filter((e=>/image/.test(e.type))),o.length>0)return e.preventDefault(),Promise.all(o.map((e=>n(e.getAsFile())))).then((e=>{e.forEach((e=>{t.dispatchCommand(Yn,{src:e,altText:""})}))})).catch((e=>{throw e})),!0;const a=er();if(!a)return!1;const i=function(e){var t;const n=null==(t=e.dataTransfer)?void 0:t.getData("application/x-lexical-drag");if(!n)return null;const{type:r,data:o}=JSON.parse(n);if("image"!==r)return null;return o}(e);if(!i)return!1;if(e.preventDefault(),tr(e)){const n=function(e){let t;const n=e.target,r=null==n?null:9===n.nodeType?n.defaultView:n.ownerDocument.defaultView,o=Gn(r);if(document.caretRangeFromPoint)t=document.caretRangeFromPoint(e.clientX,e.clientY);else{if(!e.rangeParent||null===o)throw Error("Cannot get the selection when dragging");o.collapse(e.rangeParent,e.rangeOffset||0),t=o.getRangeAt(0)}return t}(e);a.remove();const r=u.$createRangeSelection();null!=n&&r.applyDOMRange(n),u.$setSelection(r),t.dispatchCommand(Yn,i)}return!0}(n,e,t)),u.COMMAND_PRIORITY_HIGH))),[e,t]),null},Xn="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7";function er(){const e=u.$getSelection();if(!u.$isNodeSelection(e))return null;const t=e.getNodes()[0];return de(t)?t:null}function tr(e){const t=e.target;return!!(t&&t instanceof HTMLElement&&t.parentElement)}const nr={FrontmatterEditor:m.lazy((()=>Promise.resolve().then((()=>require("./FrontmatterEditor-95b69d31.cjs"))).then((e=>({default:e.FrontmatterEditor}))))),JsxEditor:m.lazy((()=>Promise.resolve().then((()=>require("./JsxEditor-1b8aa6c6.cjs"))).then((e=>({default:e.JsxEditor}))))),SandpackEditor:m.lazy((()=>Promise.resolve().then((()=>require("./SandpackEditor-a09311db.cjs"))).then((e=>({default:e.SandpackEditor}))))),CodeBlockEditor:m.lazy((()=>Promise.resolve().then((()=>require("./CodeBlockEditor-6488d3ea.cjs"))).then((e=>({default:e.CodeBlockEditor}))))),TableEditor:m.lazy((()=>Promise.resolve().then((()=>require("./TableEditor-616848bc.cjs"))).then((e=>({default:e.TableEditor}))))),ImageEditor:m.lazy((()=>Promise.resolve().then((()=>require("./ImageEditor-43997418.cjs"))).then((e=>({default:e.ImageEditor}))))),LeafDirectiveEditor:m.lazy((()=>Promise.resolve().then((()=>require("./LeafDirectiveEditor-c0daefa4.cjs"))).then((e=>({default:e.LeafDirectiveEditor})))))},rr=[In,Rn,Pn,Rn,Hn,Rn,bn,Rn,Vn,Cn,$n,Fn,Kn,Rn,Bn,Un],or={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()}]},ar={markdownParse:{defaultVisitors:qe,defaultSyntaxExtensions:Ge,defaultMdastExtensions:We},lexicalConvert:{defaultVisitors:Be,defaultExtensions:je,defaultMarkdownOptions:ze},defaultLexicalNodes:Xe},ir=m.forwardRef((({markdown:e,headMarkdown:t,jsxComponentDescriptors:p=[],sandpackConfig:g=or,onChange:h,viewMode:E,linkAutocompleteSuggestions:f,imageAutoCompleteSuggestions:v,className:_,contentEditableClassName:w,toolbarComponents:k=rr,imageUploadHandler:b,markdownParseOptions:{syntaxExtensions:x=Object.values(Ge),mdastExtensions:N=Object.values(We),visitors:y=Object.values(qe)}={},lexicalConvertOptions:{toMarkdownExtensions:C=Object.values(je),toMarkdownOptions:S=ze,visitors:T=Object.values(Be)}={},lexicalNodes:L=Object.values(Xe),customLeafDirectiveEditors:M=[]},A)=>{const O=m.useRef(null);return m.createElement("div",{className:d(Bt.editorRoot,Bt.editorWrapper,_),ref:O},m.createElement(n.LexicalComposer,{initialConfig:{editorState:()=>{Ye({root:u.$getRoot(),visitors:y,mdastExtensions:N,markdown:e,syntaxExtensions:x})},namespace:"MDXEditor",theme:{...ue,nodeDecoratorComponents:nr},nodes:L,onError:e=>{throw e}}},m.createElement(Lt,{markdownSource:e,headMarkdown:t||e,jsxComponentDescriptors:p,sandpackConfig:g,onChange:h,viewMode:E,linkAutocompleteSuggestions:f,imageAutocompleteSuggestions:v,editorRootElementRef:O,toolbarComponents:k,markdownParseOptions:{visitors:y,mdastExtensions:N,syntaxExtensions:x},lexicalConvertOptions:{visitors:T,toMarkdownOptions:S,toMarkdownExtensions:C},lexicalNodes:L,imageUploadHandler:b,customLeafDirectiveEditors:M},m.createElement(zn,null),m.createElement(Qt,null,m.createElement(s.RichTextPlugin,{contentEditable:m.createElement(r.ContentEditable,{className:d(Bt.contentEditable,w)}),placeholder:m.createElement("div",null),ErrorBoundary:o})),m.createElement(i.LinkPlugin,null),m.createElement(a.HorizontalRulePlugin,null),m.createElement(l.ListPlugin,null),m.createElement(zt,{maxDepth:7}),m.createElement(c.TabIndentationPlugin,null),m.createElement(Kt,null),m.createElement(Jt,null),m.createElement(Qn,null),m.createElement(qt,null),m.createElement(lr,{mdxRef:A}))))})),lr=({mdxRef:e})=>{const[t]=At("markdownSource"),n=Mt("setMarkdown");return m.useImperativeHandle(e,(()=>({getMarkdown:()=>t,setMarkdown:n})),[t,n]),null},sr=m.createContext(void 0),cr=()=>{const e=m.useContext(sr);if(!e)throw new Error("useNestedEditor must be used within a NestedEditorsProvider");return e};function dr(){const{parentEditor:e,lexicalNode:t}=cr();return function(n){e.update((()=>{t.setMdastNode(n)}))}}exports.$createAdmonitionNode=Y,exports.$createCodeBlockNode=ne,exports.$createFrontmatterNode=ae,exports.$createImageNode=ce,exports.$createJsxNode=he,exports.$createLeafDirectiveNode=ye,exports.$createSandpackNode=ve,exports.$createTableNode=xe,exports.$isAdmonitionNode=Q,exports.$isCodeBlockNode=re,exports.$isFrontmatterNode=ie,exports.$isImageNode=de,exports.$isJsxNode=Ee,exports.$isLeafDirectiveNode=Ce,exports.$isSandpackNode=_e,exports.$isTableNode=be,exports.AdmonitionNode=G,exports.CodeBlockNode=te,exports.FrontmatterNode=oe,exports.ImageNode=se,exports.JsxNode=ge,exports.LeafDirectiveNode=Ne,exports.MDXEditor=ir,exports.NestedEditor=function(e){const{getContent:t,getUpdatedMdastNode:n,contentEditableProps:a}=e,{mdastNode:i}=cr(),l=dr(),[c,d,p,g]=At("markdownParseOptions","lexicalConvertOptions","jsxComponentDescriptors","lexicalNodes"),[h]=m.useState((()=>{const e=u.createEditor({nodes:g,theme:ue});return e.update((()=>{Qe({root:u.$getRoot(),mdastRoot:{type:"root",children:[{type:"paragraph",children:t(i)}]},visitors:c.visitors})})),e}));return m.useEffect((()=>h.registerUpdateListener((({editorState:e})=>{e.read((()=>{const e=Fe({root:u.$getRoot(),jsxComponentDescriptors:p,...d}).children[0];l(n(i,e.children))}))}))),[h,n,p,d,i,l]),m.createElement(U.LexicalNestedComposer,{initialEditor:h},m.createElement(s.RichTextPlugin,{contentEditable:m.createElement(r.ContentEditable,{...a}),placeholder:m.createElement("div",null),ErrorBoundary:o}),m.createElement(Jt,null))},exports.NestedEditorsContext=sr,exports.SandpackNode=fe,exports.SharedHistoryPlugin=Jt,exports.TableNode=ke,exports.ToolbarComponents=jn,exports.defaultMdxOptionValues=ar,exports.exportLexicalTreeToMdast=Fe,exports.importMdastTreeToLexical=Qe,exports.styles=Bt,exports.theme=ue,exports.useEmitterValues=At,exports.useMdastNodeUpdater=dr,exports.usePublisher=Mt;
|