Update Login.utils.tsx

This commit is contained in:
Daniel Hougaard
2024-06-24 19:08:19 +02:00
parent 45da563465
commit 56bc25025a
+25 -8
View File
@@ -1,5 +1,7 @@
import { NextRouter } from "next/router"; import { NextRouter, useRouter } from "next/router";
import { useServerConfig } from "@app/context";
import { useSelectOrganization } from "@app/hooks/api";
import { fetchOrganizations } from "@app/hooks/api/organization/queries"; import { fetchOrganizations } from "@app/hooks/api/organization/queries";
import { userKeys } from "@app/hooks/api/users/queries"; import { userKeys } from "@app/hooks/api/users/queries";
import { queryClient } from "@app/reactQuery"; import { queryClient } from "@app/reactQuery";
@@ -27,14 +29,29 @@ export const navigateUserToOrg = async (router: NextRouter, organizationId?: str
} }
}; };
export const navigateUserToSelectOrg = (router: NextRouter, cliCallbackPort?: string) => { export const useNavigateToSelectOrganization = () => {
queryClient.invalidateQueries(userKeys.getUser); const { config } = useServerConfig();
const selectOrganization = useSelectOrganization();
const router = useRouter();
let redirectTo = "/login/select-organization"; const navigate = async (cliCallbackPort?: string) => {
if (config.defaultOrgId) {
await selectOrganization.mutateAsync({
organizationId: config.defaultOrgId
});
if (cliCallbackPort) { await navigateUserToOrg(router, config.defaultOrgId);
redirectTo += `?callback_port=${cliCallbackPort}`; }
}
router.push(redirectTo, undefined, { shallow: true }); queryClient.invalidateQueries(userKeys.getUser);
let redirectTo = "/login/select-organization";
if (cliCallbackPort) {
redirectTo += `?callback_port=${cliCallbackPort}`;
}
router.push(redirectTo, undefined, { shallow: true });
};
return { navigateToSelectOrganization: navigate };
}; };