'use client'; import React from 'react'; import { cn, withRef } from '@udecode/cn'; import { type TColumnElement, setColumns } from '@udecode/plate-layout'; import { useDebouncePopoverOpen } from '@udecode/plate-layout/react'; import { PlateElement, useEditorRef, useElement, useReadOnly, useRemoveNodeButton, } from '@udecode/plate/react'; import { type LucideProps, Trash2Icon } from 'lucide-react'; import { Button } from './button'; import { Popover, PopoverAnchor, PopoverContent } from './popover'; import { Separator } from './separator'; export const ColumnGroupElement = withRef( ({ children, className, ...props }, ref) => { return (
{children}
); }, ); export function ColumnFloatingToolbar({ children }: React.PropsWithChildren) { const editor = useEditorRef(); const readOnly = useReadOnly(); const element = useElement(); const { props: buttonProps } = useRemoveNodeButton({ element }); const isOpen = useDebouncePopoverOpen(); const onColumnChange = (widths: string[]) => { setColumns(editor, { at: element, widths, }); }; if (readOnly) return <>{children}; return ( {children} e.preventDefault()} align="center" side="top" sideOffset={10} >
); } const DoubleColumnOutlined = (props: LucideProps) => ( ); const ThreeColumnOutlined = (props: LucideProps) => ( ); const RightSideDoubleColumnOutlined = (props: LucideProps) => ( ); const LeftSideDoubleColumnOutlined = (props: LucideProps) => ( ); const DoubleSideDoubleColumnOutlined = (props: LucideProps) => ( );