diff options
| author | MohamedBassem <me@mbassem.com> | 2024-02-12 14:52:00 +0000 |
|---|---|---|
| committer | MohamedBassem <me@mbassem.com> | 2024-02-12 14:55:00 +0000 |
| commit | 6aacc0c7a86e36c52a3c2c1d26fe58cefcd3bec4 (patch) | |
| tree | bad306e872d6bfcc2c67f00caa3880c8aa56070f /packages/web/app/dashboard/settings/components/ApiKeySettings.tsx | |
| parent | 230cafb6dfc8d3bad57d84ef13c3669f5bf5331a (diff) | |
| download | karakeep-6aacc0c7a86e36c52a3c2c1d26fe58cefcd3bec4.tar.zst | |
feature: Add support for managing API keys
Diffstat (limited to 'packages/web/app/dashboard/settings/components/ApiKeySettings.tsx')
| -rw-r--r-- | packages/web/app/dashboard/settings/components/ApiKeySettings.tsx | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/packages/web/app/dashboard/settings/components/ApiKeySettings.tsx b/packages/web/app/dashboard/settings/components/ApiKeySettings.tsx new file mode 100644 index 00000000..1598f25f --- /dev/null +++ b/packages/web/app/dashboard/settings/components/ApiKeySettings.tsx @@ -0,0 +1,49 @@ +import { + Table, + TableBody, + TableCell, + TableHead, + TableHeader, + TableRow, +} from "@/components/ui/table"; +import { api } from "@/server/api/client"; +import DeleteApiKey from "./DeleteApiKey"; +import AddApiKey from "./AddApiKey"; + +export default async function ApiKeys() { + const keys = await api.apiKeys.list(); + return ( + <div className="pt-4"> + <span className="text-xl">API Keys</span> + <hr className="my-2" /> + <div className="flex flex-col space-y-3"> + <div className="flex flex-1 justify-end"> + <AddApiKey /> + </div> + <Table> + <TableHeader> + <TableRow> + <TableHead>Name</TableHead> + <TableHead>Key</TableHead> + <TableHead>Created At</TableHead> + <TableHead>Action</TableHead> + </TableRow> + </TableHeader> + <TableBody> + {keys.keys.map((k) => ( + <TableRow key={k.id}> + <TableCell>{k.name}</TableCell> + <TableCell>**_{k.keyId}_**</TableCell> + <TableCell>{k.createdAt.toLocaleString()}</TableCell> + <TableCell> + <DeleteApiKey name={k.name} id={k.id} /> + </TableCell> + </TableRow> + ))} + <TableRow></TableRow> + </TableBody> + </Table> + </div> + </div> + ); +} |
