feat: add user token management

This commit is contained in:
Sonny
2025-08-21 16:39:02 +02:00
parent 376e9e32c3
commit d00b6b9edd
17 changed files with 517 additions and 2 deletions

View File

@@ -0,0 +1,33 @@
import { router, usePage } from '@inertiajs/react';
interface ApiToken {
id: number;
name: string;
token: string;
lastUsedAt: string | null;
expiresAt: string | null;
isActive: boolean;
createdAt: string;
}
export function useApiTokens() {
const {
props: { tokens },
} = usePage<{
tokens: ApiToken[];
}>();
const createToken = async (name: string, expiresAt?: Date) => {
return router.post('/user/api-tokens', { name, expiresAt });
};
const revokeToken = async (tokenId: number) => {
return router.delete(`/user/api-tokens/${tokenId}`);
};
return {
tokens,
createToken,
revokeToken,
};
}