import { useState } from "react"; import { Plus, Key, ExternalLink, MoreHorizontal, Copy, RefreshCw, Trash2 } from "lucide-react"; import { Button } from "@/components/ui/button"; import { Card, CardContent, CardDescription, CardHeader, CardTitle } from "@/components/ui/card"; import { Badge } from "@/components/ui/badge"; import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuSeparator, DropdownMenuTrigger, } from "@/components/ui/dropdown-menu"; import { Dialog, DialogContent, DialogDescription, DialogHeader, DialogTitle, DialogTrigger, } from "@/components/ui/dialog"; import { Input } from "@/components/ui/input"; import { Label } from "@/components/ui/label"; import { Textarea } from "@/components/ui/textarea"; const clients = [ { id: "1", name: "GitLab", clientId: "gitlab_prod_xxxxxxxxxxxxx", redirectUris: ["https://gitlab.example.com/callback"], scopes: ["openid", "profile", "email"], createdAt: "2024-01-10", lastUsed: "2 hours ago", }, { id: "2", name: "Grafana", clientId: "grafana_prod_xxxxxxxxxxxxx", redirectUris: ["https://grafana.example.com/login/generic_oauth"], scopes: ["openid", "profile"], createdAt: "2024-01-08", lastUsed: "5 minutes ago", }, { id: "3", name: "OAuth2 Proxy", clientId: "oauth2proxy_xxxxxxxxxxxxx", redirectUris: ["https://auth.example.com/oauth2/callback"], scopes: ["openid", "profile", "email", "groups"], createdAt: "2024-01-05", lastUsed: "1 day ago", }, ]; export default function OIDCClientsPage() { const [isCreateOpen, setIsCreateOpen] = useState(false); return (
Manage applications that authenticate via Authy2
{client.clientId}