-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Expand file tree
/
Copy pathuseLoadFeature.ts
More file actions
34 lines (29 loc) · 844 Bytes
/
Copy pathuseLoadFeature.ts
File metadata and controls
34 lines (29 loc) · 844 Bytes
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
28
29
30
31
32
33
34
import { useParams } from "react-router-dom";
import useResourceQuery, {
featureDetailPath,
} from "../../queries/useResourceQuery";
const useLoadFeature = (featureViewName: string, featureName: string) => {
const { projectName } = useParams();
const fvQuery = useResourceQuery<any>({
resourceType: `feature:${featureViewName}:${featureName}`,
project: projectName,
restPath: featureDetailPath(
featureViewName,
featureName,
projectName || "",
),
restSelect: (d) => d,
enabled: !!featureViewName && !!featureName,
});
const featureData =
fvQuery.data === undefined
? undefined
: fvQuery.data?.spec?.features?.find(
(f: any) => f.name === featureName,
) || fvQuery.data;
return {
...fvQuery,
featureData,
};
};
export default useLoadFeature;