react-reason-editor 1.0.76 → 1.0.78
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Ai-CfgczVyp.cjs +1 -0
- package/dist/Ai-DsWeNKXF.js +1 -0
- package/dist/Ai.cjs +1 -1
- package/dist/Ai.js +1 -1
- package/dist/{Attachment-bBEf8uOc.js → Attachment-BmQoshq_.js} +1 -1
- package/dist/Attachment.cjs +1 -1
- package/dist/Attachment.js +1 -1
- package/dist/{Blockquote-Cw5Zty9X.js → Blockquote-cNS4L62L.js} +1 -1
- package/dist/Blockquote.cjs +1 -1
- package/dist/Blockquote.js +1 -1
- package/dist/{Bold-BwuX7fZs.js → Bold-DiKXbC2z.js} +1 -1
- package/dist/Bold.cjs +1 -1
- package/dist/Bold.js +1 -1
- package/dist/BubbleMenus-CIOMgQ-M.js +216 -0
- package/dist/BubbleMenus-vqNuXWlm.cjs +1 -0
- package/dist/BulletList.cjs +1 -1
- package/dist/BulletList.js +1 -1
- package/dist/{Callout-CJofZEpX.js → Callout-BLkbFKjv.js} +1 -1
- package/dist/{Callout-wjo2BYZi.cjs → Callout-CpkjGEBS.cjs} +1 -1
- package/dist/Callout.cjs +1 -1
- package/dist/Callout.js +1 -1
- package/dist/Clear.cjs +1 -1
- package/dist/Clear.js +1 -1
- package/dist/{Code-CtIvf6_L.js → Code-DvYJ892R.js} +1 -1
- package/dist/Code.cjs +1 -1
- package/dist/Code.js +1 -1
- package/dist/{CodeBlock-DoIb7GC2.js → CodeBlock-B3dLyClh.js} +1 -1
- package/dist/CodeBlock.cjs +1 -1
- package/dist/CodeBlock.js +1 -1
- package/dist/CodeView.cjs +1 -1
- package/dist/CodeView.js +1 -1
- package/dist/{Color-DSs2MkQU.js → Color-Cng09GRR.js} +1 -1
- package/dist/{Color-B9PloDr5.cjs → Color-ZjBs7t7J.cjs} +1 -1
- package/dist/Color.cjs +1 -1
- package/dist/Color.js +1 -1
- package/dist/{Column-BXSoMVXw.cjs → Column-BaMOYvoO.cjs} +1 -1
- package/dist/{Column-CrT9596v.js → Column-DO6MfrOQ.js} +1 -1
- package/dist/Column.cjs +1 -1
- package/dist/Column.js +1 -1
- package/dist/{Drawer-CfcCPGCn.cjs → Drawer-CC24iVYp.cjs} +1 -1
- package/dist/{Drawer-DuQ5tw2t.js → Drawer-CL5Rhqw4.js} +1 -1
- package/dist/Drawer.cjs +1 -1
- package/dist/Drawer.js +1 -1
- package/dist/{Drawio-DQEgw3du.cjs → Drawio-CD_Tea_o.cjs} +1 -1
- package/dist/{Drawio-P620K_Ps.js → Drawio-LEtUoVAY.js} +1 -1
- package/dist/Drawio.cjs +1 -1
- package/dist/Drawio.js +1 -1
- package/dist/{Emoji-CYM4tY7s.js → Emoji-DN3yfwz_.js} +1 -1
- package/dist/Emoji.cjs +1 -1
- package/dist/Emoji.js +1 -1
- package/dist/{ExportPdf-BoD_D91q.js → ExportPdf-CrQVmD4l.js} +1 -1
- package/dist/ExportPdf.cjs +1 -1
- package/dist/ExportPdf.js +1 -1
- package/dist/{ExportWord-Bj9q_cyK.js → ExportWord-BM4ogH_i.js} +1 -1
- package/dist/ExportWord.cjs +1 -1
- package/dist/ExportWord.js +1 -1
- package/dist/FontFamily.cjs +1 -1
- package/dist/FontFamily.js +1 -1
- package/dist/FontSize.cjs +1 -1
- package/dist/FontSize.js +1 -1
- package/dist/{Heading-BHOPoy3X.js → Heading-Bcrl3eKU.js} +1 -1
- package/dist/Heading.cjs +1 -1
- package/dist/Heading.js +1 -1
- package/dist/{Highlight-BxKQNHmT.cjs → Highlight-cO9V18Me.cjs} +1 -1
- package/dist/{Highlight-3SpxpGDw.js → Highlight-uXDlNgw3.js} +1 -1
- package/dist/Highlight.cjs +1 -1
- package/dist/Highlight.js +1 -1
- package/dist/{History-CmI6jUTV.js → History-BoHiw0Bn.js} +1 -1
- package/dist/History.cjs +1 -1
- package/dist/History.js +1 -1
- package/dist/{HorizontalRule-BeLfU92F.js → HorizontalRule-C7mAKdzL.js} +1 -1
- package/dist/HorizontalRule.cjs +1 -1
- package/dist/HorizontalRule.js +1 -1
- package/dist/{Iframe-D-WaYtdF.cjs → Iframe-DGL_MOLf.cjs} +1 -1
- package/dist/{Iframe-C0ozlEX4.js → Iframe-D_IjezyZ.js} +1 -1
- package/dist/Iframe.cjs +1 -1
- package/dist/Iframe.js +1 -1
- package/dist/Image.cjs +1 -1
- package/dist/Image.js +1 -1
- package/dist/{ImageCropper-BVl7AuRL.js → ImageCropper-ChOGJuHZ.js} +1 -1
- package/dist/{ImageCropper-DqHxEOtN.cjs → ImageCropper-DDWnFI2-.cjs} +1 -1
- package/dist/{ImageGif-BSVyqEv6.cjs → ImageGif-3dik7FeU.cjs} +1 -1
- package/dist/{ImageGif-BvthT-Lc.js → ImageGif-D_kKkBU5.js} +1 -1
- package/dist/ImageGif.cjs +1 -1
- package/dist/ImageGif.js +1 -1
- package/dist/{ImportWord-C6EnXbyR.js → ImportWord-CtFBb_n4.js} +1 -1
- package/dist/ImportWord.cjs +1 -1
- package/dist/ImportWord.js +1 -1
- package/dist/{Indent-BuzxHbMb.js → Indent-BIk98fDV.js} +1 -1
- package/dist/{Indent-eL-WNEF4.cjs → Indent-BVMl9zKV.cjs} +1 -1
- package/dist/Indent.cjs +1 -1
- package/dist/Indent.js +1 -1
- package/dist/{Italic-D8ZI09FZ.js → Italic-3mlmsxqN.js} +1 -1
- package/dist/Italic.cjs +1 -1
- package/dist/Italic.js +1 -1
- package/dist/{Katex-46mDLDuw.cjs → Katex-C2AcX_Un.cjs} +1 -1
- package/dist/{Katex-B-lo5eMz.js → Katex-DRPWO2AM.js} +1 -1
- package/dist/Katex.cjs +1 -1
- package/dist/Katex.js +1 -1
- package/dist/LineHeight.cjs +1 -1
- package/dist/LineHeight.js +1 -1
- package/dist/{Link-CDtipqwb.js → Link-D5y_0ekP.js} +1 -1
- package/dist/Link.cjs +1 -1
- package/dist/Link.js +1 -1
- package/dist/{LinkEditBlock-D0V9PwbF.cjs → LinkEditBlock-D78J06F7.cjs} +1 -1
- package/dist/MarkdownPaste.cjs +1 -1
- package/dist/MarkdownPaste.js +1 -1
- package/dist/{Mermaid-DDV93CBT.cjs → Mermaid-B6SL3cf5.cjs} +1 -1
- package/dist/{Mermaid-Cb8MiE1N.js → Mermaid-BaTtCsrD.js} +1 -1
- package/dist/Mermaid.cjs +1 -1
- package/dist/Mermaid.js +1 -1
- package/dist/{MoreMark-CJ3nTD1T.js → MoreMark-Bfsa3STU.js} +1 -1
- package/dist/MoreMark.cjs +1 -1
- package/dist/MoreMark.js +1 -1
- package/dist/OrderedList.cjs +1 -1
- package/dist/OrderedList.js +1 -1
- package/dist/{ReasonDocs-BliNN1Tt.cjs → ReasonDocs-Bjefr26w.cjs} +1 -1
- package/dist/{ReasonDocs-4vxZ3zY7.js → ReasonDocs-_hTAa8-q.js} +1 -1
- package/dist/{RichTextProvider-Dl77gVJI.cjs → RichTextProvider-BuTrDlZY.cjs} +1 -1
- package/dist/{RichTextProvider-E6rbc_J2.js → RichTextProvider-D9EtjDKS.js} +1 -1
- package/dist/SearchAndReplace.cjs +1 -1
- package/dist/SearchAndReplace.js +1 -1
- package/dist/{SlashCommand-DtlUkwyM.js → SlashCommand-Cg-Rvv3o.js} +1 -1
- package/dist/SlashCommand.js +1 -1
- package/dist/{Strike-CWYl45VK.js → Strike-CSxbYwpk.js} +1 -1
- package/dist/Strike.cjs +1 -1
- package/dist/Strike.js +1 -1
- package/dist/{Table-DCLsW5DJ.js → Table-CFcOg-4n.js} +1 -1
- package/dist/{Table-C9RAHNEk.cjs → Table-Do_kTawS.cjs} +1 -1
- package/dist/Table.cjs +1 -1
- package/dist/Table.js +1 -1
- package/dist/TaskList.cjs +1 -1
- package/dist/TaskList.js +1 -1
- package/dist/{TextAlign-D4UgbJ7F.cjs → TextAlign-CcsTIs-9.cjs} +1 -1
- package/dist/{TextAlign-9ezg8E99.js → TextAlign-Dun3_Ozv.js} +1 -1
- package/dist/TextAlign.cjs +1 -1
- package/dist/TextAlign.js +1 -1
- package/dist/TextDirection.cjs +1 -1
- package/dist/TextDirection.js +1 -1
- package/dist/{TextUnderline-C5A078R0.js → TextUnderline-Cqm5NQVW.js} +1 -1
- package/dist/TextUnderline.cjs +1 -1
- package/dist/TextUnderline.js +1 -1
- package/dist/{Twitter-D7ulyHFD.cjs → Twitter-B4IYTs3E.cjs} +1 -1
- package/dist/{Twitter-ByGJ4v1K.js → Twitter-CZHAICpz.js} +1 -1
- package/dist/Twitter.cjs +1 -1
- package/dist/Twitter.js +1 -1
- package/dist/{Video-hhw77FP4.js → Video-5nw_Zeob.js} +1 -1
- package/dist/{Video-ConJGjxP.cjs → Video-CtGR5VVD.cjs} +1 -1
- package/dist/Video.cjs +1 -1
- package/dist/Video.js +1 -1
- package/dist/WordCount.cjs +1 -1
- package/dist/WordCount.js +1 -1
- package/dist/bubble-BhkjoWdo.js +79 -0
- package/dist/bubble.cjs +1 -1
- package/dist/bubble.js +1 -1
- package/dist/{cdn-loader-BGIuN138-wkFA6jnE.cjs → cdn-loader-BGIuN138-7PrAg-Ef.cjs} +1 -1
- package/dist/docs-agent.cjs +1 -1
- package/dist/docs-agent.js +1 -1
- package/dist/editor-kit.cjs +1 -1
- package/dist/editor-kit.js +1 -1
- package/dist/editorConfig-BR7z-P0e.js +18 -0
- package/dist/editorConfig-CHBSp2KG.cjs +1 -0
- package/dist/extensions/Ai/Ai.d.ts +22 -5
- package/dist/extensions/Ai/commands.d.ts +6 -1
- package/dist/extensions/Ai/components/AiMenu.d.ts +6 -5
- package/dist/extensions/Ai/components/RichTextAi.d.ts +12 -0
- package/dist/extensions/Ai/index.d.ts +9 -3
- package/dist/extensions/Ai/lib/completionToContent.d.ts +35 -0
- package/dist/extensions/Ai/lib/createStreamingCompletion.d.ts +27 -0
- package/dist/extensions/Ai/lib/prompt.d.ts +38 -0
- package/dist/extensions/Ai/lib/sanitizeCompletion.d.ts +37 -0
- package/dist/extensions/Ai/types.d.ts +47 -3
- package/dist/index.cjs +1 -1
- package/dist/index.js +1 -1
- package/dist/marked.esm-B7mQ2Kzc.cjs +1 -0
- package/dist/marked.esm-CNm6O672.js +1 -0
- package/dist/{react-BQVDEMs2.cjs → react-Bfe0Tko8.cjs} +1 -1
- package/dist/reason-docs.cjs +1 -1
- package/dist/reason-docs.js +1 -1
- package/dist/{reason-toolbar-skin-9xQLtzeK.js → reason-toolbar-skin-BNYK97ET.js} +1 -1
- package/dist/{reason-toolbar-skin-DyYu9ywU.cjs → reason-toolbar-skin-CD4T53He.cjs} +1 -1
- package/dist/style.css +1 -1
- package/dist/useButtonProps-BBiR6DPI.cjs +1 -0
- package/dist/useButtonProps-Codtb0k0.js +1 -0
- package/package.json +1 -1
- package/dist/Ai-BGpnAE8s.js +0 -1
- package/dist/Ai-CORhNCSN.cjs +0 -1
- package/dist/BubbleMenus-QlttKSIN.cjs +0 -1
- package/dist/BubbleMenus-mwxYB3IU.js +0 -195
- package/dist/MarkdownPaste-C5jQ33SR.js +0 -1
- package/dist/bubble-CpeBzXMe.js +0 -78
- package/dist/editorConfig-D-Tlrdwj.js +0 -18
- package/dist/editorConfig-Du7YaEDm.cjs +0 -1
- package/dist/useButtonProps-BFfsKvCi.cjs +0 -1
- package/dist/useButtonProps-BZwO1Of-.js +0 -1
package/dist/Emoji.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as o,r,t as s}from"./Emoji-
|
|
1
|
+
import{n as o,r,t as s}from"./Emoji-DN3yfwz_.js";export{s as EXTENSION_PRIORITY_HIGHEST,o as Emoji,r as RichTextEmoji};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as t}from"./toggle-BnR5VE66.js";import{c as n,t as e}from"./useButtonProps-
|
|
1
|
+
import{n as t}from"./toggle-BnR5VE66.js";import{c as n,t as e}from"./useButtonProps-Codtb0k0.js";import{Extension as o}from"@tiptap/core";import{Fragment as i,jsx as r}from"react/jsx-runtime";function s(t,n){const e=t.getHTML();return!!e&&(function(t,n){const e=document.createElement("iframe");e.setAttribute("style","position: absolute; width: 0; height: 0; top: 0; left: 0;"),document.body.appendChild(e);const o=e.contentDocument||e.contentWindow?.document;if(!o)return;const{paperSize:i,title:r="React Tiptap Editor",margins:{top:s,right:a,bottom:d,left:p}}=n,c=`\n <!DOCTYPE html>\n <html lang="en">\n <head>\n <title>${r}</title>\n <meta charset="UTF-8">\n <meta name="viewport" content="width=device-width, initial-scale=1.0">\n <style>\n @media print {\n @page {\n size: ${i};\n margin: ${s} ${a} ${d} ${p}; /* top, right, bottom, left */\n }\n\n body {\n background: none;\n margin: 0;\n padding: 0;\n }\n\n .print-container {\n width: 100%;\n box-sizing: border-box;\n }\n\n .no-print {\n display: none;\n }\n }\n </style>\n <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/reactjs-tiptap-editor@latest/lib/style.css">\n </head>\n <body>\n <div class="print-container">\n ${t}\n </div>\n </body>\n </html>\n `;o.open(),o.write(c),o.close(),e.addEventListener("load",()=>{setTimeout(()=>{try{e.contentWindow?.focus(),e.contentWindow?.print()}catch(t){}setTimeout(()=>{document.body.removeChild(e)},100)},50)})}(e,n),!0)}function a(){const o=e(d.name),{icon:s,tooltip:a,shortcutKeys:p,tooltipOptions:c={},action:l,isActive:m}=o?.componentProps??{},{dataState:h,disabled:u,update:b}=n(m);return o?/* @__PURE__ */r(t,{action:()=>{u||l&&(l(),b())},dataState:h,disabled:u,icon:s,shortcutKeys:p,tooltip:a,tooltipOptions:c}):/* @__PURE__ */r(i,{})}var d=o.create({name:"exportPdf",addOptions(){return{...this.parent?.(),paperSize:"Letter",title:"Echo Editor",margins:{top:"0.4in",right:"0.4in",bottom:"0.4in",left:"0.4in"},button:({editor:t,extension:n,t:e})=>({componentProps:{action:()=>{s(t,n.options)},icon:"ExportPdf",tooltip:e("editor.exportPdf.tooltip"),isActive:()=>!1,disabled:!1}})}},addCommands(){return{exportToPdf:()=>({editor:t})=>s(t,this.options)}}});export{a as n,d as t};
|
package/dist/ExportPdf.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./rolldown-runtime-BeavJI0R.cjs");const t=require("./toggle-JU5XOZYT.cjs"),n=require("./useButtonProps-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./rolldown-runtime-BeavJI0R.cjs");const t=require("./toggle-JU5XOZYT.cjs"),n=require("./useButtonProps-BBiR6DPI.cjs");let e=require("@tiptap/core"),o=require("react/jsx-runtime");function i(t,n){const e=t.getHTML();return!!e&&(function(t,n){const e=document.createElement("iframe");e.setAttribute("style","position: absolute; width: 0; height: 0; top: 0; left: 0;"),document.body.appendChild(e);const o=e.contentDocument||e.contentWindow?.document;if(!o)return;const{paperSize:i,title:r="React Tiptap Editor",margins:{top:s,right:d,bottom:a,left:c}}=n,p=`\n <!DOCTYPE html>\n <html lang="en">\n <head>\n <title>${r}</title>\n <meta charset="UTF-8">\n <meta name="viewport" content="width=device-width, initial-scale=1.0">\n <style>\n @media print {\n @page {\n size: ${i};\n margin: ${s} ${d} ${a} ${c}; /* top, right, bottom, left */\n }\n\n body {\n background: none;\n margin: 0;\n padding: 0;\n }\n\n .print-container {\n width: 100%;\n box-sizing: border-box;\n }\n\n .no-print {\n display: none;\n }\n }\n </style>\n <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/reactjs-tiptap-editor@latest/lib/style.css">\n </head>\n <body>\n <div class="print-container">\n ${t}\n </div>\n </body>\n </html>\n `;o.open(),o.write(p),o.close(),e.addEventListener("load",()=>{setTimeout(()=>{try{e.contentWindow?.focus(),e.contentWindow?.print()}catch(t){}setTimeout(()=>{document.body.removeChild(e)},100)},50)})}(e,n),!0)}var r=e.Extension.create({name:"exportPdf",addOptions(){return{...this.parent?.(),paperSize:"Letter",title:"Echo Editor",margins:{top:"0.4in",right:"0.4in",bottom:"0.4in",left:"0.4in"},button:({editor:t,extension:n,t:e})=>({componentProps:{action:()=>{i(t,n.options)},icon:"ExportPdf",tooltip:e("editor.exportPdf.tooltip"),isActive:()=>!1,disabled:!1}})}},addCommands(){return{exportToPdf:()=>({editor:t})=>i(t,this.options)}}});exports.ExportPdf=r,exports.RichTextExportPdf=function(){const e=n.useButtonProps(r.name),{icon:i,tooltip:s,shortcutKeys:d,tooltipOptions:a={},action:c,isActive:p}=e?.componentProps??{},{dataState:l,disabled:u,update:m}=n.useToggleActive(p);return e?(0,o.jsx)(t.ActionButton,{action:()=>{u||c&&(c(),m())},dataState:l,disabled:u,icon:i,shortcutKeys:d,tooltip:s,tooltipOptions:a}):(0,o.jsx)(o.Fragment,{})};
|
package/dist/ExportPdf.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as o,t as r}from"./ExportPdf-
|
|
1
|
+
import{n as o,t as r}from"./ExportPdf-CrQVmD4l.js";export{r as ExportPdf,o as RichTextExportPdf};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as t}from"./toggle-BnR5VE66.js";import{c as o,t as e}from"./useButtonProps-
|
|
1
|
+
import{n as t}from"./toggle-BnR5VE66.js";import{c as o,t as e}from"./useButtonProps-Codtb0k0.js";import{useState as r}from"react";import{Extension as n}from"@tiptap/core";import{Fragment as a,jsx as i}from"react/jsx-runtime";var s="undefined"!=typeof window;function c(t,o){if(s){const e=window.URL.createObjectURL(t),r=document.createElement("a");return r.href=e,r.download=o,r.click(),window.URL.revokeObjectURL(e),Promise.resolve()}return Promise.resolve()}function d(){const n=e(p.name),[s,c]=r(!1),{icon:d,tooltip:m,shortcutKeys:l,tooltipOptions:u={},action:f,isActive:w}=n?.componentProps??{},{dataState:x,disabled:b,update:h}=o(w);return n?/* @__PURE__ */i(t,{action:async()=>{b||s||f&&(c(!0),await f(),h(),c(!1))},dataState:x,disabled:b||s,icon:s?"Loader":d,shortcutKeys:l,tooltip:m,tooltipOptions:u}):/* @__PURE__ */i(a,{})}var p=n.create({name:"exportWord",addOptions(){return{...this.parent?.(),button:({editor:t,t:o})=>({componentProps:{icon:"ExportWord",action:()=>t?.commands.exportToWord(),tooltip:o("editor.exportWord.tooltip"),isActive:()=>!1,disabled:!1}})}},addCommands:()=>({exportToWord:()=>async({editor:t})=>{try{const{default:o}=await import("./html-to-docx.esm-B4TnqEHA.js"),e=await o(t.getHTML(),null,{});return c(new Blob([e]),"richtext-export-document.docx"),!0}catch(o){return!1}}})});export{d as n,c as r,p as t};
|
package/dist/ExportWord.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./rolldown-runtime-BeavJI0R.cjs");const t=require("./toggle-JU5XOZYT.cjs"),o=require("./useButtonProps-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./rolldown-runtime-BeavJI0R.cjs");const t=require("./toggle-JU5XOZYT.cjs"),o=require("./useButtonProps-BBiR6DPI.cjs"),e=require("./download-D9xxza1g.cjs");let r=require("react"),i=require("@tiptap/core"),n=require("react/jsx-runtime");var s=i.Extension.create({name:"exportWord",addOptions(){return{...this.parent?.(),button:({editor:t,t:o})=>({componentProps:{icon:"ExportWord",action:()=>t?.commands.exportToWord(),tooltip:o("editor.exportWord.tooltip"),isActive:()=>!1,disabled:!1}})}},addCommands:()=>({exportToWord:()=>async({editor:t})=>{try{const{default:o}=await Promise.resolve().then(()=>require("./html-to-docx.esm-C-c3qq6u.cjs")),r=await o(t.getHTML(),null,{});return e.downloadFromBlob(new Blob([r]),"richtext-export-document.docx"),!0}catch(o){return!1}}})});exports.ExportWord=s,exports.RichTextExportWord=function(){const e=o.useButtonProps(s.name),[i,a]=(0,r.useState)(!1),{icon:c,tooltip:d,shortcutKeys:u,tooltipOptions:p={},action:l,isActive:x}=e?.componentProps??{},{dataState:m,disabled:j,update:b}=o.useToggleActive(x);return e?(0,n.jsx)(t.ActionButton,{action:async()=>{j||i||l&&(a(!0),await l(),b(),a(!1))},dataState:m,disabled:j||i,icon:i?"Loader":c,shortcutKeys:u,tooltip:d,tooltipOptions:p}):(0,n.jsx)(n.Fragment,{})};
|
package/dist/ExportWord.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as o,t as r}from"./ExportWord-
|
|
1
|
+
import{n as o,t as r}from"./ExportWord-BM4ogH_i.js";export{r as ExportWord,o as RichTextExportWord};
|
package/dist/FontFamily.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./rolldown-runtime-BeavJI0R.cjs"),e=require("./toggle-JU5XOZYT.cjs"),i=require("./ActionMenuButton-B_gwt6FF.cjs"),r=require("./locales-DRkmn37v.cjs"),o=require("./popover-C3EbRkjg.cjs"),n=require("./useButtonProps-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./rolldown-runtime-BeavJI0R.cjs"),e=require("./toggle-JU5XOZYT.cjs"),i=require("./ActionMenuButton-B_gwt6FF.cjs"),r=require("./locales-DRkmn37v.cjs"),o=require("./popover-C3EbRkjg.cjs"),n=require("./useButtonProps-BBiR6DPI.cjs"),s=require("./dist-C5TeAoJ9.cjs");let c=require("react");c=t.__toESM(c,1);let a=require("react/jsx-runtime"),l=require("lucide-react");var u=s.FontFamily.extend({addOptions(){return{...this.parent?.(),fontFamilyList:r.DEFAULT_FONT_FAMILY_LIST,button({editor:t,extension:e,t:i}){const r=n.ensureNameValueOptions(e?.options?.fontFamilyList||[]),o=r.map(e=>({action:()=>{"Default"!==e.value?t.chain().focus().setFontFamily(e.value).run():t.chain().focus().unsetFontFamily().run()},isActive:()=>t.isActive("textStyle",{fontFamily:e.value})||!1,title:"Default"===e.value?"Inter":e.name,font:"Default"===e.value?"Inter":e.value,default:"Default"===e.value})).sort((t,e)=>t.default?-1:e.default?1:t.title.localeCompare(e.title,void 0,{sensitivity:"base"}));return{componentProps:{tooltip:i("editor.fontFamily.tooltip"),disabled:!1,items:o,isActive:()=>{const t=o?.find(t=>t.isActive());return t&&!t.default?t:{title:"Inter",font:"Inter",isActive:()=>!1,disabled:!1}},icon:"MenuDown",fontFamilyList:r}}}}}});exports.FontFamily=u,exports.RichTextFontFamily=function({variant:t="icon"}={}){const{t:s}=r.useLocale(),x=n.useButtonProps(u.name),{icon:h,tooltip:d,items:p=[],isActive:m}=x?.componentProps??{},{disabled:f,dataState:v}=n.useActive(m),[y,b]=(0,c.useState)(!1),[j,F]=(0,c.useState)(""),g=(0,c.useDeferredValue)(j),A=(0,c.useRef)(null),N=(0,c.useMemo)(()=>v?.font||"Inter",[v]),q=(0,c.useMemo)(()=>{const t=g.trim().toLowerCase();return t?p.filter(e=>e.title?.toLowerCase().includes(t)):p},[p,g]);if(!x)return(0,a.jsx)(a.Fragment,{});const S=d||"Font";return(0,a.jsxs)(o.Popover,{onOpenChange:t=>{b(t),t||F("")},open:y,children:[(0,a.jsx)(o.PopoverTrigger,{asChild:!0,disabled:f,children:"icon"===t?(0,a.jsx)(e.ActionButton,{"aria-label":S,customClass:"data-[state=open]:richtext-bg-accent",disabled:f,tooltip:S,children:(0,a.jsx)(l.Type,{className:"richtext-size-4"})}):(0,a.jsx)("div",{className:"richtext-w-full",children:(0,a.jsx)(i.ActionMenuButton,{disabled:f,icon:h,title:N,tooltip:d})})}),(0,a.jsxs)(o.PopoverContent,{align:"start",className:"richtext-w-[280px] !richtext-p-0",onOpenAutoFocus:t=>{t.preventDefault(),A.current?.focus({preventScroll:!0})},side:"bottom",children:[(0,a.jsxs)("div",{className:"richtext-relative richtext-border-b richtext-border-border",children:[(0,a.jsx)(l.Search,{className:"richtext-pointer-events-none richtext-absolute richtext-left-3 richtext-top-1/2 -richtext-translate-y-1/2 richtext-text-muted-foreground",size:15}),(0,a.jsx)("input",{className:"richtext-w-full richtext-bg-transparent richtext-py-2.5 richtext-pl-9 richtext-pr-3 richtext-text-sm richtext-outline-none placeholder:richtext-text-muted-foreground",onChange:t=>F(t.target.value),placeholder:s("editor.fontFamily.search"),ref:A,type:"text",value:j})]}),(0,a.jsxs)("div",{className:"richtext-max-h-80 richtext-overflow-y-auto richtext-py-1",children:[0===q.length&&(0,a.jsx)("div",{className:"richtext-px-3 richtext-py-6 richtext-text-center richtext-text-sm richtext-text-muted-foreground",children:s("editor.fontFamily.empty")}),q.map((t,e)=>{const i=N===t.font;return(0,a.jsx)("button",{"aria-pressed":i,onClick:()=>{t.action?.(),b(!1)},style:t.default?{}:{fontFamily:t.font},type:"button",className:"richtext-flex richtext-w-full richtext-items-center richtext-px-4 richtext-py-2 richtext-text-left richtext-text-base richtext-transition-colors hover:richtext-bg-accent "+(i?"richtext-bg-accent richtext-font-medium":""),children:(0,a.jsx)("span",{className:"richtext-truncate",children:t.title})},`font-family-${t.font??e}`)})]})]})]})};
|
package/dist/FontFamily.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import{n as t}from"./toggle-BnR5VE66.js";import{t as e}from"./ActionMenuButton-CctZdnCj.js";import{f as i,n as r}from"./locales-rT_qjKW9.js";import{i as o,r as n,t as a}from"./popover-Bgd9XvwH.js";import{r as c,s as l,t as s}from"./useButtonProps-
|
|
1
|
+
import{n as t}from"./toggle-BnR5VE66.js";import{t as e}from"./ActionMenuButton-CctZdnCj.js";import{f as i,n as r}from"./locales-rT_qjKW9.js";import{i as o,r as n,t as a}from"./popover-Bgd9XvwH.js";import{r as c,s as l,t as s}from"./useButtonProps-Codtb0k0.js";import{n as h}from"./dist-BZqs5TU5.js";import u,{useDeferredValue as m,useMemo as x,useRef as d,useState as f}from"react";import{Fragment as p,jsx as v,jsxs as y}from"react/jsx-runtime";import{Search as b,Type as g}from"lucide-react";function F({variant:i="icon"}={}){const{t:c}=r(),h=s(N.name),{icon:u,tooltip:F,items:w=[],isActive:A}=h?.componentProps??{},{disabled:C,dataState:j}=l(A),[D,I]=f(!1),[L,O]=f(""),P=m(L),S=d(null),z=x(()=>j?.font||"Inter",[j]),B=x(()=>{const t=P.trim().toLowerCase();return t?w.filter(e=>e.title?.toLowerCase().includes(t)):w},[w,P]);if(!h)/* @__PURE__ */return v(p,{});const M=F||"Font";/* @__PURE__ */
|
|
2
2
|
return y(a,{onOpenChange:t=>{I(t),t||O("")},open:D,children:[/* @__PURE__ */v(o,{asChild:!0,disabled:C,children:"icon"===i?/* @__PURE__ */v(t,{"aria-label":M,customClass:"data-[state=open]:richtext-bg-accent",disabled:C,tooltip:M,children:/* @__PURE__ */v(g,{className:"richtext-size-4"})}):/* @__PURE__ */v("div",{className:"richtext-w-full",children:/* @__PURE__ */v(e,{disabled:C,icon:u,title:z,tooltip:F})})}),/* @__PURE__ */y(n,{align:"start",className:"richtext-w-[280px] !richtext-p-0",onOpenAutoFocus:t=>{t.preventDefault(),S.current?.focus({preventScroll:!0})},side:"bottom",children:[/* @__PURE__ */y("div",{className:"richtext-relative richtext-border-b richtext-border-border",children:[/* @__PURE__ */v(b,{className:"richtext-pointer-events-none richtext-absolute richtext-left-3 richtext-top-1/2 -richtext-translate-y-1/2 richtext-text-muted-foreground",size:15}),/* @__PURE__ */v("input",{className:"richtext-w-full richtext-bg-transparent richtext-py-2.5 richtext-pl-9 richtext-pr-3 richtext-text-sm richtext-outline-none placeholder:richtext-text-muted-foreground",onChange:t=>O(t.target.value),placeholder:c("editor.fontFamily.search"),ref:S,type:"text",value:L})]}),/* @__PURE__ */y("div",{className:"richtext-max-h-80 richtext-overflow-y-auto richtext-py-1",children:[0===B.length&&/* @__PURE__ */v("div",{className:"richtext-px-3 richtext-py-6 richtext-text-center richtext-text-sm richtext-text-muted-foreground",children:c("editor.fontFamily.empty")}),B.map((t,e)=>{const i=z===t.font;/* @__PURE__ */
|
|
3
3
|
return v("button",{"aria-pressed":i,onClick:()=>{t.action?.(),I(!1)},style:t.default?{}:{fontFamily:t.font},type:"button",className:"richtext-flex richtext-w-full richtext-items-center richtext-px-4 richtext-py-2 richtext-text-left richtext-text-base richtext-transition-colors hover:richtext-bg-accent "+(i?"richtext-bg-accent richtext-font-medium":""),children:/* @__PURE__ */v("span",{className:"richtext-truncate",children:t.title})},`font-family-${t.font??e}`)})]})]})]})}var N=h.extend({addOptions(){return{...this.parent?.(),fontFamilyList:i,button({editor:t,extension:e,t:i}){const r=c(e?.options?.fontFamilyList||[]),o=r.map(e=>({action:()=>{"Default"!==e.value?t.chain().focus().setFontFamily(e.value).run():t.chain().focus().unsetFontFamily().run()},isActive:()=>t.isActive("textStyle",{fontFamily:e.value})||!1,title:"Default"===e.value?"Inter":e.name,font:"Default"===e.value?"Inter":e.value,default:"Default"===e.value})).sort((t,e)=>t.default?-1:e.default?1:t.title.localeCompare(e.title,void 0,{sensitivity:"base"}));return{componentProps:{tooltip:i("editor.fontFamily.tooltip"),disabled:!1,items:o,isActive:()=>{const t=o?.find(t=>t.isActive());return t&&!t.default?t:{title:"Inter",font:"Inter",isActive:()=>!1,disabled:!1}},icon:"MenuDown",fontFamilyList:r}}}}}});export{N as FontFamily,F as RichTextFontFamily};
|
package/dist/FontSize.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./rolldown-runtime-BeavJI0R.cjs"),t=require("./ActionMenuButton-B_gwt6FF.cjs"),i=require("./locales-DRkmn37v.cjs"),r=require("./dropdown-menu-BNKyUimd.cjs"),n=require("./useButtonProps-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./rolldown-runtime-BeavJI0R.cjs"),t=require("./ActionMenuButton-B_gwt6FF.cjs"),i=require("./locales-DRkmn37v.cjs"),r=require("./dropdown-menu-BNKyUimd.cjs"),n=require("./useButtonProps-BBiR6DPI.cjs");let o=require("react");o=e.__toESM(o,1);let s=require("@tiptap/core"),c=require("react/jsx-runtime"),a=require("lucide-react");var l=s.Extension.create({name:"fontSize",addOptions(){return{...this.parent?.(),types:["textStyle"],fontSizes:i.DEFAULT_FONT_SIZE_LIST,button({editor:e,extension:t,t:i}){const r=n.ensureNameValueOptions(t.options?.fontSizes).map(t=>({title:String(t.name),isActive:()=>{const{fontSize:i}=e.getAttributes("textStyle");return"Default"===t.value&&(null==i||""===i)||(e.isActive({fontSize:String(t.value)})||!1)},action:()=>{"Default"!==t.value?e.commands.setFontSize(String(t.value)):e.commands.unsetFontSize()},default:"Default"===t.value||!1}));return{componentProps:{editor:e,tooltip:i("editor.fontSize.tooltip"),disabled:!1,items:r,maxHeight:280,icon:"MenuDown",isActive:()=>{const e=(r||[]).find(e=>e.isActive());return e&&!e.default?e:{title:"16px",isActive:()=>!1}}}}}}},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:()=>({setFontSize:e=>({chain:t})=>t().setMark("textStyle",{fontSize:e}).run(),unsetFontSize:()=>({chain:e})=>e().setMark("textStyle",{fontSize:null}).removeEmptyTextStyle().run()})});exports.FontSize=l,exports.RichTextFontSize=function(){const{t:e}=i.useLocale(),s=n.useButtonProps(l.name),[u,d]=(0,o.useState)(""),{icon:x,tooltip:p,items:h=[],isActive:m}=s?.componentProps??{},{disabled:S,dataState:f}=n.useActive(m),v=(0,o.useMemo)(()=>(f?.title||"16px").replace("px",""),[f]);return s?(0,c.jsxs)(r.DropdownMenu,{children:[(0,c.jsx)(r.DropdownMenuTrigger,{asChild:!0,disabled:S,children:(0,c.jsx)("div",{className:"richtext-w-12",children:(0,c.jsx)(t.ActionMenuButton,{disabled:S,icon:x,title:v,tooltip:p})})}),(0,c.jsxs)(r.DropdownMenuContent,{className:"richtext-max-h-96 richtext-w-40 richtext-overflow-y-auto",children:[(0,c.jsxs)("div",{className:"richtext-flex richtext-items-center richtext-gap-1 richtext-px-2 richtext-py-2",children:[(0,c.jsx)("button",{onClick:()=>{const e=parseInt(v)||16,t=h.find(t=>t.title===e-1+"px");t?.action&&t.action()},disabled:S,className:"richtext-p-1 richtext-rounded hover:richtext-bg-gray-100 dark:hover:richtext-bg-slate-700 disabled:richtext-opacity-50",children:(0,c.jsx)(a.Minus,{size:14})}),(0,c.jsx)("input",{type:"number",value:u,onChange:e=>d(e.target.value),placeholder:"Custom",className:"richtext-w-12 richtext-px-1.5 richtext-py-1 richtext-text-xs richtext-border richtext-rounded"}),(0,c.jsx)("button",{onClick:()=>{const e=parseInt(v)||16,t=h.find(t=>t.title===`${e+1}px`);t?.action&&t.action()},disabled:S,className:"richtext-p-1 richtext-rounded hover:richtext-bg-gray-100 dark:hover:richtext-bg-slate-700 disabled:richtext-opacity-50",children:(0,c.jsx)(a.Plus,{size:14})})]}),(0,c.jsx)(r.DropdownMenuSeparator,{}),h?.map((e,t)=>{const i=e.title.replace("px","");return(0,c.jsxs)(o.Fragment,{children:[(0,c.jsx)(r.DropdownMenuCheckboxItem,{checked:v===i,onClick:e.action,children:(0,c.jsx)("div",{className:"richtext-ml-1 richtext-h-full",children:i})}),e.default&&(0,c.jsx)(r.DropdownMenuSeparator,{})]},`font-size-${t}`)})]})]}):(0,c.jsx)(c.Fragment,{})};
|
package/dist/FontSize.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{t}from"./ActionMenuButton-CctZdnCj.js";import{n as e,p as i}from"./locales-rT_qjKW9.js";import{h as r,n,r as o,t as a,u as s}from"./dropdown-menu-BhMqMb9N.js";import{r as c,s as l,t as d}from"./useButtonProps-
|
|
1
|
+
import{t}from"./ActionMenuButton-CctZdnCj.js";import{n as e,p as i}from"./locales-rT_qjKW9.js";import{h as r,n,r as o,t as a,u as s}from"./dropdown-menu-BhMqMb9N.js";import{r as c,s as l,t as d}from"./useButtonProps-Codtb0k0.js";import p,{Fragment as h,useMemo as u,useState as m}from"react";import{Extension as x}from"@tiptap/core";import{Fragment as f,jsx as S,jsxs as v}from"react/jsx-runtime";import{Minus as b,Plus as z}from"lucide-react";function y(){const{t:i}=e(),c=d(g.name),[p,x]=m(""),{icon:y,tooltip:A,items:k=[],isActive:C}=c?.componentProps??{},{disabled:N,dataState:w}=l(C),M=u(()=>(w?.title||"16px").replace("px",""),[w]);if(!c)/* @__PURE__ */return S(f,{});/* @__PURE__ */
|
|
2
2
|
return v(a,{children:[/* @__PURE__ */S(r,{asChild:!0,disabled:N,children:/* @__PURE__ */S("div",{className:"richtext-w-12",children:/* @__PURE__ */S(t,{disabled:N,icon:y,title:M,tooltip:A})})}),/* @__PURE__ */v(o,{className:"richtext-max-h-96 richtext-w-40 richtext-overflow-y-auto",children:[
|
|
3
3
|
/* @__PURE__ */v("div",{className:"richtext-flex richtext-items-center richtext-gap-1 richtext-px-2 richtext-py-2",children:[
|
|
4
4
|
/* @__PURE__ */S("button",{onClick:()=>{const t=parseInt(M)||16,e=k.find(e=>e.title===t-1+"px");e?.action&&e.action()},disabled:N,className:"richtext-p-1 richtext-rounded hover:richtext-bg-gray-100 dark:hover:richtext-bg-slate-700 disabled:richtext-opacity-50",children:/* @__PURE__ */S(b,{size:14})}),
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{o as e}from"./dist-DmY5xFkC.js";import{o as t}from"./tooltip-G11f5UOp.js";import{t as i}from"./ActionMenuButton-CctZdnCj.js";import{h as l,n}from"./locales-rT_qjKW9.js";import{d as s,h as o,n as r,r as a,t as d,u as p}from"./dropdown-menu-BhMqMb9N.js";import{s as c,t as h}from"./useButtonProps-
|
|
1
|
+
import{o as e}from"./dist-DmY5xFkC.js";import{o as t}from"./tooltip-G11f5UOp.js";import{t as i}from"./ActionMenuButton-CctZdnCj.js";import{h as l,n}from"./locales-rT_qjKW9.js";import{d as s,h as o,n as r,r as a,t as d,u as p}from"./dropdown-menu-BhMqMb9N.js";import{s as c,t as h}from"./useButtonProps-Codtb0k0.js";import m,{Fragment as v,useMemo as u}from"react";import{Node as g,mergeAttributes as f,textblockTypeInputRule as b}from"@tiptap/core";import{Fragment as x,jsx as A,jsxs as H}from"react/jsx-runtime";var M=g.create({name:"heading",addOptions:()=>({levels:[1,2,3,4,5,6],HTMLAttributes:{}}),content:"inline*",group:"block",defining:!0,addAttributes:()=>({level:{default:1,rendered:!1}}),parseHTML(){return this.options.levels.map(e=>({tag:`h${e}`,attrs:{level:e}}))},renderHTML({node:e,HTMLAttributes:t}){return[`h${this.options.levels.includes(e.attrs.level)?e.attrs.level:this.options.levels[0]}`,f(this.options.HTMLAttributes,t),0]},parseMarkdown:(e,t)=>t.createNode("heading",{level:e.depth||1},t.parseInline(e.tokens||[])),renderMarkdown:(e,t)=>{var i;const l=(null==(i=e.attrs)?void 0:i.level)?parseInt(e.attrs.level,10):1,n="#".repeat(l);return e.content?`${n} ${t.renderChildren(e.content)}`:""},addCommands(){return{setHeading:e=>({commands:t})=>!!this.options.levels.includes(e.level)&&t.setNode(this.name,e),toggleHeading:e=>({commands:t})=>!!this.options.levels.includes(e.level)&&t.toggleNode(this.name,"paragraph",e)}},addKeyboardShortcuts(){return this.options.levels.reduce((e,t)=>({...e,[`Mod-Alt-${t}`]:()=>this.editor.commands.toggleHeading({level:t})}),{})},addInputRules(){return this.options.levels.map(e=>b({find:new RegExp(`^(#{${Math.min(...this.options.levels)},${e}})\\s$`),type:this.type,getAttributes:{level:e}}))}});function $({level:l}={}){const{t:m}=n(),g=h(j.name),{icon:f,tooltip:b,isActive:M,items:$=[]}=g?.componentProps??{},{disabled:k,dataState:y}=c(M),N=u(()=>y?.title||m("editor.paragraph.tooltip"),[y]);if(!g)/* @__PURE__ */return A(x,{});if(void 0!==l){const e=$.find(e=>e.level===l);return e?/* @__PURE__ */A("button",{type:"button",disabled:e.disabled,onClick:e.action,className:"richtext-h-[32px] richtext-px-2 richtext-text-sm",children:e.title}):/* @__PURE__ */A(x,{})}/* @__PURE__ */
|
|
2
2
|
return H(d,{children:[/* @__PURE__ */A(o,{asChild:!0,disabled:k,children:/* @__PURE__ */A(i,{disabled:k,icon:f,title:N,tooltip:b})}),/* @__PURE__ */A(a,{className:"richtext-w-full",children:$?.map((i,l)=>/* @__PURE__ */H(v,{children:[/* @__PURE__ */H(r,{checked:N===i.title,onClick:i.action,children:[/* @__PURE__ */A("div",{className:e("richtext-ml-1 richtext-h-full",{"":"Paragraph"===i.level,"heading-1":1===i.level,"heading-2":2===i.level,"heading-3":3===i.level,"heading-4":4===i.level,"heading-5":5===i.level,"heading-6":6===i.level}),children:i.title}),!!i?.shortcutKeys?.length&&/* @__PURE__ */A(s,{className:"richtext-pl-4",children:i?.shortcutKeys?.map(e=>t(e)).join(" ")})]}),"Paragraph"===i.level&&/* @__PURE__ */A(p,{})]},`heading-k-${l}`))})]})}var j=M.extend({addOptions(){return{...this.parent?.(),levels:l,button({editor:e,extension:t,t:i}){const l=t.options?.levels||[],n=l.map(n=>{const s="Paragraph"===n;return{action:()=>{if(s){const t=l.find(t=>e.isActive("heading",{level:t}));return void(t&&"Paragraph"!==t&&e.commands.toggleHeading({level:t}))}e.commands.toggleHeading({level:n})},isActive:()=>!s&&(e.isActive("heading",{level:n})||!1),disabled:!e.can().toggleHeading({level:n}),title:i(s?"editor.paragraph.tooltip":`editor.heading.h${n}.tooltip`),level:n,shortcutKeys:t.options.shortcutKeys?.[n]??["alt","mod",`${n}`],default:s}}),s=n.filter(e=>e.disabled).length===n.length;return{componentProps:{tooltip:i("editor.heading.tooltip"),disabled:s,items:n,icon:"MenuDown",isActive:()=>{const e=n?.find(e=>e.isActive());return e&&!e.default?e:{title:i("editor.paragraph.tooltip"),level:0,isActive:()=>!1}},levels:l}}}}}});export{$ as n,M as r,j as t};
|
package/dist/Heading.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./rolldown-runtime-BeavJI0R.cjs"),t=require("./dist-2-kjLBhJ.cjs"),i=require("./tooltip-DSRLxJD_.cjs"),n=require("./ActionMenuButton-B_gwt6FF.cjs"),o=require("./locales-DRkmn37v.cjs"),r=require("./dropdown-menu-BNKyUimd.cjs"),l=require("./useButtonProps-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./rolldown-runtime-BeavJI0R.cjs"),t=require("./dist-2-kjLBhJ.cjs"),i=require("./tooltip-DSRLxJD_.cjs"),n=require("./ActionMenuButton-B_gwt6FF.cjs"),o=require("./locales-DRkmn37v.cjs"),r=require("./dropdown-menu-BNKyUimd.cjs"),l=require("./useButtonProps-BBiR6DPI.cjs"),s=require("./dist-BZ-c9E8k.cjs");let a=require("react");a=e.__toESM(a,1);let d=require("react/jsx-runtime");var c=s.Heading.extend({addOptions(){return{...this.parent?.(),levels:o.HEADINGS,button({editor:e,extension:t,t:i}){const n=t.options?.levels||[],o=n.map(o=>{const r="Paragraph"===o;return{action:()=>{if(r){const t=n.find(t=>e.isActive("heading",{level:t}));return void(t&&"Paragraph"!==t&&e.commands.toggleHeading({level:t}))}e.commands.toggleHeading({level:o})},isActive:()=>!r&&(e.isActive("heading",{level:o})||!1),disabled:!e.can().toggleHeading({level:o}),title:i(r?"editor.paragraph.tooltip":`editor.heading.h${o}.tooltip`),level:o,shortcutKeys:t.options.shortcutKeys?.[o]??["alt","mod",`${o}`],default:r}}),r=o.filter(e=>e.disabled).length===o.length;return{componentProps:{tooltip:i("editor.heading.tooltip"),disabled:r,items:o,icon:"MenuDown",isActive:()=>{const e=o?.find(e=>e.isActive());return e&&!e.default?e:{title:i("editor.paragraph.tooltip"),level:0,isActive:()=>!1}},levels:n}}}}}});exports.Heading=c,exports.RichTextHeading=function({level:e}={}){const{t:s}=o.useLocale(),u=l.useButtonProps(c.name),{icon:h,tooltip:p,isActive:g,items:v=[]}=u?.componentProps??{},{disabled:x,dataState:m}=l.useActive(g),j=(0,a.useMemo)(()=>m?.title||s("editor.paragraph.tooltip"),[m]);if(!u)return(0,d.jsx)(d.Fragment,{});if(void 0!==e){const t=v.find(t=>t.level===e);return t?(0,d.jsx)("button",{type:"button",disabled:t.disabled,onClick:t.action,className:"richtext-h-[32px] richtext-px-2 richtext-text-sm",children:t.title}):(0,d.jsx)(d.Fragment,{})}return(0,d.jsxs)(r.DropdownMenu,{children:[(0,d.jsx)(r.DropdownMenuTrigger,{asChild:!0,disabled:x,children:(0,d.jsx)(n.ActionMenuButton,{disabled:x,icon:h,title:j,tooltip:p})}),(0,d.jsx)(r.DropdownMenuContent,{className:"richtext-w-full",children:v?.map((e,n)=>(0,d.jsxs)(a.Fragment,{children:[(0,d.jsxs)(r.DropdownMenuCheckboxItem,{checked:j===e.title,onClick:e.action,children:[(0,d.jsx)("div",{className:t.cn("richtext-ml-1 richtext-h-full",{"":"Paragraph"===e.level,"heading-1":1===e.level,"heading-2":2===e.level,"heading-3":3===e.level,"heading-4":4===e.level,"heading-5":5===e.level,"heading-6":6===e.level}),children:e.title}),!!e?.shortcutKeys?.length&&(0,d.jsx)(r.DropdownMenuShortcut,{className:"richtext-pl-4",children:e?.shortcutKeys?.map(e=>i.getShortcutKey(e)).join(" ")})]}),"Paragraph"===e.level&&(0,d.jsx)(r.DropdownMenuSeparator,{})]},`heading-k-${n}`))})]})};
|
package/dist/Heading.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as a,t as o}from"./Heading-
|
|
1
|
+
import{n as a,t as o}from"./Heading-Bcrl3eKU.js";export{o as Heading,a as RichTextHeading};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const t=require("./rolldown-runtime-BeavJI0R.cjs"),e=require("./toggle-JU5XOZYT.cjs"),i=require("./ColorPicker-BkxSAvdS.cjs"),r=require("./Icon-CC1yoE4E.cjs"),o=require("./useButtonProps-
|
|
1
|
+
const t=require("./rolldown-runtime-BeavJI0R.cjs"),e=require("./toggle-JU5XOZYT.cjs"),i=require("./ColorPicker-BkxSAvdS.cjs"),r=require("./Icon-CC1yoE4E.cjs"),o=require("./useButtonProps-BBiR6DPI.cjs"),n=require("./dist-CT6Bnssj.cjs");let s=require("react");s=t.__toESM(s,1);let l=require("react/jsx-runtime");function h({fill:t}){return(0,l.jsx)("svg",{height:"18px",version:"1.1",viewBox:"0 0 256 256",width:"18px",xmlns:"http://www.w3.org/2000/svg",children:(0,l.jsx)("g",{fill:"none",fillRule:"evenodd",stroke:"none",strokeWidth:1,children:(0,l.jsxs)("g",{id:"icon/背景颜色",children:[(0,l.jsx)("g",{fill:"currentColor",children:(0,l.jsxs)("g",{transform:"translate(119.502295, 137.878331) rotate(-135.000000) translate(-119.502295, -137.878331) translate(48.002295, 31.757731)",children:[(0,l.jsx)("path",{d:"M100.946943,60.8084699 L43.7469427,60.8084699 C37.2852111,60.8084699 32.0469427,66.0467383 32.0469427,72.5084699 L32.0469427,118.70847 C32.0469427,125.170201 37.2852111,130.40847 43.7469427,130.40847 L100.946943,130.40847 C107.408674,130.40847 112.646943,125.170201 112.646943,118.70847 L112.646943,72.5084699 C112.646943,66.0467383 107.408674,60.8084699 100.946943,60.8084699 Z M93.646,79.808 L93.646,111.408 L51.046,111.408 L51.046,79.808 L93.646,79.808 Z",fillRule:"nonzero"}),(0,l.jsx)("path",{d:"M87.9366521,16.90916 L87.9194966,68.2000001 C87.9183543,69.4147389 86.9334998,70.399264 85.7187607,70.4 L56.9423078,70.4 C55.7272813,70.4 54.7423078,69.4150264 54.7423078,68.2 L54.7423078,39.4621057 C54.7423078,37.2523513 55.5736632,35.1234748 57.0711706,33.4985176 L76.4832996,12.4342613 C78.9534987,9.75382857 83.1289108,9.5834005 85.8093436,12.0535996 C87.1658473,13.303709 87.9372691,15.0644715 87.9366521,16.90916 Z",fillRule:"evenodd"}),(0,l.jsx)("path",{d:"M131.3,111.241199 L11.7,111.241199 C5.23826843,111.241199 0,116.479467 0,122.941199 L0,200.541199 C0,207.002931 5.23826843,212.241199 11.7,212.241199 L131.3,212.241199 C137.761732,212.241199 143,207.002931 143,200.541199 L143,122.941199 C143,116.479467 137.761732,111.241199 131.3,111.241199 Z M124,130.241 L124,193.241 L19,193.241 L19,130.241 L124,130.241 Z",fillRule:"nonzero"})]})}),(0,l.jsx)("path",{d:"M51,218 L205,218 C211.075132,218 216,222.924868 216,229 C216,235.075132 211.075132,240 205,240 L51,240 C44.9248678,240 40,235.075132 40,229 C40,222.924868 44.9248678,218 51,218 Z",fill:"string"==typeof t?t:"none",id:"矩形"})]})})})}function c(){const t=o.useButtonProps(u.name),{tooltip:n,isActive:c,defaultColor:d,colors:a,action:g,shortcutKeys:x}=t?.componentProps??{},{editorDisabled:f}=o.useActive(c),[p,C]=(0,s.useState)(d);return t?(0,l.jsx)(i.ColorPicker,{colors:a,disabled:f,highlight:!0,onChange:function(t){f||g&&(g?.(t),C(t))},value:p,children:(0,l.jsx)(e.ActionButton,{disabled:f,tooltip:n,shortcutKeys:x,children:(0,l.jsxs)("span",{className:"richtext-flex richtext-items-center richtext-justify-center richtext-gap-[4px] richtext-text-sm",children:[(0,l.jsx)(h,{fill:p}),(0,l.jsx)(r.IconComponent,{className:"!richtext-h-3 !richtext-w-3 richtext-text-zinc-500",name:"MenuDown"})]})})}):(0,l.jsx)(l.Fragment,{})}var u=n.Highlight.extend({addStorage(){return{currentColor:this.options.defaultColor||void 0}},addOptions(){return{...this.parent?.(),multicolor:!0,button:({editor:t,t:e,extension:i})=>({componentProps:{action:e=>{if("string"==typeof e)return t.storage.highlight.currentColor=e,void t.chain().focus().setHighlight({color:e}).run();t.chain().focus().unsetHighlight().run()},isActive:()=>t.isActive("highlight")||!1,disabled:!1,shortcutKeys:i.options.shortcutKeys??["⇧","mod","H"],tooltip:e("editor.highlight.tooltip"),defaultColor:i.options.defaultColor}})}},addKeyboardShortcuts(){return{...this.parent?.(),"Mod-Shift-h":()=>{const t=this.storage.currentColor||this.options.defaultColor;if(!t){const{color:t}=this.editor.getAttributes("highlight");return!!t&&this.editor.chain().focus().unsetHighlight().run()}return this.editor.isActive("highlight",{color:t})?this.editor.chain().focus().unsetHighlight().run():this.editor.chain().focus().setHighlight({color:t}).run()}}}});Object.defineProperty(exports,"Highlight",{enumerable:!0,get:function(){return u}}),Object.defineProperty(exports,"RichTextHighlight",{enumerable:!0,get:function(){return c}});
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{n as t}from"./toggle-BnR5VE66.js";import{n as e}from"./separator-CVKC9LXg.js";import{t as r}from"./Icon-B4rxamCu.js";import{s as o,t as i}from"./useButtonProps-
|
|
1
|
+
import{n as t}from"./toggle-BnR5VE66.js";import{n as e}from"./separator-CVKC9LXg.js";import{t as r}from"./Icon-B4rxamCu.js";import{s as o,t as i}from"./useButtonProps-Codtb0k0.js";import n,{useState as s}from"react";import{Mark as l,getStyleProperty as h,markInputRule as a,markPasteRule as c,mergeAttributes as d}from"@tiptap/core";import{Fragment as u,jsx as g,jsxs as p}from"react/jsx-runtime";var m=/(?:^|\s)(==(?!\s+==)((?:[^=]+))==(?!\s+==))$/,f=/(?:^|\s)(==(?!\s+==)((?:[^=]+))==(?!\s+==))/g,C=l.create({name:"highlight",addOptions:()=>({multicolor:!1,HTMLAttributes:{}}),addAttributes(){return this.options.multicolor?{color:{default:null,parseHTML:t=>t.getAttribute("data-color")||h(t,"background-color")||t.style.backgroundColor,renderHTML:t=>t.color?{"data-color":t.color,style:`background-color: ${t.color}; color: inherit`}:{}}}:{}},parseHTML:()=>[{tag:"mark"}],renderHTML({HTMLAttributes:t}){return["mark",d(this.options.HTMLAttributes,t),0]},renderMarkdown:(t,e)=>`==${e.renderChildren(t)}==`,parseMarkdown:(t,e)=>e.applyMark("highlight",e.parseInline(t.tokens||[])),markdownTokenizer:{name:"highlight",level:"inline",start:t=>t.indexOf("=="),tokenize(t,e,r){const o=/^(==)([^=]+)(==)/.exec(t);if(o){const t=o[2].trim(),e=r.inlineTokens(t);return{type:"highlight",raw:o[0],text:t,tokens:e}}}},addCommands(){return{setHighlight:t=>({commands:e})=>e.setMark(this.name,t),toggleHighlight:t=>({commands:e})=>e.toggleMark(this.name,t),unsetHighlight:()=>({commands:t})=>t.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-Shift-h":()=>this.editor.commands.toggleHighlight()}},addInputRules(){return[a({find:m,type:this.type})]},addPasteRules(){return[c({find:f,type:this.type})]}}),L=C;function x({fill:t}){/* @__PURE__ */
|
|
2
2
|
return g("svg",{height:"18px",version:"1.1",viewBox:"0 0 256 256",width:"18px",xmlns:"http://www.w3.org/2000/svg",children:/* @__PURE__ */g("g",{fill:"none",fillRule:"evenodd",stroke:"none",strokeWidth:1,children:/* @__PURE__ */p("g",{id:"icon/背景颜色",children:[/* @__PURE__ */g("g",{fill:"currentColor",children:/* @__PURE__ */p("g",{transform:"translate(119.502295, 137.878331) rotate(-135.000000) translate(-119.502295, -137.878331) translate(48.002295, 31.757731)",children:[
|
|
3
3
|
/* @__PURE__ */g("path",{d:"M100.946943,60.8084699 L43.7469427,60.8084699 C37.2852111,60.8084699 32.0469427,66.0467383 32.0469427,72.5084699 L32.0469427,118.70847 C32.0469427,125.170201 37.2852111,130.40847 43.7469427,130.40847 L100.946943,130.40847 C107.408674,130.40847 112.646943,125.170201 112.646943,118.70847 L112.646943,72.5084699 C112.646943,66.0467383 107.408674,60.8084699 100.946943,60.8084699 Z M93.646,79.808 L93.646,111.408 L51.046,111.408 L51.046,79.808 L93.646,79.808 Z",fillRule:"nonzero"}),
|
|
4
4
|
/* @__PURE__ */g("path",{d:"M87.9366521,16.90916 L87.9194966,68.2000001 C87.9183543,69.4147389 86.9334998,70.399264 85.7187607,70.4 L56.9423078,70.4 C55.7272813,70.4 54.7423078,69.4150264 54.7423078,68.2 L54.7423078,39.4621057 C54.7423078,37.2523513 55.5736632,35.1234748 57.0711706,33.4985176 L76.4832996,12.4342613 C78.9534987,9.75382857 83.1289108,9.5834005 85.8093436,12.0535996 C87.1658473,13.303709 87.9372691,15.0644715 87.9366521,16.90916 Z",fillRule:"evenodd"}),
|
package/dist/Highlight.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./rolldown-runtime-BeavJI0R.cjs");const i=require("./Highlight-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./rolldown-runtime-BeavJI0R.cjs");const i=require("./Highlight-cO9V18Me.cjs");exports.Highlight=i.Highlight,exports.RichTextHighlight=i.RichTextHighlight;
|
package/dist/Highlight.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as t,t as i}from"./Highlight-
|
|
1
|
+
import{n as t,t as i}from"./Highlight-uXDlNgw3.js";export{i as Highlight,t as RichTextHighlight};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as t}from"./dist-DmY5xFkC.js";import{n as e}from"./toggle-BnR5VE66.js";import{s as o,t as n}from"./useButtonProps-BZwO1Of-.js";import r from"react";import{Extension as s,callOrReturn as i,getChangedRanges as a,getExtensionField as d,isNodeEmpty as c,isNodeSelection as p}from"@tiptap/core";import{Plugin as l,PluginKey as u}from"@tiptap/pm/state";import{Fragment as h,jsx as m}from"react/jsx-runtime";import{dropCursor as f}from"@tiptap/pm/dropcursor";import{Decoration as y,DecorationSet as g}from"@tiptap/pm/view";import{gapCursor as b}from"@tiptap/pm/gapcursor";import{history as w,redo as A,undo as C}from"@tiptap/pm/history";s.create({name:"characterCount",addOptions:()=>({limit:null,autoTrim:!0,mode:"textSize",textCounter:t=>t.length,wordCounter:t=>t.split(" ").filter(t=>""!==t).length}),addStorage:()=>({characters:()=>0,words:()=>0}),onBeforeCreate(){this.storage.characters=t=>{const e=(null==t?void 0:t.node)||this.editor.state.doc;if("textSize"===((null==t?void 0:t.mode)||this.options.mode)){const t=e.textBetween(0,e.content.size,void 0," ");return this.options.textCounter(t)}return e.nodeSize},this.storage.words=t=>{const e=(null==t?void 0:t.node)||this.editor.state.doc,o=e.textBetween(0,e.content.size," "," ");return this.options.wordCounter(o)}},addProseMirrorPlugins(){let t=!1;return[new l({key:new u("characterCount"),appendTransaction:(e,o,n)=>{if(t)return;const r=this.options.limit,s=this.options.autoTrim;if(null==r||0===r||!1===s)return void(t=!0);const i=this.storage.characters({node:n.doc});if(i>r){const e=0,o=i-r,s=n.tr.deleteRange(e,o);return t=!0,s}t=!0},filterTransaction:(t,e)=>{const o=this.options.limit;if(!t.docChanged||0===o||null==o)return!0;const n=this.storage.characters({node:e.doc}),r=this.storage.characters({node:t.doc});if(r<=o)return!0;if(n>o&&r>o&&r<=n)return!0;if(n>o&&r>o&&r>n)return!1;if(!t.getMeta("paste"))return!1;const s=t.selection.$head.pos,i=s-(r-o),a=s;return t.deleteRange(i,a),!(this.storage.characters({node:t.doc})>o)}})]}});var v=s.create({name:"dropCursor",addOptions:()=>({color:"currentColor",width:1,class:void 0}),addProseMirrorPlugins(){return[f(this.options)]}}),M=(s.create({name:"focus",addOptions:()=>({className:"has-focus",mode:"all"}),addProseMirrorPlugins(){return[new l({key:new u("focus"),props:{decorations:({doc:t,selection:e})=>{const{isEditable:o,isFocused:n}=this.editor,{anchor:r}=e,s=[];if(!o||!n)return g.create(t,[]);let i=0;"deepest"===this.options.mode&&t.descendants((t,e)=>{if(!t.isText)return r>=e&&r<=e+t.nodeSize-1&&void(i+=1)});let a=0;return t.descendants((t,e)=>!t.isText&&(r>=e&&r<=e+t.nodeSize-1&&(a+=1,"deepest"===this.options.mode&&i-a>0||"shallowest"===this.options.mode&&a>1?"deepest"===this.options.mode:void s.push(y.node(e,e+t.nodeSize,{class:this.options.className}))))),g.create(t,s)}}})]}}),s.create({name:"gapCursor",addProseMirrorPlugins:()=>[b()],extendNodeSchema(t){var e;const o={name:t.name,options:t.options,storage:t.storage};return{allowGapCursor:null!=(e=i(d(t,"allowGapCursor",o)))?e:null}}})),z="placeholder",S=new u("tiptap__placeholder");function O(t){const{editor:e,placeholder:o,dataAttribute:n,pos:r,node:s,isEmptyDoc:i,hasAnchor:a,classes:{emptyNode:d,emptyEditor:c}}=t,p=[d];return i&&p.push(c),y.node(r,r+s.nodeSize,{class:p.join(" "),[n]:"function"==typeof o?o({editor:e,node:s,pos:r,hasAnchor:a}):o})}function E(t,e){return"function"==typeof t?t(e):t}function P({editor:t,options:e,dataAttribute:o,doc:n,selection:r,from:s,to:i}){const{anchor:a}=r,d=[],p=t.isEmpty;return n.nodesBetween(s,i,(n,r)=>{const s=a>=r&&a<=r+n.nodeSize,i=!n.isLeaf&&c(n);return n.type.isTextblock?(!s&&e.showOnlyCurrent||!i||d.push(O({editor:t,isEmptyDoc:p,dataAttribute:o,hasAnchor:s,placeholder:e.placeholder,classes:{emptyEditor:e.emptyEditorClass,emptyNode:E(e.emptyNodeClass,{editor:t,node:n,pos:r,hasAnchor:s})},node:n,pos:r})),e.includeChildren):e.includeChildren}),d}function x({editor:t,options:e,dataAttribute:o,doc:n,selection:r}){if(!t.isEditable&&e.showOnlyWhenEditable)return null;const{anchor:s}=r,i=[],a=t.isEmpty;if(e.showOnlyCurrent&&!e.includeChildren){const r=n.resolve(s),d=r.depth>0?r.node(1):r.nodeAfter,p=r.depth>0?r.before(1):s;if(d&&d.type.isTextblock&&c(d)){const n=s>=p&&s<=p+d.nodeSize;i.push(O({editor:t,isEmptyDoc:a,dataAttribute:o,hasAnchor:n,placeholder:e.placeholder,classes:{emptyEditor:e.emptyEditorClass,emptyNode:E(e.emptyNodeClass,{editor:t,node:d,pos:p,hasAnchor:n})},node:d,pos:p}))}}else i.push(...P({editor:t,options:e,dataAttribute:o,doc:n,selection:r,from:0,to:n.content.size}));return g.create(n,i)}function N(t,e){var o;const n=t.resolve(e);if(0===n.depth){const t=null!=(o=n.nodeAfter)?o:n.nodeBefore;if(!t)return{from:e,to:e};const r=n.nodeAfter?e:e-t.nodeSize;return{from:r,to:r+t.nodeSize}}const r=n.before(1);return{from:r,to:r+n.node(1).nodeSize}}function T(t,e){return{from:Math.max(0,e.from-1),to:Math.min(t.content.size,e.to-1)}}function D(t,e){const o=function(t,e,o){const n=[];return t.forEach((t,r)=>{const s=r,i=s+t.nodeSize;s+1<o&&i+1>e&&n.push({from:s,to:i})}),n}(t,e.from,e.to);return o.push(T(t,N(t,e.from))),e.to>e.from?o.push(T(t,N(t,Math.min(e.to,t.content.size+1)-1))):e.from<t.content.size+1&&o.push(T(t,N(t,Math.min(e.from+1,t.content.size)))),o}function K(t,e,o){const n=[];if(t.docChanged){const e=a(t);for(const t of e)n.push(...D(o.doc,t.newRange))}return t.selectionSet&&(n.push(T(o.doc,N(o.doc,t.mapping.map(e.selection.anchor)))),n.push(T(o.doc,N(o.doc,o.selection.anchor)))),function(t){if(0===t.length)return[];const e=[...t].sort((t,e)=>t.from-e.from),o=[{...e[0]}];for(let n=1;n<e.length;n+=1){const t=o[o.length-1],r=e[n];r.from<=t.to?t.to=Math.max(t.to,r.to):o.push({...r})}return o}(n)}function k(t,e,o){const n=Math.max(0,Math.min(t,o.content.size));return{from:n,to:Math.max(n,Math.min(e,o.content.size))}}function j({editor:t,options:e,dataAttribute:o}){return{init(n,r){const s=x({editor:t,options:e,dataAttribute:o,doc:r.doc,selection:r.selection});return null!=s?s:g.empty},apply:(n,r,s,i)=>n.docChanged||n.selectionSet?function({decorations:t,ranges:e,editor:o,options:n,dataAttribute:r,doc:s,selection:i}){let a=t;for(const d of e){const{from:t,to:e}=k(d.from,d.to,s),c=a.find(t,e).filter(o=>o.from>=t&&o.to<=e);c.length&&(a=a.remove(c));const p=P({editor:o,options:n,dataAttribute:r,doc:s,selection:i,from:t,to:e});p.length&&(a=a.add(s,p))}return a}({decorations:r.map(n.mapping,n.doc),ranges:K(n,s,i),editor:t,options:e,dataAttribute:o,doc:i.doc,selection:i.selection}):r}}function B({editor:t,options:e}){const o=e.dataAttribute?`data-${n=e.dataAttribute,n.replace(/\s+/g,"-").replace(/[^a-zA-Z0-9-]/g,"").replace(/^[0-9-]+/,"").replace(/^-+/,"").toLowerCase()}`:`data-${z}`;var n;const r=e.showOnlyCurrent&&!e.includeChildren;return new l({key:S,...r?{}:{state:j({editor:t,options:e,dataAttribute:o})},props:{decorations:r?({doc:n,selection:r})=>x({editor:t,options:e,dataAttribute:o,doc:n,selection:r}):o=>{var n;return e.showOnlyWhenEditable&&!t.isEditable?g.empty:null!=(n=S.getState(o))?n:g.empty}}})}var R=s.create({name:"placeholder",addOptions:()=>({emptyEditorClass:"is-editor-empty",emptyNodeClass:"is-empty",dataAttribute:z,placeholder:"Write something …",showOnlyWhenEditable:!0,showOnlyCurrent:!0,includeChildren:!1}),addProseMirrorPlugins(){return[B({editor:this.editor,options:this.options})]}});function W(t,e){return!t.selection.empty&&!p(t.selection)&&e.isEditable}s.create({name:"selection",addOptions:()=>({className:"selection"}),addProseMirrorPlugins(){const{editor:t,options:e}=this;return[new l({key:new u("selection"),props:{decorations:o=>function(t,e){return W(t,e)&&!e.isFocused&&!e.view.dragging}(o,t)?g.create(o.doc,[y.inline(o.selection.from,o.selection.to,{class:e.className})]):null,handleDOMEvents:{blur(e){return!!W(e.state,t)&&(null==(o=window.getSelection())||o.removeAllRanges(),!1);var o},focus:e=>!!W(e.state,t)&&(requestAnimationFrame(()=>{!t.isDestroyed&&e.hasFocus()&&function(t){t.focus()}(e)}),!1)}}})]}});function F({types:t,node:e}){return e&&Array.isArray(t)&&t.includes(e.type)||(null==e?void 0:e.type)===t}var G=s.create({name:"trailingNode",addOptions:()=>({node:void 0,notAfter:[]}),addProseMirrorPlugins(){var t;const e=new u(this.name),o=this.options.node||(null==(t=this.editor.schema.topNodeType.contentMatch.defaultType)?void 0:t.name)||"paragraph",n=Object.entries(this.editor.schema.nodes).map(([,t])=>t).filter(t=>(this.options.notAfter||[]).concat(o).includes(t.name));return[new l({key:e,appendTransaction:(t,n,r)=>{const{doc:s,tr:i,schema:a}=r,d=e.getState(r),c=s.content.size,p=a.nodes[o];if(!t.some(t=>t.getMeta("skipTrailingNode"))&&d)return i.insert(c,p.create())},state:{init:(t,e)=>!F({node:e.tr.doc.lastChild,types:n}),apply:(t,e)=>{if(!t.docChanged)return e;if(t.getMeta("__uniqueIDTransaction"))return e;return!F({node:t.doc.lastChild,types:n})}}})]}}),_=s.create({name:"undoRedo",addOptions:()=>({depth:100,newGroupDelay:500}),addCommands:()=>({undo:()=>({state:t,dispatch:e})=>C(t,e),redo:()=>({state:t,dispatch:e})=>A(t,e)}),addProseMirrorPlugins(){return[w(this.options)]},addKeyboardShortcuts(){return{"Mod-z":()=>this.editor.commands.undo(),"Shift-Mod-z":()=>this.editor.commands.redo(),"Mod-y":()=>this.editor.commands.redo(),"Mod-я":()=>this.editor.commands.undo(),"Shift-Mod-я":()=>this.editor.commands.redo()}}});function Z({hideWhenDisabled:r}={}){const s=n(q.name),{icon:i,tooltip:a,shortcutKeys:d,tooltipOptions:c={},action:p,isActive:l}=s?.componentProps?.undo??{},{disabled:u}=o(l),f=t[i];return s&&f?r&&u?/* @__PURE__ */m(h,{}):/* @__PURE__ */m(e,{action:()=>{u||p&&p()},disabled:u,icon:i,shortcutKeys:d,tooltip:a,tooltipOptions:c}):/* @__PURE__ */m(h,{})}function $({hideWhenDisabled:t}={}){const r=n(q.name),{icon:s,tooltip:i,shortcutKeys:a,tooltipOptions:d={},action:c,isActive:p}=r?.componentProps?.redo??{},{disabled:l}=o(p);return r?t&&l?/* @__PURE__ */m(h,{}):/* @__PURE__ */m(e,{action:()=>{l||c&&c()},disabled:l,icon:s,shortcutKeys:a,tooltip:i,tooltipOptions:d}):/* @__PURE__ */m(h,{})}var q=_.extend({addOptions(){return{...this.parent?.(),depth:100,newGroupDelay:500,button:({editor:t,t:e,extension:o})=>({componentProps:{undo:{action:()=>{t.chain().focus().undo().run()},shortcutKeys:o.options.shortcutKeys?.[0]??["mod","Z"],isActive:()=>t.can().undo(),icon:"Undo2",tooltip:e("editor.undo.tooltip")},redo:{action:()=>{t.chain().focus().redo().run()},shortcutKeys:o.options.shortcutKeys?.[1]??["shift","mod","Z"],isActive:()=>t.can().redo(),icon:"Redo2",tooltip:e("editor.redo.tooltip")}}})}}});export{M as a,_ as c,v as i,$ as n,R as o,Z as r,G as s,q as t};
|
|
1
|
+
import{n as t}from"./dist-DmY5xFkC.js";import{n as e}from"./toggle-BnR5VE66.js";import{s as o,t as n}from"./useButtonProps-Codtb0k0.js";import r from"react";import{Extension as s,callOrReturn as i,getChangedRanges as a,getExtensionField as d,isNodeEmpty as c,isNodeSelection as p}from"@tiptap/core";import{Plugin as l,PluginKey as u}from"@tiptap/pm/state";import{Fragment as h,jsx as m}from"react/jsx-runtime";import{dropCursor as f}from"@tiptap/pm/dropcursor";import{Decoration as y,DecorationSet as g}from"@tiptap/pm/view";import{gapCursor as b}from"@tiptap/pm/gapcursor";import{history as w,redo as A,undo as C}from"@tiptap/pm/history";s.create({name:"characterCount",addOptions:()=>({limit:null,autoTrim:!0,mode:"textSize",textCounter:t=>t.length,wordCounter:t=>t.split(" ").filter(t=>""!==t).length}),addStorage:()=>({characters:()=>0,words:()=>0}),onBeforeCreate(){this.storage.characters=t=>{const e=(null==t?void 0:t.node)||this.editor.state.doc;if("textSize"===((null==t?void 0:t.mode)||this.options.mode)){const t=e.textBetween(0,e.content.size,void 0," ");return this.options.textCounter(t)}return e.nodeSize},this.storage.words=t=>{const e=(null==t?void 0:t.node)||this.editor.state.doc,o=e.textBetween(0,e.content.size," "," ");return this.options.wordCounter(o)}},addProseMirrorPlugins(){let t=!1;return[new l({key:new u("characterCount"),appendTransaction:(e,o,n)=>{if(t)return;const r=this.options.limit,s=this.options.autoTrim;if(null==r||0===r||!1===s)return void(t=!0);const i=this.storage.characters({node:n.doc});if(i>r){const e=0,o=i-r,s=n.tr.deleteRange(e,o);return t=!0,s}t=!0},filterTransaction:(t,e)=>{const o=this.options.limit;if(!t.docChanged||0===o||null==o)return!0;const n=this.storage.characters({node:e.doc}),r=this.storage.characters({node:t.doc});if(r<=o)return!0;if(n>o&&r>o&&r<=n)return!0;if(n>o&&r>o&&r>n)return!1;if(!t.getMeta("paste"))return!1;const s=t.selection.$head.pos,i=s-(r-o),a=s;return t.deleteRange(i,a),!(this.storage.characters({node:t.doc})>o)}})]}});var v=s.create({name:"dropCursor",addOptions:()=>({color:"currentColor",width:1,class:void 0}),addProseMirrorPlugins(){return[f(this.options)]}}),M=(s.create({name:"focus",addOptions:()=>({className:"has-focus",mode:"all"}),addProseMirrorPlugins(){return[new l({key:new u("focus"),props:{decorations:({doc:t,selection:e})=>{const{isEditable:o,isFocused:n}=this.editor,{anchor:r}=e,s=[];if(!o||!n)return g.create(t,[]);let i=0;"deepest"===this.options.mode&&t.descendants((t,e)=>{if(!t.isText)return r>=e&&r<=e+t.nodeSize-1&&void(i+=1)});let a=0;return t.descendants((t,e)=>!t.isText&&(r>=e&&r<=e+t.nodeSize-1&&(a+=1,"deepest"===this.options.mode&&i-a>0||"shallowest"===this.options.mode&&a>1?"deepest"===this.options.mode:void s.push(y.node(e,e+t.nodeSize,{class:this.options.className}))))),g.create(t,s)}}})]}}),s.create({name:"gapCursor",addProseMirrorPlugins:()=>[b()],extendNodeSchema(t){var e;const o={name:t.name,options:t.options,storage:t.storage};return{allowGapCursor:null!=(e=i(d(t,"allowGapCursor",o)))?e:null}}})),z="placeholder",S=new u("tiptap__placeholder");function O(t){const{editor:e,placeholder:o,dataAttribute:n,pos:r,node:s,isEmptyDoc:i,hasAnchor:a,classes:{emptyNode:d,emptyEditor:c}}=t,p=[d];return i&&p.push(c),y.node(r,r+s.nodeSize,{class:p.join(" "),[n]:"function"==typeof o?o({editor:e,node:s,pos:r,hasAnchor:a}):o})}function E(t,e){return"function"==typeof t?t(e):t}function P({editor:t,options:e,dataAttribute:o,doc:n,selection:r,from:s,to:i}){const{anchor:a}=r,d=[],p=t.isEmpty;return n.nodesBetween(s,i,(n,r)=>{const s=a>=r&&a<=r+n.nodeSize,i=!n.isLeaf&&c(n);return n.type.isTextblock?(!s&&e.showOnlyCurrent||!i||d.push(O({editor:t,isEmptyDoc:p,dataAttribute:o,hasAnchor:s,placeholder:e.placeholder,classes:{emptyEditor:e.emptyEditorClass,emptyNode:E(e.emptyNodeClass,{editor:t,node:n,pos:r,hasAnchor:s})},node:n,pos:r})),e.includeChildren):e.includeChildren}),d}function x({editor:t,options:e,dataAttribute:o,doc:n,selection:r}){if(!t.isEditable&&e.showOnlyWhenEditable)return null;const{anchor:s}=r,i=[],a=t.isEmpty;if(e.showOnlyCurrent&&!e.includeChildren){const r=n.resolve(s),d=r.depth>0?r.node(1):r.nodeAfter,p=r.depth>0?r.before(1):s;if(d&&d.type.isTextblock&&c(d)){const n=s>=p&&s<=p+d.nodeSize;i.push(O({editor:t,isEmptyDoc:a,dataAttribute:o,hasAnchor:n,placeholder:e.placeholder,classes:{emptyEditor:e.emptyEditorClass,emptyNode:E(e.emptyNodeClass,{editor:t,node:d,pos:p,hasAnchor:n})},node:d,pos:p}))}}else i.push(...P({editor:t,options:e,dataAttribute:o,doc:n,selection:r,from:0,to:n.content.size}));return g.create(n,i)}function N(t,e){var o;const n=t.resolve(e);if(0===n.depth){const t=null!=(o=n.nodeAfter)?o:n.nodeBefore;if(!t)return{from:e,to:e};const r=n.nodeAfter?e:e-t.nodeSize;return{from:r,to:r+t.nodeSize}}const r=n.before(1);return{from:r,to:r+n.node(1).nodeSize}}function T(t,e){return{from:Math.max(0,e.from-1),to:Math.min(t.content.size,e.to-1)}}function D(t,e){const o=function(t,e,o){const n=[];return t.forEach((t,r)=>{const s=r,i=s+t.nodeSize;s+1<o&&i+1>e&&n.push({from:s,to:i})}),n}(t,e.from,e.to);return o.push(T(t,N(t,e.from))),e.to>e.from?o.push(T(t,N(t,Math.min(e.to,t.content.size+1)-1))):e.from<t.content.size+1&&o.push(T(t,N(t,Math.min(e.from+1,t.content.size)))),o}function K(t,e,o){const n=[];if(t.docChanged){const e=a(t);for(const t of e)n.push(...D(o.doc,t.newRange))}return t.selectionSet&&(n.push(T(o.doc,N(o.doc,t.mapping.map(e.selection.anchor)))),n.push(T(o.doc,N(o.doc,o.selection.anchor)))),function(t){if(0===t.length)return[];const e=[...t].sort((t,e)=>t.from-e.from),o=[{...e[0]}];for(let n=1;n<e.length;n+=1){const t=o[o.length-1],r=e[n];r.from<=t.to?t.to=Math.max(t.to,r.to):o.push({...r})}return o}(n)}function k(t,e,o){const n=Math.max(0,Math.min(t,o.content.size));return{from:n,to:Math.max(n,Math.min(e,o.content.size))}}function j({editor:t,options:e,dataAttribute:o}){return{init(n,r){const s=x({editor:t,options:e,dataAttribute:o,doc:r.doc,selection:r.selection});return null!=s?s:g.empty},apply:(n,r,s,i)=>n.docChanged||n.selectionSet?function({decorations:t,ranges:e,editor:o,options:n,dataAttribute:r,doc:s,selection:i}){let a=t;for(const d of e){const{from:t,to:e}=k(d.from,d.to,s),c=a.find(t,e).filter(o=>o.from>=t&&o.to<=e);c.length&&(a=a.remove(c));const p=P({editor:o,options:n,dataAttribute:r,doc:s,selection:i,from:t,to:e});p.length&&(a=a.add(s,p))}return a}({decorations:r.map(n.mapping,n.doc),ranges:K(n,s,i),editor:t,options:e,dataAttribute:o,doc:i.doc,selection:i.selection}):r}}function B({editor:t,options:e}){const o=e.dataAttribute?`data-${n=e.dataAttribute,n.replace(/\s+/g,"-").replace(/[^a-zA-Z0-9-]/g,"").replace(/^[0-9-]+/,"").replace(/^-+/,"").toLowerCase()}`:`data-${z}`;var n;const r=e.showOnlyCurrent&&!e.includeChildren;return new l({key:S,...r?{}:{state:j({editor:t,options:e,dataAttribute:o})},props:{decorations:r?({doc:n,selection:r})=>x({editor:t,options:e,dataAttribute:o,doc:n,selection:r}):o=>{var n;return e.showOnlyWhenEditable&&!t.isEditable?g.empty:null!=(n=S.getState(o))?n:g.empty}}})}var R=s.create({name:"placeholder",addOptions:()=>({emptyEditorClass:"is-editor-empty",emptyNodeClass:"is-empty",dataAttribute:z,placeholder:"Write something …",showOnlyWhenEditable:!0,showOnlyCurrent:!0,includeChildren:!1}),addProseMirrorPlugins(){return[B({editor:this.editor,options:this.options})]}});function W(t,e){return!t.selection.empty&&!p(t.selection)&&e.isEditable}s.create({name:"selection",addOptions:()=>({className:"selection"}),addProseMirrorPlugins(){const{editor:t,options:e}=this;return[new l({key:new u("selection"),props:{decorations:o=>function(t,e){return W(t,e)&&!e.isFocused&&!e.view.dragging}(o,t)?g.create(o.doc,[y.inline(o.selection.from,o.selection.to,{class:e.className})]):null,handleDOMEvents:{blur(e){return!!W(e.state,t)&&(null==(o=window.getSelection())||o.removeAllRanges(),!1);var o},focus:e=>!!W(e.state,t)&&(requestAnimationFrame(()=>{!t.isDestroyed&&e.hasFocus()&&function(t){t.focus()}(e)}),!1)}}})]}});function F({types:t,node:e}){return e&&Array.isArray(t)&&t.includes(e.type)||(null==e?void 0:e.type)===t}var G=s.create({name:"trailingNode",addOptions:()=>({node:void 0,notAfter:[]}),addProseMirrorPlugins(){var t;const e=new u(this.name),o=this.options.node||(null==(t=this.editor.schema.topNodeType.contentMatch.defaultType)?void 0:t.name)||"paragraph",n=Object.entries(this.editor.schema.nodes).map(([,t])=>t).filter(t=>(this.options.notAfter||[]).concat(o).includes(t.name));return[new l({key:e,appendTransaction:(t,n,r)=>{const{doc:s,tr:i,schema:a}=r,d=e.getState(r),c=s.content.size,p=a.nodes[o];if(!t.some(t=>t.getMeta("skipTrailingNode"))&&d)return i.insert(c,p.create())},state:{init:(t,e)=>!F({node:e.tr.doc.lastChild,types:n}),apply:(t,e)=>{if(!t.docChanged)return e;if(t.getMeta("__uniqueIDTransaction"))return e;return!F({node:t.doc.lastChild,types:n})}}})]}}),_=s.create({name:"undoRedo",addOptions:()=>({depth:100,newGroupDelay:500}),addCommands:()=>({undo:()=>({state:t,dispatch:e})=>C(t,e),redo:()=>({state:t,dispatch:e})=>A(t,e)}),addProseMirrorPlugins(){return[w(this.options)]},addKeyboardShortcuts(){return{"Mod-z":()=>this.editor.commands.undo(),"Shift-Mod-z":()=>this.editor.commands.redo(),"Mod-y":()=>this.editor.commands.redo(),"Mod-я":()=>this.editor.commands.undo(),"Shift-Mod-я":()=>this.editor.commands.redo()}}});function Z({hideWhenDisabled:r}={}){const s=n(q.name),{icon:i,tooltip:a,shortcutKeys:d,tooltipOptions:c={},action:p,isActive:l}=s?.componentProps?.undo??{},{disabled:u}=o(l),f=t[i];return s&&f?r&&u?/* @__PURE__ */m(h,{}):/* @__PURE__ */m(e,{action:()=>{u||p&&p()},disabled:u,icon:i,shortcutKeys:d,tooltip:a,tooltipOptions:c}):/* @__PURE__ */m(h,{})}function $({hideWhenDisabled:t}={}){const r=n(q.name),{icon:s,tooltip:i,shortcutKeys:a,tooltipOptions:d={},action:c,isActive:p}=r?.componentProps?.redo??{},{disabled:l}=o(p);return r?t&&l?/* @__PURE__ */m(h,{}):/* @__PURE__ */m(e,{action:()=>{l||c&&c()},disabled:l,icon:s,shortcutKeys:a,tooltip:i,tooltipOptions:d}):/* @__PURE__ */m(h,{})}var q=_.extend({addOptions(){return{...this.parent?.(),depth:100,newGroupDelay:500,button:({editor:t,t:e,extension:o})=>({componentProps:{undo:{action:()=>{t.chain().focus().undo().run()},shortcutKeys:o.options.shortcutKeys?.[0]??["mod","Z"],isActive:()=>t.can().undo(),icon:"Undo2",tooltip:e("editor.undo.tooltip")},redo:{action:()=>{t.chain().focus().redo().run()},shortcutKeys:o.options.shortcutKeys?.[1]??["shift","mod","Z"],isActive:()=>t.can().redo(),icon:"Redo2",tooltip:e("editor.redo.tooltip")}}})}}});export{M as a,_ as c,v as i,$ as n,R as o,Z as r,G as s,q as t};
|
package/dist/History.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./rolldown-runtime-BeavJI0R.cjs"),o=require("./dist-2-kjLBhJ.cjs"),e=require("./toggle-JU5XOZYT.cjs"),i=require("./useButtonProps-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./rolldown-runtime-BeavJI0R.cjs"),o=require("./dist-2-kjLBhJ.cjs"),e=require("./toggle-JU5XOZYT.cjs"),i=require("./useButtonProps-BBiR6DPI.cjs"),n=require("./dist-4hFSoVwJ.cjs");let s=require("react");s=t.__toESM(s,1);let r=require("react/jsx-runtime");var c=n.UndoRedo.extend({addOptions(){return{...this.parent?.(),depth:100,newGroupDelay:500,button:({editor:t,t:o,extension:e})=>({componentProps:{undo:{action:()=>{t.chain().focus().undo().run()},shortcutKeys:e.options.shortcutKeys?.[0]??["mod","Z"],isActive:()=>t.can().undo(),icon:"Undo2",tooltip:o("editor.undo.tooltip")},redo:{action:()=>{t.chain().focus().redo().run()},shortcutKeys:e.options.shortcutKeys?.[1]??["shift","mod","Z"],isActive:()=>t.can().redo(),icon:"Redo2",tooltip:o("editor.redo.tooltip")}}})}}});exports.History=c,exports.RichTextRedo=function({hideWhenDisabled:t}={}){const o=i.useButtonProps(c.name),{icon:n,tooltip:s,shortcutKeys:u,tooltipOptions:d={},action:p,isActive:a}=o?.componentProps?.redo??{},{disabled:l}=i.useActive(a);return o?t&&l?(0,r.jsx)(r.Fragment,{}):(0,r.jsx)(e.ActionButton,{action:()=>{l||p&&p()},disabled:l,icon:n,shortcutKeys:u,tooltip:s,tooltipOptions:d}):(0,r.jsx)(r.Fragment,{})},exports.RichTextUndo=function({hideWhenDisabled:t}={}){const n=i.useButtonProps(c.name),{icon:s,tooltip:u,shortcutKeys:d,tooltipOptions:p={},action:a,isActive:l}=n?.componentProps?.undo??{},{disabled:h}=i.useActive(l),x=o.icons[s];return n&&x?t&&h?(0,r.jsx)(r.Fragment,{}):(0,r.jsx)(e.ActionButton,{action:()=>{h||a&&a()},disabled:h,icon:s,shortcutKeys:d,tooltip:u,tooltipOptions:p}):(0,r.jsx)(r.Fragment,{})};
|
package/dist/History.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as r,r as s,t as o}from"./History-
|
|
1
|
+
import{n as r,r as s,t as o}from"./History-BoHiw0Bn.js";export{o as History,r as RichTextRedo,s as RichTextUndo};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as t}from"./toggle-BnR5VE66.js";import{c as e,t as o}from"./useButtonProps-
|
|
1
|
+
import{n as t}from"./toggle-BnR5VE66.js";import{c as e,t as o}from"./useButtonProps-Codtb0k0.js";import{Node as n,canInsertNode as r,isNodeSelection as s,mergeAttributes as i,nodeInputRule as a}from"@tiptap/core";import{NodeSelection as d,TextSelection as c}from"@tiptap/pm/state";import{Fragment as p,jsx as l}from"react/jsx-runtime";var u=n.create({name:"horizontalRule",addOptions:()=>({HTMLAttributes:{},nextNodeType:"paragraph"}),group:"block",parseHTML:()=>[{tag:"hr"}],renderHTML({HTMLAttributes:t}){return["hr",i(this.options.HTMLAttributes,t)]},markdownTokenName:"hr",parseMarkdown:(t,e)=>e.createNode("horizontalRule"),renderMarkdown:()=>"---",addCommands(){return{setHorizontalRule:()=>({chain:t,state:e})=>{if(!r(e,e.schema.nodes[this.name]))return!1;const{selection:o}=e,{$to:n}=o,i=t();return s(o)?i.insertContentAt(n.pos,{type:this.name}):i.insertContent({type:this.name}),i.command(({state:t,tr:e,dispatch:o})=>{if(o){const{$to:o}=e.selection,n=o.end();if(o.nodeAfter)o.nodeAfter.isTextblock?e.setSelection(c.create(e.doc,o.pos+1)):o.nodeAfter.isBlock?e.setSelection(d.create(e.doc,o.pos)):e.setSelection(c.create(e.doc,o.pos));else{const r=t.schema.nodes[this.options.nextNodeType]||o.parent.type.contentMatch.defaultType,s=null==r?void 0:r.create();s&&(e.insert(n,s),e.setSelection(c.create(e.doc,n+1)))}e.scrollIntoView()}return!0}).run()}}},addInputRules(){return[a({find:/^(?:---|—-|___\s|\*\*\*\s)$/,type:this.type})]}}),m=u;function h(){const n=o(f.name),{icon:r,tooltip:s,shortcutKeys:i,tooltipOptions:a={},action:d,isActive:c}=n?.componentProps??{},{dataState:u,disabled:m,update:h}=e(c);return n?/* @__PURE__ */l(t,{action:()=>{m||d&&(d(),h())},dataState:u,disabled:m,icon:r,shortcutKeys:i,tooltip:s,tooltipOptions:a}):/* @__PURE__ */l(p,{})}var f=u.extend({addOptions(){return{...this.parent?.(),button:({editor:e,t:o,extension:n})=>({component:t,componentProps:{action:()=>e.commands.setHorizontalRule(),disabled:!e.can().setHorizontalRule(),icon:"Minus",shortcutKeys:n.options.shortcutKeys??["mod","alt","S"],tooltip:o("editor.horizontalrule.tooltip")}})}},addKeyboardShortcuts(){return{"Mod-Alt-s":()=>this.editor.commands.setHorizontalRule()}},renderHTML(){return["div",i(this.options.HTMLAttributes,{"data-type":this.name}),["hr"]]}});export{m as i,h as n,u as r,f as t};
|
package/dist/HorizontalRule.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./rolldown-runtime-BeavJI0R.cjs");const t=require("./toggle-JU5XOZYT.cjs"),o=require("./useButtonProps-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./rolldown-runtime-BeavJI0R.cjs");const t=require("./toggle-JU5XOZYT.cjs"),o=require("./useButtonProps-BBiR6DPI.cjs"),e=require("./dist-CGnP_x75.cjs");let r=require("@tiptap/core"),i=require("react/jsx-runtime");var n=e.HorizontalRule.extend({addOptions(){return{...this.parent?.(),button:({editor:o,t:e,extension:r})=>({component:t.ActionButton,componentProps:{action:()=>o.commands.setHorizontalRule(),disabled:!o.can().setHorizontalRule(),icon:"Minus",shortcutKeys:r.options.shortcutKeys??["mod","alt","S"],tooltip:e("editor.horizontalrule.tooltip")}})}},addKeyboardShortcuts(){return{"Mod-Alt-s":()=>this.editor.commands.setHorizontalRule()}},renderHTML(){return["div",(0,r.mergeAttributes)(this.options.HTMLAttributes,{"data-type":this.name}),["hr"]]}});exports.HorizontalRule=n,exports.RichTextHorizontalRule=function(){const e=o.useButtonProps(n.name),{icon:r,tooltip:s,shortcutKeys:u,tooltipOptions:a={},action:l,isActive:c}=e?.componentProps??{},{dataState:d,disabled:p,update:m}=o.useToggleActive(c);return e?(0,i.jsx)(t.ActionButton,{action:()=>{p||l&&(l(),m())},dataState:d,disabled:p,icon:r,shortcutKeys:u,tooltip:s,tooltipOptions:a}):(0,i.jsx)(i.Fragment,{})};
|
package/dist/HorizontalRule.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as o,t as r}from"./HorizontalRule-
|
|
1
|
+
import{n as o,t as r}from"./HorizontalRule-C7mAKdzL.js";export{r as HorizontalRule,o as RichTextHorizontalRule};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require("./rolldown-runtime-BeavJI0R.cjs"),t=require("./toggle-JU5XOZYT.cjs"),r=require("./button-5s-zJAUQ.cjs"),i=require("./input-qTd6QuLt.cjs"),n=require("./useButtonProps-
|
|
1
|
+
const e=require("./rolldown-runtime-BeavJI0R.cjs"),t=require("./toggle-JU5XOZYT.cjs"),r=require("./button-5s-zJAUQ.cjs"),i=require("./input-qTd6QuLt.cjs"),n=require("./useButtonProps-BBiR6DPI.cjs"),a=require("./dom-dataset-w2ZYeuXJ.cjs");let s=require("@tiptap/react"),c=require("react"),o=require("clsx");o=e.__toESM(o,1);let u=require("@tiptap/core"),l=require("react/jsx-runtime"),d=require("re-resizable");var p={youtube:{example:"https://www.youtube.com/watch?v=I4sMhHbHYXM",src:"https://www.youtube.com/embed/I4sMhHbHYXM",srcPrefix:"https://www.youtube.com/embed",linkRule:[/(?:https?:\/\/)?(?:www\.)?(?:youtube\.com\/(?:[^\s/]+\/\S+\/|(?:v|e(?:mbed)?)\/|\S*?[&?]v=)|youtu\.be\/)([\w-]{11})/]},youku:{example:"https://v.youku.com/v_show/id_XNDM0NDM4MTcy.html?spm=a2h0c.8166622.PhoneSokuUgc_4.dtitle",src:"https://player.youku.com/embed/XNDM0NDM4MTcy",srcPrefix:"https://player.youku.com/embed",linkRule:[String.raw`v.youku.com\/v_show\/id_\w+\=*`],idRule:String.raw`id_\w+\=*`},bilibili:{example:"https://www.bilibili.com/video/BV1EJ411u7DN",src:"https://player.bilibili.com/player.html?bvid=BV1EJ411u7DN",srcPrefix:"https://player.bilibili.com/player.html?bvid",linkRule:[String.raw`www.bilibili.com\/video\/\w+`]},qqvideo:{example:"https://v.qq.com/x/cover/mzc0020006aw1mn/u0033nvzb5v.html",src:"https://v.qq.com/txp/iframe/player.html?vid=u0033nvzb5v",srcPrefix:"https://v.qq.com/txp/iframe/player.html?vid",linkRule:[String.raw`v.qq.com\/x\/cover\/\w+\/\w+`]},amap:{example:"https://ditu.amap.com/",src:"https://www.amap.com/place/B000A45467",srcPrefix:"",linkRule:[String.raw`\.amap\.com`]},baidu_map:{example:"https://j.map.baidu.com/15/fo",src:"https://j.map.baidu.com/15/fo",srcPrefix:"",linkRule:[String.raw`map\.baidu\.com`]},modao:{example:"https://free.modao.cc/app/2cd26580a6717a147454df7470e7ec464093cba3/embed/v2#screen=sk71k6d1dfxulzx",src:"https://free.modao.cc/app/6UkpAxcGE3nPz52GLqhnOZgC7MATBSy/embed/v2",srcPrefix:"",linkRule:[String.raw`https:\/\/\w+.modao.cc\/app\/\w+\/embed\/v2`],tips:"Modao > More > Share > Embed > COPY"},lanhu:{example:"https://lanhuapp.com/link/#/invite?sid=evP7L",src:"https://lanhuapp.com/url/evP7L",srcPrefix:"",linkRule:[String.raw`https:\/\/lanhuapp.com\/url\/\w+`],tips:"Lanhu > Project > Share > Copy Link"},figma:{example:"https://www.figma.com/file/aS9uSgPXoNpaPkzbjNcK8v/Demo?node-id=0%3A1",src:"https://www.figma.com/file/aS9uSgPXoNpaPkzbjNcK8v/Demo?node-id=0%3A1",srcPrefix:"https://www.figma.com/embed?embed_host=share&url",linkRule:[String.raw`https:\/\/www.figma.com\/file\/\w+`]},canva:{example:"https://www.canva.cn/design/DAD61-t29UI/view",src:"https://www.canva.cn/design/DAD61-t29UI/view",srcPrefix:"",linkRule:[String.raw`https:\/\/www.canva.cn\/design\/.+\/view`]},processon:{example:"https://www.processon.com/embed/5ea99d8607912948b0e6fe78",src:"https://www.processon.com/embed/5ea99d8607912948b0e6fe78",srcPrefix:"",linkRule:[String.raw`https:\/\/www.processon.com\/embed\/\w+`]},codepen:{example:"https://codepen.io/mekery/embed/YzyrKOJ",src:"https://codepen.io/mekery/embed/YzyrKOJ",srcPrefix:"",linkRule:[String.raw`https:\/\/codepen.io\/.+\/embed\/\w+`]},jinshuju:{example:"https://jinshuju.net/f/q9YvVf",src:"https://jinshuju.net/f/q9YvVf",srcPrefix:"",linkRule:[String.raw`https:\/\/jinshuju.net\/f\/\w+`]},iframe:{example:"https://v.youku.com/v_show/id_XNDM0NDM4MTcy.html",src:"https://player.youku.com/embed/XNDM0NDM4MTcy",srcPrefix:"",linkRule:[".+"]},googlemaps:{example:"https://goo.gl/maps/8Ys8b4K1ZJY2",src:"https://www.google.com/maps/embed?pb=https://goo.gl/maps/8Ys8b4K1ZJY2",srcPrefix:"",linkRule:[String.raw`https:\/\/goo.gl\/maps\/\w+`]}};function m(e){let t={validLink:!1,validId:!1,matchedUrl:"",originalLink:e,src:""};const r=function(e){let t="iframe";return(e.includes?.("youtube")||e.includes?.("youtu.be"))&&(t="youtube"),e.includes("youku")&&(t="youku"),e.includes("bilibili")&&(t="bilibili"),e.includes("qq")&&(t="qqvideo"),e.includes("amap")&&(t="amap"),e.includes("map.baidu")&&(t="baidu_map"),(e.includes("google.com/maps")||e.includes("maps.app.goo.gl"))&&(t="googlemaps"),e.includes("modao")&&(t="modao"),e.includes("lanhuapp")&&(t="lanhu"),e.includes("figma")&&(t="figma"),e.includes("canva")&&(t="canva"),e.includes("processon")&&(t="processon"),e.includes("codepen")&&(t="codepen"),e.includes("jinshuju")&&(t="jinshuju"),e.includes("iframe")&&(t="iframe"),t}(e);if(t=function(e,t,r){if("googlemaps"===e)return r.validLink=!0,r.matchedUrl=t,r;const i=p[e].linkRule;for(const n of i){const i=new RegExp(n),a=t.match(i);if(a&&a.length>0)return r.validLink=!0,r.matchedUrl="youtube"===e?a[1]:a[0],r}return r}(r,e,t),!t.validLink)return t;switch(r){case"youtube":return function(e){const t=p.youtube,r=e.matchedUrl;e.validLink=!0;const i=r.split("="),n=i.length;if(n>0){const r=i[n-1];e.src=`${t.srcPrefix}/${r}`,e.validId=!0}return e}(t);case"youku":return function(e){const t=p.youku,r=e.matchedUrl,i=t.idRule,n=new RegExp(i),a=r.match(n);if(a&&a.length>0){const r=a[0].slice(3);e.validId=!0,e.src=`${t.srcPrefix}/${r}`}else e.validId=!1;return e}(t);case"bilibili":return function(e){const t=p.bilibili,r=e.matchedUrl.split("/"),i=r.length;if(i>0){const n=r[i-1];e.src=`${t.srcPrefix}=${n}`,e.validId=!0}return e}(t);case"qqvideo":return function(e){const t=p.qqvideo,r=e.matchedUrl.split("/"),i=r.length;if(i>0){const n=r[i-1];e.src=`${t.srcPrefix}=${n}`,e.validId=!0}return e}(t);case"amap":case"baidu_map":return function(e,t){return t.src=e,t.validId=!0,t}(e,t);case"googlemaps":return function(e,t){return t.src=e,t.validId=!0,t.originalLink=e,t}(e,t);case"modao":case"lanhu":return function(e){return e.src=e.matchedUrl,e.validId=!0,e.originalLink=e.src,e}(t);case"figma":return function(e){return e.src=`${p.figma.srcPrefix}=${encodeURIComponent(e.matchedUrl)}`,e.validId=!0,e.originalLink=e.matchedUrl,e}(t);case"canva":return function(e,t){return t.src=`${t.matchedUrl}?embed`,t.validId=!0,t.originalLink=e,t}(e,t);case"processon":case"iframe":return function(e,t){return t.src=`${t.matchedUrl}`,t.validId=!0,t.originalLink=e,t}(e,t);case"codepen":return function(e){return e.src=`${e.matchedUrl}`,e.validId=!0,e.originalLink=e.src,e}(t);case"jinshuju":return function(e,t){return t.src=`${t.matchedUrl}?background=white&banner=show&embedded=true`,t.validId=!0,t.originalLink=e,t}(e,t);default:return e}}var h="_wrap_u26b6_1",f="_innerWrap_u26b6_15";function w({editor:e,node:t,updateAttributes:a}){const u=n.useEditableEditor(),{src:p,width:w,height:b}=t.attrs,[x,v]=(0,c.useState)("");const k=(0,c.useCallback)(e=>{a({width:e.width,height:e.height})},[a]);return(0,l.jsxs)(s.NodeViewWrapper,{children:[!p&&(0,l.jsxs)("div",{className:"richtext-mx-auto richtext-my-[12px] richtext-flex richtext-max-w-[600px] richtext-items-center richtext-justify-center richtext-gap-[10px] richtext-rounded-[12px] richtext-border richtext-border-solid richtext-border-border richtext-p-[10px]",children:[(0,l.jsx)(i.Input,{autoFocus:!0,className:"richtext-flex-1",onInput:e=>v(e.target.value),placeholder:"Enter link",type:"url",value:x}),(0,l.jsx)(r.Button,{className:"richtext-w-[60px]",onClick:function(){if(!x)return;const t=m(x);e.chain().updateAttributes(g.name,{src:t?.src||x}).setNodeSelection(e.state.selection.from).focus().run()},children:"OK"})]}),p&&(0,l.jsx)(d.Resizable,{size:{width:Number.parseInt(w),height:Number.parseInt(b)},onResizeStop:(e,t,r,i)=>{k({width:Number.parseInt(w)+i.width,height:Number.parseInt(b)+i.height})},children:(0,l.jsx)("div",{className:(0,o.default)(h,"render-wrapper"),children:(0,l.jsx)("div",{className:f,style:{pointerEvents:u?"none":"auto"},children:(0,l.jsx)("iframe",{className:"richtext-my-[12px]",src:p})})})})]})}function b(){const e=n.useButtonProps(g.name),{icon:r,tooltip:i,shortcutKeys:a,tooltipOptions:s={},action:c,isActive:o}=e?.componentProps??{},{editorDisabled:u,update:d}=n.useToggleActive(o);return e?(0,l.jsx)(t.ActionButton,{action:()=>{u||c&&(c(),d())},disabled:u,icon:r,shortcutKeys:a,tooltip:i,tooltipOptions:s}):(0,l.jsx)(l.Fragment,{})}var g=u.Node.create({name:"iframe",content:"",marks:"",group:"block",selectable:!0,atom:!0,draggable:!0,addOptions(){return{...this.parent?.(),HTMLAttributes:{class:"iframe"},button:({editor:e,extension:t,t:r})=>({componentProps:{action:t=>e.commands.setIframe(t),upload:t.options.upload,icon:"Iframe",tooltip:r("editor.iframe.tooltip")}})}},addAttributes(){return{width:{default:600,parseHTML:a.getDatasetAttribute("width")},height:{default:300,parseHTML:a.getDatasetAttribute("height")},src:{default:null,parseHTML:a.getDatasetAttribute("src")},defaultShowPicker:{default:!1},frameborder:{default:0},allowfullscreen:{default:this.options.allowFullscreen,parseHTML:()=>this.options.allowFullscreen}}},parseHTML:()=>[{tag:"iframe"}],renderHTML({HTMLAttributes:e}){return["iframe",(0,u.mergeAttributes)(this.options.HTMLAttributes,e)]},addCommands(){return{setIframe:e=>({tr:t,commands:r,chain:i})=>{if(t.selection?.node?.type?.name==this.name)return r.updateAttributes(this.name,e);const n=e||{url:""};return i().insertContent({type:this.name,attrs:n}).run()}}},addInputRules(){return[(0,u.nodeInputRule)({find:/^\$iframe\$$/,type:this.type,getAttributes:()=>({width:"100%"})})]},addNodeView:()=>(0,s.ReactNodeViewRenderer)(w)});Object.defineProperty(exports,"Iframe",{enumerable:!0,get:function(){return g}}),Object.defineProperty(exports,"RichTextIframe",{enumerable:!0,get:function(){return b}}),Object.defineProperty(exports,"getServiceSrc",{enumerable:!0,get:function(){return m}});
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{n as e}from"./toggle-BnR5VE66.js";import{t}from"./button-D_m2J53A.js";import{t as r}from"./input-BpHg1W4N.js";import{c as i,l as a,t as n}from"./useButtonProps-
|
|
1
|
+
import{n as e}from"./toggle-BnR5VE66.js";import{t}from"./button-D_m2J53A.js";import{t as r}from"./input-BpHg1W4N.js";import{c as i,l as a,t as n}from"./useButtonProps-Codtb0k0.js";import{t as s}from"./dom-dataset-D3Nz0h73.js";import{NodeViewWrapper as o,ReactNodeViewRenderer as c}from"@tiptap/react";import{useCallback as l,useState as u}from"react";import m from"clsx";import{Node as p,mergeAttributes as d,nodeInputRule as h}from"@tiptap/core";import{Fragment as f,jsx as w,jsxs as b}from"react/jsx-runtime";import{Resizable as g}from"re-resizable";var v={youtube:{example:"https://www.youtube.com/watch?v=I4sMhHbHYXM",src:"https://www.youtube.com/embed/I4sMhHbHYXM",srcPrefix:"https://www.youtube.com/embed",linkRule:[/(?:https?:\/\/)?(?:www\.)?(?:youtube\.com\/(?:[^\s/]+\/\S+\/|(?:v|e(?:mbed)?)\/|\S*?[&?]v=)|youtu\.be\/)([\w-]{11})/]},youku:{example:"https://v.youku.com/v_show/id_XNDM0NDM4MTcy.html?spm=a2h0c.8166622.PhoneSokuUgc_4.dtitle",src:"https://player.youku.com/embed/XNDM0NDM4MTcy",srcPrefix:"https://player.youku.com/embed",linkRule:[String.raw`v.youku.com\/v_show\/id_\w+\=*`],idRule:String.raw`id_\w+\=*`},bilibili:{example:"https://www.bilibili.com/video/BV1EJ411u7DN",src:"https://player.bilibili.com/player.html?bvid=BV1EJ411u7DN",srcPrefix:"https://player.bilibili.com/player.html?bvid",linkRule:[String.raw`www.bilibili.com\/video\/\w+`]},qqvideo:{example:"https://v.qq.com/x/cover/mzc0020006aw1mn/u0033nvzb5v.html",src:"https://v.qq.com/txp/iframe/player.html?vid=u0033nvzb5v",srcPrefix:"https://v.qq.com/txp/iframe/player.html?vid",linkRule:[String.raw`v.qq.com\/x\/cover\/\w+\/\w+`]},amap:{example:"https://ditu.amap.com/",src:"https://www.amap.com/place/B000A45467",srcPrefix:"",linkRule:[String.raw`\.amap\.com`]},baidu_map:{example:"https://j.map.baidu.com/15/fo",src:"https://j.map.baidu.com/15/fo",srcPrefix:"",linkRule:[String.raw`map\.baidu\.com`]},modao:{example:"https://free.modao.cc/app/2cd26580a6717a147454df7470e7ec464093cba3/embed/v2#screen=sk71k6d1dfxulzx",src:"https://free.modao.cc/app/6UkpAxcGE3nPz52GLqhnOZgC7MATBSy/embed/v2",srcPrefix:"",linkRule:[String.raw`https:\/\/\w+.modao.cc\/app\/\w+\/embed\/v2`],tips:"Modao > More > Share > Embed > COPY"},lanhu:{example:"https://lanhuapp.com/link/#/invite?sid=evP7L",src:"https://lanhuapp.com/url/evP7L",srcPrefix:"",linkRule:[String.raw`https:\/\/lanhuapp.com\/url\/\w+`],tips:"Lanhu > Project > Share > Copy Link"},figma:{example:"https://www.figma.com/file/aS9uSgPXoNpaPkzbjNcK8v/Demo?node-id=0%3A1",src:"https://www.figma.com/file/aS9uSgPXoNpaPkzbjNcK8v/Demo?node-id=0%3A1",srcPrefix:"https://www.figma.com/embed?embed_host=share&url",linkRule:[String.raw`https:\/\/www.figma.com\/file\/\w+`]},canva:{example:"https://www.canva.cn/design/DAD61-t29UI/view",src:"https://www.canva.cn/design/DAD61-t29UI/view",srcPrefix:"",linkRule:[String.raw`https:\/\/www.canva.cn\/design\/.+\/view`]},processon:{example:"https://www.processon.com/embed/5ea99d8607912948b0e6fe78",src:"https://www.processon.com/embed/5ea99d8607912948b0e6fe78",srcPrefix:"",linkRule:[String.raw`https:\/\/www.processon.com\/embed\/\w+`]},codepen:{example:"https://codepen.io/mekery/embed/YzyrKOJ",src:"https://codepen.io/mekery/embed/YzyrKOJ",srcPrefix:"",linkRule:[String.raw`https:\/\/codepen.io\/.+\/embed\/\w+`]},jinshuju:{example:"https://jinshuju.net/f/q9YvVf",src:"https://jinshuju.net/f/q9YvVf",srcPrefix:"",linkRule:[String.raw`https:\/\/jinshuju.net\/f\/\w+`]},iframe:{example:"https://v.youku.com/v_show/id_XNDM0NDM4MTcy.html",src:"https://player.youku.com/embed/XNDM0NDM4MTcy",srcPrefix:"",linkRule:[".+"]},googlemaps:{example:"https://goo.gl/maps/8Ys8b4K1ZJY2",src:"https://www.google.com/maps/embed?pb=https://goo.gl/maps/8Ys8b4K1ZJY2",srcPrefix:"",linkRule:[String.raw`https:\/\/goo.gl\/maps\/\w+`]}};function x(e){let t={validLink:!1,validId:!1,matchedUrl:"",originalLink:e,src:""};const r=function(e){let t="iframe";return(e.includes?.("youtube")||e.includes?.("youtu.be"))&&(t="youtube"),e.includes("youku")&&(t="youku"),e.includes("bilibili")&&(t="bilibili"),e.includes("qq")&&(t="qqvideo"),e.includes("amap")&&(t="amap"),e.includes("map.baidu")&&(t="baidu_map"),(e.includes("google.com/maps")||e.includes("maps.app.goo.gl"))&&(t="googlemaps"),e.includes("modao")&&(t="modao"),e.includes("lanhuapp")&&(t="lanhu"),e.includes("figma")&&(t="figma"),e.includes("canva")&&(t="canva"),e.includes("processon")&&(t="processon"),e.includes("codepen")&&(t="codepen"),e.includes("jinshuju")&&(t="jinshuju"),e.includes("iframe")&&(t="iframe"),t}(e);if(t=function(e,t,r){if("googlemaps"===e)return r.validLink=!0,r.matchedUrl=t,r;const i=v[e].linkRule;for(const a of i){const i=new RegExp(a),n=t.match(i);if(n&&n.length>0)return r.validLink=!0,r.matchedUrl="youtube"===e?n[1]:n[0],r}return r}(r,e,t),!t.validLink)return t;switch(r){case"youtube":return function(e){const t=v.youtube,r=e.matchedUrl;e.validLink=!0;const i=r.split("="),a=i.length;if(a>0){const r=i[a-1];e.src=`${t.srcPrefix}/${r}`,e.validId=!0}return e}(t);case"youku":return function(e){const t=v.youku,r=e.matchedUrl,i=t.idRule,a=new RegExp(i),n=r.match(a);if(n&&n.length>0){const r=n[0].slice(3);e.validId=!0,e.src=`${t.srcPrefix}/${r}`}else e.validId=!1;return e}(t);case"bilibili":return function(e){const t=v.bilibili,r=e.matchedUrl.split("/"),i=r.length;if(i>0){const a=r[i-1];e.src=`${t.srcPrefix}=${a}`,e.validId=!0}return e}(t);case"qqvideo":return function(e){const t=v.qqvideo,r=e.matchedUrl.split("/"),i=r.length;if(i>0){const a=r[i-1];e.src=`${t.srcPrefix}=${a}`,e.validId=!0}return e}(t);case"amap":case"baidu_map":return function(e,t){return t.src=e,t.validId=!0,t}(e,t);case"googlemaps":return function(e,t){return t.src=e,t.validId=!0,t.originalLink=e,t}(e,t);case"modao":case"lanhu":return function(e){return e.src=e.matchedUrl,e.validId=!0,e.originalLink=e.src,e}(t);case"figma":return function(e){return e.src=`${v.figma.srcPrefix}=${encodeURIComponent(e.matchedUrl)}`,e.validId=!0,e.originalLink=e.matchedUrl,e}(t);case"canva":return function(e,t){return t.src=`${t.matchedUrl}?embed`,t.validId=!0,t.originalLink=e,t}(e,t);case"processon":case"iframe":return function(e,t){return t.src=`${t.matchedUrl}`,t.validId=!0,t.originalLink=e,t}(e,t);case"codepen":return function(e){return e.src=`${e.matchedUrl}`,e.validId=!0,e.originalLink=e.src,e}(t);case"jinshuju":return function(e,t){return t.src=`${t.matchedUrl}?background=white&banner=show&embedded=true`,t.validId=!0,t.originalLink=e,t}(e,t);default:return e}}var k="_wrap_u26b6_1",y="_innerWrap_u26b6_15";function P({editor:e,node:i,updateAttributes:n}){const s=a(),{src:c,width:p,height:d}=i.attrs,[h,f]=u("");const v=l(e=>{n({width:e.width,height:e.height})},[n]);/* @__PURE__ */
|
|
2
2
|
return b(o,{children:[!c&&/* @__PURE__ */b("div",{className:"richtext-mx-auto richtext-my-[12px] richtext-flex richtext-max-w-[600px] richtext-items-center richtext-justify-center richtext-gap-[10px] richtext-rounded-[12px] richtext-border richtext-border-solid richtext-border-border richtext-p-[10px]",children:[/* @__PURE__ */w(r,{autoFocus:!0,className:"richtext-flex-1",onInput:e=>f(e.target.value),placeholder:"Enter link",type:"url",value:h}),/* @__PURE__ */w(t,{className:"richtext-w-[60px]",onClick:function(){if(!h)return;const t=x(h);e.chain().updateAttributes(M.name,{src:t?.src||h}).setNodeSelection(e.state.selection.from).focus().run()},children:"OK"})]}),c&&/* @__PURE__ */w(g,{size:{width:Number.parseInt(p),height:Number.parseInt(d)},onResizeStop:(e,t,r,i)=>{v({width:Number.parseInt(p)+i.width,height:Number.parseInt(d)+i.height})},children:/* @__PURE__ */w("div",{className:m(k,"render-wrapper"),children:/* @__PURE__ */w("div",{className:y,style:{pointerEvents:s?"none":"auto"},children:/* @__PURE__ */w("iframe",{className:"richtext-my-[12px]",src:c})})})})]})}function I(){const t=n(M.name),{icon:r,tooltip:a,shortcutKeys:s,tooltipOptions:o={},action:c,isActive:l}=t?.componentProps??{},{editorDisabled:u,update:m}=i(l);return t?/* @__PURE__ */w(e,{action:()=>{u||c&&(c(),m())},disabled:u,icon:r,shortcutKeys:s,tooltip:a,tooltipOptions:o}):/* @__PURE__ */w(f,{})}var M=p.create({name:"iframe",content:"",marks:"",group:"block",selectable:!0,atom:!0,draggable:!0,addOptions(){return{...this.parent?.(),HTMLAttributes:{class:"iframe"},button:({editor:e,extension:t,t:r})=>({componentProps:{action:t=>e.commands.setIframe(t),upload:t.options.upload,icon:"Iframe",tooltip:r("editor.iframe.tooltip")}})}},addAttributes(){return{width:{default:600,parseHTML:s("width")},height:{default:300,parseHTML:s("height")},src:{default:null,parseHTML:s("src")},defaultShowPicker:{default:!1},frameborder:{default:0},allowfullscreen:{default:this.options.allowFullscreen,parseHTML:()=>this.options.allowFullscreen}}},parseHTML:()=>[{tag:"iframe"}],renderHTML({HTMLAttributes:e}){return["iframe",d(this.options.HTMLAttributes,e)]},addCommands(){return{setIframe:e=>({tr:t,commands:r,chain:i})=>{if(t.selection?.node?.type?.name==this.name)return r.updateAttributes(this.name,e);const a=e||{url:""};return i().insertContent({type:this.name,attrs:a}).run()}}},addInputRules(){return[h({find:/^\$iframe\$$/,type:this.type,getAttributes:()=>({width:"100%"})})]},addNodeView:()=>c(P)});export{I as n,x as r,M as t};
|
package/dist/Iframe.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./rolldown-runtime-BeavJI0R.cjs");const e=require("./Iframe-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./rolldown-runtime-BeavJI0R.cjs");const e=require("./Iframe-DGL_MOLf.cjs");exports.Iframe=e.Iframe,exports.RichTextIframe=e.RichTextIframe;
|
package/dist/Iframe.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as r,t as a}from"./Iframe-
|
|
1
|
+
import{n as r,t as a}from"./Iframe-D_IjezyZ.js";export{a as Iframe,r as RichTextIframe};
|
package/dist/Image.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./rolldown-runtime-BeavJI0R.cjs");const e=require("./ImageCropper-
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./rolldown-runtime-BeavJI0R.cjs");const e=require("./ImageCropper-DDWnFI2-.cjs");exports.DEFAULT_OPTIONS=e.DEFAULT_OPTIONS,exports.Image=e.Image,exports.RichTextImage=e.RichTextImage;
|
package/dist/Image.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{i as r,n as p,r as a}from"./ImageCropper-
|
|
1
|
+
import{i as r,n as p,r as a}from"./ImageCropper-ChOGJuHZ.js";export{p as DEFAULT_OPTIONS,a as Image,r as RichTextImage};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{n as e}from"./toggle-BnR5VE66.js";import{g as t,n as i}from"./locales-rT_qjKW9.js";import{t as a}from"./Icon-B4rxamCu.js";import{t as r}from"./button-D_m2J53A.js";import{t as n}from"./checkbox-3vQdQTmi.js";import{a as o,n as l,o as s,r as d,t as c}from"./dialog-B9I9biS2.js";import{t as m}from"./input-BpHg1W4N.js";import{t as u}from"./label-BUOJNbea.js";import{i as p,n as g,r as h,t as f}from"./tabs-AkSfAjgK.js";import{o as b,t as v}from"./throttle-BpbN7uB1.js";import{n as x,t as y}from"./isNumber-BBkF36Z-.js";import{c as w,d as A,o as I,t as T}from"./useButtonProps-
|
|
1
|
+
import{n as e}from"./toggle-BnR5VE66.js";import{g as t,n as i}from"./locales-rT_qjKW9.js";import{t as a}from"./Icon-B4rxamCu.js";import{t as r}from"./button-D_m2J53A.js";import{t as n}from"./checkbox-3vQdQTmi.js";import{a as o,n as l,o as s,r as d,t as c}from"./dialog-B9I9biS2.js";import{t as m}from"./input-BpHg1W4N.js";import{t as u}from"./label-BUOJNbea.js";import{i as p,n as g,r as h,t as f}from"./tabs-AkSfAjgK.js";import{o as b,t as v}from"./throttle-BpbN7uB1.js";import{n as x,t as y}from"./isNumber-BBkF36Z-.js";import{c as w,d as A,o as I,t as T}from"./useButtonProps-Codtb0k0.js";import{o as S,t as N}from"./file-aBzFF1LO.js";import{NodeViewWrapper as M,ReactNodeViewRenderer as E}from"@tiptap/react";import*as C from"react";import L,{useCallback as j,useEffect as _,useMemo as O,useRef as D,useState as k}from"react";import{mergeAttributes as z}from"@tiptap/core";import{Fragment as U,jsx as H,jsxs as $}from"react/jsx-runtime";import P from"react-image-crop";var R=0;var X=/* @__PURE__ */new Map;function Y(e){if(X.has(e))return;const t=setTimeout(()=>{X.delete(e),B({type:"REMOVE_TOAST",toastId:e})},1e6);X.set(e,t)}var F=[],W={toasts:[]};function B(e){W=function(e,t){switch(t.type){case"ADD_TOAST":return{...e,toasts:[t.toast,...e.toasts].slice(0,1)};case"UPDATE_TOAST":return{...e,toasts:e.toasts.map(e=>e.id===t.toast.id?{...e,...t.toast}:e)};case"DISMISS_TOAST":{const{toastId:i}=t;return i?Y(i):e.toasts.forEach(e=>{Y(e.id)}),{...e,toasts:e.toasts.map(e=>e.id===i||void 0===i?{...e,open:!1}:e)}}case"REMOVE_TOAST":return void 0===t.toastId?{...e,toasts:[]}:{...e,toasts:e.toasts.filter(e=>e.id!==t.toastId)}}}(W,e),F.forEach(e=>{e(W)})}function V({...e}){const t=(R=(R+1)%Number.MAX_SAFE_INTEGER).toString(),i=()=>B({type:"DISMISS_TOAST",toastId:t});return B({type:"ADD_TOAST",toast:{...e,id:t,open:!0,onOpenChange:e=>{e||i()}}}),{id:t,dismiss:i,update:e=>B({type:"UPDATE_TOAST",toast:{...e,id:t}})}}function q(){const[e,t]=C.useState(W);return C.useEffect(()=>(F.push(t),()=>{const e=F.indexOf(t);e>-1&&F.splice(e,1)}),[e]),{...e,toast:V,dismiss:e=>B({type:"DISMISS_TOAST",toastId:e})}}var G="tl",J="tr",K="bl",Q="br";function Z(e){const[i,a]=k({width:t,height:t}),[r,n]=k({width:0,height:0}),[o]=k([G,J,K,Q]),[l,s]=k(!1),[d,c]=k({x:0,y:0,w:0,h:0,dir:""}),{align:m,inline:u}=e.node.attrs,p=u&&("left"===m||"right"===m),g=O(()=>{const{src:t,alt:i,width:a,height:r,flipX:n,flipY:o}=e.node.attrs,l=y(a)?`${a}px`:a,s=y(r)?`${r}px`:r,d=[];n&&d.push("rotateX(180deg)"),o&&d.push("rotateY(180deg)");return{src:t||void 0,alt:i||void 0,style:{width:l||void 0,height:s||void 0,transform:d.join(" ")||"none",...p?{float:m}:{}}}},[e?.node?.attrs]),h=O(()=>{const{style:{width:e}}=g;return{width:"100%"===e?e:void 0}},[g]);function f(){const{editor:t,getPos:i}=e;t.commands.setNodeSelection(i())}const b=j(v(()=>{const{editor:t}=e,{width:i}=getComputedStyle(t.view.dom);a(e=>({...e,width:Number.parseInt(i,10)}))},16),[e?.editor]);const w=j(v(t=>{if(t.preventDefault(),t.stopPropagation(),!l)return;const{x:a,w:r,dir:n}=d,o=(t.clientX-a)*(/l/.test(n)?-1:1),s=x(r+o,20,i.width);e.updateAttributes({width:s,height:null})},16),[l,d,i,e.updateAttributes]),A=j(e=>{e.preventDefault(),e.stopPropagation(),l&&(c({x:0,y:0,w:0,h:0,dir:""}),s(!1),f())},[l,f]),I=j(()=>{document?.addEventListener("mousemove",w,!0),document?.addEventListener("mouseup",A,!0)},[w,A]),T=j(()=>{document?.removeEventListener("mousemove",w,!0),document?.removeEventListener("mouseup",A,!0)},[w,A]);_(()=>(l?I():T(),()=>{T()}),[l,I,T]);const S=O(()=>new ResizeObserver(()=>b()),[b]);return _(()=>(S.observe(e.editor.view.dom),()=>{S.disconnect()}),[e.editor.view.dom,S]),/* @__PURE__ */H(M,{as:u?"span":"div",className:"image-view",style:{float:p?m:void 0,margin:p?"left"===m?"1em 1em 1em 0":"1em 0 1em 1em":void 0,display:u?"inline":"block",textAlign:p?void 0:m,width:g.style?.width??"auto",...p?{}:h},children:/* @__PURE__ */$("div",{"data-drag-handle":!0,draggable:"true",style:h,className:`image-view__body ${e?.selected?"image-view__body--focused":""} ${l?"image-view__body--resizing":""}`,children:[/* @__PURE__ */H("img",{alt:g.alt,className:"image-view__body__image block",height:"auto",onClick:f,onLoad:function(e){n({width:e.target.width,height:e.target.height})},src:g.src,style:g.style}),e?.editor.view.editable&&(e?.selected||l)&&/* @__PURE__ */H("div",{className:"image-resizer",children:o?.map(t=>/* @__PURE__ */H("span",{className:`image-resizer__handler image-resizer__handler--${t}`,onMouseDown:a=>function(t,a){t.preventDefault(),t.stopPropagation();const n=r.width,o=n/r.height;let l=Number(e.node.attrs.width),d=Number(e.node.attrs.height);const m=i.width;l&&!d?(l=l>m?m:l,d=Math.round(l/o)):d&&!l?(l=Math.round(d*o),l=l>m?m:l):l||d?l=l>m?m:l:(l=n>m?m:n,d=Math.round(l/o)),s(!0),c({x:t.clientX,y:t.clientY,w:l,h:d,dir:a})}(a,t)},`image-dir-${t}`))})]})})}function ee(e,t){const{acceptMimes:i,maxSize:a,t:r,toast:n}=t,o=[];return(Array.isArray(e)?e:Object.values(e)).forEach(e=>{if(function(e,t){if(!t||0===t.length)return!0;const i=e.type,a=e.name.toLowerCase(),r=a.split(".").pop();if(!r)return!1;const n=i||{heif:"image/heif",heic:"image/heic",dng:"image/x-adobe-dng",cr2:"image/x-canon-cr2",nef:"image/x-nikon-nef",arw:"image/x-sony-arw",raf:"image/x-fuji-raf",orf:"image/x-olympus-orf"}[r];return t.some(e=>{if(e.startsWith("."))return a.endsWith(e);if(e.endsWith("/*")){const t=e.split("/")[0];return n?.startsWith(t+"/")}return n===e})}(e,i)){if(e.size>a){const i=(a/1024/1024).toFixed(2);return void(t.onError?t.onError({type:"size",message:r("editor.upload.fileSizeTooBig",{fileName:e.name,size:i}),file:e}):n({variant:"default",title:r("editor.upload.fileSizeTooBig",{fileName:e.name,size:i})}))}o.push(e)}else t.onError?t.onError({type:"type",message:r("editor.upload.fileTypeNotSupported",{fileName:e.name}),file:e}):n({variant:"default",title:r("editor.upload.fileTypeNotSupported",{fileName:e.name})})}),o}function te(){const{t:t}=i(),{toast:d}=q(),b=A(),v=T(ae.name),{icon:x,tooltip:y}=v?.componentProps??{},{editorDisabled:S}=w(),[N,M]=k(!1),[E,C]=k(!1),L=I(ae.name),[j,_]=k(""),[z,P]=k(""),R=D(null),X=L?.options.defaultInline||!1,[Y,F]=k(X),W=O(()=>L?.options||ie,[L]);return v?/* @__PURE__ */$(c,{onOpenChange:M,open:N,children:[/* @__PURE__ */H(s,{asChild:!0,children:/* @__PURE__ */H(e,{disabled:S,icon:x,tooltip:y,action:()=>{S||M(!0)}})}),/* @__PURE__ */$(l,{children:[/* @__PURE__ */H(o,{children:t("editor.image.dialog.title")}),/* @__PURE__ */$(f,{activationMode:"manual",defaultValue:"both"===W.resourceImage||"upload"===W.resourceImage?"upload":"link",children:["both"===W.resourceImage&&/* @__PURE__ */$(h,{className:"richtext-grid richtext-w-full richtext-grid-cols-2",children:[/* @__PURE__ */H(p,{value:"upload",children:t("editor.image.dialog.tab.upload")}),/* @__PURE__ */H(p,{value:"link",children:t("editor.image.dialog.tab.url")})]}),
|
|
2
2
|
/* @__PURE__ */$("div",{className:"richtext-my-[10px] richtext-flex richtext-items-center richtext-gap-[4px]",children:[/* @__PURE__ */H(n,{checked:Y,onCheckedChange:e=>{F(e)}}),/* @__PURE__ */H(u,{children:t("editor.link.dialog.inline")})]}),W.enableAlt&&/* @__PURE__ */$("div",{className:"richtext-my-[10px]",children:[/* @__PURE__ */H(u,{className:"mb-[6px]",children:t("editor.imageUpload.alt")}),/* @__PURE__ */H(m,{onChange:e=>P(e.target.value),required:!0,type:"text",value:z})]}),
|
|
3
3
|
/* @__PURE__ */$(g,{value:"upload",children:[/* @__PURE__ */$("div",{className:"richtext-flex richtext-items-center richtext-gap-[10px]",children:[/* @__PURE__ */H(r,{className:"richtext-mt-1 richtext-w-full",disabled:E,onClick:function(e){e.preventDefault(),R.current?.click()},size:"sm",children:E?/* @__PURE__ */$(U,{children:[t("editor.imageUpload.uploading"),/* @__PURE__ */H(a,{className:"richtext-ml-1 richtext-animate-spin",name:"Loader"})]}):t("editor.image.dialog.tab.upload")}),/* @__PURE__ */H(re,{alt:z,disabled:E,editor:b,imageInline:Y,onClose:()=>{P("")}})]}),/* @__PURE__ */H("input",{accept:W?.acceptMimes?.join(",")||"image/*",multiple:W.multiple,onChange:async function(e){const i=e?.target?.files;if(!b||b.isDestroyed||0===i.length||E)return void(e.target.value="");const a=ee(i,{acceptMimes:W?.acceptMimes,maxSize:W?.maxSize,t:t,toast:d,onError:W.onError});if(a.length<=0)e.target.value="";else{C(!0);try{if(W?.multiple){const e=a.map(async e=>{let t="";return t=W.upload?await W.upload(e):URL.createObjectURL(e),t});(await Promise.all(e)).forEach(e=>{b.chain().focus().setImageInline({src:e,inline:Y,alt:z}).run()})}else{const e=a[0];let t="";t=W.upload?await W.upload(e):URL.createObjectURL(e),b.chain().focus().setImageInline({src:t,inline:Y,alt:z}).run()}M(!1),P(""),F(X)}catch(r){W.onError?W.onError({type:"upload",message:t("editor.upload.error")}):d({variant:"destructive",title:t("editor.upload.error")})}finally{C(!1),e.target.value=""}}},ref:R,style:{display:"none"},type:"file"})]}),
|
|
4
4
|
/* @__PURE__ */H(g,{value:"link",children:/* @__PURE__ */H("form",{onSubmit:function(e){e.preventDefault(),e.stopPropagation(),b.chain().focus().setImageInline({src:j,inline:Y,alt:z}).run(),M(!1),F(X),_(""),P("")},children:/* @__PURE__ */$("div",{className:"richtext-flex richtext-items-center richtext-gap-2",children:[/* @__PURE__ */H(m,{autoFocus:!0,onChange:e=>_(e.target.value),placeholder:t("editor.image.dialog.placeholder"),required:!0,type:"url",value:j}),/* @__PURE__ */H(r,{type:"submit",children:t("editor.image.dialog.button.apply")})]})})})]})]})]}):/* @__PURE__ */H(U,{})}var ie={acceptMimes:["image/jpeg","image/gif","image/png","image/jpg"],maxSize:5242880,multiple:!0,resourceImage:"both",defaultInline:!1,enableAlt:!0},ae=b.extend({group:"inline",inline:!0,defining:!0,draggable:!0,selectable:!0,addOptions(){return{...ie,...this.parent?.(),upload:()=>Promise.reject("Image Upload Function"),button:({editor:e,extension:t,t:i})=>({componentProps:{action:()=>!0,upload:t.options.upload,disabled:!e.can().setImage?.({}),icon:"ImageUp",tooltip:i("editor.image.tooltip")}})}},addAttributes(){return{...this.parent?.(),flipX:{default:!1},flipY:{default:!1},width:{default:null,parseHTML:e=>{const t=e.style.width||e.getAttribute("width")||null;return t?Number.parseInt(t,10):null},renderHTML:e=>({width:e.width})},align:{default:"center",parseHTML:e=>e.getAttribute("align"),renderHTML:e=>({align:e.align})},inline:{default:!1,parseHTML:e=>Boolean(e.getAttribute("inline")),renderHTML:e=>({inline:e.inline})},alt:{default:"",parseHTML:e=>e.getAttribute("alt"),renderHTML:e=>({alt:e.alt})}}},addNodeView:()=>E(Z),addCommands(){return{...this.parent?.(),setImageInline:e=>({commands:t})=>t.insertContent({type:this.name,attrs:{...e,inline:e.inline??this.options.defaultInline}}),updateImage:e=>({commands:t})=>t.updateAttributes(this.name,e),setAlignImage:e=>({commands:t})=>t.updateAttributes(this.name,{align:e})}},renderHTML({HTMLAttributes:e}){const{flipX:t,flipY:i,align:a,inline:r}=e,n=r&&("left"===a||"right"===a);return[r?"span":"div",{style:n?"":`text-align: ${a};`,class:"image"},["img",z({height:"auto",style:`${n?`float: ${a};`:""}${n?"left"===a?"margin: 1em 1em 1em 0;":"margin: 1em 0 1em 1em;":""}${t||i?`transform: rotateX(${t?"180":"0"}deg) rotateY(${i?"180":"0"}deg);`:""}`},this.options.HTMLAttributes,e)]]},parseHTML:()=>[{tag:"span.image img",getAttrs:e=>{const t=e?.parentElement,i=e?.getAttribute("width"),a=e?.getAttribute("flipx")||!1,r=e?.getAttribute("flipy")||!1;return{src:e?.getAttribute("src"),alt:e?.getAttribute("alt"),caption:e?.getAttribute("caption"),width:i?Number.parseInt(i,10):null,align:e?.getAttribute("align")||t?.style?.textAlign||null,inline:e?.getAttribute("inline")||!1,flipX:"true"===a,flipY:"true"===r}}},{tag:"div[class=image]",getAttrs:e=>{const t=e.querySelector("img"),i=t?.getAttribute("width"),a=t?.getAttribute("flipx")||!1,r=t?.getAttribute("flipy")||!1;return{src:t?.getAttribute("src"),alt:t?.getAttribute("alt"),caption:t?.getAttribute("caption"),width:i?Number.parseInt(i,10):null,align:t?.getAttribute("align")||e.style.textAlign||null,inline:t?.getAttribute("inline")||!1,flipX:"true"===a,flipY:"true"===r}}},{tag:'img[src]:not([src^="data:"])'}]});function re({editor:e,imageInline:t,onClose:n,disabled:m,alt:u}){const{t:p}=i(),{toast:g}=q(),[h,f]=k(!1),[b,v]=k(!1),x=L.useRef(null),[y,w]=L.useState(),[A,T]=L.useState(""),M=D(null),[E,C]=k({src:"",file:null}),j=I(ae.name),_=O(()=>j?.options??{},[j]);function z(e){if(x.current&&e.width&&e.height){const t=function(e,t){const i=document.createElement("canvas"),a=e.naturalWidth/e.width,r=e.naturalHeight/e.height;i.width=t.width*a,i.height=t.height*r;const n=i.getContext("2d");n&&(n.imageSmoothingEnabled=!1,n.drawImage(e,t.x*a,t.y*r,t.width*a,t.height*r,0,0,t.width*a,t.height*r));return i.toDataURL("image/png",1)}(x.current,e);T(t)}}const R=L.useCallback(async()=>{if(!b){v(!0);try{const i=N(A,E?.file?.name||"image.png");let a="";a=_.upload?await _.upload(i):URL.createObjectURL(i),e.chain().focus().setImageInline({src:a,inline:t,alt:u}).run(),f(!1),C({src:"",file:null}),X(),n()}catch(i){}finally{v(!1)}}},[A,e,t,b,n,E?.file?.name,_]);const X=()=>{M.current&&(M.current.value="")};/* @__PURE__ */
|