UNPKG

@devx-commerce/plugin-loyalty

Version:

A starter for Medusa plugins.

49 lines 4.25 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.GET = GET; const api_response_1 = require("../../../../../lib/api-response"); const utils_1 = require("@medusajs/framework/utils"); async function GET(req, res) { try { const query = req.scope.resolve(utils_1.ContainerRegistrationKeys.QUERY); // First, get the loyalty transactions const { data: transactions, metadata } = await query.graph({ entity: "loyalty_transaction", ...req.queryConfig, filters: req.filterableFields, }); // For transactions that have order_id, fetch the order data to get display_id const transactionsWithOrderData = await Promise.all(transactions.map(async (transaction) => { if (transaction.order_id) { try { const { data: orders } = await query.graph({ entity: "order", fields: ["id", "display_id"], filters: { id: transaction.order_id }, }); if (orders && orders.length > 0) { return { ...transaction, display_id: orders[0].display_id || null, }; } } catch (error) { // If order fetch fails, continue without display_id console.warn(`Failed to fetch order ${transaction.order_id}:`, error); } } return transaction; })); return (0, api_response_1.sendApiResponse)(res, (0, api_response_1.createSuccessResponse)({ data: transactionsWithOrderData, count: metadata?.count || 0, offset: metadata?.skip || 0, limit: metadata?.take || 10, })); } catch (error) { return (0, api_response_1.sendApiResponse)(res, (0, api_response_1.createErrorResponse)(error.message, 500)); } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3N0b3JlL2N1c3RvbWVycy9tZS90cmFuc2FjdGlvbnMvcm91dGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFhQSxrQkF1REM7QUEvREQsa0VBSXlDO0FBRXpDLHFEQUFzRTtBQUUvRCxLQUFLLFVBQVUsR0FBRyxDQUN2QixHQUEyRCxFQUMzRCxHQUFtQjtJQUVuQixJQUFJLENBQUM7UUFDSCxNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxpQ0FBeUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVqRSxzQ0FBc0M7UUFDdEMsTUFBTSxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLEdBQUcsTUFBTSxLQUFLLENBQUMsS0FBSyxDQUFDO1lBQ3pELE1BQU0sRUFBRSxxQkFBcUI7WUFDN0IsR0FBRyxHQUFHLENBQUMsV0FBVztZQUNsQixPQUFPLEVBQUUsR0FBRyxDQUFDLGdCQUFnQjtTQUM5QixDQUFDLENBQUM7UUFFSCw4RUFBOEU7UUFDOUUsTUFBTSx5QkFBeUIsR0FBRyxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQ2pELFlBQVksQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLFdBQVcsRUFBRSxFQUFFO1lBQ3JDLElBQUksV0FBVyxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUN6QixJQUFJLENBQUM7b0JBQ0gsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsR0FBRyxNQUFNLEtBQUssQ0FBQyxLQUFLLENBQUM7d0JBQ3pDLE1BQU0sRUFBRSxPQUFPO3dCQUNmLE1BQU0sRUFBRSxDQUFDLElBQUksRUFBRSxZQUFZLENBQUM7d0JBQzVCLE9BQU8sRUFBRSxFQUFFLEVBQUUsRUFBRSxXQUFXLENBQUMsUUFBUSxFQUFFO3FCQUN0QyxDQUFDLENBQUM7b0JBRUgsSUFBSSxNQUFNLElBQUksTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQzt3QkFDaEMsT0FBTzs0QkFDTCxHQUFHLFdBQVc7NEJBQ2QsVUFBVSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLElBQUksSUFBSTt5QkFDekMsQ0FBQztvQkFDSixDQUFDO2dCQUNILENBQUM7Z0JBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztvQkFDZixvREFBb0Q7b0JBQ3BELE9BQU8sQ0FBQyxJQUFJLENBQ1YseUJBQXlCLFdBQVcsQ0FBQyxRQUFRLEdBQUcsRUFDaEQsS0FBSyxDQUNOLENBQUM7Z0JBQ0osQ0FBQztZQUNILENBQUM7WUFDRCxPQUFPLFdBQVcsQ0FBQztRQUNyQixDQUFDLENBQUMsQ0FDSCxDQUFDO1FBRUYsT0FBTyxJQUFBLDhCQUFlLEVBQ3BCLEdBQUcsRUFDSCxJQUFBLG9DQUFxQixFQUFDO1lBQ3BCLElBQUksRUFBRSx5QkFBeUI7WUFDL0IsS0FBSyxFQUFFLFFBQVEsRUFBRSxLQUFLLElBQUksQ0FBQztZQUMzQixNQUFNLEVBQUUsUUFBUSxFQUFFLElBQUksSUFBSSxDQUFDO1lBQzNCLEtBQUssRUFBRSxRQUFRLEVBQUUsSUFBSSxJQUFJLEVBQUU7U0FDNUIsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztRQUNmLE9BQU8sSUFBQSw4QkFBZSxFQUFDLEdBQUcsRUFBRSxJQUFBLGtDQUFtQixFQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUN2RSxDQUFDO0FBQ0gsQ0FBQyJ9