1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28import { useEffect, useState } from 'react';
import { apiFetch } from '@/auth/apiFetch';
interface FeedbackConfig {
enabled: boolean;
}
export function useFeedbackConfig() {
const [enabled, setEnabled] = useState(false);
useEffect(() => {
let cancelled = false;
apiFetch('/api/v1/feedback/config')
.then((r) => (r.ok ? r.json() : { enabled: false }))
.then((cfg: FeedbackConfig) => {
if (!cancelled) setEnabled(!!cfg.enabled);
})
.catch(() => {
if (!cancelled) setEnabled(false);
});
return () => {
cancelled = true;
};
}, []);
return enabled;
}