@infrab4a/connect 3.0.0-beta.0 → 3.0.0-beta.2

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.
Files changed (23) hide show
  1. package/bundles/infrab4a-connect.umd.js +238 -146
  2. package/bundles/infrab4a-connect.umd.js.map +1 -1
  3. package/domain/generic/repository/enums/where.enum.d.ts +1 -0
  4. package/esm2015/domain/catalog/repositories/product.repository.js +1 -1
  5. package/esm2015/domain/generic/repository/enums/where.enum.js +2 -1
  6. package/esm2015/domain/shop-settings/models/home.js +1 -1
  7. package/esm2015/infra/elasticsearch/indexes/products-index.js +4 -5
  8. package/esm2015/infra/firebase/firestore/repositories/users/index.js +6 -7
  9. package/esm2015/infra/firebase/firestore/repositories/users/user-firestore.repository.js +4 -6
  10. package/esm2015/infra/hasura-graphql/repositories/catalog/category-hasura-graphql.repository.js +60 -5
  11. package/esm2015/infra/hasura-graphql/repositories/catalog/product-hasura-graphql.repository.js +31 -8
  12. package/esm2015/infra/hasura-graphql/types/hasura-graphql-fields.type.js +1 -1
  13. package/fesm2015/infrab4a-connect.js +138 -76
  14. package/fesm2015/infrab4a-connect.js.map +1 -1
  15. package/infra/firebase/firestore/repositories/users/index.d.ts +5 -6
  16. package/infra/firebase/firestore/repositories/users/user-firestore.repository.d.ts +1 -3
  17. package/infra/hasura-graphql/repositories/catalog/category-hasura-graphql.repository.d.ts +4 -1
  18. package/infra/hasura-graphql/types/hasura-graphql-fields.type.d.ts +1 -1
  19. package/package.json +1 -1
  20. package/esm2015/infra/firebase/firestore/models/user-search.js +0 -7
  21. package/esm2015/infra/firebase/firestore/repositories/users/user-search-firestore.repository.js +0 -12
  22. package/infra/firebase/firestore/models/user-search.d.ts +0 -9
  23. package/infra/firebase/firestore/repositories/users/user-search-firestore.repository.d.ts +0 -9
@@ -36,6 +36,7 @@ class BaseModel {
36
36
  var Where;
37
37
  (function (Where) {
38
38
  Where["EQUALS"] = "==";
39
+ Where["NOTEQUALS"] = "!=";
39
40
  Where["GT"] = ">";
40
41
  Where["GTE"] = ">=";
41
42
  Where["IN"] = "in";
@@ -1093,7 +1094,6 @@ class ProductsIndex {
1093
1094
  }
1094
1095
  findById(ids, options) {
1095
1096
  return __awaiter(this, void 0, void 0, function* () {
1096
- const publishedField = options.shop === Shops.GLAMSHOP ? 'publishedGlam' : 'published';
1097
1097
  const fields = [
1098
1098
  'brand',
1099
1099
  'id',
@@ -1122,7 +1122,7 @@ class ProductsIndex {
1122
1122
  },
1123
1123
  {
1124
1124
  term: {
1125
- [publishedField]: true,
1125
+ published: true,
1126
1126
  },
1127
1127
  },
1128
1128
  ...(options.hasStock
@@ -1154,7 +1154,7 @@ class ProductsIndex {
1154
1154
  yield this.adapter.save(`products/_doc/${product.firestoreId}`, product.toPlain());
1155
1155
  }
1156
1156
  catch (error) {
1157
- console.info(error.message);
1157
+ console.error(error.message);
1158
1158
  yield this.adapter.save(`products/_doc/${product.id}`, product.toPlain());
1159
1159
  }
1160
1160
  });
@@ -1423,6 +1423,26 @@ const withCrudFirestore = (MixinBase) => {
1423
1423
  };
1424
1424
  };
1425
1425
 
1426
+ class LeadFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
1427
+ constructor(firestore) {
1428
+ super();
1429
+ this.firestore = firestore;
1430
+ this.collectionName = 'leads';
1431
+ this.model = Lead;
1432
+ }
1433
+ }
1434
+
1435
+ class SubscriptionEditionFirestoreRepository extends withSubCollection(withCrudFirestore(withHelpers(withFirestore(Base))), Subscription) {
1436
+ constructor(firestore, parentRepository) {
1437
+ super();
1438
+ this.firestore = firestore;
1439
+ this.parentRepository = parentRepository;
1440
+ this.collectionName = 'editions';
1441
+ this.parentIdField = 'subscriptionId';
1442
+ this.model = Edition;
1443
+ }
1444
+ }
1445
+
1426
1446
  class SubscriptionFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
1427
1447
  constructor(firestore) {
1428
1448
  super();
@@ -1432,26 +1452,43 @@ class SubscriptionFirestoreRepository extends withCrudFirestore(withHelpers(with
1432
1452
  }
1433
1453
  }
1434
1454
 
1435
- class UserSearch extends BaseModel {
1436
- static get identifiersFields() {
1437
- return ['id'];
1455
+ class SubscriptionPaymentFirestoreRepository extends withSubCollection(withCrudFirestore(withHelpers(withFirestore(Base))), Subscription) {
1456
+ constructor(firestore, parentRepository) {
1457
+ super();
1458
+ this.firestore = firestore;
1459
+ this.parentRepository = parentRepository;
1460
+ this.collectionName = 'payments';
1461
+ this.parentIdField = 'subscriptionId';
1462
+ this.model = SubscriptionPayment;
1438
1463
  }
1439
1464
  }
1440
1465
 
1441
- class UserSearchFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
1442
- constructor(firestore) {
1466
+ class UserAddressFirestoreRepository extends withSubCollection(withCrudFirestore(withHelpers(withFirestore(Base))), User) {
1467
+ constructor(firestore, parentRepository) {
1468
+ super();
1469
+ this.firestore = firestore;
1470
+ this.parentRepository = parentRepository;
1471
+ this.collectionName = 'address';
1472
+ this.parentIdField = 'userId';
1473
+ this.model = UserAddress;
1474
+ }
1475
+ }
1476
+
1477
+ class UserBeautyProfileFirestoreRepository extends withSubCollection(withCrudFirestore(withHelpers(withFirestore(Base))), User) {
1478
+ constructor(firestore, parentRepository) {
1443
1479
  super();
1444
1480
  this.firestore = firestore;
1445
- this.collectionName = 'userSearch';
1446
- this.model = UserSearch;
1481
+ this.parentRepository = parentRepository;
1482
+ this.collectionName = 'CX';
1483
+ this.parentIdField = 'userId';
1484
+ this.model = BeautyProfile;
1447
1485
  }
1448
1486
  }
1449
1487
 
1450
1488
  class UserFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
1451
- constructor(firestore, userSearchFirestoreRepository = new UserSearchFirestoreRepository(firestore)) {
1489
+ constructor(firestore) {
1452
1490
  super();
1453
1491
  this.firestore = firestore;
1454
- this.userSearchFirestoreRepository = userSearchFirestoreRepository;
1455
1492
  this.collectionName = 'users';
1456
1493
  this.model = User;
1457
1494
  }
@@ -1468,7 +1505,7 @@ class UserFirestoreRepository extends withCrudFirestore(withHelpers(withFirestor
1468
1505
  }
1469
1506
  checkIfExistsByField(field, value) {
1470
1507
  return __awaiter(this, void 0, void 0, function* () {
1471
- const result = yield this.userSearchFirestoreRepository.find({ [field]: { operator: Where.EQUALS, value } });
1508
+ const result = yield this.find({ filters: { [field]: value } });
1472
1509
  return result.count > 0;
1473
1510
  });
1474
1511
  }
@@ -1512,39 +1549,6 @@ class UserFirestoreRepository extends withCrudFirestore(withHelpers(withFirestor
1512
1549
  }
1513
1550
  }
1514
1551
 
1515
- class SubscriptionEditionFirestoreRepository extends withSubCollection(withCrudFirestore(withHelpers(withFirestore(Base))), Subscription) {
1516
- constructor(firestore, parentRepository) {
1517
- super();
1518
- this.firestore = firestore;
1519
- this.parentRepository = parentRepository;
1520
- this.collectionName = 'editions';
1521
- this.parentIdField = 'subscriptionId';
1522
- this.model = Edition;
1523
- }
1524
- }
1525
-
1526
- class UserBeautyProfileFirestoreRepository extends withSubCollection(withCrudFirestore(withHelpers(withFirestore(Base))), User) {
1527
- constructor(firestore, parentRepository) {
1528
- super();
1529
- this.firestore = firestore;
1530
- this.parentRepository = parentRepository;
1531
- this.collectionName = 'CX';
1532
- this.parentIdField = 'userId';
1533
- this.model = BeautyProfile;
1534
- }
1535
- }
1536
-
1537
- class UserAddressFirestoreRepository extends withSubCollection(withCrudFirestore(withHelpers(withFirestore(Base))), User) {
1538
- constructor(firestore, parentRepository) {
1539
- super();
1540
- this.firestore = firestore;
1541
- this.parentRepository = parentRepository;
1542
- this.collectionName = 'address';
1543
- this.parentIdField = 'userId';
1544
- this.model = UserAddress;
1545
- }
1546
- }
1547
-
1548
1552
  class UserPaymentMethodFirestoreRepository extends withSubCollection(withCrudFirestore(withHelpers(withFirestore(Base))), User) {
1549
1553
  constructor(firestore, parentRepository) {
1550
1554
  super();
@@ -1556,26 +1560,6 @@ class UserPaymentMethodFirestoreRepository extends withSubCollection(withCrudFir
1556
1560
  }
1557
1561
  }
1558
1562
 
1559
- class SubscriptionPaymentFirestoreRepository extends withSubCollection(withCrudFirestore(withHelpers(withFirestore(Base))), Subscription) {
1560
- constructor(firestore, parentRepository) {
1561
- super();
1562
- this.firestore = firestore;
1563
- this.parentRepository = parentRepository;
1564
- this.collectionName = 'payments';
1565
- this.parentIdField = 'subscriptionId';
1566
- this.model = SubscriptionPayment;
1567
- }
1568
- }
1569
-
1570
- class LeadFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
1571
- constructor(firestore) {
1572
- super();
1573
- this.firestore = firestore;
1574
- this.collectionName = 'leads';
1575
- this.model = Lead;
1576
- }
1577
- }
1578
-
1579
1563
  class CategoryFirestoreRepository extends withCrudFirestore(withHelpers(withFirestore(Base))) {
1580
1564
  constructor(firestore) {
1581
1565
  super();
@@ -2508,6 +2492,19 @@ class CategoryHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGr
2508
2492
  : _super.get.call(this, identifiers);
2509
2493
  });
2510
2494
  }
2495
+ update(params) {
2496
+ const _super = Object.create(null, {
2497
+ update: { get: () => super.update }
2498
+ });
2499
+ return __awaiter(this, void 0, void 0, function* () {
2500
+ const { products, id: checkId } = params, data = __rest(params, ["products", "id"]);
2501
+ const plainData = this.paramsToPlain({ id: checkId });
2502
+ const id = yield this.getId(plainData.id);
2503
+ const category = yield _super.update.call(this, Object.assign({ id }, data));
2504
+ category.products = products && (yield this.updateProducts(+id, { products }));
2505
+ return category;
2506
+ });
2507
+ }
2511
2508
  getCategoryBySlug(slug, shop) {
2512
2509
  return __awaiter(this, void 0, void 0, function* () {
2513
2510
  if (!slug)
@@ -2541,8 +2538,7 @@ class CategoryHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGr
2541
2538
  if (!category.products)
2542
2539
  throw new RequiredArgumentError(['Category products is empty']);
2543
2540
  const products = [];
2544
- const publishedField = category.shop === Shops.GLAMSHOP ? 'publishedGlam' : 'published';
2545
- const { data: productsData } = yield this.productRepository.find(Object.assign({ filters: Object.assign({ id: { operator: Where.IN, value: category.products }, [publishedField]: true }, ((options === null || options === void 0 ? void 0 : options.hasStock) ? { stock: { quantity: { operator: Where.GT, value: 0 } } } : {})), fields: [
2541
+ const { data: productsData } = yield this.productRepository.find(Object.assign({ filters: Object.assign({ id: { operator: Where.IN, value: category.products }, published: true }, ((options === null || options === void 0 ? void 0 : options.hasStock) ? { stock: { quantity: { operator: Where.GT, value: 0 } } } : {})), fields: [
2546
2542
  'id',
2547
2543
  'name',
2548
2544
  'slug',
@@ -2569,6 +2565,49 @@ class CategoryHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGr
2569
2565
  return products;
2570
2566
  });
2571
2567
  }
2568
+ getId(id) {
2569
+ var _a, _b;
2570
+ return __awaiter(this, void 0, void 0, function* () {
2571
+ if (!Number.isNaN(+id))
2572
+ return id;
2573
+ const { data } = yield this.find({ filters: { firestoreId: id } });
2574
+ if ((_a = data === null || data === void 0 ? void 0 : data[0]) === null || _a === void 0 ? void 0 : _a.id)
2575
+ return (_b = data === null || data === void 0 ? void 0 : data[0]) === null || _b === void 0 ? void 0 : _b.id;
2576
+ throw new NotFoundError(`Category with id ${id} not found`);
2577
+ });
2578
+ }
2579
+ updateProducts(categoryId, { products }) {
2580
+ return __awaiter(this, void 0, void 0, function* () {
2581
+ if ('action' in products && products.action === 'remove') {
2582
+ yield this.mutation('delete_category_product', ['affected_rows'], {
2583
+ where: {
2584
+ type: 'category_product_bool_exp',
2585
+ required: true,
2586
+ value: { category_id: { _eq: categoryId } },
2587
+ },
2588
+ });
2589
+ return [];
2590
+ }
2591
+ const plainData = this.paramsToPlain({ products });
2592
+ if (!plainData.products || plainData.products.length <= 0)
2593
+ return [];
2594
+ yield this.mutation('delete_category_product', ['affected_rows'], {
2595
+ where: {
2596
+ type: 'category_product_bool_exp',
2597
+ required: true,
2598
+ value: { category_id: { _eq: categoryId } },
2599
+ },
2600
+ });
2601
+ yield this.mutation('insert_category_product', ['affected_rows'], {
2602
+ objects: {
2603
+ type: '[category_product_insert_input!]',
2604
+ required: true,
2605
+ value: plainData.products.map((productId) => ({ category_id: categoryId, product_id: productId })),
2606
+ },
2607
+ });
2608
+ return plainData.products;
2609
+ });
2610
+ }
2572
2611
  }
2573
2612
 
2574
2613
  class ProductHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGraphQL(Base)) {
@@ -2678,6 +2717,13 @@ class ProductHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGra
2678
2717
  ],
2679
2718
  },
2680
2719
  },
2720
+ {
2721
+ reviews: {
2722
+ columnName: 'reviews',
2723
+ foreignKeyColumn: { productId: 'id' },
2724
+ fields: this.reviewsFields,
2725
+ },
2726
+ },
2681
2727
  {
2682
2728
  metadata: {
2683
2729
  columnName: 'metadata',
@@ -2734,7 +2780,7 @@ class ProductHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGra
2734
2780
  : yield _super.get.call(this, identifiers);
2735
2781
  if (product.productId)
2736
2782
  throw new NotFoundError('Product not found, it is a variant');
2737
- product.reviews = yield this.findReviewsByProduct(+product.id);
2783
+ product.reviews = product.reviews || (yield this.findReviewsByProduct(+product.id));
2738
2784
  return product;
2739
2785
  });
2740
2786
  }
@@ -2743,8 +2789,12 @@ class ProductHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGra
2743
2789
  find: { get: () => super.find }
2744
2790
  });
2745
2791
  return __awaiter(this, void 0, void 0, function* () {
2746
- const _a = params || {}, { filters } = _a, options = __rest(_a, ["filters"]);
2747
- return _super.find.call(this, Object.assign(Object.assign({}, options), { filters: Object.assign(Object.assign({}, filters), { productId: { operator: Where.ISNULL } }) }));
2792
+ const _a = params || {}, { filters, fields } = _a, options = __rest(_a, ["filters", "fields"]);
2793
+ const bindFields = fields ||
2794
+ this.fields
2795
+ .map((field) => (typeof field === 'string' ? field : Object.keys(field).shift()))
2796
+ .filter((field) => field !== 'reviews');
2797
+ return _super.find.call(this, Object.assign(Object.assign({}, options), { filters: Object.assign(Object.assign({}, filters), { productId: { operator: Where.ISNULL } }), fields: bindFields }));
2748
2798
  });
2749
2799
  }
2750
2800
  getBySlug(slug) {
@@ -2777,13 +2827,13 @@ class ProductHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGra
2777
2827
  }
2778
2828
  fetchReviews(status) {
2779
2829
  return __awaiter(this, void 0, void 0, function* () {
2780
- const reviews = {
2830
+ const reviewsExpression = {
2781
2831
  status: status === 'pending'
2782
2832
  ? { [HasuraGraphQLWhere.ISNULL]: true }
2783
2833
  : { [HasuraGraphQLWhere.EQUALS]: status === 'approved' },
2784
2834
  };
2785
2835
  const { product: data } = yield this.query('product', ['id', 'name', 'sku', { reviews: { columnName: 'reviews', fields: this.reviewsFields } }], {
2786
- where: { value: { reviews }, type: 'product_bool_exp', required: true },
2836
+ where: { value: { reviews: reviewsExpression }, type: 'product_bool_exp', required: true },
2787
2837
  });
2788
2838
  return data.reduce((reviews, product) => [
2789
2839
  ...reviews,
@@ -2797,7 +2847,19 @@ class ProductHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGra
2797
2847
  }
2798
2848
  updateCategories(productId, { categories }) {
2799
2849
  return __awaiter(this, void 0, void 0, function* () {
2850
+ if ('action' in categories && categories.action === 'remove') {
2851
+ yield this.mutation('delete_category_product', ['affected_rows'], {
2852
+ where: {
2853
+ type: 'category_product_bool_exp',
2854
+ required: true,
2855
+ value: { product_id: { _eq: productId } },
2856
+ },
2857
+ });
2858
+ return [];
2859
+ }
2800
2860
  const plainData = this.paramsToPlain({ categories });
2861
+ if (!plainData.categories || plainData.categories.length <= 0)
2862
+ return [];
2801
2863
  yield this.mutation('delete_category_product', ['affected_rows'], {
2802
2864
  where: {
2803
2865
  type: 'category_product_bool_exp',
@@ -2841,8 +2903,6 @@ class ProductHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGra
2841
2903
  }
2842
2904
  updateReviews(productId, { reviews }) {
2843
2905
  return __awaiter(this, void 0, void 0, function* () {
2844
- if (!reviews)
2845
- return [];
2846
2906
  if ('action' in reviews && reviews.action === 'remove') {
2847
2907
  const reviewIds = yield Promise.all(reviews.value.map((reviewData) => __awaiter(this, void 0, void 0, function* () {
2848
2908
  const review = yield this.findReview(reviewData, productId);
@@ -2854,6 +2914,8 @@ class ProductHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGra
2854
2914
  return reviews.value.map((review, index) => !reviewIds[index] && review).filter(Boolean);
2855
2915
  }
2856
2916
  const plainData = this.paramsToPlain({ reviews });
2917
+ if (!plainData.reviews || plainData.reviews.length <= 0)
2918
+ return [];
2857
2919
  return Promise.all(plainData.reviews.map((reviewData) => __awaiter(this, void 0, void 0, function* () {
2858
2920
  const review = yield this.findReview(reviewData, productId);
2859
2921
  if (review.id)
@@ -3062,5 +3124,5 @@ class VariantHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGra
3062
3124
  * Generated bundle index. Do not edit.
3063
3125
  */
3064
3126
 
3065
- export { AccessoryImportances, Address, Area, Authentication, AuthenticationFirebaseAuthService, AxiosAdapter, Base, BaseModel, BeardProblems, BeardSizes, BeautyProductImportances, BeautyProfile, BeautyQuestionsHelper, BillingStatus, BodyProblems, BodyShapes, BodyTattoos, Buy2Win, Buy2WinFirestoreRepository, Category, CategoryFirestoreRepository, CategoryHasuraGraphQL, CategoryHasuraGraphQLRepository, Checkout, CheckoutFirestoreRepository, CheckoutSubscription, CheckoutSubscriptionFirestoreRepository, CheckoutTypes, Coupon, CouponFirestoreRepository, CouponSubtypes, CouponTypes, DuplicatedResultsError, Edition, EditionStatus, Exclusivities, FaceSkinOilinesses, FaceSkinProblems, FaceSkinTones, FamilyIncomes, FilterType, FragranceImportances, GenderDestination, HairColors, HairProblems, HairStrands, HairTypes, Home, HomeFirestoreRepository, InvalidArgumentError, KitProduct, KitProductHasuraGraphQL, Lead, LeadFirestoreRepository, LegacyOrderFirestoreRepository, LineItem, NotFoundError, OfficePosition, Order, OrderFirestoreRepository, OrderStatus, Payment, PaymentFirestoreRepository, PaymentType, Product, ProductFirestoreRepository, ProductHasuraGraphQL, ProductHasuraGraphQLRepository, ProductSpents, ProductVariantFirestoreRepository, ProductsIndex, QuestionsFilters, RecoveryPassword, Register, RegisterFirebaseAuthService, RequiredArgumentError, ShippingMethod, ShopMenu, ShopMenuFirestoreRepository, Shops, SignInMethods, SignOut, Status, Subscription, SubscriptionEditionFirestoreRepository, SubscriptionFirestoreRepository, SubscriptionPayment, SubscriptionPaymentFirestoreRepository, SubscriptionPlan, SubscriptionPlanFirestoreRepository, SubscriptionProductFirestoreRepository, UnauthorizedError, UpdateOptionActions, User, UserAddress, UserAddressFirestoreRepository, UserAlreadyRegisteredError, UserBeautyProfileFirestoreRepository, UserFirestoreRepository, UserPaymentMethod, UserPaymentMethodFirestoreRepository, UserSearchFirestoreRepository, UserType, Variant, VariantHasuraGraphQL, VariantHasuraGraphQLRepository, WeakPasswordError, Where, isUUID, parseDateTime, withCreateFirestore, withCreateHasuraGraphQL, withCrudFirestore, withCrudHasuraGraphQL, withDeleteFirestore, withDeleteHasuraGraphQL, withFindFirestore, withFindHasuraGraphQL, withFirestore, withGetFirestore, withGetHasuraGraphQL, withHasuraGraphQL, withHelpers, withSubCollection, withUpdateFirestore, withUpdateHasuraGraphQL };
3127
+ export { AccessoryImportances, Address, Area, Authentication, AuthenticationFirebaseAuthService, AxiosAdapter, Base, BaseModel, BeardProblems, BeardSizes, BeautyProductImportances, BeautyProfile, BeautyQuestionsHelper, BillingStatus, BodyProblems, BodyShapes, BodyTattoos, Buy2Win, Buy2WinFirestoreRepository, Category, CategoryFirestoreRepository, CategoryHasuraGraphQL, CategoryHasuraGraphQLRepository, Checkout, CheckoutFirestoreRepository, CheckoutSubscription, CheckoutSubscriptionFirestoreRepository, CheckoutTypes, Coupon, CouponFirestoreRepository, CouponSubtypes, CouponTypes, DuplicatedResultsError, Edition, EditionStatus, Exclusivities, FaceSkinOilinesses, FaceSkinProblems, FaceSkinTones, FamilyIncomes, FilterType, FragranceImportances, GenderDestination, HairColors, HairProblems, HairStrands, HairTypes, Home, HomeFirestoreRepository, InvalidArgumentError, KitProduct, KitProductHasuraGraphQL, Lead, LeadFirestoreRepository, LegacyOrderFirestoreRepository, LineItem, NotFoundError, OfficePosition, Order, OrderFirestoreRepository, OrderStatus, Payment, PaymentFirestoreRepository, PaymentType, Product, ProductFirestoreRepository, ProductHasuraGraphQL, ProductHasuraGraphQLRepository, ProductSpents, ProductVariantFirestoreRepository, ProductsIndex, QuestionsFilters, RecoveryPassword, Register, RegisterFirebaseAuthService, RequiredArgumentError, ShippingMethod, ShopMenu, ShopMenuFirestoreRepository, Shops, SignInMethods, SignOut, Status, Subscription, SubscriptionEditionFirestoreRepository, SubscriptionFirestoreRepository, SubscriptionPayment, SubscriptionPaymentFirestoreRepository, SubscriptionPlan, SubscriptionPlanFirestoreRepository, SubscriptionProductFirestoreRepository, UnauthorizedError, UpdateOptionActions, User, UserAddress, UserAddressFirestoreRepository, UserAlreadyRegisteredError, UserBeautyProfileFirestoreRepository, UserFirestoreRepository, UserPaymentMethod, UserPaymentMethodFirestoreRepository, UserType, Variant, VariantHasuraGraphQL, VariantHasuraGraphQLRepository, WeakPasswordError, Where, isUUID, parseDateTime, withCreateFirestore, withCreateHasuraGraphQL, withCrudFirestore, withCrudHasuraGraphQL, withDeleteFirestore, withDeleteHasuraGraphQL, withFindFirestore, withFindHasuraGraphQL, withFirestore, withGetFirestore, withGetHasuraGraphQL, withHasuraGraphQL, withHelpers, withSubCollection, withUpdateFirestore, withUpdateHasuraGraphQL };
3066
3128
  //# sourceMappingURL=infrab4a-connect.js.map