mono/packages/osrl/lib/cscart/api-request/CartRequest.js
2025-12-30 16:33:03 +01:00

58 lines
5.2 KiB
JavaScript

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const mapValues_1 = require("lodash/mapValues");
const keyBy_1 = require("lodash/keyBy");
const AbstractRequest_1 = require("./AbstractRequest");
class CartRequest extends AbstractRequest_1.default {
constructor(client, config) {
super(client, config);
this.entityPath = 'cart_content';
this.prefix = 'sra_';
this.handlerParams = {};
this.params = {};
}
withShippings(ids) {
this.params = Object.assign(Object.assign({}, this.params), { calculate_shipping: 'A' });
if (ids && ids.length) {
this.params = Object.assign(Object.assign({}, this.params), { shipping_ids: ids });
}
return this;
}
buildUrl() {
let url = super.buildUrl();
url = url + (this.handlerParams.id ? `${this.handlerParams.id}/` : '');
return url;
}
add(products) {
let requestProducts = {};
if (Array.isArray(products)) {
products.map((product) => {
if (product.product_options && product.product_options.length) {
product.product_options = (0, mapValues_1.default)((0, keyBy_1.default)(product.product_options, 'id'), 'value');
}
requestProducts[product.product_id] = Object.assign({}, product);
});
}
else {
requestProducts = {
[products.product_id]: Object.assign(Object.assign({}, products), { product_options: products.product_options ? (0, mapValues_1.default)((0, keyBy_1.default)(products.product_options, 'id'), 'value') : undefined })
};
}
return this.post({
products: requestProducts
});
}
update(product) {
return this.put(Object.assign(Object.assign({}, product), { product_options: product.product_options ? (0, mapValues_1.default)((0, keyBy_1.default)(product.product_options, 'id'), 'value') : undefined }));
}
saveUserData(userData) {
return this.put({
user_data: userData
});
}
setParams() {
this.params = Object.assign(Object.assign({}, this.params), { language: this.config.language, sl: this.config.language, lang_code: this.config.language });
}
}
exports.default = CartRequest;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FydFJlcXVlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2NzY2FydC9hcGktcmVxdWVzdC9DYXJ0UmVxdWVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUNBLGdEQUF3QztBQUN4Qyx3Q0FBZ0M7QUFHaEMsdURBQStDO0FBRS9DLE1BQU0sV0FBWSxTQUFRLHlCQUFlO0lBTXZDLFlBQVksTUFBcUIsRUFBRSxNQUFjO1FBQy9DLEtBQUssQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUE7UUFOdkIsZUFBVSxHQUFXLGNBQWMsQ0FBQTtRQUNuQyxXQUFNLEdBQVcsTUFBTSxDQUFBO1FBTXJCLElBQUksQ0FBQyxhQUFhLEdBQUcsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFFRCxhQUFhLENBQUMsR0FBbUI7UUFDL0IsSUFBSSxDQUFDLE1BQU0sbUNBQ04sSUFBSSxDQUFDLE1BQU0sS0FDZCxrQkFBa0IsRUFBRSxHQUFHLEdBQ3hCLENBQUE7UUFFRCxJQUFJLEdBQUcsSUFBSSxHQUFHLENBQUMsTUFBTSxFQUFFO1lBQ3JCLElBQUksQ0FBQyxNQUFNLG1DQUNOLElBQUksQ0FBQyxNQUFNLEtBQ2QsWUFBWSxFQUFFLEdBQUcsR0FDbEIsQ0FBQTtTQUNGO1FBRUQsT0FBTyxJQUFJLENBQUE7SUFDYixDQUFDO0lBRVMsUUFBUTtRQUNoQixJQUFJLEdBQUcsR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUE7UUFDMUIsR0FBRyxHQUFHLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBRXZFLE9BQU8sR0FBRyxDQUFBO0lBQ1osQ0FBQztJQUVELEdBQUcsQ0FBQyxRQUFzRDtRQUN4RCxJQUFJLGVBQWUsR0FBUSxFQUFFLENBQUM7UUFFOUIsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQzNCLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFZLEVBQUUsRUFBRTtnQkFDNUIsSUFBSSxPQUFPLENBQUMsZUFBZSxJQUFJLE9BQU8sQ0FBQyxlQUFlLENBQUMsTUFBTSxFQUFFO29CQUM3RCxPQUFPLENBQUMsZUFBZSxHQUFHLElBQUEsbUJBQVMsRUFBQyxJQUFBLGVBQUssRUFBQyxPQUFPLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFBO2lCQUNuRjtnQkFDRCxlQUFlLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxxQkFBTyxPQUFPLENBQUMsQ0FBQztZQUNyRCxDQUFDLENBQUMsQ0FBQTtTQUNIO2FBQU07WUFDTCxlQUFlLEdBQUc7Z0JBQ2hCLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxrQ0FDaEIsUUFBUSxLQUNYLGVBQWUsRUFBRSxRQUFRLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxJQUFBLG1CQUFTLEVBQUMsSUFBQSxlQUFLLEVBQUMsUUFBUSxDQUFDLGVBQWUsRUFBRSxJQUFJLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxHQUNsSDthQUNGLENBQUM7U0FDSDtRQUVELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztZQUNmLFFBQVEsRUFBRSxlQUFlO1NBQzFCLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFFRCxNQUFNLENBQUMsT0FBWTtRQUNqQixPQUFPLElBQUksQ0FBQyxHQUFHLGlDQUNWLE9BQU8sS0FDVixlQUFlLEVBQUUsT0FBTyxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsSUFBQSxtQkFBUyxFQUFDLElBQUEsZUFBSyxFQUFDLE9BQU8sQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsSUFDL0csQ0FBQTtJQUNKLENBQUM7SUFFRCxZQUFZLENBQUMsUUFBYTtRQUN4QixPQUFPLElBQUksQ0FBQyxHQUFHLENBQUM7WUFDZCxTQUFTLEVBQUUsUUFBUTtTQUNwQixDQUFDLENBQUE7SUFDSixDQUFDO0lBRVMsU0FBUztRQUNqQixJQUFJLENBQUMsTUFBTSxtQ0FDTixJQUFJLENBQUMsTUFBTSxLQUNkLFFBQVEsRUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFDaEMsRUFBRSxFQUFVLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUNoQyxTQUFTLEVBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEdBQ2pDLENBQUE7SUFDSCxDQUFDO0NBQ0Y7QUFXRCxrQkFBZSxXQUFXLENBQUEifQ==