Newer
Older
import { useEffect, useState } from 'react';
import {getNotifications, AgentNotification} from "src/utils/agentUtils";
import rootStore from "src/store/rootStore";
import {Results, useQuery} from "@realm/react";
import Email from "../db-models/Email";
export const useAgentNotifications = (): AgentNotification[] => {
const [notifications, setNotifications] = useState<AgentNotification[]>([]);
const fetchNotifications = async () => {
const data = await getNotifications(rootStore.agentStore.agent);
setNotifications(data);
}
useEffect(() => {
const interval = setInterval(fetchNotifications, 2000);
return () => clearInterval(interval);
}, []);
return notifications;
};
export const useEmailNotifications = (): Results<Email> => {
let emailQuery = useQuery(Email);
emailQuery = emailQuery.filtered(`read == $0`, false);
emailQuery = emailQuery.sorted('createdAt', true);
return emailQuery;
};