refactor(client): use generated API client and hooks
All checks were successful
Client CMS Check Build (NixCN CMS) TeamCity build finished
Backend Check Build (NixCN CMS) TeamCity build finished

Signed-off-by: Noa Virellia <noa@requiem.garden>
This commit is contained in:
2026-01-29 11:43:46 +08:00
parent f898243de5
commit a0f6087d3e
38 changed files with 4076 additions and 217 deletions

View File

@@ -1,7 +1,11 @@
import { createFileRoute, useNavigate } from '@tanstack/react-router';
import { useEffect, useState } from 'react';
import {
useEffect,
useState } from 'react';
import z from 'zod';
import { doSetTokenByCode } from '@/lib/token';
import { postAuthTokenMutation } from '@/client/@tanstack/react-query.gen';
import { useMutation } from '@tanstack/react-query';
import { setRefreshToken, setToken } from '@/lib/token';
const tokenCodeSchema = z.object({
code: z.string().nonempty(),
@@ -17,14 +21,23 @@ function RouteComponent() {
const [status, setStatus] = useState('Loading...');
const navigate = useNavigate();
useEffect(() => {
doSetTokenByCode(code).then(() => {
const mutation = useMutation({
...postAuthTokenMutation(),
onSuccess: (data) => {
setToken(data.data?.access_token!)
setRefreshToken(data.data?.refresh_token!)
void navigate({ to: '/' });
}).catch((_) => {
},
onError: () => {
setStatus('Error getting token');
});
// eslint-disable-next-line react-hooks/exhaustive-deps
}, []);
}
})
useEffect(() => {
if (mutation.isIdle) {
mutation.mutate({ body: { code } })
}
}, [])
return <div>{status}</div>;
}