GetOrders
Implements GetOrders Unified Method.
Source
import "./extended";
import { getNormalizers } from "@alokai/connect/integration-kit";
import type { Order } from "@vsf-enterprise/sfcc-types";
import { assertAuthorized, defineApi } from "@vsf-enterprise/unified-api-sfcc";
export const getOrders = defineApi.getOrders(async (context, args) => {
const { api } = await context.getApiClient();
await assertAuthorized(context);
const { normalizeOrderListItem, normalizePagination } = getNormalizers(context);
const { currentPage = 1, pageSize = 20 } = args ?? {};
const {
data: orders = [],
limit,
offset,
total,
} = await api.getCustomerOrders({
limit: pageSize,
offset: (currentPage - 1) * pageSize,
});
return {
orders: orders.map((order: Order) => normalizeOrderListItem(order)).filter(Boolean),
pagination: normalizePagination({
limit,
offset,
total,
}),
};
});