From 192716b8ae516351f387ae29787e4dda150cdaa7 Mon Sep 17 00:00:00 2001 From: Mauricio Siu Date: Fri, 3 Apr 2026 17:23:26 -0600 Subject: [PATCH] refactor(upload): update file upload modal and dropzone components - Changed zodResolver import to standardSchemaResolver for improved schema handling. - Adjusted Dropzone layout for better visual alignment and user experience. - Removed unused uploadProcedure from the Docker router to streamline the API. --- .../dashboard/docker/upload/upload-file-modal.tsx | 10 +++++----- apps/dokploy/components/ui/dropzone.tsx | 6 +++--- apps/dokploy/server/api/routers/docker.ts | 8 +------- 3 files changed, 9 insertions(+), 15 deletions(-) diff --git a/apps/dokploy/components/dashboard/docker/upload/upload-file-modal.tsx b/apps/dokploy/components/dashboard/docker/upload/upload-file-modal.tsx index 183241726..5f7565523 100644 --- a/apps/dokploy/components/dashboard/docker/upload/upload-file-modal.tsx +++ b/apps/dokploy/components/dashboard/docker/upload/upload-file-modal.tsx @@ -1,4 +1,4 @@ -import { zodResolver } from "@hookform/resolvers/zod"; +import { standardSchemaResolver as zodResolver } from "@hookform/resolvers/standard-schema"; import { Upload } from "lucide-react"; import { useState } from "react"; import { useForm } from "react-hook-form"; @@ -13,6 +13,8 @@ import { DialogTitle, DialogTrigger, } from "@/components/ui/dialog"; +import { DropdownMenuItem } from "@/components/ui/dropdown-menu"; +import { Dropzone } from "@/components/ui/dropzone"; import { Form, FormControl, @@ -22,12 +24,10 @@ import { FormMessage, } from "@/components/ui/form"; import { Input } from "@/components/ui/input"; -import { DropdownMenuItem } from "@/components/ui/dropdown-menu"; -import { Dropzone } from "@/components/ui/dropzone"; import { api } from "@/utils/api"; import { - uploadFileToContainerSchema, type UploadFileToContainer, + uploadFileToContainerSchema, } from "@/utils/schema"; interface Props { @@ -39,7 +39,7 @@ interface Props { export const UploadFileModal = ({ children, containerId, serverId }: Props) => { const [open, setOpen] = useState(false); - const { mutateAsync: uploadFile, isLoading } = + const { mutateAsync: uploadFile, isPending: isLoading } = api.docker.uploadFileToContainer.useMutation({ onSuccess: () => { toast.success("File uploaded successfully"); diff --git a/apps/dokploy/components/ui/dropzone.tsx b/apps/dokploy/components/ui/dropzone.tsx index b7546d73c..6d9c05ef6 100644 --- a/apps/dokploy/components/ui/dropzone.tsx +++ b/apps/dokploy/components/ui/dropzone.tsx @@ -56,9 +56,9 @@ export const Dropzone = React.forwardRef( onDrop={handleDrop} onClick={handleButtonClick} > -
- - +
+ + {dropMessage} { if (input.serverId) {