feat: Init. v2 implementation in admin (#6715)

This commit is contained in:
Oli Juhl
2024-03-20 14:28:28 +01:00
committed by GitHub
parent c658bd0233
commit 8155e2cfad
52 changed files with 1951 additions and 23 deletions

View File

@@ -0,0 +1,43 @@
import { useMutation } from "@tanstack/react-query"
import { adminAuthKeys, useAdminCustomQuery } from "medusa-react"
import { medusa } from "../medusa"
export const useV2Session = (options: any = {}) => {
const { data, isLoading, isError, error } = useAdminCustomQuery(
"/admin/users/me",
adminAuthKeys.details(),
{},
options
)
const user = data?.user
return { user, isLoading, isError, error }
}
export const useV2LoginWithSession = () => {
return useMutation(
(payload: { email: string; password: string }) =>
medusa.client.request("POST", "/auth/admin/emailpass", {
email: payload.email,
password: payload.password,
}),
{
onSuccess: async (args: { token: string }) => {
const { token } = args
// Convert the JWT to a session cookie
// TODO: Consider if the JWT is a good choice for session token
await medusa.client.request(
"POST",
"/auth/session",
{},
{},
{
Authorization: `Bearer ${token}`,
}
)
},
}
)
}

View File

@@ -0,0 +1,2 @@
export * from "./auth"
export * from "./store"

View File

@@ -0,0 +1,14 @@
import { adminStoreKeys, useAdminCustomQuery } from "medusa-react"
export const useV2Store = ({ initialData }: { initialData?: any }) => {
const { data, isLoading, isError, error } = useAdminCustomQuery(
"/admin/stores",
adminStoreKeys.details(),
{},
{ initialData }
)
const store = data.stores[0]
return { store, isLoading, isError, error }
}