import IFrontendSettings from "./interfaces/IFrontendSettings"; import '../styles/settings.css'; import '../styles/react-toggle.css'; import React, {useEffect, useState} from "react"; import INotificationConnector, {NotificationConnectorItem} from "./interfaces/INotificationConnector"; import NotificationConnectorFunctions from "./NotificationConnectorFunctions"; export default function Settings({backendConnected, apiUri, frontendSettings, setFrontendSettings} : {backendConnected: boolean, apiUri: string, frontendSettings: IFrontendSettings, setFrontendSettings: (settings: IFrontendSettings) => void}) { let [showSettings, setShowSettings] = useState(false); let [notificationConnectors, setNotificationConnectors] = useState([]); useEffect(() => { if(!backendConnected) return; NotificationConnectorFunctions.GetNotificationConnectors(apiUri).then(setNotificationConnectors); }, []); const dateToStr = (x: Date) => { const ret = (x.getHours() < 10 ? "0" + x.getHours() : x.getHours()) + ":" + (x.getMinutes() < 10 ? "0" + x.getMinutes() : x.getMinutes()); return ret; } return (
setShowSettings(true)}> settings-cogwheel
{showSettings ?

Settings

Close Settings setShowSettings(false)}/>
setFrontendSettings({...frontendSettings, apiUri:e.currentTarget.value})} id="ApiUri" />
setFrontendSettings({...frontendSettings, jobInterval: new Date(e.currentTarget.valueAsNumber-60*60*1000) ?? frontendSettings.jobInterval})}/>
{notificationConnectors.map(c => )}
: null }
); }