@infrab4a/connect 0.17.0-beta.8 → 0.17.1-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -24
- package/index.ts +1 -0
- package/karma.conf.js +32 -0
- package/ng-package.json +24 -0
- package/package.json +20 -28
- package/src/domain/catalog/index.ts +2 -0
- package/src/domain/catalog/models/category.ts +27 -0
- package/src/domain/catalog/models/enums/index.ts +1 -0
- package/src/domain/catalog/models/enums/shops.enum.ts +5 -0
- package/src/domain/catalog/models/index.ts +5 -0
- package/src/domain/catalog/models/product.ts +47 -0
- package/src/domain/catalog/models/types/category-condition.type.ts +4 -0
- package/src/domain/catalog/models/types/category-filter.type.ts +4 -0
- package/src/domain/catalog/models/types/index.ts +7 -0
- package/src/domain/catalog/models/types/product-review.type.ts +16 -0
- package/src/domain/catalog/models/types/shops-description.type.ts +9 -0
- package/src/domain/catalog/models/types/shops-price.type.ts +12 -0
- package/src/domain/catalog/models/types/stock.type.ts +3 -0
- package/src/domain/catalog/models/types/variant-grade.type.ts +4 -0
- package/src/domain/catalog/models/variant.ts +19 -0
- package/src/domain/catalog/repositories/category.repository.ts +10 -0
- package/src/domain/catalog/repositories/index.ts +4 -0
- package/{domain/catalog/repositories/product.repository.d.ts → src/domain/catalog/repositories/product.repository.ts} +6 -5
- package/{domain/catalog/repositories/subscription-product.repository.d.ts → src/domain/catalog/repositories/subscription-product.repository.ts} +4 -4
- package/{domain/catalog/repositories/variant.repository.d.ts → src/domain/catalog/repositories/variant.repository.ts} +4 -4
- package/src/domain/general/index.ts +2 -0
- package/src/domain/general/model/base-model-with-identifier-fields.ts +4 -0
- package/src/domain/general/model/base.model.ts +17 -0
- package/{domain/general/model/identifier-fields.d.ts → src/domain/general/model/identifier-fields.ts} +5 -4
- package/src/domain/general/model/index.ts +4 -0
- package/src/domain/general/model/types/base-model-builder.type.ts +6 -0
- package/src/domain/general/model/types/index.ts +3 -0
- package/src/domain/general/model/types/non-function-properties.type.ts +3 -0
- package/src/domain/general/model/types/non-function-property-name.type.ts +1 -0
- package/{domain/general/repository/create.repository.d.ts → src/domain/general/repository/create.repository.ts} +6 -5
- package/src/domain/general/repository/crud.repository.ts +12 -0
- package/{domain/general/repository/delete.repository.d.ts → src/domain/general/repository/delete.repository.ts} +6 -5
- package/src/domain/general/repository/enums/index.ts +2 -0
- package/src/domain/general/repository/enums/update-option-actions.enum.ts +7 -0
- package/src/domain/general/repository/enums/where.enum.ts +10 -0
- package/src/domain/general/repository/find.repository.ts +11 -0
- package/{domain/general/repository/get.repository.d.ts → src/domain/general/repository/get.repository.ts} +6 -5
- package/src/domain/general/repository/index.ts +9 -0
- package/src/domain/general/repository/read.repository.ts +8 -0
- package/src/domain/general/repository/types/index.ts +5 -0
- package/src/domain/general/repository/types/repository-find-filters.type.ts +21 -0
- package/src/domain/general/repository/types/repository-find-result.type.ts +4 -0
- package/src/domain/general/repository/types/repository-limit-options.type.ts +4 -0
- package/src/domain/general/repository/types/repository-order-by-list.type.ts +7 -0
- package/src/domain/general/repository/types/repository-update-params.type.ts +16 -0
- package/{domain/general/repository/update.repository.d.ts → src/domain/general/repository/update.repository.ts} +7 -5
- package/src/domain/index.ts +6 -0
- package/src/domain/location/index.ts +1 -0
- package/src/domain/location/models/address.ts +23 -0
- package/src/domain/location/models/index.ts +2 -0
- package/src/domain/location/models/types/index.ts +3 -0
- package/src/domain/location/models/types/location-bound.type.ts +6 -0
- package/src/domain/location/models/types/location-geometry.type.ts +8 -0
- package/src/domain/location/models/types/location-lat-lng.type.ts +4 -0
- package/src/domain/shop-settings/enums/filter-type.enum.ts +19 -0
- package/src/domain/shop-settings/enums/index.ts +2 -0
- package/src/domain/shop-settings/enums/questions-filters.enum.ts +19 -0
- package/src/domain/shop-settings/helpers/beauty-questions.helper.ts +51 -0
- package/src/domain/shop-settings/helpers/index.ts +1 -0
- package/src/domain/shop-settings/index.ts +4 -0
- package/src/domain/shop-settings/models/home.ts +21 -0
- package/src/domain/shop-settings/models/index.ts +4 -0
- package/src/domain/shop-settings/models/shop-menu.ts +11 -0
- package/src/domain/shop-settings/models/shop-settings.ts +10 -0
- package/src/domain/shop-settings/models/types/banner.type.ts +6 -0
- package/src/domain/shop-settings/models/types/benefit.type.ts +5 -0
- package/src/domain/shop-settings/models/types/home-data.type.ts +18 -0
- package/src/domain/shop-settings/models/types/index.ts +5 -0
- package/src/domain/shop-settings/models/types/menu-nav.type.ts +9 -0
- package/src/domain/shop-settings/models/types/sub-menu.type.ts +8 -0
- package/src/domain/shop-settings/repositories/home.repository.ts +4 -0
- package/src/domain/shop-settings/repositories/index.ts +3 -0
- package/{domain/shop-settings/repositories/shop-menu.repository.d.ts → src/domain/shop-settings/repositories/shop-menu.repository.ts} +4 -4
- package/src/domain/shop-settings/repositories/shop-settings.repository.ts +4 -0
- package/src/domain/shopping/index.ts +2 -0
- package/src/domain/shopping/models/buy-2-win.ts +26 -0
- package/src/domain/shopping/models/checkout.ts +43 -0
- package/src/domain/shopping/models/coupons/coupon.ts +42 -0
- package/src/domain/shopping/models/coupons/enums/coupon-subtypes.enum.ts +4 -0
- package/src/domain/shopping/models/coupons/enums/coupon-types.enum.ts +6 -0
- package/src/domain/shopping/models/coupons/enums/exclusivities.enum.ts +5 -0
- package/src/domain/shopping/models/coupons/enums/index.ts +3 -0
- package/src/domain/shopping/models/coupons/financial-coupon.ts +32 -0
- package/src/domain/shopping/models/coupons/index.ts +3 -0
- package/src/domain/shopping/models/enums/checkout-types.enum.ts +4 -0
- package/src/domain/shopping/models/enums/index.ts +2 -0
- package/src/domain/shopping/models/enums/order-status.enum.ts +10 -0
- package/src/domain/shopping/models/index.ts +11 -0
- package/src/domain/shopping/models/line-item.ts +9 -0
- package/src/domain/shopping/models/order.ts +14 -0
- package/src/domain/shopping/models/payment.ts +117 -0
- package/src/domain/shopping/models/shipping-method.ts +22 -0
- package/src/domain/shopping/models/subscription/checkout.ts +38 -0
- package/src/domain/shopping/models/subscription/index.ts +2 -0
- package/src/domain/shopping/models/subscription/plan.ts +16 -0
- package/src/domain/shopping/models/types/index.ts +7 -0
- package/src/domain/shopping/models/types/payment-address.type.ts +12 -0
- package/src/domain/shopping/models/types/payment-billing.type.ts +8 -0
- package/src/domain/shopping/models/types/payment-card.type.ts +14 -0
- package/src/domain/shopping/models/types/payment-customer.type.ts +19 -0
- package/src/domain/shopping/models/types/payment-document.type.ts +6 -0
- package/src/domain/shopping/models/types/payment-item.type.ts +11 -0
- package/src/domain/shopping/models/types/payment-shipping.type.ts +11 -0
- package/{domain/shopping/repositories/buy-2-win.repository.d.ts → src/domain/shopping/repositories/buy-2-win.repository.ts} +4 -4
- package/{domain/shopping/repositories/checkout.repository.d.ts → src/domain/shopping/repositories/checkout.repository.ts} +4 -4
- package/{domain/shopping/repositories/coupon.repository.d.ts → src/domain/shopping/repositories/coupon.repository.ts} +4 -4
- package/src/domain/shopping/repositories/index.ts +7 -0
- package/{domain/shopping/repositories/legacy-order.repository.d.ts → src/domain/shopping/repositories/legacy-order.repository.ts} +3 -3
- package/{domain/shopping/repositories/order.repository.d.ts → src/domain/shopping/repositories/order.repository.ts} +4 -4
- package/{domain/shopping/repositories/payment.repository.d.ts → src/domain/shopping/repositories/payment.repository.ts} +4 -4
- package/{domain/shopping/repositories/subscription/checkout.repository.d.ts → src/domain/shopping/repositories/subscription/checkout.repository.ts} +4 -4
- package/src/domain/shopping/repositories/subscription/index.ts +2 -0
- package/{domain/shopping/repositories/subscription/plan.repository.d.ts → src/domain/shopping/repositories/subscription/plan.repository.ts} +4 -4
- package/src/domain/users/errors/index.ts +3 -0
- package/src/domain/users/errors/unauthorized.error.ts +5 -0
- package/src/domain/users/errors/user-already-registered.error.ts +5 -0
- package/src/domain/users/errors/weak-password.error.ts +5 -0
- package/src/domain/users/index.ts +5 -0
- package/src/domain/users/models/beauty-profile.ts +24 -0
- package/src/domain/users/models/enums/accessory-importances.enum.ts +5 -0
- package/src/domain/users/models/enums/area.enum.ts +11 -0
- package/src/domain/users/models/enums/beard-problems.enum.ts +9 -0
- package/src/domain/users/models/enums/beard-sizes.enum.ts +7 -0
- package/src/domain/users/models/enums/beauty-product-importances.enum.ts +6 -0
- package/src/domain/users/models/enums/body-problems.enum.ts +11 -0
- package/src/domain/users/models/enums/body-shapes.enum.ts +7 -0
- package/src/domain/users/models/enums/body-tattoos.enum.ts +5 -0
- package/src/domain/users/models/enums/face-skin-oilinesses.enum.ts +7 -0
- package/src/domain/users/models/enums/face-skin-problems.enum.ts +10 -0
- package/src/domain/users/models/enums/face-skin-tones.enum.ts +8 -0
- package/src/domain/users/models/enums/family-incomes.enum.ts +8 -0
- package/src/domain/users/models/enums/fragrance-importances.enum.ts +5 -0
- package/src/domain/users/models/enums/hair-colors.enum.ts +10 -0
- package/src/domain/users/models/enums/hair-problems.enum.ts +10 -0
- package/src/domain/users/models/enums/hair-strands.enum.ts +8 -0
- package/src/domain/users/models/enums/hair-types.enum.ts +7 -0
- package/src/domain/users/models/enums/index.ts +20 -0
- package/src/domain/users/models/enums/office-position.enum.ts +6 -0
- package/src/domain/users/models/enums/product-spents.enum.ts +8 -0
- package/src/domain/users/models/enums/user-type.enum.ts +8 -0
- package/src/domain/users/models/index.ts +7 -0
- package/src/domain/users/models/lead.ts +13 -0
- package/src/domain/users/models/subscription/edition.ts +22 -0
- package/src/domain/users/models/subscription/enums/billing-status.enum.ts +3 -0
- package/src/domain/users/models/subscription/enums/edition-status.enum.ts +4 -0
- package/src/domain/users/models/subscription/enums/index.ts +4 -0
- package/src/domain/users/models/subscription/enums/payment-type.enum.ts +5 -0
- package/src/domain/users/models/subscription/enums/status.enum.ts +4 -0
- package/src/domain/users/models/subscription/index.ts +4 -0
- package/src/domain/users/models/subscription/payment.ts +26 -0
- package/src/domain/users/models/subscription/subscription.ts +45 -0
- package/src/domain/users/models/user-address.ts +11 -0
- package/src/domain/users/models/user-payment-method.ts +18 -0
- package/src/domain/users/models/user.ts +50 -0
- package/{domain/users/repositories/beauty-profile.repository.d.ts → src/domain/users/repositories/beauty-profile.repository.ts} +4 -4
- package/{domain/users/repositories/edition.repository.d.ts → src/domain/users/repositories/edition.repository.ts} +4 -4
- package/src/domain/users/repositories/index.ts +8 -0
- package/src/domain/users/repositories/lead.repository.ts +4 -0
- package/{domain/users/repositories/subscription-payment.repository.d.ts → src/domain/users/repositories/subscription-payment.repository.ts} +4 -4
- package/{domain/users/repositories/subscription.repository.d.ts → src/domain/users/repositories/subscription.repository.ts} +4 -4
- package/{domain/users/repositories/user-address.repository.d.ts → src/domain/users/repositories/user-address.repository.ts} +4 -4
- package/{domain/users/repositories/user-payment-method.repository.d.ts → src/domain/users/repositories/user-payment-method.repository.ts} +4 -4
- package/src/domain/users/repositories/user.repository.ts +7 -0
- package/src/domain/users/services/authentication.service.ts +14 -0
- package/src/domain/users/services/index.ts +3 -0
- package/src/domain/users/services/register.service.ts +7 -0
- package/src/domain/users/services/types/basic-user-data.type.ts +7 -0
- package/src/domain/users/services/types/index.ts +1 -0
- package/src/domain/users/use-cases/authentication.ts +53 -0
- package/src/domain/users/use-cases/index.ts +4 -0
- package/src/domain/users/use-cases/recovery-password.ts +9 -0
- package/src/domain/users/use-cases/register.ts +45 -0
- package/src/domain/users/use-cases/signout.ts +9 -0
- package/src/errors/duplicated-results.error.ts +5 -0
- package/src/errors/index.ts +4 -0
- package/src/errors/invalid-argument.error.ts +5 -0
- package/src/errors/not-found.error.ts +5 -0
- package/src/errors/required-argument.error.ts +9 -0
- package/src/index.ts +6 -0
- package/src/infra/elasticsearch/adapters/axios.adapter.ts +27 -0
- package/{infra/elasticsearch/adapters/elastic-search.adapter.d.ts → src/infra/elasticsearch/adapters/elastic-search.adapter.ts} +5 -4
- package/src/infra/elasticsearch/adapters/index.ts +2 -0
- package/src/infra/elasticsearch/index.ts +3 -0
- package/src/infra/elasticsearch/indexes/index.ts +1 -0
- package/src/infra/elasticsearch/indexes/products-index.ts +61 -0
- package/src/infra/elasticsearch/types/elastic-search-result.ts +7 -0
- package/src/infra/elasticsearch/types/index.ts +1 -0
- package/src/infra/firebase/auth/authentication-firebase-auth.service.ts +52 -0
- package/src/infra/firebase/auth/index.ts +2 -0
- package/src/infra/firebase/auth/register-firebase-auth.service.ts +26 -0
- package/src/infra/firebase/auth/types/firebase-user-with-id.type.ts +1 -0
- package/src/infra/firebase/auth/types/index.ts +1 -0
- package/src/infra/firebase/firestore/index.ts +3 -0
- package/src/infra/firebase/firestore/mixins/index.ts +9 -0
- package/src/infra/firebase/firestore/mixins/with-create-firestore.mixin.ts +36 -0
- package/src/infra/firebase/firestore/mixins/with-crud-firestore.mixin.ts +19 -0
- package/src/infra/firebase/firestore/mixins/with-delete-firestore.mixin.ts +21 -0
- package/src/infra/firebase/firestore/mixins/with-find-firestore.mixin.ts +142 -0
- package/src/infra/firebase/firestore/mixins/with-firestore.mixin.ts +42 -0
- package/src/infra/firebase/firestore/mixins/with-get-firestore.mixin.ts +27 -0
- package/src/infra/firebase/firestore/mixins/with-helpers.mixin.ts +26 -0
- package/src/infra/firebase/firestore/mixins/with-sub-collection.mixin.ts +30 -0
- package/src/infra/firebase/firestore/mixins/with-update-firestore.mixin.ts +69 -0
- package/src/infra/firebase/firestore/models/index.ts +1 -0
- package/src/infra/firebase/firestore/models/user-search.ts +13 -0
- package/src/infra/firebase/firestore/repositories/catalog/category-firestore.repository.ts +80 -0
- package/src/infra/firebase/firestore/repositories/catalog/index.ts +4 -0
- package/src/infra/firebase/firestore/repositories/catalog/product-firestore.repository.ts +26 -0
- package/src/infra/firebase/firestore/repositories/catalog/product-variant-firestore.repository.ts +19 -0
- package/src/infra/firebase/firestore/repositories/catalog/subscription-product-firestore.repository.ts +17 -0
- package/src/infra/firebase/firestore/repositories/index.ts +4 -0
- package/src/infra/firebase/firestore/repositories/shop-settings/home-firestore.repository.ts +72 -0
- package/src/infra/firebase/firestore/repositories/shop-settings/index.ts +3 -0
- package/src/infra/firebase/firestore/repositories/shop-settings/shop-menu-firestore.repository.ts +16 -0
- package/src/infra/firebase/firestore/repositories/shop-settings/shop-settings-firestore.repository.ts +17 -0
- package/src/infra/firebase/firestore/repositories/shopping/buy-2-win-firestore.repository.ts +17 -0
- package/src/infra/firebase/firestore/repositories/shopping/checkout-firestore.repository.ts +17 -0
- package/src/infra/firebase/firestore/repositories/shopping/checkout-subscription-firestore.repository.ts +17 -0
- package/src/infra/firebase/firestore/repositories/shopping/coupon-firestore.repository.ts +41 -0
- package/src/infra/firebase/firestore/repositories/shopping/index.ts +8 -0
- package/src/infra/firebase/firestore/repositories/shopping/legacy-order-firestore.repository.ts +12 -0
- package/src/infra/firebase/firestore/repositories/shopping/order-firestore.repository.ts +17 -0
- package/src/infra/firebase/firestore/repositories/shopping/payment-firestore.repository.ts +17 -0
- package/src/infra/firebase/firestore/repositories/shopping/subscription-plan-firestore.repository.ts +17 -0
- package/src/infra/firebase/firestore/repositories/users/index.ts +9 -0
- package/src/infra/firebase/firestore/repositories/users/lead-firestore.repository.ts +17 -0
- package/src/infra/firebase/firestore/repositories/users/subscription-edition-firestore.repository.ts +19 -0
- package/src/infra/firebase/firestore/repositories/users/subscription-firestore.repository.ts +17 -0
- package/src/infra/firebase/firestore/repositories/users/subscription-payment-firestore.repository.ts +19 -0
- package/src/infra/firebase/firestore/repositories/users/user-address-firestore.repository.ts +19 -0
- package/src/infra/firebase/firestore/repositories/users/user-beauty-profile-firestore.repository.ts +19 -0
- package/src/infra/firebase/firestore/repositories/users/user-firestore.repository.ts +86 -0
- package/src/infra/firebase/firestore/repositories/users/user-payment-method-firestore.repository.ts +19 -0
- package/src/infra/firebase/firestore/repositories/users/user-search-firestore.repository.ts +17 -0
- package/src/infra/firebase/firestore/types/firestore-sub.repository.type.ts +11 -0
- package/src/infra/firebase/firestore/types/firestore.helpers.type.ts +13 -0
- package/src/infra/firebase/firestore/types/firestore.repository.type.ts +10 -0
- package/src/infra/firebase/firestore/types/index.ts +3 -0
- package/src/infra/firebase/index.ts +2 -0
- package/src/infra/index.ts +2 -0
- package/src/utils/index.ts +8 -0
- package/src/utils/mixins/base.mixin.ts +5 -0
- package/src/utils/mixins/index.ts +2 -0
- package/src/utils/mixins/mixin-ctor.type.ts +1 -0
- package/src/utils/types/index.ts +1 -0
- package/src/utils/types/prop.type.ts +1 -0
- package/tsconfig.json +14 -0
- package/tsconfig.lib.json +12 -0
- package/tsconfig.lib.prod.json +11 -0
- package/tsconfig.spec.json +17 -0
- package/tslint.json +3 -0
- package/bundles/infrab4a-connect.umd.js +0 -2750
- package/bundles/infrab4a-connect.umd.js.map +0 -1
- package/domain/catalog/index.d.ts +0 -2
- package/domain/catalog/models/category.d.ts +0 -22
- package/domain/catalog/models/enums/index.d.ts +0 -1
- package/domain/catalog/models/enums/shops.enum.d.ts +0 -6
- package/domain/catalog/models/index.d.ts +0 -5
- package/domain/catalog/models/product.d.ts +0 -35
- package/domain/catalog/models/types/category-condition.type.d.ts +0 -4
- package/domain/catalog/models/types/category-filter.type.d.ts +0 -4
- package/domain/catalog/models/types/index.d.ts +0 -7
- package/domain/catalog/models/types/product-review.type.d.ts +0 -15
- package/domain/catalog/models/types/shops-description.type.d.ts +0 -7
- package/domain/catalog/models/types/shops-price.type.d.ts +0 -10
- package/domain/catalog/models/types/stock.type.d.ts +0 -3
- package/domain/catalog/models/types/variant-grade.type.d.ts +0 -4
- package/domain/catalog/models/variant.d.ts +0 -14
- package/domain/catalog/repositories/category.repository.d.ts +0 -15
- package/domain/catalog/repositories/index.d.ts +0 -4
- package/domain/general/index.d.ts +0 -2
- package/domain/general/model/base-model-with-identifier-fields.d.ts +0 -3
- package/domain/general/model/base.model.d.ts +0 -6
- package/domain/general/model/index.d.ts +0 -4
- package/domain/general/model/types/base-model-builder.type.d.ts +0 -5
- package/domain/general/model/types/index.d.ts +0 -3
- package/domain/general/model/types/non-function-properties.type.d.ts +0 -2
- package/domain/general/model/types/non-function-property-name.type.d.ts +0 -3
- package/domain/general/repository/crud.repository.d.ts +0 -7
- package/domain/general/repository/enums/index.d.ts +0 -2
- package/domain/general/repository/enums/update-option-actions.enum.d.ts +0 -7
- package/domain/general/repository/enums/where.enum.d.ts +0 -10
- package/domain/general/repository/find.repository.d.ts +0 -5
- package/domain/general/repository/index.d.ts +0 -9
- package/domain/general/repository/read.repository.d.ts +0 -5
- package/domain/general/repository/types/index.d.ts +0 -5
- package/domain/general/repository/types/repository-find-filters.type.d.ts +0 -14
- package/domain/general/repository/types/repository-find-result.type.d.ts +0 -4
- package/domain/general/repository/types/repository-limit-options.type.d.ts +0 -4
- package/domain/general/repository/types/repository-order-by-list.type.d.ts +0 -5
- package/domain/general/repository/types/repository-update-params.type.d.ts +0 -11
- package/domain/index.d.ts +0 -6
- package/domain/location/index.d.ts +0 -1
- package/domain/location/models/address.d.ts +0 -21
- package/domain/location/models/index.d.ts +0 -2
- package/domain/location/models/types/index.d.ts +0 -3
- package/domain/location/models/types/location-bound.type.d.ts +0 -6
- package/domain/location/models/types/location-geometry.type.d.ts +0 -7
- package/domain/location/models/types/location-lat-lng.type.d.ts +0 -4
- package/domain/shop-settings/enums/filter-type.enum.d.ts +0 -19
- package/domain/shop-settings/enums/index.d.ts +0 -2
- package/domain/shop-settings/enums/questions-filters.enum.d.ts +0 -19
- package/domain/shop-settings/helpers/beauty-questions.helper.d.ts +0 -9
- package/domain/shop-settings/helpers/index.d.ts +0 -1
- package/domain/shop-settings/index.d.ts +0 -4
- package/domain/shop-settings/models/home.d.ts +0 -17
- package/domain/shop-settings/models/index.d.ts +0 -3
- package/domain/shop-settings/models/shop-menu.d.ts +0 -7
- package/domain/shop-settings/models/types/banner.type.d.ts +0 -6
- package/domain/shop-settings/models/types/benefit.type.d.ts +0 -5
- package/domain/shop-settings/models/types/home-data.type.d.ts +0 -15
- package/domain/shop-settings/models/types/index.d.ts +0 -5
- package/domain/shop-settings/models/types/menu-nav.type.d.ts +0 -8
- package/domain/shop-settings/models/types/sub-menu.type.d.ts +0 -8
- package/domain/shop-settings/repositories/home.repository.d.ts +0 -4
- package/domain/shop-settings/repositories/index.d.ts +0 -2
- package/domain/shopping/index.d.ts +0 -2
- package/domain/shopping/models/buy-2-win.d.ts +0 -18
- package/domain/shopping/models/checkout.d.ts +0 -29
- package/domain/shopping/models/coupons/coupon.d.ts +0 -32
- package/domain/shopping/models/coupons/enums/coupon-club-mens.enum.d.ts +0 -5
- package/domain/shopping/models/coupons/enums/coupon-subtypes.enum.d.ts +0 -4
- package/domain/shopping/models/coupons/enums/coupon-types.enum.d.ts +0 -4
- package/domain/shopping/models/coupons/enums/exclusivities.enum.d.ts +0 -7
- package/domain/shopping/models/coupons/enums/index.d.ts +0 -3
- package/domain/shopping/models/coupons/index.d.ts +0 -2
- package/domain/shopping/models/enums/checkout-types.enum.d.ts +0 -5
- package/domain/shopping/models/enums/index.d.ts +0 -2
- package/domain/shopping/models/enums/order-status.enum.d.ts +0 -10
- package/domain/shopping/models/index.d.ts +0 -11
- package/domain/shopping/models/line-item.d.ts +0 -8
- package/domain/shopping/models/order.d.ts +0 -9
- package/domain/shopping/models/payment.d.ts +0 -69
- package/domain/shopping/models/shipping-method.d.ts +0 -18
- package/domain/shopping/models/subscription/checkout.d.ts +0 -23
- package/domain/shopping/models/subscription/index.d.ts +0 -2
- package/domain/shopping/models/subscription/plan.d.ts +0 -12
- package/domain/shopping/models/types/index.d.ts +0 -7
- package/domain/shopping/models/types/payment-address.type.d.ts +0 -12
- package/domain/shopping/models/types/payment-billing.type.d.ts +0 -7
- package/domain/shopping/models/types/payment-card.type.d.ts +0 -14
- package/domain/shopping/models/types/payment-customer.type.d.ts +0 -18
- package/domain/shopping/models/types/payment-document.type.d.ts +0 -6
- package/domain/shopping/models/types/payment-item.type.d.ts +0 -11
- package/domain/shopping/models/types/payment-shipping.type.d.ts +0 -10
- package/domain/shopping/repositories/index.d.ts +0 -7
- package/domain/shopping/repositories/subscription/index.d.ts +0 -2
- package/domain/users/errors/index.d.ts +0 -3
- package/domain/users/errors/unauthorized.error.d.ts +0 -4
- package/domain/users/errors/user-already-registered.error.d.ts +0 -4
- package/domain/users/errors/weak-password.error.d.ts +0 -4
- package/domain/users/index.d.ts +0 -5
- package/domain/users/models/beauty-profile.d.ts +0 -12
- package/domain/users/models/enums/accessory-importances.enum.d.ts +0 -5
- package/domain/users/models/enums/area.enum.d.ts +0 -11
- package/domain/users/models/enums/beard-problems.enum.d.ts +0 -9
- package/domain/users/models/enums/beard-sizes.enum.d.ts +0 -7
- package/domain/users/models/enums/beauty-product-importances.enum.d.ts +0 -6
- package/domain/users/models/enums/body-problems.enum.d.ts +0 -11
- package/domain/users/models/enums/body-shapes.enum.d.ts +0 -7
- package/domain/users/models/enums/body-tattoos.enum.d.ts +0 -5
- package/domain/users/models/enums/face-skin-oilinesses.enum.d.ts +0 -7
- package/domain/users/models/enums/face-skin-problems.enum.d.ts +0 -10
- package/domain/users/models/enums/face-skin-tones.enum.d.ts +0 -8
- package/domain/users/models/enums/family-incomes.enum.d.ts +0 -8
- package/domain/users/models/enums/fragrance-importances.enum.d.ts +0 -5
- package/domain/users/models/enums/hair-colors.enum.d.ts +0 -10
- package/domain/users/models/enums/hair-problems.enum.d.ts +0 -10
- package/domain/users/models/enums/hair-strands.enum.d.ts +0 -8
- package/domain/users/models/enums/hair-types.enum.d.ts +0 -7
- package/domain/users/models/enums/index.d.ts +0 -20
- package/domain/users/models/enums/office-position.enum.d.ts +0 -6
- package/domain/users/models/enums/product-spents.enum.d.ts +0 -8
- package/domain/users/models/enums/user-type.enum.d.ts +0 -8
- package/domain/users/models/index.d.ts +0 -7
- package/domain/users/models/lead.d.ts +0 -9
- package/domain/users/models/subscription/edition.d.ts +0 -17
- package/domain/users/models/subscription/enums/billing-status.enum.d.ts +0 -3
- package/domain/users/models/subscription/enums/edition-status.enum.d.ts +0 -4
- package/domain/users/models/subscription/enums/index.d.ts +0 -4
- package/domain/users/models/subscription/enums/payment-type.enum.d.ts +0 -5
- package/domain/users/models/subscription/enums/status.enum.d.ts +0 -4
- package/domain/users/models/subscription/index.d.ts +0 -4
- package/domain/users/models/subscription/payment.d.ts +0 -14
- package/domain/users/models/subscription/subscription.d.ts +0 -30
- package/domain/users/models/user-address.d.ts +0 -7
- package/domain/users/models/user-payment-method.d.ts +0 -14
- package/domain/users/models/user.d.ts +0 -25
- package/domain/users/repositories/index.d.ts +0 -8
- package/domain/users/repositories/lead.repository.d.ts +0 -4
- package/domain/users/repositories/user.repository.d.ts +0 -6
- package/domain/users/services/authentication.service.d.ts +0 -12
- package/domain/users/services/index.d.ts +0 -3
- package/domain/users/services/register.service.d.ts +0 -7
- package/domain/users/services/types/basic-user-data.type.d.ts +0 -4
- package/domain/users/services/types/index.d.ts +0 -1
- package/domain/users/use-cases/authentication.d.ts +0 -21
- package/domain/users/use-cases/index.d.ts +0 -4
- package/domain/users/use-cases/recovery-password.d.ts +0 -6
- package/domain/users/use-cases/register.d.ts +0 -13
- package/domain/users/use-cases/signout.d.ts +0 -6
- package/errors/duplicated-results.error.d.ts +0 -4
- package/errors/index.d.ts +0 -4
- package/errors/invalid-argument.error.d.ts +0 -4
- package/errors/not-found.error.d.ts +0 -4
- package/errors/required-argument.error.d.ts +0 -5
- package/esm2015/domain/catalog/index.js +0 -3
- package/esm2015/domain/catalog/models/category.js +0 -7
- package/esm2015/domain/catalog/models/enums/index.js +0 -2
- package/esm2015/domain/catalog/models/enums/shops.enum.js +0 -8
- package/esm2015/domain/catalog/models/index.js +0 -6
- package/esm2015/domain/catalog/models/product.js +0 -11
- package/esm2015/domain/catalog/models/types/category-condition.type.js +0 -2
- package/esm2015/domain/catalog/models/types/category-filter.type.js +0 -2
- package/esm2015/domain/catalog/models/types/index.js +0 -8
- package/esm2015/domain/catalog/models/types/product-review.type.js +0 -2
- package/esm2015/domain/catalog/models/types/shops-description.type.js +0 -2
- package/esm2015/domain/catalog/models/types/shops-price.type.js +0 -2
- package/esm2015/domain/catalog/models/types/stock.type.js +0 -2
- package/esm2015/domain/catalog/models/types/variant-grade.type.js +0 -2
- package/esm2015/domain/catalog/models/variant.js +0 -7
- package/esm2015/domain/catalog/repositories/category.repository.js +0 -2
- package/esm2015/domain/catalog/repositories/index.js +0 -5
- package/esm2015/domain/catalog/repositories/product.repository.js +0 -2
- package/esm2015/domain/catalog/repositories/subscription-product.repository.js +0 -2
- package/esm2015/domain/catalog/repositories/variant.repository.js +0 -2
- package/esm2015/domain/general/index.js +0 -3
- package/esm2015/domain/general/model/base-model-with-identifier-fields.js +0 -2
- package/esm2015/domain/general/model/base.model.js +0 -13
- package/esm2015/domain/general/model/identifier-fields.js +0 -2
- package/esm2015/domain/general/model/index.js +0 -5
- package/esm2015/domain/general/model/types/base-model-builder.type.js +0 -2
- package/esm2015/domain/general/model/types/index.js +0 -4
- package/esm2015/domain/general/model/types/non-function-properties.type.js +0 -2
- package/esm2015/domain/general/model/types/non-function-property-name.type.js +0 -2
- package/esm2015/domain/general/repository/create.repository.js +0 -2
- package/esm2015/domain/general/repository/crud.repository.js +0 -2
- package/esm2015/domain/general/repository/delete.repository.js +0 -2
- package/esm2015/domain/general/repository/enums/index.js +0 -3
- package/esm2015/domain/general/repository/enums/update-option-actions.enum.js +0 -9
- package/esm2015/domain/general/repository/enums/where.enum.js +0 -12
- package/esm2015/domain/general/repository/find.repository.js +0 -2
- package/esm2015/domain/general/repository/get.repository.js +0 -2
- package/esm2015/domain/general/repository/index.js +0 -10
- package/esm2015/domain/general/repository/read.repository.js +0 -2
- package/esm2015/domain/general/repository/types/index.js +0 -6
- package/esm2015/domain/general/repository/types/repository-find-filters.type.js +0 -2
- package/esm2015/domain/general/repository/types/repository-find-result.type.js +0 -2
- package/esm2015/domain/general/repository/types/repository-limit-options.type.js +0 -2
- package/esm2015/domain/general/repository/types/repository-order-by-list.type.js +0 -2
- package/esm2015/domain/general/repository/types/repository-update-params.type.js +0 -2
- package/esm2015/domain/general/repository/update.repository.js +0 -2
- package/esm2015/domain/index.js +0 -7
- package/esm2015/domain/location/index.js +0 -2
- package/esm2015/domain/location/models/address.js +0 -4
- package/esm2015/domain/location/models/index.js +0 -3
- package/esm2015/domain/location/models/types/index.js +0 -4
- package/esm2015/domain/location/models/types/location-bound.type.js +0 -2
- package/esm2015/domain/location/models/types/location-geometry.type.js +0 -2
- package/esm2015/domain/location/models/types/location-lat-lng.type.js +0 -2
- package/esm2015/domain/shop-settings/enums/filter-type.enum.js +0 -21
- package/esm2015/domain/shop-settings/enums/index.js +0 -3
- package/esm2015/domain/shop-settings/enums/questions-filters.enum.js +0 -21
- package/esm2015/domain/shop-settings/helpers/beauty-questions.helper.js +0 -46
- package/esm2015/domain/shop-settings/helpers/index.js +0 -2
- package/esm2015/domain/shop-settings/index.js +0 -5
- package/esm2015/domain/shop-settings/models/home.js +0 -7
- package/esm2015/domain/shop-settings/models/index.js +0 -4
- package/esm2015/domain/shop-settings/models/shop-menu.js +0 -7
- package/esm2015/domain/shop-settings/models/types/banner.type.js +0 -2
- package/esm2015/domain/shop-settings/models/types/benefit.type.js +0 -2
- package/esm2015/domain/shop-settings/models/types/home-data.type.js +0 -2
- package/esm2015/domain/shop-settings/models/types/index.js +0 -6
- package/esm2015/domain/shop-settings/models/types/menu-nav.type.js +0 -2
- package/esm2015/domain/shop-settings/models/types/sub-menu.type.js +0 -2
- package/esm2015/domain/shop-settings/repositories/home.repository.js +0 -2
- package/esm2015/domain/shop-settings/repositories/index.js +0 -3
- package/esm2015/domain/shop-settings/repositories/shop-menu.repository.js +0 -2
- package/esm2015/domain/shopping/index.js +0 -3
- package/esm2015/domain/shopping/models/buy-2-win.js +0 -14
- package/esm2015/domain/shopping/models/checkout.js +0 -38
- package/esm2015/domain/shopping/models/coupons/coupon.js +0 -38
- package/esm2015/domain/shopping/models/coupons/enums/coupon-club-mens.enum.js +0 -7
- package/esm2015/domain/shopping/models/coupons/enums/coupon-subtypes.enum.js +0 -6
- package/esm2015/domain/shopping/models/coupons/enums/coupon-types.enum.js +0 -10
- package/esm2015/domain/shopping/models/coupons/enums/exclusivities.enum.js +0 -9
- package/esm2015/domain/shopping/models/coupons/enums/index.js +0 -4
- package/esm2015/domain/shopping/models/coupons/index.js +0 -3
- package/esm2015/domain/shopping/models/enums/checkout-types.enum.js +0 -7
- package/esm2015/domain/shopping/models/enums/index.js +0 -3
- package/esm2015/domain/shopping/models/enums/order-status.enum.js +0 -12
- package/esm2015/domain/shopping/models/index.js +0 -12
- package/esm2015/domain/shopping/models/line-item.js +0 -4
- package/esm2015/domain/shopping/models/order.js +0 -11
- package/esm2015/domain/shopping/models/payment.js +0 -169
- package/esm2015/domain/shopping/models/shipping-method.js +0 -7
- package/esm2015/domain/shopping/models/subscription/checkout.js +0 -28
- package/esm2015/domain/shopping/models/subscription/index.js +0 -3
- package/esm2015/domain/shopping/models/subscription/plan.js +0 -7
- package/esm2015/domain/shopping/models/types/index.js +0 -8
- package/esm2015/domain/shopping/models/types/payment-address.type.js +0 -2
- package/esm2015/domain/shopping/models/types/payment-billing.type.js +0 -2
- package/esm2015/domain/shopping/models/types/payment-card.type.js +0 -2
- package/esm2015/domain/shopping/models/types/payment-customer.type.js +0 -2
- package/esm2015/domain/shopping/models/types/payment-document.type.js +0 -2
- package/esm2015/domain/shopping/models/types/payment-item.type.js +0 -2
- package/esm2015/domain/shopping/models/types/payment-shipping.type.js +0 -2
- package/esm2015/domain/shopping/repositories/buy-2-win.repository.js +0 -2
- package/esm2015/domain/shopping/repositories/checkout.repository.js +0 -2
- package/esm2015/domain/shopping/repositories/coupon.repository.js +0 -2
- package/esm2015/domain/shopping/repositories/index.js +0 -8
- package/esm2015/domain/shopping/repositories/legacy-order.repository.js +0 -2
- package/esm2015/domain/shopping/repositories/order.repository.js +0 -2
- package/esm2015/domain/shopping/repositories/payment.repository.js +0 -2
- package/esm2015/domain/shopping/repositories/subscription/checkout.repository.js +0 -2
- package/esm2015/domain/shopping/repositories/subscription/index.js +0 -3
- package/esm2015/domain/shopping/repositories/subscription/plan.repository.js +0 -2
- package/esm2015/domain/users/errors/index.js +0 -4
- package/esm2015/domain/users/errors/unauthorized.error.js +0 -7
- package/esm2015/domain/users/errors/user-already-registered.error.js +0 -7
- package/esm2015/domain/users/errors/weak-password.error.js +0 -7
- package/esm2015/domain/users/index.js +0 -6
- package/esm2015/domain/users/models/beauty-profile.js +0 -12
- package/esm2015/domain/users/models/enums/accessory-importances.enum.js +0 -7
- package/esm2015/domain/users/models/enums/area.enum.js +0 -13
- package/esm2015/domain/users/models/enums/beard-problems.enum.js +0 -11
- package/esm2015/domain/users/models/enums/beard-sizes.enum.js +0 -9
- package/esm2015/domain/users/models/enums/beauty-product-importances.enum.js +0 -8
- package/esm2015/domain/users/models/enums/body-problems.enum.js +0 -13
- package/esm2015/domain/users/models/enums/body-shapes.enum.js +0 -9
- package/esm2015/domain/users/models/enums/body-tattoos.enum.js +0 -7
- package/esm2015/domain/users/models/enums/face-skin-oilinesses.enum.js +0 -9
- package/esm2015/domain/users/models/enums/face-skin-problems.enum.js +0 -12
- package/esm2015/domain/users/models/enums/face-skin-tones.enum.js +0 -10
- package/esm2015/domain/users/models/enums/family-incomes.enum.js +0 -10
- package/esm2015/domain/users/models/enums/fragrance-importances.enum.js +0 -7
- package/esm2015/domain/users/models/enums/hair-colors.enum.js +0 -12
- package/esm2015/domain/users/models/enums/hair-problems.enum.js +0 -12
- package/esm2015/domain/users/models/enums/hair-strands.enum.js +0 -10
- package/esm2015/domain/users/models/enums/hair-types.enum.js +0 -9
- package/esm2015/domain/users/models/enums/index.js +0 -21
- package/esm2015/domain/users/models/enums/office-position.enum.js +0 -8
- package/esm2015/domain/users/models/enums/product-spents.enum.js +0 -10
- package/esm2015/domain/users/models/enums/user-type.enum.js +0 -10
- package/esm2015/domain/users/models/index.js +0 -8
- package/esm2015/domain/users/models/lead.js +0 -7
- package/esm2015/domain/users/models/subscription/edition.js +0 -7
- package/esm2015/domain/users/models/subscription/enums/billing-status.enum.js +0 -5
- package/esm2015/domain/users/models/subscription/enums/edition-status.enum.js +0 -6
- package/esm2015/domain/users/models/subscription/enums/index.js +0 -5
- package/esm2015/domain/users/models/subscription/enums/payment-type.enum.js +0 -7
- package/esm2015/domain/users/models/subscription/enums/status.enum.js +0 -6
- package/esm2015/domain/users/models/subscription/index.js +0 -5
- package/esm2015/domain/users/models/subscription/payment.js +0 -14
- package/esm2015/domain/users/models/subscription/subscription.js +0 -43
- package/esm2015/domain/users/models/user-address.js +0 -7
- package/esm2015/domain/users/models/user-payment-method.js +0 -7
- package/esm2015/domain/users/models/user.js +0 -26
- package/esm2015/domain/users/repositories/beauty-profile.repository.js +0 -2
- package/esm2015/domain/users/repositories/edition.repository.js +0 -2
- package/esm2015/domain/users/repositories/index.js +0 -9
- package/esm2015/domain/users/repositories/lead.repository.js +0 -2
- package/esm2015/domain/users/repositories/subscription-payment.repository.js +0 -2
- package/esm2015/domain/users/repositories/subscription.repository.js +0 -2
- package/esm2015/domain/users/repositories/user-address.repository.js +0 -2
- package/esm2015/domain/users/repositories/user-payment-method.repository.js +0 -2
- package/esm2015/domain/users/repositories/user.repository.js +0 -2
- package/esm2015/domain/users/services/authentication.service.js +0 -2
- package/esm2015/domain/users/services/index.js +0 -4
- package/esm2015/domain/users/services/register.service.js +0 -2
- package/esm2015/domain/users/services/types/basic-user-data.type.js +0 -2
- package/esm2015/domain/users/services/types/index.js +0 -2
- package/esm2015/domain/users/use-cases/authentication.js +0 -40
- package/esm2015/domain/users/use-cases/index.js +0 -5
- package/esm2015/domain/users/use-cases/recovery-password.js +0 -12
- package/esm2015/domain/users/use-cases/register.js +0 -34
- package/esm2015/domain/users/use-cases/signout.js +0 -12
- package/esm2015/errors/duplicated-results.error.js +0 -7
- package/esm2015/errors/index.js +0 -5
- package/esm2015/errors/invalid-argument.error.js +0 -7
- package/esm2015/errors/not-found.error.js +0 -7
- package/esm2015/errors/required-argument.error.js +0 -8
- package/esm2015/index.js +0 -6
- package/esm2015/infra/elasticsearch/adapters/axios.adapter.js +0 -22
- package/esm2015/infra/elasticsearch/adapters/elastic-search.adapter.js +0 -2
- package/esm2015/infra/elasticsearch/adapters/index.js +0 -3
- package/esm2015/infra/elasticsearch/index.js +0 -4
- package/esm2015/infra/elasticsearch/indexes/index.js +0 -2
- package/esm2015/infra/elasticsearch/indexes/products-index.js +0 -59
- package/esm2015/infra/elasticsearch/types/elastic-search-result.js +0 -2
- package/esm2015/infra/elasticsearch/types/index.js +0 -2
- package/esm2015/infra/firebase/auth/authentication-firebase-auth.service.js +0 -52
- package/esm2015/infra/firebase/auth/index.js +0 -3
- package/esm2015/infra/firebase/auth/register-firebase-auth.service.js +0 -26
- package/esm2015/infra/firebase/auth/types/firebase-user-with-id.type.js +0 -2
- package/esm2015/infra/firebase/firestore/index.js +0 -4
- package/esm2015/infra/firebase/firestore/mixins/index.js +0 -10
- package/esm2015/infra/firebase/firestore/mixins/with-create-firestore.mixin.js +0 -31
- package/esm2015/infra/firebase/firestore/mixins/with-crud-firestore.mixin.js +0 -10
- package/esm2015/infra/firebase/firestore/mixins/with-delete-firestore.mixin.js +0 -18
- package/esm2015/infra/firebase/firestore/mixins/with-find-firestore.mixin.js +0 -87
- package/esm2015/infra/firebase/firestore/mixins/with-firestore.mixin.js +0 -26
- package/esm2015/infra/firebase/firestore/mixins/with-get-firestore.mixin.js +0 -24
- package/esm2015/infra/firebase/firestore/mixins/with-helpers.mixin.js +0 -17
- package/esm2015/infra/firebase/firestore/mixins/with-sub-collection.mixin.js +0 -11
- package/esm2015/infra/firebase/firestore/mixins/with-update-firestore.mixin.js +0 -45
- package/esm2015/infra/firebase/firestore/models/user-search.js +0 -7
- package/esm2015/infra/firebase/firestore/repositories/catalog/category-firestore.repository.js +0 -70
- package/esm2015/infra/firebase/firestore/repositories/catalog/index.js +0 -5
- package/esm2015/infra/firebase/firestore/repositories/catalog/product-firestore.repository.js +0 -23
- package/esm2015/infra/firebase/firestore/repositories/catalog/product-variant-firestore.repository.js +0 -14
- package/esm2015/infra/firebase/firestore/repositories/catalog/subscription-product-firestore.repository.js +0 -12
- package/esm2015/infra/firebase/firestore/repositories/index.js +0 -5
- package/esm2015/infra/firebase/firestore/repositories/shop-settings/home-firestore.repository.js +0 -56
- package/esm2015/infra/firebase/firestore/repositories/shop-settings/index.js +0 -3
- package/esm2015/infra/firebase/firestore/repositories/shop-settings/shop-menu-firestore.repository.js +0 -12
- package/esm2015/infra/firebase/firestore/repositories/shopping/buy-2-win-firestore.repository.js +0 -12
- package/esm2015/infra/firebase/firestore/repositories/shopping/checkout-firestore.repository.js +0 -12
- package/esm2015/infra/firebase/firestore/repositories/shopping/checkout-subscription-firestore.repository.js +0 -12
- package/esm2015/infra/firebase/firestore/repositories/shopping/coupon-firestore.repository.js +0 -29
- package/esm2015/infra/firebase/firestore/repositories/shopping/index.js +0 -9
- package/esm2015/infra/firebase/firestore/repositories/shopping/legacy-order-firestore.repository.js +0 -9
- package/esm2015/infra/firebase/firestore/repositories/shopping/order-firestore.repository.js +0 -12
- package/esm2015/infra/firebase/firestore/repositories/shopping/payment-firestore.repository.js +0 -12
- package/esm2015/infra/firebase/firestore/repositories/shopping/subscription-plan-firestore.repository.js +0 -12
- package/esm2015/infra/firebase/firestore/repositories/users/index.js +0 -10
- package/esm2015/infra/firebase/firestore/repositories/users/lead-firestore.repository.js +0 -12
- package/esm2015/infra/firebase/firestore/repositories/users/subscription-edition-firestore.repository.js +0 -14
- package/esm2015/infra/firebase/firestore/repositories/users/subscription-firestore.repository.js +0 -12
- package/esm2015/infra/firebase/firestore/repositories/users/subscription-payment-firestore.repository.js +0 -14
- package/esm2015/infra/firebase/firestore/repositories/users/user-address-firestore.repository.js +0 -14
- package/esm2015/infra/firebase/firestore/repositories/users/user-beauty-profile-firestore.repository.js +0 -14
- package/esm2015/infra/firebase/firestore/repositories/users/user-firestore.repository.js +0 -70
- package/esm2015/infra/firebase/firestore/repositories/users/user-payment-method-firestore.repository.js +0 -14
- package/esm2015/infra/firebase/firestore/repositories/users/user-search-firestore.repository.js +0 -12
- package/esm2015/infra/firebase/firestore/types/firestore-sub.repository.type.js +0 -2
- package/esm2015/infra/firebase/firestore/types/firestore.helpers.type.js +0 -2
- package/esm2015/infra/firebase/firestore/types/firestore.repository.type.js +0 -2
- package/esm2015/infra/firebase/firestore/types/index.js +0 -4
- package/esm2015/infra/firebase/index.js +0 -3
- package/esm2015/infra/index.js +0 -3
- package/esm2015/infrab4a-connect.js +0 -5
- package/esm2015/utils/index.js +0 -6
- package/esm2015/utils/mixins/base.mixin.js +0 -6
- package/esm2015/utils/mixins/index.js +0 -3
- package/esm2015/utils/mixins/mixin-ctor.type.js +0 -2
- package/esm2015/utils/types/index.js +0 -2
- package/esm2015/utils/types/prop.type.js +0 -2
- package/fesm2015/infrab4a-connect.js +0 -1777
- package/fesm2015/infrab4a-connect.js.map +0 -1
- package/index.d.ts +0 -5
- package/infra/elasticsearch/adapters/axios.adapter.d.ts +0 -11
- package/infra/elasticsearch/adapters/index.d.ts +0 -2
- package/infra/elasticsearch/index.d.ts +0 -3
- package/infra/elasticsearch/indexes/index.d.ts +0 -1
- package/infra/elasticsearch/indexes/products-index.d.ts +0 -11
- package/infra/elasticsearch/types/elastic-search-result.d.ts +0 -7
- package/infra/elasticsearch/types/index.d.ts +0 -1
- package/infra/firebase/auth/authentication-firebase-auth.service.d.ts +0 -12
- package/infra/firebase/auth/index.d.ts +0 -2
- package/infra/firebase/auth/register-firebase-auth.service.d.ts +0 -8
- package/infra/firebase/auth/types/firebase-user-with-id.type.d.ts +0 -3
- package/infra/firebase/firestore/index.d.ts +0 -3
- package/infra/firebase/firestore/mixins/index.d.ts +0 -9
- package/infra/firebase/firestore/mixins/with-create-firestore.mixin.d.ts +0 -17
- package/infra/firebase/firestore/mixins/with-crud-firestore.mixin.d.ts +0 -29
- package/infra/firebase/firestore/mixins/with-delete-firestore.mixin.d.ts +0 -15
- package/infra/firebase/firestore/mixins/with-find-firestore.mixin.d.ts +0 -20
- package/infra/firebase/firestore/mixins/with-firestore.mixin.d.ts +0 -15
- package/infra/firebase/firestore/mixins/with-get-firestore.mixin.d.ts +0 -15
- package/infra/firebase/firestore/mixins/with-helpers.mixin.d.ts +0 -10
- package/infra/firebase/firestore/mixins/with-sub-collection.mixin.d.ts +0 -14
- package/infra/firebase/firestore/mixins/with-update-firestore.mixin.d.ts +0 -16
- package/infra/firebase/firestore/models/user-search.d.ts +0 -9
- package/infra/firebase/firestore/repositories/catalog/category-firestore.repository.d.ts +0 -58
- package/infra/firebase/firestore/repositories/catalog/index.d.ts +0 -4
- package/infra/firebase/firestore/repositories/catalog/product-firestore.repository.d.ts +0 -50
- package/infra/firebase/firestore/repositories/catalog/product-variant-firestore.repository.d.ts +0 -60
- package/infra/firebase/firestore/repositories/catalog/subscription-product-firestore.repository.d.ts +0 -49
- package/infra/firebase/firestore/repositories/index.d.ts +0 -4
- package/infra/firebase/firestore/repositories/shop-settings/home-firestore.repository.d.ts +0 -57
- package/infra/firebase/firestore/repositories/shop-settings/index.d.ts +0 -2
- package/infra/firebase/firestore/repositories/shop-settings/shop-menu-firestore.repository.d.ts +0 -49
- package/infra/firebase/firestore/repositories/shopping/buy-2-win-firestore.repository.d.ts +0 -49
- package/infra/firebase/firestore/repositories/shopping/checkout-firestore.repository.d.ts +0 -49
- package/infra/firebase/firestore/repositories/shopping/checkout-subscription-firestore.repository.d.ts +0 -49
- package/infra/firebase/firestore/repositories/shopping/coupon-firestore.repository.d.ts +0 -53
- package/infra/firebase/firestore/repositories/shopping/index.d.ts +0 -8
- package/infra/firebase/firestore/repositories/shopping/legacy-order-firestore.repository.d.ts +0 -7
- package/infra/firebase/firestore/repositories/shopping/order-firestore.repository.d.ts +0 -49
- package/infra/firebase/firestore/repositories/shopping/payment-firestore.repository.d.ts +0 -49
- package/infra/firebase/firestore/repositories/shopping/subscription-plan-firestore.repository.d.ts +0 -49
- package/infra/firebase/firestore/repositories/users/index.d.ts +0 -9
- package/infra/firebase/firestore/repositories/users/lead-firestore.repository.d.ts +0 -49
- package/infra/firebase/firestore/repositories/users/subscription-edition-firestore.repository.d.ts +0 -60
- package/infra/firebase/firestore/repositories/users/subscription-firestore.repository.d.ts +0 -49
- package/infra/firebase/firestore/repositories/users/subscription-payment-firestore.repository.d.ts +0 -60
- package/infra/firebase/firestore/repositories/users/user-address-firestore.repository.d.ts +0 -60
- package/infra/firebase/firestore/repositories/users/user-beauty-profile-firestore.repository.d.ts +0 -60
- package/infra/firebase/firestore/repositories/users/user-firestore.repository.d.ts +0 -60
- package/infra/firebase/firestore/repositories/users/user-payment-method-firestore.repository.d.ts +0 -60
- package/infra/firebase/firestore/repositories/users/user-search-firestore.repository.d.ts +0 -50
- package/infra/firebase/firestore/types/firestore-sub.repository.type.d.ts +0 -6
- package/infra/firebase/firestore/types/firestore.helpers.type.d.ts +0 -8
- package/infra/firebase/firestore/types/firestore.repository.type.d.ts +0 -8
- package/infra/firebase/firestore/types/index.d.ts +0 -3
- package/infra/firebase/index.d.ts +0 -2
- package/infra/index.d.ts +0 -2
- package/infrab4a-connect.d.ts +0 -5
- package/utils/index.d.ts +0 -6
- package/utils/mixins/base.mixin.d.ts +0 -3
- package/utils/mixins/index.d.ts +0 -2
- package/utils/mixins/mixin-ctor.type.d.ts +0 -1
- package/utils/types/index.d.ts +0 -1
- package/utils/types/prop.type.d.ts +0 -1
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { BaseModel } from '../../general/model/base.model'
|
|
2
|
+
import { IdentifierFields } from '../../general/model/identifier-fields'
|
|
3
|
+
import { NonFunctionPropertyNames } from '../../general/model/types'
|
|
4
|
+
|
|
5
|
+
export class Lead extends BaseModel<Lead> implements IdentifierFields<Lead> {
|
|
6
|
+
id: string
|
|
7
|
+
acceptsNewsletter: boolean
|
|
8
|
+
email: string
|
|
9
|
+
|
|
10
|
+
identifierFields(): NonFunctionPropertyNames<Lead>[] {
|
|
11
|
+
return ['id']
|
|
12
|
+
}
|
|
13
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { BaseModel } from '../../../general/model/base.model'
|
|
2
|
+
import { IdentifierFields } from '../../../general/model/identifier-fields'
|
|
3
|
+
import { NonFunctionPropertyNames } from '../../../general/model/types/non-function-property-name.type'
|
|
4
|
+
|
|
5
|
+
import { EditionStatus, BillingStatus } from './enums'
|
|
6
|
+
|
|
7
|
+
export class Edition extends BaseModel<Edition> implements IdentifierFields<Edition> {
|
|
8
|
+
id: string
|
|
9
|
+
subscriptionId: string
|
|
10
|
+
billingStatus: BillingStatus
|
|
11
|
+
editionId: number
|
|
12
|
+
editionStatus: EditionStatus
|
|
13
|
+
installment: number
|
|
14
|
+
paymentId: string
|
|
15
|
+
draftId?: string
|
|
16
|
+
createdAt: Date
|
|
17
|
+
updatedAt: Date
|
|
18
|
+
|
|
19
|
+
identifierFields(): NonFunctionPropertyNames<Edition>[] {
|
|
20
|
+
return ['id']
|
|
21
|
+
}
|
|
22
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { Type } from 'class-transformer'
|
|
2
|
+
|
|
3
|
+
import { BaseModel } from '../../../general/model/base.model'
|
|
4
|
+
import { IdentifierFields } from '../../../general/model/identifier-fields'
|
|
5
|
+
import { NonFunctionPropertyNames } from '../../../general/model/types'
|
|
6
|
+
import { Payment } from '../../../shopping/models/payment'
|
|
7
|
+
|
|
8
|
+
import { PaymentType } from './enums/payment-type.enum'
|
|
9
|
+
|
|
10
|
+
export class SubscriptionPayment
|
|
11
|
+
extends BaseModel<SubscriptionPayment>
|
|
12
|
+
implements IdentifierFields<SubscriptionPayment>
|
|
13
|
+
{
|
|
14
|
+
id: string
|
|
15
|
+
subscriptionId: string
|
|
16
|
+
paymentType: PaymentType
|
|
17
|
+
createdAt: Date
|
|
18
|
+
attempts?: number
|
|
19
|
+
|
|
20
|
+
@Type(() => Payment)
|
|
21
|
+
payment: Payment
|
|
22
|
+
|
|
23
|
+
identifierFields(): NonFunctionPropertyNames<SubscriptionPayment>[] {
|
|
24
|
+
return ['id']
|
|
25
|
+
}
|
|
26
|
+
}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { Type } from 'class-transformer'
|
|
2
|
+
|
|
3
|
+
import { Address } from '../../../location/models/address'
|
|
4
|
+
import { BaseModel } from '../../../general/model/base.model'
|
|
5
|
+
import { Coupon } from '../../../shopping/models/coupons/coupon'
|
|
6
|
+
import { IdentifierFields } from '../../../general/model/identifier-fields'
|
|
7
|
+
import { NonFunctionPropertyNames } from '../../../general/model/types/non-function-property-name.type'
|
|
8
|
+
import { SubscriptionPlan } from '../../../shopping/models/subscription/plan'
|
|
9
|
+
import { User } from '../user'
|
|
10
|
+
|
|
11
|
+
import { Edition } from './edition'
|
|
12
|
+
import { Status } from './enums/status.enum'
|
|
13
|
+
import { SubscriptionPayment } from './payment'
|
|
14
|
+
|
|
15
|
+
export class Subscription extends BaseModel<Subscription> implements IdentifierFields<Subscription> {
|
|
16
|
+
id: string
|
|
17
|
+
nextPayment: Date
|
|
18
|
+
recurrence: boolean
|
|
19
|
+
status: Status
|
|
20
|
+
cardToken: string
|
|
21
|
+
subtotalPrice?: number
|
|
22
|
+
discount?: number
|
|
23
|
+
totalPrice?: number
|
|
24
|
+
createdAt: Date
|
|
25
|
+
updatedAt: Date
|
|
26
|
+
|
|
27
|
+
@Type(() => User)
|
|
28
|
+
user: User
|
|
29
|
+
@Type(() => SubscriptionPlan)
|
|
30
|
+
subscriptionPlan: SubscriptionPlan
|
|
31
|
+
@Type(() => Address)
|
|
32
|
+
shippingAddress: Address
|
|
33
|
+
@Type(() => Address)
|
|
34
|
+
billingAddress?: Address
|
|
35
|
+
@Type(() => Coupon)
|
|
36
|
+
coupon?: Coupon
|
|
37
|
+
@Type(() => Edition)
|
|
38
|
+
editions: Edition[]
|
|
39
|
+
@Type(() => SubscriptionPayment)
|
|
40
|
+
payment?: SubscriptionPayment[]
|
|
41
|
+
|
|
42
|
+
identifierFields(): NonFunctionPropertyNames<Subscription>[] {
|
|
43
|
+
return ['id']
|
|
44
|
+
}
|
|
45
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Address } from '../../location/models/address'
|
|
2
|
+
import { NonFunctionPropertyNames } from '../../general/model/types/non-function-property-name.type'
|
|
3
|
+
|
|
4
|
+
export class UserAddress extends Address {
|
|
5
|
+
id: string
|
|
6
|
+
userId: string
|
|
7
|
+
|
|
8
|
+
identifierFields(): NonFunctionPropertyNames<UserAddress>[] {
|
|
9
|
+
return ['id']
|
|
10
|
+
}
|
|
11
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { BaseModel } from '../../general/model/base.model'
|
|
2
|
+
import { NonFunctionPropertyNames } from '../../general/model/types/non-function-property-name.type'
|
|
3
|
+
|
|
4
|
+
export class UserPaymentMethod extends BaseModel<UserPaymentMethod> {
|
|
5
|
+
brand: string
|
|
6
|
+
cpf: string
|
|
7
|
+
holderName: string
|
|
8
|
+
last4: string
|
|
9
|
+
pagarmeToken: string
|
|
10
|
+
validUntil: string
|
|
11
|
+
userId: string
|
|
12
|
+
id: string
|
|
13
|
+
fingerprint: string
|
|
14
|
+
|
|
15
|
+
identifierFields(): NonFunctionPropertyNames<UserPaymentMethod>[] {
|
|
16
|
+
return ['id']
|
|
17
|
+
}
|
|
18
|
+
}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { Type } from 'class-transformer'
|
|
2
|
+
|
|
3
|
+
import { BaseModel } from '../../general/model/base.model'
|
|
4
|
+
import { IdentifierFields } from '../../general/model/identifier-fields'
|
|
5
|
+
import { isNil } from '../../../utils'
|
|
6
|
+
import { NonFunctionProperties, NonFunctionPropertyNames } from '../../general/model/types'
|
|
7
|
+
|
|
8
|
+
import { Area, OfficePosition, UserType } from './enums'
|
|
9
|
+
import { BeautyProfile } from './beauty-profile'
|
|
10
|
+
|
|
11
|
+
export class User extends BaseModel<User> implements IdentifierFields<User> {
|
|
12
|
+
id: string
|
|
13
|
+
cpf?: string
|
|
14
|
+
email: string
|
|
15
|
+
firstName: string
|
|
16
|
+
lastName: string
|
|
17
|
+
displayName?: string
|
|
18
|
+
phone: string
|
|
19
|
+
birthday?: Date
|
|
20
|
+
acceptsNewsletter: boolean
|
|
21
|
+
type?: UserType
|
|
22
|
+
area?: Area
|
|
23
|
+
officePosition?: OfficePosition
|
|
24
|
+
isSubscriber?: boolean
|
|
25
|
+
subscriptionPlan?: string
|
|
26
|
+
|
|
27
|
+
@Type(() => BeautyProfile)
|
|
28
|
+
beautyProfile?: BeautyProfile
|
|
29
|
+
|
|
30
|
+
static toInstance<T>(this: new () => Partial<T>, data: NonFunctionProperties<T> & NonFunctionProperties<User>): T {
|
|
31
|
+
const instance = super.toInstance<User>(data)
|
|
32
|
+
|
|
33
|
+
if (!isNil(data.firstName))
|
|
34
|
+
instance.displayName = `${data.firstName}${!isNil(data.lastName) ? ` ${data.lastName}` : ''}`
|
|
35
|
+
|
|
36
|
+
return instance as any
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
identifierFields(): NonFunctionPropertyNames<User>[] {
|
|
40
|
+
return ['id']
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
toPlain(): any {
|
|
44
|
+
const plain = super.toPlain()
|
|
45
|
+
|
|
46
|
+
delete plain.beautyProfile
|
|
47
|
+
|
|
48
|
+
return plain
|
|
49
|
+
}
|
|
50
|
+
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CrudRepository } from '../../general/repository/crud.repository'
|
|
2
|
-
import { BeautyProfile } from '../models/beauty-profile'
|
|
3
|
-
|
|
4
|
-
}
|
|
1
|
+
import { CrudRepository } from '../../general/repository/crud.repository'
|
|
2
|
+
import { BeautyProfile } from '../models/beauty-profile'
|
|
3
|
+
|
|
4
|
+
export interface BeautyProfileRepository extends CrudRepository<BeautyProfile> {}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CrudRepository } from '../../general/repository/crud.repository'
|
|
2
|
-
import { Edition } from '../models/subscription/edition'
|
|
3
|
-
|
|
4
|
-
}
|
|
1
|
+
import { CrudRepository } from '../../general/repository/crud.repository'
|
|
2
|
+
import { Edition } from '../models/subscription/edition'
|
|
3
|
+
|
|
4
|
+
export interface EditionRepository extends CrudRepository<Edition> {}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export * from './user.repository'
|
|
2
|
+
export * from './subscription.repository'
|
|
3
|
+
export * from './edition.repository'
|
|
4
|
+
export * from './beauty-profile.repository'
|
|
5
|
+
export * from './user-address.repository'
|
|
6
|
+
export * from './user-payment-method.repository'
|
|
7
|
+
export * from './subscription-payment.repository'
|
|
8
|
+
export * from './lead.repository'
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CrudRepository } from '../../general/repository/crud.repository'
|
|
2
|
-
import { SubscriptionPayment } from '../models/subscription/payment'
|
|
3
|
-
|
|
4
|
-
}
|
|
1
|
+
import { CrudRepository } from '../../general/repository/crud.repository'
|
|
2
|
+
import { SubscriptionPayment } from '../models/subscription/payment'
|
|
3
|
+
|
|
4
|
+
export interface SubscriptionPaymentRepository extends CrudRepository<SubscriptionPayment> {}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CrudRepository } from '../../general/repository/crud.repository'
|
|
2
|
-
import { Subscription } from '../models/subscription/subscription'
|
|
3
|
-
|
|
4
|
-
}
|
|
1
|
+
import { CrudRepository } from '../../general/repository/crud.repository'
|
|
2
|
+
import { Subscription } from '../models/subscription/subscription'
|
|
3
|
+
|
|
4
|
+
export interface SubscriptionRepository extends CrudRepository<Subscription> {}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CrudRepository } from '../../general/repository/crud.repository'
|
|
2
|
-
import { UserAddress } from '../models/user-address'
|
|
3
|
-
|
|
4
|
-
}
|
|
1
|
+
import { CrudRepository } from '../../general/repository/crud.repository'
|
|
2
|
+
import { UserAddress } from '../models/user-address'
|
|
3
|
+
|
|
4
|
+
export interface UserAddressRepository extends CrudRepository<UserAddress> {}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { UserPaymentMethod } from '../models/user-payment-method'
|
|
2
|
-
import { CrudRepository } from '../../general/repository/crud.repository'
|
|
3
|
-
|
|
4
|
-
}
|
|
1
|
+
import { UserPaymentMethod } from '../models/user-payment-method'
|
|
2
|
+
import { CrudRepository } from '../../general/repository/crud.repository'
|
|
3
|
+
|
|
4
|
+
export interface UserPaymentMethodRepository extends CrudRepository<UserPaymentMethod> {}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { CrudRepository } from '../../general/repository/crud.repository'
|
|
2
|
+
import { NonFunctionPropertyNames } from '../../general'
|
|
3
|
+
import { User } from '../models/user'
|
|
4
|
+
|
|
5
|
+
export interface UserRepository extends CrudRepository<User> {
|
|
6
|
+
checkIfExistsByField(field: Extract<NonFunctionPropertyNames<User>, 'cpf' | 'email'>, value: string): Promise<boolean>
|
|
7
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { BasicUserData } from './types/basic-user-data.type'
|
|
2
|
+
|
|
3
|
+
export type LoginAndPasswordParams = {
|
|
4
|
+
email: string
|
|
5
|
+
password: string
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export interface AuthenticationService {
|
|
9
|
+
signInWithEmailAndPassword(data: LoginAndPasswordParams): Promise<BasicUserData>
|
|
10
|
+
signInWithGoogle(): Promise<BasicUserData>
|
|
11
|
+
signOut(): Promise<void>
|
|
12
|
+
signInAnonymously(): Promise<Pick<BasicUserData, 'id' | 'isAnonymous'>>
|
|
13
|
+
sendPasswordResetEmail(email: string): Promise<void>
|
|
14
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './basic-user-data.type'
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { Area, OfficePosition, User, UserType } from '../models'
|
|
2
|
+
import { AuthenticationService } from '../services/authentication.service'
|
|
3
|
+
import { isNil } from '../../../utils'
|
|
4
|
+
import { UnauthorizedError } from '../errors/unauthorized.error'
|
|
5
|
+
import { UserRepository } from '../repositories/user.repository'
|
|
6
|
+
|
|
7
|
+
export enum SignInMethods {
|
|
8
|
+
EMAIL_PASSWORD = 'email_password',
|
|
9
|
+
GOOGLE = 'google',
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
type SignInMethod = Lowercase<keyof typeof SignInMethods>
|
|
13
|
+
|
|
14
|
+
type SignInParams = {
|
|
15
|
+
email?: string
|
|
16
|
+
password?: string
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export class Authentication {
|
|
20
|
+
constructor(private readonly authService: AuthenticationService, private readonly userRepository: UserRepository) {}
|
|
21
|
+
|
|
22
|
+
async signIn({ email, password }: SignInParams, signInMethod: SignInMethod): Promise<User> {
|
|
23
|
+
const method = this.getServiceByMethod(signInMethod)
|
|
24
|
+
const userAuth = await this.authService[method]({ email, password })
|
|
25
|
+
const user = this.userRepository.get(userAuth)
|
|
26
|
+
|
|
27
|
+
if (!isNil(user)) return user
|
|
28
|
+
if (/^.+@b4a.com.br$/.test(userAuth.email)) return this.createsUserByCredential(userAuth)
|
|
29
|
+
|
|
30
|
+
throw new UnauthorizedError('Invalid credentials')
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
private getServiceByMethod(signInMethod: SignInMethod): string {
|
|
34
|
+
return signInMethod === SignInMethods.EMAIL_PASSWORD ? 'signInWithEmailAndPassword' : 'signInWithGoogle'
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
private async createsUserByCredential(user: Partial<User>): Promise<User> {
|
|
38
|
+
const [firstName, lastName] = user.displayName?.split(/\s/)
|
|
39
|
+
const person = User.toInstance({
|
|
40
|
+
...user,
|
|
41
|
+
cpf: '',
|
|
42
|
+
birthday: new Date(),
|
|
43
|
+
firstName,
|
|
44
|
+
lastName,
|
|
45
|
+
acceptsNewsletter: false,
|
|
46
|
+
area: Area.Transactional,
|
|
47
|
+
officePosition: OfficePosition.Intern,
|
|
48
|
+
type: UserType.Collaborator,
|
|
49
|
+
})
|
|
50
|
+
|
|
51
|
+
return this.userRepository.create(person)
|
|
52
|
+
}
|
|
53
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { AuthenticationService } from '../services/authentication.service'
|
|
2
|
+
|
|
3
|
+
export class RecoveryPassword {
|
|
4
|
+
constructor(private readonly authService: AuthenticationService) {}
|
|
5
|
+
|
|
6
|
+
async sendEmail(email: string): Promise<void> {
|
|
7
|
+
await this.authService.sendPasswordResetEmail(email)
|
|
8
|
+
}
|
|
9
|
+
}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { User, UserType } from '../models'
|
|
2
|
+
import { RegisterService } from '../services/register.service'
|
|
3
|
+
import { UserAlreadyRegisteredError } from '../errors'
|
|
4
|
+
import { UserRepository } from '../repositories/user.repository'
|
|
5
|
+
|
|
6
|
+
type RegisterParams = Partial<User> & { password: string }
|
|
7
|
+
|
|
8
|
+
export class Register {
|
|
9
|
+
constructor(private readonly registerService: RegisterService, private readonly userRepository: UserRepository) {}
|
|
10
|
+
|
|
11
|
+
async register(params: RegisterParams): Promise<User> {
|
|
12
|
+
const email = params.email.toLocaleLowerCase()
|
|
13
|
+
const displayName = `${params.firstName} ${params.lastName}`
|
|
14
|
+
|
|
15
|
+
if (await this.userRepository.checkIfExistsByField('cpf', params.cpf))
|
|
16
|
+
throw new UserAlreadyRegisteredError(`Usuário com CPF ${params.cpf} já registrado.`)
|
|
17
|
+
if (await this.userRepository.checkIfExistsByField('email', params.email))
|
|
18
|
+
throw new UserAlreadyRegisteredError(`Usuário com e-mail ${params.email} já registrado.`)
|
|
19
|
+
|
|
20
|
+
const auth = await this.registerService.register({
|
|
21
|
+
birthday: params.birthday,
|
|
22
|
+
email,
|
|
23
|
+
firstName: params.firstName,
|
|
24
|
+
lastName: params.lastName,
|
|
25
|
+
cpf: params.cpf,
|
|
26
|
+
displayName,
|
|
27
|
+
phone: params.phone,
|
|
28
|
+
password: params.password,
|
|
29
|
+
})
|
|
30
|
+
|
|
31
|
+
delete params.password
|
|
32
|
+
|
|
33
|
+
const user = await this.userRepository.create({
|
|
34
|
+
...params,
|
|
35
|
+
id: auth.id,
|
|
36
|
+
email,
|
|
37
|
+
displayName,
|
|
38
|
+
type: UserType.B2C,
|
|
39
|
+
dateCreated: new Date(),
|
|
40
|
+
dateModified: new Date(),
|
|
41
|
+
})
|
|
42
|
+
|
|
43
|
+
return user
|
|
44
|
+
}
|
|
45
|
+
}
|
package/src/index.ts
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import axios from 'axios'
|
|
2
|
+
|
|
3
|
+
import { BaseModel } from '../../../domain'
|
|
4
|
+
import { ElasticSearchResult } from '../types/elastic-search-result'
|
|
5
|
+
|
|
6
|
+
export type AxiosElasticSearchConfig = {
|
|
7
|
+
url: string
|
|
8
|
+
credential: string
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export class AxiosAdapter<T extends BaseModel<T>> {
|
|
12
|
+
constructor(private readonly config: AxiosElasticSearchConfig) {}
|
|
13
|
+
|
|
14
|
+
async query(index: string, query: any): Promise<ElasticSearchResult<Partial<T>>> {
|
|
15
|
+
const { data } = await axios({
|
|
16
|
+
url: `${this.config.url}/${index}`,
|
|
17
|
+
method: 'POST',
|
|
18
|
+
headers: { Authorization: `Basic ${this.config.credential}` },
|
|
19
|
+
data: query,
|
|
20
|
+
})
|
|
21
|
+
|
|
22
|
+
return {
|
|
23
|
+
total: data.hits.total.value,
|
|
24
|
+
hits: data.hits.hits,
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { ElasticSearchResult } from '../types/elastic-search-result'
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import { ElasticSearchResult } from '../types/elastic-search-result'
|
|
2
|
+
|
|
3
|
+
export interface ElasticSearchAdapter<T = any> {
|
|
4
|
+
query(index: string, query: any): Promise<ElasticSearchResult<T>>
|
|
5
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './products-index'
|