reactjs-tiptap-editor 0.2.10 → 0.2.12

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.
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("./tiptap-BjxGiEhB.cjs"),w=require("./vendor-C9wSqocV.cjs"),o=require("react/jsx-runtime"),m=require("react"),D=require("lucide-react"),s=require("./RichTextEditor-DJJ5SBya.cjs"),p=require("./index-Bekz0zC7.cjs"),Ge=require("@radix-ui/react-tabs"),ne=require("shiki"),We=require("@radix-ui/react-select"),Ze=require("@radix-ui/react-slot"),xe=require("tippy.js"),Xe=require("react-image-crop"),Ye=require("@radix-ui/react-checkbox"),be=require("scroll-into-view-if-needed"),G=require("frimousse"),Se=require("docx"),U=require("prosemirror-docx");function ce(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const i=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,i.get?i:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const H=ce(m),W=ce(Ge),M=ce(We),me=ce(Ye),pe=m.forwardRef(({asChild:e,...t},n)=>{var r;const i=s.icons[t.icon],a=e?Ze.Slot:s.Button;return o.jsxs(s.Tooltip,{children:[o.jsx(s.TooltipTrigger,{asChild:!0,children:o.jsx(a,{className:"richtext-h-[32px] richtext-min-w-24 richtext-overflow-hidden richtext-px-[5px] richtext-py-0",disabled:t==null?void 0:t.disabled,ref:n,variant:"ghost",...t,children:o.jsxs("div",{className:"richtext-flex richtext-h-full richtext-items-center richtext-font-normal",children:[(t==null?void 0:t.title)&&o.jsx("div",{className:"richtext-grow richtext-truncate richtext-text-left richtext-text-sm",children:t==null?void 0:t.title}),i&&o.jsx(i,{className:"richtext-ml-1 richtext-size-3 richtext-shrink-0 richtext-text-zinc-500"})]})})}),o.jsx(s.TooltipContent,{children:o.jsxs("div",{className:"richtext-flex richtext-max-w-24 richtext-flex-col richtext-items-center richtext-text-center",children:[(t==null?void 0:t.tooltip)&&o.jsx("div",{children:t==null?void 0:t.tooltip}),o.jsx("div",{className:"richtext-flex",children:!!((r=t==null?void 0:t.shortcutKeys)!=null&&r.length)&&o.jsx("span",{children:s.getShortcutKeys(t==null?void 0:t.shortcutKeys)})})]})})]})}),Je=f.Bold.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),button:({editor:t,t:n})=>({component:s.ActionButton,componentProps:{action:()=>t.commands.toggleBold(),isActive:()=>t.isActive("bold")||!1,disabled:!t.can().toggleBold(),icon:"Bold",shortcutKeys:["mod","B"],tooltip:n("editor.bold.tooltip")}})}}}),Qe=f.Italic.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),button({editor:t,t:n}){return{component:s.ActionButton,componentProps:{action:()=>t.commands.toggleItalic(),isActive:()=>t.isActive("italic")||!1,disabled:!t.can().toggleItalic(),shortcutKeys:["mod","I"],icon:"Italic",tooltip:n("editor.italic.tooltip")}}}}}}),et=f.Underline.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),button({editor:t,t:n}){return{component:s.ActionButton,componentProps:{action:()=>t.commands.toggleUnderline(),isActive:()=>t.isActive("underline")||!1,disabled:!t.can().toggleUnderline(),icon:"Underline",shortcutKeys:["mod","U"],tooltip:n("editor.underline.tooltip")}}}}}}),tt=f.Strike.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),button:({editor:t,t:n})=>({component:s.ActionButton,componentProps:{action:()=>t.commands.toggleStrike(),isActive:()=>t.isActive("strike")||!1,disabled:!t.can().toggleStrike(),icon:"Strikethrough",shortcutKeys:["shift","mod","S"],tooltip:n("editor.strike.tooltip")}})}}}),nt=f.Code.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),button:({editor:t,t:n})=>({component:s.ActionButton,componentProps:{action:()=>t.commands.toggleCode(),isActive:()=>t.isActive("code")||!1,disabled:!t.can().toggleCode(),icon:"Code",shortcutKeys:["mod","E"],tooltip:n("editor.code.tooltip")}})}}});let F,Q;const de=new Set,ue=new Set;function it(){return F}function ot(e){if(!F&&!Q){const t=e.themes.filter(i=>!!i&&i in ne.bundledThemes),n=e.languages.filter(i=>!!i&&i in ne.bundledLanguages);return Q=ne.createHighlighter({themes:t,langs:n}).then(i=>{F=i}),Q}if(Q)return Q}async function Le(e){return F&&!F.getLoadedThemes().includes(e)&&!ue.has(e)&&e in ne.bundledThemes?(ue.add(e),await F.loadTheme(e),ue.delete(e),!0):!1}async function Ee(e){return F&&!F.getLoadedLanguages().includes(e)&&!de.has(e)&&e in ne.bundledLanguages?(de.add(e),await F.loadLanguage(e),de.delete(e),!0):!1}async function at({doc:e,name:t,defaultTheme:n,defaultLanguage:i}){const a=f.findChildren(e,l=>l.type.name===t),r=[...a.map(l=>l.node.attrs.theme),n],c=[...a.map(l=>l.node.attrs.language),i];F?await Promise.all([...r.flatMap(l=>Le(l)),...c.flatMap(l=>!!l&&Ee(l))]):await ot({languages:c,themes:r})}function ve({doc:e,name:t,defaultTheme:n,defaultLanguage:i}){const a=[];return f.findChildren(e,c=>c.type.name===t).forEach(c=>{let l=c.pos+1,d=c.node.attrs.language||i;const h=c.node.attrs.theme||n,u=it();if(!u)return;u.getLoadedLanguages().includes(d)||(d="plaintext");const x=u.getLoadedThemes().includes(h)?h:u.getLoadedThemes()[0],g=u.codeToTokensBase(c.node.textContent,{lang:d,theme:x});for(const _ of g){for(const y of _){const v=l+y.content.length,T=w.Decoration.inline(l,v,{style:`color: ${y.color}`});a.push(T),l=v}l+=1}}),w.DecorationSet.create(e,a)}function rt({name:e,defaultLanguage:t,defaultTheme:n}){const i=new w.Plugin({key:new w.PluginKey("shiki"),view(a){class r{constructor(){this.initDecorations()}update(){this.checkUndecoratedBlocks()}destroy(){}async initDecorations(){const l=a.state.doc;await at({doc:l,name:e,defaultLanguage:t,defaultTheme:n});const d=a.state.tr.setMeta("shikiPluginForceDecoration",!0);a.dispatch(d)}async checkUndecoratedBlocks(){const l=f.findChildren(a.state.doc,u=>u.type.name===e);if((await Promise.all(l.flatMap(u=>[Le(u.node.attrs.theme),Ee(u.node.attrs.language)]))).includes(!0)){const u=a.state.tr.setMeta("shikiPluginForceDecoration",!0);a.dispatch(u)}}}return new r},state:{init:(a,{doc:r})=>ve({doc:r,name:e,defaultLanguage:t,defaultTheme:n}),apply:(a,r,c,l)=>{const d=c.selection.$head.parent.type.name,h=l.selection.$head.parent.type.name,u=f.findChildren(c.doc,_=>_.type.name===e),x=f.findChildren(l.doc,_=>_.type.name===e),g=a.docChanged&&([d,h].includes(e)||x.length!==u.length||a.steps.some(_=>_.from!==void 0&&_.to!==void 0&&u.some(y=>y.pos>=_.from&&y.pos+y.node.nodeSize<=_.to)));return a.getMeta("shikiPluginForceDecoration")||g?ve({doc:a.doc,name:e,defaultLanguage:t,defaultTheme:n}):r.map(a.mapping,a.doc)}},props:{decorations(a){return i.getState(a)}}});return i}function st({action:e,languages:t,...n}){const i=r=>{e(r)},a=m.useMemo(()=>t==null?void 0:t.map(r=>({title:p.MAP_LANGUAGE_CODE_LABELS[r]||r,language:r})),[t]);return o.jsxs(s.DropdownMenu,{children:[o.jsx(s.DropdownMenuTrigger,{disabled:n==null?void 0:n.disabled,asChild:!0,children:o.jsx(s.ActionButton,{tooltip:n==null?void 0:n.tooltip,disabled:n==null?void 0:n.disabled,icon:n==null?void 0:n.icon})}),o.jsx(s.DropdownMenuContent,{className:"richtext-w-full !richtext-max-h-[180px] !richtext-overflow-y-scroll",children:a==null?void 0:a.map(r=>o.jsx(s.DropdownMenuItem,{onClick:()=>i(r.language),children:o.jsx("div",{className:"richtext-h-full richtext-ml-1",children:r.title})},`codeblock-${r.title}`))})]})}const ct=M.Root,lt=M.Value,Ie=H.forwardRef(({className:e,children:t,...n},i)=>o.jsxs(M.Trigger,{ref:i,className:s.cn("richtext-flex richtext-h-10 richtext-w-full richtext-items-center richtext-justify-between richtext-rounded-md richtext-border richtext-border-input richtext-bg-background richtext-px-3 richtext-py-2 richtext-text-sm richtext-ring-offset-background placeholder:richtext-text-muted-foreground focus:richtext-outline-none focus:richtext-ring-2 focus:richtext-ring-ring focus:richtext-ring-offset-2 disabled:richtext-cursor-not-allowed disabled:richtext-opacity-50 [&>span]:richtext-line-clamp-1",e),...n,children:[t,o.jsx(M.Icon,{asChild:!0,children:o.jsx(D.ChevronDown,{className:"richtext-h-4 richtext-w-4 richtext-opacity-50"})})]}));Ie.displayName=M.Trigger.displayName;const Me=H.forwardRef(({className:e,...t},n)=>o.jsx(M.ScrollUpButton,{ref:n,className:s.cn("richtext-flex richtext-cursor-default richtext-items-center richtext-justify-center richtext-py-1",e),...t,children:o.jsx(D.ChevronUp,{className:"richtext-h-4 richtext-w-4"})}));Me.displayName=M.ScrollUpButton.displayName;const De=H.forwardRef(({className:e,...t},n)=>o.jsx(M.ScrollDownButton,{ref:n,className:s.cn("richtext-flex richtext-cursor-default richtext-items-center richtext-justify-center richtext-py-1",e),...t,children:o.jsx(D.ChevronDown,{className:"richtext-h-4 richtext-w-4"})}));De.displayName=M.ScrollDownButton.displayName;const Re=H.forwardRef(({className:e,children:t,position:n="popper",...i},a)=>o.jsx(M.Portal,{children:o.jsxs(M.Content,{ref:a,className:s.cn("richtext-relative richtext-z-50 richtext-max-h-60 richtext-overflow-y-auto richtext-min-w-[8rem] richtext-overflow-hidden richtext-rounded-md richtext-border richtext-bg-popover richtext-text-popover-foreground richtext-shadow-md data-[state=open]:richtext-animate-in data-[state=closed]:richtext-animate-out data-[state=closed]:richtext-fade-out-0 data-[state=open]:richtext-fade-in-0 data-[state=closed]:richtext-zoom-out-95 data-[state=open]:richtext-zoom-in-95 data-[side=bottom]:richtext-slide-in-from-top-2 data-[side=left]:richtext-slide-in-from-right-2 data-[side=right]:richtext-slide-in-from-left-2 data-[side=top]:richtext-slide-in-from-bottom-2",n==="popper"&&"data-[side=bottom]:richtext-translate-y-1 data-[side=left]:richtext--translate-x-1 data-[side=right]:richtext-translate-x-1 data-[side=top]:richtext--translate-y-1",e),position:n,...i,children:[o.jsx(Me,{}),o.jsx(M.Viewport,{className:s.cn("richtext-p-1",n==="popper"&&"richtext-h-[var(--radix-select-trigger-height)] richtext-w-full richtext-min-w-[var(--radix-select-trigger-width)]"),children:t}),o.jsx(De,{})]})}));Re.displayName=M.Content.displayName;const dt=H.forwardRef(({className:e,...t},n)=>o.jsx(M.Label,{ref:n,className:s.cn("richtext-py-1.5 richtext-pl-8 richtext-pr-2 richtext-text-sm richtext-font-semibold",e),...t}));dt.displayName=M.Label.displayName;const fe=H.forwardRef(({className:e,children:t,...n},i)=>o.jsxs(M.Item,{ref:i,className:s.cn("richtext-relative richtext-flex richtext-w-full richtext-cursor-default richtext-select-none richtext-items-center richtext-rounded-sm richtext-py-1.5 richtext-pl-8 richtext-pr-2 richtext-text-sm richtext-outline-none focus:richtext-bg-accent focus:richtext-text-accent-foreground data-[disabled]:richtext-pointer-events-none data-[disabled]:richtext-opacity-50",e),...n,children:[o.jsx("span",{className:"richtext-absolute richtext-left-2 richtext-flex richtext-h-3.5 richtext-w-3.5 richtext-items-center richtext-justify-center",children:o.jsx(M.ItemIndicator,{children:o.jsx(D.Check,{className:"richtext-h-4 richtext-w-4"})})}),o.jsx(M.ItemText,{children:t})]}));fe.displayName=M.Item.displayName;const ut=H.forwardRef(({className:e,...t},n)=>o.jsx(M.Separator,{ref:n,className:s.cn("richtext--mx-1 richtext-my-1 richtext-h-px richtext-bg-muted",e),...t}));ut.displayName=M.Separator.displayName;function ht(){const[e,t]=m.useState(!1);return{isCopied:e,copyToClipboard:async i=>{try{await navigator.clipboard.writeText(i),t(!0),setTimeout(()=>t(!1),2e3)}catch(a){console.error("Failed to copy text: ",a),t(!1)}}}}const mt="_wrap_134f4_1",ft="_maxHeight_134f4_10",gt="_btnCopy_134f4_13",_t="_btnDelete_134f4_14",xt="_blockInfo_134f4_18",bt="_blockInfoEditable_134f4_28",pt="_selectLang_134f4_32",wt="_copied_134f4_58",q={wrap:mt,maxHeight:ft,btnCopy:gt,btnDelete:_t,blockInfo:xt,blockInfoEditable:bt,selectLang:pt,copied:wt};function yt({editor:e,node:{attrs:t},updateAttributes:n,extension:i}){var g,_;const{isCopied:a,copyToClipboard:r}=ht(),c=m.useMemo(()=>{var y;return(y=i.options.languages)!=null&&y.length?i.options.languages:p.DEFAULT_LANGUAGE_CODE_BLOCK},[i.options.languages]),l=s.useEditableEditor(),d=(_=(g=e==null?void 0:e.options)==null?void 0:g.editorProps)==null?void 0:_.print,{language:h}=t,u=m.useRef(null),x=m.useCallback(()=>s.deleteNode(Pe.name,e),[e]);return o.jsxs(f.NodeViewWrapper,{className:w.clsx(q.wrap,!d&&q.maxHeight,"render-wrapper"),children:[o.jsxs("div",{className:w.clsx(q.blockInfo,{[q.blockInfoEditable]:!l}),children:[o.jsx("span",{className:w.clsx(q.btnCopy,a&&q.copied),onClick:()=>r(u.current.innerText),children:a?o.jsx(D.CopyCheck,{size:16}):o.jsx(D.Copy,{size:16})}),o.jsx("span",{className:q.btnDelete,onClick:x,children:o.jsx(s.IconComponent,{name:"Trash2"})}),o.jsx("div",{className:q.selectLang,children:o.jsxs(ct,{defaultValue:h||"auto",disabled:!l,onValueChange:y=>n({language:y}),children:[o.jsx(Ie,{children:o.jsx(lt,{placeholder:"Language"})}),o.jsxs(Re,{className:"richtext-max-h-60 richtext-overflow-y-auto",children:[o.jsx(fe,{value:"auto",children:"Auto"}),c.map((y,v)=>o.jsx(fe,{value:y,children:y.charAt(0).toUpperCase()+y.slice(1)},`code-lang-${v}`))]})]})})]}),o.jsx("pre",{ref:u,children:o.jsx(f.NodeViewContent,{as:"code"})})]})}const Pe=f.CodeBlock.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),languages:[],button:({editor:t,t:n,extension:i})=>{var r,c,l;const a=(c=(r=i==null?void 0:i.options)==null?void 0:r.languages)!=null&&c.length?(l=i==null?void 0:i.options)==null?void 0:l.languages:p.DEFAULT_LANGUAGE_CODE_BLOCK;return{component:st,componentProps:{action:(d="js")=>t.commands.setCodeBlock({language:d}),isActive:()=>t.isActive("codeBlock")||!1,disabled:!t.can().toggleCodeBlock(),icon:"Code2",tooltip:n("editor.codeblock.tooltip"),languages:a}}}}},addNodeView(){return f.ReactNodeViewRenderer(yt)},addProseMirrorPlugins(){var e;return[...((e=this.parent)==null?void 0:e.call(this))||[],rt({name:this.name,defaultLanguage:null,defaultTheme:this.options.defaultTheme})]}});function vt(e){var a,r,c;const{t,lang:n}=p.useLocale(),i=m.useMemo(()=>{var h;const l=(h=e==null?void 0:e.items)==null?void 0:h.find(u=>u.isActive());return l&&!l.default?{...l}:{title:e.tooltip,font:t("editor.fontFamily.default.tooltip"),isActive:()=>!1,disabled:!1,action:()=>e.editor.chain().focus().unsetFontFamily().run()}},[t,n,e]);return o.jsxs(s.DropdownMenu,{children:[o.jsx(s.DropdownMenuTrigger,{asChild:!0,disabled:e==null?void 0:e.disabled,children:o.jsx(pe,{disabled:e==null?void 0:e.disabled,icon:"MenuDown",title:((a=i==null?void 0:i.font)==null?void 0:a.length)>7?`${(r=i==null?void 0:i.font)==null?void 0:r.slice(0,6)}...`:i==null?void 0:i.font,tooltip:e==null?void 0:e.tooltip})}),o.jsx(s.DropdownMenuContent,{className:"richtext-w-full",children:(c=e==null?void 0:e.items)==null?void 0:c.map((l,d)=>{const h=l.font===t("editor.fontFamily.default.tooltip")?{}:{fontFamily:l.font};return o.jsxs(m.Fragment,{children:[o.jsx(s.DropdownMenuCheckboxItem,{checked:(i==null?void 0:i.font)===l.font,onClick:l.action,children:o.jsx("div",{className:"richtext-ml-1 richtext-h-full",style:h,children:l.font})}),l.font===t("editor.fontFamily.default.tooltip")&&o.jsx(s.DropdownMenuSeparator,{})]},`font-family-${d}`)})})]})}const kt=f.FontFamily.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),fontFamilyList:p.DEFAULT_FONT_FAMILY_LIST,button({editor:t,extension:n,t:i}){var h;const{extensions:a=[]}=t.extensionManager??[],r=s.ensureNameValueOptions(((h=n==null?void 0:n.options)==null?void 0:h.fontFamilyList)||[]),c=a.find(u=>u.name==="base-kit"),l=r.map(u=>({action:()=>{t.chain().focus().setFontFamily(u.value).run()},isActive:()=>t.isActive("textStyle",{fontFamily:u.value})||!1,disabled:!t.can().setFontFamily(u.value),title:u.name,font:u.value}));c&&c.options.textStyle!==!1&&l.unshift({action:()=>t.chain().focus().unsetFontFamily().run(),isActive:()=>!1,disabled:!1,font:i("editor.fontFamily.default.tooltip"),title:i("editor.fontFamily.tooltip")});const d=l.filter(u=>u.disabled).length===l.length;return{component:vt,componentProps:{tooltip:i("editor.fontFamily.tooltip"),disabled:d,items:l,editor:t}}}}}});function jt(e){var n;const t=m.useMemo(()=>{var r;const i=(r=e==null?void 0:e.items)==null?void 0:r.find(c=>c.isActive());return i&&!i.default?{...i}:{title:e.tooltip,level:0,isActive:()=>!1}},[e]);return o.jsxs(s.DropdownMenu,{children:[o.jsx(s.DropdownMenuTrigger,{asChild:!0,disabled:e==null?void 0:e.disabled,children:o.jsx(pe,{disabled:e==null?void 0:e.disabled,icon:"MenuDown",title:t==null?void 0:t.title,tooltip:e==null?void 0:e.tooltip})}),o.jsx(s.DropdownMenuContent,{className:"richtext-w-full",children:(n=e==null?void 0:e.items)==null?void 0:n.map((i,a)=>{var r,c;return o.jsxs(m.Fragment,{children:[o.jsxs(s.DropdownMenuCheckboxItem,{checked:(t==null?void 0:t.title)===i.title,onClick:i.action,children:[o.jsx("div",{className:`heading- richtext-ml-1 richtext-h-full${i.level}`,children:i.title}),!!((r=i==null?void 0:i.shortcutKeys)!=null&&r.length)&&o.jsx(s.DropdownMenuShortcut,{className:"richtext-pl-4",children:(c=i==null?void 0:i.shortcutKeys)==null?void 0:c.map(l=>s.getShortcutKey(l)).join(" ")})]}),i.level===0&&o.jsx(s.DropdownMenuSeparator,{})]},`heading-k-${a}`)})})]})}const Ct=f.Heading.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),levels:[1,2,3,4,5,6],button({editor:t,extension:n,t:i}){var h;const{extensions:a=[]}=t.extensionManager??[],r=((h=n.options)==null?void 0:h.levels)||[],c=a.find(u=>u.name==="base-kit"),l=r.map(u=>({action:()=>t.commands.toggleHeading({level:u}),isActive:()=>t.isActive("heading",{level:u})||!1,disabled:!t.can().toggleHeading({level:u}),title:i(`editor.heading.h${u}.tooltip`),level:u,shortcutKeys:["alt","mod",`${u}`]}));c&&c.options.paragraph!==!1&&l.unshift({action:()=>t.commands.setParagraph(),isActive:()=>t.isActive("paragraph")||!1,disabled:!t.can().setParagraph(),level:0,title:i("editor.paragraph.tooltip"),shortcutKeys:["alt","mod","0"]});const d=l.filter(u=>u.disabled).length===l.length;return{component:jt,componentProps:{tooltip:i("editor.heading.tooltip"),disabled:d,items:l,editor:t}}}}}}),He=W.Root,we=H.forwardRef(({className:e,...t},n)=>o.jsx(W.List,{ref:n,className:s.cn("richtext-inline-flex richtext-h-10 richtext-items-center richtext-justify-center richtext-rounded-md richtext-bg-muted richtext-p-1 richtext-text-muted-foreground",e),...t}));we.displayName=W.List.displayName;const ie=H.forwardRef(({className:e,...t},n)=>o.jsx(W.Trigger,{ref:n,className:s.cn("richtext-inline-flex richtext-items-center richtext-justify-center richtext-whitespace-nowrap richtext-rounded-sm richtext-px-3 richtext-py-1.5 richtext-text-sm richtext-font-medium richtext-ring-offset-background richtext-transition-all focus-visible:richtext-outline-none focus-visible:richtext-ring-2 focus-visible:richtext-ring-ring focus-visible:richtext-ring-offset-2 disabled:richtext-pointer-events-none disabled:richtext-opacity-50 data-[state=active]:richtext-bg-background data-[state=active]:richtext-text-foreground data-[state=active]:richtext-shadow-sm",e),...t}));ie.displayName=W.Trigger.displayName;const oe=H.forwardRef(({className:e,...t},n)=>o.jsx(W.Content,{ref:n,className:s.cn("richtext-mt-2 richtext-ring-offset-background focus-visible:richtext-outline-none focus-visible:richtext-ring-2 focus-visible:richtext-ring-ring focus-visible:richtext-ring-offset-2",e),...t}));oe.displayName=W.Content.displayName;const Be=H.forwardRef(({className:e,...t},n)=>o.jsx(me.Root,{ref:n,className:s.cn("!richtext-peer !richtext-h-4 !richtext-w-4 !richtext-p-0 !richtext-shrink-0 !richtext-rounded-sm !richtext-border !richtext-border-primary !richtext-ring-offset-background focus-visible:!richtext-outline-none focus-visible:!richtext-ring-2 focus-visible:!richtext-ring-ring focus-visible:!richtext-ring-offset-2 disabled:!richtext-cursor-not-allowed disabled:!richtext-opacity-50 data-[state=checked]:!richtext-bg-primary data-[state=checked]:!richtext-text-primary-foreground",e),...t,children:o.jsx(me.Indicator,{className:s.cn("!richtext-flex !richtext-p-0 !richtext-items-center !richtext-justify-center !richtext-text-current"),children:o.jsx(D.Check,{className:"!richtext-h-4 !richtext-w-4"})})}));Be.displayName=me.Root.displayName;function At(e){var n;const t=m.useMemo(()=>{var r;const i=(r=e==null?void 0:e.items)==null?void 0:r.find(c=>c.isActive());return i&&!i.default?{...i,icon:i.icon?i.icon:e.icon}:{title:e==null?void 0:e.tooltip,icon:e.icon,isActive:()=>!1}},[e]);return o.jsxs(s.Popover,{modal:!0,children:[o.jsx(s.PopoverTrigger,{asChild:!0,disabled:e==null?void 0:e.disabled,children:o.jsx(s.ActionButton,{customClass:"!richtext-w-12 richtext-h-12",disabled:e==null?void 0:e.disabled,icon:e==null?void 0:e.icon,tooltip:e==null?void 0:e.tooltip,children:o.jsx(s.IconComponent,{className:"richtext-ml-1 richtext-size-3 richtext-text-zinc-500",name:"MenuDown"})})}),o.jsx(s.PopoverContent,{align:"start",className:"richtext-flex richtext-w-full richtext-min-w-4 richtext-flex-row richtext-gap-1 !richtext-p-[4px]",side:"bottom",children:(n=e==null?void 0:e.items)==null?void 0:n.map((i,a)=>{var r,c;return o.jsxs(s.Tooltip,{children:[o.jsx(s.TooltipTrigger,{asChild:!0,children:o.jsx(s.Toggle,{className:"richtext-size-7 richtext-p-1","data-state":t.title===i.title?"on":"off",onClick:i==null?void 0:i.action,pressed:t.title===i.title,size:"sm",children:(i==null?void 0:i.icon)&&o.jsx(s.IconComponent,{name:i.icon})})}),o.jsxs(s.TooltipContent,{className:"richtext-flex richtext-flex-col richtext-items-center",children:[o.jsx("span",{children:i.title}),!!((r=i.shortcutKeys)!=null&&r.length)&&o.jsx("span",{children:(c=i.shortcutKeys)==null?void 0:c.map(l=>s.getShortcutKey(l)).join(" ")})]})]},`text-align-${a}`)})})]})}const Tt=f.TextAlign.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),types:["heading","paragraph","list_item","title"],button({editor:t,extension:n,t:i}){var h;const a=((h=n.options)==null?void 0:h.alignments)||[],r={left:["mod","Shift","L"],center:["mod","Shift","E"],right:["mod","Shift","R"],justify:["mod","Shift","J"]},c={left:"AlignLeft",center:"AlignCenter",right:"AlignRight",justify:"AlignJustify"},l=a.map(u=>{var x,g,_;return{title:i(`editor.textalign.${u}.tooltip`),icon:c[u],shortcutKeys:r[u],isActive:()=>t.isActive({textAlign:u})||!1,action:()=>{var y,v;return(v=(y=t.commands)==null?void 0:y.setTextAlign)==null?void 0:v.call(y,u)},disabled:!((_=(g=(x=t==null?void 0:t.can)==null?void 0:x.call(t))==null?void 0:g.setTextAlign)!=null&&_.call(g,u))}}),d=l.filter(u=>u.disabled).length===l.length;return{component:At,componentProps:{icon:"AlignJustify",tooltip:i("editor.textalign.tooltip"),disabled:d,items:l}}}}}});function Nt(e){var i;const{t}=p.useLocale(),n=m.useMemo(()=>{const a=(e.items||[]).find(c=>c.isActive());return a||{title:t("editor.fontSize.default.tooltip"),isActive:()=>!1}},[e]);return o.jsxs(s.DropdownMenu,{children:[o.jsx(s.DropdownMenuTrigger,{asChild:!0,disabled:e==null?void 0:e.disabled,children:o.jsx(pe,{disabled:e==null?void 0:e.disabled,icon:"MenuDown",title:n==null?void 0:n.title,tooltip:`${e==null?void 0:e.tooltip}`})}),o.jsx(s.DropdownMenuContent,{className:"richtext-max-h-96 richtext-w-32 richtext-overflow-y-auto",children:(i=e==null?void 0:e.items)==null?void 0:i.map((a,r)=>o.jsx(s.DropdownMenuCheckboxItem,{checked:n.title===a.title,onClick:a.action,children:o.jsx("div",{className:"richtext-ml-1 richtext-h-full",children:a.title})},`font-size-${r}`))})]})}const St=f.Extension.create({name:"fontSize",addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),types:["textStyle"],fontSizes:[...p.DEFAULT_FONT_SIZE_LIST],button({editor:t,extension:n,t:i}){var d;const a=s.ensureNameValueOptions(((d=n.options)==null?void 0:d.fontSizes)||p.DEFAULT_FONT_SIZE_VALUE),r=s.ensureNameValueOptions([p.DEFAULT_FONT_SIZE_VALUE])[0],c=a.map(h=>({title:h.value===r.value?i("editor.fontSize.default.tooltip"):String(h.name),isActive:()=>{const{fontSize:u}=t.getAttributes("textStyle");return h.value===r.value&&u===void 0?!0:t.isActive({fontSize:String(h.value)})||!1},action:()=>{if(h.value===r.value){t.commands.unsetFontSize();return}t.commands.setFontSize(String(h.value))},disabled:!t.can().setFontSize(String(h.value)),divider:h.value===r.value||!1,default:h.value===r.value||!1})),l=c.filter(h=>h.disabled).length===c.length;return{component:Nt,componentProps:{editor:t,tooltip:i("editor.fontSize.tooltip"),disabled:l,items:c,maxHeight:280}}}}},addGlobalAttributes(){return[{types:this.options.types,attributes:{fontSize:{default:null,parseHTML:e=>e.style.fontSize.replaceAll(/["']+/g,""),renderHTML:e=>e.fontSize?{style:`font-size: ${e.fontSize}`}:{}}}}]},addCommands(){return{setFontSize:e=>({chain:t})=>t().setMark("textStyle",{fontSize:e}).run(),unsetFontSize:()=>({chain:e})=>e().setMark("textStyle",{fontSize:null}).removeEmptyTextStyle().run()}}});function Lt({fill:e}){return o.jsx("svg",{width:"18px",height:"18px",viewBox:"0 0 240 240",version:"1.1",xmlns:"http://www.w3.org/2000/svg",children:o.jsx("g",{stroke:"none",strokeWidth:1,fill:"none",fillRule:"evenodd",children:o.jsx("g",{transform:"translate(0.000000, 0.500000)",children:o.jsxs("g",{transform:"translate(39.000000, 17.353553)",children:[o.jsx("path",{d:"M11,201.146447 L167,201.146447 C173.075132,201.146447 178,206.071314 178,212.146447 C178,218.221579 173.075132,223.146447 167,223.146447 L11,223.146447 C4.92486775,223.146447 7.43989126e-16,218.221579 0,212.146447 C-7.43989126e-16,206.071314 4.92486775,201.146447 11,201.146447 Z",id:"矩形",fill:e||"#DF2A3F",fillRule:"evenodd"}),o.jsx("path",{d:"M72.3425855,16.8295583 C75.799482,7.50883712 86.1577877,2.75526801 95.4785089,6.21216449 C100.284516,7.99463061 104.096358,11.7387855 105.968745,16.4968188 L106.112518,16.8745422 L159.385152,161.694068 C161.291848,166.877345 158.635655,172.624903 153.452378,174.531599 C148.358469,176.405421 142.719567,173.872338 140.716873,168.864661 L140.614848,168.598825 L89.211,28.86 L37.3759214,168.623816 C35.4885354,173.712715 29.8981043,176.351047 24.7909589,174.617647 L24.5226307,174.522368 C19.4337312,172.634982 16.7953993,167.044551 18.5287999,161.937406 L18.6240786,161.669077 L72.3425855,16.8295583 Z",id:"路径-21",fill:"currentColor",fillRule:"nonzero"}),o.jsx("path",{d:"M121,103.146447 C126.522847,103.146447 131,107.623599 131,113.146447 C131,118.575687 126.673329,122.994378 121.279905,123.142605 L121,123.146447 L55,123.146447 C49.4771525,123.146447 45,118.669294 45,113.146447 C45,107.717207 49.3266708,103.298515 54.7200952,103.150288 L55,103.146447 L121,103.146447 Z",id:"路径-22",fill:"currentColor",fillRule:"nonzero"})]})})})})}function Et(e){const[t,n]=m.useState(void 0);function i(c){var l;(l=e.action)==null||l.call(e,c)}function a(){var c;(c=e.action)==null||c.call(e,t)}const r=m.useCallback(w.debounce(c=>{n(c)},350),[]);return o.jsxs("div",{className:"richtext-flex richtext-items-center richtext-h-[32px]",children:[o.jsx(s.ActionButton,{tooltip:e==null?void 0:e.tooltip,disabled:e==null?void 0:e.disabled,action:a,children:o.jsx("span",{className:"richtext-flex richtext-items-center richtext-justify-center richtext-text-sm",children:o.jsx(Lt,{fill:t})})}),o.jsx(s.ColorPicker,{selectedColor:t,setSelectedColor:r,onChange:i,disabled:e==null?void 0:e.disabled,colors:e==null?void 0:e.colors,defaultColor:e==null?void 0:e.defaultColor,children:o.jsx(s.Button,{variant:"ghost",size:"icon",className:"r!ichtext-h-[32px] !richtext-w-3",disabled:e==null?void 0:e.disabled,children:o.jsx(s.IconComponent,{className:"!richtext-w-3 !richtext-h-3 richtext-text-zinc-500",name:"MenuDown"})})})]})}const It=f.Color.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),button({editor:t,t:n,extension:i}){return{component:Et,componentProps:{colors:i.options.colors,defaultColor:i.options.defaultColor,action:a=>{a===void 0&&t.chain().focus().unsetColor().run(),typeof a=="string"&&t.chain().focus().setColor(a).run()},isActive:()=>{const{color:a}=t.getAttributes("textStyle");return a&&t.isActive({color:a})||!1},editor:t,disabled:!t.can().setColor(""),tooltip:n("editor.color.tooltip")}}}}}}),Mt=f.Highlight.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),multicolor:!0,button:({editor:t,t:n})=>({component:s.HighlightActionButton,componentProps:{action:i=>{typeof i=="string"&&t.chain().focus().setHighlight({color:i}).run(),i===void 0&&t.chain().focus().unsetHighlight().run()},editor:t,isActive:()=>t.isActive("highlight")||!1,disabled:!t.can().setHighlight(),shortcutKeys:["⇧","mod","H"],tooltip:n("editor.highlight.tooltip")}})}}}),Dt=f.BulletList.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),button:({editor:t,t:n})=>({component:s.ActionButton,componentProps:{action:()=>t.commands.toggleBulletList(),isActive:()=>t.isActive("bulletList")||!1,disabled:!1,shortcutKeys:["shift","mod","8"],icon:"List",tooltip:n("editor.bulletlist.tooltip")}})}}}),Rt=f.Node.create({name:"clear",addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),button:({editor:t,t:n})=>({component:s.ActionButton,componentProps:{action:()=>t.chain().focus().clearNodes().unsetAllMarks().run(),disabled:!t.can().chain().focus().clearNodes().unsetAllMarks().run(),icon:"Eraser",tooltip:n("editor.clear.tooltip")}})}}}),Pt=f.OrderedList.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),button:({editor:t,t:n})=>({component:s.ActionButton,componentProps:{action:()=>t.commands.toggleOrderedList(),isActive:()=>t.isActive("orderedList")||!1,disabled:!1,icon:"ListOrdered",shortcutKeys:["mod","shift","7"],tooltip:n("editor.orderedlist.tooltip")}})}}}),Ht=f.TaskList.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),HTMLAttributes:{class:"task-list"},taskItem:{HTMLAttributes:{class:"task-list-item"}},button:({editor:t,t:n})=>({component:s.ActionButton,componentProps:{action:()=>t.commands.toggleTaskList(),isActive:()=>t.isActive("taskList")||!1,disabled:!1,icon:"ListTodo",shortcutKeys:["shift","mod","9"],tooltip:n("editor.tasklist.tooltip")}})}},addExtensions(){return[f.TaskItem.configure(this.options.taskItem)]}}),Bt=f.Blockquote.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),HTMLAttributes:{class:"blockquote"},button:({editor:t,t:n})=>({component:s.ActionButton,componentProps:{action:()=>t.commands.toggleBlockquote(),isActive:()=>t.isActive("blockquote")||!1,disabled:!t.can().toggleBlockquote(),icon:"TextQuote",shortcutKeys:["shift","mod","B"],tooltip:n("editor.blockquote.tooltip")}})}}});function zt(e){const[t,n]=m.useState(!1);function i(a,r,c){e.action&&(e.action({link:a,text:r,openInNewTab:c}),n(!1))}return o.jsxs(s.Popover,{modal:!0,open:t,onOpenChange:n,children:[o.jsx(s.PopoverTrigger,{disabled:e==null?void 0:e.disabled,asChild:!0,children:o.jsx(s.ActionButton,{tooltip:e==null?void 0:e.tooltip,isActive:e==null?void 0:e.isActive,disabled:e==null?void 0:e.disabled,children:o.jsx(s.IconComponent,{name:e==null?void 0:e.icon})})}),o.jsx(s.PopoverContent,{hideWhenDetached:!0,className:"richtext-w-full",align:"start",side:"bottom",children:o.jsx(s.LinkEditBlock,{editor:e.editor,onSetLink:i})})]})}const Ot=f.Link.extend({inclusive:!1,parseHTML(){return[{tag:'a[href]:not([data-type="button"]):not([href *= "javascript:" i])'}]},renderHTML({HTMLAttributes:e}){return["a",f.mergeAttributes(this.options.HTMLAttributes,e,{class:"link"}),0]},addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),openOnClick:!0,button:({editor:t,t:n})=>({component:zt,componentProps:{editor:t,action:i=>{const{link:a,text:r,openInNewTab:c}=i;t.chain().extendMarkRange("link").insertContent({type:"text",text:r,marks:[{type:"link",attrs:{href:a,target:c?"_blank":""}}]}).setLink({href:a}).focus().run()},id:"linkk",isActive:()=>t.isActive("link")||!1,disabled:!t.can().setLink({href:""}),icon:"Link",tooltip:n("editor.link.tooltip")}})}},addProseMirrorPlugins(){return[new w.Plugin({props:{handleClick:(e,t)=>{const{schema:n,doc:i,tr:a}=e.state,r=f.getMarkRange(i.resolve(t),n.marks.link);if(!r)return!1;const c=i.resolve(r.from),l=i.resolve(r.to),d=a.setSelection(new w.TextSelection(c,l));e.dispatch(d)}}})]}}),Ft=f.HorizontalRule.extend({renderHTML(){return["div",f.mergeAttributes(this.options.HTMLAttributes,{"data-type":this.name}),["hr"]]},addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),button:({editor:t,t:n})=>({component:s.ActionButton,componentProps:{action:()=>t.commands.setHorizontalRule(),disabled:!t.can().setHorizontalRule(),icon:"Minus",shortcutKeys:["mod","alt","S"],tooltip:n("editor.horizontalrule.tooltip")}})}},addKeyboardShortcuts(){return{"Mod-Alt-s":()=>this.editor.commands.setHorizontalRule()}}});function Ut(e){var h;const{icon:t=void 0,tooltip:n=void 0,customClass:i="",tooltipOptions:a={},action:r=void 0,isActive:c=void 0,children:l}=e,d=s.icons[t];return o.jsxs(s.Tooltip,{children:[o.jsx(s.TooltipTrigger,{asChild:!0,children:o.jsxs(s.Toggle,{size:"sm",className:`richtext-w-[32px] richtext-h-[32px] ${i}`,disabled:c==null?void 0:c(),onClick:r,children:[d&&o.jsx(d,{className:"richtext-w-4 richtext-h-4"}),l&&o.jsx(o.Fragment,{children:l})]})}),n&&o.jsx(s.TooltipContent,{...a,children:o.jsxs("div",{className:"richtext-flex richtext-flex-col richtext-items-center richtext-text-center richtext-max-w-24",children:[o.jsx("div",{children:n}),!!((h=e==null?void 0:e.shortcutKeys)!=null&&h.length)&&o.jsx("span",{children:s.getShortcutKeys(e==null?void 0:e.shortcutKeys)})]})})]})}const qt=["undo","redo"],$t=f.History.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),depth:100,newGroupDelay:500,button:({editor:t,t:n})=>qt.map(i=>({component:Ut,componentProps:{action:()=>{i==="undo"&&t.chain().focus().undo().run(),i==="redo"&&t.chain().focus().redo().run()},shortcutKeys:i==="undo"?["mod","Z"]:["shift","mod","Z"],disabled:i==="undo"?!t.can().undo():!t.can().redo(),isActive:()=>i==="undo"?!t.can().undo():!t.can().redo(),icon:i==="undo"?"Undo2":"Redo2",tooltip:n(`editor.${i}.tooltip`)}}))}}}),Vt=f.Document.extend({content:"(block|columns)+"}),Kt=f.Extension.create({name:"columnActionButton",addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),button:({editor:t,t:n})=>({component:s.ActionButton,componentProps:{action:()=>{t.chain().focus().insertColumns({cols:2}).run()},icon:"Columns",tooltip:n("editor.columns.tooltip")}})}}}),Gt=f.Extension.create({name:"selection",addProseMirrorPlugins(){const{editor:e}=this;return[new w.Plugin({key:new w.PluginKey("selection"),props:{decorations(t){return t.selection.empty||e.isFocused===!0?null:w.DecorationSet.create(t.doc,[w.Decoration.inline(t.selection.from,t.selection.to,{class:"selection"})])}}})]}});function Wt(e){const{t}=p.useLocale(),n=m.useMemo(()=>[{name:"paragraph",label:t("editor.paragraph.tooltip"),iconName:"Heading1",isActive:()=>e.editor.isActive("paragraph")&&!e.editor.isActive("orderedList")&&!e.editor.isActive("bulletList")&&!e.editor.isActive("taskList"),action:()=>e.editor.chain().focus().clearNodes().run()},{name:"heading1",label:t("editor.heading.h1.tooltip"),isActive:()=>e.editor.isActive("heading",{level:1}),iconName:"Heading1",action:()=>e.editor.chain().focus().clearNodes().toggleHeading({level:1}).run()},{name:"heading2",label:t("editor.heading.h2.tooltip"),isActive:()=>e.editor.isActive("heading",{level:2}),iconName:"Heading2",action:()=>e.editor.chain().focus().clearNodes().toggleHeading({level:2}).run()},{name:"heading3",label:t("editor.heading.h3.tooltip"),isActive:()=>e.editor.isActive("heading",{level:3}),iconName:"Heading3",action:()=>e.editor.chain().focus().clearNodes().toggleHeading({level:3}).run()},{name:"bulletList",label:t("editor.bulletlist.tooltip"),isActive:()=>e.editor.isActive("bulletList"),iconName:"List",action:()=>e.editor.chain().focus().clearNodes().toggleBulletList().run()},{name:"numberedList",label:t("editor.orderedlist.tooltip"),isActive:()=>e.editor.isActive("orderedList"),iconName:"ListOrdered",action:()=>e.editor.chain().focus().clearNodes().toggleOrderedList().run()},{name:"taskList",label:t("editor.tasklist.tooltip"),isActive:()=>e.editor.isActive("taskList"),iconName:"ListTodo",action:()=>e.editor.chain().focus().clearNodes().toggleTaskList().run()},{name:"blockquote",label:t("editor.blockquote.tooltip"),isActive:()=>e.editor.isActive("blockquote"),iconName:"TextQuote",action:()=>e.editor.chain().focus().clearNodes().toggleBlockquote().run()},{name:"codeBlock",label:t("editor.codeblock.tooltip"),isActive:()=>e.editor.isActive("codeBlock"),iconName:"Code2",action:()=>e.editor.chain().focus().clearNodes().toggleCodeBlock().run()}],[e.editor,t]),i=m.useMemo(()=>n.findLast(a=>a.isActive())??{label:"Empty"},[n]);return o.jsxs(s.DropdownMenu,{children:[o.jsx(s.DropdownMenuTrigger,{asChild:!0,children:o.jsxs(s.Button,{className:"richtext-flex richtext-h-[32px] richtext-gap-1 richtext-px-1.5",variant:"ghost",children:[o.jsxs("span",{className:"richtext-whitespace-nowrap richtext-text-sm richtext-font-normal",children:[" ",i==null?void 0:i.label]}),o.jsx(D.ChevronDown,{className:"richtext-size-4"})]})}),o.jsx(s.DropdownMenuContent,{align:"start",className:"richtext-w-full richtext-p-1",hideWhenDetached:!0,sideOffset:5,children:n.map((a,r)=>{var l;const c=s.icons[a.iconName];return o.jsx(s.DropdownMenuCheckboxItem,{checked:((l=a.isActive)==null?void 0:l.call(a))||!1,className:"richtext-cursor-pointer",onClick:()=>a.action(),children:o.jsxs("div",{className:"richtext-flex richtext-items-center richtext-gap-2 richtext-px-2",children:[o.jsx(c,{className:"richtext-h3 richtext-w-3"}),o.jsxs("span",{children:[" ",a.label]})]})},`text-bubble-${r}`)})})]})}const Zt=f.Extension.create({name:"text-bubble",addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),toolbar:!1,button:()=>({component:Wt,componentProps:{}})}}});function ke({types:e,node:t}){return Array.isArray(e)&&e.includes(t.type)||t.type===e}const Xt=f.Extension.create({name:"trailingNode",addOptions(){return{node:"paragraph",notAfter:["paragraph"]}},addProseMirrorPlugins(){const e=new w.PluginKey(this.name),t=Object.entries(this.editor.schema.nodes).map(([,n])=>n).filter(n=>this.options.notAfter.includes(n.name));return[new w.Plugin({key:e,appendTransaction:(n,i,a)=>{const{doc:r,tr:c,schema:l}=a,d=e.getState(a),h=r.content.size,u=l.nodes[this.options.node];if(d)return c.insert(h,u.create())},state:{init:(n,i)=>{const a=i.tr.doc.lastChild;return!ke({node:a,types:t})},apply:(n,i)=>{if(!n.docChanged)return i;const a=n.doc.lastChild;return!ke({node:a,types:t})}}})]}}),Yt=f.Extension.create({name:"base-kit",addExtensions(){const e=[];return this.options.document!==!1&&e.push(Vt.configure()),this.options.placeholder!==!1&&e.push(f.Placeholder.configure({placeholder:({node:t,pos:n,editor:i})=>{var a,r,c,l,d;return((a=t==null?void 0:t.type)==null?void 0:a.name)==="columns"||((r=t==null?void 0:t.content)==null?void 0:r.size)!==0?"":((c=t==null?void 0:t.type)==null?void 0:c.name)==="heading"?`${p.localeActions.t(`editor.heading.h${t.attrs.level}.tooltip`)}`:((l=t==null?void 0:t.type)==null?void 0:l.name)==="codeBlock"||((d=t==null?void 0:t.type)==null?void 0:d.name)==="table"?"":i.extensionManager.extensions.some(h=>h.name==="slashCommand")?p.localeActions.t("editor.slash"):p.localeActions.t("editor.content")},...this.options.placeholder})),this.options.focus!==!1&&e.push(f.FocusClasses.configure({className:"focus",...this.options.focus})),this.options.text!==!1&&e.push(f.Text.configure()),this.options.textBubble!==!1&&e.push(Zt.configure()),this.options.gapcursor!==!1&&e.push(f.Gapcursor.configure()),this.options.dropcursor!==!1&&e.push(f.Dropcursor.configure({...this.options.dropcursor,width:2,class:"ProseMirror-dropcursor border-black"})),this.options.characterCount!==!1&&e.push(f.CharacterCount.configure(this.options.characterCount)),this.options.paragraph!==!1&&e.push(f.Paragraph.configure(this.options.paragraph)),this.options.hardBreak!==!1&&e.push(f.HardBreak.configure(this.options.hardBreak)),this.options.listItem!==!1&&e.push(f.ListItem.configure(this.options.listItem)),this.options.textStyle!==!1&&e.push(f.TextStyle.configure(this.options.textStyle)),this.options.trailingNode!==!1&&e.push(Xt.configure(this.options.trailingNode)),this.options.selection!==!1&&e.push(Gt),this.options.multiColumn!==!1&&e.push(s.Column,s.MultiColumn),e}}),Jt=f.Extension.create({name:"subAndSuperScript",addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),button:({editor:t,extension:n,t:i})=>{const a=n.options.subscript,r=n.options.superscript,c={component:s.ActionButton,componentProps:{action:()=>t.commands.toggleSubscript(),isActive:()=>t.isActive("subscript")||!1,disabled:!t.can().toggleSubscript(),icon:"Subscript",tooltip:i("editor.subscript.tooltip")}},l={component:s.ActionButton,componentProps:{action:()=>t.commands.toggleSuperscript(),isActive:()=>t.isActive("superscript")||!1,disabled:!t.can().toggleSuperscript(),icon:"Superscript",tooltip:i("editor.superscript.tooltip")}},d=[];return a!==!1&&d.push(c),r!==!1&&d.push(l),d}}},addExtensions(){const e=[];return this.options.subscript!==!1&&e.push(f.Subscript.configure(this.options.subscript)),this.options.superscript!==!1&&e.push(f.Superscript.configure(this.options.superscript)),e}});function Qt(e){var n;const t=m.useMemo(()=>{var r;const i=(r=e==null?void 0:e.items)==null?void 0:r.find(c=>c.isActive());return i&&!i.default?{...i,icon:i!=null&&i.icon?i==null?void 0:i.icon:e==null?void 0:e.icon}:{title:e.tooltip,icon:e.icon,isActive:()=>!1}},[e]);return o.jsxs(s.DropdownMenu,{children:[o.jsx(s.DropdownMenuTrigger,{asChild:!0,disabled:e==null?void 0:e.disabled,children:o.jsx(s.ActionButton,{customClass:"!richtext-w-12 richtext-h-12",disabled:e==null?void 0:e.disabled,icon:e==null?void 0:e.icon,tooltip:e==null?void 0:e.tooltip,children:o.jsx(s.MenuDown,{className:"richtext-size-3 richtext-text-gray-500"})})}),o.jsx(s.DropdownMenuContent,{className:"w-full",children:(n=e==null?void 0:e.items)==null?void 0:n.map((i,a)=>o.jsxs(s.DropdownMenuCheckboxItem,{checked:t.title===i.title,className:"richtext-flex richtext-items-center richtext-gap-3",onClick:i.action,children:[o.jsx(s.IconComponent,{name:i==null?void 0:i.icon}),o.jsx("span",{className:"richtext-ml-1",children:i.title}),!!(i!=null&&i.shortcutKeys)&&o.jsx("span",{className:"richtext-ml-auto richtext-text-xs richtext-tracking-widest richtext-opacity-60",children:s.getShortcutKeys(i.shortcutKeys)})]},`more-mark-${a}`))})]})}const en=f.Extension.create({name:"moreMark",addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),button({editor:t,extension:n,t:i}){const a=n.options.subscript,r=n.options.superscript,c={action:()=>t.commands.toggleSubscript(),isActive:()=>t.isActive("subscript")||!1,disabled:!t.can().toggleSubscript(),icon:"Subscript",title:i("editor.subscript.tooltip"),shortcutKeys:["mod","."]},l={action:()=>t.commands.toggleSuperscript(),isActive:()=>t.isActive("superscript")||!1,disabled:!t.can().toggleSuperscript(),icon:"Superscript",title:i("editor.superscript.tooltip"),shortcutKeys:["mod",","]},d=[];return a!==!1&&d.push(c),r!==!1&&d.push(l),{component:Qt,componentProps:{icon:"Type",tooltip:i("editor.moremark"),disabled:!t.isEditable,items:d}}}}},addExtensions(){const e=[];return this.options.subscript!==!1&&e.push(f.Subscript.configure(this.options.subscript)),this.options.superscript!==!1&&e.push(f.Superscript.configure(this.options.superscript)),e}}),tn=f.Extension.create({name:"indent",addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),types:["paragraph","heading","blockquote"],minIndent:s.IndentProps.min,maxIndent:s.IndentProps.max,button({editor:t,t:n}){return[{component:s.ActionButton,componentProps:{action:()=>{t.commands.indent()},shortcutKeys:["Tab"],icon:"IndentIncrease",tooltip:n("editor.indent.tooltip")}},{component:s.ActionButton,componentProps:{action:()=>{t.commands.outdent()},shortcutKeys:["Shift","Tab"],icon:"IndentDecrease",tooltip:n("editor.outdent.tooltip")}}]}}},addGlobalAttributes(){return[{types:this.options.types,attributes:{indent:{default:0,parseHTML:e=>{const t=e.dataset.indent;return(t?Number.parseInt(t,10):0)||0},renderHTML:e=>e.indent?{"data-indent":e.indent}:{}}}}]},addCommands(){return{indent:()=>s.createIndentCommand({delta:s.IndentProps.more,types:this.options.types}),outdent:()=>s.createIndentCommand({delta:s.IndentProps.less,types:this.options.types})}},addKeyboardShortcuts(){return{Tab:()=>this.editor.commands.indent(),"Shift-Tab":()=>this.editor.commands.outdent()}}});function nn(e){return Number.parseFloat(e.replace("%",""))/100}function on(e){const{t}=p.useLocale(),[n,i]=m.useState("default");function a(c){c==="default"?e.editor.commands.unsetLineHeight():e.editor.commands.setLineHeight(c),i(c)}const r=m.useMemo(()=>{const d=e.editor.extensionManager.extensions.find(h=>h.name==="lineHeight").options.lineHeights.map(h=>({label:nn(h),value:h}));return d.unshift({label:t("editor.default"),value:"default"}),d},[e]);return o.jsxs(s.DropdownMenu,{children:[o.jsx(s.DropdownMenuTrigger,{asChild:!0,disabled:e==null?void 0:e.disabled,children:o.jsx(s.ActionButton,{customClass:"!richtext-w-12 richtext-h-12",disabled:e==null?void 0:e.disabled,icon:"LineHeight",tooltip:e==null?void 0:e.tooltip,children:o.jsx(s.IconComponent,{className:"richtext-ml-1 richtext-size-3 richtext-text-zinc-500",name:"MenuDown"})})}),o.jsx(s.DropdownMenuContent,{className:"richtext-min-w-24",children:r==null?void 0:r.map((c,l)=>o.jsx(s.DropdownMenuCheckboxItem,{checked:c.value===n,onClick:()=>a(c.value),children:c.label},`lineHeight-${l}`))})]})}const an=["paragraph","heading","list_item","todo_item"];function rn(e,t){const{selection:n,doc:i}=e;if(!n||!i||!(n instanceof w.TextSelection||n instanceof w.AllSelection))return e;const{from:a,to:r}=n,c=[],l=t&&t!==p.DEFAULT_LINE_HEIGHT?t:null;if(i.nodesBetween(a,r,(d,h)=>{const u=d.type;return an.includes(u.name)?((d.attrs.lineHeight||null)!==l&&c.push({node:d,pos:h,nodeType:u}),u.name!=="list_item"&&u.name!=="todo_item"):!0}),c.length===0)return e;for(const d of c){const{node:h,pos:u,nodeType:x}=d;let{attrs:g}=h;g={...g,lineHeight:l},e=e.setNodeMarkup(u,x,g,h.marks)}return e}function sn(e){return({state:t,dispatch:n})=>{const{selection:i}=t;let{tr:a}=t;return a=a.setSelection(i),a=rn(a,e),a.docChanged?(n&&n(a),!0):!1}}const cn=f.Extension.create({name:"lineHeight",addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),types:["paragraph","heading","list_item","todo_item"],lineHeights:p.DEFAULT_LINE_HEIGHT_LIST,defaultHeight:p.DEFAULT_LINE_HEIGHT,button({editor:t,t:n}){return{component:on,componentProps:{editor:t,tooltip:n("editor.lineheight.tooltip")}}}}},addGlobalAttributes(){return[{types:this.options.types,attributes:{lineHeight:{default:null,parseHTML:e=>e.style.lineHeight||this.options.defaultHeight,renderHTML:e=>e.lineHeight===this.options.defaultHeight||!e.lineHeight?{}:{style:`line-height: ${e.lineHeight}`}}}}]},addCommands(){return{setLineHeight:e=>sn(e),unsetLineHeight:()=>({commands:e})=>this.options.types.every(t=>e.resetAttributes(t,"lineHeight"))}}}),ze=w.d(!1);function ln(){return w.b(ze)}const X={setOpen:e=>{ze(e)}},Oe=w.d(!1);function dn(){return w.b(Oe)}const te={setOpen:e=>{Oe(e)}};function un(e){const t=[{name:"format",title:p.localeActions.t("editor.slash.format"),commands:[]},{name:"insert",title:p.localeActions.t("editor.slash.insert"),commands:[]}];return e.forEach(n=>{n.name.toLowerCase()==="heading"&&n.options.levels.forEach(i=>{t[0].commands.push({name:`heading${i}`,label:p.localeActions.t(`editor.heading.h${i}.tooltip`),aliases:[`h${i}`,"bt",`bt${i}`],iconName:`Heading${i}`,action:({editor:a,range:r})=>{a.chain().focus().deleteRange(r).setHeading({level:i}).run()}})}),n.name.toLowerCase()==="bulletlist"&&t[0].commands.push({name:"bulletList",label:p.localeActions.t("editor.bulletlist.tooltip"),aliases:["ul","yxlb"],iconName:"List",action:({editor:i,range:a})=>{i.chain().focus().deleteRange(a).toggleBulletList().run()}}),n.name.toLowerCase()==="orderedlist"&&t[0].commands.push({name:"numberedList",label:p.localeActions.t("editor.orderedlist.tooltip"),aliases:["ol","yxlb"],iconName:"ListOrdered",action:({editor:i,range:a})=>{i.chain().focus().deleteRange(a).toggleOrderedList().run()}}),n.name.toLowerCase()==="tasklist"&&t[0].commands.push({name:"taskList",label:p.localeActions.t("editor.tasklist.tooltip"),iconName:"ListTodo",description:"Task list with todo items",aliases:["todo"],action:({editor:i,range:a})=>{i.chain().focus().deleteRange(a).toggleTaskList().run()}}),n.name.toLowerCase()==="blockquote"&&t[0].commands.push({name:"blockquote",label:p.localeActions.t("editor.blockquote.tooltip"),description:"插入引入格式",aliases:["yr"],iconName:"TextQuote",action:({editor:i,range:a})=>{i.chain().focus().deleteRange(a).setBlockquote().run()}}),n.name.toLowerCase()==="codeblock"&&t[0].commands.push({name:"codeBlock",label:p.localeActions.t("editor.codeblock.tooltip"),iconName:"Code2",description:"Code block with syntax highlighting",shouldBeHidden:i=>i.isActive("columns"),action:({editor:i,range:a})=>{i.chain().focus().deleteRange(a).setCodeBlock().run()}}),n.name.toLowerCase()==="image"&&t[1].commands.push({name:"image",label:p.localeActions.t("editor.image.tooltip"),iconName:"ImageUp",description:"Insert a image",aliases:["image","tp","tupian"],shouldBeHidden:i=>i.isActive("columns"),action:({editor:i,range:a})=>{i.chain().focus().deleteRange(a).run(),X.setOpen(!0)}}),n.name.toLowerCase()==="video"&&t[1].commands.push({name:"video",label:p.localeActions.t("editor.video.tooltip"),iconName:"Video",description:"Insert a video",aliases:["video","sp","shipin"],shouldBeHidden:i=>i.isActive("columns"),action:({editor:i,range:a})=>{i.chain().focus().deleteRange(a).run(),te.setOpen(!0)}}),n.name.toLowerCase()==="table"&&t[1].commands.push({name:"table",label:p.localeActions.t("editor.table.tooltip"),iconName:"Table",description:"Insert a table",aliases:["table","bg","biaoge","biao"],shouldBeHidden:i=>i.isActive("columns"),action:({editor:i,range:a})=>{i.chain().focus().deleteRange(a).insertTable({rows:3,cols:3,withHeaderRow:!1}).run()}}),n.name.toLowerCase()==="horizontalrule"&&t[1].commands.push({name:"horizontalRule",label:p.localeActions.t("editor.horizontalrule.tooltip"),iconName:"Minus",description:"Insert a horizontal divider",aliases:["hr","fgx","fg"],action:({editor:i,range:a})=>{i.chain().focus().deleteRange(a).setHorizontalRule().run()}}),n.name.toLowerCase()==="columns"&&t[1].commands.push({name:"columns",label:p.localeActions.t("editor.columns.tooltip"),iconName:"Columns2",description:"Add two column content",action:({editor:i})=>{i.chain().focus().insertColumns({cols:2}).run()}})}),t}function hn(e,t){var T,L;const[n,i]=m.useState(0),[a,r]=m.useState(0),c=m.useRef(null),{t:l}=p.useLocale(),d=m.useRef([]);m.useImperativeHandle(t,()=>({onKeyDown:h})),m.useEffect(()=>{if(!c.current)return;const j=a*1e3+n,b=d.current[j];b&&b.scrollIntoView({behavior:"smooth",block:"nearest"})},[n,a]);function h({event:j}){return j.key==="ArrowUp"?(u(),!0):j.key==="ArrowDown"?(x(),!0):j.key==="Enter"?(g(),!0):!1}function u(){var k;if(e.items.length===0)return!1;let j=n-1,b=a;j<0&&(b=a-1,j=((k=e.items[b])==null?void 0:k.commands.length)-1||0),b<0&&(b=e.items.length-1,j=e.items[b].commands.length-1),i(j),r(b)}function x(){if(e.items.length===0)return!1;const j=e.items[a].commands;let b=n+1,k=a;j.length-1<b&&(b=0,k=a+1),e.items.length-1<k&&(k=0),i(b),r(k)}function g(){if(e.items.length===0||a===-1||n===-1)return!1;_(a,n)}function _(j,b){const k=e.items[j].commands[b];e.command(k)}function y(j,b){_(j,b)}function v(j,b,k){d.current[j*1e3+b]=k}return o.jsx("div",{className:"richtext-mb-8 richtext-max-h-[min(80vh,24rem)] richtext-flex-wrap richtext-overflow-auto richtext-rounded-lg !richtext-border !richtext-border-neutral-200 !richtext-bg-white richtext-p-1 !richtext-text-black richtext-shadow-sm dark:!richtext-border-neutral-800 dark:!richtext-bg-black",ref:c,children:(T=e==null?void 0:e.items)!=null&&T.length?o.jsx("div",{className:"richtext-grid richtext-min-w-48 richtext-grid-cols-1 richtext-gap-0.5",children:(L=e==null?void 0:e.items)==null?void 0:L.map((j,b)=>o.jsxs(m.Fragment,{children:[o.jsx("div",{className:"richtext-col-[1/-1] richtext-mx-2 richtext-mt-2 richtext-select-none richtext-text-[0.65rem] richtext-font-semibold richtext-uppercase richtext-tracking-wider !richtext-text-neutral-500 first:richtext-mt-0.5",children:j.title}),j.commands.map((k,A)=>o.jsxs("button",{onClick:()=>y(b,A),ref:N=>v(b,A,N),className:s.cn("richtext-flex richtext-items-center richtext-gap-3 richtext-px-2 richtext-py-1.5 richtext-text-sm !richtext-text-neutral-800 dark:!richtext-text-neutral-200 richtext-text-left richtext-w-full richtext-rounded-sm richtext-outline-none richtext-transition-colors !richtext-bg-transparent hover:!richtext-bg-accent ",{"slash-command-active":a===b&&n===A}),children:[k.iconUrl&&o.jsx("img",{alt:"",className:"richtext-size-6",src:k.iconUrl}),k.iconName&&o.jsx(s.IconComponent,{className:"!richtext-mr-1 !richtext-text-lg",name:k.iconName}),k.label]},`command-${A}`))]},`slash-${j.title}`))}):o.jsx("div",{className:"richtext-p-3",children:o.jsx("span",{className:"richtext-text-xs richtext-text-gray-800 dark:richtext-text-gray-100",children:l("editor.slash.empty")})})})}const mn=m.forwardRef(hn),K="slashCommand";let S;const fn=f.Extension.create({name:K,priority:200,onCreate(){S=xe("body",{interactive:!0,trigger:"manual",placement:"bottom-start",theme:"slash-command",maxWidth:"16rem",offset:[16,8],popperOptions:{strategy:"fixed",modifiers:[{name:"flip",enabled:!1}]}})},addProseMirrorPlugins(){return[f.Suggestion({editor:this.editor,char:"/",allowSpaces:!0,startOfLine:!0,pluginKey:new w.PluginKey(K),allow:({state:e,range:t})=>{var h,u,x;const n=e.doc.resolve(t.from),i=n.depth===1,a=n.parent.type.name==="paragraph",r=((h=n.parent.textContent)==null?void 0:h.charAt(0))==="/",c=this.editor.isActive("column"),l=(x=n.parent.textContent)==null?void 0:x.slice(Math.max(0,(u=n.parent.textContent)==null?void 0:u.indexOf("/"))),d=!(l!=null&&l.endsWith(" "));return(i&&a&&r||c&&a&&r)&&d},command:({editor:e,range:t,props:n})=>{const{view:i}=e;n.action({editor:e,range:t}),i.focus()},items:({query:e,editor:t})=>un(t.extensionManager.extensions).map(c=>({...c,commands:c.commands.filter(l=>{const d=l.label.toLowerCase().trim(),h=e.toLowerCase().trim();if(l.aliases){const u=l.aliases.map(_=>_.toLowerCase().trim()),x=d.match(h),g=u.some(_=>_.match(h));return x||g}return d.match(h)}).filter(l=>l.shouldBeHidden?!l.shouldBeHidden(this.editor):!0)})).filter(c=>c.commands.length>0).map(c=>({...c,commands:c.commands.map(l=>({...l,isEnabled:!0}))})),render:()=>{let e,t=null;return{onStart:n=>{var r;e=new f.ReactRenderer(mn,{props:n,editor:n.editor});const{view:i}=n.editor,a=()=>{if(!n.clientRect)return n.editor.storage[K].rect;const c=n.clientRect();if(!c)return n.editor.storage[K].rect;let l=c.y;if(c.top+e.element.offsetHeight+40>window.innerHeight){const d=c.top+e.element.offsetHeight-window.innerHeight+40;l=c.y-d}return new DOMRect(c.x,l,c.width,c.height)};t=()=>{S==null||S[0].setProps({getReferenceClientRect:a})},(r=i.dom.parentElement)==null||r.addEventListener("scroll",t),S==null||S[0].setProps({getReferenceClientRect:a,appendTo:()=>document.body,content:e.element}),S==null||S[0].show()},onUpdate(n){var c;e.updateProps(n);const{view:i}=n.editor,a=()=>{if(!n.clientRect)return n.editor.storage[K].rect;const l=n.clientRect();return l?new DOMRect(l.x,l.y,l.width,l.height):n.editor.storage[K].rect},r=()=>{S==null||S[0].setProps({getReferenceClientRect:a})};(c=i.dom.parentElement)==null||c.addEventListener("scroll",r),n.editor.storage[K].rect=n.clientRect?a():{width:0,height:0,left:0,top:0,right:0,bottom:0},S==null||S[0].setProps({getReferenceClientRect:a})},onKeyDown(n){var i;return n.event.key==="Escape"?(S==null||S[0].hide(),!0):(S!=null&&S[0].state.isShown||S==null||S[0].show(),(i=e.ref)==null?void 0:i.onKeyDown(n))},onExit(n){var i;if(S==null||S[0].hide(),t){const{view:a}=n.editor;(i=a.dom.parentElement)==null||i.removeEventListener("scroll",t)}e.destroy()}}}})]},addStorage(){return{rect:{width:0,height:0,left:0,top:0,right:0,bottom:0}}}});function gn({editor:e,imageInline:t,onClose:n}){const{t:i}=p.useLocale(),[a,r]=m.useState(!1),c=m.useRef(null),[l,d]=m.useState(),[h,u]=m.useState(""),x=m.useRef(null),[g,_]=m.useState({src:"",file:null});function y(b){if(c.current&&b.width&&b.height){const k=v(c.current,b);u(k)}}function v(b,k){const A=document.createElement("canvas"),N=b.naturalWidth/b.width,E=b.naturalHeight/b.height;A.width=k.width*N,A.height=k.height*E;const B=A.getContext("2d");return B&&(B.imageSmoothingEnabled=!1,B.drawImage(b,k.x*N,k.y*E,k.width*N,k.height*E,0,0,k.width*N,k.height*E)),A.toDataURL("image/png",1)}async function T(){var b,k;try{const A=s.dataURLtoFile(h,((b=g==null?void 0:g.file)==null?void 0:b.name)||"image.png"),N=(k=e.extensionManager.extensions.find(B=>B.name==="image"))==null?void 0:k.options;let E="";N.upload?E=await N.upload(A):E=URL.createObjectURL(A),e.chain().focus().setImageInline({src:E,inline:t}).run(),r(!1),_({src:"",file:null}),n()}catch(A){console.log("Error cropping image",A)}}function L(b){var k;b.preventDefault(),(k=x.current)==null||k.click()}const j=async b=>{var E;const k=(E=b==null?void 0:b.target)==null?void 0:E.files;if(!e||e.isDestroyed||k.length===0)return;const A=k[0],N=await s.readImageAsBase64(A);r(!0),_({src:N.src,file:A})};return o.jsxs(o.Fragment,{children:[o.jsx(s.Button,{className:"richtext-mt-1 richtext-w-full",onClick:L,size:"sm",children:i("editor.image.dialog.tab.uploadCrop")}),o.jsxs(s.Dialog,{open:a,children:[o.jsx(s.DialogTrigger,{}),o.jsxs(s.DialogContent,{children:[o.jsx(s.DialogTitle,{children:i("editor.image.dialog.tab.uploadCrop")}),o.jsx("div",{children:g.src&&o.jsx(Xe,{className:"richtext-w-full",crop:l,onChange:b=>d(b),onComplete:b=>y(b),children:o.jsx("img",{alt:"Crop me",ref:c,src:g.src})})}),o.jsxs(s.DialogFooter,{children:[o.jsxs(s.Button,{onClick:()=>{r(!1),_({src:"",file:null})},children:[i("editor.imageUpload.cancel"),o.jsx(s.IconComponent,{className:"richtext-ml-[4px]",name:"Trash2"})]}),o.jsxs(s.Button,{className:"richtext-w-fit",onClick:T,children:[i("editor.imageUpload.crop"),o.jsx(s.IconComponent,{className:"richtext-ml-[4px]",name:"Crop"})]})]})]})]}),o.jsx("input",{accept:"image/*",multiple:!0,onChange:j,ref:x,type:"file",style:{display:"none"}})]})}function _n(e){var g;const{t}=p.useLocale(),n=ln(),[i,a]=m.useState(""),r=m.useRef(null),[c,l]=m.useState(((g=e.editor.extensionManager.extensions.find(_=>_.name===ge.name))==null?void 0:g.options.defaultInline)||!1),d=m.useMemo(()=>{var y;return(y=e.editor.extensionManager.extensions.find(v=>v.name===ge.name))==null?void 0:y.options},[e.editor]);async function h(_){var L;const y=(L=_==null?void 0:_.target)==null?void 0:L.files;if(!e.editor||e.editor.isDestroyed||y.length===0)return;const v=y[0];let T="";d.upload?T=await d.upload(v):T=URL.createObjectURL(v),e.editor.chain().focus().setImageInline({src:T,inline:c}).run(),X.setOpen(!1),l(!1)}function u(_){_.preventDefault(),_.stopPropagation(),e.editor.chain().focus().setImageInline({src:i,inline:c}).run(),X.setOpen(!1),l(!1),a("")}function x(_){var y;_.preventDefault(),(y=r.current)==null||y.click()}return o.jsxs(s.Dialog,{onOpenChange:X.setOpen,open:n,children:[o.jsx(s.DialogTrigger,{asChild:!0,children:o.jsx(s.ActionButton,{action:()=>X.setOpen(!0),icon:e.icon,tooltip:e.tooltip})}),o.jsxs(s.DialogContent,{children:[o.jsx(s.DialogTitle,{children:t("editor.image.dialog.title")}),o.jsxs(He,{activationMode:"manual",defaultValue:d.resourceImage==="both"||d.resourceImage==="upload"?"upload":"link",children:[o.jsxs(we,{className:"richtext-grid richtext-w-full richtext-grid-cols-2",children:[d.resourceImage==="both"||d.resourceImage==="upload"?o.jsx(ie,{value:"upload",children:t("editor.image.dialog.tab.upload")}):o.jsx(o.Fragment,{}),d.resourceImage==="both"||d.resourceImage==="link"?o.jsx(ie,{value:"link",children:t("editor.image.dialog.tab.url")}):o.jsx(o.Fragment,{})]}),o.jsxs("div",{className:"richtext-my-[10px] richtext-flex richtext-items-center richtext-gap-[4px]",children:[o.jsx(Be,{checked:c,onCheckedChange:_=>{l(_)}}),o.jsx(s.Label,{children:t("editor.link.dialog.inline")})]}),o.jsxs(oe,{value:"upload",children:[o.jsxs("div",{className:"richtext-flex richtext-items-center richtext-gap-[10px]",children:[o.jsx(s.Button,{className:"richtext-mt-1 richtext-w-full",onClick:x,size:"sm",children:t("editor.image.dialog.tab.upload")}),o.jsx(gn,{editor:e.editor,imageInline:c,onClose:()=>X.setOpen(!1)})]}),o.jsx("input",{accept:"image/*",multiple:!0,onChange:h,ref:r,type:"file",style:{display:"none"}})]}),o.jsx(oe,{value:"link",children:o.jsx("form",{onSubmit:u,children:o.jsxs("div",{className:"richtext-flex richtext-items-center richtext-gap-2",children:[o.jsx(s.Input,{autoFocus:!0,onChange:_=>a(_.target.value),placeholder:t("editor.image.dialog.placeholder"),required:!0,type:"url",value:i}),o.jsx(s.Button,{type:"submit",children:t("editor.image.dialog.button.apply")})]})})})]})]})]})}const ae={TOP_LEFT:"tl",TOP_RIGHT:"tr",BOTTOM_LEFT:"bl",BOTTOM_RIGHT:"br"};function xn(e){var E,B;const[t,n]=m.useState({width:p.IMAGE_MAX_SIZE,height:p.IMAGE_MAX_SIZE}),[i,a]=m.useState({width:0,height:0}),[r]=m.useState([ae.TOP_LEFT,ae.TOP_RIGHT,ae.BOTTOM_LEFT,ae.BOTTOM_RIGHT]),[c,l]=m.useState(!1),[d,h]=m.useState({x:0,y:0,w:0,h:0,dir:""}),{align:u,inline:x}=(E=e==null?void 0:e.node)==null?void 0:E.attrs,g=m.useMemo(()=>{var ye;const{src:C,alt:R,width:P,height:$,flipX:V,flipY:I}=(ye=e==null?void 0:e.node)==null?void 0:ye.attrs,z=w.isNumber(P)?`${P}px`:P,O=w.isNumber($)?`${$}px`:$,le=[];V&&le.push("rotateX(180deg)"),I&&le.push("rotateY(180deg)");const Ke=le.join(" ");return{src:C||void 0,alt:R||void 0,style:{width:z||void 0,height:O||void 0,transform:Ke||"none"}}},[(B=e==null?void 0:e.node)==null?void 0:B.attrs]),_=m.useMemo(()=>{const{style:{width:C}}=g;return{width:C==="100%"?C:void 0}},[g]);function y(C){a({width:C.target.width,height:C.target.height})}function v(){const{editor:C,getPos:R}=e;C.commands.setNodeSelection(R())}const T=m.useCallback(w.throttle(()=>{const{editor:C}=e,{width:R}=getComputedStyle(C.view.dom);n(P=>({...P,width:Number.parseInt(R,10)}))},p.IMAGE_THROTTLE_WAIT_TIME),[e==null?void 0:e.editor]);function L(C,R){C.preventDefault(),C.stopPropagation();const P=i.width,$=i.height,V=P/$;let I=Number(e.node.attrs.width),z=Number(e.node.attrs.height);const O=t.width;I&&!z?(I=I>O?O:I,z=Math.round(I/V)):z&&!I?(I=Math.round(z*V),I=I>O?O:I):!I&&!z?(I=P>O?O:P,z=Math.round(I/V)):I=I>O?O:I,l(!0),h({x:C.clientX,y:C.clientY,w:I,h:z,dir:R})}const j=m.useCallback(w.throttle(C=>{if(C.preventDefault(),C.stopPropagation(),!c)return;const{x:R,w:P,dir:$}=d,V=(C.clientX-R)*(/l/.test($)?-1:1),I=w.clamp(P+V,p.IMAGE_MIN_SIZE,t.width);e.updateAttributes({width:I,height:null})},p.IMAGE_THROTTLE_WAIT_TIME),[c,d,t,e.updateAttributes]),b=m.useCallback(C=>{C.preventDefault(),C.stopPropagation(),c&&(h({x:0,y:0,w:0,h:0,dir:""}),l(!1),v())},[c,v]),k=m.useCallback(()=>{document==null||document.addEventListener("mousemove",j,!0),document==null||document.addEventListener("mouseup",b,!0)},[j,b]),A=m.useCallback(()=>{document==null||document.removeEventListener("mousemove",j,!0),document==null||document.removeEventListener("mouseup",b,!0)},[j,b]);m.useEffect(()=>(c?k():A(),()=>{A()}),[c,k,A]);const N=m.useMemo(()=>new ResizeObserver(()=>T()),[T]);return m.useEffect(()=>(N.observe(e.editor.view.dom),()=>{N.disconnect()}),[e.editor.view.dom,N]),o.jsx(f.NodeViewWrapper,{as:x?"span":"div",className:"image-view",style:{..._,textAlign:u,display:x?"inline":"block"},children:o.jsxs("div",{"data-drag-handle":!0,draggable:"true",style:_,className:`image-view__body ${e!=null&&e.selected?"image-view__body--focused":""} ${c?"image-view__body--resizing":""}`,children:[o.jsx("img",{alt:g.alt,className:"image-view__body__image block",height:"auto",onClick:v,onLoad:y,src:g.src,style:g.style}),(e==null?void 0:e.editor.view.editable)&&((e==null?void 0:e.selected)||c)&&o.jsx("div",{className:"image-resizer",children:r==null?void 0:r.map(C=>o.jsx("span",{className:`image-resizer__handler image-resizer__handler--${C}`,onMouseDown:R=>L(R,C)},`image-dir-${C}`))})]})})}const Y=new w.PluginKey("upload-image");function bn(){return new w.Plugin({key:Y,state:{init(){return w.DecorationSet.empty},apply(e,t){t=t.map(e.mapping,e.doc);const n=e.getMeta(Y);if(n!=null&&n.add)for(const{id:i,pos:a,src:r}of n.add){const c=pn(r),l=w.Decoration.widget(a,c,{id:i});t=t.add(e.doc,[l])}else if(n!=null&&n.remove)for(const i of n.remove)t=t.remove(t.find(void 0,void 0,a=>a.id===i));return t}},props:{decorations(e){return this.getState(e)}}})}function pn(e){const t=document.createElement("div"),n=document.createElement("img");return n.setAttribute("class","opacity-50"),n.src=e,n.addEventListener("load",()=>{t.setAttribute("class","img-placeholder")}),t.append(n),t}function wn(e,t){var a;const i=Y.getState(e).find(void 0,void 0,r=>r.id===t);return i.length>0?(a=i[0])==null?void 0:a.from:null}function yn({validateFn:e,onUpload:t,postUpload:n}){return(i,a,r)=>{for(const c of i){if(e&&!e(c))continue;const l=Date.now().toString(),d=a.state.tr;d.selection.empty||d.deleteSelection();const h=URL.createObjectURL(c);d.setMeta(Y,{add:[{id:l,pos:r,src:h}]}),a.dispatch(d),t(c).then(async u=>{var L;n&&typeof u=="string"&&(u=await n(u));const{schema:x}=a.state;let g=wn(a.state,l);if(g===null)return;const _=typeof u=="object"?h:u,y=(L=x.nodes.image)==null?void 0:L.create({src:_});if(!y)return;const{doc:v}=a.state;g>v.content.size&&(g=v.content.size-1);const T=a.state.tr.replaceWith(g,g,y).setMeta(Y,{remove:[l]});a.dispatch(T)},()=>{const u=a.state.tr.delete(r,r).setMeta(Y,{remove:[l]});a.dispatch(u)})}}}function vn(e,t,n){var a;const i=[...((a=t.clipboardData)==null?void 0:a.files)||[]];if(i.length>0){t.preventDefault();const r=e.state.selection.from;return n(i,e,r+1),!0}return!1}function kn(e,t,n,i){var r;const a=[...((r=t.dataTransfer)==null?void 0:r.files)||[]];if(!n&&a.length>0){t.preventDefault();const c=e.posAtCoords({left:t.clientX,top:t.clientY});if(c)return i(a,e,c.pos+1),!0}return!1}const jn={acceptMimes:["image/jpeg","image/gif","image/png","image/jpg"],maxSize:1024*1024*5,resourceImage:"both",defaultInline:!1},ge=f.Image.extend({group:"inline",inline:!0,defining:!0,draggable:!0,selectable:!0,addOptions(){var e;return{...jn,...(e=this.parent)==null?void 0:e.call(this),upload:()=>Promise.reject("Image Upload Function"),button:({editor:t,extension:n,t:i})=>{var a,r;return{component:_n,componentProps:{action:()=>!0,upload:n.options.upload,disabled:!((r=(a=t.can()).setImage)!=null&&r.call(a,{})),icon:"ImageUp",tooltip:i("editor.image.tooltip"),editor:t}}}}},addAttributes(){var e;return{...(e=this.parent)==null?void 0:e.call(this),flipX:{default:!1},flipY:{default:!1},width:{default:null,parseHTML:t=>{const n=t.style.width||t.getAttribute("width")||null;return n?Number.parseInt(n,10):null},renderHTML:t=>({width:t.width})},align:{default:"center",parseHTML:t=>t.getAttribute("align"),renderHTML:t=>({align:t.align})},inline:{default:!1,parseHTML:t=>!!t.getAttribute("inline"),renderHTML:t=>({inline:t.inline})}}},addNodeView(){return f.ReactNodeViewRenderer(xn)},addCommands(){var e;return{...(e=this.parent)==null?void 0:e.call(this),setImageInline:t=>({commands:n})=>n.insertContent({type:this.name,attrs:{...t,inline:t.inline??this.options.defaultInline}}),updateImage:t=>({commands:n})=>n.updateAttributes(this.name,t),setAlignImage:t=>({commands:n})=>n.updateAttributes(this.name,{align:t})}},renderHTML({HTMLAttributes:e}){const{flipX:t,flipY:n,align:i,inline:a}=e,r=t||n?`transform: rotateX(${t?"180":"0"}deg) rotateY(${n?"180":"0"}deg);`:"",c=i?`text-align: ${i};`:"";return[a?"span":"div",{style:c,class:"image"},["img",f.mergeAttributes({height:"auto",style:r},this.options.HTMLAttributes,e)]]},parseHTML(){return[{tag:"span.image img",getAttrs:e=>{var r;const t=e==null?void 0:e.parentElement,n=e==null?void 0:e.getAttribute("width"),i=(e==null?void 0:e.getAttribute("flipx"))||!1,a=(e==null?void 0:e.getAttribute("flipy"))||!1;return{src:e==null?void 0:e.getAttribute("src"),alt:e==null?void 0:e.getAttribute("alt"),caption:e==null?void 0:e.getAttribute("caption"),width:n?Number.parseInt(n,10):null,align:(e==null?void 0:e.getAttribute("align"))||((r=t==null?void 0:t.style)==null?void 0:r.textAlign)||null,inline:(e==null?void 0:e.getAttribute("inline"))||!1,flipX:i==="true",flipY:a==="true"}}},{tag:"div[class=image]",getAttrs:e=>{const t=e.querySelector("img"),n=t==null?void 0:t.getAttribute("width"),i=(t==null?void 0:t.getAttribute("flipx"))||!1,a=(t==null?void 0:t.getAttribute("flipy"))||!1;return{src:t==null?void 0:t.getAttribute("src"),alt:t==null?void 0:t.getAttribute("alt"),caption:t==null?void 0:t.getAttribute("caption"),width:n?Number.parseInt(n,10):null,align:(t==null?void 0:t.getAttribute("align"))||e.style.textAlign||null,inline:(t==null?void 0:t.getAttribute("inline"))||!1,flipX:i==="true",flipY:a==="true"}}}]},addProseMirrorPlugins(){const t=yn({validateFn:n=>!(!this.options.acceptMimes.includes(n.type)||n.size>this.options.maxSize),onUpload:this.options.upload});return[new w.Plugin({props:{handlePaste:(n,i)=>!i.clipboardData||[...i.clipboardData.files||[]].some(r=>r.type==="text/html")?!1:vn(n,i,t),handleDrop:(n,i,a,r)=>(!(i instanceof DragEvent)||!i.dataTransfer||kn(n,i,r,t),!1)}}),bn()]}});function Cn(e){return/\.(?:mp4|webm|ogg|mov)$/i.test(e)}function An(e){const{t}=p.useLocale(),[n,i]=m.useState(""),a=m.useRef(null),r=dn(),[c,l]=m.useState(""),d=m.useMemo(()=>{var _;return(_=e.editor.extensionManager.extensions.find(y=>y.name===Fe.name))==null?void 0:_.options},[e.editor]);async function h(g){var T;const _=(T=g==null?void 0:g.target)==null?void 0:T.files;if(!e.editor||e.editor.isDestroyed||_.length===0)return;const y=_[0];let v="";d.upload?v=await d.upload(y):v=URL.createObjectURL(y),e.editor.chain().setVideo({src:v,width:"100%"}).focus().run(),te.setOpen(!1)}function u(g){g.preventDefault(),g.stopPropagation(),n&&(e.editor.chain().setVideo({src:n,width:"100%"}).focus().run(),te.setOpen(!1))}function x(g){var _;g.preventDefault(),(_=a.current)==null||_.click()}return o.jsxs(s.Dialog,{open:r,onOpenChange:te.setOpen,children:[o.jsx(s.DialogTrigger,{asChild:!0,children:o.jsx(s.ActionButton,{icon:e.icon,action:()=>te.setOpen(!0),tooltip:e.tooltip})}),o.jsxs(s.DialogContent,{children:[o.jsx(s.DialogTitle,{children:t("editor.video.dialog.title")}),o.jsxs(He,{defaultValue:(d==null?void 0:d.resourceVideo)==="both"||(d==null?void 0:d.resourceVideo)==="upload"?"upload":"link",activationMode:"manual",children:[o.jsxs(we,{className:"richtext-grid richtext-w-full richtext-grid-cols-2",children:[((d==null?void 0:d.resourceVideo)==="both"||(d==null?void 0:d.resourceVideo)==="upload")&&o.jsx(ie,{value:"upload",children:t("editor.video.dialog.tab.upload")}),((d==null?void 0:d.resourceVideo)==="both"||(d==null?void 0:d.resourceVideo)==="link")&&o.jsx(ie,{value:"link",children:t("editor.video.dialog.link")})]}),o.jsxs(oe,{value:"upload",children:[o.jsx("div",{className:"richtext-flex richtext-items-center richtext-gap-[10px]",children:o.jsx(s.Button,{className:"richtext-w-full richtext-mt-1",size:"sm",onClick:x,children:t("editor.video.dialog.tab.upload")})}),o.jsx("input",{type:"file",accept:"video/*",ref:a,multiple:!0,style:{display:"none"},onChange:h})]}),o.jsxs(oe,{value:"link",children:[o.jsx("form",{onSubmit:u,children:o.jsxs("div",{className:"richtext-flex richtext-items-center richtext-gap-2",children:[o.jsx(s.Input,{type:"url",autoFocus:!0,value:n,onChange:g=>{const _=g.target.value;if(!Cn(_)){l("Invalid video URL"),i("");return}l(""),i(_)},required:!0,placeholder:t("editor.video.dialog.placeholder")}),o.jsx(s.Button,{type:"submit",children:t("editor.video.dialog.button.apply")})]})}),c&&o.jsx("div",{className:"richtext-text-red-500 richtext-my-[5px]",children:c})]})]})]})]})}function Tn(e){return e=e.replace("https://youtu.be/","https://www.youtube.com/watch?v=").replace("watch?v=","embed/"),e=e.replace("https://vimeo.com/","https://player.vimeo.com/video/"),/^https?:\/\/www.bilibili.com\/video\/.*/i.test(e)&&(e=e.replace(/\?.*$/,"").replace("https://www.bilibili.com/video/","https://player.bilibili.com/player.html?bvid=")),e.includes("drive.google.com")&&(e=e.replace("/view","/preview")),e}const Fe=f.Node.create({name:"video",group:"block",atom:!0,draggable:!0,addOptions(){return{divider:!1,spacer:!1,allowFullscreen:!0,upload:void 0,frameborder:!1,resourceVideo:"both",width:p.VIDEO_SIZE["size-medium"],HTMLAttributes:{class:"iframe-wrapper",style:"display: flex;justify-content: center;"},button:({editor:e,t})=>{var n,i;return{component:An,componentProps:{action:()=>{},isActive:()=>e.isActive("video")||!1,disabled:!((i=(n=e.can()).setVideo)!=null&&i.call(n,{})),icon:"Video",tooltip:t("editor.video.tooltip"),editor:e}}}}},addAttributes(){return{src:{default:null,renderHTML:({src:e})=>({src:e?Tn(e):null})},width:{default:this.options.width,renderHTML:({width:e})=>({width:s.getCssUnitWithDefault(e)})},frameborder:{default:this.options.frameborder?1:0,parseHTML:()=>this.options.frameborder?1:0},allowfullscreen:{default:this.options.allowFullscreen,parseHTML:()=>this.options.allowFullscreen}}},parseHTML(){return[{tag:"div[data-video] iframe"}]},renderHTML({HTMLAttributes:e}){const{width:t="100%"}=e??{},n={...e,width:"100%",height:"100%"},i=`position: relative;overflow: hidden;display: flex;flex: 1;max-width: ${t};`,a=`flex: 1;padding-bottom: ${9/16*100}%;`,l=["div",{style:i},["div",{style:a}],["iframe",n]];return["div",{...this.options.HTMLAttributes,"data-video":""},l]},addCommands(){return{setVideo:e=>({commands:t})=>t.insertContent({type:this.name,attrs:e}),updateVideo:e=>({commands:t})=>t.updateAttributes(this.name,e)}}});function Nn(e,t,n){if(!e.doc)return e;const i=e.doc.nodeAt(t);if(!i||n===i.attrs.backgroundColor)return e;const a={...i.attrs,backgroundColor:n};return e.setNodeMarkup(t,i.type,a,i.marks)}function Sn(e,t,n){const{doc:i,selection:a}=e;return!i||!a||!(a instanceof w.CellSelection)||a.forEachCell((r,c)=>{e=Nn(e,c,n)}),e}function je(e,t){return({tr:n,state:i,dispatch:a})=>{const{selection:r}=i;return n=n.setSelection(r),n=Sn(n,t,e),n.docChanged?(a==null||a(n),!0):!1}}const Ln=f.Extension.create({name:"tableCellBackground",addOptions(){return{types:["tableCell"],HTMLAttributes:{}}},addGlobalAttributes(){return[{types:this.options.types,attributes:{backgroundColor:{parseHTML:e=>e.style.backgroundColor||"",renderHTML:e=>!e.backgroundColor||e.backgroundColor===""?{}:{style:`background-color: ${e.backgroundColor}`}}}}]},addCommands(){return{setTableCellBackground:e=>je(e,this.options),unsetTableCellBackground:()=>je("",this.options)}}}),En=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,In=/CrOS/,Mn=/android|ipad|playbook|silk/i;function Ce(e={}){let t=e.ua||typeof navigator<"u"&&navigator.userAgent;return t&&typeof t=="object"&&t.headers&&typeof t.headers["user-agent"]=="string"&&(t=t.headers["user-agent"]),typeof t!="string"?!1:!!(En.test(t)&&!In.test(t)||e.tablet&&Mn.test(t)||e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&t.includes("Macintosh")&&t.includes("Safari"))}const Ae=e=>Array.from({length:e}).map((t,n)=>n+1);function Dn(e){var u;const[t,n]=m.useState(!0),[i,a]=m.useState({rows:Ce()?p.TABLE_MAX_GRID_SIZE:p.TABLE_INIT_GRID_SIZE,cols:Ce()?p.TABLE_MAX_GRID_SIZE:p.TABLE_INIT_GRID_SIZE}),[r,c]=m.useState({rows:p.TABLE_DEFAULT_SELECTED_GRID_SIZE,cols:p.TABLE_DEFAULT_SELECTED_GRID_SIZE});function l(x,g){x===i.rows&&a(_=>({..._,rows:Math.min(x+1,p.TABLE_MAX_GRID_SIZE)})),g===i.cols&&a(_=>({..._,cols:Math.min(g+1,p.TABLE_MAX_GRID_SIZE)})),c({rows:x,cols:g})}function d(x,g){e==null||e.createTable({rows:x,cols:g,withHeaderRow:t}),h()}function h(){n(!1),a({rows:p.TABLE_INIT_GRID_SIZE,cols:p.TABLE_INIT_GRID_SIZE}),c({rows:p.TABLE_DEFAULT_SELECTED_GRID_SIZE,cols:p.TABLE_DEFAULT_SELECTED_GRID_SIZE})}return o.jsxs(s.Popover,{modal:!0,children:[o.jsx(s.PopoverTrigger,{asChild:!0,children:e==null?void 0:e.children}),o.jsx(s.PopoverContent,{align:"start",className:"richtext-w-full !richtext-p-2",side:"bottom",children:o.jsxs("div",{className:"table-grid-size-editor richtext-p-0",children:[o.jsx("div",{className:"richtext-flex richtext-flex-col richtext-flex-wrap richtext-justify-between richtext-gap-1",children:(u=Ae(i==null?void 0:i.rows))==null?void 0:u.map(x=>{var g;return o.jsx("div",{className:"richtext-flex richtext-gap-1",children:(g=Ae(i==null?void 0:i.cols))==null?void 0:g.map(_=>o.jsx("div",{onMouseDown:()=>d(x,_),onMouseOver:()=>l(x,_),className:`richtext-cursor-pointer richtext-border-border ${_<=r.cols&&x<=r.rows&&"tableCellActive !richtext-bg-foreground"}`,children:o.jsx("div",{className:"richtext-box-border richtext-size-4 richtext-rounded-[2px] !richtext-border richtext-border-solid !richtext-border-border richtext-p-1"})},`c-${_}`))},`r-${x}`)})}),o.jsxs("div",{className:"richtext-mt-2 richtext-text-center richtext-text-sm richtext-text-zinc-600",children:[r.rows," ","x",r.cols]})]})})]})}function Rn(e){function t(n){e.disabled||e.editor.chain().focus().insertTable({...n,withHeaderRow:!1}).run()}return o.jsx(Dn,{createTable:t,children:o.jsx(s.ActionButton,{icon:e==null?void 0:e.icon,tooltip:e==null?void 0:e.tooltip,disabled:e==null?void 0:e.disabled,color:e==null?void 0:e.color,action:e==null?void 0:e.action,isActive:e==null?void 0:e.isActive})})}const Pn=f.Table.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),resizable:!0,lastColumnResizable:!0,allowTableNodeSelection:!1,button:({editor:t,t:n})=>({component:Rn,componentProps:{disabled:t.isActive("table")||!1,icon:"Table",tooltip:n("editor.table.tooltip"),editor:t}})}},addExtensions(){return[f.TableRow.configure(this.options.tableRow),f.TableHeader.configure(this.options.tableHeader),f.TableCell.configure(this.options.tableCell),Ln.configure(this.options.tableCellBackground)]}}),Hn=f.Extension.create({name:"painter",addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),button:({editor:t,t:n})=>({component:s.ActionButton,componentProps:{action:()=>{t.commands.setPainter(t==null?void 0:t.state.selection.$head.marks())},icon:"PaintRoller",tooltip:n("editor.format")}})}},addCommands(){return{setPainter:e=>({view:{dispatch:t,state:{tr:n},dom:i}})=>{const c=`url("data:image/svg+xml;utf8,${encodeURIComponent('<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="#000" d="M9 22v-6H4V7q0-1.65 1.175-2.825T8 3h12v13h-5v6zM6 10h12V5h-1v4h-2V5h-1v2h-2V5H8q-.825 0-1.412.588T6 7zm0 4h12v-2H6zm0 0v-2z"/></svg>')}"), auto`;return i.style.cursor=c,t(n.setMeta("painterAction",{type:"start",marks:e})),!0}}},addProseMirrorPlugins(){return[new w.Plugin({key:new w.PluginKey("format-painter"),state:{init:()=>[],apply:(e,t)=>{const n=e.getMeta("painterAction");return n&&n.type==="start"?t=n.marks:n&&n.type==="end"&&(t=[]),t}},props:{handleDOMEvents:{mousedown(e){const t=this.getState(e.state);if(!t||t.length===0)return e.dom.style.cursor="",!1;const n=()=>{document.removeEventListener("mouseup",n);let{dispatch:i,state:{tr:a,selection:r},dom:c}=e;c.style.cursor="",a=a.removeMark(r.from,r.to);for(const l of t)l.type.name!=="link"&&(a=a.addMark(r.from,r.to,l));i(a.setMeta("painterAction",{type:"end"}))};return document.addEventListener("mouseup",n),!0}}}})]}});function Bn({editor:e,...t}){const{t:n}=p.useLocale(),[i,a]=m.useState(-1),[r,c]=m.useState([]),[l,d]=m.useState(""),[h,u]=m.useState(""),[x,g]=m.useState(!1),[_,y]=m.useState(!1);return m.useEffect(()=>{x||(d(""),u(""),a(-1),c([]),e.commands.setSearchTerm(""),e.commands.setReplaceTerm(""))},[e,x]),m.useEffect(()=>{x&&e&&e.commands&&e.commands.setSearchTerm&&e.commands.setSearchTerm(l)},[x,l,e]),m.useEffect(()=>{x&&e&&e.commands&&e.commands.setReplaceTerm&&e.commands.setReplaceTerm(h)},[x,h,e]),m.useEffect(()=>{if(!e)return;const v=e.extensionManager.extensions.find(L=>L.name===Ue.name);if(!v)return;const T=()=>{if(!x)return;const L=v?v.storage.currentIndex:-1,j=v?v.storage.results:[];a(b=>b!==L?L:b),c(b=>w.deepEqual(b,j)?b:j)};return window.addEventListener(_e,T),()=>{v&&window.removeEventListener(_e,T)}},[x,e]),o.jsxs(s.Popover,{open:x,onOpenChange:g,children:[o.jsx(s.PopoverTrigger,{disabled:t==null?void 0:t.disabled,asChild:!0,children:o.jsx(s.ActionButton,{tooltip:t==null?void 0:t.tooltip,isActive:t==null?void 0:t.isActive,disabled:t==null?void 0:t.disabled,children:o.jsx(s.IconComponent,{name:t==null?void 0:t.icon})})}),o.jsxs(s.PopoverContent,{hideWhenDetached:!0,className:"richtext-w-full",align:"start",side:"bottom",children:[o.jsxs("div",{className:"richtext-mb-[6px] richtext-flex richtext-items-center richtext-justify-between",children:[o.jsx(s.Label,{children:n("editor.search.dialog.text")}),o.jsx("span",{className:"richtext-font-semibold",children:r.length>0?`${i+1}/${r.length}`:"0/0"})]}),o.jsxs("div",{className:"richtext-flex richtext-w-full richtext-max-w-sm richtext-items-center richtext-gap-1.5 richtext-mb-[10px]",children:[o.jsx(s.Input,{type:"text",required:!0,className:"richtext-w-full",placeholder:"Text",autoFocus:!0,value:l,onChange:v=>d(v.target.value)}),o.jsx(s.Button,{disabled:r.length===0,className:"richtext-flex-1",onClick:e.commands.goToPrevSearchResult,children:o.jsx(s.IconComponent,{name:"ChevronUp"})}),o.jsx(s.Button,{disabled:r.length===0,className:"richtext-flex-1",onClick:e.commands.goToNextSearchResult,children:o.jsx(s.IconComponent,{name:"ChevronDown"})})]}),o.jsx(s.Label,{className:"richtext-mb-[6px]",children:n("editor.replace.dialog.text")}),o.jsx("div",{className:"richtext-flex richtext-w-full richtext-max-w-sm richtext-items-center richtext-gap-1.5 richtext-mb-[5px]",children:o.jsx("div",{className:"richtext-relative richtext-items-center richtext-w-full richtext-max-w-sm",children:o.jsx(s.Input,{type:"text",required:!0,className:"richtext-w-80",placeholder:"Text",value:h,onChange:v=>u(v.target.value)})})}),o.jsxs("div",{className:"richtext-flex richtext-items-center richtext-space-x-2 richtext-mb-[10px]",children:[o.jsx(s.Switch,{checked:_,onCheckedChange:v=>{y(v),e.commands.setCaseSensitive(v)}}),o.jsx(s.Label,{children:n("editor.replace.caseSensitive")})]}),o.jsxs("div",{className:"richtext-flex richtext-items-center richtext-gap-[10px]",children:[o.jsx(s.Button,{disabled:r.length===0,className:"richtext-flex-1",onClick:e.commands.replace,children:n("editor.replace.dialog.text")}),o.jsx(s.Button,{disabled:r.length===0,className:"richtext-flex-1",onClick:e.commands.replaceAll,children:n("editor.replaceAll.dialog.text")})]})]})]})}const ee=(e,t)=>t(e.tr);function zn(e,t,n){return RegExp(t?e.replace(/[$()*+./?[\\\]^{|}-]/g,String.raw`\$&`):e,n?"gu":"gui")}function On(e,t,n){const i=[];let a=[];const r=[];let c=0;if(!t)return{decorationsToReturn:[],results:[]};e==null||e.descendants((l,d)=>{l.isText?a[c]?a[c]={text:a[c].text+l.text,pos:a[c].pos}:a[c]={text:`${l.text}`,pos:d}:c+=1}),a=a.filter(Boolean);for(const{text:l,pos:d}of a){const h=[...l.matchAll(t)];for(const u of h){if(u[0]==="")break;u.index!==void 0&&r.push({from:d+u.index,to:d+u.index+u[0].length})}}for(const l of r)i.push(w.Decoration.inline(l.from,l.to,{class:n}));return{decorationsToReturn:i,results:r}}function Te(e,t,{state:n,dispatch:i}){if(!t[0])return;const{from:r,to:c}=t[0];i&&i(n.tr.insertText(e,r,c))}function Fn(e,t,n,i){const a=t+1;if(!i[a])return null;const{from:r,to:c}=i[t],l=c-r-e.length+n,{from:d,to:h}=i[a];return i[a]={to:h-l,from:d-l},[l,i]}function Un(e,t,{tr:n,dispatch:i}){let a=0,r=t.slice();if(r.length===0)return!1;for(let c=0;c<r.length;c+=1){const{from:l,to:d}=r[c];n.insertText(e,l,d);const h=Fn(e,c,a,r);h&&(a=h[0],r=h[1])}return i(n),!0}function Ne({view:e,tr:t,searchResults:n,searchResultCurrentClass:i,gotoIndex:a}){const r=n[a];if(r){const c=t.setMeta("directDecoration",{fromPos:r.from,toPos:r.to,attrs:{class:i}});return e==null||e.dispatch(c),setTimeout(()=>{const l=window.document.querySelector(`.${i}`);l&&be(l,{behavior:"smooth",scrollMode:"if-needed"})},0),!0}return!1}const _e="ON_SEARCH_RESULTS",Z=new CustomEvent(_e),Ue=f.Extension.create({name:"search",addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),searchTerm:"",replaceTerm:"",results:[],currentIndex:0,searchResultClass:"search-result",searchResultCurrentClass:"search-result-current",caseSensitive:!1,disableRegex:!1,onChange:()=>{},button:({editor:t,t:n})=>({component:Bn,componentProps:{action:()=>{},icon:"SearchAndReplace",tooltip:n("editor.searchAndReplace.tooltip"),isActive:()=>!1,disabled:!1,editor:t}})}},addStorage(){return{results:[],currentIndex:-1}},addCommands(){return{setSearchTerm:e=>({state:t,dispatch:n})=>(this.options.searchTerm=e,this.storage.results=[],this.storage.currentIndex=0,window.dispatchEvent(Z),ee(t,n),!1),setReplaceTerm:e=>({state:t,dispatch:n})=>(this.options.replaceTerm=e,ee(t,n),!1),setCaseSensitive:e=>({state:t,dispatch:n})=>(this.options.caseSensitive=e,ee(t,n),!1),replace:()=>({state:e,dispatch:t})=>{const{replaceTerm:n}=this.options,{currentIndex:i,results:a}=this.storage,r=a[i];return r?(Te(n,[r],{state:e,dispatch:t}),this.storage.results.splice(i,1)):(Te(n,a,{state:e,dispatch:t}),this.storage.results.shift()),window.dispatchEvent(Z),ee(e,t),!1},replaceAll:()=>({state:e,tr:t,dispatch:n})=>{const{replaceTerm:i}=this.options,{results:a}=this.storage;return Un(i,a,{tr:t,dispatch:n}),this.storage.currentIndex=-1,this.storage.results=[],window.dispatchEvent(Z),ee(e,n),!1},goToPrevSearchResult:()=>({view:e,tr:t})=>{const{searchResultCurrentClass:n}=this.options,{currentIndex:i,results:a}=this.storage,r=(i+a.length-1)%a.length;return this.storage.currentIndex=r,window.dispatchEvent(Z),Ne({view:e,tr:t,searchResults:a,searchResultCurrentClass:n,gotoIndex:r})},goToNextSearchResult:()=>({view:e,tr:t})=>{const{searchResultCurrentClass:n}=this.options,{currentIndex:i,results:a}=this.storage,r=(i+1)%a.length;return this.storage.currentIndex=r,this.options.onChange&&this.options.onChange(),window.dispatchEvent(Z),Ne({view:e,tr:t,searchResults:a,searchResultCurrentClass:n,gotoIndex:r})}}},addProseMirrorPlugins(){const e=this;return[new w.Plugin({key:new w.PluginKey("search"),state:{init(){return w.DecorationSet.empty},apply(t){const{doc:n,docChanged:i}=t,{searchTerm:a,searchResultClass:r,searchResultCurrentClass:c,disableRegex:l,caseSensitive:d}=e.options;if(i||a){const{decorationsToReturn:h,results:u}=On(n,zn(a,l,d),r);if(e.storage.results=u,e.storage.currentIndex>u.length-1&&(e.storage.currentIndex=0),window.dispatchEvent(Z),t.getMeta("directDecoration")){const{fromPos:x,toPos:g,attrs:_}=t.getMeta("directDecoration");h.push(w.Decoration.inline(x,g,_))}else u.length>0&&(h[0]=w.Decoration.inline(u[0].from,u[0].to,{class:c}));return w.DecorationSet.create(n,h)}return w.DecorationSet.empty}},props:{decorations(t){return this.getState(t)}}})]}});function qn({className:e,...t}){return o.jsx(G.EmojiPicker.Root,{className:s.cn("richtext-bg-popover richtext-text-popover-foreground richtext-isolate richtext-flex richtext-h-full richtext-w-fit richtext-flex-col richtext-overflow-hidden richtext-rounded-md",e),"data-slot":"emoji-picker",...t})}function $n({className:e,...t}){return o.jsxs("div",{className:s.cn("richtext-flex richtext-h-9 richtext-items-center richtext-gap-2 richtext-border-b richtext-px-3",e),"data-slot":"emoji-picker-search-wrapper",children:[o.jsx(D.SearchIcon,{className:"richtext-size-4 richtext-shrink-0 richtext-opacity-50"}),o.jsx(G.EmojiPicker.Search,{className:"richtext-outline-hidden placeholder:richtext-text-muted-foreground richtext-flex richtext-h-10 richtext-w-full richtext-rounded-md richtext-bg-transparent richtext-py-3 richtext-text-sm disabled:richtext-cursor-not-allowed disabled:richtext-opacity-50","data-slot":"emoji-picker-search",...t})]})}function Vn({children:e,...t}){return o.jsx("div",{...t,className:"richtext-scroll-my-1 richtext-px-1","data-slot":"emoji-picker-row",children:e})}function Kn({emoji:e,className:t,...n}){return o.jsx("button",{...n,className:s.cn("data-[active]:richtext-bg-accent richtext-flex richtext-size-7 richtext-items-center richtext-justify-center richtext-rounded-sm richtext-text-base",t),"data-slot":"emoji-picker-emoji",children:e.emoji})}function Gn({category:e,...t}){return o.jsx("div",{...t,className:"richtext-bg-popover richtext-text-muted-foreground richtext-px-3 richtext-pb-2 richtext-pt-3.5 richtext-text-xs richtext-leading-none","data-slot":"emoji-picker-category-header",children:e.label})}function Wn({className:e,...t}){return o.jsxs(G.EmojiPicker.Viewport,{className:s.cn("richtext-outline-hidden richtext-relative richtext-flex-1",e),"data-slot":"emoji-picker-viewport",...t,children:[o.jsx(G.EmojiPicker.Loading,{className:"richtext-absolute richtext-inset-0 richtext-flex richtext-items-center richtext-justify-center richtext-text-muted-foreground","data-slot":"emoji-picker-loading",children:o.jsx(D.LoaderIcon,{className:"richtext-size-4 richtext-animate-spin"})}),o.jsx(G.EmojiPicker.Empty,{className:"richtext-absolute richtext-inset-0 richtext-flex richtext-items-center richtext-justify-center richtext-text-muted-foreground richtext-text-sm","data-slot":"emoji-picker-empty",children:"No emoji found."}),o.jsx(G.EmojiPicker.List,{className:"richtext-select-none richtext-pb-1",components:{Row:Vn,Emoji:Kn,CategoryHeader:Gn},"data-slot":"emoji-picker-list"})]})}function Zn({className:e,...t}){return o.jsx("div",{className:s.cn("richtext-max-w-(--frimousse-viewport-width) richtext-flex richtext-w-full richtext-min-w-0 richtext-items-center richtext-gap-1 richtext-border-t richtext-p-2",e),"data-slot":"emoji-picker-footer",...t,children:o.jsx(G.EmojiPicker.ActiveEmoji,{children:({emoji:n})=>n?o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"richtext-flex richtext-size-7 richtext-flex-none richtext-items-center richtext-justify-center richtext-text-lg",children:n.emoji}),o.jsx("span",{className:"richtext-text-secondary-foreground richtext-truncate richtext-text-xs",children:n.label})]}):o.jsx("span",{className:"richtext-text-muted-foreground richtext-ml-1.5 richtext-flex richtext-h-7 richtext-items-center richtext-truncate richtext-text-xs",children:"Select an emoji…"})})})}function Xn({onSelectEmoji:e,children:t}){return o.jsxs(s.Popover,{modal:!0,children:[o.jsx(s.PopoverTrigger,{asChild:!0,children:t}),o.jsx(s.PopoverContent,{align:"start",className:"richtext-size-full richtext-p-2",hideWhenDetached:!0,side:"bottom",children:o.jsxs(qn,{className:"!richtext-h-[342px]",onEmojiSelect:({emoji:n})=>{e(n)},children:[o.jsx($n,{}),o.jsx(Wn,{}),o.jsx(Zn,{})]})})]})}function Yn({editor:e,icon:t,...n}){const i=m.useCallback(a=>{const{selection:r}=e.state,{$anchor:c}=r;return e.chain().insertContentAt(c.pos,a).run()},[e]);return o.jsx(Xn,{onSelectEmoji:i,children:o.jsx(s.ActionButton,{icon:t,tooltip:n==null?void 0:n.tooltip})})}const qe=m.forwardRef((e,t)=>{const n=m.useRef(null),[i,a]=m.useState(0),{t:r}=p.useLocale(),c=u=>{const x=e.items[u];x&&e.command(x)},l=()=>{a((i+e.items.length-1)%e.items.length)},d=()=>{a((i+1)%e.items.length)},h=()=>{c(i)};return m.useEffect(()=>a(0),[e.items]),m.useEffect(()=>{if(Number.isNaN(i+1))return;const u=n.current.querySelector(`span:nth-of-type(${i+1})`);u&&be(u,{behavior:"smooth",scrollMode:"if-needed"})},[i]),m.useImperativeHandle(t,()=>({onKeyDown:({event:u})=>u.key==="ArrowUp"?(l(),!0):u.key==="ArrowDown"?(d(),!0):u.key==="Enter"?(h(),!0):!1})),o.jsx("div",{className:"richtext-max-h-[320px] richtext-w-[200px] richtext-overflow-y-auto richtext-overflow-x-hidden richtext-rounded-sm !richtext-border richtext-bg-popover richtext-p-1 richtext-text-popover-foreground richtext-shadow-md richtext-outline-none",children:o.jsx("div",{ref:n,children:e.items.length>0?e.items.map((u,x)=>o.jsxs("span",{className:w.clsx(" richtext-relative richtext-flex richtext-cursor-default richtext-select-none richtext-items-center richtext-rounded-sm richtext-px-2 richtext-py-1.5 richtext-text-sm richtext-outline-none richtext-transition-colors hover:richtext-bg-accent focus:richtext-bg-accent focus:richtext-text-accent-foreground",x===i?"bg-accent":""),onClick:()=>c(x),children:[u.fallbackImage?o.jsx("img",{className:"richtext-size-[1em]",src:u.fallbackImage}):u.emoji,":",u.name,":"]},`emoji-list-code-${x}`)):o.jsx("div",{className:"richtext-relative richtext-flex richtext-cursor-default richtext-select-none richtext-items-center richtext-rounded-sm richtext-px-2 richtext-py-1.5 richtext-text-sm richtext-outline-none richtext-transition-colors",children:o.jsx("span",{children:r("no_result_found")})})})})});qe.displayName="EmojiList";const J={100:"💯",1234:"🔢",grinning:"😀",smiley:"😃",smile:"😄",grin:"😁",laughing:"😆",satisfied:"😆",sweat_smile:"😅",rofl:"🤣",joy:"😂",slightly_smiling_face:"🙂",upside_down_face:"🙃",wink:"😉",blush:"😊",innocent:"😇",smiling_face_with_three_hearts:"🥰",heart_eyes:"😍",star_struck:"🤩",kissing_heart:"😘",kissing:"😗",relaxed:"☺️",kissing_closed_eyes:"😚",kissing_smiling_eyes:"😙",smiling_face_with_tear:"🥲",yum:"😋",stuck_out_tongue:"😛",stuck_out_tongue_winking_eye:"😜",zany_face:"🤪",stuck_out_tongue_closed_eyes:"😝",money_mouth_face:"🤑",hugs:"🤗",hand_over_mouth:"🤭",shushing_face:"🤫",thinking:"🤔",zipper_mouth_face:"🤐",raised_eyebrow:"🤨",neutral_face:"😐",expressionless:"😑",no_mouth:"😶",smirk:"😏",unamused:"😒",roll_eyes:"🙄",grimacing:"😬",lying_face:"🤥",relieved:"😌",pensive:"😔",sleepy:"😪",drooling_face:"🤤",sleeping:"😴",mask:"😷",face_with_thermometer:"🤒",face_with_head_bandage:"🤕",nauseated_face:"🤢",vomiting_face:"🤮",sneezing_face:"🤧",hot_face:"🥵",cold_face:"🥶",woozy_face:"🥴",dizzy_face:"😵",exploding_head:"🤯",cowboy_hat_face:"🤠",partying_face:"🥳",disguised_face:"🥸",sunglasses:"😎",nerd_face:"🤓",monocle_face:"🧐",confused:"😕",worried:"😟",slightly_frowning_face:"🙁",frowning_face:"☹️",open_mouth:"😮",hushed:"😯",astonished:"😲",flushed:"😳",pleading_face:"🥺",frowning:"😦",anguished:"😧",fearful:"😨",cold_sweat:"😰",disappointed_relieved:"😥",cry:"😢",sob:"😭",scream:"😱",confounded:"😖",persevere:"😣",disappointed:"😞",sweat:"😓",weary:"😩",tired_face:"😫",yawning_face:"🥱",triumph:"😤",rage:"😡",pout:"😡",angry:"😠",cursing_face:"🤬",smiling_imp:"😈",imp:"👿",skull:"💀",skull_and_crossbones:"☠️",hankey:"💩",poop:"💩",shit:"💩",clown_face:"🤡",japanese_ogre:"👹",japanese_goblin:"👺",ghost:"👻",alien:"👽",space_invader:"👾",robot:"🤖",smiley_cat:"😺",smile_cat:"😸",joy_cat:"😹",heart_eyes_cat:"😻",smirk_cat:"😼",kissing_cat:"😽",scream_cat:"🙀",crying_cat_face:"😿",pouting_cat:"😾",see_no_evil:"🙈",hear_no_evil:"🙉",speak_no_evil:"🙊",kiss:"💋",love_letter:"💌",cupid:"💘",gift_heart:"💝",sparkling_heart:"💖",heartpulse:"💗",heartbeat:"💓",revolving_hearts:"💞",two_hearts:"💕",heart_decoration:"💟",heavy_heart_exclamation:"❣️",broken_heart:"💔",heart:"❤️",orange_heart:"🧡",yellow_heart:"💛",green_heart:"💚",blue_heart:"💙",purple_heart:"💜",brown_heart:"🤎",black_heart:"🖤",white_heart:"🤍",anger:"💢",boom:"💥",collision:"💥",dizzy:"💫",sweat_drops:"💦",dash:"💨",hole:"🕳️",bomb:"💣",speech_balloon:"💬",eye_speech_bubble:"👁️‍🗨️",left_speech_bubble:"🗨️",right_anger_bubble:"🗯️",thought_balloon:"💭",zzz:"💤",wave:"👋",raised_back_of_hand:"🤚",raised_hand_with_fingers_splayed:"🖐️",hand:"✋",raised_hand:"✋",vulcan_salute:"🖖",ok_hand:"👌",pinched_fingers:"🤌",pinching_hand:"🤏",v:"✌️",crossed_fingers:"🤞",love_you_gesture:"🤟",metal:"🤘",call_me_hand:"🤙",point_left:"👈",point_right:"👉",point_up_2:"👆",middle_finger:"🖕",fu:"🖕",point_down:"👇",point_up:"☝️","+1":"👍",thumbsup:"👍","-1":"👎",thumbsdown:"👎",fist_raised:"✊",fist:"✊",fist_oncoming:"👊",facepunch:"👊",punch:"👊",fist_left:"🤛",fist_right:"🤜",clap:"👏",raised_hands:"🙌",open_hands:"👐",palms_up_together:"🤲",handshake:"🤝",pray:"🙏",writing_hand:"✍️",nail_care:"💅",selfie:"🤳",muscle:"💪",mechanical_arm:"🦾",mechanical_leg:"🦿",leg:"🦵",foot:"🦶",ear:"👂",ear_with_hearing_aid:"🦻",nose:"👃",brain:"🧠",anatomical_heart:"🫀",lungs:"🫁",tooth:"🦷",bone:"🦴",eyes:"👀",eye:"👁️",tongue:"👅",lips:"👄",baby:"👶",child:"🧒",boy:"👦",girl:"👧",adult:"🧑",blond_haired_person:"👱",man:"👨",bearded_person:"🧔",red_haired_man:"👨‍🦰",curly_haired_man:"👨‍🦱",white_haired_man:"👨‍🦳",bald_man:"👨‍🦲",woman:"👩",red_haired_woman:"👩‍🦰",person_red_hair:"🧑‍🦰",curly_haired_woman:"👩‍🦱",person_curly_hair:"🧑‍🦱",white_haired_woman:"👩‍🦳",person_white_hair:"🧑‍🦳",bald_woman:"👩‍🦲",person_bald:"🧑‍🦲",blond_haired_woman:"👱‍♀️",blonde_woman:"👱‍♀️",blond_haired_man:"👱‍♂️",older_adult:"🧓",older_man:"👴",older_woman:"👵",frowning_person:"🙍",frowning_man:"🙍‍♂️",frowning_woman:"🙍‍♀️",pouting_face:"🙎",pouting_man:"🙎‍♂️",pouting_woman:"🙎‍♀️",no_good:"🙅",no_good_man:"🙅‍♂️",ng_man:"🙅‍♂️",no_good_woman:"🙅‍♀️",ng_woman:"🙅‍♀️",ok_person:"🙆",ok_man:"🙆‍♂️",ok_woman:"🙆‍♀️",tipping_hand_person:"💁",information_desk_person:"💁",tipping_hand_man:"💁‍♂️",sassy_man:"💁‍♂️",tipping_hand_woman:"💁‍♀️",sassy_woman:"💁‍♀️",raising_hand:"🙋",raising_hand_man:"🙋‍♂️",raising_hand_woman:"🙋‍♀️",deaf_person:"🧏",deaf_man:"🧏‍♂️",deaf_woman:"🧏‍♀️",bow:"🙇",bowing_man:"🙇‍♂️",bowing_woman:"🙇‍♀️",facepalm:"🤦",man_facepalming:"🤦‍♂️",woman_facepalming:"🤦‍♀️",shrug:"🤷",man_shrugging:"🤷‍♂️",woman_shrugging:"🤷‍♀️",health_worker:"🧑‍⚕️",man_health_worker:"👨‍⚕️",woman_health_worker:"👩‍⚕️",student:"🧑‍🎓",man_student:"👨‍🎓",woman_student:"👩‍🎓",teacher:"🧑‍🏫",man_teacher:"👨‍🏫",woman_teacher:"👩‍🏫",judge:"🧑‍⚖️",man_judge:"👨‍⚖️",woman_judge:"👩‍⚖️",farmer:"🧑‍🌾",man_farmer:"👨‍🌾",woman_farmer:"👩‍🌾",cook:"🧑‍🍳",man_cook:"👨‍🍳",woman_cook:"👩‍🍳",mechanic:"🧑‍🔧",man_mechanic:"👨‍🔧",woman_mechanic:"👩‍🔧",factory_worker:"🧑‍🏭",man_factory_worker:"👨‍🏭",woman_factory_worker:"👩‍🏭",office_worker:"🧑‍💼",man_office_worker:"👨‍💼",woman_office_worker:"👩‍💼",scientist:"🧑‍🔬",man_scientist:"👨‍🔬",woman_scientist:"👩‍🔬",technologist:"🧑‍💻",man_technologist:"👨‍💻",woman_technologist:"👩‍💻",singer:"🧑‍🎤",man_singer:"👨‍🎤",woman_singer:"👩‍🎤",artist:"🧑‍🎨",man_artist:"👨‍🎨",woman_artist:"👩‍🎨",pilot:"🧑‍✈️",man_pilot:"👨‍✈️",woman_pilot:"👩‍✈️",astronaut:"🧑‍🚀",man_astronaut:"👨‍🚀",woman_astronaut:"👩‍🚀",firefighter:"🧑‍🚒",man_firefighter:"👨‍🚒",woman_firefighter:"👩‍🚒",police_officer:"👮",cop:"👮",policeman:"👮‍♂️",policewoman:"👮‍♀️",detective:"🕵️",male_detective:"🕵️‍♂️",female_detective:"🕵️‍♀️",guard:"💂",guardsman:"💂‍♂️",guardswoman:"💂‍♀️",ninja:"🥷",construction_worker:"👷",construction_worker_man:"👷‍♂️",construction_worker_woman:"👷‍♀️",prince:"🤴",princess:"👸",person_with_turban:"👳",man_with_turban:"👳‍♂️",woman_with_turban:"👳‍♀️",man_with_gua_pi_mao:"👲",woman_with_headscarf:"🧕",person_in_tuxedo:"🤵",man_in_tuxedo:"🤵‍♂️",woman_in_tuxedo:"🤵‍♀️",person_with_veil:"👰",man_with_veil:"👰‍♂️",woman_with_veil:"👰‍♀️",bride_with_veil:"👰‍♀️",pregnant_woman:"🤰",breast_feeding:"🤱",woman_feeding_baby:"👩‍🍼",man_feeding_baby:"👨‍🍼",person_feeding_baby:"🧑‍🍼",angel:"👼",santa:"🎅",mrs_claus:"🤶",mx_claus:"🧑‍🎄",superhero:"🦸",superhero_man:"🦸‍♂️",superhero_woman:"🦸‍♀️",supervillain:"🦹",supervillain_man:"🦹‍♂️",supervillain_woman:"🦹‍♀️",mage:"🧙",mage_man:"🧙‍♂️",mage_woman:"🧙‍♀️",fairy:"🧚",fairy_man:"🧚‍♂️",fairy_woman:"🧚‍♀️",vampire:"🧛",vampire_man:"🧛‍♂️",vampire_woman:"🧛‍♀️",merperson:"🧜",merman:"🧜‍♂️",mermaid:"🧜‍♀️",elf:"🧝",elf_man:"🧝‍♂️",elf_woman:"🧝‍♀️",genie:"🧞",genie_man:"🧞‍♂️",genie_woman:"🧞‍♀️",zombie:"🧟",zombie_man:"🧟‍♂️",zombie_woman:"🧟‍♀️",massage:"💆",massage_man:"💆‍♂️",massage_woman:"💆‍♀️",haircut:"💇",haircut_man:"💇‍♂️",haircut_woman:"💇‍♀️",walking:"🚶",walking_man:"🚶‍♂️",walking_woman:"🚶‍♀️",standing_person:"🧍",standing_man:"🧍‍♂️",standing_woman:"🧍‍♀️",kneeling_person:"🧎",kneeling_man:"🧎‍♂️",kneeling_woman:"🧎‍♀️",person_with_probing_cane:"🧑‍🦯",man_with_probing_cane:"👨‍🦯",woman_with_probing_cane:"👩‍🦯",person_in_motorized_wheelchair:"🧑‍🦼",man_in_motorized_wheelchair:"👨‍🦼",woman_in_motorized_wheelchair:"👩‍🦼",person_in_manual_wheelchair:"🧑‍🦽",man_in_manual_wheelchair:"👨‍🦽",woman_in_manual_wheelchair:"👩‍🦽",runner:"🏃",running:"🏃",running_man:"🏃‍♂️",running_woman:"🏃‍♀️",woman_dancing:"💃",dancer:"💃",man_dancing:"🕺",business_suit_levitating:"🕴️",dancers:"👯",dancing_men:"👯‍♂️",dancing_women:"👯‍♀️",sauna_person:"🧖",sauna_man:"🧖‍♂️",sauna_woman:"🧖‍♀️",climbing:"🧗",climbing_man:"🧗‍♂️",climbing_woman:"🧗‍♀️",person_fencing:"🤺",horse_racing:"🏇",skier:"⛷️",snowboarder:"🏂",golfing:"🏌️",golfing_man:"🏌️‍♂️",golfing_woman:"🏌️‍♀️",surfer:"🏄",surfing_man:"🏄‍♂️",surfing_woman:"🏄‍♀️",rowboat:"🚣",rowing_man:"🚣‍♂️",rowing_woman:"🚣‍♀️",swimmer:"🏊",swimming_man:"🏊‍♂️",swimming_woman:"🏊‍♀️",bouncing_ball_person:"⛹️",bouncing_ball_man:"⛹️‍♂️",basketball_man:"⛹️‍♂️",bouncing_ball_woman:"⛹️‍♀️",basketball_woman:"⛹️‍♀️",weight_lifting:"🏋️",weight_lifting_man:"🏋️‍♂️",weight_lifting_woman:"🏋️‍♀️",bicyclist:"🚴",biking_man:"🚴‍♂️",biking_woman:"🚴‍♀️",mountain_bicyclist:"🚵",mountain_biking_man:"🚵‍♂️",mountain_biking_woman:"🚵‍♀️",cartwheeling:"🤸",man_cartwheeling:"🤸‍♂️",woman_cartwheeling:"🤸‍♀️",wrestling:"🤼",men_wrestling:"🤼‍♂️",women_wrestling:"🤼‍♀️",water_polo:"🤽",man_playing_water_polo:"🤽‍♂️",woman_playing_water_polo:"🤽‍♀️",handball_person:"🤾",man_playing_handball:"🤾‍♂️",woman_playing_handball:"🤾‍♀️",juggling_person:"🤹",man_juggling:"🤹‍♂️",woman_juggling:"🤹‍♀️",lotus_position:"🧘",lotus_position_man:"🧘‍♂️",lotus_position_woman:"🧘‍♀️",bath:"🛀",sleeping_bed:"🛌",people_holding_hands:"🧑‍🤝‍🧑",two_women_holding_hands:"👭",couple:"👫",two_men_holding_hands:"👬",couplekiss:"💏",couplekiss_man_woman:"👩‍❤️‍💋‍👨",couplekiss_man_man:"👨‍❤️‍💋‍👨",couplekiss_woman_woman:"👩‍❤️‍💋‍👩",couple_with_heart:"💑",couple_with_heart_woman_man:"👩‍❤️‍👨",couple_with_heart_man_man:"👨‍❤️‍👨",couple_with_heart_woman_woman:"👩‍❤️‍👩",family:"👪",family_man_woman_boy:"👨‍👩‍👦",family_man_woman_girl:"👨‍👩‍👧",family_man_woman_girl_boy:"👨‍👩‍👧‍👦",family_man_woman_boy_boy:"👨‍👩‍👦‍👦",family_man_woman_girl_girl:"👨‍👩‍👧‍👧",family_man_man_boy:"👨‍👨‍👦",family_man_man_girl:"👨‍👨‍👧",family_man_man_girl_boy:"👨‍👨‍👧‍👦",family_man_man_boy_boy:"👨‍👨‍👦‍👦",family_man_man_girl_girl:"👨‍👨‍👧‍👧",family_woman_woman_boy:"👩‍👩‍👦",family_woman_woman_girl:"👩‍👩‍👧",family_woman_woman_girl_boy:"👩‍👩‍👧‍👦",family_woman_woman_boy_boy:"👩‍👩‍👦‍👦",family_woman_woman_girl_girl:"👩‍👩‍👧‍👧",family_man_boy:"👨‍👦",family_man_boy_boy:"👨‍👦‍👦",family_man_girl:"👨‍👧",family_man_girl_boy:"👨‍👧‍👦",family_man_girl_girl:"👨‍👧‍👧",family_woman_boy:"👩‍👦",family_woman_boy_boy:"👩‍👦‍👦",family_woman_girl:"👩‍👧",family_woman_girl_boy:"👩‍👧‍👦",family_woman_girl_girl:"👩‍👧‍👧",speaking_head:"🗣️",bust_in_silhouette:"👤",busts_in_silhouette:"👥",people_hugging:"🫂",footprints:"👣",monkey_face:"🐵",monkey:"🐒",gorilla:"🦍",orangutan:"🦧",dog:"🐶",dog2:"🐕",guide_dog:"🦮",service_dog:"🐕‍🦺",poodle:"🐩",wolf:"🐺",fox_face:"🦊",raccoon:"🦝",cat:"🐱",cat2:"🐈",black_cat:"🐈‍⬛",lion:"🦁",tiger:"🐯",tiger2:"🐅",leopard:"🐆",horse:"🐴",racehorse:"🐎",unicorn:"🦄",zebra:"🦓",deer:"🦌",bison:"🦬",cow:"🐮",ox:"🐂",water_buffalo:"🐃",cow2:"🐄",pig:"🐷",pig2:"🐖",boar:"🐗",pig_nose:"🐽",ram:"🐏",sheep:"🐑",goat:"🐐",dromedary_camel:"🐪",camel:"🐫",llama:"🦙",giraffe:"🦒",elephant:"🐘",mammoth:"🦣",rhinoceros:"🦏",hippopotamus:"🦛",mouse:"🐭",mouse2:"🐁",rat:"🐀",hamster:"🐹",rabbit:"🐰",rabbit2:"🐇",chipmunk:"🐿️",beaver:"🦫",hedgehog:"🦔",bat:"🦇",bear:"🐻",polar_bear:"🐻‍❄️",koala:"🐨",panda_face:"🐼",sloth:"🦥",otter:"🦦",skunk:"🦨",kangaroo:"🦘",badger:"🦡",feet:"🐾",paw_prints:"🐾",turkey:"🦃",chicken:"🐔",rooster:"🐓",hatching_chick:"🐣",baby_chick:"🐤",hatched_chick:"🐥",bird:"🐦",penguin:"🐧",dove:"🕊️",eagle:"🦅",duck:"🦆",swan:"🦢",owl:"🦉",dodo:"🦤",feather:"🪶",flamingo:"🦩",peacock:"🦚",parrot:"🦜",frog:"🐸",crocodile:"🐊",turtle:"🐢",lizard:"🦎",snake:"🐍",dragon_face:"🐲",dragon:"🐉",sauropod:"🦕","t-rex":"🦖",whale:"🐳",whale2:"🐋",dolphin:"🐬",flipper:"🐬",seal:"🦭",fish:"🐟",tropical_fish:"🐠",blowfish:"🐡",shark:"🦈",octopus:"🐙",shell:"🐚",snail:"🐌",butterfly:"🦋",bug:"🐛",ant:"🐜",bee:"🐝",honeybee:"🐝",beetle:"🪲",lady_beetle:"🐞",cricket:"🦗",cockroach:"🪳",spider:"🕷️",spider_web:"🕸️",scorpion:"🦂",mosquito:"🦟",fly:"🪰",worm:"🪱",microbe:"🦠",bouquet:"💐",cherry_blossom:"🌸",white_flower:"💮",rosette:"🏵️",rose:"🌹",wilted_flower:"🥀",hibiscus:"🌺",sunflower:"🌻",blossom:"🌼",tulip:"🌷",seedling:"🌱",potted_plant:"🪴",evergreen_tree:"🌲",deciduous_tree:"🌳",palm_tree:"🌴",cactus:"🌵",ear_of_rice:"🌾",herb:"🌿",shamrock:"☘️",four_leaf_clover:"🍀",maple_leaf:"🍁",fallen_leaf:"🍂",leaves:"🍃",grapes:"🍇",melon:"🍈",watermelon:"🍉",tangerine:"🍊",orange:"🍊",mandarin:"🍊",lemon:"🍋",banana:"🍌",pineapple:"🍍",mango:"🥭",apple:"🍎",green_apple:"🍏",pear:"🍐",peach:"🍑",cherries:"🍒",strawberry:"🍓",blueberries:"🫐",kiwi_fruit:"🥝",tomato:"🍅",olive:"🫒",coconut:"🥥",avocado:"🥑",eggplant:"🍆",potato:"🥔",carrot:"🥕",corn:"🌽",hot_pepper:"🌶️",bell_pepper:"🫑",cucumber:"🥒",leafy_green:"🥬",broccoli:"🥦",garlic:"🧄",onion:"🧅",mushroom:"🍄",peanuts:"🥜",chestnut:"🌰",bread:"🍞",croissant:"🥐",baguette_bread:"🥖",flatbread:"🫓",pretzel:"🥨",bagel:"🥯",pancakes:"🥞",waffle:"🧇",cheese:"🧀",meat_on_bone:"🍖",poultry_leg:"🍗",cut_of_meat:"🥩",bacon:"🥓",hamburger:"🍔",fries:"🍟",pizza:"🍕",hotdog:"🌭",sandwich:"🥪",taco:"🌮",burrito:"🌯",tamale:"🫔",stuffed_flatbread:"🥙",falafel:"🧆",egg:"🥚",fried_egg:"🍳",shallow_pan_of_food:"🥘",stew:"🍲",fondue:"🫕",bowl_with_spoon:"🥣",green_salad:"🥗",popcorn:"🍿",butter:"🧈",salt:"🧂",canned_food:"🥫",bento:"🍱",rice_cracker:"🍘",rice_ball:"🍙",rice:"🍚",curry:"🍛",ramen:"🍜",spaghetti:"🍝",sweet_potato:"🍠",oden:"🍢",sushi:"🍣",fried_shrimp:"🍤",fish_cake:"🍥",moon_cake:"🥮",dango:"🍡",dumpling:"🥟",fortune_cookie:"🥠",takeout_box:"🥡",crab:"🦀",lobster:"🦞",shrimp:"🦐",squid:"🦑",oyster:"🦪",icecream:"🍦",shaved_ice:"🍧",ice_cream:"🍨",doughnut:"🍩",cookie:"🍪",birthday:"🎂",cake:"🍰",cupcake:"🧁",pie:"🥧",chocolate_bar:"🍫",candy:"🍬",lollipop:"🍭",custard:"🍮",honey_pot:"🍯",baby_bottle:"🍼",milk_glass:"🥛",coffee:"☕",teapot:"🫖",tea:"🍵",sake:"🍶",champagne:"🍾",wine_glass:"🍷",cocktail:"🍸",tropical_drink:"🍹",beer:"🍺",beers:"🍻",clinking_glasses:"🥂",tumbler_glass:"🥃",cup_with_straw:"🥤",bubble_tea:"🧋",beverage_box:"🧃",mate:"🧉",ice_cube:"🧊",chopsticks:"🥢",plate_with_cutlery:"🍽️",fork_and_knife:"🍴",spoon:"🥄",hocho:"🔪",knife:"🔪",amphora:"🏺",earth_africa:"🌍",earth_americas:"🌎",earth_asia:"🌏",globe_with_meridians:"🌐",world_map:"🗺️",japan:"🗾",compass:"🧭",mountain_snow:"🏔️",mountain:"⛰️",volcano:"🌋",mount_fuji:"🗻",camping:"🏕️",beach_umbrella:"🏖️",desert:"🏜️",desert_island:"🏝️",national_park:"🏞️",stadium:"🏟️",classical_building:"🏛️",building_construction:"🏗️",bricks:"🧱",rock:"🪨",wood:"🪵",hut:"🛖",houses:"🏘️",derelict_house:"🏚️",house:"🏠",house_with_garden:"🏡",office:"🏢",post_office:"🏣",european_post_office:"🏤",hospital:"🏥",bank:"🏦",hotel:"🏨",love_hotel:"🏩",convenience_store:"🏪",school:"🏫",department_store:"🏬",factory:"🏭",japanese_castle:"🏯",european_castle:"🏰",wedding:"💒",tokyo_tower:"🗼",statue_of_liberty:"🗽",church:"⛪",mosque:"🕌",hindu_temple:"🛕",synagogue:"🕍",shinto_shrine:"⛩️",kaaba:"🕋",fountain:"⛲",tent:"⛺",foggy:"🌁",night_with_stars:"🌃",cityscape:"🏙️",sunrise_over_mountains:"🌄",sunrise:"🌅",city_sunset:"🌆",city_sunrise:"🌇",bridge_at_night:"🌉",hotsprings:"♨️",carousel_horse:"🎠",ferris_wheel:"🎡",roller_coaster:"🎢",barber:"💈",circus_tent:"🎪",steam_locomotive:"🚂",railway_car:"🚃",bullettrain_side:"🚄",bullettrain_front:"🚅",train2:"🚆",metro:"🚇",light_rail:"🚈",station:"🚉",tram:"🚊",monorail:"🚝",mountain_railway:"🚞",train:"🚋",bus:"🚌",oncoming_bus:"🚍",trolleybus:"🚎",minibus:"🚐",ambulance:"🚑",fire_engine:"🚒",police_car:"🚓",oncoming_police_car:"🚔",taxi:"🚕",oncoming_taxi:"🚖",car:"🚗",red_car:"🚗",oncoming_automobile:"🚘",blue_car:"🚙",pickup_truck:"🛻",truck:"🚚",articulated_lorry:"🚛",tractor:"🚜",racing_car:"🏎️",motorcycle:"🏍️",motor_scooter:"🛵",manual_wheelchair:"🦽",motorized_wheelchair:"🦼",auto_rickshaw:"🛺",bike:"🚲",kick_scooter:"🛴",skateboard:"🛹",roller_skate:"🛼",busstop:"🚏",motorway:"🛣️",railway_track:"🛤️",oil_drum:"🛢️",fuelpump:"⛽",rotating_light:"🚨",traffic_light:"🚥",vertical_traffic_light:"🚦",stop_sign:"🛑",construction:"🚧",anchor:"⚓",boat:"⛵",sailboat:"⛵",canoe:"🛶",speedboat:"🚤",passenger_ship:"🛳️",ferry:"⛴️",motor_boat:"🛥️",ship:"🚢",airplane:"✈️",small_airplane:"🛩️",flight_departure:"🛫",flight_arrival:"🛬",parachute:"🪂",seat:"💺",helicopter:"🚁",suspension_railway:"🚟",mountain_cableway:"🚠",aerial_tramway:"🚡",artificial_satellite:"🛰️",rocket:"🚀",flying_saucer:"🛸",bellhop_bell:"🛎️",luggage:"🧳",hourglass:"⌛",hourglass_flowing_sand:"⏳",watch:"⌚",alarm_clock:"⏰",stopwatch:"⏱️",timer_clock:"⏲️",mantelpiece_clock:"🕰️",clock12:"🕛",clock1230:"🕧",clock1:"🕐",clock130:"🕜",clock2:"🕑",clock230:"🕝",clock3:"🕒",clock330:"🕞",clock4:"🕓",clock430:"🕟",clock5:"🕔",clock530:"🕠",clock6:"🕕",clock630:"🕡",clock7:"🕖",clock730:"🕢",clock8:"🕗",clock830:"🕣",clock9:"🕘",clock930:"🕤",clock10:"🕙",clock1030:"🕥",clock11:"🕚",clock1130:"🕦",new_moon:"🌑",waxing_crescent_moon:"🌒",first_quarter_moon:"🌓",moon:"🌔",waxing_gibbous_moon:"🌔",full_moon:"🌕",waning_gibbous_moon:"🌖",last_quarter_moon:"🌗",waning_crescent_moon:"🌘",crescent_moon:"🌙",new_moon_with_face:"🌚",first_quarter_moon_with_face:"🌛",last_quarter_moon_with_face:"🌜",thermometer:"🌡️",sunny:"☀️",full_moon_with_face:"🌝",sun_with_face:"🌞",ringed_planet:"🪐",star:"⭐",star2:"🌟",stars:"🌠",milky_way:"🌌",cloud:"☁️",partly_sunny:"⛅",cloud_with_lightning_and_rain:"⛈️",sun_behind_small_cloud:"🌤️",sun_behind_large_cloud:"🌥️",sun_behind_rain_cloud:"🌦️",cloud_with_rain:"🌧️",cloud_with_snow:"🌨️",cloud_with_lightning:"🌩️",tornado:"🌪️",fog:"🌫️",wind_face:"🌬️",cyclone:"🌀",rainbow:"🌈",closed_umbrella:"🌂",open_umbrella:"☂️",umbrella:"☔",parasol_on_ground:"⛱️",zap:"⚡",snowflake:"❄️",snowman_with_snow:"☃️",snowman:"⛄",comet:"☄️",fire:"🔥",droplet:"💧",ocean:"🌊",jack_o_lantern:"🎃",christmas_tree:"🎄",fireworks:"🎆",sparkler:"🎇",firecracker:"🧨",sparkles:"✨",balloon:"🎈",tada:"🎉",confetti_ball:"🎊",tanabata_tree:"🎋",bamboo:"🎍",dolls:"🎎",flags:"🎏",wind_chime:"🎐",rice_scene:"🎑",red_envelope:"🧧",ribbon:"🎀",gift:"🎁",reminder_ribbon:"🎗️",tickets:"🎟️",ticket:"🎫",medal_military:"🎖️",trophy:"🏆",medal_sports:"🏅","1st_place_medal":"🥇","2nd_place_medal":"🥈","3rd_place_medal":"🥉",soccer:"⚽",baseball:"⚾",softball:"🥎",basketball:"🏀",volleyball:"🏐",football:"🏈",rugby_football:"🏉",tennis:"🎾",flying_disc:"🥏",bowling:"🎳",cricket_game:"🏏",field_hockey:"🏑",ice_hockey:"🏒",lacrosse:"🥍",ping_pong:"🏓",badminton:"🏸",boxing_glove:"🥊",martial_arts_uniform:"🥋",goal_net:"🥅",golf:"⛳",ice_skate:"⛸️",fishing_pole_and_fish:"🎣",diving_mask:"🤿",running_shirt_with_sash:"🎽",ski:"🎿",sled:"🛷",curling_stone:"🥌",dart:"🎯",yo_yo:"🪀",kite:"🪁","8ball":"🎱",crystal_ball:"🔮",magic_wand:"🪄",nazar_amulet:"🧿",video_game:"🎮",joystick:"🕹️",slot_machine:"🎰",game_die:"🎲",jigsaw:"🧩",teddy_bear:"🧸",pinata:"🪅",nesting_dolls:"🪆",spades:"♠️",hearts:"♥️",diamonds:"♦️",clubs:"♣️",chess_pawn:"♟️",black_joker:"🃏",mahjong:"🀄",flower_playing_cards:"🎴",performing_arts:"🎭",framed_picture:"🖼️",art:"🎨",thread:"🧵",sewing_needle:"🪡",yarn:"🧶",knot:"🪢",eyeglasses:"👓",dark_sunglasses:"🕶️",goggles:"🥽",lab_coat:"🥼",safety_vest:"🦺",necktie:"👔",shirt:"👕",tshirt:"👕",jeans:"👖",scarf:"🧣",gloves:"🧤",coat:"🧥",socks:"🧦",dress:"👗",kimono:"👘",sari:"🥻",one_piece_swimsuit:"🩱",swim_brief:"🩲",shorts:"🩳",bikini:"👙",womans_clothes:"👚",purse:"👛",handbag:"👜",pouch:"👝",shopping:"🛍️",school_satchel:"🎒",thong_sandal:"🩴",mans_shoe:"👞",shoe:"👞",athletic_shoe:"👟",hiking_boot:"🥾",flat_shoe:"🥿",high_heel:"👠",sandal:"👡",ballet_shoes:"🩰",boot:"👢",crown:"👑",womans_hat:"👒",tophat:"🎩",mortar_board:"🎓",billed_cap:"🧢",military_helmet:"🪖",rescue_worker_helmet:"⛑️",prayer_beads:"📿",lipstick:"💄",ring:"💍",gem:"💎",mute:"🔇",speaker:"🔈",sound:"🔉",loud_sound:"🔊",loudspeaker:"📢",mega:"📣",postal_horn:"📯",bell:"🔔",no_bell:"🔕",musical_score:"🎼",musical_note:"🎵",notes:"🎶",studio_microphone:"🎙️",level_slider:"🎚️",control_knobs:"🎛️",microphone:"🎤",headphones:"🎧",radio:"📻",saxophone:"🎷",accordion:"🪗",guitar:"🎸",musical_keyboard:"🎹",trumpet:"🎺",violin:"🎻",banjo:"🪕",drum:"🥁",long_drum:"🪘",iphone:"📱",calling:"📲",phone:"☎️",telephone:"☎️",telephone_receiver:"📞",pager:"📟",fax:"📠",battery:"🔋",electric_plug:"🔌",computer:"💻",desktop_computer:"🖥️",printer:"🖨️",keyboard:"⌨️",computer_mouse:"🖱️",trackball:"🖲️",minidisc:"💽",floppy_disk:"💾",cd:"💿",dvd:"📀",abacus:"🧮",movie_camera:"🎥",film_strip:"🎞️",film_projector:"📽️",clapper:"🎬",tv:"📺",camera:"📷",camera_flash:"📸",video_camera:"📹",vhs:"📼",mag:"🔍",mag_right:"🔎",candle:"🕯️",bulb:"💡",flashlight:"🔦",izakaya_lantern:"🏮",lantern:"🏮",diya_lamp:"🪔",notebook_with_decorative_cover:"📔",closed_book:"📕",book:"📖",open_book:"📖",green_book:"📗",blue_book:"📘",orange_book:"📙",books:"📚",notebook:"📓",ledger:"📒",page_with_curl:"📃",scroll:"📜",page_facing_up:"📄",newspaper:"📰",newspaper_roll:"🗞️",bookmark_tabs:"📑",bookmark:"🔖",label:"🏷️",moneybag:"💰",coin:"🪙",yen:"💴",dollar:"💵",euro:"💶",pound:"💷",money_with_wings:"💸",credit_card:"💳",receipt:"🧾",chart:"💹",envelope:"✉️",email:"📧","e-mail":"📧",incoming_envelope:"📨",envelope_with_arrow:"📩",outbox_tray:"📤",inbox_tray:"📥",package:"📦",mailbox:"📫",mailbox_closed:"📪",mailbox_with_mail:"📬",mailbox_with_no_mail:"📭",postbox:"📮",ballot_box:"🗳️",pencil2:"✏️",black_nib:"✒️",fountain_pen:"🖋️",pen:"🖊️",paintbrush:"🖌️",crayon:"🖍️",memo:"📝",pencil:"📝",briefcase:"💼",file_folder:"📁",open_file_folder:"📂",card_index_dividers:"🗂️",date:"📅",calendar:"📆",spiral_notepad:"🗒️",spiral_calendar:"🗓️",card_index:"📇",chart_with_upwards_trend:"📈",chart_with_downwards_trend:"📉",bar_chart:"📊",clipboard:"📋",pushpin:"📌",round_pushpin:"📍",paperclip:"📎",paperclips:"🖇️",straight_ruler:"📏",triangular_ruler:"📐",scissors:"✂️",card_file_box:"🗃️",file_cabinet:"🗄️",wastebasket:"🗑️",lock:"🔒",unlock:"🔓",lock_with_ink_pen:"🔏",closed_lock_with_key:"🔐",key:"🔑",old_key:"🗝️",hammer:"🔨",axe:"🪓",pick:"⛏️",hammer_and_pick:"⚒️",hammer_and_wrench:"🛠️",dagger:"🗡️",crossed_swords:"⚔️",gun:"🔫",boomerang:"🪃",bow_and_arrow:"🏹",shield:"🛡️",carpentry_saw:"🪚",wrench:"🔧",screwdriver:"🪛",nut_and_bolt:"🔩",gear:"⚙️",clamp:"🗜️",balance_scale:"⚖️",probing_cane:"🦯",link:"🔗",chains:"⛓️",hook:"🪝",toolbox:"🧰",magnet:"🧲",ladder:"🪜",alembic:"⚗️",test_tube:"🧪",petri_dish:"🧫",dna:"🧬",microscope:"🔬",telescope:"🔭",satellite:"📡",syringe:"💉",drop_of_blood:"🩸",pill:"💊",adhesive_bandage:"🩹",stethoscope:"🩺",door:"🚪",elevator:"🛗",mirror:"🪞",window:"🪟",bed:"🛏️",couch_and_lamp:"🛋️",chair:"🪑",toilet:"🚽",plunger:"🪠",shower:"🚿",bathtub:"🛁",mouse_trap:"🪤",razor:"🪒",lotion_bottle:"🧴",safety_pin:"🧷",broom:"🧹",basket:"🧺",roll_of_paper:"🧻",bucket:"🪣",soap:"🧼",toothbrush:"🪥",sponge:"🧽",fire_extinguisher:"🧯",shopping_cart:"🛒",smoking:"🚬",coffin:"⚰️",headstone:"🪦",funeral_urn:"⚱️",moyai:"🗿",placard:"🪧",atm:"🏧",put_litter_in_its_place:"🚮",potable_water:"🚰",wheelchair:"♿",mens:"🚹",womens:"🚺",restroom:"🚻",baby_symbol:"🚼",wc:"🚾",passport_control:"🛂",customs:"🛃",baggage_claim:"🛄",left_luggage:"🛅",warning:"⚠️",children_crossing:"🚸",no_entry:"⛔",no_entry_sign:"🚫",no_bicycles:"🚳",no_smoking:"🚭",do_not_litter:"🚯","non-potable_water":"🚱",no_pedestrians:"🚷",no_mobile_phones:"📵",underage:"🔞",radioactive:"☢️",biohazard:"☣️",arrow_up:"⬆️",arrow_upper_right:"↗️",arrow_right:"➡️",arrow_lower_right:"↘️",arrow_down:"⬇️",arrow_lower_left:"↙️",arrow_left:"⬅️",arrow_upper_left:"↖️",arrow_up_down:"↕️",left_right_arrow:"↔️",leftwards_arrow_with_hook:"↩️",arrow_right_hook:"↪️",arrow_heading_up:"⤴️",arrow_heading_down:"⤵️",arrows_clockwise:"🔃",arrows_counterclockwise:"🔄",back:"🔙",end:"🔚",on:"🔛",soon:"🔜",top:"🔝",place_of_worship:"🛐",atom_symbol:"⚛️",om:"🕉️",star_of_david:"✡️",wheel_of_dharma:"☸️",yin_yang:"☯️",latin_cross:"✝️",orthodox_cross:"☦️",star_and_crescent:"☪️",peace_symbol:"☮️",menorah:"🕎",six_pointed_star:"🔯",aries:"♈",taurus:"♉",gemini:"♊",cancer:"♋",leo:"♌",virgo:"♍",libra:"♎",scorpius:"♏",sagittarius:"♐",capricorn:"♑",aquarius:"♒",pisces:"♓",ophiuchus:"⛎",twisted_rightwards_arrows:"🔀",repeat:"🔁",repeat_one:"🔂",arrow_forward:"▶️",fast_forward:"⏩",next_track_button:"⏭️",play_or_pause_button:"⏯️",arrow_backward:"◀️",rewind:"⏪",previous_track_button:"⏮️",arrow_up_small:"🔼",arrow_double_up:"⏫",arrow_down_small:"🔽",arrow_double_down:"⏬",pause_button:"⏸️",stop_button:"⏹️",record_button:"⏺️",eject_button:"⏏️",cinema:"🎦",low_brightness:"🔅",high_brightness:"🔆",signal_strength:"📶",vibration_mode:"📳",mobile_phone_off:"📴",female_sign:"♀️",male_sign:"♂️",transgender_symbol:"⚧️",heavy_multiplication_x:"✖️",heavy_plus_sign:"➕",heavy_minus_sign:"➖",heavy_division_sign:"➗",infinity:"♾️",bangbang:"‼️",interrobang:"⁉️",question:"❓",grey_question:"❔",grey_exclamation:"❕",exclamation:"❗",heavy_exclamation_mark:"❗",wavy_dash:"〰️",currency_exchange:"💱",heavy_dollar_sign:"💲",medical_symbol:"⚕️",recycle:"♻️",fleur_de_lis:"⚜️",trident:"🔱",name_badge:"📛",beginner:"🔰",o:"⭕",white_check_mark:"✅",ballot_box_with_check:"☑️",heavy_check_mark:"✔️",x:"❌",negative_squared_cross_mark:"❎",curly_loop:"➰",loop:"➿",part_alternation_mark:"〽️",eight_spoked_asterisk:"✳️",eight_pointed_black_star:"✴️",sparkle:"❇️",copyright:"©️",registered:"®️",tm:"™️",hash:"#️⃣",asterisk:"*️⃣",zero:"0️⃣",one:"1️⃣",two:"2️⃣",three:"3️⃣",four:"4️⃣",five:"5️⃣",six:"6️⃣",seven:"7️⃣",eight:"8️⃣",nine:"9️⃣",keycap_ten:"🔟",capital_abcd:"🔠",abcd:"🔡",symbols:"🔣",abc:"🔤",a:"🅰️",ab:"🆎",b:"🅱️",cl:"🆑",cool:"🆒",free:"🆓",information_source:"ℹ️",id:"🆔",m:"Ⓜ️",new:"🆕",ng:"🆖",o2:"🅾️",ok:"🆗",parking:"🅿️",sos:"🆘",up:"🆙",vs:"🆚",koko:"🈁",sa:"🈂️",ideograph_advantage:"🉐",accept:"🉑",congratulations:"㊗️",secret:"㊙️",u6e80:"🈵",red_circle:"🔴",orange_circle:"🟠",yellow_circle:"🟡",green_circle:"🟢",large_blue_circle:"🔵",purple_circle:"🟣",brown_circle:"🟤",black_circle:"⚫",white_circle:"⚪",red_square:"🟥",orange_square:"🟧",yellow_square:"🟨",green_square:"🟩",blue_square:"🟦",purple_square:"🟪",brown_square:"🟫",black_large_square:"⬛",white_large_square:"⬜",black_medium_square:"◼️",white_medium_square:"◻️",black_medium_small_square:"◾",white_medium_small_square:"◽",black_small_square:"▪️",white_small_square:"▫️",large_orange_diamond:"🔶",large_blue_diamond:"🔷",small_orange_diamond:"🔸",small_blue_diamond:"🔹",small_red_triangle:"🔺",small_red_triangle_down:"🔻",diamond_shape_with_a_dot_inside:"💠",radio_button:"🔘",white_square_button:"🔳",black_square_button:"🔲",checkered_flag:"🏁",triangular_flag_on_post:"🚩",crossed_flags:"🎌",black_flag:"🏴",white_flag:"🏳️",rainbow_flag:"🏳️‍🌈",transgender_flag:"🏳️‍⚧️",pirate_flag:"🏴‍☠️",ascension_island:"🇦🇨",andorra:"🇦🇩",united_arab_emirates:"🇦🇪",afghanistan:"🇦🇫",antigua_barbuda:"🇦🇬",anguilla:"🇦🇮",albania:"🇦🇱",armenia:"🇦🇲",angola:"🇦🇴",antarctica:"🇦🇶",argentina:"🇦🇷",american_samoa:"🇦🇸",austria:"🇦🇹",australia:"🇦🇺",aruba:"🇦🇼",aland_islands:"🇦🇽",azerbaijan:"🇦🇿",bosnia_herzegovina:"🇧🇦",barbados:"🇧🇧",bangladesh:"🇧🇩",belgium:"🇧🇪",burkina_faso:"🇧🇫",bulgaria:"🇧🇬",bahrain:"🇧🇭",burundi:"🇧🇮",benin:"🇧🇯",st_barthelemy:"🇧🇱",bermuda:"🇧🇲",brunei:"🇧🇳",bolivia:"🇧🇴",caribbean_netherlands:"🇧🇶",brazil:"🇧🇷",bahamas:"🇧🇸",bhutan:"🇧🇹",bouvet_island:"🇧🇻",botswana:"🇧🇼",belarus:"🇧🇾",belize:"🇧🇿",canada:"🇨🇦",cocos_islands:"🇨🇨",congo_kinshasa:"🇨🇩",central_african_republic:"🇨🇫",congo_brazzaville:"🇨🇬",switzerland:"🇨🇭",cote_divoire:"🇨🇮",cook_islands:"🇨🇰",chile:"🇨🇱",cameroon:"🇨🇲",cn:"🇨🇳",colombia:"🇨🇴",clipperton_island:"🇨🇵",costa_rica:"🇨🇷",cuba:"🇨🇺",cape_verde:"🇨🇻",curacao:"🇨🇼",christmas_island:"🇨🇽",cyprus:"🇨🇾",czech_republic:"🇨🇿",de:"🇩🇪",diego_garcia:"🇩🇬",djibouti:"🇩🇯",denmark:"🇩🇰",dominica:"🇩🇲",dominican_republic:"🇩🇴",algeria:"🇩🇿",ceuta_melilla:"🇪🇦",ecuador:"🇪🇨",estonia:"🇪🇪",egypt:"🇪🇬",western_sahara:"🇪🇭",eritrea:"🇪🇷",es:"🇪🇸",ethiopia:"🇪🇹",eu:"🇪🇺",european_union:"🇪🇺",finland:"🇫🇮",fiji:"🇫🇯",falkland_islands:"🇫🇰",micronesia:"🇫🇲",faroe_islands:"🇫🇴",fr:"🇫🇷",gabon:"🇬🇦",gb:"🇬🇧",uk:"🇬🇧",grenada:"🇬🇩",georgia:"🇬🇪",french_guiana:"🇬🇫",guernsey:"🇬🇬",ghana:"🇬🇭",gibraltar:"🇬🇮",greenland:"🇬🇱",gambia:"🇬🇲",guinea:"🇬🇳",guadeloupe:"🇬🇵",equatorial_guinea:"🇬🇶",greece:"🇬🇷",south_georgia_south_sandwich_islands:"🇬🇸",guatemala:"🇬🇹",guam:"🇬🇺",guinea_bissau:"🇬🇼",guyana:"🇬🇾",hong_kong:"🇭🇰",heard_mcdonald_islands:"🇭🇲",honduras:"🇭🇳",croatia:"🇭🇷",haiti:"🇭🇹",hungary:"🇭🇺",canary_islands:"🇮🇨",indonesia:"🇮🇩",ireland:"🇮🇪",israel:"🇮🇱",isle_of_man:"🇮🇲",india:"🇮🇳",british_indian_ocean_territory:"🇮🇴",iraq:"🇮🇶",iran:"🇮🇷",iceland:"🇮🇸",it:"🇮🇹",jersey:"🇯🇪",jamaica:"🇯🇲",jordan:"🇯🇴",jp:"🇯🇵",kenya:"🇰🇪",kyrgyzstan:"🇰🇬",cambodia:"🇰🇭",kiribati:"🇰🇮",comoros:"🇰🇲",st_kitts_nevis:"🇰🇳",north_korea:"🇰🇵",kr:"🇰🇷",kuwait:"🇰🇼",cayman_islands:"🇰🇾",kazakhstan:"🇰🇿",laos:"🇱🇦",lebanon:"🇱🇧",st_lucia:"🇱🇨",liechtenstein:"🇱🇮",sri_lanka:"🇱🇰",liberia:"🇱🇷",lesotho:"🇱🇸",lithuania:"🇱🇹",luxembourg:"🇱🇺",latvia:"🇱🇻",libya:"🇱🇾",morocco:"🇲🇦",monaco:"🇲🇨",moldova:"🇲🇩",montenegro:"🇲🇪",st_martin:"🇲🇫",madagascar:"🇲🇬",marshall_islands:"🇲🇭",macedonia:"🇲🇰",mali:"🇲🇱",myanmar:"🇲🇲",mongolia:"🇲🇳",macau:"🇲🇴",northern_mariana_islands:"🇲🇵",martinique:"🇲🇶",mauritania:"🇲🇷",montserrat:"🇲🇸",malta:"🇲🇹",mauritius:"🇲🇺",maldives:"🇲🇻",malawi:"🇲🇼",mexico:"🇲🇽",malaysia:"🇲🇾",mozambique:"🇲🇿",namibia:"🇳🇦",new_caledonia:"🇳🇨",niger:"🇳🇪",norfolk_island:"🇳🇫",nigeria:"🇳🇬",nicaragua:"🇳🇮",netherlands:"🇳🇱",norway:"🇳🇴",nepal:"🇳🇵",nauru:"🇳🇷",niue:"🇳🇺",new_zealand:"🇳🇿",oman:"🇴🇲",panama:"🇵🇦",peru:"🇵🇪",french_polynesia:"🇵🇫",papua_new_guinea:"🇵🇬",philippines:"🇵🇭",pakistan:"🇵🇰",poland:"🇵🇱",st_pierre_miquelon:"🇵🇲",pitcairn_islands:"🇵🇳",puerto_rico:"🇵🇷",palestinian_territories:"🇵🇸",portugal:"🇵🇹",palau:"🇵🇼",paraguay:"🇵🇾",qatar:"🇶🇦",reunion:"🇷🇪",romania:"🇷🇴",serbia:"🇷🇸",ru:"🇷🇺",rwanda:"🇷🇼",saudi_arabia:"🇸🇦",solomon_islands:"🇸🇧",seychelles:"🇸🇨",sudan:"🇸🇩",sweden:"🇸🇪",singapore:"🇸🇬",st_helena:"🇸🇭",slovenia:"🇸🇮",svalbard_jan_mayen:"🇸🇯",slovakia:"🇸🇰",sierra_leone:"🇸🇱",san_marino:"🇸🇲",senegal:"🇸🇳",somalia:"🇸🇴",suriname:"🇸🇷",south_sudan:"🇸🇸",sao_tome_principe:"🇸🇹",el_salvador:"🇸🇻",sint_maarten:"🇸🇽",syria:"🇸🇾",swaziland:"🇸🇿",tristan_da_cunha:"🇹🇦",turks_caicos_islands:"🇹🇨",chad:"🇹🇩",french_southern_territories:"🇹🇫",togo:"🇹🇬",thailand:"🇹🇭",tajikistan:"🇹🇯",tokelau:"🇹🇰",timor_leste:"🇹🇱",turkmenistan:"🇹🇲",tunisia:"🇹🇳",tonga:"🇹🇴",tr:"🇹🇷",trinidad_tobago:"🇹🇹",tuvalu:"🇹🇻",taiwan:"🇹🇼",tanzania:"🇹🇿",ukraine:"🇺🇦",uganda:"🇺🇬",us_outlying_islands:"🇺🇲",united_nations:"🇺🇳",us:"🇺🇸",uruguay:"🇺🇾",uzbekistan:"🇺🇿",vatican_city:"🇻🇦",st_vincent_grenadines:"🇻🇨",venezuela:"🇻🇪",british_virgin_islands:"🇻🇬",us_virgin_islands:"🇻🇮",vietnam:"🇻🇳",vanuatu:"🇻🇺",wallis_futuna:"🇼🇫",samoa:"🇼🇸",kosovo:"🇽🇰",yemen:"🇾🇪",mayotte:"🇾🇹",south_africa:"🇿🇦",zambia:"🇿🇲",zimbabwe:"🇿🇼",england:"🏴󠁧󠁢󠁥󠁮󠁧󠁿",scotland:"🏴󠁧󠁢󠁳󠁣󠁴󠁿",wales:"🏴󠁧󠁢󠁷󠁬󠁳󠁿"};Object.keys(J).reduce((e,t)=>{const n=J[t];return e[n]=t,e},{});const Jn=Object.keys(J).map(e=>e);Object.keys(J).map(e=>J[e]);function Qn(e){return Jn.filter(t=>t.startsWith(e)).map(t=>({name:t,emoji:J[t]}))}const ei=200,ti=new w.PluginKey("emoji"),ni=f.Node.create({name:"emoji",content:"text*",priority:ei,addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),HTMLAttributes:{},suggestion:{char:":",pluginKey:ti,command:({editor:t,range:n,props:i})=>{t.chain().focus().insertContentAt(n,`${i.emoji} `).run()}},button:({editor:t,t:n})=>({component:Yn,componentProps:{editor:t,action:()=>{},isActive:()=>!1,disabled:!1,icon:"EmojiIcon",tooltip:n("editor.emoji.tooltip")}})}},addCommands(){return{setEmoji:e=>({commands:t})=>t.insertContent(`${e.emoji} `)}},addProseMirrorPlugins(){return[f.Suggestion({editor:this.editor,...this.options.suggestion})]}}).configure({suggestion:{items:({query:e})=>Qn(e),render:()=>{let e,t,n;return{onStart:i=>{n=i.editor.isEditable,n&&(e=new f.ReactRenderer(qe,{props:i,editor:i.editor}),t=xe("body",{getReferenceClientRect:i.clientRect,appendTo:()=>document.body,content:e.element,showOnCreate:!0,interactive:!0,trigger:"manual",placement:"bottom-start"}))},onUpdate(i){n&&(e.updateProps(i),t[0].setProps({getReferenceClientRect:i.clientRect}))},onKeyDown(i){var a;if(n)return i.event.key==="Escape"?(t[0].hide(),!0):(a=e.ref)==null?void 0:a.onKeyDown(i)},onExit(){n&&(t[0].destroy(),e.destroy())}}}}});function ii(e){const t=document.createElement("iframe");t.setAttribute("style","position: absolute; width: 0; height: 0; top: 0; left: 0;"),document.body.appendChild(t),t.textContent=`
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const g=require("./tiptap-BjxGiEhB.cjs"),w=require("./vendor-C9wSqocV.cjs"),o=require("react/jsx-runtime"),m=require("react"),D=require("lucide-react"),s=require("./RichTextEditor-DJJ5SBya.cjs"),p=require("./index-Bekz0zC7.cjs"),Ge=require("@radix-ui/react-tabs"),ne=require("shiki"),We=require("@radix-ui/react-select"),Ze=require("@radix-ui/react-slot"),xe=require("tippy.js"),Xe=require("react-image-crop"),Ye=require("@radix-ui/react-checkbox"),be=require("scroll-into-view-if-needed"),G=require("frimousse"),Se=require("docx"),U=require("prosemirror-docx");function ce(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const i=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,i.get?i:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const H=ce(m),W=ce(Ge),M=ce(We),me=ce(Ye),pe=m.forwardRef(({asChild:e,...t},n)=>{var r;const i=s.icons[t.icon],a=e?Ze.Slot:s.Button;return o.jsxs(s.Tooltip,{children:[o.jsx(s.TooltipTrigger,{asChild:!0,children:o.jsx(a,{className:"richtext-h-[32px] richtext-min-w-24 richtext-overflow-hidden richtext-px-[5px] richtext-py-0",disabled:t==null?void 0:t.disabled,ref:n,variant:"ghost",...t,children:o.jsxs("div",{className:"richtext-flex richtext-h-full richtext-items-center richtext-font-normal",children:[(t==null?void 0:t.title)&&o.jsx("div",{className:"richtext-grow richtext-truncate richtext-text-left richtext-text-sm",children:t==null?void 0:t.title}),i&&o.jsx(i,{className:"richtext-ml-1 richtext-size-3 richtext-shrink-0 richtext-text-zinc-500"})]})})}),o.jsx(s.TooltipContent,{children:o.jsxs("div",{className:"richtext-flex richtext-max-w-24 richtext-flex-col richtext-items-center richtext-text-center",children:[(t==null?void 0:t.tooltip)&&o.jsx("div",{children:t==null?void 0:t.tooltip}),o.jsx("div",{className:"richtext-flex",children:!!((r=t==null?void 0:t.shortcutKeys)!=null&&r.length)&&o.jsx("span",{children:s.getShortcutKeys(t==null?void 0:t.shortcutKeys)})})]})})]})}),Je=g.Bold.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),button:({editor:t,t:n})=>({component:s.ActionButton,componentProps:{action:()=>t.commands.toggleBold(),isActive:()=>t.isActive("bold")||!1,disabled:!t.can().toggleBold(),icon:"Bold",shortcutKeys:["mod","B"],tooltip:n("editor.bold.tooltip")}})}}}),Qe=g.Italic.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),button({editor:t,t:n}){return{component:s.ActionButton,componentProps:{action:()=>t.commands.toggleItalic(),isActive:()=>t.isActive("italic")||!1,disabled:!t.can().toggleItalic(),shortcutKeys:["mod","I"],icon:"Italic",tooltip:n("editor.italic.tooltip")}}}}}}),et=g.Underline.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),button({editor:t,t:n}){return{component:s.ActionButton,componentProps:{action:()=>t.commands.toggleUnderline(),isActive:()=>t.isActive("underline")||!1,disabled:!t.can().toggleUnderline(),icon:"Underline",shortcutKeys:["mod","U"],tooltip:n("editor.underline.tooltip")}}}}}}),tt=g.Strike.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),button:({editor:t,t:n})=>({component:s.ActionButton,componentProps:{action:()=>t.commands.toggleStrike(),isActive:()=>t.isActive("strike")||!1,disabled:!t.can().toggleStrike(),icon:"Strikethrough",shortcutKeys:["shift","mod","S"],tooltip:n("editor.strike.tooltip")}})}}}),nt=g.Code.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),button:({editor:t,t:n})=>({component:s.ActionButton,componentProps:{action:()=>t.commands.toggleCode(),isActive:()=>t.isActive("code")||!1,disabled:!t.can().toggleCode(),icon:"Code",shortcutKeys:["mod","E"],tooltip:n("editor.code.tooltip")}})}}});let F,Q;const de=new Set,ue=new Set;function it(){return F}function ot(e){if(!F&&!Q){const t=e.themes.filter(i=>!!i&&i in ne.bundledThemes),n=e.languages.filter(i=>!!i&&i in ne.bundledLanguages);return Q=ne.createHighlighter({themes:t,langs:n}).then(i=>{F=i}),Q}if(Q)return Q}async function Le(e){return F&&!F.getLoadedThemes().includes(e)&&!ue.has(e)&&e in ne.bundledThemes?(ue.add(e),await F.loadTheme(e),ue.delete(e),!0):!1}async function Ee(e){return F&&!F.getLoadedLanguages().includes(e)&&!de.has(e)&&e in ne.bundledLanguages?(de.add(e),await F.loadLanguage(e),de.delete(e),!0):!1}async function at({doc:e,name:t,defaultTheme:n,defaultLanguage:i}){const a=g.findChildren(e,l=>l.type.name===t),r=[...a.map(l=>l.node.attrs.theme),n],c=[...a.map(l=>l.node.attrs.language),i];F?await Promise.all([...r.flatMap(l=>Le(l)),...c.flatMap(l=>!!l&&Ee(l))]):await ot({languages:c,themes:r})}function ve({doc:e,name:t,defaultTheme:n,defaultLanguage:i}){const a=[];return g.findChildren(e,c=>c.type.name===t).forEach(c=>{let l=c.pos+1,d=c.node.attrs.language||i;const h=c.node.attrs.theme||n,u=it();if(!u)return;u.getLoadedLanguages().includes(d)||(d="plaintext");const x=u.getLoadedThemes().includes(h)?h:u.getLoadedThemes()[0],_=u.codeToTokensBase(c.node.textContent,{lang:d,theme:x});for(const f of _){for(const y of f){const v=l+y.content.length,T=w.Decoration.inline(l,v,{style:`color: ${y.color}`});a.push(T),l=v}l+=1}}),w.DecorationSet.create(e,a)}function rt({name:e,defaultLanguage:t,defaultTheme:n}){const i=new w.Plugin({key:new w.PluginKey("shiki"),view(a){class r{constructor(){this.initDecorations()}update(){this.checkUndecoratedBlocks()}destroy(){}async initDecorations(){const l=a.state.doc;await at({doc:l,name:e,defaultLanguage:t,defaultTheme:n});const d=a.state.tr.setMeta("shikiPluginForceDecoration",!0);a.dispatch(d)}async checkUndecoratedBlocks(){const l=g.findChildren(a.state.doc,u=>u.type.name===e);if((await Promise.all(l.flatMap(u=>[Le(u.node.attrs.theme),Ee(u.node.attrs.language)]))).includes(!0)){const u=a.state.tr.setMeta("shikiPluginForceDecoration",!0);a.dispatch(u)}}}return new r},state:{init:(a,{doc:r})=>ve({doc:r,name:e,defaultLanguage:t,defaultTheme:n}),apply:(a,r,c,l)=>{const d=c.selection.$head.parent.type.name,h=l.selection.$head.parent.type.name,u=g.findChildren(c.doc,f=>f.type.name===e),x=g.findChildren(l.doc,f=>f.type.name===e),_=a.docChanged&&([d,h].includes(e)||x.length!==u.length||a.steps.some(f=>f.from!==void 0&&f.to!==void 0&&u.some(y=>y.pos>=f.from&&y.pos+y.node.nodeSize<=f.to)));return a.getMeta("shikiPluginForceDecoration")||_?ve({doc:a.doc,name:e,defaultLanguage:t,defaultTheme:n}):r.map(a.mapping,a.doc)}},props:{decorations(a){return i.getState(a)}}});return i}function st({action:e,languages:t,...n}){const i=r=>{e(r)},a=m.useMemo(()=>t==null?void 0:t.map(r=>({title:p.MAP_LANGUAGE_CODE_LABELS[r]||r,language:r})),[t]);return o.jsxs(s.DropdownMenu,{children:[o.jsx(s.DropdownMenuTrigger,{disabled:n==null?void 0:n.disabled,asChild:!0,children:o.jsx(s.ActionButton,{tooltip:n==null?void 0:n.tooltip,disabled:n==null?void 0:n.disabled,icon:n==null?void 0:n.icon})}),o.jsx(s.DropdownMenuContent,{className:"richtext-w-full !richtext-max-h-[180px] !richtext-overflow-y-scroll",children:a==null?void 0:a.map(r=>o.jsx(s.DropdownMenuItem,{onClick:()=>i(r.language),children:o.jsx("div",{className:"richtext-h-full richtext-ml-1",children:r.title})},`codeblock-${r.title}`))})]})}const ct=M.Root,lt=M.Value,Ie=H.forwardRef(({className:e,children:t,...n},i)=>o.jsxs(M.Trigger,{ref:i,className:s.cn("richtext-flex richtext-h-10 richtext-w-full richtext-items-center richtext-justify-between richtext-rounded-md richtext-border richtext-border-input richtext-bg-background richtext-px-3 richtext-py-2 richtext-text-sm richtext-ring-offset-background placeholder:richtext-text-muted-foreground focus:richtext-outline-none focus:richtext-ring-2 focus:richtext-ring-ring focus:richtext-ring-offset-2 disabled:richtext-cursor-not-allowed disabled:richtext-opacity-50 [&>span]:richtext-line-clamp-1",e),...n,children:[t,o.jsx(M.Icon,{asChild:!0,children:o.jsx(D.ChevronDown,{className:"richtext-h-4 richtext-w-4 richtext-opacity-50"})})]}));Ie.displayName=M.Trigger.displayName;const Me=H.forwardRef(({className:e,...t},n)=>o.jsx(M.ScrollUpButton,{ref:n,className:s.cn("richtext-flex richtext-cursor-default richtext-items-center richtext-justify-center richtext-py-1",e),...t,children:o.jsx(D.ChevronUp,{className:"richtext-h-4 richtext-w-4"})}));Me.displayName=M.ScrollUpButton.displayName;const De=H.forwardRef(({className:e,...t},n)=>o.jsx(M.ScrollDownButton,{ref:n,className:s.cn("richtext-flex richtext-cursor-default richtext-items-center richtext-justify-center richtext-py-1",e),...t,children:o.jsx(D.ChevronDown,{className:"richtext-h-4 richtext-w-4"})}));De.displayName=M.ScrollDownButton.displayName;const Re=H.forwardRef(({className:e,children:t,position:n="popper",...i},a)=>o.jsx(M.Portal,{children:o.jsxs(M.Content,{ref:a,className:s.cn("richtext-relative richtext-z-50 richtext-max-h-60 richtext-overflow-y-auto richtext-min-w-[8rem] richtext-overflow-hidden richtext-rounded-md richtext-border richtext-bg-popover richtext-text-popover-foreground richtext-shadow-md data-[state=open]:richtext-animate-in data-[state=closed]:richtext-animate-out data-[state=closed]:richtext-fade-out-0 data-[state=open]:richtext-fade-in-0 data-[state=closed]:richtext-zoom-out-95 data-[state=open]:richtext-zoom-in-95 data-[side=bottom]:richtext-slide-in-from-top-2 data-[side=left]:richtext-slide-in-from-right-2 data-[side=right]:richtext-slide-in-from-left-2 data-[side=top]:richtext-slide-in-from-bottom-2",n==="popper"&&"data-[side=bottom]:richtext-translate-y-1 data-[side=left]:richtext--translate-x-1 data-[side=right]:richtext-translate-x-1 data-[side=top]:richtext--translate-y-1",e),position:n,...i,children:[o.jsx(Me,{}),o.jsx(M.Viewport,{className:s.cn("richtext-p-1",n==="popper"&&"richtext-h-[var(--radix-select-trigger-height)] richtext-w-full richtext-min-w-[var(--radix-select-trigger-width)]"),children:t}),o.jsx(De,{})]})}));Re.displayName=M.Content.displayName;const dt=H.forwardRef(({className:e,...t},n)=>o.jsx(M.Label,{ref:n,className:s.cn("richtext-py-1.5 richtext-pl-8 richtext-pr-2 richtext-text-sm richtext-font-semibold",e),...t}));dt.displayName=M.Label.displayName;const fe=H.forwardRef(({className:e,children:t,...n},i)=>o.jsxs(M.Item,{ref:i,className:s.cn("richtext-relative richtext-flex richtext-w-full richtext-cursor-default richtext-select-none richtext-items-center richtext-rounded-sm richtext-py-1.5 richtext-pl-8 richtext-pr-2 richtext-text-sm richtext-outline-none focus:richtext-bg-accent focus:richtext-text-accent-foreground data-[disabled]:richtext-pointer-events-none data-[disabled]:richtext-opacity-50",e),...n,children:[o.jsx("span",{className:"richtext-absolute richtext-left-2 richtext-flex richtext-h-3.5 richtext-w-3.5 richtext-items-center richtext-justify-center",children:o.jsx(M.ItemIndicator,{children:o.jsx(D.Check,{className:"richtext-h-4 richtext-w-4"})})}),o.jsx(M.ItemText,{children:t})]}));fe.displayName=M.Item.displayName;const ut=H.forwardRef(({className:e,...t},n)=>o.jsx(M.Separator,{ref:n,className:s.cn("richtext--mx-1 richtext-my-1 richtext-h-px richtext-bg-muted",e),...t}));ut.displayName=M.Separator.displayName;function ht(){const[e,t]=m.useState(!1);return{isCopied:e,copyToClipboard:async i=>{try{await navigator.clipboard.writeText(i),t(!0),setTimeout(()=>t(!1),2e3)}catch(a){console.error("Failed to copy text: ",a),t(!1)}}}}const mt="_wrap_134f4_1",ft="_maxHeight_134f4_10",gt="_btnCopy_134f4_13",_t="_btnDelete_134f4_14",xt="_blockInfo_134f4_18",bt="_blockInfoEditable_134f4_28",pt="_selectLang_134f4_32",wt="_copied_134f4_58",q={wrap:mt,maxHeight:ft,btnCopy:gt,btnDelete:_t,blockInfo:xt,blockInfoEditable:bt,selectLang:pt,copied:wt};function yt({editor:e,node:{attrs:t},updateAttributes:n,extension:i}){var _,f;const{isCopied:a,copyToClipboard:r}=ht(),c=m.useMemo(()=>{var y;return(y=i.options.languages)!=null&&y.length?i.options.languages:p.DEFAULT_LANGUAGE_CODE_BLOCK},[i.options.languages]),l=s.useEditableEditor(),d=(f=(_=e==null?void 0:e.options)==null?void 0:_.editorProps)==null?void 0:f.print,{language:h}=t,u=m.useRef(null),x=m.useCallback(()=>s.deleteNode(Pe.name,e),[e]);return o.jsxs(g.NodeViewWrapper,{className:w.clsx(q.wrap,!d&&q.maxHeight,"render-wrapper"),children:[o.jsxs("div",{className:w.clsx(q.blockInfo,{[q.blockInfoEditable]:!l}),children:[o.jsx("span",{className:w.clsx(q.btnCopy,a&&q.copied),onClick:()=>r(u.current.innerText),children:a?o.jsx(D.CopyCheck,{size:16}):o.jsx(D.Copy,{size:16})}),o.jsx("span",{className:q.btnDelete,onClick:x,children:o.jsx(s.IconComponent,{name:"Trash2"})}),o.jsx("div",{className:q.selectLang,children:o.jsxs(ct,{defaultValue:h||"auto",disabled:!l,onValueChange:y=>n({language:y}),children:[o.jsx(Ie,{children:o.jsx(lt,{placeholder:"Language"})}),o.jsxs(Re,{className:"richtext-max-h-60 richtext-overflow-y-auto",children:[o.jsx(fe,{value:"auto",children:"Auto"}),c.map((y,v)=>o.jsx(fe,{value:y,children:y.charAt(0).toUpperCase()+y.slice(1)},`code-lang-${v}`))]})]})})]}),o.jsx("pre",{ref:u,children:o.jsx(g.NodeViewContent,{as:"code"})})]})}const Pe=g.CodeBlock.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),languages:[],button:({editor:t,t:n,extension:i})=>{var r,c,l;const a=(c=(r=i==null?void 0:i.options)==null?void 0:r.languages)!=null&&c.length?(l=i==null?void 0:i.options)==null?void 0:l.languages:p.DEFAULT_LANGUAGE_CODE_BLOCK;return{component:st,componentProps:{action:(d="js")=>t.commands.setCodeBlock({language:d}),isActive:()=>t.isActive("codeBlock")||!1,disabled:!t.can().toggleCodeBlock(),icon:"Code2",tooltip:n("editor.codeblock.tooltip"),languages:a}}}}},addNodeView(){return g.ReactNodeViewRenderer(yt)},addProseMirrorPlugins(){var e;return[...((e=this.parent)==null?void 0:e.call(this))||[],rt({name:this.name,defaultLanguage:null,defaultTheme:this.options.defaultTheme})]}});function vt(e){var a,r,c;const{t,lang:n}=p.useLocale(),i=m.useMemo(()=>{var h;const l=(h=e==null?void 0:e.items)==null?void 0:h.find(u=>u.isActive());return l&&!l.default?{...l}:{title:e.tooltip,font:t("editor.fontFamily.default.tooltip"),isActive:()=>!1,disabled:!1,action:()=>e.editor.chain().focus().unsetFontFamily().run()}},[t,n,e]);return o.jsxs(s.DropdownMenu,{children:[o.jsx(s.DropdownMenuTrigger,{asChild:!0,disabled:e==null?void 0:e.disabled,children:o.jsx(pe,{disabled:e==null?void 0:e.disabled,icon:"MenuDown",title:((a=i==null?void 0:i.font)==null?void 0:a.length)>7?`${(r=i==null?void 0:i.font)==null?void 0:r.slice(0,6)}...`:i==null?void 0:i.font,tooltip:e==null?void 0:e.tooltip})}),o.jsx(s.DropdownMenuContent,{className:"richtext-w-full",children:(c=e==null?void 0:e.items)==null?void 0:c.map((l,d)=>{const h=l.font===t("editor.fontFamily.default.tooltip")?{}:{fontFamily:l.font};return o.jsxs(m.Fragment,{children:[o.jsx(s.DropdownMenuCheckboxItem,{checked:(i==null?void 0:i.font)===l.font,onClick:l.action,children:o.jsx("div",{className:"richtext-ml-1 richtext-h-full",style:h,children:l.font})}),l.font===t("editor.fontFamily.default.tooltip")&&o.jsx(s.DropdownMenuSeparator,{})]},`font-family-${d}`)})})]})}const kt=g.FontFamily.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),fontFamilyList:p.DEFAULT_FONT_FAMILY_LIST,button({editor:t,extension:n,t:i}){var h;const{extensions:a=[]}=t.extensionManager??[],r=s.ensureNameValueOptions(((h=n==null?void 0:n.options)==null?void 0:h.fontFamilyList)||[]),c=a.find(u=>u.name==="base-kit"),l=r.map(u=>({action:()=>{t.chain().focus().setFontFamily(u.value).run()},isActive:()=>t.isActive("textStyle",{fontFamily:u.value})||!1,disabled:!t.can().setFontFamily(u.value),title:u.name,font:u.value}));c&&c.options.textStyle!==!1&&l.unshift({action:()=>t.chain().focus().unsetFontFamily().run(),isActive:()=>!1,disabled:!1,font:i("editor.fontFamily.default.tooltip"),title:i("editor.fontFamily.tooltip")});const d=l.filter(u=>u.disabled).length===l.length;return{component:vt,componentProps:{tooltip:i("editor.fontFamily.tooltip"),disabled:d,items:l,editor:t}}}}}});function jt(e){var n;const t=m.useMemo(()=>{var r;const i=(r=e==null?void 0:e.items)==null?void 0:r.find(c=>c.isActive());return i&&!i.default?{...i}:{title:e.tooltip,level:0,isActive:()=>!1}},[e]);return o.jsxs(s.DropdownMenu,{children:[o.jsx(s.DropdownMenuTrigger,{asChild:!0,disabled:e==null?void 0:e.disabled,children:o.jsx(pe,{disabled:e==null?void 0:e.disabled,icon:"MenuDown",title:t==null?void 0:t.title,tooltip:e==null?void 0:e.tooltip})}),o.jsx(s.DropdownMenuContent,{className:"richtext-w-full",children:(n=e==null?void 0:e.items)==null?void 0:n.map((i,a)=>{var r,c;return o.jsxs(m.Fragment,{children:[o.jsxs(s.DropdownMenuCheckboxItem,{checked:(t==null?void 0:t.title)===i.title,onClick:i.action,children:[o.jsx("div",{className:`heading- richtext-ml-1 richtext-h-full${i.level}`,children:i.title}),!!((r=i==null?void 0:i.shortcutKeys)!=null&&r.length)&&o.jsx(s.DropdownMenuShortcut,{className:"richtext-pl-4",children:(c=i==null?void 0:i.shortcutKeys)==null?void 0:c.map(l=>s.getShortcutKey(l)).join(" ")})]}),i.level===0&&o.jsx(s.DropdownMenuSeparator,{})]},`heading-k-${a}`)})})]})}const Ct=g.Heading.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),levels:[1,2,3,4,5,6],button({editor:t,extension:n,t:i}){var h;const{extensions:a=[]}=t.extensionManager??[],r=((h=n.options)==null?void 0:h.levels)||[],c=a.find(u=>u.name==="base-kit"),l=r.map(u=>({action:()=>t.commands.toggleHeading({level:u}),isActive:()=>t.isActive("heading",{level:u})||!1,disabled:!t.can().toggleHeading({level:u}),title:i(`editor.heading.h${u}.tooltip`),level:u,shortcutKeys:["alt","mod",`${u}`]}));c&&c.options.paragraph!==!1&&l.unshift({action:()=>t.commands.setParagraph(),isActive:()=>t.isActive("paragraph")||!1,disabled:!t.can().setParagraph(),level:0,title:i("editor.paragraph.tooltip"),shortcutKeys:["alt","mod","0"]});const d=l.filter(u=>u.disabled).length===l.length;return{component:jt,componentProps:{tooltip:i("editor.heading.tooltip"),disabled:d,items:l,editor:t}}}}}}),He=W.Root,we=H.forwardRef(({className:e,...t},n)=>o.jsx(W.List,{ref:n,className:s.cn("richtext-inline-flex richtext-h-10 richtext-items-center richtext-justify-center richtext-rounded-md richtext-bg-muted richtext-p-1 richtext-text-muted-foreground",e),...t}));we.displayName=W.List.displayName;const ie=H.forwardRef(({className:e,...t},n)=>o.jsx(W.Trigger,{ref:n,className:s.cn("richtext-inline-flex richtext-items-center richtext-justify-center richtext-whitespace-nowrap richtext-rounded-sm richtext-px-3 richtext-py-1.5 richtext-text-sm richtext-font-medium richtext-ring-offset-background richtext-transition-all focus-visible:richtext-outline-none focus-visible:richtext-ring-2 focus-visible:richtext-ring-ring focus-visible:richtext-ring-offset-2 disabled:richtext-pointer-events-none disabled:richtext-opacity-50 data-[state=active]:richtext-bg-background data-[state=active]:richtext-text-foreground data-[state=active]:richtext-shadow-sm",e),...t}));ie.displayName=W.Trigger.displayName;const oe=H.forwardRef(({className:e,...t},n)=>o.jsx(W.Content,{ref:n,className:s.cn("richtext-mt-2 richtext-ring-offset-background focus-visible:richtext-outline-none focus-visible:richtext-ring-2 focus-visible:richtext-ring-ring focus-visible:richtext-ring-offset-2",e),...t}));oe.displayName=W.Content.displayName;const Be=H.forwardRef(({className:e,...t},n)=>o.jsx(me.Root,{ref:n,className:s.cn("!richtext-peer !richtext-h-4 !richtext-w-4 !richtext-p-0 !richtext-shrink-0 !richtext-rounded-sm !richtext-border !richtext-border-primary !richtext-ring-offset-background focus-visible:!richtext-outline-none focus-visible:!richtext-ring-2 focus-visible:!richtext-ring-ring focus-visible:!richtext-ring-offset-2 disabled:!richtext-cursor-not-allowed disabled:!richtext-opacity-50 data-[state=checked]:!richtext-bg-primary data-[state=checked]:!richtext-text-primary-foreground",e),...t,children:o.jsx(me.Indicator,{className:s.cn("!richtext-flex !richtext-p-0 !richtext-items-center !richtext-justify-center !richtext-text-current"),children:o.jsx(D.Check,{className:"!richtext-h-4 !richtext-w-4"})})}));Be.displayName=me.Root.displayName;function At(e){var n;const t=m.useMemo(()=>{var r;const i=(r=e==null?void 0:e.items)==null?void 0:r.find(c=>c.isActive());return i&&!i.default?{...i,icon:i.icon?i.icon:e.icon}:{title:e==null?void 0:e.tooltip,icon:e.icon,isActive:()=>!1}},[e]);return o.jsxs(s.Popover,{modal:!0,children:[o.jsx(s.PopoverTrigger,{asChild:!0,disabled:e==null?void 0:e.disabled,children:o.jsx(s.ActionButton,{customClass:"!richtext-w-12 richtext-h-12",disabled:e==null?void 0:e.disabled,icon:e==null?void 0:e.icon,tooltip:e==null?void 0:e.tooltip,children:o.jsx(s.IconComponent,{className:"richtext-ml-1 richtext-size-3 richtext-text-zinc-500",name:"MenuDown"})})}),o.jsx(s.PopoverContent,{align:"start",className:"richtext-flex richtext-w-full richtext-min-w-4 richtext-flex-row richtext-gap-1 !richtext-p-[4px]",side:"bottom",children:(n=e==null?void 0:e.items)==null?void 0:n.map((i,a)=>{var r,c;return o.jsxs(s.Tooltip,{children:[o.jsx(s.TooltipTrigger,{asChild:!0,children:o.jsx(s.Toggle,{className:"richtext-size-7 richtext-p-1","data-state":t.title===i.title?"on":"off",onClick:i==null?void 0:i.action,pressed:t.title===i.title,size:"sm",children:(i==null?void 0:i.icon)&&o.jsx(s.IconComponent,{name:i.icon})})}),o.jsxs(s.TooltipContent,{className:"richtext-flex richtext-flex-col richtext-items-center",children:[o.jsx("span",{children:i.title}),!!((r=i.shortcutKeys)!=null&&r.length)&&o.jsx("span",{children:(c=i.shortcutKeys)==null?void 0:c.map(l=>s.getShortcutKey(l)).join(" ")})]})]},`text-align-${a}`)})})]})}const Tt=g.TextAlign.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),types:["heading","paragraph","list_item","title"],button({editor:t,extension:n,t:i}){var h;const a=((h=n.options)==null?void 0:h.alignments)||[],r={left:["mod","Shift","L"],center:["mod","Shift","E"],right:["mod","Shift","R"],justify:["mod","Shift","J"]},c={left:"AlignLeft",center:"AlignCenter",right:"AlignRight",justify:"AlignJustify"},l=a.map(u=>{var x,_,f;return{title:i(`editor.textalign.${u}.tooltip`),icon:c[u],shortcutKeys:r[u],isActive:()=>t.isActive({textAlign:u})||!1,action:()=>{var y,v;return(v=(y=t.commands)==null?void 0:y.setTextAlign)==null?void 0:v.call(y,u)},disabled:!((f=(_=(x=t==null?void 0:t.can)==null?void 0:x.call(t))==null?void 0:_.setTextAlign)!=null&&f.call(_,u))}}),d=l.filter(u=>u.disabled).length===l.length;return{component:At,componentProps:{icon:"AlignJustify",tooltip:i("editor.textalign.tooltip"),disabled:d,items:l}}}}}});function Nt(e){var i;const{t}=p.useLocale(),n=m.useMemo(()=>{const a=(e.items||[]).find(c=>c.isActive());return a||{title:t("editor.fontSize.default.tooltip"),isActive:()=>!1}},[e]);return o.jsxs(s.DropdownMenu,{children:[o.jsx(s.DropdownMenuTrigger,{asChild:!0,disabled:e==null?void 0:e.disabled,children:o.jsx(pe,{disabled:e==null?void 0:e.disabled,icon:"MenuDown",title:n==null?void 0:n.title,tooltip:`${e==null?void 0:e.tooltip}`})}),o.jsx(s.DropdownMenuContent,{className:"richtext-max-h-96 richtext-w-32 richtext-overflow-y-auto",children:(i=e==null?void 0:e.items)==null?void 0:i.map((a,r)=>o.jsx(s.DropdownMenuCheckboxItem,{checked:n.title===a.title,onClick:a.action,children:o.jsx("div",{className:"richtext-ml-1 richtext-h-full",children:a.title})},`font-size-${r}`))})]})}const St=g.Extension.create({name:"fontSize",addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),types:["textStyle"],fontSizes:[...p.DEFAULT_FONT_SIZE_LIST],button({editor:t,extension:n,t:i}){var d;const a=s.ensureNameValueOptions(((d=n.options)==null?void 0:d.fontSizes)||p.DEFAULT_FONT_SIZE_VALUE),r=s.ensureNameValueOptions([p.DEFAULT_FONT_SIZE_VALUE])[0],c=a.map(h=>({title:h.value===r.value?i("editor.fontSize.default.tooltip"):String(h.name),isActive:()=>{const{fontSize:u}=t.getAttributes("textStyle");return h.value===r.value&&u===void 0?!0:t.isActive({fontSize:String(h.value)})||!1},action:()=>{if(h.value===r.value){t.commands.unsetFontSize();return}t.commands.setFontSize(String(h.value))},disabled:!t.can().setFontSize(String(h.value)),divider:h.value===r.value||!1,default:h.value===r.value||!1})),l=c.filter(h=>h.disabled).length===c.length;return{component:Nt,componentProps:{editor:t,tooltip:i("editor.fontSize.tooltip"),disabled:l,items:c,maxHeight:280}}}}},addGlobalAttributes(){return[{types:this.options.types,attributes:{fontSize:{default:null,parseHTML:e=>e.style.fontSize.replaceAll(/["']+/g,""),renderHTML:e=>e.fontSize?{style:`font-size: ${e.fontSize}`}:{}}}}]},addCommands(){return{setFontSize:e=>({chain:t})=>t().setMark("textStyle",{fontSize:e}).run(),unsetFontSize:()=>({chain:e})=>e().setMark("textStyle",{fontSize:null}).removeEmptyTextStyle().run()}}});function Lt({fill:e}){return o.jsx("svg",{width:"18px",height:"18px",viewBox:"0 0 240 240",version:"1.1",xmlns:"http://www.w3.org/2000/svg",children:o.jsx("g",{stroke:"none",strokeWidth:1,fill:"none",fillRule:"evenodd",children:o.jsx("g",{transform:"translate(0.000000, 0.500000)",children:o.jsxs("g",{transform:"translate(39.000000, 17.353553)",children:[o.jsx("path",{d:"M11,201.146447 L167,201.146447 C173.075132,201.146447 178,206.071314 178,212.146447 C178,218.221579 173.075132,223.146447 167,223.146447 L11,223.146447 C4.92486775,223.146447 7.43989126e-16,218.221579 0,212.146447 C-7.43989126e-16,206.071314 4.92486775,201.146447 11,201.146447 Z",id:"矩形",fill:e||"#DF2A3F",fillRule:"evenodd"}),o.jsx("path",{d:"M72.3425855,16.8295583 C75.799482,7.50883712 86.1577877,2.75526801 95.4785089,6.21216449 C100.284516,7.99463061 104.096358,11.7387855 105.968745,16.4968188 L106.112518,16.8745422 L159.385152,161.694068 C161.291848,166.877345 158.635655,172.624903 153.452378,174.531599 C148.358469,176.405421 142.719567,173.872338 140.716873,168.864661 L140.614848,168.598825 L89.211,28.86 L37.3759214,168.623816 C35.4885354,173.712715 29.8981043,176.351047 24.7909589,174.617647 L24.5226307,174.522368 C19.4337312,172.634982 16.7953993,167.044551 18.5287999,161.937406 L18.6240786,161.669077 L72.3425855,16.8295583 Z",id:"路径-21",fill:"currentColor",fillRule:"nonzero"}),o.jsx("path",{d:"M121,103.146447 C126.522847,103.146447 131,107.623599 131,113.146447 C131,118.575687 126.673329,122.994378 121.279905,123.142605 L121,123.146447 L55,123.146447 C49.4771525,123.146447 45,118.669294 45,113.146447 C45,107.717207 49.3266708,103.298515 54.7200952,103.150288 L55,103.146447 L121,103.146447 Z",id:"路径-22",fill:"currentColor",fillRule:"nonzero"})]})})})})}function Et(e){const[t,n]=m.useState(void 0);function i(c){var l;(l=e.action)==null||l.call(e,c)}function a(){var c;(c=e.action)==null||c.call(e,t)}const r=m.useCallback(w.debounce(c=>{n(c)},350),[]);return o.jsxs("div",{className:"richtext-flex richtext-items-center richtext-h-[32px]",children:[o.jsx(s.ActionButton,{tooltip:e==null?void 0:e.tooltip,disabled:e==null?void 0:e.disabled,action:a,children:o.jsx("span",{className:"richtext-flex richtext-items-center richtext-justify-center richtext-text-sm",children:o.jsx(Lt,{fill:t})})}),o.jsx(s.ColorPicker,{selectedColor:t,setSelectedColor:r,onChange:i,disabled:e==null?void 0:e.disabled,colors:e==null?void 0:e.colors,defaultColor:e==null?void 0:e.defaultColor,children:o.jsx(s.Button,{variant:"ghost",size:"icon",className:"r!ichtext-h-[32px] !richtext-w-3",disabled:e==null?void 0:e.disabled,children:o.jsx(s.IconComponent,{className:"!richtext-w-3 !richtext-h-3 richtext-text-zinc-500",name:"MenuDown"})})})]})}const It=g.Color.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),button({editor:t,t:n,extension:i}){return{component:Et,componentProps:{colors:i.options.colors,defaultColor:i.options.defaultColor,action:a=>{a===void 0&&t.chain().focus().unsetColor().run(),typeof a=="string"&&t.chain().focus().setColor(a).run()},isActive:()=>{const{color:a}=t.getAttributes("textStyle");return a&&t.isActive({color:a})||!1},editor:t,disabled:!t.can().setColor(""),tooltip:n("editor.color.tooltip")}}}}}}),Mt=g.Highlight.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),multicolor:!0,button:({editor:t,t:n})=>({component:s.HighlightActionButton,componentProps:{action:i=>{typeof i=="string"&&t.chain().focus().setHighlight({color:i}).run(),i===void 0&&t.chain().focus().unsetHighlight().run()},editor:t,isActive:()=>t.isActive("highlight")||!1,disabled:!t.can().setHighlight(),shortcutKeys:["⇧","mod","H"],tooltip:n("editor.highlight.tooltip")}})}}}),Dt=g.BulletList.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),button:({editor:t,t:n})=>({component:s.ActionButton,componentProps:{action:()=>t.commands.toggleBulletList(),isActive:()=>t.isActive("bulletList")||!1,disabled:!1,shortcutKeys:["shift","mod","8"],icon:"List",tooltip:n("editor.bulletlist.tooltip")}})}}}),Rt=g.Node.create({name:"clear",addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),button:({editor:t,t:n})=>({component:s.ActionButton,componentProps:{action:()=>t.chain().focus().clearNodes().unsetAllMarks().run(),disabled:!t.can().chain().focus().clearNodes().unsetAllMarks().run(),icon:"Eraser",tooltip:n("editor.clear.tooltip")}})}}}),Pt=g.OrderedList.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),button:({editor:t,t:n})=>({component:s.ActionButton,componentProps:{action:()=>t.commands.toggleOrderedList(),isActive:()=>t.isActive("orderedList")||!1,disabled:!1,icon:"ListOrdered",shortcutKeys:["mod","shift","7"],tooltip:n("editor.orderedlist.tooltip")}})}}}),Ht=g.TaskList.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),HTMLAttributes:{class:"task-list"},taskItem:{HTMLAttributes:{class:"task-list-item"}},button:({editor:t,t:n})=>({component:s.ActionButton,componentProps:{action:()=>t.commands.toggleTaskList(),isActive:()=>t.isActive("taskList")||!1,disabled:!1,icon:"ListTodo",shortcutKeys:["shift","mod","9"],tooltip:n("editor.tasklist.tooltip")}})}},addExtensions(){return[g.TaskItem.configure(this.options.taskItem)]}}),Bt=g.Blockquote.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),HTMLAttributes:{class:"blockquote"},button:({editor:t,t:n})=>({component:s.ActionButton,componentProps:{action:()=>t.commands.toggleBlockquote(),isActive:()=>t.isActive("blockquote")||!1,disabled:!t.can().toggleBlockquote(),icon:"TextQuote",shortcutKeys:["shift","mod","B"],tooltip:n("editor.blockquote.tooltip")}})}}});function zt(e){const[t,n]=m.useState(!1);function i(a,r,c){e.action&&(e.action({link:a,text:r,openInNewTab:c}),n(!1))}return o.jsxs(s.Popover,{modal:!0,open:t,onOpenChange:n,children:[o.jsx(s.PopoverTrigger,{disabled:e==null?void 0:e.disabled,asChild:!0,children:o.jsx(s.ActionButton,{tooltip:e==null?void 0:e.tooltip,isActive:e==null?void 0:e.isActive,disabled:e==null?void 0:e.disabled,children:o.jsx(s.IconComponent,{name:e==null?void 0:e.icon})})}),o.jsx(s.PopoverContent,{hideWhenDetached:!0,className:"richtext-w-full",align:"start",side:"bottom",children:o.jsx(s.LinkEditBlock,{editor:e.editor,onSetLink:i})})]})}const Ot=g.Link.extend({inclusive:!1,parseHTML(){return[{tag:'a[href]:not([data-type="button"]):not([href *= "javascript:" i])'}]},renderHTML({HTMLAttributes:e}){return["a",g.mergeAttributes(this.options.HTMLAttributes,e,{class:"link"}),0]},addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),openOnClick:!0,button:({editor:t,t:n})=>({component:zt,componentProps:{editor:t,action:i=>{const{link:a,text:r,openInNewTab:c}=i;t.chain().extendMarkRange("link").insertContent({type:"text",text:r,marks:[{type:"link",attrs:{href:a,target:c?"_blank":""}}]}).setLink({href:a}).focus().run()},id:"linkk",isActive:()=>t.isActive("link")||!1,disabled:!t.can().setLink({href:""}),icon:"Link",tooltip:n("editor.link.tooltip")}})}},addProseMirrorPlugins(){return[new w.Plugin({props:{handleClick:(e,t)=>{const{schema:n,doc:i,tr:a}=e.state,r=g.getMarkRange(i.resolve(t),n.marks.link);if(!r)return!1;const c=i.resolve(r.from),l=i.resolve(r.to),d=a.setSelection(new w.TextSelection(c,l));e.dispatch(d)}}})]}}),Ft=g.HorizontalRule.extend({renderHTML(){return["div",g.mergeAttributes(this.options.HTMLAttributes,{"data-type":this.name}),["hr"]]},addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),button:({editor:t,t:n})=>({component:s.ActionButton,componentProps:{action:()=>t.commands.setHorizontalRule(),disabled:!t.can().setHorizontalRule(),icon:"Minus",shortcutKeys:["mod","alt","S"],tooltip:n("editor.horizontalrule.tooltip")}})}},addKeyboardShortcuts(){return{"Mod-Alt-s":()=>this.editor.commands.setHorizontalRule()}}});function Ut(e){var h;const{icon:t=void 0,tooltip:n=void 0,customClass:i="",tooltipOptions:a={},action:r=void 0,isActive:c=void 0,children:l}=e,d=s.icons[t];return o.jsxs(s.Tooltip,{children:[o.jsx(s.TooltipTrigger,{asChild:!0,children:o.jsxs(s.Toggle,{size:"sm",className:`richtext-w-[32px] richtext-h-[32px] ${i}`,disabled:c==null?void 0:c(),onClick:r,children:[d&&o.jsx(d,{className:"richtext-w-4 richtext-h-4"}),l&&o.jsx(o.Fragment,{children:l})]})}),n&&o.jsx(s.TooltipContent,{...a,children:o.jsxs("div",{className:"richtext-flex richtext-flex-col richtext-items-center richtext-text-center richtext-max-w-24",children:[o.jsx("div",{children:n}),!!((h=e==null?void 0:e.shortcutKeys)!=null&&h.length)&&o.jsx("span",{children:s.getShortcutKeys(e==null?void 0:e.shortcutKeys)})]})})]})}const qt=["undo","redo"],$t=g.History.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),depth:100,newGroupDelay:500,button:({editor:t,t:n})=>qt.map(i=>({component:Ut,componentProps:{action:()=>{i==="undo"&&t.chain().focus().undo().run(),i==="redo"&&t.chain().focus().redo().run()},shortcutKeys:i==="undo"?["mod","Z"]:["shift","mod","Z"],disabled:i==="undo"?!t.can().undo():!t.can().redo(),isActive:()=>i==="undo"?!t.can().undo():!t.can().redo(),icon:i==="undo"?"Undo2":"Redo2",tooltip:n(`editor.${i}.tooltip`)}}))}}}),Vt=g.Document.extend({content:"(block|columns)+"}),Kt=g.Extension.create({name:"columnActionButton",addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),button:({editor:t,t:n})=>({component:s.ActionButton,componentProps:{action:()=>{t.chain().focus().insertColumns({cols:2}).run()},icon:"Columns",tooltip:n("editor.columns.tooltip")}})}}}),Gt=g.Extension.create({name:"selection",addProseMirrorPlugins(){const{editor:e}=this;return[new w.Plugin({key:new w.PluginKey("selection"),props:{decorations(t){return t.selection.empty||e.isFocused===!0?null:w.DecorationSet.create(t.doc,[w.Decoration.inline(t.selection.from,t.selection.to,{class:"selection"})])}}})]}});function Wt(e){const{t}=p.useLocale(),n=m.useMemo(()=>[{name:"paragraph",label:t("editor.paragraph.tooltip"),iconName:"Heading1",isActive:()=>e.editor.isActive("paragraph")&&!e.editor.isActive("orderedList")&&!e.editor.isActive("bulletList")&&!e.editor.isActive("taskList"),action:()=>e.editor.chain().focus().clearNodes().run()},{name:"heading1",label:t("editor.heading.h1.tooltip"),isActive:()=>e.editor.isActive("heading",{level:1}),iconName:"Heading1",action:()=>e.editor.chain().focus().clearNodes().toggleHeading({level:1}).run()},{name:"heading2",label:t("editor.heading.h2.tooltip"),isActive:()=>e.editor.isActive("heading",{level:2}),iconName:"Heading2",action:()=>e.editor.chain().focus().clearNodes().toggleHeading({level:2}).run()},{name:"heading3",label:t("editor.heading.h3.tooltip"),isActive:()=>e.editor.isActive("heading",{level:3}),iconName:"Heading3",action:()=>e.editor.chain().focus().clearNodes().toggleHeading({level:3}).run()},{name:"bulletList",label:t("editor.bulletlist.tooltip"),isActive:()=>e.editor.isActive("bulletList"),iconName:"List",action:()=>e.editor.chain().focus().clearNodes().toggleBulletList().run()},{name:"numberedList",label:t("editor.orderedlist.tooltip"),isActive:()=>e.editor.isActive("orderedList"),iconName:"ListOrdered",action:()=>e.editor.chain().focus().clearNodes().toggleOrderedList().run()},{name:"taskList",label:t("editor.tasklist.tooltip"),isActive:()=>e.editor.isActive("taskList"),iconName:"ListTodo",action:()=>e.editor.chain().focus().clearNodes().toggleTaskList().run()},{name:"blockquote",label:t("editor.blockquote.tooltip"),isActive:()=>e.editor.isActive("blockquote"),iconName:"TextQuote",action:()=>e.editor.chain().focus().clearNodes().toggleBlockquote().run()},{name:"codeBlock",label:t("editor.codeblock.tooltip"),isActive:()=>e.editor.isActive("codeBlock"),iconName:"Code2",action:()=>e.editor.chain().focus().clearNodes().toggleCodeBlock().run()}],[e.editor,t]),i=m.useMemo(()=>n.findLast(a=>a.isActive())??{label:"Empty"},[n]);return o.jsxs(s.DropdownMenu,{children:[o.jsx(s.DropdownMenuTrigger,{asChild:!0,children:o.jsxs(s.Button,{className:"richtext-flex richtext-h-[32px] richtext-gap-1 richtext-px-1.5",variant:"ghost",children:[o.jsxs("span",{className:"richtext-whitespace-nowrap richtext-text-sm richtext-font-normal",children:[" ",i==null?void 0:i.label]}),o.jsx(D.ChevronDown,{className:"richtext-size-4"})]})}),o.jsx(s.DropdownMenuContent,{align:"start",className:"richtext-w-full richtext-p-1",hideWhenDetached:!0,sideOffset:5,children:n.map((a,r)=>{var l;const c=s.icons[a.iconName];return o.jsx(s.DropdownMenuCheckboxItem,{checked:((l=a.isActive)==null?void 0:l.call(a))||!1,className:"richtext-cursor-pointer",onClick:()=>a.action(),children:o.jsxs("div",{className:"richtext-flex richtext-items-center richtext-gap-2 richtext-px-2",children:[o.jsx(c,{className:"richtext-h3 richtext-w-3"}),o.jsxs("span",{children:[" ",a.label]})]})},`text-bubble-${r}`)})})]})}const Zt=g.Extension.create({name:"text-bubble",addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),toolbar:!1,button:()=>({component:Wt,componentProps:{}})}}});function ke({types:e,node:t}){return Array.isArray(e)&&e.includes(t.type)||t.type===e}const Xt=g.Extension.create({name:"trailingNode",addOptions(){return{node:"paragraph",notAfter:["paragraph"]}},addProseMirrorPlugins(){const e=new w.PluginKey(this.name),t=Object.entries(this.editor.schema.nodes).map(([,n])=>n).filter(n=>this.options.notAfter.includes(n.name));return[new w.Plugin({key:e,appendTransaction:(n,i,a)=>{const{doc:r,tr:c,schema:l}=a,d=e.getState(a),h=r.content.size,u=l.nodes[this.options.node];if(d)return c.insert(h,u.create())},state:{init:(n,i)=>{const a=i.tr.doc.lastChild;return!ke({node:a,types:t})},apply:(n,i)=>{if(!n.docChanged)return i;const a=n.doc.lastChild;return!ke({node:a,types:t})}}})]}}),Yt=g.Extension.create({name:"base-kit",addExtensions(){const e=[];return this.options.document!==!1&&e.push(Vt.configure()),this.options.placeholder!==!1&&e.push(g.Placeholder.configure({placeholder:({node:t,pos:n,editor:i})=>{var a,r,c,l,d;return((a=t==null?void 0:t.type)==null?void 0:a.name)==="columns"||((r=t==null?void 0:t.content)==null?void 0:r.size)!==0?"":((c=t==null?void 0:t.type)==null?void 0:c.name)==="heading"?`${p.localeActions.t(`editor.heading.h${t.attrs.level}.tooltip`)}`:((l=t==null?void 0:t.type)==null?void 0:l.name)==="codeBlock"||((d=t==null?void 0:t.type)==null?void 0:d.name)==="table"?"":i.extensionManager.extensions.some(h=>h.name==="slashCommand")?p.localeActions.t("editor.slash"):p.localeActions.t("editor.content")},...this.options.placeholder})),this.options.focus!==!1&&e.push(g.FocusClasses.configure({className:"focus",...this.options.focus})),this.options.text!==!1&&e.push(g.Text.configure()),this.options.textBubble!==!1&&e.push(Zt.configure()),this.options.gapcursor!==!1&&e.push(g.Gapcursor.configure()),this.options.dropcursor!==!1&&e.push(g.Dropcursor.configure({...this.options.dropcursor,width:2,class:"ProseMirror-dropcursor border-black"})),this.options.characterCount!==!1&&e.push(g.CharacterCount.configure(this.options.characterCount)),this.options.paragraph!==!1&&e.push(g.Paragraph.configure(this.options.paragraph)),this.options.hardBreak!==!1&&e.push(g.HardBreak.configure(this.options.hardBreak)),this.options.listItem!==!1&&e.push(g.ListItem.configure(this.options.listItem)),this.options.textStyle!==!1&&e.push(g.TextStyle.configure(this.options.textStyle)),this.options.trailingNode!==!1&&e.push(Xt.configure(this.options.trailingNode)),this.options.selection!==!1&&e.push(Gt),this.options.multiColumn!==!1&&e.push(s.Column,s.MultiColumn),e}}),Jt=g.Extension.create({name:"subAndSuperScript",addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),button:({editor:t,extension:n,t:i})=>{const a=n.options.subscript,r=n.options.superscript,c={component:s.ActionButton,componentProps:{action:()=>t.commands.toggleSubscript(),isActive:()=>t.isActive("subscript")||!1,disabled:!t.can().toggleSubscript(),icon:"Subscript",tooltip:i("editor.subscript.tooltip")}},l={component:s.ActionButton,componentProps:{action:()=>t.commands.toggleSuperscript(),isActive:()=>t.isActive("superscript")||!1,disabled:!t.can().toggleSuperscript(),icon:"Superscript",tooltip:i("editor.superscript.tooltip")}},d=[];return a!==!1&&d.push(c),r!==!1&&d.push(l),d}}},addExtensions(){const e=[];return this.options.subscript!==!1&&e.push(g.Subscript.configure(this.options.subscript)),this.options.superscript!==!1&&e.push(g.Superscript.configure(this.options.superscript)),e}});function Qt(e){var n;const t=m.useMemo(()=>{var r;const i=(r=e==null?void 0:e.items)==null?void 0:r.find(c=>c.isActive());return i&&!i.default?{...i,icon:i!=null&&i.icon?i==null?void 0:i.icon:e==null?void 0:e.icon}:{title:e.tooltip,icon:e.icon,isActive:()=>!1}},[e]);return o.jsxs(s.DropdownMenu,{children:[o.jsx(s.DropdownMenuTrigger,{asChild:!0,disabled:e==null?void 0:e.disabled,children:o.jsx(s.ActionButton,{customClass:"!richtext-w-12 richtext-h-12",disabled:e==null?void 0:e.disabled,icon:e==null?void 0:e.icon,tooltip:e==null?void 0:e.tooltip,children:o.jsx(s.MenuDown,{className:"richtext-size-3 richtext-text-gray-500"})})}),o.jsx(s.DropdownMenuContent,{className:"w-full",children:(n=e==null?void 0:e.items)==null?void 0:n.map((i,a)=>o.jsxs(s.DropdownMenuCheckboxItem,{checked:t.title===i.title,className:"richtext-flex richtext-items-center richtext-gap-3",onClick:i.action,children:[o.jsx(s.IconComponent,{name:i==null?void 0:i.icon}),o.jsx("span",{className:"richtext-ml-1",children:i.title}),!!(i!=null&&i.shortcutKeys)&&o.jsx("span",{className:"richtext-ml-auto richtext-text-xs richtext-tracking-widest richtext-opacity-60",children:s.getShortcutKeys(i.shortcutKeys)})]},`more-mark-${a}`))})]})}const en=g.Extension.create({name:"moreMark",addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),button({editor:t,extension:n,t:i}){const a=n.options.subscript,r=n.options.superscript,c={action:()=>t.commands.toggleSubscript(),isActive:()=>t.isActive("subscript")||!1,disabled:!t.can().toggleSubscript(),icon:"Subscript",title:i("editor.subscript.tooltip"),shortcutKeys:["mod","."]},l={action:()=>t.commands.toggleSuperscript(),isActive:()=>t.isActive("superscript")||!1,disabled:!t.can().toggleSuperscript(),icon:"Superscript",title:i("editor.superscript.tooltip"),shortcutKeys:["mod",","]},d=[];return a!==!1&&d.push(c),r!==!1&&d.push(l),{component:Qt,componentProps:{icon:"Type",tooltip:i("editor.moremark"),disabled:!t.isEditable,items:d}}}}},addExtensions(){const e=[];return this.options.subscript!==!1&&e.push(g.Subscript.configure(this.options.subscript)),this.options.superscript!==!1&&e.push(g.Superscript.configure(this.options.superscript)),e}}),tn=g.Extension.create({name:"indent",addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),types:["paragraph","heading","blockquote"],minIndent:s.IndentProps.min,maxIndent:s.IndentProps.max,button({editor:t,t:n}){return[{component:s.ActionButton,componentProps:{action:()=>{t.commands.indent()},shortcutKeys:["Tab"],icon:"IndentIncrease",tooltip:n("editor.indent.tooltip")}},{component:s.ActionButton,componentProps:{action:()=>{t.commands.outdent()},shortcutKeys:["Shift","Tab"],icon:"IndentDecrease",tooltip:n("editor.outdent.tooltip")}}]}}},addGlobalAttributes(){return[{types:this.options.types,attributes:{indent:{default:0,parseHTML:e=>{const t=e.dataset.indent;return(t?Number.parseInt(t,10):0)||0},renderHTML:e=>e.indent?{"data-indent":e.indent}:{}}}}]},addCommands(){return{indent:()=>s.createIndentCommand({delta:s.IndentProps.more,types:this.options.types}),outdent:()=>s.createIndentCommand({delta:s.IndentProps.less,types:this.options.types})}},addKeyboardShortcuts(){return{Tab:()=>this.editor.commands.indent(),"Shift-Tab":()=>this.editor.commands.outdent()}}});function nn(e){return Number.parseFloat(e.replace("%",""))/100}function on(e){const{t}=p.useLocale(),[n,i]=m.useState("default");function a(c){c==="default"?e.editor.commands.unsetLineHeight():e.editor.commands.setLineHeight(c),i(c)}const r=m.useMemo(()=>{const d=e.editor.extensionManager.extensions.find(h=>h.name==="lineHeight").options.lineHeights.map(h=>({label:nn(h),value:h}));return d.unshift({label:t("editor.default"),value:"default"}),d},[e]);return o.jsxs(s.DropdownMenu,{children:[o.jsx(s.DropdownMenuTrigger,{asChild:!0,disabled:e==null?void 0:e.disabled,children:o.jsx(s.ActionButton,{customClass:"!richtext-w-12 richtext-h-12",disabled:e==null?void 0:e.disabled,icon:"LineHeight",tooltip:e==null?void 0:e.tooltip,children:o.jsx(s.IconComponent,{className:"richtext-ml-1 richtext-size-3 richtext-text-zinc-500",name:"MenuDown"})})}),o.jsx(s.DropdownMenuContent,{className:"richtext-min-w-24",children:r==null?void 0:r.map((c,l)=>o.jsx(s.DropdownMenuCheckboxItem,{checked:c.value===n,onClick:()=>a(c.value),children:c.label},`lineHeight-${l}`))})]})}const an=["paragraph","heading","list_item","todo_item"];function rn(e,t){const{selection:n,doc:i}=e;if(!n||!i||!(n instanceof w.TextSelection||n instanceof w.AllSelection))return e;const{from:a,to:r}=n,c=[],l=t&&t!==p.DEFAULT_LINE_HEIGHT?t:null;if(i.nodesBetween(a,r,(d,h)=>{const u=d.type;return an.includes(u.name)?((d.attrs.lineHeight||null)!==l&&c.push({node:d,pos:h,nodeType:u}),u.name!=="list_item"&&u.name!=="todo_item"):!0}),c.length===0)return e;for(const d of c){const{node:h,pos:u,nodeType:x}=d;let{attrs:_}=h;_={..._,lineHeight:l},e=e.setNodeMarkup(u,x,_,h.marks)}return e}function sn(e){return({state:t,dispatch:n})=>{const{selection:i}=t;let{tr:a}=t;return a=a.setSelection(i),a=rn(a,e),a.docChanged?(n&&n(a),!0):!1}}const cn=g.Extension.create({name:"lineHeight",addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),types:["paragraph","heading","list_item","todo_item"],lineHeights:p.DEFAULT_LINE_HEIGHT_LIST,defaultHeight:p.DEFAULT_LINE_HEIGHT,button({editor:t,t:n}){return{component:on,componentProps:{editor:t,tooltip:n("editor.lineheight.tooltip")}}}}},addGlobalAttributes(){return[{types:this.options.types,attributes:{lineHeight:{default:null,parseHTML:e=>e.style.lineHeight||this.options.defaultHeight,renderHTML:e=>e.lineHeight===this.options.defaultHeight||!e.lineHeight?{}:{style:`line-height: ${e.lineHeight}`}}}}]},addCommands(){return{setLineHeight:e=>sn(e),unsetLineHeight:()=>({commands:e})=>this.options.types.every(t=>e.resetAttributes(t,"lineHeight"))}}}),ze=w.d(!1);function ln(){return w.b(ze)}const X={setOpen:e=>{ze(e)}},Oe=w.d(!1);function dn(){return w.b(Oe)}const te={setOpen:e=>{Oe(e)}};function un(e){const t=[{name:"format",title:p.localeActions.t("editor.slash.format"),commands:[]},{name:"insert",title:p.localeActions.t("editor.slash.insert"),commands:[]}];return e.forEach(n=>{n.name.toLowerCase()==="heading"&&n.options.levels.forEach(i=>{t[0].commands.push({name:`heading${i}`,label:p.localeActions.t(`editor.heading.h${i}.tooltip`),aliases:[`h${i}`,"bt",`bt${i}`],iconName:`Heading${i}`,action:({editor:a,range:r})=>{a.chain().focus().deleteRange(r).setHeading({level:i}).run()}})}),n.name.toLowerCase()==="bulletlist"&&t[0].commands.push({name:"bulletList",label:p.localeActions.t("editor.bulletlist.tooltip"),aliases:["ul","yxlb"],iconName:"List",action:({editor:i,range:a})=>{i.chain().focus().deleteRange(a).toggleBulletList().run()}}),n.name.toLowerCase()==="orderedlist"&&t[0].commands.push({name:"numberedList",label:p.localeActions.t("editor.orderedlist.tooltip"),aliases:["ol","yxlb"],iconName:"ListOrdered",action:({editor:i,range:a})=>{i.chain().focus().deleteRange(a).toggleOrderedList().run()}}),n.name.toLowerCase()==="tasklist"&&t[0].commands.push({name:"taskList",label:p.localeActions.t("editor.tasklist.tooltip"),iconName:"ListTodo",description:"Task list with todo items",aliases:["todo"],action:({editor:i,range:a})=>{i.chain().focus().deleteRange(a).toggleTaskList().run()}}),n.name.toLowerCase()==="blockquote"&&t[0].commands.push({name:"blockquote",label:p.localeActions.t("editor.blockquote.tooltip"),description:"插入引入格式",aliases:["yr"],iconName:"TextQuote",action:({editor:i,range:a})=>{i.chain().focus().deleteRange(a).setBlockquote().run()}}),n.name.toLowerCase()==="codeblock"&&t[0].commands.push({name:"codeBlock",label:p.localeActions.t("editor.codeblock.tooltip"),iconName:"Code2",description:"Code block with syntax highlighting",shouldBeHidden:i=>i.isActive("columns"),action:({editor:i,range:a})=>{i.chain().focus().deleteRange(a).setCodeBlock().run()}}),n.name.toLowerCase()==="image"&&t[1].commands.push({name:"image",label:p.localeActions.t("editor.image.tooltip"),iconName:"ImageUp",description:"Insert a image",aliases:["image","tp","tupian"],shouldBeHidden:i=>i.isActive("columns"),action:({editor:i,range:a})=>{i.chain().focus().deleteRange(a).run(),X.setOpen(!0)}}),n.name.toLowerCase()==="video"&&t[1].commands.push({name:"video",label:p.localeActions.t("editor.video.tooltip"),iconName:"Video",description:"Insert a video",aliases:["video","sp","shipin"],shouldBeHidden:i=>i.isActive("columns"),action:({editor:i,range:a})=>{i.chain().focus().deleteRange(a).run(),te.setOpen(!0)}}),n.name.toLowerCase()==="table"&&t[1].commands.push({name:"table",label:p.localeActions.t("editor.table.tooltip"),iconName:"Table",description:"Insert a table",aliases:["table","bg","biaoge","biao"],shouldBeHidden:i=>i.isActive("columns"),action:({editor:i,range:a})=>{i.chain().focus().deleteRange(a).insertTable({rows:3,cols:3,withHeaderRow:!1}).run()}}),n.name.toLowerCase()==="horizontalrule"&&t[1].commands.push({name:"horizontalRule",label:p.localeActions.t("editor.horizontalrule.tooltip"),iconName:"Minus",description:"Insert a horizontal divider",aliases:["hr","fgx","fg"],action:({editor:i,range:a})=>{i.chain().focus().deleteRange(a).setHorizontalRule().run()}}),n.name.toLowerCase()==="columns"&&t[1].commands.push({name:"columns",label:p.localeActions.t("editor.columns.tooltip"),iconName:"Columns2",description:"Add two column content",action:({editor:i})=>{i.chain().focus().insertColumns({cols:2}).run()}})}),t}function hn(e,t){var T,E;const[n,i]=m.useState(0),[a,r]=m.useState(0),c=m.useRef(null),{t:l}=p.useLocale(),d=m.useRef([]);m.useImperativeHandle(t,()=>({onKeyDown:h})),m.useEffect(()=>{if(!c.current)return;const k=a*1e3+n,b=d.current[k];b&&b.scrollIntoView({behavior:"smooth",block:"nearest"})},[n,a]);function h({event:k}){return k.key==="ArrowUp"?(u(),!0):k.key==="ArrowDown"?(x(),!0):k.key==="Enter"?(_(),!0):!1}function u(){var j;if(e.items.length===0)return!1;let k=n-1,b=a;k<0&&(b=a-1,k=((j=e.items[b])==null?void 0:j.commands.length)-1||0),b<0&&(b=e.items.length-1,k=e.items[b].commands.length-1),i(k),r(b)}function x(){if(e.items.length===0)return!1;const k=e.items[a].commands;let b=n+1,j=a;k.length-1<b&&(b=0,j=a+1),e.items.length-1<j&&(j=0),i(b),r(j)}function _(){if(e.items.length===0||a===-1||n===-1)return!1;f(a,n)}function f(k,b){const j=e.items[k].commands[b];e.command(j)}function y(k,b){f(k,b)}function v(k,b,j){d.current[k*1e3+b]=j}return o.jsx("div",{className:"richtext-mb-8 richtext-max-h-[min(80vh,24rem)] richtext-flex-wrap richtext-overflow-auto richtext-rounded-lg !richtext-border !richtext-border-neutral-200 !richtext-bg-white richtext-p-1 !richtext-text-black richtext-shadow-sm dark:!richtext-border-neutral-800 dark:!richtext-bg-black",ref:c,children:(T=e==null?void 0:e.items)!=null&&T.length?o.jsx("div",{className:"richtext-grid richtext-min-w-48 richtext-grid-cols-1 richtext-gap-0.5",children:(E=e==null?void 0:e.items)==null?void 0:E.map((k,b)=>o.jsxs(m.Fragment,{children:[o.jsx("div",{className:"richtext-col-[1/-1] richtext-mx-2 richtext-mt-2 richtext-select-none richtext-text-[0.65rem] richtext-font-semibold richtext-uppercase richtext-tracking-wider !richtext-text-neutral-500 first:richtext-mt-0.5",children:k.title}),k.commands.map((j,A)=>o.jsxs("button",{onClick:()=>y(b,A),ref:N=>v(b,A,N),className:s.cn("richtext-flex richtext-items-center richtext-gap-3 richtext-px-2 richtext-py-1.5 richtext-text-sm !richtext-text-neutral-800 dark:!richtext-text-neutral-200 richtext-text-left richtext-w-full richtext-rounded-sm richtext-outline-none richtext-transition-colors !richtext-bg-transparent hover:!richtext-bg-accent ",{"slash-command-active":a===b&&n===A}),children:[j.iconUrl&&o.jsx("img",{alt:"",className:"richtext-size-6",src:j.iconUrl}),j.iconName&&o.jsx(s.IconComponent,{className:"!richtext-mr-1 !richtext-text-lg",name:j.iconName}),j.label]},`command-${A}`))]},`slash-${k.title}`))}):o.jsx("div",{className:"richtext-p-3",children:o.jsx("span",{className:"richtext-text-xs richtext-text-gray-800 dark:richtext-text-gray-100",children:l("editor.slash.empty")})})})}const mn=m.forwardRef(hn),K="slashCommand";let S;const fn=g.Extension.create({name:K,priority:200,onCreate(){S=xe("body",{interactive:!0,trigger:"manual",placement:"bottom-start",theme:"slash-command",maxWidth:"16rem",offset:[16,8],popperOptions:{strategy:"fixed",modifiers:[{name:"flip",enabled:!1}]}})},addProseMirrorPlugins(){return[g.Suggestion({editor:this.editor,char:"/",allowSpaces:!0,startOfLine:!0,pluginKey:new w.PluginKey(K),allow:({state:e,range:t})=>{var h,u,x;const n=e.doc.resolve(t.from),i=n.depth===1,a=n.parent.type.name==="paragraph",r=((h=n.parent.textContent)==null?void 0:h.charAt(0))==="/",c=this.editor.isActive("column"),l=(x=n.parent.textContent)==null?void 0:x.slice(Math.max(0,(u=n.parent.textContent)==null?void 0:u.indexOf("/"))),d=!(l!=null&&l.endsWith(" "));return(i&&a&&r||c&&a&&r)&&d},command:({editor:e,range:t,props:n})=>{const{view:i}=e;n.action({editor:e,range:t}),i.focus()},items:({query:e,editor:t})=>un(t.extensionManager.extensions).map(c=>({...c,commands:c.commands.filter(l=>{const d=l.label.toLowerCase().trim(),h=e.toLowerCase().trim();if(l.aliases){const u=l.aliases.map(f=>f.toLowerCase().trim()),x=d.match(h),_=u.some(f=>f.match(h));return x||_}return d.match(h)}).filter(l=>l.shouldBeHidden?!l.shouldBeHidden(this.editor):!0)})).filter(c=>c.commands.length>0).map(c=>({...c,commands:c.commands.map(l=>({...l,isEnabled:!0}))})),render:()=>{let e,t=null;return{onStart:n=>{var r;e=new g.ReactRenderer(mn,{props:n,editor:n.editor});const{view:i}=n.editor,a=()=>{if(!n.clientRect)return n.editor.storage[K].rect;const c=n.clientRect();if(!c)return n.editor.storage[K].rect;let l=c.y;if(c.top+e.element.offsetHeight+40>window.innerHeight){const d=c.top+e.element.offsetHeight-window.innerHeight+40;l=c.y-d}return new DOMRect(c.x,l,c.width,c.height)};t=()=>{S==null||S[0].setProps({getReferenceClientRect:a})},(r=i.dom.parentElement)==null||r.addEventListener("scroll",t),S==null||S[0].setProps({getReferenceClientRect:a,appendTo:()=>document.body,content:e.element}),S==null||S[0].show()},onUpdate(n){var c;e.updateProps(n);const{view:i}=n.editor,a=()=>{if(!n.clientRect)return n.editor.storage[K].rect;const l=n.clientRect();return l?new DOMRect(l.x,l.y,l.width,l.height):n.editor.storage[K].rect},r=()=>{S==null||S[0].setProps({getReferenceClientRect:a})};(c=i.dom.parentElement)==null||c.addEventListener("scroll",r),n.editor.storage[K].rect=n.clientRect?a():{width:0,height:0,left:0,top:0,right:0,bottom:0},S==null||S[0].setProps({getReferenceClientRect:a})},onKeyDown(n){var i;return n.event.key==="Escape"?(S==null||S[0].hide(),!0):(S!=null&&S[0].state.isShown||S==null||S[0].show(),(i=e.ref)==null?void 0:i.onKeyDown(n))},onExit(n){var i;if(S==null||S[0].hide(),t){const{view:a}=n.editor;(i=a.dom.parentElement)==null||i.removeEventListener("scroll",t)}e.destroy()}}}})]},addStorage(){return{rect:{width:0,height:0,left:0,top:0,right:0,bottom:0}}}});function gn({editor:e,imageInline:t,onClose:n}){const{t:i}=p.useLocale(),[a,r]=m.useState(!1),c=m.useRef(null),[l,d]=m.useState(),[h,u]=m.useState(""),x=m.useRef(null),[_,f]=m.useState({src:"",file:null});function y(b){if(c.current&&b.width&&b.height){const j=v(c.current,b);u(j)}}function v(b,j){const A=document.createElement("canvas"),N=b.naturalWidth/b.width,L=b.naturalHeight/b.height;A.width=j.width*N,A.height=j.height*L;const B=A.getContext("2d");return B&&(B.imageSmoothingEnabled=!1,B.drawImage(b,j.x*N,j.y*L,j.width*N,j.height*L,0,0,j.width*N,j.height*L)),A.toDataURL("image/png",1)}async function T(){var b,j;try{const A=s.dataURLtoFile(h,((b=_==null?void 0:_.file)==null?void 0:b.name)||"image.png"),N=(j=e.extensionManager.extensions.find(B=>B.name==="image"))==null?void 0:j.options;let L="";N.upload?L=await N.upload(A):L=URL.createObjectURL(A),e.chain().focus().setImageInline({src:L,inline:t}).run(),r(!1),f({src:"",file:null}),n()}catch(A){console.log("Error cropping image",A)}}function E(b){var j;b.preventDefault(),(j=x.current)==null||j.click()}const k=async b=>{var L;const j=(L=b==null?void 0:b.target)==null?void 0:L.files;if(!e||e.isDestroyed||j.length===0)return;const A=j[0],N=await s.readImageAsBase64(A);r(!0),f({src:N.src,file:A})};return o.jsxs(o.Fragment,{children:[o.jsx(s.Button,{className:"richtext-mt-1 richtext-w-full",onClick:E,size:"sm",children:i("editor.image.dialog.tab.uploadCrop")}),o.jsxs(s.Dialog,{open:a,children:[o.jsx(s.DialogTrigger,{}),o.jsxs(s.DialogContent,{children:[o.jsx(s.DialogTitle,{children:i("editor.image.dialog.tab.uploadCrop")}),o.jsx("div",{children:_.src&&o.jsx(Xe,{className:"richtext-w-full",crop:l,onChange:b=>d(b),onComplete:b=>y(b),children:o.jsx("img",{alt:"Crop me",ref:c,src:_.src})})}),o.jsxs(s.DialogFooter,{children:[o.jsxs(s.Button,{onClick:()=>{r(!1),f({src:"",file:null})},children:[i("editor.imageUpload.cancel"),o.jsx(s.IconComponent,{className:"richtext-ml-[4px]",name:"Trash2"})]}),o.jsxs(s.Button,{className:"richtext-w-fit",onClick:T,children:[i("editor.imageUpload.crop"),o.jsx(s.IconComponent,{className:"richtext-ml-[4px]",name:"Crop"})]})]})]})]}),o.jsx("input",{accept:"image/*",multiple:!0,onChange:k,ref:x,type:"file",style:{display:"none"}})]})}function _n(e){var _;const{t}=p.useLocale(),n=ln(),[i,a]=m.useState(""),r=m.useRef(null),[c,l]=m.useState(((_=e.editor.extensionManager.extensions.find(f=>f.name===ge.name))==null?void 0:_.options.defaultInline)||!1),d=m.useMemo(()=>{var y;return(y=e.editor.extensionManager.extensions.find(v=>v.name===ge.name))==null?void 0:y.options},[e.editor]);async function h(f){var E;const y=(E=f==null?void 0:f.target)==null?void 0:E.files;if(!e.editor||e.editor.isDestroyed||y.length===0)return;const v=y[0];let T="";d.upload?T=await d.upload(v):T=URL.createObjectURL(v),e.editor.chain().focus().setImageInline({src:T,inline:c}).run(),X.setOpen(!1),l(!1)}function u(f){f.preventDefault(),f.stopPropagation(),e.editor.chain().focus().setImageInline({src:i,inline:c}).run(),X.setOpen(!1),l(!1),a("")}function x(f){var y;f.preventDefault(),(y=r.current)==null||y.click()}return o.jsxs(s.Dialog,{onOpenChange:X.setOpen,open:n,children:[o.jsx(s.DialogTrigger,{asChild:!0,children:o.jsx(s.ActionButton,{action:()=>X.setOpen(!0),icon:e.icon,tooltip:e.tooltip})}),o.jsxs(s.DialogContent,{children:[o.jsx(s.DialogTitle,{children:t("editor.image.dialog.title")}),o.jsxs(He,{activationMode:"manual",defaultValue:d.resourceImage==="both"||d.resourceImage==="upload"?"upload":"link",children:[o.jsxs(we,{className:"richtext-grid richtext-w-full richtext-grid-cols-2",children:[d.resourceImage==="both"||d.resourceImage==="upload"?o.jsx(ie,{value:"upload",children:t("editor.image.dialog.tab.upload")}):o.jsx(o.Fragment,{}),d.resourceImage==="both"||d.resourceImage==="link"?o.jsx(ie,{value:"link",children:t("editor.image.dialog.tab.url")}):o.jsx(o.Fragment,{})]}),o.jsxs("div",{className:"richtext-my-[10px] richtext-flex richtext-items-center richtext-gap-[4px]",children:[o.jsx(Be,{checked:c,onCheckedChange:f=>{l(f)}}),o.jsx(s.Label,{children:t("editor.link.dialog.inline")})]}),o.jsxs(oe,{value:"upload",children:[o.jsxs("div",{className:"richtext-flex richtext-items-center richtext-gap-[10px]",children:[o.jsx(s.Button,{className:"richtext-mt-1 richtext-w-full",onClick:x,size:"sm",children:t("editor.image.dialog.tab.upload")}),o.jsx(gn,{editor:e.editor,imageInline:c,onClose:()=>X.setOpen(!1)})]}),o.jsx("input",{accept:"image/*",multiple:!0,onChange:h,ref:r,type:"file",style:{display:"none"}})]}),o.jsx(oe,{value:"link",children:o.jsx("form",{onSubmit:u,children:o.jsxs("div",{className:"richtext-flex richtext-items-center richtext-gap-2",children:[o.jsx(s.Input,{autoFocus:!0,onChange:f=>a(f.target.value),placeholder:t("editor.image.dialog.placeholder"),required:!0,type:"url",value:i}),o.jsx(s.Button,{type:"submit",children:t("editor.image.dialog.button.apply")})]})})})]})]})]})}const ae={TOP_LEFT:"tl",TOP_RIGHT:"tr",BOTTOM_LEFT:"bl",BOTTOM_RIGHT:"br"};function xn(e){var L,B;const[t,n]=m.useState({width:p.IMAGE_MAX_SIZE,height:p.IMAGE_MAX_SIZE}),[i,a]=m.useState({width:0,height:0}),[r]=m.useState([ae.TOP_LEFT,ae.TOP_RIGHT,ae.BOTTOM_LEFT,ae.BOTTOM_RIGHT]),[c,l]=m.useState(!1),[d,h]=m.useState({x:0,y:0,w:0,h:0,dir:""}),{align:u,inline:x}=(L=e==null?void 0:e.node)==null?void 0:L.attrs,_=m.useMemo(()=>{var ye;const{src:C,alt:R,width:P,height:$,flipX:V,flipY:I}=(ye=e==null?void 0:e.node)==null?void 0:ye.attrs,z=w.isNumber(P)?`${P}px`:P,O=w.isNumber($)?`${$}px`:$,le=[];V&&le.push("rotateX(180deg)"),I&&le.push("rotateY(180deg)");const Ke=le.join(" ");return{src:C||void 0,alt:R||void 0,style:{width:z||void 0,height:O||void 0,transform:Ke||"none"}}},[(B=e==null?void 0:e.node)==null?void 0:B.attrs]),f=m.useMemo(()=>{const{style:{width:C}}=_;return{width:C==="100%"?C:void 0}},[_]);function y(C){a({width:C.target.width,height:C.target.height})}function v(){const{editor:C,getPos:R}=e;C.commands.setNodeSelection(R())}const T=m.useCallback(w.throttle(()=>{const{editor:C}=e,{width:R}=getComputedStyle(C.view.dom);n(P=>({...P,width:Number.parseInt(R,10)}))},p.IMAGE_THROTTLE_WAIT_TIME),[e==null?void 0:e.editor]);function E(C,R){C.preventDefault(),C.stopPropagation();const P=i.width,$=i.height,V=P/$;let I=Number(e.node.attrs.width),z=Number(e.node.attrs.height);const O=t.width;I&&!z?(I=I>O?O:I,z=Math.round(I/V)):z&&!I?(I=Math.round(z*V),I=I>O?O:I):!I&&!z?(I=P>O?O:P,z=Math.round(I/V)):I=I>O?O:I,l(!0),h({x:C.clientX,y:C.clientY,w:I,h:z,dir:R})}const k=m.useCallback(w.throttle(C=>{if(C.preventDefault(),C.stopPropagation(),!c)return;const{x:R,w:P,dir:$}=d,V=(C.clientX-R)*(/l/.test($)?-1:1),I=w.clamp(P+V,p.IMAGE_MIN_SIZE,t.width);e.updateAttributes({width:I,height:null})},p.IMAGE_THROTTLE_WAIT_TIME),[c,d,t,e.updateAttributes]),b=m.useCallback(C=>{C.preventDefault(),C.stopPropagation(),c&&(h({x:0,y:0,w:0,h:0,dir:""}),l(!1),v())},[c,v]),j=m.useCallback(()=>{document==null||document.addEventListener("mousemove",k,!0),document==null||document.addEventListener("mouseup",b,!0)},[k,b]),A=m.useCallback(()=>{document==null||document.removeEventListener("mousemove",k,!0),document==null||document.removeEventListener("mouseup",b,!0)},[k,b]);m.useEffect(()=>(c?j():A(),()=>{A()}),[c,j,A]);const N=m.useMemo(()=>new ResizeObserver(()=>T()),[T]);return m.useEffect(()=>(N.observe(e.editor.view.dom),()=>{N.disconnect()}),[e.editor.view.dom,N]),o.jsx(g.NodeViewWrapper,{as:x?"span":"div",className:"image-view",style:{...f,textAlign:u,display:x?"inline":"block"},children:o.jsxs("div",{"data-drag-handle":!0,draggable:"true",style:f,className:`image-view__body ${e!=null&&e.selected?"image-view__body--focused":""} ${c?"image-view__body--resizing":""}`,children:[o.jsx("img",{alt:_.alt,className:"image-view__body__image block",height:"auto",onClick:v,onLoad:y,src:_.src,style:_.style}),(e==null?void 0:e.editor.view.editable)&&((e==null?void 0:e.selected)||c)&&o.jsx("div",{className:"image-resizer",children:r==null?void 0:r.map(C=>o.jsx("span",{className:`image-resizer__handler image-resizer__handler--${C}`,onMouseDown:R=>E(R,C)},`image-dir-${C}`))})]})})}const Y=new w.PluginKey("upload-image");function bn(){return new w.Plugin({key:Y,state:{init(){return w.DecorationSet.empty},apply(e,t){t=t.map(e.mapping,e.doc);const n=e.getMeta(Y);if(n!=null&&n.add)for(const{id:i,pos:a,src:r}of n.add){const c=pn(r),l=w.Decoration.widget(a,c,{id:i});t=t.add(e.doc,[l])}else if(n!=null&&n.remove)for(const i of n.remove)t=t.remove(t.find(void 0,void 0,a=>a.id===i));return t}},props:{decorations(e){return this.getState(e)}}})}function pn(e){const t=document.createElement("div"),n=document.createElement("img");return n.setAttribute("class","opacity-50"),n.src=e,n.addEventListener("load",()=>{t.setAttribute("class","img-placeholder")}),t.append(n),t}function wn(e,t){var a;const i=Y.getState(e).find(void 0,void 0,r=>r.id===t);return i.length>0?(a=i[0])==null?void 0:a.from:null}function yn({validateFn:e,onUpload:t,postUpload:n,defaultInline:i=!1}){return(a,r,c)=>{for(const l of a){if(e&&!e(l))continue;const d=Date.now().toString(),h=r.state.tr;h.selection.empty||h.deleteSelection();const u=URL.createObjectURL(l);h.setMeta(Y,{add:[{id:d,pos:c,src:u}]}),r.dispatch(h),t(l).then(async x=>{var k;n&&typeof x=="string"&&(x=await n(x));const{schema:_}=r.state;let f=wn(r.state,d);if(f===null)return;const y=typeof x=="object"?u:x,v=(k=_.nodes.image)==null?void 0:k.create({src:y,inline:i});if(!v)return;const{doc:T}=r.state;f>T.content.size&&(f=T.content.size-1);const E=r.state.tr.replaceWith(f,f,v).setMeta(Y,{remove:[d]});r.dispatch(E)},()=>{const x=r.state.tr.delete(c,c).setMeta(Y,{remove:[d]});r.dispatch(x)})}}}function vn(e,t,n){var a;const i=[...((a=t.clipboardData)==null?void 0:a.files)||[]];if(i.length>0){t.preventDefault();const r=e.state.selection.from;return n(i,e,r+1),!0}return!1}function kn(e,t,n,i){var r;const a=[...((r=t.dataTransfer)==null?void 0:r.files)||[]];if(!n&&a.length>0){t.preventDefault();const c=e.posAtCoords({left:t.clientX,top:t.clientY});if(c)return i(a,e,c.pos+1),!0}return!1}const jn={acceptMimes:["image/jpeg","image/gif","image/png","image/jpg"],maxSize:1024*1024*5,resourceImage:"both",defaultInline:!1},ge=g.Image.extend({group:"inline",inline:!0,defining:!0,draggable:!0,selectable:!0,addOptions(){var e;return{...jn,...(e=this.parent)==null?void 0:e.call(this),upload:()=>Promise.reject("Image Upload Function"),button:({editor:t,extension:n,t:i})=>{var a,r;return{component:_n,componentProps:{action:()=>!0,upload:n.options.upload,disabled:!((r=(a=t.can()).setImage)!=null&&r.call(a,{})),icon:"ImageUp",tooltip:i("editor.image.tooltip"),editor:t}}}}},addAttributes(){var e;return{...(e=this.parent)==null?void 0:e.call(this),flipX:{default:!1},flipY:{default:!1},width:{default:null,parseHTML:t=>{const n=t.style.width||t.getAttribute("width")||null;return n?Number.parseInt(n,10):null},renderHTML:t=>({width:t.width})},align:{default:"center",parseHTML:t=>t.getAttribute("align"),renderHTML:t=>({align:t.align})},inline:{default:!1,parseHTML:t=>!!t.getAttribute("inline"),renderHTML:t=>({inline:t.inline})}}},addNodeView(){return g.ReactNodeViewRenderer(xn)},addCommands(){var e;return{...(e=this.parent)==null?void 0:e.call(this),setImageInline:t=>({commands:n})=>n.insertContent({type:this.name,attrs:{...t,inline:t.inline??this.options.defaultInline}}),updateImage:t=>({commands:n})=>n.updateAttributes(this.name,t),setAlignImage:t=>({commands:n})=>n.updateAttributes(this.name,{align:t})}},renderHTML({HTMLAttributes:e}){const{flipX:t,flipY:n,align:i,inline:a}=e,r=t||n?`transform: rotateX(${t?"180":"0"}deg) rotateY(${n?"180":"0"}deg);`:"",c=i?`text-align: ${i};`:"";return[a?"span":"div",{style:c,class:"image"},["img",g.mergeAttributes({height:"auto",style:r},this.options.HTMLAttributes,e)]]},parseHTML(){return[{tag:"span.image img",getAttrs:e=>{var r;const t=e==null?void 0:e.parentElement,n=e==null?void 0:e.getAttribute("width"),i=(e==null?void 0:e.getAttribute("flipx"))||!1,a=(e==null?void 0:e.getAttribute("flipy"))||!1;return{src:e==null?void 0:e.getAttribute("src"),alt:e==null?void 0:e.getAttribute("alt"),caption:e==null?void 0:e.getAttribute("caption"),width:n?Number.parseInt(n,10):null,align:(e==null?void 0:e.getAttribute("align"))||((r=t==null?void 0:t.style)==null?void 0:r.textAlign)||null,inline:(e==null?void 0:e.getAttribute("inline"))||!1,flipX:i==="true",flipY:a==="true"}}},{tag:"div[class=image]",getAttrs:e=>{const t=e.querySelector("img"),n=t==null?void 0:t.getAttribute("width"),i=(t==null?void 0:t.getAttribute("flipx"))||!1,a=(t==null?void 0:t.getAttribute("flipy"))||!1;return{src:t==null?void 0:t.getAttribute("src"),alt:t==null?void 0:t.getAttribute("alt"),caption:t==null?void 0:t.getAttribute("caption"),width:n?Number.parseInt(n,10):null,align:(t==null?void 0:t.getAttribute("align"))||e.style.textAlign||null,inline:(t==null?void 0:t.getAttribute("inline"))||!1,flipX:i==="true",flipY:a==="true"}}}]},addProseMirrorPlugins(){const t=yn({validateFn:n=>!(!this.options.acceptMimes.includes(n.type)||n.size>this.options.maxSize),onUpload:this.options.upload});return[new w.Plugin({props:{handlePaste:(n,i)=>!i.clipboardData||[...i.clipboardData.files||[]].some(r=>r.type==="text/html")?!1:vn(n,i,t),handleDrop:(n,i,a,r)=>(!(i instanceof DragEvent)||!i.dataTransfer||kn(n,i,r,t),!1)}}),bn()]}});function Cn(e){return/\.(?:mp4|webm|ogg|mov)$/i.test(e)}function An(e){const{t}=p.useLocale(),[n,i]=m.useState(""),a=m.useRef(null),r=dn(),[c,l]=m.useState(""),d=m.useMemo(()=>{var f;return(f=e.editor.extensionManager.extensions.find(y=>y.name===Fe.name))==null?void 0:f.options},[e.editor]);async function h(_){var T;const f=(T=_==null?void 0:_.target)==null?void 0:T.files;if(!e.editor||e.editor.isDestroyed||f.length===0)return;const y=f[0];let v="";d.upload?v=await d.upload(y):v=URL.createObjectURL(y),e.editor.chain().setVideo({src:v,width:"100%"}).focus().run(),te.setOpen(!1)}function u(_){_.preventDefault(),_.stopPropagation(),n&&(e.editor.chain().setVideo({src:n,width:"100%"}).focus().run(),te.setOpen(!1))}function x(_){var f;_.preventDefault(),(f=a.current)==null||f.click()}return o.jsxs(s.Dialog,{open:r,onOpenChange:te.setOpen,children:[o.jsx(s.DialogTrigger,{asChild:!0,children:o.jsx(s.ActionButton,{icon:e.icon,action:()=>te.setOpen(!0),tooltip:e.tooltip})}),o.jsxs(s.DialogContent,{children:[o.jsx(s.DialogTitle,{children:t("editor.video.dialog.title")}),o.jsxs(He,{defaultValue:(d==null?void 0:d.resourceVideo)==="both"||(d==null?void 0:d.resourceVideo)==="upload"?"upload":"link",activationMode:"manual",children:[o.jsxs(we,{className:"richtext-grid richtext-w-full richtext-grid-cols-2",children:[((d==null?void 0:d.resourceVideo)==="both"||(d==null?void 0:d.resourceVideo)==="upload")&&o.jsx(ie,{value:"upload",children:t("editor.video.dialog.tab.upload")}),((d==null?void 0:d.resourceVideo)==="both"||(d==null?void 0:d.resourceVideo)==="link")&&o.jsx(ie,{value:"link",children:t("editor.video.dialog.link")})]}),o.jsxs(oe,{value:"upload",children:[o.jsx("div",{className:"richtext-flex richtext-items-center richtext-gap-[10px]",children:o.jsx(s.Button,{className:"richtext-w-full richtext-mt-1",size:"sm",onClick:x,children:t("editor.video.dialog.tab.upload")})}),o.jsx("input",{type:"file",accept:"video/*",ref:a,multiple:!0,style:{display:"none"},onChange:h})]}),o.jsxs(oe,{value:"link",children:[o.jsx("form",{onSubmit:u,children:o.jsxs("div",{className:"richtext-flex richtext-items-center richtext-gap-2",children:[o.jsx(s.Input,{type:"url",autoFocus:!0,value:n,onChange:_=>{const f=_.target.value;if(!Cn(f)){l("Invalid video URL"),i("");return}l(""),i(f)},required:!0,placeholder:t("editor.video.dialog.placeholder")}),o.jsx(s.Button,{type:"submit",children:t("editor.video.dialog.button.apply")})]})}),c&&o.jsx("div",{className:"richtext-text-red-500 richtext-my-[5px]",children:c})]})]})]})]})}function Tn(e){return e=e.replace("https://youtu.be/","https://www.youtube.com/watch?v=").replace("watch?v=","embed/"),e=e.replace("https://vimeo.com/","https://player.vimeo.com/video/"),/^https?:\/\/www.bilibili.com\/video\/.*/i.test(e)&&(e=e.replace(/\?.*$/,"").replace("https://www.bilibili.com/video/","https://player.bilibili.com/player.html?bvid=")),e.includes("drive.google.com")&&(e=e.replace("/view","/preview")),e}const Fe=g.Node.create({name:"video",group:"block",atom:!0,draggable:!0,addOptions(){return{divider:!1,spacer:!1,allowFullscreen:!0,upload:void 0,frameborder:!1,resourceVideo:"both",width:p.VIDEO_SIZE["size-medium"],HTMLAttributes:{class:"iframe-wrapper",style:"display: flex;justify-content: center;"},button:({editor:e,t})=>{var n,i;return{component:An,componentProps:{action:()=>{},isActive:()=>e.isActive("video")||!1,disabled:!((i=(n=e.can()).setVideo)!=null&&i.call(n,{})),icon:"Video",tooltip:t("editor.video.tooltip"),editor:e}}}}},addAttributes(){return{src:{default:null,renderHTML:({src:e})=>({src:e?Tn(e):null})},width:{default:this.options.width,renderHTML:({width:e})=>({width:s.getCssUnitWithDefault(e)})},frameborder:{default:this.options.frameborder?1:0,parseHTML:()=>this.options.frameborder?1:0},allowfullscreen:{default:this.options.allowFullscreen,parseHTML:()=>this.options.allowFullscreen}}},parseHTML(){return[{tag:"div[data-video] iframe"}]},renderHTML({HTMLAttributes:e}){const{width:t="100%"}=e??{},n={...e,width:"100%",height:"100%"},i=`position: relative;overflow: hidden;display: flex;flex: 1;max-width: ${t};`,a=`flex: 1;padding-bottom: ${9/16*100}%;`,l=["div",{style:i},["div",{style:a}],["iframe",n]];return["div",{...this.options.HTMLAttributes,"data-video":""},l]},addCommands(){return{setVideo:e=>({commands:t})=>t.insertContent({type:this.name,attrs:e}),updateVideo:e=>({commands:t})=>t.updateAttributes(this.name,e)}}});function Nn(e,t,n){if(!e.doc)return e;const i=e.doc.nodeAt(t);if(!i||n===i.attrs.backgroundColor)return e;const a={...i.attrs,backgroundColor:n};return e.setNodeMarkup(t,i.type,a,i.marks)}function Sn(e,t,n){const{doc:i,selection:a}=e;return!i||!a||!(a instanceof w.CellSelection)||a.forEachCell((r,c)=>{e=Nn(e,c,n)}),e}function je(e,t){return({tr:n,state:i,dispatch:a})=>{const{selection:r}=i;return n=n.setSelection(r),n=Sn(n,t,e),n.docChanged?(a==null||a(n),!0):!1}}const Ln=g.Extension.create({name:"tableCellBackground",addOptions(){return{types:["tableCell"],HTMLAttributes:{}}},addGlobalAttributes(){return[{types:this.options.types,attributes:{backgroundColor:{parseHTML:e=>e.style.backgroundColor||"",renderHTML:e=>!e.backgroundColor||e.backgroundColor===""?{}:{style:`background-color: ${e.backgroundColor}`}}}}]},addCommands(){return{setTableCellBackground:e=>je(e,this.options),unsetTableCellBackground:()=>je("",this.options)}}}),En=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,In=/CrOS/,Mn=/android|ipad|playbook|silk/i;function Ce(e={}){let t=e.ua||typeof navigator<"u"&&navigator.userAgent;return t&&typeof t=="object"&&t.headers&&typeof t.headers["user-agent"]=="string"&&(t=t.headers["user-agent"]),typeof t!="string"?!1:!!(En.test(t)&&!In.test(t)||e.tablet&&Mn.test(t)||e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&t.includes("Macintosh")&&t.includes("Safari"))}const Ae=e=>Array.from({length:e}).map((t,n)=>n+1);function Dn(e){var u;const[t,n]=m.useState(!0),[i,a]=m.useState({rows:Ce()?p.TABLE_MAX_GRID_SIZE:p.TABLE_INIT_GRID_SIZE,cols:Ce()?p.TABLE_MAX_GRID_SIZE:p.TABLE_INIT_GRID_SIZE}),[r,c]=m.useState({rows:p.TABLE_DEFAULT_SELECTED_GRID_SIZE,cols:p.TABLE_DEFAULT_SELECTED_GRID_SIZE});function l(x,_){x===i.rows&&a(f=>({...f,rows:Math.min(x+1,p.TABLE_MAX_GRID_SIZE)})),_===i.cols&&a(f=>({...f,cols:Math.min(_+1,p.TABLE_MAX_GRID_SIZE)})),c({rows:x,cols:_})}function d(x,_){e==null||e.createTable({rows:x,cols:_,withHeaderRow:t}),h()}function h(){n(!1),a({rows:p.TABLE_INIT_GRID_SIZE,cols:p.TABLE_INIT_GRID_SIZE}),c({rows:p.TABLE_DEFAULT_SELECTED_GRID_SIZE,cols:p.TABLE_DEFAULT_SELECTED_GRID_SIZE})}return o.jsxs(s.Popover,{modal:!0,children:[o.jsx(s.PopoverTrigger,{asChild:!0,children:e==null?void 0:e.children}),o.jsx(s.PopoverContent,{align:"start",className:"richtext-w-full !richtext-p-2",side:"bottom",children:o.jsxs("div",{className:"table-grid-size-editor richtext-p-0",children:[o.jsx("div",{className:"richtext-flex richtext-flex-col richtext-flex-wrap richtext-justify-between richtext-gap-1",children:(u=Ae(i==null?void 0:i.rows))==null?void 0:u.map(x=>{var _;return o.jsx("div",{className:"richtext-flex richtext-gap-1",children:(_=Ae(i==null?void 0:i.cols))==null?void 0:_.map(f=>o.jsx("div",{onMouseDown:()=>d(x,f),onMouseOver:()=>l(x,f),className:`richtext-cursor-pointer richtext-border-border ${f<=r.cols&&x<=r.rows&&"tableCellActive !richtext-bg-foreground"}`,children:o.jsx("div",{className:"richtext-box-border richtext-size-4 richtext-rounded-[2px] !richtext-border richtext-border-solid !richtext-border-border richtext-p-1"})},`c-${f}`))},`r-${x}`)})}),o.jsxs("div",{className:"richtext-mt-2 richtext-text-center richtext-text-sm richtext-text-zinc-600",children:[r.rows," ","x",r.cols]})]})})]})}function Rn(e){function t(n){e.disabled||e.editor.chain().focus().insertTable({...n,withHeaderRow:!1}).run()}return o.jsx(Dn,{createTable:t,children:o.jsx(s.ActionButton,{icon:e==null?void 0:e.icon,tooltip:e==null?void 0:e.tooltip,disabled:e==null?void 0:e.disabled,color:e==null?void 0:e.color,action:e==null?void 0:e.action,isActive:e==null?void 0:e.isActive})})}const Pn=g.Table.extend({addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),resizable:!0,lastColumnResizable:!0,allowTableNodeSelection:!1,button:({editor:t,t:n})=>({component:Rn,componentProps:{disabled:t.isActive("table")||!1,icon:"Table",tooltip:n("editor.table.tooltip"),editor:t}})}},addExtensions(){return[g.TableRow.configure(this.options.tableRow),g.TableHeader.configure(this.options.tableHeader),g.TableCell.configure(this.options.tableCell),Ln.configure(this.options.tableCellBackground)]}}),Hn=g.Extension.create({name:"painter",addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),button:({editor:t,t:n})=>({component:s.ActionButton,componentProps:{action:()=>{t.commands.setPainter(t==null?void 0:t.state.selection.$head.marks())},icon:"PaintRoller",tooltip:n("editor.format")}})}},addCommands(){return{setPainter:e=>({view:{dispatch:t,state:{tr:n},dom:i}})=>{const c=`url("data:image/svg+xml;utf8,${encodeURIComponent('<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path fill="#000" d="M9 22v-6H4V7q0-1.65 1.175-2.825T8 3h12v13h-5v6zM6 10h12V5h-1v4h-2V5h-1v2h-2V5H8q-.825 0-1.412.588T6 7zm0 4h12v-2H6zm0 0v-2z"/></svg>')}"), auto`;return i.style.cursor=c,t(n.setMeta("painterAction",{type:"start",marks:e})),!0}}},addProseMirrorPlugins(){return[new w.Plugin({key:new w.PluginKey("format-painter"),state:{init:()=>[],apply:(e,t)=>{const n=e.getMeta("painterAction");return n&&n.type==="start"?t=n.marks:n&&n.type==="end"&&(t=[]),t}},props:{handleDOMEvents:{mousedown(e){const t=this.getState(e.state);if(!t||t.length===0)return e.dom.style.cursor="",!1;const n=()=>{document.removeEventListener("mouseup",n);let{dispatch:i,state:{tr:a,selection:r},dom:c}=e;c.style.cursor="",a=a.removeMark(r.from,r.to);for(const l of t)l.type.name!=="link"&&(a=a.addMark(r.from,r.to,l));i(a.setMeta("painterAction",{type:"end"}))};return document.addEventListener("mouseup",n),!0}}}})]}});function Bn({editor:e,...t}){const{t:n}=p.useLocale(),[i,a]=m.useState(-1),[r,c]=m.useState([]),[l,d]=m.useState(""),[h,u]=m.useState(""),[x,_]=m.useState(!1),[f,y]=m.useState(!1);return m.useEffect(()=>{x||(d(""),u(""),a(-1),c([]),e.commands.setSearchTerm(""),e.commands.setReplaceTerm(""))},[e,x]),m.useEffect(()=>{x&&e&&e.commands&&e.commands.setSearchTerm&&e.commands.setSearchTerm(l)},[x,l,e]),m.useEffect(()=>{x&&e&&e.commands&&e.commands.setReplaceTerm&&e.commands.setReplaceTerm(h)},[x,h,e]),m.useEffect(()=>{if(!e)return;const v=e.extensionManager.extensions.find(E=>E.name===Ue.name);if(!v)return;const T=()=>{if(!x)return;const E=v?v.storage.currentIndex:-1,k=v?v.storage.results:[];a(b=>b!==E?E:b),c(b=>w.deepEqual(b,k)?b:k)};return window.addEventListener(_e,T),()=>{v&&window.removeEventListener(_e,T)}},[x,e]),o.jsxs(s.Popover,{open:x,onOpenChange:_,children:[o.jsx(s.PopoverTrigger,{disabled:t==null?void 0:t.disabled,asChild:!0,children:o.jsx(s.ActionButton,{tooltip:t==null?void 0:t.tooltip,isActive:t==null?void 0:t.isActive,disabled:t==null?void 0:t.disabled,children:o.jsx(s.IconComponent,{name:t==null?void 0:t.icon})})}),o.jsxs(s.PopoverContent,{hideWhenDetached:!0,className:"richtext-w-full",align:"start",side:"bottom",children:[o.jsxs("div",{className:"richtext-mb-[6px] richtext-flex richtext-items-center richtext-justify-between",children:[o.jsx(s.Label,{children:n("editor.search.dialog.text")}),o.jsx("span",{className:"richtext-font-semibold",children:r.length>0?`${i+1}/${r.length}`:"0/0"})]}),o.jsxs("div",{className:"richtext-flex richtext-w-full richtext-max-w-sm richtext-items-center richtext-gap-1.5 richtext-mb-[10px]",children:[o.jsx(s.Input,{type:"text",required:!0,className:"richtext-w-full",placeholder:"Text",autoFocus:!0,value:l,onChange:v=>d(v.target.value)}),o.jsx(s.Button,{disabled:r.length===0,className:"richtext-flex-1",onClick:e.commands.goToPrevSearchResult,children:o.jsx(s.IconComponent,{name:"ChevronUp"})}),o.jsx(s.Button,{disabled:r.length===0,className:"richtext-flex-1",onClick:e.commands.goToNextSearchResult,children:o.jsx(s.IconComponent,{name:"ChevronDown"})})]}),o.jsx(s.Label,{className:"richtext-mb-[6px]",children:n("editor.replace.dialog.text")}),o.jsx("div",{className:"richtext-flex richtext-w-full richtext-max-w-sm richtext-items-center richtext-gap-1.5 richtext-mb-[5px]",children:o.jsx("div",{className:"richtext-relative richtext-items-center richtext-w-full richtext-max-w-sm",children:o.jsx(s.Input,{type:"text",required:!0,className:"richtext-w-80",placeholder:"Text",value:h,onChange:v=>u(v.target.value)})})}),o.jsxs("div",{className:"richtext-flex richtext-items-center richtext-space-x-2 richtext-mb-[10px]",children:[o.jsx(s.Switch,{checked:f,onCheckedChange:v=>{y(v),e.commands.setCaseSensitive(v)}}),o.jsx(s.Label,{children:n("editor.replace.caseSensitive")})]}),o.jsxs("div",{className:"richtext-flex richtext-items-center richtext-gap-[10px]",children:[o.jsx(s.Button,{disabled:r.length===0,className:"richtext-flex-1",onClick:e.commands.replace,children:n("editor.replace.dialog.text")}),o.jsx(s.Button,{disabled:r.length===0,className:"richtext-flex-1",onClick:e.commands.replaceAll,children:n("editor.replaceAll.dialog.text")})]})]})]})}const ee=(e,t)=>t(e.tr);function zn(e,t,n){return RegExp(t?e.replace(/[$()*+./?[\\\]^{|}-]/g,String.raw`\$&`):e,n?"gu":"gui")}function On(e,t,n){const i=[];let a=[];const r=[];let c=0;if(!t)return{decorationsToReturn:[],results:[]};e==null||e.descendants((l,d)=>{l.isText?a[c]?a[c]={text:a[c].text+l.text,pos:a[c].pos}:a[c]={text:`${l.text}`,pos:d}:c+=1}),a=a.filter(Boolean);for(const{text:l,pos:d}of a){const h=[...l.matchAll(t)];for(const u of h){if(u[0]==="")break;u.index!==void 0&&r.push({from:d+u.index,to:d+u.index+u[0].length})}}for(const l of r)i.push(w.Decoration.inline(l.from,l.to,{class:n}));return{decorationsToReturn:i,results:r}}function Te(e,t,{state:n,dispatch:i}){if(!t[0])return;const{from:r,to:c}=t[0];i&&i(n.tr.insertText(e,r,c))}function Fn(e,t,n,i){const a=t+1;if(!i[a])return null;const{from:r,to:c}=i[t],l=c-r-e.length+n,{from:d,to:h}=i[a];return i[a]={to:h-l,from:d-l},[l,i]}function Un(e,t,{tr:n,dispatch:i}){let a=0,r=t.slice();if(r.length===0)return!1;for(let c=0;c<r.length;c+=1){const{from:l,to:d}=r[c];n.insertText(e,l,d);const h=Fn(e,c,a,r);h&&(a=h[0],r=h[1])}return i(n),!0}function Ne({view:e,tr:t,searchResults:n,searchResultCurrentClass:i,gotoIndex:a}){const r=n[a];if(r){const c=t.setMeta("directDecoration",{fromPos:r.from,toPos:r.to,attrs:{class:i}});return e==null||e.dispatch(c),setTimeout(()=>{const l=window.document.querySelector(`.${i}`);l&&be(l,{behavior:"smooth",scrollMode:"if-needed"})},0),!0}return!1}const _e="ON_SEARCH_RESULTS",Z=new CustomEvent(_e),Ue=g.Extension.create({name:"search",addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),searchTerm:"",replaceTerm:"",results:[],currentIndex:0,searchResultClass:"search-result",searchResultCurrentClass:"search-result-current",caseSensitive:!1,disableRegex:!1,onChange:()=>{},button:({editor:t,t:n})=>({component:Bn,componentProps:{action:()=>{},icon:"SearchAndReplace",tooltip:n("editor.searchAndReplace.tooltip"),isActive:()=>!1,disabled:!1,editor:t}})}},addStorage(){return{results:[],currentIndex:-1}},addCommands(){return{setSearchTerm:e=>({state:t,dispatch:n})=>(this.options.searchTerm=e,this.storage.results=[],this.storage.currentIndex=0,window.dispatchEvent(Z),ee(t,n),!1),setReplaceTerm:e=>({state:t,dispatch:n})=>(this.options.replaceTerm=e,ee(t,n),!1),setCaseSensitive:e=>({state:t,dispatch:n})=>(this.options.caseSensitive=e,ee(t,n),!1),replace:()=>({state:e,dispatch:t})=>{const{replaceTerm:n}=this.options,{currentIndex:i,results:a}=this.storage,r=a[i];return r?(Te(n,[r],{state:e,dispatch:t}),this.storage.results.splice(i,1)):(Te(n,a,{state:e,dispatch:t}),this.storage.results.shift()),window.dispatchEvent(Z),ee(e,t),!1},replaceAll:()=>({state:e,tr:t,dispatch:n})=>{const{replaceTerm:i}=this.options,{results:a}=this.storage;return Un(i,a,{tr:t,dispatch:n}),this.storage.currentIndex=-1,this.storage.results=[],window.dispatchEvent(Z),ee(e,n),!1},goToPrevSearchResult:()=>({view:e,tr:t})=>{const{searchResultCurrentClass:n}=this.options,{currentIndex:i,results:a}=this.storage,r=(i+a.length-1)%a.length;return this.storage.currentIndex=r,window.dispatchEvent(Z),Ne({view:e,tr:t,searchResults:a,searchResultCurrentClass:n,gotoIndex:r})},goToNextSearchResult:()=>({view:e,tr:t})=>{const{searchResultCurrentClass:n}=this.options,{currentIndex:i,results:a}=this.storage,r=(i+1)%a.length;return this.storage.currentIndex=r,this.options.onChange&&this.options.onChange(),window.dispatchEvent(Z),Ne({view:e,tr:t,searchResults:a,searchResultCurrentClass:n,gotoIndex:r})}}},addProseMirrorPlugins(){const e=this;return[new w.Plugin({key:new w.PluginKey("search"),state:{init(){return w.DecorationSet.empty},apply(t){const{doc:n,docChanged:i}=t,{searchTerm:a,searchResultClass:r,searchResultCurrentClass:c,disableRegex:l,caseSensitive:d}=e.options;if(i||a){const{decorationsToReturn:h,results:u}=On(n,zn(a,l,d),r);if(e.storage.results=u,e.storage.currentIndex>u.length-1&&(e.storage.currentIndex=0),window.dispatchEvent(Z),t.getMeta("directDecoration")){const{fromPos:x,toPos:_,attrs:f}=t.getMeta("directDecoration");h.push(w.Decoration.inline(x,_,f))}else u.length>0&&(h[0]=w.Decoration.inline(u[0].from,u[0].to,{class:c}));return w.DecorationSet.create(n,h)}return w.DecorationSet.empty}},props:{decorations(t){return this.getState(t)}}})]}});function qn({className:e,...t}){return o.jsx(G.EmojiPicker.Root,{className:s.cn("richtext-bg-popover richtext-text-popover-foreground richtext-isolate richtext-flex richtext-h-full richtext-w-fit richtext-flex-col richtext-overflow-hidden richtext-rounded-md",e),"data-slot":"emoji-picker",...t})}function $n({className:e,...t}){return o.jsxs("div",{className:s.cn("richtext-flex richtext-h-9 richtext-items-center richtext-gap-2 richtext-border-b richtext-px-3",e),"data-slot":"emoji-picker-search-wrapper",children:[o.jsx(D.SearchIcon,{className:"richtext-size-4 richtext-shrink-0 richtext-opacity-50"}),o.jsx(G.EmojiPicker.Search,{className:"richtext-outline-hidden placeholder:richtext-text-muted-foreground richtext-flex richtext-h-10 richtext-w-full richtext-rounded-md richtext-bg-transparent richtext-py-3 richtext-text-sm disabled:richtext-cursor-not-allowed disabled:richtext-opacity-50","data-slot":"emoji-picker-search",...t})]})}function Vn({children:e,...t}){return o.jsx("div",{...t,className:"richtext-scroll-my-1 richtext-px-1","data-slot":"emoji-picker-row",children:e})}function Kn({emoji:e,className:t,...n}){return o.jsx("button",{...n,className:s.cn("data-[active]:richtext-bg-accent richtext-flex richtext-size-7 richtext-items-center richtext-justify-center richtext-rounded-sm richtext-text-base",t),"data-slot":"emoji-picker-emoji",children:e.emoji})}function Gn({category:e,...t}){return o.jsx("div",{...t,className:"richtext-bg-popover richtext-text-muted-foreground richtext-px-3 richtext-pb-2 richtext-pt-3.5 richtext-text-xs richtext-leading-none","data-slot":"emoji-picker-category-header",children:e.label})}function Wn({className:e,...t}){return o.jsxs(G.EmojiPicker.Viewport,{className:s.cn("richtext-outline-hidden richtext-relative richtext-flex-1",e),"data-slot":"emoji-picker-viewport",...t,children:[o.jsx(G.EmojiPicker.Loading,{className:"richtext-absolute richtext-inset-0 richtext-flex richtext-items-center richtext-justify-center richtext-text-muted-foreground","data-slot":"emoji-picker-loading",children:o.jsx(D.LoaderIcon,{className:"richtext-size-4 richtext-animate-spin"})}),o.jsx(G.EmojiPicker.Empty,{className:"richtext-absolute richtext-inset-0 richtext-flex richtext-items-center richtext-justify-center richtext-text-muted-foreground richtext-text-sm","data-slot":"emoji-picker-empty",children:"No emoji found."}),o.jsx(G.EmojiPicker.List,{className:"richtext-select-none richtext-pb-1",components:{Row:Vn,Emoji:Kn,CategoryHeader:Gn},"data-slot":"emoji-picker-list"})]})}function Zn({className:e,...t}){return o.jsx("div",{className:s.cn("richtext-max-w-(--frimousse-viewport-width) richtext-flex richtext-w-full richtext-min-w-0 richtext-items-center richtext-gap-1 richtext-border-t richtext-p-2",e),"data-slot":"emoji-picker-footer",...t,children:o.jsx(G.EmojiPicker.ActiveEmoji,{children:({emoji:n})=>n?o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"richtext-flex richtext-size-7 richtext-flex-none richtext-items-center richtext-justify-center richtext-text-lg",children:n.emoji}),o.jsx("span",{className:"richtext-text-secondary-foreground richtext-truncate richtext-text-xs",children:n.label})]}):o.jsx("span",{className:"richtext-text-muted-foreground richtext-ml-1.5 richtext-flex richtext-h-7 richtext-items-center richtext-truncate richtext-text-xs",children:"Select an emoji…"})})})}function Xn({onSelectEmoji:e,children:t}){return o.jsxs(s.Popover,{modal:!0,children:[o.jsx(s.PopoverTrigger,{asChild:!0,children:t}),o.jsx(s.PopoverContent,{align:"start",className:"richtext-size-full richtext-p-2",hideWhenDetached:!0,side:"bottom",children:o.jsxs(qn,{className:"!richtext-h-[342px]",onEmojiSelect:({emoji:n})=>{e(n)},children:[o.jsx($n,{}),o.jsx(Wn,{}),o.jsx(Zn,{})]})})]})}function Yn({editor:e,icon:t,...n}){const i=m.useCallback(a=>{const{selection:r}=e.state,{$anchor:c}=r;return e.chain().insertContentAt(c.pos,a).run()},[e]);return o.jsx(Xn,{onSelectEmoji:i,children:o.jsx(s.ActionButton,{icon:t,tooltip:n==null?void 0:n.tooltip})})}const qe=m.forwardRef((e,t)=>{const n=m.useRef(null),[i,a]=m.useState(0),{t:r}=p.useLocale(),c=u=>{const x=e.items[u];x&&e.command(x)},l=()=>{a((i+e.items.length-1)%e.items.length)},d=()=>{a((i+1)%e.items.length)},h=()=>{c(i)};return m.useEffect(()=>a(0),[e.items]),m.useEffect(()=>{if(Number.isNaN(i+1))return;const u=n.current.querySelector(`span:nth-of-type(${i+1})`);u&&be(u,{behavior:"smooth",scrollMode:"if-needed"})},[i]),m.useImperativeHandle(t,()=>({onKeyDown:({event:u})=>u.key==="ArrowUp"?(l(),!0):u.key==="ArrowDown"?(d(),!0):u.key==="Enter"?(h(),!0):!1})),o.jsx("div",{className:"richtext-max-h-[320px] richtext-w-[200px] richtext-overflow-y-auto richtext-overflow-x-hidden richtext-rounded-sm !richtext-border richtext-bg-popover richtext-p-1 richtext-text-popover-foreground richtext-shadow-md richtext-outline-none",children:o.jsx("div",{ref:n,children:e.items.length>0?e.items.map((u,x)=>o.jsxs("span",{className:w.clsx(" richtext-relative richtext-flex richtext-cursor-default richtext-select-none richtext-items-center richtext-rounded-sm richtext-px-2 richtext-py-1.5 richtext-text-sm richtext-outline-none richtext-transition-colors hover:richtext-bg-accent focus:richtext-bg-accent focus:richtext-text-accent-foreground",x===i?"bg-accent":""),onClick:()=>c(x),children:[u.fallbackImage?o.jsx("img",{className:"richtext-size-[1em]",src:u.fallbackImage}):u.emoji,":",u.name,":"]},`emoji-list-code-${x}`)):o.jsx("div",{className:"richtext-relative richtext-flex richtext-cursor-default richtext-select-none richtext-items-center richtext-rounded-sm richtext-px-2 richtext-py-1.5 richtext-text-sm richtext-outline-none richtext-transition-colors",children:o.jsx("span",{children:r("no_result_found")})})})})});qe.displayName="EmojiList";const J={100:"💯",1234:"🔢",grinning:"😀",smiley:"😃",smile:"😄",grin:"😁",laughing:"😆",satisfied:"😆",sweat_smile:"😅",rofl:"🤣",joy:"😂",slightly_smiling_face:"🙂",upside_down_face:"🙃",wink:"😉",blush:"😊",innocent:"😇",smiling_face_with_three_hearts:"🥰",heart_eyes:"😍",star_struck:"🤩",kissing_heart:"😘",kissing:"😗",relaxed:"☺️",kissing_closed_eyes:"😚",kissing_smiling_eyes:"😙",smiling_face_with_tear:"🥲",yum:"😋",stuck_out_tongue:"😛",stuck_out_tongue_winking_eye:"😜",zany_face:"🤪",stuck_out_tongue_closed_eyes:"😝",money_mouth_face:"🤑",hugs:"🤗",hand_over_mouth:"🤭",shushing_face:"🤫",thinking:"🤔",zipper_mouth_face:"🤐",raised_eyebrow:"🤨",neutral_face:"😐",expressionless:"😑",no_mouth:"😶",smirk:"😏",unamused:"😒",roll_eyes:"🙄",grimacing:"😬",lying_face:"🤥",relieved:"😌",pensive:"😔",sleepy:"😪",drooling_face:"🤤",sleeping:"😴",mask:"😷",face_with_thermometer:"🤒",face_with_head_bandage:"🤕",nauseated_face:"🤢",vomiting_face:"🤮",sneezing_face:"🤧",hot_face:"🥵",cold_face:"🥶",woozy_face:"🥴",dizzy_face:"😵",exploding_head:"🤯",cowboy_hat_face:"🤠",partying_face:"🥳",disguised_face:"🥸",sunglasses:"😎",nerd_face:"🤓",monocle_face:"🧐",confused:"😕",worried:"😟",slightly_frowning_face:"🙁",frowning_face:"☹️",open_mouth:"😮",hushed:"😯",astonished:"😲",flushed:"😳",pleading_face:"🥺",frowning:"😦",anguished:"😧",fearful:"😨",cold_sweat:"😰",disappointed_relieved:"😥",cry:"😢",sob:"😭",scream:"😱",confounded:"😖",persevere:"😣",disappointed:"😞",sweat:"😓",weary:"😩",tired_face:"😫",yawning_face:"🥱",triumph:"😤",rage:"😡",pout:"😡",angry:"😠",cursing_face:"🤬",smiling_imp:"😈",imp:"👿",skull:"💀",skull_and_crossbones:"☠️",hankey:"💩",poop:"💩",shit:"💩",clown_face:"🤡",japanese_ogre:"👹",japanese_goblin:"👺",ghost:"👻",alien:"👽",space_invader:"👾",robot:"🤖",smiley_cat:"😺",smile_cat:"😸",joy_cat:"😹",heart_eyes_cat:"😻",smirk_cat:"😼",kissing_cat:"😽",scream_cat:"🙀",crying_cat_face:"😿",pouting_cat:"😾",see_no_evil:"🙈",hear_no_evil:"🙉",speak_no_evil:"🙊",kiss:"💋",love_letter:"💌",cupid:"💘",gift_heart:"💝",sparkling_heart:"💖",heartpulse:"💗",heartbeat:"💓",revolving_hearts:"💞",two_hearts:"💕",heart_decoration:"💟",heavy_heart_exclamation:"❣️",broken_heart:"💔",heart:"❤️",orange_heart:"🧡",yellow_heart:"💛",green_heart:"💚",blue_heart:"💙",purple_heart:"💜",brown_heart:"🤎",black_heart:"🖤",white_heart:"🤍",anger:"💢",boom:"💥",collision:"💥",dizzy:"💫",sweat_drops:"💦",dash:"💨",hole:"🕳️",bomb:"💣",speech_balloon:"💬",eye_speech_bubble:"👁️‍🗨️",left_speech_bubble:"🗨️",right_anger_bubble:"🗯️",thought_balloon:"💭",zzz:"💤",wave:"👋",raised_back_of_hand:"🤚",raised_hand_with_fingers_splayed:"🖐️",hand:"✋",raised_hand:"✋",vulcan_salute:"🖖",ok_hand:"👌",pinched_fingers:"🤌",pinching_hand:"🤏",v:"✌️",crossed_fingers:"🤞",love_you_gesture:"🤟",metal:"🤘",call_me_hand:"🤙",point_left:"👈",point_right:"👉",point_up_2:"👆",middle_finger:"🖕",fu:"🖕",point_down:"👇",point_up:"☝️","+1":"👍",thumbsup:"👍","-1":"👎",thumbsdown:"👎",fist_raised:"✊",fist:"✊",fist_oncoming:"👊",facepunch:"👊",punch:"👊",fist_left:"🤛",fist_right:"🤜",clap:"👏",raised_hands:"🙌",open_hands:"👐",palms_up_together:"🤲",handshake:"🤝",pray:"🙏",writing_hand:"✍️",nail_care:"💅",selfie:"🤳",muscle:"💪",mechanical_arm:"🦾",mechanical_leg:"🦿",leg:"🦵",foot:"🦶",ear:"👂",ear_with_hearing_aid:"🦻",nose:"👃",brain:"🧠",anatomical_heart:"🫀",lungs:"🫁",tooth:"🦷",bone:"🦴",eyes:"👀",eye:"👁️",tongue:"👅",lips:"👄",baby:"👶",child:"🧒",boy:"👦",girl:"👧",adult:"🧑",blond_haired_person:"👱",man:"👨",bearded_person:"🧔",red_haired_man:"👨‍🦰",curly_haired_man:"👨‍🦱",white_haired_man:"👨‍🦳",bald_man:"👨‍🦲",woman:"👩",red_haired_woman:"👩‍🦰",person_red_hair:"🧑‍🦰",curly_haired_woman:"👩‍🦱",person_curly_hair:"🧑‍🦱",white_haired_woman:"👩‍🦳",person_white_hair:"🧑‍🦳",bald_woman:"👩‍🦲",person_bald:"🧑‍🦲",blond_haired_woman:"👱‍♀️",blonde_woman:"👱‍♀️",blond_haired_man:"👱‍♂️",older_adult:"🧓",older_man:"👴",older_woman:"👵",frowning_person:"🙍",frowning_man:"🙍‍♂️",frowning_woman:"🙍‍♀️",pouting_face:"🙎",pouting_man:"🙎‍♂️",pouting_woman:"🙎‍♀️",no_good:"🙅",no_good_man:"🙅‍♂️",ng_man:"🙅‍♂️",no_good_woman:"🙅‍♀️",ng_woman:"🙅‍♀️",ok_person:"🙆",ok_man:"🙆‍♂️",ok_woman:"🙆‍♀️",tipping_hand_person:"💁",information_desk_person:"💁",tipping_hand_man:"💁‍♂️",sassy_man:"💁‍♂️",tipping_hand_woman:"💁‍♀️",sassy_woman:"💁‍♀️",raising_hand:"🙋",raising_hand_man:"🙋‍♂️",raising_hand_woman:"🙋‍♀️",deaf_person:"🧏",deaf_man:"🧏‍♂️",deaf_woman:"🧏‍♀️",bow:"🙇",bowing_man:"🙇‍♂️",bowing_woman:"🙇‍♀️",facepalm:"🤦",man_facepalming:"🤦‍♂️",woman_facepalming:"🤦‍♀️",shrug:"🤷",man_shrugging:"🤷‍♂️",woman_shrugging:"🤷‍♀️",health_worker:"🧑‍⚕️",man_health_worker:"👨‍⚕️",woman_health_worker:"👩‍⚕️",student:"🧑‍🎓",man_student:"👨‍🎓",woman_student:"👩‍🎓",teacher:"🧑‍🏫",man_teacher:"👨‍🏫",woman_teacher:"👩‍🏫",judge:"🧑‍⚖️",man_judge:"👨‍⚖️",woman_judge:"👩‍⚖️",farmer:"🧑‍🌾",man_farmer:"👨‍🌾",woman_farmer:"👩‍🌾",cook:"🧑‍🍳",man_cook:"👨‍🍳",woman_cook:"👩‍🍳",mechanic:"🧑‍🔧",man_mechanic:"👨‍🔧",woman_mechanic:"👩‍🔧",factory_worker:"🧑‍🏭",man_factory_worker:"👨‍🏭",woman_factory_worker:"👩‍🏭",office_worker:"🧑‍💼",man_office_worker:"👨‍💼",woman_office_worker:"👩‍💼",scientist:"🧑‍🔬",man_scientist:"👨‍🔬",woman_scientist:"👩‍🔬",technologist:"🧑‍💻",man_technologist:"👨‍💻",woman_technologist:"👩‍💻",singer:"🧑‍🎤",man_singer:"👨‍🎤",woman_singer:"👩‍🎤",artist:"🧑‍🎨",man_artist:"👨‍🎨",woman_artist:"👩‍🎨",pilot:"🧑‍✈️",man_pilot:"👨‍✈️",woman_pilot:"👩‍✈️",astronaut:"🧑‍🚀",man_astronaut:"👨‍🚀",woman_astronaut:"👩‍🚀",firefighter:"🧑‍🚒",man_firefighter:"👨‍🚒",woman_firefighter:"👩‍🚒",police_officer:"👮",cop:"👮",policeman:"👮‍♂️",policewoman:"👮‍♀️",detective:"🕵️",male_detective:"🕵️‍♂️",female_detective:"🕵️‍♀️",guard:"💂",guardsman:"💂‍♂️",guardswoman:"💂‍♀️",ninja:"🥷",construction_worker:"👷",construction_worker_man:"👷‍♂️",construction_worker_woman:"👷‍♀️",prince:"🤴",princess:"👸",person_with_turban:"👳",man_with_turban:"👳‍♂️",woman_with_turban:"👳‍♀️",man_with_gua_pi_mao:"👲",woman_with_headscarf:"🧕",person_in_tuxedo:"🤵",man_in_tuxedo:"🤵‍♂️",woman_in_tuxedo:"🤵‍♀️",person_with_veil:"👰",man_with_veil:"👰‍♂️",woman_with_veil:"👰‍♀️",bride_with_veil:"👰‍♀️",pregnant_woman:"🤰",breast_feeding:"🤱",woman_feeding_baby:"👩‍🍼",man_feeding_baby:"👨‍🍼",person_feeding_baby:"🧑‍🍼",angel:"👼",santa:"🎅",mrs_claus:"🤶",mx_claus:"🧑‍🎄",superhero:"🦸",superhero_man:"🦸‍♂️",superhero_woman:"🦸‍♀️",supervillain:"🦹",supervillain_man:"🦹‍♂️",supervillain_woman:"🦹‍♀️",mage:"🧙",mage_man:"🧙‍♂️",mage_woman:"🧙‍♀️",fairy:"🧚",fairy_man:"🧚‍♂️",fairy_woman:"🧚‍♀️",vampire:"🧛",vampire_man:"🧛‍♂️",vampire_woman:"🧛‍♀️",merperson:"🧜",merman:"🧜‍♂️",mermaid:"🧜‍♀️",elf:"🧝",elf_man:"🧝‍♂️",elf_woman:"🧝‍♀️",genie:"🧞",genie_man:"🧞‍♂️",genie_woman:"🧞‍♀️",zombie:"🧟",zombie_man:"🧟‍♂️",zombie_woman:"🧟‍♀️",massage:"💆",massage_man:"💆‍♂️",massage_woman:"💆‍♀️",haircut:"💇",haircut_man:"💇‍♂️",haircut_woman:"💇‍♀️",walking:"🚶",walking_man:"🚶‍♂️",walking_woman:"🚶‍♀️",standing_person:"🧍",standing_man:"🧍‍♂️",standing_woman:"🧍‍♀️",kneeling_person:"🧎",kneeling_man:"🧎‍♂️",kneeling_woman:"🧎‍♀️",person_with_probing_cane:"🧑‍🦯",man_with_probing_cane:"👨‍🦯",woman_with_probing_cane:"👩‍🦯",person_in_motorized_wheelchair:"🧑‍🦼",man_in_motorized_wheelchair:"👨‍🦼",woman_in_motorized_wheelchair:"👩‍🦼",person_in_manual_wheelchair:"🧑‍🦽",man_in_manual_wheelchair:"👨‍🦽",woman_in_manual_wheelchair:"👩‍🦽",runner:"🏃",running:"🏃",running_man:"🏃‍♂️",running_woman:"🏃‍♀️",woman_dancing:"💃",dancer:"💃",man_dancing:"🕺",business_suit_levitating:"🕴️",dancers:"👯",dancing_men:"👯‍♂️",dancing_women:"👯‍♀️",sauna_person:"🧖",sauna_man:"🧖‍♂️",sauna_woman:"🧖‍♀️",climbing:"🧗",climbing_man:"🧗‍♂️",climbing_woman:"🧗‍♀️",person_fencing:"🤺",horse_racing:"🏇",skier:"⛷️",snowboarder:"🏂",golfing:"🏌️",golfing_man:"🏌️‍♂️",golfing_woman:"🏌️‍♀️",surfer:"🏄",surfing_man:"🏄‍♂️",surfing_woman:"🏄‍♀️",rowboat:"🚣",rowing_man:"🚣‍♂️",rowing_woman:"🚣‍♀️",swimmer:"🏊",swimming_man:"🏊‍♂️",swimming_woman:"🏊‍♀️",bouncing_ball_person:"⛹️",bouncing_ball_man:"⛹️‍♂️",basketball_man:"⛹️‍♂️",bouncing_ball_woman:"⛹️‍♀️",basketball_woman:"⛹️‍♀️",weight_lifting:"🏋️",weight_lifting_man:"🏋️‍♂️",weight_lifting_woman:"🏋️‍♀️",bicyclist:"🚴",biking_man:"🚴‍♂️",biking_woman:"🚴‍♀️",mountain_bicyclist:"🚵",mountain_biking_man:"🚵‍♂️",mountain_biking_woman:"🚵‍♀️",cartwheeling:"🤸",man_cartwheeling:"🤸‍♂️",woman_cartwheeling:"🤸‍♀️",wrestling:"🤼",men_wrestling:"🤼‍♂️",women_wrestling:"🤼‍♀️",water_polo:"🤽",man_playing_water_polo:"🤽‍♂️",woman_playing_water_polo:"🤽‍♀️",handball_person:"🤾",man_playing_handball:"🤾‍♂️",woman_playing_handball:"🤾‍♀️",juggling_person:"🤹",man_juggling:"🤹‍♂️",woman_juggling:"🤹‍♀️",lotus_position:"🧘",lotus_position_man:"🧘‍♂️",lotus_position_woman:"🧘‍♀️",bath:"🛀",sleeping_bed:"🛌",people_holding_hands:"🧑‍🤝‍🧑",two_women_holding_hands:"👭",couple:"👫",two_men_holding_hands:"👬",couplekiss:"💏",couplekiss_man_woman:"👩‍❤️‍💋‍👨",couplekiss_man_man:"👨‍❤️‍💋‍👨",couplekiss_woman_woman:"👩‍❤️‍💋‍👩",couple_with_heart:"💑",couple_with_heart_woman_man:"👩‍❤️‍👨",couple_with_heart_man_man:"👨‍❤️‍👨",couple_with_heart_woman_woman:"👩‍❤️‍👩",family:"👪",family_man_woman_boy:"👨‍👩‍👦",family_man_woman_girl:"👨‍👩‍👧",family_man_woman_girl_boy:"👨‍👩‍👧‍👦",family_man_woman_boy_boy:"👨‍👩‍👦‍👦",family_man_woman_girl_girl:"👨‍👩‍👧‍👧",family_man_man_boy:"👨‍👨‍👦",family_man_man_girl:"👨‍👨‍👧",family_man_man_girl_boy:"👨‍👨‍👧‍👦",family_man_man_boy_boy:"👨‍👨‍👦‍👦",family_man_man_girl_girl:"👨‍👨‍👧‍👧",family_woman_woman_boy:"👩‍👩‍👦",family_woman_woman_girl:"👩‍👩‍👧",family_woman_woman_girl_boy:"👩‍👩‍👧‍👦",family_woman_woman_boy_boy:"👩‍👩‍👦‍👦",family_woman_woman_girl_girl:"👩‍👩‍👧‍👧",family_man_boy:"👨‍👦",family_man_boy_boy:"👨‍👦‍👦",family_man_girl:"👨‍👧",family_man_girl_boy:"👨‍👧‍👦",family_man_girl_girl:"👨‍👧‍👧",family_woman_boy:"👩‍👦",family_woman_boy_boy:"👩‍👦‍👦",family_woman_girl:"👩‍👧",family_woman_girl_boy:"👩‍👧‍👦",family_woman_girl_girl:"👩‍👧‍👧",speaking_head:"🗣️",bust_in_silhouette:"👤",busts_in_silhouette:"👥",people_hugging:"🫂",footprints:"👣",monkey_face:"🐵",monkey:"🐒",gorilla:"🦍",orangutan:"🦧",dog:"🐶",dog2:"🐕",guide_dog:"🦮",service_dog:"🐕‍🦺",poodle:"🐩",wolf:"🐺",fox_face:"🦊",raccoon:"🦝",cat:"🐱",cat2:"🐈",black_cat:"🐈‍⬛",lion:"🦁",tiger:"🐯",tiger2:"🐅",leopard:"🐆",horse:"🐴",racehorse:"🐎",unicorn:"🦄",zebra:"🦓",deer:"🦌",bison:"🦬",cow:"🐮",ox:"🐂",water_buffalo:"🐃",cow2:"🐄",pig:"🐷",pig2:"🐖",boar:"🐗",pig_nose:"🐽",ram:"🐏",sheep:"🐑",goat:"🐐",dromedary_camel:"🐪",camel:"🐫",llama:"🦙",giraffe:"🦒",elephant:"🐘",mammoth:"🦣",rhinoceros:"🦏",hippopotamus:"🦛",mouse:"🐭",mouse2:"🐁",rat:"🐀",hamster:"🐹",rabbit:"🐰",rabbit2:"🐇",chipmunk:"🐿️",beaver:"🦫",hedgehog:"🦔",bat:"🦇",bear:"🐻",polar_bear:"🐻‍❄️",koala:"🐨",panda_face:"🐼",sloth:"🦥",otter:"🦦",skunk:"🦨",kangaroo:"🦘",badger:"🦡",feet:"🐾",paw_prints:"🐾",turkey:"🦃",chicken:"🐔",rooster:"🐓",hatching_chick:"🐣",baby_chick:"🐤",hatched_chick:"🐥",bird:"🐦",penguin:"🐧",dove:"🕊️",eagle:"🦅",duck:"🦆",swan:"🦢",owl:"🦉",dodo:"🦤",feather:"🪶",flamingo:"🦩",peacock:"🦚",parrot:"🦜",frog:"🐸",crocodile:"🐊",turtle:"🐢",lizard:"🦎",snake:"🐍",dragon_face:"🐲",dragon:"🐉",sauropod:"🦕","t-rex":"🦖",whale:"🐳",whale2:"🐋",dolphin:"🐬",flipper:"🐬",seal:"🦭",fish:"🐟",tropical_fish:"🐠",blowfish:"🐡",shark:"🦈",octopus:"🐙",shell:"🐚",snail:"🐌",butterfly:"🦋",bug:"🐛",ant:"🐜",bee:"🐝",honeybee:"🐝",beetle:"🪲",lady_beetle:"🐞",cricket:"🦗",cockroach:"🪳",spider:"🕷️",spider_web:"🕸️",scorpion:"🦂",mosquito:"🦟",fly:"🪰",worm:"🪱",microbe:"🦠",bouquet:"💐",cherry_blossom:"🌸",white_flower:"💮",rosette:"🏵️",rose:"🌹",wilted_flower:"🥀",hibiscus:"🌺",sunflower:"🌻",blossom:"🌼",tulip:"🌷",seedling:"🌱",potted_plant:"🪴",evergreen_tree:"🌲",deciduous_tree:"🌳",palm_tree:"🌴",cactus:"🌵",ear_of_rice:"🌾",herb:"🌿",shamrock:"☘️",four_leaf_clover:"🍀",maple_leaf:"🍁",fallen_leaf:"🍂",leaves:"🍃",grapes:"🍇",melon:"🍈",watermelon:"🍉",tangerine:"🍊",orange:"🍊",mandarin:"🍊",lemon:"🍋",banana:"🍌",pineapple:"🍍",mango:"🥭",apple:"🍎",green_apple:"🍏",pear:"🍐",peach:"🍑",cherries:"🍒",strawberry:"🍓",blueberries:"🫐",kiwi_fruit:"🥝",tomato:"🍅",olive:"🫒",coconut:"🥥",avocado:"🥑",eggplant:"🍆",potato:"🥔",carrot:"🥕",corn:"🌽",hot_pepper:"🌶️",bell_pepper:"🫑",cucumber:"🥒",leafy_green:"🥬",broccoli:"🥦",garlic:"🧄",onion:"🧅",mushroom:"🍄",peanuts:"🥜",chestnut:"🌰",bread:"🍞",croissant:"🥐",baguette_bread:"🥖",flatbread:"🫓",pretzel:"🥨",bagel:"🥯",pancakes:"🥞",waffle:"🧇",cheese:"🧀",meat_on_bone:"🍖",poultry_leg:"🍗",cut_of_meat:"🥩",bacon:"🥓",hamburger:"🍔",fries:"🍟",pizza:"🍕",hotdog:"🌭",sandwich:"🥪",taco:"🌮",burrito:"🌯",tamale:"🫔",stuffed_flatbread:"🥙",falafel:"🧆",egg:"🥚",fried_egg:"🍳",shallow_pan_of_food:"🥘",stew:"🍲",fondue:"🫕",bowl_with_spoon:"🥣",green_salad:"🥗",popcorn:"🍿",butter:"🧈",salt:"🧂",canned_food:"🥫",bento:"🍱",rice_cracker:"🍘",rice_ball:"🍙",rice:"🍚",curry:"🍛",ramen:"🍜",spaghetti:"🍝",sweet_potato:"🍠",oden:"🍢",sushi:"🍣",fried_shrimp:"🍤",fish_cake:"🍥",moon_cake:"🥮",dango:"🍡",dumpling:"🥟",fortune_cookie:"🥠",takeout_box:"🥡",crab:"🦀",lobster:"🦞",shrimp:"🦐",squid:"🦑",oyster:"🦪",icecream:"🍦",shaved_ice:"🍧",ice_cream:"🍨",doughnut:"🍩",cookie:"🍪",birthday:"🎂",cake:"🍰",cupcake:"🧁",pie:"🥧",chocolate_bar:"🍫",candy:"🍬",lollipop:"🍭",custard:"🍮",honey_pot:"🍯",baby_bottle:"🍼",milk_glass:"🥛",coffee:"☕",teapot:"🫖",tea:"🍵",sake:"🍶",champagne:"🍾",wine_glass:"🍷",cocktail:"🍸",tropical_drink:"🍹",beer:"🍺",beers:"🍻",clinking_glasses:"🥂",tumbler_glass:"🥃",cup_with_straw:"🥤",bubble_tea:"🧋",beverage_box:"🧃",mate:"🧉",ice_cube:"🧊",chopsticks:"🥢",plate_with_cutlery:"🍽️",fork_and_knife:"🍴",spoon:"🥄",hocho:"🔪",knife:"🔪",amphora:"🏺",earth_africa:"🌍",earth_americas:"🌎",earth_asia:"🌏",globe_with_meridians:"🌐",world_map:"🗺️",japan:"🗾",compass:"🧭",mountain_snow:"🏔️",mountain:"⛰️",volcano:"🌋",mount_fuji:"🗻",camping:"🏕️",beach_umbrella:"🏖️",desert:"🏜️",desert_island:"🏝️",national_park:"🏞️",stadium:"🏟️",classical_building:"🏛️",building_construction:"🏗️",bricks:"🧱",rock:"🪨",wood:"🪵",hut:"🛖",houses:"🏘️",derelict_house:"🏚️",house:"🏠",house_with_garden:"🏡",office:"🏢",post_office:"🏣",european_post_office:"🏤",hospital:"🏥",bank:"🏦",hotel:"🏨",love_hotel:"🏩",convenience_store:"🏪",school:"🏫",department_store:"🏬",factory:"🏭",japanese_castle:"🏯",european_castle:"🏰",wedding:"💒",tokyo_tower:"🗼",statue_of_liberty:"🗽",church:"⛪",mosque:"🕌",hindu_temple:"🛕",synagogue:"🕍",shinto_shrine:"⛩️",kaaba:"🕋",fountain:"⛲",tent:"⛺",foggy:"🌁",night_with_stars:"🌃",cityscape:"🏙️",sunrise_over_mountains:"🌄",sunrise:"🌅",city_sunset:"🌆",city_sunrise:"🌇",bridge_at_night:"🌉",hotsprings:"♨️",carousel_horse:"🎠",ferris_wheel:"🎡",roller_coaster:"🎢",barber:"💈",circus_tent:"🎪",steam_locomotive:"🚂",railway_car:"🚃",bullettrain_side:"🚄",bullettrain_front:"🚅",train2:"🚆",metro:"🚇",light_rail:"🚈",station:"🚉",tram:"🚊",monorail:"🚝",mountain_railway:"🚞",train:"🚋",bus:"🚌",oncoming_bus:"🚍",trolleybus:"🚎",minibus:"🚐",ambulance:"🚑",fire_engine:"🚒",police_car:"🚓",oncoming_police_car:"🚔",taxi:"🚕",oncoming_taxi:"🚖",car:"🚗",red_car:"🚗",oncoming_automobile:"🚘",blue_car:"🚙",pickup_truck:"🛻",truck:"🚚",articulated_lorry:"🚛",tractor:"🚜",racing_car:"🏎️",motorcycle:"🏍️",motor_scooter:"🛵",manual_wheelchair:"🦽",motorized_wheelchair:"🦼",auto_rickshaw:"🛺",bike:"🚲",kick_scooter:"🛴",skateboard:"🛹",roller_skate:"🛼",busstop:"🚏",motorway:"🛣️",railway_track:"🛤️",oil_drum:"🛢️",fuelpump:"⛽",rotating_light:"🚨",traffic_light:"🚥",vertical_traffic_light:"🚦",stop_sign:"🛑",construction:"🚧",anchor:"⚓",boat:"⛵",sailboat:"⛵",canoe:"🛶",speedboat:"🚤",passenger_ship:"🛳️",ferry:"⛴️",motor_boat:"🛥️",ship:"🚢",airplane:"✈️",small_airplane:"🛩️",flight_departure:"🛫",flight_arrival:"🛬",parachute:"🪂",seat:"💺",helicopter:"🚁",suspension_railway:"🚟",mountain_cableway:"🚠",aerial_tramway:"🚡",artificial_satellite:"🛰️",rocket:"🚀",flying_saucer:"🛸",bellhop_bell:"🛎️",luggage:"🧳",hourglass:"⌛",hourglass_flowing_sand:"⏳",watch:"⌚",alarm_clock:"⏰",stopwatch:"⏱️",timer_clock:"⏲️",mantelpiece_clock:"🕰️",clock12:"🕛",clock1230:"🕧",clock1:"🕐",clock130:"🕜",clock2:"🕑",clock230:"🕝",clock3:"🕒",clock330:"🕞",clock4:"🕓",clock430:"🕟",clock5:"🕔",clock530:"🕠",clock6:"🕕",clock630:"🕡",clock7:"🕖",clock730:"🕢",clock8:"🕗",clock830:"🕣",clock9:"🕘",clock930:"🕤",clock10:"🕙",clock1030:"🕥",clock11:"🕚",clock1130:"🕦",new_moon:"🌑",waxing_crescent_moon:"🌒",first_quarter_moon:"🌓",moon:"🌔",waxing_gibbous_moon:"🌔",full_moon:"🌕",waning_gibbous_moon:"🌖",last_quarter_moon:"🌗",waning_crescent_moon:"🌘",crescent_moon:"🌙",new_moon_with_face:"🌚",first_quarter_moon_with_face:"🌛",last_quarter_moon_with_face:"🌜",thermometer:"🌡️",sunny:"☀️",full_moon_with_face:"🌝",sun_with_face:"🌞",ringed_planet:"🪐",star:"⭐",star2:"🌟",stars:"🌠",milky_way:"🌌",cloud:"☁️",partly_sunny:"⛅",cloud_with_lightning_and_rain:"⛈️",sun_behind_small_cloud:"🌤️",sun_behind_large_cloud:"🌥️",sun_behind_rain_cloud:"🌦️",cloud_with_rain:"🌧️",cloud_with_snow:"🌨️",cloud_with_lightning:"🌩️",tornado:"🌪️",fog:"🌫️",wind_face:"🌬️",cyclone:"🌀",rainbow:"🌈",closed_umbrella:"🌂",open_umbrella:"☂️",umbrella:"☔",parasol_on_ground:"⛱️",zap:"⚡",snowflake:"❄️",snowman_with_snow:"☃️",snowman:"⛄",comet:"☄️",fire:"🔥",droplet:"💧",ocean:"🌊",jack_o_lantern:"🎃",christmas_tree:"🎄",fireworks:"🎆",sparkler:"🎇",firecracker:"🧨",sparkles:"✨",balloon:"🎈",tada:"🎉",confetti_ball:"🎊",tanabata_tree:"🎋",bamboo:"🎍",dolls:"🎎",flags:"🎏",wind_chime:"🎐",rice_scene:"🎑",red_envelope:"🧧",ribbon:"🎀",gift:"🎁",reminder_ribbon:"🎗️",tickets:"🎟️",ticket:"🎫",medal_military:"🎖️",trophy:"🏆",medal_sports:"🏅","1st_place_medal":"🥇","2nd_place_medal":"🥈","3rd_place_medal":"🥉",soccer:"⚽",baseball:"⚾",softball:"🥎",basketball:"🏀",volleyball:"🏐",football:"🏈",rugby_football:"🏉",tennis:"🎾",flying_disc:"🥏",bowling:"🎳",cricket_game:"🏏",field_hockey:"🏑",ice_hockey:"🏒",lacrosse:"🥍",ping_pong:"🏓",badminton:"🏸",boxing_glove:"🥊",martial_arts_uniform:"🥋",goal_net:"🥅",golf:"⛳",ice_skate:"⛸️",fishing_pole_and_fish:"🎣",diving_mask:"🤿",running_shirt_with_sash:"🎽",ski:"🎿",sled:"🛷",curling_stone:"🥌",dart:"🎯",yo_yo:"🪀",kite:"🪁","8ball":"🎱",crystal_ball:"🔮",magic_wand:"🪄",nazar_amulet:"🧿",video_game:"🎮",joystick:"🕹️",slot_machine:"🎰",game_die:"🎲",jigsaw:"🧩",teddy_bear:"🧸",pinata:"🪅",nesting_dolls:"🪆",spades:"♠️",hearts:"♥️",diamonds:"♦️",clubs:"♣️",chess_pawn:"♟️",black_joker:"🃏",mahjong:"🀄",flower_playing_cards:"🎴",performing_arts:"🎭",framed_picture:"🖼️",art:"🎨",thread:"🧵",sewing_needle:"🪡",yarn:"🧶",knot:"🪢",eyeglasses:"👓",dark_sunglasses:"🕶️",goggles:"🥽",lab_coat:"🥼",safety_vest:"🦺",necktie:"👔",shirt:"👕",tshirt:"👕",jeans:"👖",scarf:"🧣",gloves:"🧤",coat:"🧥",socks:"🧦",dress:"👗",kimono:"👘",sari:"🥻",one_piece_swimsuit:"🩱",swim_brief:"🩲",shorts:"🩳",bikini:"👙",womans_clothes:"👚",purse:"👛",handbag:"👜",pouch:"👝",shopping:"🛍️",school_satchel:"🎒",thong_sandal:"🩴",mans_shoe:"👞",shoe:"👞",athletic_shoe:"👟",hiking_boot:"🥾",flat_shoe:"🥿",high_heel:"👠",sandal:"👡",ballet_shoes:"🩰",boot:"👢",crown:"👑",womans_hat:"👒",tophat:"🎩",mortar_board:"🎓",billed_cap:"🧢",military_helmet:"🪖",rescue_worker_helmet:"⛑️",prayer_beads:"📿",lipstick:"💄",ring:"💍",gem:"💎",mute:"🔇",speaker:"🔈",sound:"🔉",loud_sound:"🔊",loudspeaker:"📢",mega:"📣",postal_horn:"📯",bell:"🔔",no_bell:"🔕",musical_score:"🎼",musical_note:"🎵",notes:"🎶",studio_microphone:"🎙️",level_slider:"🎚️",control_knobs:"🎛️",microphone:"🎤",headphones:"🎧",radio:"📻",saxophone:"🎷",accordion:"🪗",guitar:"🎸",musical_keyboard:"🎹",trumpet:"🎺",violin:"🎻",banjo:"🪕",drum:"🥁",long_drum:"🪘",iphone:"📱",calling:"📲",phone:"☎️",telephone:"☎️",telephone_receiver:"📞",pager:"📟",fax:"📠",battery:"🔋",electric_plug:"🔌",computer:"💻",desktop_computer:"🖥️",printer:"🖨️",keyboard:"⌨️",computer_mouse:"🖱️",trackball:"🖲️",minidisc:"💽",floppy_disk:"💾",cd:"💿",dvd:"📀",abacus:"🧮",movie_camera:"🎥",film_strip:"🎞️",film_projector:"📽️",clapper:"🎬",tv:"📺",camera:"📷",camera_flash:"📸",video_camera:"📹",vhs:"📼",mag:"🔍",mag_right:"🔎",candle:"🕯️",bulb:"💡",flashlight:"🔦",izakaya_lantern:"🏮",lantern:"🏮",diya_lamp:"🪔",notebook_with_decorative_cover:"📔",closed_book:"📕",book:"📖",open_book:"📖",green_book:"📗",blue_book:"📘",orange_book:"📙",books:"📚",notebook:"📓",ledger:"📒",page_with_curl:"📃",scroll:"📜",page_facing_up:"📄",newspaper:"📰",newspaper_roll:"🗞️",bookmark_tabs:"📑",bookmark:"🔖",label:"🏷️",moneybag:"💰",coin:"🪙",yen:"💴",dollar:"💵",euro:"💶",pound:"💷",money_with_wings:"💸",credit_card:"💳",receipt:"🧾",chart:"💹",envelope:"✉️",email:"📧","e-mail":"📧",incoming_envelope:"📨",envelope_with_arrow:"📩",outbox_tray:"📤",inbox_tray:"📥",package:"📦",mailbox:"📫",mailbox_closed:"📪",mailbox_with_mail:"📬",mailbox_with_no_mail:"📭",postbox:"📮",ballot_box:"🗳️",pencil2:"✏️",black_nib:"✒️",fountain_pen:"🖋️",pen:"🖊️",paintbrush:"🖌️",crayon:"🖍️",memo:"📝",pencil:"📝",briefcase:"💼",file_folder:"📁",open_file_folder:"📂",card_index_dividers:"🗂️",date:"📅",calendar:"📆",spiral_notepad:"🗒️",spiral_calendar:"🗓️",card_index:"📇",chart_with_upwards_trend:"📈",chart_with_downwards_trend:"📉",bar_chart:"📊",clipboard:"📋",pushpin:"📌",round_pushpin:"📍",paperclip:"📎",paperclips:"🖇️",straight_ruler:"📏",triangular_ruler:"📐",scissors:"✂️",card_file_box:"🗃️",file_cabinet:"🗄️",wastebasket:"🗑️",lock:"🔒",unlock:"🔓",lock_with_ink_pen:"🔏",closed_lock_with_key:"🔐",key:"🔑",old_key:"🗝️",hammer:"🔨",axe:"🪓",pick:"⛏️",hammer_and_pick:"⚒️",hammer_and_wrench:"🛠️",dagger:"🗡️",crossed_swords:"⚔️",gun:"🔫",boomerang:"🪃",bow_and_arrow:"🏹",shield:"🛡️",carpentry_saw:"🪚",wrench:"🔧",screwdriver:"🪛",nut_and_bolt:"🔩",gear:"⚙️",clamp:"🗜️",balance_scale:"⚖️",probing_cane:"🦯",link:"🔗",chains:"⛓️",hook:"🪝",toolbox:"🧰",magnet:"🧲",ladder:"🪜",alembic:"⚗️",test_tube:"🧪",petri_dish:"🧫",dna:"🧬",microscope:"🔬",telescope:"🔭",satellite:"📡",syringe:"💉",drop_of_blood:"🩸",pill:"💊",adhesive_bandage:"🩹",stethoscope:"🩺",door:"🚪",elevator:"🛗",mirror:"🪞",window:"🪟",bed:"🛏️",couch_and_lamp:"🛋️",chair:"🪑",toilet:"🚽",plunger:"🪠",shower:"🚿",bathtub:"🛁",mouse_trap:"🪤",razor:"🪒",lotion_bottle:"🧴",safety_pin:"🧷",broom:"🧹",basket:"🧺",roll_of_paper:"🧻",bucket:"🪣",soap:"🧼",toothbrush:"🪥",sponge:"🧽",fire_extinguisher:"🧯",shopping_cart:"🛒",smoking:"🚬",coffin:"⚰️",headstone:"🪦",funeral_urn:"⚱️",moyai:"🗿",placard:"🪧",atm:"🏧",put_litter_in_its_place:"🚮",potable_water:"🚰",wheelchair:"♿",mens:"🚹",womens:"🚺",restroom:"🚻",baby_symbol:"🚼",wc:"🚾",passport_control:"🛂",customs:"🛃",baggage_claim:"🛄",left_luggage:"🛅",warning:"⚠️",children_crossing:"🚸",no_entry:"⛔",no_entry_sign:"🚫",no_bicycles:"🚳",no_smoking:"🚭",do_not_litter:"🚯","non-potable_water":"🚱",no_pedestrians:"🚷",no_mobile_phones:"📵",underage:"🔞",radioactive:"☢️",biohazard:"☣️",arrow_up:"⬆️",arrow_upper_right:"↗️",arrow_right:"➡️",arrow_lower_right:"↘️",arrow_down:"⬇️",arrow_lower_left:"↙️",arrow_left:"⬅️",arrow_upper_left:"↖️",arrow_up_down:"↕️",left_right_arrow:"↔️",leftwards_arrow_with_hook:"↩️",arrow_right_hook:"↪️",arrow_heading_up:"⤴️",arrow_heading_down:"⤵️",arrows_clockwise:"🔃",arrows_counterclockwise:"🔄",back:"🔙",end:"🔚",on:"🔛",soon:"🔜",top:"🔝",place_of_worship:"🛐",atom_symbol:"⚛️",om:"🕉️",star_of_david:"✡️",wheel_of_dharma:"☸️",yin_yang:"☯️",latin_cross:"✝️",orthodox_cross:"☦️",star_and_crescent:"☪️",peace_symbol:"☮️",menorah:"🕎",six_pointed_star:"🔯",aries:"♈",taurus:"♉",gemini:"♊",cancer:"♋",leo:"♌",virgo:"♍",libra:"♎",scorpius:"♏",sagittarius:"♐",capricorn:"♑",aquarius:"♒",pisces:"♓",ophiuchus:"⛎",twisted_rightwards_arrows:"🔀",repeat:"🔁",repeat_one:"🔂",arrow_forward:"▶️",fast_forward:"⏩",next_track_button:"⏭️",play_or_pause_button:"⏯️",arrow_backward:"◀️",rewind:"⏪",previous_track_button:"⏮️",arrow_up_small:"🔼",arrow_double_up:"⏫",arrow_down_small:"🔽",arrow_double_down:"⏬",pause_button:"⏸️",stop_button:"⏹️",record_button:"⏺️",eject_button:"⏏️",cinema:"🎦",low_brightness:"🔅",high_brightness:"🔆",signal_strength:"📶",vibration_mode:"📳",mobile_phone_off:"📴",female_sign:"♀️",male_sign:"♂️",transgender_symbol:"⚧️",heavy_multiplication_x:"✖️",heavy_plus_sign:"➕",heavy_minus_sign:"➖",heavy_division_sign:"➗",infinity:"♾️",bangbang:"‼️",interrobang:"⁉️",question:"❓",grey_question:"❔",grey_exclamation:"❕",exclamation:"❗",heavy_exclamation_mark:"❗",wavy_dash:"〰️",currency_exchange:"💱",heavy_dollar_sign:"💲",medical_symbol:"⚕️",recycle:"♻️",fleur_de_lis:"⚜️",trident:"🔱",name_badge:"📛",beginner:"🔰",o:"⭕",white_check_mark:"✅",ballot_box_with_check:"☑️",heavy_check_mark:"✔️",x:"❌",negative_squared_cross_mark:"❎",curly_loop:"➰",loop:"➿",part_alternation_mark:"〽️",eight_spoked_asterisk:"✳️",eight_pointed_black_star:"✴️",sparkle:"❇️",copyright:"©️",registered:"®️",tm:"™️",hash:"#️⃣",asterisk:"*️⃣",zero:"0️⃣",one:"1️⃣",two:"2️⃣",three:"3️⃣",four:"4️⃣",five:"5️⃣",six:"6️⃣",seven:"7️⃣",eight:"8️⃣",nine:"9️⃣",keycap_ten:"🔟",capital_abcd:"🔠",abcd:"🔡",symbols:"🔣",abc:"🔤",a:"🅰️",ab:"🆎",b:"🅱️",cl:"🆑",cool:"🆒",free:"🆓",information_source:"ℹ️",id:"🆔",m:"Ⓜ️",new:"🆕",ng:"🆖",o2:"🅾️",ok:"🆗",parking:"🅿️",sos:"🆘",up:"🆙",vs:"🆚",koko:"🈁",sa:"🈂️",ideograph_advantage:"🉐",accept:"🉑",congratulations:"㊗️",secret:"㊙️",u6e80:"🈵",red_circle:"🔴",orange_circle:"🟠",yellow_circle:"🟡",green_circle:"🟢",large_blue_circle:"🔵",purple_circle:"🟣",brown_circle:"🟤",black_circle:"⚫",white_circle:"⚪",red_square:"🟥",orange_square:"🟧",yellow_square:"🟨",green_square:"🟩",blue_square:"🟦",purple_square:"🟪",brown_square:"🟫",black_large_square:"⬛",white_large_square:"⬜",black_medium_square:"◼️",white_medium_square:"◻️",black_medium_small_square:"◾",white_medium_small_square:"◽",black_small_square:"▪️",white_small_square:"▫️",large_orange_diamond:"🔶",large_blue_diamond:"🔷",small_orange_diamond:"🔸",small_blue_diamond:"🔹",small_red_triangle:"🔺",small_red_triangle_down:"🔻",diamond_shape_with_a_dot_inside:"💠",radio_button:"🔘",white_square_button:"🔳",black_square_button:"🔲",checkered_flag:"🏁",triangular_flag_on_post:"🚩",crossed_flags:"🎌",black_flag:"🏴",white_flag:"🏳️",rainbow_flag:"🏳️‍🌈",transgender_flag:"🏳️‍⚧️",pirate_flag:"🏴‍☠️",ascension_island:"🇦🇨",andorra:"🇦🇩",united_arab_emirates:"🇦🇪",afghanistan:"🇦🇫",antigua_barbuda:"🇦🇬",anguilla:"🇦🇮",albania:"🇦🇱",armenia:"🇦🇲",angola:"🇦🇴",antarctica:"🇦🇶",argentina:"🇦🇷",american_samoa:"🇦🇸",austria:"🇦🇹",australia:"🇦🇺",aruba:"🇦🇼",aland_islands:"🇦🇽",azerbaijan:"🇦🇿",bosnia_herzegovina:"🇧🇦",barbados:"🇧🇧",bangladesh:"🇧🇩",belgium:"🇧🇪",burkina_faso:"🇧🇫",bulgaria:"🇧🇬",bahrain:"🇧🇭",burundi:"🇧🇮",benin:"🇧🇯",st_barthelemy:"🇧🇱",bermuda:"🇧🇲",brunei:"🇧🇳",bolivia:"🇧🇴",caribbean_netherlands:"🇧🇶",brazil:"🇧🇷",bahamas:"🇧🇸",bhutan:"🇧🇹",bouvet_island:"🇧🇻",botswana:"🇧🇼",belarus:"🇧🇾",belize:"🇧🇿",canada:"🇨🇦",cocos_islands:"🇨🇨",congo_kinshasa:"🇨🇩",central_african_republic:"🇨🇫",congo_brazzaville:"🇨🇬",switzerland:"🇨🇭",cote_divoire:"🇨🇮",cook_islands:"🇨🇰",chile:"🇨🇱",cameroon:"🇨🇲",cn:"🇨🇳",colombia:"🇨🇴",clipperton_island:"🇨🇵",costa_rica:"🇨🇷",cuba:"🇨🇺",cape_verde:"🇨🇻",curacao:"🇨🇼",christmas_island:"🇨🇽",cyprus:"🇨🇾",czech_republic:"🇨🇿",de:"🇩🇪",diego_garcia:"🇩🇬",djibouti:"🇩🇯",denmark:"🇩🇰",dominica:"🇩🇲",dominican_republic:"🇩🇴",algeria:"🇩🇿",ceuta_melilla:"🇪🇦",ecuador:"🇪🇨",estonia:"🇪🇪",egypt:"🇪🇬",western_sahara:"🇪🇭",eritrea:"🇪🇷",es:"🇪🇸",ethiopia:"🇪🇹",eu:"🇪🇺",european_union:"🇪🇺",finland:"🇫🇮",fiji:"🇫🇯",falkland_islands:"🇫🇰",micronesia:"🇫🇲",faroe_islands:"🇫🇴",fr:"🇫🇷",gabon:"🇬🇦",gb:"🇬🇧",uk:"🇬🇧",grenada:"🇬🇩",georgia:"🇬🇪",french_guiana:"🇬🇫",guernsey:"🇬🇬",ghana:"🇬🇭",gibraltar:"🇬🇮",greenland:"🇬🇱",gambia:"🇬🇲",guinea:"🇬🇳",guadeloupe:"🇬🇵",equatorial_guinea:"🇬🇶",greece:"🇬🇷",south_georgia_south_sandwich_islands:"🇬🇸",guatemala:"🇬🇹",guam:"🇬🇺",guinea_bissau:"🇬🇼",guyana:"🇬🇾",hong_kong:"🇭🇰",heard_mcdonald_islands:"🇭🇲",honduras:"🇭🇳",croatia:"🇭🇷",haiti:"🇭🇹",hungary:"🇭🇺",canary_islands:"🇮🇨",indonesia:"🇮🇩",ireland:"🇮🇪",israel:"🇮🇱",isle_of_man:"🇮🇲",india:"🇮🇳",british_indian_ocean_territory:"🇮🇴",iraq:"🇮🇶",iran:"🇮🇷",iceland:"🇮🇸",it:"🇮🇹",jersey:"🇯🇪",jamaica:"🇯🇲",jordan:"🇯🇴",jp:"🇯🇵",kenya:"🇰🇪",kyrgyzstan:"🇰🇬",cambodia:"🇰🇭",kiribati:"🇰🇮",comoros:"🇰🇲",st_kitts_nevis:"🇰🇳",north_korea:"🇰🇵",kr:"🇰🇷",kuwait:"🇰🇼",cayman_islands:"🇰🇾",kazakhstan:"🇰🇿",laos:"🇱🇦",lebanon:"🇱🇧",st_lucia:"🇱🇨",liechtenstein:"🇱🇮",sri_lanka:"🇱🇰",liberia:"🇱🇷",lesotho:"🇱🇸",lithuania:"🇱🇹",luxembourg:"🇱🇺",latvia:"🇱🇻",libya:"🇱🇾",morocco:"🇲🇦",monaco:"🇲🇨",moldova:"🇲🇩",montenegro:"🇲🇪",st_martin:"🇲🇫",madagascar:"🇲🇬",marshall_islands:"🇲🇭",macedonia:"🇲🇰",mali:"🇲🇱",myanmar:"🇲🇲",mongolia:"🇲🇳",macau:"🇲🇴",northern_mariana_islands:"🇲🇵",martinique:"🇲🇶",mauritania:"🇲🇷",montserrat:"🇲🇸",malta:"🇲🇹",mauritius:"🇲🇺",maldives:"🇲🇻",malawi:"🇲🇼",mexico:"🇲🇽",malaysia:"🇲🇾",mozambique:"🇲🇿",namibia:"🇳🇦",new_caledonia:"🇳🇨",niger:"🇳🇪",norfolk_island:"🇳🇫",nigeria:"🇳🇬",nicaragua:"🇳🇮",netherlands:"🇳🇱",norway:"🇳🇴",nepal:"🇳🇵",nauru:"🇳🇷",niue:"🇳🇺",new_zealand:"🇳🇿",oman:"🇴🇲",panama:"🇵🇦",peru:"🇵🇪",french_polynesia:"🇵🇫",papua_new_guinea:"🇵🇬",philippines:"🇵🇭",pakistan:"🇵🇰",poland:"🇵🇱",st_pierre_miquelon:"🇵🇲",pitcairn_islands:"🇵🇳",puerto_rico:"🇵🇷",palestinian_territories:"🇵🇸",portugal:"🇵🇹",palau:"🇵🇼",paraguay:"🇵🇾",qatar:"🇶🇦",reunion:"🇷🇪",romania:"🇷🇴",serbia:"🇷🇸",ru:"🇷🇺",rwanda:"🇷🇼",saudi_arabia:"🇸🇦",solomon_islands:"🇸🇧",seychelles:"🇸🇨",sudan:"🇸🇩",sweden:"🇸🇪",singapore:"🇸🇬",st_helena:"🇸🇭",slovenia:"🇸🇮",svalbard_jan_mayen:"🇸🇯",slovakia:"🇸🇰",sierra_leone:"🇸🇱",san_marino:"🇸🇲",senegal:"🇸🇳",somalia:"🇸🇴",suriname:"🇸🇷",south_sudan:"🇸🇸",sao_tome_principe:"🇸🇹",el_salvador:"🇸🇻",sint_maarten:"🇸🇽",syria:"🇸🇾",swaziland:"🇸🇿",tristan_da_cunha:"🇹🇦",turks_caicos_islands:"🇹🇨",chad:"🇹🇩",french_southern_territories:"🇹🇫",togo:"🇹🇬",thailand:"🇹🇭",tajikistan:"🇹🇯",tokelau:"🇹🇰",timor_leste:"🇹🇱",turkmenistan:"🇹🇲",tunisia:"🇹🇳",tonga:"🇹🇴",tr:"🇹🇷",trinidad_tobago:"🇹🇹",tuvalu:"🇹🇻",taiwan:"🇹🇼",tanzania:"🇹🇿",ukraine:"🇺🇦",uganda:"🇺🇬",us_outlying_islands:"🇺🇲",united_nations:"🇺🇳",us:"🇺🇸",uruguay:"🇺🇾",uzbekistan:"🇺🇿",vatican_city:"🇻🇦",st_vincent_grenadines:"🇻🇨",venezuela:"🇻🇪",british_virgin_islands:"🇻🇬",us_virgin_islands:"🇻🇮",vietnam:"🇻🇳",vanuatu:"🇻🇺",wallis_futuna:"🇼🇫",samoa:"🇼🇸",kosovo:"🇽🇰",yemen:"🇾🇪",mayotte:"🇾🇹",south_africa:"🇿🇦",zambia:"🇿🇲",zimbabwe:"🇿🇼",england:"🏴󠁧󠁢󠁥󠁮󠁧󠁿",scotland:"🏴󠁧󠁢󠁳󠁣󠁴󠁿",wales:"🏴󠁧󠁢󠁷󠁬󠁳󠁿"};Object.keys(J).reduce((e,t)=>{const n=J[t];return e[n]=t,e},{});const Jn=Object.keys(J).map(e=>e);Object.keys(J).map(e=>J[e]);function Qn(e){return Jn.filter(t=>t.startsWith(e)).map(t=>({name:t,emoji:J[t]}))}const ei=200,ti=new w.PluginKey("emoji"),ni=g.Node.create({name:"emoji",content:"text*",priority:ei,addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),HTMLAttributes:{},suggestion:{char:":",pluginKey:ti,command:({editor:t,range:n,props:i})=>{t.chain().focus().insertContentAt(n,`${i.emoji} `).run()}},button:({editor:t,t:n})=>({component:Yn,componentProps:{editor:t,action:()=>{},isActive:()=>!1,disabled:!1,icon:"EmojiIcon",tooltip:n("editor.emoji.tooltip")}})}},addCommands(){return{setEmoji:e=>({commands:t})=>t.insertContent(`${e.emoji} `)}},addProseMirrorPlugins(){return[g.Suggestion({editor:this.editor,...this.options.suggestion})]}}).configure({suggestion:{items:({query:e})=>Qn(e),render:()=>{let e,t,n;return{onStart:i=>{n=i.editor.isEditable,n&&(e=new g.ReactRenderer(qe,{props:i,editor:i.editor}),t=xe("body",{getReferenceClientRect:i.clientRect,appendTo:()=>document.body,content:e.element,showOnCreate:!0,interactive:!0,trigger:"manual",placement:"bottom-start"}))},onUpdate(i){n&&(e.updateProps(i),t[0].setProps({getReferenceClientRect:i.clientRect}))},onKeyDown(i){var a;if(n)return i.event.key==="Escape"?(t[0].hide(),!0):(a=e.ref)==null?void 0:a.onKeyDown(i)},onExit(){n&&(t[0].destroy(),e.destroy())}}}}});function ii(e){const t=document.createElement("iframe");t.setAttribute("style","position: absolute; width: 0; height: 0; top: 0; left: 0;"),document.body.appendChild(t),t.textContent=`
2
2
  <!DOCTYPE html>
3
3
  <html lang="en">
4
4
  <head>
@@ -12,7 +12,7 @@
12
12
  </div>
13
13
  </body>
14
14
  </html>
15
- `;const n=t.contentWindow,i=t.contentDocument||t.contentWindow&&t.contentWindow.document,a=document.createElement("link");a.rel="stylesheet",a.href="https://cdn.jsdelivr.net/npm/reactjs-tiptap-editor@latest/lib/style.css",i.head.appendChild(a),i&&(i.open(),i.write(e),i.close()),n&&t.addEventListener("load",function(){try{setTimeout(()=>{n.focus();try{n.document.execCommand("print",!1)||n.print()}catch{n.print()}n.close()},10)}catch(r){console.error(r)}setTimeout(()=>{document.body.removeChild(t)},100)})}function oi(e){const t=e.getHTML();return t?(ii(t),!0):!1}const ai=f.Extension.create({name:"exportPdf",addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),button:({editor:t,t:n})=>({component:s.ActionButton,componentProps:{action:()=>{oi(t)},icon:"ExportPdf",tooltip:n("editor.exportPdf.tooltip"),isActive:()=>!1,disabled:!1}})}}});function ri(e,t){const n=atob(e.split(",")[1]),i=Array.from({length:n.length});for(let r=0;r<n.length;r++)i[r]=n.charCodeAt(r);const a=new Uint8Array(i);return new Blob([a],{type:t})}function si(e,t){return new File([e],t,{type:e.type})}function ci(e){const{toast:t}=s.useToast(),{t:n}=p.useLocale(),[i,a]=m.useState(!1),r=m.useRef(null);function c(){var x;(x=r.current)==null||x.click()}function l(x){const g=x.target.files[0];if(g){if(g.size>e.limit){t({variant:"destructive",title:n("editor.importWord.limitSize")});return}h(g)}}async function d(x){var T;const _=new DOMParser().parseFromString(x,"text/html"),y=_.querySelectorAll("img");if(y.length===0)return _.body.innerHTML;if(s.hasExtension(e.editor,"image")){const L=(T=e.editor.extensionManager.extensions.find(j=>j.name==="importWord"))==null?void 0:T.options;if(L&&typeof L.upload=="function"){const j=[];for(const k of y){const A=k.getAttribute("src"),N=ri(A,"image/jpeg"),E=si(N,"image.jpeg");j.push(E)}const b=await L.upload(j);for(const[k,A]of y.entries()){A.setAttribute("src",b[k].src);const N=A.parentElement;(N==null?void 0:N.tagName)==="P"&&(N.insertAdjacentElement("beforebegin",A),!N.hasChildNodes()&&N.textContent===""&&N.remove())}return _.body.innerHTML}else return console.warn("Image Upload method found, skip image conversion"),_.body.innerHTML}else return console.error("Image extension not found, unable to convert image"),_.body.innerHTML}async function h(x){a(!0);try{if(e.convert){const g=await e.convert(x);u(g)}else{const g=await x.arrayBuffer(),{value:_}=await w.mammoth.convertToHtml({arrayBuffer:g},e==null?void 0:e.mammothOptions);u(_)}}finally{a(!1)}}async function u(x){const g=await d(x);e.editor.chain().setContent(g,!0).run()}return o.jsxs("div",{children:[o.jsx(s.ActionButton,{action:c,disabled:e==null?void 0:e.disabled,icon:e==null?void 0:e.icon,loading:i,tooltip:e==null?void 0:e.tooltip}),o.jsx("input",{accept:".docx",onChange:l,ref:r,type:"file",style:{display:"none"}})]})}const li=f.Extension.create({name:"importWord",addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),upload:void 0,convert:void 0,limit:1024*1024*10,button:({editor:t,extension:n,t:i})=>{const{convert:a,limit:r,mammothOptions:c}=n.options;return{component:ci,componentProps:{editor:t,convert:a,limit:r,mammothOptions:c,action:()=>t.commands.setHorizontalRule(),disabled:!t.can().setHorizontalRule(),icon:"Word",shortcutKeys:["alt","mod","S"],tooltip:i("editor.importWord.tooltip")}}}}}}),di=typeof window<"u";function ui(e,t){if(di){const n=window.URL.createObjectURL(e),i=document.createElement("a");return i.href=n,i.download=t,i.click(),window.URL.revokeObjectURL(n),Promise.resolve()}return console.error("Download is not supported in Node.js"),Promise.resolve()}const hi={...U.defaultNodes,hardBreak:U.defaultNodes.hard_break,codeBlock:U.defaultNodes.code_block,orderedList:U.defaultNodes.ordered_list,listItem:U.defaultNodes.list_item,bulletList:U.defaultNodes.bullet_list,horizontalRule:U.defaultNodes.horizontal_rule,image(e,t){e.renderInline(t),e.closeBlock(t)},table(e,t){e.table(t,{tableOptions:{width:{size:100,type:Se.WidthType.PERCENTAGE}}})}},mi=new U.DocxSerializer(hi,U.defaultMarks),fi=f.Extension.create({name:"exportWord",addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),button:({editor:t,t:n})=>({component:s.ActionButton,componentProps:{icon:"ExportWord",action:()=>{t==null||t.commands.exportToWord()},tooltip:n("editor.exportWord.tooltip"),isActive:()=>!1,disabled:!1}})}},addCommands(){return{exportToWord:()=>async({editor:e})=>{const t={getImageBuffer:async i=>{const r=await(await fetch(i)).arrayBuffer();return new Uint8Array(r)}},n=mi.serialize(e.state.doc,t);return Se.Packer.toBlob(n).then(i=>ui(new Blob([i]),"export-document.docx")),!0}}}}),gi="_toc_aag8a_1",_i="_visible_aag8a_7",xi="_list_aag8a_11",bi="_item_aag8a_16",re={toc:gi,visible:_i,list:xi,item:bi};function pi(e){const t=[],n=[t];return e.forEach(i=>{let a=-1,r=n[i.level+a];for(;!r;)a-=1,r=n[i.level+a];r.push({...i,children:n[i.level]=[]})}),t}function wi({editor:e}){const t=s.useEditableEditor(),[n,i]=m.useState([]),{t:a}=p.useLocale(),r=m.useCallback(()=>{const c=[],l=e.state.tr;e.state.doc.descendants((d,h)=>{if(d.type.name==="heading"){const u=`heading-${c.length+1}`;d.attrs.id!==u&&l.setNodeMarkup(h,void 0,{...d.attrs,id:u}),c.push({level:d.attrs.level,text:d.textContent,id:u})}}),l.setMeta("addToHistory",!1),l.setMeta("preventUpdate",!0),e.view.dispatch(l),i(c),e.eventEmitter&&e.eventEmitter.emit("TableOfContents",pi(c))},[e]);return m.useEffect(()=>{if(e){if(!e.options.editable){r();return}return e.on("update",r),()=>{e.off("update",r)}}},[e,r]),m.useEffect(()=>{r()},[]),o.jsx(f.NodeViewWrapper,{className:w.clsx("tableOfContent",re.toc,t&&re.visible),children:t?o.jsxs("div",{style:{position:"relative"},children:[o.jsx("p",{className:"text-[20px] richtext-mb-[8px] richtext-font-semibold",children:a("editor.table_of_content")}),o.jsx("ul",{className:re.list,children:n.map((c,l)=>o.jsx("li",{className:re.item,style:{paddingLeft:`${c.level-1}rem`},children:o.jsx("a",{href:`#${c.id}`,children:c.text})},`table-of-content-${l}`))})]}):null})}function yi(e,...t){const[n,i]=m.useState(!1);return m.useEffect(()=>{const a=()=>{i(e.isActive.apply(e,t))};return e.on("selectionUpdate",a),e.on("transaction",a),()=>{e.off("selectionUpdate",a),e.off("transaction",a)}},[e,t,i]),n}function vi({editor:e,icon:t,tooltip:n}){const i=yi(e,$e.name),a=m.useCallback(()=>{if(i){e.chain().focus().removeTableOfContents().run();return}e.chain().focus().setTableOfContents().run()},[e,i]);return o.jsx(s.ActionButton,{action:a,isActive:()=>i||!1,icon:t,tooltip:n})}function ki(e){return e&&e.type.name==="title"}function ji(e,t){const i=[e.getJSON()],a=[];for(;i.length>0;){const r=i.shift();r.type===t&&a.push(r),r.content&&r.content.length>0&&i.push(...r.content)}return a}const $e=f.Node.create({name:"tableOfContents",group:"block",atom:!0,addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),onHasOneBeforeInsert:()=>{},resizable:!0,lastColumnResizable:!0,allowTableNodeSelection:!1,button:({editor:t,t:n})=>({component:vi,componentProps:{disabled:!1,icon:"BookMarked",tooltip:n("editor.table.tooltip"),editor:t}})}},parseHTML(){return[{tag:"toc"}]},renderHTML({HTMLAttributes:e}){return["toc",f.mergeAttributes(e)]},addNodeView(){return f.ReactNodeViewRenderer(wi)},addCommands(){return{setTableOfContents:()=>({commands:e,editor:t,view:n})=>{if(ji(t,this.name).length>0){this.options.onHasOneBeforeInsert();return}const a=n.props.state.doc.content.firstChild;if(ki(a)){const r=(a.firstChild&&a.firstChild.nodeSize||0)+1;return e.insertContentAt(r,{type:this.name})}return e.insertContent({type:this.name})},removeTableOfContents:()=>({state:e,dispatch:t})=>{const{tr:n}=e,i=e.schema.nodes.tableOfContents;return e.doc.descendants((a,r)=>{if(a.type===i){const c=r,l=r+a.nodeSize;n.delete(c,l)}}),n.docChanged?(t(n),!0):!1}}},addGlobalAttributes(){return[{types:["heading"],attributes:{id:{default:null}}}]}});function Ci(e){var n;const t=m.useMemo(()=>{var r;const i=(r=e==null?void 0:e.items)==null?void 0:r.find(c=>c.isActive());return i&&!i.default?{...i,icon:i.icon?i.icon:e.icon}:{title:e==null?void 0:e.tooltip,icon:e.icon,isActive:()=>!1}},[e]);return o.jsxs(s.Popover,{modal:!0,children:[o.jsx(s.PopoverTrigger,{asChild:!0,disabled:e==null?void 0:e.disabled,children:o.jsx(s.ActionButton,{customClass:"!richtext-w-12 richtext-h-12",disabled:e==null?void 0:e.disabled,icon:e==null?void 0:e.icon,tooltip:e==null?void 0:e.tooltip,children:o.jsx(s.IconComponent,{className:"richtext-ml-1 richtext-size-3 richtext-text-zinc-500",name:"MenuDown"})})}),o.jsx(s.PopoverContent,{align:"start",className:"richtext-flex richtext-w-full richtext-min-w-4 richtext-flex-row richtext-gap-1 !richtext-p-[4px]",side:"bottom",children:(n=e==null?void 0:e.items)==null?void 0:n.map((i,a)=>{var r,c;return o.jsxs(s.Tooltip,{children:[o.jsx(s.TooltipTrigger,{asChild:!0,children:o.jsx(s.Toggle,{className:"richtext-size-7 richtext-p-1","data-state":t.title===i.title?"on":"off",onClick:i==null?void 0:i.action,pressed:t.title===i.title,size:"sm",children:(i==null?void 0:i.icon)&&o.jsx(s.IconComponent,{name:i.icon})})}),o.jsxs(s.TooltipContent,{className:"richtext-flex richtext-flex-col richtext-items-center",children:[o.jsx("span",{children:i.title}),!!((r=i.shortcutKeys)!=null&&r.length)&&o.jsx("span",{children:(c=i.shortcutKeys)==null?void 0:c.map(l=>s.getShortcutKey(l)).join(" ")})]})]},`text-align-${a}`)})})]})}const Ai=f.Extension.create({name:"text-direction",addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),types:["heading","paragraph"],directions:["auto","ltr","rtl"],defaultDirection:"auto",button({editor:t,extension:n,t:i}){var d;const a=((d=n.options)==null?void 0:d.directions)||[],r={auto:"TextDirection",ltr:"LeftToRight",rtl:"RightToLeft"},c=a.map(h=>({title:i(`editor.textDirection.${h}.tooltip`),icon:r[h],isActive:()=>!1,action:()=>{var u,x,g,_;if(h==="auto"){(x=(u=t.commands)==null?void 0:u.unsetTextDirection)==null||x.call(u);return}(_=(g=t.commands)==null?void 0:g.setTextDirection)==null||_.call(g,h)},disabled:!1})),l=c.filter(h=>h.disabled).length===c.length;return{component:Ci,componentProps:{icon:"TextDirection",tooltip:i("editor.textDirection.tooltip"),disabled:l,items:c}}}}},addGlobalAttributes(){return[{types:this.options.types,attributes:{dir:{default:this.options.defaultDirection,parseHTML:e=>e.attributes.dir&&this.options.directions.includes(e.attributes.dir)?e.attributes.dir.value:this.options.defaultDirection,renderHTML:e=>({dir:e.dir})}}}]},addCommands(){return{setTextDirection:e=>({commands:t})=>this.options.directions.includes(e)?this.options.types.every(n=>t.updateAttributes(n,{dir:e})):!1,unsetTextDirection:()=>({commands:e})=>this.options.types.every(t=>e.resetAttributes(t,"dir"))}}}),Ti="_listUsers_en3pm_1",Ni="_itemUser_en3pm_10",Si="_selectedUser_en3pm_31",se={listUsers:Ti,itemUser:Ni,selectedUser:Si},Li=m.forwardRef((e,t)=>{const n=m.useRef(null),[i,a]=m.useState(0),r=h=>{const u=e.items[h];u&&e.command({id:u,label:u})},c=()=>{a((i+e.items.length-1)%e.items.length)},l=()=>{a((i+1)%e.items.length)},d=()=>{r(i)};return m.useEffect(()=>a(0),[e.items]),m.useEffect(()=>{if(Number.isNaN(i+1))return;const h=n.current.querySelector(`span:nth-of-type(${i+1})`);h&&be(h,{behavior:"smooth",scrollMode:"if-needed"})},[i]),m.useImperativeHandle(t,()=>({onKeyDown:({event:h})=>h.key==="ArrowUp"?(c(),!0):h.key==="ArrowDown"?(l(),!0):h.key==="Enter"?(d(),!0):!1})),o.jsx("div",{className:w.clsx("listUsers",se.listUsers),children:o.jsx("div",{ref:n,children:e.items.length>0?e.items.map((h,u)=>o.jsx("span",{className:w.clsx("itemUser",se.itemUser,u===i?se.selectedUser:""),onClick:()=>r(u),children:h},u)):o.jsx("div",{className:w.clsx("itemUserEmpty",se.itemUser),children:"Empty"})})})}),Ei=[{id:"1",name:"John Doe"},{id:"2",name:"Jane Doe"},{id:"3",name:"Alice"},{id:"4",name:"Bob"}],Ii={items:async({query:e})=>Ei.map(n=>n.name).filter(n=>n.toLowerCase().startsWith(e.toLowerCase())),render:()=>{let e,t;return{onStart:n=>{e=new f.ReactRenderer(Li,{props:n,editor:n.editor}),t=xe("body",{getReferenceClientRect:n.clientRect,appendTo:()=>document.body,content:e.element,showOnCreate:!0,interactive:!0,trigger:"manual",placement:"bottom-start"})},onUpdate(n){e.updateProps(n),t[0].setProps({getReferenceClientRect:n.clientRect})},onKeyDown(n){var i;return n.event.key==="Escape"?(t[0].hide(),!0):(i=e.ref)==null?void 0:i.onKeyDown(n)},onExit(){t[0].destroy(),e.destroy()}}}},Mi=f.Mention.extend({addAttributes(){return{id:{default:"",parseHTML:s.getDatasetAttribute("id")},label:{default:"",parseHTML:s.getDatasetAttribute("label")}}}}).configure({HTMLAttributes:{class:"mention"},suggestion:Ii}),Di={audio:'<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-audio-lines"><path d="M2 10v3"/><path d="M6 6v11"/><path d="M10 3v18"/><path d="M14 8v7"/><path d="M18 5v13"/><path d="M22 10v3"/></svg>',video:'<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-video"><path d="m16 13 5.223 3.482a.5.5 0 0 0 .777-.416V7.87a.5.5 0 0 0-.752-.432L16 10.5"/><rect x="2" y="6" width="14" height="12" rx="2"/></svg>',file:'<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-file"><path d="M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z"/><path d="M14 2v4a2 2 0 0 0 2 2h4"/></svg>',image:'<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-image"><rect width="18" height="18" x="3" y="3" rx="2" ry="2"/><circle cx="9" cy="9" r="2"/><path d="m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21"/></svg>',pdf:`<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 32 32">
15
+ `;const n=t.contentWindow,i=t.contentDocument||t.contentWindow&&t.contentWindow.document,a=document.createElement("link");a.rel="stylesheet",a.href="https://cdn.jsdelivr.net/npm/reactjs-tiptap-editor@latest/lib/style.css",i.head.appendChild(a),i&&(i.open(),i.write(e),i.close()),n&&t.addEventListener("load",function(){try{setTimeout(()=>{n.focus();try{n.document.execCommand("print",!1)||n.print()}catch{n.print()}n.close()},10)}catch(r){console.error(r)}setTimeout(()=>{document.body.removeChild(t)},100)})}function oi(e){const t=e.getHTML();return t?(ii(t),!0):!1}const ai=g.Extension.create({name:"exportPdf",addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),button:({editor:t,t:n})=>({component:s.ActionButton,componentProps:{action:()=>{oi(t)},icon:"ExportPdf",tooltip:n("editor.exportPdf.tooltip"),isActive:()=>!1,disabled:!1}})}}});function ri(e,t){const n=atob(e.split(",")[1]),i=Array.from({length:n.length});for(let r=0;r<n.length;r++)i[r]=n.charCodeAt(r);const a=new Uint8Array(i);return new Blob([a],{type:t})}function si(e,t){return new File([e],t,{type:e.type})}function ci(e){const{toast:t}=s.useToast(),{t:n}=p.useLocale(),[i,a]=m.useState(!1),r=m.useRef(null);function c(){var x;(x=r.current)==null||x.click()}function l(x){const _=x.target.files[0];if(_){if(_.size>e.limit){t({variant:"destructive",title:n("editor.importWord.limitSize")});return}h(_)}}async function d(x){var T;const f=new DOMParser().parseFromString(x,"text/html"),y=f.querySelectorAll("img");if(y.length===0)return f.body.innerHTML;if(s.hasExtension(e.editor,"image")){const E=(T=e.editor.extensionManager.extensions.find(k=>k.name==="importWord"))==null?void 0:T.options;if(E&&typeof E.upload=="function"){const k=[];for(const j of y){const A=j.getAttribute("src"),N=ri(A,"image/jpeg"),L=si(N,"image.jpeg");k.push(L)}const b=await E.upload(k);for(const[j,A]of y.entries()){A.setAttribute("src",b[j].src);const N=A.parentElement;(N==null?void 0:N.tagName)==="P"&&(N.insertAdjacentElement("beforebegin",A),!N.hasChildNodes()&&N.textContent===""&&N.remove())}return f.body.innerHTML}else return console.warn("Image Upload method found, skip image conversion"),f.body.innerHTML}else return console.error("Image extension not found, unable to convert image"),f.body.innerHTML}async function h(x){a(!0);try{if(e.convert){const _=await e.convert(x);u(_)}else{const _=await x.arrayBuffer(),{value:f}=await w.mammoth.convertToHtml({arrayBuffer:_},e==null?void 0:e.mammothOptions);u(f)}}finally{a(!1)}}async function u(x){const _=await d(x);e.editor.chain().setContent(_,!0).run()}return o.jsxs("div",{children:[o.jsx(s.ActionButton,{action:c,disabled:e==null?void 0:e.disabled,icon:e==null?void 0:e.icon,loading:i,tooltip:e==null?void 0:e.tooltip}),o.jsx("input",{accept:".docx",onChange:l,ref:r,type:"file",style:{display:"none"}})]})}const li=g.Extension.create({name:"importWord",addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),upload:void 0,convert:void 0,limit:1024*1024*10,button:({editor:t,extension:n,t:i})=>{const{convert:a,limit:r,mammothOptions:c}=n.options;return{component:ci,componentProps:{editor:t,convert:a,limit:r,mammothOptions:c,action:()=>t.commands.setHorizontalRule(),disabled:!t.can().setHorizontalRule(),icon:"Word",shortcutKeys:["alt","mod","S"],tooltip:i("editor.importWord.tooltip")}}}}}}),di=typeof window<"u";function ui(e,t){if(di){const n=window.URL.createObjectURL(e),i=document.createElement("a");return i.href=n,i.download=t,i.click(),window.URL.revokeObjectURL(n),Promise.resolve()}return console.error("Download is not supported in Node.js"),Promise.resolve()}const hi={...U.defaultNodes,hardBreak:U.defaultNodes.hard_break,codeBlock:U.defaultNodes.code_block,orderedList:U.defaultNodes.ordered_list,listItem:U.defaultNodes.list_item,bulletList:U.defaultNodes.bullet_list,horizontalRule:U.defaultNodes.horizontal_rule,image(e,t){e.renderInline(t),e.closeBlock(t)},table(e,t){e.table(t,{tableOptions:{width:{size:100,type:Se.WidthType.PERCENTAGE}}})}},mi=new U.DocxSerializer(hi,U.defaultMarks),fi=g.Extension.create({name:"exportWord",addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),button:({editor:t,t:n})=>({component:s.ActionButton,componentProps:{icon:"ExportWord",action:()=>{t==null||t.commands.exportToWord()},tooltip:n("editor.exportWord.tooltip"),isActive:()=>!1,disabled:!1}})}},addCommands(){return{exportToWord:()=>async({editor:e})=>{const t={getImageBuffer:async i=>{const r=await(await fetch(i)).arrayBuffer();return new Uint8Array(r)}},n=mi.serialize(e.state.doc,t);return Se.Packer.toBlob(n).then(i=>ui(new Blob([i]),"export-document.docx")),!0}}}}),gi="_toc_aag8a_1",_i="_visible_aag8a_7",xi="_list_aag8a_11",bi="_item_aag8a_16",re={toc:gi,visible:_i,list:xi,item:bi};function pi(e){const t=[],n=[t];return e.forEach(i=>{let a=-1,r=n[i.level+a];for(;!r;)a-=1,r=n[i.level+a];r.push({...i,children:n[i.level]=[]})}),t}function wi({editor:e}){const t=s.useEditableEditor(),[n,i]=m.useState([]),{t:a}=p.useLocale(),r=m.useCallback(()=>{const c=[],l=e.state.tr;e.state.doc.descendants((d,h)=>{if(d.type.name==="heading"){const u=`heading-${c.length+1}`;d.attrs.id!==u&&l.setNodeMarkup(h,void 0,{...d.attrs,id:u}),c.push({level:d.attrs.level,text:d.textContent,id:u})}}),l.setMeta("addToHistory",!1),l.setMeta("preventUpdate",!0),e.view.dispatch(l),i(c),e.eventEmitter&&e.eventEmitter.emit("TableOfContents",pi(c))},[e]);return m.useEffect(()=>{if(e){if(!e.options.editable){r();return}return e.on("update",r),()=>{e.off("update",r)}}},[e,r]),m.useEffect(()=>{r()},[]),o.jsx(g.NodeViewWrapper,{className:w.clsx("tableOfContent",re.toc,t&&re.visible),children:t?o.jsxs("div",{style:{position:"relative"},children:[o.jsx("p",{className:"text-[20px] richtext-mb-[8px] richtext-font-semibold",children:a("editor.table_of_content")}),o.jsx("ul",{className:re.list,children:n.map((c,l)=>o.jsx("li",{className:re.item,style:{paddingLeft:`${c.level-1}rem`},children:o.jsx("a",{href:`#${c.id}`,children:c.text})},`table-of-content-${l}`))})]}):null})}function yi(e,...t){const[n,i]=m.useState(!1);return m.useEffect(()=>{const a=()=>{i(e.isActive.apply(e,t))};return e.on("selectionUpdate",a),e.on("transaction",a),()=>{e.off("selectionUpdate",a),e.off("transaction",a)}},[e,t,i]),n}function vi({editor:e,icon:t,tooltip:n}){const i=yi(e,$e.name),a=m.useCallback(()=>{if(i){e.chain().focus().removeTableOfContents().run();return}e.chain().focus().setTableOfContents().run()},[e,i]);return o.jsx(s.ActionButton,{action:a,isActive:()=>i||!1,icon:t,tooltip:n})}function ki(e){return e&&e.type.name==="title"}function ji(e,t){const i=[e.getJSON()],a=[];for(;i.length>0;){const r=i.shift();r.type===t&&a.push(r),r.content&&r.content.length>0&&i.push(...r.content)}return a}const $e=g.Node.create({name:"tableOfContents",group:"block",atom:!0,addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),onHasOneBeforeInsert:()=>{},resizable:!0,lastColumnResizable:!0,allowTableNodeSelection:!1,button:({editor:t,t:n})=>({component:vi,componentProps:{disabled:!1,icon:"BookMarked",tooltip:n("editor.table.tooltip"),editor:t}})}},parseHTML(){return[{tag:"toc"}]},renderHTML({HTMLAttributes:e}){return["toc",g.mergeAttributes(e)]},addNodeView(){return g.ReactNodeViewRenderer(wi)},addCommands(){return{setTableOfContents:()=>({commands:e,editor:t,view:n})=>{if(ji(t,this.name).length>0){this.options.onHasOneBeforeInsert();return}const a=n.props.state.doc.content.firstChild;if(ki(a)){const r=(a.firstChild&&a.firstChild.nodeSize||0)+1;return e.insertContentAt(r,{type:this.name})}return e.insertContent({type:this.name})},removeTableOfContents:()=>({state:e,dispatch:t})=>{const{tr:n}=e,i=e.schema.nodes.tableOfContents;return e.doc.descendants((a,r)=>{if(a.type===i){const c=r,l=r+a.nodeSize;n.delete(c,l)}}),n.docChanged?(t(n),!0):!1}}},addGlobalAttributes(){return[{types:["heading"],attributes:{id:{default:null}}}]}});function Ci(e){var n;const t=m.useMemo(()=>{var r;const i=(r=e==null?void 0:e.items)==null?void 0:r.find(c=>c.isActive());return i&&!i.default?{...i,icon:i.icon?i.icon:e.icon}:{title:e==null?void 0:e.tooltip,icon:e.icon,isActive:()=>!1}},[e]);return o.jsxs(s.Popover,{modal:!0,children:[o.jsx(s.PopoverTrigger,{asChild:!0,disabled:e==null?void 0:e.disabled,children:o.jsx(s.ActionButton,{customClass:"!richtext-w-12 richtext-h-12",disabled:e==null?void 0:e.disabled,icon:e==null?void 0:e.icon,tooltip:e==null?void 0:e.tooltip,children:o.jsx(s.IconComponent,{className:"richtext-ml-1 richtext-size-3 richtext-text-zinc-500",name:"MenuDown"})})}),o.jsx(s.PopoverContent,{align:"start",className:"richtext-flex richtext-w-full richtext-min-w-4 richtext-flex-row richtext-gap-1 !richtext-p-[4px]",side:"bottom",children:(n=e==null?void 0:e.items)==null?void 0:n.map((i,a)=>{var r,c;return o.jsxs(s.Tooltip,{children:[o.jsx(s.TooltipTrigger,{asChild:!0,children:o.jsx(s.Toggle,{className:"richtext-size-7 richtext-p-1","data-state":t.title===i.title?"on":"off",onClick:i==null?void 0:i.action,pressed:t.title===i.title,size:"sm",children:(i==null?void 0:i.icon)&&o.jsx(s.IconComponent,{name:i.icon})})}),o.jsxs(s.TooltipContent,{className:"richtext-flex richtext-flex-col richtext-items-center",children:[o.jsx("span",{children:i.title}),!!((r=i.shortcutKeys)!=null&&r.length)&&o.jsx("span",{children:(c=i.shortcutKeys)==null?void 0:c.map(l=>s.getShortcutKey(l)).join(" ")})]})]},`text-align-${a}`)})})]})}const Ai=g.Extension.create({name:"text-direction",addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),types:["heading","paragraph"],directions:["auto","ltr","rtl"],defaultDirection:"auto",button({editor:t,extension:n,t:i}){var d;const a=((d=n.options)==null?void 0:d.directions)||[],r={auto:"TextDirection",ltr:"LeftToRight",rtl:"RightToLeft"},c=a.map(h=>({title:i(`editor.textDirection.${h}.tooltip`),icon:r[h],isActive:()=>!1,action:()=>{var u,x,_,f;if(h==="auto"){(x=(u=t.commands)==null?void 0:u.unsetTextDirection)==null||x.call(u);return}(f=(_=t.commands)==null?void 0:_.setTextDirection)==null||f.call(_,h)},disabled:!1})),l=c.filter(h=>h.disabled).length===c.length;return{component:Ci,componentProps:{icon:"TextDirection",tooltip:i("editor.textDirection.tooltip"),disabled:l,items:c}}}}},addGlobalAttributes(){return[{types:this.options.types,attributes:{dir:{default:this.options.defaultDirection,parseHTML:e=>e.attributes.dir&&this.options.directions.includes(e.attributes.dir)?e.attributes.dir.value:this.options.defaultDirection,renderHTML:e=>({dir:e.dir})}}}]},addCommands(){return{setTextDirection:e=>({commands:t})=>this.options.directions.includes(e)?this.options.types.every(n=>t.updateAttributes(n,{dir:e})):!1,unsetTextDirection:()=>({commands:e})=>this.options.types.every(t=>e.resetAttributes(t,"dir"))}}}),Ti="_listUsers_en3pm_1",Ni="_itemUser_en3pm_10",Si="_selectedUser_en3pm_31",se={listUsers:Ti,itemUser:Ni,selectedUser:Si},Li=m.forwardRef((e,t)=>{const n=m.useRef(null),[i,a]=m.useState(0),r=h=>{const u=e.items[h];u&&e.command({id:u,label:u})},c=()=>{a((i+e.items.length-1)%e.items.length)},l=()=>{a((i+1)%e.items.length)},d=()=>{r(i)};return m.useEffect(()=>a(0),[e.items]),m.useEffect(()=>{if(Number.isNaN(i+1))return;const h=n.current.querySelector(`span:nth-of-type(${i+1})`);h&&be(h,{behavior:"smooth",scrollMode:"if-needed"})},[i]),m.useImperativeHandle(t,()=>({onKeyDown:({event:h})=>h.key==="ArrowUp"?(c(),!0):h.key==="ArrowDown"?(l(),!0):h.key==="Enter"?(d(),!0):!1})),o.jsx("div",{className:w.clsx("listUsers",se.listUsers),children:o.jsx("div",{ref:n,children:e.items.length>0?e.items.map((h,u)=>o.jsx("span",{className:w.clsx("itemUser",se.itemUser,u===i?se.selectedUser:""),onClick:()=>r(u),children:h},u)):o.jsx("div",{className:w.clsx("itemUserEmpty",se.itemUser),children:"Empty"})})})}),Ei=[{id:"1",name:"John Doe"},{id:"2",name:"Jane Doe"},{id:"3",name:"Alice"},{id:"4",name:"Bob"}],Ii={items:async({query:e})=>Ei.map(n=>n.name).filter(n=>n.toLowerCase().startsWith(e.toLowerCase())),render:()=>{let e,t;return{onStart:n=>{e=new g.ReactRenderer(Li,{props:n,editor:n.editor}),t=xe("body",{getReferenceClientRect:n.clientRect,appendTo:()=>document.body,content:e.element,showOnCreate:!0,interactive:!0,trigger:"manual",placement:"bottom-start"})},onUpdate(n){e.updateProps(n),t[0].setProps({getReferenceClientRect:n.clientRect})},onKeyDown(n){var i;return n.event.key==="Escape"?(t[0].hide(),!0):(i=e.ref)==null?void 0:i.onKeyDown(n)},onExit(){t[0].destroy(),e.destroy()}}}},Mi=g.Mention.extend({addAttributes(){return{id:{default:"",parseHTML:s.getDatasetAttribute("id")},label:{default:"",parseHTML:s.getDatasetAttribute("label")}}}}).configure({HTMLAttributes:{class:"mention"},suggestion:Ii}),Di={audio:'<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-audio-lines"><path d="M2 10v3"/><path d="M6 6v11"/><path d="M10 3v18"/><path d="M14 8v7"/><path d="M18 5v13"/><path d="M22 10v3"/></svg>',video:'<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-video"><path d="m16 13 5.223 3.482a.5.5 0 0 0 .777-.416V7.87a.5.5 0 0 0-.752-.432L16 10.5"/><rect x="2" y="6" width="14" height="12" rx="2"/></svg>',file:'<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-file"><path d="M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z"/><path d="M14 2v4a2 2 0 0 0 2 2h4"/></svg>',image:'<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-image"><rect width="18" height="18" x="3" y="3" rx="2" ry="2"/><circle cx="9" cy="9" r="2"/><path d="m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21"/></svg>',pdf:`<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 32 32">
16
16
  <path fill="currentColor" d="M30 18v-2h-6v10h2v-4h3v-2h-3v-2zm-11 8h-4V16h4a3.003 3.003 0 0 1 3 3v4a3.003 3.003 0 0 1-3 3m-2-2h2a1 1 0 0 0 1-1v-4a1 1 0 0 0-1-1h-2zm-6-8H6v10h2v-3h3a2.003 2.003 0 0 0 2-2v-3a2 2 0 0 0-2-2m-3 5v-3h3l.001 3z"></path>
17
17
  <path fill="currentColor" d="M22 14v-4a.91.91 0 0 0-.3-.7l-7-7A.9.9 0 0 0 14 2H4a2.006 2.006 0 0 0-2 2v24a2 2 0 0 0 2 2h16v-2H4V4h8v6a2.006 2.006 0 0 0 2 2h6v2Zm-8-4V4.4l5.6 5.6Z"></path>
18
18
  </svg>`,word:`<svg
@@ -30,4 +30,4 @@
30
30
  fill="currentColor"
31
31
  d="m810.667 913.135-.478.068H201.796c-19.865 0-36.727-11.673-36.727-25.6v-618.36h154.965c51.268 0 92.911-39.39 92.911-87.858v-87.86H810.19c19.797 0 36.522 11.742 36.522 25.669V739.26h61.987V119.262c0-46.421-44.169-84.241-98.51-84.241H328.364l-225.28 194.56v658.09c0 46.285 44.236 84.105 98.713 84.105H810.19c43.759 0 80.554-24.713 93.32-58.573h-92.842zM350.89 94.89v86.562c0 16.11-13.858 29.286-30.925 29.286H216.815L350.959 94.891z"
32
32
  />
33
- </svg>`,excel:'<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sheet"><rect width="18" height="18" x="3" y="3" rx="2" ry="2"/><line x1="3" x2="21" y1="9" y2="9"/><line x1="3" x2="21" y1="15" y2="15"/><line x1="9" x2="9" y1="9" y2="21"/><line x1="15" x2="15" y1="9" y2="21"/></svg>',ppt:'<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-table-properties"><path d="M15 3v18"/><rect width="18" height="18" x="3" y="3" rx="2"/><path d="M21 9H3"/><path d="M21 15H3"/></svg>'};function Ri(e){const t=Di[e],a=new DOMParser().parseFromString(t,"image/svg+xml").documentElement,r=["svg",{...Array.from(a.attributes).reduce((c,l)=>(c[l.name]=l.value,c),{})}];return Array.from(a.childNodes).forEach(c=>{if(c.nodeType===1){const l=[c.tagName.toLowerCase(),Array.from(c.attributes).reduce((d,h)=>(d[h.name]=h.value,d),{})];c.textContent&&l.push(c.textContent),r.push(l)}}),r}const Pi={audio:o.jsx(D.LucideAudioLines,{}),video:o.jsx(D.LucideVideo,{}),file:o.jsx(D.LucideFile,{}),image:o.jsx(D.LucideImage,{}),pdf:o.jsx(s.ExportPdf,{}),word:o.jsx(s.ExportWord,{}),excel:o.jsx(D.LucideSheet,{}),ppt:o.jsx(D.LucideTableProperties,{})};function Ve(e,t=!1){const n=s.normalizeFileType(e),i=Pi[n]||o.jsx(o.Fragment,{});return t?Ri(n):i}const Hi="_wrap_1x1ms_2",he={wrap:Hi};function Bi({editor:e,node:t,updateAttributes:n,deleteNode:i,extension:a}){var A;const r=m.useRef(null),c=s.useEditableEditor(),{hasTrigger:l,fileName:d,fileSize:h,fileExt:u,fileType:x,url:g,error:_}=t.attrs,[y,v]=m.useState(!1),{t:T}=p.useLocale(),L=(A=a==null?void 0:a.options)==null?void 0:A.upload,j=m.useCallback(()=>{!c||g||c&&r.current.click()},[c,g]),b=m.useCallback(async N=>{const E=N.target.files&&N.target.files[0];if(!E)return;const B={fileName:s.extractFilename(E.name),fileSize:E.size,fileType:E.type,fileExt:s.extractFileExtension(E.name)};v(!0);try{const C=await L(E);n({...B,url:C}),v(!1)}catch(C){n({error:`File upload fail: ${C&&C.message}`||"Unknown error"}),v(!1),r.current.value=""}},[v,n]);m.useEffect(()=>{!g&&!l&&(j(),n({hasTrigger:!0}))},[g,l,j,n]);const k=m.useCallback(()=>i(),[e]);return c&&!g?o.jsx(f.NodeViewWrapper,{children:o.jsxs("div",{className:w.clsx(he.wrap,"render-wrapper"),children:[o.jsx("p",{onClick:j,style:{cursor:"pointer"},children:y?o.jsx("span",{children:T("editor.attachment.uploading")}):o.jsx("span",{children:T("editor.attachment.please_upload")})}),o.jsx("input",{hidden:!0,onChange:b,ref:r,type:"file"})]})}):g?o.jsx(f.NodeViewWrapper,{children:o.jsxs("div",{className:w.clsx(he.wrap,"render-wrapper"),onClick:j,children:[o.jsxs("div",{className:"richtext-flex richtext-items-center richtext-gap-[4px]",children:[o.jsx("span",{children:Ve(x)}),o.jsxs("span",{children:[d,".",u]}),o.jsxs("span",{children:["(",s.normalizeFileSize(h),")"]})]}),o.jsx(s.ActionButton,{action:k,icon:"Trash2",tooltip:T("editor.delete")})]})}):_!=="null"?o.jsx(f.NodeViewWrapper,{children:o.jsx("div",{className:w.clsx(he.wrap,"render-wrapper"),onClick:j,children:o.jsx("p",{children:_})})}):o.jsx(o.Fragment,{})}const zi=f.Node.create({name:"attachment",content:"",marks:"",group:"block",selectable:!0,atom:!0,draggable:!0,addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),HTMLAttributes:{class:"attachment"},button:({editor:t,t:n})=>({component:s.ActionButton,componentProps:{action:()=>t.chain().focus().setAttachment().run(),isActive:()=>!1,disabled:!1,icon:"Attachment",tooltip:n("editor.attachment.tooltip")}})}},parseHTML(){return[{tag:"div[class=attachment]"}]},renderHTML({HTMLAttributes:e}){const{url:t="",fileName:n="",fileSize:i="",fileType:a="",fileExt:r=""}=e||{};return["div",f.mergeAttributes(this.options.HTMLAttributes||{},e||{}),t?["a",{href:t||"#"},["span",{class:"attachment__icon"},Ve(a,!0)],["span",{class:"attachment__text"},`${n}.${r} (${s.normalizeFileSize(i)})`]]:["div",{class:"attachment__placeholder"}]]},addAttributes(){return{fileName:{default:null,parseHTML:s.getDatasetAttribute("filename")},fileSize:{default:null,parseHTML:s.getDatasetAttribute("filesize")},fileType:{default:null,parseHTML:s.getDatasetAttribute("filetype")},fileExt:{default:null,parseHTML:s.getDatasetAttribute("fileext")},url:{default:null,parseHTML:s.getDatasetAttribute("url")},hasTrigger:{default:!1,parseHTML:e=>s.getDatasetAttribute("hastrigger")(e)==="true"},error:{default:null,parseHTML:s.getDatasetAttribute("error")}}},addCommands(){return{setAttachment:(e={})=>({chain:t})=>t().insertContent({type:this.name,attrs:e}).run()}},addNodeView(){return f.ReactNodeViewRenderer(Bi)}});exports.Column=s.Column;exports.Drawer=s.Drawer;exports.Excalidraw=s.Excalidraw;exports.Iframe=s.Iframe;exports.ImageGif=s.ImageGif;exports.Katex=s.Katex;exports.Mermaid=s.Mermaid;exports.MultiColumn=s.MultiColumn;exports.Twitter=s.Twitter;exports.Attachment=zi;exports.BaseKit=Yt;exports.Blockquote=Bt;exports.Bold=Je;exports.BulletList=Dt;exports.Clear=Rt;exports.Code=nt;exports.CodeBlock=Pe;exports.Color=It;exports.ColumnActionButton=Kt;exports.Emoji=ni;exports.ExportPdf=ai;exports.ExportWord=fi;exports.FontFamily=kt;exports.FontSize=St;exports.FormatPainter=Hn;exports.Heading=Ct;exports.Highlight=Mt;exports.History=$t;exports.HorizontalRule=Ft;exports.Image=ge;exports.ImportWord=li;exports.Indent=tn;exports.Italic=Qe;exports.LineHeight=cn;exports.Link=Ot;exports.Mention=Mi;exports.MoreMark=en;exports.OrderedList=Pt;exports.SearchAndReplace=Ue;exports.SlashCommand=fn;exports.Strike=tt;exports.SubAndSuperScript=Jt;exports.Table=Pn;exports.TableOfContents=$e;exports.TaskList=Ht;exports.TextAlign=Tt;exports.TextDirection=Ai;exports.Underline=et;exports.Video=Fe;
33
+ </svg>`,excel:'<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sheet"><rect width="18" height="18" x="3" y="3" rx="2" ry="2"/><line x1="3" x2="21" y1="9" y2="9"/><line x1="3" x2="21" y1="15" y2="15"/><line x1="9" x2="9" y1="9" y2="21"/><line x1="15" x2="15" y1="9" y2="21"/></svg>',ppt:'<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-table-properties"><path d="M15 3v18"/><rect width="18" height="18" x="3" y="3" rx="2"/><path d="M21 9H3"/><path d="M21 15H3"/></svg>'};function Ri(e){const t=Di[e],a=new DOMParser().parseFromString(t,"image/svg+xml").documentElement,r=["svg",{...Array.from(a.attributes).reduce((c,l)=>(c[l.name]=l.value,c),{})}];return Array.from(a.childNodes).forEach(c=>{if(c.nodeType===1){const l=[c.tagName.toLowerCase(),Array.from(c.attributes).reduce((d,h)=>(d[h.name]=h.value,d),{})];c.textContent&&l.push(c.textContent),r.push(l)}}),r}const Pi={audio:o.jsx(D.LucideAudioLines,{}),video:o.jsx(D.LucideVideo,{}),file:o.jsx(D.LucideFile,{}),image:o.jsx(D.LucideImage,{}),pdf:o.jsx(s.ExportPdf,{}),word:o.jsx(s.ExportWord,{}),excel:o.jsx(D.LucideSheet,{}),ppt:o.jsx(D.LucideTableProperties,{})};function Ve(e,t=!1){const n=s.normalizeFileType(e),i=Pi[n]||o.jsx(o.Fragment,{});return t?Ri(n):i}const Hi="_wrap_1x1ms_2",he={wrap:Hi};function Bi({editor:e,node:t,updateAttributes:n,deleteNode:i,extension:a}){var A;const r=m.useRef(null),c=s.useEditableEditor(),{hasTrigger:l,fileName:d,fileSize:h,fileExt:u,fileType:x,url:_,error:f}=t.attrs,[y,v]=m.useState(!1),{t:T}=p.useLocale(),E=(A=a==null?void 0:a.options)==null?void 0:A.upload,k=m.useCallback(()=>{!c||_||c&&r.current.click()},[c,_]),b=m.useCallback(async N=>{const L=N.target.files&&N.target.files[0];if(!L)return;const B={fileName:s.extractFilename(L.name),fileSize:L.size,fileType:L.type,fileExt:s.extractFileExtension(L.name)};v(!0);try{const C=await E(L);n({...B,url:C}),v(!1)}catch(C){n({error:`File upload fail: ${C&&C.message}`||"Unknown error"}),v(!1),r.current.value=""}},[v,n]);m.useEffect(()=>{!_&&!l&&(k(),n({hasTrigger:!0}))},[_,l,k,n]);const j=m.useCallback(()=>i(),[e]);return c&&!_?o.jsx(g.NodeViewWrapper,{children:o.jsxs("div",{className:w.clsx(he.wrap,"render-wrapper"),children:[o.jsx("p",{onClick:k,style:{cursor:"pointer"},children:y?o.jsx("span",{children:T("editor.attachment.uploading")}):o.jsx("span",{children:T("editor.attachment.please_upload")})}),o.jsx("input",{hidden:!0,onChange:b,ref:r,type:"file"})]})}):_?o.jsx(g.NodeViewWrapper,{children:o.jsxs("div",{className:w.clsx(he.wrap,"render-wrapper"),onClick:k,children:[o.jsxs("div",{className:"richtext-flex richtext-items-center richtext-gap-[4px]",children:[o.jsx("span",{children:Ve(x)}),o.jsxs("span",{children:[d,".",u]}),o.jsxs("span",{children:["(",s.normalizeFileSize(h),")"]})]}),o.jsx(s.ActionButton,{action:j,icon:"Trash2",tooltip:T("editor.delete")})]})}):f!=="null"?o.jsx(g.NodeViewWrapper,{children:o.jsx("div",{className:w.clsx(he.wrap,"render-wrapper"),onClick:k,children:o.jsx("p",{children:f})})}):o.jsx(o.Fragment,{})}const zi=g.Node.create({name:"attachment",content:"",marks:"",group:"block",selectable:!0,atom:!0,draggable:!0,addOptions(){var e;return{...(e=this.parent)==null?void 0:e.call(this),HTMLAttributes:{class:"attachment"},button:({editor:t,t:n})=>({component:s.ActionButton,componentProps:{action:()=>t.chain().focus().setAttachment().run(),isActive:()=>!1,disabled:!1,icon:"Attachment",tooltip:n("editor.attachment.tooltip")}})}},parseHTML(){return[{tag:"div[class=attachment]"}]},renderHTML({HTMLAttributes:e}){const{url:t="",fileName:n="",fileSize:i="",fileType:a="",fileExt:r=""}=e||{};return["div",g.mergeAttributes(this.options.HTMLAttributes||{},e||{}),t?["a",{href:t||"#"},["span",{class:"attachment__icon"},Ve(a,!0)],["span",{class:"attachment__text"},`${n}.${r} (${s.normalizeFileSize(i)})`]]:["div",{class:"attachment__placeholder"}]]},addAttributes(){return{fileName:{default:null,parseHTML:s.getDatasetAttribute("filename")},fileSize:{default:null,parseHTML:s.getDatasetAttribute("filesize")},fileType:{default:null,parseHTML:s.getDatasetAttribute("filetype")},fileExt:{default:null,parseHTML:s.getDatasetAttribute("fileext")},url:{default:null,parseHTML:s.getDatasetAttribute("url")},hasTrigger:{default:!1,parseHTML:e=>s.getDatasetAttribute("hastrigger")(e)==="true"},error:{default:null,parseHTML:s.getDatasetAttribute("error")}}},addCommands(){return{setAttachment:(e={})=>({chain:t})=>t().insertContent({type:this.name,attrs:e}).run()}},addNodeView(){return g.ReactNodeViewRenderer(Bi)}});exports.Column=s.Column;exports.Drawer=s.Drawer;exports.Excalidraw=s.Excalidraw;exports.Iframe=s.Iframe;exports.ImageGif=s.ImageGif;exports.Katex=s.Katex;exports.Mermaid=s.Mermaid;exports.MultiColumn=s.MultiColumn;exports.Twitter=s.Twitter;exports.Attachment=zi;exports.BaseKit=Yt;exports.Blockquote=Bt;exports.Bold=Je;exports.BulletList=Dt;exports.Clear=Rt;exports.Code=nt;exports.CodeBlock=Pe;exports.Color=It;exports.ColumnActionButton=Kt;exports.Emoji=ni;exports.ExportPdf=ai;exports.ExportWord=fi;exports.FontFamily=kt;exports.FontSize=St;exports.FormatPainter=Hn;exports.Heading=Ct;exports.Highlight=Mt;exports.History=$t;exports.HorizontalRule=Ft;exports.Image=ge;exports.ImportWord=li;exports.Indent=tn;exports.Italic=Qe;exports.LineHeight=cn;exports.Link=Ot;exports.Mention=Mi;exports.MoreMark=en;exports.OrderedList=Pt;exports.SearchAndReplace=Ue;exports.SlashCommand=fn;exports.Strike=tt;exports.SubAndSuperScript=Jt;exports.Table=Pn;exports.TableOfContents=$e;exports.TaskList=Ht;exports.TextAlign=Tt;exports.TextDirection=Ai;exports.Underline=et;exports.Video=Fe;