Merge pull request 'fix(ui): reload machine list in sidebar after adding a machine' (#4815) from ui/invalidate-list-query-on-add into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4815
This commit is contained in:
@@ -26,6 +26,11 @@ export type ClanListQueryResult = UseQueryResult<ClanDetailsWithURI>[];
|
|||||||
|
|
||||||
export const useMachinesQuery = (clanURI: string) => {
|
export const useMachinesQuery = (clanURI: string) => {
|
||||||
const client = useApiClient();
|
const client = useApiClient();
|
||||||
|
|
||||||
|
if (!clanURI) {
|
||||||
|
throw new Error("useMachinesQuery: clanURI is undefined");
|
||||||
|
}
|
||||||
|
|
||||||
return useQuery<ListMachines>(() => ({
|
return useQuery<ListMachines>(() => ({
|
||||||
queryKey: ["clans", encodeBase64(clanURI), "machines"],
|
queryKey: ["clans", encodeBase64(clanURI), "machines"],
|
||||||
queryFn: async () => {
|
queryFn: async () => {
|
||||||
|
|||||||
@@ -110,6 +110,8 @@ const ClanSceneController = (props: RouteSectionProps) => {
|
|||||||
const clanURI = useClanURI();
|
const clanURI = useClanURI();
|
||||||
const navigate = useNavigate();
|
const navigate = useNavigate();
|
||||||
|
|
||||||
|
const machinesQuery = useMachinesQuery(clanURI);
|
||||||
|
|
||||||
const [dialogHandlers, setDialogHandlers] = createSignal<{
|
const [dialogHandlers, setDialogHandlers] = createSignal<{
|
||||||
resolve: ({ id }: { id: string }) => void;
|
resolve: ({ id }: { id: string }) => void;
|
||||||
reject: (err: unknown) => void;
|
reject: (err: unknown) => void;
|
||||||
@@ -141,6 +143,10 @@ const ClanSceneController = (props: RouteSectionProps) => {
|
|||||||
// Important: rejects the promise
|
// Important: rejects the promise
|
||||||
throw new Error(res.errors[0].message);
|
throw new Error(res.errors[0].message);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// trigger a refetch of the machines query
|
||||||
|
machinesQuery.refetch();
|
||||||
|
|
||||||
return { id: values.name };
|
return { id: values.name };
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user