import { useEffect, useState } from "react"; import { FormattedMessage } from "react-intl"; import { Link, useNavigate } from "react-router-dom"; import PageSpinner from "Element/PageSpinner"; import useEventPublisher from "Feed/EventPublisher"; import SnortApi, { Subscription, SubscriptionError } from "SnortApi"; import { mapSubscriptionErrorCode } from "."; import SubscriptionCard from "./SubscriptionCard"; export default function ManageSubscriptionPage() { const publisher = useEventPublisher(); const api = new SnortApi(undefined, publisher); const navigate = useNavigate(); const [subs, setSubs] = useState>(); const [error, setError] = useState(); useEffect(() => { (async () => { try { const s = await api.listSubscriptions(); setSubs(s); } catch (e) { if (e instanceof SubscriptionError) { setError(e); } } })(); }, []); if (subs === undefined) { return ; } return ( <>

{subs.map(a => ( ))} {subs.length !== 0 && ( )} {subs.length === 0 && (

), }} />

)} {error && {mapSubscriptionErrorCode(error)}} ); }