import { ResizableBox, ResizeCallbackData } from "react-resizable"; import React, { SyntheticEvent, useEffect, useState } from "react"; import Draggable from "react-draggable"; import { CircleStackIcon, TrashIcon } from "@heroicons/react/24/solid"; import Logo from "../logo"; import { IconButton } from "@documenso/ui"; import toast from "react-hot-toast"; import { XCircleIcon } from "@heroicons/react/20/solid"; const stc = require("string-to-color"); type FieldPropsType = { field: { color: string; type: string; position: any; positionX: number; positionY: number; id: string; recipient: string; }; onPositionChanged: any; onDelete: any; }; export default function Field(props: FieldPropsType) { const [field, setField]: any = useState(props.field); const [position, setPosition]: any = useState({ x: props.field.positionX, y: props.field.positionY, }); const nodeRef = React.createRef(); const onControlledDrag = (e: any, position: any) => { const { x, y } = position; setPosition({ x, y }); }; const onDragStop = (e: any, position: any) => { if (!position) return; const { x, y } = position; props.onPositionChanged({ x, y }, props.field.id); }; return (
{/* todo icons */} {field.type}
{props.field.recipient}
{ props.onDelete(props.field.id); }} >
); }