@vymalo/medusa-printful
Version:
Connect your MedusaJS store to Printful
34 lines • 1.32 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.config = void 0;
exports.default = printfulPackage_returned;
const utils_1 = require("@medusajs/utils");
const lodash_1 = require("lodash");
async function printfulPackage_returned({ event: { data: { order, shipment }, }, container, }) {
const logger = container.resolve(utils_1.ContainerRegistrationKeys.LOGGER);
const orderService = container.resolve(utils_1.Modules.ORDER);
try {
const ids = (0, lodash_1.map)(shipment.items, ({ item_id }) => item_id);
const itemsFiltered = (0, lodash_1.filter)(order.items, ({ id }) => ids.includes(id));
const items = (0, lodash_1.map)(itemsFiltered, ({ external_id, quantity }) => ({
id: external_id,
quantity,
}));
await orderService.registerShipment({
order_id: order.external_id,
items: items,
metadata: {
provider: 'printful',
data: shipment,
},
});
logger.log(`Order ${order.external_id} was return`);
}
catch (e) {
logger.error(`Error shipping printful order "${order?.id}":`, e);
}
}
exports.config = {
event: 'printful.package_returned',
};
//# sourceMappingURL=printful.package_returned.js.map