reactjs-tiptap-editor 1.0.7 → 1.0.9

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.
Files changed (160) hide show
  1. package/lib/{ActionMenuButton-fTe9ka2F.js → ActionMenuButton-C4aNFFa8.js} +2 -2
  2. package/lib/{ActionMenuButton-wU6jxKJv.cjs → ActionMenuButton-CmDopTWt.cjs} +1 -1
  3. package/lib/Attachment.cjs +1 -1
  4. package/lib/Attachment.js +3 -3
  5. package/lib/Blockquote.cjs +1 -1
  6. package/lib/Blockquote.js +3 -3
  7. package/lib/Bold.cjs +1 -1
  8. package/lib/Bold.js +3 -3
  9. package/lib/BulletList.cjs +1 -1
  10. package/lib/BulletList.js +3 -3
  11. package/lib/Clear.cjs +1 -1
  12. package/lib/Clear.js +3 -3
  13. package/lib/Code.cjs +1 -1
  14. package/lib/Code.js +3 -3
  15. package/lib/CodeBlock.cjs +39 -39
  16. package/lib/CodeBlock.js +945 -837
  17. package/lib/CodeView.cjs +1 -1
  18. package/lib/CodeView.js +3 -3
  19. package/lib/Color.cjs +1 -1
  20. package/lib/Color.js +8 -8
  21. package/lib/Column.cjs +1 -1
  22. package/lib/Column.js +3 -3
  23. package/lib/{Drawer-BGSwHoka.cjs → Drawer-CTr2snNd.cjs} +1 -1
  24. package/lib/{Drawer-DmtILKW4.js → Drawer-DG0gPU_U.js} +14 -14
  25. package/lib/Drawer.cjs +1 -1
  26. package/lib/Drawer.js +3 -3
  27. package/lib/Emoji.cjs +1 -1
  28. package/lib/Emoji.js +15 -15
  29. package/lib/{Excalidraw-CrG8fW-7.js → Excalidraw-DpgdxOsc.js} +18 -18
  30. package/lib/{Excalidraw-BG2U9i30.cjs → Excalidraw-DtezFdjR.cjs} +1 -1
  31. package/lib/Excalidraw.cjs +1 -1
  32. package/lib/Excalidraw.js +2 -2
  33. package/lib/ExportPdf.cjs +2 -2
  34. package/lib/ExportPdf.js +26 -26
  35. package/lib/ExportWord.cjs +1 -1
  36. package/lib/ExportWord.js +3 -3
  37. package/lib/FontFamily.cjs +1 -1
  38. package/lib/FontFamily.js +5 -5
  39. package/lib/FontSize.cjs +1 -1
  40. package/lib/FontSize.js +5 -5
  41. package/lib/Heading.cjs +1 -1
  42. package/lib/Heading.js +13 -13
  43. package/lib/Highlight.cjs +1 -1
  44. package/lib/Highlight.js +8 -8
  45. package/lib/History.cjs +1 -1
  46. package/lib/History.js +4 -4
  47. package/lib/HorizontalRule.cjs +1 -1
  48. package/lib/HorizontalRule.js +3 -3
  49. package/lib/{Icon-CysGlJkv.js → Icon-C_buGjWy.js} +1 -1
  50. package/lib/{Icon-C3j4ls73.cjs → Icon-b6HQAURz.cjs} +1 -1
  51. package/lib/{Iframe-CXDghI6m.cjs → Iframe-CUrXCDxj.cjs} +1 -1
  52. package/lib/{Iframe-BmqguWbj.js → Iframe-De88TYvj.js} +11 -11
  53. package/lib/Iframe.cjs +1 -1
  54. package/lib/Iframe.js +2 -2
  55. package/lib/Image.cjs +1 -1
  56. package/lib/Image.js +46 -46
  57. package/lib/ImageGif.cjs +1 -1
  58. package/lib/ImageGif.js +9 -9
  59. package/lib/ImportWord.cjs +2 -2
  60. package/lib/ImportWord.js +8 -8
  61. package/lib/{Indent-BhnGkEaY.js → Indent-Bensb2nf.js} +3 -3
  62. package/lib/{Indent-B1glTHHl.cjs → Indent-D_KtZNHW.cjs} +1 -1
  63. package/lib/Indent.cjs +1 -1
  64. package/lib/Indent.js +2 -2
  65. package/lib/Italic.cjs +1 -1
  66. package/lib/Italic.js +3 -3
  67. package/lib/{Katex-D4eBjS34.js → Katex-C0dtqznb.js} +974 -941
  68. package/lib/Katex-NqelWRoi.cjs +4 -0
  69. package/lib/Katex.cjs +1 -1
  70. package/lib/Katex.js +2 -2
  71. package/lib/LineHeight.cjs +1 -1
  72. package/lib/LineHeight.js +13 -13
  73. package/lib/Link.cjs +1 -1
  74. package/lib/Link.js +2 -2
  75. package/lib/{LinkEditBlock-DW17TyCA.cjs → LinkEditBlock-BSZ-vgNB.cjs} +2 -2
  76. package/lib/{LinkEditBlock-D1eSM0kn.js → LinkEditBlock-Bv12sKvW.js} +29 -29
  77. package/lib/Mention.cjs +1 -1
  78. package/lib/Mention.js +138 -132
  79. package/lib/Mermaid.cjs +2 -2
  80. package/lib/Mermaid.js +20 -20
  81. package/lib/MoreMark.cjs +1 -1
  82. package/lib/MoreMark.js +12 -12
  83. package/lib/OrderedList.cjs +1 -1
  84. package/lib/OrderedList.js +3 -3
  85. package/lib/SearchAndReplace.cjs +1 -1
  86. package/lib/SearchAndReplace.js +20 -20
  87. package/lib/SlashCommand.cjs +1 -1
  88. package/lib/SlashCommand.js +14 -14
  89. package/lib/Strike.cjs +1 -1
  90. package/lib/Strike.js +3 -3
  91. package/lib/{Table-BIZppoiY.js → Table-D9ckv6Tb.js} +5 -5
  92. package/lib/{Table-CIzgfvr9.cjs → Table-cy1mUM2X.cjs} +1 -1
  93. package/lib/Table.cjs +1 -1
  94. package/lib/Table.js +1 -1
  95. package/lib/TaskList.cjs +1 -1
  96. package/lib/TaskList.js +3 -3
  97. package/lib/TextAlign.cjs +1 -1
  98. package/lib/TextAlign.js +10 -10
  99. package/lib/TextDirection.cjs +1 -1
  100. package/lib/TextDirection.js +10 -10
  101. package/lib/TextUnderline.cjs +1 -1
  102. package/lib/TextUnderline.js +3 -3
  103. package/lib/Twitter-Bvs3sW8F.cjs +1 -0
  104. package/lib/{Twitter-DhczYjbR.js → Twitter-KUvyySA0.js} +566 -524
  105. package/lib/Twitter.cjs +1 -1
  106. package/lib/Twitter.js +2 -2
  107. package/lib/Video.cjs +1 -1
  108. package/lib/Video.js +22 -22
  109. package/lib/bubble.cjs +4 -4
  110. package/lib/bubble.js +1342 -1314
  111. package/lib/{button-C81t4pb1.js → button-D8SI-g7p.js} +1 -1
  112. package/lib/{button-B6ukqDUf.cjs → button-U6XpZt2X.cjs} +1 -1
  113. package/lib/{checkbox-ZdxysUFa.cjs → checkbox-DaIBNthL.cjs} +1 -1
  114. package/lib/{checkbox-CUE9ex4D.js → checkbox-xrY2c5yo.js} +1 -1
  115. package/lib/{dialog-Cfx8yjkr.cjs → dialog-DgnnVCfv.cjs} +1 -1
  116. package/lib/{dialog-DMJStzBb.js → dialog-DjnkASYP.js} +1 -1
  117. package/lib/{dropdown-menu-Busg3FNn.cjs → dropdown-menu-BvVMltdB.cjs} +1 -1
  118. package/lib/{dropdown-menu-B8iyTZcP.js → dropdown-menu-bI14Gyw4.js} +1 -1
  119. package/lib/extensions/Katex/Katex.d.ts +1 -1
  120. package/lib/extensions/Mention/Mention.d.ts +3 -1
  121. package/lib/extensions/Mention/components/NodeViewMentionList.d.ts +7 -1
  122. package/lib/{index-DCJheRBq.cjs → index--nUS7Y66.cjs} +1 -1
  123. package/lib/{index--knBGB61.js → index-4pRt5Vqu.js} +680 -791
  124. package/lib/{index-DLqogznp.cjs → index-BBNITgNi.cjs} +7 -7
  125. package/lib/{index-ccgHvIfu.js → index-BQ6ZdLsu.js} +1 -1
  126. package/lib/{index-DylewabB.cjs → index-BZ6DfR2r.cjs} +1 -1
  127. package/lib/{index-Dwt9--mS.js → index-BimeTI7q.js} +1 -1
  128. package/lib/{index-TMqmkmT6.cjs → index-CApXPpjF.cjs} +1 -1
  129. package/lib/{index-BvYjBPF9.js → index-CbIQPoF6.js} +12 -11
  130. package/lib/index-DvvMf6Wu.cjs +7 -0
  131. package/lib/{index-RKufd2EL.js → index-EKFybgpP.js} +1 -1
  132. package/lib/index.cjs +1 -1
  133. package/lib/index.js +2 -2
  134. package/lib/{input-BxzQAIRv.cjs → input-BtDj0NeF.cjs} +1 -1
  135. package/lib/{input-DR_5pbuA.js → input-C5zU49Q1.js} +1 -1
  136. package/lib/{isNumber-1y3eeW-y.js → isNumber-8HKEgTkA.js} +1 -1
  137. package/lib/{isNumber-C2saEiG2.cjs → isNumber-Bv1Qhmw8.cjs} +1 -1
  138. package/lib/{label-D-0oXKCn.js → label-BEUVs-IA.js} +1 -1
  139. package/lib/{label-BfWfLggp.cjs → label-C8BonzOY.cjs} +1 -1
  140. package/lib/{popover-D3spkemr.js → popover-CPY5lMCj.js} +1 -1
  141. package/lib/{popover-sP8CwbV-.cjs → popover-DjL0De8d.cjs} +1 -1
  142. package/lib/{separator-rM48NeAo.js → separator-BlIlS7LP.js} +18 -18
  143. package/lib/{separator-yycaNdlI.cjs → separator-BzMkiI_c.cjs} +1 -1
  144. package/lib/{store-BajRl43v.cjs → store-BSCjQxMK.cjs} +1 -1
  145. package/lib/{store-NKeQOve_.js → store-D_GvIPxo.js} +1 -1
  146. package/lib/style.css +1 -1
  147. package/lib/{tabs-D2nCIOVL.cjs → tabs-CHy82_rs.cjs} +1 -1
  148. package/lib/{tabs-Cb6Bmpbb.js → tabs-tQpXIzfV.js} +1 -1
  149. package/lib/{textarea-Cbwi_h4h.cjs → textarea-B-qfanCT.cjs} +1 -1
  150. package/lib/{textarea-BYZu1lUC.js → textarea-CMDYVXYo.js} +1 -1
  151. package/lib/{throttle-CjwXmkIY.js → throttle-BIkZV3Y_.js} +1 -1
  152. package/lib/{throttle-DXN-aiH5.cjs → throttle-BM3Bmbf_.cjs} +1 -1
  153. package/lib/{updatePosition-BAGpT34H.js → updatePosition-GLTrgcib.js} +1 -1
  154. package/lib/{updatePosition-C17CDdjq.cjs → updatePosition-u2mTh3mG.cjs} +1 -1
  155. package/lib/{useButtonProps-TfmRCM9r.cjs → useButtonProps-BqBGuqoP.cjs} +1 -1
  156. package/lib/{useButtonProps-BIH_9bXT.js → useButtonProps-DTngjZge.js} +2 -2
  157. package/package.json +55 -55
  158. package/lib/Katex-BKL_6NWF.cjs +0 -4
  159. package/lib/Twitter-DwWVNAV5.cjs +0 -1
  160. package/lib/index-D42xFOzI.cjs +0 -7
package/lib/Twitter.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./index-DLqogznp.cjs");const t=require("./Twitter-DwWVNAV5.cjs");exports.RichTextTwitter=t.RichTextTwitter;exports.Twitter=t.Twitter;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./index-BBNITgNi.cjs");const t=require("./Twitter-Bvs3sW8F.cjs");exports.RichTextTwitter=t.RichTextTwitter;exports.Twitter=t.Twitter;
package/lib/Twitter.js CHANGED
@@ -1,5 +1,5 @@
1
- import "./index-BvYjBPF9.js";
2
- import { R as i, T } from "./Twitter-DhczYjbR.js";
1
+ import "./index-CbIQPoF6.js";
2
+ import { R as i, T } from "./Twitter-KUvyySA0.js";
3
3
  export {
4
4
  i as RichTextTwitter,
5
5
  T as Twitter
package/lib/Video.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const $=require("./index-DLqogznp.cjs"),k=require("./index-FSRjMsxW.cjs"),p=require("./useButtonProps-TfmRCM9r.cjs"),o=require("react/jsx-runtime"),d=require("react"),E=require("./index-D42xFOzI.cjs"),M=require("./button-B6ukqDUf.cjs"),I=require("./input-BxzQAIRv.cjs"),u=require("./tabs-D2nCIOVL.cjs"),g=require("./dialog-Cfx8yjkr.cjs"),D=require("./events.constant-DQYeJpu5.cjs");function R(e,t){let n;try{n=new URL(e)}catch{return!1}return!(t!=null&&t.length)||t.length===1&&t[0]==="."?!0:t.some(s=>{if(s.includes("*")){const l=s.replace(/\./g,String.raw`\.`).replace(/\*/g,".*");return new RegExp(`^${l}$`).test(n.hostname)}return n.hostname.includes(s)})}function H(){const{t:e}=k.useLocale(),t=p.useEditorInstance(),n=p.useButtonProps(T.name),{icon:s,tooltip:l}=(n==null?void 0:n.componentProps)??{},{editorDisabled:c}=p.useToggleActive(),[f,x]=d.useState(""),w=d.useRef(null),[y,m]=d.useState(""),[V,h]=d.useState(!1),v=p.useExtension(T.name),C=r=>{h(r.detail)};d.useEffect(()=>{const r=D.listenEvent(D.EVENTS.UPLOAD_VIDEO(t.id),C);return()=>{r()}},[t]);const i=d.useMemo(()=>(v==null?void 0:v.options)??{},[v]);async function S(r){var L;const a=(L=r==null?void 0:r.target)==null?void 0:L.files;if(!t||t.isDestroyed||a.length===0)return;const b=a[0];let j="";i.upload?j=await i.upload(b):j=URL.createObjectURL(b),t.chain().focus().setVideo({src:j,width:"100%"}).run(),h(!1)}function A(r){r.preventDefault(),r.stopPropagation(),f&&(t.chain().focus().setVideo({src:f,width:"100%"}).run(),h(!1),x(""))}function q(r){var a;r.preventDefault(),(a=w.current)==null||a.click()}return o.jsxs(g.Dialog,{onOpenChange:h,open:V,children:[o.jsx(g.DialogTrigger,{asChild:!0,children:o.jsx(E.ActionButton,{disabled:c,icon:s,tooltip:l,action:()=>{c||h(!0)}})}),o.jsxs(g.DialogContent,{children:[o.jsx(g.DialogTitle,{children:e("editor.video.dialog.title")}),o.jsxs(u.Tabs,{activationMode:"manual",defaultValue:(i==null?void 0:i.resourceVideo)==="both"||(i==null?void 0:i.resourceVideo)==="upload"?"upload":"link",children:[o.jsxs(u.TabsList,{className:"richtext-grid richtext-w-full richtext-grid-cols-2",children:[((i==null?void 0:i.resourceVideo)==="both"||(i==null?void 0:i.resourceVideo)==="upload")&&o.jsx(u.TabsTrigger,{value:"upload",children:e("editor.video.dialog.tab.upload")}),((i==null?void 0:i.resourceVideo)==="both"||(i==null?void 0:i.resourceVideo)==="link")&&o.jsx(u.TabsTrigger,{value:"link",children:e("editor.video.dialog.link")})]}),o.jsxs(u.TabsContent,{value:"upload",children:[o.jsx("div",{className:"richtext-flex richtext-items-center richtext-gap-[10px]",children:o.jsx(M.Button,{className:"richtext-mt-1 richtext-w-full",onClick:q,size:"sm",children:e("editor.video.dialog.tab.upload")})}),o.jsx("input",{accept:"video/*",multiple:!0,onChange:S,ref:w,type:"file",style:{display:"none"}})]}),o.jsxs(u.TabsContent,{value:"link",children:[o.jsx("div",{children:o.jsxs("div",{className:"richtext-flex richtext-items-center richtext-gap-2",children:[o.jsx(I.Input,{autoFocus:!0,placeholder:e("editor.video.dialog.placeholder"),required:!0,type:"url",value:f,onBlur:r=>{const a=r.target.value,b=i.videoProviders||["."];a&&!R(a,b)?m("Invalid video URL"):m("")},onChange:r=>{x(r.target.value)}}),o.jsx(M.Button,{onClick:A,type:"button",children:e("editor.video.dialog.button.apply")})]})}),y&&o.jsx("div",{className:"richtext-my-[5px] richtext-text-red-500",children:y})]})]})]})]})}function B(e){e=e.replace("https://youtu.be/","https://www.youtube.com/watch?v=").replace("watch?v=","embed/");const t=e.match(/^https:\/\/www\.youtube\.com\/shorts\/([a-zA-Z0-9_-]+)/);t&&(e=`https://www.youtube.com/embed/${t[1]}`);const n=e.match(/^https:\/\/vimeo\.com\/(\d+)(?:\/([a-zA-Z0-9]+))?/);if(n){const l=n[1],c=n[2];c?e=`https://player.vimeo.com/video/${l}?h=${c}`:e=`https://player.vimeo.com/video/${l}`}return/^https?:\/\/www.bilibili.com\/video\/.*/i.test(e)&&(e=e.replace(/\?.*$/,"").replace("https://www.bilibili.com/video/","https://player.bilibili.com/player.html?bvid=")),e.includes("drive.google.com")&&(e=e.replace("/view","/preview")),e}const T=$.Node3.create({name:"video",group:"block",atom:!0,draggable:!0,addOptions(){return{divider:!1,spacer:!1,allowFullscreen:!0,upload:void 0,frameborder:!1,resourceVideo:"both",width:k.VIDEO_SIZE["size-medium"],HTMLAttributes:{class:"iframe-wrapper"},button:({editor:e,t})=>{var n,s;return{componentProps:{action:()=>{},isActive:()=>e.isActive("video")||!1,disabled:!((s=(n=e.can()).setVideo)!=null&&s.call(n,{})),icon:"Video",tooltip:t("editor.video.tooltip"),videoProviders:["."],editor:e}}}}},addAttributes(){return{src:{default:null,renderHTML:({src:e})=>({src:e?B(e):null})},width:{default:this.options.width,renderHTML:({width:e})=>({width:p.getCssUnitWithDefault(e)})},frameborder:{default:this.options.frameborder?1:0,parseHTML:()=>this.options.frameborder?1:0},allowfullscreen:{default:this.options.allowFullscreen,parseHTML:()=>this.options.allowFullscreen},align:{default:"center",renderHTML:({align:e})=>({align:e})}}},parseHTML(){return[{tag:"div[data-video] iframe"}]},renderHTML({HTMLAttributes:e}){const{width:t="100%",align:n="center"}=e??{},s={...e,width:"100%",height:"100%"},l=`position: relative;overflow: hidden;display: flex;flex: 1;max-width: ${t};`,c=`flex: 1;padding-bottom: ${9/16*100}%;`,m=["div",{style:`display: flex; justify-content: ${n};`},["div",{style:l},["div",{style:c}],["iframe",s]]];return["div",{...this.options.HTMLAttributes,class:"iframe-wrapper","data-video":""},m]},addCommands(){return{setVideo:e=>({commands:t})=>t.insertContent({type:this.name,attrs:e}),updateVideo:e=>({commands:t})=>t.updateAttributes(this.name,e)}}});exports.RichTextVideo=H;exports.Video=T;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const $=require("./index-BBNITgNi.cjs"),k=require("./index-FSRjMsxW.cjs"),p=require("./useButtonProps-BqBGuqoP.cjs"),o=require("react/jsx-runtime"),d=require("react"),E=require("./index-DvvMf6Wu.cjs"),g=require("./dialog-DgnnVCfv.cjs"),M=require("./events.constant-DQYeJpu5.cjs"),u=require("./tabs-CHy82_rs.cjs"),D=require("./button-U6XpZt2X.cjs"),I=require("./input-BtDj0NeF.cjs");function R(e,t){let n;try{n=new URL(e)}catch{return!1}return!(t!=null&&t.length)||t.length===1&&t[0]==="."?!0:t.some(s=>{if(s.includes("*")){const l=s.replace(/\./g,String.raw`\.`).replace(/\*/g,".*");return new RegExp(`^${l}$`).test(n.hostname)}return n.hostname.includes(s)})}function H(){const{t:e}=k.useLocale(),t=p.useEditorInstance(),n=p.useButtonProps(T.name),{icon:s,tooltip:l}=(n==null?void 0:n.componentProps)??{},{editorDisabled:c}=p.useToggleActive(),[f,x]=d.useState(""),w=d.useRef(null),[y,m]=d.useState(""),[V,h]=d.useState(!1),v=p.useExtension(T.name),C=r=>{h(r.detail)};d.useEffect(()=>{const r=M.listenEvent(M.EVENTS.UPLOAD_VIDEO(t.id),C);return()=>{r()}},[t]);const i=d.useMemo(()=>(v==null?void 0:v.options)??{},[v]);async function S(r){var L;const a=(L=r==null?void 0:r.target)==null?void 0:L.files;if(!t||t.isDestroyed||a.length===0)return;const b=a[0];let j="";i.upload?j=await i.upload(b):j=URL.createObjectURL(b),t.chain().focus().setVideo({src:j,width:"100%"}).run(),h(!1)}function A(r){r.preventDefault(),r.stopPropagation(),f&&(t.chain().focus().setVideo({src:f,width:"100%"}).run(),h(!1),x(""))}function q(r){var a;r.preventDefault(),(a=w.current)==null||a.click()}return o.jsxs(g.Dialog,{onOpenChange:h,open:V,children:[o.jsx(g.DialogTrigger,{asChild:!0,children:o.jsx(E.ActionButton,{disabled:c,icon:s,tooltip:l,action:()=>{c||h(!0)}})}),o.jsxs(g.DialogContent,{children:[o.jsx(g.DialogTitle,{children:e("editor.video.dialog.title")}),o.jsxs(u.Tabs,{activationMode:"manual",defaultValue:(i==null?void 0:i.resourceVideo)==="both"||(i==null?void 0:i.resourceVideo)==="upload"?"upload":"link",children:[o.jsxs(u.TabsList,{className:"richtext-grid richtext-w-full richtext-grid-cols-2",children:[((i==null?void 0:i.resourceVideo)==="both"||(i==null?void 0:i.resourceVideo)==="upload")&&o.jsx(u.TabsTrigger,{value:"upload",children:e("editor.video.dialog.tab.upload")}),((i==null?void 0:i.resourceVideo)==="both"||(i==null?void 0:i.resourceVideo)==="link")&&o.jsx(u.TabsTrigger,{value:"link",children:e("editor.video.dialog.link")})]}),o.jsxs(u.TabsContent,{value:"upload",children:[o.jsx("div",{className:"richtext-flex richtext-items-center richtext-gap-[10px]",children:o.jsx(D.Button,{className:"richtext-mt-1 richtext-w-full",onClick:q,size:"sm",children:e("editor.video.dialog.tab.upload")})}),o.jsx("input",{accept:"video/*",multiple:!0,onChange:S,ref:w,type:"file",style:{display:"none"}})]}),o.jsxs(u.TabsContent,{value:"link",children:[o.jsx("div",{children:o.jsxs("div",{className:"richtext-flex richtext-items-center richtext-gap-2",children:[o.jsx(I.Input,{autoFocus:!0,placeholder:e("editor.video.dialog.placeholder"),required:!0,type:"url",value:f,onBlur:r=>{const a=r.target.value,b=i.videoProviders||["."];a&&!R(a,b)?m("Invalid video URL"):m("")},onChange:r=>{x(r.target.value)}}),o.jsx(D.Button,{onClick:A,type:"button",children:e("editor.video.dialog.button.apply")})]})}),y&&o.jsx("div",{className:"richtext-my-[5px] richtext-text-red-500",children:y})]})]})]})]})}function B(e){e=e.replace("https://youtu.be/","https://www.youtube.com/watch?v=").replace("watch?v=","embed/");const t=e.match(/^https:\/\/www\.youtube\.com\/shorts\/([a-zA-Z0-9_-]+)/);t&&(e=`https://www.youtube.com/embed/${t[1]}`);const n=e.match(/^https:\/\/vimeo\.com\/(\d+)(?:\/([a-zA-Z0-9]+))?/);if(n){const l=n[1],c=n[2];c?e=`https://player.vimeo.com/video/${l}?h=${c}`:e=`https://player.vimeo.com/video/${l}`}return/^https?:\/\/www.bilibili.com\/video\/.*/i.test(e)&&(e=e.replace(/\?.*$/,"").replace("https://www.bilibili.com/video/","https://player.bilibili.com/player.html?bvid=")),e.includes("drive.google.com")&&(e=e.replace("/view","/preview")),e}const T=$.Node3.create({name:"video",group:"block",atom:!0,draggable:!0,addOptions(){return{divider:!1,spacer:!1,allowFullscreen:!0,upload:void 0,frameborder:!1,resourceVideo:"both",width:k.VIDEO_SIZE["size-medium"],HTMLAttributes:{class:"iframe-wrapper"},button:({editor:e,t})=>{var n,s;return{componentProps:{action:()=>{},isActive:()=>e.isActive("video")||!1,disabled:!((s=(n=e.can()).setVideo)!=null&&s.call(n,{})),icon:"Video",tooltip:t("editor.video.tooltip"),videoProviders:["."],editor:e}}}}},addAttributes(){return{src:{default:null,renderHTML:({src:e})=>({src:e?B(e):null})},width:{default:this.options.width,renderHTML:({width:e})=>({width:p.getCssUnitWithDefault(e)})},frameborder:{default:this.options.frameborder?1:0,parseHTML:()=>this.options.frameborder?1:0},allowfullscreen:{default:this.options.allowFullscreen,parseHTML:()=>this.options.allowFullscreen},align:{default:"center",renderHTML:({align:e})=>({align:e})}}},parseHTML(){return[{tag:"div[data-video] iframe"}]},renderHTML({HTMLAttributes:e}){const{width:t="100%",align:n="center"}=e??{},s={...e,width:"100%",height:"100%"},l=`position: relative;overflow: hidden;display: flex;flex: 1;max-width: ${t};`,c=`flex: 1;padding-bottom: ${9/16*100}%;`,m=["div",{style:`display: flex; justify-content: ${n};`},["div",{style:l},["div",{style:c}],["iframe",s]]];return["div",{...this.options.HTMLAttributes,class:"iframe-wrapper","data-video":""},m]},addCommands(){return{setVideo:e=>({commands:t})=>t.insertContent({type:this.name,attrs:e}),updateVideo:e=>({commands:t})=>t.updateAttributes(this.name,e)}}});exports.RichTextVideo=H;exports.Video=T;
package/lib/Video.js CHANGED
@@ -1,14 +1,14 @@
1
- import { N as I } from "./index-BvYjBPF9.js";
1
+ import { N as I } from "./index-CbIQPoF6.js";
2
2
  import { u as S, V as $ } from "./index-0OnGZkVF.js";
3
- import { c as H, u as N, a as U, d as z, g as B } from "./useButtonProps-BIH_9bXT.js";
3
+ import { c as H, u as N, a as U, d as z, g as B } from "./useButtonProps-DTngjZge.js";
4
4
  import { jsxs as d, jsx as s } from "react/jsx-runtime";
5
5
  import { useState as y, useRef as R, useEffect as j, useMemo as F } from "react";
6
- import { A as O } from "./index--knBGB61.js";
7
- import { B as D } from "./button-C81t4pb1.js";
8
- import { I as Z } from "./input-DR_5pbuA.js";
9
- import { T as _, a as q, b as L, c as T } from "./tabs-Cb6Bmpbb.js";
10
- import { D as W, a as G, b as J, c as K } from "./dialog-DMJStzBb.js";
11
- import { l as P, E as Q } from "./events.constant-wrlJ_7JZ.js";
6
+ import { A as O } from "./index-4pRt5Vqu.js";
7
+ import { D as Z, a as _, b as q, c as W } from "./dialog-DjnkASYP.js";
8
+ import { l as G, E as J } from "./events.constant-wrlJ_7JZ.js";
9
+ import { T as K, a as P, b as D, c as L } from "./tabs-tQpXIzfV.js";
10
+ import { B as T } from "./button-D8SI-g7p.js";
11
+ import { I as Q } from "./input-C5zU49Q1.js";
12
12
  function X(e, t) {
13
13
  let r;
14
14
  try {
@@ -32,7 +32,7 @@ function ue() {
32
32
  u(o.detail);
33
33
  };
34
34
  j(() => {
35
- const o = P(Q.UPLOAD_VIDEO(t.id), k);
35
+ const o = G(J.UPLOAD_VIDEO(t.id), k);
36
36
  return () => {
37
37
  o();
38
38
  };
@@ -61,12 +61,12 @@ function ue() {
61
61
  o.preventDefault(), (l = b.current) == null || l.click();
62
62
  }
63
63
  return /* @__PURE__ */ d(
64
- W,
64
+ Z,
65
65
  {
66
66
  onOpenChange: u,
67
67
  open: x,
68
68
  children: [
69
- /* @__PURE__ */ s(G, { asChild: !0, children: /* @__PURE__ */ s(
69
+ /* @__PURE__ */ s(_, { asChild: !0, children: /* @__PURE__ */ s(
70
70
  O,
71
71
  {
72
72
  disabled: c,
@@ -77,21 +77,21 @@ function ue() {
77
77
  }
78
78
  }
79
79
  ) }),
80
- /* @__PURE__ */ d(J, { children: [
81
- /* @__PURE__ */ s(K, { children: e("editor.video.dialog.title") }),
80
+ /* @__PURE__ */ d(q, { children: [
81
+ /* @__PURE__ */ s(W, { children: e("editor.video.dialog.title") }),
82
82
  /* @__PURE__ */ d(
83
- _,
83
+ K,
84
84
  {
85
85
  activationMode: "manual",
86
86
  defaultValue: (i == null ? void 0 : i.resourceVideo) === "both" || (i == null ? void 0 : i.resourceVideo) === "upload" ? "upload" : "link",
87
87
  children: [
88
- /* @__PURE__ */ d(q, { className: "richtext-grid richtext-w-full richtext-grid-cols-2", children: [
89
- ((i == null ? void 0 : i.resourceVideo) === "both" || (i == null ? void 0 : i.resourceVideo) === "upload") && /* @__PURE__ */ s(L, { value: "upload", children: e("editor.video.dialog.tab.upload") }),
90
- ((i == null ? void 0 : i.resourceVideo) === "both" || (i == null ? void 0 : i.resourceVideo) === "link") && /* @__PURE__ */ s(L, { value: "link", children: e("editor.video.dialog.link") })
88
+ /* @__PURE__ */ d(P, { className: "richtext-grid richtext-w-full richtext-grid-cols-2", children: [
89
+ ((i == null ? void 0 : i.resourceVideo) === "both" || (i == null ? void 0 : i.resourceVideo) === "upload") && /* @__PURE__ */ s(D, { value: "upload", children: e("editor.video.dialog.tab.upload") }),
90
+ ((i == null ? void 0 : i.resourceVideo) === "both" || (i == null ? void 0 : i.resourceVideo) === "link") && /* @__PURE__ */ s(D, { value: "link", children: e("editor.video.dialog.link") })
91
91
  ] }),
92
- /* @__PURE__ */ d(T, { value: "upload", children: [
92
+ /* @__PURE__ */ d(L, { value: "upload", children: [
93
93
  /* @__PURE__ */ s("div", { className: "richtext-flex richtext-items-center richtext-gap-[10px]", children: /* @__PURE__ */ s(
94
- D,
94
+ T,
95
95
  {
96
96
  className: "richtext-mt-1 richtext-w-full",
97
97
  onClick: E,
@@ -113,10 +113,10 @@ function ue() {
113
113
  }
114
114
  )
115
115
  ] }),
116
- /* @__PURE__ */ d(T, { value: "link", children: [
116
+ /* @__PURE__ */ d(L, { value: "link", children: [
117
117
  /* @__PURE__ */ s("div", { children: /* @__PURE__ */ d("div", { className: "richtext-flex richtext-items-center richtext-gap-2", children: [
118
118
  /* @__PURE__ */ s(
119
- Z,
119
+ Q,
120
120
  {
121
121
  autoFocus: !0,
122
122
  placeholder: e("editor.video.dialog.placeholder"),
@@ -133,7 +133,7 @@ function ue() {
133
133
  }
134
134
  ),
135
135
  /* @__PURE__ */ s(
136
- D,
136
+ T,
137
137
  {
138
138
  onClick: C,
139
139
  type: "button",