From 7e1de62ab11f00258a6757d757b5d54c96434612 Mon Sep 17 00:00:00 2001 From: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com> Date: Wed, 3 Sep 2025 21:19:12 -0600 Subject: [PATCH] refactor: enhance environment selector component and database schema to support new environment field, improving clarity and functionality in project management --- .../project/advanced-environment-selector.tsx | 66 +- .../drizzle/0108_lazy_next_avengers.sql | 1 + apps/dokploy/drizzle/meta/0108_snapshot.json | 6488 +++++++++++++++++ apps/dokploy/drizzle/meta/_journal.json | 7 + .../environment/[environmentId].tsx | 24 +- packages/server/src/db/schema/environment.ts | 1 + 6 files changed, 6546 insertions(+), 41 deletions(-) create mode 100644 apps/dokploy/drizzle/0108_lazy_next_avengers.sql create mode 100644 apps/dokploy/drizzle/meta/0108_snapshot.json diff --git a/apps/dokploy/components/dashboard/project/advanced-environment-selector.tsx b/apps/dokploy/components/dashboard/project/advanced-environment-selector.tsx index 532db7a5c..2f71374ed 100644 --- a/apps/dokploy/components/dashboard/project/advanced-environment-selector.tsx +++ b/apps/dokploy/components/dashboard/project/advanced-environment-selector.tsx @@ -1,15 +1,16 @@ -import { useState } from "react"; -import { useRouter } from "next/router"; -import { api } from "@/utils/api"; -import { Button } from "@/components/ui/button"; +import type { findEnvironmentById } from "@dokploy/server"; import { - DropdownMenu, - DropdownMenuContent, - DropdownMenuItem, - DropdownMenuLabel, - DropdownMenuSeparator, - DropdownMenuTrigger, -} from "@/components/ui/dropdown-menu"; + ChevronDownIcon, + PencilIcon, + PlusIcon, + Terminal, + TrashIcon, +} from "lucide-react"; +import { useRouter } from "next/router"; +import { useState } from "react"; +import { toast } from "sonner"; +import { AlertBlock } from "@/components/shared/alert-block"; +import { Button } from "@/components/ui/button"; import { Dialog, DialogContent, @@ -18,20 +19,18 @@ import { DialogHeader, DialogTitle, } from "@/components/ui/dialog"; +import { + DropdownMenu, + DropdownMenuContent, + DropdownMenuItem, + DropdownMenuLabel, + DropdownMenuSeparator, + DropdownMenuTrigger, +} from "@/components/ui/dropdown-menu"; import { Input } from "@/components/ui/input"; import { Label } from "@/components/ui/label"; import { Textarea } from "@/components/ui/textarea"; -import { toast } from "sonner"; -import { - ChevronDownIcon, - PlusIcon, - PencilIcon, - TrashIcon, - CopyIcon, -} from "lucide-react"; -import { Badge } from "@/components/ui/badge"; -import { AlertBlock } from "@/components/shared/alert-block"; -import { findEnvironmentById } from "@dokploy/server"; +import { api } from "@/utils/api"; type Environment = Omit< Awaited>, @@ -198,12 +197,12 @@ export const AdvancedEnvironmentSelector = ({ <> - @@ -221,10 +220,7 @@ export const AdvancedEnvironmentSelector = ({ }} >
-
- {environment.name} - {environment.name === "production" && Prod} -
+ {environment.name} {environment.environmentId === currentEnvironmentId && (
)} @@ -245,6 +241,16 @@ export const AdvancedEnvironmentSelector = ({ > + -