From fa3cde07ac9f422f495bf2ddbb5708356e4a8d6b Mon Sep 17 00:00:00 2001 From: --list Date: Mon, 5 Jul 2021 09:49:58 +0200 Subject: [PATCH] snake_cased noNotification and other minor changes --- .../admin/draft-orders/create-draft-order.js | 2 +- .../admin/draft-orders/update-draft-order.js | 7 +++- packages/medusa/src/api/routes/admin/index.js | 2 +- .../orders/__tests__/create-fulfillment.js | 3 +- .../api/routes/admin/orders/create-claim.js | 6 +-- .../routes/admin/orders/create-fulfillment.js | 4 +- .../routes/admin/orders/create-shipment.js | 2 +- .../admin/orders/create-swap-shipment.js | 2 +- .../api/routes/admin/orders/create-swap.js | 9 +++-- .../api/routes/admin/orders/fulfill-claim.js | 10 ++--- .../api/routes/admin/orders/fulfill-swap.js | 10 ++--- .../api/routes/admin/orders/refund-payment.js | 2 +- .../api/routes/store/returns/create-return.js | 5 +-- .../medusa/src/services/__tests__/claim.js | 4 +- .../medusa/src/services/__tests__/order.js | 8 ++-- .../medusa/src/services/__tests__/swap.js | 39 ++++++++++--------- packages/medusa/src/services/claim.js | 14 +++---- packages/medusa/src/services/draft-order.js | 3 +- packages/medusa/src/services/fulfillment.js | 5 ++- packages/medusa/src/services/notification.js | 4 +- packages/medusa/src/services/order.js | 24 ++++++------ packages/medusa/src/services/swap.js | 28 ++++++------- 22 files changed, 100 insertions(+), 93 deletions(-) diff --git a/packages/medusa/src/api/routes/admin/draft-orders/create-draft-order.js b/packages/medusa/src/api/routes/admin/draft-orders/create-draft-order.js index 03db073d58..5e1cbe3b51 100644 --- a/packages/medusa/src/api/routes/admin/draft-orders/create-draft-order.js +++ b/packages/medusa/src/api/routes/admin/draft-orders/create-draft-order.js @@ -155,7 +155,7 @@ export default async (req, res) => { draftOrder = await draftOrderService.retrieve(draftOrder.id, { relations: defaultRelations, select: defaultFields, - }) // + }) res.status(200).json({ draft_order: draftOrder }) } catch (err) { diff --git a/packages/medusa/src/api/routes/admin/draft-orders/update-draft-order.js b/packages/medusa/src/api/routes/admin/draft-orders/update-draft-order.js index 6fff5d598b..5de8e9545a 100644 --- a/packages/medusa/src/api/routes/admin/draft-orders/update-draft-order.js +++ b/packages/medusa/src/api/routes/admin/draft-orders/update-draft-order.js @@ -92,7 +92,12 @@ export default async (req, res) => { ) } - await draftOrderService.update(draftOrder.id, value) + if ("no_notification_order" in value) { + await draftOrderService.update(draftOrder.id, { + no_notification_order: value.no_notification_order, + }) + delete value.no_notification_order + } await cartService.update(draftOrder.cart_id, value) diff --git a/packages/medusa/src/api/routes/admin/index.js b/packages/medusa/src/api/routes/admin/index.js index a4be5a9c59..c5b5d4b557 100644 --- a/packages/medusa/src/api/routes/admin/index.js +++ b/packages/medusa/src/api/routes/admin/index.js @@ -65,7 +65,7 @@ export default (app, container, config) => { returnRoutes(route) variantRoutes(route) draftOrderRoutes(route) - collectionRoutes(route) + collectionRoutes(route) notificationRoutes(route) returnReasonRoutes(route) diff --git a/packages/medusa/src/api/routes/admin/orders/__tests__/create-fulfillment.js b/packages/medusa/src/api/routes/admin/orders/__tests__/create-fulfillment.js index c4a074f899..9ba6e8a2b1 100644 --- a/packages/medusa/src/api/routes/admin/orders/__tests__/create-fulfillment.js +++ b/packages/medusa/src/api/routes/admin/orders/__tests__/create-fulfillment.js @@ -43,7 +43,7 @@ describe("POST /admin/orders/:id/fulfillment", () => { quantity: 1, }, ], - {"metadata": undefined, "noNotification": undefined} + { metadata: undefined, no_notification: undefined } ) }) @@ -52,6 +52,5 @@ describe("POST /admin/orders/:id/fulfillment", () => { expect(subject.body.order.id).toEqual(IdMap.getId("test-order")) expect(subject.body.order.fulfillment_status).toEqual("fulfilled") }) - }) }) diff --git a/packages/medusa/src/api/routes/admin/orders/create-claim.js b/packages/medusa/src/api/routes/admin/orders/create-claim.js index 365f4f8023..ade142b418 100644 --- a/packages/medusa/src/api/routes/admin/orders/create-claim.js +++ b/packages/medusa/src/api/routes/admin/orders/create-claim.js @@ -110,8 +110,7 @@ import { defaultRelations, defaultFields } from "./" * $ref: "#/components/schemas/order" */ export default async (req, res) => { - const { id } = req.params - + const { id } = req.params const schema = Validator.object().keys({ type: Validator.string() .valid("replace", "refund") @@ -165,8 +164,7 @@ export default async (req, res) => { const { value, error } = schema.validate(req.body) if (error) { throw new MedusaError(MedusaError.Types.INVALID_DATA, error.details) - } - + } const idempotencyKeyService = req.scope.resolve("idempotencyKeyService") const headerKey = req.get("Idempotency-Key") || "" diff --git a/packages/medusa/src/api/routes/admin/orders/create-fulfillment.js b/packages/medusa/src/api/routes/admin/orders/create-fulfillment.js index 798bd9a2ae..11e41323ce 100644 --- a/packages/medusa/src/api/routes/admin/orders/create-fulfillment.js +++ b/packages/medusa/src/api/routes/admin/orders/create-fulfillment.js @@ -65,8 +65,8 @@ export default async (req, res) => { const orderService = req.scope.resolve("orderService") await orderService.createFulfillment(id, value.items, { - metadata: value.metadata, - noNotification: value.no_notification + metadata: value.metadata, + no_notification: value.no_notification, }) const order = await orderService.retrieve(id, { diff --git a/packages/medusa/src/api/routes/admin/orders/create-shipment.js b/packages/medusa/src/api/routes/admin/orders/create-shipment.js index c8d093bf70..915e15f26d 100644 --- a/packages/medusa/src/api/routes/admin/orders/create-shipment.js +++ b/packages/medusa/src/api/routes/admin/orders/create-shipment.js @@ -59,7 +59,7 @@ export default async (req, res) => { id, value.fulfillment_id, value.tracking_numbers.map(n => ({ tracking_number: n })), - { noNotification: value.no_notification } + { no_notification: value.no_notification } ) const order = await orderService.retrieve(id, { diff --git a/packages/medusa/src/api/routes/admin/orders/create-swap-shipment.js b/packages/medusa/src/api/routes/admin/orders/create-swap-shipment.js index 6d5d0e5134..edf8572f51 100644 --- a/packages/medusa/src/api/routes/admin/orders/create-swap-shipment.js +++ b/packages/medusa/src/api/routes/admin/orders/create-swap-shipment.js @@ -61,7 +61,7 @@ export default async (req, res) => { swap_id, value.fulfillment_id, value.tracking_numbers.map(n => ({ tracking_number: n })), - {noNotification: value.no_notification}, + { no_notification: value.no_notification } ) const order = await orderService.retrieve(id, { diff --git a/packages/medusa/src/api/routes/admin/orders/create-swap.js b/packages/medusa/src/api/routes/admin/orders/create-swap.js index 53c0151f4e..25ad45604e 100644 --- a/packages/medusa/src/api/routes/admin/orders/create-swap.js +++ b/packages/medusa/src/api/routes/admin/orders/create-swap.js @@ -68,7 +68,7 @@ export default async (req, res) => { .items({ item_id: Validator.string().required(), quantity: Validator.number().required(), - }) + }) .required(), return_shipping: Validator.object() .keys({ @@ -82,7 +82,7 @@ export default async (req, res) => { variant_id: Validator.string().required(), quantity: Validator.number().required(), }), - no_notification: Validator.boolean().optional() + no_notification: Validator.boolean().optional(), }) const { value, error } = schema.validate(req.body) @@ -138,7 +138,10 @@ export default async (req, res) => { value.return_items, value.additional_items, value.return_shipping, - { idempotency_key: idempotencyKey.idempotency_key, noNotification: value.no_notification } + { + idempotency_key: idempotencyKey.idempotency_key, + no_notification: value.no_notification, + } ) await swapService.withTransaction(manager).createCart(swap.id) diff --git a/packages/medusa/src/api/routes/admin/orders/fulfill-claim.js b/packages/medusa/src/api/routes/admin/orders/fulfill-claim.js index a3a4d9e88d..6c017c8517 100644 --- a/packages/medusa/src/api/routes/admin/orders/fulfill-claim.js +++ b/packages/medusa/src/api/routes/admin/orders/fulfill-claim.js @@ -51,12 +51,10 @@ export default async (req, res) => { const entityManager = req.scope.resolve("manager") await entityManager.transaction(async manager => { - await claimService - .withTransaction(manager) - .createFulfillment(claim_id, { - metadata: value.metadata, - noNotification: value.no_notification, - }) + await claimService.withTransaction(manager).createFulfillment(claim_id, { + metadata: value.metadata, + no_notification: value.no_notification, + }) }) const order = await orderService.retrieve(id, { diff --git a/packages/medusa/src/api/routes/admin/orders/fulfill-swap.js b/packages/medusa/src/api/routes/admin/orders/fulfill-swap.js index 289f45eff9..aa8f680464 100644 --- a/packages/medusa/src/api/routes/admin/orders/fulfill-swap.js +++ b/packages/medusa/src/api/routes/admin/orders/fulfill-swap.js @@ -51,12 +51,10 @@ export default async (req, res) => { const entityManager = req.scope.resolve("manager") await entityManager.transaction(async manager => { - await swapService - .withTransaction(manager) - .createFulfillment(swap_id, { - metadata: value.metadata, - noNotification: value.no_notification, - }) + await swapService.withTransaction(manager).createFulfillment(swap_id, { + metadata: value.metadata, + no_notification: value.no_notification, + }) const order = await orderService.withTransaction(manager).retrieve(id, { select: defaultFields, diff --git a/packages/medusa/src/api/routes/admin/orders/refund-payment.js b/packages/medusa/src/api/routes/admin/orders/refund-payment.js index 54381137f3..b0bc76bf9d 100644 --- a/packages/medusa/src/api/routes/admin/orders/refund-payment.js +++ b/packages/medusa/src/api/routes/admin/orders/refund-payment.js @@ -67,7 +67,7 @@ export default async (req, res) => { value.amount, value.reason, value.note, - { noNotification: value.no_notification } + { no_notification: value.no_notification } ) const order = await orderService.retrieve(id, { diff --git a/packages/medusa/src/api/routes/store/returns/create-return.js b/packages/medusa/src/api/routes/store/returns/create-return.js index 1101dbd08e..e04bf44037 100644 --- a/packages/medusa/src/api/routes/store/returns/create-return.js +++ b/packages/medusa/src/api/routes/store/returns/create-return.js @@ -31,7 +31,6 @@ import { MedusaError, Validator } from "medusa-core-utils" * option_id: * type: string * description: The id of the Shipping Option to create the Shipping Method from. - * * tags: * - Return * responses: @@ -59,7 +58,7 @@ export default async (req, res) => { .keys({ option_id: Validator.string().optional(), }) - .optional() + .optional(), }) const { value, error } = schema.validate(req.body) @@ -132,7 +131,7 @@ export default async (req, res) => { .withTransaction(manager) .emit("order.return_requested", { id: value.order_id, - return_id: createdReturn.id + return_id: createdReturn.id, }) return { diff --git a/packages/medusa/src/services/__tests__/claim.js b/packages/medusa/src/services/__tests__/claim.js index 8b88cb7d42..feae278cb3 100644 --- a/packages/medusa/src/services/__tests__/claim.js +++ b/packages/medusa/src/services/__tests__/claim.js @@ -442,7 +442,7 @@ describe("ClaimService", () => { metadata: { meta: "data", }, - noNotification: false, + no_notification: false, }) expect(withTransactionMock).toHaveBeenCalledTimes(3) @@ -458,7 +458,7 @@ describe("ClaimService", () => { metadata: { meta: "data", }, - noNotification: false, + no_notification: false, } ) diff --git a/packages/medusa/src/services/__tests__/order.js b/packages/medusa/src/services/__tests__/order.js index 4b89496653..02a8bfc76e 100644 --- a/packages/medusa/src/services/__tests__/order.js +++ b/packages/medusa/src/services/__tests__/order.js @@ -877,7 +877,7 @@ describe("OrderService", () => { quantity: 1, }, ], - { noNotification: input } + { no_notification: input } ) expect(eventBusService.emit).toHaveBeenCalledWith(expect.any(String), { @@ -1073,7 +1073,7 @@ describe("OrderService", () => { ).toHaveBeenCalledWith( IdMap.getId("fulfillment"), [{ tracking_number: "1234" }, { tracking_number: "2345" }], - { metadata: undefined, noNotification: true } + { metadata: undefined, no_notification: true } ) expect(orderRepo.save).toHaveBeenCalledTimes(1) @@ -1094,7 +1094,7 @@ describe("OrderService", () => { IdMap.getId("test"), IdMap.getId("fulfillment"), [{ tracking_number: "1234" }, { tracking_number: "2345" }], - { noNotification: input } + { no_notification: input } ) expect(eventBusService.emit).toHaveBeenCalledWith(expect.any(String), { @@ -1197,7 +1197,7 @@ describe("OrderService", () => { 100, "discount", "note", - { noNotification: input } + { no_notification: input } ) expect(eventBusService.emit).toHaveBeenCalledWith(expect.any(String), { diff --git a/packages/medusa/src/services/__tests__/swap.js b/packages/medusa/src/services/__tests__/swap.js index ba9834c456..a3368b0a03 100644 --- a/packages/medusa/src/services/__tests__/swap.js +++ b/packages/medusa/src/services/__tests__/swap.js @@ -340,30 +340,33 @@ describe("SwapService", () => { expect(returnService.create).toHaveBeenCalledTimes(1) }) - + it.each([ [true, true], [false, false], [undefined, true], - ])( "passes correct no_notification to eventBus with %s", async (input, expected) => { + ])( + "passes correct no_notification to eventBus with %s", + async (input, expected) => { + await swapService.create( + testOrder, + [{ item_id: IdMap.getId("line"), quantity: 1 }], + [{ variant_id: IdMap.getId("new-variant"), quantity: 1 }], + { + id: IdMap.getId("return-shipping"), + price: 20, + }, + { no_notification: input } + ) - await swapService.create( - testOrder, - [{ item_id: IdMap.getId("line"), quantity: 1 }], - [{ variant_id: IdMap.getId("new-variant"), quantity: 1 }], - { - id: IdMap.getId("return-shipping"), - price: 20, - }, - {noNotification: input} - ) - - expect(eventBusService.emit).toHaveBeenCalledWith( - expect.any(String), - {"id": undefined, "no_notification": expected}) - }) - }) + expect(eventBusService.emit).toHaveBeenCalledWith( + expect.any(String), + { id: undefined, no_notification: expected } + ) + } + ) }) + }) describe("receiveReturn", () => { beforeEach(() => { diff --git a/packages/medusa/src/services/claim.js b/packages/medusa/src/services/claim.js index 37161d9d37..72cb5491ce 100644 --- a/packages/medusa/src/services/claim.js +++ b/packages/medusa/src/services/claim.js @@ -311,10 +311,10 @@ class ClaimService extends BaseService { id, config = { metadata: {}, - noNotification: undefined, + no_notification: undefined, } ) { - const { metadata, noNotification } = config + const { metadata, no_notification } = config return this.atomicPhase_(async manager => { const claim = await this.retrieve(id, { @@ -353,7 +353,7 @@ class ClaimService extends BaseService { } const evaluatedNoNotification = - noNotification !== undefined ? noNotification : claim.no_notification + no_notification !== undefined ? no_notification : claim.no_notification const fulfillments = await this.fulfillmentService_ .withTransaction(manager) @@ -469,10 +469,10 @@ class ClaimService extends BaseService { trackingLinks, config = { metadata: {}, - noNotification: undefined, + no_notification: undefined, } ) { - const { metadata, noNotification } = config + const { metadata, no_notification } = config return this.atomicPhase_(async manager => { const claim = await this.retrieve(id, { @@ -480,13 +480,13 @@ class ClaimService extends BaseService { }) const evaluatedNoNotification = - noNotification !== undefined ? noNotification : claim.no_notification + no_notification !== undefined ? no_notification : claim.no_notification const shipment = await this.fulfillmentService_ .withTransaction(manager) .createShipment(fulfillmentId, trackingLinks, { metadata, - noNotification: evaluatedNoNotification, + no_notification: evaluatedNoNotification, }) claim.fulfillment_status = "shipped" diff --git a/packages/medusa/src/services/draft-order.js b/packages/medusa/src/services/draft-order.js index d2ec54bfcd..d16044b43b 100644 --- a/packages/medusa/src/services/draft-order.js +++ b/packages/medusa/src/services/draft-order.js @@ -253,7 +253,7 @@ class DraftOrderService extends BaseService { items, shipping_methods, discounts, - no_notification_order = undefined, + no_notification_order, ...rest } = data @@ -345,6 +345,7 @@ class DraftOrderService extends BaseService { await draftOrderRepo.save(draftOrder) }) } + /** * Updates a draft order with the given data * @param {String} doId - id of the draft order diff --git a/packages/medusa/src/services/fulfillment.js b/packages/medusa/src/services/fulfillment.js index 45598c8b47..0fdb0a4027 100644 --- a/packages/medusa/src/services/fulfillment.js +++ b/packages/medusa/src/services/fulfillment.js @@ -180,9 +180,10 @@ class FulfillmentService extends BaseService { this.validateFulfillmentLineItem_ ) - const { noNotification, ...rest} = custom + const { no_notification, ...rest } = custom - const evaluatedNoNotification = noNotification !== undefined ? noNotification : order.no_notification + const evaluatedNoNotification = + no_notification !== undefined ? no_notification : order.no_notification const { shipping_methods } = order diff --git a/packages/medusa/src/services/notification.js b/packages/medusa/src/services/notification.js index 62bdd688eb..8dcf7962a0 100644 --- a/packages/medusa/src/services/notification.js +++ b/packages/medusa/src/services/notification.js @@ -28,7 +28,7 @@ class NotificationService extends BaseService { this.notificationProviderRepository_ = notificationProviderRepository this.subscribers_ = {} - this.attachmentGenerator_ = null + this.attachmentGenerator_ = null } /** @@ -164,7 +164,7 @@ class NotificationService extends BaseService { if (!subs) { return Promise.resolve() } - if(data['no_notification'] === true) { + if (data["no_notification"] === true) { return } diff --git a/packages/medusa/src/services/order.js b/packages/medusa/src/services/order.js index 7409fa4a6e..7cf6f42858 100644 --- a/packages/medusa/src/services/order.js +++ b/packages/medusa/src/services/order.js @@ -579,10 +579,10 @@ class OrderService extends BaseService { trackingLinks, config = { metadata: {}, - noNotification: undefined, + no_notification: undefined, } ) { - const { metadata, noNotification } = config + const { metadata, no_notification } = config return this.atomicPhase_(async manager => { const order = await this.retrieve(orderId, { relations: ["items"] }) @@ -596,13 +596,15 @@ class OrderService extends BaseService { } const evaluatedNoNotification = - noNotification !== undefined ? noNotification : shipment.no_notification + no_notification !== undefined + ? no_notification + : shipment.no_notification const shipmentRes = await this.fulfillmentService_ .withTransaction(manager) .createShipment(fulfillmentId, trackingLinks, { metadata, - noNotification: evaluatedNoNotification, + no_notification: evaluatedNoNotification, }) order.fulfillment_status = "shipped" @@ -1002,11 +1004,11 @@ class OrderService extends BaseService { orderId, itemsToFulfill, config = { - noNotification: undefined, + no_notification: undefined, metadata: {}, } ) { - const { metadata, noNotification } = config + const { metadata, no_notification } = config return this.atomicPhase_(async manager => { const order = await this.retrieve(orderId, { @@ -1046,7 +1048,7 @@ class OrderService extends BaseService { .withTransaction(manager) .createFulfillment(order, itemsToFulfill, { metadata, - noNotification: noNotification, + no_notification: no_notification, order_id: orderId, }) let successfullyFulfilled = [] @@ -1087,7 +1089,7 @@ class OrderService extends BaseService { const result = await orderRepo.save(order) const evaluatedNoNotification = - noNotification !== undefined ? noNotification : order.no_notification + no_notification !== undefined ? no_notification : order.no_notification for (const fulfillment of fulfillments) { await this.eventBus_ @@ -1157,10 +1159,10 @@ class OrderService extends BaseService { reason, note, config = { - noNotification: undefined, + no_notification: undefined, } ) { - const { noNotification } = config + const { no_notification } = config return this.atomicPhase_(async manager => { const order = await this.retrieve(orderId, { @@ -1182,7 +1184,7 @@ class OrderService extends BaseService { const result = await this.retrieve(orderId) const evaluatedNoNotification = - noNotification !== undefined ? noNotification : order.no_notification + no_notification !== undefined ? no_notification : order.no_notification this.eventBus_.emit(OrderService.Events.REFUND_CREATED, { id: result.id, diff --git a/packages/medusa/src/services/swap.js b/packages/medusa/src/services/swap.js index 6db06e4785..ec5d850881 100644 --- a/packages/medusa/src/services/swap.js +++ b/packages/medusa/src/services/swap.js @@ -205,9 +205,9 @@ class SwapService extends BaseService { * the customer. * @param {ReturnShipping?} returnShipping - an optional shipping method for * returning the returnItems. - * @param {boolean?} noNotification - an optional flag to disable sending - * notification when creating swap. If set, it overrules the attribute inherited - * from the order. + * @param {Object} custom - contains relevant custom information. This object may + * include no_notification which will disable sending notification when creating + * swap. If set, it overrules the attribute inherited from the order. * @returns {Promise} the newly created swap. */ async create( @@ -216,10 +216,10 @@ class SwapService extends BaseService { additionalItems, returnShipping, custom = { - noNotification: undefined, + no_notification: undefined, } ) { - const { noNotification, ...rest } = custom + const { no_notification, ...rest } = custom return this.atomicPhase_(async manager => { if ( order.fulfillment_status === "not_fulfilled" || @@ -242,7 +242,7 @@ class SwapService extends BaseService { ) const evaluatedNoNotification = - noNotification !== undefined ? noNotification : order.no_notification + no_notification !== undefined ? no_notification : order.no_notification const swapRepo = manager.getCustomRepository(this.swapRepository_) const created = swapRepo.create({ @@ -645,17 +645,17 @@ class SwapService extends BaseService { * Fulfills the addtional items associated with the swap. Will call the * fulfillment providers associated with the shipping methods. * @param {string} swapId - the id of the swap to fulfill, - * @param {object} config - optional configurations, includes optional metadata to attach to the shipment, and a noNotification flag. + * @param {object} config - optional configurations, includes optional metadata to attach to the shipment, and a no_notification flag. * @returns {Promise} the updated swap with new status and fulfillments. */ async createFulfillment( swapId, config = { metadata: {}, - noNotification: undefined, + no_notification: undefined, } ) { - const { metadata, noNotification } = config + const { metadata, no_notification } = config return this.atomicPhase_(async manager => { const swap = await this.retrieve(swapId, { @@ -687,7 +687,7 @@ class SwapService extends BaseService { } const evaluatedNoNotification = - noNotification !== undefined ? noNotification : swap.no_notification + no_notification !== undefined ? no_notification : swap.no_notification swap.fulfillments = await this.fulfillmentService_ .withTransaction(manager) @@ -779,10 +779,10 @@ class SwapService extends BaseService { trackingLinks, config = { metadata: {}, - noNotification: undefined, + no_notification: undefined, } ) { - const { metadata, noNotification } = config + const { metadata, no_notification } = config return this.atomicPhase_(async manager => { const swap = await this.retrieve(swapId, { @@ -790,14 +790,14 @@ class SwapService extends BaseService { }) const evaluatedNoNotification = - noNotification !== undefined ? noNotification : swap.no_notification + no_notification !== undefined ? no_notification : swap.no_notification // Update the fulfillment to register const shipment = await this.fulfillmentService_ .withTransaction(manager) .createShipment(fulfillmentId, trackingLinks, { metadata, - noNotification: evaluatedNoNotification, + no_notification: evaluatedNoNotification, }) swap.fulfillment_status = "shipped"