ng-easycommerce-v18 0.0.1 → 0.0.3
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 +9 -12
- package/esm2022/lib/api/connection.service.mjs +75 -0
- package/esm2022/lib/api/index.mjs +2 -0
- package/esm2022/lib/classes/checkout/index.mjs +2 -0
- package/esm2022/lib/classes/checkout/steps.mjs +29 -0
- package/esm2022/lib/classes/filters/attributes-filter.mjs +73 -0
- package/esm2022/lib/classes/filters/category-filter.mjs +59 -0
- package/esm2022/lib/classes/filters/dynamics-filter.mjs +58 -0
- package/esm2022/lib/classes/filters/filter-factory.mjs +21 -0
- package/esm2022/lib/classes/filters/filter.mjs +83 -0
- package/esm2022/lib/classes/filters/index.mjs +7 -0
- package/esm2022/lib/classes/filters/sort-filter.mjs +88 -0
- package/esm2022/lib/classes/index.mjs +4 -0
- package/esm2022/lib/classes/user.mjs +59 -0
- package/esm2022/lib/constants/api.constants.service.mjs +71 -0
- package/esm2022/lib/constants/core.constants.service.mjs +205 -0
- package/esm2022/lib/constants/index.mjs +3 -0
- package/esm2022/lib/ec-components/abstractions-components/block-ec.component.mjs +110 -0
- package/esm2022/lib/ec-components/abstractions-components/index.mjs +3 -0
- package/esm2022/lib/ec-components/abstractions-components/menu-ec.component.mjs +97 -0
- package/esm2022/lib/ec-components/account-ec/account-ec.component.mjs +22 -0
- package/esm2022/lib/ec-components/account-ec/index.mjs +4 -0
- package/esm2022/lib/ec-components/account-ec/order-ec/order-ec.component.mjs +16 -0
- package/esm2022/lib/ec-components/account-ec/orders-list-ec/orders-list-ec.component.mjs +150 -0
- package/esm2022/lib/ec-components/auth-ec/auth-ec.component.mjs +12 -0
- package/esm2022/lib/ec-components/auth-ec/confirm-account-ec/confirm-account-ec.component.mjs +30 -0
- package/esm2022/lib/ec-components/auth-ec/forgot-password-ec/forgot-password-ec.component.mjs +54 -0
- package/esm2022/lib/ec-components/auth-ec/index.mjs +7 -0
- package/esm2022/lib/ec-components/auth-ec/login-form-ec/login-form-ec.component.mjs +91 -0
- package/esm2022/lib/ec-components/auth-ec/register-form-ec/register-form-ec.component.mjs +105 -0
- package/esm2022/lib/ec-components/auth-ec/register-wholesaler-form-ec/register-wholesaler-form-ec.component.mjs +153 -0
- package/esm2022/lib/ec-components/blocks-ec/block-banner-box-ec/block-banner-box-ec.component.mjs +109 -0
- package/esm2022/lib/ec-components/blocks-ec/block-banner-full-ec/block-banner-full-ec.component.mjs +87 -0
- package/esm2022/lib/ec-components/blocks-ec/block-form-contact-ec/block-form-contact-ec.component.mjs +87 -0
- package/esm2022/lib/ec-components/blocks-ec/block-html-ec/block-html-ec.component.mjs +37 -0
- package/esm2022/lib/ec-components/blocks-ec/block-newsletter-ec/block-newsletter-ec.component.mjs +86 -0
- package/esm2022/lib/ec-components/blocks-ec/block-products-ec/block-products-ec.component.mjs +109 -0
- package/esm2022/lib/ec-components/blocks-ec/blocks-ec.component.mjs +99 -0
- package/esm2022/lib/ec-components/blocks-ec/index.mjs +5 -0
- package/esm2022/lib/ec-components/breadcrumb-ec/breadcrumb-ec.component.mjs +27 -0
- package/esm2022/lib/ec-components/cart-ec/cart-ec.component.mjs +21 -0
- package/esm2022/lib/ec-components/cart-ec/cart-item-ec/cart-item-ec.component.mjs +47 -0
- package/esm2022/lib/ec-components/cart-ec/index.mjs +3 -0
- package/esm2022/lib/ec-components/checkout-ec/checkout-ec.component.mjs +60 -0
- package/esm2022/lib/ec-components/checkout-ec/dataform-ec/dataform-ec.component.mjs +271 -0
- package/esm2022/lib/ec-components/checkout-ec/dataform-ec/input-ec/input-ec.component.mjs +51 -0
- package/esm2022/lib/ec-components/checkout-ec/detail-checkout-block-ec/detail-checkout-block-ec.component.mjs +45 -0
- package/esm2022/lib/ec-components/checkout-ec/payment-ec/payment-ec.component.mjs +92 -0
- package/esm2022/lib/ec-components/checkout-ec/payment-ec/payment-methods/bank-transfer-ec/bank-transfer-ec.component.mjs +30 -0
- package/esm2022/lib/ec-components/checkout-ec/payment-ec/payment-methods/index.mjs +4 -0
- package/esm2022/lib/ec-components/checkout-ec/payment-ec/payment-methods/mp-redirect-ec/mp-redirect-ec.component.mjs +119 -0
- package/esm2022/lib/ec-components/checkout-ec/payment-ec/payment-methods/offline-ec/offline-ec.component.mjs +32 -0
- package/esm2022/lib/ec-components/checkout-ec/shipment-ec/shipment-ec.component.mjs +96 -0
- package/esm2022/lib/ec-components/checkout-ec/step-container-ec/step-container-ec.component.mjs +35 -0
- package/esm2022/lib/ec-components/checkout-ec/success-ec/success-ec.component.mjs +55 -0
- package/esm2022/lib/ec-components/collection-ec/collection-ec.component.mjs +72 -0
- package/esm2022/lib/ec-components/coupon-ec/coupon-ec.component.mjs +29 -0
- package/esm2022/lib/ec-components/filters-ec/filters-ec.component.mjs +38 -0
- package/esm2022/lib/ec-components/filters-sort-ec/filters-sort-ec.component.mjs +36 -0
- package/esm2022/lib/ec-components/footer-ec/footer-ec.component.mjs +17 -0
- package/esm2022/lib/ec-components/header-ec/header-ec.component.mjs +20 -0
- package/esm2022/lib/ec-components/home-ec/home-ec.component.mjs +14 -0
- package/esm2022/lib/ec-components/index.mjs +25 -0
- package/esm2022/lib/ec-components/product-detail-ec/product-detail-ec.component.mjs +86 -0
- package/esm2022/lib/ec-components/product-ec/product-ec.component.mjs +51 -0
- package/esm2022/lib/ec-components/variants-ec/variants-ec.component.mjs +18 -0
- package/esm2022/lib/ec-components/widgets-ec/index.mjs +5 -0
- package/esm2022/lib/ec-components/widgets-ec/loading/index.mjs +4 -0
- package/esm2022/lib/ec-components/widgets-ec/loading/loading-full-ec/loading-full-ec.component.mjs +11 -0
- package/esm2022/lib/ec-components/widgets-ec/loading/loading-inline-ec/loading-inline-ec.component.mjs +16 -0
- package/esm2022/lib/ec-components/widgets-ec/loading/loading-section-ec/loading-section-ec.component.mjs +12 -0
- package/esm2022/lib/ec-components/widgets-ec/magnizoom-ec/magnizoom-ec.component.mjs +178 -0
- package/esm2022/lib/ec-components/widgets-ec/price-ec/price-ec.component.mjs +27 -0
- package/esm2022/lib/ec-components/widgets-ec/re-captcha-ec/re-captcha-ec.component.mjs +71 -0
- package/esm2022/lib/ec-guards/auth.guard.mjs +18 -0
- package/esm2022/lib/ec-guards/index.mjs +2 -0
- package/esm2022/lib/ec-pipe/ec-currency-symbol.pipe.mjs +104 -0
- package/esm2022/lib/ec-pipe/index.mjs +2 -0
- package/esm2022/lib/ec-services/addressing.service.mjs +185 -0
- package/esm2022/lib/ec-services/analytics/analytics.service.mjs +80 -0
- package/esm2022/lib/ec-services/analytics/doppler.service.mjs +47 -0
- package/esm2022/lib/ec-services/analytics/facebook-pixel.service.mjs +212 -0
- package/esm2022/lib/ec-services/analytics/google-analytics.service.mjs +283 -0
- package/esm2022/lib/ec-services/analytics/gtm.service.mjs +414 -0
- package/esm2022/lib/ec-services/analytics/index.mjs +7 -0
- package/esm2022/lib/ec-services/analytics/metricool-pixel.service.mjs +55 -0
- package/esm2022/lib/ec-services/auth.service.mjs +440 -0
- package/esm2022/lib/ec-services/auth.storage.service.mjs +54 -0
- package/esm2022/lib/ec-services/blocks-repository.service.mjs +64 -0
- package/esm2022/lib/ec-services/blocks.service.mjs +52 -0
- package/esm2022/lib/ec-services/cart.service.mjs +465 -0
- package/esm2022/lib/ec-services/channel.service.mjs +83 -0
- package/esm2022/lib/ec-services/checkout.service.mjs +180 -0
- package/esm2022/lib/ec-services/currency.service.mjs +177 -0
- package/esm2022/lib/ec-services/filters.service.mjs +134 -0
- package/esm2022/lib/ec-services/form.service.mjs +81 -0
- package/esm2022/lib/ec-services/index.mjs +27 -0
- package/esm2022/lib/ec-services/local-storage.service.mjs +58 -0
- package/esm2022/lib/ec-services/ngx-local-storage.service.mjs +66 -0
- package/esm2022/lib/ec-services/options.service.mjs +273 -0
- package/esm2022/lib/ec-services/order-utility.service.mjs +61 -0
- package/esm2022/lib/ec-services/orders.service.mjs +48 -0
- package/esm2022/lib/ec-services/pagination.service.mjs +163 -0
- package/esm2022/lib/ec-services/parameters.service.mjs +65 -0
- package/esm2022/lib/ec-services/payment.service.mjs +54 -0
- package/esm2022/lib/ec-services/product-detail.service.mjs +285 -0
- package/esm2022/lib/ec-services/products.service.mjs +148 -0
- package/esm2022/lib/ec-services/re-captcha.service.mjs +114 -0
- package/esm2022/lib/ec-services/shipment.service.mjs +158 -0
- package/esm2022/lib/ec-services/stores.service.mjs +27 -0
- package/esm2022/lib/ec-services/test.service.mjs +16 -0
- package/esm2022/lib/ec-services/toast.service.mjs +81 -0
- package/esm2022/lib/interceptors/auth.interceptor.mjs +35 -0
- package/esm2022/lib/interceptors/index.mjs +2 -0
- package/esm2022/lib/interfaces/analytics/event-key.mjs +2 -0
- package/esm2022/lib/interfaces/analytics/facebook-pixel-data.mjs +2 -0
- package/esm2022/lib/interfaces/analytics/gtm-config.mjs +2 -0
- package/esm2022/lib/interfaces/analytics/index.mjs +4 -0
- package/esm2022/lib/interfaces/blocks.mjs +2 -0
- package/esm2022/lib/interfaces/checkout.mjs +2 -0
- package/esm2022/lib/interfaces/connection.mjs +2 -0
- package/esm2022/lib/interfaces/coupon.mjs +2 -0
- package/esm2022/lib/interfaces/currency.mjs +2 -0
- package/esm2022/lib/interfaces/deserializable.mjs +2 -0
- package/esm2022/lib/interfaces/environment.mjs +2 -0
- package/esm2022/lib/interfaces/filter.mjs +2 -0
- package/esm2022/lib/interfaces/index.mjs +19 -0
- package/esm2022/lib/interfaces/options.mjs +2 -0
- package/esm2022/lib/interfaces/pagination.mjs +2 -0
- package/esm2022/lib/interfaces/parameter.mjs +2 -0
- package/esm2022/lib/interfaces/product.mjs +2 -0
- package/esm2022/lib/interfaces/step.mjs +2 -0
- package/esm2022/lib/interfaces/storage.mjs +2 -0
- package/esm2022/lib/interfaces/store.mjs +2 -0
- package/esm2022/lib/interfaces/types/index.mjs +2 -0
- package/esm2022/lib/interfaces/types/user.type.mjs +2 -0
- package/esm2022/lib/providers/index.mjs +2 -0
- package/esm2022/lib/providers/provideEnvironment.mjs +20 -0
- package/esm2022/lib/stores/currency.store.mjs +10 -0
- package/esm2022/lib/stores/index.mjs +2 -0
- package/esm2022/ng-easycommerce-v18.mjs +5 -0
- package/esm2022/public-api.mjs +20 -0
- package/fesm2022/ng-easycommerce-v18.mjs +8228 -0
- package/fesm2022/ng-easycommerce-v18.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/api/connection.service.d.ts +52 -0
- package/lib/api/index.d.ts +1 -0
- package/lib/classes/checkout/index.d.ts +1 -0
- package/lib/classes/checkout/steps.d.ts +15 -0
- package/lib/classes/filters/attributes-filter.d.ts +14 -0
- package/lib/classes/filters/category-filter.d.ts +14 -0
- package/lib/classes/filters/dynamics-filter.d.ts +13 -0
- package/lib/classes/filters/filter-factory.d.ts +5 -0
- package/lib/classes/filters/filter.d.ts +19 -0
- package/lib/classes/filters/index.d.ts +6 -0
- package/lib/classes/filters/sort-filter.d.ts +14 -0
- package/{projects/ng-easycommerce/src/lib/classes/index.ts → lib/classes/index.d.ts} +3 -3
- package/lib/classes/user.d.ts +50 -0
- package/lib/constants/api.constants.service.d.ts +54 -0
- package/lib/constants/core.constants.service.d.ts +116 -0
- package/lib/constants/index.d.ts +2 -0
- package/lib/ec-components/abstractions-components/block-ec.component.d.ts +62 -0
- package/lib/ec-components/abstractions-components/index.d.ts +2 -0
- package/lib/ec-components/abstractions-components/menu-ec.component.d.ts +67 -0
- package/lib/ec-components/account-ec/account-ec.component.d.ts +10 -0
- package/lib/ec-components/account-ec/index.d.ts +3 -0
- package/lib/ec-components/account-ec/order-ec/order-ec.component.d.ts +8 -0
- package/lib/ec-components/account-ec/orders-list-ec/orders-list-ec.component.d.ts +55 -0
- package/lib/ec-components/auth-ec/auth-ec.component.d.ts +5 -0
- package/lib/ec-components/auth-ec/confirm-account-ec/confirm-account-ec.component.d.ts +11 -0
- package/lib/ec-components/auth-ec/forgot-password-ec/forgot-password-ec.component.d.ts +27 -0
- package/{projects/ng-easycommerce/src/lib/ec-components/auth-ec/index.ts → lib/ec-components/auth-ec/index.d.ts} +6 -6
- package/lib/ec-components/auth-ec/login-form-ec/login-form-ec.component.d.ts +42 -0
- package/lib/ec-components/auth-ec/register-form-ec/register-form-ec.component.d.ts +39 -0
- package/lib/ec-components/auth-ec/register-wholesaler-form-ec/register-wholesaler-form-ec.component.d.ts +62 -0
- package/lib/ec-components/blocks-ec/block-banner-box-ec/block-banner-box-ec.component.d.ts +47 -0
- package/lib/ec-components/blocks-ec/block-banner-full-ec/block-banner-full-ec.component.d.ts +54 -0
- package/lib/ec-components/blocks-ec/block-form-contact-ec/block-form-contact-ec.component.d.ts +21 -0
- package/lib/ec-components/blocks-ec/block-html-ec/block-html-ec.component.d.ts +25 -0
- package/lib/ec-components/blocks-ec/block-newsletter-ec/block-newsletter-ec.component.d.ts +19 -0
- package/lib/ec-components/blocks-ec/block-products-ec/block-products-ec.component.d.ts +51 -0
- package/lib/ec-components/blocks-ec/blocks-ec.component.d.ts +59 -0
- package/{projects/ng-easycommerce/src/lib/ec-components/blocks-ec/index.ts → lib/ec-components/blocks-ec/index.d.ts} +4 -4
- package/lib/ec-components/breadcrumb-ec/breadcrumb-ec.component.d.ts +11 -0
- package/lib/ec-components/cart-ec/cart-ec.component.d.ts +12 -0
- package/lib/ec-components/cart-ec/cart-item-ec/cart-item-ec.component.d.ts +17 -0
- package/lib/ec-components/cart-ec/index.d.ts +2 -0
- package/lib/ec-components/checkout-ec/checkout-ec.component.d.ts +20 -0
- package/lib/ec-components/checkout-ec/dataform-ec/dataform-ec.component.d.ts +83 -0
- package/lib/ec-components/checkout-ec/dataform-ec/input-ec/input-ec.component.d.ts +14 -0
- package/lib/ec-components/checkout-ec/detail-checkout-block-ec/detail-checkout-block-ec.component.d.ts +11 -0
- package/lib/ec-components/checkout-ec/payment-ec/payment-ec.component.d.ts +37 -0
- package/lib/ec-components/checkout-ec/payment-ec/payment-methods/bank-transfer-ec/bank-transfer-ec.component.d.ts +11 -0
- package/{projects/ng-easycommerce/src/lib/ec-components/checkout-ec/payment-ec/payment-methods/index.ts → lib/ec-components/checkout-ec/payment-ec/payment-methods/index.d.ts} +3 -3
- package/lib/ec-components/checkout-ec/payment-ec/payment-methods/mp-redirect-ec/mp-redirect-ec.component.d.ts +30 -0
- package/lib/ec-components/checkout-ec/payment-ec/payment-methods/offline-ec/offline-ec.component.d.ts +11 -0
- package/lib/ec-components/checkout-ec/shipment-ec/shipment-ec.component.d.ts +30 -0
- package/lib/ec-components/checkout-ec/step-container-ec/step-container-ec.component.d.ts +11 -0
- package/lib/ec-components/checkout-ec/success-ec/success-ec.component.d.ts +30 -0
- package/lib/ec-components/collection-ec/collection-ec.component.d.ts +37 -0
- package/lib/ec-components/coupon-ec/coupon-ec.component.d.ts +12 -0
- package/lib/ec-components/filters-ec/filters-ec.component.d.ts +14 -0
- package/lib/ec-components/filters-sort-ec/filters-sort-ec.component.d.ts +14 -0
- package/lib/ec-components/footer-ec/footer-ec.component.d.ts +10 -0
- package/lib/ec-components/header-ec/header-ec.component.d.ts +15 -0
- package/lib/ec-components/home-ec/home-ec.component.d.ts +8 -0
- package/{projects/ng-easycommerce/src/lib/ec-components/index.ts → lib/ec-components/index.d.ts} +24 -17
- package/lib/ec-components/product-detail-ec/product-detail-ec.component.d.ts +31 -0
- package/lib/ec-components/product-ec/product-ec.component.d.ts +31 -0
- package/lib/ec-components/variants-ec/variants-ec.component.d.ts +8 -0
- package/{projects/ng-easycommerce/src/lib/ec-components/widgets-ec/index.ts → lib/ec-components/widgets-ec/index.d.ts} +4 -4
- package/{projects/ng-easycommerce/src/lib/ec-components/widgets-ec/loading/index.ts → lib/ec-components/widgets-ec/loading/index.d.ts} +3 -3
- package/lib/ec-components/widgets-ec/loading/loading-full-ec/loading-full-ec.component.d.ts +5 -0
- package/lib/ec-components/widgets-ec/loading/loading-inline-ec/loading-inline-ec.component.d.ts +6 -0
- package/lib/ec-components/widgets-ec/loading/loading-section-ec/loading-section-ec.component.d.ts +5 -0
- package/lib/ec-components/widgets-ec/magnizoom-ec/magnizoom-ec.component.d.ts +70 -0
- package/lib/ec-components/widgets-ec/price-ec/price-ec.component.d.ts +16 -0
- package/lib/ec-components/widgets-ec/re-captcha-ec/re-captcha-ec.component.d.ts +26 -0
- package/lib/ec-guards/auth.guard.d.ts +8 -0
- package/lib/ec-guards/index.d.ts +1 -0
- package/lib/ec-pipe/ec-currency-symbol.pipe.d.ts +56 -0
- package/lib/ec-pipe/index.d.ts +1 -0
- package/lib/ec-services/addressing.service.d.ts +233 -0
- package/lib/ec-services/analytics/analytics.service.d.ts +50 -0
- package/lib/ec-services/analytics/doppler.service.d.ts +26 -0
- package/lib/ec-services/analytics/facebook-pixel.service.d.ts +102 -0
- package/lib/ec-services/analytics/google-analytics.service.d.ts +118 -0
- package/lib/ec-services/analytics/gtm.service.d.ts +153 -0
- package/{projects/ng-easycommerce/src/lib/ec-services/analytics/index.ts → lib/ec-services/analytics/index.d.ts} +6 -6
- package/lib/ec-services/analytics/metricool-pixel.service.d.ts +26 -0
- package/lib/ec-services/auth.service.d.ts +229 -0
- package/lib/ec-services/auth.storage.service.d.ts +24 -0
- package/lib/ec-services/blocks-repository.service.d.ts +40 -0
- package/lib/ec-services/blocks.service.d.ts +38 -0
- package/lib/ec-services/cart.service.d.ts +211 -0
- package/lib/ec-services/channel.service.d.ts +59 -0
- package/lib/ec-services/checkout.service.d.ts +49 -0
- package/lib/ec-services/currency.service.d.ts +108 -0
- package/lib/ec-services/filters.service.d.ts +56 -0
- package/lib/ec-services/form.service.d.ts +50 -0
- package/{projects/ng-easycommerce/src/lib/ec-services/index.ts → lib/ec-services/index.d.ts} +26 -24
- package/lib/ec-services/local-storage.service.d.ts +40 -0
- package/lib/ec-services/ngx-local-storage.service.d.ts +42 -0
- package/lib/ec-services/options.service.d.ts +121 -0
- package/lib/ec-services/order-utility.service.d.ts +15 -0
- package/lib/ec-services/orders.service.d.ts +14 -0
- package/lib/ec-services/pagination.service.d.ts +89 -0
- package/lib/ec-services/parameters.service.d.ts +41 -0
- package/lib/ec-services/payment.service.d.ts +22 -0
- package/lib/ec-services/product-detail.service.d.ts +97 -0
- package/lib/ec-services/products.service.d.ts +48 -0
- package/lib/ec-services/re-captcha.service.d.ts +65 -0
- package/lib/ec-services/shipment.service.d.ts +49 -0
- package/lib/ec-services/stores.service.d.ts +12 -0
- package/lib/ec-services/test.service.d.ts +6 -0
- package/lib/ec-services/toast.service.d.ts +59 -0
- package/lib/interceptors/auth.interceptor.d.ts +2 -0
- package/lib/interceptors/index.d.ts +1 -0
- package/lib/interfaces/analytics/event-key.d.ts +1 -0
- package/lib/interfaces/analytics/facebook-pixel-data.d.ts +5 -0
- package/{projects/ng-easycommerce/src/lib/interfaces/analytics/gtm-config.ts → lib/interfaces/analytics/gtm-config.d.ts} +6 -6
- package/{projects/ng-easycommerce/src/lib/interfaces/analytics/index.ts → lib/interfaces/analytics/index.d.ts} +3 -3
- package/lib/interfaces/blocks.d.ts +41 -0
- package/{projects/ng-easycommerce/src/lib/interfaces/checkout.ts → lib/interfaces/checkout.d.ts} +12 -14
- package/{projects/ng-easycommerce/src/lib/interfaces/connection.ts → lib/interfaces/connection.d.ts} +7 -8
- package/lib/interfaces/coupon.d.ts +5 -0
- package/lib/interfaces/currency.d.ts +9 -0
- package/{projects/ng-easycommerce/src/lib/interfaces/deserializable.ts → lib/interfaces/deserializable.d.ts} +3 -3
- package/{projects/ng-easycommerce/src/lib/interfaces/environment.ts → lib/interfaces/environment.d.ts} +6 -6
- package/{projects/ng-easycommerce/src/lib/interfaces/filter.ts → lib/interfaces/filter.d.ts} +38 -59
- package/{projects/ng-easycommerce/src/lib/interfaces/index.ts → lib/interfaces/index.d.ts} +16 -18
- package/lib/interfaces/options.d.ts +26 -0
- package/lib/interfaces/pagination.d.ts +24 -0
- package/lib/interfaces/parameter.d.ts +14 -0
- package/{projects/ng-easycommerce/src/lib/interfaces/product.ts → lib/interfaces/product.d.ts} +73 -81
- package/lib/interfaces/step.d.ts +15 -0
- package/lib/interfaces/storage.d.ts +7 -0
- package/{projects/ng-easycommerce/src/lib/interfaces/store.ts → lib/interfaces/store.d.ts} +17 -17
- package/lib/interfaces/types/index.d.ts +1 -0
- package/lib/interfaces/types/user.type.d.ts +5 -0
- package/lib/providers/index.d.ts +1 -0
- package/lib/providers/provideEnvironment.d.ts +13 -0
- package/lib/stores/currency.store.d.ts +7 -0
- package/lib/stores/index.d.ts +1 -0
- package/package.json +29 -58
- package/{projects/ng-easycommerce/src/public-api.ts → public-api.d.ts} +8 -24
- package/.editorconfig +0 -16
- package/angular.json +0 -48
- package/projects/ng-easycommerce/README.md +0 -24
- package/projects/ng-easycommerce/ng-package.json +0 -7
- package/projects/ng-easycommerce/package.json +0 -12
- package/projects/ng-easycommerce/src/lib/api/connection.service.ts +0 -79
- package/projects/ng-easycommerce/src/lib/api/index.ts +0 -1
- package/projects/ng-easycommerce/src/lib/classes/checkout/index.ts +0 -1
- package/projects/ng-easycommerce/src/lib/classes/checkout/steps.ts +0 -37
- package/projects/ng-easycommerce/src/lib/classes/filters/attributes-filter.ts +0 -74
- package/projects/ng-easycommerce/src/lib/classes/filters/category-filter.ts +0 -57
- package/projects/ng-easycommerce/src/lib/classes/filters/dynamics-filter.ts +0 -57
- package/projects/ng-easycommerce/src/lib/classes/filters/filter-factory.ts +0 -23
- package/projects/ng-easycommerce/src/lib/classes/filters/filter.ts +0 -89
- package/projects/ng-easycommerce/src/lib/classes/filters/index.ts +0 -6
- package/projects/ng-easycommerce/src/lib/classes/filters/sort-filter.ts +0 -93
- package/projects/ng-easycommerce/src/lib/classes/user.ts +0 -68
- package/projects/ng-easycommerce/src/lib/constants/api.constants.service.ts +0 -69
- package/projects/ng-easycommerce/src/lib/constants/core.constants.service.ts +0 -210
- package/projects/ng-easycommerce/src/lib/constants/index.ts +0 -2
- package/projects/ng-easycommerce/src/lib/ec-components/abstractions-components/block-ec.component.ts +0 -107
- package/projects/ng-easycommerce/src/lib/ec-components/abstractions-components/index.ts +0 -2
- package/projects/ng-easycommerce/src/lib/ec-components/abstractions-components/menu-ec.component.ts +0 -102
- package/projects/ng-easycommerce/src/lib/ec-components/auth-ec/auth-ec.component.html +0 -10
- package/projects/ng-easycommerce/src/lib/ec-components/auth-ec/auth-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/auth-ec/auth-ec.component.ts +0 -13
- package/projects/ng-easycommerce/src/lib/ec-components/auth-ec/confirm-account-ec/confirm-account-ec.component.html +0 -19
- package/projects/ng-easycommerce/src/lib/ec-components/auth-ec/confirm-account-ec/confirm-account-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/auth-ec/confirm-account-ec/confirm-account-ec.component.ts +0 -34
- package/projects/ng-easycommerce/src/lib/ec-components/auth-ec/forgot-password-ec/forgot-password-ec.component.html +0 -31
- package/projects/ng-easycommerce/src/lib/ec-components/auth-ec/forgot-password-ec/forgot-password-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/auth-ec/forgot-password-ec/forgot-password-ec.component.ts +0 -55
- package/projects/ng-easycommerce/src/lib/ec-components/auth-ec/login-form-ec/login-form-ec.component.html +0 -30
- package/projects/ng-easycommerce/src/lib/ec-components/auth-ec/login-form-ec/login-form-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/auth-ec/login-form-ec/login-form-ec.component.ts +0 -92
- package/projects/ng-easycommerce/src/lib/ec-components/auth-ec/register-form-ec/register-form-ec.component.html +0 -55
- package/projects/ng-easycommerce/src/lib/ec-components/auth-ec/register-form-ec/register-form-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/auth-ec/register-form-ec/register-form-ec.component.ts +0 -102
- package/projects/ng-easycommerce/src/lib/ec-components/auth-ec/register-wholesaler-form-ec/register-wholesaler-form-ec.component.html +0 -233
- package/projects/ng-easycommerce/src/lib/ec-components/auth-ec/register-wholesaler-form-ec/register-wholesaler-form-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/auth-ec/register-wholesaler-form-ec/register-wholesaler-form-ec.component.ts +0 -149
- package/projects/ng-easycommerce/src/lib/ec-components/blocks-ec/block-banner-box-ec/block-banner-box-ec.component.html +0 -113
- package/projects/ng-easycommerce/src/lib/ec-components/blocks-ec/block-banner-box-ec/block-banner-box-ec.component.scss +0 -12
- package/projects/ng-easycommerce/src/lib/ec-components/blocks-ec/block-banner-box-ec/block-banner-box-ec.component.ts +0 -100
- package/projects/ng-easycommerce/src/lib/ec-components/blocks-ec/block-banner-full-ec/block-banner-full-ec.component.html +0 -111
- package/projects/ng-easycommerce/src/lib/ec-components/blocks-ec/block-banner-full-ec/block-banner-full-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/blocks-ec/block-banner-full-ec/block-banner-full-ec.component.ts +0 -77
- package/projects/ng-easycommerce/src/lib/ec-components/blocks-ec/block-form-contact-ec/block-form-contact-ec.component.html +0 -62
- package/projects/ng-easycommerce/src/lib/ec-components/blocks-ec/block-form-contact-ec/block-form-contact-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/blocks-ec/block-form-contact-ec/block-form-contact-ec.component.ts +0 -89
- package/projects/ng-easycommerce/src/lib/ec-components/blocks-ec/block-html-ec/block-html-ec.component.html +0 -1
- package/projects/ng-easycommerce/src/lib/ec-components/blocks-ec/block-html-ec/block-html-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/blocks-ec/block-html-ec/block-html-ec.component.ts +0 -33
- package/projects/ng-easycommerce/src/lib/ec-components/blocks-ec/block-newsletter-ec/block-newsletter-ec.component.html +0 -1
- package/projects/ng-easycommerce/src/lib/ec-components/blocks-ec/block-newsletter-ec/block-newsletter-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/blocks-ec/block-newsletter-ec/block-newsletter-ec.component.ts +0 -81
- package/projects/ng-easycommerce/src/lib/ec-components/blocks-ec/block-products-ec/block-products-ec.component.html +0 -40
- package/projects/ng-easycommerce/src/lib/ec-components/blocks-ec/block-products-ec/block-products-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/blocks-ec/block-products-ec/block-products-ec.component.ts +0 -97
- package/projects/ng-easycommerce/src/lib/ec-components/blocks-ec/blocks-ec.component.html +0 -41
- package/projects/ng-easycommerce/src/lib/ec-components/blocks-ec/blocks-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/blocks-ec/blocks-ec.component.ts +0 -86
- package/projects/ng-easycommerce/src/lib/ec-components/breadcrumb-ec/breadcrumb-ec.component.html +0 -20
- package/projects/ng-easycommerce/src/lib/ec-components/breadcrumb-ec/breadcrumb-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/breadcrumb-ec/breadcrumb-ec.component.ts +0 -30
- package/projects/ng-easycommerce/src/lib/ec-components/cart-ec/cart-ec.component.html +0 -1
- package/projects/ng-easycommerce/src/lib/ec-components/cart-ec/cart-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/cart-ec/cart-ec.component.ts +0 -24
- package/projects/ng-easycommerce/src/lib/ec-components/cart-ec/cart-item-ec/cart-item-ec.component.html +0 -1
- package/projects/ng-easycommerce/src/lib/ec-components/cart-ec/cart-item-ec/cart-item-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/cart-ec/cart-item-ec/cart-item-ec.component.ts +0 -51
- package/projects/ng-easycommerce/src/lib/ec-components/cart-ec/index.ts +0 -2
- package/projects/ng-easycommerce/src/lib/ec-components/checkout-ec/checkout-ec.component.html +0 -56
- package/projects/ng-easycommerce/src/lib/ec-components/checkout-ec/checkout-ec.component.scss +0 -38
- package/projects/ng-easycommerce/src/lib/ec-components/checkout-ec/checkout-ec.component.ts +0 -67
- package/projects/ng-easycommerce/src/lib/ec-components/checkout-ec/dataform-ec/dataform-ec.component.html +0 -836
- package/projects/ng-easycommerce/src/lib/ec-components/checkout-ec/dataform-ec/dataform-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/checkout-ec/dataform-ec/dataform-ec.component.ts +0 -302
- package/projects/ng-easycommerce/src/lib/ec-components/checkout-ec/dataform-ec/input-ec/input-ec.component.html +0 -32
- package/projects/ng-easycommerce/src/lib/ec-components/checkout-ec/dataform-ec/input-ec/input-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/checkout-ec/dataform-ec/input-ec/input-ec.component.ts +0 -52
- package/projects/ng-easycommerce/src/lib/ec-components/checkout-ec/detail-checkout-block-ec/detail-checkout-block-ec.component.html +0 -12
- package/projects/ng-easycommerce/src/lib/ec-components/checkout-ec/detail-checkout-block-ec/detail-checkout-block-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/checkout-ec/detail-checkout-block-ec/detail-checkout-block-ec.component.ts +0 -48
- package/projects/ng-easycommerce/src/lib/ec-components/checkout-ec/payment-ec/payment-ec.component.html +0 -195
- package/projects/ng-easycommerce/src/lib/ec-components/checkout-ec/payment-ec/payment-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/checkout-ec/payment-ec/payment-ec.component.ts +0 -103
- package/projects/ng-easycommerce/src/lib/ec-components/checkout-ec/payment-ec/payment-methods/bank-transfer-ec/bank-transfer-ec.component.html +0 -28
- package/projects/ng-easycommerce/src/lib/ec-components/checkout-ec/payment-ec/payment-methods/bank-transfer-ec/bank-transfer-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/checkout-ec/payment-ec/payment-methods/bank-transfer-ec/bank-transfer-ec.component.ts +0 -26
- package/projects/ng-easycommerce/src/lib/ec-components/checkout-ec/payment-ec/payment-methods/mp-redirect-ec/mp-redirect-ec.component.html +0 -33
- package/projects/ng-easycommerce/src/lib/ec-components/checkout-ec/payment-ec/payment-methods/mp-redirect-ec/mp-redirect-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/checkout-ec/payment-ec/payment-methods/mp-redirect-ec/mp-redirect-ec.component.ts +0 -116
- package/projects/ng-easycommerce/src/lib/ec-components/checkout-ec/payment-ec/payment-methods/offline-ec/offline-ec.component.html +0 -13
- package/projects/ng-easycommerce/src/lib/ec-components/checkout-ec/payment-ec/payment-methods/offline-ec/offline-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/checkout-ec/payment-ec/payment-methods/offline-ec/offline-ec.component.ts +0 -26
- package/projects/ng-easycommerce/src/lib/ec-components/checkout-ec/shipment-ec/shipment-ec.component.html +0 -111
- package/projects/ng-easycommerce/src/lib/ec-components/checkout-ec/shipment-ec/shipment-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/checkout-ec/shipment-ec/shipment-ec.component.ts +0 -111
- package/projects/ng-easycommerce/src/lib/ec-components/checkout-ec/step-container-ec/step-container-ec.component.html +0 -33
- package/projects/ng-easycommerce/src/lib/ec-components/checkout-ec/step-container-ec/step-container-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/checkout-ec/step-container-ec/step-container-ec.component.ts +0 -39
- package/projects/ng-easycommerce/src/lib/ec-components/checkout-ec/success-ec/success-ec.component.html +0 -59
- package/projects/ng-easycommerce/src/lib/ec-components/checkout-ec/success-ec/success-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/checkout-ec/success-ec/success-ec.component.ts +0 -65
- package/projects/ng-easycommerce/src/lib/ec-components/collection-ec/collection-ec.component.html +0 -16
- package/projects/ng-easycommerce/src/lib/ec-components/collection-ec/collection-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/collection-ec/collection-ec.component.ts +0 -83
- package/projects/ng-easycommerce/src/lib/ec-components/coupon-ec/coupon-ec.component.html +0 -1
- package/projects/ng-easycommerce/src/lib/ec-components/coupon-ec/coupon-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/coupon-ec/coupon-ec.component.ts +0 -32
- package/projects/ng-easycommerce/src/lib/ec-components/filters-ec/filters-ec.component.html +0 -1
- package/projects/ng-easycommerce/src/lib/ec-components/filters-ec/filters-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/filters-ec/filters-ec.component.ts +0 -45
- package/projects/ng-easycommerce/src/lib/ec-components/filters-sort-ec/filters-sort-ec.component.html +0 -1
- package/projects/ng-easycommerce/src/lib/ec-components/filters-sort-ec/filters-sort-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/filters-sort-ec/filters-sort-ec.component.ts +0 -49
- package/projects/ng-easycommerce/src/lib/ec-components/footer-ec/footer-ec.component.html +0 -1
- package/projects/ng-easycommerce/src/lib/ec-components/footer-ec/footer-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/footer-ec/footer-ec.component.spec.ts +0 -23
- package/projects/ng-easycommerce/src/lib/ec-components/footer-ec/footer-ec.component.ts +0 -18
- package/projects/ng-easycommerce/src/lib/ec-components/header-ec/header-ec.component.html +0 -1
- package/projects/ng-easycommerce/src/lib/ec-components/header-ec/header-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/header-ec/header-ec.component.spec.ts +0 -23
- package/projects/ng-easycommerce/src/lib/ec-components/header-ec/header-ec.component.ts +0 -22
- package/projects/ng-easycommerce/src/lib/ec-components/home-ec/home-ec.component.html +0 -1
- package/projects/ng-easycommerce/src/lib/ec-components/home-ec/home-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/home-ec/home-ec.component.spec.ts +0 -23
- package/projects/ng-easycommerce/src/lib/ec-components/home-ec/home-ec.component.ts +0 -16
- package/projects/ng-easycommerce/src/lib/ec-components/product-detail-ec/product-detail-ec.component.html +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/product-detail-ec/product-detail-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/product-detail-ec/product-detail-ec.component.ts +0 -82
- package/projects/ng-easycommerce/src/lib/ec-components/product-ec/product-ec.component.html +0 -31
- package/projects/ng-easycommerce/src/lib/ec-components/product-ec/product-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/product-ec/product-ec.component.ts +0 -46
- package/projects/ng-easycommerce/src/lib/ec-components/variants-ec/variants-ec.component.html +0 -65
- package/projects/ng-easycommerce/src/lib/ec-components/variants-ec/variants-ec.component.scss +0 -8
- package/projects/ng-easycommerce/src/lib/ec-components/variants-ec/variants-ec.component.ts +0 -20
- package/projects/ng-easycommerce/src/lib/ec-components/widgets-ec/loading/loading-full-ec/loading-full-ec.component.html +0 -7
- package/projects/ng-easycommerce/src/lib/ec-components/widgets-ec/loading/loading-full-ec/loading-full-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/widgets-ec/loading/loading-full-ec/loading-full-ec.component.ts +0 -13
- package/projects/ng-easycommerce/src/lib/ec-components/widgets-ec/loading/loading-inline-ec/loading-inline-ec.component.html +0 -5
- package/projects/ng-easycommerce/src/lib/ec-components/widgets-ec/loading/loading-inline-ec/loading-inline-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/widgets-ec/loading/loading-inline-ec/loading-inline-ec.component.ts +0 -13
- package/projects/ng-easycommerce/src/lib/ec-components/widgets-ec/loading/loading-section-ec/loading-section-ec.component.html +0 -3
- package/projects/ng-easycommerce/src/lib/ec-components/widgets-ec/loading/loading-section-ec/loading-section-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/widgets-ec/loading/loading-section-ec/loading-section-ec.component.ts +0 -13
- package/projects/ng-easycommerce/src/lib/ec-components/widgets-ec/magnizoom-ec/magnizoom-ec.component.html +0 -11
- package/projects/ng-easycommerce/src/lib/ec-components/widgets-ec/magnizoom-ec/magnizoom-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/widgets-ec/magnizoom-ec/magnizoom-ec.component.ts +0 -177
- package/projects/ng-easycommerce/src/lib/ec-components/widgets-ec/price-ec/price-ec.component.html +0 -47
- package/projects/ng-easycommerce/src/lib/ec-components/widgets-ec/price-ec/price-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/widgets-ec/price-ec/price-ec.component.ts +0 -22
- package/projects/ng-easycommerce/src/lib/ec-components/widgets-ec/re-captcha-ec/re-captcha-ec.component.html +0 -6
- package/projects/ng-easycommerce/src/lib/ec-components/widgets-ec/re-captcha-ec/re-captcha-ec.component.scss +0 -0
- package/projects/ng-easycommerce/src/lib/ec-components/widgets-ec/re-captcha-ec/re-captcha-ec.component.ts +0 -70
- package/projects/ng-easycommerce/src/lib/ec-guards/auth.guard.ts +0 -19
- package/projects/ng-easycommerce/src/lib/ec-guards/index.ts +0 -1
- package/projects/ng-easycommerce/src/lib/ec-pipe/ec-currency-symbol.pipe.ts +0 -99
- package/projects/ng-easycommerce/src/lib/ec-pipe/index.ts +0 -1
- package/projects/ng-easycommerce/src/lib/ec-services/addressing.service.ts +0 -199
- package/projects/ng-easycommerce/src/lib/ec-services/analytics/analytics.service.ts +0 -76
- package/projects/ng-easycommerce/src/lib/ec-services/analytics/doppler.service.ts +0 -38
- package/projects/ng-easycommerce/src/lib/ec-services/analytics/facebook-pixel.service.ts +0 -214
- package/projects/ng-easycommerce/src/lib/ec-services/analytics/google-analytics.service.ts +0 -284
- package/projects/ng-easycommerce/src/lib/ec-services/analytics/gtm.service.ts +0 -413
- package/projects/ng-easycommerce/src/lib/ec-services/analytics/metricool-pixel.service.ts +0 -46
- package/projects/ng-easycommerce/src/lib/ec-services/auth.service.ts +0 -438
- package/projects/ng-easycommerce/src/lib/ec-services/auth.storage.service.ts +0 -54
- package/projects/ng-easycommerce/src/lib/ec-services/blocks-repository.service.ts +0 -67
- package/projects/ng-easycommerce/src/lib/ec-services/blocks.service.ts +0 -48
- package/projects/ng-easycommerce/src/lib/ec-services/cart.service.ts +0 -492
- package/projects/ng-easycommerce/src/lib/ec-services/channel.service.ts +0 -81
- package/projects/ng-easycommerce/src/lib/ec-services/checkout.service.ts +0 -196
- package/projects/ng-easycommerce/src/lib/ec-services/currency.service.ts +0 -179
- package/projects/ng-easycommerce/src/lib/ec-services/filters.service.ts +0 -133
- package/projects/ng-easycommerce/src/lib/ec-services/form.service.ts +0 -82
- package/projects/ng-easycommerce/src/lib/ec-services/local-storage.service.ts +0 -54
- package/projects/ng-easycommerce/src/lib/ec-services/ngx-local-storage.service.ts +0 -66
- package/projects/ng-easycommerce/src/lib/ec-services/options.service.ts +0 -274
- package/projects/ng-easycommerce/src/lib/ec-services/order-utility.service.ts +0 -52
- package/projects/ng-easycommerce/src/lib/ec-services/pagination.service.ts +0 -172
- package/projects/ng-easycommerce/src/lib/ec-services/parameters.service.ts +0 -67
- package/projects/ng-easycommerce/src/lib/ec-services/payment.service.ts +0 -63
- package/projects/ng-easycommerce/src/lib/ec-services/product-detail.service.ts +0 -288
- package/projects/ng-easycommerce/src/lib/ec-services/products.service.ts +0 -162
- package/projects/ng-easycommerce/src/lib/ec-services/re-captcha.service.ts +0 -126
- package/projects/ng-easycommerce/src/lib/ec-services/shipment.service.ts +0 -174
- package/projects/ng-easycommerce/src/lib/ec-services/stores.service.ts +0 -27
- package/projects/ng-easycommerce/src/lib/ec-services/toast.service.ts +0 -84
- package/projects/ng-easycommerce/src/lib/interceptors/auth.interceptor.ts +0 -43
- package/projects/ng-easycommerce/src/lib/interceptors/index.ts +0 -1
- package/projects/ng-easycommerce/src/lib/interfaces/analytics/event-key.ts +0 -14
- package/projects/ng-easycommerce/src/lib/interfaces/analytics/facebook-pixel-data.ts +0 -5
- package/projects/ng-easycommerce/src/lib/interfaces/blocks.ts +0 -56
- package/projects/ng-easycommerce/src/lib/interfaces/coupon.ts +0 -5
- package/projects/ng-easycommerce/src/lib/interfaces/currency.ts +0 -10
- package/projects/ng-easycommerce/src/lib/interfaces/options.ts +0 -28
- package/projects/ng-easycommerce/src/lib/interfaces/pagination.ts +0 -27
- package/projects/ng-easycommerce/src/lib/interfaces/parameter.ts +0 -15
- package/projects/ng-easycommerce/src/lib/interfaces/step.ts +0 -19
- package/projects/ng-easycommerce/src/lib/interfaces/storage.ts +0 -7
- package/projects/ng-easycommerce/src/lib/interfaces/types/index.ts +0 -1
- package/projects/ng-easycommerce/src/lib/interfaces/types/user.type.ts +0 -5
- package/projects/ng-easycommerce/src/lib/providers/index.ts +0 -1
- package/projects/ng-easycommerce/src/lib/providers/provideEnvironment.ts +0 -24
- package/projects/ng-easycommerce/src/lib/stores/currency.store.ts +0 -20
- package/projects/ng-easycommerce/src/lib/stores/index.ts +0 -1
- package/projects/ng-easycommerce/tsconfig.lib.json +0 -15
- package/projects/ng-easycommerce/tsconfig.lib.prod.json +0 -11
- package/projects/ng-easycommerce/tsconfig.spec.json +0 -15
- package/tsconfig.doc.json +0 -4
- package/tsconfig.json +0 -37
- /package/{projects/ng-easycommerce/src/lib/assets → assets}/ec-i18n/ct.json +0 -0
- /package/{projects/ng-easycommerce/src/lib/assets → assets}/ec-i18n/en.json +0 -0
- /package/{projects/ng-easycommerce/src/lib/assets → assets}/ec-i18n/es.json +0 -0
- /package/{projects/ng-easycommerce/src/lib/assets → assets}/ec-i18n/fr.json +0 -0
- /package/{projects/ng-easycommerce/src/lib/assets → assets}/ec-i18n/gl.json +0 -0
- /package/{projects/ng-easycommerce/src/lib/assets → assets}/ec-i18n/pr.json +0 -0
- /package/{projects/ng-easycommerce/src/lib/assets → assets}/recaptcha/recaptcha-site-keys.json +0 -0
- /package/{projects/ng-easycommerce/src/lib/assets → assets}/recaptcha/recaptcha-sites-prod.json +0 -0
- /package/{projects/ng-easycommerce/src/lib/assets → assets}/recaptcha/recaptcha-sites.json +0 -0
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
import { inject, Injectable } from '@angular/core';
|
|
2
|
-
import { CookieService } from 'ngx-cookie-service';
|
|
3
|
-
import { Storage } from '../interfaces';
|
|
4
|
-
import { StorageMap, LocalStorage } from '@ngx-pwa/local-storage';
|
|
5
|
-
import { map, Observable } from 'rxjs';
|
|
6
|
-
/**
|
|
7
|
-
* Adapter usado para storagear los datos.
|
|
8
|
-
* @class NgxLocalStorageService
|
|
9
|
-
* @implements {Storage}
|
|
10
|
-
*/
|
|
11
|
-
@Injectable({
|
|
12
|
-
providedIn: 'root'
|
|
13
|
-
})
|
|
14
|
-
export class NgxLocalStorageService implements Storage {
|
|
15
|
-
/**
|
|
16
|
-
* Servicio usado para guardar los datos en el localstorage.
|
|
17
|
-
*/
|
|
18
|
-
private _storage: LocalStorage = inject(LocalStorage);
|
|
19
|
-
|
|
20
|
-
constructor() { }
|
|
21
|
-
|
|
22
|
-
private getItemPromise(key: any): Promise<string | null> {
|
|
23
|
-
return new Promise((resolve, reject) => {
|
|
24
|
-
this._storage.getItem(key).subscribe({
|
|
25
|
-
next: (data: any) => resolve(data),
|
|
26
|
-
error: (err) => reject(err),
|
|
27
|
-
});
|
|
28
|
-
});
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
/**
|
|
32
|
-
* Obtiene el item del Storage
|
|
33
|
-
* @param key Clave para acceder al valor
|
|
34
|
-
* @returns
|
|
35
|
-
*/
|
|
36
|
-
getItem(key: string): Observable<any> {
|
|
37
|
-
return this._storage.getItem(key);
|
|
38
|
-
}
|
|
39
|
-
/**
|
|
40
|
-
* Guarda un dato en el storage.
|
|
41
|
-
* @param key Clave que se asocia al valor
|
|
42
|
-
* @param value Valor a guardar
|
|
43
|
-
* @param metadata Opciones extra que puede necesitar el servicio.
|
|
44
|
-
*/
|
|
45
|
-
setItem(key: string, value: any, metadata: any = { path: '/' }) {
|
|
46
|
-
this._storage.setItem(key, value).subscribe(() => { });
|
|
47
|
-
}
|
|
48
|
-
/**
|
|
49
|
-
* Remueve el item del storage.
|
|
50
|
-
* @param key Clave del item del storage a eliminar.
|
|
51
|
-
* @param metadata Opciones extra que puede necesitar el servicio.
|
|
52
|
-
*/
|
|
53
|
-
removeItem(key: string, metadata?: any): void {
|
|
54
|
-
this._storage.removeItem(key).subscribe(() => { });
|
|
55
|
-
}
|
|
56
|
-
/**
|
|
57
|
-
* Limpia el Storage.
|
|
58
|
-
*/
|
|
59
|
-
clear(): void {
|
|
60
|
-
this._storage.clear().subscribe(() => { });
|
|
61
|
-
}
|
|
62
|
-
key(index: number): string | null {
|
|
63
|
-
throw new Error('Method not implemented.');
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
}
|
|
@@ -1,274 +0,0 @@
|
|
|
1
|
-
import { inject, Injectable } from '@angular/core';
|
|
2
|
-
import { ConnectionService } from '../api';
|
|
3
|
-
import { BehaviorSubject, catchError, map, Observable, of, shareReplay, take } from 'rxjs';
|
|
4
|
-
import { ApiConstantsService, CoreConstantsService } from '../constants';
|
|
5
|
-
import { Attribute, Category, Section } from '../interfaces';
|
|
6
|
-
import { Filter } from '../classes';
|
|
7
|
-
/**
|
|
8
|
-
* Este servicio permite maneja las Categorias, Secciones y Atributos como menues
|
|
9
|
-
* para la aplicación.
|
|
10
|
-
*/
|
|
11
|
-
@Injectable({
|
|
12
|
-
providedIn: 'root'
|
|
13
|
-
})
|
|
14
|
-
export class OptionsService {
|
|
15
|
-
/**
|
|
16
|
-
* Maneja las peticiones a la API
|
|
17
|
-
*/
|
|
18
|
-
private connection = inject(ConnectionService);
|
|
19
|
-
/**
|
|
20
|
-
* Constantes del core
|
|
21
|
-
*/
|
|
22
|
-
private constants = inject(CoreConstantsService);
|
|
23
|
-
/**
|
|
24
|
-
* Constantes de la API
|
|
25
|
-
*/
|
|
26
|
-
private apiConstants = inject(ApiConstantsService);
|
|
27
|
-
/**
|
|
28
|
-
* Maneja los cambios en las categorias
|
|
29
|
-
*/
|
|
30
|
-
private categoriesSubject = new BehaviorSubject<Category[]>([]);
|
|
31
|
-
private categories$: Observable<Category[]> = this.categoriesSubject.asObservable();
|
|
32
|
-
/**
|
|
33
|
-
* Maneja los cambios en las secciones
|
|
34
|
-
*/
|
|
35
|
-
private sectionsSubject = new BehaviorSubject<Section[]>([]);
|
|
36
|
-
private sections$: Observable<Section[]> = this.sectionsSubject.asObservable();
|
|
37
|
-
/**
|
|
38
|
-
* Maneja los cambios en los atributos
|
|
39
|
-
*/
|
|
40
|
-
private attributesSubject = new BehaviorSubject<Attribute[]>([]);
|
|
41
|
-
private attributes$:Observable<Attribute[]> = this.attributesSubject.asObservable();
|
|
42
|
-
|
|
43
|
-
//API URLS
|
|
44
|
-
private readonly SHOP_CHANNEL_API = `${this.apiConstants.SHOP_API_URL}${this.apiConstants.CHANNEL}/`;
|
|
45
|
-
private readonly CMS_CHANNEL_API = `${this.apiConstants.CMS_URL}${this.apiConstants.CHANNEL}/`;
|
|
46
|
-
/**
|
|
47
|
-
* Devuelve la URL para obtener las categorias.
|
|
48
|
-
* @returns
|
|
49
|
-
*/
|
|
50
|
-
private taxonsApi() { return `${this.SHOP_CHANNEL_API}taxons/?locale=${this.apiConstants.LOCALE}` };
|
|
51
|
-
/**
|
|
52
|
-
* Devuelve la URL para obtener las secciones
|
|
53
|
-
* @returns
|
|
54
|
-
*/
|
|
55
|
-
private sectionsApi() { return `${this.CMS_CHANNEL_API}sections/?locale=${this.apiConstants.LOCALE}` };
|
|
56
|
-
/**
|
|
57
|
-
* Devuelve la URL para obtener los atributos. Se le puede aplicar flitros.
|
|
58
|
-
* @param filter
|
|
59
|
-
* @returns
|
|
60
|
-
*/
|
|
61
|
-
private attributesApi(filter = '') { return `${this.SHOP_CHANNEL_API}product-search/attributes/?locale=${this.apiConstants.LOCALE}&limit=1&page=1${filter}` };
|
|
62
|
-
|
|
63
|
-
constructor() { }
|
|
64
|
-
/**
|
|
65
|
-
* Obtiene las categorias del backend. Y los mapea para que sea mas amigable el manejo como menú.
|
|
66
|
-
* @returns
|
|
67
|
-
*/
|
|
68
|
-
public getCategories(): Observable<Category[]> {
|
|
69
|
-
if(this.categoriesSubject.getValue().length === 0){
|
|
70
|
-
this.connection.get(this.taxonsApi()).pipe(
|
|
71
|
-
shareReplay(1),
|
|
72
|
-
map((response: Category[]) => {
|
|
73
|
-
const categories = this.appendPaths(true,response)
|
|
74
|
-
this.categoriesSubject.next(categories)
|
|
75
|
-
return categories
|
|
76
|
-
}),
|
|
77
|
-
catchError((error:any)=> {
|
|
78
|
-
console.log(`Error: ${error}`)
|
|
79
|
-
this.categoriesSubject.next([])
|
|
80
|
-
return of([])
|
|
81
|
-
})
|
|
82
|
-
).subscribe();
|
|
83
|
-
}
|
|
84
|
-
return this.categories$;
|
|
85
|
-
}
|
|
86
|
-
/**
|
|
87
|
-
* Obtiene las secciones del backend. Y los mapea para que sea mas amigable el manejo como menú.
|
|
88
|
-
* @returns
|
|
89
|
-
*/
|
|
90
|
-
public getSections(): Observable<Section[]> {
|
|
91
|
-
if (this.sectionsSubject.getValue().length === 0) {
|
|
92
|
-
this.connection.get(this.sectionsApi()).pipe(
|
|
93
|
-
shareReplay(1),
|
|
94
|
-
map((response: Section[]) => {
|
|
95
|
-
let sections = response.filter((section: Section) => section.code != 'home')
|
|
96
|
-
sections = sections.map((section: Section) => this.appendSection(section))
|
|
97
|
-
this.sectionsSubject.next(sections)
|
|
98
|
-
return sections
|
|
99
|
-
})).subscribe()
|
|
100
|
-
}
|
|
101
|
-
return this.sections$;
|
|
102
|
-
}
|
|
103
|
-
/**
|
|
104
|
-
* Obtiene los atributos del backend. Y los mapea para que sea mas amigable el manejo como menú.
|
|
105
|
-
* @param params
|
|
106
|
-
* @returns
|
|
107
|
-
*/
|
|
108
|
-
public getAttributes(params?: any): Observable<Attribute[]> {
|
|
109
|
-
if (this.attributesSubject.getValue().length === 0) {
|
|
110
|
-
this.connection.get(this.attributesApi(params)).pipe(
|
|
111
|
-
shareReplay(1),
|
|
112
|
-
map((response: any | Attribute) => {
|
|
113
|
-
const attributes = this.appendPaths(false, (response.attributes[0] || response))
|
|
114
|
-
this.attributesSubject.next(attributes)
|
|
115
|
-
return attributes
|
|
116
|
-
}
|
|
117
|
-
)).subscribe()
|
|
118
|
-
}
|
|
119
|
-
return this.attributes$;
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
// HELPERS
|
|
124
|
-
private slugify = (text: string) => this.removeAccents(text.toLowerCase().replace(/ & /g, ' ').replace(/ /g, '-').replace(/\//g, '-').replace(/ñ/g, 'n'));
|
|
125
|
-
/**
|
|
126
|
-
* Elimina los acentos
|
|
127
|
-
* @param str
|
|
128
|
-
* @returns
|
|
129
|
-
*/
|
|
130
|
-
private removeAccents(str: string){
|
|
131
|
-
return str.normalize("NFD").replace(/[\u0300-\u036f]/g, "");
|
|
132
|
-
}
|
|
133
|
-
/**
|
|
134
|
-
* Realiza un mapeo de los datos para darle un formato mas entendible a la
|
|
135
|
-
* hora de usar como un menú.
|
|
136
|
-
* @param isCategory Utilizado para diferenciar si es categoría o atributo.
|
|
137
|
-
* @param response Respuesta que obtiene del backend con los datos a mapear.
|
|
138
|
-
* @returns
|
|
139
|
-
*/
|
|
140
|
-
public appendPaths(isCategory: boolean, response: any) {
|
|
141
|
-
const result = response.map((subelement: any) => {
|
|
142
|
-
if (!subelement.children || subelement.children.length == 0) {
|
|
143
|
-
subelement.children = [];
|
|
144
|
-
subelement.path = isCategory ? this.constants.PRODUCT_LIST_ROUTE + 'categories/' + this.slugify((subelement.slug ? this.slugify(subelement.slug) : subelement.name))
|
|
145
|
-
: this.constants.PRODUCT_LIST_ROUTE + 'attributes/' + this.slugify((subelement.slug ? this.slugify(subelement.slug) : subelement.name));
|
|
146
|
-
} else if (subelement.children) {
|
|
147
|
-
subelement.slug = subelement.slug || this.slugify(subelement.name);
|
|
148
|
-
subelement.children = this.appendPaths(isCategory, subelement.children);
|
|
149
|
-
}
|
|
150
|
-
isCategory ? subelement.path = this.constants.PRODUCT_LIST_ROUTE + 'categories/' + this.slugify((subelement.slug ? this.slugify(subelement.slug) : subelement.name))
|
|
151
|
-
: subelement.path = this.constants.PRODUCT_LIST_ROUTE + 'attributes/' + this.slugify((subelement.slug ? this.slugify(subelement.slug) : subelement.name));
|
|
152
|
-
return subelement;
|
|
153
|
-
});
|
|
154
|
-
return result;
|
|
155
|
-
}
|
|
156
|
-
/**
|
|
157
|
-
* Genera un mapeo de secciones para que queden mas amigables a la hora de manejar como menú.
|
|
158
|
-
* @param section
|
|
159
|
-
* @returns
|
|
160
|
-
*/
|
|
161
|
-
private appendSection(section:any) {
|
|
162
|
-
let data: any = {};
|
|
163
|
-
if (section.pages?.length) {
|
|
164
|
-
data.type = 'sub';
|
|
165
|
-
data.children = section.pages.map((page:any) => {
|
|
166
|
-
return {
|
|
167
|
-
code: page.code,
|
|
168
|
-
name: page.name,
|
|
169
|
-
type: 'link',
|
|
170
|
-
path: this.constants.SECTIONS_ROUTE + (page.slug ? page.slug : page.code),
|
|
171
|
-
// path: this.constants.SECTIONS_ROUTE + page.slug,
|
|
172
|
-
}
|
|
173
|
-
});
|
|
174
|
-
//data.title = section.name;
|
|
175
|
-
data.name = section.name;
|
|
176
|
-
data.path = this.constants.SECTIONS_ROUTE + (section.slug ? section.slug : section.code);
|
|
177
|
-
data.code = section.code;
|
|
178
|
-
} else {
|
|
179
|
-
data.code = section.code;
|
|
180
|
-
//data.title = section.name;
|
|
181
|
-
data.name = section.name;
|
|
182
|
-
data.type = 'link';
|
|
183
|
-
data.children = [];
|
|
184
|
-
data.path = this.constants.SECTIONS_ROUTE + (section.slug ? section.slug : section.code);
|
|
185
|
-
}
|
|
186
|
-
return data;
|
|
187
|
-
}
|
|
188
|
-
/**
|
|
189
|
-
* Mapea los elementos para darle un formato mas amigable para los menúes y filtros.
|
|
190
|
-
* @param elements categorias | atributos
|
|
191
|
-
* @returns
|
|
192
|
-
*/
|
|
193
|
-
public generateMenu = (elements:any) => {
|
|
194
|
-
return elements.map( (element: any) => {
|
|
195
|
-
if (element.children && element.children.length == 0) {
|
|
196
|
-
return {
|
|
197
|
-
...element,
|
|
198
|
-
title: element.name,
|
|
199
|
-
path: element.path,
|
|
200
|
-
type: 'link',
|
|
201
|
-
}
|
|
202
|
-
}else{
|
|
203
|
-
return {
|
|
204
|
-
...element,
|
|
205
|
-
title: element.name,
|
|
206
|
-
type: 'sub',
|
|
207
|
-
path: element.path,
|
|
208
|
-
children : ( element.children ? this.generateMenu(element.children) : [])
|
|
209
|
-
}
|
|
210
|
-
}
|
|
211
|
-
})
|
|
212
|
-
}
|
|
213
|
-
/**
|
|
214
|
-
* Devuelve los elementos del breadcrumb.
|
|
215
|
-
* @param code
|
|
216
|
-
* @returns
|
|
217
|
-
*/
|
|
218
|
-
getBreadcrumb = (code:any) => {
|
|
219
|
-
if (!code) return null;
|
|
220
|
-
let breadcrumb = this.generateBreadcrumb(code, this.generateMenu(this.categoriesSubject.value), []);
|
|
221
|
-
if (!breadcrumb || !breadcrumb.length) breadcrumb = this.generateBreadcrumb(code, this.generateMenu(this.attributesSubject.value), []);
|
|
222
|
-
return (breadcrumb && breadcrumb.length) && breadcrumb.reverse();
|
|
223
|
-
}
|
|
224
|
-
/**
|
|
225
|
-
* Genera los breadcrumbs en base a los filtros aplicados.
|
|
226
|
-
* @param filters
|
|
227
|
-
* @returns
|
|
228
|
-
*/
|
|
229
|
-
getBreadcrumbByFilters = (filters: Filter[]) => {
|
|
230
|
-
let final_result:any[] = [];
|
|
231
|
-
filters.forEach(filter => {
|
|
232
|
-
let result = filter.getSelectedList();
|
|
233
|
-
if (!result || !result.length) return;
|
|
234
|
-
|
|
235
|
-
if (filter.type() == 'categories') final_result.unshift(...this.generateBreadcrumb(result[0], filter.data, []).reverse());
|
|
236
|
-
else result.forEach(
|
|
237
|
-
(code:any) => {
|
|
238
|
-
let breadcrumb = this.generateBreadcrumb(code, filter.data, [])
|
|
239
|
-
breadcrumb.length && final_result.push(breadcrumb[0]);
|
|
240
|
-
}
|
|
241
|
-
);
|
|
242
|
-
});
|
|
243
|
-
|
|
244
|
-
return final_result;
|
|
245
|
-
}
|
|
246
|
-
/**
|
|
247
|
-
* Genera el listado de breadcrumb.
|
|
248
|
-
* @param code
|
|
249
|
-
* @param elements filtros actuales en el frontend
|
|
250
|
-
* @param result datos a actualizar con el nuevo listado de breadcrumb
|
|
251
|
-
* @returns
|
|
252
|
-
*/
|
|
253
|
-
private generateBreadcrumb = (code:string, elements:any, result:any) => {
|
|
254
|
-
let element = elements.find((elem:any) => elem.code == code);
|
|
255
|
-
if (element) {
|
|
256
|
-
result.push(element);
|
|
257
|
-
}
|
|
258
|
-
else {
|
|
259
|
-
elements.some((elem:any) => {
|
|
260
|
-
if (elem.children && elem.children.length) {
|
|
261
|
-
const length = result.length;
|
|
262
|
-
let new_result = this.generateBreadcrumb(code, elem.children, result);
|
|
263
|
-
if (new_result.length > length) {
|
|
264
|
-
result = new_result;
|
|
265
|
-
result.push(elem);
|
|
266
|
-
return true;
|
|
267
|
-
}
|
|
268
|
-
}
|
|
269
|
-
return false;
|
|
270
|
-
})
|
|
271
|
-
}
|
|
272
|
-
return result;
|
|
273
|
-
}
|
|
274
|
-
}
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { CheckoutData, CheckoutDataType } from '../interfaces';
|
|
3
|
-
|
|
4
|
-
@Injectable({
|
|
5
|
-
providedIn: 'root'
|
|
6
|
-
})
|
|
7
|
-
export class OrderUtilityService {
|
|
8
|
-
|
|
9
|
-
constructor() { }
|
|
10
|
-
/**
|
|
11
|
-
* @param cart Objeto carrito o orden, indistintamente, ya que poseen el mismo formato
|
|
12
|
-
* @param forCart Si la solicitud de promociones proviene del carrito, suprime el subtotal y el total
|
|
13
|
-
* @description Devuelve un listado con todas las promociones que posee el carro/orden
|
|
14
|
-
*/
|
|
15
|
-
getPromotions = (cart: any, forCart: boolean = false): CheckoutData[] | undefined => {
|
|
16
|
-
if (cart.checkoutState && cart.checkoutState == "completed") return;
|
|
17
|
-
let new_state: CheckoutData[] = [];
|
|
18
|
-
let subtotal: CheckoutData = { type: 'subtotal', name: 'subtotal', amount: cart.totals.items };
|
|
19
|
-
let total: CheckoutData = { type: 'total', name: 'total', amount: cart.totals.total };
|
|
20
|
-
!forCart && new_state.push(subtotal);
|
|
21
|
-
|
|
22
|
-
for (let index = 0; index < cart.cartDiscounts.length; index++) {
|
|
23
|
-
cart.cartDiscounts[index].type = this.formatType(cart.cartDiscounts[index].type);
|
|
24
|
-
new_state.push({
|
|
25
|
-
type: cart.cartDiscounts[index].type,
|
|
26
|
-
name: (cart.cartDiscounts[index].type != 'coupon') ? cart.cartDiscounts[index].name : 'coupon',
|
|
27
|
-
amount: this.getAmount(cart.cartDiscounts[index], cart)
|
|
28
|
-
});
|
|
29
|
-
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
!forCart && new_state.push(total);
|
|
33
|
-
return new_state;
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
getAmount(discount:any, cart:any): number{
|
|
37
|
-
if (discount.type != 'shipment') return discount.amount;
|
|
38
|
-
return cart.totals.shipping;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
formatType(type: string): CheckoutDataType | string{
|
|
42
|
-
let result;
|
|
43
|
-
switch (type) {
|
|
44
|
-
case 'order_promotion': result = 'discount'; break;
|
|
45
|
-
case 'order_shipping_promotion': result = 'shipment'; break;
|
|
46
|
-
case 'order_coupon_promotion': result = 'coupon'; break;
|
|
47
|
-
case 'order_unit_promotion': result = 'discount'; break;
|
|
48
|
-
}
|
|
49
|
-
!result && (result = type.includes('promotion') || type.includes('discount') ? 'discount' : type)
|
|
50
|
-
return result || type;
|
|
51
|
-
}
|
|
52
|
-
}
|
|
@@ -1,172 +0,0 @@
|
|
|
1
|
-
import { inject, Injectable, signal } from '@angular/core';
|
|
2
|
-
import { ConnectionService } from '../api';
|
|
3
|
-
import { BehaviorSubject, map, Observable, shareReplay, switchMap } from 'rxjs';
|
|
4
|
-
import { Pagination, Product } from '../interfaces';
|
|
5
|
-
import { FiltersService } from './filters.service';
|
|
6
|
-
import { Filter } from '../classes';
|
|
7
|
-
/**
|
|
8
|
-
* Servicio para manejar la paginación de los productos.
|
|
9
|
-
* @class PaginationService
|
|
10
|
-
*/
|
|
11
|
-
@Injectable({
|
|
12
|
-
providedIn: 'root'
|
|
13
|
-
})
|
|
14
|
-
export class PaginationService {
|
|
15
|
-
|
|
16
|
-
private _connectionService: ConnectionService = inject(ConnectionService);
|
|
17
|
-
private _filtersService: FiltersService = inject(FiltersService)
|
|
18
|
-
public paginationData$ = this._filtersService.filters$.pipe(
|
|
19
|
-
shareReplay(1),
|
|
20
|
-
switchMap((filters) => {
|
|
21
|
-
const url = this.buildUrl(filters);
|
|
22
|
-
console.log("pag",url);
|
|
23
|
-
return this.getData(url);
|
|
24
|
-
})
|
|
25
|
-
)
|
|
26
|
-
|
|
27
|
-
private _dataPagination: any = signal<Pagination>({
|
|
28
|
-
attributes: [],
|
|
29
|
-
category: [],
|
|
30
|
-
options: [],
|
|
31
|
-
limit: 0,
|
|
32
|
-
page: 0,
|
|
33
|
-
pages: 0,
|
|
34
|
-
total: 0,
|
|
35
|
-
items: [],
|
|
36
|
-
called: false
|
|
37
|
-
});
|
|
38
|
-
|
|
39
|
-
private _waiting: boolean = false;
|
|
40
|
-
private _finished: boolean = false;
|
|
41
|
-
private _apiUrl: string = '';
|
|
42
|
-
private _start: boolean = false;
|
|
43
|
-
|
|
44
|
-
private _nextProductsSubject: BehaviorSubject<Product[]> = new BehaviorSubject<Product[]>([]);
|
|
45
|
-
public nextProducts$ = this._nextProductsSubject.asObservable();
|
|
46
|
-
|
|
47
|
-
private _resetSubject: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(false);
|
|
48
|
-
public reset$ = this._resetSubject.asObservable();
|
|
49
|
-
constructor() { }
|
|
50
|
-
|
|
51
|
-
/**
|
|
52
|
-
* Inicializa la configuración para el Servicio de Paginación.
|
|
53
|
-
* @param apiUrl Url con los filtros aplicados.
|
|
54
|
-
* @param limit limite de productos en cada petición.
|
|
55
|
-
*/
|
|
56
|
-
initialize(apiUrl: string, limit?: number) {
|
|
57
|
-
//console.log(apiUrl)
|
|
58
|
-
this._apiUrl = apiUrl;
|
|
59
|
-
this._dataPagination().limit = limit || this._dataPagination().limit || 10;
|
|
60
|
-
this._finished = false;
|
|
61
|
-
this._start = true;
|
|
62
|
-
this._nextProductsSubject.next([]);
|
|
63
|
-
}
|
|
64
|
-
/**
|
|
65
|
-
* Obtengo los datos de la siguiente página.
|
|
66
|
-
* @param next
|
|
67
|
-
* @returns
|
|
68
|
-
*/
|
|
69
|
-
getNext(next?: any): boolean {
|
|
70
|
-
this._waiting = true;
|
|
71
|
-
this._nextProductsSubject.next([]);
|
|
72
|
-
this._apiUrl = this._apiUrl.replace('%20', ' ');// mas para cuando es un search value.
|
|
73
|
-
let nextProducts;
|
|
74
|
-
if (this._start) {
|
|
75
|
-
nextProducts = this._connectionService.get(this._apiUrl, { limit: this._dataPagination().limit, page: 1 })
|
|
76
|
-
this._start = false
|
|
77
|
-
} else {
|
|
78
|
-
nextProducts = this._connectionService.get(this._dataPagination().links.next.slice(1));
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
!this._finished && nextProducts.subscribe(
|
|
82
|
-
(response: Pagination) => {
|
|
83
|
-
response.links ? this.updatePageData(response) : this.finish(response)
|
|
84
|
-
this._nextProductsSubject.next(response.items);
|
|
85
|
-
}
|
|
86
|
-
)
|
|
87
|
-
return true;
|
|
88
|
-
}
|
|
89
|
-
/**
|
|
90
|
-
* Actualiza los datos de la pagina.
|
|
91
|
-
* @param response respuesta del backend o objecto del tipo `Pagination`.
|
|
92
|
-
*/
|
|
93
|
-
updatePageData(response: Pagination): void {
|
|
94
|
-
this._dataPagination.set({ ...response, called: true })
|
|
95
|
-
this._finished = (response.page == response.pages)
|
|
96
|
-
this._waiting = false;
|
|
97
|
-
}
|
|
98
|
-
/**
|
|
99
|
-
* Marca el final de las paginas, es decir cuando ya no queda mas elementos que mostrar.
|
|
100
|
-
* @param response
|
|
101
|
-
*/
|
|
102
|
-
finish(response: Pagination): void {
|
|
103
|
-
this._finished = true;
|
|
104
|
-
this._waiting = false;
|
|
105
|
-
}
|
|
106
|
-
/**
|
|
107
|
-
* Obtengo los productos de la pagina cargada actual.
|
|
108
|
-
* @returns
|
|
109
|
-
*/
|
|
110
|
-
public getNextProducts(): Product[] {
|
|
111
|
-
return this._nextProductsSubject.value;
|
|
112
|
-
}
|
|
113
|
-
/**
|
|
114
|
-
* Devuelve si esta esperando o no la petición al backend.
|
|
115
|
-
* @returns
|
|
116
|
-
*/
|
|
117
|
-
public getWaiting(): boolean { return this._waiting; }
|
|
118
|
-
/**
|
|
119
|
-
* Setea la variable waiting.
|
|
120
|
-
* @param value
|
|
121
|
-
*/
|
|
122
|
-
public setWaiting(value: boolean): void { this._waiting = value }
|
|
123
|
-
/**
|
|
124
|
-
* Getter para la variable `_finished`.
|
|
125
|
-
* @returns
|
|
126
|
-
*/
|
|
127
|
-
public getFinished(): boolean { return this._finished; }
|
|
128
|
-
/**
|
|
129
|
-
* Devuelve el total de Items.
|
|
130
|
-
* @returns
|
|
131
|
-
*/
|
|
132
|
-
public getTotalItems(): number {
|
|
133
|
-
return this._dataPagination().limit * this._dataPagination().page;
|
|
134
|
-
}
|
|
135
|
-
/**
|
|
136
|
-
* Obtengo un objecto con los datos de los filtros resultantes.
|
|
137
|
-
* @returns
|
|
138
|
-
*/
|
|
139
|
-
public getFiltersPagination(): any {
|
|
140
|
-
return {
|
|
141
|
-
"categories": this._dataPagination().category,
|
|
142
|
-
"attributes": this._dataPagination().attributes,
|
|
143
|
-
"options": this._dataPagination().options
|
|
144
|
-
}
|
|
145
|
-
}
|
|
146
|
-
/**
|
|
147
|
-
* Para contruiste la url en base a los filtros aplicados.
|
|
148
|
-
* @param filters
|
|
149
|
-
* @returns
|
|
150
|
-
*/
|
|
151
|
-
public buildUrl(filters: Filter[]) {
|
|
152
|
-
return this._filtersService.generateFinalApi();
|
|
153
|
-
}
|
|
154
|
-
/**
|
|
155
|
-
* Devuelve un observable de los productos que devolvio la última página obtenida.
|
|
156
|
-
* @param url
|
|
157
|
-
* @returns
|
|
158
|
-
*/
|
|
159
|
-
public getData(url: string): Observable<any> {
|
|
160
|
-
this._resetSubject.next(true);
|
|
161
|
-
this._nextProductsSubject.next([]);
|
|
162
|
-
this._connectionService.get(url, { limit: 10, page: 1 }).pipe(
|
|
163
|
-
map(res =>{
|
|
164
|
-
//console.log(res)
|
|
165
|
-
this._nextProductsSubject.next(res.items);
|
|
166
|
-
res.links ? this.updatePageData(res) : this.finish(res)
|
|
167
|
-
})).subscribe();
|
|
168
|
-
|
|
169
|
-
return this.nextProducts$;
|
|
170
|
-
}
|
|
171
|
-
}
|
|
172
|
-
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
import { inject, Injectable } from '@angular/core';
|
|
2
|
-
import { ApiConstantsService } from '../constants';
|
|
3
|
-
import { ConnectionService } from '../api';
|
|
4
|
-
import { BehaviorSubject, catchError, map, Observable, of, shareReplay } from 'rxjs';
|
|
5
|
-
import { Parameter } from '../interfaces';
|
|
6
|
-
/**
|
|
7
|
-
* Servicio que maneja los parametros de la aplicación.
|
|
8
|
-
*/
|
|
9
|
-
@Injectable({
|
|
10
|
-
providedIn: 'root'
|
|
11
|
-
})
|
|
12
|
-
export class ParametersService {
|
|
13
|
-
/**
|
|
14
|
-
* Constantes de la API
|
|
15
|
-
*/
|
|
16
|
-
private apiConstants = inject(ApiConstantsService)
|
|
17
|
-
/**
|
|
18
|
-
* Maneja las peticiones a la API
|
|
19
|
-
*/
|
|
20
|
-
private connection = inject(ConnectionService)
|
|
21
|
-
|
|
22
|
-
//API URLS
|
|
23
|
-
/**
|
|
24
|
-
* Devuelve la URL para obtener todos los parametros.
|
|
25
|
-
* @returns
|
|
26
|
-
*/
|
|
27
|
-
private getAllParametersAPI() { return `${this.apiConstants.SHOP_API_URL}${this.apiConstants.CHANNEL}/parameters` }
|
|
28
|
-
|
|
29
|
-
//OBSERVABLES
|
|
30
|
-
/**
|
|
31
|
-
* Subject para manejar los cambios en los datos de los parametros
|
|
32
|
-
*/
|
|
33
|
-
private parametersSubject = new BehaviorSubject<Parameter[] | null>(null);
|
|
34
|
-
private parameters$: Observable<Parameter[] | null> = this.parametersSubject.asObservable();
|
|
35
|
-
|
|
36
|
-
//METHODS
|
|
37
|
-
/**
|
|
38
|
-
* Obtiene los parámetros del backend.
|
|
39
|
-
* @returns
|
|
40
|
-
*/
|
|
41
|
-
public getParameters(): Observable<Parameter[] | null> {
|
|
42
|
-
if (this.parametersSubject.getValue() === null) {
|
|
43
|
-
this.connection.get(this.getAllParametersAPI()).pipe(
|
|
44
|
-
shareReplay(1),
|
|
45
|
-
map((response: Parameter[]) => {
|
|
46
|
-
this.parametersSubject.next(response)
|
|
47
|
-
return response
|
|
48
|
-
}), catchError((error: any) => {
|
|
49
|
-
console.log(`Error: ${error}`)
|
|
50
|
-
this.parametersSubject.next([])
|
|
51
|
-
return of([])
|
|
52
|
-
})
|
|
53
|
-
).subscribe();
|
|
54
|
-
}
|
|
55
|
-
return this.parameters$
|
|
56
|
-
}
|
|
57
|
-
/**
|
|
58
|
-
* Comprueba si el código de un parámetro existe en la lista de parámetros.
|
|
59
|
-
* @param params Lista de parámetros
|
|
60
|
-
* @param code Código del parámetro a buscar
|
|
61
|
-
* @returns El objeto con los datos del parámetro encontrado, sino retorna `null`
|
|
62
|
-
*/
|
|
63
|
-
public hasParams(params: any, code: string): any { return params && params.find((param: any) => param.code?.toLowerCase().includes(code.toLowerCase())) }
|
|
64
|
-
|
|
65
|
-
constructor() { }
|
|
66
|
-
|
|
67
|
-
}
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
import { inject, Injectable } from '@angular/core';
|
|
2
|
-
import { BehaviorSubject, firstValueFrom, map } from 'rxjs';
|
|
3
|
-
import { ConnectionService } from '../api';
|
|
4
|
-
import { ToastService } from './toast.service';
|
|
5
|
-
import { ApiConstantsService } from '../constants';
|
|
6
|
-
import { CartService } from './cart.service';
|
|
7
|
-
import { AnalyticsService } from './analytics';
|
|
8
|
-
import { CheckoutService } from './checkout.service';
|
|
9
|
-
|
|
10
|
-
@Injectable({
|
|
11
|
-
providedIn: 'root'
|
|
12
|
-
})
|
|
13
|
-
export class PaymentService {
|
|
14
|
-
|
|
15
|
-
private _connectionService: ConnectionService = inject(ConnectionService);
|
|
16
|
-
private _toastService: ToastService = inject(ToastService);
|
|
17
|
-
private _apiConsts: ApiConstantsService = inject(ApiConstantsService);
|
|
18
|
-
private _cartService: CartService = inject(CartService);
|
|
19
|
-
private _analyticsService: AnalyticsService = inject(AnalyticsService);
|
|
20
|
-
private _checkoutService: CheckoutService = inject(CheckoutService);
|
|
21
|
-
|
|
22
|
-
private paymentMethodsSubject = new BehaviorSubject<any[]>([]);
|
|
23
|
-
public methods$ = this.paymentMethodsSubject.asObservable();
|
|
24
|
-
|
|
25
|
-
//API URL
|
|
26
|
-
baseApi() { return 'shop-api/' + this._apiConsts.CHANNEL + '/' + 'checkout/' + this._cartService.getCartToken(); }
|
|
27
|
-
getPaymentMethodsApi() { return this.baseApi() + '/payment'; }
|
|
28
|
-
putPaymentApi(method: string) { return this.baseApi() + '/payment/' + method; }
|
|
29
|
-
getPreferenceApi (){ return 'shop-api/' + this._apiConsts.CHANNEL + '/mercado-pago/' + this._cartService.getCartToken() + '/preference'; }
|
|
30
|
-
|
|
31
|
-
constructor() {
|
|
32
|
-
this.getPaymentMethods();
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
getPaymentMethods() {
|
|
36
|
-
return firstValueFrom(this._connectionService.get(this.getPaymentMethodsApi())).then(
|
|
37
|
-
res => res.payments?.length && this.paymentMethodsSubject.next(Object.keys(res.payments[0].methods).map(key => res.payments[0].methods[key])),
|
|
38
|
-
err => this._toastService.show('operation-error')
|
|
39
|
-
);
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
putPayment(method: any) {
|
|
43
|
-
return firstValueFrom(this._connectionService
|
|
44
|
-
.put(this.putPaymentApi(method), { method })).then(
|
|
45
|
-
res => {
|
|
46
|
-
this._analyticsService.callEvent('add_payment_info', res);
|
|
47
|
-
return res
|
|
48
|
-
},
|
|
49
|
-
err => {
|
|
50
|
-
return new Promise((resolve, reject) => reject(new Error(err.error)))
|
|
51
|
-
}
|
|
52
|
-
).catch(err => console.error(err))
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
getPreference(shipment_data:any){
|
|
56
|
-
return firstValueFrom(this._connectionService.post(this.getPreferenceApi(), shipment_data).pipe(map(res => (res.preference || res))));
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
setPayment(data:any) {
|
|
60
|
-
return this._checkoutService.setStepData('payment',data);
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
}
|