UNPKG

@spartacus/checkout

Version:

Checkout feature library for Spartacus

81 lines 12 kB
import { HttpHeaders } from '@angular/common/http'; import { Injectable } from '@angular/core'; import { DELIVERY_MODE_NORMALIZER, } from '@spartacus/checkout/core'; import { ADDRESS_NORMALIZER, ADDRESS_SERIALIZER, } from '@spartacus/core'; import { map, pluck } from 'rxjs/operators'; import * as i0 from "@angular/core"; import * as i1 from "@angular/common/http"; import * as i2 from "@spartacus/core"; export class OccCheckoutDeliveryAdapter { constructor(http, occEndpoints, converter) { this.http = http; this.occEndpoints = occEndpoints; this.converter = converter; } getCreateDeliveryAddressEndpoint(userId, cartId) { return this.occEndpoints.buildUrl('createDeliveryAddress', { urlParams: { userId, cartId, }, }); } getSetDeliveryAddressEndpoint(userId, cartId, addressId) { return this.occEndpoints.buildUrl('setDeliveryAddress', { urlParams: { userId, cartId }, queryParams: { addressId }, }); } getDeliveryModeEndpoint(userId, cartId) { return this.occEndpoints.buildUrl('deliveryMode', { urlParams: { userId, cartId, }, }); } getSetDeliveryModeEndpoint(userId, cartId, deliveryModeId) { return this.occEndpoints.buildUrl('setDeliveryMode', { urlParams: { userId, cartId, }, queryParams: { deliveryModeId }, }); } getDeliveryModesEndpoint(userId, cartId) { return this.occEndpoints.buildUrl('deliveryModes', { urlParams: { userId, cartId }, }); } createAddress(userId, cartId, address) { address = this.converter.convert(address, ADDRESS_SERIALIZER); return this.http .post(this.getCreateDeliveryAddressEndpoint(userId, cartId), address, { headers: new HttpHeaders().set('Content-Type', 'application/json'), }) .pipe(this.converter.pipeable(ADDRESS_NORMALIZER)); } setAddress(userId, cartId, addressId) { return this.http.put(this.getSetDeliveryAddressEndpoint(userId, cartId, addressId), {}); } setMode(userId, cartId, deliveryModeId) { return this.http.put(this.getSetDeliveryModeEndpoint(userId, cartId, deliveryModeId), {}); } getMode(userId, cartId) { return this.http .get(this.getDeliveryModeEndpoint(userId, cartId)) .pipe(this.converter.pipeable(DELIVERY_MODE_NORMALIZER)); } getSupportedModes(userId, cartId) { return this.http .get(this.getDeliveryModesEndpoint(userId, cartId)) .pipe(pluck('deliveryModes'), map((modes) => modes !== null && modes !== void 0 ? modes : []), this.converter.pipeableMany(DELIVERY_MODE_NORMALIZER)); } } OccCheckoutDeliveryAdapter.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: OccCheckoutDeliveryAdapter, deps: [{ token: i1.HttpClient }, { token: i2.OccEndpointsService }, { token: i2.ConverterService }], target: i0.ɵɵFactoryTarget.Injectable }); OccCheckoutDeliveryAdapter.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: OccCheckoutDeliveryAdapter }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.0.5", ngImport: i0, type: OccCheckoutDeliveryAdapter, decorators: [{ type: Injectable }], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.OccEndpointsService }, { type: i2.ConverterService }]; } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2NjLWNoZWNrb3V0LWRlbGl2ZXJ5LmFkYXB0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9mZWF0dXJlLWxpYnMvY2hlY2tvdXQvb2NjL2FkYXB0ZXJzL29jYy1jaGVja291dC1kZWxpdmVyeS5hZGFwdGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFFTCx3QkFBd0IsR0FDekIsTUFBTSwwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLEVBRUwsa0JBQWtCLEVBQ2xCLGtCQUFrQixHQUtuQixNQUFNLGlCQUFpQixDQUFDO0FBRXpCLE9BQU8sRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFHNUMsTUFBTSxPQUFPLDBCQUEwQjtJQUNyQyxZQUNZLElBQWdCLEVBQ2hCLFlBQWlDLEVBQ2pDLFNBQTJCO1FBRjNCLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsaUJBQVksR0FBWixZQUFZLENBQXFCO1FBQ2pDLGNBQVMsR0FBVCxTQUFTLENBQWtCO0lBQ3BDLENBQUM7SUFFTSxnQ0FBZ0MsQ0FDeEMsTUFBYyxFQUNkLE1BQWM7UUFFZCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLHVCQUF1QixFQUFFO1lBQ3pELFNBQVMsRUFBRTtnQkFDVCxNQUFNO2dCQUNOLE1BQU07YUFDUDtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFUyw2QkFBNkIsQ0FDckMsTUFBYyxFQUNkLE1BQWMsRUFDZCxTQUFrQjtRQUVsQixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLG9CQUFvQixFQUFFO1lBQ3RELFNBQVMsRUFBRSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUU7WUFDN0IsV0FBVyxFQUFFLEVB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b3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwSGVhZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIENoZWNrb3V0RGVsaXZlcnlBZGFwdGVyLFxuICBERUxJVkVSWV9NT0RFX05PUk1BTElaRVIsXG59IGZyb20gJ0BzcGFydGFjdXMvY2hlY2tvdXQvY29yZSc7XG5pbXBvcnQge1xuICBBZGRyZXNzLFxuICBBRERSRVNTX05PUk1BTElaRVIsXG4gIEFERFJFU1NfU0VSSUFMSVpFUixcbiAgQ29udmVydGVyU2VydmljZSxcbiAgRGVsaXZlcnlNb2RlLFxuICBPY2MsXG4gIE9jY0VuZHBvaW50c1NlcnZpY2UsXG59IGZyb20gJ0BzcGFydGFjdXMvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAsIHBsdWNrIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgT2NjQ2hlY2tvdXREZWxpdmVyeUFkYXB0ZXIgaW1wbGVtZW50cyBDaGVja291dERlbGl2ZXJ5QWRhcHRlciB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBodHRwOiBIdHRwQ2xpZW50LFxuICAgIHByb3RlY3RlZCBvY2NFbmRwb2ludHM6IE9jY0VuZHBvaW50c1NlcnZpY2UsXG4gICAgcHJvdGVjdGVkIGNvbnZlcnRlcjogQ29udmVydGVyU2VydmljZVxuICApIHt9XG5cbiAgcHJvdGVjdGVkIGdldENyZWF0ZURlbGl2ZXJ5QWRkcmVzc0VuZHBvaW50KFxuICAgIHVzZXJJZDogc3RyaW5nLFxuICAgIGNhcnRJZDogc3RyaW5nXG4gICk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMub2NjRW5kcG9pbnRzLmJ1aWxkVXJsKCdjcmVhdGVEZWxpdmVyeUFkZHJlc3MnLCB7XG4gICAgICB1cmxQYXJhbXM6IHtcbiAgICAgICAgdXNlcklkLFxuICAgICAgICBjYXJ0SWQsXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldFNldERlbGl2ZXJ5QWRkcmVzc0VuZHBvaW50KFxuICAgIHVzZXJJZDogc3RyaW5nLFxuICAgIGNhcnRJZDogc3RyaW5nLFxuICAgIGFkZHJlc3NJZD86IHN0cmluZ1xuICApOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLm9jY0VuZHBvaW50cy5idWlsZFVybCgnc2V0RGVsaXZlcnlBZGRyZXNzJywge1xuICAgICAgdXJsUGFyYW1zOiB7IHVzZXJJZCwgY2FydElkIH0sXG4gICAgICBxdWVyeVBhcmFtczogeyBhZGRyZXNzSWQgfSxcbiAgICB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXREZWxpdmVyeU1vZGVFbmRwb2ludCh1c2VySWQ6IHN0cmluZywgY2FydElkOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLm9jY0VuZHBvaW50cy5idWlsZFVybCgnZGVsaXZlcnlNb2RlJywge1xuICAgICAgdXJsUGFyYW1zOiB7XG4gICAgICAgIHVzZXJJZCxcbiAgICAgICAgY2FydElkLFxuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRTZXREZWxpdmVyeU1vZGVFbmRwb2ludChcbiAgICB1c2VySWQ6IHN0cmluZyxcbiAgICBjYXJ0SWQ6IHN0cmluZyxcbiAgICBkZWxpdmVyeU1vZGVJZD86IHN0cmluZ1xuICApOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLm9jY0VuZHBvaW50cy5idWlsZFVybCgnc2V0RGVsaXZlcnlNb2RlJywge1xuICAgICAgdXJsUGFyYW1zOiB7XG4gICAgICAgIHVzZXJJZCxcbiAgICAgICAgY2FydElkLFxuICAgICAgfSxcbiAgICAgIHF1ZXJ5UGFyYW1zOiB7IGRlbGl2ZXJ5TW9kZUlkIH0sXG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0RGVsaXZlcnlNb2Rlc0VuZHBvaW50KHVzZXJJZDogc3RyaW5nLCBjYXJ0SWQ6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMub2NjRW5kcG9pbnRzLmJ1aWxkVXJsKCdkZWxpdmVyeU1vZGVzJywge1xuICAgICAgdXJsUGFyYW1zOiB7IHVzZXJJZCwgY2FydElkIH0sXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgY3JlYXRlQWRkcmVzcyhcbiAgICB1c2VySWQ6IHN0cmluZyxcbiAgICBjYXJ0SWQ6IHN0cmluZyxcbiAgICBhZGRyZXNzOiBBZGRyZXNzXG4gICk6IE9ic2VydmFibGU8QWRkcmVzcz4ge1xuICAgIGFkZHJlc3MgPSB0aGlzLmNvbnZlcnRlci5jb252ZXJ0KGFkZHJlc3MsIEFERFJFU1NfU0VSSUFMSVpFUik7XG5cbiAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAucG9zdDxPY2MuQWRkcmVzcz4oXG4gICAgICAgIHRoaXMuZ2V0Q3JlYXRlRGVsaXZlcnlBZGRyZXNzRW5kcG9pbnQodXNlcklkLCBjYXJ0SWQpLFxuICAgICAgICBhZGRyZXNzLFxuICAgICAgICB7XG4gICAgICAgICAgaGVhZGVyczogbmV3IEh0dHBIZWFkZXJzKCkuc2V0KCdDb250ZW50LVR5cGUnLCAnYXBwbGljYXRpb24vanNvbicpLFxuICAgICAgICB9XG4gICAgICApXG4gICAgICAucGlwZSh0aGlzLmNvbnZlcnRlci5waXBlYWJsZShBRERSRVNTX05PUk1BTElaRVIpKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRBZGRyZXNzKFxuICAgIHVzZXJJZDogc3RyaW5nLFxuICAgIGNhcnRJZDogc3RyaW5nLFxuICAgIGFkZHJlc3NJZDogc3RyaW5nXG4gICk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQoXG4gICAgICB0aGlzLmdldFNldERlbGl2ZXJ5QWRkcmVzc0VuZHBvaW50KHVzZXJJZCwgY2FydElkLCBhZGRyZXNzSWQpLFxuICAgICAge31cbiAgICApO1xuICB9XG5cbiAgcHVibGljIHNldE1vZGUoXG4gICAgdXNlcklkOiBzdHJpbmcsXG4gICAgY2FydElkOiBzdHJpbmcsXG4gICAgZGVsaXZlcnlNb2RlSWQ6IHN0cmluZ1xuICApOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAucHV0KFxuICAgICAgdGhpcy5nZXRTZXREZWxpdmVyeU1vZGVFbmRwb2ludCh1c2VySWQsIGNhcnRJZCwgZGVsaXZlcnlNb2RlSWQpLFxuICAgICAge31cbiAgICApO1xuICB9XG5cbiAgcHVibGljIGdldE1vZGUodXNlcklkOiBzdHJpbmcsIGNhcnRJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAuZ2V0KHRoaXMuZ2V0RGVsaXZlcnlNb2RlRW5kcG9pbnQodXNlcklkLCBjYXJ0SWQpKVxuICAgICAgLnBpcGUodGhpcy5jb252ZXJ0ZXIucGlwZWFibGUoREVMSVZFUllfTU9ERV9OT1JNQUxJWkVSKSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0U3VwcG9ydGVkTW9kZXMoXG4gICAgdXNlcklkOiBzdHJpbmcsXG4gICAgY2FydElkOiBzdHJpbmdcbiAgKTogT2JzZXJ2YWJsZTxEZWxpdmVyeU1vZGVbXT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgIC5nZXQ8T2NjLkRlbGl2ZXJ5TW9kZUxpc3Q+KHRoaXMuZ2V0RGVsaXZlcnlNb2Rlc0VuZHBvaW50KHVzZXJJZCwgY2FydElkKSlcbiAgICAgIC5waXBlKFxuICAgICAgICBwbHVjaygnZGVsaXZlcnlNb2RlcycpLFxuICAgICAgICBtYXAoKG1vZGVzKSA9PiBtb2RlcyA/PyBbXSksXG4gICAgICAgIHRoaXMuY29udmVydGVyLnBpcGVhYmxlTWFueShERUxJVkVSWV9NT0RFX05PUk1BTElaRVIpXG4gICAgICApO1xuICB9XG59XG4iXX0=