mirror of
https://github.com/blakeblackshear/frigate.git
synced 2025-12-08 14:25:41 +03:00
23 lines
617 B
TypeScript
23 lines
617 B
TypeScript
|
|
import { useContext } from "react";
|
||
|
|
import { AuthContext } from "@/context/auth-context";
|
||
|
|
import useSWR from "swr";
|
||
|
|
import { FrigateConfig } from "@/types/frigateConfig";
|
||
|
|
|
||
|
|
export function useAllowedCameras() {
|
||
|
|
const { auth } = useContext(AuthContext);
|
||
|
|
const { data: config } = useSWR<FrigateConfig>("config", {
|
||
|
|
revalidateOnFocus: false,
|
||
|
|
});
|
||
|
|
|
||
|
|
if (
|
||
|
|
auth.user?.role === "viewer" ||
|
||
|
|
auth.user?.role === "admin" ||
|
||
|
|
!auth.isAuthenticated // anonymous port 5000
|
||
|
|
) {
|
||
|
|
// return all cameras
|
||
|
|
return config?.cameras ? Object.keys(config.cameras) : [];
|
||
|
|
}
|
||
|
|
|
||
|
|
return auth.allowedCameras || [];
|
||
|
|
}
|