// components/main/kabelueberwachung/kue705FO/hooks/useAlarmStatus.ts import { useEffect, useState } from "react"; const useAlarmStatus = ( slotIndex: number, kueAlarm1: any, kueAlarm2: any, kueCableBreak: any, kueGroundFault: any ) => { const [currentAlarmStatus, setCurrentAlarmStatus] = useState(false); useEffect(() => { const updateAlarmStatus = () => { const alarmStatus = (kueAlarm1 && Number(kueAlarm1[slotIndex])) || (kueAlarm2 && Number(kueAlarm2[slotIndex])) || (kueCableBreak && Number(kueCableBreak[slotIndex])) || (kueGroundFault && Number(kueGroundFault[slotIndex])); setCurrentAlarmStatus(!!alarmStatus); }; updateAlarmStatus(); const interval = setInterval(updateAlarmStatus, 10000); return () => clearInterval(interval); }, [slotIndex, kueAlarm1, kueAlarm2, kueCableBreak, kueGroundFault]); return currentAlarmStatus; }; export default useAlarmStatus;