ui/queries: add list tags query

This commit is contained in:
Johannes Kirschbauer
2025-08-28 10:09:03 +02:00
parent 1763d85d91
commit 789d326273

View File

@@ -42,6 +42,7 @@ export const DefaultQueryClient = new QueryClient({
},
});
export type MachinesQuery = ReturnType<typeof useMachinesQuery>;
export const useMachinesQuery = (clanURI: string) => {
const client = useApiClient();
@@ -117,6 +118,27 @@ export const useMachineQuery = (clanURI: string, machineName: string) => {
}));
};
export type TagsQuery = ReturnType<typeof useTags>;
export const useTags = (clanURI: string) => {
const client = useApiClient();
return useQuery(() => ({
queryKey: ["clans", encodeBase64(clanURI), "tags"],
queryFn: async () => {
const apiCall = client.fetch("list_tags", {
flake: {
identifier: clanURI,
},
});
const result = await apiCall.result;
if (result.status === "error") {
throw new Error("Error fetching tags: " + result.errors[0].message);
}
return result.data;
},
}));
};
export const useMachineStateQuery = (clanURI: string, machineName: string) => {
const client = useApiClient();
return useQuery<MachineState>(() => ({