front-hub/src/utils/hooks/useCustomTariffs.ts

27 lines
835 B
TypeScript
Raw Normal View History

2023-06-06 13:13:58 +00:00
import { devlog } from "@frontend/kitui";
import { CustomTariffsMap } from "@root/model/customTariffs";
import axios, { AxiosResponse } from "axios";
import { useEffect } from "react";
export function useCustomTariffs({ onError, onNewUser, url }: {
url: string;
onNewUser: (response: CustomTariffsMap) => void;
onError: (error: any) => void;
}) {
useEffect(function fetchUserData() {
const controller = new AbortController();
axios<never, AxiosResponse<CustomTariffsMap>>({
url,
signal: controller.signal,
}).then(result => {
onNewUser(result.data);
}).catch(error => {
devlog("Error fetching custom tariffs", error);
onError(error);
});
return () => controller.abort();
}, [onError, onNewUser, url]);
}