From 935870e010af1ec884259b1f1328421e99acc3af Mon Sep 17 00:00:00 2001 From: Patrick <116003638+patrick-medusajs@users.noreply.github.com> Date: Wed, 22 Feb 2023 11:25:48 -0500 Subject: [PATCH] fix(oas): add missing x-codegen + fix schema naming and $ref (#3312) ## What Add missing x-codegen + fix schema naming and $ref ## Why OAS code generator was missing information to be able to match current JS client. ## How Ensure OAS matches JS client methods. --- .changeset/quiet-horses-listen.md | 5 ++++ .../inventory-items/get-inventory-item.ts | 3 +++ .../inventory-items/list-inventory-items.ts | 3 +++ .../inventory-items/list-location-levels.ts | 3 +++ .../routes/admin/orders/get-reservations.ts | 2 +- .../admin/reservations/delete-reservation.ts | 16 +++---------- .../api/routes/admin/reservations/index.ts | 24 +++++++++++++++++-- .../admin/reservations/list-reservations.ts | 5 +++- 8 files changed, 44 insertions(+), 17 deletions(-) create mode 100644 .changeset/quiet-horses-listen.md diff --git a/.changeset/quiet-horses-listen.md b/.changeset/quiet-horses-listen.md new file mode 100644 index 0000000000..c0d57cc556 --- /dev/null +++ b/.changeset/quiet-horses-listen.md @@ -0,0 +1,5 @@ +--- +"@medusajs/medusa": patch +--- + +fix(oas): add missing x-codegen + fix schema naming and $ref diff --git a/packages/medusa/src/api/routes/admin/inventory-items/get-inventory-item.ts b/packages/medusa/src/api/routes/admin/inventory-items/get-inventory-item.ts index 7020c6e0cc..2d7de51a25 100644 --- a/packages/medusa/src/api/routes/admin/inventory-items/get-inventory-item.ts +++ b/packages/medusa/src/api/routes/admin/inventory-items/get-inventory-item.ts @@ -13,6 +13,9 @@ import { joinLevels } from "./utils/join-levels" * - (path) id=* {string} The ID of the Inventory Item. * - (query) expand {string} Comma separated list of relations to include in the results. * - (query) fields {string} Comma separated list of fields to include in the results. + * x-codegen: + * method: retrieve + * queryParams: AdminGetInventoryItemsItemParams * x-codeSamples: * - lang: JavaScript * label: JS Client diff --git a/packages/medusa/src/api/routes/admin/inventory-items/list-inventory-items.ts b/packages/medusa/src/api/routes/admin/inventory-items/list-inventory-items.ts index 504ca7b1bb..03c3c549f3 100644 --- a/packages/medusa/src/api/routes/admin/inventory-items/list-inventory-items.ts +++ b/packages/medusa/src/api/routes/admin/inventory-items/list-inventory-items.ts @@ -51,6 +51,9 @@ import { AdminInventoryItemsListWithVariantsAndLocationLevelsRes } from "." * - (query) height {string} height to search for. * - (query) width {string} width to search for. * - (query) requires_shipping {string} requires_shipping to search for. + * x-codegen: + * method: list + * queryParams: AdminGetInventoryItemsParams * x-codeSamples: * - lang: JavaScript * label: JS Client diff --git a/packages/medusa/src/api/routes/admin/inventory-items/list-location-levels.ts b/packages/medusa/src/api/routes/admin/inventory-items/list-location-levels.ts index 4a67870cb5..bf76c4e2ef 100644 --- a/packages/medusa/src/api/routes/admin/inventory-items/list-location-levels.ts +++ b/packages/medusa/src/api/routes/admin/inventory-items/list-location-levels.ts @@ -15,6 +15,9 @@ import { FindParams } from "../../../../types/common" * - (query) limit=20 {integer} Limit the number of stock locations levels returned. * - (query) expand {string} Comma separated list of relations to include in the results. * - (query) fields {string} Comma separated list of fields to include in the results. + * x-codegen: + * method: listLocationLevels + * queryParams: AdminGetInventoryItemsItemLocationLevelsParams * x-codeSamples: * - lang: JavaScript * label: JS Client diff --git a/packages/medusa/src/api/routes/admin/orders/get-reservations.ts b/packages/medusa/src/api/routes/admin/orders/get-reservations.ts index 9c2bb9bb8b..2c937df3e1 100644 --- a/packages/medusa/src/api/routes/admin/orders/get-reservations.ts +++ b/packages/medusa/src/api/routes/admin/orders/get-reservations.ts @@ -40,7 +40,7 @@ import { extendedFindParamsMixin } from "../../../../types/common" * content: * application/json: * schema: - * $ref: "#/components/schemas/AdminGetReservationReservationsReq" + * $ref: "#/components/schemas/AdminReservationsListRes" * "400": * $ref: "#/components/responses/400_error" * "401": diff --git a/packages/medusa/src/api/routes/admin/reservations/delete-reservation.ts b/packages/medusa/src/api/routes/admin/reservations/delete-reservation.ts index 69d743cc22..a5a15a8e1d 100644 --- a/packages/medusa/src/api/routes/admin/reservations/delete-reservation.ts +++ b/packages/medusa/src/api/routes/admin/reservations/delete-reservation.ts @@ -9,6 +9,8 @@ import { IInventoryService } from "../../../../interfaces" * x-authenticated: true * parameters: * - (path) id=* {string} The ID of the Reservation to delete. + * x-codegen: + * method: delete * x-codeSamples: * - lang: JavaScript * label: JS Client @@ -36,19 +38,7 @@ import { IInventoryService } from "../../../../interfaces" * content: * application/json: * schema: - * type: object - * properties: - * id: - * type: string - * description: The ID of the deleted Reservation. - * object: - * type: string - * description: The type of the object that was deleted. - * default: reservation - * deleted: - * type: boolean - * description: Whether or not the Reservation was deleted. - * default: true + * $ref: "#/components/schemas/AdminReservationsDeleteRes" * "400": * $ref: "#/components/responses/400_error" * "401": diff --git a/packages/medusa/src/api/routes/admin/reservations/index.ts b/packages/medusa/src/api/routes/admin/reservations/index.ts index 44a6aa1226..894810b6a7 100644 --- a/packages/medusa/src/api/routes/admin/reservations/index.ts +++ b/packages/medusa/src/api/routes/admin/reservations/index.ts @@ -56,7 +56,7 @@ export default (app) => { } /** - * @schema AdminPostReservationsReq + * @schema AdminReservationsRes * type: object * required: * - reservation @@ -69,7 +69,7 @@ export type AdminReservationsRes = { } /** - * @schema AdminGetReservationReservationsReq + * @schema AdminReservationsListRes * type: object * required: * - reservations @@ -108,6 +108,26 @@ export const defaultReservationFields = [ "updated_at", ] +/** + * @schema AdminReservationsDeleteRes + * type: object + * required: + * - id + * - object + * - deleted + * properties: + * id: + * type: string + * description: The ID of the deleted Reservation. + * object: + * type: string + * description: The type of the object that was deleted. + * default: reservation + * deleted: + * type: boolean + * description: Whether or not the Reservation was deleted. + * default: true + */ export type AdminReservationsDeleteRes = DeleteResponse export * from "./create-reservation" diff --git a/packages/medusa/src/api/routes/admin/reservations/list-reservations.ts b/packages/medusa/src/api/routes/admin/reservations/list-reservations.ts index 1736e3147d..c4aaf5b607 100644 --- a/packages/medusa/src/api/routes/admin/reservations/list-reservations.ts +++ b/packages/medusa/src/api/routes/admin/reservations/list-reservations.ts @@ -63,6 +63,9 @@ import { * - (query) limit=20 {integer} Limit the number of Reservations returned. * - (query) expand {string} (Comma separated) Which fields should be expanded in the product category. * - (query) fields {string} (Comma separated) Which fields should be included in the product category. + * x-codegen: + * method: list + * queryParams: AdminGetReservationsParams * x-codeSamples: * - lang: Shell * label: cURL @@ -80,7 +83,7 @@ import { * content: * application/json: * schema: - * $ref: "#/components/schemas/AdminGetReservationReservationsReq" + * $ref: "#/components/schemas/AdminReservationsListRes" * "400": * $ref: "#/components/responses/400_error" * "401":