working sign up and sign in as far as I know
This commit is contained in:
@@ -1,16 +1,37 @@
|
||||
import { useMutation, useQuery } from "react-query";
|
||||
|
||||
import { $authTokens } from "./recoil";
|
||||
import { User } from "@nirvana/core/models";
|
||||
import axios from "axios";
|
||||
import { nirvanaApi } from "./nirvanaApi";
|
||||
import { queryClient } from "../nirvanaApp";
|
||||
import { useRecoilValue } from "recoil";
|
||||
|
||||
export enum Querytypes {
|
||||
GET_USER_DETAILS = "GET_USER_DETAILS",
|
||||
}
|
||||
|
||||
export function useGetUserDetails() {
|
||||
return useQuery(Querytypes.GET_USER_DETAILS, nirvanaApi.user.getUserDetails, {
|
||||
retry: false,
|
||||
export const localHost = "http://localhost:5000/api";
|
||||
|
||||
const getUserDetails = async (
|
||||
accessToken: string,
|
||||
idToken: string
|
||||
): Promise<User> => {
|
||||
return await axios.get(localHost + `/users?access_token=${accessToken}`, {
|
||||
headers: { Authorization: idToken },
|
||||
});
|
||||
};
|
||||
|
||||
export function useGetUserDetails() {
|
||||
const authTokens = useRecoilValue($authTokens);
|
||||
|
||||
return useQuery(
|
||||
Querytypes.GET_USER_DETAILS,
|
||||
() => getUserDetails(authTokens.accessToken, authTokens.idToken),
|
||||
{
|
||||
retry: false,
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
export function useCreateUser() {
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
import { atom } from "recoil";
|
||||
|
||||
export const $authTokens = atom<{
|
||||
accessToken: string;
|
||||
refreshToken: string;
|
||||
idToken: string;
|
||||
}>({
|
||||
key: "AUTH_TOKENS", // unique ID (with respect to other atoms/selectors)
|
||||
default: null, // default value (aka initial value)
|
||||
});
|
||||
Reference in New Issue
Block a user