@infrab4a/connect 1.0.0-beta.30 → 1.0.0-beta.32
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/README.md +24 -24
- package/bundles/infrab4a-connect.umd.js +4206 -4088
- package/bundles/infrab4a-connect.umd.js.map +1 -1
- package/domain/catalog/index.d.ts +2 -2
- package/domain/catalog/models/category.d.ts +23 -23
- package/domain/catalog/models/enums/index.d.ts +1 -1
- package/domain/catalog/models/enums/shops.enum.d.ts +5 -5
- package/domain/catalog/models/index.d.ts +6 -6
- package/domain/catalog/models/kit-product.d.ts +12 -12
- package/domain/catalog/models/product.d.ts +39 -39
- package/domain/catalog/models/types/category-condition.type.d.ts +4 -4
- package/domain/catalog/models/types/category-filter.type.d.ts +4 -4
- package/domain/catalog/models/types/index.d.ts +7 -7
- package/domain/catalog/models/types/product-review.type.d.ts +17 -17
- package/domain/catalog/models/types/shops-description.type.d.ts +7 -7
- package/domain/catalog/models/types/shops-price.type.d.ts +10 -10
- package/domain/catalog/models/types/stock.type.d.ts +3 -3
- package/domain/catalog/models/types/variant-grade.type.d.ts +4 -4
- package/domain/catalog/models/variant.d.ts +18 -18
- package/domain/catalog/repositories/category.repository.d.ts +15 -15
- package/domain/catalog/repositories/index.d.ts +4 -4
- package/domain/catalog/repositories/product.repository.d.ts +12 -12
- package/domain/catalog/repositories/subscription-product.repository.d.ts +4 -4
- package/domain/catalog/repositories/variant.repository.d.ts +4 -4
- package/domain/generic/index.d.ts +2 -2
- package/domain/generic/model/base.model.d.ts +10 -10
- package/domain/generic/model/identifier-fields.d.ts +4 -4
- package/domain/generic/model/index.d.ts +3 -3
- package/domain/generic/model/types/base-model-builder.type.d.ts +15 -15
- package/domain/generic/model/types/identifier-model.type.d.ts +7 -7
- package/domain/generic/model/types/index.d.ts +5 -5
- package/domain/generic/model/types/model-base-structure.type.d.ts +6 -6
- package/domain/generic/model/types/non-function-properties.type.d.ts +12 -12
- package/domain/generic/model/types/non-function-property-name.type.d.ts +4 -4
- package/domain/generic/repository/create.repository.d.ts +8 -8
- package/domain/generic/repository/crud.repository.d.ts +19 -19
- package/domain/generic/repository/delete.repository.d.ts +7 -7
- package/domain/generic/repository/enums/index.d.ts +2 -2
- package/domain/generic/repository/enums/update-option-actions.enum.d.ts +7 -7
- package/domain/generic/repository/enums/where.enum.d.ts +13 -13
- package/domain/generic/repository/find.repository.d.ts +11 -11
- package/domain/generic/repository/get.repository.d.ts +5 -5
- package/domain/generic/repository/index.d.ts +9 -9
- package/domain/generic/repository/read.repository.d.ts +14 -14
- package/domain/generic/repository/types/index.d.ts +6 -6
- package/domain/generic/repository/types/repository-find-filters.type.d.ts +13 -13
- package/domain/generic/repository/types/repository-find-result.type.d.ts +4 -4
- package/domain/generic/repository/types/repository-limit-options.type.d.ts +4 -4
- package/domain/generic/repository/types/repository-order-by-list.type.d.ts +5 -5
- package/domain/generic/repository/types/repository-update-params.type.d.ts +11 -11
- package/domain/generic/repository/types/where-options.type.d.ts +2 -2
- package/domain/generic/repository/update.repository.d.ts +6 -6
- package/domain/index.d.ts +6 -6
- package/domain/location/index.d.ts +1 -1
- package/domain/location/models/address.d.ts +22 -22
- package/domain/location/models/index.d.ts +2 -2
- package/domain/location/models/types/index.d.ts +3 -3
- package/domain/location/models/types/location-bound.type.d.ts +6 -6
- package/domain/location/models/types/location-geometry.type.d.ts +7 -7
- package/domain/location/models/types/location-lat-lng.type.d.ts +4 -4
- package/domain/shop-settings/enums/filter-type.enum.d.ts +19 -19
- package/domain/shop-settings/enums/index.d.ts +2 -2
- package/domain/shop-settings/enums/questions-filters.enum.d.ts +19 -19
- package/domain/shop-settings/helpers/beauty-questions.helper.d.ts +9 -9
- package/domain/shop-settings/helpers/index.d.ts +1 -1
- package/domain/shop-settings/index.d.ts +4 -4
- package/domain/shop-settings/models/home.d.ts +17 -17
- package/domain/shop-settings/models/index.d.ts +3 -3
- package/domain/shop-settings/models/shop-menu.d.ts +7 -7
- package/domain/shop-settings/models/types/banner.type.d.ts +6 -6
- package/domain/shop-settings/models/types/benefit.type.d.ts +5 -5
- package/domain/shop-settings/models/types/home-data.type.d.ts +15 -15
- package/domain/shop-settings/models/types/index.d.ts +5 -5
- package/domain/shop-settings/models/types/menu-nav.type.d.ts +8 -8
- package/domain/shop-settings/models/types/sub-menu.type.d.ts +8 -8
- package/domain/shop-settings/repositories/home.repository.d.ts +4 -4
- package/domain/shop-settings/repositories/index.d.ts +2 -2
- package/domain/shop-settings/repositories/shop-menu.repository.d.ts +4 -4
- package/domain/shopping/index.d.ts +2 -2
- package/domain/shopping/models/buy-2-win.d.ts +16 -16
- package/domain/shopping/models/checkout.d.ts +27 -27
- package/domain/shopping/models/coupons/coupon.d.ts +26 -26
- package/domain/shopping/models/coupons/enums/coupon-subtypes.enum.d.ts +4 -4
- package/domain/shopping/models/coupons/enums/coupon-types.enum.d.ts +6 -6
- package/domain/shopping/models/coupons/enums/exclusivities.enum.d.ts +5 -5
- package/domain/shopping/models/coupons/enums/index.d.ts +3 -3
- package/domain/shopping/models/coupons/financial-coupon.d.ts +9 -9
- package/domain/shopping/models/coupons/index.d.ts +3 -3
- package/domain/shopping/models/enums/checkout-types.enum.d.ts +4 -4
- package/domain/shopping/models/enums/index.d.ts +2 -2
- package/domain/shopping/models/enums/order-status.enum.d.ts +10 -10
- package/domain/shopping/models/index.d.ts +11 -11
- package/domain/shopping/models/line-item.d.ts +8 -8
- package/domain/shopping/models/order.d.ts +9 -9
- package/domain/shopping/models/payment.d.ts +67 -67
- package/domain/shopping/models/shipping-method.d.ts +16 -16
- package/domain/shopping/models/subscription/checkout.d.ts +21 -21
- package/domain/shopping/models/subscription/index.d.ts +2 -2
- package/domain/shopping/models/subscription/plan.d.ts +10 -10
- package/domain/shopping/models/types/index.d.ts +7 -7
- package/domain/shopping/models/types/payment-address.type.d.ts +12 -12
- package/domain/shopping/models/types/payment-billing.type.d.ts +7 -7
- package/domain/shopping/models/types/payment-card.type.d.ts +14 -14
- package/domain/shopping/models/types/payment-customer.type.d.ts +18 -18
- package/domain/shopping/models/types/payment-document.type.d.ts +6 -6
- package/domain/shopping/models/types/payment-item.type.d.ts +11 -11
- package/domain/shopping/models/types/payment-shipping.type.d.ts +10 -10
- package/domain/shopping/repositories/buy-2-win.repository.d.ts +4 -4
- package/domain/shopping/repositories/checkout.repository.d.ts +4 -4
- package/domain/shopping/repositories/coupon.repository.d.ts +4 -4
- package/domain/shopping/repositories/index.d.ts +7 -7
- package/domain/shopping/repositories/legacy-order.repository.d.ts +3 -3
- package/domain/shopping/repositories/order.repository.d.ts +4 -4
- package/domain/shopping/repositories/payment.repository.d.ts +4 -4
- package/domain/shopping/repositories/subscription/checkout.repository.d.ts +4 -4
- package/domain/shopping/repositories/subscription/index.d.ts +2 -2
- package/domain/shopping/repositories/subscription/plan.repository.d.ts +4 -4
- package/domain/users/errors/index.d.ts +3 -3
- package/domain/users/errors/unauthorized.error.d.ts +5 -5
- package/domain/users/errors/user-already-registered.error.d.ts +5 -5
- package/domain/users/errors/weak-password.error.d.ts +5 -5
- package/domain/users/index.d.ts +5 -5
- package/domain/users/models/beauty-profile.d.ts +11 -11
- package/domain/users/models/enums/accessory-importances.enum.d.ts +5 -5
- package/domain/users/models/enums/area.enum.d.ts +11 -11
- package/domain/users/models/enums/beard-problems.enum.d.ts +9 -9
- package/domain/users/models/enums/beard-sizes.enum.d.ts +7 -7
- package/domain/users/models/enums/beauty-product-importances.enum.d.ts +6 -6
- package/domain/users/models/enums/body-problems.enum.d.ts +11 -11
- package/domain/users/models/enums/body-shapes.enum.d.ts +7 -7
- package/domain/users/models/enums/body-tattoos.enum.d.ts +5 -5
- package/domain/users/models/enums/face-skin-oilinesses.enum.d.ts +7 -7
- package/domain/users/models/enums/face-skin-problems.enum.d.ts +10 -10
- package/domain/users/models/enums/face-skin-tones.enum.d.ts +8 -8
- package/domain/users/models/enums/family-incomes.enum.d.ts +8 -8
- package/domain/users/models/enums/fragrance-importances.enum.d.ts +5 -5
- package/domain/users/models/enums/hair-colors.enum.d.ts +10 -10
- package/domain/users/models/enums/hair-problems.enum.d.ts +10 -10
- package/domain/users/models/enums/hair-strands.enum.d.ts +8 -8
- package/domain/users/models/enums/hair-types.enum.d.ts +7 -7
- package/domain/users/models/enums/index.d.ts +20 -20
- package/domain/users/models/enums/office-position.enum.d.ts +6 -6
- package/domain/users/models/enums/product-spents.enum.d.ts +8 -8
- package/domain/users/models/enums/user-type.enum.d.ts +8 -8
- package/domain/users/models/index.d.ts +7 -7
- package/domain/users/models/lead.d.ts +7 -7
- package/domain/users/models/subscription/edition.d.ts +16 -16
- package/domain/users/models/subscription/enums/billing-status.enum.d.ts +3 -3
- package/domain/users/models/subscription/enums/edition-status.enum.d.ts +4 -4
- package/domain/users/models/subscription/enums/index.d.ts +4 -4
- package/domain/users/models/subscription/enums/payment-type.enum.d.ts +5 -5
- package/domain/users/models/subscription/enums/status.enum.d.ts +4 -4
- package/domain/users/models/subscription/index.d.ts +4 -4
- package/domain/users/models/subscription/payment.d.ts +13 -13
- package/domain/users/models/subscription/subscription.d.ts +28 -28
- package/domain/users/models/user-address.d.ts +7 -7
- package/domain/users/models/user-payment-method.d.ts +14 -14
- package/domain/users/models/user.d.ts +26 -26
- package/domain/users/repositories/beauty-profile.repository.d.ts +4 -4
- package/domain/users/repositories/edition.repository.d.ts +4 -4
- package/domain/users/repositories/index.d.ts +8 -8
- package/domain/users/repositories/lead.repository.d.ts +4 -4
- package/domain/users/repositories/subscription-payment.repository.d.ts +4 -4
- package/domain/users/repositories/subscription.repository.d.ts +4 -4
- package/domain/users/repositories/user-address.repository.d.ts +4 -4
- package/domain/users/repositories/user-payment-method.repository.d.ts +4 -4
- package/domain/users/repositories/user.repository.d.ts +6 -6
- package/domain/users/services/authentication.service.d.ts +12 -12
- package/domain/users/services/index.d.ts +3 -3
- package/domain/users/services/register.service.d.ts +7 -7
- package/domain/users/services/types/basic-user-data.type.d.ts +4 -4
- package/domain/users/services/types/index.d.ts +1 -1
- package/domain/users/use-cases/authentication.d.ts +21 -21
- package/domain/users/use-cases/index.d.ts +4 -4
- package/domain/users/use-cases/recovery-password.d.ts +6 -6
- package/domain/users/use-cases/register.d.ts +13 -13
- package/domain/users/use-cases/signout.d.ts +6 -6
- package/errors/duplicated-results.error.d.ts +5 -5
- package/errors/index.d.ts +4 -4
- package/errors/invalid-argument.error.d.ts +5 -5
- package/errors/not-found.error.d.ts +5 -5
- package/errors/required-argument.error.d.ts +6 -6
- package/esm2015/domain/catalog/index.js +3 -3
- package/esm2015/domain/catalog/models/category.js +10 -10
- package/esm2015/domain/catalog/models/enums/index.js +2 -2
- package/esm2015/domain/catalog/models/enums/shops.enum.js +7 -7
- package/esm2015/domain/catalog/models/index.js +7 -7
- package/esm2015/domain/catalog/models/kit-product.js +18 -18
- package/esm2015/domain/catalog/models/product.js +21 -21
- package/esm2015/domain/catalog/models/types/category-condition.type.js +2 -2
- package/esm2015/domain/catalog/models/types/category-filter.type.js +2 -2
- package/esm2015/domain/catalog/models/types/index.js +8 -8
- package/esm2015/domain/catalog/models/types/product-review.type.js +2 -2
- package/esm2015/domain/catalog/models/types/shops-description.type.js +2 -2
- package/esm2015/domain/catalog/models/types/shops-price.type.js +2 -2
- package/esm2015/domain/catalog/models/types/stock.type.js +2 -2
- package/esm2015/domain/catalog/models/types/variant-grade.type.js +2 -2
- package/esm2015/domain/catalog/models/variant.js +10 -10
- package/esm2015/domain/catalog/repositories/category.repository.js +2 -2
- package/esm2015/domain/catalog/repositories/index.js +5 -5
- package/esm2015/domain/catalog/repositories/product.repository.js +2 -2
- package/esm2015/domain/catalog/repositories/subscription-product.repository.js +2 -2
- package/esm2015/domain/catalog/repositories/variant.repository.js +2 -2
- package/esm2015/domain/generic/index.js +3 -3
- package/esm2015/domain/generic/model/base.model.js +23 -23
- package/esm2015/domain/generic/model/identifier-fields.js +2 -2
- package/esm2015/domain/generic/model/index.js +4 -4
- package/esm2015/domain/generic/model/types/base-model-builder.type.js +2 -2
- package/esm2015/domain/generic/model/types/identifier-model.type.js +2 -2
- package/esm2015/domain/generic/model/types/index.js +6 -6
- package/esm2015/domain/generic/model/types/model-base-structure.type.js +2 -2
- package/esm2015/domain/generic/model/types/non-function-properties.type.js +2 -2
- package/esm2015/domain/generic/model/types/non-function-property-name.type.js +2 -2
- package/esm2015/domain/generic/repository/create.repository.js +2 -2
- package/esm2015/domain/generic/repository/crud.repository.js +2 -2
- package/esm2015/domain/generic/repository/delete.repository.js +2 -2
- package/esm2015/domain/generic/repository/enums/index.js +3 -3
- package/esm2015/domain/generic/repository/enums/update-option-actions.enum.js +9 -9
- package/esm2015/domain/generic/repository/enums/where.enum.js +15 -15
- package/esm2015/domain/generic/repository/find.repository.js +2 -2
- package/esm2015/domain/generic/repository/get.repository.js +2 -2
- package/esm2015/domain/generic/repository/index.js +10 -10
- package/esm2015/domain/generic/repository/read.repository.js +2 -2
- package/esm2015/domain/generic/repository/types/index.js +7 -7
- package/esm2015/domain/generic/repository/types/repository-find-filters.type.js +2 -2
- package/esm2015/domain/generic/repository/types/repository-find-result.type.js +2 -2
- package/esm2015/domain/generic/repository/types/repository-limit-options.type.js +2 -2
- package/esm2015/domain/generic/repository/types/repository-order-by-list.type.js +2 -2
- package/esm2015/domain/generic/repository/types/repository-update-params.type.js +2 -2
- package/esm2015/domain/generic/repository/types/where-options.type.js +2 -2
- package/esm2015/domain/generic/repository/update.repository.js +2 -2
- package/esm2015/domain/index.js +7 -7
- package/esm2015/domain/location/index.js +2 -2
- package/esm2015/domain/location/models/address.js +7 -7
- package/esm2015/domain/location/models/index.js +3 -3
- package/esm2015/domain/location/models/types/index.js +4 -4
- package/esm2015/domain/location/models/types/location-bound.type.js +2 -2
- package/esm2015/domain/location/models/types/location-geometry.type.js +2 -2
- package/esm2015/domain/location/models/types/location-lat-lng.type.js +2 -2
- package/esm2015/domain/shop-settings/enums/filter-type.enum.js +21 -21
- package/esm2015/domain/shop-settings/enums/index.js +3 -3
- package/esm2015/domain/shop-settings/enums/questions-filters.enum.js +21 -21
- package/esm2015/domain/shop-settings/helpers/beauty-questions.helper.js +46 -46
- package/esm2015/domain/shop-settings/helpers/index.js +2 -2
- package/esm2015/domain/shop-settings/index.js +5 -5
- package/esm2015/domain/shop-settings/models/home.js +7 -7
- package/esm2015/domain/shop-settings/models/index.js +4 -4
- package/esm2015/domain/shop-settings/models/shop-menu.js +7 -7
- package/esm2015/domain/shop-settings/models/types/banner.type.js +2 -2
- package/esm2015/domain/shop-settings/models/types/benefit.type.js +2 -2
- package/esm2015/domain/shop-settings/models/types/home-data.type.js +2 -2
- package/esm2015/domain/shop-settings/models/types/index.js +6 -6
- package/esm2015/domain/shop-settings/models/types/menu-nav.type.js +2 -2
- package/esm2015/domain/shop-settings/models/types/sub-menu.type.js +2 -2
- package/esm2015/domain/shop-settings/repositories/home.repository.js +2 -2
- package/esm2015/domain/shop-settings/repositories/index.js +3 -3
- package/esm2015/domain/shop-settings/repositories/shop-menu.repository.js +2 -2
- package/esm2015/domain/shopping/index.js +3 -3
- package/esm2015/domain/shopping/models/buy-2-win.js +14 -14
- package/esm2015/domain/shopping/models/checkout.js +38 -38
- package/esm2015/domain/shopping/models/coupons/coupon.js +23 -23
- package/esm2015/domain/shopping/models/coupons/enums/coupon-subtypes.enum.js +6 -6
- package/esm2015/domain/shopping/models/coupons/enums/coupon-types.enum.js +8 -8
- package/esm2015/domain/shopping/models/coupons/enums/exclusivities.enum.js +7 -7
- package/esm2015/domain/shopping/models/coupons/enums/index.js +4 -4
- package/esm2015/domain/shopping/models/coupons/financial-coupon.js +28 -28
- package/esm2015/domain/shopping/models/coupons/index.js +4 -4
- package/esm2015/domain/shopping/models/enums/checkout-types.enum.js +6 -6
- package/esm2015/domain/shopping/models/enums/index.js +3 -3
- package/esm2015/domain/shopping/models/enums/order-status.enum.js +12 -12
- package/esm2015/domain/shopping/models/index.js +12 -12
- package/esm2015/domain/shopping/models/line-item.js +4 -4
- package/esm2015/domain/shopping/models/order.js +11 -11
- package/esm2015/domain/shopping/models/payment.js +169 -169
- package/esm2015/domain/shopping/models/shipping-method.js +7 -7
- package/esm2015/domain/shopping/models/subscription/checkout.js +28 -28
- package/esm2015/domain/shopping/models/subscription/index.js +3 -3
- package/esm2015/domain/shopping/models/subscription/plan.js +7 -7
- package/esm2015/domain/shopping/models/types/index.js +8 -8
- package/esm2015/domain/shopping/models/types/payment-address.type.js +2 -2
- package/esm2015/domain/shopping/models/types/payment-billing.type.js +2 -2
- package/esm2015/domain/shopping/models/types/payment-card.type.js +2 -2
- package/esm2015/domain/shopping/models/types/payment-customer.type.js +2 -2
- package/esm2015/domain/shopping/models/types/payment-document.type.js +2 -2
- package/esm2015/domain/shopping/models/types/payment-item.type.js +2 -2
- package/esm2015/domain/shopping/models/types/payment-shipping.type.js +2 -2
- package/esm2015/domain/shopping/repositories/buy-2-win.repository.js +2 -2
- package/esm2015/domain/shopping/repositories/checkout.repository.js +2 -2
- package/esm2015/domain/shopping/repositories/coupon.repository.js +2 -2
- package/esm2015/domain/shopping/repositories/index.js +8 -8
- package/esm2015/domain/shopping/repositories/legacy-order.repository.js +2 -2
- package/esm2015/domain/shopping/repositories/order.repository.js +2 -2
- package/esm2015/domain/shopping/repositories/payment.repository.js +2 -2
- package/esm2015/domain/shopping/repositories/subscription/checkout.repository.js +2 -2
- package/esm2015/domain/shopping/repositories/subscription/index.js +3 -3
- package/esm2015/domain/shopping/repositories/subscription/plan.repository.js +2 -2
- package/esm2015/domain/users/errors/index.js +4 -4
- package/esm2015/domain/users/errors/unauthorized.error.js +8 -8
- package/esm2015/domain/users/errors/user-already-registered.error.js +8 -8
- package/esm2015/domain/users/errors/weak-password.error.js +8 -8
- package/esm2015/domain/users/index.js +6 -6
- package/esm2015/domain/users/models/beauty-profile.js +12 -12
- package/esm2015/domain/users/models/enums/accessory-importances.enum.js +7 -7
- package/esm2015/domain/users/models/enums/area.enum.js +13 -13
- package/esm2015/domain/users/models/enums/beard-problems.enum.js +11 -11
- package/esm2015/domain/users/models/enums/beard-sizes.enum.js +9 -9
- package/esm2015/domain/users/models/enums/beauty-product-importances.enum.js +8 -8
- package/esm2015/domain/users/models/enums/body-problems.enum.js +13 -13
- package/esm2015/domain/users/models/enums/body-shapes.enum.js +9 -9
- package/esm2015/domain/users/models/enums/body-tattoos.enum.js +7 -7
- package/esm2015/domain/users/models/enums/face-skin-oilinesses.enum.js +9 -9
- package/esm2015/domain/users/models/enums/face-skin-problems.enum.js +12 -12
- package/esm2015/domain/users/models/enums/face-skin-tones.enum.js +10 -10
- package/esm2015/domain/users/models/enums/family-incomes.enum.js +10 -10
- package/esm2015/domain/users/models/enums/fragrance-importances.enum.js +7 -7
- package/esm2015/domain/users/models/enums/hair-colors.enum.js +12 -12
- package/esm2015/domain/users/models/enums/hair-problems.enum.js +12 -12
- package/esm2015/domain/users/models/enums/hair-strands.enum.js +10 -10
- package/esm2015/domain/users/models/enums/hair-types.enum.js +9 -9
- package/esm2015/domain/users/models/enums/index.js +21 -21
- package/esm2015/domain/users/models/enums/office-position.enum.js +8 -8
- package/esm2015/domain/users/models/enums/product-spents.enum.js +10 -10
- package/esm2015/domain/users/models/enums/user-type.enum.js +10 -10
- package/esm2015/domain/users/models/index.js +8 -8
- package/esm2015/domain/users/models/lead.js +7 -7
- package/esm2015/domain/users/models/subscription/edition.js +7 -7
- package/esm2015/domain/users/models/subscription/enums/billing-status.enum.js +5 -5
- package/esm2015/domain/users/models/subscription/enums/edition-status.enum.js +6 -6
- package/esm2015/domain/users/models/subscription/enums/index.js +5 -5
- package/esm2015/domain/users/models/subscription/enums/payment-type.enum.js +7 -7
- package/esm2015/domain/users/models/subscription/enums/status.enum.js +6 -6
- package/esm2015/domain/users/models/subscription/index.js +5 -5
- package/esm2015/domain/users/models/subscription/payment.js +14 -14
- package/esm2015/domain/users/models/subscription/subscription.js +43 -43
- package/esm2015/domain/users/models/user-address.js +7 -7
- package/esm2015/domain/users/models/user-payment-method.js +7 -7
- package/esm2015/domain/users/models/user.js +26 -26
- package/esm2015/domain/users/repositories/beauty-profile.repository.js +2 -2
- package/esm2015/domain/users/repositories/edition.repository.js +2 -2
- package/esm2015/domain/users/repositories/index.js +9 -9
- package/esm2015/domain/users/repositories/lead.repository.js +2 -2
- package/esm2015/domain/users/repositories/subscription-payment.repository.js +2 -2
- package/esm2015/domain/users/repositories/subscription.repository.js +2 -2
- package/esm2015/domain/users/repositories/user-address.repository.js +2 -2
- package/esm2015/domain/users/repositories/user-payment-method.repository.js +2 -2
- package/esm2015/domain/users/repositories/user.repository.js +2 -2
- package/esm2015/domain/users/services/authentication.service.js +2 -2
- package/esm2015/domain/users/services/index.js +4 -4
- package/esm2015/domain/users/services/register.service.js +2 -2
- package/esm2015/domain/users/services/types/basic-user-data.type.js +2 -2
- package/esm2015/domain/users/services/types/index.js +2 -2
- package/esm2015/domain/users/use-cases/authentication.js +40 -40
- package/esm2015/domain/users/use-cases/index.js +5 -5
- package/esm2015/domain/users/use-cases/recovery-password.js +12 -12
- package/esm2015/domain/users/use-cases/register.js +34 -34
- package/esm2015/domain/users/use-cases/signout.js +12 -12
- package/esm2015/errors/duplicated-results.error.js +8 -8
- package/esm2015/errors/index.js +5 -5
- package/esm2015/errors/invalid-argument.error.js +8 -8
- package/esm2015/errors/not-found.error.js +8 -8
- package/esm2015/errors/required-argument.error.js +9 -9
- package/esm2015/index.js +6 -6
- package/esm2015/infra/elasticsearch/adapters/axios.adapter.js +57 -22
- package/esm2015/infra/elasticsearch/adapters/elastic-search.adapter.js +2 -2
- package/esm2015/infra/elasticsearch/adapters/index.js +3 -3
- package/esm2015/infra/elasticsearch/index.js +4 -4
- package/esm2015/infra/elasticsearch/indexes/index.js +2 -2
- package/esm2015/infra/elasticsearch/indexes/products-index.js +90 -59
- package/esm2015/infra/elasticsearch/types/elastic-search-result.js +2 -2
- package/esm2015/infra/elasticsearch/types/index.js +2 -2
- package/esm2015/infra/firebase/auth/authentication-firebase-auth.service.js +52 -52
- package/esm2015/infra/firebase/auth/index.js +3 -3
- package/esm2015/infra/firebase/auth/register-firebase-auth.service.js +26 -26
- package/esm2015/infra/firebase/auth/types/firebase-user-with-id.type.js +2 -2
- package/esm2015/infra/firebase/firestore/index.js +4 -4
- package/esm2015/infra/firebase/firestore/mixins/index.js +10 -10
- package/esm2015/infra/firebase/firestore/mixins/with-create-firestore.mixin.js +31 -31
- package/esm2015/infra/firebase/firestore/mixins/with-crud-firestore.mixin.js +10 -10
- package/esm2015/infra/firebase/firestore/mixins/with-delete-firestore.mixin.js +18 -18
- package/esm2015/infra/firebase/firestore/mixins/with-find-firestore.mixin.js +86 -86
- package/esm2015/infra/firebase/firestore/mixins/with-firestore.mixin.js +22 -22
- package/esm2015/infra/firebase/firestore/mixins/with-get-firestore.mixin.js +24 -24
- package/esm2015/infra/firebase/firestore/mixins/with-helpers.mixin.js +17 -17
- package/esm2015/infra/firebase/firestore/mixins/with-sub-collection.mixin.js +11 -11
- package/esm2015/infra/firebase/firestore/mixins/with-update-firestore.mixin.js +45 -45
- package/esm2015/infra/firebase/firestore/models/user-search.js +7 -7
- package/esm2015/infra/firebase/firestore/repositories/catalog/category-firestore.repository.js +72 -72
- package/esm2015/infra/firebase/firestore/repositories/catalog/index.js +5 -5
- package/esm2015/infra/firebase/firestore/repositories/catalog/product-firestore.repository.js +53 -53
- package/esm2015/infra/firebase/firestore/repositories/catalog/product-variant-firestore.repository.js +14 -14
- package/esm2015/infra/firebase/firestore/repositories/catalog/subscription-product-firestore.repository.js +12 -12
- package/esm2015/infra/firebase/firestore/repositories/index.js +5 -5
- package/esm2015/infra/firebase/firestore/repositories/shop-settings/home-firestore.repository.js +56 -56
- package/esm2015/infra/firebase/firestore/repositories/shop-settings/index.js +3 -3
- package/esm2015/infra/firebase/firestore/repositories/shop-settings/shop-menu-firestore.repository.js +12 -12
- package/esm2015/infra/firebase/firestore/repositories/shopping/buy-2-win-firestore.repository.js +12 -12
- package/esm2015/infra/firebase/firestore/repositories/shopping/checkout-firestore.repository.js +12 -12
- package/esm2015/infra/firebase/firestore/repositories/shopping/checkout-subscription-firestore.repository.js +12 -12
- package/esm2015/infra/firebase/firestore/repositories/shopping/coupon-firestore.repository.js +29 -29
- package/esm2015/infra/firebase/firestore/repositories/shopping/index.js +9 -9
- package/esm2015/infra/firebase/firestore/repositories/shopping/legacy-order-firestore.repository.js +9 -9
- package/esm2015/infra/firebase/firestore/repositories/shopping/order-firestore.repository.js +12 -12
- package/esm2015/infra/firebase/firestore/repositories/shopping/payment-firestore.repository.js +12 -12
- package/esm2015/infra/firebase/firestore/repositories/shopping/subscription-plan-firestore.repository.js +12 -12
- package/esm2015/infra/firebase/firestore/repositories/users/index.js +10 -10
- package/esm2015/infra/firebase/firestore/repositories/users/lead-firestore.repository.js +12 -12
- package/esm2015/infra/firebase/firestore/repositories/users/subscription-edition-firestore.repository.js +14 -14
- package/esm2015/infra/firebase/firestore/repositories/users/subscription-firestore.repository.js +12 -12
- package/esm2015/infra/firebase/firestore/repositories/users/subscription-payment-firestore.repository.js +14 -14
- package/esm2015/infra/firebase/firestore/repositories/users/user-address-firestore.repository.js +14 -14
- package/esm2015/infra/firebase/firestore/repositories/users/user-beauty-profile-firestore.repository.js +14 -14
- package/esm2015/infra/firebase/firestore/repositories/users/user-firestore.repository.js +70 -70
- package/esm2015/infra/firebase/firestore/repositories/users/user-payment-method-firestore.repository.js +14 -14
- package/esm2015/infra/firebase/firestore/repositories/users/user-search-firestore.repository.js +12 -12
- package/esm2015/infra/firebase/firestore/types/firestore-sub.repository.type.js +2 -2
- package/esm2015/infra/firebase/firestore/types/firestore.helpers.type.js +2 -2
- package/esm2015/infra/firebase/firestore/types/firestore.repository.type.js +2 -2
- package/esm2015/infra/firebase/firestore/types/index.js +4 -4
- package/esm2015/infra/firebase/index.js +3 -3
- package/esm2015/infra/hasura-graphql/enums/hasura-graphql-column-type.enum.js +13 -13
- package/esm2015/infra/hasura-graphql/enums/hasura-graphql-where.enum.js +15 -15
- package/esm2015/infra/hasura-graphql/enums/index.js +3 -3
- package/esm2015/infra/hasura-graphql/index.js +5 -5
- package/esm2015/infra/hasura-graphql/mixins/helpers/attribute-option.helper.js +31 -31
- package/esm2015/infra/hasura-graphql/mixins/helpers/filter-option.helper.js +18 -18
- package/esm2015/infra/hasura-graphql/mixins/helpers/graphql-field.helper.js +70 -70
- package/esm2015/infra/hasura-graphql/mixins/helpers/index.js +4 -4
- package/esm2015/infra/hasura-graphql/mixins/index.js +8 -8
- package/esm2015/infra/hasura-graphql/mixins/with-create-hasura-graphql.mixin.js +45 -45
- package/esm2015/infra/hasura-graphql/mixins/with-crud-hasura-graphql.mixin.js +10 -10
- package/esm2015/infra/hasura-graphql/mixins/with-delete-hasura-graphql.mixin.js +29 -29
- package/esm2015/infra/hasura-graphql/mixins/with-find-hasura-graphql.mixin.js +93 -93
- package/esm2015/infra/hasura-graphql/mixins/with-get-hasura-graphql.mixin.js +35 -35
- package/esm2015/infra/hasura-graphql/mixins/with-hasura-graphql.mixin.js +95 -94
- package/esm2015/infra/hasura-graphql/mixins/with-update-hasura-graphql.mixin.js +56 -56
- package/esm2015/infra/hasura-graphql/models/category-hasura-graphql.js +4 -4
- package/esm2015/infra/hasura-graphql/models/index.js +5 -5
- package/esm2015/infra/hasura-graphql/models/kit-product-hasura-graphql.js +15 -15
- package/esm2015/infra/hasura-graphql/models/product-hasura-graphql.js +11 -11
- package/esm2015/infra/hasura-graphql/models/variant-hasura-graphql.js +9 -9
- package/esm2015/infra/hasura-graphql/repositories/catalog/category-hasura-graphql.repository.js +135 -135
- package/esm2015/infra/hasura-graphql/repositories/catalog/index.js +4 -4
- package/esm2015/infra/hasura-graphql/repositories/catalog/product-hasura-graphql.repository.js +367 -369
- package/esm2015/infra/hasura-graphql/repositories/catalog/variant-hasura-graphql.repository.js +100 -100
- package/esm2015/infra/hasura-graphql/repositories/index.js +2 -2
- package/esm2015/infra/hasura-graphql/types/fields.type.js +2 -2
- package/esm2015/infra/hasura-graphql/types/graphql.repository.type.js +2 -2
- package/esm2015/infra/hasura-graphql/types/hasura-graphql-auth-options.type.js +2 -2
- package/esm2015/infra/hasura-graphql/types/hasura-graphql-fields.type.js +2 -2
- package/esm2015/infra/hasura-graphql/types/hasura-graphql-headers.type.js +2 -2
- package/esm2015/infra/hasura-graphql/types/index.js +9 -9
- package/esm2015/infra/hasura-graphql/types/nested-field.type.js +2 -2
- package/esm2015/infra/hasura-graphql/types/query-builder-options.type.js +2 -2
- package/esm2015/infra/hasura-graphql/types/variable-options.type.js +2 -2
- package/esm2015/infra/index.js +4 -4
- package/esm2015/infrab4a-connect.js +4 -4
- package/esm2015/utils/index.js +8 -8
- package/esm2015/utils/is-uuid.js +3 -3
- package/esm2015/utils/mixins/base.mixin.js +6 -6
- package/esm2015/utils/mixins/index.js +4 -4
- package/esm2015/utils/mixins/merge-constructor-params.type.js +2 -2
- package/esm2015/utils/mixins/mixin-ctor.type.js +2 -2
- package/esm2015/utils/parse-datetime.js +14 -14
- package/esm2015/utils/types/array-element.type.js +2 -2
- package/esm2015/utils/types/index.js +3 -3
- package/esm2015/utils/types/prop.type.js +2 -2
- package/fesm2015/infrab4a-connect.js +2858 -2794
- package/fesm2015/infrab4a-connect.js.map +1 -1
- package/index.d.ts +5 -5
- package/infra/elasticsearch/adapters/axios.adapter.d.ts +14 -11
- package/infra/elasticsearch/adapters/elastic-search.adapter.d.ts +7 -4
- package/infra/elasticsearch/adapters/index.d.ts +2 -2
- package/infra/elasticsearch/index.d.ts +3 -3
- package/infra/elasticsearch/indexes/index.d.ts +1 -1
- package/infra/elasticsearch/indexes/products-index.d.ts +15 -11
- package/infra/elasticsearch/types/elastic-search-result.d.ts +7 -7
- package/infra/elasticsearch/types/index.d.ts +1 -1
- package/infra/firebase/auth/authentication-firebase-auth.service.d.ts +12 -12
- package/infra/firebase/auth/index.d.ts +2 -2
- package/infra/firebase/auth/register-firebase-auth.service.d.ts +8 -8
- package/infra/firebase/auth/types/firebase-user-with-id.type.d.ts +3 -3
- package/infra/firebase/firestore/index.d.ts +3 -3
- package/infra/firebase/firestore/mixins/index.d.ts +9 -9
- package/infra/firebase/firestore/mixins/with-create-firestore.mixin.d.ts +4 -4
- package/infra/firebase/firestore/mixins/with-crud-firestore.mixin.d.ts +4 -4
- package/infra/firebase/firestore/mixins/with-delete-firestore.mixin.d.ts +4 -4
- package/infra/firebase/firestore/mixins/with-find-firestore.mixin.d.ts +4 -4
- package/infra/firebase/firestore/mixins/with-firestore.mixin.d.ts +4 -4
- package/infra/firebase/firestore/mixins/with-get-firestore.mixin.d.ts +4 -4
- package/infra/firebase/firestore/mixins/with-helpers.mixin.d.ts +11 -11
- package/infra/firebase/firestore/mixins/with-sub-collection.mixin.d.ts +7 -7
- package/infra/firebase/firestore/mixins/with-update-firestore.mixin.d.ts +7 -7
- package/infra/firebase/firestore/models/user-search.d.ts +9 -9
- package/infra/firebase/firestore/repositories/catalog/category-firestore.repository.d.ts +17 -17
- package/infra/firebase/firestore/repositories/catalog/index.d.ts +4 -4
- package/infra/firebase/firestore/repositories/catalog/product-firestore.repository.d.ts +11 -11
- package/infra/firebase/firestore/repositories/catalog/product-variant-firestore.repository.d.ts +13 -13
- package/infra/firebase/firestore/repositories/catalog/subscription-product-firestore.repository.d.ts +8 -8
- package/infra/firebase/firestore/repositories/index.d.ts +4 -4
- package/infra/firebase/firestore/repositories/shop-settings/home-firestore.repository.d.ts +16 -16
- package/infra/firebase/firestore/repositories/shop-settings/index.d.ts +2 -2
- package/infra/firebase/firestore/repositories/shop-settings/shop-menu-firestore.repository.d.ts +8 -8
- package/infra/firebase/firestore/repositories/shopping/buy-2-win-firestore.repository.d.ts +8 -8
- package/infra/firebase/firestore/repositories/shopping/checkout-firestore.repository.d.ts +8 -8
- package/infra/firebase/firestore/repositories/shopping/checkout-subscription-firestore.repository.d.ts +8 -8
- package/infra/firebase/firestore/repositories/shopping/coupon-firestore.repository.d.ts +12 -12
- package/infra/firebase/firestore/repositories/shopping/index.d.ts +8 -8
- package/infra/firebase/firestore/repositories/shopping/legacy-order-firestore.repository.d.ts +7 -7
- package/infra/firebase/firestore/repositories/shopping/order-firestore.repository.d.ts +8 -8
- package/infra/firebase/firestore/repositories/shopping/payment-firestore.repository.d.ts +8 -8
- package/infra/firebase/firestore/repositories/shopping/subscription-plan-firestore.repository.d.ts +8 -8
- package/infra/firebase/firestore/repositories/users/index.d.ts +9 -9
- package/infra/firebase/firestore/repositories/users/lead-firestore.repository.d.ts +8 -8
- package/infra/firebase/firestore/repositories/users/subscription-edition-firestore.repository.d.ts +13 -13
- package/infra/firebase/firestore/repositories/users/subscription-firestore.repository.d.ts +8 -8
- package/infra/firebase/firestore/repositories/users/subscription-payment-firestore.repository.d.ts +13 -13
- package/infra/firebase/firestore/repositories/users/user-address-firestore.repository.d.ts +13 -13
- package/infra/firebase/firestore/repositories/users/user-beauty-profile-firestore.repository.d.ts +13 -13
- package/infra/firebase/firestore/repositories/users/user-firestore.repository.d.ts +19 -19
- package/infra/firebase/firestore/repositories/users/user-payment-method-firestore.repository.d.ts +13 -13
- package/infra/firebase/firestore/repositories/users/user-search-firestore.repository.d.ts +9 -9
- package/infra/firebase/firestore/types/firestore-sub.repository.type.d.ts +6 -6
- package/infra/firebase/firestore/types/firestore.helpers.type.d.ts +8 -8
- package/infra/firebase/firestore/types/firestore.repository.type.d.ts +12 -12
- package/infra/firebase/firestore/types/index.d.ts +3 -3
- package/infra/firebase/index.d.ts +2 -2
- package/infra/hasura-graphql/enums/hasura-graphql-column-type.enum.d.ts +11 -11
- package/infra/hasura-graphql/enums/hasura-graphql-where.enum.d.ts +13 -13
- package/infra/hasura-graphql/enums/index.d.ts +2 -2
- package/infra/hasura-graphql/index.d.ts +4 -4
- package/infra/hasura-graphql/mixins/helpers/attribute-option.helper.d.ts +13 -13
- package/infra/hasura-graphql/mixins/helpers/filter-option.helper.d.ts +6 -6
- package/infra/hasura-graphql/mixins/helpers/graphql-field.helper.d.ts +8 -8
- package/infra/hasura-graphql/mixins/helpers/index.d.ts +3 -3
- package/infra/hasura-graphql/mixins/index.d.ts +7 -7
- package/infra/hasura-graphql/mixins/with-create-hasura-graphql.mixin.d.ts +8 -8
- package/infra/hasura-graphql/mixins/with-crud-hasura-graphql.mixin.d.ts +11 -11
- package/infra/hasura-graphql/mixins/with-delete-hasura-graphql.mixin.d.ts +7 -7
- package/infra/hasura-graphql/mixins/with-find-hasura-graphql.mixin.d.ts +31 -31
- package/infra/hasura-graphql/mixins/with-get-hasura-graphql.mixin.d.ts +24 -24
- package/infra/hasura-graphql/mixins/with-hasura-graphql.mixin.d.ts +11 -11
- package/infra/hasura-graphql/mixins/with-update-hasura-graphql.mixin.d.ts +14 -14
- package/infra/hasura-graphql/models/category-hasura-graphql.d.ts +6 -6
- package/infra/hasura-graphql/models/index.d.ts +4 -4
- package/infra/hasura-graphql/models/kit-product-hasura-graphql.d.ts +6 -6
- package/infra/hasura-graphql/models/product-hasura-graphql.d.ts +9 -9
- package/infra/hasura-graphql/models/variant-hasura-graphql.d.ts +9 -9
- package/infra/hasura-graphql/repositories/catalog/category-hasura-graphql.repository.d.ts +22 -22
- package/infra/hasura-graphql/repositories/catalog/index.d.ts +3 -3
- package/infra/hasura-graphql/repositories/catalog/product-hasura-graphql.repository.d.ts +26 -26
- package/infra/hasura-graphql/repositories/catalog/variant-hasura-graphql.repository.d.ts +13 -13
- package/infra/hasura-graphql/repositories/index.d.ts +1 -1
- package/infra/hasura-graphql/types/fields.type.d.ts +2 -2
- package/infra/hasura-graphql/types/graphql.repository.type.d.ts +21 -21
- package/infra/hasura-graphql/types/hasura-graphql-auth-options.type.d.ts +8 -8
- package/infra/hasura-graphql/types/hasura-graphql-fields.type.d.ts +36 -36
- package/infra/hasura-graphql/types/hasura-graphql-headers.type.d.ts +7 -7
- package/infra/hasura-graphql/types/index.d.ts +8 -8
- package/infra/hasura-graphql/types/nested-field.type.d.ts +7 -7
- package/infra/hasura-graphql/types/query-builder-options.type.d.ts +7 -7
- package/infra/hasura-graphql/types/variable-options.type.d.ts +9 -9
- package/infra/index.d.ts +3 -3
- package/infrab4a-connect.d.ts +5 -5
- package/package.json +1 -1
- package/utils/index.d.ts +7 -7
- package/utils/is-uuid.d.ts +1 -1
- package/utils/mixins/base.mixin.d.ts +3 -3
- package/utils/mixins/index.d.ts +3 -3
- package/utils/mixins/merge-constructor-params.type.d.ts +3 -3
- package/utils/mixins/mixin-ctor.type.d.ts +1 -1
- package/utils/parse-datetime.d.ts +1 -1
- package/utils/types/array-element.type.d.ts +1 -1
- package/utils/types/index.d.ts +2 -2
- package/utils/types/prop.type.d.ts +1 -1
package/esm2015/infra/hasura-graphql/repositories/catalog/category-hasura-graphql.repository.js
CHANGED
|
@@ -1,135 +1,135 @@
|
|
|
1
|
-
import { __awaiter } from "tslib";
|
|
2
|
-
import { Category, Shops, Where } from '../../../../domain';
|
|
3
|
-
import { DuplicatedResultsError, NotFoundError, RequiredArgumentError } from '../../../../errors';
|
|
4
|
-
import { Base } from '../../../../utils';
|
|
5
|
-
import { HasuraGraphQLColumnType } from '../../enums';
|
|
6
|
-
import { withCrudHasuraGraphQL, withHasuraGraphQL } from '../../mixins';
|
|
7
|
-
export class CategoryHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGraphQL(Base)) {
|
|
8
|
-
constructor(endpoint, authOptions, productRepository) {
|
|
9
|
-
super({
|
|
10
|
-
tableName: 'category',
|
|
11
|
-
model: Category,
|
|
12
|
-
endpoint,
|
|
13
|
-
authOptions,
|
|
14
|
-
fields: [
|
|
15
|
-
{ id: { columnName: 'id', to: (value) => +value, from: (value) => value.toString() } },
|
|
16
|
-
{ firestoreId: { columnName: 'firestore_id' } },
|
|
17
|
-
'name',
|
|
18
|
-
'description',
|
|
19
|
-
'image',
|
|
20
|
-
'published',
|
|
21
|
-
'shop',
|
|
22
|
-
'slug',
|
|
23
|
-
{ brandCategory: { columnName: 'brand_category' } },
|
|
24
|
-
{ brandCategoryBanner: { columnName: 'brand_banner' } },
|
|
25
|
-
{ brandCategoryBannerMobile: { columnName: 'brand_banner_mobile' } },
|
|
26
|
-
{ brandLogo: { columnName: 'brand_logo' } },
|
|
27
|
-
{ brandCondition: { columnName: 'brand_condition' } },
|
|
28
|
-
{
|
|
29
|
-
conditions: {
|
|
30
|
-
columnName: 'tag_condition',
|
|
31
|
-
type: HasuraGraphQLColumnType.Jsonb,
|
|
32
|
-
from: (tags, row) => ({ brand: row.brand_condition, tags: Array.isArray(tags) ? tags : [] }),
|
|
33
|
-
bindPersistData: (value) => {
|
|
34
|
-
var _a, _b;
|
|
35
|
-
return {
|
|
36
|
-
brand_condition: value.brand,
|
|
37
|
-
tag_condition: `{"${((_b = (_a = value === null || value === void 0 ? void 0 : value.tags) === null || _a === void 0 ? void 0 : _a.join) === null || _b === void 0 ? void 0 : _b.call(_a, '","')) || ''}"}`,
|
|
38
|
-
};
|
|
39
|
-
},
|
|
40
|
-
bindFindFilter: (sentence) => {
|
|
41
|
-
return Object.assign(Object.assign({}, (sentence.brand ? { brand_condition: sentence.brand } : {})), (sentence.tags ? { tag_condition: sentence.tags } : {}));
|
|
42
|
-
},
|
|
43
|
-
},
|
|
44
|
-
},
|
|
45
|
-
'filters',
|
|
46
|
-
{ createdAt: { columnName: 'created_at' } },
|
|
47
|
-
{ updatedAt: { columnName: 'updated_at' } },
|
|
48
|
-
{
|
|
49
|
-
products: {
|
|
50
|
-
columnName: 'products',
|
|
51
|
-
fields: ['product_id'],
|
|
52
|
-
from: (value) => value.map((product) => product.product_id.toString()),
|
|
53
|
-
to: (productIds) => productIds.map((productId) => ({
|
|
54
|
-
product_id: +productId,
|
|
55
|
-
})),
|
|
56
|
-
},
|
|
57
|
-
},
|
|
58
|
-
],
|
|
59
|
-
});
|
|
60
|
-
this.productRepository = productRepository;
|
|
61
|
-
}
|
|
62
|
-
get(identifiers) {
|
|
63
|
-
const _super = Object.create(null, {
|
|
64
|
-
get: { get: () => super.get }
|
|
65
|
-
});
|
|
66
|
-
var _a;
|
|
67
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
68
|
-
return Number.isNaN(+identifiers.id)
|
|
69
|
-
? (_a = (yield this.find({ filters: { firestoreId: identifiers.id } })).data) === null || _a === void 0 ? void 0 : _a[0]
|
|
70
|
-
: _super.get.call(this, identifiers);
|
|
71
|
-
});
|
|
72
|
-
}
|
|
73
|
-
getCategoryBySlug(slug, shop) {
|
|
74
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
75
|
-
if (!slug)
|
|
76
|
-
return;
|
|
77
|
-
const { data, count } = yield this.find({ filters: { slug, shop, published: true } });
|
|
78
|
-
if (count > 1)
|
|
79
|
-
throw new DuplicatedResultsError('Query returned duplicated values');
|
|
80
|
-
if (!count)
|
|
81
|
-
throw new NotFoundError(`Category with slug ${slug} not found`);
|
|
82
|
-
return data.shift();
|
|
83
|
-
});
|
|
84
|
-
}
|
|
85
|
-
getCategoriesForHome(categoryIds, limit = 4) {
|
|
86
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
87
|
-
const { data: categories, count } = yield this.find({
|
|
88
|
-
filters: { firestoreId: { operator: Where.IN, value: categoryIds.filter(Boolean) }, published: true },
|
|
89
|
-
});
|
|
90
|
-
if (!count)
|
|
91
|
-
throw new NotFoundError('Categories not found');
|
|
92
|
-
const homeSections = yield Promise.all(categories.map((category) => __awaiter(this, void 0, void 0, function* () {
|
|
93
|
-
return ({
|
|
94
|
-
category,
|
|
95
|
-
products: yield this.mountCategory(category, { limit, hasStock: true }),
|
|
96
|
-
});
|
|
97
|
-
})));
|
|
98
|
-
return homeSections;
|
|
99
|
-
});
|
|
100
|
-
}
|
|
101
|
-
mountCategory(category, options) {
|
|
102
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
103
|
-
if (!category.products)
|
|
104
|
-
throw new RequiredArgumentError(['Category products is empty']);
|
|
105
|
-
const products = [];
|
|
106
|
-
const publishedField = category.shop === Shops.GLAMSHOP ? 'publishedGlam' : 'published';
|
|
107
|
-
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: [
|
|
108
|
-
'id',
|
|
109
|
-
'name',
|
|
110
|
-
'slug',
|
|
111
|
-
'images',
|
|
112
|
-
'miniatures',
|
|
113
|
-
'price',
|
|
114
|
-
'fullPrice',
|
|
115
|
-
'subscriberDiscountPercentage',
|
|
116
|
-
'subscriberPrice',
|
|
117
|
-
'stock',
|
|
118
|
-
'published',
|
|
119
|
-
'publishedGlam',
|
|
120
|
-
'CEST',
|
|
121
|
-
'EAN',
|
|
122
|
-
'NCM',
|
|
123
|
-
'brand',
|
|
124
|
-
'costPrice',
|
|
125
|
-
'hasVariants',
|
|
126
|
-
'isKit',
|
|
127
|
-
'shopAvailability',
|
|
128
|
-
'sku',
|
|
129
|
-
] }, ((options === null || options === void 0 ? void 0 : options.limit) ? { limits: { limit: options === null || options === void 0 ? void 0 : options.limit } } : {})));
|
|
130
|
-
products.push(...productsData);
|
|
131
|
-
return products;
|
|
132
|
-
});
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktaGFzdXJhLWdyYXBocWwucmVwb3NpdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2hhc3VyYS1ncmFwaHFsL3JlcG9zaXRvcmllcy9jYXRhbG9nL2NhdGVnb3J5LWhhc3VyYS1ncmFwaHFsLnJlcG9zaXRvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQW9ELEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUM3RyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsYUFBYSxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFDakcsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBQ3hDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUNyRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFNdkUsTUFBTSxPQUFPLCtCQUNYLFNBQVEscUJBQXFCLENBQUMsaUJBQWlCLENBQXdCLElBQUksQ0FBQyxDQUFDO0lBRzdFLFlBQ0UsUUFBZ0IsRUFDaEIsV0FBcUMsRUFDcEIsaUJBQWlEO1FBRWxFLEtBQUssQ0FBQztZQUNKLFNBQVMsRUFBRSxVQUFVO1lBQ3JCLEtBQUssRUFBRSxRQUFRO1lBQ2YsUUFBUTtZQUNSLFdBQVc7WUFDWCxNQUFNLEVBQUU7Z0JBQ04sRUFBRSxFQUFFLEVBQUUsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLEVBQUUsRUFBRTtnQkFDdEYsRUFBRSxXQUFXLEVBQUUsRUFBRSxVQUFV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LE1BQU07b0JBQ04sTUFBTTtvQkFDTixRQUFRO29CQUNSLFlBQVk7b0JBQ1osT0FBTztvQkFDUCxXQUFXO29CQUNYLDhCQUE4QjtvQkFDOUIsaUJBQWlCO29CQUNqQixPQUFPO29CQUNQLFdBQVc7b0JBQ1gsZUFBZTtvQkFDZixNQUFNO29CQUNOLEtBQUs7b0JBQ0wsS0FBSztvQkFDTCxPQUFPO29CQUNQLFdBQVc7b0JBQ1gsYUFBYTtvQkFDYixPQUFPO29CQUNQLGtCQUFrQjtvQkFDbEIsS0FBSztpQkFDTixJQUNFLENBQUMsQ0FBQSxPQUFPLGFBQVAsT0FBTyx1QkFBUCxPQUFPLENBQUUsS0FBSyxFQUFDLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxFQUFFLEtBQUssRUFBRSxPQUFPLGFBQVAsT0FBTyx1QkFBUCxPQUFPLENBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQ2hFLENBQUE7WUFFRixRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsWUFBWSxDQUFDLENBQUE7WUFFOUIsT0FBTyxRQUFRLENBQUE7UUFDakIsQ0FBQztLQUFBO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDYXRlZ29yeSwgQ2F0ZWdvcnlSZXBvc2l0b3J5LCBHZXRSZXBvc2l0b3J5UGFyYW1zLCBQcm9kdWN0LCBTaG9wcywgV2hlcmUgfSBmcm9tICcuLi8uLi8uLi8uLi9kb21haW4nXHJcbmltcG9ydCB7IER1cGxpY2F0ZWRSZXN1bHRzRXJyb3IsIE5vdEZvdW5kRXJyb3IsIFJlcXVpcmVkQXJndW1lbnRFcnJvciB9IGZyb20gJy4uLy4uLy4uLy4uL2Vycm9ycydcclxuaW1wb3J0IHsgQmFzZSB9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWxzJ1xyXG5pbXBvcnQgeyBIYXN1cmFHcmFwaFFMQ29sdW1uVHlwZSB9IGZyb20gJy4uLy4uL2VudW1zJ1xyXG5pbXBvcnQgeyB3aXRoQ3J1ZEhhc3VyYUdyYXBoUUwsIHdpdGhIYXN1cmFHcmFwaFFMIH0gZnJvbSAnLi4vLi4vbWl4aW5zJ1xyXG5pbXBvcnQgeyBDYXRlZ29yeUhhc3VyYUdyYXBoUUwgfSBmcm9tICcuLi8uLi9tb2RlbHMnXHJcbmltcG9ydCB7IEhhc3VyYUdyYXBoUUxBdXRoT3B0aW9ucyB9IGZyb20gJy4uLy4uL3R5cGVzJ1xyXG5cclxuaW1wb3J0IHsgUHJvZHVjdEhhc3VyYUdyYXBoUUxSZXBvc2l0b3J5IH0gZnJvbSAnLi9wcm9kdWN0LWhhc3VyYS1ncmFwaHFsLnJlcG9zaXRvcnknXHJcblxyXG5leHBvcnQgY2xhc3MgQ2F0ZWdvcnlIYXN1cmFHcmFwaFFMUmVwb3NpdG9yeVxyXG4gIGV4dGVuZHMgd2l0aENydWRIYXN1cmFHcmFwaFFMKHdpdGhIYXN1cmFHcmFwaFFMPENhdGVnb3J5SGFzdXJhR3JhcGhRTD4oQmFzZSkpXHJcbiAgaW1wbGVtZW50cyBDYXRlZ29yeVJlcG9zaXRvcnlcclxue1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgZW5kcG9pbnQ6IHN0cmluZyxcclxuICAgIGF1dGhPcHRpb25zOiBIYXN1cmFHcmFwaFFMQXV0aE9wdGlvbnMsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IHByb2R1Y3RSZXBvc2l0b3J5OiBQcm9kdWN0SGFzdXJhR3JhcGhRTFJlcG9zaXRvcnksXHJcbiAgKSB7XHJcbiAgICBzdXBlcih7XHJcbiAgICAgIHRhYmxlTmFtZTogJ2NhdGVnb3J5JyxcclxuICAgICAgbW9kZWw6IENhdGVnb3J5LFxyXG4gICAgICBlbmRwb2ludCxcclxuICAgICAgYXV0aE9wdGlvbnMsXHJcbiAgICAgIGZpZWxkczogW1xyXG4gICAgICAgIHsgaWQ6IHsgY29sdW1uTmFtZTogJ2lkJywgdG86ICh2YWx1ZSkgPT4gK3ZhbHVlLCBmcm9tOiAodmFsdWUpID0+IHZhbHVlLnRvU3RyaW5nKCkgfSB9LFxyXG4gICAgICAgIHsgZmlyZXN0b3JlSWQ6IHsgY29sdW1uTmFtZTogJ2ZpcmVzdG9yZV9pZCcgfSB9LFxyXG4gICAgICAgICduYW1lJyxcclxuICAgICAgICAnZGVzY3JpcHRpb24nLFxyXG4gICAgICAgICdpbWFnZScsXHJcbiAgICAgICAgJ3B1Ymxpc2hlZCcsXHJcbiAgICAgICAgJ3Nob3AnLFxyXG4gICAgICAgICdzbHVnJyxcclxuICAgICAgICB7IGJyYW5kQ2F0ZWdvcnk6IHsgY29sdW1uTmFtZTogJ2JyYW5kX2NhdGVnb3J5JyB9IH0sXHJcbiAgICAgICAgeyBicmFuZENhdGVnb3J5QmFubmVyOiB7IGNvbHVtbk5hbWU6ICdicmFuZF9iYW5uZXInIH0gfSxcclxuICAgICAgICB7IGJyYW5kQ2F0ZWdvcnlCYW5uZXJNb2JpbGU6IHsgY29sdW1uTmFtZTogJ2JyYW5kX2Jhbm5lcl9tb2JpbGUnIH0gfSxcclxuICAgICAgICB7IGJyYW5kTG9nbzogeyBjb2x1bW5OYW1lOiAnYnJhbmRfbG9nbycgfSB9LFxyXG4gICAgICAgIHsgYnJhbmRDb25kaXRpb246IHsgY29sdW1uTmFtZTogJ2JyYW5kX2NvbmRpdGlvbicgfSB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIGNvbmRpdGlvbnM6IHtcclxuICAgICAgICAgICAgY29sdW1uTmFtZTogJ3RhZ19jb25kaXRpb24nLFxyXG4gICAgICAgICAgICB0eXBlOiBIYXN1cmFHcmFwaFFMQ29sdW1uVHlwZS5Kc29uYixcclxuICAgICAgICAgICAgZnJvbTogKHRhZ3M6IHN0cmluZ1tdLCByb3cpID0+ICh7IGJyYW5kOiByb3cuYnJhbmRfY29uZGl0aW9uLCB0YWdzOiBBcnJheS5pc0FycmF5KHRhZ3MpID8gdGFncyA6IFtdIH0pLFxyXG4gICAgICAgICAgICBiaW5kUGVyc2lzdERhdGE6ICh2YWx1ZSkgPT4ge1xyXG4gICAgICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgICAgICBicmFuZF9jb25kaXRpb246IHZhbHVlLmJyYW5kLFxyXG4gICAgICAgICAgICAgICAgdGFnX2NvbmRpdGlvbjogYHtcIiR7dmFsdWU/LnRhZ3M/LmpvaW4/LignXCIsXCInKSB8fCAnJ31cIn1gLFxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgYmluZEZpbmRGaWx0ZXI6IChzZW50ZW5jZTogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgICAgIC4uLihzZW50ZW5jZS5icmFuZCA/IHsgYnJhbmRfY29uZGl0aW9uOiBzZW50ZW5jZS5icmFuZCB9IDoge30pLFxyXG4gICAgICAgICAgICAgICAgLi4uKHNlbnRlbmNlLnRhZ3MgPyB7IHRhZ19jb25kaXRpb246IHNlbnRlbmNlLnRhZ3MgfSA6IHt9KSxcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgJ2ZpbHRlcnMnLFxyXG4gICAgICAgIHsgY3JlYXRlZEF0OiB7IGNvbHVtbk5hbWU6ICdjcmVhdGVkX2F0JyB9IH0sXHJcbiAgICAgICAgeyB1cGRhdGVkQXQ6IHsgY29sdW1uTmFtZTogJ3VwZGF0ZWRfYXQnIH0gfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICBwcm9kdWN0czoge1xyXG4gICAgICAgICAgICBjb2x1bW5OYW1lOiAncHJvZHVjdHMnLFxyXG4gICAgICAgICAgICBmaWVsZHM6IFsncHJvZHVjdF9pZCddLFxyXG4gICAgICAgICAgICBmcm9tOiAodmFsdWU6IHsgcHJvZHVjdF9pZDogbnVtYmVyIH1bXSkgPT4gdmFsdWUubWFwKChwcm9kdWN0KSA9PiBwcm9kdWN0LnByb2R1Y3RfaWQudG9TdHJpbmcoKSksXHJcbiAgICAgICAgICAgIHRvOiAocHJvZHVjdElkcykgPT5cclxuICAgICAgICAgICAgICBwcm9kdWN0SWRzLm1hcCgocHJvZHVjdElkKSA9PiAoe1xyXG4gICAgICAgICAgICAgICAgcHJvZHVjdF9pZDogK3Byb2R1Y3RJZCxcclxuICAgICAgICAgICAgICB9KSksXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcbiAgICAgIF0sXHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgYXN5bmMgZ2V0KGlkZW50aWZpZXJzOiBHZXRSZXBvc2l0b3J5UGFyYW1zPENhdGVnb3J5SGFzdXJhR3JhcGhRTD4pOiBQcm9taXNlPENhdGVnb3J5SGFzdXJhR3JhcGhRTD4ge1xyXG4gICAgcmV0dXJuIE51bWJlci5pc05hTigraWRlbnRpZmllcnMuaWQpXHJcbiAgICAgID8gKGF3YWl0IHRoaXMuZmluZCh7IGZpbHRlcnM6IHsgZmlyZXN0b3JlSWQ6IGlkZW50aWZpZXJzLmlkIH0gfSkpLmRhdGE/LlswXVxyXG4gICAgICA6IHN1cGVyLmdldChpZGVudGlmaWVycylcclxuICB9XHJcblxyXG4gIGFzeW5jIGdldENhdGVnb3J5QnlTbHVnKHNsdWc6IHN0cmluZywgc2hvcDogU2hvcHMpOiBQcm9taXNlPENhdGVnb3J5PiB7XHJcbiAgICBpZiAoIXNsdWcpIHJldHVyblxyXG5cclxuICAgIGNvbnN0IHsgZGF0YSwgY291bnQgfSA9IGF3YWl0IHRoaXMuZmluZCh7IGZpbHRlcnM6IHsgc2x1Zywgc2hvcCwgcHVibGlzaGVkOiB0cnVlIH0gfSlcclxuXHJcbiAgICBpZiAoY291bnQgPiAxKSB0aHJvdyBuZXcgRHVwbGljYXRlZFJlc3VsdHNFcnJvcignUXVlcnkgcmV0dXJuZWQgZHVwbGljYXRlZCB2YWx1ZXMnKVxyXG4gICAgaWYgKCFjb3VudCkgdGhyb3cgbmV3IE5vdEZvdW5kRXJyb3IoYENhdGVnb3J5IHdpdGggc2x1ZyAke3NsdWd9IG5vdCBmb3VuZGApXHJcblxyXG4gICAgcmV0dXJuIGRhdGEuc2hpZnQoKVxyXG4gIH1cclxuXHJcbiAgYXN5bmMgZ2V0Q2F0ZWdvcmllc0ZvckhvbWUoY2F0ZWdvcnlJZHM6IHN0cmluZ1tdLCBsaW1pdCA9IDQpOiBQcm9taXNlPHsgY2F0ZWdvcnk6IENhdGVnb3J5OyBwcm9kdWN0czogUHJvZHVjdFtdIH1bXT4ge1xyXG4gICAgY29uc3QgeyBkYXRhOiBjYXRlZ29yaWVzLCBjb3VudCB9ID0gYXdhaXQgdGhpcy5maW5kKHtcclxuICAgICAgZmlsdGVyczogeyBmaXJlc3RvcmVJZDogeyBvcGVyYXRvcjogV2hlcmUuSU4sIHZhbHVlOiBjYXRlZ29yeUlkcy5maWx0ZXIoQm9vbGVhbikgfSwgcHVibGlzaGVkOiB0cnVlIH0sXHJcbiAgICB9KVxyXG5cclxuICAgIGlmICghY291bnQpIHRocm93IG5ldyBOb3RGb3VuZEVycm9yKCdDYXRlZ29yaWVzIG5vdCBmb3VuZCcpXHJcblxyXG4gICAgY29uc3QgaG9tZVNlY3Rpb25zID0gYXdhaXQgUHJvbWlzZS5hbGwoXHJcbiAgICAgIGNhdGVnb3JpZXMubWFwKGFzeW5jIChjYXRlZ29yeSkgPT4gKHtcclxuICAgICAgICBjYXRlZ29yeSxcclxuICAgICAgICBwcm9kdWN0czogYXdhaXQgdGhpcy5tb3VudENhdGVnb3J5KGNhdGVnb3J5LCB7IGxpbWl0LCBoYXNTdG9jazogdHJ1ZSB9KSxcclxuICAgICAgfSkpLFxyXG4gICAgKVxyXG5cclxuICAgIHJldHVybiBob21lU2VjdGlvbnNcclxuICB9XHJcblxyXG4gIGFzeW5jIG1vdW50Q2F0ZWdvcnkoY2F0ZWdvcnk6IENhdGVnb3J5LCBvcHRpb25zPzogeyBsaW1pdD86IG51bWJlcjsgaGFzU3RvY2s/OiBib29sZWFuIH0pOiBQcm9taXNlPFByb2R1Y3RbXT4ge1xyXG4gICAgaWYgKCFjYXRlZ29yeS5wcm9kdWN0cykgdGhyb3cgbmV3IFJlcXVpcmVkQXJndW1lbnRFcnJvcihbJ0NhdGVnb3J5IHByb2R1Y3RzIGlzIGVtcHR5J10pXHJcblxyXG4gICAgY29uc3QgcHJvZHVjdHMgPSBbXVxyXG4gICAgY29uc3QgcHVibGlzaGVkRmllbGQgPSBjYXRlZ29yeS5zaG9wID09PSBTaG9wcy5HTEFNU0hPUCA/ICdwdWJsaXNoZWRHbGFtJyA6ICdwdWJsaXNoZWQnXHJcbiAgICBjb25zdCB7IGRhdGE6IHByb2R1Y3RzRGF0YSB9ID0gYXdhaXQgdGhpcy5wcm9kdWN0UmVwb3NpdG9yeS5maW5kKHtcclxuICAgICAgZmlsdGVyczoge1xyXG4gICAgICAgIGlkOiB7IG9wZXJhdG9yOiBXaGVyZS5JTiwgdmFsdWU6IGNhdGVnb3J5LnByb2R1Y3RzIH0sXHJcbiAgICAgICAgW3B1Ymxpc2hlZEZpZWxkXTogdHJ1ZSxcclxuICAgICAgICAuLi4ob3B0aW9ucz8uaGFzU3RvY2sgPyB7IHN0b2NrOiB7IHF1YW50aXR5OiB7IG9wZXJhdG9yOiBXaGVyZS5HVCwgdmFsdWU6IDAgfSB9IH0gOiB7fSksXHJcbiAgICAgIH0sXHJcbiAgICAgIGZpZWxkczogW1xyXG4gICAgICAgICdpZCcsXHJcbiAgICAgICAgJ25hbWUnLFxyXG4gICAgICAgICdzbHVnJyxcclxuICAgICAgICAnaW1hZ2VzJyxcclxuICAgICAgICAnbWluaWF0dXJlcycsXHJcbiAgICAgICAgJ3ByaWNlJyxcclxuICAgICAgICAnZnVsbFByaWNlJyxcclxuICAgICAgICAnc3Vic2NyaWJlckRpc2NvdW50UGVyY2VudGFnZScsXHJcbiAgICAgICAgJ3N1YnNjcmliZXJQcmljZScsXHJcbiAgICAgICAgJ3N0b2NrJyxcclxuICAgICAgICAncHVibGlzaGVkJyxcclxuICAgICAgICAncHVibGlzaGVkR2xhbScsXHJcbiAgICAgICAgJ0NFU1QnLFxyXG4gICAgICAgICdFQU4nLFxyXG4gICAgICAgICdOQ00nLFxyXG4gICAgICAgICdicmFuZCcsXHJcbiAgICAgICAgJ2Nvc3RQcmljZScsXHJcbiAgICAgICAgJ2hhc1ZhcmlhbnRzJyxcclxuICAgICAgICAnaXNLaXQnLFxyXG4gICAgICAgICdzaG9wQXZhaWxhYmlsaXR5JyxcclxuICAgICAgICAnc2t1JyxcclxuICAgICAgXSxcclxuICAgICAgLi4uKG9wdGlvbnM/LmxpbWl0ID8geyBsaW1pdHM6IHsgbGltaXQ6IG9wdGlvbnM/LmxpbWl0IH0gfSA6IHt9KSxcclxuICAgIH0pXHJcblxyXG4gICAgcHJvZHVjdHMucHVzaCguLi5wcm9kdWN0c0RhdGEpXHJcblxyXG4gICAgcmV0dXJuIHByb2R1Y3RzXHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
1
|
+
import { __awaiter } from "tslib";
|
|
2
|
+
import { Category, Shops, Where } from '../../../../domain';
|
|
3
|
+
import { DuplicatedResultsError, NotFoundError, RequiredArgumentError } from '../../../../errors';
|
|
4
|
+
import { Base } from '../../../../utils';
|
|
5
|
+
import { HasuraGraphQLColumnType } from '../../enums';
|
|
6
|
+
import { withCrudHasuraGraphQL, withHasuraGraphQL } from '../../mixins';
|
|
7
|
+
export class CategoryHasuraGraphQLRepository extends withCrudHasuraGraphQL(withHasuraGraphQL(Base)) {
|
|
8
|
+
constructor(endpoint, authOptions, productRepository) {
|
|
9
|
+
super({
|
|
10
|
+
tableName: 'category',
|
|
11
|
+
model: Category,
|
|
12
|
+
endpoint,
|
|
13
|
+
authOptions,
|
|
14
|
+
fields: [
|
|
15
|
+
{ id: { columnName: 'id', to: (value) => +value, from: (value) => value.toString() } },
|
|
16
|
+
{ firestoreId: { columnName: 'firestore_id' } },
|
|
17
|
+
'name',
|
|
18
|
+
'description',
|
|
19
|
+
'image',
|
|
20
|
+
'published',
|
|
21
|
+
'shop',
|
|
22
|
+
'slug',
|
|
23
|
+
{ brandCategory: { columnName: 'brand_category' } },
|
|
24
|
+
{ brandCategoryBanner: { columnName: 'brand_banner' } },
|
|
25
|
+
{ brandCategoryBannerMobile: { columnName: 'brand_banner_mobile' } },
|
|
26
|
+
{ brandLogo: { columnName: 'brand_logo' } },
|
|
27
|
+
{ brandCondition: { columnName: 'brand_condition' } },
|
|
28
|
+
{
|
|
29
|
+
conditions: {
|
|
30
|
+
columnName: 'tag_condition',
|
|
31
|
+
type: HasuraGraphQLColumnType.Jsonb,
|
|
32
|
+
from: (tags, row) => ({ brand: row.brand_condition, tags: Array.isArray(tags) ? tags : [] }),
|
|
33
|
+
bindPersistData: (value) => {
|
|
34
|
+
var _a, _b;
|
|
35
|
+
return {
|
|
36
|
+
brand_condition: value.brand,
|
|
37
|
+
tag_condition: `{"${((_b = (_a = value === null || value === void 0 ? void 0 : value.tags) === null || _a === void 0 ? void 0 : _a.join) === null || _b === void 0 ? void 0 : _b.call(_a, '","')) || ''}"}`,
|
|
38
|
+
};
|
|
39
|
+
},
|
|
40
|
+
bindFindFilter: (sentence) => {
|
|
41
|
+
return Object.assign(Object.assign({}, (sentence.brand ? { brand_condition: sentence.brand } : {})), (sentence.tags ? { tag_condition: sentence.tags } : {}));
|
|
42
|
+
},
|
|
43
|
+
},
|
|
44
|
+
},
|
|
45
|
+
'filters',
|
|
46
|
+
{ createdAt: { columnName: 'created_at' } },
|
|
47
|
+
{ updatedAt: { columnName: 'updated_at' } },
|
|
48
|
+
{
|
|
49
|
+
products: {
|
|
50
|
+
columnName: 'products',
|
|
51
|
+
fields: ['product_id'],
|
|
52
|
+
from: (value) => value.map((product) => product.product_id.toString()),
|
|
53
|
+
to: (productIds) => productIds.map((productId) => ({
|
|
54
|
+
product_id: +productId,
|
|
55
|
+
})),
|
|
56
|
+
},
|
|
57
|
+
},
|
|
58
|
+
],
|
|
59
|
+
});
|
|
60
|
+
this.productRepository = productRepository;
|
|
61
|
+
}
|
|
62
|
+
get(identifiers) {
|
|
63
|
+
const _super = Object.create(null, {
|
|
64
|
+
get: { get: () => super.get }
|
|
65
|
+
});
|
|
66
|
+
var _a;
|
|
67
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
68
|
+
return Number.isNaN(+identifiers.id)
|
|
69
|
+
? (_a = (yield this.find({ filters: { firestoreId: identifiers.id } })).data) === null || _a === void 0 ? void 0 : _a[0]
|
|
70
|
+
: _super.get.call(this, identifiers);
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
getCategoryBySlug(slug, shop) {
|
|
74
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
75
|
+
if (!slug)
|
|
76
|
+
return;
|
|
77
|
+
const { data, count } = yield this.find({ filters: { slug, shop, published: true } });
|
|
78
|
+
if (count > 1)
|
|
79
|
+
throw new DuplicatedResultsError('Query returned duplicated values');
|
|
80
|
+
if (!count)
|
|
81
|
+
throw new NotFoundError(`Category with slug ${slug} not found`);
|
|
82
|
+
return data.shift();
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
getCategoriesForHome(categoryIds, limit = 4) {
|
|
86
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
87
|
+
const { data: categories, count } = yield this.find({
|
|
88
|
+
filters: { firestoreId: { operator: Where.IN, value: categoryIds.filter(Boolean) }, published: true },
|
|
89
|
+
});
|
|
90
|
+
if (!count)
|
|
91
|
+
throw new NotFoundError('Categories not found');
|
|
92
|
+
const homeSections = yield Promise.all(categories.map((category) => __awaiter(this, void 0, void 0, function* () {
|
|
93
|
+
return ({
|
|
94
|
+
category,
|
|
95
|
+
products: yield this.mountCategory(category, { limit, hasStock: true }),
|
|
96
|
+
});
|
|
97
|
+
})));
|
|
98
|
+
return homeSections;
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
mountCategory(category, options) {
|
|
102
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
103
|
+
if (!category.products)
|
|
104
|
+
throw new RequiredArgumentError(['Category products is empty']);
|
|
105
|
+
const products = [];
|
|
106
|
+
const publishedField = category.shop === Shops.GLAMSHOP ? 'publishedGlam' : 'published';
|
|
107
|
+
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: [
|
|
108
|
+
'id',
|
|
109
|
+
'name',
|
|
110
|
+
'slug',
|
|
111
|
+
'images',
|
|
112
|
+
'miniatures',
|
|
113
|
+
'price',
|
|
114
|
+
'fullPrice',
|
|
115
|
+
'subscriberDiscountPercentage',
|
|
116
|
+
'subscriberPrice',
|
|
117
|
+
'stock',
|
|
118
|
+
'published',
|
|
119
|
+
'publishedGlam',
|
|
120
|
+
'CEST',
|
|
121
|
+
'EAN',
|
|
122
|
+
'NCM',
|
|
123
|
+
'brand',
|
|
124
|
+
'costPrice',
|
|
125
|
+
'hasVariants',
|
|
126
|
+
'isKit',
|
|
127
|
+
'shopAvailability',
|
|
128
|
+
'sku',
|
|
129
|
+
] }, ((options === null || options === void 0 ? void 0 : options.limit) ? { limits: { limit: options === null || options === void 0 ? void 0 : options.limit } } : {})));
|
|
130
|
+
products.push(...productsData);
|
|
131
|
+
return products;
|
|
132
|
+
});
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktaGFzdXJhLWdyYXBocWwucmVwb3NpdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3Qvc3JjL2luZnJhL2hhc3VyYS1ncmFwaHFsL3JlcG9zaXRvcmllcy9jYXRhbG9nL2NhdGVnb3J5LWhhc3VyYS1ncmFwaHFsLnJlcG9zaXRvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQW9ELEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUM3RyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsYUFBYSxFQUFFLHFCQUFxQixFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFDakcsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBQ3hDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUNyRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFNdkUsTUFBTSxPQUFPLCtCQUNYLFNBQVEscUJBQXFCLENBQUMsaUJBQWlCLENBQXdCLElBQUksQ0FBQyxDQUFDO0lBRzdFLFlBQ0UsUUFBZ0IsRUFDaEIsV0FBcUMsRUFDcEIsaUJBQWlEO1FBRWxFLEtBQUssQ0FBQztZQUNKLFNBQVMsRUFBRSxVQUFVO1lBQ3JCLEtBQUssRUFBRSxRQUFRO1lBQ2YsUUFBUTtZQUNSLFdBQVc7WUFDWCxNQUFNLEVBQUU7Z0JBQ04sRUFBRSxFQUFFLEVBQUUsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLEVBQUUsRUFBRTtnQkFDdEYsRUFBRSxXQUFXLEVBQUUsRUFBRSxVQUFV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LE1BQU07b0JBQ04sTUFBTTtvQkFDTixRQUFRO29CQUNSLFlBQVk7b0JBQ1osT0FBTztvQkFDUCxXQUFXO29CQUNYLDhCQUE4QjtvQkFDOUIsaUJBQWlCO29CQUNqQixPQUFPO29CQUNQLFdBQVc7b0JBQ1gsZUFBZTtvQkFDZixNQUFNO29CQUNOLEtBQUs7b0JBQ0wsS0FBSztvQkFDTCxPQUFPO29CQUNQLFdBQVc7b0JBQ1gsYUFBYTtvQkFDYixPQUFPO29CQUNQLGtCQUFrQjtvQkFDbEIsS0FBSztpQkFDTixJQUNFLENBQUMsQ0FBQSxPQUFPLGFBQVAsT0FBTyx1QkFBUCxPQUFPLENBQUUsS0FBSyxFQUFDLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxFQUFFLEtBQUssRUFBRSxPQUFPLGFBQVAsT0FBTyx1QkFBUCxPQUFPLENBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQ2hFLENBQUE7WUFFRixRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsWUFBWSxDQUFDLENBQUE7WUFFOUIsT0FBTyxRQUFRLENBQUE7UUFDakIsQ0FBQztLQUFBO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDYXRlZ29yeSwgQ2F0ZWdvcnlSZXBvc2l0b3J5LCBHZXRSZXBvc2l0b3J5UGFyYW1zLCBQcm9kdWN0LCBTaG9wcywgV2hlcmUgfSBmcm9tICcuLi8uLi8uLi8uLi9kb21haW4nXG5pbXBvcnQgeyBEdXBsaWNhdGVkUmVzdWx0c0Vycm9yLCBOb3RGb3VuZEVycm9yLCBSZXF1aXJlZEFyZ3VtZW50RXJyb3IgfSBmcm9tICcuLi8uLi8uLi8uLi9lcnJvcnMnXG5pbXBvcnQgeyBCYXNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vdXRpbHMnXG5pbXBvcnQgeyBIYXN1cmFHcmFwaFFMQ29sdW1uVHlwZSB9IGZyb20gJy4uLy4uL2VudW1zJ1xuaW1wb3J0IHsgd2l0aENydWRIYXN1cmFHcmFwaFFMLCB3aXRoSGFzdXJhR3JhcGhRTCB9IGZyb20gJy4uLy4uL21peGlucydcbmltcG9ydCB7IENhdGVnb3J5SGFzdXJhR3JhcGhRTCB9IGZyb20gJy4uLy4uL21vZGVscydcbmltcG9ydCB7IEhhc3VyYUdyYXBoUUxBdXRoT3B0aW9ucyB9IGZyb20gJy4uLy4uL3R5cGVzJ1xuXG5pbXBvcnQgeyBQcm9kdWN0SGFzdXJhR3JhcGhRTFJlcG9zaXRvcnkgfSBmcm9tICcuL3Byb2R1Y3QtaGFzdXJhLWdyYXBocWwucmVwb3NpdG9yeSdcblxuZXhwb3J0IGNsYXNzIENhdGVnb3J5SGFzdXJhR3JhcGhRTFJlcG9zaXRvcnlcbiAgZXh0ZW5kcyB3aXRoQ3J1ZEhhc3VyYUdyYXBoUUwod2l0aEhhc3VyYUdyYXBoUUw8Q2F0ZWdvcnlIYXN1cmFHcmFwaFFMPihCYXNlKSlcbiAgaW1wbGVtZW50cyBDYXRlZ29yeVJlcG9zaXRvcnlcbntcbiAgY29uc3RydWN0b3IoXG4gICAgZW5kcG9pbnQ6IHN0cmluZyxcbiAgICBhdXRoT3B0aW9uczogSGFzdXJhR3JhcGhRTEF1dGhPcHRpb25zLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcHJvZHVjdFJlcG9zaXRvcnk6IFByb2R1Y3RIYXN1cmFHcmFwaFFMUmVwb3NpdG9yeSxcbiAgKSB7XG4gICAgc3VwZXIoe1xuICAgICAgdGFibGVOYW1lOiAnY2F0ZWdvcnknLFxuICAgICAgbW9kZWw6IENhdGVnb3J5LFxuICAgICAgZW5kcG9pbnQsXG4gICAgICBhdXRoT3B0aW9ucyxcbiAgICAgIGZpZWxkczogW1xuICAgICAgICB7IGlkOiB7IGNvbHVtbk5hbWU6ICdpZCcsIHRvOiAodmFsdWUpID0+ICt2YWx1ZSwgZnJvbTogKHZhbHVlKSA9PiB2YWx1ZS50b1N0cmluZygpIH0gfSxcbiAgICAgICAgeyBmaXJlc3RvcmVJZDogeyBjb2x1bW5OYW1lOiAnZmlyZXN0b3JlX2lkJyB9IH0sXG4gICAgICAgICduYW1lJyxcbiAgICAgICAgJ2Rlc2NyaXB0aW9uJyxcbiAgICAgICAgJ2ltYWdlJyxcbiAgICAgICAgJ3B1Ymxpc2hlZCcsXG4gICAgICAgICdzaG9wJyxcbiAgICAgICAgJ3NsdWcnLFxuICAgICAgICB7IGJyYW5kQ2F0ZWdvcnk6IHsgY29sdW1uTmFtZTogJ2JyYW5kX2NhdGVnb3J5JyB9IH0sXG4gICAgICAgIHsgYnJhbmRDYXRlZ29yeUJhbm5lcjogeyBjb2x1bW5OYW1lOiAnYnJhbmRfYmFubmVyJyB9IH0sXG4gICAgICAgIHsgYnJhbmRDYXRlZ29yeUJhbm5lck1vYmlsZTogeyBjb2x1bW5OYW1lOiAnYnJhbmRfYmFubmVyX21vYmlsZScgfSB9LFxuICAgICAgICB7IGJyYW5kTG9nbzogeyBjb2x1bW5OYW1lOiAnYnJhbmRfbG9nbycgfSB9LFxuICAgICAgICB7IGJyYW5kQ29uZGl0aW9uOiB7IGNvbHVtbk5hbWU6ICdicmFuZF9jb25kaXRpb24nIH0gfSxcbiAgICAgICAge1xuICAgICAgICAgIGNvbmRpdGlvbnM6IHtcbiAgICAgICAgICAgIGNvbHVtbk5hbWU6ICd0YWdfY29uZGl0aW9uJyxcbiAgICAgICAgICAgIHR5cGU6IEhhc3VyYUdyYXBoUUxDb2x1bW5UeXBlLkpzb25iLFxuICAgICAgICAgICAgZnJvbTogKHRhZ3M6IHN0cmluZ1tdLCByb3cpID0+ICh7IGJyYW5kOiByb3cuYnJhbmRfY29uZGl0aW9uLCB0YWdzOiBBcnJheS5pc0FycmF5KHRhZ3MpID8gdGFncyA6IFtdIH0pLFxuICAgICAgICAgICAgYmluZFBlcnNpc3REYXRhOiAodmFsdWUpID0+IHtcbiAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBicmFuZF9jb25kaXRpb246IHZhbHVlLmJyYW5kLFxuICAgICAgICAgICAgICAgIHRhZ19jb25kaXRpb246IGB7XCIke3ZhbHVlPy50YWdzPy5qb2luPy4oJ1wiLFwiJykgfHwgJyd9XCJ9YCxcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGJpbmRGaW5kRmlsdGVyOiAoc2VudGVuY2U6IGFueSkgPT4ge1xuICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIC4uLihzZW50ZW5jZS5icmFuZCA/IHsgYnJhbmRfY29uZGl0aW9uOiBzZW50ZW5jZS5icmFuZCB9IDoge30pLFxuICAgICAgICAgICAgICAgIC4uLihzZW50ZW5jZS50YWdzID8geyB0YWdfY29uZGl0aW9uOiBzZW50ZW5jZS50YWdzIH0gOiB7fSksXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgJ2ZpbHRlcnMnLFxuICAgICAgICB7IGNyZWF0ZWRBdDogeyBjb2x1bW5OYW1lOiAnY3JlYXRlZF9hdCcgfSB9LFxuICAgICAgICB7IHVwZGF0ZWRBdDogeyBjb2x1bW5OYW1lOiAndXBkYXRlZF9hdCcgfSB9LFxuICAgICAgICB7XG4gICAgICAgICAgcHJvZHVjdHM6IHtcbiAgICAgICAgICAgIGNvbHVtbk5hbWU6ICdwcm9kdWN0cycsXG4gICAgICAgICAgICBmaWVsZHM6IFsncHJvZHVjdF9pZCddLFxuICAgICAgICAgICAgZnJvbTogKHZhbHVlOiB7IHByb2R1Y3RfaWQ6IG51bWJlciB9W10pID0+IHZhbHVlLm1hcCgocHJvZHVjdCkgPT4gcHJvZHVjdC5wcm9kdWN0X2lkLnRvU3RyaW5nKCkpLFxuICAgICAgICAgICAgdG86IChwcm9kdWN0SWRzKSA9PlxuICAgICAgICAgICAgICBwcm9kdWN0SWRzLm1hcCgocHJvZHVjdElkKSA9PiAoe1xuICAgICAgICAgICAgICAgIHByb2R1Y3RfaWQ6ICtwcm9kdWN0SWQsXG4gICAgICAgICAgICAgIH0pKSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9KVxuICB9XG5cbiAgYXN5bmMgZ2V0KGlkZW50aWZpZXJzOiBHZXRSZXBvc2l0b3J5UGFyYW1zPENhdGVnb3J5SGFzdXJhR3JhcGhRTD4pOiBQcm9taXNlPENhdGVnb3J5SGFzdXJhR3JhcGhRTD4ge1xuICAgIHJldHVybiBOdW1iZXIuaXNOYU4oK2lkZW50aWZpZXJzLmlkKVxuICAgICAgPyAoYXdhaXQgdGhpcy5maW5kKHsgZmlsdGVyczogeyBmaXJlc3RvcmVJZDogaWRlbnRpZmllcnMuaWQgfSB9KSkuZGF0YT8uWzBdXG4gICAgICA6IHN1cGVyLmdldChpZGVudGlmaWVycylcbiAgfVxuXG4gIGFzeW5jIGdldENhdGVnb3J5QnlTbHVnKHNsdWc6IHN0cmluZywgc2hvcDogU2hvcHMpOiBQcm9taXNlPENhdGVnb3J5PiB7XG4gICAgaWYgKCFzbHVnKSByZXR1cm5cblxuICAgIGNvbnN0IHsgZGF0YSwgY291bnQgfSA9IGF3YWl0IHRoaXMuZmluZCh7IGZpbHRlcnM6IHsgc2x1Zywgc2hvcCwgcHVibGlzaGVkOiB0cnVlIH0gfSlcblxuICAgIGlmIChjb3VudCA+IDEpIHRocm93IG5ldyBEdXBsaWNhdGVkUmVzdWx0c0Vycm9yKCdRdWVyeSByZXR1cm5lZCBkdXBsaWNhdGVkIHZhbHVlcycpXG4gICAgaWYgKCFjb3VudCkgdGhyb3cgbmV3IE5vdEZvdW5kRXJyb3IoYENhdGVnb3J5IHdpdGggc2x1ZyAke3NsdWd9IG5vdCBmb3VuZGApXG5cbiAgICByZXR1cm4gZGF0YS5zaGlmdCgpXG4gIH1cblxuICBhc3luYyBnZXRDYXRlZ29yaWVzRm9ySG9tZShjYXRlZ29yeUlkczogc3RyaW5nW10sIGxpbWl0ID0gNCk6IFByb21pc2U8eyBjYXRlZ29yeTogQ2F0ZWdvcnk7IHByb2R1Y3RzOiBQcm9kdWN0W10gfVtdPiB7XG4gICAgY29uc3QgeyBkYXRhOiBjYXRlZ29yaWVzLCBjb3VudCB9ID0gYXdhaXQgdGhpcy5maW5kKHtcbiAgICAgIGZpbHRlcnM6IHsgZmlyZXN0b3JlSWQ6IHsgb3BlcmF0b3I6IFdoZXJlLklOLCB2YWx1ZTogY2F0ZWdvcnlJZHMuZmlsdGVyKEJvb2xlYW4pIH0sIHB1Ymxpc2hlZDogdHJ1ZSB9LFxuICAgIH0pXG5cbiAgICBpZiAoIWNvdW50KSB0aHJvdyBuZXcgTm90Rm91bmRFcnJvcignQ2F0ZWdvcmllcyBub3QgZm91bmQnKVxuXG4gICAgY29uc3QgaG9tZVNlY3Rpb25zID0gYXdhaXQgUHJvbWlzZS5hbGwoXG4gICAgICBjYXRlZ29yaWVzLm1hcChhc3luYyAoY2F0ZWdvcnkpID0+ICh7XG4gICAgICAgIGNhdGVnb3J5LFxuICAgICAgICBwcm9kdWN0czogYXdhaXQgdGhpcy5tb3VudENhdGVnb3J5KGNhdGVnb3J5LCB7IGxpbWl0LCBoYXNTdG9jazogdHJ1ZSB9KSxcbiAgICAgIH0pKSxcbiAgICApXG5cbiAgICByZXR1cm4gaG9tZVNlY3Rpb25zXG4gIH1cblxuICBhc3luYyBtb3VudENhdGVnb3J5KGNhdGVnb3J5OiBDYXRlZ29yeSwgb3B0aW9ucz86IHsgbGltaXQ/OiBudW1iZXI7IGhhc1N0b2NrPzogYm9vbGVhbiB9KTogUHJvbWlzZTxQcm9kdWN0W10+IHtcbiAgICBpZiAoIWNhdGVnb3J5LnByb2R1Y3RzKSB0aHJvdyBuZXcgUmVxdWlyZWRBcmd1bWVudEVycm9yKFsnQ2F0ZWdvcnkgcHJvZHVjdHMgaXMgZW1wdHknXSlcblxuICAgIGNvbnN0IHByb2R1Y3RzID0gW11cbiAgICBjb25zdCBwdWJsaXNoZWRGaWVsZCA9IGNhdGVnb3J5LnNob3AgPT09IFNob3BzLkdMQU1TSE9QID8gJ3B1Ymxpc2hlZEdsYW0nIDogJ3B1Ymxpc2hlZCdcbiAgICBjb25zdCB7IGRhdGE6IHByb2R1Y3RzRGF0YSB9ID0gYXdhaXQgdGhpcy5wcm9kdWN0UmVwb3NpdG9yeS5maW5kKHtcbiAgICAgIGZpbHRlcnM6IHtcbiAgICAgICAgaWQ6IHsgb3BlcmF0b3I6IFdoZXJlLklOLCB2YWx1ZTogY2F0ZWdvcnkucHJvZHVjdHMgfSxcbiAgICAgICAgW3B1Ymxpc2hlZEZpZWxkXTogdHJ1ZSxcbiAgICAgICAgLi4uKG9wdGlvbnM/Lmhhc1N0b2NrID8geyBzdG9jazogeyBxdWFudGl0eTogeyBvcGVyYXRvcjogV2hlcmUuR1QsIHZhbHVlOiAwIH0gfSB9IDoge30pLFxuICAgICAgfSxcbiAgICAgIGZpZWxkczogW1xuICAgICAgICAnaWQnLFxuICAgICAgICAnbmFtZScsXG4gICAgICAgICdzbHVnJyxcbiAgICAgICAgJ2ltYWdlcycsXG4gICAgICAgICdtaW5pYXR1cmVzJyxcbiAgICAgICAgJ3ByaWNlJyxcbiAgICAgICAgJ2Z1bGxQcmljZScsXG4gICAgICAgICdzdWJzY3JpYmVyRGlzY291bnRQZXJjZW50YWdlJyxcbiAgICAgICAgJ3N1YnNjcmliZXJQcmljZScsXG4gICAgICAgICdzdG9jaycsXG4gICAgICAgICdwdWJsaXNoZWQnLFxuICAgICAgICAncHVibGlzaGVkR2xhbScsXG4gICAgICAgICdDRVNUJyxcbiAgICAgICAgJ0VBTicsXG4gICAgICAgICdOQ00nLFxuICAgICAgICAnYnJhbmQnLFxuICAgICAgICAnY29zdFByaWNlJyxcbiAgICAgICAgJ2hhc1ZhcmlhbnRzJyxcbiAgICAgICAgJ2lzS2l0JyxcbiAgICAgICAgJ3Nob3BBdmFpbGFiaWxpdHknLFxuICAgICAgICAnc2t1JyxcbiAgICAgIF0sXG4gICAgICAuLi4ob3B0aW9ucz8ubGltaXQgPyB7IGxpbWl0czogeyBsaW1pdDogb3B0aW9ucz8ubGltaXQgfSB9IDoge30pLFxuICAgIH0pXG5cbiAgICBwcm9kdWN0cy5wdXNoKC4uLnByb2R1Y3RzRGF0YSlcblxuICAgIHJldHVybiBwcm9kdWN0c1xuICB9XG59XG4iXX0=
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export * from './category-hasura-graphql.repository';
|
|
2
|
-
export * from './product-hasura-graphql.repository';
|
|
3
|
-
export * from './variant-hasura-graphql.repository';
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
export * from './category-hasura-graphql.repository';
|
|
2
|
+
export * from './product-hasura-graphql.repository';
|
|
3
|
+
export * from './variant-hasura-graphql.repository';
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0L3NyYy9pbmZyYS9oYXN1cmEtZ3JhcGhxbC9yZXBvc2l0b3JpZXMvY2F0YWxvZy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHNDQUFzQyxDQUFBO0FBQ3BELGNBQWMscUNBQXFDLENBQUE7QUFDbkQsY0FBYyxxQ0FBcUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY2F0ZWdvcnktaGFzdXJhLWdyYXBocWwucmVwb3NpdG9yeSdcbmV4cG9ydCAqIGZyb20gJy4vcHJvZHVjdC1oYXN1cmEtZ3JhcGhxbC5yZXBvc2l0b3J5J1xuZXhwb3J0ICogZnJvbSAnLi92YXJpYW50LWhhc3VyYS1ncmFwaHFsLnJlcG9zaXRvcnknXG4iXX0=
|