reactjs-tiptap-editor 1.0.3 → 1.0.4

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 (145) hide show
  1. package/lib/{ActionMenuButton-BFepb5pA.js → ActionMenuButton-71gCEVbv.js} +11 -11
  2. package/lib/{ActionMenuButton-BjQpCWBy.cjs → ActionMenuButton-Bzr6ICxv.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 +2 -2
  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 +949 -841
  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 +5 -5
  21. package/lib/Column.cjs +1 -1
  22. package/lib/Column.js +3 -3
  23. package/lib/{Drawer-CSueBqcB.cjs → Drawer-DlX87Cl4.cjs} +1 -1
  24. package/lib/{Drawer-CJju6ecy.js → Drawer-GRyIh2y1.js} +13 -13
  25. package/lib/Drawer.cjs +1 -1
  26. package/lib/Drawer.js +1 -1
  27. package/lib/Emoji.cjs +1 -1
  28. package/lib/Emoji.js +12 -12
  29. package/lib/{Excalidraw-sf65kOJo.cjs → Excalidraw-Bkq1fXLL.cjs} +1 -1
  30. package/lib/{Excalidraw-C6LNBBPI.js → Excalidraw-BmyhdJCU.js} +19 -19
  31. package/lib/Excalidraw.cjs +1 -1
  32. package/lib/Excalidraw.js +1 -1
  33. package/lib/ExportPdf.cjs +1 -1
  34. package/lib/ExportPdf.js +3 -3
  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 +4 -4
  39. package/lib/FontSize.cjs +1 -1
  40. package/lib/FontSize.js +4 -4
  41. package/lib/Heading.cjs +1 -1
  42. package/lib/Heading.js +12 -12
  43. package/lib/Highlight.cjs +1 -1
  44. package/lib/Highlight.js +5 -5
  45. package/lib/History.cjs +1 -1
  46. package/lib/History.js +3 -3
  47. package/lib/HorizontalRule.cjs +1 -1
  48. package/lib/HorizontalRule.js +3 -3
  49. package/lib/{Icon-CNyAQ70L.js → Icon-1z7VnLgz.js} +1 -1
  50. package/lib/{Icon-CJomacaQ.cjs → Icon-ztD4g9N4.cjs} +1 -1
  51. package/lib/{Iframe-DjIPMesT.js → Iframe-AiP8qPGF.js} +11 -11
  52. package/lib/{Iframe-CkoadzVT.cjs → Iframe-DhUlC9-Y.cjs} +1 -1
  53. package/lib/Iframe.cjs +1 -1
  54. package/lib/Iframe.js +1 -1
  55. package/lib/Image.cjs +1 -1
  56. package/lib/Image.js +44 -44
  57. package/lib/ImageGif.cjs +1 -1
  58. package/lib/ImageGif.js +7 -7
  59. package/lib/ImportWord.cjs +2 -2
  60. package/lib/ImportWord.js +8 -8
  61. package/lib/{Indent-UDnZAurv.js → Indent-CBoQDISv.js} +3 -3
  62. package/lib/{Indent-08e09DMj.cjs → Indent-fphgO8Eo.cjs} +1 -1
  63. package/lib/Indent.cjs +1 -1
  64. package/lib/Indent.js +1 -1
  65. package/lib/Italic.cjs +1 -1
  66. package/lib/Italic.js +3 -3
  67. package/lib/{Katex-zmcrp9k1.cjs → Katex-AfmTUUNS.cjs} +2 -2
  68. package/lib/{Katex-CXa45tyK.js → Katex-n2PVzaMd.js} +19 -19
  69. package/lib/Katex.cjs +1 -1
  70. package/lib/Katex.js +1 -1
  71. package/lib/LineHeight.cjs +1 -1
  72. package/lib/LineHeight.js +12 -12
  73. package/lib/Link.cjs +1 -1
  74. package/lib/Link.js +1 -1
  75. package/lib/{LinkEditBlock-CB8dAmrf.js → LinkEditBlock-CoXwYHlj.js} +68 -68
  76. package/lib/{LinkEditBlock-Dif8KmZQ.cjs → LinkEditBlock-sADc32hF.cjs} +2 -2
  77. package/lib/Mermaid.cjs +2 -2
  78. package/lib/Mermaid.js +20 -21
  79. package/lib/MoreMark.cjs +1 -1
  80. package/lib/MoreMark.js +12 -12
  81. package/lib/OrderedList.cjs +1 -1
  82. package/lib/OrderedList.js +3 -3
  83. package/lib/SearchAndReplace.cjs +1 -1
  84. package/lib/SearchAndReplace.js +16 -16
  85. package/lib/SlashCommand.cjs +1 -1
  86. package/lib/SlashCommand.js +11 -11
  87. package/lib/Strike.cjs +1 -1
  88. package/lib/Strike.js +3 -3
  89. package/lib/{Table-BahHb0Ru.cjs → Table-BLb5576a.cjs} +1 -1
  90. package/lib/{Table-BnhgS_-w.js → Table-BshvoFRh.js} +4 -4
  91. package/lib/Table.cjs +1 -1
  92. package/lib/Table.js +1 -1
  93. package/lib/TaskList.cjs +1 -1
  94. package/lib/TaskList.js +3 -3
  95. package/lib/TextAlign.cjs +1 -1
  96. package/lib/TextAlign.js +15 -15
  97. package/lib/TextDirection.cjs +1 -1
  98. package/lib/TextDirection.js +15 -15
  99. package/lib/TextUnderline.cjs +1 -1
  100. package/lib/TextUnderline.js +3 -3
  101. package/lib/{Twitter-Cb2gasLV.js → Twitter-CLVet4OM.js} +17 -17
  102. package/lib/{Twitter-BWmvba2p.cjs → Twitter-DEKTLWO5.cjs} +1 -1
  103. package/lib/Twitter.cjs +1 -1
  104. package/lib/Twitter.js +1 -1
  105. package/lib/Video.cjs +1 -1
  106. package/lib/Video.js +22 -22
  107. package/lib/bubble.cjs +1 -1
  108. package/lib/bubble.js +36 -36
  109. package/lib/{button-CG4usMxR.js → button-BnN1L5_T.js} +1 -1
  110. package/lib/{button-CIneI3CY.cjs → button-CjAogRMZ.cjs} +1 -1
  111. package/lib/{checkbox-D71Mb18N.cjs → checkbox-BFgaCetY.cjs} +1 -1
  112. package/lib/{checkbox-C_n_ksgm.js → checkbox-sSQSzjls.js} +1 -1
  113. package/lib/{dialog-DOqHbj83.cjs → dialog-CUP7QBaG.cjs} +1 -1
  114. package/lib/{dialog-NJmA61GX.js → dialog-CzZSyyxS.js} +1 -1
  115. package/lib/{dropdown-menu-C6sUfvGJ.cjs → dropdown-menu-CwHOwzLr.cjs} +1 -1
  116. package/lib/{dropdown-menu-Lfbfr4dW.js → dropdown-menu-y1rPk4dr.js} +1 -1
  117. package/lib/{index-BY7ivGJJ.js → index--XZPCi0O.js} +370 -483
  118. package/lib/index-CnbtiTqP.cjs +7 -0
  119. package/lib/index.cjs +1 -1
  120. package/lib/index.js +2 -2
  121. package/lib/{input-BP2Gxw3D.js → input-Byg4PPou.js} +1 -1
  122. package/lib/{input-gHDudt4e.cjs → input-Dikmsjjj.cjs} +1 -1
  123. package/lib/{label-DJJuWtqE.js → label-BX7OqM6p.js} +1 -1
  124. package/lib/{label-CVPLC4Zx.cjs → label-ChxDmW-K.cjs} +1 -1
  125. package/lib/{popover-BvQjtkQM.js → popover-CheVmqgb.js} +1 -1
  126. package/lib/{popover-MfEQQFJ7.cjs → popover-DVD1y8Z_.cjs} +1 -1
  127. package/lib/{separator-BJzi4Ghx.cjs → separator-CSuS-D6T.cjs} +1 -1
  128. package/lib/{separator-D_v6CJRt.js → separator-Y_Pbpi-5.js} +18 -18
  129. package/lib/{store-DXwTyDFS.js → store-BVm_SgvL.js} +1 -1
  130. package/lib/{store-D0HwYEZ6.cjs → store-DznMm4Ug.cjs} +1 -1
  131. package/lib/{tabs-CSLPqYK2.cjs → tabs-B9ooipwg.cjs} +1 -1
  132. package/lib/{tabs-C0zcytw3.js → tabs-p4pJGb6o.js} +1 -1
  133. package/lib/{textarea-Du5WiLd3.js → textarea-Byts1Pn0.js} +1 -1
  134. package/lib/{textarea-CoUGzfC4.cjs → textarea-L53EceuF.cjs} +1 -1
  135. package/lib/theme/theme.d.ts +1 -1
  136. package/lib/theme.cjs +1 -1
  137. package/lib/theme.js +1 -1
  138. package/lib/{toggle-Bdrb8AZg.cjs → toggle-DUPu3nnZ.cjs} +1 -1
  139. package/lib/{toggle-DifEFalS.js → toggle-WBgzE8Jm.js} +10 -10
  140. package/lib/{tooltip-CY18LQet.js → tooltip-BOMwAoO1.js} +1 -1
  141. package/lib/{tooltip-nFyTogij.cjs → tooltip-DD5Ii8qI.cjs} +1 -1
  142. package/lib/{useButtonProps-DEuoHLy_.js → useButtonProps-BIOoOg6h.js} +1 -1
  143. package/lib/{useButtonProps-5aSfh81v.cjs → useButtonProps-C4SCmCVo.cjs} +1 -1
  144. package/package.json +1 -1
  145. package/lib/index-B7WkxZXU.cjs +0 -7
package/lib/Mermaid.js CHANGED
@@ -3,22 +3,21 @@ import { a as q, c as Y } from "./throttle-CGM5M2yG.js";
3
3
  import { jsxs as C, jsx as n, Fragment as J } from "react/jsx-runtime";
4
4
  import { useState as m, useRef as K, useCallback as A, useEffect as H, useMemo as P } from "react";
5
5
  import { s as Q, i as tt } from "./shortId-WJVkrvml.js";
6
- import { A as et } from "./toggle-DifEFalS.js";
7
- import { B as rt } from "./button-CG4usMxR.js";
8
- import "./index-BY7ivGJJ.js";
9
- import { D as it, a as at, b as st, c as nt, d as ot } from "./dialog-NJmA61GX.js";
10
- import { T as lt } from "./textarea-Du5WiLd3.js";
11
- import { I as V, j as W, k as ct } from "./index-DGihe-wH.js";
12
- import { c as dt, u as ut, a as ht, i as mt } from "./useButtonProps-DEuoHLy_.js";
13
- import { d as gt } from "./file-BLas99n7.js";
6
+ import { A as et } from "./toggle-WBgzE8Jm.js";
7
+ import { D as rt, a as it, b as at, c as st, d as nt } from "./dialog-CzZSyyxS.js";
8
+ import { T as ot } from "./textarea-Byts1Pn0.js";
9
+ import { I as V, j as W, k as lt } from "./index-DGihe-wH.js";
10
+ import { c as ct, u as dt, a as ut, i as ht } from "./useButtonProps-BIOoOg6h.js";
11
+ import { d as mt } from "./file-BLas99n7.js";
12
+ import { B as gt } from "./button-BnN1L5_T.js";
14
13
  const pt = `graph TB
15
14
  a-->b`;
16
- function Et() {
17
- const e = dt(), t = ut(vt.name), {
15
+ function Ot() {
16
+ const e = ct(), t = dt(vt.name), {
18
17
  tooltipOptions: i = {},
19
18
  isActive: s = void 0,
20
19
  upload: w
21
- } = (t == null ? void 0 : t.componentProps) ?? {}, { editorDisabled: T } = ht(s), [c, S] = m(pt), [D, y] = m(""), [o, _] = m(!1), L = K(null), [d, k] = m(null), [g, O] = m(!0), B = A(
20
+ } = (t == null ? void 0 : t.componentProps) ?? {}, { editorDisabled: T } = ut(s), [c, S] = m(pt), [D, y] = m(""), [o, _] = m(!1), L = K(null), [d, k] = m(null), [g, O] = m(!0), B = A(
22
21
  (l) => {
23
22
  l && import("mermaid").then((u) => {
24
23
  k(u.default);
@@ -46,12 +45,12 @@ function Et() {
46
45
  }, [d, o]), H(() => {
47
46
  !g && d && o && I(c);
48
47
  }, [d && c]), /* @__PURE__ */ C(
49
- it,
48
+ rt,
50
49
  {
51
50
  onOpenChange: _,
52
51
  open: o,
53
52
  children: [
54
- /* @__PURE__ */ n(at, { asChild: !0, children: /* @__PURE__ */ n(
53
+ /* @__PURE__ */ n(it, { asChild: !0, children: /* @__PURE__ */ n(
55
54
  et,
56
55
  {
57
56
  disabled: T,
@@ -63,8 +62,8 @@ function Et() {
63
62
  }
64
63
  }
65
64
  ) }),
66
- /* @__PURE__ */ C(st, { className: "richtext-z-[99999] !richtext-max-w-[1300px]", children: [
67
- /* @__PURE__ */ n(nt, { children: "Mermaid" }),
65
+ /* @__PURE__ */ C(at, { className: "richtext-z-[99999] !richtext-max-w-[1300px]", children: [
66
+ /* @__PURE__ */ n(st, { children: "Mermaid" }),
68
67
  /* @__PURE__ */ n(
69
68
  "div",
70
69
  {
@@ -72,7 +71,7 @@ function Et() {
72
71
  style: { height: "100%", border: "1px solid hsl(var(--border))" },
73
72
  children: g ? /* @__PURE__ */ n("p", { children: "Loading..." }) : /* @__PURE__ */ n(J, { children: /* @__PURE__ */ C("div", { className: "richtext-flex richtext-gap-[10px] richtext-rounded-[10px] richtext-p-[10px]", children: [
74
73
  /* @__PURE__ */ n(
75
- lt,
74
+ ot,
76
75
  {
77
76
  autoFocus: !0,
78
77
  className: "richtext-flex-1",
@@ -98,8 +97,8 @@ function Et() {
98
97
  ] }) })
99
98
  }
100
99
  ),
101
- /* @__PURE__ */ n(ot, { children: /* @__PURE__ */ n(
102
- rt,
100
+ /* @__PURE__ */ n(nt, { children: /* @__PURE__ */ n(
101
+ gt,
103
102
  {
104
103
  disabled: !d,
105
104
  onClick: async () => {
@@ -108,7 +107,7 @@ function Et() {
108
107
  const l = L.current.querySelector("svg"), { width: u, height: R } = l.getBoundingClientRect(), N = `mermaid-${Q()}.svg`;
109
108
  let M = tt(l.outerHTML);
110
109
  if (w) {
111
- const r = gt(M, N);
110
+ const r = mt(M, N);
112
111
  M = await w(r);
113
112
  }
114
113
  e == null || e.chain().focus().setMermaid(
@@ -210,7 +209,7 @@ function ft({ editor: e, node: t, updateAttributes: i, getPos: s, selected: w })
210
209
  q((r) => {
211
210
  if (r.preventDefault(), r.stopPropagation(), !o)
212
211
  return;
213
- const { x: p, w: f, dir: b } = L, x = (r.clientX - p) * (/l/.test(b) ? -1 : 1), { width: a, height: v } = t == null ? void 0 : t.attrs, h = a / v, $ = mt(f + x, ct, T.width), j = Math.round($ / h);
212
+ const { x: p, w: f, dir: b } = L, x = (r.clientX - p) * (/l/.test(b) ? -1 : 1), { width: a, height: v } = t == null ? void 0 : t.attrs, h = a / v, $ = ht(f + x, lt, T.width), j = Math.round($ / h);
214
213
  i({
215
214
  width: $,
216
215
  height: j
@@ -400,5 +399,5 @@ const vt = /* @__PURE__ */ Y.extend({
400
399
  });
401
400
  export {
402
401
  vt as Mermaid,
403
- Et as RichTextMermaid
402
+ Ot as RichTextMermaid
404
403
  };
package/lib/MoreMark.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("./index-DLqogznp.cjs"),r=require("react/jsx-runtime"),M=require("react"),x=require("./toggle-Bdrb8AZg.cjs");require("./index-B7WkxZXU.cjs");const p=require("./dropdown-menu-C6sUfvGJ.cjs"),h=require("./useButtonProps-5aSfh81v.cjs"),f=require("./index-DmOTQudI.cjs"),S=require("./Icon-CJomacaQ.cjs");var k=c.Mark.create({name:"subscript",addOptions(){return{HTMLAttributes:{}}},parseHTML(){return[{tag:"sub"},{style:"vertical-align",getAttrs(t){return t!=="sub"?!1:null}}]},renderHTML({HTMLAttributes:t}){return["sub",c.mergeAttributes(this.options.HTMLAttributes,t),0]},addCommands(){return{setSubscript:()=>({commands:t})=>t.setMark(this.name),toggleSubscript:()=>({commands:t})=>t.toggleMark(this.name),unsetSubscript:()=>({commands:t})=>t.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-,":()=>this.editor.commands.toggleSubscript()}}}),A=c.Mark.create({name:"superscript",addOptions(){return{HTMLAttributes:{}}},parseHTML(){return[{tag:"sup"},{style:"vertical-align",getAttrs(t){return t!=="super"?!1:null}}]},renderHTML({HTMLAttributes:t}){return["sup",c.mergeAttributes(this.options.HTMLAttributes,t),0]},addCommands(){return{setSuperscript:()=>({commands:t})=>t.setMark(this.name),toggleSuperscript:()=>({commands:t})=>t.toggleMark(this.name),unsetSuperscript:()=>({commands:t})=>t.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-.":()=>this.editor.commands.toggleSuperscript()}}});function v(){const t=h.useButtonProps(b.name),{icon:s=void 0,tooltip:n=void 0,items:i=[],isActive:l=void 0}=(t==null?void 0:t.componentProps)??{},{disabled:u,dataState:o}=h.useActive(l),d=M.useMemo(()=>(o==null?void 0:o.title)||"",[o]);return t?r.jsxs(p.DropdownMenu,{children:[r.jsx(p.DropdownMenuTrigger,{asChild:!0,disabled:u,children:r.jsx(x.ActionButton,{customClass:"!richtext-w-12 richtext-h-12",disabled:u,icon:s,tooltip:n,children:r.jsx(f.MenuDown,{className:"richtext-size-3 richtext-text-gray-500"})})}),r.jsx(p.DropdownMenuContent,{className:"w-full",children:i==null?void 0:i.map((e,a)=>r.jsxs(p.DropdownMenuCheckboxItem,{checked:d===e.title,className:"richtext-flex richtext-items-center richtext-gap-3",onClick:e.action,children:[r.jsx(S.IconComponent,{name:e==null?void 0:e.icon}),r.jsx("span",{className:"richtext-ml-1",children:e.title}),!!(e!=null&&e.shortcutKeys)&&r.jsx("span",{className:"richtext-ml-auto richtext-text-xs richtext-tracking-widest richtext-opacity-60",children:h.getShortcutKeys(e.shortcutKeys)})]},`more-mark-${a}`))})]}):r.jsx(r.Fragment,{})}const b=c.Extension.create({name:"moreMark",addOptions(){var t;return{...(t=this.parent)==null?void 0:t.call(this),button({editor:s,extension:n,t:i}){var a,g;const l=n.options.subscript,u=n.options.superscript,o={action:()=>s.commands.toggleSubscript(),isActive:()=>s.isActive("subscript")||!1,disabled:!s.can().toggleSubscript(),icon:"Subscript",title:i("editor.subscript.tooltip"),shortcutKeys:((a=n.options.shortcutKeys)==null?void 0:a[0])??["mod","."]},d={action:()=>s.commands.toggleSuperscript(),isActive:()=>s.isActive("superscript")||!1,disabled:!s.can().toggleSuperscript(),icon:"Superscript",title:i("editor.superscript.tooltip"),shortcutKeys:((g=n.options.shortcutKeys)==null?void 0:g[1])??["mod",","]},e=[];return l!==!1&&e.push(o),u!==!1&&e.push(d),{componentProps:{icon:"Type",tooltip:i("editor.moremark"),disabled:!s.isEditable,items:e,isActive:()=>e==null?void 0:e.find(m=>m.isActive())}}}}},addExtensions(){const t=[];return this.options.subscript!==!1&&t.push(k.configure(this.options.subscript)),this.options.superscript!==!1&&t.push(A.configure(this.options.superscript)),t}});exports.MoreMark=b;exports.RichTextMoreMark=v;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("./index-DLqogznp.cjs"),r=require("react/jsx-runtime"),M=require("react"),x=require("./toggle-DUPu3nnZ.cjs");require("./index-CnbtiTqP.cjs");const h=require("./useButtonProps-C4SCmCVo.cjs"),p=require("./dropdown-menu-CwHOwzLr.cjs"),f=require("./index-DmOTQudI.cjs"),S=require("./Icon-ztD4g9N4.cjs");var k=c.Mark.create({name:"subscript",addOptions(){return{HTMLAttributes:{}}},parseHTML(){return[{tag:"sub"},{style:"vertical-align",getAttrs(t){return t!=="sub"?!1:null}}]},renderHTML({HTMLAttributes:t}){return["sub",c.mergeAttributes(this.options.HTMLAttributes,t),0]},addCommands(){return{setSubscript:()=>({commands:t})=>t.setMark(this.name),toggleSubscript:()=>({commands:t})=>t.toggleMark(this.name),unsetSubscript:()=>({commands:t})=>t.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-,":()=>this.editor.commands.toggleSubscript()}}}),A=c.Mark.create({name:"superscript",addOptions(){return{HTMLAttributes:{}}},parseHTML(){return[{tag:"sup"},{style:"vertical-align",getAttrs(t){return t!=="super"?!1:null}}]},renderHTML({HTMLAttributes:t}){return["sup",c.mergeAttributes(this.options.HTMLAttributes,t),0]},addCommands(){return{setSuperscript:()=>({commands:t})=>t.setMark(this.name),toggleSuperscript:()=>({commands:t})=>t.toggleMark(this.name),unsetSuperscript:()=>({commands:t})=>t.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-.":()=>this.editor.commands.toggleSuperscript()}}});function v(){const t=h.useButtonProps(b.name),{icon:s=void 0,tooltip:n=void 0,items:i=[],isActive:l=void 0}=(t==null?void 0:t.componentProps)??{},{disabled:u,dataState:o}=h.useActive(l),d=M.useMemo(()=>(o==null?void 0:o.title)||"",[o]);return t?r.jsxs(p.DropdownMenu,{children:[r.jsx(p.DropdownMenuTrigger,{asChild:!0,disabled:u,children:r.jsx(x.ActionButton,{customClass:"!richtext-w-12 richtext-h-12",disabled:u,icon:s,tooltip:n,children:r.jsx(f.MenuDown,{className:"richtext-size-3 richtext-text-gray-500"})})}),r.jsx(p.DropdownMenuContent,{className:"w-full",children:i==null?void 0:i.map((e,a)=>r.jsxs(p.DropdownMenuCheckboxItem,{checked:d===e.title,className:"richtext-flex richtext-items-center richtext-gap-3",onClick:e.action,children:[r.jsx(S.IconComponent,{name:e==null?void 0:e.icon}),r.jsx("span",{className:"richtext-ml-1",children:e.title}),!!(e!=null&&e.shortcutKeys)&&r.jsx("span",{className:"richtext-ml-auto richtext-text-xs richtext-tracking-widest richtext-opacity-60",children:h.getShortcutKeys(e.shortcutKeys)})]},`more-mark-${a}`))})]}):r.jsx(r.Fragment,{})}const b=c.Extension.create({name:"moreMark",addOptions(){var t;return{...(t=this.parent)==null?void 0:t.call(this),button({editor:s,extension:n,t:i}){var a,g;const l=n.options.subscript,u=n.options.superscript,o={action:()=>s.commands.toggleSubscript(),isActive:()=>s.isActive("subscript")||!1,disabled:!s.can().toggleSubscript(),icon:"Subscript",title:i("editor.subscript.tooltip"),shortcutKeys:((a=n.options.shortcutKeys)==null?void 0:a[0])??["mod","."]},d={action:()=>s.commands.toggleSuperscript(),isActive:()=>s.isActive("superscript")||!1,disabled:!s.can().toggleSuperscript(),icon:"Superscript",title:i("editor.superscript.tooltip"),shortcutKeys:((g=n.options.shortcutKeys)==null?void 0:g[1])??["mod",","]},e=[];return l!==!1&&e.push(o),u!==!1&&e.push(d),{componentProps:{icon:"Type",tooltip:i("editor.moremark"),disabled:!s.isEditable,items:e,isActive:()=>e==null?void 0:e.find(m=>m.isActive())}}}}},addExtensions(){const t=[];return this.options.subscript!==!1&&t.push(k.configure(this.options.subscript)),this.options.superscript!==!1&&t.push(A.configure(this.options.superscript)),t}});exports.MoreMark=b;exports.RichTextMoreMark=v;
package/lib/MoreMark.js CHANGED
@@ -1,12 +1,12 @@
1
1
  import { M as h, m, E as b } from "./index-nFjllrEl.js";
2
2
  import { jsx as e, Fragment as f, jsxs as d } from "react/jsx-runtime";
3
3
  import { useMemo as M } from "react";
4
- import { A as x } from "./toggle-DifEFalS.js";
5
- import "./index-BY7ivGJJ.js";
6
- import { D as A, a as S, b as k, c as v } from "./dropdown-menu-Lfbfr4dW.js";
7
- import { u as y, b as T, g as K } from "./useButtonProps-DEuoHLy_.js";
4
+ import { A as x } from "./toggle-WBgzE8Jm.js";
5
+ import "./index--XZPCi0O.js";
6
+ import { u as A, b as S, g as k } from "./useButtonProps-BIOoOg6h.js";
7
+ import { D as v, a as y, b as T, c as K } from "./dropdown-menu-y1rPk4dr.js";
8
8
  import { M as w } from "./index-BQ17A_37.js";
9
- import { I as C } from "./Icon-CNyAQ70L.js";
9
+ import { I as C } from "./Icon-1z7VnLgz.js";
10
10
  var H = h.create({
11
11
  name: "subscript",
12
12
  addOptions() {
@@ -79,15 +79,15 @@ var H = h.create({
79
79
  }
80
80
  });
81
81
  function $() {
82
- const t = y(D.name), {
82
+ const t = A(D.name), {
83
83
  icon: s = void 0,
84
84
  tooltip: o = void 0,
85
85
  items: i = [],
86
86
  isActive: a = void 0
87
- } = (t == null ? void 0 : t.componentProps) ?? {}, { disabled: c, dataState: n } = T(a), p = M(() => (n == null ? void 0 : n.title) || "", [n]);
88
- return t ? /* @__PURE__ */ d(A, { children: [
87
+ } = (t == null ? void 0 : t.componentProps) ?? {}, { disabled: c, dataState: n } = S(a), p = M(() => (n == null ? void 0 : n.title) || "", [n]);
88
+ return t ? /* @__PURE__ */ d(v, { children: [
89
89
  /* @__PURE__ */ e(
90
- S,
90
+ y,
91
91
  {
92
92
  asChild: !0,
93
93
  disabled: c,
@@ -103,8 +103,8 @@ function $() {
103
103
  )
104
104
  }
105
105
  ),
106
- /* @__PURE__ */ e(k, { className: "w-full", children: i == null ? void 0 : i.map((r, u) => /* @__PURE__ */ d(
107
- v,
106
+ /* @__PURE__ */ e(T, { className: "w-full", children: i == null ? void 0 : i.map((r, u) => /* @__PURE__ */ d(
107
+ K,
108
108
  {
109
109
  checked: p === r.title,
110
110
  className: "richtext-flex richtext-items-center richtext-gap-3",
@@ -112,7 +112,7 @@ function $() {
112
112
  children: [
113
113
  /* @__PURE__ */ e(C, { name: r == null ? void 0 : r.icon }),
114
114
  /* @__PURE__ */ e("span", { className: "richtext-ml-1", children: r.title }),
115
- !!(r != null && r.shortcutKeys) && /* @__PURE__ */ e("span", { className: "richtext-ml-auto richtext-text-xs richtext-tracking-widest richtext-opacity-60", children: K(r.shortcutKeys) })
115
+ !!(r != null && r.shortcutKeys) && /* @__PURE__ */ e("span", { className: "richtext-ml-auto richtext-text-xs richtext-tracking-widest richtext-opacity-60", children: k(r.shortcutKeys) })
116
116
  ]
117
117
  },
118
118
  `more-mark-${u}`
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const O=require("./index-TMqmkmT6.cjs"),r=require("react/jsx-runtime"),g=require("./toggle-Bdrb8AZg.cjs");require("react");require("./index-B7WkxZXU.cjs");const d=require("./useButtonProps-5aSfh81v.cjs");function m(){const t=d.useButtonProps(c.name),{icon:e=void 0,tooltip:o=void 0,shortcutKeys:i=void 0,tooltipOptions:u={},action:s=void 0,isActive:a=void 0}=(t==null?void 0:t.componentProps)??{},{dataState:p,disabled:n,update:l}=d.useToggleActive(a),v=()=>{n||s&&(s(),l())};return t?r.jsx(g.ActionButton,{action:v,dataState:p,disabled:n,icon:e,shortcutKeys:i,tooltip:o,tooltipOptions:u}):r.jsx(r.Fragment,{})}const c=O.OrderedList.extend({addOptions(){var t;return{...(t=this.parent)==null?void 0:t.call(this),button:({editor:e,t:o,extension:i})=>({componentProps:{action:()=>e.commands.toggleOrderedList(),isActive:()=>e.isActive("orderedList"),disabled:!1,icon:"ListOrdered",shortcutKeys:i.options.shortcutKeys??["mod","shift","7"],tooltip:o("editor.orderedlist.tooltip")}})}}});exports.OrderedList=c;exports.RichTextOrderedList=m;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const O=require("./index-TMqmkmT6.cjs"),r=require("react/jsx-runtime"),g=require("./toggle-DUPu3nnZ.cjs");require("react");require("./index-CnbtiTqP.cjs");const d=require("./useButtonProps-C4SCmCVo.cjs");function m(){const t=d.useButtonProps(c.name),{icon:e=void 0,tooltip:o=void 0,shortcutKeys:i=void 0,tooltipOptions:u={},action:s=void 0,isActive:a=void 0}=(t==null?void 0:t.componentProps)??{},{dataState:p,disabled:n,update:l}=d.useToggleActive(a),v=()=>{n||s&&(s(),l())};return t?r.jsx(g.ActionButton,{action:v,dataState:p,disabled:n,icon:e,shortcutKeys:i,tooltip:o,tooltipOptions:u}):r.jsx(r.Fragment,{})}const c=O.OrderedList.extend({addOptions(){var t;return{...(t=this.parent)==null?void 0:t.call(this),button:({editor:e,t:o,extension:i})=>({componentProps:{action:()=>e.commands.toggleOrderedList(),isActive:()=>e.isActive("orderedList"),disabled:!1,icon:"ListOrdered",shortcutKeys:i.options.shortcutKeys??["mod","shift","7"],tooltip:o("editor.orderedlist.tooltip")}})}}});exports.OrderedList=c;exports.RichTextOrderedList=m;
@@ -1,9 +1,9 @@
1
1
  import { O as u } from "./index-D-FhWysc.js";
2
2
  import { jsx as n, Fragment as f } from "react/jsx-runtime";
3
- import { A as l } from "./toggle-DifEFalS.js";
3
+ import { A as l } from "./toggle-WBgzE8Jm.js";
4
4
  import "react";
5
- import "./index-BY7ivGJJ.js";
6
- import { u as v, a as O } from "./useButtonProps-DEuoHLy_.js";
5
+ import "./index--XZPCi0O.js";
6
+ import { u as v, a as O } from "./useButtonProps-BIOoOg6h.js";
7
7
  function b() {
8
8
  const t = v(A.name), {
9
9
  icon: o = void 0,
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Y=require("./index-DLqogznp.cjs"),F=require("@tiptap/pm/state"),b=require("@tiptap/pm/view"),a=require("react/jsx-runtime"),f=require("react"),Z=require("./toggle-Bdrb8AZg.cjs");require("./index-B7WkxZXU.cjs");const j=require("./button-CIneI3CY.cjs"),M=require("./input-gHDudt4e.cjs"),k=require("./label-CVPLC4Zx.cjs"),B=require("./popover-MfEQQFJ7.cjs"),_=require("./checkbox-D71Mb18N.cjs"),$=require("./useButtonProps-5aSfh81v.cjs"),ee=require("./index-D4d-0Hqh.cjs"),V=require("./Icon-CJomacaQ.cjs");function te(){const{t}=ee.useLocale(),e=$.useEditorInstance(),s=$.useButtonProps(W.name),{icon:n=void 0,tooltip:u=void 0,shortcutKeys:o=void 0,tooltipOptions:c={},action:x=void 0,isActive:h=void 0}=(s==null?void 0:s.componentProps)??{},{disabled:i}=$.useActive(h),[g,d]=f.useState(!1),[p,A]=f.useState(""),[T,N]=f.useState(""),[I,H]=f.useState(!1),[U,E]=f.useState(""),w=()=>{var r,l,R,m;E(`${((l=(r=e==null?void 0:e.storage)==null?void 0:r.searchAndReplace)==null?void 0:l.resultIndex)+1}/${(m=(R=e==null?void 0:e.storage)==null?void 0:R.searchAndReplace)==null?void 0:m.results.length}`)};f.useEffect(()=>{e&&w()},[e]);const z=()=>{i||x&&x()},y=(r=!1)=>{var l,R,m,v,S,D,q,O;e&&(r&&((R=(l=e==null?void 0:e.commands)==null?void 0:l.resetIndex)==null||R.call(l)),(v=(m=e==null?void 0:e.commands)==null?void 0:m.setSearchTerm)==null||v.call(m,p),(D=(S=e==null?void 0:e.commands)==null?void 0:S.setReplaceTerm)==null||D.call(S,T),(O=(q=e==null?void 0:e.commands)==null?void 0:q.setCaseSensitive)==null||O.call(q,I),w())},P=()=>{var v,S;if(!e)return;const{results:r,resultIndex:l}=e.storage.searchAndReplace,R=r[l];if(!R)return;(S=(v=e==null?void 0:e.commands)==null?void 0:v.setTextSelection)==null||S.call(v,R);const{node:m}=e.view.domAtPos(e.state.selection.anchor);m instanceof HTMLElement&&m.scrollIntoView({behavior:"smooth",block:"center"}),w()};f.useEffect(()=>{p.trim()||L(),p.trim()&&y(!0)},[p]),f.useEffect(()=>{T.trim()&&y()},[T]),f.useEffect(()=>{y(!0)},[I]);const G=()=>{var r,l;(l=(r=e==null?void 0:e.commands)==null?void 0:r.replace)==null||l.call(r),P()},J=()=>{var r,l;(l=(r=e==null?void 0:e.commands)==null?void 0:r.nextSearchResult)==null||l.call(r),P()},Q=()=>{var r,l;(l=(r=e==null?void 0:e.commands)==null?void 0:r.previousSearchResult)==null||l.call(r),P()},L=()=>{var r,l;A(""),N(""),(l=(r=e==null?void 0:e.commands)==null?void 0:r.resetIndex)==null||l.call(r),w()},X=()=>{var r,l;(l=(r=e==null?void 0:e.commands)==null?void 0:r.replaceAll)==null||l.call(r),E("0/0")};return s?a.jsxs(B.Popover,{onOpenChange:d,open:g,children:[a.jsx(B.PopoverTrigger,{asChild:!0,disabled:i,children:a.jsx(Z.ActionButton,{action:z,disabled:i,icon:n,shortcutKeys:o,tooltip:u,tooltipOptions:c})}),a.jsxs(B.PopoverContent,{align:"start",className:"richtext-w-full",hideWhenDetached:!0,side:"bottom",children:[a.jsxs("div",{className:"richtext-mb-[6px] richtext-flex richtext-items-center richtext-justify-between",children:[a.jsx(k.Label,{children:t("editor.search.dialog.text")}),a.jsx("span",{className:"richtext-font-semibold",children:U})]}),a.jsxs("div",{className:"richtext-mb-[10px] richtext-flex richtext-w-full richtext-max-w-sm richtext-items-center richtext-gap-1.5",children:[a.jsx(M.Input,{autoFocus:!0,className:"richtext-w-full",onChange:r=>A(r.target.value),placeholder:"Text",required:!0,type:"text",value:p}),a.jsx(j.Button,{className:"richtext-flex-1",onClick:Q,children:a.jsx(V.IconComponent,{name:"ChevronUp"})}),a.jsx(j.Button,{className:"richtext-flex-1",onClick:J,children:a.jsx(V.IconComponent,{name:"ChevronDown"})}),a.jsx(j.Button,{className:"richtext-flex-1",onClick:L,children:"Clear"})]}),a.jsx(k.Label,{className:"richtext-mb-[6px]",children:t("editor.replace.dialog.text")}),a.jsx("div",{className:"richtext-mb-[5px] richtext-flex richtext-w-full richtext-max-w-sm richtext-items-center richtext-gap-1.5",children:a.jsx("div",{className:"richtext-relative richtext-w-full richtext-max-w-sm richtext-items-center",children:a.jsx(M.Input,{className:"richtext-w-80",onChange:r=>N(r.target.value),placeholder:"Text",required:!0,type:"text",value:T})})}),a.jsxs("div",{className:"richtext-my-[10px] richtext-flex richtext-items-center richtext-gap-1",children:[a.jsx(_.Checkbox,{checked:I,onCheckedChange:r=>{H(r),e.commands.setCaseSensitive(r)}}),a.jsx(k.Label,{children:t("editor.replace.caseSensitive")})]}),a.jsxs("div",{className:"richtext-flex richtext-items-center richtext-gap-[10px]",children:[a.jsx(j.Button,{className:"richtext-flex-1",onClick:G,children:t("editor.replace.dialog.text")}),a.jsx(j.Button,{className:"richtext-flex-1",onClick:X,children:t("editor.replaceAll.dialog.text")})]})]})]}):a.jsx(a.Fragment,{})}const C=(t,e)=>e(t.tr);function se(t,e,s){return RegExp(e?t.replace(/[$()*+.?[\\\]^{|}]/g,String.raw`\$&`):t,s?"gu":"gui")}function re(t,e,s,n){const u=[],o=[];let c=[],x=0;if(!e)return{decorationsToReturn:b.DecorationSet.empty,results:[]};t==null||t.descendants((h,i)=>{h.isText?c[x]?c[x]={text:c[x].text+h.text,pos:c[x].pos}:c[x]={text:`${h.text}`,pos:i}:x+=1}),c=c.filter(Boolean);for(const h of c){const{text:i,pos:g}=h,d=Array.from(i.matchAll(e)).filter(([p])=>p.trim());for(const p of d){if(p[0]==="")break;p.index!==void 0&&o.push({from:g+p.index,to:g+p.index+p[0].length})}}for(const[h,i]of o.entries()){const g=h===n?`${s} ${s}-current`:s,d=b.Decoration.inline(i.from,i.to,{class:g});u.push(d)}return{decorationsToReturn:b.DecorationSet.create(t,u),results:o}}function K(t,e,{state:s,dispatch:n}){if(!e[0])return;const{from:o,to:c}=e[0];n&&n(s.tr.insertText(t,o,c))}function ne(t,e,s,n){const u=e+1;if(!n[u])return null;const{from:o,to:c}=n[e],x=c-o-t.length+s,{from:h,to:i}=n[u];return n[u]={to:i-x,from:h-x},[x,n]}function ce(t,e,{tr:s,dispatch:n}){let u=0,o=e.slice();if(o.length!==0){for(let c=0;c<o.length;c+=1){const{from:x,to:h}=o[c];s.insertText(t,x,h);const i=ne(t,c,u,o);i&&(u=i[0],o=i[1])}n(s)}}const W=Y.Extension.create({name:"searchAndReplace",addOptions(){var t;return{...(t=this.parent)==null?void 0:t.call(this),searchTerm:"",replaceTerm:"",results:[],searchResultClass:"search-result",searchResultCurrentClass:"search-result-current",caseSensitive:!1,disableRegex:!0,onChange:()=>{},button:({editor:e,t:s})=>({componentProps:{action:()=>{},icon:"SearchAndReplace",tooltip:s("editor.searchAndReplace.tooltip"),isActive:()=>!0,editor:e}})}},addStorage(){return{searchTerm:"",replaceTerm:"",results:[],lastSearchTerm:"",caseSensitive:!1,lastCaseSensitive:!1,resultIndex:0,lastResultIndex:0}},addCommands(){return{setSearchTerm:t=>({editor:e,state:s,dispatch:n})=>(e.storage.searchAndReplace.searchTerm=t,C(s,n),!1),setReplaceTerm:t=>({editor:e,state:s,dispatch:n})=>(e.storage.searchAndReplace.replaceTerm=t,C(s,n),!1),setCaseSensitive:t=>({editor:e,state:s,dispatch:n})=>(e.storage.searchAndReplace.caseSensitive=t,C(s,n),!1),resetIndex:()=>({editor:t,state:e,dispatch:s})=>(t.storage.searchAndReplace.resultIndex=0,C(e,s),!1),nextSearchResult:()=>({editor:t})=>{const{results:e,resultIndex:s}=t.storage.searchAndReplace,n=s+1;return e[n]?t.storage.searchAndReplace.resultIndex=n:t.storage.searchAndReplace.resultIndex=0,!1},previousSearchResult:()=>({editor:t})=>{const{results:e,resultIndex:s}=t.storage.searchAndReplace,n=s-1;return e[n]?t.storage.searchAndReplace.resultIndex=n:t.storage.searchAndReplace.resultIndex=e.length-1,!1},replace:()=>({editor:t,state:e,dispatch:s})=>{const{replaceTerm:n,results:u,resultIndex:o}=t.storage.searchAndReplace,c=u[o];return c?(K(n,[c],{state:e,dispatch:s}),t.storage.searchAndReplace.results.splice(o,1)):(K(n,u,{state:e,dispatch:s}),t.storage.searchAndReplace.results.shift()),C(e,s),!1},replaceAll:()=>({editor:t,tr:e,state:s,dispatch:n})=>{const{replaceTerm:u,results:o}=t.storage.searchAndReplace;return ce(u,o,{tr:e,dispatch:n}),t.storage.searchAndReplace.resultIndex=0,t.storage.searchAndReplace.results=[],C(s,n),!1}}},addProseMirrorPlugins(){const t=this.editor,{searchResultClass:e,disableRegex:s}=this.options,n=c=>t.storage.searchAndReplace.lastSearchTerm=c,u=c=>t.storage.searchAndReplace.lastCaseSensitive=c,o=c=>t.storage.searchAndReplace.lastResultIndex=c;return[new F.Plugin({key:new F.PluginKey(`richtextCustomPlugin${this.name}`),state:{init:()=>b.DecorationSet.empty,apply({doc:c,docChanged:x},h){const{searchTerm:i,lastSearchTerm:g,caseSensitive:d,lastCaseSensitive:p,resultIndex:A,lastResultIndex:T}=t.storage.searchAndReplace;if(!x&&g===i&&p===d&&T===A)return h;if(n(i),u(d),o(A),!i)return t.storage.searchAndReplace.results=[],b.DecorationSet.empty;const{decorationsToReturn:N,results:I}=re(c,se(i,s,d),e,A);return t.storage.searchAndReplace.results=I,N}},props:{decorations(c){return this.getState(c)}}})]}});exports.RichTextSearchAndReplace=te;exports.SearchAndReplace=W;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Y=require("./index-DLqogznp.cjs"),F=require("@tiptap/pm/state"),b=require("@tiptap/pm/view"),a=require("react/jsx-runtime"),f=require("react"),Z=require("./toggle-DUPu3nnZ.cjs");require("./index-CnbtiTqP.cjs");const k=require("./useButtonProps-C4SCmCVo.cjs"),_=require("./index-D4d-0Hqh.cjs"),B=require("./popover-DVD1y8Z_.cjs"),$=require("./label-ChxDmW-K.cjs"),M=require("./input-Dikmsjjj.cjs"),j=require("./button-CjAogRMZ.cjs"),V=require("./Icon-ztD4g9N4.cjs"),ee=require("./checkbox-BFgaCetY.cjs");function te(){const{t}=_.useLocale(),e=k.useEditorInstance(),s=k.useButtonProps(W.name),{icon:n=void 0,tooltip:u=void 0,shortcutKeys:o=void 0,tooltipOptions:c={},action:x=void 0,isActive:h=void 0}=(s==null?void 0:s.componentProps)??{},{disabled:i}=k.useActive(h),[g,d]=f.useState(!1),[p,A]=f.useState(""),[T,N]=f.useState(""),[I,H]=f.useState(!1),[U,E]=f.useState(""),w=()=>{var r,l,R,m;E(`${((l=(r=e==null?void 0:e.storage)==null?void 0:r.searchAndReplace)==null?void 0:l.resultIndex)+1}/${(m=(R=e==null?void 0:e.storage)==null?void 0:R.searchAndReplace)==null?void 0:m.results.length}`)};f.useEffect(()=>{e&&w()},[e]);const z=()=>{i||x&&x()},y=(r=!1)=>{var l,R,m,v,S,D,q,O;e&&(r&&((R=(l=e==null?void 0:e.commands)==null?void 0:l.resetIndex)==null||R.call(l)),(v=(m=e==null?void 0:e.commands)==null?void 0:m.setSearchTerm)==null||v.call(m,p),(D=(S=e==null?void 0:e.commands)==null?void 0:S.setReplaceTerm)==null||D.call(S,T),(O=(q=e==null?void 0:e.commands)==null?void 0:q.setCaseSensitive)==null||O.call(q,I),w())},P=()=>{var v,S;if(!e)return;const{results:r,resultIndex:l}=e.storage.searchAndReplace,R=r[l];if(!R)return;(S=(v=e==null?void 0:e.commands)==null?void 0:v.setTextSelection)==null||S.call(v,R);const{node:m}=e.view.domAtPos(e.state.selection.anchor);m instanceof HTMLElement&&m.scrollIntoView({behavior:"smooth",block:"center"}),w()};f.useEffect(()=>{p.trim()||L(),p.trim()&&y(!0)},[p]),f.useEffect(()=>{T.trim()&&y()},[T]),f.useEffect(()=>{y(!0)},[I]);const G=()=>{var r,l;(l=(r=e==null?void 0:e.commands)==null?void 0:r.replace)==null||l.call(r),P()},J=()=>{var r,l;(l=(r=e==null?void 0:e.commands)==null?void 0:r.nextSearchResult)==null||l.call(r),P()},Q=()=>{var r,l;(l=(r=e==null?void 0:e.commands)==null?void 0:r.previousSearchResult)==null||l.call(r),P()},L=()=>{var r,l;A(""),N(""),(l=(r=e==null?void 0:e.commands)==null?void 0:r.resetIndex)==null||l.call(r),w()},X=()=>{var r,l;(l=(r=e==null?void 0:e.commands)==null?void 0:r.replaceAll)==null||l.call(r),E("0/0")};return s?a.jsxs(B.Popover,{onOpenChange:d,open:g,children:[a.jsx(B.PopoverTrigger,{asChild:!0,disabled:i,children:a.jsx(Z.ActionButton,{action:z,disabled:i,icon:n,shortcutKeys:o,tooltip:u,tooltipOptions:c})}),a.jsxs(B.PopoverContent,{align:"start",className:"richtext-w-full",hideWhenDetached:!0,side:"bottom",children:[a.jsxs("div",{className:"richtext-mb-[6px] richtext-flex richtext-items-center richtext-justify-between",children:[a.jsx($.Label,{children:t("editor.search.dialog.text")}),a.jsx("span",{className:"richtext-font-semibold",children:U})]}),a.jsxs("div",{className:"richtext-mb-[10px] richtext-flex richtext-w-full richtext-max-w-sm richtext-items-center richtext-gap-1.5",children:[a.jsx(M.Input,{autoFocus:!0,className:"richtext-w-full",onChange:r=>A(r.target.value),placeholder:"Text",required:!0,type:"text",value:p}),a.jsx(j.Button,{className:"richtext-flex-1",onClick:Q,children:a.jsx(V.IconComponent,{name:"ChevronUp"})}),a.jsx(j.Button,{className:"richtext-flex-1",onClick:J,children:a.jsx(V.IconComponent,{name:"ChevronDown"})}),a.jsx(j.Button,{className:"richtext-flex-1",onClick:L,children:"Clear"})]}),a.jsx($.Label,{className:"richtext-mb-[6px]",children:t("editor.replace.dialog.text")}),a.jsx("div",{className:"richtext-mb-[5px] richtext-flex richtext-w-full richtext-max-w-sm richtext-items-center richtext-gap-1.5",children:a.jsx("div",{className:"richtext-relative richtext-w-full richtext-max-w-sm richtext-items-center",children:a.jsx(M.Input,{className:"richtext-w-80",onChange:r=>N(r.target.value),placeholder:"Text",required:!0,type:"text",value:T})})}),a.jsxs("div",{className:"richtext-my-[10px] richtext-flex richtext-items-center richtext-gap-1",children:[a.jsx(ee.Checkbox,{checked:I,onCheckedChange:r=>{H(r),e.commands.setCaseSensitive(r)}}),a.jsx($.Label,{children:t("editor.replace.caseSensitive")})]}),a.jsxs("div",{className:"richtext-flex richtext-items-center richtext-gap-[10px]",children:[a.jsx(j.Button,{className:"richtext-flex-1",onClick:G,children:t("editor.replace.dialog.text")}),a.jsx(j.Button,{className:"richtext-flex-1",onClick:X,children:t("editor.replaceAll.dialog.text")})]})]})]}):a.jsx(a.Fragment,{})}const C=(t,e)=>e(t.tr);function se(t,e,s){return RegExp(e?t.replace(/[$()*+.?[\\\]^{|}]/g,String.raw`\$&`):t,s?"gu":"gui")}function re(t,e,s,n){const u=[],o=[];let c=[],x=0;if(!e)return{decorationsToReturn:b.DecorationSet.empty,results:[]};t==null||t.descendants((h,i)=>{h.isText?c[x]?c[x]={text:c[x].text+h.text,pos:c[x].pos}:c[x]={text:`${h.text}`,pos:i}:x+=1}),c=c.filter(Boolean);for(const h of c){const{text:i,pos:g}=h,d=Array.from(i.matchAll(e)).filter(([p])=>p.trim());for(const p of d){if(p[0]==="")break;p.index!==void 0&&o.push({from:g+p.index,to:g+p.index+p[0].length})}}for(const[h,i]of o.entries()){const g=h===n?`${s} ${s}-current`:s,d=b.Decoration.inline(i.from,i.to,{class:g});u.push(d)}return{decorationsToReturn:b.DecorationSet.create(t,u),results:o}}function K(t,e,{state:s,dispatch:n}){if(!e[0])return;const{from:o,to:c}=e[0];n&&n(s.tr.insertText(t,o,c))}function ne(t,e,s,n){const u=e+1;if(!n[u])return null;const{from:o,to:c}=n[e],x=c-o-t.length+s,{from:h,to:i}=n[u];return n[u]={to:i-x,from:h-x},[x,n]}function ce(t,e,{tr:s,dispatch:n}){let u=0,o=e.slice();if(o.length!==0){for(let c=0;c<o.length;c+=1){const{from:x,to:h}=o[c];s.insertText(t,x,h);const i=ne(t,c,u,o);i&&(u=i[0],o=i[1])}n(s)}}const W=Y.Extension.create({name:"searchAndReplace",addOptions(){var t;return{...(t=this.parent)==null?void 0:t.call(this),searchTerm:"",replaceTerm:"",results:[],searchResultClass:"search-result",searchResultCurrentClass:"search-result-current",caseSensitive:!1,disableRegex:!0,onChange:()=>{},button:({editor:e,t:s})=>({componentProps:{action:()=>{},icon:"SearchAndReplace",tooltip:s("editor.searchAndReplace.tooltip"),isActive:()=>!0,editor:e}})}},addStorage(){return{searchTerm:"",replaceTerm:"",results:[],lastSearchTerm:"",caseSensitive:!1,lastCaseSensitive:!1,resultIndex:0,lastResultIndex:0}},addCommands(){return{setSearchTerm:t=>({editor:e,state:s,dispatch:n})=>(e.storage.searchAndReplace.searchTerm=t,C(s,n),!1),setReplaceTerm:t=>({editor:e,state:s,dispatch:n})=>(e.storage.searchAndReplace.replaceTerm=t,C(s,n),!1),setCaseSensitive:t=>({editor:e,state:s,dispatch:n})=>(e.storage.searchAndReplace.caseSensitive=t,C(s,n),!1),resetIndex:()=>({editor:t,state:e,dispatch:s})=>(t.storage.searchAndReplace.resultIndex=0,C(e,s),!1),nextSearchResult:()=>({editor:t})=>{const{results:e,resultIndex:s}=t.storage.searchAndReplace,n=s+1;return e[n]?t.storage.searchAndReplace.resultIndex=n:t.storage.searchAndReplace.resultIndex=0,!1},previousSearchResult:()=>({editor:t})=>{const{results:e,resultIndex:s}=t.storage.searchAndReplace,n=s-1;return e[n]?t.storage.searchAndReplace.resultIndex=n:t.storage.searchAndReplace.resultIndex=e.length-1,!1},replace:()=>({editor:t,state:e,dispatch:s})=>{const{replaceTerm:n,results:u,resultIndex:o}=t.storage.searchAndReplace,c=u[o];return c?(K(n,[c],{state:e,dispatch:s}),t.storage.searchAndReplace.results.splice(o,1)):(K(n,u,{state:e,dispatch:s}),t.storage.searchAndReplace.results.shift()),C(e,s),!1},replaceAll:()=>({editor:t,tr:e,state:s,dispatch:n})=>{const{replaceTerm:u,results:o}=t.storage.searchAndReplace;return ce(u,o,{tr:e,dispatch:n}),t.storage.searchAndReplace.resultIndex=0,t.storage.searchAndReplace.results=[],C(s,n),!1}}},addProseMirrorPlugins(){const t=this.editor,{searchResultClass:e,disableRegex:s}=this.options,n=c=>t.storage.searchAndReplace.lastSearchTerm=c,u=c=>t.storage.searchAndReplace.lastCaseSensitive=c,o=c=>t.storage.searchAndReplace.lastResultIndex=c;return[new F.Plugin({key:new F.PluginKey(`richtextCustomPlugin${this.name}`),state:{init:()=>b.DecorationSet.empty,apply({doc:c,docChanged:x},h){const{searchTerm:i,lastSearchTerm:g,caseSensitive:d,lastCaseSensitive:p,resultIndex:A,lastResultIndex:T}=t.storage.searchAndReplace;if(!x&&g===i&&p===d&&T===A)return h;if(n(i),u(d),o(A),!i)return t.storage.searchAndReplace.results=[],b.DecorationSet.empty;const{decorationsToReturn:N,results:I}=re(c,se(i,s,d),e,A);return t.storage.searchAndReplace.results=I,N}},props:{decorations(c){return this.getState(c)}}})]}});exports.RichTextSearchAndReplace=te;exports.SearchAndReplace=W;
@@ -3,25 +3,25 @@ import { Plugin as X, PluginKey as Y } from "@tiptap/pm/state";
3
3
  import { DecorationSet as $, Decoration as Z } from "@tiptap/pm/view";
4
4
  import { jsx as u, Fragment as _, jsxs as T } from "react/jsx-runtime";
5
5
  import { useState as b, useEffect as k } from "react";
6
- import { A as ee } from "./toggle-DifEFalS.js";
7
- import "./index-BY7ivGJJ.js";
8
- import { B as N } from "./button-CG4usMxR.js";
9
- import { I as V } from "./input-BP2Gxw3D.js";
10
- import { L as B } from "./label-DJJuWtqE.js";
11
- import { P as te, a as se, b as re } from "./popover-BvQjtkQM.js";
12
- import { C as ne } from "./checkbox-C_n_ksgm.js";
13
- import { c as ce, u as ae, b as le } from "./useButtonProps-DEuoHLy_.js";
14
- import { u as oe } from "./index-DGihe-wH.js";
15
- import { I as q } from "./Icon-CNyAQ70L.js";
6
+ import { A as ee } from "./toggle-WBgzE8Jm.js";
7
+ import "./index--XZPCi0O.js";
8
+ import { c as te, u as se, b as re } from "./useButtonProps-BIOoOg6h.js";
9
+ import { u as ne } from "./index-DGihe-wH.js";
10
+ import { P as ce, a as ae, b as le } from "./popover-CheVmqgb.js";
11
+ import { L as B } from "./label-BX7OqM6p.js";
12
+ import { I as V } from "./input-Byg4PPou.js";
13
+ import { B as N } from "./button-BnN1L5_T.js";
14
+ import { I as q } from "./Icon-1z7VnLgz.js";
15
+ import { C as oe } from "./checkbox-sSQSzjls.js";
16
16
  function Pe() {
17
- const { t } = oe(), e = ce(), s = ae(pe.name), {
17
+ const { t } = ne(), e = te(), s = se(pe.name), {
18
18
  icon: n = void 0,
19
19
  tooltip: i = void 0,
20
20
  shortcutKeys: l = void 0,
21
21
  tooltipOptions: c = {},
22
22
  action: h = void 0,
23
23
  isActive: m = void 0
24
- } = (s == null ? void 0 : s.componentProps) ?? {}, { disabled: o } = le(m), [f, d] = b(!1), [p, A] = b(""), [S, w] = b(""), [I, M] = b(!1), [W, D] = b(""), y = () => {
24
+ } = (s == null ? void 0 : s.componentProps) ?? {}, { disabled: o } = re(m), [f, d] = b(!1), [p, A] = b(""), [S, w] = b(""), [I, M] = b(!1), [W, D] = b(""), y = () => {
25
25
  var r, a, g, x;
26
26
  D(`${((a = (r = e == null ? void 0 : e.storage) == null ? void 0 : r.searchAndReplace) == null ? void 0 : a.resultIndex) + 1}/${(x = (g = e == null ? void 0 : e.storage) == null ? void 0 : g.searchAndReplace) == null ? void 0 : x.results.length}`);
27
27
  };
@@ -68,13 +68,13 @@ function Pe() {
68
68
  (a = (r = e == null ? void 0 : e.commands) == null ? void 0 : r.replaceAll) == null || a.call(r), D("0/0");
69
69
  };
70
70
  return s ? /* @__PURE__ */ T(
71
- te,
71
+ ce,
72
72
  {
73
73
  onOpenChange: d,
74
74
  open: f,
75
75
  children: [
76
76
  /* @__PURE__ */ u(
77
- se,
77
+ ae,
78
78
  {
79
79
  asChild: !0,
80
80
  disabled: o,
@@ -92,7 +92,7 @@ function Pe() {
92
92
  }
93
93
  ),
94
94
  /* @__PURE__ */ T(
95
- re,
95
+ le,
96
96
  {
97
97
  align: "start",
98
98
  className: "richtext-w-full",
@@ -155,7 +155,7 @@ function Pe() {
155
155
  ) }) }),
156
156
  /* @__PURE__ */ T("div", { className: "richtext-my-[10px] richtext-flex richtext-items-center richtext-gap-1", children: [
157
157
  /* @__PURE__ */ u(
158
- ne,
158
+ oe,
159
159
  {
160
160
  checked: I,
161
161
  onCheckedChange: (r) => {
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const N=require("./index-DLqogznp.cjs"),w=require("./updatePosition-C17CDdjq.cjs"),l=require("react/jsx-runtime"),m=require("react"),j=require("./index-B7WkxZXU.cjs"),D=require("./label-CVPLC4Zx.cjs"),$=require("./store-D0HwYEZ6.cjs"),v=require("./events.constant-B-VGURJp.cjs"),p=require("./index-D4d-0Hqh.cjs"),A=require("./Icon-CJomacaQ.cjs"),B={setOpen:(t,n)=>{v.dispatchEvent(v.EVENTS.UPLOAD_VIDEO(t),n)}};function R({t}){const n=[{name:"format",title:t("editor.slash.format"),commands:[]},{name:"insert",title:t("editor.slash.insert"),commands:[]}];return[1,2,3,4,5,6].forEach(e=>{n[0].commands.push({name:`heading${e}`,label:t(`editor.heading.h${e}.tooltip`),aliases:[`h${e}`,"bt",`bt${e}`],iconName:`Heading${e}`,action:({editor:i,range:d})=>{i.chain().focus().deleteRange(d).setHeading({level:e}).run()}})}),n[0].commands.push({name:"bulletList",label:t("editor.bulletlist.tooltip"),aliases:["ul","yxlb"],iconName:"List",action:({editor:e,range:i})=>{e.chain().focus().deleteRange(i).toggleBulletList().run()}}),n[0].commands.push({name:"numberedList",label:t("editor.orderedlist.tooltip"),aliases:["ol","yxlb"],iconName:"ListOrdered",action:({editor:e,range:i})=>{e.chain().focus().deleteRange(i).toggleOrderedList().run()}}),n[0].commands.push({name:"taskList",label:t("editor.tasklist.tooltip"),iconName:"ListTodo",description:"Task list with todo items",aliases:["todo"],action:({editor:e,range:i})=>{e.chain().focus().deleteRange(i).toggleTaskList().run()}}),n[0].commands.push({name:"blockquote",label:t("editor.blockquote.tooltip"),description:"插入引入格式",aliases:["yr"],iconName:"TextQuote",action:({editor:e,range:i})=>{e.chain().focus().deleteRange(i).setBlockquote().run()}}),n[0].commands.push({name:"codeBlock",label:t("editor.codeblock.tooltip"),iconName:"Code2",description:"Code block with syntax highlighting",shouldBeHidden:e=>e.isActive("columns"),action:({editor:e,range:i})=>{e.chain().focus().deleteRange(i).setCodeBlock().run()}}),n[1].commands.push({name:"image",label:t("editor.image.tooltip"),iconName:"ImageUp",description:"Insert a image",aliases:["image","tp","tupian"],shouldBeHidden:e=>e.isActive("columns"),action:({editor:e,range:i})=>{e.chain().focus().deleteRange(i).run(),$.actionDialogImage.setOpen(e.id,!0)}}),n[1].commands.push({name:"video",label:t("editor.video.tooltip"),iconName:"Video",description:"Insert a video",aliases:["video","sp","shipin"],shouldBeHidden:e=>e.isActive("columns"),action:({editor:e,range:i})=>{e.chain().focus().deleteRange(i).run(),B.setOpen(e.id,!0)}}),n[1].commands.push({name:"table",label:t("editor.table.tooltip"),iconName:"Table",description:"Insert a table",aliases:["table","bg","biaoge","biao"],shouldBeHidden:e=>e.isActive("columns"),action:({editor:e,range:i})=>{e.chain().focus().deleteRange(i).insertTable({rows:3,cols:3,withHeaderRow:!1}).run()}}),n[1].commands.push({name:"horizontalRule",label:t("editor.horizontalrule.tooltip"),iconName:"Minus",description:"Insert a horizontal divider",aliases:["hr","fgx","fg"],action:({editor:e,range:i})=>{e.chain().focus().deleteRange(i).setHorizontalRule().run()}}),n[1].commands.push({name:"columns",label:t("editor.columns.tooltip"),iconName:"Columns2",description:"Add two column content",action:({editor:e})=>{e.chain().focus().insertColumns({cols:2}).run()}}),n}function y(t,n){return t.map(d=>({...d,commands:d.commands.filter(c=>{const h=c.label.toLowerCase().trim(),u=n.toLowerCase().trim();if(c.aliases){const b=c.aliases.map(x=>x.toLowerCase().trim()),a=h.match(u),f=b.some(x=>x.match(u));return a||f}return h.match(u)})})).filter(d=>d.commands.length>0)}const O=p.d([]);function L(){const[t,n]=p.x(O);return[t,n]}function P(t,n){const[e]=L(),[i,d]=m.useState(0),[c,h]=m.useState(0),u=m.useRef(null),{t:b}=p.useLocale(),a=y(e,t.query),f=m.useRef([]);m.useImperativeHandle(n,()=>({onKeyDown:x})),m.useEffect(()=>{if(!u.current)return;const r=c*1e3+i,o=f.current[r];o&&o.scrollIntoView({behavior:"smooth",block:"nearest"})},[i,c]);function x({event:r}){return r.key==="ArrowUp"?(I(),!0):r.key==="ArrowDown"?(k(),!0):r.key==="Enter"?(S(),!0):!1}function I(){var s;if(a.length===0)return!1;let r=i-1,o=c;r<0&&(o=c-1,r=((s=a[o])==null?void 0:s.commands.length)-1||0),o<0&&(o=a.length-1,r=a[o].commands.length-1),d(r),h(o)}function k(){if(a.length===0)return!1;const r=a[c].commands;let o=i+1,s=c;r.length-1<o&&(o=0,s=c+1),a.length-1<s&&(s=0),d(o),h(s)}function S(){if(a.length===0||c===-1||i===-1)return!1;C(c,i)}function C(r,o){const s=a[r].commands[o];t==null||t.command(s)}function q(r,o){C(r,o)}function E(r,o,s){f.current[r*1e3+o]=s}return l.jsx("div",{className:"richtext-max-h-[min(80vh,24rem)] richtext-flex-wrap richtext-overflow-y-auto richtext-overflow-x-hidden richtext-rounded-md !richtext-border !richtext-border-solid !richtext-border-border richtext-bg-popover richtext-p-1 richtext-text-popover-foreground richtext-shadow-md richtext-outline-none","data-richtext-portal":!0,ref:u,children:a!=null&&a.length?l.jsx("div",{className:"richtext-grid richtext-min-w-48 richtext-grid-cols-1 richtext-gap-0.5",children:a==null?void 0:a.map((r,o)=>l.jsxs(m.Fragment,{children:[l.jsx(D.Label,{className:"richtext-mx-[4px] richtext-mb-[4px] richtext-mt-[8px] !richtext-text-[0.65rem] richtext-uppercase ",children:r.title}),r.commands.map((s,g)=>l.jsxs("button",{onClick:()=>q(o,g),ref:H=>E(o,g,H),className:j.cn("richtext-flex richtext-items-center richtext-gap-3 richtext-px-2 richtext-py-1.5 richtext-text-sm richtext-text-foreground richtext-text-left richtext-w-full richtext-rounded-sm !richtext-outline-none !richtext-border-none richtext-transition-colors !richtext-bg-transparent hover:!richtext-bg-accent ",{"bg-item-active":c===o&&i===g}),children:[s.iconUrl&&l.jsx("img",{alt:"",className:"richtext-size-6",src:s.iconUrl}),s.iconName&&l.jsx(A.IconComponent,{className:"!richtext-mr-1 !richtext-text-lg",name:s.iconName}),s.label]},`command-${g}`))]},`slash-${r.title}`))}):l.jsx("div",{className:"richtext-p-3",children:l.jsx("span",{className:"richtext-text-xs richtext-text-foreground",children:b("editor.slash.empty")})})})}const T=m.forwardRef(P);function V({commandList:t}){const[,n]=L(),{t:e}=p.useLocale();return m.useEffect(()=>{if(!(t!=null&&t.length)){const i=R({t:e});n(i);return}n(t)},[e,t]),l.jsx(l.Fragment,{})}const z=N.Extension.create({name:"richtextSlashCommand",priority:200,addProseMirrorPlugins(){return[w.Suggestion({editor:this.editor,char:"/",command:({editor:t,range:n,props:e})=>{const{view:i}=t;e.action({editor:t,range:n}),i.focus()},render:()=>{let t;return{onStart:n=>{n.clientRect&&(t=new N.ReactRenderer(T,{props:n,editor:n.editor}),t.element.style.position="absolute",document.body.appendChild(t.element),w.updatePosition(n.editor,t.element))},onUpdate(n){t.updateProps(n),n.clientRect&&w.updatePosition(n.editor,t.element)},onKeyDown(n){var e;return n.event.key==="Escape"?(t.destroy(),t.element.remove(),!0):(e=t.ref)==null?void 0:e.onKeyDown(n)},onExit(){t&&(t.destroy(),t.element.remove())}}}})]}});exports.SlashCommand=z;exports.SlashCommandList=V;exports.renderCommandListDefault=R;exports.useFilterCommandList=y;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const N=require("./index-DLqogznp.cjs"),w=require("./updatePosition-C17CDdjq.cjs"),l=require("react/jsx-runtime"),m=require("react"),j=require("./index-CnbtiTqP.cjs"),D=require("./store-DznMm4Ug.cjs"),v=require("./events.constant-B-VGURJp.cjs"),p=require("./index-D4d-0Hqh.cjs"),$=require("./label-ChxDmW-K.cjs"),A=require("./Icon-ztD4g9N4.cjs"),B={setOpen:(t,n)=>{v.dispatchEvent(v.EVENTS.UPLOAD_VIDEO(t),n)}};function R({t}){const n=[{name:"format",title:t("editor.slash.format"),commands:[]},{name:"insert",title:t("editor.slash.insert"),commands:[]}];return[1,2,3,4,5,6].forEach(e=>{n[0].commands.push({name:`heading${e}`,label:t(`editor.heading.h${e}.tooltip`),aliases:[`h${e}`,"bt",`bt${e}`],iconName:`Heading${e}`,action:({editor:i,range:d})=>{i.chain().focus().deleteRange(d).setHeading({level:e}).run()}})}),n[0].commands.push({name:"bulletList",label:t("editor.bulletlist.tooltip"),aliases:["ul","yxlb"],iconName:"List",action:({editor:e,range:i})=>{e.chain().focus().deleteRange(i).toggleBulletList().run()}}),n[0].commands.push({name:"numberedList",label:t("editor.orderedlist.tooltip"),aliases:["ol","yxlb"],iconName:"ListOrdered",action:({editor:e,range:i})=>{e.chain().focus().deleteRange(i).toggleOrderedList().run()}}),n[0].commands.push({name:"taskList",label:t("editor.tasklist.tooltip"),iconName:"ListTodo",description:"Task list with todo items",aliases:["todo"],action:({editor:e,range:i})=>{e.chain().focus().deleteRange(i).toggleTaskList().run()}}),n[0].commands.push({name:"blockquote",label:t("editor.blockquote.tooltip"),description:"插入引入格式",aliases:["yr"],iconName:"TextQuote",action:({editor:e,range:i})=>{e.chain().focus().deleteRange(i).setBlockquote().run()}}),n[0].commands.push({name:"codeBlock",label:t("editor.codeblock.tooltip"),iconName:"Code2",description:"Code block with syntax highlighting",shouldBeHidden:e=>e.isActive("columns"),action:({editor:e,range:i})=>{e.chain().focus().deleteRange(i).setCodeBlock().run()}}),n[1].commands.push({name:"image",label:t("editor.image.tooltip"),iconName:"ImageUp",description:"Insert a image",aliases:["image","tp","tupian"],shouldBeHidden:e=>e.isActive("columns"),action:({editor:e,range:i})=>{e.chain().focus().deleteRange(i).run(),D.actionDialogImage.setOpen(e.id,!0)}}),n[1].commands.push({name:"video",label:t("editor.video.tooltip"),iconName:"Video",description:"Insert a video",aliases:["video","sp","shipin"],shouldBeHidden:e=>e.isActive("columns"),action:({editor:e,range:i})=>{e.chain().focus().deleteRange(i).run(),B.setOpen(e.id,!0)}}),n[1].commands.push({name:"table",label:t("editor.table.tooltip"),iconName:"Table",description:"Insert a table",aliases:["table","bg","biaoge","biao"],shouldBeHidden:e=>e.isActive("columns"),action:({editor:e,range:i})=>{e.chain().focus().deleteRange(i).insertTable({rows:3,cols:3,withHeaderRow:!1}).run()}}),n[1].commands.push({name:"horizontalRule",label:t("editor.horizontalrule.tooltip"),iconName:"Minus",description:"Insert a horizontal divider",aliases:["hr","fgx","fg"],action:({editor:e,range:i})=>{e.chain().focus().deleteRange(i).setHorizontalRule().run()}}),n[1].commands.push({name:"columns",label:t("editor.columns.tooltip"),iconName:"Columns2",description:"Add two column content",action:({editor:e})=>{e.chain().focus().insertColumns({cols:2}).run()}}),n}function y(t,n){return t.map(d=>({...d,commands:d.commands.filter(c=>{const h=c.label.toLowerCase().trim(),u=n.toLowerCase().trim();if(c.aliases){const b=c.aliases.map(x=>x.toLowerCase().trim()),a=h.match(u),f=b.some(x=>x.match(u));return a||f}return h.match(u)})})).filter(d=>d.commands.length>0)}const O=p.d([]);function L(){const[t,n]=p.x(O);return[t,n]}function P(t,n){const[e]=L(),[i,d]=m.useState(0),[c,h]=m.useState(0),u=m.useRef(null),{t:b}=p.useLocale(),a=y(e,t.query),f=m.useRef([]);m.useImperativeHandle(n,()=>({onKeyDown:x})),m.useEffect(()=>{if(!u.current)return;const r=c*1e3+i,o=f.current[r];o&&o.scrollIntoView({behavior:"smooth",block:"nearest"})},[i,c]);function x({event:r}){return r.key==="ArrowUp"?(I(),!0):r.key==="ArrowDown"?(k(),!0):r.key==="Enter"?(S(),!0):!1}function I(){var s;if(a.length===0)return!1;let r=i-1,o=c;r<0&&(o=c-1,r=((s=a[o])==null?void 0:s.commands.length)-1||0),o<0&&(o=a.length-1,r=a[o].commands.length-1),d(r),h(o)}function k(){if(a.length===0)return!1;const r=a[c].commands;let o=i+1,s=c;r.length-1<o&&(o=0,s=c+1),a.length-1<s&&(s=0),d(o),h(s)}function S(){if(a.length===0||c===-1||i===-1)return!1;C(c,i)}function C(r,o){const s=a[r].commands[o];t==null||t.command(s)}function q(r,o){C(r,o)}function E(r,o,s){f.current[r*1e3+o]=s}return l.jsx("div",{className:"richtext-max-h-[min(80vh,24rem)] richtext-flex-wrap richtext-overflow-y-auto richtext-overflow-x-hidden richtext-rounded-md !richtext-border !richtext-border-solid !richtext-border-border richtext-bg-popover richtext-p-1 richtext-text-popover-foreground richtext-shadow-md richtext-outline-none","data-richtext-portal":!0,ref:u,children:a!=null&&a.length?l.jsx("div",{className:"richtext-grid richtext-min-w-48 richtext-grid-cols-1 richtext-gap-0.5",children:a==null?void 0:a.map((r,o)=>l.jsxs(m.Fragment,{children:[l.jsx($.Label,{className:"richtext-mx-[4px] richtext-mb-[4px] richtext-mt-[8px] !richtext-text-[0.65rem] richtext-uppercase ",children:r.title}),r.commands.map((s,g)=>l.jsxs("button",{onClick:()=>q(o,g),ref:H=>E(o,g,H),className:j.cn("richtext-flex richtext-items-center richtext-gap-3 richtext-px-2 richtext-py-1.5 richtext-text-sm richtext-text-foreground richtext-text-left richtext-w-full richtext-rounded-sm !richtext-outline-none !richtext-border-none richtext-transition-colors !richtext-bg-transparent hover:!richtext-bg-accent ",{"bg-item-active":c===o&&i===g}),children:[s.iconUrl&&l.jsx("img",{alt:"",className:"richtext-size-6",src:s.iconUrl}),s.iconName&&l.jsx(A.IconComponent,{className:"!richtext-mr-1 !richtext-text-lg",name:s.iconName}),s.label]},`command-${g}`))]},`slash-${r.title}`))}):l.jsx("div",{className:"richtext-p-3",children:l.jsx("span",{className:"richtext-text-xs richtext-text-foreground",children:b("editor.slash.empty")})})})}const T=m.forwardRef(P);function V({commandList:t}){const[,n]=L(),{t:e}=p.useLocale();return m.useEffect(()=>{if(!(t!=null&&t.length)){const i=R({t:e});n(i);return}n(t)},[e,t]),l.jsx(l.Fragment,{})}const z=N.Extension.create({name:"richtextSlashCommand",priority:200,addProseMirrorPlugins(){return[w.Suggestion({editor:this.editor,char:"/",command:({editor:t,range:n,props:e})=>{const{view:i}=t;e.action({editor:t,range:n}),i.focus()},render:()=>{let t;return{onStart:n=>{n.clientRect&&(t=new N.ReactRenderer(T,{props:n,editor:n.editor}),t.element.style.position="absolute",document.body.appendChild(t.element),w.updatePosition(n.editor,t.element))},onUpdate(n){t.updateProps(n),n.clientRect&&w.updatePosition(n.editor,t.element)},onKeyDown(n){var e;return n.event.key==="Escape"?(t.destroy(),t.element.remove(),!0):(e=t.ref)==null?void 0:e.onKeyDown(n)},onExit(){t&&(t.destroy(),t.element.remove())}}}})]}});exports.SlashCommand=z;exports.SlashCommandList=V;exports.renderCommandListDefault=R;exports.useFilterCommandList=y;
@@ -2,15 +2,15 @@ import { E as A, G as D } from "./index-nFjllrEl.js";
2
2
  import { S as $, u as b } from "./updatePosition-DpMKxYdN.js";
3
3
  import { jsx as m, jsxs as w, Fragment as B } from "react/jsx-runtime";
4
4
  import { forwardRef as V, useState as C, useRef as N, useImperativeHandle as z, useEffect as v, Fragment as G } from "react";
5
- import { c as O } from "./index-BY7ivGJJ.js";
6
- import { L as T } from "./label-DJJuWtqE.js";
7
- import { a as F } from "./store-DXwTyDFS.js";
8
- import { d as U, E as q } from "./events.constant-CBPIqO_g.js";
9
- import { m as P, x as M, u as R } from "./index-DGihe-wH.js";
10
- import { I as K } from "./Icon-CNyAQ70L.js";
5
+ import { c as O } from "./index--XZPCi0O.js";
6
+ import { a as T } from "./store-BVm_SgvL.js";
7
+ import { d as F, E as U } from "./events.constant-CBPIqO_g.js";
8
+ import { m as q, x as P, u as R } from "./index-DGihe-wH.js";
9
+ import { L as M } from "./label-BX7OqM6p.js";
10
+ import { I as K } from "./Icon-1z7VnLgz.js";
11
11
  const j = {
12
12
  setOpen: (t, n) => {
13
- U(q.UPLOAD_VIDEO(t), n);
13
+ F(U.UPLOAD_VIDEO(t), n);
14
14
  }
15
15
  };
16
16
  function _({ t }) {
@@ -87,7 +87,7 @@ function _({ t }) {
87
87
  aliases: ["image", "tp", "tupian"],
88
88
  shouldBeHidden: (e) => e.isActive("columns"),
89
89
  action: ({ editor: e, range: o }) => {
90
- e.chain().focus().deleteRange(o).run(), F.setOpen(e.id, !0);
90
+ e.chain().focus().deleteRange(o).run(), T.setOpen(e.id, !0);
91
91
  }
92
92
  }), n[1].commands.push({
93
93
  name: "video",
@@ -141,9 +141,9 @@ function J(t, n) {
141
141
  })
142
142
  })).filter((l) => l.commands.length > 0);
143
143
  }
144
- const W = P([]);
144
+ const W = q([]);
145
145
  function y() {
146
- const [t, n] = M(W);
146
+ const [t, n] = P(W);
147
147
  return [t, n];
148
148
  }
149
149
  function X(t, n) {
@@ -198,7 +198,7 @@ function X(t, n) {
198
198
  "data-richtext-portal": !0,
199
199
  ref: d,
200
200
  children: a != null && a.length ? /* @__PURE__ */ m("div", { className: "richtext-grid richtext-min-w-48 richtext-grid-cols-1 richtext-gap-0.5", children: a == null ? void 0 : a.map((r, i) => /* @__PURE__ */ w(G, { children: [
201
- /* @__PURE__ */ m(T, { className: "richtext-mx-[4px] richtext-mb-[4px] richtext-mt-[8px] !richtext-text-[0.65rem] richtext-uppercase ", children: r.title }),
201
+ /* @__PURE__ */ m(M, { className: "richtext-mx-[4px] richtext-mb-[4px] richtext-mt-[8px] !richtext-text-[0.65rem] richtext-uppercase ", children: r.title }),
202
202
  r.commands.map((s, x) => /* @__PURE__ */ w(
203
203
  "button",
204
204
  {
package/lib/Strike.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./index-DLqogznp.cjs"),n=require("react/jsx-runtime"),m=require("./toggle-Bdrb8AZg.cjs");require("react");require("./index-B7WkxZXU.cjs");const u=require("./useButtonProps-5aSfh81v.cjs");var h=/(?:^|\s)(~~(?!\s+~~)((?:[^~]+))~~(?!\s+~~))$/,S=/(?:^|\s)(~~(?!\s+~~)((?:[^~]+))~~(?!\s+~~))/g,f=r.Mark.create({name:"strike",addOptions(){return{HTMLAttributes:{}}},parseHTML(){return[{tag:"s"},{tag:"del"},{tag:"strike"},{style:"text-decoration",consuming:!1,getAttrs:t=>t.includes("line-through")?{}:!1}]},renderHTML({HTMLAttributes:t}){return["s",r.mergeAttributes(this.options.HTMLAttributes,t),0]},markdownTokenName:"del",parseMarkdown:(t,e)=>e.applyMark("strike",e.parseInline(t.tokens||[])),renderMarkdown:(t,e)=>`~~${e.renderChildren(t)}~~`,addCommands(){return{setStrike:()=>({commands:t})=>t.setMark(this.name),toggleStrike:()=>({commands:t})=>t.toggleMark(this.name),unsetStrike:()=>({commands:t})=>t.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-Shift-s":()=>this.editor.commands.toggleStrike()}},addInputRules(){return[r.markInputRule({find:h,type:this.type})]},addPasteRules(){return[r.markPasteRule({find:S,type:this.type})]}});function v(){const t=u.useButtonProps(d.name),{icon:e=void 0,tooltip:i=void 0,shortcutKeys:s=void 0,tooltipOptions:c={},action:o=void 0,isActive:l=void 0}=(t==null?void 0:t.componentProps)??{},{dataState:p,disabled:a,update:k}=u.useToggleActive(l),g=()=>{a||o&&(o(),k())};return t?n.jsx(m.ActionButton,{action:g,dataState:p,disabled:a,icon:e,shortcutKeys:s,tooltip:i,tooltipOptions:c}):n.jsx(n.Fragment,{})}const d=f.extend({addOptions(){var t;return{...(t=this.parent)==null?void 0:t.call(this),button:({editor:e,t:i,extension:s})=>({componentProps:{action:()=>e.commands.toggleStrike(),isActive:()=>e.isActive("strike")||!1,disabled:!1,icon:"Strikethrough",shortcutKeys:s.options.shortcutKeys??["shift","mod","S"],tooltip:i("editor.strike.tooltip")}})}}});exports.RichTextStrike=v;exports.Strike=d;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./index-DLqogznp.cjs"),n=require("react/jsx-runtime"),m=require("./toggle-DUPu3nnZ.cjs");require("react");require("./index-CnbtiTqP.cjs");const u=require("./useButtonProps-C4SCmCVo.cjs");var h=/(?:^|\s)(~~(?!\s+~~)((?:[^~]+))~~(?!\s+~~))$/,S=/(?:^|\s)(~~(?!\s+~~)((?:[^~]+))~~(?!\s+~~))/g,f=r.Mark.create({name:"strike",addOptions(){return{HTMLAttributes:{}}},parseHTML(){return[{tag:"s"},{tag:"del"},{tag:"strike"},{style:"text-decoration",consuming:!1,getAttrs:t=>t.includes("line-through")?{}:!1}]},renderHTML({HTMLAttributes:t}){return["s",r.mergeAttributes(this.options.HTMLAttributes,t),0]},markdownTokenName:"del",parseMarkdown:(t,e)=>e.applyMark("strike",e.parseInline(t.tokens||[])),renderMarkdown:(t,e)=>`~~${e.renderChildren(t)}~~`,addCommands(){return{setStrike:()=>({commands:t})=>t.setMark(this.name),toggleStrike:()=>({commands:t})=>t.toggleMark(this.name),unsetStrike:()=>({commands:t})=>t.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-Shift-s":()=>this.editor.commands.toggleStrike()}},addInputRules(){return[r.markInputRule({find:h,type:this.type})]},addPasteRules(){return[r.markPasteRule({find:S,type:this.type})]}});function v(){const t=u.useButtonProps(d.name),{icon:e=void 0,tooltip:i=void 0,shortcutKeys:s=void 0,tooltipOptions:c={},action:o=void 0,isActive:l=void 0}=(t==null?void 0:t.componentProps)??{},{dataState:p,disabled:a,update:k}=u.useToggleActive(l),g=()=>{a||o&&(o(),k())};return t?n.jsx(m.ActionButton,{action:g,dataState:p,disabled:a,icon:e,shortcutKeys:s,tooltip:i,tooltipOptions:c}):n.jsx(n.Fragment,{})}const d=f.extend({addOptions(){var t;return{...(t=this.parent)==null?void 0:t.call(this),button:({editor:e,t:i,extension:s})=>({componentProps:{action:()=>e.commands.toggleStrike(),isActive:()=>e.isActive("strike")||!1,disabled:!1,icon:"Strikethrough",shortcutKeys:s.options.shortcutKeys??["shift","mod","S"],tooltip:i("editor.strike.tooltip")}})}}});exports.RichTextStrike=v;exports.Strike=d;
package/lib/Strike.js CHANGED
@@ -1,9 +1,9 @@
1
1
  import { M as c, h as k, j as l, m as g } from "./index-nFjllrEl.js";
2
2
  import { jsx as n, Fragment as h } from "react/jsx-runtime";
3
- import { A as f } from "./toggle-DifEFalS.js";
3
+ import { A as f } from "./toggle-WBgzE8Jm.js";
4
4
  import "react";
5
- import "./index-BY7ivGJJ.js";
6
- import { u as M, a as S } from "./useButtonProps-DEuoHLy_.js";
5
+ import "./index--XZPCi0O.js";
6
+ import { u as M, a as S } from "./useButtonProps-BIOoOg6h.js";
7
7
  var v = /(?:^|\s)(~~(?!\s+~~)((?:[^~]+))~~(?!\s+~~))$/, A = /(?:^|\s)(~~(?!\s+~~)((?:[^~]+))~~(?!\s+~~))/g, y = c.create({
8
8
  name: "strike",
9
9
  addOptions() {