@infrab4a/connect-angular 4.14.4 → 4.15.0-beta.1

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.
@@ -5,7 +5,7 @@ import { FirebaseApp, provideFirebaseApp, getApp, initializeApp } from '@angular
5
5
  import * as i2 from '@angular/fire/storage';
6
6
  import { Storage, provideStorage, getStorage } from '@angular/fire/storage';
7
7
  import * as i1$2 from '@infrab4a/connect';
8
- import { ProductsIndex, AxiosAdapter, Authentication, AuthenticationFirebaseAuthService, Register, RegisterFirebaseAuthService, SignOut, RecoveryPassword, ConnectFirestoreService, UserBeautyProfileFirestoreRepository, Buy2WinFirestoreRepository, CategoryFirestoreRepository, CheckoutFirestoreRepository, CheckoutSubscriptionFirestoreRepository, CouponFirestoreRepository, CampaignHashtagFirestoreRepository, CampaignDashboardFirestoreRepository, SubscriptionEditionFirestoreRepository, HomeFirestoreRepository, LeadFirestoreRepository, LegacyOrderFirestoreRepository, ShopMenuFirestoreRepository, OrderFirestoreRepository, PaymentFirestoreRepository, ProductFirestoreRepository, ShopSettingsFirestoreRepository, SubscriptionPaymentFirestoreRepository, SubscriptionPlanFirestoreRepository, SubscriptionProductFirestoreRepository, SubscriptionFirestoreRepository, UserFirestoreRepository, UserAddressFirestoreRepository, UserPaymentMethodFirestoreRepository, SubscriptionMaterializationFirestoreRepository, SubscriptionSummaryFirestoreRepository, ProductVariantFirestoreRepository, OrderBlockedFirestoreRepository, LogFirestoreRepository, CategoryHasuraGraphQLRepository, ProductHasuraGraphQLRepository, CategoryFilterHasuraGraphQLRepository, ProductReviewsHasuraGraphQLRepository, VariantHasuraGraphQLRepository, ProductStockNotificationHasuraGraphQLRepository, FilterOptionHasuraGraphQLRepository, FilterHasuraGraphQLRepository, CategoryCollectionChildrenHasuraGraphQLRepository, WishlistHasuraGraphQLRepository, ProductsVertexSearch, VertexAxiosAdapter, Where, Shops, CheckoutTypes, CouponTypes, Exclusivities, OrderStatus, isNil, NotFoundError, Checkout, pick, LineItem, RoundProductPricesHelper, set, InvalidArgumentError, isEmpty, Category, PersonTypes, WishlistLogType, Wishlist, CheckoutSubscription, Product, RequiredArgumentError, add, Order, UpdateUserImage, FirebaseFileUploaderService } from '@infrab4a/connect';
8
+ import { ProductsIndex, AxiosAdapter, Authentication, AuthenticationFirebaseAuthService, Register, RegisterFirebaseAuthService, SignOut, RecoveryPassword, ConnectFirestoreService, UserBeautyProfileFirestoreRepository, Buy2WinFirestoreRepository, CategoryFirestoreRepository, CheckoutFirestoreRepository, CheckoutSubscriptionFirestoreRepository, CouponFirestoreRepository, CampaignHashtagFirestoreRepository, CampaignDashboardFirestoreRepository, SubscriptionEditionFirestoreRepository, HomeFirestoreRepository, LeadFirestoreRepository, LegacyOrderFirestoreRepository, ShopMenuFirestoreRepository, OrderFirestoreRepository, PaymentFirestoreRepository, ProductFirestoreRepository, ShopSettingsFirestoreRepository, SubscriptionPaymentFirestoreRepository, SubscriptionPlanFirestoreRepository, SubscriptionProductFirestoreRepository, SubscriptionFirestoreRepository, UserFirestoreRepository, UserAddressFirestoreRepository, UserPaymentMethodFirestoreRepository, SubscriptionMaterializationFirestoreRepository, SubscriptionSummaryFirestoreRepository, ProductVariantFirestoreRepository, OrderBlockedFirestoreRepository, LogFirestoreRepository, SequenceFirestoreRepository, CategoryHasuraGraphQLRepository, ProductHasuraGraphQLRepository, CategoryFilterHasuraGraphQLRepository, ProductReviewsHasuraGraphQLRepository, VariantHasuraGraphQLRepository, ProductStockNotificationHasuraGraphQLRepository, FilterOptionHasuraGraphQLRepository, FilterHasuraGraphQLRepository, CategoryCollectionChildrenHasuraGraphQLRepository, WishlistHasuraGraphQLRepository, ProductsVertexSearch, VertexAxiosAdapter, Where, Shops, CheckoutTypes, CouponTypes, Exclusivities, OrderStatus, isNil, NotFoundError, Checkout, pick, LineItem, RoundProductPricesHelper, set, InvalidArgumentError, isEmpty, Category, PersonTypes, WishlistLogType, Wishlist, CheckoutSubscription, Product, RequiredArgumentError, add, Order, UpdateUserImage, FirebaseFileUploaderService } from '@infrab4a/connect';
9
9
  import * as i1 from '@angular/fire/auth';
10
10
  import { Auth, provideAuth, getAuth, getIdToken, authState } from '@angular/fire/auth';
11
11
  import { isPlatformBrowser, isPlatformServer } from '@angular/common';
@@ -420,6 +420,13 @@ AngularFirestoreModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0",
420
420
  },
421
421
  deps: ['FirestoreOptions'],
422
422
  },
423
+ {
424
+ provide: 'SequenceRepository',
425
+ useFactory: (options) => {
426
+ return new SequenceFirestoreRepository(options);
427
+ },
428
+ deps: ['FirestoreOptions'],
429
+ },
423
430
  ], imports: [AngularElasticSeachModule,
424
431
  provideFirestore((injector) => {
425
432
  const platformId = injector.get(PLATFORM_ID);
@@ -679,6 +686,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImpor
679
686
  },
680
687
  deps: ['FirestoreOptions'],
681
688
  },
689
+ {
690
+ provide: 'SequenceRepository',
691
+ useFactory: (options) => {
692
+ return new SequenceFirestoreRepository(options);
693
+ },
694
+ deps: ['FirestoreOptions'],
695
+ },
682
696
  ],
683
697
  }]
684
698
  }] });
@@ -1140,7 +1154,7 @@ class CouponService {
1140
1154
  const discount = +(subTotal * ((value > 100 ? 100 : value) / 100)).toFixed(2);
1141
1155
  return { discount, lineItems: checkout.lineItems };
1142
1156
  }
1143
- let lineItensElegibleForDiscount = await this.getLineItensEligebleForDiscount(categories, checkout);
1157
+ const lineItensElegibleForDiscount = await this.getLineItensEligebleForDiscount(categories, checkout);
1144
1158
  const subTotal = this.calcCheckoutSubtotal(lineItensElegibleForDiscount, checkout.user);
1145
1159
  if (type == CouponTypes.ABSOLUTE) {
1146
1160
  discount = value > subTotal ? subTotal : value;
@@ -1154,7 +1168,7 @@ class CouponService {
1154
1168
  async hasMinSubTotal(coupon, checkout) {
1155
1169
  if (!coupon.minSubTotalValue)
1156
1170
  return true;
1157
- let lineItensDiscount = await this.getLineItensEligebleForDiscount(coupon.productsCategories, checkout);
1171
+ const lineItensDiscount = await this.getLineItensEligebleForDiscount(coupon.productsCategories, checkout);
1158
1172
  const subTotal = this.calcCheckoutSubtotal(lineItensDiscount, checkout.user);
1159
1173
  if (coupon.minSubTotalValue <= subTotal)
1160
1174
  return true;
@@ -1277,6 +1291,8 @@ class CouponService {
1277
1291
  if (type === CouponTypes.ABSOLUTE) {
1278
1292
  const couponDiscountMax = couponDiscount > subTotal ? subTotal : couponDiscount;
1279
1293
  lineItemsDiscount = lineItems.map((item) => {
1294
+ if (item.isGift)
1295
+ return item;
1280
1296
  const totalItemPercentage = item.pricePaid / subTotal;
1281
1297
  const discountItem = couponDiscountMax * totalItemPercentage;
1282
1298
  return {
@@ -1287,6 +1303,8 @@ class CouponService {
1287
1303
  }
1288
1304
  else {
1289
1305
  lineItemsDiscount = lineItems.map((item) => {
1306
+ if (item.isGift)
1307
+ return item;
1290
1308
  const discountItem = item.pricePaid * (couponDiscount / 100);
1291
1309
  return {
1292
1310
  ...item,