UNPKG

@arc-publishing/sdk-sales

Version:
60 lines 3.09 kB
import { __assign, __awaiter, __generator, __read, __spreadArray } from "tslib"; import Sales from './sales'; export function getSubscription(id) { var subs = Sales.subscriptions; return subs.find(function (s) { return s.subscriptionID === id; }); } export function updateSubscription(subs, sub) { var existingSub = subs.find(function (s) { return s.subscriptionID === sub.subscriptionID; }); var others = subs.filter(function (s) { return s.subscriptionID !== sub.subscriptionID; }); var newSub = __assign(__assign({}, existingSub), sub); return __spreadArray(__spreadArray([], __read(others), false), [newSub], false); } export function mergeSubscriptions(oldSubs, newSubs) { return newSubs.reduce(function (a, newSub) { return updateSubscription(a, newSub); }, oldSubs); } export function updateSharedSubscriptions(shared, newShare) { var existing = shared.find(function (s) { return s.subscriptionID === newShare.subscriptionID; }); var others = shared.filter(function (s) { return s.subscriptionID !== newShare.subscriptionID; }); var updatedShare = __assign(__assign({}, existing), newShare); return __spreadArray(__spreadArray([], __read(others), false), [updatedShare], false); } export function mergeSharedSubscriptions(oldShares, newShares) { return newShares.reduce(function (a, newShare) { return updateSharedSubscriptions(a, newShare); }, oldShares); } export function updateOrder(orders, order) { var existing = orders.find(function (o) { return o.orderNumber === order.orderNumber; }); var others = orders.filter(function (o) { return o.orderNumber !== order.orderNumber; }); var updatedOrder = __assign(__assign({}, existing), order); return __spreadArray(__spreadArray([], __read(others), false), [updatedOrder], false); } export function mergeOrders(oldOrders, newOrders) { return newOrders.reduce(function (o, newOrder) { return updateOrder(o, newOrder); }, oldOrders); } export function getOptions(options) { if (options === void 0) { options = {}; } return __awaiter(this, void 0, void 0, function () { var isLoggedIn, reqOptions; return __generator(this, function (_a) { switch (_a.label) { case 0: return [4, Sales._Identity.isLoggedIn()]; case 1: isLoggedIn = _a.sent(); reqOptions = __assign(__assign({}, options), { headers: isLoggedIn ? __assign(__assign({}, options.headers), { Authorization: Sales._Identity.userIdentity.accessToken }) : __assign({}, options.headers) }); if (!isLoggedIn) { reqOptions = __assign(__assign({}, reqOptions), { credentials: 'include' }); } return [2, reqOptions]; } }); }); } export function cleanPayload(payload) { var cleanedPayload = {}; Object.keys(payload).forEach(function (key) { cleanedPayload[key] = payload[key] || undefined; }); return cleanedPayload; } //# sourceMappingURL=utils.js.map