rayo-editor 0.0.2 → 0.0.3

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 (462) hide show
  1. package/dist/cloudinaryUpload-16fe0b7d.js +35 -0
  2. package/dist/components/project/blog-writer/hooks/useAutoRecovery.d.ts +63 -0
  3. package/dist/components/project/blog-writer/hooks/useAutoRecovery.d.ts.map +1 -0
  4. package/dist/components/project/blog-writer/hooks/useTypingEffect.d.ts +5 -0
  5. package/dist/components/project/blog-writer/hooks/useTypingEffect.d.ts.map +1 -0
  6. package/dist/components/project/blog-writer/index.d.ts +2 -0
  7. package/dist/components/project/blog-writer/index.d.ts.map +1 -0
  8. package/dist/components/project/blog-writer/shared/BlogEditor.d.ts +57 -0
  9. package/dist/components/project/blog-writer/shared/BlogEditor.d.ts.map +1 -0
  10. package/dist/components/project/blog-writer/shared/BlogMinimap.d.ts +36 -0
  11. package/dist/components/project/blog-writer/shared/BlogMinimap.d.ts.map +1 -0
  12. package/dist/components/project/blog-writer/shared/EditorErrorFallback.d.ts +8 -0
  13. package/dist/components/project/blog-writer/shared/EditorErrorFallback.d.ts.map +1 -0
  14. package/dist/components/project/blog-writer/shared/ImageGallery.d.ts +3 -0
  15. package/dist/components/project/blog-writer/shared/ImageGallery.d.ts.map +1 -0
  16. package/dist/components/project/blog-writer/shared/ImageGenerationLoader.d.ts +8 -0
  17. package/dist/components/project/blog-writer/shared/ImageGenerationLoader.d.ts.map +1 -0
  18. package/dist/components/project/blog-writer/shared/SkeletonEditor.d.ts +12 -0
  19. package/dist/components/project/blog-writer/shared/SkeletonEditor.d.ts.map +1 -0
  20. package/dist/components/project/blog-writer/shared/StreamingProgressOverlay.d.ts +9 -0
  21. package/dist/components/project/blog-writer/shared/StreamingProgressOverlay.d.ts.map +1 -0
  22. package/dist/components/project/blog-writer/shared/__tests__/AgentChatPanel.perf.test.d.ts +14 -0
  23. package/dist/components/project/blog-writer/shared/__tests__/AgentChatPanel.perf.test.d.ts.map +1 -0
  24. package/dist/components/project/blog-writer/shared/__tests__/BlogEditor.perf.test.d.ts +14 -0
  25. package/dist/components/project/blog-writer/shared/__tests__/BlogEditor.perf.test.d.ts.map +1 -0
  26. package/dist/components/project/blog-writer/shared/wordCountUtils.d.ts +30 -0
  27. package/dist/components/project/blog-writer/shared/wordCountUtils.d.ts.map +1 -0
  28. package/dist/components/shared/editor/CustomEditorSkeleton.d.ts +3 -0
  29. package/dist/components/shared/editor/CustomEditorSkeleton.d.ts.map +1 -0
  30. package/dist/components/tiptap-extension/ari-score-extension.d.ts +6 -0
  31. package/dist/components/tiptap-extension/ari-score-extension.d.ts.map +1 -0
  32. package/dist/components/tiptap-extension/code-block-extension.d.ts +7 -0
  33. package/dist/components/tiptap-extension/code-block-extension.d.ts.map +1 -0
  34. package/dist/components/tiptap-extension/diff-marks-extension.d.ts +4 -0
  35. package/dist/components/tiptap-extension/diff-marks-extension.d.ts.map +1 -0
  36. package/dist/components/tiptap-extension/drag-handle-extension.d.ts +16 -0
  37. package/dist/components/tiptap-extension/drag-handle-extension.d.ts.map +1 -0
  38. package/dist/components/tiptap-extension/instagram-extension.d.ts +26 -0
  39. package/dist/components/tiptap-extension/instagram-extension.d.ts.map +1 -0
  40. package/dist/components/tiptap-extension/link-extension.d.ts +3 -0
  41. package/dist/components/tiptap-extension/link-extension.d.ts.map +1 -0
  42. package/dist/components/tiptap-extension/reference-manager-extension.d.ts +17 -0
  43. package/dist/components/tiptap-extension/reference-manager-extension.d.ts.map +1 -0
  44. package/dist/components/tiptap-extension/resizable-image-extension.d.ts +2 -0
  45. package/dist/components/tiptap-extension/resizable-image-extension.d.ts.map +1 -0
  46. package/dist/components/tiptap-extension/selection-extension.d.ts +4 -0
  47. package/dist/components/tiptap-extension/selection-extension.d.ts.map +1 -0
  48. package/dist/components/tiptap-extension/table-extension.d.ts +10 -0
  49. package/dist/components/tiptap-extension/table-extension.d.ts.map +1 -0
  50. package/dist/components/tiptap-extension/trailing-node-extension.d.ts +8 -0
  51. package/dist/components/tiptap-extension/trailing-node-extension.d.ts.map +1 -0
  52. package/dist/components/tiptap-extension/x-extension.d.ts +26 -0
  53. package/dist/components/tiptap-extension/x-extension.d.ts.map +1 -0
  54. package/dist/components/tiptap-extension/youtube-extension.d.ts +42 -0
  55. package/dist/components/tiptap-extension/youtube-extension.d.ts.map +1 -0
  56. package/dist/components/tiptap-icons/align-center-icon.d.ts +3 -0
  57. package/dist/components/tiptap-icons/align-center-icon.d.ts.map +1 -0
  58. package/dist/components/tiptap-icons/align-justify-icon.d.ts +3 -0
  59. package/dist/components/tiptap-icons/align-justify-icon.d.ts.map +1 -0
  60. package/dist/components/tiptap-icons/align-left-icon.d.ts +3 -0
  61. package/dist/components/tiptap-icons/align-left-icon.d.ts.map +1 -0
  62. package/dist/components/tiptap-icons/align-right-icon.d.ts +3 -0
  63. package/dist/components/tiptap-icons/align-right-icon.d.ts.map +1 -0
  64. package/dist/components/tiptap-icons/arrow-left-icon.d.ts +3 -0
  65. package/dist/components/tiptap-icons/arrow-left-icon.d.ts.map +1 -0
  66. package/dist/components/tiptap-icons/ban-icon.d.ts +3 -0
  67. package/dist/components/tiptap-icons/ban-icon.d.ts.map +1 -0
  68. package/dist/components/tiptap-icons/block-quote-icon.d.ts +3 -0
  69. package/dist/components/tiptap-icons/block-quote-icon.d.ts.map +1 -0
  70. package/dist/components/tiptap-icons/bold-icon.d.ts +3 -0
  71. package/dist/components/tiptap-icons/bold-icon.d.ts.map +1 -0
  72. package/dist/components/tiptap-icons/check-icon.d.ts +3 -0
  73. package/dist/components/tiptap-icons/check-icon.d.ts.map +1 -0
  74. package/dist/components/tiptap-icons/chevron-down-icon.d.ts +3 -0
  75. package/dist/components/tiptap-icons/chevron-down-icon.d.ts.map +1 -0
  76. package/dist/components/tiptap-icons/close-icon.d.ts +3 -0
  77. package/dist/components/tiptap-icons/close-icon.d.ts.map +1 -0
  78. package/dist/components/tiptap-icons/code-block-icon.d.ts +3 -0
  79. package/dist/components/tiptap-icons/code-block-icon.d.ts.map +1 -0
  80. package/dist/components/tiptap-icons/code2-icon.d.ts +3 -0
  81. package/dist/components/tiptap-icons/code2-icon.d.ts.map +1 -0
  82. package/dist/components/tiptap-icons/corner-down-left-icon.d.ts +3 -0
  83. package/dist/components/tiptap-icons/corner-down-left-icon.d.ts.map +1 -0
  84. package/dist/components/tiptap-icons/edit-icon.d.ts +3 -0
  85. package/dist/components/tiptap-icons/edit-icon.d.ts.map +1 -0
  86. package/dist/components/tiptap-icons/external-link-icon.d.ts +3 -0
  87. package/dist/components/tiptap-icons/external-link-icon.d.ts.map +1 -0
  88. package/dist/components/tiptap-icons/heading-five-icon.d.ts +3 -0
  89. package/dist/components/tiptap-icons/heading-five-icon.d.ts.map +1 -0
  90. package/dist/components/tiptap-icons/heading-four-icon.d.ts +3 -0
  91. package/dist/components/tiptap-icons/heading-four-icon.d.ts.map +1 -0
  92. package/dist/components/tiptap-icons/heading-icon.d.ts +3 -0
  93. package/dist/components/tiptap-icons/heading-icon.d.ts.map +1 -0
  94. package/dist/components/tiptap-icons/heading-one-icon.d.ts +3 -0
  95. package/dist/components/tiptap-icons/heading-one-icon.d.ts.map +1 -0
  96. package/dist/components/tiptap-icons/heading-six-icon.d.ts +3 -0
  97. package/dist/components/tiptap-icons/heading-six-icon.d.ts.map +1 -0
  98. package/dist/components/tiptap-icons/heading-three-icon.d.ts +3 -0
  99. package/dist/components/tiptap-icons/heading-three-icon.d.ts.map +1 -0
  100. package/dist/components/tiptap-icons/heading-two-icon.d.ts +3 -0
  101. package/dist/components/tiptap-icons/heading-two-icon.d.ts.map +1 -0
  102. package/dist/components/tiptap-icons/highlighter-icon.d.ts +3 -0
  103. package/dist/components/tiptap-icons/highlighter-icon.d.ts.map +1 -0
  104. package/dist/components/tiptap-icons/image-plus-icon.d.ts +3 -0
  105. package/dist/components/tiptap-icons/image-plus-icon.d.ts.map +1 -0
  106. package/dist/components/tiptap-icons/italic-icon.d.ts +3 -0
  107. package/dist/components/tiptap-icons/italic-icon.d.ts.map +1 -0
  108. package/dist/components/tiptap-icons/link-icon.d.ts +3 -0
  109. package/dist/components/tiptap-icons/link-icon.d.ts.map +1 -0
  110. package/dist/components/tiptap-icons/list-icon.d.ts +3 -0
  111. package/dist/components/tiptap-icons/list-icon.d.ts.map +1 -0
  112. package/dist/components/tiptap-icons/list-ordered-icon.d.ts +3 -0
  113. package/dist/components/tiptap-icons/list-ordered-icon.d.ts.map +1 -0
  114. package/dist/components/tiptap-icons/list-todo-icon.d.ts +3 -0
  115. package/dist/components/tiptap-icons/list-todo-icon.d.ts.map +1 -0
  116. package/dist/components/tiptap-icons/magic-icon.d.ts +5 -0
  117. package/dist/components/tiptap-icons/magic-icon.d.ts.map +1 -0
  118. package/dist/components/tiptap-icons/moon-star-icon.d.ts +3 -0
  119. package/dist/components/tiptap-icons/moon-star-icon.d.ts.map +1 -0
  120. package/dist/components/tiptap-icons/redo2-icon.d.ts +3 -0
  121. package/dist/components/tiptap-icons/redo2-icon.d.ts.map +1 -0
  122. package/dist/components/tiptap-icons/strike-icon.d.ts +3 -0
  123. package/dist/components/tiptap-icons/strike-icon.d.ts.map +1 -0
  124. package/dist/components/tiptap-icons/subscript-icon.d.ts +3 -0
  125. package/dist/components/tiptap-icons/subscript-icon.d.ts.map +1 -0
  126. package/dist/components/tiptap-icons/sun-icon.d.ts +3 -0
  127. package/dist/components/tiptap-icons/sun-icon.d.ts.map +1 -0
  128. package/dist/components/tiptap-icons/superscript-icon.d.ts +3 -0
  129. package/dist/components/tiptap-icons/superscript-icon.d.ts.map +1 -0
  130. package/dist/components/tiptap-icons/table-icon.d.ts +3 -0
  131. package/dist/components/tiptap-icons/table-icon.d.ts.map +1 -0
  132. package/dist/components/tiptap-icons/trash-icon.d.ts +3 -0
  133. package/dist/components/tiptap-icons/trash-icon.d.ts.map +1 -0
  134. package/dist/components/tiptap-icons/underline-icon.d.ts +3 -0
  135. package/dist/components/tiptap-icons/underline-icon.d.ts.map +1 -0
  136. package/dist/components/tiptap-icons/undo2-icon.d.ts +3 -0
  137. package/dist/components/tiptap-icons/undo2-icon.d.ts.map +1 -0
  138. package/dist/components/tiptap-icons/x-icon.d.ts +3 -0
  139. package/dist/components/tiptap-icons/x-icon.d.ts.map +1 -0
  140. package/dist/components/tiptap-node/image-upload-node/image-upload-node-extension.d.ts +47 -0
  141. package/dist/components/tiptap-node/image-upload-node/image-upload-node-extension.d.ts.map +1 -0
  142. package/dist/components/tiptap-node/image-upload-node/image-upload-node.d.ts +12 -0
  143. package/dist/components/tiptap-node/image-upload-node/image-upload-node.d.ts.map +1 -0
  144. package/dist/components/tiptap-node/image-upload-node/index.d.ts +2 -0
  145. package/dist/components/tiptap-node/image-upload-node/index.d.ts.map +1 -0
  146. package/dist/components/tiptap-node/resizable-image-node/image-cropper.d.ts +10 -0
  147. package/dist/components/tiptap-node/resizable-image-node/image-cropper.d.ts.map +1 -0
  148. package/dist/components/tiptap-node/resizable-image-node/resizable-image-node.d.ts +4 -0
  149. package/dist/components/tiptap-node/resizable-image-node/resizable-image-node.d.ts.map +1 -0
  150. package/dist/components/tiptap-templates/simple/blog-simple-editor.d.ts +62 -0
  151. package/dist/components/tiptap-templates/simple/blog-simple-editor.d.ts.map +1 -0
  152. package/dist/components/tiptap-templates/simple/demo-animated-editor.d.ts +2 -0
  153. package/dist/components/tiptap-templates/simple/demo-animated-editor.d.ts.map +1 -0
  154. package/dist/components/tiptap-templates/simple/link-bubble.d.ts +9 -0
  155. package/dist/components/tiptap-templates/simple/link-bubble.d.ts.map +1 -0
  156. package/dist/components/tiptap-templates/simple/simple-editor-animated.d.ts +2 -0
  157. package/dist/components/tiptap-templates/simple/simple-editor-animated.d.ts.map +1 -0
  158. package/dist/components/tiptap-templates/simple/simple-editor.d.ts +13 -0
  159. package/dist/components/tiptap-templates/simple/simple-editor.d.ts.map +1 -0
  160. package/dist/components/tiptap-templates/simple/table-bubble.d.ts +7 -0
  161. package/dist/components/tiptap-templates/simple/table-bubble.d.ts.map +1 -0
  162. package/dist/components/tiptap-templates/simple/text-selection-bubble.d.ts +8 -0
  163. package/dist/components/tiptap-templates/simple/text-selection-bubble.d.ts.map +1 -0
  164. package/dist/components/tiptap-templates/simple/theme-toggle.d.ts +2 -0
  165. package/dist/components/tiptap-templates/simple/theme-toggle.d.ts.map +1 -0
  166. package/dist/components/tiptap-ui/ai/AIBubbleMenu.d.ts +8 -0
  167. package/dist/components/tiptap-ui/ai/AIBubbleMenu.d.ts.map +1 -0
  168. package/dist/components/tiptap-ui/ai/AICompletionCommands.d.ts +10 -0
  169. package/dist/components/tiptap-ui/ai/AICompletionCommands.d.ts.map +1 -0
  170. package/dist/components/tiptap-ui/ai/AIInput.d.ts +12 -0
  171. package/dist/components/tiptap-ui/ai/AIInput.d.ts.map +1 -0
  172. package/dist/components/tiptap-ui/ai/AISelector.d.ts +10 -0
  173. package/dist/components/tiptap-ui/ai/AISelector.d.ts.map +1 -0
  174. package/dist/components/tiptap-ui/ai/AISelectorCommands.d.ts +9 -0
  175. package/dist/components/tiptap-ui/ai/AISelectorCommands.d.ts.map +1 -0
  176. package/dist/components/tiptap-ui/ai/GenerativeMenuSwitch.d.ts +13 -0
  177. package/dist/components/tiptap-ui/ai/GenerativeMenuSwitch.d.ts.map +1 -0
  178. package/dist/components/tiptap-ui/ai/LinkSelector.d.ts +18 -0
  179. package/dist/components/tiptap-ui/ai/LinkSelector.d.ts.map +1 -0
  180. package/dist/components/tiptap-ui/ai/TextButtons.d.ts +10 -0
  181. package/dist/components/tiptap-ui/ai/TextButtons.d.ts.map +1 -0
  182. package/dist/components/tiptap-ui/ai/ai-request-context.d.ts +14 -0
  183. package/dist/components/tiptap-ui/ai/ai-request-context.d.ts.map +1 -0
  184. package/dist/components/tiptap-ui/ai/useAICompletion.d.ts +25 -0
  185. package/dist/components/tiptap-ui/ai/useAICompletion.d.ts.map +1 -0
  186. package/dist/components/tiptap-ui/blockquote-button/blockquote-button.d.ts +43 -0
  187. package/dist/components/tiptap-ui/blockquote-button/blockquote-button.d.ts.map +1 -0
  188. package/dist/components/tiptap-ui/blockquote-button/index.d.ts +2 -0
  189. package/dist/components/tiptap-ui/blockquote-button/index.d.ts.map +1 -0
  190. package/dist/components/tiptap-ui/code-block-button/code-block-button.d.ts +43 -0
  191. package/dist/components/tiptap-ui/code-block-button/code-block-button.d.ts.map +1 -0
  192. package/dist/components/tiptap-ui/code-block-button/index.d.ts +2 -0
  193. package/dist/components/tiptap-ui/code-block-button/index.d.ts.map +1 -0
  194. package/dist/components/tiptap-ui/color-highlight-button/color-highlight-button.d.ts +78 -0
  195. package/dist/components/tiptap-ui/color-highlight-button/color-highlight-button.d.ts.map +1 -0
  196. package/dist/components/tiptap-ui/color-highlight-button/index.d.ts +2 -0
  197. package/dist/components/tiptap-ui/color-highlight-button/index.d.ts.map +1 -0
  198. package/dist/components/tiptap-ui/color-highlight-popover/color-highlight-popover.d.ts +29 -0
  199. package/dist/components/tiptap-ui/color-highlight-popover/color-highlight-popover.d.ts.map +1 -0
  200. package/dist/components/tiptap-ui/color-highlight-popover/index.d.ts +2 -0
  201. package/dist/components/tiptap-ui/color-highlight-popover/index.d.ts.map +1 -0
  202. package/dist/components/tiptap-ui/drag-handle/drag-handle.d.ts +8 -0
  203. package/dist/components/tiptap-ui/drag-handle/drag-handle.d.ts.map +1 -0
  204. package/dist/components/tiptap-ui/drag-handle/index.d.ts +3 -0
  205. package/dist/components/tiptap-ui/drag-handle/index.d.ts.map +1 -0
  206. package/dist/components/tiptap-ui/font-family-dropdown/font-family-dropdown.d.ts +43 -0
  207. package/dist/components/tiptap-ui/font-family-dropdown/font-family-dropdown.d.ts.map +1 -0
  208. package/dist/components/tiptap-ui/font-family-dropdown/index.d.ts +2 -0
  209. package/dist/components/tiptap-ui/font-family-dropdown/index.d.ts.map +1 -0
  210. package/dist/components/tiptap-ui/font-family-dropdown-menu/font-family-dropdown-menu.d.ts +10 -0
  211. package/dist/components/tiptap-ui/font-family-dropdown-menu/font-family-dropdown-menu.d.ts.map +1 -0
  212. package/dist/components/tiptap-ui/font-family-dropdown-menu/index.d.ts +2 -0
  213. package/dist/components/tiptap-ui/font-family-dropdown-menu/index.d.ts.map +1 -0
  214. package/dist/components/tiptap-ui/heading-button/heading-button.d.ts +56 -0
  215. package/dist/components/tiptap-ui/heading-button/heading-button.d.ts.map +1 -0
  216. package/dist/components/tiptap-ui/heading-button/index.d.ts +2 -0
  217. package/dist/components/tiptap-ui/heading-button/index.d.ts.map +1 -0
  218. package/dist/components/tiptap-ui/heading-dropdown-menu/heading-dropdown-menu.d.ts +13 -0
  219. package/dist/components/tiptap-ui/heading-dropdown-menu/heading-dropdown-menu.d.ts.map +1 -0
  220. package/dist/components/tiptap-ui/heading-dropdown-menu/index.d.ts +2 -0
  221. package/dist/components/tiptap-ui/heading-dropdown-menu/index.d.ts.map +1 -0
  222. package/dist/components/tiptap-ui/image-gallery/ImageGalleryDialog.d.ts +34 -0
  223. package/dist/components/tiptap-ui/image-gallery/ImageGalleryDialog.d.ts.map +1 -0
  224. package/dist/components/tiptap-ui/image-upload-button/image-upload-button.d.ts +26 -0
  225. package/dist/components/tiptap-ui/image-upload-button/image-upload-button.d.ts.map +1 -0
  226. package/dist/components/tiptap-ui/image-upload-button/index.d.ts +2 -0
  227. package/dist/components/tiptap-ui/image-upload-button/index.d.ts.map +1 -0
  228. package/dist/components/tiptap-ui/link-popover/index.d.ts +2 -0
  229. package/dist/components/tiptap-ui/link-popover/index.d.ts.map +1 -0
  230. package/dist/components/tiptap-ui/link-popover/link-popover.d.ts +50 -0
  231. package/dist/components/tiptap-ui/link-popover/link-popover.d.ts.map +1 -0
  232. package/dist/components/tiptap-ui/list-button/index.d.ts +2 -0
  233. package/dist/components/tiptap-ui/list-button/index.d.ts.map +1 -0
  234. package/dist/components/tiptap-ui/list-button/list-button.d.ts +51 -0
  235. package/dist/components/tiptap-ui/list-button/list-button.d.ts.map +1 -0
  236. package/dist/components/tiptap-ui/list-dropdown-menu/index.d.ts +2 -0
  237. package/dist/components/tiptap-ui/list-dropdown-menu/index.d.ts.map +1 -0
  238. package/dist/components/tiptap-ui/list-dropdown-menu/list-dropdown-menu.d.ts +43 -0
  239. package/dist/components/tiptap-ui/list-dropdown-menu/list-dropdown-menu.d.ts.map +1 -0
  240. package/dist/components/tiptap-ui/mark-button/index.d.ts +2 -0
  241. package/dist/components/tiptap-ui/mark-button/index.d.ts.map +1 -0
  242. package/dist/components/tiptap-ui/mark-button/mark-button.d.ts +56 -0
  243. package/dist/components/tiptap-ui/mark-button/mark-button.d.ts.map +1 -0
  244. package/dist/components/tiptap-ui/search-and-replace/search-and-replace.d.ts +28 -0
  245. package/dist/components/tiptap-ui/search-and-replace/search-and-replace.d.ts.map +1 -0
  246. package/dist/components/tiptap-ui/table-dropdown-menu/index.d.ts +3 -0
  247. package/dist/components/tiptap-ui/table-dropdown-menu/index.d.ts.map +1 -0
  248. package/dist/components/tiptap-ui/table-dropdown-menu/table-dropdown-menu.d.ts +34 -0
  249. package/dist/components/tiptap-ui/table-dropdown-menu/table-dropdown-menu.d.ts.map +1 -0
  250. package/dist/components/tiptap-ui/text-align-button/index.d.ts +2 -0
  251. package/dist/components/tiptap-ui/text-align-button/index.d.ts.map +1 -0
  252. package/dist/components/tiptap-ui/text-align-button/text-align-button.d.ts +56 -0
  253. package/dist/components/tiptap-ui/text-align-button/text-align-button.d.ts.map +1 -0
  254. package/dist/components/tiptap-ui/text-align-dropdown-menu/index.d.ts +2 -0
  255. package/dist/components/tiptap-ui/text-align-dropdown-menu/index.d.ts.map +1 -0
  256. package/dist/components/tiptap-ui/text-align-dropdown-menu/text-align-dropdown-menu.d.ts +52 -0
  257. package/dist/components/tiptap-ui/text-align-dropdown-menu/text-align-dropdown-menu.d.ts.map +1 -0
  258. package/dist/components/tiptap-ui/text-format-dropdown-menu/index.d.ts +3 -0
  259. package/dist/components/tiptap-ui/text-format-dropdown-menu/index.d.ts.map +1 -0
  260. package/dist/components/tiptap-ui/text-format-dropdown-menu/text-format-dropdown-menu.d.ts +54 -0
  261. package/dist/components/tiptap-ui/text-format-dropdown-menu/text-format-dropdown-menu.d.ts.map +1 -0
  262. package/dist/components/tiptap-ui/undo-redo-button/index.d.ts +2 -0
  263. package/dist/components/tiptap-ui/undo-redo-button/index.d.ts.map +1 -0
  264. package/dist/components/tiptap-ui/undo-redo-button/undo-redo-button.d.ts +76 -0
  265. package/dist/components/tiptap-ui/undo-redo-button/undo-redo-button.d.ts.map +1 -0
  266. package/dist/components/tiptap-ui-primitive/button/button.d.ts +19 -0
  267. package/dist/components/tiptap-ui-primitive/button/button.d.ts.map +1 -0
  268. package/dist/components/tiptap-ui-primitive/button/index.d.ts +2 -0
  269. package/dist/components/tiptap-ui-primitive/button/index.d.ts.map +1 -0
  270. package/dist/components/tiptap-ui-primitive/dropdown-menu/dropdown-menu.d.ts +49 -0
  271. package/dist/components/tiptap-ui-primitive/dropdown-menu/dropdown-menu.d.ts.map +1 -0
  272. package/dist/components/tiptap-ui-primitive/dropdown-menu/index.d.ts +2 -0
  273. package/dist/components/tiptap-ui-primitive/dropdown-menu/index.d.ts.map +1 -0
  274. package/dist/components/tiptap-ui-primitive/loading-circle.d.ts +5 -0
  275. package/dist/components/tiptap-ui-primitive/loading-circle.d.ts.map +1 -0
  276. package/dist/components/tiptap-ui-primitive/popover/index.d.ts +2 -0
  277. package/dist/components/tiptap-ui-primitive/popover/index.d.ts.map +1 -0
  278. package/dist/components/tiptap-ui-primitive/popover/popover.d.ts +36 -0
  279. package/dist/components/tiptap-ui-primitive/popover/popover.d.ts.map +1 -0
  280. package/dist/components/tiptap-ui-primitive/separator/index.d.ts +2 -0
  281. package/dist/components/tiptap-ui-primitive/separator/index.d.ts.map +1 -0
  282. package/dist/components/tiptap-ui-primitive/separator/separator.d.ts +11 -0
  283. package/dist/components/tiptap-ui-primitive/separator/separator.d.ts.map +1 -0
  284. package/dist/components/tiptap-ui-primitive/spacer/index.d.ts +2 -0
  285. package/dist/components/tiptap-ui-primitive/spacer/index.d.ts.map +1 -0
  286. package/dist/components/tiptap-ui-primitive/spacer/spacer.d.ts +11 -0
  287. package/dist/components/tiptap-ui-primitive/spacer/spacer.d.ts.map +1 -0
  288. package/dist/components/tiptap-ui-primitive/toolbar/animated-toolbar-button.d.ts +15 -0
  289. package/dist/components/tiptap-ui-primitive/toolbar/animated-toolbar-button.d.ts.map +1 -0
  290. package/dist/components/tiptap-ui-primitive/toolbar/animated-toolbar.d.ts +28 -0
  291. package/dist/components/tiptap-ui-primitive/toolbar/animated-toolbar.d.ts.map +1 -0
  292. package/dist/components/tiptap-ui-primitive/toolbar/index.d.ts +2 -0
  293. package/dist/components/tiptap-ui-primitive/toolbar/index.d.ts.map +1 -0
  294. package/dist/components/tiptap-ui-primitive/toolbar/toolbar.d.ts +16 -0
  295. package/dist/components/tiptap-ui-primitive/toolbar/toolbar.d.ts.map +1 -0
  296. package/dist/components/tiptap-ui-primitive/tooltip/index.d.ts +2 -0
  297. package/dist/components/tiptap-ui-primitive/tooltip/index.d.ts.map +1 -0
  298. package/dist/components/tiptap-ui-primitive/tooltip/tooltip.d.ts +31 -0
  299. package/dist/components/tiptap-ui-primitive/tooltip/tooltip.d.ts.map +1 -0
  300. package/dist/components/ui/AnimatedGradientText.d.ts +10 -0
  301. package/dist/components/ui/AnimatedGradientText.d.ts.map +1 -0
  302. package/dist/components/ui/badge.d.ts +7 -0
  303. package/dist/components/ui/badge.d.ts.map +1 -0
  304. package/dist/components/ui/button.d.ts +11 -0
  305. package/dist/components/ui/button.d.ts.map +1 -0
  306. package/dist/components/ui/card.d.ts +15 -0
  307. package/dist/components/ui/card.d.ts.map +1 -0
  308. package/dist/components/ui/dialog.d.ts +22 -0
  309. package/dist/components/ui/dialog.d.ts.map +1 -0
  310. package/dist/components/ui/input.d.ts +8 -0
  311. package/dist/components/ui/input.d.ts.map +1 -0
  312. package/dist/components/ui/label.d.ts +9 -0
  313. package/dist/components/ui/label.d.ts.map +1 -0
  314. package/dist/components/ui/loading.d.ts +13 -0
  315. package/dist/components/ui/loading.d.ts.map +1 -0
  316. package/dist/components/ui/modal.d.ts +11 -0
  317. package/dist/components/ui/modal.d.ts.map +1 -0
  318. package/dist/components/ui/popover.d.ts +9 -0
  319. package/dist/components/ui/popover.d.ts.map +1 -0
  320. package/dist/components/ui/simple-modal.d.ts +11 -0
  321. package/dist/components/ui/simple-modal.d.ts.map +1 -0
  322. package/dist/components/ui/textarea.d.ts +8 -0
  323. package/dist/components/ui/textarea.d.ts.map +1 -0
  324. package/dist/components/ui/toast.d.ts +15 -0
  325. package/dist/components/ui/toast.d.ts.map +1 -0
  326. package/dist/constants/index.d.ts +4 -0
  327. package/dist/constants/index.d.ts.map +1 -0
  328. package/dist/extensions/DiffMarks/DeletionMark.d.ts +6 -0
  329. package/dist/extensions/DiffMarks/DeletionMark.d.ts.map +1 -0
  330. package/dist/extensions/DiffMarks/InsertionMark.d.ts +6 -0
  331. package/dist/extensions/DiffMarks/InsertionMark.d.ts.map +1 -0
  332. package/dist/extensions/DiffMarks/index.d.ts +6 -0
  333. package/dist/extensions/DiffMarks/index.d.ts.map +1 -0
  334. package/dist/extensions/VersionComparison/VersionComparisonExtension.d.ts +44 -0
  335. package/dist/extensions/VersionComparison/VersionComparisonExtension.d.ts.map +1 -0
  336. package/dist/extensions/search-and-replace.d.ts +42 -0
  337. package/dist/extensions/search-and-replace.d.ts.map +1 -0
  338. package/dist/hooks/use-cursor-visibility.d.ts +35 -0
  339. package/dist/hooks/use-cursor-visibility.d.ts.map +1 -0
  340. package/dist/hooks/use-menu-navigation.d.ts +19 -0
  341. package/dist/hooks/use-menu-navigation.d.ts.map +1 -0
  342. package/dist/hooks/use-mobile.d.ts +2 -0
  343. package/dist/hooks/use-mobile.d.ts.map +1 -0
  344. package/dist/hooks/use-tiptap-editor.d.ts +3 -0
  345. package/dist/hooks/use-tiptap-editor.d.ts.map +1 -0
  346. package/dist/hooks/use-window-size.d.ts +12 -0
  347. package/dist/hooks/use-window-size.d.ts.map +1 -0
  348. package/dist/hooks/useIsMobile.d.ts +4 -0
  349. package/dist/hooks/useIsMobile.d.ts.map +1 -0
  350. package/dist/hooks/useKeywordToast.d.ts +10 -0
  351. package/dist/hooks/useKeywordToast.d.ts.map +1 -0
  352. package/dist/hooks/useToast.d.ts +10 -0
  353. package/dist/hooks/useToast.d.ts.map +1 -0
  354. package/dist/index.d.ts +4 -212
  355. package/dist/index.d.ts.map +1 -1
  356. package/dist/index.mjs +54533 -958
  357. package/dist/index.umd.js +1561 -20
  358. package/dist/lib/editor-formatting/extensions/resizable-image-caption-extension.d.ts +36 -0
  359. package/dist/lib/editor-formatting/extensions/resizable-image-caption-extension.d.ts.map +1 -0
  360. package/dist/lib/editor-formatting/extensions/spacing-normalization-extension.d.ts +35 -0
  361. package/dist/lib/editor-formatting/extensions/spacing-normalization-extension.d.ts.map +1 -0
  362. package/dist/lib/editor-formatting/extensions/table-formatting-extension.d.ts +48 -0
  363. package/dist/lib/editor-formatting/extensions/table-formatting-extension.d.ts.map +1 -0
  364. package/dist/lib/editor-formatting/index.d.ts +88 -0
  365. package/dist/lib/editor-formatting/index.d.ts.map +1 -0
  366. package/dist/lib/editor-formatting/nodes/resizable-image-caption-node.d.ts +5 -0
  367. package/dist/lib/editor-formatting/nodes/resizable-image-caption-node.d.ts.map +1 -0
  368. package/dist/lib/editor-formatting/types.d.ts +70 -0
  369. package/dist/lib/editor-formatting/types.d.ts.map +1 -0
  370. package/dist/lib/editor-formatting/utils/image-utils.d.ts +66 -0
  371. package/dist/lib/editor-formatting/utils/image-utils.d.ts.map +1 -0
  372. package/dist/lib/editor-formatting/utils/spacing-utils.d.ts +41 -0
  373. package/dist/lib/editor-formatting/utils/spacing-utils.d.ts.map +1 -0
  374. package/dist/lib/editor-formatting/utils/table-utils.d.ts +86 -0
  375. package/dist/lib/editor-formatting/utils/table-utils.d.ts.map +1 -0
  376. package/dist/lib/routes.d.ts +6 -0
  377. package/dist/lib/routes.d.ts.map +1 -0
  378. package/dist/lib/supabase-types.d.ts +42 -0
  379. package/dist/lib/supabase-types.d.ts.map +1 -0
  380. package/dist/lib/tiptap-utils.d.ts +90 -0
  381. package/dist/lib/tiptap-utils.d.ts.map +1 -0
  382. package/dist/lib/utils.d.ts +3 -0
  383. package/dist/lib/utils.d.ts.map +1 -0
  384. package/dist/style.css +1 -0
  385. package/dist/styles.css +1 -1150
  386. package/dist/types/analytics.d.ts +14 -0
  387. package/dist/types/analytics.d.ts.map +1 -0
  388. package/dist/types/cms.d.ts +12 -0
  389. package/dist/types/cms.d.ts.map +1 -0
  390. package/dist/types/diff.types.d.ts +18 -65
  391. package/dist/types/diff.types.d.ts.map +1 -1
  392. package/dist/types/index.d.ts +78 -0
  393. package/dist/types/index.d.ts.map +1 -0
  394. package/dist/utils/cloudinaryUpload.d.ts +34 -0
  395. package/dist/utils/cloudinaryUpload.d.ts.map +1 -0
  396. package/dist/utils/cn.d.ts +3 -0
  397. package/dist/utils/cn.d.ts.map +1 -0
  398. package/dist/utils/codeBlockHandling.d.ts +12 -0
  399. package/dist/utils/codeBlockHandling.d.ts.map +1 -0
  400. package/dist/utils/consoleManager.d.ts +80 -0
  401. package/dist/utils/consoleManager.d.ts.map +1 -0
  402. package/dist/utils/countryCode.d.ts +5 -0
  403. package/dist/utils/countryCode.d.ts.map +1 -0
  404. package/dist/utils/countryCodes.d.ts +17 -0
  405. package/dist/utils/countryCodes.d.ts.map +1 -0
  406. package/dist/utils/countryEmoji.d.ts +35 -0
  407. package/dist/utils/countryEmoji.d.ts.map +1 -0
  408. package/dist/utils/debugSources.d.ts +2 -0
  409. package/dist/utils/debugSources.d.ts.map +1 -0
  410. package/dist/utils/eventBus.d.ts +26 -0
  411. package/dist/utils/eventBus.d.ts.map +1 -0
  412. package/dist/utils/localStorageManager.d.ts +78 -0
  413. package/dist/utils/localStorageManager.d.ts.map +1 -0
  414. package/dist/utils/logger.d.ts +42 -0
  415. package/dist/utils/logger.d.ts.map +1 -0
  416. package/dist/utils/modalTestUtils.d.ts +5 -0
  417. package/dist/utils/modalTestUtils.d.ts.map +1 -0
  418. package/dist/utils/smoothScroll.d.ts +6 -0
  419. package/dist/utils/smoothScroll.d.ts.map +1 -0
  420. package/dist/utils/tableHandling.d.ts +12 -0
  421. package/dist/utils/tableHandling.d.ts.map +1 -0
  422. package/dist/utils/url.d.ts +13 -0
  423. package/dist/utils/url.d.ts.map +1 -0
  424. package/dist/utils/urlUtils.d.ts +14 -0
  425. package/dist/utils/urlUtils.d.ts.map +1 -0
  426. package/dist/utils/urlValidator.d.ts +13 -0
  427. package/dist/utils/urlValidator.d.ts.map +1 -0
  428. package/package.json +70 -3
  429. package/dist/components/BlogEditor.d.ts +0 -4
  430. package/dist/components/BlogEditor.d.ts.map +0 -1
  431. package/dist/components/DiffOverlay.d.ts +0 -4
  432. package/dist/components/DiffOverlay.d.ts.map +0 -1
  433. package/dist/components/ImageGenerationLoader.d.ts +0 -5
  434. package/dist/components/ImageGenerationLoader.d.ts.map +0 -1
  435. package/dist/components/RayoEditor.d.ts +0 -74
  436. package/dist/components/RayoEditor.d.ts.map +0 -1
  437. package/dist/components/ReviewButtons.d.ts +0 -4
  438. package/dist/components/ReviewButtons.d.ts.map +0 -1
  439. package/dist/components/TitleTextarea.d.ts +0 -4
  440. package/dist/components/TitleTextarea.d.ts.map +0 -1
  441. package/dist/components/index.d.ts +0 -7
  442. package/dist/components/index.d.ts.map +0 -1
  443. package/dist/hooks/index.d.ts +0 -3
  444. package/dist/hooks/index.d.ts.map +0 -1
  445. package/dist/hooks/useContentProcessing.d.ts +0 -83
  446. package/dist/hooks/useContentProcessing.d.ts.map +0 -1
  447. package/dist/hooks/useEditorDiff.d.ts +0 -65
  448. package/dist/hooks/useEditorDiff.d.ts.map +0 -1
  449. package/dist/types/editor.types.d.ts +0 -59
  450. package/dist/types/editor.types.d.ts.map +0 -1
  451. package/dist/utils/contentProcessing.d.ts +0 -81
  452. package/dist/utils/contentProcessing.d.ts.map +0 -1
  453. package/dist/utils/diffDetection.d.ts +0 -85
  454. package/dist/utils/diffDetection.d.ts.map +0 -1
  455. package/dist/utils/errorHandling.d.ts +0 -57
  456. package/dist/utils/errorHandling.d.ts.map +0 -1
  457. package/dist/utils/imageHandling.d.ts +0 -52
  458. package/dist/utils/imageHandling.d.ts.map +0 -1
  459. package/dist/utils/index.d.ts +0 -6
  460. package/dist/utils/index.d.ts.map +0 -1
  461. package/dist/utils/proximityMatching.d.ts +0 -80
  462. package/dist/utils/proximityMatching.d.ts.map +0 -1
@@ -0,0 +1,12 @@
1
+ import { TableOperation, DiffPair } from '../types/diff.types';
2
+ /**
3
+ * Groups consecutive tables based on their positions
4
+ * Tables are considered consecutive if the next table starts where the previous one ends
5
+ */
6
+ export declare const groupConsecutiveTables: (tables: TableOperation[]) => TableOperation[][];
7
+ /**
8
+ * Matches table deletions with corresponding insertions
9
+ * Creates DiffPair objects showing the relationship between old and new tables
10
+ */
11
+ export declare const matchTableReplacements: (deletions: TableOperation[], insertions: TableOperation[]) => DiffPair[];
12
+ //# sourceMappingURL=tableHandling.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tableHandling.d.ts","sourceRoot":"","sources":["../../src/utils/tableHandling.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE/D;;;GAGG;AACH,eAAO,MAAM,sBAAsB,GAAI,QAAQ,cAAc,EAAE,KAAG,cAAc,EAAE,EA0BjF,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,sBAAsB,GACjC,WAAW,cAAc,EAAE,EAC3B,YAAY,cAAc,EAAE,KAC3B,QAAQ,EA6CV,CAAC"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Cleans a domain string by removing protocol, www, and trailing slashes
3
+ */
4
+ export declare function cleanDomain(url: string): string;
5
+ /**
6
+ * Validates if a string is a valid URL
7
+ */
8
+ export declare function isValidUrl(url: string): boolean;
9
+ /**
10
+ * Ensures a URL has a protocol
11
+ */
12
+ export declare function ensureProtocol(url: string): string;
13
+ //# sourceMappingURL=url.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"url.d.ts","sourceRoot":"","sources":["../../src/utils/url.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAgB/C;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAO/C;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAKlD"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Ensures URL has www and https protocol
3
+ * @param url The URL to process
4
+ * @returns The URL with www and https protocol
5
+ */
6
+ export declare function formatGSCUrl(url: string): string;
7
+ /**
8
+ * Test cases:
9
+ * https://www.example.com/ → https://www.example.com
10
+ * http://example.com/ → https://www.example.com
11
+ * www.example.com → https://www.example.com
12
+ * example.com → https://www.example.com
13
+ */
14
+ //# sourceMappingURL=urlUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"urlUtils.d.ts","sourceRoot":"","sources":["../../src/utils/urlUtils.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAgBhD;AAED;;;;;;GAMG"}
@@ -0,0 +1,13 @@
1
+ export interface ValidationResult {
2
+ isValid: boolean;
3
+ error?: string;
4
+ normalizedUrl?: string;
5
+ }
6
+ export declare const strictUrlValidator: (url: string) => ValidationResult;
7
+ export declare const getDomainInfo: (url: string) => {
8
+ protocol: string;
9
+ hostname: string;
10
+ pathname: string;
11
+ hasRegionCode: boolean;
12
+ } | null;
13
+ //# sourceMappingURL=urlValidator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"urlValidator.d.ts","sourceRoot":"","sources":["../../src/utils/urlValidator.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,eAAO,MAAM,kBAAkB,GAAI,KAAK,MAAM,KAAG,gBA6ChD,CAAC;AAGF,eAAO,MAAM,aAAa,GAAI,KAAK,MAAM;;;;;QAcxC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rayo-editor",
3
- "version": "0.0.2",
3
+ "version": "0.0.3",
4
4
  "description": "Standalone npm module for Rayo Blog Editor",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -19,7 +19,8 @@
19
19
  ],
20
20
  "scripts": {
21
21
  "dev": "vite",
22
- "build": "tsc && vite build && node scripts/copy-styles.js",
22
+ "build": "vite build && node scripts/copy-styles.js",
23
+ "build:typecheck": "tsc --noEmit && vite build && node scripts/copy-styles.js",
23
24
  "test": "vitest",
24
25
  "test:ui": "vitest --ui",
25
26
  "test:coverage": "vitest --coverage",
@@ -35,9 +36,71 @@
35
36
  "author": "Rayo Team",
36
37
  "license": "MIT",
37
38
  "dependencies": {
38
- "@tiptap/react": "^3.20.1"
39
+ "@emotion/is-prop-valid": "^1.4.0",
40
+ "@floating-ui/react": "^0.27.13",
41
+ "@radix-ui/react-dialog": "^1.0.5",
42
+ "@radix-ui/react-dropdown-menu": "^2.1.6",
43
+ "@radix-ui/react-hover-card": "^1.1.14",
44
+ "@radix-ui/react-label": "^2.1.1",
45
+ "@radix-ui/react-popover": "^1.1.4",
46
+ "@radix-ui/react-slot": "^1.1.2",
47
+ "@rive-app/react-canvas": "^4.25.3",
48
+ "@tiptap/extension-bold": "^2.11.6",
49
+ "@tiptap/extension-bullet-list": "^2.11.6",
50
+ "@tiptap/extension-code-block": "^2.11.6",
51
+ "@tiptap/extension-code-block-lowlight": "^2.11.6",
52
+ "@tiptap/extension-color": "^2.11.6",
53
+ "@tiptap/extension-document": "^2.11.6",
54
+ "@tiptap/extension-font-family": "^2.26.1",
55
+ "@tiptap/extension-heading": "^2.11.6",
56
+ "@tiptap/extension-highlight": "^2.26.0",
57
+ "@tiptap/extension-history": "^2.11.6",
58
+ "@tiptap/extension-image": "^2.26.0",
59
+ "@tiptap/extension-italic": "^2.11.6",
60
+ "@tiptap/extension-link": "^2.26.0",
61
+ "@tiptap/extension-list-item": "^2.11.6",
62
+ "@tiptap/extension-mention": "^2.11.6",
63
+ "@tiptap/extension-ordered-list": "^2.11.6",
64
+ "@tiptap/extension-paragraph": "^2.11.6",
65
+ "@tiptap/extension-strike": "^2.11.6",
66
+ "@tiptap/extension-subscript": "^2.26.0",
67
+ "@tiptap/extension-superscript": "^2.26.0",
68
+ "@tiptap/extension-table": "^2.26.1",
69
+ "@tiptap/extension-table-cell": "^2.11.6",
70
+ "@tiptap/extension-table-header": "^2.11.6",
71
+ "@tiptap/extension-table-row": "^2.11.6",
72
+ "@tiptap/extension-task-item": "^2.26.0",
73
+ "@tiptap/extension-task-list": "^2.26.0",
74
+ "@tiptap/extension-text": "^2.11.6",
75
+ "@tiptap/extension-text-align": "^2.26.0",
76
+ "@tiptap/extension-text-style": "^2.26.1",
77
+ "@tiptap/extension-typography": "^2.26.0",
78
+ "@tiptap/extension-underline": "^2.26.0",
79
+ "@tiptap/extension-youtube": "^3.12.1",
80
+ "@tiptap/pm": "^2.26.0",
81
+ "@tiptap/react": "^2.26.0",
82
+ "@tiptap/starter-kit": "^2.26.0",
83
+ "@tiptap/suggestion": "^2.11.6",
84
+ "@types/file-saver": "^2.0.7",
85
+ "axios": "^1.7.9",
86
+ "class-variance-authority": "^0.7.1",
87
+ "clsx": "^2.1.1",
88
+ "file-saver": "^2.0.5",
89
+ "framer-motion": "^12.23.11",
90
+ "html-docx-js-typescript": "^0.1.5",
91
+ "htmldiff-js": "^1.0.5",
92
+ "lowlight": "^3.3.0",
93
+ "lucide-react": "^0.344.0",
94
+ "react": "^18.0.0",
95
+ "react-dom": "^18.0.0",
96
+ "react-hot-toast": "^2.5.2",
97
+ "react-icons": "^5.4.0",
98
+ "react-image-crop": "^11.0.10",
99
+ "tailwind-merge": "^2.6.0"
39
100
  },
40
101
  "devDependencies": {
102
+ "@tailwindcss/postcss": "^4.2.1",
103
+ "@tailwindcss/typography": "^0.5.19",
41
104
  "@testing-library/jest-dom": "^6.0.0",
42
105
  "@testing-library/react": "^14.0.0",
43
106
  "@types/node": "^20.0.0",
@@ -48,8 +111,12 @@
48
111
  "@vitejs/plugin-react": "^4.0.0",
49
112
  "@vitest/coverage-v8": "^0.34.6",
50
113
  "@vitest/ui": "^0.34.0",
114
+ "autoprefixer": "^10.4.27",
51
115
  "eslint": "^8.0.0",
52
116
  "jsdom": "^28.1.0",
117
+ "postcss": "^8.5.8",
118
+ "sass-embedded": "^1.98.0",
119
+ "tailwindcss": "^4.2.1",
53
120
  "typescript": "^5.0.0",
54
121
  "vite": "^4.0.0",
55
122
  "vite-plugin-dts": "^4.5.4",
@@ -1,4 +0,0 @@
1
- import { default as React } from 'react';
2
- import { RayoEditorProps } from '../types/editor.types';
3
- export declare const BlogEditor: React.FC<RayoEditorProps>;
4
- //# sourceMappingURL=BlogEditor.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BlogEditor.d.ts","sourceRoot":"","sources":["../../src/components/BlogEditor.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAMvD,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CA4DhD,CAAC"}
@@ -1,4 +0,0 @@
1
- import { default as React } from 'react';
2
- import { DiffOverlayProps } from '../types/editor.types';
3
- export declare const DiffOverlay: React.FC<DiffOverlayProps>;
4
- //# sourceMappingURL=DiffOverlay.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DiffOverlay.d.ts","sourceRoot":"","sources":["../../src/components/DiffOverlay.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA6ClD,CAAC"}
@@ -1,5 +0,0 @@
1
- import { default as React } from 'react';
2
- export declare const ImageGenerationLoader: React.FC<{
3
- isLoading?: boolean;
4
- }>;
5
- //# sourceMappingURL=ImageGenerationLoader.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ImageGenerationLoader.d.ts","sourceRoot":"","sources":["../../src/components/ImageGenerationLoader.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,eAAO,MAAM,qBAAqB,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,SAAS,CAAC,EAAE,OAAO,CAAA;CAAE,CASnE,CAAC"}
@@ -1,74 +0,0 @@
1
- import { default as React } from 'react';
2
- import { RayoEditorProps } from '../types/editor.types';
3
- /**
4
- * Main Rayo Editor component - a professional-grade rich text editor
5
- *
6
- * This component provides a complete rich text editing experience with support for:
7
- * - Full HTML editing with headings, lists, code blocks, tables, images
8
- * - Diff highlighting with green (additions) and red (deletions) overlays
9
- * - Review UI for accepting/rejecting changes
10
- * - Image handling with generation support
11
- * - Keyboard shortcuts and accessibility
12
- * - Responsive design for all screen sizes
13
- *
14
- * The component is a drop-in replacement for BlogEditor with identical API.
15
- *
16
- * @component
17
- * @param props - RayoEditorProps configuration object
18
- * @returns React component for rich text editing
19
- *
20
- * @example
21
- * ```tsx
22
- * import { RayoEditor } from 'rayo-editor';
23
- * import 'rayo-editor/styles';
24
- *
25
- * export function MyEditor() {
26
- * const editorRef = useRef<BlogSimpleEditorRef>(null);
27
- * const [content, setContent] = useState('');
28
- * const [title, setTitle] = useState('');
29
- *
30
- * return (
31
- * <RayoEditor
32
- * content={content}
33
- * title={title}
34
- * onChange={setContent}
35
- * onTitleChange={setTitle}
36
- * isLoading={false}
37
- * editorRef={editorRef}
38
- * />
39
- * );
40
- * }
41
- * ```
42
- *
43
- * @example
44
- * With diff highlighting:
45
- * ```tsx
46
- * <RayoEditor
47
- * content={content}
48
- * title={title}
49
- * onChange={setContent}
50
- * onTitleChange={setTitle}
51
- * showDiffs={true}
52
- * pendingChanges={true}
53
- * onAcceptChanges={() => console.log('Accepted')}
54
- * onRejectChanges={() => console.log('Rejected')}
55
- * isLoading={false}
56
- * editorRef={editorRef}
57
- * />
58
- * ```
59
- *
60
- * @example
61
- * Read-only mode:
62
- * ```tsx
63
- * <RayoEditor
64
- * content={publishedContent}
65
- * title={publishedTitle}
66
- * onChange={() => {}}
67
- * readOnly={true}
68
- * isLoading={false}
69
- * editorRef={editorRef}
70
- * />
71
- * ```
72
- */
73
- export declare const RayoEditor: React.FC<RayoEditorProps>;
74
- //# sourceMappingURL=RayoEditor.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"RayoEditor.d.ts","sourceRoot":"","sources":["../../src/components/RayoEditor.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAGvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqEG;AACH,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAMhD,CAAC"}
@@ -1,4 +0,0 @@
1
- import { default as React } from 'react';
2
- import { ReviewButtonsProps } from '../types/editor.types';
3
- export declare const ReviewButtons: React.FC<ReviewButtonsProps>;
4
- //# sourceMappingURL=ReviewButtons.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ReviewButtons.d.ts","sourceRoot":"","sources":["../../src/components/ReviewButtons.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAe1D,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAyBtD,CAAC"}
@@ -1,4 +0,0 @@
1
- import { default as React } from 'react';
2
- import { TitleTextareaProps } from '../types/editor.types';
3
- export declare const TitleTextarea: React.FC<TitleTextareaProps>;
4
- //# sourceMappingURL=TitleTextarea.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TitleTextarea.d.ts","sourceRoot":"","sources":["../../src/components/TitleTextarea.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAyC,MAAM,OAAO,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CA8BtD,CAAC"}
@@ -1,7 +0,0 @@
1
- export { RayoEditor } from './RayoEditor';
2
- export { BlogEditor } from './BlogEditor';
3
- export { TitleTextarea } from './TitleTextarea';
4
- export { DiffOverlay } from './DiffOverlay';
5
- export { ReviewButtons } from './ReviewButtons';
6
- export { ImageGenerationLoader } from './ImageGenerationLoader';
7
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC"}
@@ -1,3 +0,0 @@
1
- export { useEditorDiff } from './useEditorDiff';
2
- export { useContentProcessing } from './useContentProcessing';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC"}
@@ -1,83 +0,0 @@
1
- /**
2
- * Hook for processing and transforming editor content
3
- *
4
- * Manages content state with processing status tracking and error handling.
5
- * Useful for integrating with AI content transformation services or
6
- * implementing custom content processing pipelines.
7
- *
8
- * @param initialContent - Initial content state (default: empty string)
9
- * @returns Object with content state and processing utilities
10
- *
11
- * @returns {Object} Content processing state containing:
12
- * - content: string - Current processed content
13
- * - setContent: (content: string) => void - Directly set content
14
- * - isProcessing: boolean - Whether processing is in progress
15
- * - error: Error | null - Last processing error (if any)
16
- * - processContent: (content: string) => void - Process and update content
17
- *
18
- * @example
19
- * ```tsx
20
- * const {
21
- * content,
22
- * isProcessing,
23
- * error,
24
- * processContent
25
- * } = useContentProcessing('Initial content');
26
- *
27
- * const handleAIEnhance = async () => {
28
- * const enhanced = await fetch('/api/enhance', {
29
- * method: 'POST',
30
- * body: JSON.stringify({ content })
31
- * }).then(r => r.json());
32
- *
33
- * processContent(enhanced.content);
34
- * };
35
- *
36
- * return (
37
- * <>
38
- * {error && <div className="error">{error.message}</div>}
39
- * <button onClick={handleAIEnhance} disabled={isProcessing}>
40
- * {isProcessing ? 'Processing...' : 'Enhance'}
41
- * </button>
42
- * </>
43
- * );
44
- * ```
45
- *
46
- * @example
47
- * With RayoEditor:
48
- * ```tsx
49
- * const { content, isProcessing, processContent } = useContentProcessing('');
50
- *
51
- * return (
52
- * <RayoEditor
53
- * content={content}
54
- * title=""
55
- * onChange={processContent}
56
- * isLoading={isProcessing}
57
- * editorRef={editorRef}
58
- * />
59
- * );
60
- * ```
61
- *
62
- * @example
63
- * Error handling:
64
- * ```tsx
65
- * const { content, isProcessing, error, processContent } = useContentProcessing();
66
- *
67
- * const safeProcess = useCallback((newContent: string) => {
68
- * try {
69
- * processContent(newContent);
70
- * } catch (err) {
71
- * console.error('Processing failed:', err);
72
- * }
73
- * }, [processContent]);
74
- * ```
75
- */
76
- export declare const useContentProcessing: (initialContent?: string) => {
77
- content: string;
78
- setContent: import('react').Dispatch<import('react').SetStateAction<string>>;
79
- isProcessing: boolean;
80
- error: Error | null;
81
- processContent: (newContent: string) => void;
82
- };
83
- //# sourceMappingURL=useContentProcessing.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useContentProcessing.d.ts","sourceRoot":"","sources":["../../src/hooks/useContentProcessing.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0EG;AACH,eAAO,MAAM,oBAAoB,GAAI,iBAAgB,MAAW;;;;;iCAKd,MAAM;CAmBvD,CAAC"}
@@ -1,65 +0,0 @@
1
- import { DiffPair } from '../types/diff.types';
2
- /**
3
- * Hook for managing diff detection and overlay state
4
- *
5
- * Tracks detected diff pairs, active/hover indices, and overlay positioning.
6
- * Automatically throttles diff updates to prevent excessive processing.
7
- *
8
- * @param editorRef - Reference to the editor instance
9
- * @param options - Optional configuration
10
- * @param options.focusMode - Enable focus mode UI (default: false)
11
- * @returns Object with diff state and control functions
12
- *
13
- * @returns {Object} Diff state object containing:
14
- * - diffPairs: DiffPair[] - Array of detected diff pairs
15
- * - setDiffPairs: (pairs: DiffPair[]) => void - Update diff pairs
16
- * - activePairIndex: number - Currently active pair index (-1 if none)
17
- * - setActivePairIndex: (index: number) => void - Set active pair
18
- * - hoverPairIndex: number - Currently hovered pair index
19
- * - setHoverPairIndex: (index: number) => void - Set hovered pair
20
- * - overlayHoleRect: Rect | null - Rectangle for overlay positioning
21
- * - setOverlayHoleRect: (rect: Rect | null) => void - Set overlay position
22
- * - updateDiffRanges: () => void - Trigger diff detection update
23
- *
24
- * @example
25
- * ```tsx
26
- * const {
27
- * diffPairs,
28
- * activePairIndex,
29
- * hoverPairIndex,
30
- * updateDiffRanges
31
- * } = useEditorDiff(editorRef, { focusMode: false });
32
- *
33
- * // Update when needed
34
- * useEffect(() => {
35
- * updateDiffRanges();
36
- * }, [content]);
37
- * ```
38
- *
39
- * @example
40
- * Interactive diff UI:
41
- * ```tsx
42
- * const {
43
- * diffPairs,
44
- * setActivePairIndex,
45
- * setHoverPairIndex
46
- * } = useEditorDiff(editorRef);
47
- *
48
- * // Use diffPairs to render interactive UI elements
49
- * // with hover and click handlers
50
- * ```
51
- */
52
- export declare const useEditorDiff: (_editorRef: any, _options?: {
53
- focusMode?: boolean;
54
- }) => {
55
- diffPairs: DiffPair[];
56
- setDiffPairs: import('react').Dispatch<import('react').SetStateAction<DiffPair[]>>;
57
- activePairIndex: number;
58
- setActivePairIndex: import('react').Dispatch<import('react').SetStateAction<number>>;
59
- hoverPairIndex: number;
60
- setHoverPairIndex: import('react').Dispatch<import('react').SetStateAction<number>>;
61
- overlayHoleRect: any;
62
- setOverlayHoleRect: import('react').Dispatch<any>;
63
- updateDiffRanges: () => void;
64
- };
65
- //# sourceMappingURL=useEditorDiff.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useEditorDiff.d.ts","sourceRoot":"","sources":["../../src/hooks/useEditorDiff.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,eAAO,MAAM,aAAa,GAAI,YAAY,GAAG,EAAE,WAAW;IAAE,SAAS,CAAC,EAAE,OAAO,CAAA;CAAE;;;;;;;;;;CAwChF,CAAC"}
@@ -1,59 +0,0 @@
1
- import { RefObject } from 'react';
2
- import { DiffRange, DiffPair } from './diff.types';
3
- type Editor = any;
4
- export interface BlogSimpleEditorRef {
5
- getEditor: () => Editor | null;
6
- }
7
- export interface RayoEditorProps {
8
- content: string;
9
- title: string;
10
- onChange: (content: string) => void;
11
- onTitleChange?: (title: string) => void;
12
- isLoading: boolean;
13
- isStreaming?: boolean;
14
- isAgentThinking?: boolean;
15
- readOnly?: boolean;
16
- focusMode?: boolean;
17
- pendingChanges?: boolean;
18
- showDiffs?: boolean;
19
- hideReviewUI?: boolean;
20
- editedLinesCount?: number;
21
- onAcceptChanges?: () => void;
22
- onRejectChanges?: () => void;
23
- onAcceptSingleChange?: (greenRange: DiffRange, redRange?: DiffRange) => void;
24
- onRejectSingleChange?: (greenRange: DiffRange, redRange?: DiffRange) => void;
25
- onDiffPairsChange?: (diffPairs: DiffPair[]) => void;
26
- featuredImageUrl?: string;
27
- onEditFeaturedImage?: () => void;
28
- isGeneratingImage?: boolean;
29
- editorRef: RefObject<BlogSimpleEditorRef>;
30
- onAriScoreChange?: (score: number) => void;
31
- disableAutoScroll?: boolean;
32
- onUserScrollChange?: (isScrolledUp: boolean) => void;
33
- showToolbarAnimation?: boolean;
34
- streamingPhase?: string;
35
- }
36
- export interface TitleTextareaProps {
37
- title: string;
38
- onTitleChange?: (title: string) => void;
39
- readOnly?: boolean;
40
- }
41
- export interface DiffOverlayProps {
42
- diffPairs: DiffPair[];
43
- overlayHoleRect: {
44
- top: number;
45
- bottom: number;
46
- } | null;
47
- onPairHover?: (index: number) => void;
48
- onPairClick?: (index: number) => void;
49
- }
50
- export interface ReviewButtonsProps {
51
- onAccept: () => void;
52
- onReject: () => void;
53
- position: {
54
- top: number;
55
- left: number;
56
- };
57
- }
58
- export {};
59
- //# sourceMappingURL=editor.types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"editor.types.d.ts","sourceRoot":"","sources":["../../src/types/editor.types.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAGnD,KAAK,MAAM,GAAG,GAAG,CAAC;AAElB,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;CAChC;AAED,MAAM,WAAW,eAAe;IAE9B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAGxC,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IAGpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IAC7B,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IAC7B,oBAAoB,CAAC,EAAE,CAAC,UAAU,EAAE,SAAS,EAAE,QAAQ,CAAC,EAAE,SAAS,KAAK,IAAI,CAAC;IAC7E,oBAAoB,CAAC,EAAE,CAAC,UAAU,EAAE,SAAS,EAAE,QAAQ,CAAC,EAAE,SAAS,KAAK,IAAI,CAAC;IAC7E,iBAAiB,CAAC,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,IAAI,CAAC;IAGpD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mBAAmB,CAAC,EAAE,MAAM,IAAI,CAAC;IACjC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAG5B,SAAS,EAAE,SAAS,CAAC,mBAAmB,CAAC,CAAC;IAC1C,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3C,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,kBAAkB,CAAC,EAAE,CAAC,YAAY,EAAE,OAAO,KAAK,IAAI,CAAC;IACrD,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB,eAAe,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACxD,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACvC;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CACzC"}
@@ -1,81 +0,0 @@
1
- import { DiffRange } from '../types/diff.types';
2
- /**
3
- * Merges consecutive or overlapping ranges into single ranges
4
- *
5
- * Sorts ranges by start position and combines any that touch or overlap.
6
- * Useful for consolidating multiple small diffs into larger blocks.
7
- *
8
- * @param ranges - Array of DiffRange objects to merge
9
- * @returns Array of merged DiffRange objects (sorted by position)
10
- *
11
- * @example
12
- * ```tsx
13
- * const ranges = [
14
- * { from: 0, to: 5 },
15
- * { from: 5, to: 10 }, // consecutive
16
- * { from: 8, to: 15 } // overlapping
17
- * ];
18
- * const merged = mergeConsecutiveRanges(ranges);
19
- * // Returns: [{ from: 0, to: 15 }]
20
- * ```
21
- *
22
- * @example
23
- * Optimize diff highlighting:
24
- * ```tsx
25
- * const diffRanges = detectAndExtractDiffs(content);
26
- * const optimized = mergeConsecutiveRanges(diffRanges);
27
- * renderHighlights(optimized);
28
- * ```
29
- */
30
- export declare function mergeConsecutiveRanges(ranges: DiffRange[]): DiffRange[];
31
- /**
32
- * Extracts text content from a given range within a string
33
- *
34
- * Simple substring extraction based on position range.
35
- * Returns empty string if range is invalid or out of bounds.
36
- *
37
- * @param content - The full text content
38
- * @param range - The range defining start and end positions
39
- * @returns The extracted text substring
40
- *
41
- * @example
42
- * ```tsx
43
- * const text = 'Hello World';
44
- * const range = { from: 0, to: 5 };
45
- * extractTextContent(text, range); // 'Hello'
46
- * ```
47
- */
48
- export declare function extractTextContent(content: string, range: DiffRange): string;
49
- /**
50
- * Optimizes ranges by merging consecutive ranges and filtering out empty ranges
51
- *
52
- * Performs two optimizations:
53
- * 1. Filters out empty ranges where from === to
54
- * 2. Merges all consecutive/overlapping ranges
55
- *
56
- * Use before rendering to ensure efficient diff highlighting.
57
- *
58
- * @param ranges - Array of DiffRange objects to optimize
59
- * @returns Array of optimized DiffRange objects (minimal, non-overlapping)
60
- *
61
- * @example
62
- * ```tsx
63
- * const ranges = [
64
- * { from: 0, to: 0 }, // empty - filtered
65
- * { from: 5, to: 10 },
66
- * { from: 10, to: 15 } // consecutive - merged
67
- * ];
68
- * const optimized = optimizeRanges(ranges);
69
- * // Returns: [{ from: 5, to: 15 }]
70
- * ```
71
- *
72
- * @example
73
- * Before rendering highlights:
74
- * ```tsx
75
- * const detected = extractDiffRanges(content);
76
- * const optimized = optimizeRanges(detected);
77
- * return <DiffOverlay ranges={optimized} />;
78
- * ```
79
- */
80
- export declare function optimizeRanges(ranges: DiffRange[]): DiffRange[];
81
- //# sourceMappingURL=contentProcessing.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"contentProcessing.d.ts","sourceRoot":"","sources":["../../src/utils/contentProcessing.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEpD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,SAAS,EAAE,CA6BvE;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,MAAM,CAE5E;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,SAAS,EAAE,CAM/D"}