import ActivityIndicator from "@/components/indicators/activity-indicator"; import { cn } from "@/lib/utils"; import { CustomClassificationModelConfig, FrigateConfig, } from "@/types/frigateConfig"; import { useMemo } from "react"; import { isMobile } from "react-device-detect"; import useSWR from "swr"; type ModelSelectionViewProps = { onClick: (model: CustomClassificationModelConfig) => void; }; export default function ModelSelectionView({ onClick, }: ModelSelectionViewProps) { const { data: config } = useSWR("config", { revalidateOnFocus: false, }); const classificationConfigs = useMemo(() => { if (!config) { return []; } return Object.values(config.classification.custom); }, [config]); if (!config) { return ; } if (classificationConfigs.length == 0) { return
You need to setup a custom model configuration.
; } return (
{classificationConfigs.map((config) => (
onClick(config)} onContextMenu={() => { // e.stopPropagation(); // e.preventDefault(); // handleClickEvent(true); }} >
{config.name} ({config.state_config != null ? "State" : "Object"}{" "} Classification)
))}
); }