import { ResizableBox, ResizeCallbackData } from "react-resizable"; import React, { SyntheticEvent, useEffect, useState } from "react"; import Draggable from "react-draggable"; import { CircleStackIcon } from "@heroicons/react/24/outline"; import Logo from "../logo"; 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; }; 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}
); }