diff --git a/src/pages/settings/index.tsx b/src/pages/settings/index.tsx index 32f8541..164f1bd 100644 --- a/src/pages/settings/index.tsx +++ b/src/pages/settings/index.tsx @@ -1,14 +1,11 @@ import PageLayout from "@/components/layouts/PageLayout"; import Header from "@/components/shared/Header"; -import { deleteApiKey, getApiKeys, regenerateApiKey } from "@/handlers/api/settings.handler"; -import { AlertDialog } from "@/components/ui/alert-dialog"; import { Badge } from "@/components/ui/badge"; import { Button } from "@/components/ui/button"; import { Input } from "@/components/ui/input"; -import { Label } from "@/components/ui/label"; import { - RefreshCw, Trash2, Save, Eye, EyeOff, ExternalLink, - Key, Workflow, Shield, CheckCircle, XCircle, Server, Globe, Download, Wand2, + Save, Eye, EyeOff, ExternalLink, + Workflow, Shield, CheckCircle, XCircle, Server, Globe, Download, Wand2, } from "lucide-react"; import { useEffect, useState } from "react"; import toast from "react-hot-toast"; @@ -16,13 +13,6 @@ import API from "@/lib/api"; import { useConfig } from "@/contexts/ConfigContext"; import Link from "next/link"; -interface ApiKey { - id: string; - purpose: string; - keyName: string; - createdAt: string; -} - function ConnectionStatus({ label, url, icon: Icon }: { label: string; url: string; icon: any }) { return (
@@ -47,11 +37,6 @@ function ConnectionStatus({ label, url, icon: Icon }: { label: string; url: stri export default function SettingsPage() { const { exImmichUrl, immichURL, version, aiEnabled } = useConfig(); - const [keys, setKeys] = useState([]); - const [loading, setLoading] = useState(true); - const [deleting, setDeleting] = useState(null); - const [regenerating, setRegenerating] = useState(null); - const [workflowApiKey, setWorkflowApiKey] = useState(""); const [workflowApiKeyLoading, setWorkflowApiKeyLoading] = useState(false); const [showWorkflowApiKey, setShowWorkflowApiKey] = useState(false); @@ -151,45 +136,11 @@ export default function SettingsPage() { setWorkflowApiKeyLoading(false); }; - const fetchKeys = async () => { - setLoading(true); - try { - const data = await getApiKeys(); - setKeys(data); - } catch {} - setLoading(false); - }; - useEffect(() => { - fetchKeys(); fetchWorkflowApiKey(); fetchImportApiKey(); }, []); - const handleDelete = async (purpose: string) => { - setDeleting(purpose); - try { - await deleteApiKey(purpose); - setKeys((prev) => prev.filter((k) => k.purpose !== purpose)); - toast.success("API key deleted"); - } catch (err: any) { - toast.error(err.message ?? "Failed to delete API key"); - } - setDeleting(null); - }; - - const handleRegenerate = async (purpose: string) => { - setRegenerating(purpose); - try { - await regenerateApiKey(purpose); - await fetchKeys(); - toast.success("API key regenerated"); - } catch (err: any) { - toast.error(err.message ?? "Failed to regenerate API key"); - } - setRegenerating(null); - }; - return (
@@ -374,78 +325,6 @@ export default function SettingsPage() {
- {/* Managed API Keys */} -
-
- -

Managed API Keys

- {keys.length} key{keys.length !== 1 ? "s" : ""} -
-
- {loading ? ( -
-

Loading...

-
- ) : keys.length === 0 ? ( -
- -

No managed API keys yet.

-

Keys are created automatically when needed (e.g. share links).

-
- ) : ( - - )} -
-
);