fix empty admin role check

This commit is contained in:
NlightN22 2024-05-22 14:32:03 +07:00
parent 83d5c3424c
commit 46342eaca1
3 changed files with 14 additions and 4 deletions

View File

@ -1,6 +1,6 @@
# syntax=docker/dockerfile:1
# Build commands:
# - $VERSION=1.3
# - $VERSION=1.4
# - rm build -r -Force ; rm ./node_modules/.cache/babel-loader -r -Force ; yarn build
# - docker build --pull --rm -t oncharterliz/multi-frigate:latest -t oncharterliz/multi-frigate:$VERSION "."
# - docker image push --all-tags oncharterliz/multi-frigate

View File

@ -1,6 +1,6 @@
{
"name": "multi-frigate",
"version": "0.1.3",
"version": "0.1.4",
"private": true,
"dependencies": {
"@cycjimmy/jsmpeg-player": "^6.0.5",

View File

@ -2,6 +2,8 @@ import { useQuery } from "@tanstack/react-query";
import { frigateQueryKeys, frigateApi } from "../services/frigate.proxy/frigate.api";
import { useRealmAccessRoles } from "./useRealmAccessRoles";
import { useEffect, useState } from "react";
import { isProduction } from "../shared/env.const";
import { getConfigSchema } from "../services/frigate.proxy/frigate.schema";
export interface AdminRole {
isLoading: boolean
@ -19,9 +21,17 @@ export const useAdminRole = (): AdminRole => {
const roles = useRealmAccessRoles()
const [isAdmin, setIsAdmin] = useState(false)
if (isError) setIsAdmin(false)
useEffect(() => {
if (adminConfig) {
const checkAdmin = roles.some(role => role === adminConfig.value)
const parsedConfig = getConfigSchema.safeParse(adminConfig)
if (!isProduction) console.log('useAdminRole parsedConfig success:', parsedConfig.success)
if (!parsedConfig.success) {
setIsAdmin(true)
return
}
if (parsedConfig.success) {
const checkAdmin = roles.some(role => role === parsedConfig.data.value)
setIsAdmin(checkAdmin)
} else {
setIsAdmin(false)