diff --git a/src/app/dashboard/settings/_components/settings-content.tsx b/src/app/dashboard/settings/_components/settings-content.tsx index 749b165..fa63b5f 100644 --- a/src/app/dashboard/settings/_components/settings-content.tsx +++ b/src/app/dashboard/settings/_components/settings-content.tsx @@ -17,6 +17,7 @@ import { Upload, User, Users, + Link as LinkIcon, } from "lucide-react"; import { authClient } from "~/lib/auth-client"; import * as React from "react"; @@ -81,6 +82,20 @@ export function SettingsContent() { const [showCurrentPassword, setShowCurrentPassword] = useState(false); const [showNewPassword, setShowNewPassword] = useState(false); const [showConfirmPassword, setShowConfirmPassword] = useState(false); + const [isLinking, setIsLinking] = useState(false); + + const handleLinkAuthentik = async () => { + setIsLinking(true); + try { + await authClient.linkSocial({ + provider: "authentik", + callbackURL: "/dashboard/settings", + }); + } catch (error) { + toast.error("Failed to link account"); + setIsLinking(false); + } + }; // Animation preferences via provider (centralized) const { @@ -489,6 +504,43 @@ export function SettingsContent() { + + {/* Connected Accounts */} + + + + + Connected Accounts + + + Manage your linked social accounts and SSO providers + + + +
+
+
+
+ +
+
+

Authentik SSO

+

+ Connect your corporate account +

+
+
+ +
+
+
+