feat: medusa-js admin return reasons (#931)
* add: return-reasons admin endpoint to medusa-js * fix types * fix jsdoc * fix typo jsdoc collection Co-authored-by: Sebastian Rindom <seb@medusajs.com>
This commit is contained in:
co-authored by
Sebastian Rindom
parent
8532c966b5
commit
0acc462e1e
@@ -59,7 +59,7 @@ class AdminCollectionsResource extends BaseResource {
|
|||||||
/**
|
/**
|
||||||
* @description Lists collections matching a query
|
* @description Lists collections matching a query
|
||||||
* @param query Query for searching collections
|
* @param query Query for searching collections
|
||||||
* @returns a list of colllections matching the query.
|
* @returns a list of collections matching the query.
|
||||||
*/
|
*/
|
||||||
list(
|
list(
|
||||||
query?: AdminGetCollectionsParams
|
query?: AdminGetCollectionsParams
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import AdminDraftOrdersResource from "./draft-orders"
|
|||||||
import AdminGiftCardsResource from "./gift-cards"
|
import AdminGiftCardsResource from "./gift-cards"
|
||||||
import AdminInvitesResource from "./invites"
|
import AdminInvitesResource from "./invites"
|
||||||
import AdminNotesResource from "./notes"
|
import AdminNotesResource from "./notes"
|
||||||
|
import AdminReturnReasonsResource from "./return-reasons"
|
||||||
import AdminVariantsResource from "./variants"
|
import AdminVariantsResource from "./variants"
|
||||||
import AdminSwapsResource from "./swaps"
|
import AdminSwapsResource from "./swaps"
|
||||||
import AdminShippingProfilesResource from "./shipping-profiles"
|
import AdminShippingProfilesResource from "./shipping-profiles"
|
||||||
@@ -21,6 +22,7 @@ class Admin extends BaseResource {
|
|||||||
public giftCards = new AdminGiftCardsResource(this.client)
|
public giftCards = new AdminGiftCardsResource(this.client)
|
||||||
public invites = new AdminInvitesResource(this.client)
|
public invites = new AdminInvitesResource(this.client)
|
||||||
public notes = new AdminNotesResource(this.client)
|
public notes = new AdminNotesResource(this.client)
|
||||||
|
public returnReasons = new AdminReturnReasonsResource(this.client)
|
||||||
public variants = new AdminVariantsResource(this.client)
|
public variants = new AdminVariantsResource(this.client)
|
||||||
public swaps = new AdminSwapsResource(this.client)
|
public swaps = new AdminSwapsResource(this.client)
|
||||||
public shippingProfiles = new AdminShippingProfilesResource(this.client)
|
public shippingProfiles = new AdminShippingProfilesResource(this.client)
|
||||||
|
|||||||
@@ -0,0 +1,70 @@
|
|||||||
|
import {
|
||||||
|
AdminPostReturnReasonsReq,
|
||||||
|
AdminReturnReasonsRes,
|
||||||
|
AdminReturnReasonsDeleteRes,
|
||||||
|
AdminReturnReasonsListRes,
|
||||||
|
AdminPostReturnReasonsReasonReq,
|
||||||
|
} from "@medusajs/medusa"
|
||||||
|
import { ResponsePromise } from "../../typings"
|
||||||
|
import BaseResource from "../base"
|
||||||
|
|
||||||
|
class AdminReturnReasonsResource extends BaseResource {
|
||||||
|
/**
|
||||||
|
* @description Creates a return reason.
|
||||||
|
* @param payload
|
||||||
|
* @returns Created return reason.
|
||||||
|
*/
|
||||||
|
create(
|
||||||
|
payload: AdminPostReturnReasonsReq
|
||||||
|
): ResponsePromise<AdminReturnReasonsRes> {
|
||||||
|
const path = `/admin/return-reasons`
|
||||||
|
return this.client.request("POST", path, payload)
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @description Updates a return reason
|
||||||
|
* @param id id of the return reason to update.
|
||||||
|
* @param payload update to apply to return reason.
|
||||||
|
* @returns the updated return reason.
|
||||||
|
*/
|
||||||
|
update(
|
||||||
|
id: string,
|
||||||
|
payload: AdminPostReturnReasonsReasonReq
|
||||||
|
): ResponsePromise<AdminReturnReasonsRes> {
|
||||||
|
const path = `/admin/return-reasons/${id}`
|
||||||
|
return this.client.request("POST", path, payload)
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @description deletes a return reason
|
||||||
|
* @param id id of return reason to delete.
|
||||||
|
* @returns Deleted response
|
||||||
|
*/
|
||||||
|
delete(id: string): ResponsePromise<AdminReturnReasonsDeleteRes> {
|
||||||
|
const path = `/admin/return-reasons/${id}`
|
||||||
|
return this.client.request("DELETE", path)
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @description retrieves a return reason
|
||||||
|
* @param id id of the return reason to retrieve.
|
||||||
|
* @returns the return reason with the given id
|
||||||
|
*/
|
||||||
|
retrieve(id: string): ResponsePromise<AdminReturnReasonsRes> {
|
||||||
|
const path = `/admin/return-reasons/${id}`
|
||||||
|
return this.client.request("GET", path)
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @description Lists return reasons matching a query
|
||||||
|
* @param query Query for searching return reasons
|
||||||
|
* @returns a list of return reasons matching the query.
|
||||||
|
*/
|
||||||
|
list(): ResponsePromise<AdminReturnReasonsListRes> {
|
||||||
|
const path = `/admin/return-reasons`
|
||||||
|
|
||||||
|
return this.client.request("GET", path)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export default AdminReturnReasonsResource
|
||||||
+55
-3222
File diff suppressed because it is too large
Load Diff
+86
-1952
File diff suppressed because it is too large
Load Diff
@@ -28,6 +28,7 @@ export * from "./routes/admin/notifications"
|
|||||||
export * from "./routes/admin/shipping-profiles"
|
export * from "./routes/admin/shipping-profiles"
|
||||||
export * from "./routes/admin/store"
|
export * from "./routes/admin/store"
|
||||||
export * from "./routes/admin/variants"
|
export * from "./routes/admin/variants"
|
||||||
|
export * from "./routes/admin/return-reasons"
|
||||||
export * from "./routes/admin/swaps"
|
export * from "./routes/admin/swaps"
|
||||||
export * from "./routes/admin/regions"
|
export * from "./routes/admin/regions"
|
||||||
// Store
|
// Store
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import { ReturnReasonService } from "../../../../services"
|
import { ReturnReasonService } from "../../../../services"
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @oas [delete] /return-reason/{id}
|
* @oas [delete] /return-reasons/{id}
|
||||||
* operationId: "DeleteReturnReason"
|
* operationId: "DeleteReturnReason"
|
||||||
* summary: "Delete a return reason"
|
* summary: "Delete a return reason"
|
||||||
* description: "Deletes a return reason."
|
* description: "Deletes a return reason."
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
import { Router } from "express"
|
import { Router } from "express"
|
||||||
import { ReturnReason } from "../../../.."
|
import { ReturnReason } from "../../../.."
|
||||||
|
import { DeleteResponse } from "../../../../types/common"
|
||||||
import middlewares from "../../../middlewares"
|
import middlewares from "../../../middlewares"
|
||||||
|
|
||||||
const route = Router()
|
const route = Router()
|
||||||
@@ -51,12 +52,15 @@ export const defaultAdminReturnReasonsRelations = [
|
|||||||
"return_reason_children",
|
"return_reason_children",
|
||||||
]
|
]
|
||||||
|
|
||||||
export type AdminReturnReasonRes = {
|
export type AdminReturnReasonsRes = {
|
||||||
return_reasons: ReturnReason
|
return_reason: ReturnReason
|
||||||
}
|
}
|
||||||
|
|
||||||
export type AdminReturnReasonsListRes = {
|
export type AdminReturnReasonsListRes = {
|
||||||
return_reasons: ReturnReason[]
|
return_reasons: ReturnReason[]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export type AdminReturnReasonsDeleteRes = DeleteResponse
|
||||||
|
|
||||||
export * from "./create-reason"
|
export * from "./create-reason"
|
||||||
|
export * from "./update-reason"
|
||||||
|
|||||||
@@ -45,4 +45,3 @@ export type StoreReturnReasonsRes = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export * from "./get-reason"
|
export * from "./get-reason"
|
||||||
export * from "./list-reasons"
|
|
||||||
|
|||||||
Reference in New Issue
Block a user