From 6febc3d38e281322833d3eaf15f8e6f7a1905210 Mon Sep 17 00:00:00 2001 From: Timur Ercan Date: Tue, 14 Feb 2023 13:06:49 +0100 Subject: [PATCH] =?UTF-8?q?=F0=9F=9A=A7=20fields?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/web/components/editor/pdf-editor.tsx | 62 +++++++++++++++---- .../pages/api/documents/[id]/fields/index.ts | 13 ++-- 2 files changed, 57 insertions(+), 18 deletions(-) diff --git a/apps/web/components/editor/pdf-editor.tsx b/apps/web/components/editor/pdf-editor.tsx index 724935b91..3cdec78b1 100644 --- a/apps/web/components/editor/pdf-editor.tsx +++ b/apps/web/components/editor/pdf-editor.tsx @@ -4,6 +4,8 @@ import dynamic from "next/dynamic"; import React, { useState } from "react"; import { Button } from "@documenso/ui"; import short from "short-uuid"; +import toast from "react-hot-toast"; +import { FieldType } from "@prisma/client"; const stc = require("string-to-color"); const PDFViewer = dynamic(() => import("./pdf-viewer"), { @@ -17,9 +19,10 @@ export default function PDFEditor(props: any) { function onPositionChangedHandler(position: any, id: any) { if (!position) return; - const newFields = [...fields]; - fields.find((e) => e.id == id).positionX = position.x; - fields.find((e) => e.id == id).positionY = position.y; + const movedField = fields.find((e) => e.id == id); + movedField.positionX = position.x; + movedField.positionY = position.y; + upsertField(props.document, movedField); // no instant redraw neccessary, postion information for saving or later rerender is enough // setFields(newFields); @@ -49,16 +52,18 @@ export default function PDFEditor(props: any) {