UNPKG

@vymalo/medusa-printful

Version:

Connect your MedusaJS store to Printful

55 lines 1.96 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.POST = void 0; const utils_1 = require("@medusajs/utils"); const POST = async (req, res) => { const logger = req.scope.resolve(utils_1.ContainerRegistrationKeys.LOGGER); const eventBusService = req.scope.resolve('event_bus'); try { const { data, type } = req.body; const name = getEventName(type); await eventBusService.emit({ name, data, }); res.status(200).send({ message: 'Received the webhook data successfully' }); } catch (error) { logger.error('Error occurred while processing the webhook data', error); res .status(500) .send({ error: 'An error occurred while processing the webhook data' }); } }; exports.POST = POST; function getEventName(type) { switch (type) { case 'product_synced': return 'printful.product_synced'; case 'product_updated': return 'printful.product_updated'; case 'product_deleted': return 'printful.product_deleted'; case 'package_shipped': return 'printful.package_shipped'; case 'package_returned': return 'printful.package_returned'; case 'order_created': return 'printful.order_created'; case 'order_updated': return 'printful.order_updated'; case 'order_canceled': return 'printful.order_canceled'; case 'order_failed': return 'printful.order_failed'; case 'order_put_hold': return 'printful.order_put_hold'; case 'order_put_hold_approval': return 'printful.order_put_hold_approval'; case 'order_remove_hold': return 'printful.order_remove_hold'; default: throw new Error(`Unknown webhook type: ${type}`); } } //# sourceMappingURL=route.js.map