umami/src/components/hooks/queries/useConfig.ts
2024-02-05 23:59:33 -08:00

28 lines
564 B
TypeScript

import { useEffect } from 'react';
import useStore, { setConfig } from 'store/app';
import { useApi } from './useApi';
let loading = false;
export function useConfig() {
const { config } = useStore();
const { get } = useApi();
const configUrl = process.env.configUrl;
async function loadConfig() {
const data = await get(configUrl);
loading = false;
setConfig(data);
}
useEffect(() => {
if (!config && !loading && configUrl) {
loading = true;
loadConfig();
}
}, []);
return config;
}
export default useConfig;