diff --git a/apps/dokploy/components/dashboard/application/rollbacks/show-rollback-settings.tsx b/apps/dokploy/components/dashboard/application/rollbacks/show-rollback-settings.tsx
index 8b6c6dd13..a06cf5697 100644
--- a/apps/dokploy/components/dashboard/application/rollbacks/show-rollback-settings.tsx
+++ b/apps/dokploy/components/dashboard/application/rollbacks/show-rollback-settings.tsx
@@ -1,4 +1,5 @@
import { zodResolver } from "@hookform/resolvers/zod";
+import Link from "next/link";
import { useEffect, useState } from "react";
import { useForm } from "react-hook-form";
import { toast } from "sonner";
@@ -22,7 +23,6 @@ import {
FormLabel,
FormMessage,
} from "@/components/ui/form";
-import { Switch } from "@/components/ui/switch";
import {
Select,
SelectContent,
@@ -32,6 +32,7 @@ import {
SelectTrigger,
SelectValue,
} from "@/components/ui/select";
+import { Switch } from "@/components/ui/switch";
import { api } from "@/utils/api";
const formSchema = z
@@ -189,9 +190,22 @@ export const ShowRollbackSettings = ({ applicationId, children }: Props) => {
-
- Select a registry where rollback images will be stored.
-
+ {!registries || registries.length === 0 ? (
+
+ No registries available. Please{" "}
+
+ configure a registry
+ {" "}
+ first to enable rollbacks.
+
+ ) : (
+
+ Select a registry where rollback images will be stored.
+
+ )}
)}
diff --git a/apps/dokploy/tsconfig.json b/apps/dokploy/tsconfig.json
index d2e6532c6..68cbab53c 100644
--- a/apps/dokploy/tsconfig.json
+++ b/apps/dokploy/tsconfig.json
@@ -1,54 +1,62 @@
{
- "compilerOptions": {
- /* Base Options: */
- "esModuleInterop": true,
- "skipLibCheck": true,
- "target": "es2022",
- "allowJs": true,
- "resolveJsonModule": true,
- "moduleDetection": "force",
- "isolatedModules": true,
-
- /* Strictness */
- "strict": true,
- "noUncheckedIndexedAccess": true,
- "checkJs": true,
-
- /* Bundled projects */
- "lib": ["dom", "dom.iterable", "ES2022"],
- "noEmit": true,
- "module": "ESNext",
- "moduleResolution": "Bundler",
- "jsx": "preserve",
- "plugins": [{ "name": "next" }],
- "incremental": true,
-
- /* Path Aliases */
- "baseUrl": ".",
- "paths": {
- "@/*": ["./*"],
- "@dokploy/server/*": ["../../packages/server/src/*"]
- }
- },
-
- "include": [
- "next-env.d.ts",
- "**/*.ts",
- "**/*.tsx",
- "**/*.cjs",
- "**/*.js",
- ".next/types/**/*.ts",
- "env.js",
- "next.config.mjs",
- "next-i18next.config.mjs"
- ],
- "exclude": [
- "node_modules",
- "dokploy",
- "config",
- "dist",
- "webpack.config.server.js",
- "migration.ts",
- "setup.ts"
- ]
+ "compilerOptions": {
+ /* Base Options: */
+ "esModuleInterop": true,
+ "skipLibCheck": true,
+ "target": "es2022",
+ "allowJs": true,
+ "resolveJsonModule": true,
+ "moduleDetection": "force",
+ "isolatedModules": true,
+ /* Strictness */
+ "strict": true,
+ "noUncheckedIndexedAccess": true,
+ "checkJs": true,
+ /* Bundled projects */
+ "lib": [
+ "dom",
+ "dom.iterable",
+ "ES2022"
+ ],
+ "noEmit": true,
+ "module": "ESNext",
+ "moduleResolution": "Bundler",
+ "jsx": "react-jsx",
+ "plugins": [
+ {
+ "name": "next"
+ }
+ ],
+ "incremental": true,
+ /* Path Aliases */
+ "baseUrl": ".",
+ "paths": {
+ "@/*": [
+ "./*"
+ ],
+ "@dokploy/server/*": [
+ "../../packages/server/src/*"
+ ]
+ }
+ },
+ "include": [
+ "next-env.d.ts",
+ "**/*.ts",
+ "**/*.tsx",
+ "**/*.cjs",
+ "**/*.js",
+ ".next/types/**/*.ts",
+ "env.js",
+ "next.config.mjs",
+ "next-i18next.config.mjs"
+ ],
+ "exclude": [
+ "node_modules",
+ "dokploy",
+ "config",
+ "dist",
+ "webpack.config.server.js",
+ "migration.ts",
+ "setup.ts"
+ ]
}