Files
hfb_jysh/frontend/src/features/realname/api.ts
T

39 lines
907 B
TypeScript

import { useQuery } from '@tanstack/react-query'
import { apiClient, unwrapData } from '@/shared/api/client'
import type { ApiResponse } from '@/shared/api/types'
export interface RealnameStatus {
status: string
provider?: string
provider_order_no?: string
masked_name?: string
masked_id_no?: string
verified_at?: string
fail_reason?: string
}
export function fetchRealnameStatus() {
return unwrapData<RealnameStatus>(
apiClient.get<ApiResponse<RealnameStatus>>('/realname/status')
)
}
export function useRealnameStatus(enabled = true) {
return useQuery({
queryKey: ['realname-status'],
queryFn: fetchRealnameStatus,
enabled,
staleTime: 10_000,
})
}
export function startRealname(name: string, idNo: string) {
return unwrapData<RealnameStatus>(
apiClient.post<ApiResponse<RealnameStatus>>('/realname/start', {
name,
id_no: idNo,
})
)
}