26 lines
779 B
TypeScript
26 lines
779 B
TypeScript
import { PrivilegeWithAmount, makeRequest } from "@frontend/kitui";
|
|
import { useEffect } from "react";
|
|
|
|
|
|
export default function usePrivileges({ onError, onNewPrivileges }: {
|
|
onNewPrivileges: (response: PrivilegeWithAmount[]) => void;
|
|
onError?: (error: any) => void;
|
|
}) {
|
|
useEffect(() => {
|
|
const controller = new AbortController();
|
|
|
|
makeRequest<never, PrivilegeWithAmount[]>({
|
|
url: "https://admin.pena.digital/strator/privilege",
|
|
method: "get",
|
|
useToken: true,
|
|
signal: controller.signal,
|
|
}).then(result => {
|
|
onNewPrivileges(result);
|
|
}).catch(error => {
|
|
onError?.(error);
|
|
});
|
|
|
|
return () => controller.abort();
|
|
}, [onError, onNewPrivileges]);
|
|
}
|