@kopexa/tiptap 17.6.17 → 17.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (428) hide show
  1. package/dist/index.d.mts +691 -24
  2. package/dist/index.d.ts +691 -24
  3. package/dist/index.js +1081 -668
  4. package/dist/index.mjs +7686 -112
  5. package/package.json +57 -52
  6. package/dist/chunk-2SI7MRAE.mjs +0 -64
  7. package/dist/chunk-2U5CQUZH.mjs +0 -91
  8. package/dist/chunk-2UDCL55K.mjs +0 -55
  9. package/dist/chunk-2V6VOAPI.mjs +0 -139
  10. package/dist/chunk-2Z2QVW67.mjs +0 -1
  11. package/dist/chunk-32SUXCAQ.mjs +0 -115
  12. package/dist/chunk-33QD5PYJ.mjs +0 -63
  13. package/dist/chunk-3VRQUYYW.mjs +0 -169
  14. package/dist/chunk-42HKGCOO.mjs +0 -129
  15. package/dist/chunk-4ALV4UA5.mjs +0 -1
  16. package/dist/chunk-4CDZ547I.mjs +0 -185
  17. package/dist/chunk-4HO7BWDC.mjs +0 -89
  18. package/dist/chunk-4JRYQZ4A.mjs +0 -174
  19. package/dist/chunk-552JLRNB.mjs +0 -35
  20. package/dist/chunk-5SMDMQDF.mjs +0 -34
  21. package/dist/chunk-6552DQWB.mjs +0 -416
  22. package/dist/chunk-7FDDRVUE.mjs +0 -143
  23. package/dist/chunk-7VGROP26.mjs +0 -262
  24. package/dist/chunk-7VW67NVL.mjs +0 -80
  25. package/dist/chunk-AAV7ZNBP.mjs +0 -83
  26. package/dist/chunk-ATRHILCH.mjs +0 -1
  27. package/dist/chunk-B7WJOQ3X.mjs +0 -103
  28. package/dist/chunk-BEV5U2DK.mjs +0 -131
  29. package/dist/chunk-BXHPO3T7.mjs +0 -152
  30. package/dist/chunk-BXJYNSWQ.mjs +0 -30
  31. package/dist/chunk-C5RQWJKE.mjs +0 -155
  32. package/dist/chunk-CNVACBGT.mjs +0 -51
  33. package/dist/chunk-DQK6PA4U.mjs +0 -276
  34. package/dist/chunk-DSBJFMHK.mjs +0 -38
  35. package/dist/chunk-DT7ML2P4.mjs +0 -42
  36. package/dist/chunk-DZLGLP7R.mjs +0 -99
  37. package/dist/chunk-EAAQE5ZV.mjs +0 -283
  38. package/dist/chunk-EHY2NAW7.mjs +0 -120
  39. package/dist/chunk-EIIWU5FR.mjs +0 -61
  40. package/dist/chunk-ERPGWXFK.mjs +0 -163
  41. package/dist/chunk-F73FCUD5.mjs +0 -1
  42. package/dist/chunk-FRJX2F4T.mjs +0 -55
  43. package/dist/chunk-GYIYX2JH.mjs +0 -73
  44. package/dist/chunk-H6LC4LDQ.mjs +0 -63
  45. package/dist/chunk-H7MS2UMO.mjs +0 -168
  46. package/dist/chunk-HLLA2HRV.mjs +0 -1
  47. package/dist/chunk-HTJ2RXOG.mjs +0 -32
  48. package/dist/chunk-IFXRPGIJ.mjs +0 -98
  49. package/dist/chunk-IOB3REX6.mjs +0 -173
  50. package/dist/chunk-IQERE7KP.mjs +0 -115
  51. package/dist/chunk-JCV5SEKN.mjs +0 -65
  52. package/dist/chunk-JVSH5T4B.mjs +0 -72
  53. package/dist/chunk-KK4K43WM.mjs +0 -59
  54. package/dist/chunk-KR42JAVB.mjs +0 -60
  55. package/dist/chunk-KYLBKQ2E.mjs +0 -203
  56. package/dist/chunk-L5RDMV3H.mjs +0 -216
  57. package/dist/chunk-LNVWG34E.mjs +0 -165
  58. package/dist/chunk-LVNUU67N.mjs +0 -1
  59. package/dist/chunk-MNTOOEHA.mjs +0 -1
  60. package/dist/chunk-N3JE67CS.mjs +0 -81
  61. package/dist/chunk-N4CT5RNC.mjs +0 -123
  62. package/dist/chunk-OEVR5N7X.mjs +0 -65
  63. package/dist/chunk-P55PLOHR.mjs +0 -34
  64. package/dist/chunk-Q5FK7SFY.mjs +0 -75
  65. package/dist/chunk-Q7DFJ5NI.mjs +0 -153
  66. package/dist/chunk-QIELBKP3.mjs +0 -104
  67. package/dist/chunk-R2GM4A3T.mjs +0 -71
  68. package/dist/chunk-REJEJXOZ.mjs +0 -10
  69. package/dist/chunk-RFWNKE7D.mjs +0 -238
  70. package/dist/chunk-TAM3VMJT.mjs +0 -80
  71. package/dist/chunk-TDFS3DCZ.mjs +0 -79
  72. package/dist/chunk-TLM5ALHZ.mjs +0 -1
  73. package/dist/chunk-TZQQ6C2Q.mjs +0 -101
  74. package/dist/chunk-U5XAL46P.mjs +0 -39
  75. package/dist/chunk-UJ4BNZ63.mjs +0 -178
  76. package/dist/chunk-UVHVCION.mjs +0 -168
  77. package/dist/chunk-V6TAZMQN.mjs +0 -105
  78. package/dist/chunk-VF3G2URZ.mjs +0 -83
  79. package/dist/chunk-VRQ6OSAZ.mjs +0 -76
  80. package/dist/chunk-VTKJPVNM.mjs +0 -148
  81. package/dist/chunk-VX3HSJ76.mjs +0 -73
  82. package/dist/chunk-W2FLOOJ6.mjs +0 -75
  83. package/dist/chunk-XGAABDMW.mjs +0 -159
  84. package/dist/chunk-Y2KSWMG5.mjs +0 -1
  85. package/dist/chunk-YJAHZXLG.mjs +0 -92
  86. package/dist/chunk-Z365KVQY.mjs +0 -34
  87. package/dist/chunk-ZVTJ6XD7.mjs +0 -88
  88. package/dist/chunk-ZZ4OU46C.mjs +0 -131
  89. package/dist/context/editor-context.d.mts +0 -10
  90. package/dist/context/editor-context.d.ts +0 -10
  91. package/dist/context/editor-context.js +0 -34
  92. package/dist/context/editor-context.mjs +0 -9
  93. package/dist/context/editor-file-context.d.mts +0 -70
  94. package/dist/context/editor-file-context.d.ts +0 -70
  95. package/dist/context/editor-file-context.js +0 -96
  96. package/dist/context/editor-file-context.mjs +0 -12
  97. package/dist/extensions/callout/callout-settings.d.mts +0 -13
  98. package/dist/extensions/callout/callout-settings.d.ts +0 -13
  99. package/dist/extensions/callout/callout-settings.js +0 -206
  100. package/dist/extensions/callout/callout-settings.mjs +0 -9
  101. package/dist/extensions/callout/callout-view.d.mts +0 -12
  102. package/dist/extensions/callout/callout-view.d.ts +0 -12
  103. package/dist/extensions/callout/callout-view.js +0 -273
  104. package/dist/extensions/callout/callout-view.mjs +0 -12
  105. package/dist/extensions/callout/index.d.mts +0 -44
  106. package/dist/extensions/callout/index.d.ts +0 -44
  107. package/dist/extensions/callout/index.js +0 -380
  108. package/dist/extensions/callout/index.mjs +0 -13
  109. package/dist/extensions/callout/messages.d.mts +0 -59
  110. package/dist/extensions/callout/messages.d.ts +0 -59
  111. package/dist/extensions/callout/messages.js +0 -88
  112. package/dist/extensions/callout/messages.mjs +0 -7
  113. package/dist/extensions/image/image-view.d.mts +0 -15
  114. package/dist/extensions/image/image-view.d.ts +0 -15
  115. package/dist/extensions/image/image-view.js +0 -255
  116. package/dist/extensions/image/image-view.mjs +0 -12
  117. package/dist/extensions/image/index.d.mts +0 -29
  118. package/dist/extensions/image/index.d.ts +0 -29
  119. package/dist/extensions/image/index.js +0 -282
  120. package/dist/extensions/image/index.mjs +0 -16
  121. package/dist/extensions/image/messages.d.mts +0 -28
  122. package/dist/extensions/image/messages.d.ts +0 -28
  123. package/dist/extensions/image/messages.js +0 -57
  124. package/dist/extensions/image/messages.mjs +0 -7
  125. package/dist/extensions/image-upload/image-upload-view.d.mts +0 -12
  126. package/dist/extensions/image-upload/image-upload-view.d.ts +0 -12
  127. package/dist/extensions/image-upload/image-upload-view.js +0 -338
  128. package/dist/extensions/image-upload/image-upload-view.mjs +0 -12
  129. package/dist/extensions/image-upload/index.d.mts +0 -46
  130. package/dist/extensions/image-upload/index.d.ts +0 -46
  131. package/dist/extensions/image-upload/index.js +0 -414
  132. package/dist/extensions/image-upload/index.mjs +0 -16
  133. package/dist/extensions/image-upload/messages.d.mts +0 -32
  134. package/dist/extensions/image-upload/messages.d.ts +0 -32
  135. package/dist/extensions/image-upload/messages.js +0 -61
  136. package/dist/extensions/image-upload/messages.mjs +0 -7
  137. package/dist/extensions/link/index.d.mts +0 -6
  138. package/dist/extensions/link/index.d.ts +0 -6
  139. package/dist/extensions/link/index.js +0 -94
  140. package/dist/extensions/link/index.mjs +0 -7
  141. package/dist/extensions/math/index.d.mts +0 -38
  142. package/dist/extensions/math/index.d.ts +0 -38
  143. package/dist/extensions/math/index.js +0 -544
  144. package/dist/extensions/math/index.mjs +0 -17
  145. package/dist/extensions/math/inline-math-view.d.mts +0 -12
  146. package/dist/extensions/math/inline-math-view.d.ts +0 -12
  147. package/dist/extensions/math/inline-math-view.js +0 -232
  148. package/dist/extensions/math/inline-math-view.mjs +0 -11
  149. package/dist/extensions/math/inline-math.d.mts +0 -32
  150. package/dist/extensions/math/inline-math.d.ts +0 -32
  151. package/dist/extensions/math/inline-math.js +0 -304
  152. package/dist/extensions/math/inline-math.mjs +0 -12
  153. package/dist/extensions/math/math-block-view.d.mts +0 -11
  154. package/dist/extensions/math/math-block-view.d.ts +0 -11
  155. package/dist/extensions/math/math-block-view.js +0 -248
  156. package/dist/extensions/math/math-block-view.mjs +0 -11
  157. package/dist/extensions/math/messages.d.mts +0 -49
  158. package/dist/extensions/math/messages.d.ts +0 -49
  159. package/dist/extensions/math/messages.js +0 -78
  160. package/dist/extensions/math/messages.mjs +0 -7
  161. package/dist/extensions/selection/index.d.mts +0 -5
  162. package/dist/extensions/selection/index.d.ts +0 -5
  163. package/dist/extensions/selection/index.js +0 -62
  164. package/dist/extensions/selection/index.mjs +0 -7
  165. package/dist/extensions/toc/index.d.mts +0 -53
  166. package/dist/extensions/toc/index.d.ts +0 -53
  167. package/dist/extensions/toc/index.js +0 -501
  168. package/dist/extensions/toc/index.mjs +0 -13
  169. package/dist/extensions/toc/messages.d.mts +0 -74
  170. package/dist/extensions/toc/messages.d.ts +0 -74
  171. package/dist/extensions/toc/messages.js +0 -103
  172. package/dist/extensions/toc/messages.mjs +0 -7
  173. package/dist/extensions/toc/toc-settings.d.mts +0 -13
  174. package/dist/extensions/toc/toc-settings.d.ts +0 -13
  175. package/dist/extensions/toc/toc-settings.js +0 -283
  176. package/dist/extensions/toc/toc-settings.mjs +0 -9
  177. package/dist/extensions/toc/toc-view.d.mts +0 -12
  178. package/dist/extensions/toc/toc-view.d.ts +0 -12
  179. package/dist/extensions/toc/toc-view.js +0 -411
  180. package/dist/extensions/toc/toc-view.mjs +0 -12
  181. package/dist/extensions/trailing-node/index.d.mts +0 -9
  182. package/dist/extensions/trailing-node/index.d.ts +0 -9
  183. package/dist/extensions/trailing-node/index.js +0 -86
  184. package/dist/extensions/trailing-node/index.mjs +0 -7
  185. package/dist/extensions/ui-state/index.d.mts +0 -34
  186. package/dist/extensions/ui-state/index.d.ts +0 -34
  187. package/dist/extensions/ui-state/index.js +0 -84
  188. package/dist/extensions/ui-state/index.mjs +0 -9
  189. package/dist/extensions/variable/extract-variables.d.mts +0 -16
  190. package/dist/extensions/variable/extract-variables.d.ts +0 -16
  191. package/dist/extensions/variable/extract-variables.js +0 -58
  192. package/dist/extensions/variable/extract-variables.mjs +0 -7
  193. package/dist/extensions/variable/index.d.mts +0 -38
  194. package/dist/extensions/variable/index.d.ts +0 -38
  195. package/dist/extensions/variable/index.js +0 -190
  196. package/dist/extensions/variable/index.mjs +0 -11
  197. package/dist/extensions/variable/messages.d.mts +0 -69
  198. package/dist/extensions/variable/messages.d.ts +0 -69
  199. package/dist/extensions/variable/messages.js +0 -98
  200. package/dist/extensions/variable/messages.mjs +0 -7
  201. package/dist/extensions/variable/variable-context.d.mts +0 -56
  202. package/dist/extensions/variable/variable-context.d.ts +0 -56
  203. package/dist/extensions/variable/variable-context.js +0 -70
  204. package/dist/extensions/variable/variable-context.mjs +0 -12
  205. package/dist/extensions/variable/variable-filler-dialog.d.mts +0 -43
  206. package/dist/extensions/variable/variable-filler-dialog.d.ts +0 -43
  207. package/dist/extensions/variable/variable-filler-dialog.js +0 -207
  208. package/dist/extensions/variable/variable-filler-dialog.mjs +0 -9
  209. package/dist/extensions/variable/variable-suggestion.d.mts +0 -31
  210. package/dist/extensions/variable/variable-suggestion.d.ts +0 -31
  211. package/dist/extensions/variable/variable-suggestion.js +0 -615
  212. package/dist/extensions/variable/variable-suggestion.mjs +0 -14
  213. package/dist/extensions/variable/variable-view.d.mts +0 -13
  214. package/dist/extensions/variable/variable-view.d.ts +0 -13
  215. package/dist/extensions/variable/variable-view.js +0 -110
  216. package/dist/extensions/variable/variable-view.mjs +0 -11
  217. package/dist/hooks/use-create-editor.d.mts +0 -46
  218. package/dist/hooks/use-create-editor.d.ts +0 -46
  219. package/dist/hooks/use-create-editor.js +0 -2726
  220. package/dist/hooks/use-create-editor.mjs +0 -37
  221. package/dist/hooks/use-cursor-visibility.d.mts +0 -37
  222. package/dist/hooks/use-cursor-visibility.d.ts +0 -37
  223. package/dist/hooks/use-cursor-visibility.js +0 -140
  224. package/dist/hooks/use-cursor-visibility.mjs +0 -8
  225. package/dist/hooks/use-floating-element.d.mts +0 -43
  226. package/dist/hooks/use-floating-element.d.ts +0 -43
  227. package/dist/hooks/use-floating-element.js +0 -88
  228. package/dist/hooks/use-floating-element.mjs +0 -8
  229. package/dist/hooks/use-floating-toolbar-visibility.d.mts +0 -32
  230. package/dist/hooks/use-floating-toolbar-visibility.d.ts +0 -32
  231. package/dist/hooks/use-floating-toolbar-visibility.js +0 -115
  232. package/dist/hooks/use-floating-toolbar-visibility.mjs +0 -13
  233. package/dist/hooks/use-menu-navigation.d.mts +0 -55
  234. package/dist/hooks/use-menu-navigation.d.ts +0 -55
  235. package/dist/hooks/use-menu-navigation.js +0 -163
  236. package/dist/hooks/use-menu-navigation.mjs +0 -8
  237. package/dist/hooks/use-tiptap-editor.d.mts +0 -20
  238. package/dist/hooks/use-tiptap-editor.d.ts +0 -20
  239. package/dist/hooks/use-tiptap-editor.js +0 -58
  240. package/dist/hooks/use-tiptap-editor.mjs +0 -8
  241. package/dist/hooks/use-ui-editor-state.d.mts +0 -7
  242. package/dist/hooks/use-ui-editor-state.d.ts +0 -7
  243. package/dist/hooks/use-ui-editor-state.js +0 -107
  244. package/dist/hooks/use-ui-editor-state.mjs +0 -11
  245. package/dist/hooks/use-window-size.d.mts +0 -12
  246. package/dist/hooks/use-window-size.d.ts +0 -12
  247. package/dist/hooks/use-window-size.js +0 -75
  248. package/dist/hooks/use-window-size.mjs +0 -7
  249. package/dist/presets/basic/editor-header.d.mts +0 -23
  250. package/dist/presets/basic/editor-header.d.ts +0 -23
  251. package/dist/presets/basic/editor-header.js +0 -2750
  252. package/dist/presets/basic/editor-header.mjs +0 -43
  253. package/dist/presets/basic/index.d.mts +0 -38
  254. package/dist/presets/basic/index.d.ts +0 -38
  255. package/dist/presets/basic/index.js +0 -6891
  256. package/dist/presets/basic/index.mjs +0 -85
  257. package/dist/ui/blockquote-button/blockquote-button.d.mts +0 -20
  258. package/dist/ui/blockquote-button/blockquote-button.d.ts +0 -20
  259. package/dist/ui/blockquote-button/blockquote-button.js +0 -247
  260. package/dist/ui/blockquote-button/blockquote-button.mjs +0 -9
  261. package/dist/ui/blockquote-button/index.d.mts +0 -6
  262. package/dist/ui/blockquote-button/index.d.ts +0 -6
  263. package/dist/ui/blockquote-button/index.js +0 -259
  264. package/dist/ui/blockquote-button/index.mjs +0 -21
  265. package/dist/ui/blockquote-button/use-blockquote.d.mts +0 -85
  266. package/dist/ui/blockquote-button/use-blockquote.d.ts +0 -85
  267. package/dist/ui/blockquote-button/use-blockquote.js +0 -192
  268. package/dist/ui/blockquote-button/use-blockquote.mjs +0 -17
  269. package/dist/ui/bubble-menu/index.d.mts +0 -13
  270. package/dist/ui/bubble-menu/index.d.ts +0 -13
  271. package/dist/ui/bubble-menu/index.js +0 -673
  272. package/dist/ui/bubble-menu/index.mjs +0 -16
  273. package/dist/ui/codeblock-button/code-block-button.d.mts +0 -20
  274. package/dist/ui/codeblock-button/code-block-button.d.ts +0 -20
  275. package/dist/ui/codeblock-button/code-block-button.js +0 -237
  276. package/dist/ui/codeblock-button/code-block-button.mjs +0 -9
  277. package/dist/ui/codeblock-button/index.d.mts +0 -6
  278. package/dist/ui/codeblock-button/index.d.ts +0 -6
  279. package/dist/ui/codeblock-button/index.js +0 -249
  280. package/dist/ui/codeblock-button/index.mjs +0 -21
  281. package/dist/ui/codeblock-button/use-code-block.d.mts +0 -92
  282. package/dist/ui/codeblock-button/use-code-block.d.ts +0 -92
  283. package/dist/ui/codeblock-button/use-code-block.js +0 -192
  284. package/dist/ui/codeblock-button/use-code-block.mjs +0 -17
  285. package/dist/ui/color-highlight-button/color-highlight-button.d.mts +0 -25
  286. package/dist/ui/color-highlight-button/color-highlight-button.d.ts +0 -25
  287. package/dist/ui/color-highlight-button/color-highlight-button.js +0 -266
  288. package/dist/ui/color-highlight-button/color-highlight-button.mjs +0 -9
  289. package/dist/ui/color-highlight-button/index.d.mts +0 -6
  290. package/dist/ui/color-highlight-button/index.d.ts +0 -6
  291. package/dist/ui/color-highlight-button/index.js +0 -342
  292. package/dist/ui/color-highlight-button/index.mjs +0 -27
  293. package/dist/ui/color-highlight-button/use-color-highlight.d.mts +0 -64
  294. package/dist/ui/color-highlight-button/use-color-highlight.d.ts +0 -64
  295. package/dist/ui/color-highlight-button/use-color-highlight.js +0 -247
  296. package/dist/ui/color-highlight-button/use-color-highlight.mjs +0 -23
  297. package/dist/ui/color-highlight-popover/color-highlight-popover.d.mts +0 -29
  298. package/dist/ui/color-highlight-popover/color-highlight-popover.d.ts +0 -29
  299. package/dist/ui/color-highlight-popover/color-highlight-popover.js +0 -590
  300. package/dist/ui/color-highlight-popover/color-highlight-popover.mjs +0 -17
  301. package/dist/ui/color-highlight-popover/index.d.mts +0 -6
  302. package/dist/ui/color-highlight-popover/index.d.ts +0 -6
  303. package/dist/ui/color-highlight-popover/index.js +0 -591
  304. package/dist/ui/color-highlight-popover/index.mjs +0 -17
  305. package/dist/ui/copy-anchor-link-button/use-scroll-to-hash.d.mts +0 -30
  306. package/dist/ui/copy-anchor-link-button/use-scroll-to-hash.d.ts +0 -30
  307. package/dist/ui/copy-anchor-link-button/use-scroll-to-hash.js +0 -171
  308. package/dist/ui/copy-anchor-link-button/use-scroll-to-hash.mjs +0 -10
  309. package/dist/ui/heading-button/index.d.mts +0 -45
  310. package/dist/ui/heading-button/index.d.ts +0 -45
  311. package/dist/ui/heading-button/index.js +0 -222
  312. package/dist/ui/heading-button/index.mjs +0 -16
  313. package/dist/ui/heading-button/utils.d.mts +0 -17
  314. package/dist/ui/heading-button/utils.d.ts +0 -17
  315. package/dist/ui/heading-button/utils.js +0 -92
  316. package/dist/ui/heading-button/utils.mjs +0 -19
  317. package/dist/ui/heading-dropdown-menu/index.d.mts +0 -14
  318. package/dist/ui/heading-dropdown-menu/index.d.ts +0 -14
  319. package/dist/ui/heading-dropdown-menu/index.js +0 -308
  320. package/dist/ui/heading-dropdown-menu/index.mjs +0 -10
  321. package/dist/ui/link-bubble/index.d.mts +0 -13
  322. package/dist/ui/link-bubble/index.d.ts +0 -13
  323. package/dist/ui/link-bubble/index.js +0 -183
  324. package/dist/ui/link-bubble/index.mjs +0 -10
  325. package/dist/ui/link-popover/index.d.mts +0 -7
  326. package/dist/ui/link-popover/index.d.ts +0 -7
  327. package/dist/ui/link-popover/index.js +0 -512
  328. package/dist/ui/link-popover/index.mjs +0 -30
  329. package/dist/ui/link-popover/link-popover.d.mts +0 -85
  330. package/dist/ui/link-popover/link-popover.d.ts +0 -85
  331. package/dist/ui/link-popover/link-popover.js +0 -498
  332. package/dist/ui/link-popover/link-popover.mjs +0 -16
  333. package/dist/ui/link-popover/use-link-popover.d.mts +0 -123
  334. package/dist/ui/link-popover/use-link-popover.d.ts +0 -123
  335. package/dist/ui/link-popover/use-link-popover.js +0 -259
  336. package/dist/ui/link-popover/use-link-popover.mjs +0 -20
  337. package/dist/ui/list-button/index.d.mts +0 -50
  338. package/dist/ui/list-button/index.d.ts +0 -50
  339. package/dist/ui/list-button/index.js +0 -232
  340. package/dist/ui/list-button/index.mjs +0 -24
  341. package/dist/ui/list-dropdown-menu/index.d.mts +0 -45
  342. package/dist/ui/list-dropdown-menu/index.d.ts +0 -45
  343. package/dist/ui/list-dropdown-menu/index.js +0 -361
  344. package/dist/ui/list-dropdown-menu/index.mjs +0 -21
  345. package/dist/ui/mark-button/index.d.mts +0 -59
  346. package/dist/ui/mark-button/index.d.ts +0 -59
  347. package/dist/ui/mark-button/index.js +0 -217
  348. package/dist/ui/mark-button/index.mjs +0 -26
  349. package/dist/ui/reset-all-formatting-button/index.d.mts +0 -7
  350. package/dist/ui/reset-all-formatting-button/index.d.ts +0 -7
  351. package/dist/ui/reset-all-formatting-button/index.js +0 -286
  352. package/dist/ui/reset-all-formatting-button/index.mjs +0 -26
  353. package/dist/ui/reset-all-formatting-button/reset-all-formatting-button.d.mts +0 -30
  354. package/dist/ui/reset-all-formatting-button/reset-all-formatting-button.d.ts +0 -30
  355. package/dist/ui/reset-all-formatting-button/reset-all-formatting-button.js +0 -271
  356. package/dist/ui/reset-all-formatting-button/reset-all-formatting-button.mjs +0 -12
  357. package/dist/ui/reset-all-formatting-button/use-reset-all-formatting.d.mts +0 -103
  358. package/dist/ui/reset-all-formatting-button/use-reset-all-formatting.d.ts +0 -103
  359. package/dist/ui/reset-all-formatting-button/use-reset-all-formatting.js +0 -211
  360. package/dist/ui/reset-all-formatting-button/use-reset-all-formatting.mjs +0 -21
  361. package/dist/ui/slash-dropdown-menu/index.d.mts +0 -10
  362. package/dist/ui/slash-dropdown-menu/index.d.ts +0 -10
  363. package/dist/ui/slash-dropdown-menu/index.js +0 -1056
  364. package/dist/ui/slash-dropdown-menu/index.mjs +0 -19
  365. package/dist/ui/slash-dropdown-menu/slash-dropdown-menu.d.mts +0 -16
  366. package/dist/ui/slash-dropdown-menu/slash-dropdown-menu.d.ts +0 -16
  367. package/dist/ui/slash-dropdown-menu/slash-dropdown-menu.js +0 -1053
  368. package/dist/ui/slash-dropdown-menu/slash-dropdown-menu.mjs +0 -16
  369. package/dist/ui/slash-dropdown-menu/use-slash-dropdown-menu.d.mts +0 -162
  370. package/dist/ui/slash-dropdown-menu/use-slash-dropdown-menu.d.ts +0 -162
  371. package/dist/ui/slash-dropdown-menu/use-slash-dropdown-menu.js +0 -457
  372. package/dist/ui/slash-dropdown-menu/use-slash-dropdown-menu.mjs +0 -10
  373. package/dist/ui/suggestion-menu/index.d.mts +0 -10
  374. package/dist/ui/suggestion-menu/index.d.ts +0 -10
  375. package/dist/ui/suggestion-menu/index.js +0 -489
  376. package/dist/ui/suggestion-menu/index.mjs +0 -17
  377. package/dist/ui/suggestion-menu/suggestion-menu-types.d.mts +0 -89
  378. package/dist/ui/suggestion-menu/suggestion-menu-types.d.ts +0 -89
  379. package/dist/ui/suggestion-menu/suggestion-menu-types.js +0 -19
  380. package/dist/ui/suggestion-menu/suggestion-menu-types.mjs +0 -1
  381. package/dist/ui/suggestion-menu/suggestion-menu-utils.d.mts +0 -27
  382. package/dist/ui/suggestion-menu/suggestion-menu-utils.d.ts +0 -27
  383. package/dist/ui/suggestion-menu/suggestion-menu-utils.js +0 -75
  384. package/dist/ui/suggestion-menu/suggestion-menu-utils.mjs +0 -9
  385. package/dist/ui/suggestion-menu/suggestion-menu.d.mts +0 -15
  386. package/dist/ui/suggestion-menu/suggestion-menu.d.ts +0 -15
  387. package/dist/ui/suggestion-menu/suggestion-menu.js +0 -453
  388. package/dist/ui/suggestion-menu/suggestion-menu.mjs +0 -12
  389. package/dist/ui/table-button/index.d.mts +0 -15
  390. package/dist/ui/table-button/index.d.ts +0 -15
  391. package/dist/ui/table-button/index.js +0 -202
  392. package/dist/ui/table-button/index.mjs +0 -9
  393. package/dist/ui/table-button/use-table.d.mts +0 -51
  394. package/dist/ui/table-button/use-table.d.ts +0 -51
  395. package/dist/ui/table-button/use-table.js +0 -146
  396. package/dist/ui/table-button/use-table.mjs +0 -14
  397. package/dist/ui/text-align-button/index.d.mts +0 -6
  398. package/dist/ui/text-align-button/index.d.ts +0 -6
  399. package/dist/ui/text-align-button/index.js +0 -235
  400. package/dist/ui/text-align-button/index.mjs +0 -29
  401. package/dist/ui/text-align-button/text-align-button.d.mts +0 -20
  402. package/dist/ui/text-align-button/text-align-button.d.ts +0 -20
  403. package/dist/ui/text-align-button/text-align-button.js +0 -215
  404. package/dist/ui/text-align-button/text-align-button.mjs +0 -9
  405. package/dist/ui/text-align-button/use-text-align.d.mts +0 -106
  406. package/dist/ui/text-align-button/use-text-align.d.ts +0 -106
  407. package/dist/ui/text-align-button/use-text-align.js +0 -169
  408. package/dist/ui/text-align-button/use-text-align.mjs +0 -24
  409. package/dist/ui/undo-redo-button/index.d.mts +0 -6
  410. package/dist/ui/undo-redo-button/index.d.ts +0 -6
  411. package/dist/ui/undo-redo-button/index.js +0 -202
  412. package/dist/ui/undo-redo-button/index.mjs +0 -25
  413. package/dist/ui/undo-redo-button/undo-redo-button.d.mts +0 -23
  414. package/dist/ui/undo-redo-button/undo-redo-button.d.ts +0 -23
  415. package/dist/ui/undo-redo-button/undo-redo-button.js +0 -187
  416. package/dist/ui/undo-redo-button/undo-redo-button.mjs +0 -10
  417. package/dist/ui/undo-redo-button/use-undo-redo.d.mts +0 -95
  418. package/dist/ui/undo-redo-button/use-undo-redo.d.ts +0 -95
  419. package/dist/ui/undo-redo-button/use-undo-redo.js +0 -146
  420. package/dist/ui/undo-redo-button/use-undo-redo.mjs +0 -21
  421. package/dist/utils/index.d.mts +0 -38
  422. package/dist/utils/index.d.ts +0 -38
  423. package/dist/utils/index.js +0 -128
  424. package/dist/utils/index.mjs +0 -15
  425. package/dist/utils/safe-parse.d.mts +0 -14
  426. package/dist/utils/safe-parse.d.ts +0 -14
  427. package/dist/utils/safe-parse.js +0 -203
  428. package/dist/utils/safe-parse.mjs +0 -8
@@ -1,21 +0,0 @@
1
- "use client";
2
- import {
3
- ListDropdownMenu,
4
- canToggleAnyList,
5
- getFilteredListOptions,
6
- isAnyListActive,
7
- shouldShowListDropdown,
8
- useActiveListIcon,
9
- useListDropdownState
10
- } from "../../chunk-Q7DFJ5NI.mjs";
11
- import "../../chunk-IOB3REX6.mjs";
12
- import "../../chunk-P55PLOHR.mjs";
13
- export {
14
- ListDropdownMenu,
15
- canToggleAnyList,
16
- getFilteredListOptions,
17
- isAnyListActive,
18
- shouldShowListDropdown,
19
- useActiveListIcon,
20
- useListDropdownState
21
- };
@@ -1,59 +0,0 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import * as _kopexa_icons from '@kopexa/icons';
3
- import { ButtonProps } from '@kopexa/button';
4
- import { Editor } from '@tiptap/react';
5
-
6
- type Mark = "bold" | "italic" | "strike" | "code" | "underline" | "superscript" | "subscript";
7
- interface MarkButtonProps extends Omit<ButtonProps, "type"> {
8
- /**
9
- * The type of mark to toggle
10
- */
11
- type: Mark;
12
- /**
13
- * Optional editor instance. If not provided, will use editor from context
14
- */
15
- editor?: Editor | null;
16
- /**
17
- * Display text for the button (optional)
18
- */
19
- text?: string;
20
- /**
21
- * Whether this button should be hidden when the mark is not available
22
- */
23
- hideWhenUnavailable?: boolean;
24
- }
25
- declare const markIcons: {
26
- bold: ({ size, ...props }: _kopexa_icons.IconSvgProps) => react_jsx_runtime.JSX.Element;
27
- italic: ({ size, ...props }: _kopexa_icons.IconSvgProps) => react_jsx_runtime.JSX.Element;
28
- underline: ({ size, ...props }: _kopexa_icons.IconSvgProps) => react_jsx_runtime.JSX.Element;
29
- strike: ({ size, ...props }: _kopexa_icons.IconSvgProps) => react_jsx_runtime.JSX.Element;
30
- code: ({ size, ...props }: _kopexa_icons.IconSvgProps) => react_jsx_runtime.JSX.Element;
31
- superscript: ({ size, ...props }: _kopexa_icons.IconSvgProps) => react_jsx_runtime.JSX.Element;
32
- subscript: ({ size, ...props }: _kopexa_icons.IconSvgProps) => react_jsx_runtime.JSX.Element;
33
- };
34
- declare const markShortcutKeys: Partial<Record<Mark, string>>;
35
- /**
36
- * Checks if a mark can be toggled in the current editor state
37
- */
38
- declare function canToggleMark(editor: Editor | null, type: Mark): boolean;
39
- declare function isMarkActive(editor: Editor | null, type: Mark): boolean;
40
- declare function toggleMark(editor: Editor | null, type: Mark): void;
41
- declare function isMarkButtonDisabled(editor: Editor | null, type: Mark, userDisabled?: boolean): boolean;
42
- declare function shouldShowMarkButton(params: {
43
- editor: Editor | null;
44
- type: Mark;
45
- hideWhenUnavailable: boolean;
46
- markInSchema: boolean;
47
- }): boolean;
48
- declare function getFormattedMarkName(type: Mark): string;
49
- declare function useMarkState(editor: Editor | null, type: Mark, disabled?: boolean): {
50
- markInSchema: boolean;
51
- isDisabled: boolean;
52
- isActive: boolean;
53
- Icon: (({ size, ...props }: _kopexa_icons.IconSvgProps) => react_jsx_runtime.JSX.Element) | (({ size, ...props }: _kopexa_icons.IconSvgProps) => react_jsx_runtime.JSX.Element) | (({ size, ...props }: _kopexa_icons.IconSvgProps) => react_jsx_runtime.JSX.Element) | (({ size, ...props }: _kopexa_icons.IconSvgProps) => react_jsx_runtime.JSX.Element) | (({ size, ...props }: _kopexa_icons.IconSvgProps) => react_jsx_runtime.JSX.Element) | (({ size, ...props }: _kopexa_icons.IconSvgProps) => react_jsx_runtime.JSX.Element) | (({ size, ...props }: _kopexa_icons.IconSvgProps) => react_jsx_runtime.JSX.Element);
54
- shortcutKey: string | undefined;
55
- formattedName: string;
56
- };
57
- declare const MarkButton: ({ editor: providedEditor, type, text, hideWhenUnavailable, className, disabled, onClick, children, ...buttonProps }: MarkButtonProps) => react_jsx_runtime.JSX.Element | null;
58
-
59
- export { type Mark, MarkButton, type MarkButtonProps, canToggleMark, getFormattedMarkName, isMarkActive, isMarkButtonDisabled, markIcons, markShortcutKeys, shouldShowMarkButton, toggleMark, useMarkState };
@@ -1,59 +0,0 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import * as _kopexa_icons from '@kopexa/icons';
3
- import { ButtonProps } from '@kopexa/button';
4
- import { Editor } from '@tiptap/react';
5
-
6
- type Mark = "bold" | "italic" | "strike" | "code" | "underline" | "superscript" | "subscript";
7
- interface MarkButtonProps extends Omit<ButtonProps, "type"> {
8
- /**
9
- * The type of mark to toggle
10
- */
11
- type: Mark;
12
- /**
13
- * Optional editor instance. If not provided, will use editor from context
14
- */
15
- editor?: Editor | null;
16
- /**
17
- * Display text for the button (optional)
18
- */
19
- text?: string;
20
- /**
21
- * Whether this button should be hidden when the mark is not available
22
- */
23
- hideWhenUnavailable?: boolean;
24
- }
25
- declare const markIcons: {
26
- bold: ({ size, ...props }: _kopexa_icons.IconSvgProps) => react_jsx_runtime.JSX.Element;
27
- italic: ({ size, ...props }: _kopexa_icons.IconSvgProps) => react_jsx_runtime.JSX.Element;
28
- underline: ({ size, ...props }: _kopexa_icons.IconSvgProps) => react_jsx_runtime.JSX.Element;
29
- strike: ({ size, ...props }: _kopexa_icons.IconSvgProps) => react_jsx_runtime.JSX.Element;
30
- code: ({ size, ...props }: _kopexa_icons.IconSvgProps) => react_jsx_runtime.JSX.Element;
31
- superscript: ({ size, ...props }: _kopexa_icons.IconSvgProps) => react_jsx_runtime.JSX.Element;
32
- subscript: ({ size, ...props }: _kopexa_icons.IconSvgProps) => react_jsx_runtime.JSX.Element;
33
- };
34
- declare const markShortcutKeys: Partial<Record<Mark, string>>;
35
- /**
36
- * Checks if a mark can be toggled in the current editor state
37
- */
38
- declare function canToggleMark(editor: Editor | null, type: Mark): boolean;
39
- declare function isMarkActive(editor: Editor | null, type: Mark): boolean;
40
- declare function toggleMark(editor: Editor | null, type: Mark): void;
41
- declare function isMarkButtonDisabled(editor: Editor | null, type: Mark, userDisabled?: boolean): boolean;
42
- declare function shouldShowMarkButton(params: {
43
- editor: Editor | null;
44
- type: Mark;
45
- hideWhenUnavailable: boolean;
46
- markInSchema: boolean;
47
- }): boolean;
48
- declare function getFormattedMarkName(type: Mark): string;
49
- declare function useMarkState(editor: Editor | null, type: Mark, disabled?: boolean): {
50
- markInSchema: boolean;
51
- isDisabled: boolean;
52
- isActive: boolean;
53
- Icon: (({ size, ...props }: _kopexa_icons.IconSvgProps) => react_jsx_runtime.JSX.Element) | (({ size, ...props }: _kopexa_icons.IconSvgProps) => react_jsx_runtime.JSX.Element) | (({ size, ...props }: _kopexa_icons.IconSvgProps) => react_jsx_runtime.JSX.Element) | (({ size, ...props }: _kopexa_icons.IconSvgProps) => react_jsx_runtime.JSX.Element) | (({ size, ...props }: _kopexa_icons.IconSvgProps) => react_jsx_runtime.JSX.Element) | (({ size, ...props }: _kopexa_icons.IconSvgProps) => react_jsx_runtime.JSX.Element) | (({ size, ...props }: _kopexa_icons.IconSvgProps) => react_jsx_runtime.JSX.Element);
54
- shortcutKey: string | undefined;
55
- formattedName: string;
56
- };
57
- declare const MarkButton: ({ editor: providedEditor, type, text, hideWhenUnavailable, className, disabled, onClick, children, ...buttonProps }: MarkButtonProps) => react_jsx_runtime.JSX.Element | null;
58
-
59
- export { type Mark, MarkButton, type MarkButtonProps, canToggleMark, getFormattedMarkName, isMarkActive, isMarkButtonDisabled, markIcons, markShortcutKeys, shouldShowMarkButton, toggleMark, useMarkState };
@@ -1,217 +0,0 @@
1
- "use client";
2
- "use strict";
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __export = (target, all) => {
8
- for (var name in all)
9
- __defProp(target, name, { get: all[name], enumerable: true });
10
- };
11
- var __copyProps = (to, from, except, desc) => {
12
- if (from && typeof from === "object" || typeof from === "function") {
13
- for (let key of __getOwnPropNames(from))
14
- if (!__hasOwnProp.call(to, key) && key !== except)
15
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
- }
17
- return to;
18
- };
19
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
-
21
- // src/ui/mark-button/index.tsx
22
- var mark_button_exports = {};
23
- __export(mark_button_exports, {
24
- MarkButton: () => MarkButton,
25
- canToggleMark: () => canToggleMark,
26
- getFormattedMarkName: () => getFormattedMarkName,
27
- isMarkActive: () => isMarkActive,
28
- isMarkButtonDisabled: () => isMarkButtonDisabled,
29
- markIcons: () => markIcons,
30
- markShortcutKeys: () => markShortcutKeys,
31
- shouldShowMarkButton: () => shouldShowMarkButton,
32
- toggleMark: () => toggleMark,
33
- useMarkState: () => useMarkState
34
- });
35
- module.exports = __toCommonJS(mark_button_exports);
36
- var import_editor_utils = require("@kopexa/editor-utils");
37
- var import_icons = require("@kopexa/icons");
38
- var import_toolbar = require("@kopexa/toolbar");
39
- var import_react3 = require("@tiptap/react");
40
- var import_react4 = require("react");
41
-
42
- // src/hooks/use-tiptap-editor.ts
43
- var import_react = require("@tiptap/react");
44
- var import_react2 = require("react");
45
- function useTiptapEditor(providedEditor) {
46
- const { editor: coreEditor } = (0, import_react.useCurrentEditor)();
47
- const mainEditor = (0, import_react2.useMemo)(
48
- () => providedEditor || coreEditor,
49
- [providedEditor, coreEditor]
50
- );
51
- const editorState = (0, import_react.useEditorState)({
52
- editor: mainEditor,
53
- selector(context) {
54
- if (!context.editor) {
55
- return {
56
- editor: null,
57
- editorState: void 0,
58
- canCommand: void 0
59
- };
60
- }
61
- return {
62
- editor: context.editor,
63
- editorState: context.editor.state,
64
- canCommand: context.editor.can
65
- };
66
- }
67
- });
68
- return editorState || { editor: null };
69
- }
70
-
71
- // src/ui/mark-button/index.tsx
72
- var import_jsx_runtime = require("react/jsx-runtime");
73
- var markIcons = {
74
- bold: import_icons.BoldIcon,
75
- italic: import_icons.ItalicIcon,
76
- underline: import_icons.UnderlineIcon,
77
- strike: import_icons.StrikeIcon,
78
- code: import_icons.CodeIcon,
79
- superscript: import_icons.SuperscriptIcon,
80
- subscript: import_icons.SubscriptIcon
81
- };
82
- var markShortcutKeys = {
83
- bold: "mod+b",
84
- italic: "mod+i",
85
- underline: "mod+u",
86
- strike: "mod+shift+s",
87
- code: "mod+e",
88
- superscript: "mod+.",
89
- subscript: "mod+,"
90
- };
91
- function canToggleMark(editor, type) {
92
- if (!editor || !editor.isEditable) return false;
93
- if (!(0, import_editor_utils.isMarkInSchema)(type, editor) || (0, import_editor_utils.isNodeTypeSelected)(editor, ["image"]))
94
- return false;
95
- return editor.can().toggleMark(type);
96
- }
97
- function isMarkActive(editor, type) {
98
- if (!editor) return false;
99
- return editor.isActive(type);
100
- }
101
- function toggleMark(editor, type) {
102
- if (!editor) return;
103
- editor.chain().focus().toggleMark(type).run();
104
- }
105
- function isMarkButtonDisabled(editor, type, userDisabled = false) {
106
- if (!editor) return true;
107
- if (userDisabled) return true;
108
- if (editor.isActive("codeBlock")) return true;
109
- if (!canToggleMark(editor, type)) return true;
110
- return false;
111
- }
112
- function shouldShowMarkButton(params) {
113
- const { editor, type, hideWhenUnavailable, markInSchema } = params;
114
- if (!markInSchema || !editor) {
115
- return false;
116
- }
117
- if (hideWhenUnavailable) {
118
- if ((0, import_react3.isNodeSelection)(editor.state.selection) || !canToggleMark(editor, type)) {
119
- return false;
120
- }
121
- }
122
- return true;
123
- }
124
- function getFormattedMarkName(type) {
125
- return type.charAt(0).toUpperCase() + type.slice(1);
126
- }
127
- function useMarkState(editor, type, disabled = false) {
128
- const markInSchema = (0, import_editor_utils.isMarkInSchema)(type, editor);
129
- const isDisabled = isMarkButtonDisabled(editor, type, disabled);
130
- const isActive = isMarkActive(editor, type);
131
- const Icon = markIcons[type];
132
- const shortcutKey = markShortcutKeys[type];
133
- const formattedName = getFormattedMarkName(type);
134
- return {
135
- markInSchema,
136
- isDisabled,
137
- isActive,
138
- Icon,
139
- shortcutKey,
140
- formattedName
141
- };
142
- }
143
- var MarkButton = ({
144
- editor: providedEditor,
145
- type,
146
- text,
147
- hideWhenUnavailable = false,
148
- className = "",
149
- disabled,
150
- onClick,
151
- children,
152
- ...buttonProps
153
- }) => {
154
- const { editor } = useTiptapEditor(providedEditor);
155
- const {
156
- markInSchema,
157
- isDisabled,
158
- isActive,
159
- Icon,
160
- shortcutKey,
161
- formattedName
162
- } = useMarkState(editor, type, disabled);
163
- const handleClick = (0, import_react4.useCallback)(
164
- (e) => {
165
- onClick == null ? void 0 : onClick(e);
166
- if (!e.defaultPrevented && !isDisabled && editor) {
167
- toggleMark(editor, type);
168
- }
169
- },
170
- [onClick, isDisabled, editor, type]
171
- );
172
- const show = (0, import_react4.useMemo)(() => {
173
- return shouldShowMarkButton({
174
- editor,
175
- type,
176
- hideWhenUnavailable,
177
- markInSchema
178
- });
179
- }, [editor, type, hideWhenUnavailable, markInSchema]);
180
- if (!show || !editor || !editor.isEditable) {
181
- return null;
182
- }
183
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
184
- import_toolbar.ToolbarButton,
185
- {
186
- type: "button",
187
- className: className.trim(),
188
- disabled: isDisabled,
189
- variant: "ghost",
190
- color: "default",
191
- "data-active-state": isActive ? "on" : "off",
192
- "data-disabled": isDisabled,
193
- tabIndex: -1,
194
- "aria-label": type,
195
- "aria-pressed": isActive,
196
- title: formattedName,
197
- shortcutKeys: shortcutKey,
198
- onClick: handleClick,
199
- isIconOnly: true,
200
- ...buttonProps,
201
- children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Icon, {})
202
- }
203
- );
204
- };
205
- // Annotate the CommonJS export names for ESM import in node:
206
- 0 && (module.exports = {
207
- MarkButton,
208
- canToggleMark,
209
- getFormattedMarkName,
210
- isMarkActive,
211
- isMarkButtonDisabled,
212
- markIcons,
213
- markShortcutKeys,
214
- shouldShowMarkButton,
215
- toggleMark,
216
- useMarkState
217
- });
@@ -1,26 +0,0 @@
1
- "use client";
2
- import {
3
- MarkButton,
4
- canToggleMark,
5
- getFormattedMarkName,
6
- isMarkActive,
7
- isMarkButtonDisabled,
8
- markIcons,
9
- markShortcutKeys,
10
- shouldShowMarkButton,
11
- toggleMark,
12
- useMarkState
13
- } from "../../chunk-LNVWG34E.mjs";
14
- import "../../chunk-P55PLOHR.mjs";
15
- export {
16
- MarkButton,
17
- canToggleMark,
18
- getFormattedMarkName,
19
- isMarkActive,
20
- isMarkButtonDisabled,
21
- markIcons,
22
- markShortcutKeys,
23
- shouldShowMarkButton,
24
- toggleMark,
25
- useMarkState
26
- };
@@ -1,7 +0,0 @@
1
- export { ResetAllFormattingButton, ResetAllFormattingButtonProps, ResetAllFormattingShortcutBadge } from './reset-all-formatting-button.mjs';
2
- export { RESET_ALL_FORMATTING_SHORTCUT_KEY, UseResetAllFormattingConfig, canResetFormatting, canResetMarks, removeAllMarksExcept, resetFormatting, shouldShowButton, useResetAllFormatting } from './use-reset-all-formatting.mjs';
3
- import 'react/jsx-runtime';
4
- import '@kopexa/button';
5
- import '@kopexa/icons';
6
- import '@tiptap/pm/state';
7
- import '@tiptap/react';
@@ -1,7 +0,0 @@
1
- export { ResetAllFormattingButton, ResetAllFormattingButtonProps, ResetAllFormattingShortcutBadge } from './reset-all-formatting-button.js';
2
- export { RESET_ALL_FORMATTING_SHORTCUT_KEY, UseResetAllFormattingConfig, canResetFormatting, canResetMarks, removeAllMarksExcept, resetFormatting, shouldShowButton, useResetAllFormatting } from './use-reset-all-formatting.js';
3
- import 'react/jsx-runtime';
4
- import '@kopexa/button';
5
- import '@kopexa/icons';
6
- import '@tiptap/pm/state';
7
- import '@tiptap/react';
@@ -1,286 +0,0 @@
1
- "use client";
2
- "use strict";
3
- var __create = Object.create;
4
- var __defProp = Object.defineProperty;
5
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
- var __getOwnPropNames = Object.getOwnPropertyNames;
7
- var __getProtoOf = Object.getPrototypeOf;
8
- var __hasOwnProp = Object.prototype.hasOwnProperty;
9
- var __export = (target, all) => {
10
- for (var name in all)
11
- __defProp(target, name, { get: all[name], enumerable: true });
12
- };
13
- var __copyProps = (to, from, except, desc) => {
14
- if (from && typeof from === "object" || typeof from === "function") {
15
- for (let key of __getOwnPropNames(from))
16
- if (!__hasOwnProp.call(to, key) && key !== except)
17
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
18
- }
19
- return to;
20
- };
21
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
22
- // If the importer is in node compatibility mode or this is not an ESM
23
- // file that has been converted to a CommonJS file using a Babel-
24
- // compatible transform (i.e. "__esModule" has not been set), then set
25
- // "default" to the CommonJS "module.exports" for node compatibility.
26
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
27
- mod
28
- ));
29
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
30
-
31
- // src/ui/reset-all-formatting-button/index.ts
32
- var reset_all_formatting_button_exports = {};
33
- __export(reset_all_formatting_button_exports, {
34
- RESET_ALL_FORMATTING_SHORTCUT_KEY: () => RESET_ALL_FORMATTING_SHORTCUT_KEY,
35
- ResetAllFormattingButton: () => ResetAllFormattingButton,
36
- ResetAllFormattingShortcutBadge: () => ResetAllFormattingShortcutBadge,
37
- canResetFormatting: () => canResetFormatting,
38
- canResetMarks: () => canResetMarks,
39
- removeAllMarksExcept: () => removeAllMarksExcept,
40
- resetFormatting: () => resetFormatting,
41
- shouldShowButton: () => shouldShowButton,
42
- useResetAllFormatting: () => useResetAllFormatting
43
- });
44
- module.exports = __toCommonJS(reset_all_formatting_button_exports);
45
-
46
- // src/ui/reset-all-formatting-button/reset-all-formatting-button.tsx
47
- var import_button = require("@kopexa/button");
48
- var import_chip = require("@kopexa/chip");
49
- var import_shared_utils = require("@kopexa/shared-utils");
50
- var import_react3 = require("react");
51
-
52
- // src/hooks/use-tiptap-editor.ts
53
- var import_react = require("@tiptap/react");
54
- var import_react2 = require("react");
55
- function useTiptapEditor(providedEditor) {
56
- const { editor: coreEditor } = (0, import_react.useCurrentEditor)();
57
- const mainEditor = (0, import_react2.useMemo)(
58
- () => providedEditor || coreEditor,
59
- [providedEditor, coreEditor]
60
- );
61
- const editorState = (0, import_react.useEditorState)({
62
- editor: mainEditor,
63
- selector(context) {
64
- if (!context.editor) {
65
- return {
66
- editor: null,
67
- editorState: void 0,
68
- canCommand: void 0
69
- };
70
- }
71
- return {
72
- editor: context.editor,
73
- editorState: context.editor.state,
74
- canCommand: context.editor.can
75
- };
76
- }
77
- });
78
- return editorState || { editor: null };
79
- }
80
-
81
- // src/ui/reset-all-formatting-button/use-reset-all-formatting.ts
82
- var import_icons = require("@kopexa/icons");
83
- var import_use_is_mobile = require("@kopexa/use-is-mobile");
84
- var React = __toESM(require("react"));
85
- var import_react_hotkeys_hook = require("react-hotkeys-hook");
86
- var RESET_ALL_FORMATTING_SHORTCUT_KEY = "mod+r";
87
- function removeAllMarksExcept(tr, skip = []) {
88
- const { selection } = tr;
89
- const { empty, ranges } = selection;
90
- if (empty) return tr;
91
- ranges.forEach((range) => {
92
- const from = range.$from.pos;
93
- const to = range.$to.pos;
94
- tr.doc.nodesBetween(from, to, (node, pos) => {
95
- if (!node.isInline) return true;
96
- node.marks.forEach((mark) => {
97
- if (!skip.includes(mark.type.name)) {
98
- tr.removeMark(pos, pos + node.nodeSize, mark.type);
99
- }
100
- });
101
- return true;
102
- });
103
- });
104
- return tr;
105
- }
106
- function canResetMarks(tr, skip = []) {
107
- const { selection } = tr;
108
- const { empty, ranges } = selection;
109
- if (empty) return false;
110
- for (const range of ranges) {
111
- const from = range.$from.pos;
112
- const to = range.$to.pos;
113
- let hasRemovableMarks = false;
114
- tr.doc.nodesBetween(from, to, (node) => {
115
- if (!node.isInline) return true;
116
- for (const mark of node.marks) {
117
- if (!skip.includes(mark.type.name)) {
118
- hasRemovableMarks = true;
119
- return false;
120
- }
121
- }
122
- return true;
123
- });
124
- if (hasRemovableMarks) {
125
- return true;
126
- }
127
- }
128
- return false;
129
- }
130
- function canResetFormatting(editor, preserveMarks) {
131
- if (!editor || !editor.isEditable) return false;
132
- const tr = editor.state.tr;
133
- return canResetMarks(tr, preserveMarks);
134
- }
135
- function resetFormatting(editor, preserveMarks) {
136
- if (!editor || !editor.isEditable) return false;
137
- try {
138
- const { view, state } = editor;
139
- const { tr } = state;
140
- const transaction = removeAllMarksExcept(tr, preserveMarks);
141
- view.dispatch(transaction);
142
- editor.commands.focus();
143
- return true;
144
- } catch {
145
- return false;
146
- }
147
- }
148
- function shouldShowButton(props) {
149
- const { editor, hideWhenUnavailable, preserveMarks } = props;
150
- if (!editor || !editor.isEditable) return false;
151
- if (hideWhenUnavailable && !editor.isActive("code")) {
152
- return canResetFormatting(editor, preserveMarks);
153
- }
154
- return true;
155
- }
156
- function useResetAllFormatting(config) {
157
- const {
158
- editor: providedEditor,
159
- preserveMarks,
160
- hideWhenUnavailable = false,
161
- onResetAllFormatting
162
- } = config || {};
163
- const { editor } = useTiptapEditor(providedEditor);
164
- const isMobile = (0, import_use_is_mobile.useIsMobile)();
165
- const [isVisible, setIsVisible] = React.useState(true);
166
- const canReset = canResetFormatting(editor, preserveMarks);
167
- React.useEffect(() => {
168
- if (!editor) return;
169
- const handleSelectionUpdate = () => {
170
- setIsVisible(
171
- shouldShowButton({ editor, hideWhenUnavailable, preserveMarks })
172
- );
173
- };
174
- handleSelectionUpdate();
175
- editor.on("selectionUpdate", handleSelectionUpdate);
176
- return () => {
177
- editor.off("selectionUpdate", handleSelectionUpdate);
178
- };
179
- }, [editor, hideWhenUnavailable, preserveMarks]);
180
- const handleResetFormatting = React.useCallback(() => {
181
- if (!editor) return false;
182
- const success = resetFormatting(editor, preserveMarks);
183
- if (success) {
184
- onResetAllFormatting == null ? void 0 : onResetAllFormatting();
185
- }
186
- return success;
187
- }, [editor, onResetAllFormatting, preserveMarks]);
188
- (0, import_react_hotkeys_hook.useHotkeys)(
189
- RESET_ALL_FORMATTING_SHORTCUT_KEY,
190
- (event) => {
191
- event.preventDefault();
192
- handleResetFormatting();
193
- },
194
- {
195
- enabled: isVisible && canReset,
196
- enableOnContentEditable: !isMobile,
197
- enableOnFormTags: true
198
- }
199
- );
200
- return {
201
- isVisible,
202
- handleResetFormatting,
203
- canReset,
204
- label: "Reset formatting",
205
- shortcutKeys: RESET_ALL_FORMATTING_SHORTCUT_KEY,
206
- Icon: import_icons.RotateCcwIcon
207
- };
208
- }
209
-
210
- // src/ui/reset-all-formatting-button/reset-all-formatting-button.tsx
211
- var import_jsx_runtime = require("react/jsx-runtime");
212
- function ResetAllFormattingShortcutBadge({
213
- shortcutKeys = RESET_ALL_FORMATTING_SHORTCUT_KEY
214
- }) {
215
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_chip.Chip, { children: (0, import_shared_utils.parseShortcutKeys)({ shortcutKeys }) });
216
- }
217
- var ResetAllFormattingButton = ({
218
- editor: providedEditor,
219
- text,
220
- hideWhenUnavailable = false,
221
- preserveMarks = ["inlineThread"],
222
- onResetAllFormatting,
223
- showShortcut = false,
224
- onClick,
225
- children,
226
- ref,
227
- ...buttonProps
228
- }) => {
229
- const { editor } = useTiptapEditor(providedEditor);
230
- const {
231
- isVisible,
232
- canReset,
233
- handleResetFormatting,
234
- label,
235
- shortcutKeys,
236
- Icon
237
- } = useResetAllFormatting({
238
- editor,
239
- preserveMarks,
240
- hideWhenUnavailable,
241
- onResetAllFormatting
242
- });
243
- const handleClick = (0, import_react3.useCallback)(
244
- (event) => {
245
- onClick == null ? void 0 : onClick(event);
246
- if (event.defaultPrevented) return;
247
- handleResetFormatting();
248
- },
249
- [handleResetFormatting, onClick]
250
- );
251
- if (!isVisible) {
252
- return null;
253
- }
254
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
255
- import_button.Button,
256
- {
257
- type: "button",
258
- variant: "ghost",
259
- color: "default",
260
- disabled: !canReset,
261
- "data-disabled": !canReset,
262
- "data-active-state": "off",
263
- tabIndex: -1,
264
- "aria-label": label,
265
- tooltip: "Reset formatting",
266
- onClick: handleClick,
267
- startContent: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Icon, {}),
268
- endContent: showShortcut ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ResetAllFormattingShortcutBadge, { shortcutKeys }) : null,
269
- ...buttonProps,
270
- ref,
271
- children: text
272
- }
273
- );
274
- };
275
- // Annotate the CommonJS export names for ESM import in node:
276
- 0 && (module.exports = {
277
- RESET_ALL_FORMATTING_SHORTCUT_KEY,
278
- ResetAllFormattingButton,
279
- ResetAllFormattingShortcutBadge,
280
- canResetFormatting,
281
- canResetMarks,
282
- removeAllMarksExcept,
283
- resetFormatting,
284
- shouldShowButton,
285
- useResetAllFormatting
286
- });