@infrab4a/connect-angular 4.13.2-beta.1 → 4.13.2-beta.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/services/cart.service.mjs +6 -4
- package/fesm2015/infrab4a-connect-angular.mjs +10 -7
- package/fesm2015/infrab4a-connect-angular.mjs.map +1 -1
- package/fesm2020/infrab4a-connect-angular.mjs +5 -3
- package/fesm2020/infrab4a-connect-angular.mjs.map +1 -1
- package/package.json +1 -1
- package/services/cart.service.d.ts +1 -0
|
@@ -1384,7 +1384,7 @@ class CartService {
|
|
|
1384
1384
|
this.updateLineItemInCart = (lineItem, quantity, checkout) => (isNil(checkout) ? this.checkoutService.getCheckout() : of(checkout)).pipe(concatMap((checkoutLoaded) => {
|
|
1385
1385
|
const items = [];
|
|
1386
1386
|
const index = checkoutLoaded.lineItems?.map((checkoutItem) => checkoutItem.id).indexOf(lineItem.id);
|
|
1387
|
-
const isGift = checkoutLoaded.lineItems[index]
|
|
1387
|
+
const isGift = checkoutLoaded.lineItems?.[index]?.isGift;
|
|
1388
1388
|
if (index > -1) {
|
|
1389
1389
|
checkoutLoaded.lineItems[index].quantity += quantity;
|
|
1390
1390
|
checkoutLoaded.lineItems[index].pricePaid = isGift ? 0 : lineItem.pricePaid;
|
|
@@ -1410,7 +1410,7 @@ class CartService {
|
|
|
1410
1410
|
throw new Error('Desculpe! Temos apenas ' + product.stock?.quantity + ' em estoque.');
|
|
1411
1411
|
const image = item.image || item.images?.shift();
|
|
1412
1412
|
const { id, name, EAN, slug, weight, sku, type } = item;
|
|
1413
|
-
const isGift = item
|
|
1413
|
+
const isGift = item?.isGift || null;
|
|
1414
1414
|
const pricePaid = isGift
|
|
1415
1415
|
? 0
|
|
1416
1416
|
: this.getProductPrice({
|
|
@@ -1458,7 +1458,7 @@ class CartService {
|
|
|
1458
1458
|
};
|
|
1459
1459
|
}
|
|
1460
1460
|
addItem(item, quantity = 1) {
|
|
1461
|
-
return from(this.checkoutService.getCheckout()).pipe(concatMap(async (checkout) => await this.buildLineItem({ checkout, item, quantity: quantity || 1 })), mergeMap(({ checkout, lineItem }) => this.updateLineItemInCart(lineItem, quantity || 1, checkout)), tap((cart) => this.cartSubject.next(cart)));
|
|
1461
|
+
return from(this.checkoutService.getCheckout()).pipe(tap((checkout) => (this.user = checkout.user)), concatMap(async (checkout) => await this.buildLineItem({ checkout, item, quantity: quantity || 1 })), mergeMap(({ checkout, lineItem }) => this.updateLineItemInCart(lineItem, quantity || 1, checkout)), tap((cart) => this.cartSubject.next(cart)));
|
|
1462
1462
|
}
|
|
1463
1463
|
decreaseItem(item) {
|
|
1464
1464
|
return this.checkoutService.getCheckout().pipe(map((checkout) => {
|
|
@@ -1487,6 +1487,8 @@ class CartService {
|
|
|
1487
1487
|
}), concatMap((checkout) => this.checkoutService.updateCheckoutLineItems(checkout)), map((checkout) => this.generateCartObject(checkout.lineItems)), tap((cart) => this.cartSubject.next(cart)));
|
|
1488
1488
|
}
|
|
1489
1489
|
updateUserCart(user) {
|
|
1490
|
+
if (this.user?.id === user.id && this.user?.isSubscriber === user.isSubscriber)
|
|
1491
|
+
return this.cartSubject;
|
|
1490
1492
|
return this.checkoutService.getCheckout().pipe(concatMap((checkout) => this.checkoutService.updateCheckoutUser(Checkout.toInstance({ ...checkout.toPlain(), user }))), concatMap(async (checkout) => await this.checkoutService
|
|
1491
1493
|
.updateCheckoutLineItems(Checkout.toInstance({
|
|
1492
1494
|
...checkout.toPlain(),
|