umami/src/components/hooks/useShareToken.ts

21 lines
534 B
TypeScript
Raw Normal View History

import useStore, { setShareToken } from 'store/app';
2022-03-02 06:13:15 +01:00
import useApi from './useApi';
2023-11-14 06:36:52 +01:00
const selector = (state: { shareToken: string }) => state.shareToken;
2020-10-11 11:29:55 +02:00
2023-11-14 06:36:52 +01:00
export function useShareToken(shareId: string) {
const shareToken = useStore(selector);
const { get, useQuery } = useApi();
const { isLoading, error } = useQuery(['share', shareId], async () => {
const data = await get(`/share/${shareId}`);
2020-10-11 11:29:55 +02:00
setShareToken(data);
2020-10-11 11:29:55 +02:00
return data;
});
2020-10-11 11:29:55 +02:00
return { shareToken, isLoading, error };
2020-10-11 11:29:55 +02:00
}
2023-05-18 08:20:06 +02:00
export default useShareToken;