@infrab4a/connect-angular 4.17.3-beta.4 → 4.17.3-beta.6

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,14 +5,14 @@ import { FirebaseApp, provideFirebaseApp, getApp, initializeApp } from '@angular
5
5
  import * as i2$1 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, SequenceFirestoreRepository, CategoryHasuraGraphQLRepository, ProductHasuraGraphQLRepository, CategoryFilterHasuraGraphQLRepository, ProductReviewsHasuraGraphQLRepository, VariantHasuraGraphQLRepository, ProductStockNotificationHasuraGraphQLRepository, FilterOptionHasuraGraphQLRepository, FilterHasuraGraphQLRepository, CategoryCollectionChildrenHasuraGraphQLRepository, CategoryProductHasuraGraphQLRepository, 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, CategoryProductHasuraGraphQLRepository, WishlistHasuraGraphQLRepository, ProductsVertexSearch, VertexAxiosAdapter, Where, Shops, CheckoutTypes, CouponTypes, Exclusivities, OrderStatus, isNil, NotFoundError, Checkout, pick, LineItem, set, InvalidArgumentError, RoundProductPricesHelper, 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';
12
12
  import * as i1$1 from '@angular/fire/firestore';
13
13
  import { Firestore, provideFirestore, initializeFirestore, memoryLocalCache, docSnapshots, doc } from '@angular/fire/firestore';
14
14
  import cookie from 'js-cookie';
15
- import { of, from, combineLatest, throwError, lastValueFrom, Subject, iif, forkJoin } from 'rxjs';
15
+ import { of, from, combineLatest, throwError, Subject, forkJoin } from 'rxjs';
16
16
  import { map, mergeMap, catchError, concatMap, tap } from 'rxjs/operators';
17
17
  import * as i2 from '@angular/common/http';
18
18
  import { __decorate, __metadata } from 'tslib';
@@ -1403,9 +1403,20 @@ class CheckoutService {
1403
1403
  // )
1404
1404
  }
1405
1405
  validateStockProducts() {
1406
- return lastValueFrom(this.getCheckout().pipe(concatMap((checkout) => this.http.post(`${this.checkoutUrl}/checkoutValidateProductStock`, {
1406
+ return this.getCheckout().pipe(concatMap((checkout) => this.http.post(`${this.checkoutUrl}/checkoutValidateProductStock`, {
1407
1407
  checkoutId: checkout.id,
1408
- }))));
1408
+ })));
1409
+ }
1410
+ getAvailableShipping() {
1411
+ return this.getCheckout().pipe(concatMap((checkout) => this.http.post(`${this.checkoutUrl}/checkoutValidateProductStock`, {
1412
+ checkoutId: checkout.id,
1413
+ })));
1414
+ }
1415
+ selectShipping(option) {
1416
+ return this.getCheckout().pipe(concatMap((checkout) => this.http.post(`${this.checkoutUrl}/checkoutSelectShipping`, {
1417
+ checkoutId: checkout.id,
1418
+ shippingOption: option,
1419
+ })), concatMap(() => this.getCheckout()));
1409
1420
  }
1410
1421
  async createCheckout(checkoutData) {
1411
1422
  const checkout = await this.checkoutRepository.create({
@@ -1470,61 +1481,6 @@ class CartService {
1470
1481
  quantity: (cart[item.id]?.quantity || 0) + (item.quantity ? item.quantity : 1),
1471
1482
  }),
1472
1483
  }), {}) || {};
1473
- this.buildLineItem = async ({ checkout, item, quantity, }) => {
1474
- const product = await this.getProductData(item.id);
1475
- item.quantity = item?.quantity || checkout?.lineItems?.find((lineItem) => lineItem.id === item.id)?.quantity || 0;
1476
- if (this.checkMaxStock(product.stock.quantity, item.quantity || 0, quantity || 0))
1477
- throw new Error('Desculpe! Temos apenas ' + product.stock?.quantity + ' em estoque.');
1478
- const image = item.image || item.images?.shift();
1479
- const { id, name, EAN, slug, weight, sku, type } = item;
1480
- const isGift = item?.isGift || null;
1481
- const pricePaid = isGift
1482
- ? 0
1483
- : this.getProductPrice({
1484
- product: LineItem.toInstance(product),
1485
- shop: checkout.shop || this.defaultShop,
1486
- isSubscriber: checkout.user?.isSubscriber,
1487
- });
1488
- RoundProductPricesHelper.roundProductPrices(item);
1489
- RoundProductPricesHelper.roundProductPrices(product);
1490
- return {
1491
- checkout,
1492
- lineItem: LineItem.toInstance({
1493
- id,
1494
- name: name ?? product.name,
1495
- EAN: EAN ?? product.EAN,
1496
- brand: product.brand,
1497
- slug: slug ?? product.slug,
1498
- sku: sku ?? product.sku,
1499
- stock: product.stock,
1500
- price: this.roundPrice(product.price),
1501
- image,
1502
- weight: weight ?? product.weight,
1503
- quantity: (item.quantity || 0) + (quantity || 0),
1504
- pricePaid,
1505
- discount: 0,
1506
- categories: product.categories || product.category?.id ? [product.category?.id, ...product.categories] : [],
1507
- category: product.category,
1508
- isGift: isGift ?? null,
1509
- costPrice: isGift ? 0 : product.costPrice ?? 0,
1510
- type,
1511
- label: product.label,
1512
- }),
1513
- };
1514
- };
1515
- this.getProductPrice = ({ product, isSubscriber, }) => {
1516
- const info = product.price;
1517
- if (product.isGift)
1518
- return 0;
1519
- return isSubscriber && info.subscriberPrice > 0
1520
- ? Number(info.subscriberPrice.toFixed(2))
1521
- : Number(info.price.toFixed(2));
1522
- };
1523
- this.checkMaxStock = (currentStock, currentItemQtd, quantityToAdd) => {
1524
- const maxStock = currentStock || 0;
1525
- const currentItemAmount = currentItemQtd || 0;
1526
- return currentItemAmount + quantityToAdd > maxStock;
1527
- };
1528
1484
  // this.checkoutUrl = `https://southamerica-east1-${this.firebaseOptions.projectId}.cloudfunctions.net`
1529
1485
  this.checkoutUrl = `http://docker.for.localhost:5001/b4astage-cb80a/southamerica-east1`;
1530
1486
  }
@@ -1627,12 +1583,21 @@ class CartService {
1627
1583
  this.buildCartFromCheckout(checkout).subscribe((cart) => this.cartSubject.next(cart));
1628
1584
  return this.cartSubject;
1629
1585
  }
1630
- /**
1631
- * @deprecated The method should not be used
1632
- */
1633
- getVariantPriceDiscount(item) {
1634
- return this.authService.getUser().pipe(concatMap((user) => iif(() => user.isSubscriber && !!item.price.subscriberPrice, of(item.price.subscriberPrice), of(item.price.price))), catchError(() => of(item.price.price)));
1635
- }
1586
+ // /**
1587
+ // * @deprecated The method should not be used
1588
+ // */
1589
+ // getVariantPriceDiscount(item: LineItem): Observable<number> {
1590
+ // return this.authService.getUser().pipe(
1591
+ // concatMap((user) =>
1592
+ // iif(
1593
+ // () => user.isSubscriber && !!item.price.subscriberPrice,
1594
+ // of(item.price.subscriberPrice),
1595
+ // of(item.price.price),
1596
+ // ),
1597
+ // ),
1598
+ // catchError(() => of(item.price.price)),
1599
+ // )
1600
+ // }
1636
1601
  clearCart() {
1637
1602
  return this.checkoutService.getCheckout().pipe(map((checkout) => {
1638
1603
  this.checkoutService.clearCheckoutFromSession();
@@ -1642,130 +1607,6 @@ class CartService {
1642
1607
  buildCartFromCheckout(checkoutData) {
1643
1608
  return this.checkoutService.getCheckout(checkoutData).pipe(map((checkout) => checkout.lineItems), concatMap((lineItems) => of(this.generateCartObject(lineItems))));
1644
1609
  }
1645
- roundPrice(productPrice) {
1646
- const { price, fullPrice, subscriberPrice } = productPrice;
1647
- return {
1648
- ...productPrice,
1649
- price: Number(price.toFixed(2)),
1650
- fullPrice: Number(fullPrice.toFixed(2)),
1651
- ...(subscriberPrice && { subscriberPrice: Number(subscriberPrice.toFixed(2)) }),
1652
- };
1653
- }
1654
- async getProductData(productId) {
1655
- let product;
1656
- let variant;
1657
- try {
1658
- product = await this.productRepository.get({ id: productId });
1659
- }
1660
- catch (error) {
1661
- if (!(error instanceof NotFoundError))
1662
- throw error;
1663
- const { data: variants } = await this.variantRepository.find({ filters: { id: productId } });
1664
- variant = variants.shift();
1665
- if (!variant)
1666
- throw error;
1667
- product = await this.productRepository.get({ id: variant.productId });
1668
- }
1669
- return {
1670
- ...product.toPlain(),
1671
- ...(variant && { ...variant.toPlain() }),
1672
- };
1673
- }
1674
- getGifts() {
1675
- return this.checkoutService.getCheckout().pipe(mergeMap(async (checkout) => {
1676
- const notGiftItems = checkout.lineItems ? checkout.lineItems.filter((item) => !item.isGift) : [];
1677
- if (!notGiftItems.length)
1678
- return { ...checkout, lineItems: [] };
1679
- const campaigns = await this.buy2WinRepository
1680
- .find({
1681
- filters: {
1682
- active: { operator: Where.EQUALS, value: true },
1683
- },
1684
- })
1685
- .then((data) => data.data.filter((campaign) => campaign.shop === Shops.ALL || campaign.shop === this.defaultShop));
1686
- if (!campaigns.length)
1687
- return { ...checkout, lineItems: notGiftItems };
1688
- const elegibleCampaigns = [];
1689
- for (const campaign of campaigns) {
1690
- const today = new Date().getTime();
1691
- if (!(campaign.startDate.getTime() <= today) && !(campaign.endDate.getTime() >= today))
1692
- continue;
1693
- if (campaign.activeCategory) {
1694
- const categoriesCampaing = campaign.categories.map((c) => c.id.toString());
1695
- const categoriesCampaingFullTree = [];
1696
- for (const id of categoriesCampaing) {
1697
- const children = await this.categoryRepository.getChildren(parseInt(id));
1698
- categoriesCampaingFullTree.push(id, ...children.map((c) => c.id.toString()));
1699
- }
1700
- const categoriesCampaingTree = [...new Set(categoriesCampaingFullTree)];
1701
- const filterProductsCategories = notGiftItems.filter((l) => {
1702
- if (!l.categories || !l.categories?.length)
1703
- return true;
1704
- return l.categories.some((c) => categoriesCampaingTree.some((cat) => cat == c));
1705
- });
1706
- if (filterProductsCategories.length) {
1707
- const cartValuelWithCategories = filterProductsCategories.reduce((a, b) => a + b.pricePaid * b.quantity, 0);
1708
- const cartItensQuantityWithCategories = filterProductsCategories.reduce((a, b) => a + b.quantity, 0);
1709
- const hasMinValue = campaign.cartValueMin && cartValuelWithCategories >= campaign.cartValueMin;
1710
- const hasMinQuantity = campaign.cartItensQuantityMin && cartItensQuantityWithCategories >= campaign.cartItensQuantityMin;
1711
- if (hasMinQuantity || hasMinValue)
1712
- elegibleCampaigns.push(campaign);
1713
- }
1714
- }
1715
- else {
1716
- const cartTotal = notGiftItems.reduce((a, b) => a + b.pricePaid * b.quantity, 0);
1717
- const cartItensQuantity = notGiftItems.reduce((a, b) => a + b.quantity, 0);
1718
- const hasMinValue = campaign.cartValue && campaign.cartValue > 0 && campaign.cartValue <= cartTotal;
1719
- const hasMinQuantity = campaign.cartItensQuantityMin && cartItensQuantity >= campaign.cartItensQuantityMin;
1720
- if (hasMinQuantity || hasMinValue)
1721
- elegibleCampaigns.push(campaign);
1722
- }
1723
- }
1724
- if (!elegibleCampaigns.length)
1725
- return { ...checkout, lineItems: notGiftItems };
1726
- const campaingnProducts = [];
1727
- for (const campaign of elegibleCampaigns) {
1728
- let elegibleProducts = [];
1729
- for (const product of campaign.products) {
1730
- const { data: productData } = await this.productRepository.find({ filters: { sku: product } });
1731
- if (!productData.length)
1732
- continue;
1733
- const gift = productData.shift();
1734
- if (gift.stock.quantity < 1)
1735
- continue;
1736
- elegibleProducts.push(gift);
1737
- }
1738
- campaingnProducts.push(elegibleProducts);
1739
- }
1740
- if (!campaingnProducts.length)
1741
- return { ...checkout, lineItems: notGiftItems };
1742
- const gifts = this.giftToLineItems([].concat(...campaingnProducts));
1743
- return { ...checkout, lineItems: notGiftItems.concat(gifts) };
1744
- }), concatMap((checkout) => this.checkoutService.updateCheckoutLineItems(checkout)), map((checkout) => this.generateCartObject(checkout.lineItems)), tap((cart) => this.cartSubject.next(cart)));
1745
- }
1746
- giftToLineItems(items) {
1747
- return items.map((item) => {
1748
- const { brand, categories, category, id, name, price, sku, slug, stock, weight, EAN } = item;
1749
- const image = item?.miniatures?.length ? item.miniatures[0] : item.images[0];
1750
- return LineItem.toInstance({
1751
- brand,
1752
- categories,
1753
- category,
1754
- id: id.toString(),
1755
- name,
1756
- price,
1757
- sku,
1758
- slug,
1759
- stock,
1760
- weight,
1761
- EAN,
1762
- image,
1763
- pricePaid: 0,
1764
- quantity: 1,
1765
- isGift: true,
1766
- });
1767
- });
1768
- }
1769
1610
  }
1770
1611
  CartService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: CartService, deps: [{ token: AuthService }, { token: CheckoutService }, { token: DEFAULT_SHOP }, { token: FIREBASE_OPTIONS }, { token: 'ProductRepository' }, { token: 'CategoryRepository' }, { token: 'VariantRepository' }, { token: 'Buy2WinRepository' }, { token: i2.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
1771
1612
  CartService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: CartService });
@@ -2633,92 +2474,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImpor
2633
2474
  args: ['OrderRepository']
2634
2475
  }] }]; } });
2635
2476
 
2636
- class ShippingService {
2637
- constructor(http, apiUrl, homeService) {
2638
- this.http = http;
2639
- this.apiUrl = apiUrl;
2640
- this.homeService = homeService;
2641
- }
2642
- getShippingMethods(shop, zip, weightGrams, totalPrice, personId, subscriptionPlan) {
2643
- return combineLatest([
2644
- this.homeService.getHomeData(),
2645
- this.http.get(`${this.apiUrl}open/checkshippingcompany?personId=${personId}&postalCode=${zip}&weightGrams=${weightGrams}`),
2646
- ]).pipe(map(([datas, shippingMethodsResponse]) => {
2647
- let shippingMethods = shippingMethodsResponse.result;
2648
- if (!shippingMethods.length)
2649
- return [];
2650
- shippingMethods = shippingMethods.map((shippingMethod) => {
2651
- if (shippingMethod.ShippingCompanyName == 'Same Day EG')
2652
- shippingMethod.ShippingCompanyName = 'Same Day';
2653
- return shippingMethod;
2654
- });
2655
- const datasSameDayNotAvaliable = datas.sameDayNotAvaliable;
2656
- if (this.isHolidays(datasSameDayNotAvaliable)) {
2657
- shippingMethods = shippingMethods.filter((method) => method.serviceName !== 'Same Day');
2658
- }
2659
- if (totalPrice >= 200) {
2660
- shippingMethods = shippingMethods.map((s) => {
2661
- if (s.serviceName !== 'Same Day')
2662
- return { ...s, totalPrice: 0 };
2663
- else
2664
- return s;
2665
- });
2666
- }
2667
- if (shop == Shops.GLAMSHOP)
2668
- return shippingMethods;
2669
- if (this.isFreeShippingBySubscription(shop, subscriptionPlan)) {
2670
- shippingMethods = shippingMethods.map((s) => {
2671
- if (s.serviceName == 'Same Day')
2672
- return { ...s, totalPrice: s.totalPrice / 2 };
2673
- else
2674
- return { ...s, totalPrice: 0 };
2675
- });
2676
- }
2677
- if (this.isHalfShippingBySubscription(shop, subscriptionPlan)) {
2678
- shippingMethods = shippingMethods.map((s) => {
2679
- return { ...s, totalPrice: s.totalPrice / 2 };
2680
- });
2681
- }
2682
- return shippingMethods;
2683
- }));
2684
- }
2685
- isFreeShippingBySubscription(shop, subscriptionPlan) {
2686
- if (!subscriptionPlan)
2687
- return false;
2688
- if (shop == Shops.MENSMARKET && subscriptionPlan == 'SELECT')
2689
- return true;
2690
- return false;
2691
- }
2692
- isHalfShippingBySubscription(shop, subscriptionPlan) {
2693
- if (!subscriptionPlan)
2694
- return false;
2695
- if (shop == Shops.MENSMARKET && subscriptionPlan == 'PRIME') {
2696
- return true;
2697
- }
2698
- return false;
2699
- }
2700
- isHolidays(datas) {
2701
- const today = new Date();
2702
- for (const key in datas) {
2703
- let start = new Date(`${today.getFullYear()}-${datas[key].beginDate}`);
2704
- let end = new Date(`${today.getFullYear()}-${datas[key].endDate}`);
2705
- if (start > end)
2706
- end = new Date(`${today.getFullYear() + 1}-${datas[key].endDate}`);
2707
- if (today >= start && today <= end)
2708
- return true;
2709
- }
2710
- return false;
2711
- }
2712
- }
2713
- ShippingService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ShippingService, deps: [{ token: i2.HttpClient }, { token: BACKEND_URL }, { token: HomeShopService }], target: i0.ɵɵFactoryTarget.Injectable });
2714
- ShippingService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ShippingService });
2715
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImport: i0, type: ShippingService, decorators: [{
2716
- type: Injectable
2717
- }], ctorParameters: function () { return [{ type: i2.HttpClient }, { type: undefined, decorators: [{
2718
- type: Inject,
2719
- args: [BACKEND_URL]
2720
- }] }, { type: HomeShopService }]; } });
2721
-
2722
2477
  class AngularConnectModule {
2723
2478
  static initializeApp(defaultShop, options, nameOrConfig) {
2724
2479
  return {
@@ -2759,7 +2514,6 @@ AngularConnectModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", ve
2759
2514
  CouponService,
2760
2515
  HomeShopService,
2761
2516
  OrderService,
2762
- ShippingService,
2763
2517
  WishlistService,
2764
2518
  {
2765
2519
  provide: UpdateUserImage,
@@ -2824,7 +2578,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImpor
2824
2578
  CouponService,
2825
2579
  HomeShopService,
2826
2580
  OrderService,
2827
- ShippingService,
2828
2581
  WishlistService,
2829
2582
  {
2830
2583
  provide: UpdateUserImage,
@@ -2852,5 +2605,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.0", ngImpor
2852
2605
  * Generated bundle index. Do not edit.
2853
2606
  */
2854
2607
 
2855
- export { AngularConnectModule, AngularFirebaseAuthModule, AngularFirestoreModule, AngularHasuraGraphQLModule, AuthService, CartService, CatalogService, CategoryService, CategoryWithTree, CheckoutService, CheckoutSubscriptionService, CookieDataPersistence, CouponService, HomeShopService, NewCategoryStructureAdapter, OldCategoryStructureAdapter, OrderService, ProductSorts, ShippingService, UtilHelper, WishlistService };
2608
+ export { AngularConnectModule, AngularFirebaseAuthModule, AngularFirestoreModule, AngularHasuraGraphQLModule, AuthService, CartService, CatalogService, CategoryService, CategoryWithTree, CheckoutService, CheckoutSubscriptionService, CookieDataPersistence, CouponService, HomeShopService, NewCategoryStructureAdapter, OldCategoryStructureAdapter, OrderService, ProductSorts, UtilHelper, WishlistService };
2856
2609
  //# sourceMappingURL=infrab4a-connect-angular.mjs.map