ng-easycommerce 0.0.430 → 0.0.433

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/README.md +13 -0
  2. package/bundles/ng-easycommerce.umd.js +285 -61
  3. package/bundles/ng-easycommerce.umd.js.map +1 -1
  4. package/bundles/ng-easycommerce.umd.min.js +1 -1
  5. package/bundles/ng-easycommerce.umd.min.js.map +1 -1
  6. package/esm2015/lib/ec-component/account-ec/order-ec/order-ec.component.js +2 -2
  7. package/esm2015/lib/ec-component/account-ec/orders-list-ec/orders-list-ec.component.js +2 -2
  8. package/esm2015/lib/ec-component/checkout-ec/payment-ec/payment-ec.component.js +2 -2
  9. package/esm2015/lib/ec-component/checkout-ec/shipment-ec/shipment-ec.component.js +3 -2
  10. package/esm2015/lib/ec-component/compared-products-ec/compared-products-ec.component.js +186 -0
  11. package/esm2015/lib/ec-component/index.js +4 -1
  12. package/esm2015/lib/ec-component/related-products-ec/related-products-ec.component.js +10 -2
  13. package/esm2015/lib/services/auth.service.js +9 -1
  14. package/esm2015/lib/services/checkout/shipment.service.js +5 -5
  15. package/esm2015/ng-easycommerce.js +19 -18
  16. package/esm5/lib/ec-component/account-ec/order-ec/order-ec.component.js +2 -2
  17. package/esm5/lib/ec-component/account-ec/orders-list-ec/orders-list-ec.component.js +2 -2
  18. package/esm5/lib/ec-component/checkout-ec/payment-ec/payment-ec.component.js +2 -2
  19. package/esm5/lib/ec-component/checkout-ec/shipment-ec/shipment-ec.component.js +3 -2
  20. package/esm5/lib/ec-component/compared-products-ec/compared-products-ec.component.js +209 -0
  21. package/esm5/lib/ec-component/index.js +4 -1
  22. package/esm5/lib/ec-component/related-products-ec/related-products-ec.component.js +10 -2
  23. package/esm5/lib/services/auth.service.js +12 -1
  24. package/esm5/lib/services/checkout/shipment.service.js +5 -5
  25. package/esm5/ng-easycommerce.js +19 -18
  26. package/fesm2015/ng-easycommerce.js +242 -45
  27. package/fesm2015/ng-easycommerce.js.map +1 -1
  28. package/fesm5/ng-easycommerce.js +268 -45
  29. package/fesm5/ng-easycommerce.js.map +1 -1
  30. package/lib/ec-component/checkout-ec/shipment-ec/shipment-ec.component.d.ts +1 -0
  31. package/lib/ec-component/compared-products-ec/compared-products-ec.component.d.ts +70 -0
  32. package/lib/ec-component/index.d.ts +1 -0
  33. package/lib/ec-component/related-products-ec/related-products-ec.component.d.ts +2 -0
  34. package/lib/services/auth.service.d.ts +7 -0
  35. package/lib/services/checkout/shipment.service.d.ts +1 -1
  36. package/ng-easycommerce.d.ts +18 -17
  37. package/ng-easycommerce.metadata.json +1 -1
  38. package/package.json +1 -1
@@ -3703,6 +3703,17 @@ var AuthService = /** @class */ (function () {
3703
3703
  this.setHomeResolver = function (resolverFunction) { return _this.homeResolver = resolverFunction; };
3704
3704
  this.getHomeResolver = function () { return _this.homeResolver; };
3705
3705
  this.isAbleToBuy = function () { var _a; return !((_a = _this.getUserProfileAsUser()) === null || _a === void 0 ? void 0 : _a.isSeller()) || !!_this.getCustomer(); };
3706
+ /**
3707
+ * @description Evalua si el valor que ingresa por parámetro es mayor o igual al mínimo de compra
3708
+ * que el usuario tiene asignado a ese canal, diferenciando si es mayorista o minorista.
3709
+ * @param {number} value
3710
+ * @returns {boolean} true si excede el monto, false caso contrario
3711
+ */
3712
+ this.exceedsMinimumAmount = function (value) {
3713
+ if (value === void 0) { value = 0; }
3714
+ return _this.user.isWholesaler() ? _this.user.channels.find(function (channel) { return _this.constants.getChannel() == channel.code; }).wholesalerMinimumPurchaseAmount <= value
3715
+ : _this.user.channels.find(function (channel) { return _this.constants.getChannel() == channel.code; }).retailerMinimumPurchaseAmount <= value;
3716
+ };
3706
3717
  this.isAuthenticated() && this.loggedInSubject.next(true);
3707
3718
  }
3708
3719
  /**
@@ -4622,10 +4633,6 @@ var ShipmentService = /** @class */ (function (_super) {
4622
4633
  _this.state = _this.stateSubject.asObservable();
4623
4634
  _this.methods = _this.methodsSubject.asObservable();
4624
4635
  _this.costs = _this.costsSubject.asObservable();
4625
- /**
4626
- * @param moreInfoInMethod por defecto su estado es false, si se desea que visualice información adicional de cada método de envió asignar true.
4627
- */
4628
- _this.moreInfoInMethod = false;
4629
4636
  _this.shipmentMethodsApi = function () { return _this.baseApi() + '/shipping'; };
4630
4637
  _this.persistShipmentApi = function () { return 'shop-api/' + _this.consts.getChannel() + '/andreani/' + _this.cartService.getCartToken() + '/ship'; };
4631
4638
  _this.putShipmentApi = function () { return _this.baseApi() + '/shipping/' + _this.stateSubject.getValue().data.method; };
@@ -4767,6 +4774,10 @@ var ShipmentService = /** @class */ (function (_super) {
4767
4774
  ShipmentService.prototype.ngOnDestroy = function () {
4768
4775
  this.subscription && this.subscription.unsubscribe();
4769
4776
  };
4777
+ /**
4778
+ * @param moreInfoInMethod por defecto su estado es false, si se desea que visualice información adicional de cada método de envió asignar true.
4779
+ */
4780
+ ShipmentService.moreInfoInMethod = false;
4770
4781
  ShipmentService.ctorParameters = function () { return [
4771
4782
  { type: ConnectionService },
4772
4783
  { type: ShipmentDataTransformer },
@@ -6968,7 +6979,7 @@ var PaymentEcComponent = /** @class */ (function (_super) {
6968
6979
  PaymentEcComponent = __decorate$Q([
6969
6980
  Component({
6970
6981
  selector: 'app-payment-ec',
6971
- template: "<div class=\"container-fluid\" *ngIf=\"(paymentService.methods$ | async) as methods\">\n\n <div class=\"row\">\n <div class=\"col-12\">\n <div class=\"card \">\n <div class=\"card-header text-dark text-center\">\n <h4>{{ 'select-method' | translate }}</h4>\n <div class=\"btn-toolbar justify-content-center\" role=\"toolbar\" aria-label=\"Envios toolbar\">\n <div class=\"btn-group group-shipping\" role=\"group\" aria-label=\"Grupo botones envio\">\n <div class=\"d-flex align-content-start flex-wrap btn-group\">\n <button type=\"button\" class=\"btn btn-outline-secondary\"\n *ngFor=\"let method of methods; let x = index\"\n (click)=\"setMethod(method) ; setActive($event)\">\n {{ method.name | translate }}\n </button>\n </div>\n </div>\n </div>\n </div>\n <div class=\"card-body text-center\">\n <div class=\"row justify-content-center\" *ngIf=\"(method_data$ | async) as method\">\n <ng-container *ngIf=\"!loading_internal ; else loading\">\n <div class=\"method-container text-dark\" *ngIf=\"isMP(method.code)\">\n <p id=\"faqs\" class=\"qt px-5 \">{{ method.description }}</p>\n <p class=\"px-5\">{{ method.instructions }}</p>\n <app-mp-redirect-ec (ready)=\"verifyValidate($event)\" [method]=\"method\" [paymentServiceInst]=\"paymentService\" [allData]=\"allData()\"></app-mp-redirect-ec>\n </div>\n <div class=\"method-container text-dark text-left\" *ngIf=\"isMPTarjetaDeCredito(method.code)\">\n <div class=\"row\">\n <div class=\"col-12\">\n <p id=\"faqs\" class=\"qt px-5 \">{{ method.description }}</p>\n <p class=\"px-5\">{{ method.instructions }}</p>\n <div app-mp-credit-ec (ready)=\"verifyValidate()\" [public_key]=\"getPK(method)\"\n [user_data]=\"allData()\" [total_amount]=\"total_amount\">\n </div>\n </div>\n </div>\n </div>\n <div class=\"method-container text-dark text-start\"\n *ngIf=\"isRedirectRedsys(method.code)\">\n <div class=\"row\">\n <div class=\"col-12\">\n <ng-container *ngIf=\"!method.code.includes('bizum') && !method.code.includes('_out_')\">\n <app-redsys-redirect-ec (ready)=\"verifyValidate($event)\" [method]=\"method\" [user_data]=\"allData()\">\n </app-redsys-redirect-ec>\n </ng-container>\n <ng-container *ngIf=\"method.code.includes('bizum') || method.code.includes('_out_')\">\n <app-redsys-redirect-out-ec (ready)=\"verifyValidate($event)\" [method]=\"method\" [user_data]=\"allData()\">\n </app-redsys-redirect-out-ec>\n </ng-container>\n </div>\n </div>\n </div>\n <div class=\"method-container text-dark text-start\" *ngIf=\"isRedirectCecaBank(method.code)\">\n <div class=\"row\">\n <div class=\"col-12\">\n <app-ceca-redirect-ec (ready)=\"verifyValidate($event)\" [method]=\"method\" [user_data]=\"allData()\">\n </app-ceca-redirect-ec>\n </div>\n </div>\n </div>\n <div class=\"method-container text-dark text-start\" *ngIf=\"isPeyPalExpress(method.code)\">\n <div class=\"container\">\n <div class=\"row justify-content-center\">\n <div class=\"col-12\">\n <app-paypal-express-ec (ready)=\"verifyValidate($event)\" [method]=\"method\" [user_data]=\"allData()\"\n [total_amount]=\"total_amount\">\n </app-paypal-express-ec>\n </div>\n </div>\n </div>\n </div>\n <div class=\"method-container text-dark text-start\" *ngIf=\"isMobbex(method.code)\">\n <div class=\"container\">\n <div class=\"row justify-content-center\">\n <div class=\"col-12\">\n <app-mobbex-ec (ready)=\"verifyValidate($event)\" [method]=\"method\" [user_data]=\"allData()\" [paymentServiceInst]=\"paymentService\"\n [total_amount]=\"total_amount\">\n </app-mobbex-ec>\n </div>\n </div>\n </div>\n </div>\n <div class=\"method-container text-dark text-start\" *ngIf=\"isBancard(method.code)\">\n <div class=\"container\">\n <div class=\"row justify-content-center\">\n <div class=\"col-12\">\n <app-bancard-ec (ready)=\"verifyValidate($event)\" [method]=\"method\" [user_data]=\"allData()\"\n [paymentServiceInst]=\"paymentService\" [total_amount]=\"total_amount\">\n </app-bancard-ec>\n </div>\n </div>\n </div>\n </div>\n <div class=\"method-container text-dark text-start\" *ngIf=\"isDecidir(method.code)\">\n <div class=\"container\">\n <div class=\"row justify-content-center\">\n <div class=\"col-12\">\n <app-decidir-ec (ready)=\"verifyValidate($event)\" [method]=\"method\" [user_data]=\"allData()\" [paymentServiceInst]=\"paymentService\"\n [total_amount]=\"total_amount\">\n </app-decidir-ec>\n </div>\n </div>\n </div>\n </div>\n <div class=\"method-container text-dark\" *ngIf=\"isMethodOffline(method.code)\">\n <p id=\"faqs\" class=\"qt px-5\">{{ method.description }}</p>\n <p class=\"px-5\">{{ method.instructions }}</p>\n <div class=\"end-button\">\n <button class=\"btn comprar\" (click)=\"setLoading() && verifyValidate()\">{{ ('pay-with-offline'| translate) }}</button>\n </div>\n <ng-container *ngIf=\"(loading$ | async) as load\">\n <div class=\"mt-2\" *ngIf=\"load\">\n <app-loading-inline-ec></app-loading-inline-ec>\n </div>\n </ng-container>\n </div>\n <div class=\"method-container text-dark\" *ngIf=\"method.code == 'bank_transfer'\">\n <p id=\"faqs\" class=\"qt px-5\">{{ method.description }}</p>\n <p class=\"px-5\">{{ method.instructions }}</p>\n <div class=\"end-button\">\n <button class=\"btn comprar\" (click)=\"setLoading() && verifyValidate()\">{{\n ('pay-with-transfer'\n | translate) }}</button>\n </div>\n <ng-container *ngIf=\"(loading$ | async) as load\">\n <div class=\"mt-2\" *ngIf=\"load\">\n <app-loading-inline-ec></app-loading-inline-ec>\n </div>\n </ng-container>\n </div>\n </ng-container>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n\n<ng-template #mercadoPago>\n <div class=\"row \">\n <div class=\"col-12 text-center\">\n <app-loading-inline-ec *ngIf=\"loading_internal_mp\"></app-loading-inline-ec>\n <form action=\"javascript:void(0)\" #formContainer></form>\n </div>\n </div>\n</ng-template>\n\n<ng-template #loading>\n <app-loading-inline-ec></app-loading-inline-ec>\n</ng-template>",
6982
+ template: "<div class=\"container-fluid\" *ngIf=\"(paymentService.methods$ | async) as methods\">\n\n <div class=\"row\">\n <div class=\"col-12\">\n <div class=\"card \">\n <div class=\"card-header text-dark text-center\">\n <h4>{{ 'select-method' | translate }}</h4>\n <div class=\"btn-toolbar justify-content-center\" role=\"toolbar\" aria-label=\"Envios toolbar\">\n <div class=\"\" role=\"group\" aria-label=\"Grupo botones envio\">\n <div class=\"d-flex align-content-start justify-content-center flex-wrap\">\n <button type=\"button\" class=\"btn btn-outline-secondary mx-1 mb-1\"\n *ngFor=\"let method of methods; let x = index\"\n (click)=\"setMethod(method) ; setActive($event)\">\n {{ method.name | translate }}\n </button>\n </div>\n </div>\n </div>\n </div>\n <div class=\"card-body text-center\">\n <div class=\"row justify-content-center\" *ngIf=\"(method_data$ | async) as method\">\n <ng-container *ngIf=\"!loading_internal ; else loading\">\n <div class=\"method-container text-dark\" *ngIf=\"isMP(method.code)\">\n <p id=\"faqs\" class=\"qt px-5 \">{{ method.description }}</p>\n <p class=\"px-5\">{{ method.instructions }}</p>\n <app-mp-redirect-ec (ready)=\"verifyValidate($event)\" [method]=\"method\" [paymentServiceInst]=\"paymentService\" [allData]=\"allData()\"></app-mp-redirect-ec>\n </div>\n <div class=\"method-container text-dark text-left\" *ngIf=\"isMPTarjetaDeCredito(method.code)\">\n <div class=\"row\">\n <div class=\"col-12\">\n <p id=\"faqs\" class=\"qt px-5 \">{{ method.description }}</p>\n <p class=\"px-5\">{{ method.instructions }}</p>\n <div app-mp-credit-ec (ready)=\"verifyValidate()\" [public_key]=\"getPK(method)\"\n [user_data]=\"allData()\" [total_amount]=\"total_amount\">\n </div>\n </div>\n </div>\n </div>\n <div class=\"method-container text-dark text-start\"\n *ngIf=\"isRedirectRedsys(method.code)\">\n <div class=\"row\">\n <div class=\"col-12\">\n <ng-container *ngIf=\"!method.code.includes('bizum') && !method.code.includes('_out_')\">\n <app-redsys-redirect-ec (ready)=\"verifyValidate($event)\" [method]=\"method\" [user_data]=\"allData()\">\n </app-redsys-redirect-ec>\n </ng-container>\n <ng-container *ngIf=\"method.code.includes('bizum') || method.code.includes('_out_')\">\n <app-redsys-redirect-out-ec (ready)=\"verifyValidate($event)\" [method]=\"method\" [user_data]=\"allData()\">\n </app-redsys-redirect-out-ec>\n </ng-container>\n </div>\n </div>\n </div>\n <div class=\"method-container text-dark text-start\" *ngIf=\"isRedirectCecaBank(method.code)\">\n <div class=\"row\">\n <div class=\"col-12\">\n <app-ceca-redirect-ec (ready)=\"verifyValidate($event)\" [method]=\"method\" [user_data]=\"allData()\">\n </app-ceca-redirect-ec>\n </div>\n </div>\n </div>\n <div class=\"method-container text-dark text-start\" *ngIf=\"isPeyPalExpress(method.code)\">\n <div class=\"container\">\n <div class=\"row justify-content-center\">\n <div class=\"col-12\">\n <app-paypal-express-ec (ready)=\"verifyValidate($event)\" [method]=\"method\" [user_data]=\"allData()\"\n [total_amount]=\"total_amount\">\n </app-paypal-express-ec>\n </div>\n </div>\n </div>\n </div>\n <div class=\"method-container text-dark text-start\" *ngIf=\"isMobbex(method.code)\">\n <div class=\"container\">\n <div class=\"row justify-content-center\">\n <div class=\"col-12\">\n <app-mobbex-ec (ready)=\"verifyValidate($event)\" [method]=\"method\" [user_data]=\"allData()\" [paymentServiceInst]=\"paymentService\"\n [total_amount]=\"total_amount\">\n </app-mobbex-ec>\n </div>\n </div>\n </div>\n </div>\n <div class=\"method-container text-dark text-start\" *ngIf=\"isBancard(method.code)\">\n <div class=\"container\">\n <div class=\"row justify-content-center\">\n <div class=\"col-12\">\n <app-bancard-ec (ready)=\"verifyValidate($event)\" [method]=\"method\" [user_data]=\"allData()\"\n [paymentServiceInst]=\"paymentService\" [total_amount]=\"total_amount\">\n </app-bancard-ec>\n </div>\n </div>\n </div>\n </div>\n <div class=\"method-container text-dark text-start\" *ngIf=\"isDecidir(method.code)\">\n <div class=\"container\">\n <div class=\"row justify-content-center\">\n <div class=\"col-12\">\n <app-decidir-ec (ready)=\"verifyValidate($event)\" [method]=\"method\" [user_data]=\"allData()\" [paymentServiceInst]=\"paymentService\"\n [total_amount]=\"total_amount\">\n </app-decidir-ec>\n </div>\n </div>\n </div>\n </div>\n <div class=\"method-container text-dark\" *ngIf=\"isMethodOffline(method.code)\">\n <p id=\"faqs\" class=\"qt px-5\">{{ method.description }}</p>\n <p class=\"px-5\">{{ method.instructions }}</p>\n <div class=\"end-button\">\n <button class=\"btn comprar\" (click)=\"setLoading() && verifyValidate()\">{{ ('pay-with-offline'| translate) }}</button>\n </div>\n <ng-container *ngIf=\"(loading$ | async) as load\">\n <div class=\"mt-2\" *ngIf=\"load\">\n <app-loading-inline-ec></app-loading-inline-ec>\n </div>\n </ng-container>\n </div>\n <div class=\"method-container text-dark\" *ngIf=\"method.code == 'bank_transfer'\">\n <p id=\"faqs\" class=\"qt px-5\">{{ method.description }}</p>\n <p class=\"px-5\">{{ method.instructions }}</p>\n <div class=\"end-button\">\n <button class=\"btn comprar\" (click)=\"setLoading() && verifyValidate()\">{{\n ('pay-with-transfer'\n | translate) }}</button>\n </div>\n <ng-container *ngIf=\"(loading$ | async) as load\">\n <div class=\"mt-2\" *ngIf=\"load\">\n <app-loading-inline-ec></app-loading-inline-ec>\n </div>\n </ng-container>\n </div>\n </ng-container>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n\n<ng-template #mercadoPago>\n <div class=\"row \">\n <div class=\"col-12 text-center\">\n <app-loading-inline-ec *ngIf=\"loading_internal_mp\"></app-loading-inline-ec>\n <form action=\"javascript:void(0)\" #formContainer></form>\n </div>\n </div>\n</ng-template>\n\n<ng-template #loading>\n <app-loading-inline-ec></app-loading-inline-ec>\n</ng-template>",
6972
6983
  providers: [PaymentService],
6973
6984
  styles: ["div.col-12 form{text-align:center}.option-container>div{margin-bottom:15px}@media only screen and (min-width:600px){.option-container{display:flex;justify-content:space-between;margin-top:20px}}.method-container{width:100%}.active{background-color:#000!important;color:#fff!important}.comprar{background:#000;color:#fff;display:inline-block;font-size:18px;font-weight:600;padding:10px 25px;text-decoration:none;text-transform:uppercase}"]
6974
6985
  })
@@ -7073,6 +7084,7 @@ var ShipmentEcComponent = /** @class */ (function (_super) {
7073
7084
  _this.verifyValidate(_this.costs[0].name, _this.costs[0].contracts[0]);
7074
7085
  }
7075
7086
  });
7087
+ this.moreInfoInMethod = ShipmentService.moreInfoInMethod;
7076
7088
  this.ecOnInit();
7077
7089
  };
7078
7090
  ShipmentEcComponent.prototype.ngOnChanges = function () {
@@ -7110,7 +7122,7 @@ var ShipmentEcComponent = /** @class */ (function (_super) {
7110
7122
  ShipmentEcComponent = __decorate$R([
7111
7123
  Component({
7112
7124
  selector: 'app-shipment-ec',
7113
- template: "<!-- <div class=\"checkout-title\">\n <h3>{{'shipment-methods'|translate}}</h3>\n</div> -->\n\n<div class=\"container-fluid\">\n <div class=\"col-12\">\n <div class=\"card text-center\">\n <div class=\"card-header text-dark\">\n <h4>{{ 'select-method' | translate }}</h4>\n <div class=\"btn-toolbar justify-content-center\" role=\"toolbar\" aria-label=\"Envios toolbar\"\n *ngIf=\"(shipmentService.methods | async) as methods; else noMethods\">\n <div class=\"btn-group group-shipping\" role=\"group\" aria-label=\"Grupo botones envio\">\n <div class=\"d-flex align-content-start flex-wrap btn-group btn-group-toggle\">\n <button type=\"button\" class=\"btn btn-outline-secondary\"\n *ngFor=\"let method of deleteUPS(methods); let x = index\"\n (click)=\"setMethod(method, post_code); setActive($event)\">\n {{ method.name | translate }}\n </button>\n </div>\n\n\n </div>\n </div>\n </div>\n <div class=\"card-body\">\n <div class=\"row justify-content-center mb-2\" *ngIf=\"this.shipmentService.moreInfoInMethod && methodSelect && methodSelect.description\">\n <span><b>{{ 'information' | translate }}:</b> {{methodSelect.description}} </span>\n </div>\n <div class=\"row justify-content-center\" *ngIf=\"this.costs\">\n <ng-container *ngIf=\"!loading_internal ; else loading\">\n <div class=\"col-auto text-dark\" *ngFor=\"let cost of costs\">\n <ng-container *ngIf=\"cost.contracts.length > 0\">\n <span><b>{{ toTraducible(cost.name) | translate }}</b></span>\n <hr />\n <div class=\"option\" *ngFor=\"let contract of cost.contracts; let i = index\">\n <div class=\"form-check\">\n <input class=\"form-check-input\" [checked]=\"contract.selected\" type=\"radio\" name=\"card\" [id]=\"cost.name + i\"\n value=\"dark\" (click)=\"verifyValidate(cost.name, contract)\">\n <label class=\"form-check-label\" [for]=\"cost.name + i\" aria-label=\"Dark grey\">\n <span\n [class]=\"(cost.name == 'home_delivery') ? 'shipment-contractname home_delivery' : 'shipment-contractname' \"\n *ngIf=\"validName(contract.name)\">{{ contract.name | translate }}</span>\n <span *ngIf=\"contract.computed\"><br class=\"shipment-contractname\">{{ contract.computed | translate }}<br\n class=\"shipment-contractname\"></span>\n <div *ngIf=\"contract.detail\">\n <div *ngFor=\"let line of contract.detail.split(' - '); let i = index\">\n <span *ngIf=\"i == 0\"><b>{{ line }}</b></span>\n <span class=\"inside-detail\" *ngIf=\"i > 0\">{{ line }}</span>\n </div>\n </div>\n <span *ngIf=\"contract.price > 0\" [class]=\"'inside-detail ' + ( costos?.amount == 0 ? ' free ' : '') \">\n <br class=\"shipment-contractname\" *ngIf=\"!contract.computed\">\n {{ ('price'|translate) + ': ' + (contract.price | ecCurrencySymbol) }}</span>\n <span *ngIf=\"contract.price == 0\" [class]=\"'inside-detail ' + ( costos?.amount == 0 ? ' free ' : '') \">\n <br class=\"shipment-contractname\" *ngIf=\"!contract.computed\"> {{ ('free'|translate) }}</span>\n <br>\n </label>\n </div>\n </div>\n </ng-container>\n </div>\n </ng-container>\n </div>\n </div>\n\n </div>\n </div>\n\n</div>\n\n<ng-template #noMethods>\n <div class=\"d-flex flex-row w-100 justify-content-center mt-2\">\n <h5 class=\"text-secondary\">{{'no-shipment-methods'|translate}}</h5>\n </div>\n</ng-template>\n\n<ng-template #loading>\n <app-loading-full-ec></app-loading-full-ec>\n</ng-template>",
7125
+ template: "<!-- <div class=\"checkout-title\">\n <h3>{{'shipment-methods'|translate}}</h3>\n</div> -->\n\n<div class=\"container-fluid\">\n <div class=\"col-12\">\n <div class=\"card text-center\">\n <div class=\"card-header text-dark\">\n <h4>{{ 'select-method' | translate }}</h4>\n <div class=\"btn-toolbar justify-content-center\" role=\"toolbar\" aria-label=\"Envios toolbar\"\n *ngIf=\"(shipmentService.methods | async) as methods; else noMethods\">\n <div class=\"\" role=\"group\" aria-label=\"Grupo botones envio\">\n <div class=\"d-flex align-content-start justify-content-center flex-wrap\">\n <button type=\"button\" class=\"btn btn-outline-secondary mx-1 mb-1\"\n *ngFor=\"let method of deleteUPS(methods); let x = index\"\n (click)=\"setMethod(method, post_code); setActive($event)\">\n {{ method.name | translate }}\n </button>\n </div>\n\n\n </div>\n </div>\n </div>\n <div class=\"card-body\">\n <div class=\"row justify-content-center mb-2\" *ngIf=\"moreInfoInMethod && methodSelect && methodSelect.description\">\n <span><b>{{ 'information' | translate }}:</b> {{methodSelect.description}} </span>\n </div>\n <div class=\"row justify-content-center\" *ngIf=\"this.costs\">\n <ng-container *ngIf=\"!loading_internal ; else loading\">\n <div class=\"col-auto text-dark\" *ngFor=\"let cost of costs\">\n <ng-container *ngIf=\"cost.contracts.length > 0\">\n <span><b>{{ toTraducible(cost.name) | translate }}</b></span>\n <hr />\n <div class=\"option\" *ngFor=\"let contract of cost.contracts; let i = index\">\n <div class=\"form-check\">\n <input class=\"form-check-input\" [checked]=\"contract.selected\" type=\"radio\" name=\"card\" [id]=\"cost.name + i\"\n value=\"dark\" (click)=\"verifyValidate(cost.name, contract)\">\n <label class=\"form-check-label\" [for]=\"cost.name + i\" aria-label=\"Dark grey\">\n <span\n [class]=\"(cost.name == 'home_delivery') ? 'shipment-contractname home_delivery' : 'shipment-contractname' \"\n *ngIf=\"validName(contract.name)\">{{ contract.name | translate }}</span>\n <span *ngIf=\"contract.computed\"><br class=\"shipment-contractname\">{{ contract.computed | translate }}<br\n class=\"shipment-contractname\"></span>\n <div *ngIf=\"contract.detail\">\n <div *ngFor=\"let line of contract.detail.split(' - '); let i = index\">\n <span *ngIf=\"i == 0\"><b>{{ line }}</b></span>\n <span class=\"inside-detail\" *ngIf=\"i > 0\">{{ line }}</span>\n </div>\n </div>\n <span *ngIf=\"contract.price > 0\" [class]=\"'inside-detail ' + ( costos?.amount == 0 ? ' free ' : '') \">\n <br class=\"shipment-contractname\" *ngIf=\"!contract.computed\">\n {{ ('price'|translate) + ': ' + (contract.price | ecCurrencySymbol) }}</span>\n <span *ngIf=\"contract.price == 0\" [class]=\"'inside-detail ' + ( costos?.amount == 0 ? ' free ' : '') \">\n <br class=\"shipment-contractname\" *ngIf=\"!contract.computed\"> {{ ('free'|translate) }}</span>\n <br>\n </label>\n </div>\n </div>\n </ng-container>\n </div>\n </ng-container>\n </div>\n </div>\n\n </div>\n </div>\n\n</div>\n\n<ng-template #noMethods>\n <div class=\"d-flex flex-row w-100 justify-content-center mt-2\">\n <h5 class=\"text-secondary\">{{'no-shipment-methods'|translate}}</h5>\n </div>\n</ng-template>\n\n<ng-template #loading>\n <app-loading-full-ec></app-loading-full-ec>\n</ng-template>",
7114
7126
  providers: [ShipmentService],
7115
7127
  styles: [".shipment-container{width:100%;max-height:500px!important}.points-container{margin-top:10px;max-height:300px;overflow:scroll}agm-map{height:300px}.ancho-100{width:200px}.ancho-50{width:100px}.group-shipping{margin:10px 0}.option-container>div{margin-bottom:15px}@media only screen and (min-width:600px){.option-container{display:flex;justify-content:space-between;margin-top:20px}}hr{margin-top:0!important}.option{display:flex;align-items:flex-start;margin-bottom:20px}.option label{margin:0 0 0 10px}.inside-detail{color:gray!important;font-weight:400}.inside-detail.free{text-decoration:line-through}.active{color:#fff!important}"]
7116
7128
  })
@@ -8767,6 +8779,14 @@ var RelatedProductsEcComponent = /** @class */ (function (_super) {
8767
8779
  _this.router = router;
8768
8780
  _this.relatedProducts = [];
8769
8781
  _this.name = null;
8782
+ _this.keywordsToCompare = ['compare', 'comparar', 'comparacion', 'comparación', 'compared'];
8783
+ _this.includeKeyword = function (word) {
8784
+ var result = false;
8785
+ _this.keywordsToCompare.forEach(function (keyword) {
8786
+ word.includes(keyword) ? result = true : null;
8787
+ });
8788
+ return result;
8789
+ };
8770
8790
  _this.customOptions = {
8771
8791
  loop: true,
8772
8792
  dots: false,
@@ -8799,7 +8819,7 @@ var RelatedProductsEcComponent = /** @class */ (function (_super) {
8799
8819
  RelatedProductsEcComponent.prototype.load = function (product_id) {
8800
8820
  var _this = this;
8801
8821
  this.productsService.getRelatedProducts(product_id).pipe(take(1)).subscribe(function (res) {
8802
- _this.relatedProducts = res;
8822
+ _this.relatedProducts = res.filter(function (elem) { return !_this.includeKeyword(elem.title.toLowerCase()); });
8803
8823
  res.map(function (products) { var _a, _b; return _this.analyticsService.callEvent('view_item_list', { products: products.items, item_list_name: products.title || 'Related Products', item_list_id: ((_b = (_a = products.title) === null || _a === void 0 ? void 0 : _a.toLowerCase()) === null || _b === void 0 ? void 0 : _b.replace(' ', '-')) || 'related-products' }); });
8804
8824
  });
8805
8825
  };
@@ -10394,7 +10414,7 @@ var OrdersEcComponent = /** @class */ (function (_super) {
10394
10414
  OrdersEcComponent = __decorate$1g([
10395
10415
  Component({
10396
10416
  selector: 'app-orders-ec',
10397
- template: "<div class=\"container-fluid\" id=\"ordersEcComponent\">\n <section id=\"orders\" class=\"w-100\" *ngIf=\"!loading; else loadingView\">\n <div *ngIf=\"orders && orders.length; else noOrders\">\n <div class=\"row item border-bottom\" *ngFor=\"let order of orders\">\n <div class=\"col-lg-2 col-12\">\n <p class=\"st\">{{ 'order' | translate }}:</p>\n <h5 class=\"fw-bold\">\n {{ order.number }}\n </h5>\n <ng-container *ngIf=\"order.items[0].product.variants[0]?.images?.length ; else defaultpicture\">\n <img class=\"smc maxwidth\" [src]=\"mediaUrl + order.items[0].product.variants[0].images[0]\" alt=\"\">\n </ng-container>\n <ng-template #defaultpicture>\n <img *ngIf=\"order.items[0].product.picturesdefault\" class=\"smc maxwidth\"\n [src]=\"mediaUrl + order.items[0].product.picturesdefault[0]\" alt=\"\">\n </ng-template>\n </div>\n <div class=\"col-lg-2 col-12\">\n <p class=\"st\">{{ 'payment-state' | translate }}:</p>\n <p class=\"price\">\n {{ order.payments[0].state | translate | titlecase }}\n </p>\n </div>\n <div class=\"col-lg-2 col-12\">\n <p class=\"st\">{{ 'shipment-method' | translate }}:</p>\n <p class=\"price\">\n {{ order.shipments[0].method.name }}\n </p>\n </div>\n <div class=\"col-lg-2 col-12\">\n <p class=\"st\">{{ 'shipment-state' | translate }}:</p>\n <p class=\"price\">\n {{ order.shipments[0].state | translate | titlecase }}\n </p>\n </div>\n <div class=\"col-lg-2 col-12\">\n <p class=\"st\">{{ 'date' | translate }}:</p>\n <p class=\"price\">\n {{ toDate(order.checkoutCompletedAt, 'DD/MM/YYYY') | translate }}<br>\n {{ toDate(order.checkoutCompletedAt, 'h:mm:ss a') | translate }}\n </p>\n </div>\n <div class=\"col-lg-2 col-12\">\n <p class=\"st\">{{ 'total' | translate }}:</p>\n <h5 class=\"fw-bold text-nowrap\">\n {{ (order.totals.total) | ecCurrencySymbol }}\n </h5>\n <button class=\"btn px-0 w-100 btdetalle\" (click)=\"goToOrder(order)\">{{\n 'see-order' | translate }}</button>\n </div>\n </div>\n </div>\n </section>\n</div>\n\n<ng-template #noOrders>\n <div class=\"w-100 h-50\">\n <div class=\"d-flex flex-row justify-content-center align-items-center text-center\">\n <h5>{{ 'no-orders' | translate }}</h5>\n </div>\n </div>\n</ng-template>\n\n<ng-template #errorView>\n <div class=\"w-100 h-50\">\n <div class=\"d-flex flex-row justify-content-center align-items-center text-center\">\n <h4>{{ 'orders-error' | translate }}</h4>\n </div>\n </div>\n</ng-template>\n\n<ng-template #loadingView>\n <div class=\"w-100 h-50 py-5\">\n <div class=\"d-flex flex-row justify-content-center align-items-center text-center\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n </div>\n</ng-template>",
10417
+ template: "<div class=\"container-fluid\" id=\"ordersEcComponent\">\n <section id=\"orders\" class=\"w-100\" *ngIf=\"!loading; else loadingView\">\n <div *ngIf=\"orders && orders.length; else noOrders\">\n <div class=\"row item border-bottom\" *ngFor=\"let order of orders\">\n <div class=\"col-lg-2 col-12\">\n <p class=\"st dropdown-toggle\">{{ 'order' | translate }}:</p>\n <h5 class=\"fw-bold\">\n {{ order.number }}\n </h5>\n <ng-container *ngIf=\"order.items[0].product.variants[0]?.images?.length ; else defaultpicture\">\n <img class=\"smc maxwidth\" [src]=\"mediaUrl + order.items[0].product.variants[0].images[0]\" alt=\"\">\n </ng-container>\n <ng-template #defaultpicture>\n <img *ngIf=\"order.items[0].product.picturesdefault\" class=\"smc maxwidth\"\n [src]=\"mediaUrl + order.items[0].product.picturesdefault[0]\" alt=\"\">\n </ng-template>\n </div>\n <div class=\"col-lg-2 col-12\">\n <p class=\"st dropdown-toggle\">{{ 'payment-state' | translate }}:</p>\n <p class=\"price\">\n {{ order.payments[0].state | translate | titlecase }}\n </p>\n </div>\n <div class=\"col-lg-2 col-12\">\n <p class=\"st dropdown-toggle\">{{ 'shipment-method' | translate }}:</p>\n <p class=\"price\">\n {{ order.shipments[0].method.name }}\n </p>\n </div>\n <div class=\"col-lg-2 col-12\">\n <p class=\"st dropdown-toggle\">{{ 'shipment-state' | translate }}:</p>\n <p class=\"price\">\n {{ order.shipments[0].state | translate | titlecase }}\n </p>\n <!-- ACA DEBERIA IR EL LINK DE SEGUIMIENTO -->\n <!-- <button class=\"btn btn-outline-dark btnLogout px-3 py-1 font-size-10 w-auto btn-sm\">Ver seguimiento</button> -->\n </div>\n <div class=\"col-lg-2 col-12\">\n <p class=\"st dropdown-toggle\">{{ 'date' | translate }}:</p>\n <p class=\"price\">\n {{ toDate(order.checkoutCompletedAt, 'DD/MM/YYYY') | translate }}<br>\n {{ toDate(order.checkoutCompletedAt, 'h:mm:ss a') | translate }}\n </p>\n </div>\n <div class=\"col-lg-2 col-12\">\n <p class=\"st dropdown-toggle\">{{ 'total' | translate }}:</p>\n <h5 class=\"fw-bold text-nowrap\">\n {{ (order.totals.total) | ecCurrencySymbol }}\n </h5>\n <button class=\"btn px-0 w-100 btdetalle\" (click)=\"goToOrder(order)\">{{\n 'see-order' | translate }}</button>\n </div>\n </div>\n </div>\n </section>\n</div>\n\n<ng-template #noOrders>\n <div class=\"w-100 h-50\">\n <div class=\"d-flex flex-row justify-content-center align-items-center text-center\">\n <h5>{{ 'no-orders' | translate }}</h5>\n </div>\n </div>\n</ng-template>\n\n<ng-template #errorView>\n <div class=\"w-100 h-50\">\n <div class=\"d-flex flex-row justify-content-center align-items-center text-center\">\n <h4>{{ 'orders-error' | translate }}</h4>\n </div>\n </div>\n</ng-template>\n\n<ng-template #loadingView>\n <div class=\"w-100 h-50 py-5\">\n <div class=\"d-flex flex-row justify-content-center align-items-center text-center\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n </div>\n</ng-template>",
10398
10418
  styles: ["#ordersEcComponent .btn.btdetalle{background-color:#000;color:#fff;border-color:#000;border-width:1px;border-radius:10px;padding:10px 0}#ordersEcComponent .btn.btdetalle:hover{background-color:#fff;color:#000;border-color:#000}"]
10399
10419
  })
10400
10420
  ], OrdersEcComponent);
@@ -10524,7 +10544,7 @@ var OrderEcComponent = /** @class */ (function (_super) {
10524
10544
  OrderEcComponent = __decorate$1h([
10525
10545
  Component({
10526
10546
  selector: 'app-order-ec',
10527
- template: "<main class=\"py-5\" id=\"orderEcComponent\">\n <div class=\"container\">\n <div class=\"wrap\" *ngIf=\"!loading; else loadingView\">\n <div *ngIf=\"order; else noOrder\">\n \n <div class=\"row justify-content-between\">\n <div class=\"col-sm-auto col-12 font-brandon\">\n <h4 class=\"tit1 fw-bold\">{{ ('order' | translate) + ': ' + order.number }}</h4>\n </div>\n <ng-container *ngIf=\"order?.invoice\">\n <div class=\"col-sm col-12 font-brandon\">\n <a target=\"_blank\" [href]=\"consts.getUrlBase().slice(0, -1) + order.invoice\"\n class=\"btn btn-link btn-invoice\">\n <i class=\"fas fa-file-download me-1\"></i>\n {{ 'download' | translate }} {{ 'invoices' | translate | titlecase }}\n </a>\n </div>\n </ng-container>\n <a (click)=\"volver()\" class=\"col-auto text-end\">\n <button class=\"btn btvolver bg-gray text-white\">{{ 'back-to-orders' | translate }}</button>\n </a>\n </div>\n \n <section id=\"orders\">\n <div class=\"row\">\n <div class=\"col-md-2 col-12\">\n <p class=\"st\">{{ 'payment-state' | translate }}:</p>\n <p class=\"\">\n {{ order.payments[0].state | translate }}\n </p>\n </div>\n <div class=\"col-md-2 col-12 font-brandon\">\n <p class=\"st\">{{ 'shipment-state' | translate }}:</p>\n <p class=\"\">\n {{ order.shipments[0].state | translate }}\n </p>\n </div>\n <div class=\"col-md-2 col-12 font-brandon\">\n <p class=\"st\">{{ 'payment-method' | translate }}:</p>\n <p class=\"\">\n {{ order.payments[0]?.method?.name | translate }}\n </p>\n </div>\n <div class=\"col-md-2 col-12 font-brandon\">\n <p class=\"st\">{{ 'shipment-method' | translate }}:</p>\n <p class=\"\">\n {{ order.shipments[0].method.name }}\n </p>\n </div>\n <div class=\"col-md-2 col-12 font-brandon\">\n <p class=\"st\">{{ 'date' | translate }}:</p>\n <p class=\"\">\n {{ toDate(order.checkoutCompletedAt, 'DD/MM/YYYY') | translate }}<br>\n {{ toDate(order.checkoutCompletedAt, 'h:mm:ss a') | translate }} \n </p>\n </div>\n <div class=\"col-md-2 col-12 font-brandon\">\n <p class=\"st\">{{ 'total' | translate }}:</p>\n <h5 class=\"fw-bold\">\n {{ (order.totals.total) | ecCurrencySymbol}}\n\n </h5>\n </div>\n </div>\n </section>\n \n <div class=\"container py-3 border-top border-bottom\">\n <div *ngIf=\"order.items.length; else noProducts\" class=\"row\">\n <div class=\"col-2 font-sm font-brandon d-none d-md-block\">\n {{ 'product' | translate | uppercase }}\n </div>\n <div class=\"col-4 font-sm font-brandon d-none d-md-block\">\n {{ 'description' | translate | uppercase }}\n </div>\n <div class=\"col-2 text-center font-sm font-brandon d-none d-md-block\">\n {{ 'unit-price' | translate | uppercase }}\n </div>\n <div class=\"col-2 text-center font-sm font-brandon d-none d-md-block\">\n {{ 'quantity' | translate | uppercase }}\n </div>\n <div class=\"col-2 text-end font-sm font-brandon d-none d-md-block\">\n {{ 'total' | translate | uppercase }}\n </div>\n </div>\n <ng-container *ngFor=\"let item of order.items\">\n <div class=\"row cart-items\">\n <div class=\"col-5 col-md-2 py-2\">\n <ng-container *ngIf=\"order.items[0].product.variants[0]?.images?.length ; else defaultpicture\">\n <img class=\"smc maxwidth img-fluid rounded-custom \" [src]=\"consts.mediaUrl() + order.items[0].product.variants[0].images[0]\" alt=\"\">\n </ng-container>\n <ng-template #defaultpicture>\n <img *ngIf=\"order.items[0].product.picturesdefault\" class=\"smc maxwidth img-fluid rounded-custom\"\n [src]=\"consts.mediaUrl() + order.items[0].product.picturesdefault[0]\" alt=\"\">\n </ng-template>\n </div>\n <div\n class=\"col-md-4 col-7 flex-column flex-md-row justify-content-start d-flex align-items-center\">\n <p class=\"font-brandon d-flex w-100 mb-0\">\n {{ item.product.name }} (Cod:{{ item.product.variants[0].code }})\n </p>\n <div class=\"container d-md-none\">\n <div class=\"row\">\n <div class=\"col-4\">\n <p class=\"text-center w-100 m-0\"> {{ item.quantity }}</p>\n </div>\n <div class=\"col-4 font-xl\">\n <p class=\"text-center w-100 m-0\"> {{ (item.product.variants[0].saleprice ? item.product.variants[0].saleprice : item.product.variants[0].price) | ecCurrencySymbol}}</p>\n </div>\n <div class=\"col-4 font-xl\">\n <p class=\"text-center w-100 m-0\"> {{ ((item.product.variants[0].saleprice ? item.product.variants[0].saleprice : item.product.variants[0].price) * item.quantity) | ecCurrencySymbol}}</p>\n </div>\n </div>\n </div>\n </div>\n <div class=\"col-2 d-none d-md-flex align-items-center\">\n <p class=\"text-center w-100 m-0\">\n {{ (item.product.variants[0].saleprice ? item.product.variants[0].saleprice : item.product.variants[0].price) | ecCurrencySymbol}}\n </p>\n </div>\n <div class=\"col-2 d-none d-md-flex align-items-center\">\n <p class=\"text-center w-100 m-0\"> {{ item.quantity }}</p>\n </div>\n <div class=\"col-2 d-none d-md-flex align-items-center\">\n <p class=\"text-end w-100 m-0\">\n {{ ((item.product.variants[0].saleprice ? item.product.variants[0].saleprice : item.product.variants[0].price) * item.quantity) | ecCurrencySymbol}}</p>\n </div>\n </div>\n </ng-container>\n </div>\n \n <div class=\"container\">\n <div class=\"row\">\n <div class=\"col-12 col-md-6\"></div>\n <div class=\"col-12 col-md-6\">\n <div class=\"row py-4\">\n <div class=\"col-6 font-brandon font-md text-gray border-bottom \">{{ 'total-products' | translate }}</div>\n <div class=\"col-6 font-brandon font-md text-gray border-bottom text-end\">\n {{ (order.totals.items) | ecCurrencySymbol }}\n </div>\n \n <div class=\"col-6 font-brandon font-md text-gray border-bottom \">{{ 'shipment' | translate }}</div>\n <div class=\"col-6 font-brandon font-md text-gray border-bottom text-end\">\n {{ (order.totals.shipping || '0') | ecCurrencySymbol }}\n </div>\n \n <div *ngIf=\"order.totals.promotion && order.totals.promotion != 0\"\n class=\"col-6 font-brandon font-md text-gray border-bottom \">{{ 'discount' | translate }}</div>\n <div *ngIf=\"order.totals.promotion && order.totals.promotion != 0\"\n class=\"col-6 font-brandon font-md text-gray border-bottom text-end text-end\">\n {{ (order.totals.promotion) | ecCurrencySymbol }}</div>\n \n <div *ngIf=\"order.totals.taxes && order.totals.taxes != 0 \" class=\"col-6 font-brandon font-md text-gray border-bottom \">\n {{ 'taxes' | translate }}</div>\n <div *ngIf=\"order.totals.taxes && order.totals.taxes != 0\" class=\"col-6 font-brandon font-md text-gray border-bottom text-end\">\n {{ (order.totals.taxes) | ecCurrencySymbol }}</div>\n \n <div class=\"col-6 font-brandon font-md\">{{ 'total' | translate | uppercase }}</div>\n <div class=\"col-6 font-brandon font-md text-end\">\n {{ (order.totals.total) | ecCurrencySymbol }}\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n</main>\n\n<ng-template #noOrder>\n <div class=\"w-100 h-50\">\n <div class=\"d-flex flex-row justify-content-center align-items-center text-center\">\n <h5>{{ 'no-orders' | translate }}</h5>\n </div>\n </div>\n</ng-template>\n\n<ng-template #loadingView>\n <div class=\"w-100 h-50 py-5\">\n <div class=\"d-flex flex-row justify-content-center align-items-center text-center\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n </div>\n</ng-template>",
10547
+ template: "<main class=\"py-5\" id=\"orderEcComponent\">\n <div class=\"container\">\n <div class=\"wrap\" *ngIf=\"!loading; else loadingView\">\n <div *ngIf=\"order; else noOrder\">\n \n <div class=\"row justify-content-between\">\n <div class=\"col-sm-auto col-12 font-brandon\">\n <h4 class=\"tit1 fw-bold\">{{ ('order' | translate) + ': ' + order.number }}</h4>\n </div>\n <ng-container *ngIf=\"order?.invoice\">\n <div class=\"col-sm col-12 font-brandon\">\n <a target=\"_blank\" [href]=\"consts.getUrlBase().slice(0, -1) + order.invoice\"\n class=\"btn btn-link btn-invoice\">\n <i class=\"fas fa-file-download me-1\"></i>\n {{ 'download' | translate }} {{ 'invoices' | translate | titlecase }}\n </a>\n </div>\n </ng-container>\n <a (click)=\"volver()\" class=\"col-auto text-end\">\n <button class=\"btn btvolver bg-gray text-white\">{{ 'back-to-orders' | translate }}</button>\n </a>\n </div>\n \n <section id=\"orders\">\n <div class=\"row\">\n <div class=\"col-md-2 col-12\">\n <p class=\"st\">{{ 'payment-state' | translate }}:</p>\n <p class=\"\">\n {{ order.payments[0].state | translate }}\n </p>\n </div>\n <div class=\"col-md-2 col-12 font-brandon\">\n <p class=\"st\">{{ 'shipment-state' | translate }}:</p>\n <p class=\"\">\n {{ order.shipments[0].state | translate }}\n </p>\n </div>\n <div class=\"col-md-2 col-12 font-brandon\">\n <p class=\"st\">{{ 'payment-method' | translate }}:</p>\n <p class=\"\">\n {{ order.payments[0]?.method?.name | translate }}\n </p>\n </div>\n <div class=\"col-md-2 col-12 font-brandon\">\n <p class=\"st\">{{ 'shipment-method' | translate }}:</p>\n <p class=\"\">\n {{ order.shipments[0].method.name }}\n </p>\n <!-- ACA DEBERIA IR EL LINK DE SEGUIMIENTO -->\n <!-- <button class=\"btn btn-outline-dark btnLogout px-3 py-1 font-size-10 w-auto btn-sm\">Ver seguimiento</button> -->\n </div>\n <div class=\"col-md-2 col-12 font-brandon\">\n <p class=\"st\">{{ 'date' | translate }}:</p>\n <p class=\"\">\n {{ toDate(order.checkoutCompletedAt, 'DD/MM/YYYY') | translate }}<br>\n {{ toDate(order.checkoutCompletedAt, 'h:mm:ss a') | translate }} \n </p>\n </div>\n <div class=\"col-md-2 col-12 font-brandon\">\n <p class=\"st\">{{ 'total' | translate }}:</p>\n <h5 class=\"fw-bold\">\n {{ (order.totals.total) | ecCurrencySymbol}}\n\n </h5>\n </div>\n </div>\n </section>\n \n <div class=\"container py-3 border-top border-bottom\">\n <div *ngIf=\"order.items.length; else noProducts\" class=\"row\">\n <div class=\"col-2 font-sm font-brandon d-none d-md-block\">\n {{ 'product' | translate | uppercase }}\n </div>\n <div class=\"col-4 font-sm font-brandon d-none d-md-block\">\n {{ 'description' | translate | uppercase }}\n </div>\n <div class=\"col-2 text-center font-sm font-brandon d-none d-md-block\">\n {{ 'unit-price' | translate | uppercase }}\n </div>\n <div class=\"col-2 text-center font-sm font-brandon d-none d-md-block\">\n {{ 'quantity' | translate | uppercase }}\n </div>\n <div class=\"col-2 text-end font-sm font-brandon d-none d-md-block\">\n {{ 'total' | translate | uppercase }}\n </div>\n </div>\n <ng-container *ngFor=\"let item of order.items\">\n <div class=\"row cart-items\">\n <div class=\"col-5 col-md-2 py-2\">\n <ng-container *ngIf=\"order.items[0].product.variants[0]?.images?.length ; else defaultpicture\">\n <img class=\"smc maxwidth img-fluid rounded-custom \" [src]=\"consts.mediaUrl() + item.product.variants[0].images[0]\" alt=\"\">\n </ng-container>\n <ng-template #defaultpicture>\n <img *ngIf=\"order.items[0].product.picturesdefault\" class=\"smc maxwidth img-fluid rounded-custom\"\n [src]=\"consts.mediaUrl() + order.items[0].product.picturesdefault[0]\" alt=\"\">\n </ng-template>\n </div>\n <div\n class=\"col-md-4 col-7 flex-column flex-md-row justify-content-start d-flex align-items-center\">\n <p class=\"font-brandon d-flex w-100 mb-0\">\n {{ item.product.name }} (Cod:{{ item.product.variants[0].code }})\n </p>\n <div class=\"container d-md-none\">\n <div class=\"row\">\n <div class=\"col-4\">\n <p class=\"text-center w-100 m-0\"> {{ item.quantity }}</p>\n </div>\n <div class=\"col-4 font-xl\">\n <p class=\"text-center w-100 m-0\"> {{ (item.product.variants[0].saleprice ? item.product.variants[0].saleprice : item.product.variants[0].price) | ecCurrencySymbol}}</p>\n </div>\n <div class=\"col-4 font-xl\">\n <p class=\"text-center w-100 m-0\"> {{ ((item.product.variants[0].saleprice ? item.product.variants[0].saleprice : item.product.variants[0].price) * item.quantity) | ecCurrencySymbol}}</p>\n </div>\n </div>\n </div>\n </div>\n <div class=\"col-2 d-none d-md-flex align-items-center\">\n <p class=\"text-center w-100 m-0\">\n {{ (item.product.variants[0].saleprice ? item.product.variants[0].saleprice : item.product.variants[0].price) | ecCurrencySymbol}}\n </p>\n </div>\n <div class=\"col-2 d-none d-md-flex align-items-center\">\n <p class=\"text-center w-100 m-0\"> {{ item.quantity }}</p>\n </div>\n <div class=\"col-2 d-none d-md-flex align-items-center\">\n <p class=\"text-end w-100 m-0\">\n {{ ((item.product.variants[0].saleprice ? item.product.variants[0].saleprice : item.product.variants[0].price) * item.quantity) | ecCurrencySymbol}}</p>\n </div>\n </div>\n </ng-container>\n </div>\n \n <div class=\"container\">\n <div class=\"row\">\n <div class=\"col-12 col-md-6\"></div>\n <div class=\"col-12 col-md-6\">\n <div class=\"row py-4\">\n <div class=\"col-6 font-brandon font-md text-gray border-bottom \">{{ 'total-products' | translate }}</div>\n <div class=\"col-6 font-brandon font-md text-gray border-bottom text-end\">\n {{ (order.totals.items) | ecCurrencySymbol }}\n </div>\n \n <div class=\"col-6 font-brandon font-md text-gray border-bottom \">{{ 'shipment' | translate }}</div>\n <div class=\"col-6 font-brandon font-md text-gray border-bottom text-end\">\n {{ (order.totals.shipping || '0') | ecCurrencySymbol }}\n </div>\n \n <div *ngIf=\"order.totals.promotion && order.totals.promotion != 0\"\n class=\"col-6 font-brandon font-md text-gray border-bottom \">{{ 'discount' | translate }}</div>\n <div *ngIf=\"order.totals.promotion && order.totals.promotion != 0\"\n class=\"col-6 font-brandon font-md text-gray border-bottom text-end text-end\">\n {{ (order.totals.promotion) | ecCurrencySymbol }}</div>\n \n <div *ngIf=\"order.totals.taxes && order.totals.taxes != 0 \" class=\"col-6 font-brandon font-md text-gray border-bottom \">\n {{ 'taxes' | translate }}</div>\n <div *ngIf=\"order.totals.taxes && order.totals.taxes != 0\" class=\"col-6 font-brandon font-md text-gray border-bottom text-end\">\n {{ (order.totals.taxes) | ecCurrencySymbol }}</div>\n \n <div class=\"col-6 font-brandon font-md\">{{ 'total' | translate | uppercase }}</div>\n <div class=\"col-6 font-brandon font-md text-end\">\n {{ (order.totals.total) | ecCurrencySymbol }}\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n</main>\n\n<ng-template #noOrder>\n <div class=\"w-100 h-50\">\n <div class=\"d-flex flex-row justify-content-center align-items-center text-center\">\n <h5>{{ 'no-orders' | translate }}</h5>\n </div>\n </div>\n</ng-template>\n\n<ng-template #loadingView>\n <div class=\"w-100 h-50 py-5\">\n <div class=\"d-flex flex-row justify-content-center align-items-center text-center\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n </div>\n</ng-template>",
10528
10548
  styles: [".maxwidth{max-width:100px}"]
10529
10549
  })
10530
10550
  ], OrderEcComponent);
@@ -13404,6 +13424,208 @@ var DecidirEcComponent = /** @class */ (function (_super) {
13404
13424
  return DecidirEcComponent;
13405
13425
  }(ComponentHelper));
13406
13426
 
13427
+ var __extends$14 = (this && this.__extends) || (function () {
13428
+ var extendStatics = function (d, b) {
13429
+ extendStatics = Object.setPrototypeOf ||
13430
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
13431
+ function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
13432
+ return extendStatics(d, b);
13433
+ };
13434
+ return function (d, b) {
13435
+ extendStatics(d, b);
13436
+ function __() { this.constructor = d; }
13437
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
13438
+ };
13439
+ })();
13440
+ var __decorate$1F = (this && this.__decorate) || function (decorators, target, key, desc) {
13441
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
13442
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
13443
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
13444
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
13445
+ };
13446
+ var ComparedProductsEcComponent = /** @class */ (function (_super) {
13447
+ __extends$14(ComparedProductsEcComponent, _super);
13448
+ function ComparedProductsEcComponent(productsService, analyticsService, consts, router) {
13449
+ var _this = _super.call(this) || this;
13450
+ _this.productsService = productsService;
13451
+ _this.analyticsService = analyticsService;
13452
+ _this.consts = consts;
13453
+ _this.router = router;
13454
+ /**
13455
+ * @description valor que se utilizara para cuando un producto no tenga datos
13456
+ * en el atributo asignado.
13457
+ */
13458
+ _this.emptyValue = '';
13459
+ /**
13460
+ * @description valor que se utilizara para la clase de los estilos de la etiqueta <table>
13461
+ */
13462
+ _this.classes = '';
13463
+ _this.size = '';
13464
+ /**
13465
+ * @description emite true si se genero algun error en la carga, false caso contrario
13466
+ */
13467
+ _this.error = new EventEmitter();
13468
+ _this.comparedProducts = [];
13469
+ _this.attributes = {};
13470
+ _this.matrixComparedProducts = {};
13471
+ _this.loading = false;
13472
+ /**
13473
+ * @description arreglo con las palabras claves para obtener la asociacion para comparar los productos.
13474
+ */
13475
+ _this.keywordsToCompare = ['compare', 'comparar', 'comparacion', 'comparación', 'compared'];
13476
+ /**
13477
+ * @description carga los datos que seran comparados
13478
+ * @param product_id
13479
+ */
13480
+ _this.load = function (product_id) {
13481
+ _this.productsService.getRelatedProducts(product_id).subscribe(function (res) {
13482
+ var _a;
13483
+ _this.comparedProducts = (_a = res.find(function (elem) { return _this.includeKeyword(elem.title.toLowerCase()); })) === null || _a === void 0 ? void 0 : _a.items;
13484
+ if (_this.comparedProducts && _this.comparedProducts.length > 0) {
13485
+ _this.mergeAttributes(_this.comparedProducts);
13486
+ _this.matrixComparedProducts = _this.buildMatrix();
13487
+ _this.error.emit(false);
13488
+ }
13489
+ else {
13490
+ _this.error.emit(true);
13491
+ }
13492
+ _this.loading = false;
13493
+ res.map(function (products) { var _a, _b; return _this.analyticsService.callEvent('view_item_list', { products: products.items, item_list_name: products.title || 'compared Products', item_list_id: ((_b = (_a = products.title) === null || _a === void 0 ? void 0 : _a.toLowerCase()) === null || _b === void 0 ? void 0 : _b.replace(' ', '-')) || 'compared-products' }); });
13494
+ }, function (err) {
13495
+ console.log(err);
13496
+ _this.loading = false;
13497
+ _this.error.emit(true);
13498
+ });
13499
+ };
13500
+ /**
13501
+ * @description hace un merge de todos los atributos que tengan los productos.
13502
+ * @param products
13503
+ */
13504
+ _this.mergeAttributes = function (products) {
13505
+ products.forEach(function (product) {
13506
+ product.attributes.forEach(function (attribute) {
13507
+ if (!_this.attributes[attribute.code]) {
13508
+ _this.attributes[attribute.code] = { name: attribute.name };
13509
+ }
13510
+ });
13511
+ });
13512
+ };
13513
+ /**
13514
+ * @description genera una matriz de los datos de cada producto para compararlos
13515
+ * @returns un objeto cuya clave es el nombre del atributo y sus valores un
13516
+ * arreglo con los datos de los productos para ese atributo, en caso de no tener
13517
+ * datos en ese atributo se reemplaza por el valor de la variable emptyValue.
13518
+ */
13519
+ _this.buildMatrix = function () {
13520
+ var res = {};
13521
+ var _loop_1 = function (attribute) {
13522
+ res[attribute] = [];
13523
+ _this.comparedProducts.forEach(function (product, index) {
13524
+ var item = product.attributes.find(function (elem) { return elem.code == attribute; });
13525
+ item ? res[attribute].push({ pos: index, values: item.children })
13526
+ : res[attribute].push({ pos: index, values: [{ name: _this.emptyValue }] });
13527
+ });
13528
+ };
13529
+ for (var attribute in _this.attributes) {
13530
+ _loop_1(attribute);
13531
+ }
13532
+ return res;
13533
+ };
13534
+ /**
13535
+ * @description chequea si la palabra pasada por parametro existe en el arreglo de
13536
+ * palabras claves para comparar (keywordsToCompare)
13537
+ * @param word
13538
+ * @returns un valor booleano, true si existe, false caso contrario
13539
+ */
13540
+ _this.includeKeyword = function (word) {
13541
+ var result = false;
13542
+ _this.keywordsToCompare.forEach(function (keyword) {
13543
+ word.includes(keyword) ? result = true : null;
13544
+ });
13545
+ return result;
13546
+ };
13547
+ _this.customOptions = {
13548
+ loop: true,
13549
+ dots: false,
13550
+ navSpeed: 950,
13551
+ margin: 0,
13552
+ navText: ['', ''],
13553
+ nav: true,
13554
+ responsive: {
13555
+ 0: {
13556
+ items: 1,
13557
+ nav: true
13558
+ },
13559
+ 600: {
13560
+ items: 3,
13561
+ nav: true
13562
+ },
13563
+ 900: {
13564
+ items: 4,
13565
+ nav: true,
13566
+ }
13567
+ }
13568
+ };
13569
+ _this.ecOnConstruct();
13570
+ return _this;
13571
+ }
13572
+ Object.defineProperty(ComparedProductsEcComponent.prototype, "setSize", {
13573
+ /**
13574
+ * @description tamaño de la tabla responsive (sm | md| lg | xl | xxl)
13575
+ */
13576
+ set: function (value) {
13577
+ this.size = '-' + value;
13578
+ },
13579
+ enumerable: true,
13580
+ configurable: true
13581
+ });
13582
+ ComparedProductsEcComponent.prototype.ngOnInit = function () {
13583
+ this.loading = true;
13584
+ this.load(this.product_id);
13585
+ this.ecOnInit();
13586
+ };
13587
+ ComparedProductsEcComponent.prototype.ngOnChanges = function (changes) {
13588
+ window.scroll({
13589
+ top: 0,
13590
+ left: 0,
13591
+ behavior: 'smooth'
13592
+ });
13593
+ this.load(changes.product_id.currentValue);
13594
+ //this.doSomething(changes.categoryId.currentValue);
13595
+ // You can also use categoryId.previousValue and
13596
+ // categoryId.firstChange for comparing old and new values
13597
+ };
13598
+ ComparedProductsEcComponent.ctorParameters = function () { return [
13599
+ { type: ProductsService },
13600
+ { type: AnalyticsService },
13601
+ { type: Constants },
13602
+ { type: Router }
13603
+ ]; };
13604
+ __decorate$1F([
13605
+ Input()
13606
+ ], ComparedProductsEcComponent.prototype, "product_id", void 0);
13607
+ __decorate$1F([
13608
+ Input()
13609
+ ], ComparedProductsEcComponent.prototype, "emptyValue", void 0);
13610
+ __decorate$1F([
13611
+ Input()
13612
+ ], ComparedProductsEcComponent.prototype, "classes", void 0);
13613
+ __decorate$1F([
13614
+ Input()
13615
+ ], ComparedProductsEcComponent.prototype, "setSize", null);
13616
+ __decorate$1F([
13617
+ Output()
13618
+ ], ComparedProductsEcComponent.prototype, "error", void 0);
13619
+ ComparedProductsEcComponent = __decorate$1F([
13620
+ Component({
13621
+ selector: 'app-compared-products-ec',
13622
+ template: "<ng-container *ngIf=\"!loading; else loadingView\">\n <ng-container *ngIf=\"comparedProducts && comparedProducts.length\">\n <div [class]=\"'table-responsive'+size\">\n <table id=\"table\" [class]=\"'table '+classes\">\n <thead id=\"thead\">\n <tr class=\"thead-tr\">\n <th class=\"thead-tr-th\" scope=\"col\"></th>\n <th class=\"thead-tr-th\" *ngFor=\"let product of comparedProducts\" scope=\"col\">{{product.id}}</th>\n </tr>\n </thead>\n <tbody id=\"tbody\">\n <tr *ngFor=\"let row of matrixComparedProducts | keyvalue\" class=\"tbody-tr\">\n <th class=\"tbody-tr-th\" scope=\"row\">{{attributes[row.key].name}}</th>\n <td class=\"tbody-tr-td\" *ngFor=\"let col of row.value\">\n <ul>\n <li *ngFor=\"let item of col.values\">\n {{ item.name }}\n </li>\n </ul>\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n </ng-container>\n</ng-container>\n<ng-template #loadingView>\n <div class=\"w-100 h-50 py-5\">\n <div class=\"d-flex flex-row justify-content-center align-items-center text-center\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n </div>\n</ng-template>",
13623
+ styles: [""]
13624
+ })
13625
+ ], ComparedProductsEcComponent);
13626
+ return ComparedProductsEcComponent;
13627
+ }(ComponentHelper));
13628
+
13407
13629
  // //Component base
13408
13630
  var components = [
13409
13631
  BlockBannerBoxesEcComponent,
@@ -13429,6 +13651,7 @@ var components = [
13429
13651
  LoginEcComponent,
13430
13652
  ProductEcComponent,
13431
13653
  RelatedProductsEcComponent,
13654
+ ComparedProductsEcComponent,
13432
13655
  SectionContainerEcComponent,
13433
13656
  StoresEcComponent,
13434
13657
  VariantsEcComponent,
@@ -13470,7 +13693,7 @@ var components = [
13470
13693
  RecaptchaEcComponent
13471
13694
  ];
13472
13695
 
13473
- var __decorate$1F = (this && this.__decorate) || function (decorators, target, key, desc) {
13696
+ var __decorate$1G = (this && this.__decorate) || function (decorators, target, key, desc) {
13474
13697
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
13475
13698
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
13476
13699
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -13550,16 +13773,16 @@ var AddActionRedirectDirective = /** @class */ (function () {
13550
13773
  { type: BlocksService },
13551
13774
  { type: Router }
13552
13775
  ]; };
13553
- __decorate$1F([
13776
+ __decorate$1G([
13554
13777
  Input()
13555
13778
  ], AddActionRedirectDirective.prototype, "ecAddActionRedirect", null);
13556
- __decorate$1F([
13779
+ __decorate$1G([
13557
13780
  Input()
13558
13781
  ], AddActionRedirectDirective.prototype, "classStrSpacing", null);
13559
- __decorate$1F([
13782
+ __decorate$1G([
13560
13783
  Input()
13561
13784
  ], AddActionRedirectDirective.prototype, "isTransparent", null);
13562
- AddActionRedirectDirective = __decorate$1F([
13785
+ AddActionRedirectDirective = __decorate$1G([
13563
13786
  Directive({
13564
13787
  selector: "[ecAddActionRedirect]",
13565
13788
  }),
@@ -13568,7 +13791,7 @@ var AddActionRedirectDirective = /** @class */ (function () {
13568
13791
  return AddActionRedirectDirective;
13569
13792
  }());
13570
13793
 
13571
- var __decorate$1G = (this && this.__decorate) || function (decorators, target, key, desc) {
13794
+ var __decorate$1H = (this && this.__decorate) || function (decorators, target, key, desc) {
13572
13795
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
13573
13796
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
13574
13797
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -13631,13 +13854,13 @@ var ProductStockDirective = /** @class */ (function () {
13631
13854
  { type: TemplateRef },
13632
13855
  { type: ViewContainerRef }
13633
13856
  ]; };
13634
- __decorate$1G([
13857
+ __decorate$1H([
13635
13858
  Input()
13636
13859
  ], ProductStockDirective.prototype, "ecProductStockElse", void 0);
13637
- __decorate$1G([
13860
+ __decorate$1H([
13638
13861
  Input()
13639
13862
  ], ProductStockDirective.prototype, "ecProductStock", null);
13640
- ProductStockDirective = __decorate$1G([
13863
+ ProductStockDirective = __decorate$1H([
13641
13864
  Directive({
13642
13865
  selector: "[ecProductStock]"
13643
13866
  })
@@ -13645,7 +13868,7 @@ var ProductStockDirective = /** @class */ (function () {
13645
13868
  return ProductStockDirective;
13646
13869
  }());
13647
13870
 
13648
- var __decorate$1H = (this && this.__decorate) || function (decorators, target, key, desc) {
13871
+ var __decorate$1I = (this && this.__decorate) || function (decorators, target, key, desc) {
13649
13872
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
13650
13873
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
13651
13874
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -13786,16 +14009,16 @@ var ProductOffDirective = /** @class */ (function () {
13786
14009
  { type: ElementRef },
13787
14010
  { type: Renderer2 }
13788
14011
  ]; };
13789
- __decorate$1H([
14012
+ __decorate$1I([
13790
14013
  Input()
13791
14014
  ], ProductOffDirective.prototype, "ecProductOff", null);
13792
- __decorate$1H([
14015
+ __decorate$1I([
13793
14016
  Input()
13794
14017
  ], ProductOffDirective.prototype, "classStrSpacing", null);
13795
- __decorate$1H([
14018
+ __decorate$1I([
13796
14019
  Input()
13797
14020
  ], ProductOffDirective.prototype, "customMessage", null);
13798
- ProductOffDirective = __decorate$1H([
14021
+ ProductOffDirective = __decorate$1I([
13799
14022
  Directive({
13800
14023
  selector: "[ecProductOff]",
13801
14024
  }),
@@ -13804,7 +14027,7 @@ var ProductOffDirective = /** @class */ (function () {
13804
14027
  return ProductOffDirective;
13805
14028
  }());
13806
14029
 
13807
- var __decorate$1I = (this && this.__decorate) || function (decorators, target, key, desc) {
14030
+ var __decorate$1J = (this && this.__decorate) || function (decorators, target, key, desc) {
13808
14031
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
13809
14032
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
13810
14033
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -13862,10 +14085,10 @@ var ProductMiniStandardDirective = /** @class */ (function () {
13862
14085
  { type: Renderer2 },
13863
14086
  { type: Constants }
13864
14087
  ]; };
13865
- __decorate$1I([
14088
+ __decorate$1J([
13866
14089
  Input()
13867
14090
  ], ProductMiniStandardDirective.prototype, "ecProductMiniStandard", null);
13868
- ProductMiniStandardDirective = __decorate$1I([
14091
+ ProductMiniStandardDirective = __decorate$1J([
13869
14092
  Directive({
13870
14093
  selector: '[ecProductMiniStandard]'
13871
14094
  })
@@ -13873,7 +14096,7 @@ var ProductMiniStandardDirective = /** @class */ (function () {
13873
14096
  return ProductMiniStandardDirective;
13874
14097
  }());
13875
14098
 
13876
- var __decorate$1J = (this && this.__decorate) || function (decorators, target, key, desc) {
14099
+ var __decorate$1K = (this && this.__decorate) || function (decorators, target, key, desc) {
13877
14100
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
13878
14101
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
13879
14102
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -13916,13 +14139,13 @@ var AuthWholesalerDirective = /** @class */ (function () {
13916
14139
  { type: ViewContainerRef },
13917
14140
  { type: AuthService }
13918
14141
  ]; };
13919
- __decorate$1J([
14142
+ __decorate$1K([
13920
14143
  Input()
13921
14144
  ], AuthWholesalerDirective.prototype, "ecAuthWholesalerElse", void 0);
13922
- __decorate$1J([
14145
+ __decorate$1K([
13923
14146
  Input()
13924
14147
  ], AuthWholesalerDirective.prototype, "ecAuthWholesaler", null);
13925
- AuthWholesalerDirective = __decorate$1J([
14148
+ AuthWholesalerDirective = __decorate$1K([
13926
14149
  Directive({
13927
14150
  selector: "[ecAuthWholesaler]"
13928
14151
  })
@@ -13944,7 +14167,7 @@ var directives = [
13944
14167
  AuthWholesalerDirective,
13945
14168
  ];
13946
14169
 
13947
- var __decorate$1K = (this && this.__decorate) || function (decorators, target, key, desc) {
14170
+ var __decorate$1L = (this && this.__decorate) || function (decorators, target, key, desc) {
13948
14171
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
13949
14172
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
13950
14173
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -13987,7 +14210,7 @@ var ecCurrencySymbolPipe = /** @class */ (function () {
13987
14210
  { type: CurrencyPipe },
13988
14211
  { type: Constants }
13989
14212
  ]; };
13990
- ecCurrencySymbolPipe = __decorate$1K([
14213
+ ecCurrencySymbolPipe = __decorate$1L([
13991
14214
  Pipe({
13992
14215
  name: 'ecCurrencySymbol',
13993
14216
  })
@@ -13995,7 +14218,7 @@ var ecCurrencySymbolPipe = /** @class */ (function () {
13995
14218
  return ecCurrencySymbolPipe;
13996
14219
  }());
13997
14220
 
13998
- var __decorate$1L = (this && this.__decorate) || function (decorators, target, key, desc) {
14221
+ var __decorate$1M = (this && this.__decorate) || function (decorators, target, key, desc) {
13999
14222
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
14000
14223
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
14001
14224
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -14011,7 +14234,7 @@ var EcSanitizerHtmlPipe = /** @class */ (function () {
14011
14234
  EcSanitizerHtmlPipe.ctorParameters = function () { return [
14012
14235
  { type: DomSanitizer }
14013
14236
  ]; };
14014
- EcSanitizerHtmlPipe = __decorate$1L([
14237
+ EcSanitizerHtmlPipe = __decorate$1M([
14015
14238
  Pipe({
14016
14239
  name: 'ecSanitizerHtml'
14017
14240
  })
@@ -14019,7 +14242,7 @@ var EcSanitizerHtmlPipe = /** @class */ (function () {
14019
14242
  return EcSanitizerHtmlPipe;
14020
14243
  }());
14021
14244
 
14022
- var __decorate$1M = (this && this.__decorate) || function (decorators, target, key, desc) {
14245
+ var __decorate$1N = (this && this.__decorate) || function (decorators, target, key, desc) {
14023
14246
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
14024
14247
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
14025
14248
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -14035,7 +14258,7 @@ var EcSanitizerUrlPipe = /** @class */ (function () {
14035
14258
  EcSanitizerUrlPipe.ctorParameters = function () { return [
14036
14259
  { type: DomSanitizer }
14037
14260
  ]; };
14038
- EcSanitizerUrlPipe = __decorate$1M([
14261
+ EcSanitizerUrlPipe = __decorate$1N([
14039
14262
  Pipe({
14040
14263
  name: 'ecSanitizerUrl'
14041
14264
  })
@@ -14050,7 +14273,7 @@ var pipes = [
14050
14273
  EcSanitizerUrlPipe
14051
14274
  ];
14052
14275
 
14053
- var __decorate$1N = (this && this.__decorate) || function (decorators, target, key, desc) {
14276
+ var __decorate$1O = (this && this.__decorate) || function (decorators, target, key, desc) {
14054
14277
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
14055
14278
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
14056
14279
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -14135,7 +14358,7 @@ var NgEasycommerceModule = /** @class */ (function () {
14135
14358
  };
14136
14359
  };
14137
14360
  var NgEasycommerceModule_1;
14138
- NgEasycommerceModule = NgEasycommerceModule_1 = __decorate$1N([
14361
+ NgEasycommerceModule = NgEasycommerceModule_1 = __decorate$1O([
14139
14362
  NgModule({
14140
14363
  exports: [
14141
14364
  OrderByPipe,
@@ -14171,7 +14394,7 @@ var NgEasycommerceModule = /** @class */ (function () {
14171
14394
  return NgEasycommerceModule;
14172
14395
  }());
14173
14396
 
14174
- var __decorate$1O = (this && this.__decorate) || function (decorators, target, key, desc) {
14397
+ var __decorate$1P = (this && this.__decorate) || function (decorators, target, key, desc) {
14175
14398
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
14176
14399
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
14177
14400
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -14219,7 +14442,7 @@ var GiftCardService = /** @class */ (function () {
14219
14442
  { type: ConnectionService }
14220
14443
  ]; };
14221
14444
  GiftCardService$1.ɵprov = ɵɵdefineInjectable({ factory: function GiftCardService_Factory() { return new GiftCardService(ɵɵinject(Constants), ɵɵinject(CartService), ɵɵinject(ConnectionService)); }, token: GiftCardService, providedIn: "root" });
14222
- GiftCardService$1 = __decorate$1O([
14445
+ GiftCardService$1 = __decorate$1P([
14223
14446
  Injectable({
14224
14447
  providedIn: 'root'
14225
14448
  })
@@ -14227,7 +14450,7 @@ var GiftCardService = /** @class */ (function () {
14227
14450
  return GiftCardService$1;
14228
14451
  }());
14229
14452
 
14230
- var __decorate$1P = (this && this.__decorate) || function (decorators, target, key, desc) {
14453
+ var __decorate$1Q = (this && this.__decorate) || function (decorators, target, key, desc) {
14231
14454
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
14232
14455
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
14233
14456
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -14283,7 +14506,7 @@ var WishlistService = /** @class */ (function () {
14283
14506
  { type: ToastrService }
14284
14507
  ]; };
14285
14508
  WishlistService$1.ɵprov = ɵɵdefineInjectable({ factory: function WishlistService_Factory() { return new WishlistService(ɵɵinject(ToastrService)); }, token: WishlistService, providedIn: "root" });
14286
- WishlistService$1 = __decorate$1P([
14509
+ WishlistService$1 = __decorate$1Q([
14287
14510
  Injectable({
14288
14511
  providedIn: 'root'
14289
14512
  })
@@ -14291,7 +14514,7 @@ var WishlistService = /** @class */ (function () {
14291
14514
  return WishlistService$1;
14292
14515
  }());
14293
14516
 
14294
- var __decorate$1Q = (this && this.__decorate) || function (decorators, target, key, desc) {
14517
+ var __decorate$1R = (this && this.__decorate) || function (decorators, target, key, desc) {
14295
14518
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
14296
14519
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
14297
14520
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -14326,7 +14549,7 @@ var StandardReuseStrategy = /** @class */ (function () {
14326
14549
  StandardReuseStrategy.ctorParameters = function () { return [
14327
14550
  { type: undefined, decorators: [{ type: Inject, args: ['env',] }] }
14328
14551
  ]; };
14329
- StandardReuseStrategy = __decorate$1Q([
14552
+ StandardReuseStrategy = __decorate$1R([
14330
14553
  Injectable(),
14331
14554
  __param$d(0, Inject('env'))
14332
14555
  ], StandardReuseStrategy);
@@ -14341,5 +14564,5 @@ var StandardReuseStrategy = /** @class */ (function () {
14341
14564
  * Generated bundle index. Do not edit.
14342
14565
  */
14343
14566
 
14344
- export { AbleBuyerGuardService, AccountEcComponent, AddActionRedirectDirective, AddressingService, AnalyticsService, AttributesFilter, AuthEcComponent, AuthGuardService, AuthInterceptor, AuthService, AuthWholesalerDirective, BancardEcComponent, BancardRedirectEcComponent, BannerService, BlockBannerBoxesEcComponent, BlockBannerFullEcComponent, BlockFormContactEcComponent, BlockHtmlEcComponent, BlockProductsEcComponent, BlocksEcComponent, BlocksService, BrowserWindowRef, CaptchaService, CartEcComponent, CartLoadEcComponent, CartService, CategoryFilter, CecaRedirectEcComponent, ChannelConfigService, CheckoutEcComponent, CheckoutErrorComponent, CheckoutReadyGuard, CheckoutService, CollectionEcComponent, ConfirmAccountEcComponent, ConnectionService, Constants, ContactFormNewsEcComponent, CouponEcComponent, DataFormEcComponent, DataformService, DecidirEcComponent, DetailCheckoutBlockEcComponent, DynamicsFilter, EcSanitizerHtmlPipe, EcSanitizerUrlPipe, FaqsContentEcComponent, Filter, FilterOptionTypes, FiltersEcComponent, FiltersTopEcComponent, FooterEcComponent, ForgotPasswordEcComponent, GiftCardService, HeaderEcComponent, HomeEcComponent, LoadingFullEcComponent, LoadingInlineEcComponent, LoggedInGuard, LoginEcComponent, LoginFormEcComponent, MPCreditEcComponent, MobbexEcComponent, MpRedirectEcComponent, MultipleItemsToCartEcComponent, NgEasycommerceModule, OptionsService, OrderEcComponent, OrdersEcComponent, OrdersService, PaginationService, ParametersService, ParamsContext, PasswordResetEcComponent, PaymentEcComponent, PaymentService, PaypalExpressEcComponent, PriceEcComponent, ProductDetailEcComponent, ProductDetailService, ProductEcComponent, ProductMiniStandardDirective, ProductStockDirective, ProductsService, RedSysProEcComponent, RedSysRedirectEcComponent, RedSysRedirectOutEcComponent, RedsysCatchEcComponent, RegisterFormEcComponent, RegisterWholesalerFormEcComponent, RelatedProductsEcComponent, SectionContainerEcComponent, SelectChannelEcComponent, ShareBlockEcComponent, ShipmentEcComponent, ShipmentService, SortFilter, StandardReuseStrategy, Step, StoresEcComponent, StoresService, SuccessEcComponent, ToastService, User, UserRoleGuardService, UtilsService, VariantsEcComponent, WINDOW, WINDOW_PROVIDERS, WindowRef, WishlistService, browserWindowProvider, ecCurrencySymbolPipe, windowFactory, windowProvider, OrderByPipe as ɵa, components as ɵb, SellerDashboardContainerEcComponent as ɵc, MagnizoomComponent as ɵd, RecaptchaEcComponent as ɵe, ComponentHelper as ɵf, BlocksRepositoryService as ɵg, FacebookPixelService as ɵh, GoogleAnalyticsService as ɵi, GTMService as ɵj, MetricoolPixelService as ɵk, DopplerService as ɵl, OrderUtilityService as ɵm, StepService as ɵn, ErrorHandlerService as ɵo, ShipmentDataTransformer as ɵp, directives as ɵq, ProductOffDirective as ɵr, pipes as ɵs, OptionsOfProductListDataReceiverService as ɵt, PaymentUtils as ɵu, CustomerInterceptor as ɵv };
14567
+ export { AbleBuyerGuardService, AccountEcComponent, AddActionRedirectDirective, AddressingService, AnalyticsService, AttributesFilter, AuthEcComponent, AuthGuardService, AuthInterceptor, AuthService, AuthWholesalerDirective, BancardEcComponent, BancardRedirectEcComponent, BannerService, BlockBannerBoxesEcComponent, BlockBannerFullEcComponent, BlockFormContactEcComponent, BlockHtmlEcComponent, BlockProductsEcComponent, BlocksEcComponent, BlocksService, BrowserWindowRef, CaptchaService, CartEcComponent, CartLoadEcComponent, CartService, CategoryFilter, CecaRedirectEcComponent, ChannelConfigService, CheckoutEcComponent, CheckoutErrorComponent, CheckoutReadyGuard, CheckoutService, CollectionEcComponent, ConfirmAccountEcComponent, ConnectionService, Constants, ContactFormNewsEcComponent, CouponEcComponent, DataFormEcComponent, DataformService, DecidirEcComponent, DetailCheckoutBlockEcComponent, DynamicsFilter, EcSanitizerHtmlPipe, EcSanitizerUrlPipe, FaqsContentEcComponent, Filter, FilterOptionTypes, FiltersEcComponent, FiltersTopEcComponent, FooterEcComponent, ForgotPasswordEcComponent, GiftCardService, HeaderEcComponent, HomeEcComponent, LoadingFullEcComponent, LoadingInlineEcComponent, LoggedInGuard, LoginEcComponent, LoginFormEcComponent, MPCreditEcComponent, MobbexEcComponent, MpRedirectEcComponent, MultipleItemsToCartEcComponent, NgEasycommerceModule, OptionsService, OrderEcComponent, OrdersEcComponent, OrdersService, PaginationService, ParametersService, ParamsContext, PasswordResetEcComponent, PaymentEcComponent, PaymentService, PaypalExpressEcComponent, PriceEcComponent, ProductDetailEcComponent, ProductDetailService, ProductEcComponent, ProductMiniStandardDirective, ProductStockDirective, ProductsService, RedSysProEcComponent, RedSysRedirectEcComponent, RedSysRedirectOutEcComponent, RedsysCatchEcComponent, RegisterFormEcComponent, RegisterWholesalerFormEcComponent, RelatedProductsEcComponent, SectionContainerEcComponent, SelectChannelEcComponent, ShareBlockEcComponent, ShipmentEcComponent, ShipmentService, SortFilter, StandardReuseStrategy, Step, StoresEcComponent, StoresService, SuccessEcComponent, ToastService, User, UserRoleGuardService, UtilsService, VariantsEcComponent, WINDOW, WINDOW_PROVIDERS, WindowRef, WishlistService, browserWindowProvider, ecCurrencySymbolPipe, windowFactory, windowProvider, OrderByPipe as ɵa, components as ɵb, SellerDashboardContainerEcComponent as ɵc, MagnizoomComponent as ɵd, RecaptchaEcComponent as ɵe, ComparedProductsEcComponent as ɵf, ComponentHelper as ɵg, BlocksRepositoryService as ɵh, FacebookPixelService as ɵi, GoogleAnalyticsService as ɵj, GTMService as ɵk, MetricoolPixelService as ɵl, DopplerService as ɵm, OrderUtilityService as ɵn, StepService as ɵo, ErrorHandlerService as ɵp, ShipmentDataTransformer as ɵq, directives as ɵr, ProductOffDirective as ɵs, pipes as ɵt, OptionsOfProductListDataReceiverService as ɵu, PaymentUtils as ɵv, CustomerInterceptor as ɵw };
14345
14568
  //# sourceMappingURL=ng-easycommerce.js.map