@junbyeol/tiptap-editor 0.1.5 → 1.0.13

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 (123) hide show
  1. package/README.md +103 -6
  2. package/dist/index.cjs +71 -164
  3. package/dist/index.cjs.map +1 -0
  4. package/dist/index.mjs +29327 -26994
  5. package/dist/index.mjs.map +1 -0
  6. package/dist/style.css +1 -1
  7. package/dist/types/components/custom/blockquote-popover.d.ts +6 -0
  8. package/dist/types/components/custom/font-family-dropdown-menu/font-family-dropdown-menu.d.ts +9 -0
  9. package/dist/types/components/custom/font-family-dropdown-menu/index.d.ts +2 -0
  10. package/dist/types/components/custom/font-family-dropdown-menu/nanum-fonts.d.ts +31 -0
  11. package/dist/types/components/custom/font-size-dropdown-menu/font-size-dropdown-menu.d.ts +9 -0
  12. package/dist/types/components/custom/font-size-dropdown-menu/index.d.ts +1 -0
  13. package/dist/types/components/custom/hr-style-popover.d.ts +6 -0
  14. package/dist/types/components/custom/image-bubble-menu/image-bubble-menu.d.ts +5 -0
  15. package/dist/types/components/custom/image-bubble-menu/image-ratio-popover.d.ts +6 -0
  16. package/dist/types/components/custom/image-bubble-menu/index.d.ts +1 -0
  17. package/dist/types/components/custom/insert-table-popover.d.ts +6 -0
  18. package/dist/types/components/custom/list-style-popover.d.ts +6 -0
  19. package/dist/types/components/custom/table-bubble-menu/index.d.ts +1 -0
  20. package/dist/types/components/custom/table-bubble-menu/table-bubble-menu.d.ts +5 -0
  21. package/dist/types/components/custom/table-cell-background-color-popover.d.ts +6 -0
  22. package/dist/types/components/custom/text-style-dropdown-menu/index.d.ts +4 -0
  23. package/dist/types/components/custom/text-style-dropdown-menu/text-style-button.d.ts +14 -0
  24. package/dist/types/components/custom/text-style-dropdown-menu/text-style-dropdown-menu.d.ts +20 -0
  25. package/dist/types/components/custom/text-style-dropdown-menu/use-text-style-dropdown-menu.d.ts +26 -0
  26. package/dist/types/components/custom/text-style-dropdown-menu/use-text-style.d.ts +71 -0
  27. package/dist/types/components/custom/uploadable-dropdown-menu/index.d.ts +2 -0
  28. package/dist/types/components/custom/uploadable-dropdown-menu/uploadable-button.d.ts +17 -0
  29. package/dist/types/components/custom/uploadable-dropdown-menu/uploadable-dropdown-menu.d.ts +19 -0
  30. package/dist/types/components/tiptap-icons/align-center-icon.d.ts +1 -1
  31. package/dist/types/components/tiptap-icons/align-justify-icon.d.ts +1 -1
  32. package/dist/types/components/tiptap-icons/align-left-icon.d.ts +1 -1
  33. package/dist/types/components/tiptap-icons/align-right-icon.d.ts +1 -1
  34. package/dist/types/components/tiptap-icons/bold-icon.d.ts +1 -1
  35. package/dist/types/components/tiptap-icons/check-icon.d.ts +3 -0
  36. package/dist/types/components/tiptap-icons/chevron-down-icon.d.ts +1 -1
  37. package/dist/types/components/tiptap-icons/code2-icon.d.ts +1 -1
  38. package/dist/types/components/tiptap-icons/corner-down-left-icon.d.ts +3 -0
  39. package/dist/types/components/tiptap-icons/double-quotes-icon.d.ts +3 -0
  40. package/dist/types/components/tiptap-icons/external-link-icon.d.ts +3 -0
  41. package/dist/types/components/tiptap-icons/heading-five-icon.d.ts +1 -1
  42. package/dist/types/components/tiptap-icons/heading-four-icon.d.ts +1 -1
  43. package/dist/types/components/tiptap-icons/heading-icon.d.ts +1 -1
  44. package/dist/types/components/tiptap-icons/heading-one-icon.d.ts +1 -1
  45. package/dist/types/components/tiptap-icons/heading-six-icon.d.ts +1 -1
  46. package/dist/types/components/tiptap-icons/heading-three-icon.d.ts +1 -1
  47. package/dist/types/components/tiptap-icons/heading-two-icon.d.ts +1 -1
  48. package/dist/types/components/tiptap-icons/image-align-center.d.ts +3 -0
  49. package/dist/types/components/tiptap-icons/image-align-left.d.ts +3 -0
  50. package/dist/types/components/tiptap-icons/image-align-right.d.ts +3 -0
  51. package/dist/types/components/tiptap-icons/image-caption.d.ts +3 -0
  52. package/dist/types/components/tiptap-icons/image-ratio.d.ts +3 -0
  53. package/dist/types/components/tiptap-icons/italic-icon.d.ts +1 -1
  54. package/dist/types/components/tiptap-icons/link-icon.d.ts +3 -0
  55. package/dist/types/components/tiptap-icons/list-icon.d.ts +1 -1
  56. package/dist/types/components/tiptap-icons/list-ordered-icon.d.ts +1 -1
  57. package/dist/types/components/tiptap-icons/list-todo-icon.d.ts +1 -1
  58. package/dist/types/components/tiptap-icons/paragraph-icon.d.ts +3 -0
  59. package/dist/types/components/tiptap-icons/redo2-icon.d.ts +1 -1
  60. package/dist/types/components/tiptap-icons/separator-icon.d.ts +3 -0
  61. package/dist/types/components/tiptap-icons/strike-icon.d.ts +1 -1
  62. package/dist/types/components/tiptap-icons/subscript-icon.d.ts +1 -1
  63. package/dist/types/components/tiptap-icons/superscript-icon.d.ts +1 -1
  64. package/dist/types/components/tiptap-icons/table-icon.d.ts +3 -0
  65. package/dist/types/components/tiptap-icons/trash-icon.d.ts +3 -0
  66. package/dist/types/components/tiptap-icons/underline-icon.d.ts +1 -1
  67. package/dist/types/components/tiptap-icons/undo2-icon.d.ts +1 -1
  68. package/dist/types/components/tiptap-icons/uploadable-file-icon.d.ts +3 -0
  69. package/dist/types/components/tiptap-icons/uploadable-icon.d.ts +3 -0
  70. package/dist/types/components/tiptap-icons/uploadable-image-icon.d.ts +3 -0
  71. package/dist/types/components/tiptap-ui/heading-button/heading-button.d.ts +1 -1
  72. package/dist/types/components/tiptap-ui/heading-button/use-heading.d.ts +7 -7
  73. package/dist/types/components/tiptap-ui/heading-dropdown-menu/use-heading-dropdown-menu.d.ts +1 -1
  74. package/dist/types/components/tiptap-ui/link-popover/index.d.ts +2 -0
  75. package/dist/types/components/tiptap-ui/link-popover/link-popover.d.ts +57 -0
  76. package/dist/types/components/tiptap-ui/link-popover/use-link-popover.d.ts +117 -0
  77. package/dist/types/components/tiptap-ui/list-button/list-button.d.ts +1 -1
  78. package/dist/types/components/tiptap-ui/list-button/use-list.d.ts +4 -4
  79. package/dist/types/components/tiptap-ui/mark-button/mark-button.d.ts +1 -1
  80. package/dist/types/components/tiptap-ui/mark-button/use-mark.d.ts +8 -8
  81. package/dist/types/components/tiptap-ui/text-align-button/text-align-button.d.ts +1 -1
  82. package/dist/types/components/tiptap-ui/text-align-button/use-text-align.d.ts +5 -5
  83. package/dist/types/components/tiptap-ui/undo-redo-button/undo-redo-button.d.ts +1 -1
  84. package/dist/types/components/tiptap-ui/undo-redo-button/use-undo-redo.d.ts +3 -3
  85. package/dist/types/components/tiptap-ui-primitive/button/button.d.ts +0 -3
  86. package/dist/types/components/tiptap-ui-primitive/button-group/button-group.d.ts +10 -0
  87. package/dist/types/components/tiptap-ui-primitive/button-group/index.d.ts +1 -0
  88. package/dist/types/components/tiptap-ui-primitive/dropdown-menu/dropdown-menu.d.ts +2 -2
  89. package/dist/types/components/tiptap-ui-primitive/input/index.d.ts +1 -0
  90. package/dist/types/components/tiptap-ui-primitive/input/input.d.ts +2 -0
  91. package/dist/types/components/tiptap-ui-primitive/popover/popover.d.ts +3 -3
  92. package/dist/types/components/tiptap-ui-primitive/separator/separator.d.ts +2 -3
  93. package/dist/types/components/tiptap-ui-primitive/spacer/spacer.d.ts +1 -1
  94. package/dist/types/components/tiptap-ui-primitive/tooltip/tooltip.d.ts +1 -1
  95. package/dist/types/hooks/use-tiptap-editor.d.ts +1 -12
  96. package/dist/types/lib/fonts.d.ts +12 -0
  97. package/dist/types/lib/index.d.ts +6 -3
  98. package/dist/types/lib/tiptap-utils.d.ts +6 -1
  99. package/dist/types/tiptap/content.d.ts +6 -0
  100. package/dist/types/tiptap/contexts/FileHandlerContext.d.ts +7 -0
  101. package/dist/types/tiptap/extensions/BasicKit.d.ts +2 -0
  102. package/dist/types/tiptap/extensions/BlockquoteKit.d.ts +2 -0
  103. package/dist/types/tiptap/extensions/DefaultFileAttachmentComponent.d.ts +2 -0
  104. package/dist/types/tiptap/extensions/FigcaptionKit.d.ts +2 -0
  105. package/dist/types/tiptap/extensions/FigureKit.d.ts +16 -0
  106. package/dist/types/tiptap/extensions/FileAttachment.d.ts +13 -0
  107. package/dist/types/tiptap/extensions/FontFamilyKit.d.ts +10 -0
  108. package/dist/types/tiptap/extensions/FontSizeKit.d.ts +10 -0
  109. package/dist/types/tiptap/extensions/HrKit.d.ts +11 -0
  110. package/dist/types/tiptap/extensions/ImageKit.d.ts +1 -0
  111. package/dist/types/tiptap/extensions/Paragraph.d.ts +2 -0
  112. package/dist/types/tiptap/extensions/index.d.ts +8 -0
  113. package/dist/types/tiptap/extensions/table/index.d.ts +1 -0
  114. package/dist/types/tiptap/extensions/table/table-grip-menu.d.ts +13 -0
  115. package/dist/types/tiptap/extensions/table/table-kit.d.ts +3 -0
  116. package/dist/types/tiptap/extensions/table/table-row-column-utils.d.ts +16 -0
  117. package/dist/types/tiptap/extensions/table/table-view.d.ts +52 -0
  118. package/dist/types/tiptap/hooks/useFileHandler.d.ts +32 -0
  119. package/dist/types/tiptap/index.d.ts +10 -6
  120. package/dist/types/tiptap/menubar.d.ts +3 -2
  121. package/package.json +49 -26
  122. package/dist/types/tiptap/extensions/default-file-attachment.d.ts +0 -2
  123. package/dist/types/tiptap/extensions/file-attachment.d.ts +0 -13
@@ -0,0 +1,19 @@
1
+ import { Editor } from '@tiptap/react';
2
+ import { ButtonProps } from '../../tiptap-ui-primitive/button';
3
+ export interface UploadableDropdownMenuProps extends Omit<ButtonProps, "type"> {
4
+ /**
5
+ * Whether to render the dropdown menu in a portal
6
+ * @default false
7
+ */
8
+ portal?: boolean;
9
+ /**
10
+ * Callback for when the dropdown opens or closes
11
+ */
12
+ onOpenChange?: (isOpen: boolean) => void;
13
+ /**
14
+ * The Tiptap editor instance.
15
+ */
16
+ editor?: Editor | null;
17
+ }
18
+ export declare const UploadableDropdownMenu: import('react').ForwardRefExoticComponent<UploadableDropdownMenuProps & import('react').RefAttributes<HTMLButtonElement>>;
19
+ export default UploadableDropdownMenu;
@@ -1,3 +1,3 @@
1
1
  type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
- export declare const AlignCenterIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react/jsx-runtime").JSX.Element>;
2
+ export declare const AlignCenterIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
3
  export {};
@@ -1,3 +1,3 @@
1
1
  type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
- export declare const AlignJustifyIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react/jsx-runtime").JSX.Element>;
2
+ export declare const AlignJustifyIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
3
  export {};
@@ -1,3 +1,3 @@
1
1
  type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
- export declare const AlignLeftIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react/jsx-runtime").JSX.Element>;
2
+ export declare const AlignLeftIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
3
  export {};
@@ -1,3 +1,3 @@
1
1
  type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
- export declare const AlignRightIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react/jsx-runtime").JSX.Element>;
2
+ export declare const AlignRightIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
3
  export {};
@@ -1,3 +1,3 @@
1
1
  type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
- export declare const BoldIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react/jsx-runtime").JSX.Element>;
2
+ export declare const BoldIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
3
  export {};
@@ -0,0 +1,3 @@
1
+ type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
+ export declare const CheckIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
+ export {};
@@ -1,3 +1,3 @@
1
1
  type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
- export declare const ChevronDownIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react/jsx-runtime").JSX.Element>;
2
+ export declare const ChevronDownIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
3
  export {};
@@ -1,3 +1,3 @@
1
1
  type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
- export declare const Code2Icon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react/jsx-runtime").JSX.Element>;
2
+ export declare const Code2Icon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
3
  export {};
@@ -0,0 +1,3 @@
1
+ type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
+ export declare const CornerDownLeftIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
+ export {};
@@ -0,0 +1,3 @@
1
+ type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
+ export declare const DoubleQuotesIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
+ export {};
@@ -0,0 +1,3 @@
1
+ type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
+ export declare const ExternalLinkIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
+ export {};
@@ -1,3 +1,3 @@
1
1
  type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
- export declare const HeadingFiveIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react/jsx-runtime").JSX.Element>;
2
+ export declare const HeadingFiveIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
3
  export {};
@@ -1,3 +1,3 @@
1
1
  type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
- export declare const HeadingFourIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react/jsx-runtime").JSX.Element>;
2
+ export declare const HeadingFourIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
3
  export {};
@@ -1,3 +1,3 @@
1
1
  type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
- export declare const HeadingIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react/jsx-runtime").JSX.Element>;
2
+ export declare const HeadingIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
3
  export {};
@@ -1,3 +1,3 @@
1
1
  type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
- export declare const HeadingOneIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react/jsx-runtime").JSX.Element>;
2
+ export declare const HeadingOneIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
3
  export {};
@@ -1,3 +1,3 @@
1
1
  type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
- export declare const HeadingSixIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react/jsx-runtime").JSX.Element>;
2
+ export declare const HeadingSixIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
3
  export {};
@@ -1,3 +1,3 @@
1
1
  type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
- export declare const HeadingThreeIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react/jsx-runtime").JSX.Element>;
2
+ export declare const HeadingThreeIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
3
  export {};
@@ -1,3 +1,3 @@
1
1
  type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
- export declare const HeadingTwoIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react/jsx-runtime").JSX.Element>;
2
+ export declare const HeadingTwoIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
3
  export {};
@@ -0,0 +1,3 @@
1
+ type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
+ export declare const ImageAlignCenterIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
+ export {};
@@ -0,0 +1,3 @@
1
+ type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
+ export declare const ImageAlignLeftIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
+ export {};
@@ -0,0 +1,3 @@
1
+ type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
+ export declare const ImageAlignRightIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
+ export {};
@@ -0,0 +1,3 @@
1
+ type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
+ export declare const ImageCaption: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
+ export {};
@@ -0,0 +1,3 @@
1
+ type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
+ export declare const ImageRatioIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
+ export {};
@@ -1,3 +1,3 @@
1
1
  type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
- export declare const ItalicIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react/jsx-runtime").JSX.Element>;
2
+ export declare const ItalicIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
3
  export {};
@@ -0,0 +1,3 @@
1
+ type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
+ export declare const LinkIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
+ export {};
@@ -1,3 +1,3 @@
1
1
  type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
- export declare const ListIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react/jsx-runtime").JSX.Element>;
2
+ export declare const ListIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
3
  export {};
@@ -1,3 +1,3 @@
1
1
  type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
- export declare const ListOrderedIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react/jsx-runtime").JSX.Element>;
2
+ export declare const ListOrderedIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
3
  export {};
@@ -1,3 +1,3 @@
1
1
  type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
- export declare const ListTodoIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react/jsx-runtime").JSX.Element>;
2
+ export declare const ListTodoIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
3
  export {};
@@ -0,0 +1,3 @@
1
+ type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
+ export declare const ParagraphIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
+ export {};
@@ -1,3 +1,3 @@
1
1
  type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
- export declare const Redo2Icon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react/jsx-runtime").JSX.Element>;
2
+ export declare const Redo2Icon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
3
  export {};
@@ -0,0 +1,3 @@
1
+ type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
+ export declare const SeparatorIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
+ export {};
@@ -1,3 +1,3 @@
1
1
  type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
- export declare const StrikeIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react/jsx-runtime").JSX.Element>;
2
+ export declare const StrikeIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
3
  export {};
@@ -1,3 +1,3 @@
1
1
  type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
- export declare const SubscriptIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react/jsx-runtime").JSX.Element>;
2
+ export declare const SubscriptIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
3
  export {};
@@ -1,3 +1,3 @@
1
1
  type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
- export declare const SuperscriptIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react/jsx-runtime").JSX.Element>;
2
+ export declare const SuperscriptIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
3
  export {};
@@ -0,0 +1,3 @@
1
+ type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
+ export declare const TableIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
+ export {};
@@ -0,0 +1,3 @@
1
+ type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
+ export declare const TrashIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
+ export {};
@@ -1,3 +1,3 @@
1
1
  type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
- export declare const UnderlineIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react/jsx-runtime").JSX.Element>;
2
+ export declare const UnderlineIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
3
  export {};
@@ -1,3 +1,3 @@
1
1
  type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
- export declare const Undo2Icon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react/jsx-runtime").JSX.Element>;
2
+ export declare const Undo2Icon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
3
  export {};
@@ -0,0 +1,3 @@
1
+ type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
+ export declare const UploadableFileIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
+ export {};
@@ -0,0 +1,3 @@
1
+ type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
+ export declare const UploadableIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
+ export {};
@@ -0,0 +1,3 @@
1
+ type SvgProps = React.ComponentPropsWithoutRef<"svg">;
2
+ export declare const UploadableImageIcon: import('react').MemoExoticComponent<({ className, ...props }: SvgProps) => import("react").JSX.Element>;
3
+ export {};
@@ -14,7 +14,7 @@ export interface HeadingButtonProps extends Omit<ButtonProps, "type">, UseHeadin
14
14
  export declare function HeadingShortcutBadge({ level, shortcutKeys, }: {
15
15
  level: Level;
16
16
  shortcutKeys?: string;
17
- }): import("react/jsx-runtime").JSX.Element;
17
+ }): import("react").JSX.Element;
18
18
  /**
19
19
  * Button component for toggling heading in a Tiptap editor.
20
20
  *
@@ -23,12 +23,12 @@ export interface UseHeadingConfig {
23
23
  onToggled?: () => void;
24
24
  }
25
25
  export declare const headingIcons: {
26
- 1: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react/jsx-runtime").JSX.Element>;
27
- 2: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react/jsx-runtime").JSX.Element>;
28
- 3: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react/jsx-runtime").JSX.Element>;
29
- 4: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react/jsx-runtime").JSX.Element>;
30
- 5: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react/jsx-runtime").JSX.Element>;
31
- 6: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react/jsx-runtime").JSX.Element>;
26
+ 1: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react").JSX.Element>;
27
+ 2: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react").JSX.Element>;
28
+ 3: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react").JSX.Element>;
29
+ 4: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react").JSX.Element>;
30
+ 5: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react").JSX.Element>;
31
+ 6: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react").JSX.Element>;
32
32
  };
33
33
  export declare const HEADING_SHORTCUT_KEYS: Record<Level, string>;
34
34
  /**
@@ -104,5 +104,5 @@ export declare function useHeading(config: UseHeadingConfig): {
104
104
  canToggle: boolean;
105
105
  label: string;
106
106
  shortcutKeys: string;
107
- Icon: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react/jsx-runtime").JSX.Element> | import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react/jsx-runtime").JSX.Element> | import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react/jsx-runtime").JSX.Element> | import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react/jsx-runtime").JSX.Element> | import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react/jsx-runtime").JSX.Element> | import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react/jsx-runtime").JSX.Element>;
107
+ 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> | 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> | 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>;
108
108
  };
@@ -69,5 +69,5 @@ export declare function useHeadingDropdownMenu(config?: UseHeadingDropdownMenuCo
69
69
  canToggle: boolean;
70
70
  levels: Level[];
71
71
  label: string;
72
- Icon: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react/jsx-runtime").JSX.Element>;
72
+ Icon: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react").JSX.Element>;
73
73
  };
@@ -0,0 +1,2 @@
1
+ export * from './link-popover';
2
+ export * from './use-link-popover';
@@ -0,0 +1,57 @@
1
+ import { Editor } from '@tiptap/react';
2
+ import { UseLinkPopoverConfig } from '.';
3
+ import { ButtonProps } from '../../tiptap-ui-primitive/button';
4
+ export interface LinkMainProps {
5
+ /**
6
+ * The URL to set for the link.
7
+ */
8
+ url: string;
9
+ /**
10
+ * Function to update the URL state.
11
+ */
12
+ setUrl: React.Dispatch<React.SetStateAction<string | null>>;
13
+ /**
14
+ * Function to set the link in the editor.
15
+ */
16
+ setLink: () => void;
17
+ /**
18
+ * Function to remove the link from the editor.
19
+ */
20
+ removeLink: () => void;
21
+ /**
22
+ * Function to open the link.
23
+ */
24
+ openLink: () => void;
25
+ /**
26
+ * Whether the link is currently active in the editor.
27
+ */
28
+ isActive: boolean;
29
+ }
30
+ export interface LinkPopoverProps extends Omit<ButtonProps, "type">, UseLinkPopoverConfig {
31
+ /**
32
+ * Callback for when the popover opens or closes.
33
+ */
34
+ onOpenChange?: (isOpen: boolean) => void;
35
+ /**
36
+ * Whether to automatically open the popover when a link is active.
37
+ * @default true
38
+ */
39
+ autoOpenOnLinkActive?: boolean;
40
+ }
41
+ /**
42
+ * Link button component for triggering the link popover
43
+ */
44
+ export declare const LinkButton: import('react').ForwardRefExoticComponent<ButtonProps & import('react').RefAttributes<HTMLButtonElement>>;
45
+ /**
46
+ * Link content component for standalone use
47
+ */
48
+ export declare const LinkContent: React.FC<{
49
+ editor?: Editor | null;
50
+ }>;
51
+ /**
52
+ * Link popover component for Tiptap editors.
53
+ *
54
+ * For custom popover implementations, use the `useLinkPopover` hook instead.
55
+ */
56
+ export declare const LinkPopover: import('react').ForwardRefExoticComponent<LinkPopoverProps & import('react').RefAttributes<HTMLButtonElement>>;
57
+ export default LinkPopover;
@@ -0,0 +1,117 @@
1
+ import { 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
+ };
@@ -14,7 +14,7 @@ export interface ListButtonProps extends Omit<ButtonProps, "type">, UseListConfi
14
14
  export declare function ListShortcutBadge({ type, shortcutKeys, }: {
15
15
  type: ListType;
16
16
  shortcutKeys?: string;
17
- }): import("react/jsx-runtime").JSX.Element;
17
+ }): import("react").JSX.Element;
18
18
  /**
19
19
  * Button component for toggling lists in a Tiptap editor.
20
20
  *
@@ -23,9 +23,9 @@ export interface UseListConfig {
23
23
  onToggled?: () => void;
24
24
  }
25
25
  export declare const listIcons: {
26
- bulletList: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react/jsx-runtime").JSX.Element>;
27
- orderedList: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react/jsx-runtime").JSX.Element>;
28
- taskList: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react/jsx-runtime").JSX.Element>;
26
+ bulletList: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react").JSX.Element>;
27
+ orderedList: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react").JSX.Element>;
28
+ taskList: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react").JSX.Element>;
29
29
  };
30
30
  export declare const listLabels: Record<ListType, string>;
31
31
  export declare const LIST_SHORTCUT_KEYS: Record<ListType, string>;
@@ -93,5 +93,5 @@ export declare function useList(config: UseListConfig): {
93
93
  canToggle: boolean;
94
94
  label: string;
95
95
  shortcutKeys: string;
96
- Icon: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react/jsx-runtime").JSX.Element> | import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react/jsx-runtime").JSX.Element> | import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react/jsx-runtime").JSX.Element>;
96
+ 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> | import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react").JSX.Element>;
97
97
  };
@@ -14,7 +14,7 @@ export interface MarkButtonProps extends Omit<ButtonProps, "type">, UseMarkConfi
14
14
  export declare function MarkShortcutBadge({ type, shortcutKeys, }: {
15
15
  type: Mark;
16
16
  shortcutKeys?: string;
17
- }): import("react/jsx-runtime").JSX.Element;
17
+ }): import("react").JSX.Element;
18
18
  /**
19
19
  * Button component for toggling marks in a Tiptap editor.
20
20
  *
@@ -23,13 +23,13 @@ export interface UseMarkConfig {
23
23
  onToggled?: () => void;
24
24
  }
25
25
  export declare const markIcons: {
26
- bold: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react/jsx-runtime").JSX.Element>;
27
- italic: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react/jsx-runtime").JSX.Element>;
28
- underline: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react/jsx-runtime").JSX.Element>;
29
- strike: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react/jsx-runtime").JSX.Element>;
30
- code: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react/jsx-runtime").JSX.Element>;
31
- superscript: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react/jsx-runtime").JSX.Element>;
32
- subscript: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react/jsx-runtime").JSX.Element>;
26
+ bold: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react").JSX.Element>;
27
+ italic: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react").JSX.Element>;
28
+ underline: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react").JSX.Element>;
29
+ strike: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react").JSX.Element>;
30
+ code: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react").JSX.Element>;
31
+ superscript: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react").JSX.Element>;
32
+ subscript: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react").JSX.Element>;
33
33
  };
34
34
  export declare const MARK_SHORTCUT_KEYS: Record<Mark, string>;
35
35
  /**
@@ -100,5 +100,5 @@ export declare function useMark(config: UseMarkConfig): {
100
100
  canToggle: boolean;
101
101
  label: string;
102
102
  shortcutKeys: string;
103
- Icon: import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react/jsx-runtime").JSX.Element> | import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react/jsx-runtime").JSX.Element> | import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react/jsx-runtime").JSX.Element> | import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react/jsx-runtime").JSX.Element> | import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react/jsx-runtime").JSX.Element> | import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react/jsx-runtime").JSX.Element> | import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react/jsx-runtime").JSX.Element>;
103
+ 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> | 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> | 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> | import('react').MemoExoticComponent<({ className, ...props }: Omit<import('react').SVGProps<SVGSVGElement>, "ref">) => import("react").JSX.Element>;
104
104
  };
@@ -20,7 +20,7 @@ export interface TextAlignButtonProps extends Omit<ButtonProps, "type">, UseText
20
20
  export declare function TextAlignShortcutBadge({ align, shortcutKeys, }: {
21
21
  align: TextAlign;
22
22
  shortcutKeys?: string;
23
- }): import("react/jsx-runtime").JSX.Element;
23
+ }): import("react").JSX.Element;
24
24
  /**
25
25
  * Button component for setting text alignment in a Tiptap editor.
26
26
  *