31435c1e97
- 新增权限目录、系统权限组与用户权限组分配,后台路由改为按权限粒度控制。 - 支持创建、编辑、查看和删除自定义权限组,并为用户绑定权限组。 - 前端后台界面按权限动态展示菜单与操作项,补充用户/权限组相关类型与交互。
13 lines
448 B
TypeScript
13 lines
448 B
TypeScript
import React from "react"
|
|
import { Navigate } from "react-router-dom"
|
|
import { useMe } from "@/hooks/use-me"
|
|
import { hasAdminAccess } from "@/lib/permissions"
|
|
|
|
export function AdminOnly({ children }: { children: React.ReactNode }) {
|
|
const me = useMe()
|
|
if (me.isLoading) return null
|
|
if (!me.data?.user) return <Navigate to="/login" replace />
|
|
if (!hasAdminAccess(me.data.user)) return <Navigate to="/" replace />
|
|
return <>{children}</>
|
|
}
|