useReports.ts 817 B

12345678910111213141516171819202122232425262728293031
  1. import Toast from "toasters";
  2. import { useWebsocketsStore } from "@/stores/websockets";
  3. export const useReports = () => {
  4. const { socket } = useWebsocketsStore();
  5. const resolveReport = ({ reportId, value }) =>
  6. new Promise((resolve, reject) => {
  7. socket.dispatch("reports.resolve", reportId, value, res => {
  8. new Toast(res.message);
  9. if (res.status === "success")
  10. return resolve({ status: "success" });
  11. return reject(new Error(res.message));
  12. });
  13. });
  14. const removeReport = reportId =>
  15. new Promise((resolve, reject) => {
  16. socket.dispatch("reports.remove", reportId, res => {
  17. new Toast(res.message);
  18. if (res.status === "success")
  19. return resolve({ status: "success" });
  20. return reject(new Error(res.message));
  21. });
  22. });
  23. return {
  24. resolveReport,
  25. removeReport
  26. };
  27. };