feat: 优化项目目录结构

This commit is contained in:
2025-12-12 17:25:26 +08:00
parent ae627d0496
commit b89f83291e
235 changed files with 0 additions and 0 deletions

View File

@@ -0,0 +1,33 @@
"use client"
import { list, UserListParams, UserListResponse } from '@/lib/api/admin/user'
import { useCallback } from 'react'
import { toast } from 'sonner'
import useSWR from 'swr'
export function useUserList(params?: UserListParams) {
const { data, error, isLoading, mutate } = useSWR<UserListResponse>(
['/api/admin/user', params],
() => list(params),
{
onError: (e) => {
toast.error(`${e.message || e}`)
}
}
)
const refresh = useCallback(() => {
return mutate()
}, [mutate])
return {
users: data?.items ?? [],
total: data?.total ?? 0,
page: data?.page ?? 1,
pageSize: data?.pageSize ?? 20,
isLoading,
error,
mutate,
refresh,
}
}

View File

@@ -0,0 +1,26 @@
import { AdminApi } from "@/lib/api";
import { User } from "@/lib/types/user";
import { toast } from "sonner";
import useSWR from "swr";
export function useUser(userId: string) {
const { data, error, isLoading, mutate } = useSWR<User>(
['/api/admin/user', userId],
() => AdminApi.user.get(userId),
{
revalidateOnReconnect: false,
revalidateIfStale: false,
dedupingInterval: 0,
onError: (e) => {
toast.error(`${e.message || e}`)
}
}
)
return {
user: data,
isLoading,
error,
mutate,
}
}