feat(medusa, medusa-js, medusa-react): Implement Sales Channel retrieval (#1793)

This commit is contained in:
Adrien de Peretti
2022-07-06 12:17:26 +02:00
committed by GitHub
parent e115518dda
commit 263a661031
26 changed files with 511 additions and 34 deletions
@@ -18,6 +18,7 @@ export * from "./products"
export * from "./regions"
export * from "./return-reasons"
export * from "./returns"
export * from "./sales-channels"
export * from "./shipping-options"
export * from "./shipping-profiles"
export * from "./store"
@@ -0,0 +1,2 @@
export * from "./queries"
export * from "./mutations"
@@ -0,0 +1,54 @@
export {}
/*export const useAdminCreateSalesChannel = (
options?: UseMutationOptions<
Response<AdminSalesChannelsRes>,
Error,
AdminPostSalesChannelsReq
>
) => {
const { client } = useMedusa()
const queryClient = useQueryClient()
return useMutation(
(payload: AdminPostSalesChannelsReq) => client.admin.salesChannels.create(payload),
buildOptions(queryClient, adminSalesChannelsKeys.lists(), options)
)
}*/
/*export const useAdminUpdateSalesChannel = (
id: string,
options?: UseMutationOptions<
Response<AdminSalesChannelsRes>,
Error,
AdminPostSalesChannelsSalesChannelReq
>
) => {
const { client } = useMedusa()
const queryClient = useQueryClient()
return useMutation(
(payload: AdminPostSalesChannelsSalesChannelReq) =>
client.admin.salesChannels.update(id, payload),
buildOptions(
queryClient,
[adminSalesChannelsKeys.lists(), adminSalesChannelsKeys.detail(id)],
options
)
)
}*/
/*export const useAdminDeleteSalesChannel = (
id: string,
options?: UseMutationOptions<Response<AdminSalesChannelsDeleteRes>, Error, void>
) => {
const { client } = useMedusa()
const queryClient = useQueryClient()
return useMutation(
() => client.admin.salesChannels.delete(id),
buildOptions(
queryClient,
[adminSalesChannelsKeys.lists(), adminSalesChannelsKeys.detail(id)],
options
)
)
}*/
@@ -0,0 +1,51 @@
import {
AdminSalesChannelRes
} from "@medusajs/medusa"
import { Response } from "@medusajs/medusa-js"
import { useQuery } from "react-query"
import { useMedusa } from "../../../contexts"
import { UseQueryOptionsWrapper } from "../../../types"
import { queryKeysFactory } from "../../utils"
const ADMIN_SALES_CHANNELS_QUERY_KEY = `admin_sales_channels` as const
export const adminSalesChannelsKeys = queryKeysFactory(ADMIN_SALES_CHANNELS_QUERY_KEY)
type SalesChannelsQueryKeys = typeof adminSalesChannelsKeys
export const useAdminSalesChannel = (
id: string,
options?: UseQueryOptionsWrapper<
Response<AdminSalesChannelRes>,
Error,
ReturnType<SalesChannelsQueryKeys["detail"]>
>
) => {
const { client } = useMedusa()
const { data, ...rest } = useQuery(
adminSalesChannelsKeys.detail(id),
() => client.admin.salesChannels.retrieve(id),
options
)
return { ...data, ...rest } as const
}
/*
export const useAdminSalesChannels = (
query?: AdminGetSalesChannelsParams,
options?: UseQueryOptionsWrapper<
Response<AdminProductsListRes>,
Error,
ReturnType<SalesChannelsQueryKeys["list"]>
>
) => {
const { client } = useMedusa()
const { data, ...rest } = useQuery(
adminProductKeys.list(query),
() => client.admin.salesChannels.list(query),
options
)
return { ...data, ...rest } as const
}
*/