@import-ai/omnibox-editor 0.0.1

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 (359) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +526 -0
  3. package/dist/components/tiptap-extension/ai-generation-widget-extension.d.ts +41 -0
  4. package/dist/components/tiptap-extension/indent-extension.d.ts +90 -0
  5. package/dist/components/tiptap-extension/list-normalization-extension.d.ts +30 -0
  6. package/dist/components/tiptap-extension/node-alignment-extension.d.ts +38 -0
  7. package/dist/components/tiptap-extension/node-background-extension.d.ts +23 -0
  8. package/dist/components/tiptap-extension/triple-click-block-selection-extension.d.ts +13 -0
  9. package/dist/components/tiptap-extension/ui-state-extension.d.ts +22 -0
  10. package/dist/components/tiptap-icons/add-col-left-icon.d.ts +3 -0
  11. package/dist/components/tiptap-icons/add-col-right-icon.d.ts +3 -0
  12. package/dist/components/tiptap-icons/add-row-bottom-icon.d.ts +3 -0
  13. package/dist/components/tiptap-icons/add-row-top-icon.d.ts +3 -0
  14. package/dist/components/tiptap-icons/ai-sparkles-icon.d.ts +3 -0
  15. package/dist/components/tiptap-icons/align-bottom-icon.d.ts +3 -0
  16. package/dist/components/tiptap-icons/align-center-icon.d.ts +3 -0
  17. package/dist/components/tiptap-icons/align-center-vertical-icon.d.ts +3 -0
  18. package/dist/components/tiptap-icons/align-end-vertical-icon.d.ts +3 -0
  19. package/dist/components/tiptap-icons/align-justify-icon.d.ts +3 -0
  20. package/dist/components/tiptap-icons/align-left-icon.d.ts +3 -0
  21. package/dist/components/tiptap-icons/align-middle-icon.d.ts +3 -0
  22. package/dist/components/tiptap-icons/align-right-icon.d.ts +3 -0
  23. package/dist/components/tiptap-icons/align-start-vertical-icon.d.ts +3 -0
  24. package/dist/components/tiptap-icons/align-top-icon.d.ts +3 -0
  25. package/dist/components/tiptap-icons/alignment-icon.d.ts +3 -0
  26. package/dist/components/tiptap-icons/arrow-down-a-z-icon.d.ts +3 -0
  27. package/dist/components/tiptap-icons/arrow-down-icon.d.ts +3 -0
  28. package/dist/components/tiptap-icons/arrow-down-to-line-icon.d.ts +3 -0
  29. package/dist/components/tiptap-icons/arrow-down-z-a-icon.d.ts +3 -0
  30. package/dist/components/tiptap-icons/arrow-left-icon.d.ts +3 -0
  31. package/dist/components/tiptap-icons/arrow-right-icon.d.ts +3 -0
  32. package/dist/components/tiptap-icons/arrow-up-icon.d.ts +3 -0
  33. package/dist/components/tiptap-icons/at-sign-icon.d.ts +3 -0
  34. package/dist/components/tiptap-icons/ban-icon.d.ts +3 -0
  35. package/dist/components/tiptap-icons/blockquote-icon.d.ts +3 -0
  36. package/dist/components/tiptap-icons/bold-icon.d.ts +3 -0
  37. package/dist/components/tiptap-icons/check-ai-icon.d.ts +3 -0
  38. package/dist/components/tiptap-icons/check-icon.d.ts +3 -0
  39. package/dist/components/tiptap-icons/chevron-down-icon.d.ts +3 -0
  40. package/dist/components/tiptap-icons/chevron-right-icon.d.ts +3 -0
  41. package/dist/components/tiptap-icons/clipboard-icon.d.ts +3 -0
  42. package/dist/components/tiptap-icons/close-icon.d.ts +3 -0
  43. package/dist/components/tiptap-icons/code-block-icon.d.ts +3 -0
  44. package/dist/components/tiptap-icons/code2-icon.d.ts +3 -0
  45. package/dist/components/tiptap-icons/copy-icon.d.ts +3 -0
  46. package/dist/components/tiptap-icons/corner-down-left-icon.d.ts +3 -0
  47. package/dist/components/tiptap-icons/external-link-icon.d.ts +3 -0
  48. package/dist/components/tiptap-icons/grip-4-icon.d.ts +3 -0
  49. package/dist/components/tiptap-icons/grip-vertical-icon.d.ts +3 -0
  50. package/dist/components/tiptap-icons/heading-five-icon.d.ts +3 -0
  51. package/dist/components/tiptap-icons/heading-four-icon.d.ts +3 -0
  52. package/dist/components/tiptap-icons/heading-one-icon.d.ts +3 -0
  53. package/dist/components/tiptap-icons/heading-six-icon.d.ts +3 -0
  54. package/dist/components/tiptap-icons/heading-three-icon.d.ts +3 -0
  55. package/dist/components/tiptap-icons/heading-two-icon.d.ts +3 -0
  56. package/dist/components/tiptap-icons/highlighter-icon.d.ts +3 -0
  57. package/dist/components/tiptap-icons/image-caption-icon.d.ts +3 -0
  58. package/dist/components/tiptap-icons/image-icon.d.ts +3 -0
  59. package/dist/components/tiptap-icons/image-plus-icon.d.ts +3 -0
  60. package/dist/components/tiptap-icons/indent-decrease-icon.d.ts +3 -0
  61. package/dist/components/tiptap-icons/indent-increase-icon.d.ts +3 -0
  62. package/dist/components/tiptap-icons/italic-icon.d.ts +3 -0
  63. package/dist/components/tiptap-icons/link-icon.d.ts +3 -0
  64. package/dist/components/tiptap-icons/list-icon.d.ts +3 -0
  65. package/dist/components/tiptap-icons/list-indented-icon.d.ts +3 -0
  66. package/dist/components/tiptap-icons/list-ordered-icon.d.ts +3 -0
  67. package/dist/components/tiptap-icons/list-todo-icon.d.ts +3 -0
  68. package/dist/components/tiptap-icons/mic-ai-icon.d.ts +3 -0
  69. package/dist/components/tiptap-icons/minus-icon.d.ts +3 -0
  70. package/dist/components/tiptap-icons/moon-star-icon.d.ts +3 -0
  71. package/dist/components/tiptap-icons/more-vertical-icon.d.ts +3 -0
  72. package/dist/components/tiptap-icons/move-horizontal-icon.d.ts +3 -0
  73. package/dist/components/tiptap-icons/paint-bucket-icon.d.ts +3 -0
  74. package/dist/components/tiptap-icons/plus-icon.d.ts +3 -0
  75. package/dist/components/tiptap-icons/plus-small-icon.d.ts +3 -0
  76. package/dist/components/tiptap-icons/redo2-icon.d.ts +3 -0
  77. package/dist/components/tiptap-icons/refresh-ai-icon.d.ts +3 -0
  78. package/dist/components/tiptap-icons/refresh-ccw-icon.d.ts +3 -0
  79. package/dist/components/tiptap-icons/repeat-2-icon.d.ts +3 -0
  80. package/dist/components/tiptap-icons/rotate-ccw-icon.d.ts +3 -0
  81. package/dist/components/tiptap-icons/smile-plus-icon.d.ts +3 -0
  82. package/dist/components/tiptap-icons/square-x-icon.d.ts +3 -0
  83. package/dist/components/tiptap-icons/stop-circle-2-icon.d.ts +3 -0
  84. package/dist/components/tiptap-icons/strike-icon.d.ts +3 -0
  85. package/dist/components/tiptap-icons/subscript-icon.d.ts +3 -0
  86. package/dist/components/tiptap-icons/sun-icon.d.ts +3 -0
  87. package/dist/components/tiptap-icons/superscript-icon.d.ts +3 -0
  88. package/dist/components/tiptap-icons/table-cell-merge-icon.d.ts +3 -0
  89. package/dist/components/tiptap-icons/table-cell-split-icon.d.ts +3 -0
  90. package/dist/components/tiptap-icons/table-header-column-icon.d.ts +3 -0
  91. package/dist/components/tiptap-icons/table-header-row-icon.d.ts +3 -0
  92. package/dist/components/tiptap-icons/table-icon.d.ts +3 -0
  93. package/dist/components/tiptap-icons/text-color-small-icon.d.ts +3 -0
  94. package/dist/components/tiptap-icons/trash-icon.d.ts +3 -0
  95. package/dist/components/tiptap-icons/type-icon.d.ts +3 -0
  96. package/dist/components/tiptap-icons/underline-icon.d.ts +3 -0
  97. package/dist/components/tiptap-icons/undo2-icon.d.ts +3 -0
  98. package/dist/components/tiptap-icons/x-icon.d.ts +3 -0
  99. package/dist/components/tiptap-node/code-block-node/code-block-node-extension.d.ts +6 -0
  100. package/dist/components/tiptap-node/code-block-node/code-block-node-view.d.ts +2 -0
  101. package/dist/components/tiptap-node/code-block-node/diagram-render.d.ts +7 -0
  102. package/dist/components/tiptap-node/horizontal-rule-node/horizontal-rule-node-extension.d.ts +2 -0
  103. package/dist/components/tiptap-node/image-node/image-load-state.d.ts +9 -0
  104. package/dist/components/tiptap-node/image-node/image-node-extension.d.ts +7 -0
  105. package/dist/components/tiptap-node/image-node/image-node-floating.d.ts +4 -0
  106. package/dist/components/tiptap-node/image-node/image-node-view.d.ts +26 -0
  107. package/dist/components/tiptap-node/image-upload-node/image-upload-node-extension.d.ts +57 -0
  108. package/dist/components/tiptap-node/image-upload-node/image-upload-node.d.ts +69 -0
  109. package/dist/components/tiptap-node/table-node/extensions/table-handle/helpers/create-image.d.ts +9 -0
  110. package/dist/components/tiptap-node/table-node/extensions/table-handle/index.d.ts +2 -0
  111. package/dist/components/tiptap-node/table-node/extensions/table-handle/table-handle-plugin.d.ts +43 -0
  112. package/dist/components/tiptap-node/table-node/extensions/table-handle/table-handle.d.ts +14 -0
  113. package/dist/components/tiptap-node/table-node/extensions/table-node-extension.d.ts +32 -0
  114. package/dist/components/tiptap-node/table-node/hooks/use-table-handle-state.d.ts +22 -0
  115. package/dist/components/tiptap-node/table-node/lib/tiptap-table-utils.d.ts +395 -0
  116. package/dist/components/tiptap-node/table-node/ui/table-add-row-column-button/index.d.ts +2 -0
  117. package/dist/components/tiptap-node/table-node/ui/table-add-row-column-button/table-add-row-column-button.d.ts +14 -0
  118. package/dist/components/tiptap-node/table-node/ui/table-add-row-column-button/use-table-add-row-column.d.ts +53 -0
  119. package/dist/components/tiptap-node/table-node/ui/table-align-cell-button/index.d.ts +2 -0
  120. package/dist/components/tiptap-node/table-node/ui/table-align-cell-button/table-align-cell-button.d.ts +41 -0
  121. package/dist/components/tiptap-node/table-node/ui/table-align-cell-button/use-table-align-cell.d.ts +145 -0
  122. package/dist/components/tiptap-node/table-node/ui/table-alignment-menu/index.d.ts +1 -0
  123. package/dist/components/tiptap-node/table-node/ui/table-alignment-menu/table-alignment-menu.d.ts +16 -0
  124. package/dist/components/tiptap-node/table-node/ui/table-cell-handle-menu/index.d.ts +1 -0
  125. package/dist/components/tiptap-node/table-node/ui/table-cell-handle-menu/table-cell-handle-menu.d.ts +18 -0
  126. package/dist/components/tiptap-node/table-node/ui/table-clear-row-column-content-button/index.d.ts +2 -0
  127. package/dist/components/tiptap-node/table-node/ui/table-clear-row-column-content-button/table-clear-row-column-content-button.d.ts +14 -0
  128. package/dist/components/tiptap-node/table-node/ui/table-clear-row-column-content-button/use-table-clear-row-column-content.d.ts +96 -0
  129. package/dist/components/tiptap-node/table-node/ui/table-context-menu/index.d.ts +1 -0
  130. package/dist/components/tiptap-node/table-node/ui/table-context-menu/table-context-menu-utils.d.ts +20 -0
  131. package/dist/components/tiptap-node/table-node/ui/table-context-menu/table-context-menu.d.ts +7 -0
  132. package/dist/components/tiptap-node/table-node/ui/table-delete-row-column-button/index.d.ts +2 -0
  133. package/dist/components/tiptap-node/table-node/ui/table-delete-row-column-button/table-delete-row-column-button.d.ts +14 -0
  134. package/dist/components/tiptap-node/table-node/ui/table-delete-row-column-button/use-table-delete-row-column.d.ts +80 -0
  135. package/dist/components/tiptap-node/table-node/ui/table-duplicate-row-column-button/index.d.ts +2 -0
  136. package/dist/components/tiptap-node/table-node/ui/table-duplicate-row-column-button/table-duplicate-row-column-button.d.ts +6 -0
  137. package/dist/components/tiptap-node/table-node/ui/table-duplicate-row-column-button/use-table-duplicate-row-column.d.ts +42 -0
  138. package/dist/components/tiptap-node/table-node/ui/table-extend-row-column-button/index.d.ts +2 -0
  139. package/dist/components/tiptap-node/table-node/ui/table-extend-row-column-button/table-extend-row-column-button.d.ts +23 -0
  140. package/dist/components/tiptap-node/table-node/ui/table-extend-row-column-button/use-table-extend-row-column.d.ts +14 -0
  141. package/dist/components/tiptap-node/table-node/ui/table-fit-to-width-button/index.d.ts +2 -0
  142. package/dist/components/tiptap-node/table-node/ui/table-fit-to-width-button/table-fit-to-width-button.d.ts +21 -0
  143. package/dist/components/tiptap-node/table-node/ui/table-fit-to-width-button/use-table-fit-to-width.d.ts +67 -0
  144. package/dist/components/tiptap-node/table-node/ui/table-handle/table-handle.d.ts +50 -0
  145. package/dist/components/tiptap-node/table-node/ui/table-handle/use-table-handle-positioning.d.ts +41 -0
  146. package/dist/components/tiptap-node/table-node/ui/table-handle-menu/index.d.ts +1 -0
  147. package/dist/components/tiptap-node/table-node/ui/table-handle-menu/table-handle-menu.d.ts +25 -0
  148. package/dist/components/tiptap-node/table-node/ui/table-header-row-column-button/index.d.ts +2 -0
  149. package/dist/components/tiptap-node/table-node/ui/table-header-row-column-button/table-header-row-column-button.d.ts +15 -0
  150. package/dist/components/tiptap-node/table-node/ui/table-header-row-column-button/use-table-header-row-column.d.ts +51 -0
  151. package/dist/components/tiptap-node/table-node/ui/table-merge-split-cell-button/index.d.ts +2 -0
  152. package/dist/components/tiptap-node/table-node/ui/table-merge-split-cell-button/table-merge-split-cell-button.d.ts +43 -0
  153. package/dist/components/tiptap-node/table-node/ui/table-merge-split-cell-button/use-table-merge-split-cell.d.ts +119 -0
  154. package/dist/components/tiptap-node/table-node/ui/table-move-row-column-button/index.d.ts +2 -0
  155. package/dist/components/tiptap-node/table-node/ui/table-move-row-column-button/table-move-row-column-button.d.ts +37 -0
  156. package/dist/components/tiptap-node/table-node/ui/table-move-row-column-button/use-table-move-row-column.d.ts +94 -0
  157. package/dist/components/tiptap-node/table-node/ui/table-selection-overlay/index.d.ts +1 -0
  158. package/dist/components/tiptap-node/table-node/ui/table-selection-overlay/table-selection-overlay.d.ts +15 -0
  159. package/dist/components/tiptap-node/table-node/ui/table-selection-overlay/use-resize-overlay.d.ts +2 -0
  160. package/dist/components/tiptap-node/table-node/ui/table-sort-row-column-button/index.d.ts +2 -0
  161. package/dist/components/tiptap-node/table-node/ui/table-sort-row-column-button/table-sort-row-column-button.d.ts +14 -0
  162. package/dist/components/tiptap-node/table-node/ui/table-sort-row-column-button/use-table-sort-row-column.d.ts +111 -0
  163. package/dist/components/tiptap-node/toc-node/context/toc-context.d.ts +44 -0
  164. package/dist/components/tiptap-node/toc-node/extensions/toc-node-extension.d.ts +45 -0
  165. package/dist/components/tiptap-node/toc-node/index.d.ts +3 -0
  166. package/dist/components/tiptap-node/toc-node/toc-node.d.ts +4 -0
  167. package/dist/components/tiptap-node/toc-node/ui/toc-show-title-button/index.d.ts +2 -0
  168. package/dist/components/tiptap-node/toc-node/ui/toc-show-title-button/toc-show-title-button.d.ts +16 -0
  169. package/dist/components/tiptap-node/toc-node/ui/toc-show-title-button/toc-show-title.d.ts +83 -0
  170. package/dist/components/tiptap-node/toc-node/ui/toc-sidebar/index.d.ts +1 -0
  171. package/dist/components/tiptap-node/toc-node/ui/toc-sidebar/toc-sidebar.d.ts +14 -0
  172. package/dist/components/tiptap-templates/omnibox/omnibox-editor-header.d.ts +1 -0
  173. package/dist/components/tiptap-templates/omnibox/omnibox-editor-mobile-toolbar.d.ts +14 -0
  174. package/dist/components/tiptap-templates/omnibox/omnibox-editor-theme-toggle.d.ts +1 -0
  175. package/dist/components/tiptap-templates/omnibox/omnibox-editor-toolbar-floating.d.ts +15 -0
  176. package/dist/components/tiptap-templates/omnibox/omnibox-editor.d.ts +32 -0
  177. package/dist/components/tiptap-ui/ai-composer/ai-composer.d.ts +21 -0
  178. package/dist/components/tiptap-ui/ai-composer/ai-generation-state.d.ts +6 -0
  179. package/dist/components/tiptap-ui/ai-composer/ai-markdown-preview.d.ts +4 -0
  180. package/dist/components/tiptap-ui/ai-composer/ai-review-controls.d.ts +13 -0
  181. package/dist/components/tiptap-ui/ai-composer/ai-writing-indicator.d.ts +10 -0
  182. package/dist/components/tiptap-ui/ai-composer/index.d.ts +3 -0
  183. package/dist/components/tiptap-ui/blockquote-button/blockquote-button.d.ts +22 -0
  184. package/dist/components/tiptap-ui/blockquote-button/index.d.ts +2 -0
  185. package/dist/components/tiptap-ui/blockquote-button/use-blockquote.d.ts +80 -0
  186. package/dist/components/tiptap-ui/code-block-button/code-block-button.d.ts +22 -0
  187. package/dist/components/tiptap-ui/code-block-button/index.d.ts +2 -0
  188. package/dist/components/tiptap-ui/code-block-button/use-code-block.d.ts +87 -0
  189. package/dist/components/tiptap-ui/color-highlight-button/color-highlight-button.d.ts +46 -0
  190. package/dist/components/tiptap-ui/color-highlight-button/index.d.ts +2 -0
  191. package/dist/components/tiptap-ui/color-highlight-button/use-color-highlight.d.ts +93 -0
  192. package/dist/components/tiptap-ui/color-highlight-popover/color-highlight-popover.d.ts +35 -0
  193. package/dist/components/tiptap-ui/color-highlight-popover/index.d.ts +1 -0
  194. package/dist/components/tiptap-ui/color-menu/color-menu-utils.d.ts +8 -0
  195. package/dist/components/tiptap-ui/color-menu/color-menu.d.ts +43 -0
  196. package/dist/components/tiptap-ui/color-menu/index.d.ts +1 -0
  197. package/dist/components/tiptap-ui/color-text-button/color-text-button.d.ts +23 -0
  198. package/dist/components/tiptap-ui/color-text-button/index.d.ts +2 -0
  199. package/dist/components/tiptap-ui/color-text-button/use-color-text.d.ts +109 -0
  200. package/dist/components/tiptap-ui/color-text-popover/color-text-popover.d.ts +46 -0
  201. package/dist/components/tiptap-ui/color-text-popover/index.d.ts +2 -0
  202. package/dist/components/tiptap-ui/color-text-popover/use-color-text-popover.d.ts +132 -0
  203. package/dist/components/tiptap-ui/copy-anchor-link-button/copy-anchor-link-button.d.ts +22 -0
  204. package/dist/components/tiptap-ui/copy-anchor-link-button/index.d.ts +3 -0
  205. package/dist/components/tiptap-ui/copy-anchor-link-button/use-copy-anchor-link.d.ts +93 -0
  206. package/dist/components/tiptap-ui/copy-anchor-link-button/use-scroll-to-hash.d.ts +27 -0
  207. package/dist/components/tiptap-ui/copy-to-clipboard-button/copy-to-clipboard-button.d.ts +22 -0
  208. package/dist/components/tiptap-ui/copy-to-clipboard-button/index.d.ts +2 -0
  209. package/dist/components/tiptap-ui/copy-to-clipboard-button/use-copy-to-clipboard.d.ts +103 -0
  210. package/dist/components/tiptap-ui/delete-node-button/delete-node-button.d.ts +22 -0
  211. package/dist/components/tiptap-ui/delete-node-button/index.d.ts +2 -0
  212. package/dist/components/tiptap-ui/delete-node-button/use-delete-node.d.ts +82 -0
  213. package/dist/components/tiptap-ui/drag-context-menu/drag-context-menu-types.d.ts +30 -0
  214. package/dist/components/tiptap-ui/drag-context-menu/drag-context-menu.d.ts +3 -0
  215. package/dist/components/tiptap-ui/drag-context-menu/index.d.ts +2 -0
  216. package/dist/components/tiptap-ui/duplicate-button/duplicate-button.d.ts +22 -0
  217. package/dist/components/tiptap-ui/duplicate-button/index.d.ts +2 -0
  218. package/dist/components/tiptap-ui/duplicate-button/use-duplicate.d.ts +78 -0
  219. package/dist/components/tiptap-ui/emoji-dropdown-menu/emoji-dropdown-menu.d.ts +3 -0
  220. package/dist/components/tiptap-ui/emoji-dropdown-menu/index.d.ts +1 -0
  221. package/dist/components/tiptap-ui/emoji-menu/emoji-menu-utils.d.ts +6 -0
  222. package/dist/components/tiptap-ui/emoji-menu/emoji-menu.d.ts +18 -0
  223. package/dist/components/tiptap-ui/emoji-menu/index.d.ts +2 -0
  224. package/dist/components/tiptap-ui/emoji-trigger-button/emoji-trigger-button.d.ts +22 -0
  225. package/dist/components/tiptap-ui/emoji-trigger-button/index.d.ts +2 -0
  226. package/dist/components/tiptap-ui/emoji-trigger-button/use-emoji-trigger.d.ts +94 -0
  227. package/dist/components/tiptap-ui/heading-button/heading-button.d.ts +23 -0
  228. package/dist/components/tiptap-ui/heading-button/index.d.ts +2 -0
  229. package/dist/components/tiptap-ui/heading-button/use-heading.d.ts +108 -0
  230. package/dist/components/tiptap-ui/image-align-button/image-align-button.d.ts +23 -0
  231. package/dist/components/tiptap-ui/image-align-button/index.d.ts +2 -0
  232. package/dist/components/tiptap-ui/image-align-button/use-image-align.d.ts +110 -0
  233. package/dist/components/tiptap-ui/image-caption-button/image-caption-button.d.ts +16 -0
  234. package/dist/components/tiptap-ui/image-caption-button/index.d.ts +2 -0
  235. package/dist/components/tiptap-ui/image-caption-button/use-image-caption.d.ts +82 -0
  236. package/dist/components/tiptap-ui/image-download-button/image-download-button.d.ts +23 -0
  237. package/dist/components/tiptap-ui/image-download-button/index.d.ts +2 -0
  238. package/dist/components/tiptap-ui/image-download-button/use-image-download.d.ts +64 -0
  239. package/dist/components/tiptap-ui/image-upload-button/image-upload-button.d.ts +29 -0
  240. package/dist/components/tiptap-ui/image-upload-button/index.d.ts +2 -0
  241. package/dist/components/tiptap-ui/image-upload-button/use-image-upload.d.ts +84 -0
  242. package/dist/components/tiptap-ui/indent-button/indent-button.d.ts +30 -0
  243. package/dist/components/tiptap-ui/indent-button/index.d.ts +2 -0
  244. package/dist/components/tiptap-ui/indent-button/use-indent.d.ts +92 -0
  245. package/dist/components/tiptap-ui/link-popover/index.d.ts +2 -0
  246. package/dist/components/tiptap-ui/link-popover/link-popover.d.ts +58 -0
  247. package/dist/components/tiptap-ui/link-popover/use-link-popover.d.ts +117 -0
  248. package/dist/components/tiptap-ui/list-button/index.d.ts +2 -0
  249. package/dist/components/tiptap-ui/list-button/list-button.d.ts +23 -0
  250. package/dist/components/tiptap-ui/list-button/use-list.d.ts +97 -0
  251. package/dist/components/tiptap-ui/mark-button/index.d.ts +2 -0
  252. package/dist/components/tiptap-ui/mark-button/mark-button.d.ts +23 -0
  253. package/dist/components/tiptap-ui/mark-button/use-mark.d.ts +102 -0
  254. package/dist/components/tiptap-ui/math-editor/index.d.ts +1 -0
  255. package/dist/components/tiptap-ui/math-editor/math-editor.d.ts +10 -0
  256. package/dist/components/tiptap-ui/mention-dropdown-menu/index.d.ts +1 -0
  257. package/dist/components/tiptap-ui/mention-dropdown-menu/mention-dropdown-menu.d.ts +7 -0
  258. package/dist/components/tiptap-ui/mention-trigger-button/index.d.ts +2 -0
  259. package/dist/components/tiptap-ui/mention-trigger-button/mention-trigger-button.d.ts +22 -0
  260. package/dist/components/tiptap-ui/mention-trigger-button/use-mention-trigger.d.ts +96 -0
  261. package/dist/components/tiptap-ui/move-node-button/index.d.ts +2 -0
  262. package/dist/components/tiptap-ui/move-node-button/move-node-button.d.ts +20 -0
  263. package/dist/components/tiptap-ui/move-node-button/use-move-node.d.ts +52 -0
  264. package/dist/components/tiptap-ui/reset-all-formatting-button/index.d.ts +2 -0
  265. package/dist/components/tiptap-ui/reset-all-formatting-button/reset-all-formatting-button.d.ts +24 -0
  266. package/dist/components/tiptap-ui/reset-all-formatting-button/use-reset-all-formatting.d.ts +106 -0
  267. package/dist/components/tiptap-ui/slash-command-trigger-button/index.d.ts +2 -0
  268. package/dist/components/tiptap-ui/slash-command-trigger-button/slash-command-trigger-button.d.ts +22 -0
  269. package/dist/components/tiptap-ui/slash-command-trigger-button/use-slash-command-trigger.d.ts +96 -0
  270. package/dist/components/tiptap-ui/slash-dropdown-menu/index.d.ts +2 -0
  271. package/dist/components/tiptap-ui/slash-dropdown-menu/slash-dropdown-menu.d.ts +8 -0
  272. package/dist/components/tiptap-ui/slash-dropdown-menu/use-slash-dropdown-menu.d.ts +146 -0
  273. package/dist/components/tiptap-ui/text-align-button/index.d.ts +2 -0
  274. package/dist/components/tiptap-ui/text-align-button/text-align-button.d.ts +30 -0
  275. package/dist/components/tiptap-ui/text-align-button/use-text-align.d.ts +103 -0
  276. package/dist/components/tiptap-ui/text-button/index.d.ts +2 -0
  277. package/dist/components/tiptap-ui/text-button/text-button.d.ts +22 -0
  278. package/dist/components/tiptap-ui/text-button/use-text.d.ts +86 -0
  279. package/dist/components/tiptap-ui/turn-into-dropdown/index.d.ts +2 -0
  280. package/dist/components/tiptap-ui/turn-into-dropdown/turn-into-dropdown.d.ts +16 -0
  281. package/dist/components/tiptap-ui/turn-into-dropdown/use-turn-into-dropdown.d.ts +153 -0
  282. package/dist/components/tiptap-ui/undo-redo-button/index.d.ts +2 -0
  283. package/dist/components/tiptap-ui/undo-redo-button/undo-redo-button.d.ts +23 -0
  284. package/dist/components/tiptap-ui/undo-redo-button/use-undo-redo.d.ts +90 -0
  285. package/dist/components/tiptap-ui-primitive/avatar/avatar.d.ts +23 -0
  286. package/dist/components/tiptap-ui-primitive/avatar/index.d.ts +1 -0
  287. package/dist/components/tiptap-ui-primitive/badge/badge.d.ts +11 -0
  288. package/dist/components/tiptap-ui-primitive/badge/index.d.ts +1 -0
  289. package/dist/components/tiptap-ui-primitive/button/button.d.ts +16 -0
  290. package/dist/components/tiptap-ui-primitive/button/index.d.ts +1 -0
  291. package/dist/components/tiptap-ui-primitive/button-group/button-group.d.ts +10 -0
  292. package/dist/components/tiptap-ui-primitive/button-group/index.d.ts +1 -0
  293. package/dist/components/tiptap-ui-primitive/card/card.d.ts +10 -0
  294. package/dist/components/tiptap-ui-primitive/card/index.d.ts +1 -0
  295. package/dist/components/tiptap-ui-primitive/combobox/combobox.d.ts +21 -0
  296. package/dist/components/tiptap-ui-primitive/combobox/index.d.ts +1 -0
  297. package/dist/components/tiptap-ui-primitive/dropdown-menu/dropdown-menu.d.ts +29 -0
  298. package/dist/components/tiptap-ui-primitive/dropdown-menu/index.d.ts +1 -0
  299. package/dist/components/tiptap-ui-primitive/input/index.d.ts +1 -0
  300. package/dist/components/tiptap-ui-primitive/input/input.d.ts +3 -0
  301. package/dist/components/tiptap-ui-primitive/input-group/index.d.ts +1 -0
  302. package/dist/components/tiptap-ui-primitive/input-group/input-group.d.ts +19 -0
  303. package/dist/components/tiptap-ui-primitive/menu/index.d.ts +5 -0
  304. package/dist/components/tiptap-ui-primitive/menu/menu-context.d.ts +5 -0
  305. package/dist/components/tiptap-ui-primitive/menu/menu-hooks.d.ts +10 -0
  306. package/dist/components/tiptap-ui-primitive/menu/menu-types.d.ts +44 -0
  307. package/dist/components/tiptap-ui-primitive/menu/menu-utils.d.ts +15 -0
  308. package/dist/components/tiptap-ui-primitive/menu/menu.d.ts +20 -0
  309. package/dist/components/tiptap-ui-primitive/popover/index.d.ts +1 -0
  310. package/dist/components/tiptap-ui-primitive/popover/popover.d.ts +6 -0
  311. package/dist/components/tiptap-ui-primitive/separator/index.d.ts +1 -0
  312. package/dist/components/tiptap-ui-primitive/separator/separator.d.ts +5 -0
  313. package/dist/components/tiptap-ui-primitive/spacer/index.d.ts +1 -0
  314. package/dist/components/tiptap-ui-primitive/spacer/spacer.d.ts +5 -0
  315. package/dist/components/tiptap-ui-primitive/textarea/index.d.ts +1 -0
  316. package/dist/components/tiptap-ui-primitive/textarea/textarea.d.ts +3 -0
  317. package/dist/components/tiptap-ui-primitive/toolbar/index.d.ts +1 -0
  318. package/dist/components/tiptap-ui-primitive/toolbar/toolbar.d.ts +9 -0
  319. package/dist/components/tiptap-ui-primitive/tooltip/index.d.ts +1 -0
  320. package/dist/components/tiptap-ui-primitive/tooltip/tooltip.d.ts +29 -0
  321. package/dist/components/tiptap-ui-utils/floating-element/floating-element-utils.d.ts +3 -0
  322. package/dist/components/tiptap-ui-utils/floating-element/floating-element.d.ts +53 -0
  323. package/dist/components/tiptap-ui-utils/floating-element/index.d.ts +2 -0
  324. package/dist/components/tiptap-ui-utils/suggestion-menu/index.d.ts +3 -0
  325. package/dist/components/tiptap-ui-utils/suggestion-menu/suggestion-menu-types.d.ts +86 -0
  326. package/dist/components/tiptap-ui-utils/suggestion-menu/suggestion-menu-utils.d.ts +19 -0
  327. package/dist/components/tiptap-ui-utils/suggestion-menu/suggestion-menu.d.ts +6 -0
  328. package/dist/contexts/user-context.d.ts +16 -0
  329. package/dist/hooks/use-composed-ref.d.ts +3 -0
  330. package/dist/hooks/use-cursor-visibility.d.ts +20 -0
  331. package/dist/hooks/use-element-rect.d.ts +35 -0
  332. package/dist/hooks/use-floating-element.d.ts +36 -0
  333. package/dist/hooks/use-floating-toolbar-visibility.d.ts +29 -0
  334. package/dist/hooks/use-is-breakpoint.d.ts +9 -0
  335. package/dist/hooks/use-isomorphic-layout-effect.d.ts +7 -0
  336. package/dist/hooks/use-menu-navigation.d.ts +52 -0
  337. package/dist/hooks/use-on-click-outside.d.ts +18 -0
  338. package/dist/hooks/use-throttled-callback.d.ts +18 -0
  339. package/dist/hooks/use-tiptap-editor.d.ts +6 -0
  340. package/dist/hooks/use-ui-editor-state.d.ts +4 -0
  341. package/dist/hooks/use-unmount.d.ts +7 -0
  342. package/dist/hooks/use-window-size.d.ts +35 -0
  343. package/dist/index.d.ts +7 -0
  344. package/dist/lib/clipboard.d.ts +6 -0
  345. package/dist/lib/editor-collaboration.d.ts +6 -0
  346. package/dist/lib/editor-content.d.ts +5 -0
  347. package/dist/lib/editor-users.d.ts +27 -0
  348. package/dist/lib/html-table.d.ts +5 -0
  349. package/dist/lib/i18n.d.ts +170 -0
  350. package/dist/lib/markdown.d.ts +12 -0
  351. package/dist/lib/math-editor.d.ts +19 -0
  352. package/dist/lib/tiptap-advanced-utils.d.ts +120 -0
  353. package/dist/lib/tiptap-collab-utils.d.ts +47 -0
  354. package/dist/lib/tiptap-utils.d.ts +174 -0
  355. package/dist/omnibox-editor.css +1 -0
  356. package/dist/omnibox-editor.js +19816 -0
  357. package/dist/omnibox-editor.umd.cjs +15 -0
  358. package/dist/types.d.ts +77 -0
  359. package/package.json +114 -0
@@ -0,0 +1,82 @@
1
+ import { type Editor } from "@tiptap/react";
2
+ /**
3
+ * Configuration for the image caption functionality
4
+ */
5
+ export interface UseImageCaptionConfig {
6
+ /**
7
+ * The Tiptap editor instance.
8
+ */
9
+ editor?: Editor | null;
10
+ /**
11
+ * Whether the button should hide when caption toggle is not available.
12
+ * @default false
13
+ */
14
+ hideWhenUnavailable?: boolean;
15
+ /**
16
+ * Callback function called after a successful caption set.
17
+ */
18
+ onSet?: () => void;
19
+ }
20
+ /**
21
+ * Checks if image caption can be toggled in the current editor state
22
+ */
23
+ export declare function canToggleImageCaption(editor: Editor | null): boolean;
24
+ /**
25
+ * Checks if the currently selected image has caption enabled
26
+ */
27
+ export declare function isImageCaptionActive(editor: Editor | null): boolean;
28
+ /**
29
+ * Toggles the image caption in the editor
30
+ */
31
+ export declare function setImageCaption(editor: Editor | null): boolean;
32
+ /**
33
+ * Determines if the image caption button should be shown
34
+ */
35
+ export declare function shouldShowButton(props: {
36
+ editor: Editor | null;
37
+ hideWhenUnavailable: boolean;
38
+ }): boolean;
39
+ /**
40
+ * Custom hook that provides image caption functionality for Tiptap editor
41
+ *
42
+ * @example
43
+ * ```tsx
44
+ * // Simple usage
45
+ * function MyImageCaptionButton() {
46
+ * const { isVisible, handleSetCaption } = useImageCaption()
47
+ *
48
+ * if (!isVisible) return null
49
+ *
50
+ * return <button onClick={handleSetCaption}>Add Caption</button>
51
+ * }
52
+ *
53
+ * // Advanced usage
54
+ * function MyAdvancedImageCaptionButton() {
55
+ * const { isVisible, handleSetCaption, label, canToggle } = useImageCaption({
56
+ * editor: myEditor,
57
+ * hideWhenUnavailable: true,
58
+ * onSet: () => console.log('Caption set!')
59
+ * })
60
+ *
61
+ * if (!isVisible) return null
62
+ *
63
+ * return (
64
+ * <MyButton
65
+ * onClick={handleSetCaption}
66
+ * disabled={!canToggle}
67
+ * aria-label={label}
68
+ * >
69
+ * Add Caption
70
+ * </MyButton>
71
+ * )
72
+ * }
73
+ * ```
74
+ */
75
+ export declare function useImageCaption(config?: UseImageCaptionConfig): {
76
+ isVisible: boolean;
77
+ isActive: boolean;
78
+ canToggle: boolean;
79
+ handleSetCaption: () => boolean;
80
+ label: string;
81
+ Icon: import("react").MemoExoticComponent<({ className, ...props }: Omit<import("react").SVGProps<SVGSVGElement>, "ref">) => import("react").JSX.Element>;
82
+ };
@@ -0,0 +1,23 @@
1
+ import type { UseImageDownloadConfig } from "@/components/tiptap-ui/image-download-button";
2
+ import type { ButtonProps } from "@/components/tiptap-ui-primitive/button";
3
+ export interface ImageDownloadButtonProps extends Omit<ButtonProps, "type">, UseImageDownloadConfig {
4
+ /**
5
+ * Optional text to display alongside the icon.
6
+ */
7
+ text?: string;
8
+ /**
9
+ * Optional show shortcut keys in the button.
10
+ * @default false
11
+ */
12
+ showShortcut?: boolean;
13
+ }
14
+ export declare function ImageDownloadShortcutBadge({ shortcutKeys, }: {
15
+ shortcutKeys?: string;
16
+ }): import("react").JSX.Element;
17
+ /**
18
+ * Button component for downloading images from a Tiptap editor.
19
+ * Only appears when an image is selected in the editor.
20
+ *
21
+ * For custom button implementations, use the `useImageDownload` hook instead.
22
+ */
23
+ export declare const ImageDownloadButton: import("react").ForwardRefExoticComponent<ImageDownloadButtonProps & import("react").RefAttributes<HTMLButtonElement>>;
@@ -0,0 +1,2 @@
1
+ export * from "./image-download-button";
2
+ export * from "./use-image-download";
@@ -0,0 +1,64 @@
1
+ import { type Editor } from "@tiptap/react";
2
+ export declare const IMAGE_DOWNLOAD_SHORTCUT_KEY = "mod+shift+d";
3
+ /**
4
+ * Configuration for the image download functionality
5
+ */
6
+ export interface UseImageDownloadConfig {
7
+ /**
8
+ * The Tiptap editor instance.
9
+ */
10
+ editor?: Editor | null;
11
+ /**
12
+ * Whether the button should hide when download is not available.
13
+ * @default false
14
+ */
15
+ hideWhenUnavailable?: boolean;
16
+ /**
17
+ * Callback function called after a successful image download.
18
+ */
19
+ onDownloaded?: (filename?: string) => void;
20
+ /**
21
+ * Optional function to resolve file URLs before downloading.
22
+ * Useful for handling relative paths or custom URL schemes.
23
+ */
24
+ resolveFileUrl?: (url: string) => Promise<string>;
25
+ /**
26
+ * Download behavior: 'download' forces download, 'open' opens in new tab, 'auto' tries download with fallback
27
+ * @default 'auto'
28
+ */
29
+ downloadMethod?: "download" | "open" | "auto";
30
+ }
31
+ /**
32
+ * Checks if image can be downloaded in the current editor state
33
+ */
34
+ export declare function canDownloadImage(editor: Editor | null): boolean;
35
+ /**
36
+ * Gets the currently selected image data
37
+ */
38
+ export declare function getSelectedImageData(editor: Editor | null): {
39
+ src?: string;
40
+ alt?: string;
41
+ title?: string;
42
+ } | null;
43
+ /**
44
+ * Downloads the currently selected image
45
+ */
46
+ export declare function downloadSelectedImage(editor: Editor | null, filename?: string, resolveFileUrl?: (url: string) => Promise<string>, downloadMethod?: "download" | "open" | "auto"): Promise<boolean>;
47
+ /**
48
+ * Determines if the download button should be shown
49
+ */
50
+ export declare function shouldShowDownloadButton(props: {
51
+ editor: Editor | null;
52
+ hideWhenUnavailable: boolean;
53
+ }): boolean;
54
+ /**
55
+ * Custom hook that provides image download functionality for Tiptap editor
56
+ */
57
+ export declare function useImageDownload(config?: UseImageDownloadConfig): {
58
+ isVisible: boolean;
59
+ canDownload: boolean;
60
+ handleDownload: () => Promise<boolean>;
61
+ label: string;
62
+ shortcutKeys: string;
63
+ Icon: import("react").MemoExoticComponent<({ className, ...props }: Omit<import("react").SVGProps<SVGSVGElement>, "ref">) => import("react").JSX.Element>;
64
+ };
@@ -0,0 +1,29 @@
1
+ import type { UseImageUploadConfig } from "@/components/tiptap-ui/image-upload-button";
2
+ import type { ButtonProps } from "@/components/tiptap-ui-primitive/button";
3
+ type IconProps = React.SVGProps<SVGSVGElement>;
4
+ type IconComponent = ({ className, ...props }: IconProps) => React.ReactElement;
5
+ export interface ImageUploadButtonProps extends Omit<ButtonProps, "type">, UseImageUploadConfig {
6
+ /**
7
+ * Optional text to display alongside the icon.
8
+ */
9
+ text?: string;
10
+ /**
11
+ * Optional show shortcut keys in the button.
12
+ * @default false
13
+ */
14
+ showShortcut?: boolean;
15
+ /**
16
+ * Optional custom icon component to render instead of the default.
17
+ */
18
+ icon?: React.MemoExoticComponent<IconComponent> | React.FC<IconProps>;
19
+ }
20
+ export declare function ImageShortcutBadge({ shortcutKeys, }: {
21
+ shortcutKeys?: string;
22
+ }): import("react").JSX.Element;
23
+ /**
24
+ * Button component for uploading/inserting images in a Tiptap editor.
25
+ *
26
+ * For custom button implementations, use the `useImage` hook instead.
27
+ */
28
+ export declare const ImageUploadButton: import("react").ForwardRefExoticComponent<ImageUploadButtonProps & import("react").RefAttributes<HTMLButtonElement>>;
29
+ export {};
@@ -0,0 +1,2 @@
1
+ export * from "./image-upload-button";
2
+ export * from "./use-image-upload";
@@ -0,0 +1,84 @@
1
+ import { type Editor } from "@tiptap/react";
2
+ export declare const IMAGE_UPLOAD_SHORTCUT_KEY = "mod+shift+i";
3
+ /**
4
+ * Configuration for the image upload functionality
5
+ */
6
+ export interface UseImageUploadConfig {
7
+ /**
8
+ * The Tiptap editor instance.
9
+ */
10
+ editor?: Editor | null;
11
+ /**
12
+ * Whether the button should hide when insertion is not available.
13
+ * @default false
14
+ */
15
+ hideWhenUnavailable?: boolean;
16
+ /**
17
+ * Callback function called after a successful image insertion.
18
+ */
19
+ onInserted?: () => void;
20
+ }
21
+ /**
22
+ * Checks if image can be inserted in the current editor state
23
+ */
24
+ export declare function canInsertImage(editor: Editor | null): boolean;
25
+ /**
26
+ * Checks if image is currently active
27
+ */
28
+ export declare function isImageActive(editor: Editor | null): boolean;
29
+ /**
30
+ * Inserts an image in the editor
31
+ */
32
+ export declare function insertImage(editor: Editor | null): boolean;
33
+ /**
34
+ * Determines if the image button should be shown
35
+ */
36
+ export declare function shouldShowButton(props: {
37
+ editor: Editor | null;
38
+ hideWhenUnavailable: boolean;
39
+ }): boolean;
40
+ /**
41
+ * Custom hook that provides image functionality for Tiptap editor
42
+ *
43
+ * @example
44
+ * ```tsx
45
+ * // Simple usage - no params needed
46
+ * function MySimpleImageButton() {
47
+ * const { isVisible, handleImage } = useImage()
48
+ *
49
+ * if (!isVisible) return null
50
+ *
51
+ * return <button onClick={handleImage}>Add Image</button>
52
+ * }
53
+ *
54
+ * // Advanced usage with configuration
55
+ * function MyAdvancedImageButton() {
56
+ * const { isVisible, handleImage, label, isActive } = useImage({
57
+ * editor: myEditor,
58
+ * hideWhenUnavailable: true,
59
+ * onInserted: () => console.log('Image inserted!')
60
+ * })
61
+ *
62
+ * if (!isVisible) return null
63
+ *
64
+ * return (
65
+ * <MyButton
66
+ * onClick={handleImage}
67
+ * aria-pressed={isActive}
68
+ * aria-label={label}
69
+ * >
70
+ * Add Image
71
+ * </MyButton>
72
+ * )
73
+ * }
74
+ * ```
75
+ */
76
+ export declare function useImageUpload(config?: UseImageUploadConfig): {
77
+ isVisible: boolean;
78
+ isActive: boolean;
79
+ handleImage: () => boolean;
80
+ canInsert: boolean;
81
+ label: string;
82
+ shortcutKeys: string;
83
+ Icon: import("react").MemoExoticComponent<({ className, ...props }: Omit<import("react").SVGProps<SVGSVGElement>, "ref">) => import("react").JSX.Element>;
84
+ };
@@ -0,0 +1,30 @@
1
+ import type { IndentAction, UseIndentConfig } from "@/components/tiptap-ui/indent-button";
2
+ import type { ButtonProps } from "@/components/tiptap-ui-primitive/button";
3
+ type IconProps = React.SVGProps<SVGSVGElement>;
4
+ type IconComponent = ({ className, ...props }: IconProps) => React.ReactElement;
5
+ export interface IndentButtonProps extends Omit<ButtonProps, "type">, UseIndentConfig {
6
+ /**
7
+ * Optional text to display alongside the icon.
8
+ */
9
+ text?: string;
10
+ /**
11
+ * Optional show shortcut keys in the button.
12
+ * @default false
13
+ */
14
+ showShortcut?: boolean;
15
+ /**
16
+ * Optional custom icon component to render instead of the default.
17
+ */
18
+ icon?: React.MemoExoticComponent<IconComponent> | React.FC<IconProps>;
19
+ }
20
+ export declare function IndentShortcutBadge({ action, shortcutKeys, }: {
21
+ action: IndentAction;
22
+ shortcutKeys?: string;
23
+ }): import("react").JSX.Element;
24
+ /**
25
+ * Button component for controlling indentation in a Tiptap editor.
26
+ *
27
+ * For custom button implementations, use the `useIndent` hook instead.
28
+ */
29
+ export declare const IndentButton: import("react").ForwardRefExoticComponent<IndentButtonProps & import("react").RefAttributes<HTMLButtonElement>>;
30
+ export {};
@@ -0,0 +1,2 @@
1
+ export * from "./indent-button";
2
+ export * from "./use-indent";
@@ -0,0 +1,92 @@
1
+ import { type Editor } from "@tiptap/react";
2
+ import { type OmniboxEditorI18n } from "@/lib/i18n";
3
+ export type IndentAction = "indent" | "outdent";
4
+ /**
5
+ * Configuration for the indent functionality
6
+ */
7
+ export interface UseIndentConfig {
8
+ /**
9
+ * The Tiptap editor instance.
10
+ */
11
+ editor?: Editor | null;
12
+ /**
13
+ * The indent action to perform.
14
+ */
15
+ action: IndentAction;
16
+ /**
17
+ * Whether the button should hide when indent is not available.
18
+ * @default false
19
+ */
20
+ hideWhenUnavailable?: boolean;
21
+ /**
22
+ * Callback function called after a successful indent change.
23
+ */
24
+ onIndented?: () => void;
25
+ }
26
+ export declare const INDENT_SHORTCUT_KEYS: Record<IndentAction, string>;
27
+ export declare const indentIcons: {
28
+ indent: import("react").MemoExoticComponent<({ className, ...props }: Omit<import("react").SVGProps<SVGSVGElement>, "ref">) => import("react").JSX.Element>;
29
+ outdent: import("react").MemoExoticComponent<({ className, ...props }: Omit<import("react").SVGProps<SVGSVGElement>, "ref">) => import("react").JSX.Element>;
30
+ };
31
+ export declare function getIndentLabel(action: IndentAction, i18n: OmniboxEditorI18n): string;
32
+ /**
33
+ * Checks if indent action can be performed in the current editor state
34
+ */
35
+ export declare function canPerformIndent(editor: Editor | null, action: IndentAction): boolean;
36
+ /**
37
+ * Performs the indent action in the editor
38
+ */
39
+ export declare function performIndent(editor: Editor | null, action: IndentAction): boolean;
40
+ /**
41
+ * Determines if the indent button should be shown
42
+ */
43
+ export declare function shouldShowIndentButton(props: {
44
+ editor: Editor | null;
45
+ hideWhenUnavailable: boolean;
46
+ action: IndentAction;
47
+ }): boolean;
48
+ /**
49
+ * Custom hook that provides indent functionality for Tiptap editor
50
+ *
51
+ * @example
52
+ * ```tsx
53
+ * // Simple usage
54
+ * function MyIndentButton() {
55
+ * const { isVisible, handleIndent } = useIndent({ action: "indent" })
56
+ *
57
+ * if (!isVisible) return null
58
+ *
59
+ * return <button onClick={handleIndent}>Indent</button>
60
+ * }
61
+ *
62
+ * // Advanced usage with configuration
63
+ * function MyOutdentButton() {
64
+ * const { isVisible, handleIndent, label, canIndent } = useIndent({
65
+ * editor: myEditor,
66
+ * action: "outdent",
67
+ * hideWhenUnavailable: true,
68
+ * onIndented: () => console.log('Outdented!')
69
+ * })
70
+ *
71
+ * if (!isVisible) return null
72
+ *
73
+ * return (
74
+ * <MyButton
75
+ * onClick={handleIndent}
76
+ * disabled={!canIndent}
77
+ * aria-label={label}
78
+ * >
79
+ * Outdent
80
+ * </MyButton>
81
+ * )
82
+ * }
83
+ * ```
84
+ */
85
+ export declare function useIndent(config: UseIndentConfig): {
86
+ isVisible: boolean;
87
+ canIndent: boolean;
88
+ handleIndent: () => boolean;
89
+ label: string;
90
+ shortcutKeys: string;
91
+ Icon: import("react").MemoExoticComponent<({ className, ...props }: Omit<import("react").SVGProps<SVGSVGElement>, "ref">) => import("react").JSX.Element> | import("react").MemoExoticComponent<({ className, ...props }: Omit<import("react").SVGProps<SVGSVGElement>, "ref">) => import("react").JSX.Element>;
92
+ };
@@ -0,0 +1,2 @@
1
+ export * from "./link-popover";
2
+ export * from "./use-link-popover";
@@ -0,0 +1,58 @@
1
+ import type { Editor } from "@tiptap/react";
2
+ import type { UseLinkPopoverConfig } from "@/components/tiptap-ui/link-popover";
3
+ import type { ButtonProps } from "@/components/tiptap-ui-primitive/button";
4
+ import "./link-popover.css";
5
+ export interface LinkMainProps {
6
+ /**
7
+ * The URL to set for the link.
8
+ */
9
+ url: string;
10
+ /**
11
+ * Function to update the URL state.
12
+ */
13
+ setUrl: React.Dispatch<React.SetStateAction<string | null>>;
14
+ /**
15
+ * Function to set the link in the editor.
16
+ */
17
+ setLink: () => void;
18
+ /**
19
+ * Function to remove the link from the editor.
20
+ */
21
+ removeLink: () => void;
22
+ /**
23
+ * Function to open the link.
24
+ */
25
+ openLink: () => void;
26
+ /**
27
+ * Whether the link is currently active in the editor.
28
+ */
29
+ isActive: boolean;
30
+ }
31
+ export interface LinkPopoverProps extends Omit<ButtonProps, "type">, UseLinkPopoverConfig {
32
+ /**
33
+ * Callback for when the popover opens or closes.
34
+ */
35
+ onOpenChange?: (isOpen: boolean) => void;
36
+ /**
37
+ * Whether to automatically open the popover when a link is active.
38
+ * @default true
39
+ */
40
+ autoOpenOnLinkActive?: boolean;
41
+ }
42
+ /**
43
+ * Link button component for triggering the link popover
44
+ */
45
+ export declare const LinkButton: import("react").ForwardRefExoticComponent<ButtonProps & import("react").RefAttributes<HTMLButtonElement>>;
46
+ /**
47
+ * Link content component for standalone use
48
+ */
49
+ export declare const LinkContent: React.FC<{
50
+ editor?: Editor | null;
51
+ }>;
52
+ /**
53
+ * Link popover component for Tiptap editors.
54
+ *
55
+ * For custom popover implementations, use the `useLinkPopover` hook instead.
56
+ */
57
+ export declare const LinkPopover: import("react").ForwardRefExoticComponent<LinkPopoverProps & import("react").RefAttributes<HTMLButtonElement>>;
58
+ export default LinkPopover;
@@ -0,0 +1,117 @@
1
+ import type { Editor } from "@tiptap/react";
2
+ /**
3
+ * Configuration for the link popover functionality
4
+ */
5
+ export interface UseLinkPopoverConfig {
6
+ /**
7
+ * The Tiptap editor instance.
8
+ */
9
+ editor?: Editor | null;
10
+ /**
11
+ * Whether to hide the link popover when not available.
12
+ * @default false
13
+ */
14
+ hideWhenUnavailable?: boolean;
15
+ /**
16
+ * Callback function called when the link is set.
17
+ */
18
+ onSetLink?: () => void;
19
+ }
20
+ /**
21
+ * Configuration for the link handler functionality
22
+ */
23
+ export interface LinkHandlerProps {
24
+ /**
25
+ * The Tiptap editor instance.
26
+ */
27
+ editor: Editor | null;
28
+ /**
29
+ * Callback function called when the link is set.
30
+ */
31
+ onSetLink?: () => void;
32
+ }
33
+ /**
34
+ * Checks if a link can be set in the current editor state
35
+ */
36
+ export declare function canSetLink(editor: Editor | null): boolean;
37
+ /**
38
+ * Checks if a link is currently active in the editor
39
+ */
40
+ export declare function isLinkActive(editor: Editor | null): boolean;
41
+ /**
42
+ * Determines if the link button should be shown
43
+ */
44
+ export declare function shouldShowLinkButton(props: {
45
+ editor: Editor | null;
46
+ hideWhenUnavailable: boolean;
47
+ }): boolean;
48
+ /**
49
+ * Custom hook for handling link operations in a Tiptap editor
50
+ */
51
+ export declare function useLinkHandler(props: LinkHandlerProps): {
52
+ url: string;
53
+ setUrl: import("react").Dispatch<import("react").SetStateAction<string | null>>;
54
+ setLink: () => void;
55
+ removeLink: () => void;
56
+ openLink: (target?: string, features?: string) => void;
57
+ };
58
+ /**
59
+ * Custom hook for link popover state management
60
+ */
61
+ export declare function useLinkState(props: {
62
+ editor: Editor | null;
63
+ hideWhenUnavailable: boolean;
64
+ }): {
65
+ isVisible: boolean;
66
+ canSet: boolean;
67
+ isActive: boolean;
68
+ };
69
+ /**
70
+ * Main hook that provides link popover functionality for Tiptap editor
71
+ *
72
+ * @example
73
+ * ```tsx
74
+ * // Simple usage
75
+ * function MyLinkButton() {
76
+ * const { isVisible, canSet, isActive, Icon, label } = useLinkPopover()
77
+ *
78
+ * if (!isVisible) return null
79
+ *
80
+ * return <button disabled={!canSet}>Link</button>
81
+ * }
82
+ *
83
+ * // Advanced usage with configuration
84
+ * function MyAdvancedLinkButton() {
85
+ * const { isVisible, canSet, isActive, Icon, label } = useLinkPopover({
86
+ * editor: myEditor,
87
+ * hideWhenUnavailable: true,
88
+ * onSetLink: () => console.log('Link set!')
89
+ * })
90
+ *
91
+ * if (!isVisible) return null
92
+ *
93
+ * return (
94
+ * <MyButton
95
+ * disabled={!canSet}
96
+ * aria-label={label}
97
+ * aria-pressed={isActive}
98
+ * >
99
+ * <Icon />
100
+ * {label}
101
+ * </MyButton>
102
+ * )
103
+ * }
104
+ * ```
105
+ */
106
+ export declare function useLinkPopover(config?: UseLinkPopoverConfig): {
107
+ url: string;
108
+ setUrl: import("react").Dispatch<import("react").SetStateAction<string | null>>;
109
+ setLink: () => void;
110
+ removeLink: () => void;
111
+ openLink: (target?: string, features?: string) => void;
112
+ isVisible: boolean;
113
+ canSet: boolean;
114
+ isActive: boolean;
115
+ label: string;
116
+ Icon: import("react").MemoExoticComponent<({ className, ...props }: Omit<import("react").SVGProps<SVGSVGElement>, "ref">) => import("react").JSX.Element>;
117
+ };
@@ -0,0 +1,2 @@
1
+ export * from "./list-button";
2
+ export * from "./use-list";
@@ -0,0 +1,23 @@
1
+ import type { ButtonProps } from "@/components/tiptap-ui-primitive/button";
2
+ import type { ListType, UseListConfig } from "@/components/tiptap-ui/list-button";
3
+ export interface ListButtonProps extends Omit<ButtonProps, "type">, UseListConfig {
4
+ /**
5
+ * Optional text to display alongside the icon.
6
+ */
7
+ text?: string;
8
+ /**
9
+ * Optional show shortcut keys in the button.
10
+ * @default false
11
+ */
12
+ showShortcut?: boolean;
13
+ }
14
+ export declare function ListShortcutBadge({ type, shortcutKeys, }: {
15
+ type: ListType;
16
+ shortcutKeys?: string;
17
+ }): import("react").JSX.Element;
18
+ /**
19
+ * Button component for toggling lists in a Tiptap editor.
20
+ *
21
+ * For custom button implementations, use the `useList` hook instead.
22
+ */
23
+ export declare const ListButton: import("react").ForwardRefExoticComponent<ListButtonProps & import("react").RefAttributes<HTMLButtonElement>>;