react-reason-editor 1.0.24

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 (871) hide show
  1. package/README.md +225 -0
  2. package/dist/ActionMenuButton-BGj7ODjl.cjs +1 -0
  3. package/dist/ActionMenuButton-DHYJFTev.js +2 -0
  4. package/dist/Attachment-DGzsbPZZ.js +4 -0
  5. package/dist/Attachment.cjs +1 -0
  6. package/dist/Attachment.js +1 -0
  7. package/dist/Blockquote-CQ6HlDnL.js +2 -0
  8. package/dist/Blockquote.cjs +1 -0
  9. package/dist/Blockquote.js +1 -0
  10. package/dist/Bold-Ciuvp1pM.js +2 -0
  11. package/dist/Bold-M6IKTPME.cjs +1 -0
  12. package/dist/Bold.cjs +1 -0
  13. package/dist/Bold.js +1 -0
  14. package/dist/BulletList.cjs +1 -0
  15. package/dist/BulletList.js +1 -0
  16. package/dist/Callout-DOHjjQtT.cjs +1 -0
  17. package/dist/Callout-heY7R-Zu.js +11 -0
  18. package/dist/Callout.cjs +1 -0
  19. package/dist/Callout.js +1 -0
  20. package/dist/Clear.cjs +1 -0
  21. package/dist/Clear.js +1 -0
  22. package/dist/Code-B17BQJf-.js +1 -0
  23. package/dist/Code-BsD1D1sK.cjs +1 -0
  24. package/dist/Code.cjs +1 -0
  25. package/dist/Code.js +1 -0
  26. package/dist/CodeBlock-B7Wklup8.js +1 -0
  27. package/dist/CodeBlock-D2OKvGCF.cjs +1 -0
  28. package/dist/CodeBlock.cjs +1 -0
  29. package/dist/CodeBlock.js +1 -0
  30. package/dist/CodeView.cjs +1 -0
  31. package/dist/CodeView.js +1 -0
  32. package/dist/Color-BxzxtvJH.cjs +1 -0
  33. package/dist/Color-VWGwmpsG.js +5 -0
  34. package/dist/Color.cjs +1 -0
  35. package/dist/Color.js +1 -0
  36. package/dist/Column-D4FgAp5K.js +1 -0
  37. package/dist/Column-I4gS_xKw.cjs +1 -0
  38. package/dist/Column.cjs +1 -0
  39. package/dist/Column.js +1 -0
  40. package/dist/Comment-DEtjWTFF.js +14 -0
  41. package/dist/Comment-DaHgAu2h.cjs +1 -0
  42. package/dist/Comment.cjs +1 -0
  43. package/dist/Comment.js +1 -0
  44. package/dist/Drawer-Dunw22Q1.js +63 -0
  45. package/dist/Drawer-DxCO6TBr.cjs +1 -0
  46. package/dist/Drawer.cjs +1 -0
  47. package/dist/Drawer.js +1 -0
  48. package/dist/Drawio-Bx8zt_CW.cjs +1 -0
  49. package/dist/Drawio-eqEGDkwW.js +6 -0
  50. package/dist/Drawio.cjs +1 -0
  51. package/dist/Drawio.js +1 -0
  52. package/dist/Emoji-BU-itkPp.js +12 -0
  53. package/dist/Emoji.cjs +1 -0
  54. package/dist/Emoji.js +1 -0
  55. package/dist/ExportPdf-DPeFg2GG.js +1 -0
  56. package/dist/ExportPdf.cjs +1 -0
  57. package/dist/ExportPdf.js +1 -0
  58. package/dist/ExportWord-TFEb3HXz.js +1 -0
  59. package/dist/ExportWord.cjs +1 -0
  60. package/dist/ExportWord.js +1 -0
  61. package/dist/FontFamily.cjs +1 -0
  62. package/dist/FontFamily.js +2 -0
  63. package/dist/FontSize.cjs +1 -0
  64. package/dist/FontSize.js +8 -0
  65. package/dist/Harper-1cMMY1sx.cjs +1 -0
  66. package/dist/Harper-BMTF3gpj.js +1 -0
  67. package/dist/Harper.cjs +1 -0
  68. package/dist/Harper.js +1 -0
  69. package/dist/Heading-YSJHyWCU.js +2 -0
  70. package/dist/Heading.cjs +1 -0
  71. package/dist/Heading.js +1 -0
  72. package/dist/Highlight-BeqLxfbY.cjs +1 -0
  73. package/dist/Highlight-OkaWwhRk.js +5 -0
  74. package/dist/Highlight.cjs +1 -0
  75. package/dist/Highlight.js +1 -0
  76. package/dist/History-C6yBYB2w.js +1 -0
  77. package/dist/History.cjs +1 -0
  78. package/dist/History.js +1 -0
  79. package/dist/HorizontalRule-kAw8TV0V.js +1 -0
  80. package/dist/HorizontalRule.cjs +1 -0
  81. package/dist/HorizontalRule.js +1 -0
  82. package/dist/Icon-CJJ9AQtR.js +1 -0
  83. package/dist/Icon-DQdA22_-.cjs +1 -0
  84. package/dist/Iframe-B-0W9YYq.js +2 -0
  85. package/dist/Iframe-DS5N9EFx.cjs +1 -0
  86. package/dist/Iframe.cjs +1 -0
  87. package/dist/Iframe.js +1 -0
  88. package/dist/Image.cjs +1 -0
  89. package/dist/Image.js +1 -0
  90. package/dist/ImageCropper-BAWOk69J.cjs +1 -0
  91. package/dist/ImageCropper-Dlz4nJQu.js +11 -0
  92. package/dist/ImageGif-CWfgVc6e.cjs +1 -0
  93. package/dist/ImageGif-D5Qw_Xf-.js +3 -0
  94. package/dist/ImageGif.cjs +1 -0
  95. package/dist/ImageGif.js +1 -0
  96. package/dist/ImportWord-BCcs3dYp.js +1 -0
  97. package/dist/ImportWord.cjs +1 -0
  98. package/dist/ImportWord.js +1 -0
  99. package/dist/Indent-6tc8tB62.cjs +1 -0
  100. package/dist/Indent-DpTPoZMk.js +1 -0
  101. package/dist/Indent.cjs +1 -0
  102. package/dist/Indent.js +1 -0
  103. package/dist/Italic-Brjxxqsi.cjs +1 -0
  104. package/dist/Italic-CZkbT3Dd.js +1 -0
  105. package/dist/Italic.cjs +1 -0
  106. package/dist/Italic.js +1 -0
  107. package/dist/Katex-Bo_vfXrd.js +10 -0
  108. package/dist/Katex-D_vF5gsD.cjs +1 -0
  109. package/dist/Katex.cjs +1 -0
  110. package/dist/Katex.js +1 -0
  111. package/dist/LineHeight.cjs +1 -0
  112. package/dist/LineHeight.js +1 -0
  113. package/dist/Link-C0cNnjXo.js +6 -0
  114. package/dist/Link.cjs +1 -0
  115. package/dist/Link.js +1 -0
  116. package/dist/LinkEditBlock-Or1HIYih.cjs +1 -0
  117. package/dist/MarkdownPaste-C5jQ33SR.js +1 -0
  118. package/dist/MarkdownPaste.cjs +1 -0
  119. package/dist/MarkdownPaste.js +1 -0
  120. package/dist/Mention-DEkbeL04.js +1 -0
  121. package/dist/Mention.cjs +1 -0
  122. package/dist/Mention.js +1 -0
  123. package/dist/Mermaid-BB15qd24.cjs +1 -0
  124. package/dist/Mermaid-DxpFRVu0.js +5 -0
  125. package/dist/Mermaid.cjs +1 -0
  126. package/dist/Mermaid.js +1 -0
  127. package/dist/MoreMark-CXudh2cm.js +3 -0
  128. package/dist/MoreMark.cjs +1 -0
  129. package/dist/MoreMark.js +1 -0
  130. package/dist/OfficePaste-BmPshTAb.js +1 -0
  131. package/dist/OfficePaste-Day0T6Ox.cjs +1 -0
  132. package/dist/OfficePaste.cjs +1 -0
  133. package/dist/OfficePaste.js +1 -0
  134. package/dist/OrderedList.cjs +1 -0
  135. package/dist/OrderedList.js +1 -0
  136. package/dist/Pagination-B8rfYYi_.js +1 -0
  137. package/dist/Pagination-yjRu_qJK.cjs +1 -0
  138. package/dist/Pagination.cjs +1 -0
  139. package/dist/Pagination.js +1 -0
  140. package/dist/SearchAndReplace.cjs +1 -0
  141. package/dist/SearchAndReplace.js +11 -0
  142. package/dist/SlashCommand-8LkH8bHy.js +1 -0
  143. package/dist/SlashCommand.cjs +1 -0
  144. package/dist/SlashCommand.js +1 -0
  145. package/dist/Strike-BsMuOhxs.js +1 -0
  146. package/dist/Strike.cjs +1 -0
  147. package/dist/Strike.js +1 -0
  148. package/dist/Table-B4KNW7Yq.cjs +1 -0
  149. package/dist/Table-C9t-k9Qu.js +3 -0
  150. package/dist/Table.cjs +1 -0
  151. package/dist/Table.js +1 -0
  152. package/dist/TableOfContents.cjs +1 -0
  153. package/dist/TableOfContents.js +1 -0
  154. package/dist/TaskList.cjs +1 -0
  155. package/dist/TaskList.js +1 -0
  156. package/dist/TextAlign-6ElUYI4_.cjs +1 -0
  157. package/dist/TextAlign-C75gn_OM.js +1 -0
  158. package/dist/TextAlign.cjs +1 -0
  159. package/dist/TextAlign.js +1 -0
  160. package/dist/TextDirection.cjs +1 -0
  161. package/dist/TextDirection.js +1 -0
  162. package/dist/TextUnderline-BaV7bhwo.js +1 -0
  163. package/dist/TextUnderline-ofstnQx_.cjs +1 -0
  164. package/dist/TextUnderline.cjs +1 -0
  165. package/dist/TextUnderline.js +1 -0
  166. package/dist/Twitter-D5UNfT-K.js +5 -0
  167. package/dist/Twitter-DyrQT0n4.cjs +1 -0
  168. package/dist/Twitter.cjs +1 -0
  169. package/dist/Twitter.js +1 -0
  170. package/dist/Video-BSH5k6Jd.cjs +1 -0
  171. package/dist/Video-_YlAC2R_.js +5 -0
  172. package/dist/Video.cjs +1 -0
  173. package/dist/Video.js +1 -0
  174. package/dist/WordCount.cjs +1 -0
  175. package/dist/WordCount.js +2 -0
  176. package/dist/app-hooks/use-mobile.d.ts +5 -0
  177. package/dist/app-hooks/useDocumentSync.d.ts +27 -0
  178. package/dist/app-hooks/useLocalStorage.d.ts +11 -0
  179. package/dist/app-theme/theme-dropdown.d.ts +1 -0
  180. package/dist/app-types/document.d.ts +81 -0
  181. package/dist/app-types/fileSource.d.ts +124 -0
  182. package/dist/app-types/team.d.ts +52 -0
  183. package/dist/app-types/toc.d.ts +2 -0
  184. package/dist/app-ui/FileTypeIcon.d.ts +11 -0
  185. package/dist/app-ui/alert-dialog.d.ts +14 -0
  186. package/dist/app-ui/avatar.d.ts +6 -0
  187. package/dist/app-ui/badge.d.ts +13 -0
  188. package/dist/app-ui/breadcrumb.d.ts +15 -0
  189. package/dist/app-ui/button.d.ts +15 -0
  190. package/dist/app-ui/context-menu.d.ts +28 -0
  191. package/dist/app-ui/dialog.d.ts +15 -0
  192. package/dist/app-ui/dropdown-menu.d.ts +25 -0
  193. package/dist/app-ui/input.d.ts +7 -0
  194. package/dist/app-ui/label.d.ts +4 -0
  195. package/dist/app-ui/radio-group.d.ts +5 -0
  196. package/dist/app-ui/scroll-area.d.ts +5 -0
  197. package/dist/app-ui/select.d.ts +13 -0
  198. package/dist/app-ui/separator.d.ts +4 -0
  199. package/dist/app-ui/sheet.d.ts +13 -0
  200. package/dist/app-ui/sidebar.d.ts +70 -0
  201. package/dist/app-ui/skeleton.d.ts +3 -0
  202. package/dist/app-ui/switch.d.ts +4 -0
  203. package/dist/app-ui/tabs.d.ts +7 -0
  204. package/dist/app-ui/textarea.d.ts +7 -0
  205. package/dist/app-ui/tooltip.d.ts +7 -0
  206. package/dist/app-ui/tree.d.ts +19 -0
  207. package/dist/app-ui/visually-hidden.d.ts +6 -0
  208. package/dist/app-utils/file-sources/sources.d.ts +37 -0
  209. package/dist/app-utils/utils.d.ts +1 -0
  210. package/dist/bubble---c27x7L.js +80 -0
  211. package/dist/bubble.cjs +1 -0
  212. package/dist/bubble.d.ts +4 -0
  213. package/dist/bubble.js +1 -0
  214. package/dist/button-CXcuJkiM.js +1 -0
  215. package/dist/button-CYMsgP3Y.cjs +1 -0
  216. package/dist/cdn-loader-D76eUWN7.cjs +1 -0
  217. package/dist/cdn-loader-w67sLKk9.js +1 -0
  218. package/dist/checkbox-BtMvSk4V.cjs +1 -0
  219. package/dist/checkbox-zfuPZBhD.js +1 -0
  220. package/dist/comments/CommentsSidebar.d.ts +14 -0
  221. package/dist/comments/commentMarks.d.ts +40 -0
  222. package/dist/comments/useCommentThreads.d.ts +29 -0
  223. package/dist/components/ActionButton.d.ts +23 -0
  224. package/dist/components/ActionMenuButton.d.ts +28 -0
  225. package/dist/components/Bubble/RichTextBubbleCallout.d.ts +4 -0
  226. package/dist/components/Bubble/RichTextBubbleCodeBlock.d.ts +4 -0
  227. package/dist/components/Bubble/RichTextBubbleColumns.d.ts +4 -0
  228. package/dist/components/Bubble/RichTextBubbleDrawer.d.ts +4 -0
  229. package/dist/components/Bubble/RichTextBubbleDrawio.d.ts +4 -0
  230. package/dist/components/Bubble/RichTextBubbleIframe.d.ts +4 -0
  231. package/dist/components/Bubble/RichTextBubbleKatex.d.ts +2 -0
  232. package/dist/components/Bubble/RichTextBubbleLink.d.ts +6 -0
  233. package/dist/components/Bubble/RichTextBubbleMedia.d.ts +7 -0
  234. package/dist/components/Bubble/RichTextBubbleMenuDragHandle.d.ts +2 -0
  235. package/dist/components/Bubble/RichTextBubbleMermaid.d.ts +4 -0
  236. package/dist/components/Bubble/RichTextBubbleTable.d.ts +8 -0
  237. package/dist/components/Bubble/RichTextBubbleText.d.ts +8 -0
  238. package/dist/components/Bubble/RichTextBubbleTwitter.d.ts +4 -0
  239. package/dist/components/Bubble/formatBubble.d.ts +55 -0
  240. package/dist/components/Bubble/index.d.ts +17 -0
  241. package/dist/components/ColorPicker.d.ts +11 -0
  242. package/dist/components/ReactBus.d.ts +11 -0
  243. package/dist/components/RichTextProvider.d.ts +8 -0
  244. package/dist/components/SizeSetter/SizeSetter.d.ts +16 -0
  245. package/dist/components/SlashDialogTrigger/RenderDialogUploadImage.d.ts +4 -0
  246. package/dist/components/SlashDialogTrigger/RenderDialogUploadVideo.d.ts +4 -0
  247. package/dist/components/SlashDialogTrigger/SlashDialogTrigger.d.ts +6 -0
  248. package/dist/components/ToolbarMenuItem.d.ts +15 -0
  249. package/dist/components/icons/Activity.d.ts +3 -0
  250. package/dist/components/icons/Animas.d.ts +3 -0
  251. package/dist/components/icons/AspectRatio.d.ts +2 -0
  252. package/dist/components/icons/Blockquote.d.ts +2 -0
  253. package/dist/components/icons/CodeView.d.ts +4 -0
  254. package/dist/components/icons/ColumnAddLeft.d.ts +4 -0
  255. package/dist/components/icons/ColumnAddRight.d.ts +4 -0
  256. package/dist/components/icons/DeleteColumn.d.ts +5 -0
  257. package/dist/components/icons/DeleteRow.d.ts +5 -0
  258. package/dist/components/icons/Direction.d.ts +4 -0
  259. package/dist/components/icons/Drawio.d.ts +4 -0
  260. package/dist/components/icons/ExportPdf.d.ts +4 -0
  261. package/dist/components/icons/ExportWord.d.ts +3 -0
  262. package/dist/components/icons/FileWordOutline.d.ts +2 -0
  263. package/dist/components/icons/Flag.d.ts +3 -0
  264. package/dist/components/icons/Food.d.ts +3 -0
  265. package/dist/components/icons/GIfIcon.d.ts +4 -0
  266. package/dist/components/icons/Html.d.ts +4 -0
  267. package/dist/components/icons/Icon.d.ts +8 -0
  268. package/dist/components/icons/IconColorFill.d.ts +8 -0
  269. package/dist/components/icons/IconHighlightFill.d.ts +6 -0
  270. package/dist/components/icons/ImportWord.d.ts +3 -0
  271. package/dist/components/icons/LeftToRight.d.ts +4 -0
  272. package/dist/components/icons/LineHeight.d.ts +2 -0
  273. package/dist/components/icons/MenuDown.d.ts +2 -0
  274. package/dist/components/icons/Mermaid.d.ts +4 -0
  275. package/dist/components/icons/NoFill.d.ts +4 -0
  276. package/dist/components/icons/Object.d.ts +3 -0
  277. package/dist/components/icons/RightToLeft.d.ts +4 -0
  278. package/dist/components/icons/SizeL.d.ts +2 -0
  279. package/dist/components/icons/SizeM.d.ts +2 -0
  280. package/dist/components/icons/SizeS.d.ts +2 -0
  281. package/dist/components/icons/Symbol.d.ts +3 -0
  282. package/dist/components/icons/Travel.d.ts +3 -0
  283. package/dist/components/icons/Twitter.d.ts +4 -0
  284. package/dist/components/icons/icons.d.ts +4 -0
  285. package/dist/components/icons/index.d.ts +15 -0
  286. package/dist/components/index.d.ts +10 -0
  287. package/dist/components/ui/FileTypeIcon.d.ts +11 -0
  288. package/dist/components/ui/alert-dialog.d.ts +14 -0
  289. package/dist/components/ui/avatar.d.ts +6 -0
  290. package/dist/components/ui/badge.d.ts +13 -0
  291. package/dist/components/ui/breadcrumb.d.ts +15 -0
  292. package/dist/components/ui/button.d.ts +11 -0
  293. package/dist/components/ui/card.d.ts +13 -0
  294. package/dist/components/ui/checkbox.d.ts +7 -0
  295. package/dist/components/ui/context-menu.d.ts +28 -0
  296. package/dist/components/ui/dialog.d.ts +22 -0
  297. package/dist/components/ui/dropdown-menu.d.ts +30 -0
  298. package/dist/components/ui/emoji-picker.d.ts +22 -0
  299. package/dist/components/ui/index.d.ts +33 -0
  300. package/dist/components/ui/input.d.ts +8 -0
  301. package/dist/components/ui/label.d.ts +8 -0
  302. package/dist/components/ui/popover.d.ts +9 -0
  303. package/dist/components/ui/radio-group.d.ts +5 -0
  304. package/dist/components/ui/scroll-area.d.ts +5 -0
  305. package/dist/components/ui/select.d.ts +16 -0
  306. package/dist/components/ui/separator.d.ts +7 -0
  307. package/dist/components/ui/sheet.d.ts +13 -0
  308. package/dist/components/ui/sidebar.d.ts +70 -0
  309. package/dist/components/ui/skeleton.d.ts +3 -0
  310. package/dist/components/ui/switch.d.ts +7 -0
  311. package/dist/components/ui/tabs.d.ts +10 -0
  312. package/dist/components/ui/textarea.d.ts +8 -0
  313. package/dist/components/ui/toast.d.ts +18 -0
  314. package/dist/components/ui/toaster.d.ts +4 -0
  315. package/dist/components/ui/toggle.d.ts +15 -0
  316. package/dist/components/ui/tooltip.d.ts +7 -0
  317. package/dist/components/ui/tree.d.ts +19 -0
  318. package/dist/components/ui/use-toast.d.ts +47 -0
  319. package/dist/components/ui/visually-hidden.d.ts +6 -0
  320. package/dist/constants/index.d.ts +50 -0
  321. package/dist/constants/resetCSS.d.ts +4 -0
  322. package/dist/demo/alternatives.html +23 -0
  323. package/dist/demo/assets/BinaryModule-DTTQwokQ-8eah-8sx.js +4 -0
  324. package/dist/demo/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
  325. package/dist/demo/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
  326. package/dist/demo/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
  327. package/dist/demo/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
  328. package/dist/demo/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
  329. package/dist/demo/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
  330. package/dist/demo/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
  331. package/dist/demo/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
  332. package/dist/demo/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
  333. package/dist/demo/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
  334. package/dist/demo/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
  335. package/dist/demo/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
  336. package/dist/demo/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
  337. package/dist/demo/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
  338. package/dist/demo/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
  339. package/dist/demo/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
  340. package/dist/demo/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
  341. package/dist/demo/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
  342. package/dist/demo/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
  343. package/dist/demo/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
  344. package/dist/demo/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
  345. package/dist/demo/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
  346. package/dist/demo/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
  347. package/dist/demo/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
  348. package/dist/demo/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
  349. package/dist/demo/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
  350. package/dist/demo/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
  351. package/dist/demo/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
  352. package/dist/demo/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
  353. package/dist/demo/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
  354. package/dist/demo/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
  355. package/dist/demo/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
  356. package/dist/demo/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
  357. package/dist/demo/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
  358. package/dist/demo/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
  359. package/dist/demo/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
  360. package/dist/demo/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
  361. package/dist/demo/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
  362. package/dist/demo/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
  363. package/dist/demo/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
  364. package/dist/demo/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
  365. package/dist/demo/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
  366. package/dist/demo/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
  367. package/dist/demo/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
  368. package/dist/demo/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
  369. package/dist/demo/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
  370. package/dist/demo/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
  371. package/dist/demo/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
  372. package/dist/demo/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
  373. package/dist/demo/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
  374. package/dist/demo/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
  375. package/dist/demo/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
  376. package/dist/demo/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
  377. package/dist/demo/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
  378. package/dist/demo/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
  379. package/dist/demo/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
  380. package/dist/demo/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
  381. package/dist/demo/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
  382. package/dist/demo/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
  383. package/dist/demo/assets/abnfDiagram-VRR7QNED-Dfd140vw.js +1 -0
  384. package/dist/demo/assets/alternatives-B9ZaH43Q.js +34 -0
  385. package/dist/demo/assets/arc-DgAnSXoo.js +1 -0
  386. package/dist/demo/assets/architecture-TIHT7OUA-PKWnSAaw.js +1 -0
  387. package/dist/demo/assets/architectureDiagram-ZJ3FMSHR-DKbvCH_5.js +36 -0
  388. package/dist/demo/assets/archiver-web.es-9DdX0ee3.js +1 -0
  389. package/dist/demo/assets/array-BifhSqXX.js +1 -0
  390. package/dist/demo/assets/binary-C5gJtLso.js +1 -0
  391. package/dist/demo/assets/blockDiagram-677ZJIJ3-CG98KmMB.js +132 -0
  392. package/dist/demo/assets/c4Diagram-LMCZKHZV-DMoYN41z.js +10 -0
  393. package/dist/demo/assets/channel-KwEJ8erK.js +1 -0
  394. package/dist/demo/assets/chunk-2Q5K7J3B-C1jixKkw.js +1 -0
  395. package/dist/demo/assets/chunk-32BRIVSS-urznovFN.js +1 -0
  396. package/dist/demo/assets/chunk-52WLFC77-CVCkOQ0G.js +10 -0
  397. package/dist/demo/assets/chunk-5VM5RSS4-ZNzvKenW.js +15 -0
  398. package/dist/demo/assets/chunk-7BUUIJ7U-Bb538aSH.js +1 -0
  399. package/dist/demo/assets/chunk-C7G6YPKG-3KR4wxr6.js +1 -0
  400. package/dist/demo/assets/chunk-EX3LRPZG-7H4O5zer.js +231 -0
  401. package/dist/demo/assets/chunk-FWX5IMBZ-Cr5hG-Ne.js +2 -0
  402. package/dist/demo/assets/chunk-HOUHSVGY-D-1II34k.js +1 -0
  403. package/dist/demo/assets/chunk-ICXQ74PX-6-sSSj2J.js +2 -0
  404. package/dist/demo/assets/chunk-JWPE2WC7-DVXcaiue.js +1 -0
  405. package/dist/demo/assets/chunk-KEIR6QF5-DEvma7oi.js +161 -0
  406. package/dist/demo/assets/chunk-MOJQB5TN-BI6A8dXC.js +88 -0
  407. package/dist/demo/assets/chunk-OGEWGWER-CbUWwSGR.js +1 -0
  408. package/dist/demo/assets/chunk-PUDLZKDR-DZFGcS0W.js +156 -0
  409. package/dist/demo/assets/chunk-Q4XR5HBZ-DZGKW5Hb.js +70 -0
  410. package/dist/demo/assets/chunk-RYQCIY6F-ngGojZR9.js +1 -0
  411. package/dist/demo/assets/chunk-V7JOEXUC-BHAISEav.js +206 -0
  412. package/dist/demo/assets/chunk-VAUOI2AC-DJJNd7f5.js +1 -0
  413. package/dist/demo/assets/chunk-VR4S4FIN-BohNhf6y.js +1 -0
  414. package/dist/demo/assets/chunk-WYO6CB5R-B4Oap74a.js +127 -0
  415. package/dist/demo/assets/chunk-XXDRQBXY-CazVBYiP.js +1 -0
  416. package/dist/demo/assets/chunk-Y2CYZVJY-DsF7k-Jl.js +1 -0
  417. package/dist/demo/assets/chunk-ZGVPDNZ5-BIzSs0a_.js +62 -0
  418. package/dist/demo/assets/chunk-ZIRB5QZD-BpeS1aZ7.js +32 -0
  419. package/dist/demo/assets/classDiagram-OUVF2IWQ-DHWWAQXA.js +1 -0
  420. package/dist/demo/assets/classDiagram-v2-EOCWNBFH-DHWWAQXA.js +1 -0
  421. package/dist/demo/assets/cose-bilkent-JH36ORCC-BX8lNO9u.js +1 -0
  422. package/dist/demo/assets/cynefin-VYW2F7L2-BgajGb2C.js +1 -0
  423. package/dist/demo/assets/cynefinDiagram-TSTJHNR4-DzhUAZoU.js +62 -0
  424. package/dist/demo/assets/cytoscape.esm-C3UvhD5t.js +321 -0
  425. package/dist/demo/assets/dagre-Do4loULv.js +1 -0
  426. package/dist/demo/assets/dagre-VKFMJZFB-BsopUNng.js +4 -0
  427. package/dist/demo/assets/defaultLocale-BFoDCU3G.js +1 -0
  428. package/dist/demo/assets/diagram-FQU43EPY-CnINkZTL.js +3 -0
  429. package/dist/demo/assets/diagram-G47NLZAW-Dz3Rtzen.js +24 -0
  430. package/dist/demo/assets/diagram-NH7WQ7WH-Be_1UuNu.js +24 -0
  431. package/dist/demo/assets/diagram-OA4YK3LP-CoSIFO2U.js +30 -0
  432. package/dist/demo/assets/diagram-WEI45ONY-BSRZnbDT.js +41 -0
  433. package/dist/demo/assets/dist-Cs1z76FA.js +3464 -0
  434. package/dist/demo/assets/dist-Cz2MTljl.js +1 -0
  435. package/dist/demo/assets/dist-D6vyGdj4.js +1 -0
  436. package/dist/demo/assets/ebnfDiagram-CCIWWBDH-CyNs0RvY.js +1 -0
  437. package/dist/demo/assets/editorConfig-DhK0JFvA.js +1355 -0
  438. package/dist/demo/assets/editorConfig-DsFwDEyj.css +2 -0
  439. package/dist/demo/assets/erDiagram-Q63AITRT-Duw2zQw3.js +85 -0
  440. package/dist/demo/assets/eventmodeling-45OFAUF4-BMPwBTgC.js +1 -0
  441. package/dist/demo/assets/flowDiagram-23GEKE2U-vnvQkbfP.js +1 -0
  442. package/dist/demo/assets/ganttDiagram-NO4QXBWP-BUQaZ9pm.js +292 -0
  443. package/dist/demo/assets/gitGraph-TEB2WS4Q-Bqyr024o.js +1 -0
  444. package/dist/demo/assets/gitGraphDiagram-IHSO6WYX-BHYVHdDB.js +106 -0
  445. package/dist/demo/assets/graphlib-0Qhce9xj.js +1 -0
  446. package/dist/demo/assets/harper_wasm_bg-C0DPov_6.wasm +0 -0
  447. package/dist/demo/assets/html-to-docx.esm-C-vYVLZ6.js +75 -0
  448. package/dist/demo/assets/index-CLlAnStL-Ad588yu1.js +18 -0
  449. package/dist/demo/assets/info-DKCQHKI2-CFeY2ca_.js +1 -0
  450. package/dist/demo/assets/infoDiagram-FWYZ7A6U-DL4MXbtI.js +2 -0
  451. package/dist/demo/assets/init-C-OQMol4.js +1 -0
  452. package/dist/demo/assets/isObject-BNleAbAq.js +1 -0
  453. package/dist/demo/assets/ishikawaDiagram-FXEZZL3T-DmCRB68D.js +70 -0
  454. package/dist/demo/assets/journeyDiagram-5HDEW3XC-CweGyybk.js +139 -0
  455. package/dist/demo/assets/kanban-definition-HUTT4EX6-C66P6IsH.js +89 -0
  456. package/dist/demo/assets/katex-DolUETbr.js +257 -0
  457. package/dist/demo/assets/line-BidjcqCQ.js +1 -0
  458. package/dist/demo/assets/linear-CilxpIUn.js +1 -0
  459. package/dist/demo/assets/main-B9AIVkTk.js +10 -0
  460. package/dist/demo/assets/main-BprCJcmy.css +1 -0
  461. package/dist/demo/assets/map-CD2wglgO.js +1 -0
  462. package/dist/demo/assets/mermaid-parser.core-9KJPT0XG.js +7 -0
  463. package/dist/demo/assets/mermaid.core-laQQcj-T.js +11 -0
  464. package/dist/demo/assets/mindmap-definition-LN4V7U3C-BQN-bZLe.js +96 -0
  465. package/dist/demo/assets/ordinal-DtR4qwUh.js +1 -0
  466. package/dist/demo/assets/packet-7NZHBO7P-DxBPLOYy.js +1 -0
  467. package/dist/demo/assets/path-COt_16Va.js +1 -0
  468. package/dist/demo/assets/pegDiagram-2B236MQR-BpHXi9RG.js +1 -0
  469. package/dist/demo/assets/pie-RZYD4A2V-DrQV2Hpi.js +1 -0
  470. package/dist/demo/assets/pieDiagram-ENE6RG2P-CG5jHfId.js +39 -0
  471. package/dist/demo/assets/quadrantDiagram-ABIIQ3AL-Dcu2-MJ0.js +7 -0
  472. package/dist/demo/assets/radar-I7S5WNFK-tVb61Efp.js +1 -0
  473. package/dist/demo/assets/railroad-3IZDKUUU-DkJtB_j_.js +1 -0
  474. package/dist/demo/assets/railroad-abnf-AHOZXSZD-CfCTKFr3.js +1 -0
  475. package/dist/demo/assets/railroad-ebnf-EBAXGLYW-_v-6l-Ly.js +1 -0
  476. package/dist/demo/assets/railroad-peg-LSFZ7HO6-BBeu0SHC.js +1 -0
  477. package/dist/demo/assets/railroadDiagram-RFXS5EU6-Bv3QCzUt.js +1 -0
  478. package/dist/demo/assets/requirementDiagram-TGXJPOKE-DBRcoYhq.js +84 -0
  479. package/dist/demo/assets/rolldown-runtime-C0FnF6B9.js +1 -0
  480. package/dist/demo/assets/rough.esm-By172zw-.js +1 -0
  481. package/dist/demo/assets/sankeyDiagram-HTMAVEWB-BUvv1AGS.js +40 -0
  482. package/dist/demo/assets/sequenceDiagram-DBY2YBRQ-DF4ltyiE.js +162 -0
  483. package/dist/demo/assets/sizeCapture-X5ZJPWSS-B0uUizjq.js +1 -0
  484. package/dist/demo/assets/src-CllyRBe0.js +1 -0
  485. package/dist/demo/assets/stateDiagram-2N3HPSRC-hdEszuU_.js +1 -0
  486. package/dist/demo/assets/stateDiagram-v2-6OUMAXLB-frodkCZE.js +1 -0
  487. package/dist/demo/assets/swimlanes-5IMT3BWC-BXUPe25m.js +2 -0
  488. package/dist/demo/assets/swimlanesDiagram-G3AALYLV-CN1oenl6.js +8 -0
  489. package/dist/demo/assets/timeline-definition-FHXFAJF6-Dphs5ING.js +120 -0
  490. package/dist/demo/assets/treeView-QDETBFTQ-MqbtC4u9.js +1 -0
  491. package/dist/demo/assets/treemap-6X3UGDF4-BExpaQPn.js +1 -0
  492. package/dist/demo/assets/v4-DDdyfk2q.js +1 -0
  493. package/dist/demo/assets/vennDiagram-L72KCM5P-BKVdTvjh.js +34 -0
  494. package/dist/demo/assets/wardley-OPB4EBWU-e6QJ2uBL.js +1 -0
  495. package/dist/demo/assets/wardleyDiagram-EHGQE667-DCxRFNx3.js +78 -0
  496. package/dist/demo/assets/xychartDiagram-FW5EYKEG-OnzZBgPH.js +7 -0
  497. package/dist/demo/index.html +23 -0
  498. package/dist/dialog-CxZ2oxD2.cjs +1 -0
  499. package/dist/dialog-DgdVbRUv.js +3 -0
  500. package/dist/dialogs/FileManagerModal.d.ts +9 -0
  501. package/dist/dialogs/InviteModal.d.ts +13 -0
  502. package/dist/dialogs/filemanager-data.d.ts +12 -0
  503. package/dist/dist-BEFKWXG8.js +1 -0
  504. package/dist/dist-BZqs5TU5.js +1 -0
  505. package/dist/dist-C5TeAoJ9.cjs +1 -0
  506. package/dist/dist-Cn_OUKh6.cjs +1 -0
  507. package/dist/dist-CsCFCV4K.js +29 -0
  508. package/dist/dist-D0RROJPB.cjs +1 -0
  509. package/dist/dist-GxnWmQlw.cjs +1 -0
  510. package/dist/dist-ICzvPVCE.cjs +1 -0
  511. package/dist/dist-fiA_WbbM.js +1 -0
  512. package/dist/documents/DocumentTree.d.ts +59 -0
  513. package/dist/documents/defaultDocuments.d.ts +7 -0
  514. package/dist/dom-dataset-D3Nz0h73.js +1 -0
  515. package/dist/dom-dataset-w2ZYeuXJ.cjs +1 -0
  516. package/dist/dropdown-menu-CVJhYAPA.cjs +1 -0
  517. package/dist/dropdown-menu-CfGzSpIy.js +2 -0
  518. package/dist/editor/EditorArea.d.ts +42 -0
  519. package/dist/editor/ReasonDocs.d.ts +7 -0
  520. package/dist/editor/ReasonDocsDialogs.d.ts +47 -0
  521. package/dist/editor/RightPanel.d.ts +43 -0
  522. package/dist/editor/TiptapEditorWrapper.d.ts +56 -0
  523. package/dist/editor/useReasonDocsState.d.ts +108 -0
  524. package/dist/editor/useSyncStore.d.ts +16 -0
  525. package/dist/events.constant-BkYOoqSk.cjs +1 -0
  526. package/dist/events.constant-DYciHxmk.js +2 -0
  527. package/dist/extensions/Attachment/Attachment.d.ts +15 -0
  528. package/dist/extensions/Attachment/components/NodeViewAttachment/FileIcon.d.ts +4 -0
  529. package/dist/extensions/Attachment/components/NodeViewAttachment/FileIconString.d.ts +4 -0
  530. package/dist/extensions/Attachment/components/NodeViewAttachment/NodeViewAttachment.d.ts +4 -0
  531. package/dist/extensions/Attachment/components/RichTextAttachment.d.ts +4 -0
  532. package/dist/extensions/Attachment/index.d.ts +4 -0
  533. package/dist/extensions/Blockquote/Blockquote.d.ts +6 -0
  534. package/dist/extensions/Blockquote/components/RichTextBlockquote.d.ts +4 -0
  535. package/dist/extensions/Blockquote/index.d.ts +4 -0
  536. package/dist/extensions/Bold/Bold.d.ts +6 -0
  537. package/dist/extensions/Bold/components/RichTextBold.d.ts +4 -0
  538. package/dist/extensions/Bold/index.d.ts +4 -0
  539. package/dist/extensions/BulletList/BulletList.d.ts +6 -0
  540. package/dist/extensions/BulletList/components/RichTextBulletList.d.ts +4 -0
  541. package/dist/extensions/BulletList/index.d.ts +4 -0
  542. package/dist/extensions/Callout/Callout.d.ts +18 -0
  543. package/dist/extensions/Callout/components/NodeViewCallout/NodeViewCallout.d.ts +4 -0
  544. package/dist/extensions/Callout/components/RichTextCallout.d.ts +4 -0
  545. package/dist/extensions/Callout/index.d.ts +4 -0
  546. package/dist/extensions/Clear/Clear.d.ts +6 -0
  547. package/dist/extensions/Clear/components/RichTextClear.d.ts +4 -0
  548. package/dist/extensions/Clear/index.d.ts +4 -0
  549. package/dist/extensions/Code/Code.d.ts +6 -0
  550. package/dist/extensions/Code/components/RichTextCode.d.ts +4 -0
  551. package/dist/extensions/Code/index.d.ts +4 -0
  552. package/dist/extensions/CodeBlock/CodeBlock.d.ts +6 -0
  553. package/dist/extensions/CodeBlock/components/RichTextCodeBlock.d.ts +2 -0
  554. package/dist/extensions/CodeBlock/index.d.ts +4 -0
  555. package/dist/extensions/CodeView/CodeView.d.ts +17 -0
  556. package/dist/extensions/CodeView/components/RichTextCodeView.d.ts +4 -0
  557. package/dist/extensions/CodeView/index.d.ts +4 -0
  558. package/dist/extensions/Color/Color.d.ts +22 -0
  559. package/dist/extensions/Color/components/RichTextColor.d.ts +4 -0
  560. package/dist/extensions/Color/index.d.ts +4 -0
  561. package/dist/extensions/Column/Column.d.ts +25 -0
  562. package/dist/extensions/Column/components/RichTextColumn.d.ts +4 -0
  563. package/dist/extensions/Column/index.d.ts +4 -0
  564. package/dist/extensions/Comment/Comment.d.ts +41 -0
  565. package/dist/extensions/Comment/components/CommentView.d.ts +17 -0
  566. package/dist/extensions/Comment/index.d.ts +5 -0
  567. package/dist/extensions/Drawer/Drawer.d.ts +15 -0
  568. package/dist/extensions/Drawer/components/ControlDrawer/ControlDrawer.d.ts +3 -0
  569. package/dist/extensions/Drawer/components/ControlDrawer/icon.d.ts +28 -0
  570. package/dist/extensions/Drawer/components/EditDrawerBlock.d.ts +4 -0
  571. package/dist/extensions/Drawer/components/NodeViewDrawer/NodeViewDrawer.d.ts +2 -0
  572. package/dist/extensions/Drawer/components/RichTextDrawer.d.ts +4 -0
  573. package/dist/extensions/Drawer/index.d.ts +4 -0
  574. package/dist/extensions/Drawio/Drawio.d.ts +17 -0
  575. package/dist/extensions/Drawio/components/NodeViewDrawio/NodeViewDrawio.d.ts +3 -0
  576. package/dist/extensions/Drawio/components/RichTextDrawio.d.ts +4 -0
  577. package/dist/extensions/Drawio/index.d.ts +4 -0
  578. package/dist/extensions/Emoji/Emoji.d.ts +5 -0
  579. package/dist/extensions/Emoji/components/EmojiList/EmojiNodeView.d.ts +11 -0
  580. package/dist/extensions/Emoji/components/RichTextEmoji.d.ts +2 -0
  581. package/dist/extensions/Emoji/index.d.ts +4 -0
  582. package/dist/extensions/ExportPdf/ExportPdf.d.ts +21 -0
  583. package/dist/extensions/ExportPdf/components/RichTextExportPdf.d.ts +4 -0
  584. package/dist/extensions/ExportPdf/index.d.ts +4 -0
  585. package/dist/extensions/ExportWord/ExportWord.d.ts +13 -0
  586. package/dist/extensions/ExportWord/components/RichTextExportWord.d.ts +4 -0
  587. package/dist/extensions/ExportWord/index.d.ts +4 -0
  588. package/dist/extensions/FontFamily/FontFamily.d.ts +10 -0
  589. package/dist/extensions/FontFamily/components/RichTextFontFamily.d.ts +15 -0
  590. package/dist/extensions/FontFamily/index.d.ts +4 -0
  591. package/dist/extensions/FontSize/FontSize.d.ts +32 -0
  592. package/dist/extensions/FontSize/components/RichTextFontSize.d.ts +12 -0
  593. package/dist/extensions/FontSize/index.d.ts +4 -0
  594. package/dist/extensions/Harper/Harper.d.ts +73 -0
  595. package/dist/extensions/Harper/components/RichTextHarper.d.ts +15 -0
  596. package/dist/extensions/Harper/index.d.ts +9 -0
  597. package/dist/extensions/Harper/lib/createHarperLinter.d.ts +22 -0
  598. package/dist/extensions/Harper/lib/extractTextWithMap.d.ts +33 -0
  599. package/dist/extensions/Heading/Heading.d.ts +6 -0
  600. package/dist/extensions/Heading/components/RichTextHeading.d.ts +17 -0
  601. package/dist/extensions/Heading/index.d.ts +4 -0
  602. package/dist/extensions/Highlight/Highlight.d.ts +18 -0
  603. package/dist/extensions/Highlight/components/RichTextHighlight.d.ts +2 -0
  604. package/dist/extensions/Highlight/index.d.ts +4 -0
  605. package/dist/extensions/History/History.d.ts +6 -0
  606. package/dist/extensions/History/components/RichTextHistory.d.ts +3 -0
  607. package/dist/extensions/History/index.d.ts +4 -0
  608. package/dist/extensions/HorizontalRule/HorizontalRule.d.ts +6 -0
  609. package/dist/extensions/HorizontalRule/components/RichTextHorizontalRule.d.ts +4 -0
  610. package/dist/extensions/HorizontalRule/index.d.ts +4 -0
  611. package/dist/extensions/Iframe/Iframe.d.ts +16 -0
  612. package/dist/extensions/Iframe/components/IframeNodeView.d.ts +5 -0
  613. package/dist/extensions/Iframe/components/RichTextIframe.d.ts +4 -0
  614. package/dist/extensions/Iframe/index.d.ts +4 -0
  615. package/dist/extensions/Iframe/utils.d.ts +9 -0
  616. package/dist/extensions/Image/Image.d.ts +57 -0
  617. package/dist/extensions/Image/components/ImageCropper.d.ts +2 -0
  618. package/dist/extensions/Image/components/ImageView.d.ts +3 -0
  619. package/dist/extensions/Image/components/RichTextImage.d.ts +4 -0
  620. package/dist/extensions/Image/index.d.ts +4 -0
  621. package/dist/extensions/ImageGif/ImageGif.d.ts +39 -0
  622. package/dist/extensions/ImageGif/components/ImageGifView.d.ts +3 -0
  623. package/dist/extensions/ImageGif/components/RichTextImageGif.d.ts +2 -0
  624. package/dist/extensions/ImageGif/components/services.d.ts +461 -0
  625. package/dist/extensions/ImageGif/index.d.ts +4 -0
  626. package/dist/extensions/ImportWord/ImportWord.d.ts +16 -0
  627. package/dist/extensions/ImportWord/components/RichTextImportWord.d.ts +4 -0
  628. package/dist/extensions/ImportWord/docx-to-html.d.ts +24 -0
  629. package/dist/extensions/ImportWord/index.d.ts +4 -0
  630. package/dist/extensions/Indent/Indent.d.ts +23 -0
  631. package/dist/extensions/Indent/components/RichTextIndent.d.ts +4 -0
  632. package/dist/extensions/Indent/index.d.ts +4 -0
  633. package/dist/extensions/Italic/Italic.d.ts +6 -0
  634. package/dist/extensions/Italic/components/RichTextItalic.d.ts +4 -0
  635. package/dist/extensions/Italic/index.d.ts +4 -0
  636. package/dist/extensions/Katex/Katex.d.ts +17 -0
  637. package/dist/extensions/Katex/components/KatexWrapper.d.ts +4 -0
  638. package/dist/extensions/Katex/components/RichTextKatex.d.ts +4 -0
  639. package/dist/extensions/Katex/index.d.ts +4 -0
  640. package/dist/extensions/LineHeight/LineHeight.d.ts +7 -0
  641. package/dist/extensions/LineHeight/components/RichTextLightHeight.d.ts +4 -0
  642. package/dist/extensions/LineHeight/index.d.ts +4 -0
  643. package/dist/extensions/Link/Link.d.ts +6 -0
  644. package/dist/extensions/Link/components/LinkEditBlock.d.ts +12 -0
  645. package/dist/extensions/Link/components/LinkViewBlock.d.ts +9 -0
  646. package/dist/extensions/Link/components/RichTextLink.d.ts +4 -0
  647. package/dist/extensions/Link/index.d.ts +4 -0
  648. package/dist/extensions/MarkdownPaste/MarkdownPaste.d.ts +5 -0
  649. package/dist/extensions/MarkdownPaste/index.d.ts +4 -0
  650. package/dist/extensions/Mention/Mention.d.ts +3 -0
  651. package/dist/extensions/Mention/components/NodeViewMentionList.d.ts +16 -0
  652. package/dist/extensions/Mention/index.d.ts +4 -0
  653. package/dist/extensions/Mermaid/Mermaid.d.ts +15 -0
  654. package/dist/extensions/Mermaid/components/EditMermaidBlock.d.ts +8 -0
  655. package/dist/extensions/Mermaid/components/NodeViewMermaid/NodeViewMermaid.d.ts +2 -0
  656. package/dist/extensions/Mermaid/components/RichTextMermaid.d.ts +4 -0
  657. package/dist/extensions/Mermaid/index.d.ts +4 -0
  658. package/dist/extensions/MoreMark/MoreMark.d.ts +20 -0
  659. package/dist/extensions/MoreMark/components/RichTextMoreMark.d.ts +14 -0
  660. package/dist/extensions/MoreMark/index.d.ts +4 -0
  661. package/dist/extensions/OfficePaste/OfficePaste.d.ts +7 -0
  662. package/dist/extensions/OfficePaste/index.d.ts +4 -0
  663. package/dist/extensions/OrderedList/OrderedList.d.ts +6 -0
  664. package/dist/extensions/OrderedList/components/RichTextOrderedList.d.ts +4 -0
  665. package/dist/extensions/OrderedList/index.d.ts +4 -0
  666. package/dist/extensions/Pagination/Pagination.d.ts +37 -0
  667. package/dist/extensions/Pagination/components/RichTextPagination.d.ts +4 -0
  668. package/dist/extensions/Pagination/index.d.ts +5 -0
  669. package/dist/extensions/SearchAndReplace/SearchAndReplace.d.ts +36 -0
  670. package/dist/extensions/SearchAndReplace/components/RichTextSearchAndReplace.d.ts +4 -0
  671. package/dist/extensions/SearchAndReplace/index.d.ts +4 -0
  672. package/dist/extensions/SlashCommand/SlashCommand.d.ts +4 -0
  673. package/dist/extensions/SlashCommand/components/SlashCommandList.d.ts +6 -0
  674. package/dist/extensions/SlashCommand/components/SlashCommandNodeView.d.ts +3 -0
  675. package/dist/extensions/SlashCommand/index.d.ts +4 -0
  676. package/dist/extensions/SlashCommand/renderCommandListDefault.d.ts +7 -0
  677. package/dist/extensions/SlashCommand/types.d.ts +20 -0
  678. package/dist/extensions/Strike/Strike.d.ts +6 -0
  679. package/dist/extensions/Strike/components/RichTextStrike.d.ts +4 -0
  680. package/dist/extensions/Strike/index.d.ts +4 -0
  681. package/dist/extensions/Subscript/components/RichTextSubscript.d.ts +4 -0
  682. package/dist/extensions/Superscript/components/RichTextSuperscript.d.ts +4 -0
  683. package/dist/extensions/Table/Table.d.ts +21 -0
  684. package/dist/extensions/Table/TableCellBackground.d.ts +14 -0
  685. package/dist/extensions/Table/components/CreateTablePopover.d.ts +8 -0
  686. package/dist/extensions/Table/components/RichTextTable.d.ts +2 -0
  687. package/dist/extensions/Table/index.d.ts +4 -0
  688. package/dist/extensions/TableOfContents/TableOfContents.d.ts +15 -0
  689. package/dist/extensions/TableOfContents/components/RichTextTableOfContents.d.ts +8 -0
  690. package/dist/extensions/TableOfContents/components/RichTextTableOfContentsPanel.d.ts +19 -0
  691. package/dist/extensions/TableOfContents/index.d.ts +6 -0
  692. package/dist/extensions/TaskList/TaskList.d.ts +11 -0
  693. package/dist/extensions/TaskList/components/RichTextTaskList.d.ts +4 -0
  694. package/dist/extensions/TaskList/index.d.ts +4 -0
  695. package/dist/extensions/TextAlign/TextAlign.d.ts +17 -0
  696. package/dist/extensions/TextAlign/components/RichTextAlign.d.ts +14 -0
  697. package/dist/extensions/TextAlign/index.d.ts +4 -0
  698. package/dist/extensions/TextDirection/TextDirection.d.ts +5 -0
  699. package/dist/extensions/TextDirection/components/RichTextTextDirection.d.ts +15 -0
  700. package/dist/extensions/TextDirection/index.d.ts +4 -0
  701. package/dist/extensions/TextUnderline/TextUnderline.d.ts +6 -0
  702. package/dist/extensions/TextUnderline/components/RichTextUnderline.d.ts +4 -0
  703. package/dist/extensions/TextUnderline/index.d.ts +4 -0
  704. package/dist/extensions/Twitter/Twitter.d.ts +46 -0
  705. package/dist/extensions/Twitter/components/FormEditLinkTwitter.d.ts +9 -0
  706. package/dist/extensions/Twitter/components/NodeViewTweet.d.ts +8 -0
  707. package/dist/extensions/Twitter/components/RichTextTwitter.d.ts +4 -0
  708. package/dist/extensions/Twitter/index.d.ts +4 -0
  709. package/dist/extensions/Video/Video.d.ts +66 -0
  710. package/dist/extensions/Video/components/RichTextVideo.d.ts +4 -0
  711. package/dist/extensions/Video/index.d.ts +4 -0
  712. package/dist/extensions/WordCount/WordCount.d.ts +7 -0
  713. package/dist/extensions/WordCount/components/RichTextWordCount.d.ts +4 -0
  714. package/dist/extensions/WordCount/index.d.ts +4 -0
  715. package/dist/extensions/WordCount/utils/wordCount.d.ts +25 -0
  716. package/dist/extensions/Zoom/components/RichTextZoom.d.ts +2 -0
  717. package/dist/features/ai-rewrite/AIRewriteSuggestion.d.ts +27 -0
  718. package/dist/features/ai-rewrite/rewriteModes.d.ts +37 -0
  719. package/dist/features/settings/Settings.d.ts +11 -0
  720. package/dist/features/settings/sections/AIRewriteModesSection.d.ts +6 -0
  721. package/dist/features/settings/sections/AboutSection.d.ts +1 -0
  722. package/dist/features/settings/sections/AppearanceSection.d.ts +6 -0
  723. package/dist/features/settings/sections/FileSourcesSection.d.ts +6 -0
  724. package/dist/features/settings/sections/StorageSection.d.ts +6 -0
  725. package/dist/features/tags/TagManagementDialog.d.ts +18 -0
  726. package/dist/features/team/TeamManagement.d.ts +13 -0
  727. package/dist/file-B1Z0XcVJ.cjs +1 -0
  728. package/dist/file-aBzFF1LO.js +1 -0
  729. package/dist/file-tree/FileTreeContextMenu.d.ts +18 -0
  730. package/dist/file-tree/documentUtils.d.ts +57 -0
  731. package/dist/file-tree/filetree.d.ts +28 -0
  732. package/dist/file-tree/index.d.ts +8 -0
  733. package/dist/file-tree/useFileTreeOperations.d.ts +27 -0
  734. package/dist/floating-ui.dom-D9FglguG.cjs +1 -0
  735. package/dist/floating-ui.dom-DledU50u.js +1 -0
  736. package/dist/hooks/use-mobile.d.ts +5 -0
  737. package/dist/hooks/useActive.d.ts +24 -0
  738. package/dist/hooks/useAttributes.d.ts +2 -0
  739. package/dist/hooks/useButtonProps.d.ts +4 -0
  740. package/dist/hooks/useCopy.d.ts +8 -0
  741. package/dist/hooks/useExtension.d.ts +4 -0
  742. package/dist/hooks/useLocalStorage.d.ts +13 -0
  743. package/dist/html-to-docx.esm-BSqAFns8.cjs +1 -0
  744. package/dist/html-to-docx.esm-DkztZsL5-DQYdhD3B.cjs +1 -0
  745. package/dist/html-to-docx.esm-DkztZsL5.js +1 -0
  746. package/dist/index.cjs +1 -0
  747. package/dist/index.d.ts +10 -0
  748. package/dist/index.js +1 -0
  749. package/dist/input-AvqqajGM.cjs +1 -0
  750. package/dist/input-CMD6LZFr.js +1 -0
  751. package/dist/isNumber-7Fi2iQVS.js +1 -0
  752. package/dist/isNumber-CmHpmrpR.cjs +1 -0
  753. package/dist/jsx-runtime-BLWGWoMZ.cjs +1 -0
  754. package/dist/jsx-runtime-DqgyBF0N.js +1 -0
  755. package/dist/jszip.min-3Yxv_4wz.cjs +1 -0
  756. package/dist/jszip.min-BUJ6OksG.js +1 -0
  757. package/dist/label-DPSH3PiY.cjs +1 -0
  758. package/dist/label-Dx1mMx8l.js +1 -0
  759. package/dist/layout/Sidebar.d.ts +7 -0
  760. package/dist/layout/sidebar/Sidebar.d.ts +2 -0
  761. package/dist/layout/sidebar/SidebarContent.d.ts +76 -0
  762. package/dist/layout/sidebar/SidebarFooter.d.ts +45 -0
  763. package/dist/layout/sidebar/SidebarToolbar.d.ts +85 -0
  764. package/dist/layout/sidebar/SidebarViewMenu.d.ts +24 -0
  765. package/dist/layout/sidebar/fileSourceUtils.d.ts +2 -0
  766. package/dist/layout/sidebar/index.d.ts +12 -0
  767. package/dist/layout/sidebar/panelOptions.d.ts +29 -0
  768. package/dist/layout/sidebar/types.d.ts +68 -0
  769. package/dist/lib/utils.d.ts +2 -0
  770. package/dist/locale-bundle.cjs +1 -0
  771. package/dist/locale-bundle.d.ts +4 -0
  772. package/dist/locale-bundle.js +1 -0
  773. package/dist/locales/ar.d.ts +201 -0
  774. package/dist/locales/de.d.ts +201 -0
  775. package/dist/locales/en.d.ts +201 -0
  776. package/dist/locales/es.d.ts +201 -0
  777. package/dist/locales/fa.d.ts +201 -0
  778. package/dist/locales/fi.d.ts +201 -0
  779. package/dist/locales/fr.d.ts +201 -0
  780. package/dist/locales/he.d.ts +201 -0
  781. package/dist/locales/hi.d.ts +201 -0
  782. package/dist/locales/hu.d.ts +201 -0
  783. package/dist/locales/index.d.ts +3576 -0
  784. package/dist/locales/it.d.ts +201 -0
  785. package/dist/locales/ja.d.ts +201 -0
  786. package/dist/locales/ko.d.ts +201 -0
  787. package/dist/locales/nl.d.ts +201 -0
  788. package/dist/locales/pt-br.d.ts +201 -0
  789. package/dist/locales/ru.d.ts +201 -0
  790. package/dist/locales/tr.d.ts +201 -0
  791. package/dist/locales/uk.d.ts +201 -0
  792. package/dist/locales/vi.d.ts +201 -0
  793. package/dist/locales/zh-cn.d.ts +201 -0
  794. package/dist/locales-DfkG6-1b.js +1 -0
  795. package/dist/locales-Dg9XL0yP.cjs +1 -0
  796. package/dist/plugins/image-upload.d.ts +13 -0
  797. package/dist/popover-DEGqjF2J.cjs +1 -0
  798. package/dist/popover-DGEv-NbL.js +1 -0
  799. package/dist/reason-docs.cjs +1 -0
  800. package/dist/reason-docs.d.ts +1 -0
  801. package/dist/reason-docs.js +1 -0
  802. package/dist/renderCommandListDefault-CJd5Cd3Q.js +1 -0
  803. package/dist/renderCommandListDefault-CykwYpTX.cjs +1 -0
  804. package/dist/renderNodeView-Bis8Vxth.cjs +1 -0
  805. package/dist/renderNodeView-EV3OWici.js +1 -0
  806. package/dist/rolldown-runtime-BeavJI0R.cjs +1 -0
  807. package/dist/rolldown-runtime-Drgf5FY8-7XpCJKyX.cjs +1 -0
  808. package/dist/rolldown-runtime-Drgf5FY8.js +1 -0
  809. package/dist/search/DynamicIslandTOC.d.ts +14 -0
  810. package/dist/search/OutlineView.d.ts +29 -0
  811. package/dist/search/SearchModal.d.ts +26 -0
  812. package/dist/separator-BHN46aj5.cjs +1 -0
  813. package/dist/separator-CTa6o9S_.js +10 -0
  814. package/dist/shortId-B25DIOpW.cjs +1 -0
  815. package/dist/shortId-COE42cHb.js +1 -0
  816. package/dist/src-C7k3RYxJ.js +646 -0
  817. package/dist/src-DYbBlAjR.cjs +1 -0
  818. package/dist/store/EditorEditableReactive.d.ts +4 -0
  819. package/dist/store/ThemeColorReactive.d.ts +4 -0
  820. package/dist/store/commandList.d.ts +2 -0
  821. package/dist/store/editor.d.ts +21 -0
  822. package/dist/store/store.d.ts +6 -0
  823. package/dist/style.css +5 -0
  824. package/dist/tabs-BovAV0Y3.js +1 -0
  825. package/dist/tabs-CoJRfGS8.cjs +1 -0
  826. package/dist/textarea-BFbGcrSO.cjs +1 -0
  827. package/dist/textarea-uEPOPNqf.js +1 -0
  828. package/dist/theme/theme.d.ts +372 -0
  829. package/dist/theme.cjs +1 -0
  830. package/dist/theme.js +1 -0
  831. package/dist/throttle-BpbN7uB1.js +1 -0
  832. package/dist/throttle-COe5rswR.cjs +1 -0
  833. package/dist/toggle-BXl_NYYh.js +2 -0
  834. package/dist/toggle-CRftKzl0.cjs +1 -0
  835. package/dist/tooltip-CzY0Diit.cjs +1 -0
  836. package/dist/tooltip-DC3DBc55.js +5 -0
  837. package/dist/types.d.ts +223 -0
  838. package/dist/updatePosition-CBT0mUIB.js +1 -0
  839. package/dist/updatePosition-DMu5F8JX.cjs +1 -0
  840. package/dist/useButtonProps-D2Hd5DbR.cjs +1 -0
  841. package/dist/useButtonProps-DSIajp_B.js +1 -0
  842. package/dist/utils/base64.d.ts +5 -0
  843. package/dist/utils/cdn-loader.d.ts +10 -0
  844. package/dist/utils/checkIsVideoUrl.d.ts +4 -0
  845. package/dist/utils/color.d.ts +10 -0
  846. package/dist/utils/columns.d.ts +14 -0
  847. package/dist/utils/customEvents/events.constant.d.ts +9 -0
  848. package/dist/utils/delete-node.d.ts +2 -0
  849. package/dist/utils/dom-dataset.d.ts +31 -0
  850. package/dist/utils/download.d.ts +4 -0
  851. package/dist/utils/dynamicCSS.d.ts +28 -0
  852. package/dist/utils/editor-container-size.d.ts +4 -0
  853. package/dist/utils/file.d.ts +30 -0
  854. package/dist/utils/getRenderContainer.d.ts +3 -0
  855. package/dist/utils/indent.d.ts +14 -0
  856. package/dist/utils/is-mobile.d.ts +22 -0
  857. package/dist/utils/json.d.ts +5 -0
  858. package/dist/utils/lru-cache.d.ts +34 -0
  859. package/dist/utils/mitt.d.ts +24 -0
  860. package/dist/utils/node.d.ts +15 -0
  861. package/dist/utils/pdf.d.ts +3 -0
  862. package/dist/utils/plateform.d.ts +14 -0
  863. package/dist/utils/renderNodeView.d.ts +9 -0
  864. package/dist/utils/shortId.d.ts +4 -0
  865. package/dist/utils/storage.d.ts +7 -0
  866. package/dist/utils/updatePosition.d.ts +4 -0
  867. package/dist/utils/utils.d.ts +20 -0
  868. package/dist/utils/validateFile.d.ts +16 -0
  869. package/dist/which-typed-array-Dj_53908.js +1 -0
  870. package/dist/which-typed-array-MFmINaJW.cjs +1 -0
  871. package/package.json +912 -0
@@ -0,0 +1,3 @@
1
+ import{n as t}from"./toggle-BXl_NYYh.js";import{n as e,r as o,t as n}from"./popover-DGEv-NbL.js";import{c as r,d as i,t as l}from"./useButtonProps-DSIajp_B.js";import a,{useState as s}from"react";import{Fragment as c,jsx as d,jsxs as h}from"react/jsx-runtime";import{Extension as p,Node as u,callOrReturn as b,findParentNodeClosestToPos as f,getExtensionField as g,mergeAttributes as m}from"@tiptap/core";import{TextSelection as w}from"@tiptap/pm/state";import{CellSelection as x,addColumnAfter as y,addColumnBefore as C,addRowAfter as M,addRowBefore as T,columnResizing as v,deleteColumn as A,deleteRow as H,deleteTable as k,fixTables as L,goToNextCell as R,mergeCells as N,setCellAttr as $,splitCell as S,tableEditing as W,toggleHeader as E,toggleHeaderCell as O}from"@tiptap/pm/tables";function j(t){return"left"===t||"right"===t||"center"===t?t:null}function z(){return{default:null,parseHTML:t=>function(t){const e=(t.style.textAlign||"").trim().toLowerCase(),o=(t.getAttribute("align")||"").trim().toLowerCase();return j(e||o)}(t),renderHTML:t=>t.align?{style:`text-align: ${t.align}`}:{}}}function P(t){const e=t.getAttribute("colwidth");return e?e.split(",").map(t=>parseInt(t,10)):function(t){var e;const o=t.parentElement,n=t.closest("table");if(!o||!n)return null;const r=Array.from(o.children).indexOf(t),i=null==(e=n.querySelectorAll("colgroup > col")[r])?void 0:e.getAttribute("width");return i?[parseInt(i,10)]:null}(t)}var B=/[ \t\r\n\f]+/g;function D(t){var e;return!(t.children.length>0)&&""===(null!=(e=t.textContent)?e:"").replace(B,"")}function V(t){const e=t.createAndFill();if(!e)throw new Error(`[tiptap error]: "${t.name}" has no default content to backfill.`);return e.content}var I=u.create({name:"tableCell",addOptions:()=>({HTMLAttributes:{}}),content:"block+",addAttributes:()=>({colspan:{default:1},rowspan:{default:1},colwidth:{default:null,parseHTML:P},align:z()}),tableRole:"cell",isolating:!0,parseHTML(){return[{tag:"td",getAttrs:t=>!!D(t)&&{},getContent:(t,e)=>V(e.nodes[this.name])},{tag:"td"}]},renderHTML({HTMLAttributes:t}){return["td",m(this.options.HTMLAttributes,t),0]}}),F=u.create({name:"tableHeader",addOptions:()=>({HTMLAttributes:{}}),content:"block+",addAttributes:()=>({colspan:{default:1},rowspan:{default:1},colwidth:{default:null,parseHTML:P},align:z()}),tableRole:"header_cell",isolating:!0,parseHTML(){return[{tag:"th",getAttrs:t=>!!D(t)&&{},getContent:(t,e)=>V(e.nodes[this.name])},{tag:"th"}]},renderHTML({HTMLAttributes:t}){return["th",m(this.options.HTMLAttributes,t),0]}}),q=u.create({name:"tableRow",addOptions:()=>({HTMLAttributes:{}}),content:"(tableCell | tableHeader)*",tableRole:"row",parseHTML:()=>[{tag:"tr"}],renderHTML({HTMLAttributes:t}){return["tr",m(this.options.HTMLAttributes,t),0]}});function K(t,e){return e?["width",`${Math.max(e,t)}px`]:["min-width",`${t}px`]}function _(t,e,o,n,r,i){var l;let a=0,s=!0,c=e.firstChild;const d=t.firstChild;if(null!==d)for(let p=0,u=0;p<d.childCount;p+=1){const{colspan:t,colwidth:o}=d.child(p).attrs;for(let l=0;l<t;l+=1,u+=1){const t=r===u?i:o&&o[l],d=t?`${t}px`:"";if(a+=t||n,t||(s=!1),c){if(c.style.width!==d){const[e,o]=K(n,t);c.style.setProperty(e,o)}c=c.nextSibling}else{const o=document.createElement("col"),[r,i]=K(n,t);o.style.setProperty(r,i),e.appendChild(o)}}}for(;c;){const t=c.nextSibling;null==(l=c.parentNode)||l.removeChild(c),c=t}const h=t.attrs.style&&"string"==typeof t.attrs.style&&/\bwidth\s*:/i.test(t.attrs.style);s&&!h?(o.style.width=`${a}px`,o.style.minWidth=""):(o.style.width="",o.style.minWidth=`${a}px`)}var G=class{constructor(t,e,o,n={}){this.node=t,this.cellMinWidth=e,this.dom=document.createElement("div"),this.dom.className="tableWrapper",this.table=this.dom.appendChild(document.createElement("table"));for(const[r,i]of Object.entries(n))null!=i&&("style"===r?this.table.style.cssText=String(i):this.table.setAttribute(r,String(i)));t.attrs.style&&(this.table.style.cssText=t.attrs.style),this.colgroup=this.table.appendChild(document.createElement("colgroup")),_(t,this.colgroup,this.table,e),this.contentDOM=this.table.appendChild(document.createElement("tbody"))}update(t){return t.type===this.node.type&&(this.node=t,_(t,this.colgroup,this.table,this.cellMinWidth),!0)}ignoreMutation(t){const e=t.target,o=this.dom.contains(e),n=this.contentDOM.contains(e);return!(!o||n||"attributes"!==t.type&&"childList"!==t.type&&"characterData"!==t.type)}};function J(t,e){return e?t.createChecked(null,e):t.createAndFill()}function Q(t,e,o,n,r){const i=function(t){if(t.cached.tableNodeTypes)return t.cached.tableNodeTypes;const e={};return Object.keys(t.nodes).forEach(o=>{const n=t.nodes[o];n.spec.tableRole&&(e[n.spec.tableRole]=n)}),t.cached.tableNodeTypes=e,e}(t),l=[],a=[];for(let c=0;c<o;c+=1){const t=J(i.cell,r);if(t&&a.push(t),n){const t=J(i.header_cell,r);t&&l.push(t)}}const s=[];for(let c=0;c<e;c+=1)s.push(i.row.createChecked(null,n&&0===c?l:a));return i.table.createChecked(null,s)}var U=({editor:t})=>{const{selection:e}=t.state;if(!(e instanceof x))return!1;let o=0;return f(e.ranges[0].$from,t=>"table"===t.type.name)?.node.descendants(t=>{if("table"===t.type.name)return!1;["tableCell","tableHeader"].includes(t.type.name)&&(o+=1)}),o===e.ranges.length&&(t.commands.deleteTable(),!0)};var X=function(t,e,o={}){var n;const r=null!=(n=o.cellLineSeparator)?n:"";if(!t||!t.content||0===t.content.length)return"";const i=[];t.content.forEach(t=>{const o=[];t.content&&t.content.forEach(t=>{let n="";n=t.content&&Array.isArray(t.content)&&t.content.length>1?t.content.map(t=>e.renderChildren(t)).join(r):t.content?e.renderChildren(t.content):"";const i=(n.split(r).join("\n").replace(/[ \t]*\r?\n[ \t]*/g,"<br>")||"").replace(/\s+/g," ").trim();const l="tableHeader"===t.type,a=j(null==(s=t.attrs)?void 0:s.align);var s;o.push({text:i,isHeader:l,align:a})}),i.push(o)});const l=i.reduce((t,e)=>Math.max(t,e.length),0);if(0===l)return"";const a=Array.from({length:l}).fill(0);i.forEach(t=>{var e;for(let o=0;o<l;o+=1){const n=((null==(e=t[o])?void 0:e.text)||"").length;n>a[o]&&(a[o]=n),a[o]<3&&(a[o]=3)}});const s=(t,e)=>t+" ".repeat(Math.max(0,e-t.length)),c=i[0],d=c.some(t=>t.isHeader),h=Array.from({length:l}).fill(null);i.forEach(t=>{var e;for(let o=0;o<l;o+=1)!h[o]&&(null==(e=t[o])?void 0:e.align)&&(h[o]=t[o].align)});let p="\n";const u=Array.from({length:l}).map((t,e)=>d&&c[e]&&c[e].text||"");return p+=`| ${u.map((t,e)=>s(t,a[e])).join(" | ")} |\n`,p+=`| ${a.map((t,e)=>{const o=Math.max(3,t),n=h[e];return"left"===n?`:${"-".repeat(o)}`:"right"===n?`${"-".repeat(o)}:`:"center"===n?`:${"-".repeat(o)}:`:"-".repeat(o)}).join(" | ")} |\n`,(d?i.slice(1):i).forEach(t=>{p+=`| ${Array.from({length:l}).fill(0).map((e,o)=>s(t[o]&&t[o].text||"",a[o])).join(" | ")} |\n`}),p},Y=u.create({name:"table",addOptions:()=>({HTMLAttributes:{},resizable:!1,renderWrapper:!1,handleWidth:5,cellMinWidth:25,View:G,lastColumnResizable:!0,allowTableNodeSelection:!1}),content:"tableRow+",tableRole:"table",isolating:!0,group:"block",parseHTML:()=>[{tag:"table"}],renderHTML({node:t,HTMLAttributes:e}){const{colgroup:o,tableWidth:n,tableMinWidth:r}=function(t,e,o,n){let r=0,i=!0;const l=[],a=t.firstChild;if(!a)return{};for(let d=0,h=0;d<a.childCount;d+=1){const{colspan:t,colwidth:s}=a.child(d).attrs;for(let a=0;a<t;a+=1,h+=1){const t=o===h?n:s&&s[a];r+=t||e,t||(i=!1);const[c,d]=K(e,t);l.push(["col",{style:`${c}: ${d}`}])}}const s=i?`${r}px`:"",c=i?"":`${r}px`;return{colgroup:["colgroup",{},...l],tableWidth:s,tableMinWidth:c}}(t,this.options.cellMinWidth),i=e.style;const l=["table",m(this.options.HTMLAttributes,e,{style:i||(n?`width: ${n}`:`min-width: ${r}`)}),o,["tbody",0]];return this.options.renderWrapper?["div",{class:"tableWrapper"},l]:l},parseMarkdown:(t,e)=>{const o=[],n=Array.isArray(t.align)?t.align:[];if(t.header){const r=[];t.header.forEach((t,o)=>{var i;const l=j(null!=(i=n[o])?i:t.align),a=l?{align:l}:{};r.push(e.createNode("tableHeader",a,[{type:"paragraph",content:e.parseInline(t.tokens)}]))}),o.push(e.createNode("tableRow",{},r))}return t.rows&&t.rows.forEach(t=>{const r=[];t.forEach((t,o)=>{var i;const l=j(null!=(i=n[o])?i:t.align),a=l?{align:l}:{};r.push(e.createNode("tableCell",a,[{type:"paragraph",content:e.parseInline(t.tokens)}]))}),o.push(e.createNode("tableRow",{},r))}),e.createNode("table",void 0,o)},renderMarkdown:(t,e)=>X(t,e),markdownTokenizer:{name:"table",level:"block",start:t=>{const e=t.split("\n");if(e.length<2)return-1;const o=e[1];return/^[ \t|:]*-[ \t|:-]*$/.test(o)&&o.includes("|")&&e[0].includes("|")?0:-1},tokenize(t,e,o){const n=t.indexOf("\n\n"),r=n>=0?t.slice(0,n):t,i=r.split("\n");if(i.length<2)return;const l=i[1];if(!/^[ \t|:]*-[ \t|:-]*$/.test(l)||!l.includes("|"))return;const a=function(t){return t.split("\n").map(t=>t.includes("|")&&t.includes("`")?function(t){let e="",o=0;for(;o<t.length;){if("\\"===t[o]&&o+1<t.length){e+=t[o]+t[o+1],o+=2;continue}if("`"!==t[o]){e+=t[o++];continue}let n=0;for(;o+n<t.length&&"`"===t[o+n];)n+=1;let r=o+n,i=!1;for(;r<t.length;){if("`"!==t[r]){r+=1;continue}let l=0;for(;r+l<t.length&&"`"===t[r+l];)l+=1;if(l===n){const l=t.slice(o+n,r);e+=t.slice(o,o+n)+l.replace(/(?<!\\)\|/g,"\\|")+t.slice(r,r+n),o=r+n,i=!0;break}r+=l}i||(e+=t.slice(o,o+n),o+=n)}return e}(t):t).join("\n")}(r);if(a===r)return;const s=o.blockTokens(a)[0];if("table"!==(null==s?void 0:s.type)||!s.raw)return;const c=s.raw.split("\n").length,d=t.split("\n").slice(0,c).join("\n");return{...s,raw:d}}},addCommands:()=>({insertTable:({rows:t=3,cols:e=3,withHeaderRow:o=!0}={})=>({tr:n,dispatch:r,editor:i})=>{const l=Q(i.schema,t,e,o);if(r){const t=n.selection.from+1;n.replaceSelectionWith(l).scrollIntoView().setSelection(w.near(n.doc.resolve(t)))}return!0},addColumnBefore:()=>({state:t,dispatch:e})=>C(t,e),addColumnAfter:()=>({state:t,dispatch:e})=>y(t,e),deleteColumn:()=>({state:t,dispatch:e})=>A(t,e),addRowBefore:()=>({state:t,dispatch:e})=>T(t,e),addRowAfter:()=>({state:t,dispatch:e})=>M(t,e),deleteRow:()=>({state:t,dispatch:e})=>H(t,e),deleteTable:()=>({state:t,dispatch:e})=>k(t,e),mergeCells:()=>({state:t,dispatch:e})=>N(t,e),splitCell:()=>({state:t,dispatch:e})=>S(t,e),toggleHeaderColumn:()=>({state:t,dispatch:e})=>E("column")(t,e),toggleHeaderRow:()=>({state:t,dispatch:e})=>E("row")(t,e),toggleHeaderCell:()=>({state:t,dispatch:e})=>O(t,e),mergeOrSplit:()=>({state:t,dispatch:e})=>!!N(t,e)||S(t,e),setCellAttribute:(t,e)=>({state:o,dispatch:n})=>$(t,e)(o,n),goToNextCell:()=>({state:t,dispatch:e})=>R(1)(t,e),goToPreviousCell:()=>({state:t,dispatch:e})=>R(-1)(t,e),fixTables:()=>({state:t,dispatch:e})=>(e&&L(t),!0),setCellSelection:t=>({tr:e,dispatch:o})=>{if(o){const o=x.create(e.doc,t.anchorCell,t.headCell);e.setSelection(o)}return!0}}),addKeyboardShortcuts(){return{Tab:()=>!!this.editor.commands.goToNextCell()||!!this.editor.can().addRowAfter()&&this.editor.chain().addRowAfter().goToNextCell().run(),"Shift-Tab":()=>this.editor.commands.goToPreviousCell(),Backspace:U,"Mod-Backspace":U,Delete:U,"Mod-Delete":U}},addProseMirrorPlugins(){return[...this.options.resizable&&this.editor.isEditable?[v({handleWidth:this.options.handleWidth,cellMinWidth:this.options.cellMinWidth,defaultCellMinWidth:this.options.cellMinWidth,View:this.options.View,lastColumnResizable:this.options.lastColumnResizable})]:[],W({allowTableNodeSelection:this.options.allowTableNodeSelection})]},addNodeView(){const t=this.options.resizable&&this.editor.isEditable,e=this.options.View;return t||!e?null:({node:t,view:o,HTMLAttributes:n})=>{const r=m(this.options.HTMLAttributes,n);return new e(t,this.options.cellMinWidth,o,r)}},extendNodeSchema(t){const e={name:t.name,options:t.options,storage:t.storage};return{tableRole:b(g(t,"tableRole",e))}}});p.create({name:"tableKit",addExtensions(){const t=[];return!1!==this.options.table&&t.push(Y.configure(this.options.table)),!1!==this.options.tableCell&&t.push(I.configure(this.options.tableCell)),!1!==this.options.tableHeader&&t.push(F.configure(this.options.tableHeader)),!1!==this.options.tableRow&&t.push(q.configure(this.options.tableRow)),t}});function Z(t,e){return({tr:e,state:o,dispatch:n})=>{const{selection:r}=o;return e=function(t,e,o){const{doc:n,selection:r}=t;return n&&r&&r instanceof x?(r.forEachCell((e,n)=>{t=function(t,e,o){if(!t.doc)return t;const n=t.doc.nodeAt(e);if(!n)return t;if(o===n.attrs.backgroundColor)return t;const r={...n.attrs,backgroundColor:o};return t.setNodeMarkup(e,n.type,r,n.marks)}(t,n,o)}),t):t}(e=e.setSelection(r),0,t),!!e.docChanged&&(n?.(e),!0)}}var tt=p.create({name:"tableCellBackground",addOptions:()=>({types:["tableCell"],HTMLAttributes:{}}),addGlobalAttributes(){return[{types:this.options.types,attributes:{backgroundColor:{parseHTML:t=>t.style.backgroundColor||"",renderHTML:t=>t.backgroundColor&&""!==t.backgroundColor?{style:`background-color: ${t.backgroundColor}`}:{}}}}]},addCommands(){return{setTableCellBackground:t=>Z(t,this.options),unsetTableCellBackground:()=>Z("",this.options)}}}),et=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,ot=/CrOS/,nt=/android|ipad|playbook|silk/i;function rt(t={}){let e=t.ua||"undefined"!=typeof navigator&&navigator.userAgent;return e&&"object"==typeof e&&e.headers&&"string"==typeof e.headers["user-agent"]&&(e=e.headers["user-agent"]),"string"==typeof e&&(!(!et.test(e)||ot.test(e))||(!(!t.tablet||!nt.test(e))||!!(t.tablet&&t.featureDetect&&navigator&&navigator.maxTouchPoints>1&&e.includes("Macintosh")&&e.includes("Safari"))))}var it=t=>Array.from({length:t}).map((t,e)=>e+1);function lt(t){const[r,i]=s(!1),[l,a]=s(!0),[c,p]=s({rows:(rt(),10),cols:(rt(),10)}),[u,b]=s({rows:2,cols:2});function f(e,o){t?.createTable({rows:e,cols:o,withHeaderRow:l}),a(!1),p({rows:10,cols:10}),b({rows:2,cols:2}),i(!1)}/* @__PURE__ */
2
+ return h(n,{modal:!0,onOpenChange:i,open:r,children:[/* @__PURE__ */d(o,{asChild:!0,"data-state":t?.dataState?"on":"off",children:t?.children}),/* @__PURE__ */d(e,{align:"start",className:"richtext-w-full !richtext-p-2",side:"bottom",children:/* @__PURE__ */h("div",{className:"table-grid-size-editor richtext-p-0",children:[/* @__PURE__ */d("div",{className:"richtext-flex richtext-flex-col richtext-flex-wrap richtext-justify-between richtext-gap-1",children:it(c?.rows)?.map(t=>/* @__PURE__ */d("div",{className:"richtext-flex richtext-gap-1",children:it(c?.cols)?.map(e=>/* @__PURE__ */d("div",{onMouseDown:()=>f(t,e),onMouseOver:()=>{return n=e,(o=t)===c.rows&&p(t=>({...t,rows:Math.min(o+1,10)})),n===c.cols&&p(t=>({...t,cols:Math.min(n+1,10)})),void b({rows:o,cols:n});var o,n},className:`richtext-cursor-pointer richtext-border-border ${e<=u.cols&&t<=u.rows&&"tableCellActive !richtext-bg-foreground"}`,children:/* @__PURE__ */d("div",{className:"richtext-box-border richtext-size-4 richtext-rounded-[2px] !richtext-border richtext-border-solid !richtext-border-border richtext-p-1"})},`richtext-table-col-${e}`))},`richtext-table-row-${t}`))}),/* @__PURE__ */h("div",{className:"richtext-mt-2 richtext-text-center richtext-text-sm richtext-text-foreground",children:[u.rows,"x",u.cols]})]})})]})}function at(){const e=i(),o=l(st.name),{icon:n,tooltip:a,action:s,isActive:h,color:p}=o?.componentProps??{},{dataState:u,disabled:b}=r(h);if(!o)/* @__PURE__ */return d(c,{});/* @__PURE__ */
3
+ return d(lt,{createTable:function(t){e.chain().focus().insertTable({...t,withHeaderRow:!1}).run()},dataState:u,children:/* @__PURE__ */d(t,{action:s,color:p,dataState:u,icon:n,isActive:h,tooltip:a,disabled:b})})}var st=Y.extend({addOptions(){return{...this.parent?.(),HTMLAttributes:{style:"\n border: 1px solid #000;\n border-collapse: collapse;\n width: 100%;\n "},resizable:!0,lastColumnResizable:!0,allowTableNodeSelection:!1,button:({editor:t,t:e})=>({componentProps:{isActive:()=>t.isActive("table"),icon:"Table",tooltip:e("editor.table.tooltip")}})}},addExtensions(){return[q.configure(this.options.tableRow),F.configure(this.options.tableHeader),I.configure(this.options.tableCell),tt.configure(this.options.tableCellBackground)]}});export{at as n,st as t};
package/dist/Table.cjs ADDED
@@ -0,0 +1 @@
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./rolldown-runtime-BeavJI0R.cjs");const e=require("./Table-B4KNW7Yq.cjs");exports.RichTextTable=e.RichTextTable,exports.Table=e.Table;
package/dist/Table.js ADDED
@@ -0,0 +1 @@
1
+ import{n as a,t as o}from"./Table-C9t-k9Qu.js";export{a as RichTextTable,o as Table};
@@ -0,0 +1 @@
1
+ Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});require("./rolldown-runtime-BeavJI0R.cjs");let e=require("@tiptap/core"),t=require("@tiptap/pm/state"),o=require("@tiptap/pm/view");var n=e.Extension.create({name:"tableOfContents",addOptions:()=>({levels:[1,2,3]}),addStorage:()=>({toc:[]}),addProseMirrorPlugins(){const e=this;return[new t.Plugin({key:new t.PluginKey("tableOfContents"),state:{init:()=>({toc:[],decorationSet:o.DecorationSet.empty}),apply(t,n,r,i){const a=[];return i.doc.descendants((t,o)=>{if("heading"===t.type.name){const n=t.attrs.level;if(e.options.levels.includes(n)){const e=t.attrs.id||`heading-${o}`,r=t.textContent;a.push({id:e,level:n,title:r,textContent:r,position:o,isActive:!1,isScrolledOver:!1})}}}),e.storage.toc=a,{toc:a,decorationSet:o.DecorationSet.empty}}},props:{decorations(e){return this.getState(e)?.decorationSet||o.DecorationSet.empty}}})]},addKeyboardShortcuts:()=>({})});exports.TableOfContents=n,exports.default=n;
@@ -0,0 +1 @@
1
+ import{Extension as t}from"@tiptap/core";import{Plugin as e,PluginKey as o}from"@tiptap/pm/state";import{DecorationSet as n}from"@tiptap/pm/view";var r=t.create({name:"tableOfContents",addOptions:()=>({levels:[1,2,3]}),addStorage:()=>({toc:[]}),addProseMirrorPlugins(){const t=this;return[new e({key:new o("tableOfContents"),state:{init:()=>({toc:[],decorationSet:n.empty}),apply(e,o,r,i){const a=[];return i.doc.descendants((e,o)=>{if("heading"===e.type.name){const n=e.attrs.level;if(t.options.levels.includes(n)){const t=e.attrs.id||`heading-${o}`,r=e.textContent;a.push({id:t,level:n,title:r,textContent:r,position:o,isActive:!1,isScrolledOver:!1})}}}),t.storage.toc=a,{toc:a,decorationSet:n.empty}}},props:{decorations(t){return this.getState(t)?.decorationSet||n.empty}}})]},addKeyboardShortcuts:()=>({})});export{r as TableOfContents,r as default};
@@ -0,0 +1 @@
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./rolldown-runtime-BeavJI0R.cjs");const t=require("./toggle-CRftKzl0.cjs"),s=require("./useButtonProps-D2Hd5DbR.cjs"),e=require("./dist-ICzvPVCE.cjs");let o=require("react/jsx-runtime");var i=e.TaskList.extend({addOptions(){return{...this.parent?.(),HTMLAttributes:{class:"task-list"},taskItem:{HTMLAttributes:{class:"task-list-item"}},button:({editor:t,t:s,extension:e})=>({componentProps:{action:()=>t.commands.toggleTaskList(),isActive:()=>t.isActive("taskList"),disabled:!1,icon:"ListTodo",shortcutKeys:e.options.shortcutKeys??["shift","mod","9"],tooltip:s("editor.tasklist.tooltip")}})}},addExtensions(){return[e.TaskItem.configure(this.options.taskItem)]}});exports.RichTextTaskList=function(){const e=s.useButtonProps(i.name),{icon:n,tooltip:r,shortcutKeys:a,tooltipOptions:c={},action:u,isActive:d}=e?.componentProps??{},{dataState:l,disabled:p,update:m}=s.useToggleActive(d);return e?(0,o.jsx)(t.ActionButton,{action:()=>{p||u&&(u(),m())},dataState:l,disabled:p,icon:n,shortcutKeys:a,tooltip:r,tooltipOptions:c}):(0,o.jsx)(o.Fragment,{})},exports.TaskList=i;
@@ -0,0 +1 @@
1
+ import{n as t}from"./toggle-BXl_NYYh.js";import{c as o,t as s}from"./useButtonProps-DSIajp_B.js";import{a as i,i as e}from"./dist-BEFKWXG8.js";import{Fragment as a,jsx as n}from"react/jsx-runtime";function r(){const i=s(c.name),{icon:e,tooltip:r,shortcutKeys:p,tooltipOptions:d={},action:m,isActive:l}=i?.componentProps??{},{dataState:u,disabled:f,update:h}=o(l);return i?/* @__PURE__ */n(t,{action:()=>{f||m&&(m(),h())},dataState:u,disabled:f,icon:e,shortcutKeys:p,tooltip:r,tooltipOptions:d}):/* @__PURE__ */n(a,{})}var c=i.extend({addOptions(){return{...this.parent?.(),HTMLAttributes:{class:"task-list"},taskItem:{HTMLAttributes:{class:"task-list-item"}},button:({editor:t,t:o,extension:s})=>({componentProps:{action:()=>t.commands.toggleTaskList(),isActive:()=>t.isActive("taskList"),disabled:!1,icon:"ListTodo",shortcutKeys:s.options.shortcutKeys??["shift","mod","9"],tooltip:o("editor.tasklist.tooltip")}})}},addExtensions(){return[e.configure(this.options.taskItem)]}});export{r as RichTextTaskList,c as TaskList};
@@ -0,0 +1 @@
1
+ const t=require("./rolldown-runtime-BeavJI0R.cjs"),e=require("./tooltip-CzY0Diit.cjs"),i=require("./toggle-CRftKzl0.cjs"),n=require("./Icon-DQdA22_-.cjs"),s=require("./popover-DEGqjF2J.cjs"),o=require("./useButtonProps-D2Hd5DbR.cjs");let r=require("react");r=t.__toESM(r,1);let l=require("react/jsx-runtime");function c(){const[t,c]=r.default.useState(!1),d=o.useButtonProps(a.name),{icon:h,tooltip:u,items:x=[],isActive:m}=d?.componentProps??{},{disabled:p,dataState:g}=o.useActive(m),A=(0,r.useMemo)(()=>g?.title||"",[g]),f=(0,r.useMemo)(()=>x?.some(t=>t.title===A),[x,A]);return d?(0,l.jsxs)(s.Popover,{modal:!0,onOpenChange:c,open:t,children:[(0,l.jsx)(s.PopoverTrigger,{asChild:!0,className:"hover:richtext-bg-accent data-[state=on]:richtext-bg-accent","data-state":f?"on":"off",disabled:p,children:(0,l.jsx)(i.ActionButton,{customClass:"!richtext-w-12 richtext-h-12",disabled:p,icon:h,tooltip:u,children:(0,l.jsx)(n.IconComponent,{className:"richtext-ml-1 richtext-size-3 richtext-text-zinc-500",name:"MenuDown"})})}),(0,l.jsx)(s.PopoverContent,{align:"start",className:"richtext-flex richtext-w-full richtext-min-w-4 richtext-flex-row richtext-gap-1 !richtext-p-[4px]",side:"bottom",children:x?.map((t,s)=>(0,l.jsxs)(e.Tooltip,{children:[(0,l.jsx)(e.TooltipTrigger,{asChild:!0,children:(0,l.jsx)(i.Toggle,{className:"richtext-size-7 richtext-p-1","data-state":A===t.title?"on":"off",size:"sm",onClick:()=>{t?.action(),c(!1)},children:t?.icon&&(0,l.jsx)(n.IconComponent,{name:t.icon})})}),(0,l.jsxs)(e.TooltipContent,{className:"richtext-flex richtext-flex-col richtext-items-center",children:[(0,l.jsx)("span",{children:t.title}),!!t.shortcutKeys?.length&&(0,l.jsx)("span",{children:t.shortcutKeys?.map(t=>e.getShortcutKey(t)).join(" ")})]})]},`text-align-${s}`))})]}):(0,l.jsx)(l.Fragment,{})}var a=require("@tiptap/core").Extension.create({name:"textAlign",addOptions:()=>({types:[],alignments:["left","center","right","justify"],defaultAlignment:null}),addGlobalAttributes(){return[{types:this.options.types,attributes:{textAlign:{default:this.options.defaultAlignment,parseHTML:t=>{const e=t.style.textAlign;return this.options.alignments.includes(e)?e:this.options.defaultAlignment},renderHTML:t=>t.textAlign?{style:`text-align: ${t.textAlign}`}:{}}}}]},addCommands(){return{setTextAlign:t=>({commands:e})=>!!this.options.alignments.includes(t)&&this.options.types.map(i=>e.updateAttributes(i,{textAlign:t})).some(t=>t),unsetTextAlign:()=>({commands:t})=>this.options.types.map(e=>t.resetAttributes(e,"textAlign")).some(t=>t),toggleTextAlign:t=>({editor:e,commands:i})=>!!this.options.alignments.includes(t)&&(e.isActive({textAlign:t})?i.unsetTextAlign():i.setTextAlign(t))}},addKeyboardShortcuts(){return{"Mod-Shift-l":()=>this.editor.commands.setTextAlign("left"),"Mod-Shift-e":()=>this.editor.commands.setTextAlign("center"),"Mod-Shift-r":()=>this.editor.commands.setTextAlign("right"),"Mod-Shift-j":()=>this.editor.commands.setTextAlign("justify")}}}).extend({addOptions(){return{...this.parent?.(),types:["heading","paragraph","list_item","title"],button({editor:t,extension:e,t:i}){const n=e.options?.alignments||[],s={left:e.options.shortcutKeys?.[0]??["mod","Shift","L"],center:e.options.shortcutKeys?.[1]??["mod","Shift","E"],right:e.options.shortcutKeys?.[2]??["mod","Shift","R"],justify:e.options.shortcutKeys?.[3]??["mod","Shift","J"]},o={left:"AlignLeft",center:"AlignCenter",right:"AlignRight",justify:"AlignJustify"},r=n.map(e=>({title:i(`editor.textalign.${e}.tooltip`),icon:o[e],shortcutKeys:s[e],isActive:()=>t.isActive({textAlign:e})||!1,action:()=>t.commands?.setTextAlign?.(e),disabled:!t?.can?.()?.setTextAlign?.(e)}));return{componentProps:{icon:"AlignJustify",tooltip:i("editor.textalign.tooltip"),items:r,isActive:()=>r?.find(t=>t.isActive())}}}}}});Object.defineProperty(exports,"RichTextAlign",{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,"TextAlign",{enumerable:!0,get:function(){return a}});
@@ -0,0 +1 @@
1
+ import{a as t,i as e,n as i,t as s}from"./tooltip-DC3DBc55.js";import{n,t as o}from"./toggle-BXl_NYYh.js";import{t as r}from"./Icon-CJJ9AQtR.js";import{n as a,r as l,t as c}from"./popover-DGEv-NbL.js";import{s as m,t as d}from"./useButtonProps-DSIajp_B.js";import h,{useMemo as p}from"react";import{Fragment as g,jsx as x,jsxs as u}from"react/jsx-runtime";import{Extension as f}from"@tiptap/core";function A(){const[f,A]=h.useState(!1),b=d(y.name),{icon:T,tooltip:j,items:S=[],isActive:v}=b?.componentProps??{},{disabled:K,dataState:C}=m(v),M=p(()=>C?.title||"",[C]),w=p(()=>S?.some(t=>t.title===M),[S,M]);return b?/* @__PURE__ */u(c,{modal:!0,onOpenChange:A,open:f,children:[/* @__PURE__ */x(l,{asChild:!0,className:"hover:richtext-bg-accent data-[state=on]:richtext-bg-accent","data-state":w?"on":"off",disabled:K,children:/* @__PURE__ */x(n,{customClass:"!richtext-w-12 richtext-h-12",disabled:K,icon:T,tooltip:j,children:/* @__PURE__ */x(r,{className:"richtext-ml-1 richtext-size-3 richtext-text-zinc-500",name:"MenuDown"})})}),/* @__PURE__ */x(a,{align:"start",className:"richtext-flex richtext-w-full richtext-min-w-4 richtext-flex-row richtext-gap-1 !richtext-p-[4px]",side:"bottom",children:S?.map((n,a)=>/* @__PURE__ */u(s,{children:[/* @__PURE__ */x(e,{asChild:!0,children:/* @__PURE__ */x(o,{className:"richtext-size-7 richtext-p-1","data-state":M===n.title?"on":"off",size:"sm",onClick:()=>{n?.action(),A(!1)},children:n?.icon&&/* @__PURE__ */x(r,{name:n.icon})})}),/* @__PURE__ */u(i,{className:"richtext-flex richtext-flex-col richtext-items-center",children:[/* @__PURE__ */x("span",{children:n.title}),!!n.shortcutKeys?.length&&/* @__PURE__ */x("span",{children:n.shortcutKeys?.map(e=>t(e)).join(" ")})]})]},`text-align-${a}`))})]}):/* @__PURE__ */x(g,{})}var y=f.create({name:"textAlign",addOptions:()=>({types:[],alignments:["left","center","right","justify"],defaultAlignment:null}),addGlobalAttributes(){return[{types:this.options.types,attributes:{textAlign:{default:this.options.defaultAlignment,parseHTML:t=>{const e=t.style.textAlign;return this.options.alignments.includes(e)?e:this.options.defaultAlignment},renderHTML:t=>t.textAlign?{style:`text-align: ${t.textAlign}`}:{}}}}]},addCommands(){return{setTextAlign:t=>({commands:e})=>!!this.options.alignments.includes(t)&&this.options.types.map(i=>e.updateAttributes(i,{textAlign:t})).some(t=>t),unsetTextAlign:()=>({commands:t})=>this.options.types.map(e=>t.resetAttributes(e,"textAlign")).some(t=>t),toggleTextAlign:t=>({editor:e,commands:i})=>!!this.options.alignments.includes(t)&&(e.isActive({textAlign:t})?i.unsetTextAlign():i.setTextAlign(t))}},addKeyboardShortcuts(){return{"Mod-Shift-l":()=>this.editor.commands.setTextAlign("left"),"Mod-Shift-e":()=>this.editor.commands.setTextAlign("center"),"Mod-Shift-r":()=>this.editor.commands.setTextAlign("right"),"Mod-Shift-j":()=>this.editor.commands.setTextAlign("justify")}}}).extend({addOptions(){return{...this.parent?.(),types:["heading","paragraph","list_item","title"],button({editor:t,extension:e,t:i}){const s=e.options?.alignments||[],n={left:e.options.shortcutKeys?.[0]??["mod","Shift","L"],center:e.options.shortcutKeys?.[1]??["mod","Shift","E"],right:e.options.shortcutKeys?.[2]??["mod","Shift","R"],justify:e.options.shortcutKeys?.[3]??["mod","Shift","J"]},o={left:"AlignLeft",center:"AlignCenter",right:"AlignRight",justify:"AlignJustify"},r=s.map(e=>({title:i(`editor.textalign.${e}.tooltip`),icon:o[e],shortcutKeys:n[e],isActive:()=>t.isActive({textAlign:e})||!1,action:()=>t.commands?.setTextAlign?.(e),disabled:!t?.can?.()?.setTextAlign?.(e)}));return{componentProps:{icon:"AlignJustify",tooltip:i("editor.textalign.tooltip"),items:r,isActive:()=>r?.find(t=>t.isActive())}}}}}});export{A as n,y as t};
@@ -0,0 +1 @@
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./rolldown-runtime-BeavJI0R.cjs");const e=require("./TextAlign-6ElUYI4_.cjs");exports.RichTextAlign=e.RichTextAlign,exports.TextAlign=e.TextAlign;
@@ -0,0 +1 @@
1
+ import{n as t,t as o}from"./TextAlign-C75gn_OM.js";export{t as RichTextAlign,o as TextAlign};
@@ -0,0 +1 @@
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./rolldown-runtime-BeavJI0R.cjs"),e=require("./tooltip-CzY0Diit.cjs"),i=require("./toggle-CRftKzl0.cjs"),o=require("./Icon-DQdA22_-.cjs"),r=require("./popover-DEGqjF2J.cjs"),n=require("./useButtonProps-D2Hd5DbR.cjs");let s=require("react");s=t.__toESM(s,1);let c=require("react/jsx-runtime");var a=require("@tiptap/core").Extension.create({name:"richTextTextDirection",addOptions(){return{...this.parent?.(),directions:["auto","ltr","rtl","unset"],defaultDirection:"auto",button({editor:t,extension:e,t:i}){const o=e.options?.directions||[],r={auto:"TextDirection",ltr:"LeftToRight",rtl:"RightToLeft",unset:"X"},n=o.map(e=>({title:i(`editor.textDirection.${e}.tooltip`),value:e,icon:r[e],action:()=>{"unset"!==e?t.commands?.setTextDirection?.(e):t.commands?.unsetTextDirection?.()},disabled:!1}));return{componentProps:{icon:"TextDirection",tooltip:i("editor.textDirection.tooltip"),items:n,isActive:()=>t.getAttributes("paragraph")}}}}}});exports.RichTextTextDirection=function(){const t=n.useButtonProps(a.name),[l,x]=s.default.useState(!1),{icon:u,tooltip:p,items:h=[],isActive:d}=t?.componentProps??{},{editorDisabled:m,dataState:j}=n.useActive(d),g=(0,s.useMemo)(()=>j?.dir||"unset",[j]);return t?(0,c.jsxs)(r.Popover,{open:l,onOpenChange:x,modal:!0,children:[(0,c.jsx)(r.PopoverTrigger,{asChild:!0,disabled:m,children:(0,c.jsx)(i.ActionButton,{customClass:"!richtext-w-12 richtext-h-12",disabled:m,icon:u,tooltip:p,children:(0,c.jsx)(o.IconComponent,{className:"richtext-ml-1 richtext-size-3 richtext-text-zinc-500",name:"MenuDown"})})}),(0,c.jsx)(r.PopoverContent,{align:"start",className:"richtext-flex richtext-w-full richtext-min-w-4 richtext-flex-row richtext-gap-1 !richtext-p-[4px]",side:"bottom",hideWhenDetached:!0,children:h?.map((t,r)=>(0,c.jsxs)(e.Tooltip,{children:[(0,c.jsx)(e.TooltipTrigger,{"data-state":g===t.value?"on":"off",asChild:!0,children:(0,c.jsx)(i.Toggle,{className:"richtext-size-7 richtext-p-1",onClick:()=>{t?.action(),x(!1)},size:"sm",children:t?.icon&&(0,c.jsx)(o.IconComponent,{name:t.icon})})}),(0,c.jsxs)(e.TooltipContent,{className:"richtext-flex richtext-flex-col richtext-items-center",children:[(0,c.jsx)("span",{children:t.title}),!!t.shortcutKeys?.length&&(0,c.jsx)("span",{children:t.shortcutKeys?.map(t=>e.getShortcutKey(t)).join(" ")})]})]},`text-direction-${r}`))})]}):(0,c.jsx)(c.Fragment,{})},exports.TextDirection=a;
@@ -0,0 +1 @@
1
+ import{a as t,i as e,n as i,t as o}from"./tooltip-DC3DBc55.js";import{n as r,t as n}from"./toggle-BXl_NYYh.js";import{t as s}from"./Icon-CJJ9AQtR.js";import{n as a,r as c,t as l}from"./popover-DGEv-NbL.js";import{s as m,t as h}from"./useButtonProps-DSIajp_B.js";import p,{useMemo as d}from"react";import{Fragment as x,jsx as u,jsxs as f}from"react/jsx-runtime";import{Extension as g}from"@tiptap/core";function D(){const g=h(T.name),[D,b]=p.useState(!1),{icon:j,tooltip:v,items:w=[],isActive:C}=g?.componentProps??{},{editorDisabled:z,dataState:N}=m(C),A=d(()=>N?.dir||"unset",[N]);return g?/* @__PURE__ */f(l,{open:D,onOpenChange:b,modal:!0,children:[/* @__PURE__ */u(c,{asChild:!0,disabled:z,children:/* @__PURE__ */u(r,{customClass:"!richtext-w-12 richtext-h-12",disabled:z,icon:j,tooltip:v,children:/* @__PURE__ */u(s,{className:"richtext-ml-1 richtext-size-3 richtext-text-zinc-500",name:"MenuDown"})})}),/* @__PURE__ */u(a,{align:"start",className:"richtext-flex richtext-w-full richtext-min-w-4 richtext-flex-row richtext-gap-1 !richtext-p-[4px]",side:"bottom",hideWhenDetached:!0,children:w?.map((r,a)=>/* @__PURE__ */f(o,{children:[/* @__PURE__ */u(e,{"data-state":A===r.value?"on":"off",asChild:!0,children:/* @__PURE__ */u(n,{className:"richtext-size-7 richtext-p-1",onClick:()=>{r?.action(),b(!1)},size:"sm",children:r?.icon&&/* @__PURE__ */u(s,{name:r.icon})})}),/* @__PURE__ */f(i,{className:"richtext-flex richtext-flex-col richtext-items-center",children:[/* @__PURE__ */u("span",{children:r.title}),!!r.shortcutKeys?.length&&/* @__PURE__ */u("span",{children:r.shortcutKeys?.map(e=>t(e)).join(" ")})]})]},`text-direction-${a}`))})]}):/* @__PURE__ */u(x,{})}var T=g.create({name:"richTextTextDirection",addOptions(){return{...this.parent?.(),directions:["auto","ltr","rtl","unset"],defaultDirection:"auto",button({editor:t,extension:e,t:i}){const o=e.options?.directions||[],r={auto:"TextDirection",ltr:"LeftToRight",rtl:"RightToLeft",unset:"X"},n=o.map(e=>({title:i(`editor.textDirection.${e}.tooltip`),value:e,icon:r[e],action:()=>{"unset"!==e?t.commands?.setTextDirection?.(e):t.commands?.unsetTextDirection?.()},disabled:!1}));return{componentProps:{icon:"TextDirection",tooltip:i("editor.textDirection.tooltip"),items:n,isActive:()=>t.getAttributes("paragraph")}}}}}});export{D as RichTextTextDirection,T as TextDirection};
@@ -0,0 +1 @@
1
+ import{n as t}from"./toggle-BXl_NYYh.js";import{c as e,t as n}from"./useButtonProps-DSIajp_B.js";import{Fragment as o,jsx as r}from"react/jsx-runtime";import{Mark as i,mergeAttributes as s}from"@tiptap/core";function a(){const i=n(d.name),{icon:s,tooltip:a,shortcutKeys:l,tooltipOptions:m={},action:u,isActive:c}=i?.componentProps??{},{dataState:p,disabled:g,update:h}=e(c);return i?/* @__PURE__ */r(t,{action:()=>{g||u&&(u(),h())},dataState:p,disabled:g,icon:s,shortcutKeys:l,tooltip:a,tooltipOptions:m}):/* @__PURE__ */r(o,{})}var d=i.create({name:"underline",addOptions:()=>({HTMLAttributes:{}}),parseHTML:()=>[{tag:"u"},{style:"text-decoration",consuming:!1,getAttrs:t=>!!t.includes("underline")&&{}}],renderHTML({HTMLAttributes:t}){return["u",s(this.options.HTMLAttributes,t),0]},parseMarkdown(t,e){return e.applyMark(this.name||"underline",e.parseInline(t.tokens||[]))},renderMarkdown:(t,e)=>`++${e.renderChildren(t)}++`,markdownTokenizer:{name:"underline",level:"inline",start:t=>t.indexOf("++"),tokenize(t,e,n){const o=/^(\+\+)([\s\S]+?)(\+\+)/.exec(t);if(!o)return;const r=o[2].trim();return{type:"underline",raw:o[0],text:r,tokens:n.inlineTokens(r)}}},addCommands(){return{setUnderline:()=>({commands:t})=>t.setMark(this.name),toggleUnderline:()=>({commands:t})=>t.toggleMark(this.name),unsetUnderline:()=>({commands:t})=>t.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-u":()=>this.editor.commands.toggleUnderline(),"Mod-U":()=>this.editor.commands.toggleUnderline()}}}).extend({addOptions(){return{...this.parent?.(),button:({editor:t,t:e,extension:n})=>({componentProps:{action:()=>t.commands.toggleUnderline(),isActive:()=>t.isActive("underline")||!1,disabled:!1,icon:"Underline",shortcutKeys:n.options.shortcutKeys??["mod","U"],tooltip:e("editor.underline.tooltip")}})}}});export{a as n,d as t};
@@ -0,0 +1 @@
1
+ const e=require("./toggle-CRftKzl0.cjs"),t=require("./useButtonProps-D2Hd5DbR.cjs");let n=require("react/jsx-runtime"),r=require("@tiptap/core");function o(){const r=t.useButtonProps(i.name),{icon:o,tooltip:s,shortcutKeys:d,tooltipOptions:a={},action:u,isActive:l}=r?.componentProps??{},{dataState:c,disabled:m,update:p}=t.useToggleActive(l);return r?(0,n.jsx)(e.ActionButton,{action:()=>{m||u&&(u(),p())},dataState:c,disabled:m,icon:o,shortcutKeys:d,tooltip:s,tooltipOptions:a}):(0,n.jsx)(n.Fragment,{})}var i=r.Mark.create({name:"underline",addOptions:()=>({HTMLAttributes:{}}),parseHTML:()=>[{tag:"u"},{style:"text-decoration",consuming:!1,getAttrs:e=>!!e.includes("underline")&&{}}],renderHTML({HTMLAttributes:e}){return["u",(0,r.mergeAttributes)(this.options.HTMLAttributes,e),0]},parseMarkdown(e,t){return t.applyMark(this.name||"underline",t.parseInline(e.tokens||[]))},renderMarkdown:(e,t)=>`++${t.renderChildren(e)}++`,markdownTokenizer:{name:"underline",level:"inline",start:e=>e.indexOf("++"),tokenize(e,t,n){const r=/^(\+\+)([\s\S]+?)(\+\+)/.exec(e);if(!r)return;const o=r[2].trim();return{type:"underline",raw:r[0],text:o,tokens:n.inlineTokens(o)}}},addCommands(){return{setUnderline:()=>({commands:e})=>e.setMark(this.name),toggleUnderline:()=>({commands:e})=>e.toggleMark(this.name),unsetUnderline:()=>({commands:e})=>e.unsetMark(this.name)}},addKeyboardShortcuts(){return{"Mod-u":()=>this.editor.commands.toggleUnderline(),"Mod-U":()=>this.editor.commands.toggleUnderline()}}}).extend({addOptions(){return{...this.parent?.(),button:({editor:e,t:t,extension:n})=>({componentProps:{action:()=>e.commands.toggleUnderline(),isActive:()=>e.isActive("underline")||!1,disabled:!1,icon:"Underline",shortcutKeys:n.options.shortcutKeys??["mod","U"],tooltip:t("editor.underline.tooltip")}})}}});Object.defineProperty(exports,"RichTextUnderline",{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,"TextUnderline",{enumerable:!0,get:function(){return i}});
@@ -0,0 +1 @@
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./rolldown-runtime-BeavJI0R.cjs");const e=require("./TextUnderline-ofstnQx_.cjs");exports.RichTextUnderline=e.RichTextUnderline,exports.TextUnderline=e.TextUnderline;
@@ -0,0 +1 @@
1
+ import{n as e,t as r}from"./TextUnderline-BaV7bhwo.js";export{e as RichTextUnderline,r as TextUnderline};
@@ -0,0 +1,5 @@
1
+ import{n as t}from"./toggle-BXl_NYYh.js";import{n as e}from"./locales-DfkG6-1b.js";import{t as i}from"./Icon-CJJ9AQtR.js";import{t as r}from"./button-CXcuJkiM.js";import{t as o}from"./input-CMD6LZFr.js";import{t as s}from"./label-Dx1mMx8l.js";import{n,r as a,t as c}from"./popover-DGEv-NbL.js";import{c as d,d as l,t as m}from"./useButtonProps-DSIajp_B.js";import{NodeViewWrapper as p,ReactNodeViewRenderer as u}from"@tiptap/react";import{useEffect as h,useState as f}from"react";import{jsx as x,jsxs as w}from"react/jsx-runtime";import{Node as b,mergeAttributes as g,nodePasteRule as v}from"@tiptap/core";import{Tweet as A}from"react-tweet";function T({node:t}){const e=(t?.attrs?.src||"")?.split("/").pop();return e?/* @__PURE__ */x(p,{children:/* @__PURE__ */x("div",{"data-twitter":"",children:/* @__PURE__ */x(A,{id:e})})}):null}function j(t){const{t:i}=e(),[n,a]=f("");return h(()=>{if(t?.editor){const{src:e}=t.editor.getAttributes(y.name);e&&a(e)}},[t?.editor]),/* @__PURE__ */w("form",{className:"richtext-flex richtext-flex-col richtext-gap-2",onSubmit:function(e){e.preventDefault(),e.stopPropagation(),t?.onSetLink(n)},children:[
2
+ /* @__PURE__ */x(s,{className:"mb-[6px]",children:i("editor.link.dialog.text")}),
3
+ /* @__PURE__ */x("div",{className:"richtext-flex richtext-w-full richtext-max-w-sm richtext-items-center richtext-gap-1.5",children:/* @__PURE__ */x("div",{className:"richtext-relative richtext-w-full richtext-max-w-sm richtext-items-center",children:/* @__PURE__ */x(o,{className:"richtext-w-80",onChange:t=>a(t.target.value),placeholder:"Text",required:!0,type:"text",value:n})})}),
4
+ /* @__PURE__ */x(r,{className:"richtext-mt-2 richtext-self-end",type:"submit",children:i("editor.link.dialog.button.apply")})]})}function N(){const[e,r]=f(!1),o=l(),{icon:s,tooltip:p,tooltipOptions:u={},action:h,isActive:b}=m(y.name)?.componentProps??{},{editorDisabled:g}=d(b);/* @__PURE__ */
5
+ return w(c,{modal:!0,onOpenChange:r,open:e,children:[/* @__PURE__ */x(a,{asChild:!0,children:/* @__PURE__ */x(t,{disabled:g,isActive:b,tooltip:p,tooltipOptions:u,children:/* @__PURE__ */x(i,{name:s})})}),/* @__PURE__ */x(n,{align:"start",className:"richtext-w-full",hideWhenDetached:!0,side:"bottom",children:/* @__PURE__ */x(j,{editor:o,onSetLink:function(t){g||h&&(h(t),r(!1))}})})]})}var H=/(https?:\/\/)?(www\.)?x\.com\/(\w{1,15})(\/status\/(\d+))?(\/\S*)?/g,L=/^https?:\/\/(www\.)?x\.com\/(\w{1,15})(\/status\/(\d+))?(\/\S*)?$/;function P(t){return t.match(L)}var y=b.create({name:"twitter",draggable:!0,selectable:!0,addOptions:()=>({addPasteHandler:!0,HTMLAttributes:{},inline:!1,origin:"",button:({editor:t,t:e})=>({componentProps:{action:e=>{t.commands.setTweet({src:e})},isActive:()=>!1,disabled:!1,icon:"Twitter",tooltip:e("editor.twitter.tooltip"),editor:t}})}),addNodeView(){return u(T,{attrs:this.options.HTMLAttributes})},inline(){return this.options.inline},group(){return this.options.inline?"inline":"block"},addAttributes:()=>({src:{default:null}}),parseHTML:()=>[{tag:"div[data-twitter]"}],addCommands(){return{setTweet:t=>({commands:e})=>!!P(t.src)&&e.insertContent({type:this.name,attrs:t}),updateTweet:t=>({commands:e})=>!!P(t.src)&&e.updateAttributes(this.name,{src:t.src})}},addPasteRules(){return this.options.addPasteHandler?[v({find:H,type:this.type,getAttributes:t=>({src:t.input})})]:[]},renderHTML:({HTMLAttributes:t})=>["div",g({"data-twitter":""},t)]});export{N as n,j as r,y as t};
@@ -0,0 +1 @@
1
+ require("./rolldown-runtime-BeavJI0R.cjs");const t=require("./toggle-CRftKzl0.cjs"),e=require("./locales-Dg9XL0yP.cjs"),r=require("./Icon-DQdA22_-.cjs"),i=require("./button-CYMsgP3Y.cjs"),n=require("./input-AvqqajGM.cjs"),s=require("./label-DPSH3PiY.cjs"),o=require("./popover-DEGqjF2J.cjs"),c=require("./useButtonProps-D2Hd5DbR.cjs");let a=require("@tiptap/react"),d=require("react"),l=require("react/jsx-runtime"),u=require("@tiptap/core"),p=require("react-tweet");function m({node:t}){const e=(t?.attrs?.src||"")?.split("/").pop();return e?(0,l.jsx)(a.NodeViewWrapper,{children:(0,l.jsx)("div",{"data-twitter":"",children:(0,l.jsx)(p.Tweet,{id:e})})}):null}function x(t){const{t:r}=e.useLocale(),[o,c]=(0,d.useState)("");return(0,d.useEffect)(()=>{if(t?.editor){const{src:e}=t.editor.getAttributes(j.name);e&&c(e)}},[t?.editor]),(0,l.jsxs)("form",{className:"richtext-flex richtext-flex-col richtext-gap-2",onSubmit:function(e){e.preventDefault(),e.stopPropagation(),t?.onSetLink(o)},children:[(0,l.jsx)(s.Label,{className:"mb-[6px]",children:r("editor.link.dialog.text")}),(0,l.jsx)("div",{className:"richtext-flex richtext-w-full richtext-max-w-sm richtext-items-center richtext-gap-1.5",children:(0,l.jsx)("div",{className:"richtext-relative richtext-w-full richtext-max-w-sm richtext-items-center",children:(0,l.jsx)(n.Input,{className:"richtext-w-80",onChange:t=>c(t.target.value),placeholder:"Text",required:!0,type:"text",value:o})})}),(0,l.jsx)(i.Button,{className:"richtext-mt-2 richtext-self-end",type:"submit",children:r("editor.link.dialog.button.apply")})]})}function h(){const[e,i]=(0,d.useState)(!1),n=c.useEditorInstance(),{icon:s,tooltip:a,tooltipOptions:u={},action:p,isActive:m}=c.useButtonProps(j.name)?.componentProps??{},{editorDisabled:h}=c.useToggleActive(m);return(0,l.jsxs)(o.Popover,{modal:!0,onOpenChange:i,open:e,children:[(0,l.jsx)(o.PopoverTrigger,{asChild:!0,children:(0,l.jsx)(t.ActionButton,{disabled:h,isActive:m,tooltip:a,tooltipOptions:u,children:(0,l.jsx)(r.IconComponent,{name:s})})}),(0,l.jsx)(o.PopoverContent,{align:"start",className:"richtext-w-full",hideWhenDetached:!0,side:"bottom",children:(0,l.jsx)(x,{editor:n,onSetLink:function(t){h||p&&(p(t),i(!1))}})})]})}var w=/(https?:\/\/)?(www\.)?x\.com\/(\w{1,15})(\/status\/(\d+))?(\/\S*)?/g,b=/^https?:\/\/(www\.)?x\.com\/(\w{1,15})(\/status\/(\d+))?(\/\S*)?$/;function g(t){return t.match(b)}var j=u.Node.create({name:"twitter",draggable:!0,selectable:!0,addOptions:()=>({addPasteHandler:!0,HTMLAttributes:{},inline:!1,origin:"",button:({editor:t,t:e})=>({componentProps:{action:e=>{t.commands.setTweet({src:e})},isActive:()=>!1,disabled:!1,icon:"Twitter",tooltip:e("editor.twitter.tooltip"),editor:t}})}),addNodeView(){return(0,a.ReactNodeViewRenderer)(m,{attrs:this.options.HTMLAttributes})},inline(){return this.options.inline},group(){return this.options.inline?"inline":"block"},addAttributes:()=>({src:{default:null}}),parseHTML:()=>[{tag:"div[data-twitter]"}],addCommands(){return{setTweet:t=>({commands:e})=>!!g(t.src)&&e.insertContent({type:this.name,attrs:t}),updateTweet:t=>({commands:e})=>!!g(t.src)&&e.updateAttributes(this.name,{src:t.src})}},addPasteRules(){return this.options.addPasteHandler?[(0,u.nodePasteRule)({find:w,type:this.type,getAttributes:t=>({src:t.input})})]:[]},renderHTML:({HTMLAttributes:t})=>["div",(0,u.mergeAttributes)({"data-twitter":""},t)]});Object.defineProperty(exports,"FormEditLinkTwitter",{enumerable:!0,get:function(){return x}}),Object.defineProperty(exports,"RichTextTwitter",{enumerable:!0,get:function(){return h}}),Object.defineProperty(exports,"Twitter",{enumerable:!0,get:function(){return j}});
@@ -0,0 +1 @@
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./rolldown-runtime-BeavJI0R.cjs");const e=require("./Twitter-DyrQT0n4.cjs");exports.RichTextTwitter=e.RichTextTwitter,exports.Twitter=e.Twitter;
@@ -0,0 +1 @@
1
+ import{n as t,t as r}from"./Twitter-D5UNfT-K.js";export{t as RichTextTwitter,r as Twitter};
@@ -0,0 +1 @@
1
+ require("./rolldown-runtime-BeavJI0R.cjs");const e=require("./toggle-CRftKzl0.cjs"),t=require("./locales-Dg9XL0yP.cjs"),i=require("./button-CYMsgP3Y.cjs"),r=require("./dialog-CxZ2oxD2.cjs"),o=require("./input-AvqqajGM.cjs"),s=require("./tabs-CoJRfGS8.cjs"),n=require("./useButtonProps-D2Hd5DbR.cjs");let l=require("react"),a=require("react/jsx-runtime");function d(e,t){let i;try{i=new URL(e)}catch{return!1}return!t?.length||1===t.length&&"."===t[0]||t.some(e=>{if(e.includes("*")){const t=e.replace(/\./g,String.raw`\.`).replace(/\*/g,".*");return new RegExp(`^${t}$`).test(i.hostname)}return i.hostname.includes(e)})}function c(){const{t:c}=t.useLocale(),u=n.useEditorInstance(),{icon:h,tooltip:m}=n.useButtonProps(p.name)?.componentProps??{},{editorDisabled:v}=n.useToggleActive(),[g,b]=(0,l.useState)(""),f=(0,l.useRef)(null),[x,w]=(0,l.useState)(""),[j,y]=(0,l.useState)(!1),T=n.useExtension(p.name),V=(0,l.useMemo)(()=>T?.options??{},[T]);return(0,a.jsxs)(r.Dialog,{onOpenChange:y,open:j,children:[(0,a.jsx)(r.DialogTrigger,{asChild:!0,children:(0,a.jsx)(e.ActionButton,{disabled:v,icon:h,tooltip:m,action:()=>{v||y(!0)}})}),(0,a.jsxs)(r.DialogContent,{children:[(0,a.jsx)(r.DialogTitle,{children:c("editor.video.dialog.title")}),(0,a.jsxs)(s.Tabs,{activationMode:"manual",defaultValue:"both"===V?.resourceVideo||"upload"===V?.resourceVideo?"upload":"link",children:[(0,a.jsxs)(s.TabsList,{className:"richtext-grid richtext-w-full richtext-grid-cols-2",children:[("both"===V?.resourceVideo||"upload"===V?.resourceVideo)&&(0,a.jsx)(s.TabsTrigger,{value:"upload",children:c("editor.video.dialog.tab.upload")}),("both"===V?.resourceVideo||"link"===V?.resourceVideo)&&(0,a.jsx)(s.TabsTrigger,{value:"link",children:c("editor.video.dialog.link")})]}),(0,a.jsxs)(s.TabsContent,{value:"upload",children:[(0,a.jsx)("div",{className:"richtext-flex richtext-items-center richtext-gap-[10px]",children:(0,a.jsx)(i.Button,{className:"richtext-mt-1 richtext-w-full",onClick:function(e){e.preventDefault(),f.current?.click()},size:"sm",children:c("editor.video.dialog.tab.upload")})}),(0,a.jsx)("input",{accept:"video/*",multiple:!0,onChange:async function(e){const t=e?.target?.files;if(!u||u.isDestroyed||0===t.length)return;const i=t[0];let r="";r=V.upload?await V.upload(i):URL.createObjectURL(i),u.chain().focus().setVideo({src:r,width:"100%"}).run(),y(!1)},ref:f,type:"file",style:{display:"none"}})]}),(0,a.jsxs)(s.TabsContent,{value:"link",children:[(0,a.jsx)("div",{children:(0,a.jsxs)("div",{className:"richtext-flex richtext-items-center richtext-gap-2",children:[(0,a.jsx)(o.Input,{autoFocus:!0,placeholder:c("editor.video.dialog.placeholder"),required:!0,type:"url",value:g,onBlur:e=>{const t=e.target.value,i=V.videoProviders||["."];t&&!d(t,i)?w("Invalid video URL"):w("")},onChange:e=>{b(e.target.value)}}),(0,a.jsx)(i.Button,{onClick:function(e){e.preventDefault(),e.stopPropagation(),g&&(u.chain().focus().setVideo({src:g,width:"100%"}).run(),y(!1),b(""))},type:"button",children:c("editor.video.dialog.button.apply")})]})}),x&&(0,a.jsx)("div",{className:"richtext-my-[5px] richtext-text-red-500",children:x})]})]})]})]})}function u(e){const t=(e=e.replace("https://youtu.be/","https://www.youtube.com/watch?v=").replace("watch?v=","embed/")).match(/^https:\/\/www\.youtube\.com\/shorts\/([a-zA-Z0-9_-]+)/);t&&(e=`https://www.youtube.com/embed/${t[1]}`);const i=e.match(/^https:\/\/vimeo\.com\/(\d+)(?:\/([a-zA-Z0-9]+))?/);if(i){const t=i[1],r=i[2];e=r?`https://player.vimeo.com/video/${t}?h=${r}`:`https://player.vimeo.com/video/${t}`}return/^https?:\/\/www.bilibili.com\/video\/.*/i.test(e)&&(e=e.replace(/\?.*$/,"").replace("https://www.bilibili.com/video/","https://player.bilibili.com/player.html?bvid=")),e.includes("drive.google.com")&&(e=e.replace("/view","/preview")),e}var p=require("@tiptap/core").Node.create({name:"video",group:"block",atom:!0,draggable:!0,addOptions:()=>({divider:!1,spacer:!1,allowFullscreen:!0,upload:void 0,frameborder:!1,resourceVideo:"both",width:t.VIDEO_SIZE["size-medium"],HTMLAttributes:{class:"iframe-wrapper"},button:({editor:e,t:t})=>({componentProps:{action:()=>{},isActive:()=>e.isActive("video")||!1,disabled:!e.can().setVideo?.({}),icon:"Video",tooltip:t("editor.video.tooltip"),videoProviders:["."],editor:e}})}),addAttributes(){return{src:{default:null,renderHTML:({src:e})=>({src:e?u(e):null})},width:{default:this.options.width,renderHTML:({width:e})=>({width:n.getCssUnitWithDefault(e)})},frameborder:{default:this.options.frameborder?1:0,parseHTML:()=>this.options.frameborder?1:0},allowfullscreen:{default:this.options.allowFullscreen,parseHTML:()=>this.options.allowFullscreen},align:{default:"center",renderHTML:({align:e})=>({align:e})}}},parseHTML:()=>[{tag:"div[data-video] iframe"}],renderHTML({HTMLAttributes:e}){const{width:t="100%",align:i="center"}=e??{},r=["div",{style:`display: flex; justify-content: ${i};`},["div",{style:`position: relative;overflow: hidden;display: flex;flex: 1;max-width: ${t};`},["div",{style:"flex: 1;padding-bottom: 56.25%;"}],["iframe",{...e,width:"100%",height:"100%"}]]];return["div",{...this.options.HTMLAttributes,class:"iframe-wrapper","data-video":""},r]},addCommands(){return{setVideo:e=>({commands:t})=>t.insertContent({type:this.name,attrs:e}),updateVideo:e=>({commands:t})=>t.updateAttributes(this.name,e)}}});Object.defineProperty(exports,"RichTextVideo",{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,"Video",{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,"checkIsVideoUrl",{enumerable:!0,get:function(){return d}});
@@ -0,0 +1,5 @@
1
+ import{n as e}from"./toggle-BXl_NYYh.js";import{n as t,v as i}from"./locales-DfkG6-1b.js";import{t as o}from"./button-CXcuJkiM.js";import{a as r,n as a,o as l,t as d}from"./dialog-DgdVbRUv.js";import{t as s}from"./input-CMD6LZFr.js";import{i as n,n as c,r as p,t as u}from"./tabs-BovAV0Y3.js";import{c as h,d as m,i as v,o as f,t as w}from"./useButtonProps-DSIajp_B.js";import{useMemo as b,useRef as g,useState as x}from"react";import{jsx as y,jsxs as L}from"react/jsx-runtime";import{Node as V}from"@tiptap/core";function M(e,t){let i;try{i=new URL(e)}catch{return!1}return!t?.length||1===t.length&&"."===t[0]||t.some(e=>{if(e.includes("*")){const t=e.replace(/\./g,String.raw`\.`).replace(/\*/g,".*");return new RegExp(`^${t}$`).test(i.hostname)}return i.hostname.includes(e)})}function j(){const{t:i}=t(),v=m(),{icon:V,tooltip:j}=w(H.name)?.componentProps??{},{editorDisabled:k}=h(),[T,A]=x(""),$=g(null),[C,P]=x(""),[N,R]=x(!1),z=f(H.name),D=b(()=>z?.options??{},[z]);/* @__PURE__ */
2
+ return L(d,{onOpenChange:R,open:N,children:[/* @__PURE__ */y(l,{asChild:!0,children:/* @__PURE__ */y(e,{disabled:k,icon:V,tooltip:j,action:()=>{k||R(!0)}})}),/* @__PURE__ */L(a,{children:[/* @__PURE__ */y(r,{children:i("editor.video.dialog.title")}),/* @__PURE__ */L(u,{activationMode:"manual",defaultValue:"both"===D?.resourceVideo||"upload"===D?.resourceVideo?"upload":"link",children:[
3
+ /* @__PURE__ */L(p,{className:"richtext-grid richtext-w-full richtext-grid-cols-2",children:[("both"===D?.resourceVideo||"upload"===D?.resourceVideo)&&/* @__PURE__ */y(n,{value:"upload",children:i("editor.video.dialog.tab.upload")}),("both"===D?.resourceVideo||"link"===D?.resourceVideo)&&/* @__PURE__ */y(n,{value:"link",children:i("editor.video.dialog.link")})]}),
4
+ /* @__PURE__ */L(c,{value:"upload",children:[/* @__PURE__ */y("div",{className:"richtext-flex richtext-items-center richtext-gap-[10px]",children:/* @__PURE__ */y(o,{className:"richtext-mt-1 richtext-w-full",onClick:function(e){e.preventDefault(),$.current?.click()},size:"sm",children:i("editor.video.dialog.tab.upload")})}),/* @__PURE__ */y("input",{accept:"video/*",multiple:!0,onChange:async function(e){const t=e?.target?.files;if(!v||v.isDestroyed||0===t.length)return;const i=t[0];let o="";o=D.upload?await D.upload(i):URL.createObjectURL(i),v.chain().focus().setVideo({src:o,width:"100%"}).run(),R(!1)},ref:$,type:"file",style:{display:"none"}})]}),
5
+ /* @__PURE__ */L(c,{value:"link",children:[/* @__PURE__ */y("div",{children:/* @__PURE__ */L("div",{className:"richtext-flex richtext-items-center richtext-gap-2",children:[/* @__PURE__ */y(s,{autoFocus:!0,placeholder:i("editor.video.dialog.placeholder"),required:!0,type:"url",value:T,onBlur:e=>{const t=e.target.value,i=D.videoProviders||["."];t&&!M(t,i)?P("Invalid video URL"):P("")},onChange:e=>{A(e.target.value)}}),/* @__PURE__ */y(o,{onClick:function(e){e.preventDefault(),e.stopPropagation(),T&&(v.chain().focus().setVideo({src:T,width:"100%"}).run(),R(!1),A(""))},type:"button",children:i("editor.video.dialog.button.apply")})]})}),C&&/* @__PURE__ */y("div",{className:"richtext-my-[5px] richtext-text-red-500",children:C})]})]})]})]})}function k(e){const t=(e=e.replace("https://youtu.be/","https://www.youtube.com/watch?v=").replace("watch?v=","embed/")).match(/^https:\/\/www\.youtube\.com\/shorts\/([a-zA-Z0-9_-]+)/);t&&(e=`https://www.youtube.com/embed/${t[1]}`);const i=e.match(/^https:\/\/vimeo\.com\/(\d+)(?:\/([a-zA-Z0-9]+))?/);if(i){const t=i[1],o=i[2];e=o?`https://player.vimeo.com/video/${t}?h=${o}`:`https://player.vimeo.com/video/${t}`}return/^https?:\/\/www.bilibili.com\/video\/.*/i.test(e)&&(e=e.replace(/\?.*$/,"").replace("https://www.bilibili.com/video/","https://player.bilibili.com/player.html?bvid=")),e.includes("drive.google.com")&&(e=e.replace("/view","/preview")),e}var H=V.create({name:"video",group:"block",atom:!0,draggable:!0,addOptions:()=>({divider:!1,spacer:!1,allowFullscreen:!0,upload:void 0,frameborder:!1,resourceVideo:"both",width:i["size-medium"],HTMLAttributes:{class:"iframe-wrapper"},button:({editor:e,t:t})=>({componentProps:{action:()=>{},isActive:()=>e.isActive("video")||!1,disabled:!e.can().setVideo?.({}),icon:"Video",tooltip:t("editor.video.tooltip"),videoProviders:["."],editor:e}})}),addAttributes(){return{src:{default:null,renderHTML:({src:e})=>({src:e?k(e):null})},width:{default:this.options.width,renderHTML:({width:e})=>({width:v(e)})},frameborder:{default:this.options.frameborder?1:0,parseHTML:()=>this.options.frameborder?1:0},allowfullscreen:{default:this.options.allowFullscreen,parseHTML:()=>this.options.allowFullscreen},align:{default:"center",renderHTML:({align:e})=>({align:e})}}},parseHTML:()=>[{tag:"div[data-video] iframe"}],renderHTML({HTMLAttributes:e}){const{width:t="100%",align:i="center"}=e??{},o=["div",{style:`display: flex; justify-content: ${i};`},["div",{style:`position: relative;overflow: hidden;display: flex;flex: 1;max-width: ${t};`},["div",{style:"flex: 1;padding-bottom: 56.25%;"}],["iframe",{...e,width:"100%",height:"100%"}]]];return["div",{...this.options.HTMLAttributes,class:"iframe-wrapper","data-video":""},o]},addCommands(){return{setVideo:e=>({commands:t})=>t.insertContent({type:this.name,attrs:e}),updateVideo:e=>({commands:t})=>t.updateAttributes(this.name,e)}}});export{j as n,M as r,H as t};
package/dist/Video.cjs ADDED
@@ -0,0 +1 @@
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./rolldown-runtime-BeavJI0R.cjs");const e=require("./Video-BSH5k6Jd.cjs");exports.RichTextVideo=e.RichTextVideo,exports.Video=e.Video;
package/dist/Video.js ADDED
@@ -0,0 +1 @@
1
+ import{n as o,t as s}from"./Video-_YlAC2R_.js";export{o as RichTextVideo,s as Video};
@@ -0,0 +1 @@
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./rolldown-runtime-BeavJI0R.cjs");const e=require("./toggle-CRftKzl0.cjs"),t=require("./popover-DEGqjF2J.cjs"),r=require("./useButtonProps-D2Hd5DbR.cjs");let s=require("react"),a=require("react/jsx-runtime"),o=require("@tiptap/core");function c(e){if(!e)return[];const t=e.replace(/\s+/g," ").trim();if(!t)return[];const r=t.replace(/\b(Mr|Mrs|Ms|Dr|Prof|Sr|Jr|St|vs|etc|e\.g|i\.e)\./gi,"$1<dot>").replace(/(\d)\.(\d)/g,"$1<dot>$2").match(/[^.!?…。!?]+(?:[.!?…。!?]+|$)/g);return r?r.map(e=>e.replace(/<dot>/g,".").trim()).filter(e=>e.length>0):[]}var n={words:0,charactersWithSpaces:0,charactersNoSpaces:0,sentences:0,paragraphs:0,links:0,images:0};function i(e){if(!e)return{...n};const t=e.getText({blockSeparator:"\n"})??"",r=(t.match(/[^\s]+/g)??[]).length,s=t.length,a=t.replace(/\s/g,"").length,o=c(t).length;let i=0,l=0,p=0;return e.state.doc.descendants(e=>{e.isTextblock&&e.textContent.trim().length>0&&(i+=1),"image"===e.type.name&&(p+=1),e.isText&&e.marks.some(e=>"link"===e.type.name)&&(l+=1)}),{words:r,charactersWithSpaces:s,charactersNoSpaces:a,sentences:o,paragraphs:i,links:l,images:p}}var l={words:0,charactersWithSpaces:0,charactersNoSpaces:0,sentences:0,paragraphs:0,links:0,images:0};var p=o.Extension.create({name:"wordCount",addOptions(){return{...this.parent?.(),button:({editor:e})=>({componentProps:{action:()=>{},icon:"WordCount",tooltip:"Word Count",isActive:()=>!0,disabled:!1,editor:e}})}}});exports.RichTextWordCount=function(){const o=r.useEditorInstance(),c=r.useButtonProps(p.name),{icon:n,tooltip:h,shortcutKeys:d,tooltipOptions:u={},isActive:x}=c?.componentProps??{},{disabled:m}=r.useActive(x),[g,b]=(0,s.useState)(!1),[f,v]=(0,s.useState)(l);if((0,s.useEffect)(()=>{if(!o||!g)return;const e=()=>v(i(o));return e(),o.on("update",e),o.on("selectionUpdate",e),()=>{o.off("update",e),o.off("selectionUpdate",e)}},[o,g]),!c)return(0,a.jsx)(a.Fragment,{});const j=[{label:"Words",value:f.words},{label:"Characters (with spaces)",value:f.charactersWithSpaces},{label:"Characters (no spaces)",value:f.charactersNoSpaces},{label:"Sentences",value:f.sentences},{label:"Paragraphs",value:f.paragraphs},{label:"Links",value:f.links},{label:"Images",value:f.images}];return(0,a.jsxs)(t.Popover,{onOpenChange:b,open:g,children:[(0,a.jsx)(t.PopoverTrigger,{asChild:!0,disabled:m,children:(0,a.jsx)(e.ActionButton,{disabled:m,icon:n,shortcutKeys:d,tooltip:h,tooltipOptions:u})}),(0,a.jsxs)(t.PopoverContent,{align:"start",className:"richtext-w-[260px]",hideWhenDetached:!0,side:"bottom",children:[(0,a.jsx)("div",{className:"richtext-mb-[10px] richtext-flex richtext-items-center richtext-justify-between",children:(0,a.jsx)("span",{className:"richtext-text-sm richtext-font-semibold",children:"Word Count"})}),(0,a.jsx)("table",{className:"richtext-w-full richtext-text-sm",children:(0,a.jsx)("tbody",{children:j.map(e=>(0,a.jsxs)("tr",{className:"richtext-border-b richtext-border-border last:richtext-border-b-0",children:[(0,a.jsx)("td",{className:"richtext-py-[6px] richtext-pr-2 richtext-text-muted-foreground",children:e.label}),(0,a.jsx)("td",{className:"richtext-py-[6px] richtext-text-right richtext-font-semibold richtext-tabular-nums",children:e.value})]},e.label))})})]})]})},exports.WordCount=p,exports.getWordCountStats=i,exports.splitTextToSentences=c;
@@ -0,0 +1,2 @@
1
+ import{n as e}from"./toggle-BXl_NYYh.js";import{n as t,r,t as a}from"./popover-DGEv-NbL.js";import{d as s,s as c,t as i}from"./useButtonProps-DSIajp_B.js";import{useEffect as o,useState as n}from"react";import{Fragment as l,jsx as p,jsxs as h}from"react/jsx-runtime";import{Extension as d}from"@tiptap/core";function m(e){if(!e)return[];const t=e.replace(/\s+/g," ").trim();if(!t)return[];const r=t.replace(/\b(Mr|Mrs|Ms|Dr|Prof|Sr|Jr|St|vs|etc|e\.g|i\.e)\./gi,"$1<dot>").replace(/(\d)\.(\d)/g,"$1<dot>$2").match(/[^.!?…。!?]+(?:[.!?…。!?]+|$)/g);return r?r.map(e=>e.replace(/<dot>/g,".").trim()).filter(e=>e.length>0):[]}var u={words:0,charactersWithSpaces:0,charactersNoSpaces:0,sentences:0,paragraphs:0,links:0,images:0};function x(e){if(!e)return{...u};const t=e.getText({blockSeparator:"\n"})??"",r=(t.match(/[^\s]+/g)??[]).length,a=t.length,s=t.replace(/\s/g,"").length,c=m(t).length;let i=0,o=0,n=0;return e.state.doc.descendants(e=>{e.isTextblock&&e.textContent.trim().length>0&&(i+=1),"image"===e.type.name&&(n+=1),e.isText&&e.marks.some(e=>"link"===e.type.name)&&(o+=1)}),{words:r,charactersWithSpaces:a,charactersNoSpaces:s,sentences:c,paragraphs:i,links:o,images:n}}var g={words:0,charactersWithSpaces:0,charactersNoSpaces:0,sentences:0,paragraphs:0,links:0,images:0};function b(){const d=s(),m=i(f.name),{icon:u,tooltip:b,shortcutKeys:v,tooltipOptions:S={},isActive:N}=m?.componentProps??{},{disabled:k}=c(N),[w,C]=n(!1),[W,y]=n(g);if(o(()=>{if(!d||!w)return;const e=()=>y(x(d));return e(),d.on("update",e),d.on("selectionUpdate",e),()=>{d.off("update",e),d.off("selectionUpdate",e)}},[d,w]),!m)/* @__PURE__ */return p(l,{});const j=[{label:"Words",value:W.words},{label:"Characters (with spaces)",value:W.charactersWithSpaces},{label:"Characters (no spaces)",value:W.charactersNoSpaces},{label:"Sentences",value:W.sentences},{label:"Paragraphs",value:W.paragraphs},{label:"Links",value:W.links},{label:"Images",value:W.images}];/* @__PURE__ */
2
+ return h(a,{onOpenChange:C,open:w,children:[/* @__PURE__ */p(r,{asChild:!0,disabled:k,children:/* @__PURE__ */p(e,{disabled:k,icon:u,shortcutKeys:v,tooltip:b,tooltipOptions:S})}),/* @__PURE__ */h(t,{align:"start",className:"richtext-w-[260px]",hideWhenDetached:!0,side:"bottom",children:[/* @__PURE__ */p("div",{className:"richtext-mb-[10px] richtext-flex richtext-items-center richtext-justify-between",children:/* @__PURE__ */p("span",{className:"richtext-text-sm richtext-font-semibold",children:"Word Count"})}),/* @__PURE__ */p("table",{className:"richtext-w-full richtext-text-sm",children:/* @__PURE__ */p("tbody",{children:j.map(e=>/* @__PURE__ */h("tr",{className:"richtext-border-b richtext-border-border last:richtext-border-b-0",children:[/* @__PURE__ */p("td",{className:"richtext-py-[6px] richtext-pr-2 richtext-text-muted-foreground",children:e.label}),/* @__PURE__ */p("td",{className:"richtext-py-[6px] richtext-text-right richtext-font-semibold richtext-tabular-nums",children:e.value})]},e.label))})})]})]})}var f=d.create({name:"wordCount",addOptions(){return{...this.parent?.(),button:({editor:e})=>({componentProps:{action:()=>{},icon:"WordCount",tooltip:"Word Count",isActive:()=>!0,disabled:!1,editor:e}})}}});export{b as RichTextWordCount,f as WordCount,x as getWordCountStats,m as splitTextToSentences};
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Returns `true` when the viewport width is below {@link MOBILE_BREAKPOINT}.
3
+ * Subscribes to `window.matchMedia` so it updates automatically on resize.
4
+ */
5
+ export declare function useIsMobile(): boolean;
@@ -0,0 +1,27 @@
1
+ import { Dispatch, SetStateAction } from 'react';
2
+ import { Document } from '../documents/DocumentTree';
3
+ /** Configuration options for {@link useDocumentSync}. */
4
+ interface UseDocumentSyncOptions {
5
+ /** When `false` (default) all sync operations are no-ops. */
6
+ enableSync?: boolean;
7
+ /** Milliseconds between automatic interval-based sync passes. Defaults to `5000`. */
8
+ syncInterval?: number;
9
+ }
10
+ /**
11
+ * Provides document synchronisation state and operations.
12
+ *
13
+ * @param documents - Current in-memory document list.
14
+ * @param setDocuments - State setter for updating the document list.
15
+ * @param options - Sync configuration (enable / interval).
16
+ * @returns An object containing sync status flags and CRUD callbacks.
17
+ */
18
+ export declare function useDocumentSync(documents: Document[], setDocuments: Dispatch<SetStateAction<Document[]>>, options?: UseDocumentSyncOptions): {
19
+ isSyncing: boolean;
20
+ lastSyncTime: Date | null;
21
+ loadFromDatabase: () => Promise<Document[] | null | undefined>;
22
+ saveDocument: (doc: Document) => Promise<any>;
23
+ deleteDocument: (docId: string) => Promise<boolean | undefined>;
24
+ queueDocumentForSync: (doc: Document) => void;
25
+ syncPendingChanges: () => Promise<void>;
26
+ };
27
+ export {};
@@ -0,0 +1,11 @@
1
+ /**
2
+ * React hook that mirrors React's `useState` but persists the value under `key`
3
+ * in `localStorage`. Reads the stored value on first render and falls back to
4
+ * `initialValue` when the key is absent or the stored JSON is invalid.
5
+ *
6
+ * @template T - Type of the value to store.
7
+ * @param key - `localStorage` key to read/write.
8
+ * @param initialValue - Default value used when the key is not yet set.
9
+ * @returns A `[value, setValue]` tuple identical to `useState`.
10
+ */
11
+ export declare function useLocalStorage<T>(key: string, initialValue: T): readonly [T, (value: T | ((val: T) => T)) => void];
@@ -0,0 +1 @@
1
+ export declare function ThemeDropdown(): import("react").JSX.Element | null;
@@ -0,0 +1,81 @@
1
+ /**
2
+ * @module app-types/document
3
+ * @description Core Document and DocumentExtended TypeScript interfaces used
4
+ * throughout the organizer (tree, editor, outline, search, tags).
5
+ */
6
+ export interface ResearchQuote {
7
+ /** Unique quote identifier. */
8
+ id: string;
9
+ /** Exact quoted text captured from a source. */
10
+ text: string;
11
+ /** Optional publication or source title. */
12
+ source?: string;
13
+ /** Optional author name for citation. */
14
+ author?: string;
15
+ /** Optional URL where the quote originated. */
16
+ url?: string;
17
+ /** Optional page reference within the source document. */
18
+ pageNumber?: string;
19
+ /** Optional labels used to categorize the quote. */
20
+ tags?: string[];
21
+ /** ISO timestamp when the quote was created. */
22
+ createdAt: string;
23
+ /** ID of the document that stores this quote. */
24
+ documentId: string;
25
+ }
26
+ export interface DocumentMetadata {
27
+ /** Optional document tags for organization/filtering. */
28
+ tags?: string[];
29
+ /** Optional category name for grouping. */
30
+ category?: string;
31
+ /** Optional workflow status of the document. */
32
+ status?: 'draft' | 'in-progress' | 'review' | 'final';
33
+ /** Optional due date (typically ISO date string). */
34
+ dueDate?: string;
35
+ /** Optional importance level for prioritization. */
36
+ priority?: 'low' | 'medium' | 'high';
37
+ /** Optional free-form metadata keyed by field name. */
38
+ customFields?: Record<string, any>;
39
+ }
40
+ export interface SharedWithEntry {
41
+ /** Recipient email address. */
42
+ email: string;
43
+ /** Access role granted to the recipient. */
44
+ role: 'viewer' | 'editor' | 'commentor';
45
+ /** ISO timestamp when access was granted. */
46
+ sharedAt: string;
47
+ }
48
+ export interface SharingInfo {
49
+ /** Controls whether the document is publicly accessible. */
50
+ isPublic: boolean;
51
+ /** Optional explicit user-level sharing entries. */
52
+ sharedWith?: SharedWithEntry[];
53
+ /** Optional generated public share link. */
54
+ shareLink?: string;
55
+ /** Optional Google Docs file ID for linked document. */
56
+ googleDocId?: string;
57
+ }
58
+ export interface DocumentExtended {
59
+ /** Unique document identifier. */
60
+ id: string;
61
+ /** Document title displayed in navigation and tabs. */
62
+ title: string;
63
+ /** Main document body content. */
64
+ content: string;
65
+ /** Parent document ID; null when document is top-level. */
66
+ parentId: string | null;
67
+ /** Optional child documents in tree form. */
68
+ children?: DocumentExtended[];
69
+ /** Optional UI state indicating expanded tree node. */
70
+ isExpanded?: boolean;
71
+ /** Optional ISO creation timestamp. */
72
+ createdAt?: string;
73
+ /** Optional ISO last-updated timestamp. */
74
+ updatedAt?: string;
75
+ /** Optional structured document metadata. */
76
+ metadata?: DocumentMetadata;
77
+ /** Optional sharing and access configuration. */
78
+ sharing?: SharingInfo;
79
+ /** Optional research quotes attached to the document. */
80
+ quotes?: ResearchQuote[];
81
+ }
@@ -0,0 +1,124 @@
1
+ /**
2
+ * @module app-types/fileSource
3
+ * @description TypeScript types for all supported file-source providers:
4
+ * SSH, S3, R2, B2, Google Docs, Turso DB, and the AnyFileSource union.
5
+ */
6
+ export type FileSourceType = 'local' | 'ssh' | 's3' | 'r2' | 'b2' | 'gdocs' | 'turso';
7
+ export interface SSHCredentials {
8
+ /** SSH host name or IP address. */
9
+ host: string;
10
+ /** SSH port used for connection. */
11
+ port: number;
12
+ /** SSH user account name. */
13
+ username: string;
14
+ /** Optional password for password-based auth. */
15
+ password?: string;
16
+ /** Optional private key contents for key-based auth. */
17
+ privateKey?: string;
18
+ /** Optional passphrase for the private key. */
19
+ passphrase?: string;
20
+ /** Optional base path used as the root directory. */
21
+ basePath?: string;
22
+ }
23
+ export interface S3Credentials {
24
+ /** AWS access key ID or S3-compatible key ID. */
25
+ accessKeyId: string;
26
+ /** AWS secret access key or S3-compatible secret. */
27
+ secretAccessKey: string;
28
+ /** Region where the bucket is hosted. */
29
+ region: string;
30
+ /** Bucket name to read/write files from. */
31
+ bucket: string;
32
+ /** Optional custom endpoint for S3-compatible providers. */
33
+ endpoint?: string;
34
+ /** Optional base path prefix inside the bucket. */
35
+ basePath?: string;
36
+ }
37
+ export interface R2Credentials {
38
+ /** Cloudflare account ID owning the R2 bucket. */
39
+ accountId: string;
40
+ /** R2 access key ID. */
41
+ accessKeyId: string;
42
+ /** R2 secret access key. */
43
+ secretAccessKey: string;
44
+ /** R2 bucket name. */
45
+ bucket: string;
46
+ /** Optional path prefix inside the bucket. */
47
+ basePath?: string;
48
+ }
49
+ export interface B2Credentials {
50
+ /** Backblaze access key ID. */
51
+ accessKeyId: string;
52
+ /** Backblaze secret access key. */
53
+ secretAccessKey: string;
54
+ /** Backblaze B2 bucket name. */
55
+ bucket: string;
56
+ endpoint?: string;
57
+ /** Optional path prefix inside the bucket. */
58
+ basePath?: string;
59
+ }
60
+ export interface GoogleDocsCredentials {
61
+ /** OAuth access token for Google API requests. */
62
+ accessToken?: string;
63
+ /** OAuth refresh token to renew expired access tokens. */
64
+ refreshToken?: string;
65
+ /** Connected Google account email. */
66
+ email?: string;
67
+ folderIds?: string[];
68
+ /** Indicates whether the Google connection is active. */
69
+ isAuthenticated: boolean;
70
+ }
71
+ export interface TursoDBCredentials {
72
+ /** Turso database endpoint URL. */
73
+ endpoint: string;
74
+ /** Optional Turso auth token for protected instances. */
75
+ authToken?: string;
76
+ /** Optional database name when endpoint hosts multiple DBs. */
77
+ database?: string;
78
+ enableGoogleDocsSync?: boolean;
79
+ }
80
+ export interface FileSource {
81
+ /** Unique source identifier. */
82
+ id: string;
83
+ /** Human-readable source label shown in UI. */
84
+ name: string;
85
+ /** Source backend type discriminator. */
86
+ type: FileSourceType;
87
+ /** Backend-specific connection credentials. */
88
+ credentials?: SSHCredentials | S3Credentials | R2Credentials | B2Credentials | GoogleDocsCredentials | TursoDBCredentials;
89
+ /** Marks this source as the default selection. */
90
+ isDefault?: boolean;
91
+ /** ISO timestamp when the source was created. */
92
+ createdAt: string;
93
+ /** ISO timestamp when the source was last updated. */
94
+ updatedAt: string;
95
+ }
96
+ export interface LocalFileSource extends FileSource {
97
+ type: 'local';
98
+ credentials: undefined;
99
+ }
100
+ export interface SSHFileSource extends FileSource {
101
+ type: 'ssh';
102
+ credentials: SSHCredentials;
103
+ }
104
+ export interface S3FileSource extends FileSource {
105
+ type: 's3';
106
+ credentials: S3Credentials;
107
+ }
108
+ export interface R2FileSource extends FileSource {
109
+ type: 'r2';
110
+ credentials: R2Credentials;
111
+ }
112
+ export interface B2FileSource extends FileSource {
113
+ type: 'b2';
114
+ credentials: B2Credentials;
115
+ }
116
+ export interface GoogleDocsFileSource extends FileSource {
117
+ type: 'gdocs';
118
+ credentials: GoogleDocsCredentials;
119
+ }
120
+ export interface TursoDBFileSource extends FileSource {
121
+ type: 'turso';
122
+ credentials: TursoDBCredentials;
123
+ }
124
+ export type AnyFileSource = LocalFileSource | SSHFileSource | S3FileSource | R2FileSource | B2FileSource | GoogleDocsFileSource | TursoDBFileSource;
@@ -0,0 +1,52 @@
1
+ /**
2
+ * @module app-types/team
3
+ * @description TypeScript interfaces for teams, organizations, team members,
4
+ * and the UserRole union used in the TeamManagement feature.
5
+ */
6
+ export type UserRole = 'owner' | 'admin' | 'member' | 'viewer';
7
+ export interface TeamMember {
8
+ /** Unique team member identifier. */
9
+ id: string;
10
+ /** Display name shown in team and organization views. */
11
+ name: string;
12
+ /** Primary email used for invitations and notifications. */
13
+ email: string;
14
+ /** Permission level assigned to the member. */
15
+ role: UserRole;
16
+ /** Optional avatar image URL for UI profile rendering. */
17
+ avatarUrl?: string;
18
+ /** Timestamp when the user joined the team. */
19
+ joinedAt: Date;
20
+ }
21
+ export interface Team {
22
+ /** Unique team identifier. */
23
+ id: string;
24
+ /** Human-readable team name. */
25
+ name: string;
26
+ /** Optional summary of the team purpose or scope. */
27
+ description?: string;
28
+ /** Members currently assigned to this team. */
29
+ members: TeamMember[];
30
+ /** Timestamp when the team was created. */
31
+ createdAt: Date;
32
+ /** Timestamp of the most recent team update. */
33
+ updatedAt: Date;
34
+ }
35
+ export interface Organization {
36
+ /** Unique organization identifier. */
37
+ id: string;
38
+ /** Human-readable organization name. */
39
+ name: string;
40
+ /** URL-friendly organization handle used in routes. */
41
+ slug: string;
42
+ /** Optional description of the organization. */
43
+ description?: string;
44
+ /** Optional URL for the organization logo image. */
45
+ logoUrl?: string;
46
+ /** Teams that belong to this organization. */
47
+ teams: Team[];
48
+ /** Timestamp when the organization was created. */
49
+ createdAt: Date;
50
+ /** Timestamp of the most recent organization update. */
51
+ updatedAt: Date;
52
+ }
@@ -0,0 +1,2 @@
1
+ /** Table of contents entry: [id, text, headingTag] where id is "{level}:{index}:{text}" and headingTag is "h1"–"h6" */
2
+ export type TocEntry = [string, string, string];
@@ -0,0 +1,11 @@
1
+ declare const SIZES: {
2
+ readonly sm: 14;
3
+ readonly md: 18;
4
+ readonly lg: 24;
5
+ };
6
+ interface FileTypeIconProps {
7
+ filename: string;
8
+ size?: keyof typeof SIZES | number;
9
+ }
10
+ export declare function FileTypeIcon({ filename, size }: FileTypeIconProps): import("react").JSX.Element;
11
+ export {};
@@ -0,0 +1,14 @@
1
+ import * as React from "react";
2
+ import * as AlertDialogPrimitive from "@radix-ui/react-alert-dialog";
3
+ declare function AlertDialog({ ...props }: React.ComponentProps<typeof AlertDialogPrimitive.Root>): React.JSX.Element;
4
+ declare function AlertDialogTrigger({ ...props }: React.ComponentProps<typeof AlertDialogPrimitive.Trigger>): React.JSX.Element;
5
+ declare function AlertDialogPortal({ ...props }: React.ComponentProps<typeof AlertDialogPrimitive.Portal>): React.JSX.Element;
6
+ declare function AlertDialogOverlay({ className, ...props }: React.ComponentProps<typeof AlertDialogPrimitive.Overlay>): React.JSX.Element;
7
+ declare function AlertDialogContent({ className, ...props }: React.ComponentProps<typeof AlertDialogPrimitive.Content>): React.JSX.Element;
8
+ declare function AlertDialogHeader({ className, ...props }: React.ComponentProps<"div">): React.JSX.Element;
9
+ declare function AlertDialogFooter({ className, ...props }: React.ComponentProps<"div">): React.JSX.Element;
10
+ declare function AlertDialogTitle({ className, ...props }: React.ComponentProps<typeof AlertDialogPrimitive.Title>): React.JSX.Element;
11
+ declare function AlertDialogDescription({ className, ...props }: React.ComponentProps<typeof AlertDialogPrimitive.Description>): React.JSX.Element;
12
+ declare function AlertDialogAction({ className, ...props }: React.ComponentProps<typeof AlertDialogPrimitive.Action>): React.JSX.Element;
13
+ declare function AlertDialogCancel({ className, ...props }: React.ComponentProps<typeof AlertDialogPrimitive.Cancel>): React.JSX.Element;
14
+ export { AlertDialog, AlertDialogPortal, AlertDialogOverlay, AlertDialogTrigger, AlertDialogContent, AlertDialogHeader, AlertDialogFooter, AlertDialogTitle, AlertDialogDescription, AlertDialogAction, AlertDialogCancel, };
@@ -0,0 +1,6 @@
1
+ import * as React from "react";
2
+ import * as AvatarPrimitive from "@radix-ui/react-avatar";
3
+ declare function Avatar({ className, ...props }: React.ComponentProps<typeof AvatarPrimitive.Root>): React.JSX.Element;
4
+ declare function AvatarImage({ className, ...props }: React.ComponentProps<typeof AvatarPrimitive.Image>): React.JSX.Element;
5
+ declare function AvatarFallback({ className, ...props }: React.ComponentProps<typeof AvatarPrimitive.Fallback>): React.JSX.Element;
6
+ export { Avatar, AvatarImage, AvatarFallback };