diff --git a/app/(auth)/login/page.tsx b/app/(auth)/login/page.tsx
index c3e72eba..5b453c19 100644
--- a/app/(auth)/login/page.tsx
+++ b/app/(auth)/login/page.tsx
@@ -3,7 +3,7 @@
import {useEffect, useRef} from "react";
import {useSearchParams} from "next/navigation";
-import {LoginForm} from "@/components/wrappers/Auth/Login/LoginForm/LoginForm";
+import {LoginForm} from "@/components/wrappers/auth/Login/LoginForm/LoginForm";
import {toast} from "sonner";
export default function SignInPage(props: {
diff --git a/app/(auth)/register/page.tsx b/app/(auth)/register/page.tsx
index d2a7c767..a32acbe2 100644
--- a/app/(auth)/register/page.tsx
+++ b/app/(auth)/register/page.tsx
@@ -1,7 +1,7 @@
"use client"
import {PageParams} from "@/types/next";
-import {RegisterForm} from "@/components/wrappers/Auth/Register/RegisterForm/RegisterForm";
+import {RegisterForm} from "@/components/wrappers/auth/Register/RegisterForm/RegisterForm";
export default function RoutePage(props: PageParams<{}>) {
return (
diff --git a/app/(customer)/dashboard/admin/page.tsx b/app/(customer)/dashboard/admin/page.tsx
index 0faf6497..c157058f 100644
--- a/app/(customer)/dashboard/admin/page.tsx
+++ b/app/(customer)/dashboard/admin/page.tsx
@@ -3,7 +3,7 @@ import {PageParams} from "@/types/next";
import {Page, PageContent, PageHeader, PageTitle} from "@/features/layout/page";
import {requiredCurrentUser} from "@/auth/current-user";
import {prisma} from "@/prisma";
-import {AdminTabs} from "@/components/wrappers/Dashboard/admin/admin-tabs";
+import {AdminTabs} from "@/components/wrappers/dashboard/admin/admin-tabs";
export default async function RoutePage(props: PageParams<{}>) {
diff --git a/app/(customer)/dashboard/agents/[agentId]/edit/page.tsx b/app/(customer)/dashboard/agents/[agentId]/edit/page.tsx
index 15310f47..56d153ea 100644
--- a/app/(customer)/dashboard/agents/[agentId]/edit/page.tsx
+++ b/app/(customer)/dashboard/agents/[agentId]/edit/page.tsx
@@ -1,6 +1,6 @@
import {PageParams} from "@/types/next";
import {Page, PageContent, PageHeader, PageTitle} from "@/features/layout/page";
-import {AgentForm} from "@/components/wrappers/Agent/AgentForm/AgentForm";
+import {AgentForm} from "@/components/wrappers/dashboard/agent/AgentForm/AgentForm";
import {requiredCurrentUser} from "@/auth/current-user";
import {prisma} from "@/prisma";
import {notFound} from "next/navigation";
diff --git a/app/(customer)/dashboard/agents/[agentId]/page.tsx b/app/(customer)/dashboard/agents/[agentId]/page.tsx
index dfd9b974..c6c65b49 100644
--- a/app/(customer)/dashboard/agents/[agentId]/page.tsx
+++ b/app/(customer)/dashboard/agents/[agentId]/page.tsx
@@ -8,9 +8,9 @@ import {Page, PageActions, PageContent, PageDescription, PageTitle} from "@/feat
import {formatDateLastContact} from "@/utils/date-formatting";
import {Button, buttonVariants} from "@/components/ui/button";
import {Card, CardContent, CardHeader} from "@/components/ui/card";
-import {AgentModalKey} from "@/components/wrappers/Agent/AgentModalKey/AgentModalKey";
+import {AgentModalKey} from "@/components/wrappers/dashboard/agent/AgentModalKey/AgentModalKey";
import {CardsWithPagination} from "@/components/wrappers/cards-with-pagination";
-import {DatabaseCard} from "@/components/wrappers/Dashboard/Projects/ProjectCard/ProjectDatabaseCard";
+import {DatabaseCard} from "@/components/wrappers/dashboard/Projects/ProjectCard/ProjectDatabaseCard";
export default async function RoutePage(props: PageParams<{ agentId: string }>) {
diff --git a/app/(customer)/dashboard/agents/new/page.tsx b/app/(customer)/dashboard/agents/new/page.tsx
index 12fb952b..8b1d2771 100644
--- a/app/(customer)/dashboard/agents/new/page.tsx
+++ b/app/(customer)/dashboard/agents/new/page.tsx
@@ -1,6 +1,6 @@
import {PageParams} from "@/types/next";
import {Page, PageContent, PageHeader, PageTitle} from "@/features/layout/page";
-import {AgentForm} from "@/components/wrappers/Agent/AgentForm/AgentForm";
+import {AgentForm} from "@/components/wrappers/dashboard/agent/AgentForm/AgentForm";
export default async function RoutePage(props: PageParams<{}>) {
diff --git a/app/(customer)/dashboard/agents/page.tsx b/app/(customer)/dashboard/agents/page.tsx
index 58a7c133..8d1f4601 100644
--- a/app/(customer)/dashboard/agents/page.tsx
+++ b/app/(customer)/dashboard/agents/page.tsx
@@ -1,6 +1,6 @@
import {PageParams} from "@/types/next";
import {prisma} from "@/prisma";
-import {AgentCard} from "@/components/wrappers/Agent/AgentCard/AgentCard";
+import {AgentCard} from "@/components/wrappers/dashboard/agent/AgentCard/AgentCard";
import {CardsWithPagination} from "@/components/wrappers/cards-with-pagination";
import {Button} from "@/components/ui/button";
import Link from 'next/link'
diff --git a/app/(customer)/dashboard/databases/[databaseId]/restore/page.tsx b/app/(customer)/dashboard/databases/[databaseId]/restore/page.tsx
index cabe81bc..07ade128 100644
--- a/app/(customer)/dashboard/databases/[databaseId]/restore/page.tsx
+++ b/app/(customer)/dashboard/databases/[databaseId]/restore/page.tsx
@@ -3,7 +3,7 @@ import {Page, PageContent, PageHeader, PageTitle} from "@/features/layout/page";
import {requiredCurrentUser} from "@/auth/current-user";
import {prisma} from "@/prisma";
import {notFound} from "next/navigation";
-import {RestoreForm} from "@/components/wrappers/Database/RestoreForm";
+import {RestoreForm} from "@/components/wrappers/dashboard/database/RestoreForm";
export default async function RoutePage(props: PageParams<{
diff --git a/app/(customer)/dashboard/layout.tsx b/app/(customer)/dashboard/layout.tsx
index 08b43d02..265c0d32 100644
--- a/app/(customer)/dashboard/layout.tsx
+++ b/app/(customer)/dashboard/layout.tsx
@@ -2,7 +2,7 @@ import React from "react";
import {redirect} from "next/navigation";
import {SidebarInset, SidebarProvider} from "@/components/ui/sidebar"
-import {AppSidebar} from "@/components/wrappers/Dashboard/SideBar/app-sidebar";
+import {AppSidebar} from "@/components/wrappers/dashboard/SideBar/app-sidebar";
import {currentUser} from "@/auth/current-user";
import {Header} from "@/features/layout/Header";
import {prisma} from "@/prisma";
diff --git a/app/(customer)/dashboard/profile/page.tsx b/app/(customer)/dashboard/profile/page.tsx
index 170153c3..1b711eba 100644
--- a/app/(customer)/dashboard/profile/page.tsx
+++ b/app/(customer)/dashboard/profile/page.tsx
@@ -3,11 +3,11 @@ import {Page, PageActions, PageContent, PageHeader, PageTitle} from "@/features/
import {Avatar, AvatarFallback, AvatarImage} from "@/components/ui/avatar";
import {notFound} from "next/navigation";
import {requiredCurrentUser} from "@/auth/current-user";
-import {UserForm} from "@/components/wrappers/Dashboard/Profile/UserForm/UserForm";
+import {UserForm} from "@/components/wrappers/dashboard/Profile/UserForm/UserForm";
import {prisma} from "@/prisma";
import {Badge} from "@/components/ui/badge";
-import {ButtonDeleteAccount} from "@/components/wrappers/Dashboard/Profile/ButtonDeleteAccount/ButtonDeleteAccount";
-import {AvatarWithUpload} from "@/components/wrappers/Dashboard/Profile/Avatar/AvatarWithUpload";
+import {ButtonDeleteAccount} from "@/components/wrappers/dashboard/Profile/ButtonDeleteAccount/ButtonDeleteAccount";
+import {AvatarWithUpload} from "@/components/wrappers/dashboard/Profile/Avatar/AvatarWithUpload";
export default async function RoutePage(props: PageParams<{}>) {
diff --git a/app/(customer)/dashboard/projects/[projectId]/database/[databaseId]/edit/page.tsx b/app/(customer)/dashboard/projects/[projectId]/database/[databaseId]/edit/page.tsx
index 630d4a26..53166d73 100644
--- a/app/(customer)/dashboard/projects/[projectId]/database/[databaseId]/edit/page.tsx
+++ b/app/(customer)/dashboard/projects/[projectId]/database/[databaseId]/edit/page.tsx
@@ -1,10 +1,10 @@
import {PageParams} from "@/types/next";
import {Page, PageContent, PageHeader, PageTitle} from "@/features/layout/page";
-import {AgentForm} from "@/components/wrappers/Agent/AgentForm/AgentForm";
+import {AgentForm} from "@/components/wrappers/dashboard/agent/AgentForm/AgentForm";
import {requiredCurrentUser} from "@/auth/current-user";
import {prisma} from "@/prisma";
import {notFound} from "next/navigation";
-import {DatabaseForm} from "@/components/wrappers/Database/DatabaseForm/DatabaseForm";
+import {DatabaseForm} from "@/components/wrappers/dashboard/database/DatabaseForm/DatabaseForm";
export default async function RoutePage(props: PageParams<{
diff --git a/app/(customer)/dashboard/projects/[projectId]/database/[databaseId]/page.tsx b/app/(customer)/dashboard/projects/[projectId]/database/[databaseId]/page.tsx
index 93654dca..c157d768 100644
--- a/app/(customer)/dashboard/projects/[projectId]/database/[databaseId]/page.tsx
+++ b/app/(customer)/dashboard/projects/[projectId]/database/[databaseId]/page.tsx
@@ -2,14 +2,14 @@ import {PageParams} from "@/types/next";
import {prisma} from "@/prisma";
import {notFound, usePathname, useRouter} from "next/navigation";
import {Page, PageActions, PageContent, PageDescription, PageTitle} from "@/features/layout/page";
-import {BackupButton} from "@/components/wrappers/BackupButton/BackupButton";
-import {DatabaseTabs} from "@/components/wrappers/Dashboard/Projects/Database/DatabaseTabs";
-import {DatabaseKpi} from "@/components/wrappers/Dashboard/Projects/Database/DatabaseKpi";
+import {BackupButton} from "@/components/wrappers/dashboard/backup/backup-button/backup-button";
+import {DatabaseTabs} from "@/components/wrappers/dashboard/Projects/Database/DatabaseTabs";
+import {DatabaseKpi} from "@/components/wrappers/dashboard/Projects/Database/DatabaseKpi";
import Link from "next/link";
import {buttonVariants} from "@/components/ui/button";
import {GearIcon} from "@radix-ui/react-icons";
-import {EditButton} from "@/components/wrappers/Database/EditButton/EditButton";
-import {CronButton} from "@/components/wrappers/Database/CronButton/CronButton";
+import {EditButton} from "@/components/wrappers/dashboard/database/EditButton/EditButton";
+import {CronButton} from "@/components/wrappers/dashboard/database/CronButton/CronButton";
export default async function RoutePage(props: PageParams<{ databaseId: string }>) {
diff --git a/app/(customer)/dashboard/projects/[projectId]/edit/page.tsx b/app/(customer)/dashboard/projects/[projectId]/edit/page.tsx
index 6c303cce..e312d80f 100644
--- a/app/(customer)/dashboard/projects/[projectId]/edit/page.tsx
+++ b/app/(customer)/dashboard/projects/[projectId]/edit/page.tsx
@@ -3,7 +3,7 @@ import {notFound} from "next/navigation";
import {PageParams} from "@/types/next";
import {Page, PageContent, PageHeader, PageTitle} from "@/features/layout/page";
import {prisma} from "@/prisma";
-import {ProjectForm} from "@/components/wrappers/Dashboard/Projects/ProjectsForm/ProjectForm";
+import {ProjectForm} from "@/components/wrappers/dashboard/Projects/ProjectsForm/ProjectForm";
export default async function RoutePage(props: PageParams<{
diff --git a/app/(customer)/dashboard/projects/[projectId]/page.tsx b/app/(customer)/dashboard/projects/[projectId]/page.tsx
index e5682045..5a0f802f 100644
--- a/app/(customer)/dashboard/projects/[projectId]/page.tsx
+++ b/app/(customer)/dashboard/projects/[projectId]/page.tsx
@@ -4,9 +4,9 @@ import {buttonVariants} from "@/components/ui/button";
import {prisma} from "@/prisma";
import {GearIcon} from "@radix-ui/react-icons";
import Link from "next/link";
-import {ButtonDeleteProject} from "@/components/wrappers/Dashboard/Projects/ButtonDeleteProject/ButtonDeleteProject";
+import {ButtonDeleteProject} from "@/components/wrappers/dashboard/Projects/ButtonDeleteProject/ButtonDeleteProject";
import {CardsWithPagination} from "@/components/wrappers/cards-with-pagination";
-import {ProjectDatabaseCard} from "@/components/wrappers/Dashboard/Projects/ProjectCard/ProjectDatabaseCard";
+import {ProjectDatabaseCard} from "@/components/wrappers/dashboard/Projects/ProjectCard/ProjectDatabaseCard";
import {notFound} from "next/navigation";
diff --git a/app/(customer)/dashboard/projects/new/page.tsx b/app/(customer)/dashboard/projects/new/page.tsx
index 33ef8647..2c867207 100644
--- a/app/(customer)/dashboard/projects/new/page.tsx
+++ b/app/(customer)/dashboard/projects/new/page.tsx
@@ -1,7 +1,7 @@
import {PageParams} from "@/types/next";
import {Page, PageContent, PageHeader, PageTitle} from "@/features/layout/page";
import {prisma} from "@/prisma";
-import {ProjectForm} from "@/components/wrappers/Dashboard/Projects/ProjectsForm/ProjectForm";
+import {ProjectForm} from "@/components/wrappers/dashboard/Projects/ProjectsForm/ProjectForm";
export default async function RoutePage(props: PageParams<{}>) {
diff --git a/app/(customer)/dashboard/projects/page.tsx b/app/(customer)/dashboard/projects/page.tsx
index 51999067..40e36b4c 100644
--- a/app/(customer)/dashboard/projects/page.tsx
+++ b/app/(customer)/dashboard/projects/page.tsx
@@ -4,7 +4,7 @@ import {CardsWithPagination} from "@/components/wrappers/cards-with-pagination";
import {Button} from "@/components/ui/button";
import Link from 'next/link'
import {Page, PageActions, PageContent, PageHeader, PageTitle} from "@/features/layout/page";
-import {ProjectCard} from "@/components/wrappers/Dashboard/Projects/ProjectCard/ProjectCard";
+import {ProjectCard} from "@/components/wrappers/dashboard/Projects/ProjectCard/ProjectCard";
import {requiredCurrentUser} from "@/auth/current-user";
export default async function RoutePage(props: PageParams<{}>) {
diff --git a/app/(customer)/dashboard/settings/page.tsx b/app/(customer)/dashboard/settings/page.tsx
index e7afc447..898b5933 100644
--- a/app/(customer)/dashboard/settings/page.tsx
+++ b/app/(customer)/dashboard/settings/page.tsx
@@ -2,7 +2,7 @@ import {prisma} from "@/prisma";
import {PageParams} from "@/types/next";
import {Page, PageContent, PageDescription, PageHeader, PageTitle} from "@/features/layout/page";
import {requiredCurrentUser} from "@/auth/current-user";
-import {SettingsTabs} from "@/components/wrappers/Dashboard/Settings/SettingsTabs/SettingsTabs";
+import {SettingsTabs} from "@/components/wrappers/dashboard/Settings/SettingsTabs/SettingsTabs";
export default async function RoutePage(props: PageParams<{}>) {
diff --git a/app/(customer)/dashboard/statistics/page.tsx b/app/(customer)/dashboard/statistics/page.tsx
index 9dcd580b..f459642b 100644
--- a/app/(customer)/dashboard/statistics/page.tsx
+++ b/app/(customer)/dashboard/statistics/page.tsx
@@ -2,8 +2,8 @@ import {PageParams} from "@/types/next";
import {Page, PageContent, PageHeader, PageTitle} from "@/features/layout/page";
import {prisma} from "@/prisma";
import {Card, CardContent, CardHeader, CardTitle} from "@/components/ui/card";
-import {EvolutionLineChart} from "@/components/wrappers/charts/evolution-line-chart";
-import {PercentageLineChart} from "@/components/wrappers/charts/percentage-line-chart";
+import {EvolutionLineChart} from "@/components/wrappers/dashboard/statistics/charts/evolution-line-chart";
+import {PercentageLineChart} from "@/components/wrappers/dashboard/statistics/charts/percentage-line-chart";
export default async function RoutePage(props: PageParams<{}>) {
diff --git a/src/components/wrappers/CodeSnippet/CodeSnippet.tsx b/src/components/wrappers/CodeSnippet/CodeSnippet.tsx
index 89293898..54ec3e81 100644
--- a/src/components/wrappers/CodeSnippet/CodeSnippet.tsx
+++ b/src/components/wrappers/CodeSnippet/CodeSnippet.tsx
@@ -1,5 +1,4 @@
import {PropsWithChildren} from "react";
-import {ClipboardCopy, Copy, CopyIcon} from "lucide-react";
import {Button} from "@/components/ui/button"
export type CodeSnippetProps = PropsWithChildren<{
@@ -11,19 +10,10 @@ export const CodeSnippet = (props: CodeSnippetProps) => {
return (
- //
- //
- // {props.code}
- //
- //
.env
diff --git a/src/components/wrappers/Dashboard/statistics/line-chart.tsx b/src/components/wrappers/Dashboard/statistics/line-chart.tsx
deleted file mode 100644
index 5566341d..00000000
--- a/src/components/wrappers/Dashboard/statistics/line-chart.tsx
+++ /dev/null
@@ -1,144 +0,0 @@
-// "use client"
-//
-// import {CartesianGrid, Line, LineChart, Tooltip, XAxis, YAxis} from "recharts"
-// import {ChartConfig, ChartContainer, ChartTooltip, ChartTooltipContent,} from "@/components/ui/chart"
-// import {humanReadableDate} from "@/utils/date-formatting";
-//
-//
-// export type lineChartProps = {
-// data: any
-// }
-//
-// export function EvolutionLineChart(props: lineChartProps) {
-//
-// const {data} = props
-//
-// // Process data to calculate cumulative count
-// const cumulativeData = data.reduce((acc, backup) => {
-// const date = backup.createdAt.toISOString().split("T")[0]; // Format as YYYY-MM-DD
-//
-// // Increment count for the current date or initialize it
-// if (acc.length && acc[acc.length - 1].date === date) {
-// acc[acc.length - 1].count += 1;
-// } else {
-// const lastCount = acc.length ? acc[acc.length - 1].count : 0;
-// acc.push({date, count: lastCount + 1});
-// }
-//
-// return acc;
-// }, [] as { date: string; count: number }[]);
-//
-//
-// const chartConfig = {
-// date: {
-// label: "Date",
-// color: "#2563eb",
-// },
-// count: {
-// label: "Number of backups",
-// color: "#60a5fa",
-// },
-// } satisfies ChartConfig
-//
-//
-// return (
-//
-//
-//
-// humanReadableDate(Date(value)).split(' ')[0]}
-// />
-//
-// }
-// />
-//
-//
-//
-// )
-// }
-//
-// export function PercentageLineChart(props: lineChartProps) {
-//
-// const {data} = props
-//
-// const chartConfig = {
-// date: {
-// label: "Date",
-// color: "#2563eb",
-// },
-// successRate: {
-// label: "Success Rate",
-// color: "#60a5fa",
-// },
-// } satisfies ChartConfig
-//
-// const dailyStats = data.reduce((acc, backup) => {
-// const date = backup.createdAt.toISOString().split("T")[0]; // Format YYYY-MM-DD
-// const status = backup.status;
-//
-// if (!acc[date]) {
-// acc[date] = {success: 0, failed: 0, total: 0};
-// }
-//
-// acc[date][status === "success" ? "success" : "failed"] += backup._count.id;
-// acc[date].total += backup._count.id;
-//
-// return acc;
-// }, {} as Record
);
-//
-// // Format data for the chart
-// const formattedData = Object.entries(dailyStats).map(([date, stats]) => ({
-// date,
-// successRate: (stats.success / stats.total) * 100,
-// }));
-//
-// return (
-//
-//
-//
-//
-// `${tick}%`}/>
-// {/* `${value.toFixed(2)}%`}/>*/}
-// }
-// cursor={false}
-// defaultIndex={1}
-// formatter={(value, name) => (
-//
-// {chartConfig[name as keyof typeof chartConfig]?.label ||
-// name}
-//
-// {value}
-//
-// %
-//
-//
-//
-// )}
-// />
-//
-//
-//
-// )
-//
-// }
-//
diff --git a/src/components/wrappers/Auth/Login/LoginForm/LoginForm.tsx b/src/components/wrappers/auth/Login/LoginForm/LoginForm.tsx
similarity index 96%
rename from src/components/wrappers/Auth/Login/LoginForm/LoginForm.tsx
rename to src/components/wrappers/auth/Login/LoginForm/LoginForm.tsx
index 10829d52..b599082a 100644
--- a/src/components/wrappers/Auth/Login/LoginForm/LoginForm.tsx
+++ b/src/components/wrappers/auth/Login/LoginForm/LoginForm.tsx
@@ -11,10 +11,10 @@ import {toast} from "sonner";
import {useMutation} from "@tanstack/react-query";
import {TooltipProvider} from "@/components/ui/tooltip";
import Link from "next/link";
-import {PasswordInput} from "@/components/wrappers/Auth/PaswordInput/password-input";
-import {LoginSchema, LoginType} from "@/components/wrappers/Auth/Login/LoginForm/login-form.schema";
+import {PasswordInput} from "@/components/wrappers/auth/PaswordInput/password-input";
+import {LoginSchema, LoginType} from "@/components/wrappers/auth/Login/LoginForm/login-form.schema";
import {signInAction} from "@/features/auth/auth.action";
-import {SocialAuthButton} from "@/components/wrappers/Auth/Login/SocialAuth/SocialAuthButtons/SocialAuthButton";
+import {SocialAuthButton} from "@/components/wrappers/auth/Login/SocialAuth/SocialAuthButtons/SocialAuthButton";
import Image from 'next/image';
export type loginFormProps = {
diff --git a/src/components/wrappers/Auth/Login/LoginForm/login-form.action.ts b/src/components/wrappers/auth/Login/LoginForm/login-form.action.ts
similarity index 100%
rename from src/components/wrappers/Auth/Login/LoginForm/login-form.action.ts
rename to src/components/wrappers/auth/Login/LoginForm/login-form.action.ts
diff --git a/src/components/wrappers/Auth/Login/LoginForm/login-form.schema.ts b/src/components/wrappers/auth/Login/LoginForm/login-form.schema.ts
similarity index 100%
rename from src/components/wrappers/Auth/Login/LoginForm/login-form.schema.ts
rename to src/components/wrappers/auth/Login/LoginForm/login-form.schema.ts
diff --git a/src/components/wrappers/Auth/Login/SocialAuth/SocialAuthButtons/SocialAuthButton.tsx b/src/components/wrappers/auth/Login/SocialAuth/SocialAuthButtons/SocialAuthButton.tsx
similarity index 100%
rename from src/components/wrappers/Auth/Login/SocialAuth/SocialAuthButtons/SocialAuthButton.tsx
rename to src/components/wrappers/auth/Login/SocialAuth/SocialAuthButtons/SocialAuthButton.tsx
diff --git a/src/components/wrappers/Auth/PaswordInput/password-input.tsx b/src/components/wrappers/auth/PaswordInput/password-input.tsx
similarity index 100%
rename from src/components/wrappers/Auth/PaswordInput/password-input.tsx
rename to src/components/wrappers/auth/PaswordInput/password-input.tsx
diff --git a/src/components/wrappers/Auth/Register/RegisterForm/RegisterForm.tsx b/src/components/wrappers/auth/Register/RegisterForm/RegisterForm.tsx
similarity index 97%
rename from src/components/wrappers/Auth/Register/RegisterForm/RegisterForm.tsx
rename to src/components/wrappers/auth/Register/RegisterForm/RegisterForm.tsx
index ffdcc861..0036240c 100644
--- a/src/components/wrappers/Auth/Register/RegisterForm/RegisterForm.tsx
+++ b/src/components/wrappers/auth/Register/RegisterForm/RegisterForm.tsx
@@ -11,9 +11,9 @@ import {Input} from "@/components/ui/input";
import {Form} from "@/components/ui/form"
import {Button} from "@/components/ui/button";
import {TooltipProvider, TooltipTrigger, Tooltip, TooltipContent} from "@/components/ui/tooltip";
-import {RegisterSchema, RegisterType} from "@/components/wrappers/Auth/Register/RegisterForm/register-form.schema";
-import {registerUserAction} from "@/components/wrappers/Auth/Register/RegisterForm/register-form.action";
-import {PasswordInput} from "@/components/wrappers/Auth/PaswordInput/password-input";
+import {RegisterSchema, RegisterType} from "@/components/wrappers/auth/Register/RegisterForm/register-form.schema";
+import {registerUserAction} from "@/components/wrappers/auth/Register/RegisterForm/register-form.action";
+import {PasswordInput} from "@/components/wrappers/auth/PaswordInput/password-input";
export type registerFormProps = {
defaultValues?: RegisterType;
diff --git a/src/components/wrappers/Auth/Register/RegisterForm/register-form.action.ts b/src/components/wrappers/auth/Register/RegisterForm/register-form.action.ts
similarity index 95%
rename from src/components/wrappers/Auth/Register/RegisterForm/register-form.action.ts
rename to src/components/wrappers/auth/Register/RegisterForm/register-form.action.ts
index 6a0db2d8..d1160ddc 100644
--- a/src/components/wrappers/Auth/Register/RegisterForm/register-form.action.ts
+++ b/src/components/wrappers/auth/Register/RegisterForm/register-form.action.ts
@@ -1,5 +1,5 @@
"use server"
-import {RegisterSchema} from "@/components/wrappers/Auth/Register/RegisterForm/register-form.schema";
+import {RegisterSchema} from "@/components/wrappers/auth/Register/RegisterForm/register-form.schema";
import {action} from "@/safe-actions";
import {prisma} from "@/prisma";
import {hashPassword} from "@/utils/password";
diff --git a/src/components/wrappers/Auth/Register/RegisterForm/register-form.schema.ts b/src/components/wrappers/auth/Register/RegisterForm/register-form.schema.ts
similarity index 100%
rename from src/components/wrappers/Auth/Register/RegisterForm/register-form.schema.ts
rename to src/components/wrappers/auth/Register/RegisterForm/register-form.schema.ts
diff --git a/src/components/wrappers/Button/ButtonWithConfirm/ButtonWithConfirm.tsx b/src/components/wrappers/common/button/ButtonWithConfirm/ButtonWithConfirm.tsx
similarity index 100%
rename from src/components/wrappers/Button/ButtonWithConfirm/ButtonWithConfirm.tsx
rename to src/components/wrappers/common/button/ButtonWithConfirm/ButtonWithConfirm.tsx
diff --git a/src/components/wrappers/Button/ButtonWithLoading/ButtonWithLoading.tsx b/src/components/wrappers/common/button/ButtonWithLoading/ButtonWithLoading.tsx
similarity index 100%
rename from src/components/wrappers/Button/ButtonWithLoading/ButtonWithLoading.tsx
rename to src/components/wrappers/common/button/ButtonWithLoading/ButtonWithLoading.tsx
diff --git a/src/components/wrappers/copy-button.tsx b/src/components/wrappers/common/button/copy-button.tsx
similarity index 100%
rename from src/components/wrappers/copy-button.tsx
rename to src/components/wrappers/common/button/copy-button.tsx
diff --git a/src/components/wrappers/combobox.tsx b/src/components/wrappers/common/combobox.tsx
similarity index 90%
rename from src/components/wrappers/combobox.tsx
rename to src/components/wrappers/common/combobox.tsx
index 9f6137d0..bc41f7f0 100644
--- a/src/components/wrappers/combobox.tsx
+++ b/src/components/wrappers/common/combobox.tsx
@@ -2,7 +2,7 @@
import {useEffect, useState} from "react";
-import {Check, ChevronDown} from "lucide-react"
+import {Check, ChevronDown, KeyRound} from "lucide-react"
import {cn} from "@/lib/utils"
import {Button} from "@/components/ui/button"
@@ -22,6 +22,8 @@ import {
import {FormControl} from "@/components/ui/form";
import {SidebarMenuButton} from "@/components/ui/sidebar";
import {Separator} from "@/components/ui/separator";
+import {AgentModalKey} from "@/components/wrappers/dashboard/agent/AgentModalKey/AgentModalKey";
+import {CreateOrganizationModal} from "@/components/wrappers/dashboard/Organization/create-organisation-modal";
export type comboBoxProps = {
values: Array<{ value: string, label: string }>
@@ -34,7 +36,13 @@ export type comboBoxProps = {
export function ComboBox(props: comboBoxProps) {
- const {values: choices, defaultValue: defaultChoice = "", onValueChange, searchField = false, sideBar = false} = props;
+ const {
+ values: choices,
+ defaultValue: defaultChoice = "",
+ onValueChange,
+ searchField = false,
+ sideBar = false
+ } = props;
const [value, setValue] = useState()
@@ -100,9 +108,11 @@ export function ComboBox(props: comboBoxProps) {
{sideBar ?
-
- + Create new organization
-
+
+
+ + Create new organization
+
+
: null}
diff --git a/src/components/wrappers/Dashboard/LoggedInButton/LoggedInButton.tsx b/src/components/wrappers/dashboard/LoggedInButton/LoggedInButton.tsx
similarity index 93%
rename from src/components/wrappers/Dashboard/LoggedInButton/LoggedInButton.tsx
rename to src/components/wrappers/dashboard/LoggedInButton/LoggedInButton.tsx
index d30cd093..9287ca70 100644
--- a/src/components/wrappers/Dashboard/LoggedInButton/LoggedInButton.tsx
+++ b/src/components/wrappers/dashboard/LoggedInButton/LoggedInButton.tsx
@@ -1,6 +1,6 @@
import {Avatar, AvatarFallback, AvatarImage} from "@/components/ui/avatar"
import {currentUser} from "@/auth/current-user";
-import {LoggedInDropdown} from "@/components/wrappers/Dashboard/LoggedInDropdown/LoggedInDropdown";
+import {LoggedInDropdown} from "@/components/wrappers/dashboard/LoggedInDropdown/LoggedInDropdown";
import {SidebarMenuButton} from "@/components/ui/sidebar";
import {ChevronUp} from "lucide-react";
diff --git a/src/components/wrappers/Dashboard/LoggedInDropdown/LoggedInDropdown.tsx b/src/components/wrappers/dashboard/LoggedInDropdown/LoggedInDropdown.tsx
similarity index 100%
rename from src/components/wrappers/Dashboard/LoggedInDropdown/LoggedInDropdown.tsx
rename to src/components/wrappers/dashboard/LoggedInDropdown/LoggedInDropdown.tsx
diff --git a/src/components/wrappers/dashboard/Organization/create-organisation-modal.tsx b/src/components/wrappers/dashboard/Organization/create-organisation-modal.tsx
new file mode 100644
index 00000000..4620a02c
--- /dev/null
+++ b/src/components/wrappers/dashboard/Organization/create-organisation-modal.tsx
@@ -0,0 +1,77 @@
+"use client"
+
+import {useMutation} from "@tanstack/react-query";
+
+import {Dialog, DialogContent, DialogFooter, DialogHeader, DialogTitle, DialogTrigger} from "@/components/ui/dialog";
+import {Button} from "@/components/ui/button";
+import {Form, FormControl, FormField, FormItem, FormLabel, FormMessage, useZodForm} from "@/components/ui/form";
+import {Input} from "@/components/ui/input";
+import {OrganizationSchema} from "@/components/wrappers/dashboard/Organization/organization.schema";
+
+export type createOrganizationModalProps = {
+ children: any
+}
+
+
+export function CreateOrganizationModal(props: createOrganizationModalProps) {
+
+ const {children} = props;
+
+ const form = useZodForm({
+ schema: OrganizationSchema,
+ });
+
+ const mutation = useMutation({
+ mutationFn: async (values: OrganizationSchema) => {
+ }
+ })
+
+
+ return (
+
+ )
+}
\ No newline at end of file
diff --git a/src/components/wrappers/Organization/OrganizationCombobox.tsx b/src/components/wrappers/dashboard/Organization/organization-combobox.tsx
similarity index 90%
rename from src/components/wrappers/Organization/OrganizationCombobox.tsx
rename to src/components/wrappers/dashboard/Organization/organization-combobox.tsx
index 4ed5dd47..df9efcd2 100644
--- a/src/components/wrappers/Organization/OrganizationCombobox.tsx
+++ b/src/components/wrappers/dashboard/Organization/organization-combobox.tsx
@@ -2,10 +2,10 @@
import {useEffect, useState} from "react";
-import {ComboBox} from "@/components/wrappers/combobox";
+import {ComboBox} from "@/components/wrappers/common/combobox";
import {Organization} from "@prisma/client";
import {useStore} from "@/state-management/store";
-import {getCurrentOrganizationSlug, setCurrentOrganizationSlug} from "@/features/dashboard/organization";
+import {getCurrentOrganizationSlug, setCurrentOrganizationSlug} from "@/features/dashboard/organization-cookie";
export type organizationComboBoxProps = {
organizations: Organization[]
@@ -13,7 +13,7 @@ export type organizationComboBoxProps = {
}
-export function OrganizationComboBox(props: organizationComboBoxProps) {
+export function OrganizationCombobox(props: organizationComboBoxProps) {
// const {organizationId, moveToAnotherOrganization} = useStore((state) => state);
diff --git a/src/components/wrappers/dashboard/Organization/organization.schema.ts b/src/components/wrappers/dashboard/Organization/organization.schema.ts
new file mode 100644
index 00000000..8d0e7214
--- /dev/null
+++ b/src/components/wrappers/dashboard/Organization/organization.schema.ts
@@ -0,0 +1,8 @@
+import {z} from "zod";
+
+
+export const OrganizationSchema = z.object({
+ name: z.string(),
+});
+
+export type OrganizationSchema = z.infer;
diff --git a/src/components/wrappers/Dashboard/Profile/Avatar/AvatarWithUpload.tsx b/src/components/wrappers/dashboard/Profile/Avatar/AvatarWithUpload.tsx
similarity index 98%
rename from src/components/wrappers/Dashboard/Profile/Avatar/AvatarWithUpload.tsx
rename to src/components/wrappers/dashboard/Profile/Avatar/AvatarWithUpload.tsx
index 76222efa..1a39fe83 100644
--- a/src/components/wrappers/Dashboard/Profile/Avatar/AvatarWithUpload.tsx
+++ b/src/components/wrappers/dashboard/Profile/Avatar/AvatarWithUpload.tsx
@@ -6,7 +6,7 @@ import {toast} from "sonner";
import {uploadImageAction} from "@/features/upload/public/upload.action";
import {useMutation} from "@tanstack/react-query";
import {prisma} from "@/prisma";
-import {updateImageUserAction} from "@/components/wrappers/Dashboard/Profile/Avatar/avatar.action";
+import {updateImageUserAction} from "@/components/wrappers/dashboard/Profile/Avatar/avatar.action";
import {useRouter} from "next/navigation";
import {useSession} from "next-auth/react";
diff --git a/src/components/wrappers/Dashboard/Profile/Avatar/avatar.action.ts b/src/components/wrappers/dashboard/Profile/Avatar/avatar.action.ts
similarity index 100%
rename from src/components/wrappers/Dashboard/Profile/Avatar/avatar.action.ts
rename to src/components/wrappers/dashboard/Profile/Avatar/avatar.action.ts
diff --git a/src/components/wrappers/Dashboard/Profile/ButtonDeleteAccount/ButtonDeleteAccount.tsx b/src/components/wrappers/dashboard/Profile/ButtonDeleteAccount/ButtonDeleteAccount.tsx
similarity index 83%
rename from src/components/wrappers/Dashboard/Profile/ButtonDeleteAccount/ButtonDeleteAccount.tsx
rename to src/components/wrappers/dashboard/Profile/ButtonDeleteAccount/ButtonDeleteAccount.tsx
index 756b1f52..dcd96846 100644
--- a/src/components/wrappers/Dashboard/Profile/ButtonDeleteAccount/ButtonDeleteAccount.tsx
+++ b/src/components/wrappers/dashboard/Profile/ButtonDeleteAccount/ButtonDeleteAccount.tsx
@@ -1,8 +1,8 @@
"use client"
import {useMutation} from "@tanstack/react-query";
import {signOutAction} from "@/features/auth/auth.action";
-import {ButtonWithConfirm} from "@/components/wrappers/Button/ButtonWithConfirm/ButtonWithConfirm";
-import {deleteUserAction} from "@/components/wrappers/Dashboard/Profile/ButtonDeleteAccount/delete-account.action";
+import {ButtonWithConfirm} from "@/components/wrappers/common/button/ButtonWithConfirm/ButtonWithConfirm";
+import {deleteUserAction} from "@/components/wrappers/dashboard/Profile/ButtonDeleteAccount/delete-account.action";
import {Trash2} from "lucide-react";
export type ButtonDeleteAccountProps = {
diff --git a/src/components/wrappers/Dashboard/Profile/ButtonDeleteAccount/delete-account.action.ts b/src/components/wrappers/dashboard/Profile/ButtonDeleteAccount/delete-account.action.ts
similarity index 94%
rename from src/components/wrappers/Dashboard/Profile/ButtonDeleteAccount/delete-account.action.ts
rename to src/components/wrappers/dashboard/Profile/ButtonDeleteAccount/delete-account.action.ts
index 95728db5..e6b63557 100644
--- a/src/components/wrappers/Dashboard/Profile/ButtonDeleteAccount/delete-account.action.ts
+++ b/src/components/wrappers/dashboard/Profile/ButtonDeleteAccount/delete-account.action.ts
@@ -3,7 +3,7 @@ import {userAction} from "@/safe-actions";
import {prisma} from "@/prisma";
import {z} from "zod";
import {v4 as uuidv4} from "uuid";
-import {EmailFormSchema} from "@/components/wrappers/Dashboard/admin/AdminEmailTab/EmailForm/email-form.schema";
+import {EmailFormSchema} from "@/components/wrappers/dashboard/admin/AdminEmailTab/EmailForm/email-form.schema";
export const deleteUserAction = userAction
diff --git a/src/components/wrappers/Dashboard/Profile/UserForm/UserForm.tsx b/src/components/wrappers/dashboard/Profile/UserForm/UserForm.tsx
similarity index 97%
rename from src/components/wrappers/Dashboard/Profile/UserForm/UserForm.tsx
rename to src/components/wrappers/dashboard/Profile/UserForm/UserForm.tsx
index e17769c9..94d242b6 100644
--- a/src/components/wrappers/Dashboard/Profile/UserForm/UserForm.tsx
+++ b/src/components/wrappers/dashboard/Profile/UserForm/UserForm.tsx
@@ -10,9 +10,9 @@ import {Button} from "@/components/ui/button";
import {useRouter} from "next/navigation";
import {useMutation} from "@tanstack/react-query";
import {TooltipProvider} from "@/components/ui/tooltip";
-import {UserSchema, UserType} from "@/components/wrappers/Dashboard/Profile/UserForm/user-form.schema";
+import {UserSchema, UserType} from "@/components/wrappers/dashboard/Profile/UserForm/user-form.schema";
import {toast} from "sonner";
-import {updateUserAction} from "@/components/wrappers/Dashboard/Profile/UserForm/user-form.action";
+import {updateUserAction} from "@/components/wrappers/dashboard/Profile/UserForm/user-form.action";
import { useSession } from "next-auth/react";
export type userFormProps = {
diff --git a/src/components/wrappers/Dashboard/Profile/UserForm/user-form.action.ts b/src/components/wrappers/dashboard/Profile/UserForm/user-form.action.ts
similarity index 90%
rename from src/components/wrappers/Dashboard/Profile/UserForm/user-form.action.ts
rename to src/components/wrappers/dashboard/Profile/UserForm/user-form.action.ts
index 00f8f641..fd7ad9b2 100644
--- a/src/components/wrappers/Dashboard/Profile/UserForm/user-form.action.ts
+++ b/src/components/wrappers/dashboard/Profile/UserForm/user-form.action.ts
@@ -2,7 +2,7 @@
import {userAction} from "@/safe-actions";
import {z} from "zod";
import {prisma} from "@/prisma";
-import {UserSchema} from "@/components/wrappers/Dashboard/Profile/UserForm/user-form.schema";
+import {UserSchema} from "@/components/wrappers/dashboard/Profile/UserForm/user-form.schema";
export const updateUserAction = userAction
.schema(
diff --git a/src/components/wrappers/Dashboard/Profile/UserForm/user-form.schema.ts b/src/components/wrappers/dashboard/Profile/UserForm/user-form.schema.ts
similarity index 100%
rename from src/components/wrappers/Dashboard/Profile/UserForm/user-form.schema.ts
rename to src/components/wrappers/dashboard/Profile/UserForm/user-form.schema.ts
diff --git a/src/components/wrappers/Dashboard/Projects/ButtonDeleteProject/ButtonDeleteProject.tsx b/src/components/wrappers/dashboard/Projects/ButtonDeleteProject/ButtonDeleteProject.tsx
similarity index 87%
rename from src/components/wrappers/Dashboard/Projects/ButtonDeleteProject/ButtonDeleteProject.tsx
rename to src/components/wrappers/dashboard/Projects/ButtonDeleteProject/ButtonDeleteProject.tsx
index 599c8533..0033a217 100644
--- a/src/components/wrappers/Dashboard/Projects/ButtonDeleteProject/ButtonDeleteProject.tsx
+++ b/src/components/wrappers/dashboard/Projects/ButtonDeleteProject/ButtonDeleteProject.tsx
@@ -1,5 +1,5 @@
"use client"
-import {ButtonWithConfirm} from "@/components/wrappers/Button/ButtonWithConfirm/ButtonWithConfirm";
+import {ButtonWithConfirm} from "@/components/wrappers/common/button/ButtonWithConfirm/ButtonWithConfirm";
import {Trash2} from "lucide-react";
export type ButtonDeleteProjectProps = {
diff --git a/src/components/wrappers/Dashboard/Projects/Database/DatabaseKpi.tsx b/src/components/wrappers/dashboard/Projects/Database/DatabaseKpi.tsx
similarity index 100%
rename from src/components/wrappers/Dashboard/Projects/Database/DatabaseKpi.tsx
rename to src/components/wrappers/dashboard/Projects/Database/DatabaseKpi.tsx
diff --git a/src/components/wrappers/Dashboard/Projects/Database/DatabaseTabs.tsx b/src/components/wrappers/dashboard/Projects/Database/DatabaseTabs.tsx
similarity index 100%
rename from src/components/wrappers/Dashboard/Projects/Database/DatabaseTabs.tsx
rename to src/components/wrappers/dashboard/Projects/Database/DatabaseTabs.tsx
diff --git a/src/components/wrappers/Dashboard/Projects/ProjectCard/ProjectCard.tsx b/src/components/wrappers/dashboard/Projects/ProjectCard/ProjectCard.tsx
similarity index 100%
rename from src/components/wrappers/Dashboard/Projects/ProjectCard/ProjectCard.tsx
rename to src/components/wrappers/dashboard/Projects/ProjectCard/ProjectCard.tsx
diff --git a/src/components/wrappers/Dashboard/Projects/ProjectCard/ProjectDatabaseCard.tsx b/src/components/wrappers/dashboard/Projects/ProjectCard/ProjectDatabaseCard.tsx
similarity index 100%
rename from src/components/wrappers/Dashboard/Projects/ProjectCard/ProjectDatabaseCard.tsx
rename to src/components/wrappers/dashboard/Projects/ProjectCard/ProjectDatabaseCard.tsx
diff --git a/src/components/wrappers/Dashboard/Projects/ProjectsForm/ProjectForm.schema.ts b/src/components/wrappers/dashboard/Projects/ProjectsForm/ProjectForm.schema.ts
similarity index 100%
rename from src/components/wrappers/Dashboard/Projects/ProjectsForm/ProjectForm.schema.ts
rename to src/components/wrappers/dashboard/Projects/ProjectsForm/ProjectForm.schema.ts
diff --git a/src/components/wrappers/Dashboard/Projects/ProjectsForm/ProjectForm.tsx b/src/components/wrappers/dashboard/Projects/ProjectsForm/ProjectForm.tsx
similarity index 98%
rename from src/components/wrappers/Dashboard/Projects/ProjectsForm/ProjectForm.tsx
rename to src/components/wrappers/dashboard/Projects/ProjectsForm/ProjectForm.tsx
index 703c2081..5ca2cba0 100644
--- a/src/components/wrappers/Dashboard/Projects/ProjectsForm/ProjectForm.tsx
+++ b/src/components/wrappers/dashboard/Projects/ProjectsForm/ProjectForm.tsx
@@ -14,11 +14,11 @@ import {Input} from "@/components/ui/input";
import {Form} from "@/components/ui/form"
import {Button} from "@/components/ui/button";
import {useMutation} from "@tanstack/react-query";
-import {ProjectSchema, ProjectType} from "@/components/wrappers/Dashboard/Projects/ProjectsForm/ProjectForm.schema";
+import {ProjectSchema, ProjectType} from "@/components/wrappers/dashboard/Projects/ProjectsForm/ProjectForm.schema";
import {
createProjectAction,
updateProjectAction
-} from "@/components/wrappers/Dashboard/Projects/ProjectsForm/project-form.action";
+} from "@/components/wrappers/dashboard/Projects/ProjectsForm/project-form.action";
import {useRouter} from "next/navigation";
import {Database, Organization, Projects} from "@prisma/client"
import {MultiSelect} from "@/components/wrappers/MultiSelect/MultiSelect";
diff --git a/src/components/wrappers/Dashboard/Projects/ProjectsForm/project-form.action.ts b/src/components/wrappers/dashboard/Projects/ProjectsForm/project-form.action.ts
similarity index 98%
rename from src/components/wrappers/Dashboard/Projects/ProjectsForm/project-form.action.ts
rename to src/components/wrappers/dashboard/Projects/ProjectsForm/project-form.action.ts
index 4920d670..9b5dcb43 100644
--- a/src/components/wrappers/Dashboard/Projects/ProjectsForm/project-form.action.ts
+++ b/src/components/wrappers/dashboard/Projects/ProjectsForm/project-form.action.ts
@@ -2,7 +2,7 @@
import {userAction} from "@/safe-actions";
import {prisma} from "@/prisma";
-import {ProjectSchema} from "@/components/wrappers/Dashboard/Projects/ProjectsForm/ProjectForm.schema";
+import {ProjectSchema} from "@/components/wrappers/dashboard/Projects/ProjectsForm/ProjectForm.schema";
import {z} from "zod";
import {ServerActionResult} from "@/types/action-type";
import {Projects} from "@prisma/client";
diff --git a/src/components/wrappers/Dashboard/Settings/SettingsTabs/SettingsTabs.tsx b/src/components/wrappers/dashboard/Settings/SettingsTabs/SettingsTabs.tsx
similarity index 89%
rename from src/components/wrappers/Dashboard/Settings/SettingsTabs/SettingsTabs.tsx
rename to src/components/wrappers/dashboard/Settings/SettingsTabs/SettingsTabs.tsx
index fe0590ec..35850429 100644
--- a/src/components/wrappers/Dashboard/Settings/SettingsTabs/SettingsTabs.tsx
+++ b/src/components/wrappers/dashboard/Settings/SettingsTabs/SettingsTabs.tsx
@@ -2,12 +2,12 @@
import {Tabs, TabsContent, TabsList, TabsTrigger} from "@/components/ui/tabs";
import {DataTableWithPagination} from "@/components/wrappers/table/data-table-with-pagination";
-import {usersColumns} from "@/components/wrappers/Dashboard/Settings/SettingsUsersTab/columns-users";
+import {usersColumns} from "@/components/wrappers/dashboard/Settings/SettingsUsersTab/columns-users";
import {User, Settings} from "@prisma/client";
import {backupColumns} from "@/features/backup/columns";
-import {SettingsEmailTab} from "@/components/wrappers/Dashboard/admin/AdminEmailTab/SettingsEmailTab";
-import {SettingsStorageTab} from "@/components/wrappers/Dashboard/admin/AdminStorageTab/SettingsStorageTab";
-import {SettingsUsersTab} from "@/components/wrappers/Dashboard/Settings/SettingsUsersTab/SettingsUsersTab";
+import {SettingsEmailTab} from "@/components/wrappers/dashboard/admin/AdminEmailTab/SettingsEmailTab";
+import {SettingsStorageTab} from "@/components/wrappers/dashboard/admin/AdminStorageTab/SettingsStorageTab";
+import {SettingsUsersTab} from "@/components/wrappers/dashboard/Settings/SettingsUsersTab/SettingsUsersTab";
export type SettingsTabsProps = {
diff --git a/src/components/wrappers/Dashboard/Settings/SettingsUsersTab/SettingsUsersTab.tsx b/src/components/wrappers/dashboard/Settings/SettingsUsersTab/SettingsUsersTab.tsx
similarity index 87%
rename from src/components/wrappers/Dashboard/Settings/SettingsUsersTab/SettingsUsersTab.tsx
rename to src/components/wrappers/dashboard/Settings/SettingsUsersTab/SettingsUsersTab.tsx
index 91341608..23f9db31 100644
--- a/src/components/wrappers/Dashboard/Settings/SettingsUsersTab/SettingsUsersTab.tsx
+++ b/src/components/wrappers/dashboard/Settings/SettingsUsersTab/SettingsUsersTab.tsx
@@ -1,7 +1,7 @@
import {User} from "@prisma/client";
import {DataTableWithPagination} from "@/components/wrappers/table/data-table-with-pagination";
-import {usersColumns} from "@/components/wrappers/Dashboard/Settings/SettingsUsersTab/columns-users";
-import {UsersDataTable} from "@/components/wrappers/Dashboard/admin/admin-user-table";
+import {usersColumns} from "@/components/wrappers/dashboard/Settings/SettingsUsersTab/columns-users";
+import {UsersDataTable} from "@/components/wrappers/dashboard/admin/admin-user-table";
export type SettingsUsersTabProps = {
diff --git a/src/components/wrappers/Dashboard/Settings/SettingsUsersTab/columns-users.tsx b/src/components/wrappers/dashboard/Settings/SettingsUsersTab/columns-users.tsx
similarity index 92%
rename from src/components/wrappers/Dashboard/Settings/SettingsUsersTab/columns-users.tsx
rename to src/components/wrappers/dashboard/Settings/SettingsUsersTab/columns-users.tsx
index 1c01d560..cb10c80c 100644
--- a/src/components/wrappers/Dashboard/Settings/SettingsUsersTab/columns-users.tsx
+++ b/src/components/wrappers/dashboard/Settings/SettingsUsersTab/columns-users.tsx
@@ -3,14 +3,14 @@
import {ColumnDef} from "@tanstack/react-table"
import {Badge} from "@/components/ui/badge";
import {User} from "@prisma/client";
-import {updateUserAction} from "@/components/wrappers/Dashboard/Profile/UserForm/user-form.action";
+import {updateUserAction} from "@/components/wrappers/dashboard/Profile/UserForm/user-form.action";
import {useMutation} from "@tanstack/react-query";
import {toast} from "sonner";
import {useRouter} from "next/navigation";
import {useState} from "react";
import {Trash2} from "lucide-react";
-import {deleteUserAction} from "@/components/wrappers/Dashboard/Profile/ButtonDeleteAccount/delete-account.action";
-import {ButtonWithLoading} from "@/components/wrappers/Button/ButtonWithLoading/ButtonWithLoading";
+import {deleteUserAction} from "@/components/wrappers/dashboard/Profile/ButtonDeleteAccount/delete-account.action";
+import {ButtonWithLoading} from "@/components/wrappers/common/button/ButtonWithLoading/ButtonWithLoading";
export const usersColumns: ColumnDef[] = [
{
diff --git a/src/components/wrappers/Dashboard/Settings/SettingsUsersTab/settings-user-tab.action.ts b/src/components/wrappers/dashboard/Settings/SettingsUsersTab/settings-user-tab.action.ts
similarity index 100%
rename from src/components/wrappers/Dashboard/Settings/SettingsUsersTab/settings-user-tab.action.ts
rename to src/components/wrappers/dashboard/Settings/SettingsUsersTab/settings-user-tab.action.ts
diff --git a/src/components/wrappers/Dashboard/SideBar/SideBarMenu/SideBarMenu.tsx b/src/components/wrappers/dashboard/SideBar/SideBarMenu/SideBarMenu.tsx
similarity index 94%
rename from src/components/wrappers/Dashboard/SideBar/SideBarMenu/SideBarMenu.tsx
rename to src/components/wrappers/dashboard/SideBar/SideBarMenu/SideBarMenu.tsx
index afd55e8d..e68d10ef 100644
--- a/src/components/wrappers/Dashboard/SideBar/SideBarMenu/SideBarMenu.tsx
+++ b/src/components/wrappers/dashboard/SideBar/SideBarMenu/SideBarMenu.tsx
@@ -5,7 +5,7 @@ import Link from "next/link";
import {SidebarMenu, SidebarMenuAction, SidebarMenuButton, SidebarMenuItem} from "@/components/ui/sidebar";
import {cn} from "@/lib/utils";
import {buttonVariants} from "@/components/ui/button";
-import {ChartArea, FolderKanban, Home, Layers, Settings, ShieldHalf} from "lucide-react";
+import {ChartArea, Layers, Settings, ShieldHalf} from "lucide-react";
import {usePathname} from "next/navigation";
export type SidebarMenuCustomProps = {}
@@ -16,11 +16,6 @@ export const SidebarMenuCustom = (props: SidebarMenuCustomProps) => {
const pathname = usePathname();
// Menu items.
const items = [
- // {
- // title: "Home",
- // url: "/",
- // icon: Home,
- // },
{
title: "Projects",
url: "projects",
diff --git a/src/components/wrappers/Dashboard/SideBar/app-sidebar.tsx b/src/components/wrappers/dashboard/SideBar/app-sidebar.tsx
similarity index 88%
rename from src/components/wrappers/Dashboard/SideBar/app-sidebar.tsx
rename to src/components/wrappers/dashboard/SideBar/app-sidebar.tsx
index b78f0cba..fb3e194a 100644
--- a/src/components/wrappers/Dashboard/SideBar/app-sidebar.tsx
+++ b/src/components/wrappers/dashboard/SideBar/app-sidebar.tsx
@@ -6,9 +6,9 @@ import {
SidebarMenu, SidebarMenuButton,
SidebarMenuItem,
} from "@/components/ui/sidebar"
-import {LoggedInButton} from "@/components/wrappers/Dashboard/LoggedInButton/LoggedInButton";
-import {SidebarMenuCustom} from "@/components/wrappers/Dashboard/SideBar/SideBarMenu/SideBarMenu";
-import {OrganizationComboBox} from "@/components/wrappers/Organization/OrganizationCombobox";
+import {LoggedInButton} from "@/components/wrappers/dashboard/LoggedInButton/LoggedInButton";
+import {SidebarMenuCustom} from "@/components/wrappers/dashboard/SideBar/SideBarMenu/SideBarMenu";
+import {OrganizationCombobox} from "@/components/wrappers/dashboard/Organization/organization-combobox";
import {prisma} from "@/prisma";
import {requiredCurrentUser} from "@/auth/current-user";
@@ -39,7 +39,7 @@ export async function AppSidebar() {
-
diff --git a/src/components/wrappers/Dashboard/UserAvatar/UserAvatar.tsx b/src/components/wrappers/dashboard/UserAvatar/UserAvatar.tsx
similarity index 100%
rename from src/components/wrappers/Dashboard/UserAvatar/UserAvatar.tsx
rename to src/components/wrappers/dashboard/UserAvatar/UserAvatar.tsx
diff --git a/src/components/wrappers/Dashboard/admin/AdminEmailTab/EmailForm/EmailForm.tsx b/src/components/wrappers/dashboard/admin/AdminEmailTab/EmailForm/EmailForm.tsx
similarity index 97%
rename from src/components/wrappers/Dashboard/admin/AdminEmailTab/EmailForm/EmailForm.tsx
rename to src/components/wrappers/dashboard/admin/AdminEmailTab/EmailForm/EmailForm.tsx
index bb1af080..13f6a8c5 100644
--- a/src/components/wrappers/Dashboard/admin/AdminEmailTab/EmailForm/EmailForm.tsx
+++ b/src/components/wrappers/dashboard/admin/AdminEmailTab/EmailForm/EmailForm.tsx
@@ -13,12 +13,12 @@ import {TooltipProvider} from "@/components/ui/tooltip";
import {
EmailFormSchema,
EmailFormType
-} from "@/components/wrappers/Dashboard/admin/AdminEmailTab/EmailForm/email-form.schema";
+} from "@/components/wrappers/dashboard/admin/AdminEmailTab/EmailForm/email-form.schema";
import Link from "next/link";
-import {PasswordInput} from "@/components/wrappers/Auth/PaswordInput/password-input";
+import {PasswordInput} from "@/components/wrappers/auth/PaswordInput/password-input";
import {
updateEmailSettingsAction
-} from "@/components/wrappers/Dashboard/admin/AdminEmailTab/EmailForm/email-form.action";
+} from "@/components/wrappers/dashboard/admin/AdminEmailTab/EmailForm/email-form.action";
import {toast} from "sonner";
import {useRouter} from "next/navigation";
diff --git a/src/components/wrappers/Dashboard/admin/AdminEmailTab/EmailForm/email-form.action.ts b/src/components/wrappers/dashboard/admin/AdminEmailTab/EmailForm/email-form.action.ts
similarity index 91%
rename from src/components/wrappers/Dashboard/admin/AdminEmailTab/EmailForm/email-form.action.ts
rename to src/components/wrappers/dashboard/admin/AdminEmailTab/EmailForm/email-form.action.ts
index f8652ede..61bd42c5 100644
--- a/src/components/wrappers/Dashboard/admin/AdminEmailTab/EmailForm/email-form.action.ts
+++ b/src/components/wrappers/dashboard/admin/AdminEmailTab/EmailForm/email-form.action.ts
@@ -2,7 +2,7 @@
import {userAction} from "@/safe-actions";
import {z} from "zod";
import {prisma} from "@/prisma";
-import {EmailFormSchema} from "@/components/wrappers/Dashboard/admin/AdminEmailTab/EmailForm/email-form.schema";
+import {EmailFormSchema} from "@/components/wrappers/dashboard/admin/AdminEmailTab/EmailForm/email-form.schema";
export const updateEmailSettingsAction = userAction
diff --git a/src/components/wrappers/Dashboard/admin/AdminEmailTab/EmailForm/email-form.schema.ts b/src/components/wrappers/dashboard/admin/AdminEmailTab/EmailForm/email-form.schema.ts
similarity index 100%
rename from src/components/wrappers/Dashboard/admin/AdminEmailTab/EmailForm/email-form.schema.ts
rename to src/components/wrappers/dashboard/admin/AdminEmailTab/EmailForm/email-form.schema.ts
diff --git a/src/components/wrappers/Dashboard/admin/AdminEmailTab/SettingsEmailTab.tsx b/src/components/wrappers/dashboard/admin/AdminEmailTab/SettingsEmailTab.tsx
similarity index 91%
rename from src/components/wrappers/Dashboard/admin/AdminEmailTab/SettingsEmailTab.tsx
rename to src/components/wrappers/dashboard/admin/AdminEmailTab/SettingsEmailTab.tsx
index 4a6ef918..a6bb5ab7 100644
--- a/src/components/wrappers/Dashboard/admin/AdminEmailTab/SettingsEmailTab.tsx
+++ b/src/components/wrappers/dashboard/admin/AdminEmailTab/SettingsEmailTab.tsx
@@ -1,7 +1,7 @@
-import {EmailForm} from "@/components/wrappers/Dashboard/admin/AdminEmailTab/EmailForm/EmailForm";
+import {EmailForm} from "@/components/wrappers/dashboard/admin/AdminEmailTab/EmailForm/EmailForm";
import {Settings} from "@prisma/client";
import {Send} from "lucide-react";
-import {ButtonWithLoading} from "@/components/wrappers/Button/ButtonWithLoading/ButtonWithLoading";
+import {ButtonWithLoading} from "@/components/wrappers/common/button/ButtonWithLoading/ButtonWithLoading";
import {useMutation} from "@tanstack/react-query";
import {sendEmail} from "@/utils/email-helper";
import TestEmailSettings from "../../../../../../emails/TestEmailSettings";
diff --git a/src/components/wrappers/Dashboard/admin/AdminStorageTab/SettingsStorageTab.tsx b/src/components/wrappers/dashboard/admin/AdminStorageTab/SettingsStorageTab.tsx
similarity index 92%
rename from src/components/wrappers/Dashboard/admin/AdminStorageTab/SettingsStorageTab.tsx
rename to src/components/wrappers/dashboard/admin/AdminStorageTab/SettingsStorageTab.tsx
index cf295c04..35928230 100644
--- a/src/components/wrappers/Dashboard/admin/AdminStorageTab/SettingsStorageTab.tsx
+++ b/src/components/wrappers/dashboard/admin/AdminStorageTab/SettingsStorageTab.tsx
@@ -2,18 +2,18 @@ import {Alert, AlertDescription, AlertTitle} from "@/components/ui/alert";
import {Info, Send, ShieldCheck} from "lucide-react";
import {Switch} from "@/components/ui/switch";
import {Label} from "@/components/ui/label";
-import {StorageS3Form} from "@/components/wrappers/Dashboard/admin/AdminStorageTab/StorageS3Form/StorageS3Form";
+import {StorageS3Form} from "@/components/wrappers/dashboard/admin/AdminStorageTab/StorageS3Form/StorageS3Form";
import {useState} from "react";
import {Settings} from "@prisma/client";
-import {ButtonWithLoading} from "@/components/wrappers/Button/ButtonWithLoading/ButtonWithLoading";
+import {ButtonWithLoading} from "@/components/wrappers/common/button/ButtonWithLoading/ButtonWithLoading";
import {useMutation} from "@tanstack/react-query";
import {checkConnexionToS3} from "@/features/upload/public/upload.action";
import {toast} from "sonner";
-import {updateUserAction} from "@/components/wrappers/Dashboard/Profile/UserForm/user-form.action";
+import {updateUserAction} from "@/components/wrappers/dashboard/Profile/UserForm/user-form.action";
import {useRouter} from "next/navigation";
import {
updateStorageSettingsAction
-} from "@/components/wrappers/Dashboard/admin/AdminStorageTab/StorageS3Form/s3-form.action";
+} from "@/components/wrappers/dashboard/admin/AdminStorageTab/StorageS3Form/s3-form.action";
export type SettingsStorageTabProps = {
diff --git a/src/components/wrappers/Dashboard/admin/AdminStorageTab/StorageS3Form/StorageS3Form.tsx b/src/components/wrappers/dashboard/admin/AdminStorageTab/StorageS3Form/StorageS3Form.tsx
similarity index 97%
rename from src/components/wrappers/Dashboard/admin/AdminStorageTab/StorageS3Form/StorageS3Form.tsx
rename to src/components/wrappers/dashboard/admin/AdminStorageTab/StorageS3Form/StorageS3Form.tsx
index 93d91007..64abb87f 100644
--- a/src/components/wrappers/Dashboard/admin/AdminStorageTab/StorageS3Form/StorageS3Form.tsx
+++ b/src/components/wrappers/dashboard/admin/AdminStorageTab/StorageS3Form/StorageS3Form.tsx
@@ -13,12 +13,12 @@ import {TooltipProvider} from "@/components/ui/tooltip";
import {
S3FormSchema,
S3FormType
-} from "@/components/wrappers/Dashboard/admin/AdminStorageTab/StorageS3Form/s3-form.schema";
+} from "@/components/wrappers/dashboard/admin/AdminStorageTab/StorageS3Form/s3-form.schema";
import {useRouter} from "next/navigation";
import {toast} from "sonner";
import {
updateS3SettingsAction
-} from "@/components/wrappers/Dashboard/admin/AdminStorageTab/StorageS3Form/s3-form.action";
+} from "@/components/wrappers/dashboard/admin/AdminStorageTab/StorageS3Form/s3-form.action";
export type S3FormProps = {
defaultValues?: S3FormType;
diff --git a/src/components/wrappers/Dashboard/admin/AdminStorageTab/StorageS3Form/s3-form.action.ts b/src/components/wrappers/dashboard/admin/AdminStorageTab/StorageS3Form/s3-form.action.ts
similarity index 94%
rename from src/components/wrappers/Dashboard/admin/AdminStorageTab/StorageS3Form/s3-form.action.ts
rename to src/components/wrappers/dashboard/admin/AdminStorageTab/StorageS3Form/s3-form.action.ts
index fdb549b7..e06024de 100644
--- a/src/components/wrappers/Dashboard/admin/AdminStorageTab/StorageS3Form/s3-form.action.ts
+++ b/src/components/wrappers/dashboard/admin/AdminStorageTab/StorageS3Form/s3-form.action.ts
@@ -5,7 +5,7 @@ import {prisma} from "@/prisma";
import {
S3FormSchema,
StorageSwitchSchema
-} from "@/components/wrappers/Dashboard/admin/AdminStorageTab/StorageS3Form/s3-form.schema";
+} from "@/components/wrappers/dashboard/admin/AdminStorageTab/StorageS3Form/s3-form.schema";
export const updateS3SettingsAction = userAction
diff --git a/src/components/wrappers/Dashboard/admin/AdminStorageTab/StorageS3Form/s3-form.schema.ts b/src/components/wrappers/dashboard/admin/AdminStorageTab/StorageS3Form/s3-form.schema.ts
similarity index 100%
rename from src/components/wrappers/Dashboard/admin/AdminStorageTab/StorageS3Form/s3-form.schema.ts
rename to src/components/wrappers/dashboard/admin/AdminStorageTab/StorageS3Form/s3-form.schema.ts
diff --git a/src/components/wrappers/Dashboard/admin/admin-tabs.tsx b/src/components/wrappers/dashboard/admin/admin-tabs.tsx
similarity index 86%
rename from src/components/wrappers/Dashboard/admin/admin-tabs.tsx
rename to src/components/wrappers/dashboard/admin/admin-tabs.tsx
index b817efc2..e5724752 100644
--- a/src/components/wrappers/Dashboard/admin/admin-tabs.tsx
+++ b/src/components/wrappers/dashboard/admin/admin-tabs.tsx
@@ -2,9 +2,9 @@
import {User, Settings} from "@prisma/client";
import {Tabs, TabsContent, TabsList, TabsTrigger} from "@/components/ui/tabs";
-import {SettingsEmailTab} from "@/components/wrappers/Dashboard/admin/AdminEmailTab/SettingsEmailTab";
-import {SettingsStorageTab} from "@/components/wrappers/Dashboard/admin/AdminStorageTab/SettingsStorageTab";
-import {AdminUsersTable} from "@/components/wrappers/Dashboard/admin/admin-user-table";
+import {SettingsEmailTab} from "@/components/wrappers/dashboard/admin/AdminEmailTab/SettingsEmailTab";
+import {SettingsStorageTab} from "@/components/wrappers/dashboard/admin/AdminStorageTab/SettingsStorageTab";
+import {AdminUsersTable} from "@/components/wrappers/dashboard/admin/admin-user-table";
export type AdminTabsProps = {
diff --git a/src/components/wrappers/Dashboard/admin/admin-user-table.tsx b/src/components/wrappers/dashboard/admin/admin-user-table.tsx
similarity index 98%
rename from src/components/wrappers/Dashboard/admin/admin-user-table.tsx
rename to src/components/wrappers/dashboard/admin/admin-user-table.tsx
index 229482af..9742e346 100644
--- a/src/components/wrappers/Dashboard/admin/admin-user-table.tsx
+++ b/src/components/wrappers/dashboard/admin/admin-user-table.tsx
@@ -2,7 +2,7 @@ import {flexRender, Row, RowData} from "@tanstack/react-table";
import {User} from "@prisma/client";
import {DataTableWithPagination} from "@/components/wrappers/table/data-table-with-pagination";
-import {usersColumns} from "@/components/wrappers/Dashboard/Settings/SettingsUsersTab/columns-users";
+import {usersColumns} from "@/components/wrappers/dashboard/Settings/SettingsUsersTab/columns-users";
import {Table, TableBody, TableCell, TableHead, TableHeader, TableRow} from "@/components/ui/table";
import {cn} from "@/lib/utils";
diff --git a/src/components/wrappers/Agent/AgentCard/AgentCard.tsx b/src/components/wrappers/dashboard/agent/AgentCard/AgentCard.tsx
similarity index 100%
rename from src/components/wrappers/Agent/AgentCard/AgentCard.tsx
rename to src/components/wrappers/dashboard/agent/AgentCard/AgentCard.tsx
diff --git a/src/components/wrappers/Agent/AgentForm/AgentForm.tsx b/src/components/wrappers/dashboard/agent/AgentForm/AgentForm.tsx
similarity index 97%
rename from src/components/wrappers/Agent/AgentForm/AgentForm.tsx
rename to src/components/wrappers/dashboard/agent/AgentForm/AgentForm.tsx
index b99848bb..52212286 100644
--- a/src/components/wrappers/Agent/AgentForm/AgentForm.tsx
+++ b/src/components/wrappers/dashboard/agent/AgentForm/AgentForm.tsx
@@ -10,9 +10,9 @@ import {Button} from "@/components/ui/button";
import {useRouter} from "next/navigation";
import {useMutation} from "@tanstack/react-query";
import {TooltipProvider} from "@/components/ui/tooltip";
-import {AgentSchema, AgentType} from "@/components/wrappers/Agent/AgentForm/agent-form.schema";
+import {AgentSchema, AgentType} from "@/components/wrappers/dashboard/agent/AgentForm/agent-form.schema";
import {toast} from "sonner";
-import {createAgentAction, updateAgentAction} from "@/components/wrappers/Agent/AgentForm/agent-form.action";
+import {createAgentAction, updateAgentAction} from "@/components/wrappers/dashboard/agent/AgentForm/agent-form.action";
export type agentFormProps = {
defaultValues?: AgentType;
diff --git a/src/components/wrappers/Agent/AgentForm/agent-form.action.ts b/src/components/wrappers/dashboard/agent/AgentForm/agent-form.action.ts
similarity index 94%
rename from src/components/wrappers/Agent/AgentForm/agent-form.action.ts
rename to src/components/wrappers/dashboard/agent/AgentForm/agent-form.action.ts
index a87253ca..4eb4087b 100644
--- a/src/components/wrappers/Agent/AgentForm/agent-form.action.ts
+++ b/src/components/wrappers/dashboard/agent/AgentForm/agent-form.action.ts
@@ -1,7 +1,7 @@
"use server"
import {ActionError, userAction} from "@/safe-actions";
import {prisma} from "@/prisma";
-import {AgentSchema} from "@/components/wrappers/Agent/AgentForm/agent-form.schema";
+import {AgentSchema} from "@/components/wrappers/dashboard/agent/AgentForm/agent-form.schema";
import {z} from "zod";
diff --git a/src/components/wrappers/Agent/AgentForm/agent-form.schema.ts b/src/components/wrappers/dashboard/agent/AgentForm/agent-form.schema.ts
similarity index 100%
rename from src/components/wrappers/Agent/AgentForm/agent-form.schema.ts
rename to src/components/wrappers/dashboard/agent/AgentForm/agent-form.schema.ts
diff --git a/src/components/wrappers/Agent/AgentModalKey/AgentModalKey.tsx b/src/components/wrappers/dashboard/agent/AgentModalKey/AgentModalKey.tsx
similarity index 95%
rename from src/components/wrappers/Agent/AgentModalKey/AgentModalKey.tsx
rename to src/components/wrappers/dashboard/agent/AgentModalKey/AgentModalKey.tsx
index 6f26b480..5e32d6b2 100644
--- a/src/components/wrappers/Agent/AgentModalKey/AgentModalKey.tsx
+++ b/src/components/wrappers/dashboard/agent/AgentModalKey/AgentModalKey.tsx
@@ -14,7 +14,7 @@ import {CodeSnippet} from "@/components/wrappers/CodeSnippet/CodeSnippet";
import {generateEdgeKey} from "@/utils/edge_key";
import {Copy} from "lucide-react";
import {PropsWithChildren, useState} from "react";
-import {CopyButton} from "@/components/wrappers/copy-button";
+import {CopyButton} from "@/components/wrappers/common/button/copy-button";
import {Agent} from "@prisma/client";
import {getServerUrl} from "@/utils/get-server-url";
diff --git a/src/components/wrappers/BackupButton/backup-button.action.ts b/src/components/wrappers/dashboard/backup/backup-button/backup-button.action.ts
similarity index 99%
rename from src/components/wrappers/BackupButton/backup-button.action.ts
rename to src/components/wrappers/dashboard/backup/backup-button/backup-button.action.ts
index a6870c68..06dd2b16 100644
--- a/src/components/wrappers/BackupButton/backup-button.action.ts
+++ b/src/components/wrappers/dashboard/backup/backup-button/backup-button.action.ts
@@ -1,6 +1,8 @@
"use server"
-import {userAction} from "@/safe-actions";
+
import {z} from "zod";
+
+import {userAction} from "@/safe-actions";
import {prisma} from "@/prisma";
import {ServerActionResult} from "@/types/action-type";
import {Backup} from "@prisma/client";
diff --git a/src/components/wrappers/BackupButton/BackupButton.tsx b/src/components/wrappers/dashboard/backup/backup-button/backup-button.tsx
similarity index 84%
rename from src/components/wrappers/BackupButton/BackupButton.tsx
rename to src/components/wrappers/dashboard/backup/backup-button/backup-button.tsx
index ad2ebffd..f0ad4315 100644
--- a/src/components/wrappers/BackupButton/BackupButton.tsx
+++ b/src/components/wrappers/dashboard/backup/backup-button/backup-button.tsx
@@ -1,9 +1,12 @@
"use client"
-import {useMutation} from "@tanstack/react-query";
-import {backupButtonAction} from "@/components/wrappers/BackupButton/backup-button.action";
-import {toast} from "sonner";
+
import {useRouter} from "next/navigation";
-import {ButtonWithLoading} from "@/components/wrappers/Button/ButtonWithLoading/ButtonWithLoading";
+
+import {useMutation} from "@tanstack/react-query";
+import {toast} from "sonner";
+
+import {backupButtonAction} from "@/components/wrappers/dashboard/backup/backup-button/backup-button.action";
+import {ButtonWithLoading} from "@/components/wrappers/common/button/ButtonWithLoading/ButtonWithLoading";
export type BackupButtonProps = {
databaseId: string
diff --git a/src/components/wrappers/Database/CronButton/AdvancedCronSelect.tsx b/src/components/wrappers/dashboard/database/CronButton/AdvancedCronSelect.tsx
similarity index 100%
rename from src/components/wrappers/Database/CronButton/AdvancedCronSelect.tsx
rename to src/components/wrappers/dashboard/database/CronButton/AdvancedCronSelect.tsx
diff --git a/src/components/wrappers/Database/CronButton/CronButton.tsx b/src/components/wrappers/dashboard/database/CronButton/CronButton.tsx
similarity index 92%
rename from src/components/wrappers/Database/CronButton/CronButton.tsx
rename to src/components/wrappers/dashboard/database/CronButton/CronButton.tsx
index 8b11c887..1fb81d01 100644
--- a/src/components/wrappers/Database/CronButton/CronButton.tsx
+++ b/src/components/wrappers/dashboard/database/CronButton/CronButton.tsx
@@ -9,7 +9,7 @@ import {
DialogTitle,
DialogTrigger
} from "@/components/ui/dialog";
-import {CronInput} from "@/components/wrappers/Database/CronButton/CronInput";
+import {CronInput} from "@/components/wrappers/dashboard/database/CronButton/CronInput";
import {Switch} from "@/components/ui/switch";
import {Label} from "@/components/ui/label"
import {Separator} from "@/components/ui/separator";
@@ -17,14 +17,14 @@ import {useState} from "react";
import {useMutation} from "@tanstack/react-query";
import {
updateStorageSettingsAction
-} from "@/components/wrappers/Dashboard/admin/AdminStorageTab/StorageS3Form/s3-form.action";
+} from "@/components/wrappers/dashboard/admin/AdminStorageTab/StorageS3Form/s3-form.action";
import {toast} from "sonner";
import {useRouter} from "next/navigation";
import {Database} from "@prisma/client";
import {
updateBackupPolicyAction,
updateDatabaseBackupPolicyAction
-} from "@/components/wrappers/Database/CronButton/cron.action";
+} from "@/components/wrappers/dashboard/database/CronButton/cron.action";
export type CronButtonProps = {
diff --git a/src/components/wrappers/Database/CronButton/CronInput.tsx b/src/components/wrappers/dashboard/database/CronButton/CronInput.tsx
similarity index 98%
rename from src/components/wrappers/Database/CronButton/CronInput.tsx
rename to src/components/wrappers/dashboard/database/CronButton/CronInput.tsx
index e64313f4..0f37c53a 100644
--- a/src/components/wrappers/Database/CronButton/CronInput.tsx
+++ b/src/components/wrappers/dashboard/database/CronButton/CronInput.tsx
@@ -2,7 +2,7 @@ import { AdvancedCronSelect } from "./AdvancedCronSelect";
import {
updateBackupPolicyAction,
updateDatabaseBackupPolicyAction
-} from "@/components/wrappers/Database/CronButton/cron.action";
+} from "@/components/wrappers/dashboard/database/CronButton/cron.action";
import {useMutation} from "@tanstack/react-query";
import {useState} from "react";
import {useRouter} from "next/navigation";
diff --git a/src/components/wrappers/Database/CronButton/cron.action.ts b/src/components/wrappers/dashboard/database/CronButton/cron.action.ts
similarity index 100%
rename from src/components/wrappers/Database/CronButton/cron.action.ts
rename to src/components/wrappers/dashboard/database/CronButton/cron.action.ts
diff --git a/src/components/wrappers/Database/DatabaseForm/DatabaseForm.tsx b/src/components/wrappers/dashboard/database/DatabaseForm/DatabaseForm.tsx
similarity index 96%
rename from src/components/wrappers/Database/DatabaseForm/DatabaseForm.tsx
rename to src/components/wrappers/dashboard/database/DatabaseForm/DatabaseForm.tsx
index 77359f2a..2776793b 100644
--- a/src/components/wrappers/Database/DatabaseForm/DatabaseForm.tsx
+++ b/src/components/wrappers/dashboard/database/DatabaseForm/DatabaseForm.tsx
@@ -16,8 +16,8 @@ import {Button} from "@/components/ui/button";
import {useRouter} from "next/navigation";
import {useMutation} from "@tanstack/react-query";
import {TooltipProvider} from "@/components/ui/tooltip";
-import {DatabaseSchema, DatabaseType} from "@/components/wrappers/Database/DatabaseForm/form-database.schema";
-import {updateDatabaseAction} from "@/components/wrappers/Database/DatabaseForm/form-database.action";
+import {DatabaseSchema, DatabaseType} from "@/components/wrappers/dashboard/database/DatabaseForm/form-database.schema";
+import {updateDatabaseAction} from "@/components/wrappers/dashboard/database/DatabaseForm/form-database.action";
import {toast} from "sonner";
export type DatabaseFormProps = {
diff --git a/src/components/wrappers/Database/DatabaseForm/form-database.action.ts b/src/components/wrappers/dashboard/database/DatabaseForm/form-database.action.ts
similarity index 82%
rename from src/components/wrappers/Database/DatabaseForm/form-database.action.ts
rename to src/components/wrappers/dashboard/database/DatabaseForm/form-database.action.ts
index 2f29a44f..4e1c32bc 100644
--- a/src/components/wrappers/Database/DatabaseForm/form-database.action.ts
+++ b/src/components/wrappers/dashboard/database/DatabaseForm/form-database.action.ts
@@ -4,7 +4,7 @@ import {z} from "zod";
import {userAction} from "@/safe-actions";
import {prisma} from "@/prisma";
-import {DatabaseSchema} from "@/components/wrappers/Database/DatabaseForm/form-database.schema";
+import {DatabaseSchema} from "@/components/wrappers/dashboard/database/DatabaseForm/form-database.schema";
export const updateDatabaseAction = userAction
diff --git a/src/components/wrappers/Database/DatabaseForm/form-database.schema.ts b/src/components/wrappers/dashboard/database/DatabaseForm/form-database.schema.ts
similarity index 100%
rename from src/components/wrappers/Database/DatabaseForm/form-database.schema.ts
rename to src/components/wrappers/dashboard/database/DatabaseForm/form-database.schema.ts
diff --git a/src/components/wrappers/Database/EditButton/EditButton.tsx b/src/components/wrappers/dashboard/database/EditButton/EditButton.tsx
similarity index 100%
rename from src/components/wrappers/Database/EditButton/EditButton.tsx
rename to src/components/wrappers/dashboard/database/EditButton/EditButton.tsx
diff --git a/src/components/wrappers/Database/RestoreForm.tsx b/src/components/wrappers/dashboard/database/RestoreForm.tsx
similarity index 98%
rename from src/components/wrappers/Database/RestoreForm.tsx
rename to src/components/wrappers/dashboard/database/RestoreForm.tsx
index b4df23d2..689df9d4 100644
--- a/src/components/wrappers/Database/RestoreForm.tsx
+++ b/src/components/wrappers/dashboard/database/RestoreForm.tsx
@@ -14,10 +14,10 @@ import {
useZodForm
} from "@/components/ui/form";
import {Input} from "@/components/ui/input";
-import {RestoreSchema} from "@/components/wrappers/Database/restore-form.schema";
+import {RestoreSchema} from "@/components/wrappers/dashboard/database/restore-form.schema";
import {Select, SelectContent, SelectItem, SelectTrigger, SelectValue} from "@/components/ui/select";
import {useMutation} from "@tanstack/react-query";
-import {ComboBox, ComboBoxFormItem} from "@/components/wrappers/combobox";
+import {ComboBox, ComboBoxFormItem} from "@/components/wrappers/common/combobox";
import {Label} from "@/components/ui/label";
export type restoreFormProps = {
diff --git a/src/components/wrappers/Database/restore-form.schema.ts b/src/components/wrappers/dashboard/database/restore-form.schema.ts
similarity index 100%
rename from src/components/wrappers/Database/restore-form.schema.ts
rename to src/components/wrappers/dashboard/database/restore-form.schema.ts
diff --git a/src/components/wrappers/charts/evolution-line-chart.tsx b/src/components/wrappers/dashboard/statistics/charts/evolution-line-chart.tsx
similarity index 100%
rename from src/components/wrappers/charts/evolution-line-chart.tsx
rename to src/components/wrappers/dashboard/statistics/charts/evolution-line-chart.tsx
diff --git a/src/components/wrappers/charts/percentage-line-chart.tsx b/src/components/wrappers/dashboard/statistics/charts/percentage-line-chart.tsx
similarity index 100%
rename from src/components/wrappers/charts/percentage-line-chart.tsx
rename to src/components/wrappers/dashboard/statistics/charts/percentage-line-chart.tsx
diff --git a/src/features/dashboard/organization.ts b/src/features/dashboard/organization-cookie.ts
similarity index 100%
rename from src/features/dashboard/organization.ts
rename to src/features/dashboard/organization-cookie.ts
diff --git a/src/features/layout/Header.tsx b/src/features/layout/Header.tsx
index e3d26dc5..58fa3447 100644
--- a/src/features/layout/Header.tsx
+++ b/src/features/layout/Header.tsx
@@ -1,7 +1,7 @@
import {notFound} from "next/navigation";
import {currentUser} from "@/auth/current-user";
-import {LoggedInButton} from "@/components/wrappers/Dashboard/LoggedInButton/LoggedInButton";
+import {LoggedInButton} from "@/components/wrappers/dashboard/LoggedInButton/LoggedInButton";
import {SidebarTrigger} from "@/components/ui/sidebar";
import {ModeToggle} from "@/features/theme/ModeToggle";
diff --git a/src/features/upload/private/upload.action.ts b/src/features/upload/private/upload.action.ts
index b9b01128..0b4ca245 100644
--- a/src/features/upload/private/upload.action.ts
+++ b/src/features/upload/private/upload.action.ts
@@ -1,4 +1,5 @@
"use server"
+
import {mkdir, writeFile} from "fs/promises";
import path from "path";
import * as fs from "node:fs";
diff --git a/src/features/upload/public/upload.action.ts b/src/features/upload/public/upload.action.ts
index 3e483f2b..37c041f7 100644
--- a/src/features/upload/public/upload.action.ts
+++ b/src/features/upload/public/upload.action.ts
@@ -1,4 +1,5 @@
"use server"
+
import {userAction} from "@/safe-actions";
import {z} from "zod";
import {v4 as uuidv4} from 'uuid';
diff --git a/src/utils/cron.ts b/src/utils/cron.ts
index 649f2906..7baf9c41 100644
--- a/src/utils/cron.ts
+++ b/src/utils/cron.ts
@@ -6,6 +6,5 @@ export const isValidCronPart = (type: string, value: string): boolean => {
month: /^(\*|([1-9]|1[0-2])|(\d+(,\d+)*|(\d+-\d+)|(\*\/\d+)))$/,
"day-of-week": /^(\*|[0-6]|(\d+(,\d+)*|(\d+-\d+)|(\*\/\d+)))$/,
};
-
return regexMap[type]?.test(value) ?? false;
};
\ No newline at end of file