feat(medusa, medusa-js, medusa-react): Support listing order edits (#2436)

* feat(medusa, medusa-js, medusa-react): Support listing order edits

* feat(medusa): Update OAS

* fix oas

Co-authored-by: Oliver Windall Juhl <59018053+olivermrbl@users.noreply.github.com>
This commit is contained in:
Adrien de Peretti
2022-10-13 14:44:08 +02:00
committed by GitHub
co-authored by Oliver Windall Juhl
parent 69e579758f
commit 143f8543e5
12 changed files with 433 additions and 14 deletions
+14 -2
View File
@@ -1664,6 +1664,18 @@ export const adminHandlers = [
)
}),
rest.get("/admin/order-edits/", (req, res, ctx) => {
return res(
ctx.status(200),
ctx.json({
count: 1,
limit: 20,
offset: 0,
order_edits: [fixtures.get("order_edit")],
})
)
}),
rest.post("/admin/order-edits/", (req, res, ctx) => {
return res(
ctx.status(200),
@@ -1783,7 +1795,7 @@ export const adminHandlers = [
})
)
}),
rest.delete("/admin/order-edits/:id/items/:item_id", (req, res, ctx) => {
return res(
ctx.status(200),
@@ -1792,7 +1804,7 @@ export const adminHandlers = [
...fixtures.get("order_edit"),
changes: [
{
type: 'item_remove'
type: "item_remove",
},
],
},
@@ -1,4 +1,9 @@
import { AdminOrderEditsRes } from "@medusajs/medusa"
import {
AdminOrderEditsListRes,
AdminOrderEditsRes,
GetOrderEditsOrderEditParams,
GetOrderEditsParams,
} from "@medusajs/medusa"
import { queryKeysFactory } from "../../utils"
import { UseQueryOptionsWrapper } from "../../../types"
import { Response } from "@medusajs/medusa-js"
@@ -12,6 +17,7 @@ type OrderEditQueryKeys = typeof adminOrderEditsKeys
export const useAdminOrderEdit = (
id: string,
query?: GetOrderEditsOrderEditParams,
options?: UseQueryOptionsWrapper<
Response<AdminOrderEditsRes>,
Error,
@@ -21,7 +27,24 @@ export const useAdminOrderEdit = (
const { client } = useMedusa()
const { data, ...rest } = useQuery(
adminOrderEditsKeys.detail(id),
() => client.admin.orderEdits.retrieve(id),
() => client.admin.orderEdits.retrieve(id, query),
options
)
return { ...data, ...rest } as const
}
export const useAdminOrderEdits = (
query?: GetOrderEditsParams,
options?: UseQueryOptionsWrapper<
Response<AdminOrderEditsListRes>,
Error,
ReturnType<OrderEditQueryKeys["list"]>
>
) => {
const { client } = useMedusa()
const { data, ...rest } = useQuery(
adminOrderEditsKeys.list(query),
() => client.admin.orderEdits.list(query),
options
)
return { ...data, ...rest } as const
@@ -1,6 +1,6 @@
import { fixtures } from "../../../../mocks/data"
import { renderHook } from "@testing-library/react-hooks"
import { useAdminOrderEdit } from "../../../../src"
import { useAdminOrderEdit, useAdminOrderEdits } from "../../../../src"
import { createWrapper } from "../../../utils"
describe("useAdminOrderEdit hook", () => {
@@ -19,3 +19,19 @@ describe("useAdminOrderEdit hook", () => {
expect(result.current.order_edit).toEqual(order_edit)
})
})
describe("useAdminOrderEdits hook", () => {
test("returns an order edit", async () => {
const order_edit = fixtures.get("order_edit")
const { result, waitFor } = renderHook(() => useAdminOrderEdits(), {
wrapper: createWrapper(),
})
await waitFor(() => result.current.isSuccess)
expect(result.current.response.status).toEqual(200)
expect(result.current.order_edits).toEqual(
expect.arrayContaining([order_edit])
)
})
})