ng-easycommerce 0.0.688 → 0.0.689

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 (55) hide show
  1. package/README.md +13 -0
  2. package/assets/docs/SEO.md +174 -0
  3. package/bundles/ng-easycommerce.umd.js +859 -558
  4. package/bundles/ng-easycommerce.umd.js.map +1 -1
  5. package/bundles/ng-easycommerce.umd.min.js +1 -1
  6. package/bundles/ng-easycommerce.umd.min.js.map +1 -1
  7. package/esm2015/lib/ec-component/auth-ec/auth-ec.component.js +31 -3
  8. package/esm2015/lib/ec-component/auth-ec/confirm-account-ec/confirm-account-ec.component.js +14 -3
  9. package/esm2015/lib/ec-component/auth-ec/forgot-password-ec/forgot-password-ec.component.js +14 -3
  10. package/esm2015/lib/ec-component/cart-ec/cart-ec.component.js +17 -3
  11. package/esm2015/lib/ec-component/checkout-ec/checkout-ec.component.js +17 -3
  12. package/esm2015/lib/ec-component/checkout-ec/dataform-ec/dataform-ec.component.js +3 -3
  13. package/esm2015/lib/ec-component/collection-ec/collection-ec.component.js +36 -3
  14. package/esm2015/lib/ec-component/home-ec/home-ec.component.js +14 -3
  15. package/esm2015/lib/ec-component/password-reset-ec/password-reset-ec.component.js +14 -3
  16. package/esm2015/lib/ec-component/product-detail-ec/product-detail-ec.component.js +17 -12
  17. package/esm2015/lib/ec-component/section-container-ec/section-container-ec.component.js +45 -4
  18. package/esm2015/lib/ec-directive/add-action-redirect.directive.js +35 -13
  19. package/esm2015/lib/ec-directive/product-off.directive.js +2 -2
  20. package/esm2015/lib/services/seo.service.js +112 -0
  21. package/esm2015/public-api.js +2 -1
  22. package/esm5/lib/ec-component/auth-ec/auth-ec.component.js +31 -3
  23. package/esm5/lib/ec-component/auth-ec/confirm-account-ec/confirm-account-ec.component.js +14 -3
  24. package/esm5/lib/ec-component/auth-ec/forgot-password-ec/forgot-password-ec.component.js +14 -3
  25. package/esm5/lib/ec-component/cart-ec/cart-ec.component.js +17 -3
  26. package/esm5/lib/ec-component/checkout-ec/checkout-ec.component.js +17 -3
  27. package/esm5/lib/ec-component/checkout-ec/dataform-ec/dataform-ec.component.js +3 -3
  28. package/esm5/lib/ec-component/collection-ec/collection-ec.component.js +36 -3
  29. package/esm5/lib/ec-component/home-ec/home-ec.component.js +14 -3
  30. package/esm5/lib/ec-component/password-reset-ec/password-reset-ec.component.js +14 -3
  31. package/esm5/lib/ec-component/product-detail-ec/product-detail-ec.component.js +17 -12
  32. package/esm5/lib/ec-component/section-container-ec/section-container-ec.component.js +45 -4
  33. package/esm5/lib/ec-directive/add-action-redirect.directive.js +35 -13
  34. package/esm5/lib/ec-directive/product-off.directive.js +2 -2
  35. package/esm5/lib/services/seo.service.js +116 -0
  36. package/esm5/public-api.js +2 -1
  37. package/fesm2015/ng-easycommerce.js +855 -559
  38. package/fesm2015/ng-easycommerce.js.map +1 -1
  39. package/fesm5/ng-easycommerce.js +860 -560
  40. package/fesm5/ng-easycommerce.js.map +1 -1
  41. package/lib/ec-component/auth-ec/auth-ec.component.d.ts +4 -1
  42. package/lib/ec-component/auth-ec/confirm-account-ec/confirm-account-ec.component.d.ts +3 -1
  43. package/lib/ec-component/auth-ec/forgot-password-ec/forgot-password-ec.component.d.ts +3 -1
  44. package/lib/ec-component/cart-ec/cart-ec.component.d.ts +4 -1
  45. package/lib/ec-component/checkout-ec/checkout-ec.component.d.ts +4 -1
  46. package/lib/ec-component/collection-ec/collection-ec.component.d.ts +5 -1
  47. package/lib/ec-component/home-ec/home-ec.component.d.ts +3 -1
  48. package/lib/ec-component/password-reset-ec/password-reset-ec.component.d.ts +3 -1
  49. package/lib/ec-component/product-detail-ec/product-detail-ec.component.d.ts +3 -3
  50. package/lib/ec-component/section-container-ec/section-container-ec.component.d.ts +7 -1
  51. package/lib/ec-directive/add-action-redirect.directive.d.ts +1 -0
  52. package/lib/services/seo.service.d.ts +16 -0
  53. package/ng-easycommerce.metadata.json +1 -1
  54. package/package.json +1 -1
  55. package/public-api.d.ts +1 -0
@@ -12,7 +12,7 @@ import 'rxjs/add/operator/catch';
12
12
  import 'rxjs/add/observable/of';
13
13
  import * as moment from 'moment';
14
14
  import { Validators, FormBuilder, FormsModule, ReactiveFormsModule } from '@angular/forms';
15
- import { DomSanitizer, Meta, Title } from '@angular/platform-browser';
15
+ import { DomSanitizer, Title, Meta } from '@angular/platform-browser';
16
16
  import { BsModalService, ModalModule } from 'ngx-bootstrap/modal';
17
17
  import Stepper from 'bs-stepper';
18
18
  import _ from 'lodash';
@@ -7034,6 +7034,110 @@ var __decorate$P = (this && this.__decorate) || function (decorators, target, ke
7034
7034
  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;
7035
7035
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7036
7036
  };
7037
+ var __param$7 = (this && this.__param) || function (paramIndex, decorator) {
7038
+ return function (target, key) { decorator(target, key, paramIndex); }
7039
+ };
7040
+ let SeoService = class SeoService {
7041
+ constructor(document, platformId, titleService, metaService) {
7042
+ this.document = document;
7043
+ this.platformId = platformId;
7044
+ this.titleService = titleService;
7045
+ this.metaService = metaService;
7046
+ this.setTitle = (title) => {
7047
+ var _a;
7048
+ const value = (_a = title) === null || _a === void 0 ? void 0 : _a.trim();
7049
+ if (!value) {
7050
+ return;
7051
+ }
7052
+ this.titleService.setTitle(value);
7053
+ this.metaService.updateTag({ property: 'og:title', content: value });
7054
+ };
7055
+ this.setDescription = (description) => {
7056
+ var _a;
7057
+ const value = (_a = description) === null || _a === void 0 ? void 0 : _a.trim();
7058
+ if (!value) {
7059
+ return;
7060
+ }
7061
+ this.metaService.updateTag({ name: 'description', content: value });
7062
+ this.metaService.updateTag({ property: 'og:description', content: value });
7063
+ };
7064
+ this.setOgImage = (imageUrl) => {
7065
+ var _a;
7066
+ const value = (_a = imageUrl) === null || _a === void 0 ? void 0 : _a.trim();
7067
+ if (!value) {
7068
+ return;
7069
+ }
7070
+ this.metaService.updateTag({ property: 'og:image', content: value });
7071
+ };
7072
+ this.setOgType = (type) => {
7073
+ this.metaService.updateTag({ property: 'og:type', content: type });
7074
+ };
7075
+ this.setCanonical = (url) => {
7076
+ var _a;
7077
+ const value = (_a = url) === null || _a === void 0 ? void 0 : _a.trim();
7078
+ if (!value || !isPlatformBrowser(this.platformId)) {
7079
+ return;
7080
+ }
7081
+ let link = this.document.head.querySelector("link[rel='canonical']");
7082
+ if (!link) {
7083
+ link = this.document.createElement('link');
7084
+ link.setAttribute('rel', 'canonical');
7085
+ this.document.head.appendChild(link);
7086
+ }
7087
+ link.setAttribute('href', value);
7088
+ };
7089
+ this.setRobots = (content) => {
7090
+ var _a;
7091
+ const value = (_a = content) === null || _a === void 0 ? void 0 : _a.trim();
7092
+ if (!value) {
7093
+ return;
7094
+ }
7095
+ this.metaService.updateTag({ name: 'robots', content: value });
7096
+ };
7097
+ this.setNoIndex = (enabled = true) => {
7098
+ this.setRobots(enabled ? 'noindex, nofollow' : 'index, follow');
7099
+ };
7100
+ this.getSiteName = (fallback = 'EasyCommerce') => {
7101
+ var _a, _b, _c;
7102
+ const ogSiteName = (_b = (_a = this.metaService.getTag("property='og:site_name'")) === null || _a === void 0 ? void 0 : _a.content) === null || _b === void 0 ? void 0 : _b.trim();
7103
+ if (ogSiteName) {
7104
+ return ogSiteName;
7105
+ }
7106
+ const currentTitle = (_c = this.titleService.getTitle()) === null || _c === void 0 ? void 0 : _c.trim();
7107
+ if (currentTitle) {
7108
+ const parts = currentTitle.split('|').map((part) => part.trim()).filter(Boolean);
7109
+ if (parts.length > 1) {
7110
+ return parts[parts.length - 1];
7111
+ }
7112
+ if (!/^home$/i.test(currentTitle)) {
7113
+ return currentTitle;
7114
+ }
7115
+ }
7116
+ return fallback;
7117
+ };
7118
+ }
7119
+ };
7120
+ SeoService.ctorParameters = () => [
7121
+ { type: undefined, decorators: [{ type: Inject, args: [DOCUMENT,] }] },
7122
+ { type: Object, decorators: [{ type: Inject, args: [PLATFORM_ID,] }] },
7123
+ { type: Title },
7124
+ { type: Meta }
7125
+ ];
7126
+ SeoService.ɵprov = ɵɵdefineInjectable({ factory: function SeoService_Factory() { return new SeoService(ɵɵinject(DOCUMENT), ɵɵinject(PLATFORM_ID), ɵɵinject(Title), ɵɵinject(Meta)); }, token: SeoService, providedIn: "root" });
7127
+ SeoService = __decorate$P([
7128
+ Injectable({
7129
+ providedIn: 'root'
7130
+ }),
7131
+ __param$7(0, Inject(DOCUMENT)),
7132
+ __param$7(1, Inject(PLATFORM_ID))
7133
+ ], SeoService);
7134
+
7135
+ var __decorate$Q = (this && this.__decorate) || function (decorators, target, key, desc) {
7136
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
7137
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
7138
+ 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;
7139
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7140
+ };
7037
7141
  var __awaiter$9 = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
7038
7142
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
7039
7143
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -7044,7 +7148,7 @@ var __awaiter$9 = (this && this.__awaiter) || function (thisArg, _arguments, P,
7044
7148
  });
7045
7149
  };
7046
7150
  let CartEcComponent = class CartEcComponent extends ComponentHelper {
7047
- constructor(cartService, authService, consts, productsService, router, modalService, toastrService, addressingService, channelConfigService) {
7151
+ constructor(cartService, authService, consts, productsService, router, modalService, toastrService, addressingService, channelConfigService, seo) {
7048
7152
  super();
7049
7153
  this.cartService = cartService;
7050
7154
  this.authService = authService;
@@ -7055,6 +7159,7 @@ let CartEcComponent = class CartEcComponent extends ComponentHelper {
7055
7159
  this.toastrService = toastrService;
7056
7160
  this.addressingService = addressingService;
7057
7161
  this.channelConfigService = channelConfigService;
7162
+ this.seo = seo;
7058
7163
  this.variantsToShow = ['TALLE', 'COLOR'];
7059
7164
  this.isLoggedIn = false;
7060
7165
  this.mediaUrl = '';
@@ -7074,6 +7179,16 @@ let CartEcComponent = class CartEcComponent extends ComponentHelper {
7074
7179
  this.activeUnitPromotionItemId = null;
7075
7180
  this.activeUnitPromotionSummaryStyles = {};
7076
7181
  this.supportsUnitPromotionHover = false;
7182
+ this.updateCartSeo = () => {
7183
+ const siteName = this.seo.getSiteName();
7184
+ this.seo.setTitle(`Carrito | ${siteName}`);
7185
+ this.seo.setDescription(`Revisá los productos seleccionados y finalizá tu compra en ${siteName}.`);
7186
+ this.seo.setOgType('website');
7187
+ this.seo.setNoIndex(true);
7188
+ if (typeof window !== 'undefined') {
7189
+ this.seo.setCanonical(window.location.href);
7190
+ }
7191
+ };
7077
7192
  /**
7078
7193
  * Convierte un monto crudo al formato decimal esperado por la UI.
7079
7194
  *
@@ -7387,6 +7502,7 @@ let CartEcComponent = class CartEcComponent extends ComponentHelper {
7387
7502
  this.cartService.loading.subscribe(isLoading => {
7388
7503
  this.cartLoading = isLoading;
7389
7504
  });
7505
+ this.updateCartSeo();
7390
7506
  this.ecOnInit();
7391
7507
  }
7392
7508
  /** Cierra el resumen al hacer click fuera en desktop. */
@@ -7697,18 +7813,19 @@ CartEcComponent.ctorParameters = () => [
7697
7813
  { type: BsModalService },
7698
7814
  { type: ToastService },
7699
7815
  { type: AddressingService },
7700
- { type: ChannelConfigService }
7816
+ { type: ChannelConfigService },
7817
+ { type: SeoService }
7701
7818
  ];
7702
- __decorate$P([
7819
+ __decorate$Q([
7703
7820
  HostListener('document:click')
7704
7821
  ], CartEcComponent.prototype, "handleDocumentClick", null);
7705
- __decorate$P([
7822
+ __decorate$Q([
7706
7823
  HostListener('window:resize')
7707
7824
  ], CartEcComponent.prototype, "handleWindowResize", null);
7708
- __decorate$P([
7825
+ __decorate$Q([
7709
7826
  HostListener('window:scroll')
7710
7827
  ], CartEcComponent.prototype, "handleWindowScroll", null);
7711
- CartEcComponent = __decorate$P([
7828
+ CartEcComponent = __decorate$Q([
7712
7829
  Component({
7713
7830
  selector: 'app-cart-ec',
7714
7831
  template: "",
@@ -7716,7 +7833,7 @@ CartEcComponent = __decorate$P([
7716
7833
  })
7717
7834
  ], CartEcComponent);
7718
7835
 
7719
- var __decorate$Q = (this && this.__decorate) || function (decorators, target, key, desc) {
7836
+ var __decorate$R = (this && this.__decorate) || function (decorators, target, key, desc) {
7720
7837
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
7721
7838
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
7722
7839
  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;
@@ -8946,34 +9063,34 @@ DataFormEcComponent.ctorParameters = () => [
8946
9063
  { type: Constants },
8947
9064
  { type: ChannelConfigService }
8948
9065
  ];
8949
- __decorate$Q([
9066
+ __decorate$R([
8950
9067
  Input()
8951
9068
  ], DataFormEcComponent.prototype, "step_id", void 0);
8952
- __decorate$Q([
9069
+ __decorate$R([
8953
9070
  Input()
8954
9071
  ], DataFormEcComponent.prototype, "isLastOne", void 0);
8955
- __decorate$Q([
9072
+ __decorate$R([
8956
9073
  Input()
8957
9074
  ], DataFormEcComponent.prototype, "nextStep", void 0);
8958
- __decorate$Q([
9075
+ __decorate$R([
8959
9076
  Input()
8960
9077
  ], DataFormEcComponent.prototype, "compactAddressView", void 0);
8961
- __decorate$Q([
9078
+ __decorate$R([
8962
9079
  Output()
8963
9080
  ], DataFormEcComponent.prototype, "dirtyChange", void 0);
8964
- __decorate$Q([
9081
+ __decorate$R([
8965
9082
  HostListener('document:click')
8966
9083
  ], DataFormEcComponent.prototype, "closeDocumentDropdowns", null);
8967
- DataFormEcComponent = __decorate$Q([
9084
+ DataFormEcComponent = __decorate$R([
8968
9085
  Component({
8969
9086
  selector: 'app-dataform-ec',
8970
- template: "<ng-container\n *ngIf=\"this.channelConfig.channelType != 'b2b' || (this.channelConfig.channelType == 'b2b' && authService.isAuthenticated()); else pleaseLogin\">\n <ng-container\n *ngIf=\"this.addressingService.modeSelectAddress == 'LOAD_ADDRESS_AND_SELECTION' && this.authService.isAuthenticated() && this.addressBook != null && !compactAddressView\">\n <div class=\"container card p-4 mb-3\">\n <div class=\"row justify-content-center\">\n <div class=\"col-12 col-md-10 col-lg-8 text-center\">\n <div class=\"btn-group btn-group-toggle\" data-bs-toggle=\"buttons\">\n <label [class]=\"'btn btn-outline-secondary ' + (!getMode() ? 'active' : '')\">\n <input type=\"radio\" name=\"options\" id=\"option1\" autocomplete=\"off\" checked\n (change)=\"setMode('seleccion')\"> {{'select-address' | translate | titlecase}}\n </label>\n\n <label [class]=\"'btn btn-outline-secondary ' + (getMode() ? 'active' : '')\"\n *ngIf=\"!getParamByChannelAndLanguage('btn_new_address_') && !customerHasCustomerTaxRate\">\n <input type=\"radio\" name=\"options\" id=\"option2\" autocomplete=\"off\"\n (change)=\"setMode('carga')\">\n {{ 'new-address' | translate | titlecase}}\n </label>\n\n <label [class]=\"'btn btn-outline-secondary ' + (selectAddress ? 'active' : '')\"\n *ngIf=\"getParamByChannelAndLanguage('btn_new_address_') as param\">\n <input type=\"radio\" name=\"options\" id=\"option2\" autocomplete=\"off\"\n (change)=\"setMode('carga')\">\n {{ param.value}}\n </label>\n\n </div>\n </div>\n </div>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"compactAddressView || getMode(); else addressSelection\">\n <div *ngIf=\"!require_login; else requireLoginView\">\n <div class=\"single-step-surface\">\n <div class=\"single-step-overlay\" *ngIf=\"compactAddressView && loading\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n\n <ng-container *ngIf=\"this.addressingService.modeSelectAddress == 'ONLY_LOAD_ADDRESS'\">\n <div class=\"checkout-title my-2\">\n <h3>{{'billing-details'|translate}}</h3>\n </div>\n </ng-container>\n\n <app-dataform-ec-single\n *ngIf=\"compactAddressView\"\n [showToggle]=\"this.addressingService.modeSelectAddress == 'LOAD_ADDRESS_AND_SELECTION' && this.authService.isAuthenticated() && this.addressBook != null\"\n [isNewAddressMode]=\"getMode()\"\n [showDefaultNewAddressButton]=\"!getParamByChannelAndLanguage('btn_new_address_') && !customerHasCustomerTaxRate\"\n [customNewAddressLabel]=\"getParamByChannelAndLanguage('btn_new_address_')?.value\"\n [isTemporarySelected]=\"selectedAddress?.isTemporary\"\n [selectedAddressLabel]=\"getSelectedAddressLabel()\"\n [addressDropdownOpen]=\"addressDropdownOpen\"\n [addressSearch]=\"addressSearch\"\n [addressOptions]=\"getFilteredAddressOptions()\"\n [showSelectBlock]=\"!getMode()\"\n [hasSelectedAddress]=\"hasSelectedAddress()\"\n (modeChange)=\"setMode($event)\"\n (toggleDropdown)=\"toggleAddressDropdown()\"\n (closeDropdown)=\"addressDropdownOpen = false\"\n (selectAddress)=\"selectAddressFromDropdown($event)\"\n (addressSearchChange)=\"addressSearch = $event\">\n </app-dataform-ec-single>\n\n <form (submit)=\"verifyValidate(false,this.cartService.items)\"\n [class.compact-address-form]=\"compactAddressView\"\n *ngIf=\"!compactAddressView || getMode() || hasSelectedAddress()\">\n <div class=\"row mt-df\"><!--Fila 1-->\n <div class=\"form-group col-12 col-md-6\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.firstName.enabled\">\n <label class=\"field-label\">{{'first-name'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.firstName.required\"\n class=\"required\">*</span></label>\n <input class=\"form-control\" type=\"text\" name=\"firstName\"\n [formControl]=\"checkoutForm.controls['firstName']\" value=\"\" placeholder=\"\"\n autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.firstName.dirty || checkoutForm.controls.firstName.touched) && checkoutForm.controls.firstName.errors?.required\">\n <span class=\"text-danger\">{{'first-name-help1'|translate}}</span>\n\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.firstName.dirty || checkoutForm.controls.firstName.touched) && checkoutForm.controls.firstName.errors?.pattern\">\n <span class=\"text-danger\">\n {{'first-name-help2'|translate}}\n </span>\n </div>\n </div>\n <div class=\"form-group col-12 col-md-6\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.lastName.enabled\">\n <label class=\"field-label\">{{'last-name'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.lastName.required\"\n class=\"required\">*</span></label>\n <input class=\"form-control\" type=\"text\" name=\"lastName\"\n [formControl]=\"checkoutForm.controls['lastName']\" value=\"\" placeholder=\"\"\n autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.lastName.dirty || checkoutForm.controls.lastName.touched) && checkoutForm.controls.lastName.errors?.required\">\n <span class=\"text-danger\">{{'last-name-help1'|translate}}</span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.lastName.dirty || checkoutForm.controls.lastName.touched) && checkoutForm.controls.lastName.errors?.pattern\">\n <span class=\"text-danger\">{{'last-name-help2'|translate}}</span>\n </div>\n </div>\n </div>\n <div class=\"row mt-df\"><!--Fila 2-->\n <div class=\"form-group col-12 col-md-6\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.phoneNumber.enabled\">\n <label class=\"field-label\">{{'phone'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.phoneNumber.required\"\n class=\"required\">*</span></label>\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"tel\" name=\"phoneNumber\"\n [formControl]=\"checkoutForm.controls['phoneNumber']\" value=\"\" placeholder=\"\"\n autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.phoneNumber.dirty || checkoutForm.controls.phoneNumber.touched) && checkoutForm.controls.phoneNumber.errors?.required\">\n <span class=\"text-danger\">\n\n {{'phone-help1'|translate}}\n </span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.phoneNumber.dirty || checkoutForm.controls.phoneNumber.touched) && checkoutForm.controls.phoneNumber.errors?.pattern\">\n <span class=\"text-danger\">\n {{'phone-help2'|translate}}\n </span>\n </div>\n </div>\n <div class=\"form-group col-12 col-md-6\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.email.enabled\">\n <label class=\"field-label\">{{'email-address'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.email.required\"\n class=\"required\">*</span></label>\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"email\" name=\"email\"\n [formControl]=\"checkoutForm.controls['email']\" value=\"\" placeholder=\"\" autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.email.dirty || checkoutForm.controls.email.touched) && checkoutForm.controls.email.errors?.required\">\n <span class=\"text-danger\">\n {{'email-address-help1'|translate}}\n </span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.email.dirty || checkoutForm.controls.email.touched) && checkoutForm.controls.email.errors?.email\">\n <span class=\"text-danger\">\n {{'email-address-help2'|translate}}\n </span>\n </div>\n </div>\n </div>\n\n <div class=\"row mt-df\"><!--Fila 3-->\n <ng-container *ngIf=\"this.addressingService.getTypeForm().viewForms.countryCode.enabled\">\n <div class=\"form-group col-12 col-md-4\" *ngIf=\"(countries$ | async) as countries\">\n <label class=\"field-label\">{{'country'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.countryCode.required\"\n class=\"required\">*</span></label>\n <select class=\"form-select\" name=\"countryCode\"\n [formControl]=\"checkoutForm.controls['countryCode']\"\n (change)=\"onCountrySelected($event.target.value)\">\n <!-- <option selected [value]=\"countries[0].code\">{{ 'choose-country' | translate }}</option> -->\n <option *ngFor=\"let country of countries\" [value]=\"country.code\">{{ country.name }}\n </option>\n </select>\n <div *ngIf=\"(checkoutForm.controls.countryCode.dirty || checkoutForm.controls.countryCode.touched) && checkoutForm.controls.countryCode.errors?.required\"\n class=\"text text-danger\">\n {{'country-help'|translate}}\n </div>\n </div>\n </ng-container>\n <ng-container *ngIf=\"this.addressingService.getTypeForm().viewForms.provinceCode.enabled\">\n <div class=\"form-group col-12 col-md-4\" *ngIf=\"(provinces$ | async) as provinces\">\n <label class=\"field-label\">{{'state'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.provinceCode.required\"\n class=\"required\">*</span></label>\n <select class=\"form-select\" name=\"provinceCode\"\n (change)=\"onProvincesSelected($event.target.value)\"\n [formControl]=\"checkoutForm.controls['provinceCode']\">\n <!-- <option selected [value]=\"null\">{{ 'choose-province' | translate }}</option>\n -->\n <option *ngFor=\"let province of provinces\" [value]=\"province.code\">{{ province.name }}\n </option>\n </select>\n <div *ngIf=\"(checkoutForm.controls.provinceCode.dirty || checkoutForm.controls.provinceCode.touched) && checkoutForm.controls.provinceCode.errors?.required\"\n class=\"text text-danger\">\n {{'state-help'|translate}}\n </div>\n </div>\n </ng-container>\n <div class=\"form-group col-12 col-md-4\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.city.enabled\">\n <label class=\"field-label\">{{'town-city'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.city.required\"\n class=\"required\">*</span></label>\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"city\"\n [formControl]=\"checkoutForm.controls['city']\" value=\"\" placeholder=\"\" autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.city.dirty || checkoutForm.controls.city.touched) && checkoutForm.controls.city.errors?.required\">\n <span class=\"text-danger\">{{'town-city-help'|translate}}</span>\n </div>\n </div>\n </div>\n\n <div class=\"row mt-df\"><!--Fila 4-->\n <div class=\"form-group col-12 col-md-8\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.street.enabled\">\n <label class=\"field-label\">{{'address'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.street.required\"\n class=\"required\">*</span>\n <span class=\"char-count\">\n {{ 50 - (checkoutForm.controls['street'].value?.length || 0) }}\n {{'remainingCharacters'|translate}}\n </span>\n </label>\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"street\"\n [formControl]=\"checkoutForm.controls['street']\" value=\"\" placeholder=\"\" autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.street.dirty || checkoutForm.controls.street.touched) && checkoutForm.controls.street.errors?.required\">\n <span class=\"text-danger\">{{'address-help1'|translate}}</span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.street.dirty || checkoutForm.controls.street.touched) && checkoutForm.controls.street.errors?.maxlength\">\n <span class=\"text-danger\">{{'address-help2'|translate}}</span>\n </div>\n </div>\n\n <!-- form direcci\u00F3n -->\n <div class=\"form-group col-12 col-md-4\"\n *ngIf=\"isPostalCodeFieldVisible()\">\n <label class=\"field-label\">{{'postal-code'|translate}}<span\n *ngIf=\"isPostalCodeFieldRequired()\"\n class=\"required\">*</span></label>\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"postcode\"\n [formControl]=\"checkoutForm.controls['postcode']\" value=\"\" placeholder=\"\"\n autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.postcode.dirty || checkoutForm.controls.postcode.touched) && checkoutForm.controls.postcode.errors?.required\">\n <span class=\"text-danger\">{{'postal-code-help'|translate}}</span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.postcode.dirty || checkoutForm.controls.postcode.touched) && checkoutForm.controls.postcode.errors?.pattern\">\n <span class=\"text-danger\"> {{postalCodeErrorMessage | translate}} </span>\n </div>\n </div>\n </div>\n\n <div class=\"row mt-df\"><!--Fila 5-->\n <ng-container *ngIf=\"compactAddressView; else documentRowFull\">\n <ng-container *ngIf=\"this.addressingService.getTypeForm().viewForms.documentType.enabled; else documentNumberOnly\">\n <div class=\"form-group col-12\" *ngIf=\"(documentTypes$ | async) as documentTypes\">\n <label class=\"field-label\">{{'document-type-number'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.documentNumber.required\"\n class=\"required\">*</span></label>\n <div class=\"input-group document-input-group\">\n <button class=\"btn btn-outline-secondary dropdown-toggle\" type=\"button\"\n (click)=\"toggleDocumentTypeDropdown($event)\"\n [attr.aria-expanded]=\"documentTypeDropdownOpen\"\n [disabled]=\"checkoutForm.controls['documentType']?.disabled || formReadonly\">\n {{ getSelectedDocumentTypeLabel(documentTypes) || ('document-type' | translate) }}\n </button>\n <div class=\"dropdown-menu\" [class.show]=\"documentTypeDropdownOpen\">\n <button class=\"dropdown-item\" type=\"button\"\n *ngFor=\"let item of documentTypes\"\n (click)=\"selectDocumentType(item.code)\">\n {{ item.name }}\n </button>\n </div>\n <input (change)=\"onInputChange()\" class=\"form-control\" [type]=\"'text'\"\n name=\"documentNumber\"\n [formControl]=\"checkoutForm.controls['documentNumber']\"\n placeholder=\"\" autocomplete=\"off\">\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.documentType.dirty || checkoutForm.controls.documentType.touched) && checkoutForm.controls.documentType.errors?.required\">\n <span class=\"text-danger\">\n {{'type-document-help'|translate}}\n </span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.documentNumber.dirty || checkoutForm.controls.documentNumber.touched) && checkoutForm.controls.documentNumber.errors?.required\">\n <span class=\"text-danger\">{{ 'document-number-help' | translate }}</span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.documentNumber.dirty || checkoutForm.controls.documentNumber.touched) && checkoutForm.controls.documentNumber.errors?.pattern\">\n <span class=\"text-danger\">{{ documentErrorMessage | translate }}</span>\n </div>\n </div>\n </ng-container>\n <ng-template #documentNumberOnly>\n <div class=\"form-group col-12\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.documentNumber.enabled\">\n <label class=\"field-label\">{{'document-number'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.documentNumber.required\"\n class=\"required\">*</span></label>\n <input (change)=\"onInputChange()\" class=\"form-control\" [type]=\"'text'\"\n name=\"documentNumber\"\n [formControl]=\"checkoutForm.controls['documentNumber']\"\n placeholder=\"\" autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.documentNumber.dirty || checkoutForm.controls.documentNumber.touched) && checkoutForm.controls.documentNumber.errors?.required\">\n <span class=\"text-danger\">{{ 'document-number-help' | translate }}</span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.documentNumber.dirty || checkoutForm.controls.documentNumber.touched) && checkoutForm.controls.documentNumber.errors?.pattern\">\n <span class=\"text-danger\">{{ documentErrorMessage | translate }}</span>\n </div>\n </div>\n </ng-template>\n </ng-container>\n <ng-template #documentRowFull>\n <ng-container *ngIf=\"this.addressingService.getTypeForm().viewForms.documentType.enabled\">\n <div class=\"form-group col-12 col-md-4\" *ngIf=\"(documentTypes$ | async) as documentTypes\">\n <label class=\"field-label\">{{'document-type'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.documentType.required\"\n class=\"required\">*</span></label>\n <select name=\"documentType\" class=\"form-select\"\n (change)=\"onDocumentTypesSelected($event.target.value)\"\n [formControl]=\"checkoutForm.controls['documentType']\">\n <option *ngFor=\"let item of documentTypes\" [value]=\"item.code\">{{item.name}}</option>\n </select>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.documentType.dirty || checkoutForm.controls.documentType.touched) && checkoutForm.controls.documentType.errors?.required\">\n <span class=\"text-danger\">\n {{'type-document-help'|translate}}\n </span>\n </div>\n </div>\n </ng-container>\n <div class=\"form-group col-12 col-md-4\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.documentNumber.enabled\">\n <label class=\"field-label\">{{'document-number'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.documentNumber.required\"\n class=\"required\">*</span></label>\n <input (change)=\"onInputChange()\" class=\"form-control\" [type]=\"'text'\" name=\"documentNumber\"\n [formControl]=\"checkoutForm.controls['documentNumber']\" placeholder=\"\" autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.documentNumber.dirty || checkoutForm.controls.documentNumber.touched) && checkoutForm.controls.documentNumber.errors?.required\">\n <span class=\"text-danger\">{{ 'document-number-help' | translate }}</span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.documentNumber.dirty || checkoutForm.controls.documentNumber.touched) && checkoutForm.controls.documentNumber.errors?.pattern\">\n <span class=\"text-danger\">{{ documentErrorMessage | translate }}</span>\n </div>\n </div>\n </ng-template>\n </div>\n\n <div class=\"row mt-df\" *ngIf=\"this.consts.getChannel() != 'mdj-empresa-a' && !(compactAddressView && !getMode())\"><!--Fila 6-->\n <div class=\"form-group col-12 col-md-12\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.notes.enabled\">\n\n <label class=\"field-label\" *ngIf=\"!getLabelNotesParam()\">{{'notes'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.notes.required\"\n class=\"required\">*</span></label>\n <label class=\"field-label\" *ngIf=\"getLabelNotesParam() as labelnotes\"\n [innerHTML]=\"labelnotes.value\"><span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.notes.required\"\n class=\"required\">*</span></label>\n\n <!-- <label class=\"field-label\">{{'notes'|translate}}<span *ngIf=\"this.addressingService.getTypeForm().viewForms.notes.required\" class=\"required\">*</span></label> -->\n <textarea (change)=\"onInputChange()\" class=\"form-control notes-textarea\" name=\"notes\"\n [formControl]=\"checkoutForm.controls['notes']\" rows=\"3\" placeholder=\"\"\n autocomplete=\"off\"></textarea>\n </div>\n </div>\n <div class=\"row mt-df address-meta-row\" *ngIf=\"!(compactAddressView && !getMode())\"><!--Fila 7-->\n <div class=\"form-group col-12 col-md-12\">\n <label for=\"formFact\"><b>{{ 'same-billing-address' | translate }}</b> <input type=\"checkbox\"\n class=\"ms-2\" [checked]=\"viewDataFacturacion\" (change)=\"showFormFacturacion()\"\n id=\"formFact\"></label>\n </div>\n </div>\n <div class=\"row mt-df address-required-row\" *ngIf=\"!(compactAddressView && !getMode())\">\n <div class=\"col-12\">\n <span class=\"required-hint-text\">\n <span class=\"required-hint-asterisk\">*</span> {{ 'required-fields' | translate }}\n </span>\n </div>\n </div>\n <div class=\"row mt-df address-terms-row\" *ngIf=\"!(compactAddressView && !getMode())\">\n <div class=\"form-group col-12 col-md-12\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.terms.enabled\">\n <label class=\"terms-label\" for=\"\">\n <input class=\"me-2\" name=\"terms\" [formControl]=\"checkoutForm.controls['terms']\"\n type=\"checkbox\" required (change)=\"onInputChange()\" />\n <span>{{ 'accept-terms-prefix' | translate }}</span>\n <button type=\"button\" class=\"terms-link\" (click)=\"openModal(template)\">\n {{ 'terms-and-conditions' | translate }}\n </button>\n <span *ngIf=\"this.addressingService.getTypeForm().viewForms.terms.required\"\n class=\"required\">*</span>\n </label>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.terms.dirty || checkoutForm.controls.terms.touched) && !checkoutForm.controls.terms.value\">\n <span class=\"text-danger\">{{ 'must-accept-terms' | translate }}</span>\n </div>\n </div>\n </div>\n <div class=\"row\" *ngIf=\"viewDataFacturacion ; else datosFormFacturacion\"> </div>\n <div class=\"checkout-btn-unique text-end\" *ngIf=\"!formReadonly\">\n <button type=\"submit\" [disabled]=\"!validado\" class=\"btn valid-btn mt-2\">\n {{ getPrimaryActionLabel() | translate }}</button>\n\n\n </div>\n <div *ngIf=\"loading && !compactAddressView\" class=\"d-flex flex-column jusitfy-content-center align-items-center\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n </form>\n <ng-container *ngIf=\"compactAddressView && !getMode()\">\n <div class=\"w-100\" *ngIf=\"this.consts.getChannel() != 'mdj-empresa-a'\">\n <ng-container *ngIf=\"this.addressingService.getTypeForm().viewForms.notes.enabled\">\n <div class=\"row mt-df\">\n <div class=\"form-group col-12 col-md-12\">\n <label class=\"field-label\" *ngIf=\"!getLabelNotesParam()\">{{'notes'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.notes.required\"\n class=\"required\">*</span></label>\n <label class=\"field-label\" *ngIf=\"getLabelNotesParam() as labelnotes\"\n [innerHTML]=\"labelnotes.value\"></label>\n <textarea (change)=\"onSelectionNotesChange()\" class=\"form-control notes-textarea\"\n name=\"notes\" [(ngModel)]=\"this.addressBookSelected.notes\" #ctrl=\"ngModel\" rows=\"3\"\n placeholder=\"\" autocomplete=\"off\" [disabled]=\"selectedAddress?.isTemporary\"></textarea>\n <div class=\"invalid-feedback d-block\" *ngIf=\"\n addressingService.getTypeForm().viewForms.notes.required\n && (!addressBookSelected.notes || !addressBookSelected.notes.trim())\n \">\n {{ 'required-field' | translate }}\n </div>\n </div>\n </div>\n </ng-container>\n </div>\n </ng-container>\n </div>\n </div>\n </ng-container>\n\n <ng-template #addressSelection>\n\n <ng-container *ngIf=\"this.addressingService.modeSelectAddress == 'ONLY_ADDRESS_SELECTION'\">\n <div class=\"checkout-title my-2\">\n <h3>{{'address-selection'|translate}}</h3>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"this.addressBook; else addressBookNotResult\">\n\n <ng-container *ngIf=\"this.addressBook?.length ;else addressBookLoading\">\n <div class=\"container\">\n <div class=\"row\">\n <div class=\"col-sm-6 col-12 my-3\" *ngFor=\"let item of addressBook; let i = index\">\n <ng-container *ngIf=\"compactAddressView; else addressCardFull\">\n <div class=\"address-card-compact\" [class.is-selected]=\"item.selected\"\n (click)=\"setSelectAddress(item); onInputChange()\">\n <label class=\"address-card-radio\">\n <input class=\"form-check-input input-size-lg\" type=\"radio\" [name]=\"'n-'+i\"\n [id]=\"i\" [checked]=\"item.selected\" (click)=\"setSelectAddress(item)\"\n (change)=\"onInputChange()\">\n </label>\n <div class=\"address-card-content\">\n <div class=\"address-card-main\">\n <div class=\"address-card-title\">{{ item.street }}</div>\n <div class=\"address-card-sub\">\n {{ item.city }} - {{ getProvince(item.provinceCode) }} - {{ getCountry(item.countryCode) }}\n </div>\n <div class=\"address-card-sub\"\n *ngIf=\"shouldShowPostalCodeByCountryCode(item.countryCode)\">\n {{ 'postal-code' | translate }} {{ item.postcode }}\n </div>\n </div>\n <details class=\"address-card-details\" (click)=\"$event.stopPropagation()\">\n <summary>{{ 'details' | translate }}</summary>\n <div class=\"address-card-details-body\">\n <div class=\"address-card-detail-title\">{{ 'address-contact' | translate }}</div>\n <div class=\"address-card-detail-line\">\n <strong>{{ 'first-name' | translate }}</strong> {{ item.addressContact.firstName }}\n </div>\n <div class=\"address-card-detail-line\">\n <strong>{{ 'last-name' | translate }}</strong> {{ item.addressContact.lastName }}\n </div>\n <div class=\"address-card-detail-line\">\n <strong>{{ 'document-type' | translate }}</strong> {{ getDocumentType(item.addressContact.documentType) }}\n </div>\n <div class=\"address-card-detail-line\">\n <strong>{{ 'document-number' | translate }}</strong> {{ item.addressContact.documentNumber }}\n </div>\n <div class=\"address-card-detail-line\">\n <strong>{{ 'email-address' | translate }}</strong> {{ item.addressContact.email }}\n </div>\n </div>\n </details>\n </div>\n </div>\n </ng-container>\n <ng-template #addressCardFull>\n <div class=\"card p-3\">\n <input class=\"ms-1 mt-3 form-check-input input-size-lg\" type=\"radio\" [name]=\"'n-'+i\"\n [id]=\"i\" [checked]=\"item.selected\" (click)=\"setSelectAddress(item)\"\n (change)=\"onInputChange()\">\n <div class=\"ms-5\">\n <h4 class=\"card-title\">\n <strong>{{'address'|translate}}</strong><br>\n <span class=\"text-uppercase h3\">{{item.street}}</span>\n </h4>\n <div class=\"row\">\n <h5 class=\"card-subtitle mb-2 text-muted col-auto\">\n <strong>{{'country'|translate}}</strong> {{getCountry(item.countryCode)}}\n </h5>\n <h5 class=\"card-subtitle mb-2 text-muted col-auto\">\n <strong>{{'state'|translate}}</strong> {{getProvince(item.provinceCode)}}\n </h5>\n <h5 class=\"card-subtitle mb-2 text-muted col-auto\">\n <strong>{{'town-city'|translate}}</strong> {{item.city}}\n </h5>\n <h5 class=\"card-subtitle mb-2 text-muted col-auto\"\n *ngIf=\"shouldShowPostalCodeByCountryCode(item.countryCode)\">\n <strong>{{'postal-code'|translate}}</strong> {{item.postcode}}\n </h5>\n </div>\n <div class=\"row px-3\">\n <div class=\"card p-2 bg-light w-100\">\n <div class=\"card-body\">\n <h5 class=\"card-title\">{{'address-contact'|translate}}</h5>\n <h6 class=\"card-subtitle mb-2 text-muted\">\n <strong>{{'first-name'|translate}}</strong>\n {{item.addressContact.firstName}}\n </h6>\n <h6 class=\"card-subtitle mb-2 text-muted\">\n <strong>{{'last-name'|translate}}</strong>\n {{item.addressContact.lastName}}\n </h6>\n <h6 class=\"card-subtitle mb-2 text-muted\">\n <strong>{{'document-type'|translate}}</strong>\n {{getDocumentType(item.addressContact.documentType)}}\n </h6>\n <h6 class=\"card-subtitle mb-2 text-muted\">\n <strong>{{'document-number'|translate}}</strong>\n {{item.addressContact.documentNumber}}\n </h6>\n <h6 class=\"card-subtitle mb-2 text-muted\">\n <strong>{{'email-address'|translate}}</strong>\n {{item.addressContact.email}}\n </h6>\n </div>\n </div>\n </div>\n </div>\n </div>\n </ng-template>\n </div>\n\n </div>\n <!-- Se hardcodea el canal de mundo del juguete empresa A ya que se necesita con urgencia, se sustituira por un campo que llegara de backend. -->\n <div class=\"w-100\" *ngIf=\"this.consts.getChannel() != 'mdj-empresa-a'\">\n <ng-container *ngIf=\"this.addressingService.getTypeForm().viewForms.notes.enabled\">\n <div class=\"row mt-df\">\n <div class=\"form-group col-12 col-md-12\">\n <label class=\"field-label\" *ngIf=\"!getLabelNotesParam()\">{{'notes'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.notes.required\"\n class=\"required\">*</span></label>\n <label class=\"field-label\" *ngIf=\"getLabelNotesParam() as labelnotes\"\n [innerHTML]=\"labelnotes.value\"></label>\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"notes\"\n [(ngModel)]=\"this.addressBookSelected.notes\" #ctrl=\"ngModel\" value=\"\"\n placeholder=\"\" autocomplete=\"off\">\n <div class=\"invalid-feedback d-block\" *ngIf=\"\n addressingService.getTypeForm().viewForms.notes.required\n && (!addressBookSelected.notes || !addressBookSelected.notes.trim())\n \">\n {{ 'required-field' | translate }}\n </div>\n </div>\n </div>\n </ng-container>\n </div>\n <div class=\"row mt-df\"><!--Direcci\u00F3n de facturaci\u00F3n-->\n <div class=\"form-group col-12 col-md-12\">\n <label for=\"formFactSelection\"><b>{{ 'same-billing-address' | translate }}</b> <input type=\"checkbox\"\n class=\"ms-2\" [checked]=\"viewDataFacturacion\" (change)=\"showFormFacturacion()\"\n id=\"formFactSelection\"></label>\n </div>\n </div>\n <ng-container *ngIf=\"!viewDataFacturacion\">\n <!-- Selector de modo para direcci\u00F3n de facturaci\u00F3n -->\n <div class=\"container card p-4 mb-3\">\n <div class=\"row justify-content-center\">\n <div class=\"col-12 col-md-10 col-lg-8 text-center\">\n <div class=\"btn-group btn-group-toggle\" data-bs-toggle=\"buttons\">\n <label [class]=\"'btn btn-outline-secondary ' + (!getModeFacturacion() ? 'active' : '')\">\n <input type=\"radio\" name=\"billingOptions\" id=\"billingOption1\" autocomplete=\"off\"\n [checked]=\"!getModeFacturacion()\" (change)=\"setModeFacturacion('seleccion')\">\n {{'select-address' | translate | titlecase}}\n </label>\n <label [class]=\"'btn btn-outline-secondary ' + (getModeFacturacion() ? 'active' : '')\">\n <input type=\"radio\" name=\"billingOptions\" id=\"billingOption2\" autocomplete=\"off\"\n [checked]=\"getModeFacturacion()\" (change)=\"setModeFacturacion('carga')\">\n {{ 'new-address' | translate | titlecase}}\n </label>\n </div>\n </div>\n </div>\n </div>\n <!-- Formulario de nueva direcci\u00F3n de facturaci\u00F3n -->\n <ng-container *ngIf=\"getModeFacturacion()\">\n <ng-container *ngTemplateOutlet=\"datosFormFacturacion\"></ng-container>\n </ng-container>\n <!-- Selecci\u00F3n de direcci\u00F3n de facturaci\u00F3n del address book -->\n <ng-container *ngIf=\"!getModeFacturacion()\">\n <div class=\"container\">\n <div class=\"row\">\n <div class=\"col-sm-6 col-12 my-3\" *ngFor=\"let item of addressBook; let i = index\">\n <div class=\"card p-3\">\n <input class=\"ms-1 mt-3 form-check-input input-size-lg\" type=\"radio\" [name]=\"'billing-'+i\"\n [id]=\"'billing-'+i\" [checked]=\"item.selectedFacturacion\"\n (click)=\"setSelectAddressFacturacion(item)\" (change)=\"onInputChange()\">\n <div class=\"ms-5\">\n <h4 class=\"card-title\">\n <strong>{{'address'|translate}}</strong><br>\n <span class=\"text-uppercase h3\">{{item.street}}</span>\n </h4>\n <div class=\"row\">\n <h5 class=\"card-subtitle mb-2 text-muted col-auto\">\n <strong>{{'country'|translate}}</strong> {{getCountry(item.countryCode)}}\n </h5>\n <h5 class=\"card-subtitle mb-2 text-muted col-auto\">\n <strong>{{'state'|translate}}</strong> {{getProvince(item.provinceCode)}}\n </h5>\n <h5 class=\"card-subtitle mb-2 text-muted col-auto\">\n <strong>{{'town-city'|translate}}</strong> {{item.city}}\n </h5>\n <h5 class=\"card-subtitle mb-2 text-muted col-auto\"\n *ngIf=\"shouldShowPostalCodeByCountryCode(item.countryCode)\">\n <strong>{{'postal-code'|translate}}</strong> {{item.postcode}}\n </h5>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </ng-container>\n </ng-container>\n <div class=\"checkout-btn-unique text-end\">\n <button *ngIf=\"!viewDataFacturacion && !getModeFacturacion()\"\n (click)=\"onSelectAddressFacturacion(this.cartService.items)\" class=\"btn valid-btn mt-2\"\n [disabled]=\"!addressBookSelectedFacturacion.id\">\n {{ getPrimaryActionLabel() | translate }}\n </button>\n <button *ngIf=\"!viewDataFacturacion && getModeFacturacion()\"\n (click)=\"onSubmitNewBillingAddress(this.cartService.items)\" class=\"btn valid-btn mt-2\"\n [disabled]=\"checkoutFormFacturacion.invalid\">\n {{ getPrimaryActionLabel() | translate }}\n </button>\n <button *ngIf=\"viewDataFacturacion\"\n (click)=\"onSelectAddress(this.cartService.items)\" class=\"btn valid-btn mt-2\">\n {{ getPrimaryActionLabel() | translate }}\n </button>\n </div>\n <div *ngIf=\"loading\" class=\"d-flex flex-column jusitfy-content-center align-items-center\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n </div>\n </ng-container>\n </ng-container>\n\n </ng-template>\n\n\n <ng-template #requireLoginView>\n <div id=\"loginCheckout\">\n <div class=\"d-flex flex-column jusitfy-content-center align-items-center\" *ngIf=\"require_login\">\n <div class=\"col-12\">\n <app-login-form-ec (ready)=\"verifyValidate($event)\" [redirect]=\"false\" [title]=\"'need-login'\">\n </app-login-form-ec>\n </div>\n </div>\n </div>\n </ng-template>\n\n\n\n <ng-template #datosFormFacturacion>\n <div class=\"container-fluid px-0 px-md-2\">\n <div class=\"row\">\n <div class=\"col-12\">\n <div class=\"card \">\n <div class=\"card-header text-dark text-center\">\n <h3>{{'billing-data'|translate}}</h3>\n </div>\n <div class=\"card-body\">\n <form (submit)=\"handleBillingFormSubmit($event)\">\n <div class=\"row mt-df\">\n <!--Fila 1-->\n <div class=\"form-group col-12 col-md-6\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.firstName.enabled\">\n <label class=\"field-label\">{{'first-name'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.firstName.required\"\n class=\"required\">*</span></label>\n <input class=\"form-control\" type=\"text\" name=\"firstName\"\n [formControl]=\"checkoutFormFacturacion.controls['firstName']\" value=\"\"\n placeholder=\"\" autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.firstName.dirty || checkoutFormFacturacion.controls.firstName.touched) && checkoutFormFacturacion.controls.firstName.errors?.required\">\n <span class=\"text-danger\">{{'first-name-help1'|translate}}</span>\n\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.firstName.dirty || checkoutFormFacturacion.controls.firstName.touched) && checkoutFormFacturacion.controls.firstName.errors?.pattern\">\n <span class=\"text-danger\">\n {{'first-name-help2'|translate}}\n </span>\n </div>\n </div>\n <div class=\"form-group col-12 col-md-6\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.lastName.enabled\">\n <label class=\"field-label\">{{'last-name'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.lastName.required\"\n class=\"required\">*</span></label>\n <input class=\"form-control\" type=\"text\" name=\"lastName\"\n [formControl]=\"checkoutFormFacturacion.controls['lastName']\" value=\"\"\n placeholder=\"\" autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.lastName.dirty || checkoutFormFacturacion.controls.lastName.touched) && checkoutFormFacturacion.controls.lastName.errors?.required\">\n <span class=\"text-danger\">{{'last-name-help1'|translate}}</span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.lastName.dirty || checkoutFormFacturacion.controls.lastName.touched) && checkoutFormFacturacion.controls.lastName.errors?.pattern\">\n <span class=\"text-danger\">{{'last-name-help2'|translate}}</span>\n </div>\n </div>\n </div>\n <div class=\"row mt-df\">\n <!--Fila 2-->\n <div class=\"form-group col-12 col-md-6\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.phoneNumber.enabled\">\n <label class=\"field-label\">{{'phone'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.phoneNumber.required\"\n class=\"required\">*</span></label>\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"tel\"\n name=\"phoneNumber\"\n [formControl]=\"checkoutFormFacturacion.controls['phoneNumber']\" value=\"\"\n placeholder=\"\" autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.phoneNumber.dirty || checkoutFormFacturacion.controls.phoneNumber.touched) && checkoutFormFacturacion.controls.phoneNumber.errors?.required\">\n <span class=\"text-danger\">\n {{'phone-help1'|translate}}\n </span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.phoneNumber.dirty || checkoutFormFacturacion.controls.phoneNumber.touched) && checkoutFormFacturacion.controls.phoneNumber.errors?.pattern\">\n <span class=\"text-danger\">\n {{'phone-help2'|translate}}\n </span>\n </div>\n </div>\n <div class=\"form-group col-12 col-md-6\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.email.enabled\">\n <label class=\"field-label\">{{'email-address'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.email.required\"\n class=\"required\">*</span></label>\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"email\" name=\"email\"\n [formControl]=\"checkoutFormFacturacion.controls['email']\" value=\"\"\n placeholder=\"\" autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.email.dirty || checkoutFormFacturacion.controls.email.touched) && checkoutFormFacturacion.controls.email.errors?.required\">\n <span class=\"text-danger\">\n {{'email-address-help1'|translate}}\n </span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.email.dirty || checkoutFormFacturacion.controls.email.touched) && checkoutFormFacturacion.controls.email.errors?.email\">\n <span class=\"text-danger\">\n {{'email-address-help2'|translate}}\n </span>\n </div>\n </div>\n </div>\n <div class=\"row mt-df\">\n <!--Fila 3-->\n\n <ng-container\n *ngIf=\"this.addressingService.getTypeForm().viewForms.countryCode.enabled\">\n\n <div class=\"form-group col-12 col-md-4\"\n *ngIf=\"(countriesFacturacion$ | async) as countries\">\n <label class=\"field-label\">{{'country'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.countryCode.required\"\n class=\"required\">*</span></label>\n <select class=\"form-select\" name=\"countryCode\"\n [formControl]=\"checkoutFormFacturacion.controls['countryCode']\"\n (change)=\"onCountrySelectedFacturacion($event.target.value)\">\n <!-- <option selected [value]=\"null\">{{ 'choose-country' | translate }}</option> -->\n <option *ngFor=\"let country of countries\" [value]=\"country.code\">\n {{ country.name }}</option>\n </select>\n <div *ngIf=\"(checkoutFormFacturacion.controls.countryCode.dirty || checkoutFormFacturacion.controls.countryCode.touched) && checkoutFormFacturacion.controls.countryCode.errors?.required\"\n class=\"text text-danger\">\n {{'country-help'|translate}}\n </div>\n </div>\n </ng-container>\n <ng-container\n *ngIf=\"this.addressingService.getTypeForm().viewForms.provinceCode.enabled\">\n\n <div class=\"form-group col-12 col-md-4\"\n *ngIf=\"(provincesFacturacion$ | async) as provinces\">\n <label class=\"field-label\">{{'state'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.provinceCode.required\"\n class=\"required\">*</span></label>\n <select class=\"form-select\" name=\"provinceCode\"\n (change)=\"onProvincesSelectedFacturacion($event.target.value)\"\n [formControl]=\"checkoutFormFacturacion.controls['provinceCode']\">\n <!-- <option selected [value]=\"null\">{{ 'choose-province' | translate }}</option> -->\n <option *ngFor=\"let province of provinces\" [value]=\"province.code\">\n {{ province.name }}\n </option>\n </select>\n <div *ngIf=\"(checkoutFormFacturacion.controls.provinceCode.dirty || checkoutFormFacturacion.controls.provinceCode.touched) && checkoutFormFacturacion.controls.provinceCode.errors?.required\"\n class=\"text text-danger\">\n {{'state-help'|translate}}\n </div>\n </div>\n </ng-container>\n <div class=\"form-group col-12 col-md-4\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.city.enabled\">\n <label class=\"field-label\">{{'town-city'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.city.required\"\n class=\"required\">*</span></label>\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"city\"\n [formControl]=\"checkoutFormFacturacion.controls['city']\" value=\"\"\n placeholder=\"\" autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.city.dirty || checkoutFormFacturacion.controls.city.touched) && checkoutFormFacturacion.controls.city.errors?.required\">\n <span class=\"text-danger\">{{'town-city-help'|translate}}</span>\n </div>\n </div>\n </div>\n <div class=\"row mt-df\">\n <!--Fila 4-->\n <div class=\"form-group col-12 col-md-8\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.street.enabled\">\n <label class=\"field-label\">{{'address'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.street.required\"\n class=\"required\">*</span></label>\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"street\"\n [formControl]=\"checkoutFormFacturacion.controls['street']\" value=\"\"\n placeholder=\"\" autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.street.dirty || checkoutFormFacturacion.controls.street.touched) && checkoutFormFacturacion.controls.street.errors?.required\">\n <span class=\"text-danger\">{{'address-help1'|translate}}</span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.street.dirty || checkoutFormFacturacion.controls.street.touched) && checkoutFormFacturacion.controls.street.errors?.maxlength\">\n <span class=\"text-danger\">{{'address-help2'|translate}}</span>\n </div>\n </div>\n <div class=\"form-group col-12 col-md-4\"\n *ngIf=\"isPostalCodeFieldVisible(true)\">\n <label class=\"field-label\">{{'postal-code'|translate}}<span\n *ngIf=\"isPostalCodeFieldRequired(true)\"\n class=\"required\">*</span></label>\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\"\n name=\"postcode\" [formControl]=\"checkoutFormFacturacion.controls['postcode']\"\n value=\"\" placeholder=\"\" autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.postcode.dirty || checkoutFormFacturacion.controls.postcode.touched) && checkoutFormFacturacion.controls.postcode.errors?.required\">\n <span class=\"text-danger\">{{'postal-code-help'|translate}}</span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.postcode.dirty || checkoutFormFacturacion.controls.postcode.touched) && checkoutFormFacturacion.controls.postcode.errors?.pattern\">\n <span class=\"text-danger\">{{postalCodeErrorMessageFacturacion |translate}}</span>\n </div>\n </div>\n </div>\n <div class=\"row mt-df\">\n <!--Fila 5-->\n <ng-container *ngIf=\"compactAddressView; else documentRowFullFacturacion\">\n <ng-container *ngIf=\"this.addressingService.getTypeForm().viewForms.documentType.enabled; else documentNumberOnlyFacturacion\">\n <div class=\"form-group col-12\"\n *ngIf=\"(documentTypesFacturacion$ | async) as documentTypes\">\n <label class=\"field-label\">{{'document-type-number'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.documentNumber.required\"\n class=\"required\">*</span></label>\n <div class=\"input-group document-input-group\">\n <button class=\"btn btn-outline-secondary dropdown-toggle\" type=\"button\"\n (click)=\"toggleDocumentTypeDropdownFacturacion($event)\"\n [attr.aria-expanded]=\"documentTypeFactDropdownOpen\"\n [disabled]=\"checkoutFormFacturacion.controls['documentType']?.disabled || formReadonly\">\n {{ getSelectedDocumentTypeLabelFacturacion(documentTypes) || ('document-type' | translate) }}\n </button>\n <div class=\"dropdown-menu\" [class.show]=\"documentTypeFactDropdownOpen\">\n <button class=\"dropdown-item\" type=\"button\"\n *ngFor=\"let item of documentTypes\"\n (click)=\"selectDocumentTypeFacturacion(item.code)\">\n {{ item.name }}\n </button>\n </div>\n <input (change)=\"onInputChange()\" class=\"form-control\" [type]=\"'text'\"\n name=\"documentNumber\"\n [formControl]=\"checkoutFormFacturacion.controls['documentNumber']\"\n placeholder=\"\" autocomplete=\"off\">\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.documentType.dirty || checkoutFormFacturacion.controls.documentType.touched) && checkoutFormFacturacion.controls.documentType.errors?.required\">\n <span class=\"text-danger\">\n {{'type-document-help'|translate}}\n </span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.documentNumber.dirty || checkoutFormFacturacion.controls.documentNumber.touched) && checkoutFormFacturacion.controls.documentNumber.errors?.required\">\n <span class=\"text-danger\">\n {{'document-number-help'|translate}}\n </span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.documentNumber.dirty || checkoutFormFacturacion.controls.documentNumber.touched) && checkoutFormFacturacion.controls.documentNumber.errors?.pattern\">\n <span class=\"text-danger\">{{ documentErrorMessage | translate }}</span>\n </div>\n </div>\n </ng-container>\n <ng-template #documentNumberOnlyFacturacion>\n <div class=\"form-group col-12\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.documentNumber.enabled\">\n <label class=\"field-label\">{{'document-number'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.documentNumber.required\"\n class=\"required\">*</span></label>\n <input (change)=\"onInputChange()\" class=\"form-control\" [type]=\"'text'\"\n name=\"documentNumber\"\n [formControl]=\"checkoutFormFacturacion.controls['documentNumber']\"\n placeholder=\"\" autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.documentNumber.dirty || checkoutFormFacturacion.controls.documentNumber.touched) && checkoutFormFacturacion.controls.documentNumber.errors?.required\">\n <span class=\"text-danger\">\n {{'document-number-help'|translate}}\n </span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.documentNumber.dirty || checkoutFormFacturacion.controls.documentNumber.touched) && checkoutFormFacturacion.controls.documentNumber.errors?.pattern\">\n <span class=\"text-danger\">{{ documentErrorMessage | translate }}</span>\n </div>\n </div>\n </ng-template>\n </ng-container>\n <ng-template #documentRowFullFacturacion>\n <ng-container\n *ngIf=\"this.addressingService.getTypeForm().viewForms.documentType.enabled\">\n <div class=\"form-group col-12 col-md-4\"\n *ngIf=\"(documentTypesFacturacion$ | async) as documentTypes\">\n <label class=\"field-label\">{{'document-type'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.documentType.required\"\n class=\"required\">*</span></label>\n <select name=\"documentType\" class=\"form-select\"\n [formControl]=\"checkoutFormFacturacion.controls['documentType']\"\n (change)=\"onDocumentTypesSelectedFacturacion($event.target.value)\">\n <option *ngFor=\"let item of documentTypes\" [value]=\"item.code\">\n {{item.name}}</option>\n </select>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.documentType.dirty || checkoutFormFacturacion.controls.documentType.touched) && checkoutFormFacturacion.controls.documentType.errors?.required\">\n <span class=\"text-danger\">\n {{'type-document-help'|translate}}\n </span>\n </div>\n </div>\n <div class=\"form-group col-12 col-md-4\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.documentNumber.enabled\">\n <label class=\"field-label\">{{'document-number'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.documentNumber.required\"\n class=\"required\">*</span></label>\n <input (change)=\"onInputChange()\" class=\"form-control\" [type]=\"'text'\"\n name=\"documentNumber\"\n [formControl]=\"checkoutFormFacturacion.controls['documentNumber']\"\n placeholder=\"\" autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.documentNumber.dirty || checkoutFormFacturacion.controls.documentNumber.touched) && checkoutFormFacturacion.controls.documentNumber.errors?.required\">\n <span class=\"text-danger\">\n {{'document-number-help'|translate}}\n </span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.documentNumber.dirty || checkoutFormFacturacion.controls.documentNumber.touched) && checkoutFormFacturacion.controls.documentNumber.errors?.pattern\">\n <span class=\"text-danger\">{{ documentErrorMessage | translate }}</span>\n </div>\n </div>\n </ng-container>\n </ng-template>\n </div>\n <div class=\"row mt-df\" *ngIf=\"this.consts.getChannel() != 'mdj-empresa-a'\">\n <div class=\"form-group col-12 col-md-12\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.notes.enabled\">\n <label class=\"field-label\"\n *ngIf=\"!getLabelNotesParam()\">{{'notes'|translate}} <span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.notes.required\"\n class=\"required\">*</span></label>\n <label class=\"field-label\" *ngIf=\"getLabelNotesParam() as labelNotesHtml\">\n <div [innerHTML]=\"labelNotesHtml.value\"></div> \n <span *ngIf=\"this.addressingService.getTypeForm().viewForms.notes.required\"\n class=\"required\">*</span>\n </label>\n\n <!-- <label class=\"field-label\">{{'notes'|translate}}<span *ngIf=\"this.addressingService.getTypeForm().viewForms.notes.required\" class=\"required\">*</span></label> -->\n <textarea (change)=\"onInputChange()\" class=\"form-control notes-textarea\"\n name=\"notes\" [formControl]=\"checkoutFormFacturacion.controls['notes']\"\n rows=\"3\" placeholder=\"\" autocomplete=\"off\"></textarea>\n </div>\n </div>\n </form>\n </div>\n\n </div>\n </div>\n </div>\n </div>\n </ng-template>\n\n\n\n <ng-template #template>\n <div class=\"modal-content\">\n <div class=\"modal-header\">\n <button type=\"button\" class=\"btn-close float-end\" aria-label=\"Close\" (click)=\"modalRef.hide()\">\n </button>\n </div>\n </div>\n\n <div class=\"modal-body scrol-if\">\n <app-section-container-ec [name]=\"'terminos-y-condiciones'\"> </app-section-container-ec>\n </div>\n\n </ng-template>\n\n\n <ng-template #addressBookNotResult>\n <div class=\"container\">\n <div class=\"row\">\n <div class=\"col-12 text-center my-2\">\n <h4> {{'address-book-not-result' | translate }} </h4>\n </div>\n </div>\n </div>\n </ng-template>\n\n <ng-template #addressBookLoading>\n <div class=\"container\">\n <div class=\"row\">\n <div class=\"col-12 text-center my-2\">\n <div class=\"d-flex flex-column jusitfy-content-center align-items-center\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n </div>\n </div>\n </div>\n </ng-template>\n</ng-container>\n\n<ng-template #pleaseLogin>\n <div class=\"container\">\n <p>Por favor <a [routerLink]=\"['/auth/login']\"> Inicie Sesi\u00F3n</a></p>\n </div>\n</ng-template>\n",
9087
+ template: "<ng-container\n *ngIf=\"this.channelConfig.channelType != 'b2b' || (this.channelConfig.channelType == 'b2b' && authService.isAuthenticated()); else pleaseLogin\">\n <ng-container\n *ngIf=\"this.addressingService.modeSelectAddress == 'LOAD_ADDRESS_AND_SELECTION' && this.authService.isAuthenticated() && this.addressBook != null && !compactAddressView\">\n <div class=\"container card p-4 mb-3\">\n <div class=\"row justify-content-center\">\n <div class=\"col-12 col-md-10 col-lg-8 text-center\">\n <div class=\"btn-group btn-group-toggle\" data-bs-toggle=\"buttons\">\n <label [class]=\"'btn btn-outline-secondary ' + (!getMode() ? 'active' : '')\">\n <input type=\"radio\" name=\"options\" id=\"option1\" autocomplete=\"off\" checked\n (change)=\"setMode('seleccion')\"> {{'select-address' | translate | titlecase}}\n </label>\n\n <label [class]=\"'btn btn-outline-secondary ' + (getMode() ? 'active' : '')\"\n *ngIf=\"!getParamByChannelAndLanguage('btn_new_address_') && !customerHasCustomerTaxRate\">\n <input type=\"radio\" name=\"options\" id=\"option2\" autocomplete=\"off\"\n (change)=\"setMode('carga')\">\n {{ 'new-address' | translate | titlecase}}\n </label>\n\n <label [class]=\"'btn btn-outline-secondary ' + (selectAddress ? 'active' : '')\"\n *ngIf=\"getParamByChannelAndLanguage('btn_new_address_') as param\">\n <input type=\"radio\" name=\"options\" id=\"option2\" autocomplete=\"off\"\n (change)=\"setMode('carga')\">\n {{ param.value}}\n </label>\n\n </div>\n </div>\n </div>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"compactAddressView || getMode(); else addressSelection\">\n <div *ngIf=\"!require_login; else requireLoginView\">\n <div class=\"single-step-surface\">\n <div class=\"single-step-overlay\" *ngIf=\"compactAddressView && loading\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n\n <ng-container *ngIf=\"this.addressingService.modeSelectAddress == 'ONLY_LOAD_ADDRESS'\">\n <div class=\"checkout-title my-2\">\n <h3>{{'billing-details'|translate}}</h3>\n </div>\n </ng-container>\n\n <app-dataform-ec-single\n *ngIf=\"compactAddressView\"\n [showToggle]=\"this.addressingService.modeSelectAddress == 'LOAD_ADDRESS_AND_SELECTION' && this.authService.isAuthenticated() && this.addressBook != null\"\n [isNewAddressMode]=\"getMode()\"\n [showDefaultNewAddressButton]=\"!getParamByChannelAndLanguage('btn_new_address_') && !customerHasCustomerTaxRate\"\n [customNewAddressLabel]=\"getParamByChannelAndLanguage('btn_new_address_')?.value\"\n [isTemporarySelected]=\"selectedAddress?.isTemporary\"\n [selectedAddressLabel]=\"getSelectedAddressLabel()\"\n [addressDropdownOpen]=\"addressDropdownOpen\"\n [addressSearch]=\"addressSearch\"\n [addressOptions]=\"getFilteredAddressOptions()\"\n [showSelectBlock]=\"!getMode()\"\n [hasSelectedAddress]=\"hasSelectedAddress()\"\n (modeChange)=\"setMode($event)\"\n (toggleDropdown)=\"toggleAddressDropdown()\"\n (closeDropdown)=\"addressDropdownOpen = false\"\n (selectAddress)=\"selectAddressFromDropdown($event)\"\n (addressSearchChange)=\"addressSearch = $event\">\n </app-dataform-ec-single>\n\n <form (submit)=\"verifyValidate(false,this.cartService.items)\"\n [class.compact-address-form]=\"compactAddressView\"\n *ngIf=\"!compactAddressView || getMode() || hasSelectedAddress()\">\n <div class=\"row mt-df\"><!--Fila 1-->\n <div class=\"form-group col-12 col-md-6\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.firstName.enabled\">\n <label class=\"field-label\" for=\"shipping-firstName\">{{'first-name'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.firstName.required\"\n class=\"required\">*</span></label>\n <input id=\"shipping-firstName\" class=\"form-control\" type=\"text\" name=\"firstName\"\n [formControl]=\"checkoutForm.controls['firstName']\" value=\"\" placeholder=\"\"\n autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.firstName.dirty || checkoutForm.controls.firstName.touched) && checkoutForm.controls.firstName.errors?.required\">\n <span class=\"text-danger\">{{'first-name-help1'|translate}}</span>\n\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.firstName.dirty || checkoutForm.controls.firstName.touched) && checkoutForm.controls.firstName.errors?.pattern\">\n <span class=\"text-danger\">\n {{'first-name-help2'|translate}}\n </span>\n </div>\n </div>\n <div class=\"form-group col-12 col-md-6\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.lastName.enabled\">\n <label class=\"field-label\" for=\"shipping-lastName\">{{'last-name'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.lastName.required\"\n class=\"required\">*</span></label>\n <input id=\"shipping-lastName\" class=\"form-control\" type=\"text\" name=\"lastName\"\n [formControl]=\"checkoutForm.controls['lastName']\" value=\"\" placeholder=\"\"\n autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.lastName.dirty || checkoutForm.controls.lastName.touched) && checkoutForm.controls.lastName.errors?.required\">\n <span class=\"text-danger\">{{'last-name-help1'|translate}}</span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.lastName.dirty || checkoutForm.controls.lastName.touched) && checkoutForm.controls.lastName.errors?.pattern\">\n <span class=\"text-danger\">{{'last-name-help2'|translate}}</span>\n </div>\n </div>\n </div>\n <div class=\"row mt-df\"><!--Fila 2-->\n <div class=\"form-group col-12 col-md-6\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.phoneNumber.enabled\">\n <label class=\"field-label\" for=\"shipping-phoneNumber\">{{'phone'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.phoneNumber.required\"\n class=\"required\">*</span></label>\n <input id=\"shipping-phoneNumber\" (change)=\"onInputChange()\" class=\"form-control\" type=\"tel\" name=\"phoneNumber\"\n [formControl]=\"checkoutForm.controls['phoneNumber']\" value=\"\" placeholder=\"\"\n autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.phoneNumber.dirty || checkoutForm.controls.phoneNumber.touched) && checkoutForm.controls.phoneNumber.errors?.required\">\n <span class=\"text-danger\">\n\n {{'phone-help1'|translate}}\n </span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.phoneNumber.dirty || checkoutForm.controls.phoneNumber.touched) && checkoutForm.controls.phoneNumber.errors?.pattern\">\n <span class=\"text-danger\">\n {{'phone-help2'|translate}}\n </span>\n </div>\n </div>\n <div class=\"form-group col-12 col-md-6\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.email.enabled\">\n <label class=\"field-label\" for=\"shipping-email\">{{'email-address'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.email.required\"\n class=\"required\">*</span></label>\n <input id=\"shipping-email\" (change)=\"onInputChange()\" class=\"form-control\" type=\"email\" name=\"email\"\n [formControl]=\"checkoutForm.controls['email']\" value=\"\" placeholder=\"\" autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.email.dirty || checkoutForm.controls.email.touched) && checkoutForm.controls.email.errors?.required\">\n <span class=\"text-danger\">\n {{'email-address-help1'|translate}}\n </span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.email.dirty || checkoutForm.controls.email.touched) && checkoutForm.controls.email.errors?.email\">\n <span class=\"text-danger\">\n {{'email-address-help2'|translate}}\n </span>\n </div>\n </div>\n </div>\n\n <div class=\"row mt-df\"><!--Fila 3-->\n <ng-container *ngIf=\"this.addressingService.getTypeForm().viewForms.countryCode.enabled\">\n <div class=\"form-group col-12 col-md-4\" *ngIf=\"(countries$ | async) as countries\">\n <label class=\"field-label\" for=\"shipping-countryCode\">{{'country'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.countryCode.required\"\n class=\"required\">*</span></label>\n <select id=\"shipping-countryCode\" class=\"form-select\" name=\"countryCode\"\n [formControl]=\"checkoutForm.controls['countryCode']\"\n (change)=\"onCountrySelected($event.target.value)\">\n <!-- <option selected [value]=\"countries[0].code\">{{ 'choose-country' | translate }}</option> -->\n <option *ngFor=\"let country of countries\" [value]=\"country.code\">{{ country.name }}\n </option>\n </select>\n <div *ngIf=\"(checkoutForm.controls.countryCode.dirty || checkoutForm.controls.countryCode.touched) && checkoutForm.controls.countryCode.errors?.required\"\n class=\"text text-danger\">\n {{'country-help'|translate}}\n </div>\n </div>\n </ng-container>\n <ng-container *ngIf=\"this.addressingService.getTypeForm().viewForms.provinceCode.enabled\">\n <div class=\"form-group col-12 col-md-4\" *ngIf=\"(provinces$ | async) as provinces\">\n <label class=\"field-label\" for=\"shipping-provinceCode\">{{'state'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.provinceCode.required\"\n class=\"required\">*</span></label>\n <select id=\"shipping-provinceCode\" class=\"form-select\" name=\"provinceCode\"\n (change)=\"onProvincesSelected($event.target.value)\"\n [formControl]=\"checkoutForm.controls['provinceCode']\">\n <!-- <option selected [value]=\"null\">{{ 'choose-province' | translate }}</option>\n -->\n <option *ngFor=\"let province of provinces\" [value]=\"province.code\">{{ province.name }}\n </option>\n </select>\n <div *ngIf=\"(checkoutForm.controls.provinceCode.dirty || checkoutForm.controls.provinceCode.touched) && checkoutForm.controls.provinceCode.errors?.required\"\n class=\"text text-danger\">\n {{'state-help'|translate}}\n </div>\n </div>\n </ng-container>\n <div class=\"form-group col-12 col-md-4\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.city.enabled\">\n <label class=\"field-label\" for=\"shipping-city\">{{'town-city'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.city.required\"\n class=\"required\">*</span></label>\n <input id=\"shipping-city\" (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"city\"\n [formControl]=\"checkoutForm.controls['city']\" value=\"\" placeholder=\"\" autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.city.dirty || checkoutForm.controls.city.touched) && checkoutForm.controls.city.errors?.required\">\n <span class=\"text-danger\">{{'town-city-help'|translate}}</span>\n </div>\n </div>\n </div>\n\n <div class=\"row mt-df\"><!--Fila 4-->\n <div class=\"form-group col-12 col-md-8\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.street.enabled\">\n <label class=\"field-label\" for=\"shipping-street\">{{'address'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.street.required\"\n class=\"required\">*</span>\n <span class=\"char-count\">\n {{ 50 - (checkoutForm.controls['street'].value?.length || 0) }}\n {{'remainingCharacters'|translate}}\n </span>\n </label>\n <input id=\"shipping-street\" (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"street\"\n [formControl]=\"checkoutForm.controls['street']\" value=\"\" placeholder=\"\" autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.street.dirty || checkoutForm.controls.street.touched) && checkoutForm.controls.street.errors?.required\">\n <span class=\"text-danger\">{{'address-help1'|translate}}</span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.street.dirty || checkoutForm.controls.street.touched) && checkoutForm.controls.street.errors?.maxlength\">\n <span class=\"text-danger\">{{'address-help2'|translate}}</span>\n </div>\n </div>\n\n <!-- form direcci\u00F3n -->\n <div class=\"form-group col-12 col-md-4\"\n *ngIf=\"isPostalCodeFieldVisible()\">\n <label class=\"field-label\" for=\"shipping-postcode\">{{'postal-code'|translate}}<span\n *ngIf=\"isPostalCodeFieldRequired()\"\n class=\"required\">*</span></label>\n <input id=\"shipping-postcode\" (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"postcode\"\n [formControl]=\"checkoutForm.controls['postcode']\" value=\"\" placeholder=\"\"\n autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.postcode.dirty || checkoutForm.controls.postcode.touched) && checkoutForm.controls.postcode.errors?.required\">\n <span class=\"text-danger\">{{'postal-code-help'|translate}}</span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.postcode.dirty || checkoutForm.controls.postcode.touched) && checkoutForm.controls.postcode.errors?.pattern\">\n <span class=\"text-danger\"> {{postalCodeErrorMessage | translate}} </span>\n </div>\n </div>\n </div>\n\n <div class=\"row mt-df\"><!--Fila 5-->\n <ng-container *ngIf=\"compactAddressView; else documentRowFull\">\n <ng-container *ngIf=\"this.addressingService.getTypeForm().viewForms.documentType.enabled; else documentNumberOnly\">\n <div class=\"form-group col-12\" *ngIf=\"(documentTypes$ | async) as documentTypes\">\n <label class=\"field-label\">{{'document-type-number'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.documentNumber.required\"\n class=\"required\">*</span></label>\n <div class=\"input-group document-input-group\">\n <button class=\"btn btn-outline-secondary dropdown-toggle\" type=\"button\"\n (click)=\"toggleDocumentTypeDropdown($event)\"\n [attr.aria-expanded]=\"documentTypeDropdownOpen\"\n [disabled]=\"checkoutForm.controls['documentType']?.disabled || formReadonly\">\n {{ getSelectedDocumentTypeLabel(documentTypes) || ('document-type' | translate) }}\n </button>\n <div class=\"dropdown-menu\" [class.show]=\"documentTypeDropdownOpen\">\n <button class=\"dropdown-item\" type=\"button\"\n *ngFor=\"let item of documentTypes\"\n (click)=\"selectDocumentType(item.code)\">\n {{ item.name }}\n </button>\n </div>\n <label class=\"visually-hidden\" for=\"shipping-documentNumber\">{{'document-number'|translate}}</label>\n <input id=\"shipping-documentNumber\" (change)=\"onInputChange()\" class=\"form-control\" [type]=\"'text'\"\n name=\"documentNumber\"\n [formControl]=\"checkoutForm.controls['documentNumber']\"\n placeholder=\"\" autocomplete=\"off\">\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.documentType.dirty || checkoutForm.controls.documentType.touched) && checkoutForm.controls.documentType.errors?.required\">\n <span class=\"text-danger\">\n {{'type-document-help'|translate}}\n </span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.documentNumber.dirty || checkoutForm.controls.documentNumber.touched) && checkoutForm.controls.documentNumber.errors?.required\">\n <span class=\"text-danger\">{{ 'document-number-help' | translate }}</span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.documentNumber.dirty || checkoutForm.controls.documentNumber.touched) && checkoutForm.controls.documentNumber.errors?.pattern\">\n <span class=\"text-danger\">{{ documentErrorMessage | translate }}</span>\n </div>\n </div>\n </ng-container>\n <ng-template #documentNumberOnly>\n <div class=\"form-group col-12\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.documentNumber.enabled\">\n <label class=\"field-label\" for=\"shipping-documentNumberOnly\">{{'document-number'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.documentNumber.required\"\n class=\"required\">*</span></label>\n <input id=\"shipping-documentNumberOnly\" (change)=\"onInputChange()\" class=\"form-control\" [type]=\"'text'\"\n name=\"documentNumber\"\n [formControl]=\"checkoutForm.controls['documentNumber']\"\n placeholder=\"\" autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.documentNumber.dirty || checkoutForm.controls.documentNumber.touched) && checkoutForm.controls.documentNumber.errors?.required\">\n <span class=\"text-danger\">{{ 'document-number-help' | translate }}</span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.documentNumber.dirty || checkoutForm.controls.documentNumber.touched) && checkoutForm.controls.documentNumber.errors?.pattern\">\n <span class=\"text-danger\">{{ documentErrorMessage | translate }}</span>\n </div>\n </div>\n </ng-template>\n </ng-container>\n <ng-template #documentRowFull>\n <ng-container *ngIf=\"this.addressingService.getTypeForm().viewForms.documentType.enabled\">\n <div class=\"form-group col-12 col-md-4\" *ngIf=\"(documentTypes$ | async) as documentTypes\">\n <label class=\"field-label\" for=\"shipping-documentType\">{{'document-type'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.documentType.required\"\n class=\"required\">*</span></label>\n <select id=\"shipping-documentType\" name=\"documentType\" class=\"form-select\"\n (change)=\"onDocumentTypesSelected($event.target.value)\"\n [formControl]=\"checkoutForm.controls['documentType']\">\n <option *ngFor=\"let item of documentTypes\" [value]=\"item.code\">{{item.name}}</option>\n </select>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.documentType.dirty || checkoutForm.controls.documentType.touched) && checkoutForm.controls.documentType.errors?.required\">\n <span class=\"text-danger\">\n {{'type-document-help'|translate}}\n </span>\n </div>\n </div>\n </ng-container>\n <div class=\"form-group col-12 col-md-4\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.documentNumber.enabled\">\n <label class=\"field-label\" for=\"shipping-documentNumberFull\">{{'document-number'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.documentNumber.required\"\n class=\"required\">*</span></label>\n <input id=\"shipping-documentNumberFull\" (change)=\"onInputChange()\" class=\"form-control\" [type]=\"'text'\" name=\"documentNumber\"\n [formControl]=\"checkoutForm.controls['documentNumber']\" placeholder=\"\" autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.documentNumber.dirty || checkoutForm.controls.documentNumber.touched) && checkoutForm.controls.documentNumber.errors?.required\">\n <span class=\"text-danger\">{{ 'document-number-help' | translate }}</span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.documentNumber.dirty || checkoutForm.controls.documentNumber.touched) && checkoutForm.controls.documentNumber.errors?.pattern\">\n <span class=\"text-danger\">{{ documentErrorMessage | translate }}</span>\n </div>\n </div>\n </ng-template>\n </div>\n\n <div class=\"row mt-df\" *ngIf=\"this.consts.getChannel() != 'mdj-empresa-a' && !(compactAddressView && !getMode())\"><!--Fila 6-->\n <div class=\"form-group col-12 col-md-12\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.notes.enabled\">\n\n <label class=\"field-label\" for=\"shipping-notes\" *ngIf=\"!getLabelNotesParam()\">{{'notes'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.notes.required\"\n class=\"required\">*</span></label>\n <label class=\"field-label\" *ngIf=\"getLabelNotesParam() as labelnotes\" [attr.for]=\"'shipping-notes'\"\n [innerHTML]=\"labelnotes.value\"><span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.notes.required\"\n class=\"required\">*</span></label>\n\n <!-- <label class=\"field-label\">{{'notes'|translate}}<span *ngIf=\"this.addressingService.getTypeForm().viewForms.notes.required\" class=\"required\">*</span></label> -->\n <textarea id=\"shipping-notes\" (change)=\"onInputChange()\" class=\"form-control notes-textarea\" name=\"notes\"\n [formControl]=\"checkoutForm.controls['notes']\" rows=\"3\" placeholder=\"\"\n autocomplete=\"off\"></textarea>\n </div>\n </div>\n <div class=\"row mt-df address-meta-row\" *ngIf=\"!(compactAddressView && !getMode())\"><!--Fila 7-->\n <div class=\"form-group col-12 col-md-12\">\n <label for=\"formFact\"><b>{{ 'same-billing-address' | translate }}</b> <input type=\"checkbox\"\n class=\"ms-2\" [checked]=\"viewDataFacturacion\" (change)=\"showFormFacturacion()\"\n id=\"formFact\"></label>\n </div>\n </div>\n <div class=\"row mt-df address-required-row\" *ngIf=\"!(compactAddressView && !getMode())\">\n <div class=\"col-12\">\n <span class=\"required-hint-text\">\n <span class=\"required-hint-asterisk\">*</span> {{ 'required-fields' | translate }}\n </span>\n </div>\n </div>\n <div class=\"row mt-df address-terms-row\" *ngIf=\"!(compactAddressView && !getMode())\">\n <div class=\"form-group col-12 col-md-12\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.terms.enabled\">\n <label class=\"terms-label\" for=\"\">\n <input class=\"me-2\" name=\"terms\" [formControl]=\"checkoutForm.controls['terms']\"\n type=\"checkbox\" required (change)=\"onInputChange()\" />\n <span>{{ 'accept-terms-prefix' | translate }}</span>\n <button type=\"button\" class=\"terms-link\" (click)=\"openModal(template)\">\n {{ 'terms-and-conditions' | translate }}\n </button>\n <span *ngIf=\"this.addressingService.getTypeForm().viewForms.terms.required\"\n class=\"required\">*</span>\n </label>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutForm.controls.terms.dirty || checkoutForm.controls.terms.touched) && !checkoutForm.controls.terms.value\">\n <span class=\"text-danger\">{{ 'must-accept-terms' | translate }}</span>\n </div>\n </div>\n </div>\n <div class=\"row\" *ngIf=\"viewDataFacturacion ; else datosFormFacturacion\"> </div>\n <div class=\"checkout-btn-unique text-end\" *ngIf=\"!formReadonly\">\n <button type=\"submit\" [disabled]=\"!validado\" class=\"btn valid-btn mt-2\">\n {{ getPrimaryActionLabel() | translate }}</button>\n\n\n </div>\n <div *ngIf=\"loading && !compactAddressView\" class=\"d-flex flex-column jusitfy-content-center align-items-center\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n </form>\n <ng-container *ngIf=\"compactAddressView && !getMode()\">\n <div class=\"w-100\" *ngIf=\"this.consts.getChannel() != 'mdj-empresa-a'\">\n <ng-container *ngIf=\"this.addressingService.getTypeForm().viewForms.notes.enabled\">\n <div class=\"row mt-df\">\n <div class=\"form-group col-12 col-md-12\">\n <label class=\"field-label\" for=\"selection-notes\" *ngIf=\"!getLabelNotesParam()\">{{'notes'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.notes.required\"\n class=\"required\">*</span></label>\n <label class=\"field-label\" *ngIf=\"getLabelNotesParam() as labelnotes\" [attr.for]=\"'selection-notes'\"\n [innerHTML]=\"labelnotes.value\"></label>\n <textarea id=\"selection-notes\" (change)=\"onSelectionNotesChange()\" class=\"form-control notes-textarea\"\n name=\"notes\" [(ngModel)]=\"this.addressBookSelected.notes\" #ctrl=\"ngModel\" rows=\"3\"\n placeholder=\"\" autocomplete=\"off\" [disabled]=\"selectedAddress?.isTemporary\"></textarea>\n <div class=\"invalid-feedback d-block\" *ngIf=\"\n addressingService.getTypeForm().viewForms.notes.required\n && (!addressBookSelected.notes || !addressBookSelected.notes.trim())\n \">\n {{ 'required-field' | translate }}\n </div>\n </div>\n </div>\n </ng-container>\n </div>\n </ng-container>\n </div>\n </div>\n </ng-container>\n\n <ng-template #addressSelection>\n\n <ng-container *ngIf=\"this.addressingService.modeSelectAddress == 'ONLY_ADDRESS_SELECTION'\">\n <div class=\"checkout-title my-2\">\n <h3>{{'address-selection'|translate}}</h3>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"this.addressBook; else addressBookNotResult\">\n\n <ng-container *ngIf=\"this.addressBook?.length ;else addressBookLoading\">\n <div class=\"container\">\n <div class=\"row\">\n <div class=\"col-sm-6 col-12 my-3\" *ngFor=\"let item of addressBook; let i = index\">\n <ng-container *ngIf=\"compactAddressView; else addressCardFull\">\n <div class=\"address-card-compact\" [class.is-selected]=\"item.selected\"\n (click)=\"setSelectAddress(item); onInputChange()\">\n <label class=\"address-card-radio\">\n <input class=\"form-check-input input-size-lg\" type=\"radio\" [name]=\"'n-'+i\"\n [id]=\"i\" [checked]=\"item.selected\" (click)=\"setSelectAddress(item)\"\n (change)=\"onInputChange()\">\n </label>\n <div class=\"address-card-content\">\n <div class=\"address-card-main\">\n <div class=\"address-card-title\">{{ item.street }}</div>\n <div class=\"address-card-sub\">\n {{ item.city }} - {{ getProvince(item.provinceCode) }} - {{ getCountry(item.countryCode) }}\n </div>\n <div class=\"address-card-sub\"\n *ngIf=\"shouldShowPostalCodeByCountryCode(item.countryCode)\">\n {{ 'postal-code' | translate }} {{ item.postcode }}\n </div>\n </div>\n <details class=\"address-card-details\" (click)=\"$event.stopPropagation()\">\n <summary>{{ 'details' | translate }}</summary>\n <div class=\"address-card-details-body\">\n <div class=\"address-card-detail-title\">{{ 'address-contact' | translate }}</div>\n <div class=\"address-card-detail-line\">\n <strong>{{ 'first-name' | translate }}</strong> {{ item.addressContact.firstName }}\n </div>\n <div class=\"address-card-detail-line\">\n <strong>{{ 'last-name' | translate }}</strong> {{ item.addressContact.lastName }}\n </div>\n <div class=\"address-card-detail-line\">\n <strong>{{ 'document-type' | translate }}</strong> {{ getDocumentType(item.addressContact.documentType) }}\n </div>\n <div class=\"address-card-detail-line\">\n <strong>{{ 'document-number' | translate }}</strong> {{ item.addressContact.documentNumber }}\n </div>\n <div class=\"address-card-detail-line\">\n <strong>{{ 'email-address' | translate }}</strong> {{ item.addressContact.email }}\n </div>\n </div>\n </details>\n </div>\n </div>\n </ng-container>\n <ng-template #addressCardFull>\n <div class=\"card p-3\">\n <input class=\"ms-1 mt-3 form-check-input input-size-lg\" type=\"radio\" [name]=\"'n-'+i\"\n [id]=\"i\" [checked]=\"item.selected\" (click)=\"setSelectAddress(item)\"\n (change)=\"onInputChange()\">\n <div class=\"ms-5\">\n <h4 class=\"card-title\">\n <strong>{{'address'|translate}}</strong><br>\n <span class=\"text-uppercase h3\">{{item.street}}</span>\n </h4>\n <div class=\"row\">\n <h5 class=\"card-subtitle mb-2 text-muted col-auto\">\n <strong>{{'country'|translate}}</strong> {{getCountry(item.countryCode)}}\n </h5>\n <h5 class=\"card-subtitle mb-2 text-muted col-auto\">\n <strong>{{'state'|translate}}</strong> {{getProvince(item.provinceCode)}}\n </h5>\n <h5 class=\"card-subtitle mb-2 text-muted col-auto\">\n <strong>{{'town-city'|translate}}</strong> {{item.city}}\n </h5>\n <h5 class=\"card-subtitle mb-2 text-muted col-auto\"\n *ngIf=\"shouldShowPostalCodeByCountryCode(item.countryCode)\">\n <strong>{{'postal-code'|translate}}</strong> {{item.postcode}}\n </h5>\n </div>\n <div class=\"row px-3\">\n <div class=\"card p-2 bg-light w-100\">\n <div class=\"card-body\">\n <h5 class=\"card-title\">{{'address-contact'|translate}}</h5>\n <h6 class=\"card-subtitle mb-2 text-muted\">\n <strong>{{'first-name'|translate}}</strong>\n {{item.addressContact.firstName}}\n </h6>\n <h6 class=\"card-subtitle mb-2 text-muted\">\n <strong>{{'last-name'|translate}}</strong>\n {{item.addressContact.lastName}}\n </h6>\n <h6 class=\"card-subtitle mb-2 text-muted\">\n <strong>{{'document-type'|translate}}</strong>\n {{getDocumentType(item.addressContact.documentType)}}\n </h6>\n <h6 class=\"card-subtitle mb-2 text-muted\">\n <strong>{{'document-number'|translate}}</strong>\n {{item.addressContact.documentNumber}}\n </h6>\n <h6 class=\"card-subtitle mb-2 text-muted\">\n <strong>{{'email-address'|translate}}</strong>\n {{item.addressContact.email}}\n </h6>\n </div>\n </div>\n </div>\n </div>\n </div>\n </ng-template>\n </div>\n\n </div>\n <!-- Se hardcodea el canal de mundo del juguete empresa A ya que se necesita con urgencia, se sustituira por un campo que llegara de backend. -->\n <div class=\"w-100\" *ngIf=\"this.consts.getChannel() != 'mdj-empresa-a'\">\n <ng-container *ngIf=\"this.addressingService.getTypeForm().viewForms.notes.enabled\">\n <div class=\"row mt-df\">\n <div class=\"form-group col-12 col-md-12\">\n <label class=\"field-label\" for=\"selection-notes\" *ngIf=\"!getLabelNotesParam()\">{{'notes'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.notes.required\"\n class=\"required\">*</span></label>\n <label class=\"field-label\" *ngIf=\"getLabelNotesParam() as labelnotes\" [attr.for]=\"'selection-notes'\"\n [innerHTML]=\"labelnotes.value\"></label>\n <input id=\"selection-notes\" (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"notes\"\n [(ngModel)]=\"this.addressBookSelected.notes\" #ctrl=\"ngModel\" value=\"\"\n placeholder=\"\" autocomplete=\"off\">\n <div class=\"invalid-feedback d-block\" *ngIf=\"\n addressingService.getTypeForm().viewForms.notes.required\n && (!addressBookSelected.notes || !addressBookSelected.notes.trim())\n \">\n {{ 'required-field' | translate }}\n </div>\n </div>\n </div>\n </ng-container>\n </div>\n <div class=\"row mt-df\"><!--Direcci\u00F3n de facturaci\u00F3n-->\n <div class=\"form-group col-12 col-md-12\">\n <label for=\"formFactSelection\"><b>{{ 'same-billing-address' | translate }}</b> <input type=\"checkbox\"\n class=\"ms-2\" [checked]=\"viewDataFacturacion\" (change)=\"showFormFacturacion()\"\n id=\"formFactSelection\"></label>\n </div>\n </div>\n <ng-container *ngIf=\"!viewDataFacturacion\">\n <!-- Selector de modo para direcci\u00F3n de facturaci\u00F3n -->\n <div class=\"container card p-4 mb-3\">\n <div class=\"row justify-content-center\">\n <div class=\"col-12 col-md-10 col-lg-8 text-center\">\n <div class=\"btn-group btn-group-toggle\" data-bs-toggle=\"buttons\">\n <label [class]=\"'btn btn-outline-secondary ' + (!getModeFacturacion() ? 'active' : '')\">\n <input type=\"radio\" name=\"billingOptions\" id=\"billingOption1\" autocomplete=\"off\"\n [checked]=\"!getModeFacturacion()\" (change)=\"setModeFacturacion('seleccion')\">\n {{'select-address' | translate | titlecase}}\n </label>\n <label [class]=\"'btn btn-outline-secondary ' + (getModeFacturacion() ? 'active' : '')\">\n <input type=\"radio\" name=\"billingOptions\" id=\"billingOption2\" autocomplete=\"off\"\n [checked]=\"getModeFacturacion()\" (change)=\"setModeFacturacion('carga')\">\n {{ 'new-address' | translate | titlecase}}\n </label>\n </div>\n </div>\n </div>\n </div>\n <!-- Formulario de nueva direcci\u00F3n de facturaci\u00F3n -->\n <ng-container *ngIf=\"getModeFacturacion()\">\n <ng-container *ngTemplateOutlet=\"datosFormFacturacion\"></ng-container>\n </ng-container>\n <!-- Selecci\u00F3n de direcci\u00F3n de facturaci\u00F3n del address book -->\n <ng-container *ngIf=\"!getModeFacturacion()\">\n <div class=\"container\">\n <div class=\"row\">\n <div class=\"col-sm-6 col-12 my-3\" *ngFor=\"let item of addressBook; let i = index\">\n <div class=\"card p-3\">\n <input class=\"ms-1 mt-3 form-check-input input-size-lg\" type=\"radio\" [name]=\"'billing-'+i\"\n [id]=\"'billing-'+i\" [checked]=\"item.selectedFacturacion\"\n (click)=\"setSelectAddressFacturacion(item)\" (change)=\"onInputChange()\">\n <div class=\"ms-5\">\n <h4 class=\"card-title\">\n <strong>{{'address'|translate}}</strong><br>\n <span class=\"text-uppercase h3\">{{item.street}}</span>\n </h4>\n <div class=\"row\">\n <h5 class=\"card-subtitle mb-2 text-muted col-auto\">\n <strong>{{'country'|translate}}</strong> {{getCountry(item.countryCode)}}\n </h5>\n <h5 class=\"card-subtitle mb-2 text-muted col-auto\">\n <strong>{{'state'|translate}}</strong> {{getProvince(item.provinceCode)}}\n </h5>\n <h5 class=\"card-subtitle mb-2 text-muted col-auto\">\n <strong>{{'town-city'|translate}}</strong> {{item.city}}\n </h5>\n <h5 class=\"card-subtitle mb-2 text-muted col-auto\"\n *ngIf=\"shouldShowPostalCodeByCountryCode(item.countryCode)\">\n <strong>{{'postal-code'|translate}}</strong> {{item.postcode}}\n </h5>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </ng-container>\n </ng-container>\n <div class=\"checkout-btn-unique text-end\">\n <button *ngIf=\"!viewDataFacturacion && !getModeFacturacion()\"\n (click)=\"onSelectAddressFacturacion(this.cartService.items)\" class=\"btn valid-btn mt-2\"\n [disabled]=\"!addressBookSelectedFacturacion.id\">\n {{ getPrimaryActionLabel() | translate }}\n </button>\n <button *ngIf=\"!viewDataFacturacion && getModeFacturacion()\"\n (click)=\"onSubmitNewBillingAddress(this.cartService.items)\" class=\"btn valid-btn mt-2\"\n [disabled]=\"checkoutFormFacturacion.invalid\">\n {{ getPrimaryActionLabel() | translate }}\n </button>\n <button *ngIf=\"viewDataFacturacion\"\n (click)=\"onSelectAddress(this.cartService.items)\" class=\"btn valid-btn mt-2\">\n {{ getPrimaryActionLabel() | translate }}\n </button>\n </div>\n <div *ngIf=\"loading\" class=\"d-flex flex-column jusitfy-content-center align-items-center\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n </div>\n </ng-container>\n </ng-container>\n\n </ng-template>\n\n\n <ng-template #requireLoginView>\n <div id=\"loginCheckout\">\n <div class=\"d-flex flex-column jusitfy-content-center align-items-center\" *ngIf=\"require_login\">\n <div class=\"col-12\">\n <app-login-form-ec (ready)=\"verifyValidate($event)\" [redirect]=\"false\" [title]=\"'need-login'\">\n </app-login-form-ec>\n </div>\n </div>\n </div>\n </ng-template>\n\n\n\n <ng-template #datosFormFacturacion>\n <div class=\"container-fluid px-0 px-md-2\">\n <div class=\"row\">\n <div class=\"col-12\">\n <div class=\"card \">\n <div class=\"card-header text-dark text-center\">\n <h3>{{'billing-data'|translate}}</h3>\n </div>\n <div class=\"card-body\">\n <form (submit)=\"handleBillingFormSubmit($event)\">\n <div class=\"row mt-df\">\n <!--Fila 1-->\n <div class=\"form-group col-12 col-md-6\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.firstName.enabled\">\n <label class=\"field-label\" for=\"billing-firstName\">{{'first-name'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.firstName.required\"\n class=\"required\">*</span></label>\n <input id=\"billing-firstName\" class=\"form-control\" type=\"text\" name=\"firstName\"\n [formControl]=\"checkoutFormFacturacion.controls['firstName']\" value=\"\"\n placeholder=\"\" autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.firstName.dirty || checkoutFormFacturacion.controls.firstName.touched) && checkoutFormFacturacion.controls.firstName.errors?.required\">\n <span class=\"text-danger\">{{'first-name-help1'|translate}}</span>\n\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.firstName.dirty || checkoutFormFacturacion.controls.firstName.touched) && checkoutFormFacturacion.controls.firstName.errors?.pattern\">\n <span class=\"text-danger\">\n {{'first-name-help2'|translate}}\n </span>\n </div>\n </div>\n <div class=\"form-group col-12 col-md-6\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.lastName.enabled\">\n <label class=\"field-label\" for=\"billing-lastName\">{{'last-name'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.lastName.required\"\n class=\"required\">*</span></label>\n <input id=\"billing-lastName\" class=\"form-control\" type=\"text\" name=\"lastName\"\n [formControl]=\"checkoutFormFacturacion.controls['lastName']\" value=\"\"\n placeholder=\"\" autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.lastName.dirty || checkoutFormFacturacion.controls.lastName.touched) && checkoutFormFacturacion.controls.lastName.errors?.required\">\n <span class=\"text-danger\">{{'last-name-help1'|translate}}</span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.lastName.dirty || checkoutFormFacturacion.controls.lastName.touched) && checkoutFormFacturacion.controls.lastName.errors?.pattern\">\n <span class=\"text-danger\">{{'last-name-help2'|translate}}</span>\n </div>\n </div>\n </div>\n <div class=\"row mt-df\">\n <!--Fila 2-->\n <div class=\"form-group col-12 col-md-6\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.phoneNumber.enabled\">\n <label class=\"field-label\" for=\"billing-phoneNumber\">{{'phone'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.phoneNumber.required\"\n class=\"required\">*</span></label>\n <input id=\"billing-phoneNumber\" (change)=\"onInputChange()\" class=\"form-control\" type=\"tel\"\n name=\"phoneNumber\"\n [formControl]=\"checkoutFormFacturacion.controls['phoneNumber']\" value=\"\"\n placeholder=\"\" autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.phoneNumber.dirty || checkoutFormFacturacion.controls.phoneNumber.touched) && checkoutFormFacturacion.controls.phoneNumber.errors?.required\">\n <span class=\"text-danger\">\n {{'phone-help1'|translate}}\n </span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.phoneNumber.dirty || checkoutFormFacturacion.controls.phoneNumber.touched) && checkoutFormFacturacion.controls.phoneNumber.errors?.pattern\">\n <span class=\"text-danger\">\n {{'phone-help2'|translate}}\n </span>\n </div>\n </div>\n <div class=\"form-group col-12 col-md-6\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.email.enabled\">\n <label class=\"field-label\" for=\"billing-email\">{{'email-address'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.email.required\"\n class=\"required\">*</span></label>\n <input id=\"billing-email\" (change)=\"onInputChange()\" class=\"form-control\" type=\"email\" name=\"email\"\n [formControl]=\"checkoutFormFacturacion.controls['email']\" value=\"\"\n placeholder=\"\" autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.email.dirty || checkoutFormFacturacion.controls.email.touched) && checkoutFormFacturacion.controls.email.errors?.required\">\n <span class=\"text-danger\">\n {{'email-address-help1'|translate}}\n </span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.email.dirty || checkoutFormFacturacion.controls.email.touched) && checkoutFormFacturacion.controls.email.errors?.email\">\n <span class=\"text-danger\">\n {{'email-address-help2'|translate}}\n </span>\n </div>\n </div>\n </div>\n <div class=\"row mt-df\">\n <!--Fila 3-->\n\n <ng-container\n *ngIf=\"this.addressingService.getTypeForm().viewForms.countryCode.enabled\">\n\n <div class=\"form-group col-12 col-md-4\"\n *ngIf=\"(countriesFacturacion$ | async) as countries\">\n <label class=\"field-label\" for=\"billing-countryCode\">{{'country'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.countryCode.required\"\n class=\"required\">*</span></label>\n <select id=\"billing-countryCode\" class=\"form-select\" name=\"countryCode\"\n [formControl]=\"checkoutFormFacturacion.controls['countryCode']\"\n (change)=\"onCountrySelectedFacturacion($event.target.value)\">\n <!-- <option selected [value]=\"null\">{{ 'choose-country' | translate }}</option> -->\n <option *ngFor=\"let country of countries\" [value]=\"country.code\">\n {{ country.name }}</option>\n </select>\n <div *ngIf=\"(checkoutFormFacturacion.controls.countryCode.dirty || checkoutFormFacturacion.controls.countryCode.touched) && checkoutFormFacturacion.controls.countryCode.errors?.required\"\n class=\"text text-danger\">\n {{'country-help'|translate}}\n </div>\n </div>\n </ng-container>\n <ng-container\n *ngIf=\"this.addressingService.getTypeForm().viewForms.provinceCode.enabled\">\n\n <div class=\"form-group col-12 col-md-4\"\n *ngIf=\"(provincesFacturacion$ | async) as provinces\">\n <label class=\"field-label\" for=\"billing-provinceCode\">{{'state'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.provinceCode.required\"\n class=\"required\">*</span></label>\n <select id=\"billing-provinceCode\" class=\"form-select\" name=\"provinceCode\"\n (change)=\"onProvincesSelectedFacturacion($event.target.value)\"\n [formControl]=\"checkoutFormFacturacion.controls['provinceCode']\">\n <!-- <option selected [value]=\"null\">{{ 'choose-province' | translate }}</option> -->\n <option *ngFor=\"let province of provinces\" [value]=\"province.code\">\n {{ province.name }}\n </option>\n </select>\n <div *ngIf=\"(checkoutFormFacturacion.controls.provinceCode.dirty || checkoutFormFacturacion.controls.provinceCode.touched) && checkoutFormFacturacion.controls.provinceCode.errors?.required\"\n class=\"text text-danger\">\n {{'state-help'|translate}}\n </div>\n </div>\n </ng-container>\n <div class=\"form-group col-12 col-md-4\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.city.enabled\">\n <label class=\"field-label\" for=\"billing-city\">{{'town-city'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.city.required\"\n class=\"required\">*</span></label>\n <input id=\"billing-city\" (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"city\"\n [formControl]=\"checkoutFormFacturacion.controls['city']\" value=\"\"\n placeholder=\"\" autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.city.dirty || checkoutFormFacturacion.controls.city.touched) && checkoutFormFacturacion.controls.city.errors?.required\">\n <span class=\"text-danger\">{{'town-city-help'|translate}}</span>\n </div>\n </div>\n </div>\n <div class=\"row mt-df\">\n <!--Fila 4-->\n <div class=\"form-group col-12 col-md-8\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.street.enabled\">\n <label class=\"field-label\" for=\"billing-street\">{{'address'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.street.required\"\n class=\"required\">*</span></label>\n <input id=\"billing-street\" (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"street\"\n [formControl]=\"checkoutFormFacturacion.controls['street']\" value=\"\"\n placeholder=\"\" autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.street.dirty || checkoutFormFacturacion.controls.street.touched) && checkoutFormFacturacion.controls.street.errors?.required\">\n <span class=\"text-danger\">{{'address-help1'|translate}}</span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.street.dirty || checkoutFormFacturacion.controls.street.touched) && checkoutFormFacturacion.controls.street.errors?.maxlength\">\n <span class=\"text-danger\">{{'address-help2'|translate}}</span>\n </div>\n </div>\n <div class=\"form-group col-12 col-md-4\"\n *ngIf=\"isPostalCodeFieldVisible(true)\">\n <label class=\"field-label\" for=\"billing-postcode\">{{'postal-code'|translate}}<span\n *ngIf=\"isPostalCodeFieldRequired(true)\"\n class=\"required\">*</span></label>\n <input id=\"billing-postcode\" (change)=\"onInputChange()\" class=\"form-control\" type=\"text\"\n name=\"postcode\" [formControl]=\"checkoutFormFacturacion.controls['postcode']\"\n value=\"\" placeholder=\"\" autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.postcode.dirty || checkoutFormFacturacion.controls.postcode.touched) && checkoutFormFacturacion.controls.postcode.errors?.required\">\n <span class=\"text-danger\">{{'postal-code-help'|translate}}</span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.postcode.dirty || checkoutFormFacturacion.controls.postcode.touched) && checkoutFormFacturacion.controls.postcode.errors?.pattern\">\n <span class=\"text-danger\">{{postalCodeErrorMessageFacturacion |translate}}</span>\n </div>\n </div>\n </div>\n <div class=\"row mt-df\">\n <!--Fila 5-->\n <ng-container *ngIf=\"compactAddressView; else documentRowFullFacturacion\">\n <ng-container *ngIf=\"this.addressingService.getTypeForm().viewForms.documentType.enabled; else documentNumberOnlyFacturacion\">\n <div class=\"form-group col-12\"\n *ngIf=\"(documentTypesFacturacion$ | async) as documentTypes\">\n <label class=\"field-label\">{{'document-type-number'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.documentNumber.required\"\n class=\"required\">*</span></label>\n <div class=\"input-group document-input-group\">\n <button class=\"btn btn-outline-secondary dropdown-toggle\" type=\"button\"\n (click)=\"toggleDocumentTypeDropdownFacturacion($event)\"\n [attr.aria-expanded]=\"documentTypeFactDropdownOpen\"\n [disabled]=\"checkoutFormFacturacion.controls['documentType']?.disabled || formReadonly\">\n {{ getSelectedDocumentTypeLabelFacturacion(documentTypes) || ('document-type' | translate) }}\n </button>\n <div class=\"dropdown-menu\" [class.show]=\"documentTypeFactDropdownOpen\">\n <button class=\"dropdown-item\" type=\"button\"\n *ngFor=\"let item of documentTypes\"\n (click)=\"selectDocumentTypeFacturacion(item.code)\">\n {{ item.name }}\n </button>\n </div>\n <label class=\"visually-hidden\" for=\"billing-documentNumber\">{{'document-number'|translate}}</label>\n <input id=\"billing-documentNumber\" (change)=\"onInputChange()\" class=\"form-control\" [type]=\"'text'\"\n name=\"documentNumber\"\n [formControl]=\"checkoutFormFacturacion.controls['documentNumber']\"\n placeholder=\"\" autocomplete=\"off\">\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.documentType.dirty || checkoutFormFacturacion.controls.documentType.touched) && checkoutFormFacturacion.controls.documentType.errors?.required\">\n <span class=\"text-danger\">\n {{'type-document-help'|translate}}\n </span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.documentNumber.dirty || checkoutFormFacturacion.controls.documentNumber.touched) && checkoutFormFacturacion.controls.documentNumber.errors?.required\">\n <span class=\"text-danger\">\n {{'document-number-help'|translate}}\n </span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.documentNumber.dirty || checkoutFormFacturacion.controls.documentNumber.touched) && checkoutFormFacturacion.controls.documentNumber.errors?.pattern\">\n <span class=\"text-danger\">{{ documentErrorMessage | translate }}</span>\n </div>\n </div>\n </ng-container>\n <ng-template #documentNumberOnlyFacturacion>\n <div class=\"form-group col-12\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.documentNumber.enabled\">\n <label class=\"field-label\" for=\"billing-documentNumberOnly\">{{'document-number'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.documentNumber.required\"\n class=\"required\">*</span></label>\n <input id=\"billing-documentNumberOnly\" (change)=\"onInputChange()\" class=\"form-control\" [type]=\"'text'\"\n name=\"documentNumber\"\n [formControl]=\"checkoutFormFacturacion.controls['documentNumber']\"\n placeholder=\"\" autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.documentNumber.dirty || checkoutFormFacturacion.controls.documentNumber.touched) && checkoutFormFacturacion.controls.documentNumber.errors?.required\">\n <span class=\"text-danger\">\n {{'document-number-help'|translate}}\n </span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.documentNumber.dirty || checkoutFormFacturacion.controls.documentNumber.touched) && checkoutFormFacturacion.controls.documentNumber.errors?.pattern\">\n <span class=\"text-danger\">{{ documentErrorMessage | translate }}</span>\n </div>\n </div>\n </ng-template>\n </ng-container>\n <ng-template #documentRowFullFacturacion>\n <ng-container\n *ngIf=\"this.addressingService.getTypeForm().viewForms.documentType.enabled\">\n <div class=\"form-group col-12 col-md-4\"\n *ngIf=\"(documentTypesFacturacion$ | async) as documentTypes\">\n <label class=\"field-label\" for=\"billing-documentType\">{{'document-type'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.documentType.required\"\n class=\"required\">*</span></label>\n <select id=\"billing-documentType\" name=\"documentType\" class=\"form-select\"\n [formControl]=\"checkoutFormFacturacion.controls['documentType']\"\n (change)=\"onDocumentTypesSelectedFacturacion($event.target.value)\">\n <option *ngFor=\"let item of documentTypes\" [value]=\"item.code\">\n {{item.name}}</option>\n </select>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.documentType.dirty || checkoutFormFacturacion.controls.documentType.touched) && checkoutFormFacturacion.controls.documentType.errors?.required\">\n <span class=\"text-danger\">\n {{'type-document-help'|translate}}\n </span>\n </div>\n </div>\n <div class=\"form-group col-12 col-md-4\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.documentNumber.enabled\">\n <label class=\"field-label\" for=\"billing-documentNumberFull\">{{'document-number'|translate}}<span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.documentNumber.required\"\n class=\"required\">*</span></label>\n <input id=\"billing-documentNumberFull\" (change)=\"onInputChange()\" class=\"form-control\" [type]=\"'text'\"\n name=\"documentNumber\"\n [formControl]=\"checkoutFormFacturacion.controls['documentNumber']\"\n placeholder=\"\" autocomplete=\"off\">\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.documentNumber.dirty || checkoutFormFacturacion.controls.documentNumber.touched) && checkoutFormFacturacion.controls.documentNumber.errors?.required\">\n <span class=\"text-danger\">\n {{'document-number-help'|translate}}\n </span>\n </div>\n <div class=\"text-danger-container\"\n *ngIf=\"(checkoutFormFacturacion.controls.documentNumber.dirty || checkoutFormFacturacion.controls.documentNumber.touched) && checkoutFormFacturacion.controls.documentNumber.errors?.pattern\">\n <span class=\"text-danger\">{{ documentErrorMessage | translate }}</span>\n </div>\n </div>\n </ng-container>\n </ng-template>\n </div>\n <div class=\"row mt-df\" *ngIf=\"this.consts.getChannel() != 'mdj-empresa-a'\">\n <div class=\"form-group col-12 col-md-12\"\n *ngIf=\"this.addressingService.getTypeForm().viewForms.notes.enabled\">\n <label class=\"field-label\" for=\"billing-notes\"\n *ngIf=\"!getLabelNotesParam()\">{{'notes'|translate}} <span\n *ngIf=\"this.addressingService.getTypeForm().viewForms.notes.required\"\n class=\"required\">*</span></label>\n <label class=\"field-label\" *ngIf=\"getLabelNotesParam() as labelNotesHtml\" [attr.for]=\"'billing-notes'\">\n <div [innerHTML]=\"labelNotesHtml.value\"></div> \n <span *ngIf=\"this.addressingService.getTypeForm().viewForms.notes.required\"\n class=\"required\">*</span>\n </label>\n\n <!-- <label class=\"field-label\">{{'notes'|translate}}<span *ngIf=\"this.addressingService.getTypeForm().viewForms.notes.required\" class=\"required\">*</span></label> -->\n <textarea id=\"billing-notes\" (change)=\"onInputChange()\" class=\"form-control notes-textarea\"\n name=\"notes\" [formControl]=\"checkoutFormFacturacion.controls['notes']\"\n rows=\"3\" placeholder=\"\" autocomplete=\"off\"></textarea>\n </div>\n </div>\n </form>\n </div>\n\n </div>\n </div>\n </div>\n </div>\n </ng-template>\n\n\n\n <ng-template #template>\n <div class=\"modal-content\">\n <div class=\"modal-header\">\n <button type=\"button\" class=\"btn-close float-end\" aria-label=\"Close\" (click)=\"modalRef.hide()\">\n </button>\n </div>\n </div>\n\n <div class=\"modal-body scrol-if\">\n <app-section-container-ec [name]=\"'terminos-y-condiciones'\"> </app-section-container-ec>\n </div>\n\n </ng-template>\n\n\n <ng-template #addressBookNotResult>\n <div class=\"container\">\n <div class=\"row\">\n <div class=\"col-12 text-center my-2\">\n <h4> {{'address-book-not-result' | translate }} </h4>\n </div>\n </div>\n </div>\n </ng-template>\n\n <ng-template #addressBookLoading>\n <div class=\"container\">\n <div class=\"row\">\n <div class=\"col-12 text-center my-2\">\n <div class=\"d-flex flex-column jusitfy-content-center align-items-center\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n </div>\n </div>\n </div>\n </ng-template>\n</ng-container>\n\n<ng-template #pleaseLogin>\n <div class=\"container\">\n <p>Por favor <a [routerLink]=\"['/auth/login']\"> Inicie Sesi\u00F3n</a></p>\n </div>\n</ng-template>\n",
8971
9088
  providers: [BsModalService],
8972
- styles: ["@charset \"UTF-8\";.btn.valid-btn{background-color:var(--ec-primary,#000);border-color:var(--ec-primary,#000);color:var(--ec-primary-contrast,#fff);margin-right:-3px;margin-bottom:10px}.btn.valid-btn:disabled,.btn.valid-btn[disabled]{background-color:var(--ec-primary-muted,#6c757d);border-color:var(--ec-primary-muted,#6c757d);color:var(--ec-primary-contrast,#fff);opacity:.8}.mt-df{margin:10px auto 0}.btn.btn-outline-secondary.active,.btn.btn-outline-secondary:hover{color:#fff!important}.required{color:red}.address-required-row .required-hint-text{color:#6b6b6b;font-size:.85rem;font-weight:500;letter-spacing:.01em}.address-required-row .required-hint-asterisk{color:#6b6b6b;font-weight:700}.field-label{color:#000}:host-context(#appCheckoutEc) .field-label{font-weight:700}:host-context(#appCheckoutEc) .address-meta-row b,:host-context(#appCheckoutEc) .address-terms-row label{font-weight:400}.terms-label{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.35rem}.terms-link{background:0 0;border:0;padding:0;color:inherit;text-decoration:underline;cursor:pointer}.form-control.ng-dirty.ng-invalid,.form-control.ng-touched.ng-invalid{border-color:#dc3545;box-shadow:0 0 0 .15rem rgba(220,53,69,.18)}.form-control.ng-dirty.ng-valid,.form-control.ng-touched.ng-valid{border-color:#16a34a;box-shadow:0 0 0 .15rem rgba(22,163,74,.15)}.char-count{margin-left:.35rem;font-size:.78rem;font-weight:400;color:#888;white-space:nowrap}.notes-textarea{min-height:120px;max-height:240px;resize:vertical;max-width:100%}.compact-address-form .valid-btn{font-size:1rem;padding:.7rem 1.1rem;letter-spacing:.02em}.document-input-group{position:relative;align-items:stretch}.document-input-group .dropdown-menu{max-height:240px;overflow-y:auto}.document-input-group .dropdown-toggle{border-right:0;border-top-right-radius:0;border-bottom-right-radius:0;min-height:100%;border-color:#ced4da;color:#495057}.document-input-group .form-control{border-left:0;border-top-left-radius:0;border-bottom-left-radius:0}:host-context(#appCheckoutEc) .checkout-btn-unique{display:flex;justify-content:flex-end}:host-context(#appCheckoutEc) .checkout-btn-unique .valid-btn{display:block;margin-left:auto;width:56%;max-width:360px;min-width:220px}@media screen and (max-width:992px){:host-context(#appCheckoutEc) .checkout-btn-unique{justify-content:stretch}:host-context(#appCheckoutEc) .checkout-btn-unique .valid-btn{width:100%;min-width:0}.address-required-row .required-hint-text{font-size:.82rem}}:host-context(#appCheckoutEc) .valid-btn{text-transform:uppercase}label{color:#000}#appCheckoutEc .checkout-single .btn-group-toggle{border:1px solid #e3e3e3;border-radius:6px;overflow:hidden}#appCheckoutEc .checkout-single .btn-group-toggle .btn{border-radius:0!important;font-weight:600;padding:.55rem 1rem;border-left:1px solid #e3e3e3}#appCheckoutEc .checkout-single .btn-group-toggle .btn:first-child{border-left:0}.input-size-lg{width:1.8rem;height:1.8rem}.address-card-compact{display:flex;gap:.75rem;border:1px solid #e3e3e3;border-radius:6px;padding:.75rem;background:#fff;align-items:flex-start;cursor:pointer;transition:border-color .2s,box-shadow .2s}.address-card-compact.is-selected{border-color:#000;box-shadow:0 0 0 1px #000 inset}.address-card-compact:hover{border-color:#444}.address-card-radio{margin-top:.25rem}.address-card-content{flex:1;display:flex;flex-direction:column;gap:.35rem}.address-card-title{font-weight:600;font-size:1rem}.address-card-sub{color:#666;font-size:.9rem}.address-card-details{margin-top:.5rem}.address-card-details summary{cursor:pointer;color:#000;font-weight:600;font-size:.9rem;list-style:none;display:inline-flex;align-items:center;gap:.35rem}.address-card-details summary::-webkit-details-marker{display:none}.address-card-details summary::before{content:\"\u25B8\";font-size:.85rem}.address-card-details[open] summary::before{content:\"\u25BE\"}.address-card-details-body{margin-top:.5rem;padding:.5rem;background:#f8f8f8;border-radius:6px}.address-card-detail-title{font-weight:600;margin-bottom:.25rem}.address-card-detail-line{font-size:.9rem;color:#555}.single-step-surface{position:relative}.single-step-overlay{position:absolute;inset:0;background:rgba(255,255,255,.6);display:flex;align-items:center;justify-content:center;z-index:5}.compact-address-form .address-meta-row,.compact-address-form .address-required-row,.compact-address-form .address-terms-row{margin-top:.4rem}.compact-address-form .address-meta-row label,.compact-address-form .address-terms-row label{display:inline-flex;align-items:center;gap:.4rem;margin-bottom:0;font-weight:600}.compact-address-form .address-terms-row a{margin-left:0!important;display:inline-block;font-size:.85rem}.compact-address-form .address-terms-row .text-danger-container{margin-top:.35rem}"]
9089
+ styles: ["@charset \"UTF-8\";.btn.valid-btn{background-color:var(--ec-primary,#000);border-color:var(--ec-primary,#000);color:var(--ec-primary-contrast,#fff);margin-right:-3px;margin-bottom:10px}.btn.valid-btn:disabled,.btn.valid-btn[disabled]{background-color:var(--ec-primary-muted,#6c757d);border-color:var(--ec-primary-muted,#6c757d);color:var(--ec-primary-contrast,#fff);opacity:.8}.mt-df{margin:10px auto 0}.btn.btn-outline-secondary.active,.btn.btn-outline-secondary:hover{color:#fff!important}.required{color:red}.address-required-row .required-hint-text{color:#6b6b6b;font-size:.85rem;font-weight:500;letter-spacing:.01em}.address-required-row .required-hint-asterisk{color:#6b6b6b;font-weight:700}.field-label{color:#000}:host-context(#appCheckoutEc) .field-label{font-weight:700}:host-context(#appCheckoutEc) .address-meta-row b,:host-context(#appCheckoutEc) .address-terms-row label{font-weight:400}.terms-label{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.35rem}.terms-link{background:0 0;border:0;padding:0;color:inherit;text-decoration:underline;cursor:pointer}.form-control.ng-dirty.ng-invalid,.form-control.ng-touched.ng-invalid{border-color:#dc3545;box-shadow:0 0 0 .15rem rgba(220,53,69,.18)}.form-control.ng-dirty.ng-valid,.form-control.ng-touched.ng-valid{border-color:#16a34a;box-shadow:0 0 0 .15rem rgba(22,163,74,.15)}.char-count{margin-left:.35rem;font-size:.78rem;font-weight:400;color:#666;white-space:nowrap}.notes-textarea{min-height:120px;max-height:240px;resize:vertical;max-width:100%}.compact-address-form .valid-btn{font-size:1rem;padding:.7rem 1.1rem;letter-spacing:.02em}.document-input-group{position:relative;align-items:stretch}.document-input-group .dropdown-menu{max-height:240px;overflow-y:auto}.document-input-group .dropdown-toggle{border-right:0;border-top-right-radius:0;border-bottom-right-radius:0;min-height:100%;border-color:#ced4da;color:#495057}.document-input-group .form-control{border-left:0;border-top-left-radius:0;border-bottom-left-radius:0}:host-context(#appCheckoutEc) .checkout-btn-unique{display:flex;justify-content:flex-end}:host-context(#appCheckoutEc) .checkout-btn-unique .valid-btn{display:block;margin-left:auto;width:56%;max-width:360px;min-width:220px}@media screen and (max-width:992px){:host-context(#appCheckoutEc) .checkout-btn-unique{justify-content:stretch}:host-context(#appCheckoutEc) .checkout-btn-unique .valid-btn{width:100%;min-width:0}.address-required-row .required-hint-text{font-size:.82rem}}:host-context(#appCheckoutEc) .valid-btn{text-transform:uppercase}label{color:#000}#appCheckoutEc .checkout-single .btn-group-toggle{border:1px solid #e3e3e3;border-radius:6px;overflow:hidden}#appCheckoutEc .checkout-single .btn-group-toggle .btn{border-radius:0!important;font-weight:600;padding:.55rem 1rem;border-left:1px solid #e3e3e3}#appCheckoutEc .checkout-single .btn-group-toggle .btn:first-child{border-left:0}.input-size-lg{width:1.8rem;height:1.8rem}.address-card-compact{display:flex;gap:.75rem;border:1px solid #e3e3e3;border-radius:6px;padding:.75rem;background:#fff;align-items:flex-start;cursor:pointer;transition:border-color .2s,box-shadow .2s}.address-card-compact.is-selected{border-color:#000;box-shadow:0 0 0 1px #000 inset}.address-card-compact:hover{border-color:#444}.address-card-radio{margin-top:.25rem}.address-card-content{flex:1;display:flex;flex-direction:column;gap:.35rem}.address-card-title{font-weight:600;font-size:1rem}.address-card-sub{color:#666;font-size:.9rem}.address-card-details{margin-top:.5rem}.address-card-details summary{cursor:pointer;color:#000;font-weight:600;font-size:.9rem;list-style:none;display:inline-flex;align-items:center;gap:.35rem}.address-card-details summary::-webkit-details-marker{display:none}.address-card-details summary::before{content:\"\u25B8\";font-size:.85rem}.address-card-details[open] summary::before{content:\"\u25BE\"}.address-card-details-body{margin-top:.5rem;padding:.5rem;background:#f8f8f8;border-radius:6px}.address-card-detail-title{font-weight:600;margin-bottom:.25rem}.address-card-detail-line{font-size:.9rem;color:#555}.single-step-surface{position:relative}.single-step-overlay{position:absolute;inset:0;background:rgba(255,255,255,.6);display:flex;align-items:center;justify-content:center;z-index:5}.compact-address-form .address-meta-row,.compact-address-form .address-required-row,.compact-address-form .address-terms-row{margin-top:.4rem}.compact-address-form .address-meta-row label,.compact-address-form .address-terms-row label{display:inline-flex;align-items:center;gap:.4rem;margin-bottom:0;font-weight:600}.compact-address-form .address-terms-row a{margin-left:0!important;display:inline-block;font-size:.85rem}.compact-address-form .address-terms-row .text-danger-container{margin-top:.35rem}"]
8973
9090
  })
8974
9091
  ], DataFormEcComponent);
8975
9092
 
8976
- var __decorate$R = (this && this.__decorate) || function (decorators, target, key, desc) {
9093
+ var __decorate$S = (this && this.__decorate) || function (decorators, target, key, desc) {
8977
9094
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
8978
9095
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
8979
9096
  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;
@@ -9053,11 +9170,11 @@ PaymentService.ctorParameters = () => [
9053
9170
  { type: CheckoutService },
9054
9171
  { type: AnalyticsService }
9055
9172
  ];
9056
- PaymentService = __decorate$R([
9173
+ PaymentService = __decorate$S([
9057
9174
  Injectable()
9058
9175
  ], PaymentService);
9059
9176
 
9060
- var __decorate$S = (this && this.__decorate) || function (decorators, target, key, desc) {
9177
+ var __decorate$T = (this && this.__decorate) || function (decorators, target, key, desc) {
9061
9178
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
9062
9179
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
9063
9180
  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;
@@ -9422,19 +9539,19 @@ PaymentEcComponent.ctorParameters = () => [
9422
9539
  { type: Constants },
9423
9540
  { type: Router }
9424
9541
  ];
9425
- __decorate$S([
9542
+ __decorate$T([
9426
9543
  Input()
9427
9544
  ], PaymentEcComponent.prototype, "step_id", void 0);
9428
- __decorate$S([
9545
+ __decorate$T([
9429
9546
  Input()
9430
9547
  ], PaymentEcComponent.prototype, "compactPaymentView", void 0);
9431
- __decorate$S([
9548
+ __decorate$T([
9432
9549
  Output()
9433
9550
  ], PaymentEcComponent.prototype, "dirtyChange", void 0);
9434
- __decorate$S([
9551
+ __decorate$T([
9435
9552
  ViewChild('formContainer')
9436
9553
  ], PaymentEcComponent.prototype, "mercadopago_button", void 0);
9437
- PaymentEcComponent = __decorate$S([
9554
+ PaymentEcComponent = __decorate$T([
9438
9555
  Component({
9439
9556
  selector: 'app-payment-ec',
9440
9557
  template: "<div *ngIf=\"(paymentService.methods$ | async) as methods\"\n [ngClass]=\"compactPaymentView ? '' : 'container-fluid'\">\n <ng-container *ngIf=\"compactPaymentView; else legacyPayment\">\n <app-payment-ec-single\n [loadingInternal]=\"loading_internal\"\n [loadingInternalMp]=\"loading_internal_mp\"\n [paymentLocked]=\"paymentLocked\"\n [validatingMethodCode]=\"validatingMethodCode\"\n [selectedMethodCode]=\"selectedMethodCode\"\n [currentMethod]=\"currentMethod\"\n [showMethodError]=\"showMethodError\"\n [balanceMethodRejected]=\"balanceMethodRejected\"\n [methods]=\"methods\"\n [totalAmount]=\"total_amount\"\n [isMethodDisabled]=\"isPaymentMethodDisabled\"\n [isMP]=\"isMP.bind(this)\"\n [isMPTarjetaDeCredito]=\"isMPTarjetaDeCredito.bind(this)\"\n [isRedirectRedsys]=\"isRedirectRedsys.bind(this)\"\n [isRedirectCecaBank]=\"isRedirectCecaBank.bind(this)\"\n [isPeyPalExpress]=\"isPeyPalExpress.bind(this)\"\n [isMobbex]=\"isMobbex.bind(this)\"\n [isBancard]=\"isBancard.bind(this)\"\n [isDecidir]=\"isDecidir.bind(this)\"\n [isMethodOffline]=\"isMethodOffline.bind(this)\"\n [isCulqi]=\"isCulqi.bind(this)\"\n [isCatastro]=\"isCatastro.bind(this)\"\n [isBamboo]=\"isBamboo.bind(this)\"\n [isBankTransfer]=\"isBankTransfer.bind(this)\"\n [isPlaceToPay]=\"isPlaceToPay.bind(this)\"\n [isBalanceInAccount]=\"isBalanceInAccount.bind(this)\"\n [getPK]=\"getPK.bind(this)\"\n [getPKCulqi]=\"getPKCulqi.bind(this)\"\n [getImageUrl]=\"getPaymentImageUrl.bind(this)\"\n [allData]=\"allData.bind(this)\"\n [paymentServiceInst]=\"paymentService\"\n (selectMethod)=\"setMethod($event)\"\n (verifyValidate)=\"verifyValidate($event)\"\n (setLoading)=\"setLoading()\">\n </app-payment-ec-single>\n </ng-container>\n <ng-template #legacyPayment>\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 <!-- cuenta corriente tiene una configuari\u00F3n de permitir o no otros metodos de pago -->\n <ng-container *ngIf=\"method && !showMethodError\">\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\"\n [paymentServiceInst]=\"paymentService\"\n [allData]=\"allData()\"></app-mp-redirect-ec>\n </div>\n <div class=\"method-container text-dark text-left\"\n *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()\"\n [public_key]=\"getPK(method)\" [user_data]=\"allData()\"\n [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\n *ngIf=\"!method.code.includes('bizum') && !method.code.includes('_out_')\">\n <app-redsys-redirect-ec (ready)=\"verifyValidate($event)\"\n [method]=\"method\" [user_data]=\"allData()\">\n </app-redsys-redirect-ec>\n </ng-container>\n <ng-container\n *ngIf=\"method.code.includes('bizum') || method.code.includes('_out_')\">\n <app-redsys-redirect-out-ec (ready)=\"verifyValidate($event)\"\n [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\"\n *ngIf=\"isRedirectCecaBank(method.code)\">\n <div class=\"row\">\n <div class=\"col-12\">\n <app-ceca-redirect-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\n [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)\"\n [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\"\n [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\"\n [user_data]=\"allData()\" [paymentServiceInst]=\"paymentService\"\n [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\"\n [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()\">{{\n ('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 text-start\" *ngIf=\"isCulqi(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 <app-culqi-ec [apiKey]=\"getPKCulqi(method)\" [method]=\"method\"\n [amount]=\"total_amount\" [customStyle]=\"true\"\n (ready)=\"verifyValidate()\"></app-culqi-ec>\n </div>\n </div>\n </div>\n </div>\n <div class=\"method-container text-dark text-start\" *ngIf=\"isCatastro(method.code)\">\n <div class=\"container\">\n <div class=\"row justify-content-center\">\n <div class=\"col-12\">\n <app-bancard-catastro-ec (ready)=\"verifyValidate($event)\"\n [method]=\"method\" [user_data]=\"allData()\"\n [paymentServiceInst]=\"paymentService\"\n [total_amount]=\"total_amount\"></app-bancard-catastro-ec>\n </div>\n </div>\n </div>\n </div>\n <div class=\"method-container text-dark text-start\" *ngIf=\"isBamboo(method.code)\">\n <div class=\"container\">\n <div class=\"row justify-content-center\">\n <div class=\"col-12\">\n <app-bamboo-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\n [user_data]=\"allData()\" [paymentServiceInst]=\"paymentService\"\n [total_amount]=\"total_amount\"></app-bamboo-ec>\n </div>\n </div>\n </div>\n </div>\n <div class=\"method-container text-dark\" *ngIf=\"isBankTransfer(method.code)\">\n <div class=\"row px-0 description-cont\">\n <ng-container\n *ngFor=\"let line of method.description.split('\\r\\n'); let i=index\">\n <p [id]=\"'faqs-'+i\" [class]=\"'qt px-5 m-0 line-'+i\">{{ line }}</p>\n </ng-container>\n </div>\n <hr *ngIf=\"method.instructions\">\n <div *ngIf=\"method.instructions\" class=\"row px-0 instructions-cont mb-1\">\n <h5 class=\"instructions-title\">{{ ('instructions' | translate) }}</h5>\n <ng-container\n *ngFor=\"let line of method.instructions.split('\\r\\n'); let i=index\">\n <p [class]=\"'px-5 m-0 instructions-text line-'+i \">{{ line }}</p>\n </ng-container>\n </div>\n\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 <div class=\"method-container text-dark\" *ngIf=\"isPlaceToPay(method.code)\">\n <p id=\"faqs\" *ngIf=\"method.description\" class=\"qt px-5 \">{{ method.description }}\n </p>\n <p class=\"px-5\" *ngIf=\"method.instructions\">{{ method.instructions }}</p>\n <app-place-to-pay-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\n [paymentServiceInst]=\"paymentService\" [allData]=\"allData()\">\n </app-place-to-pay-ec>\n </div>\n </ng-container>\n <ng-container *ngIf=\"showMethodError\">\n <div class=\"text-danger mt-2 px-3 fw-bold\">\n {{ 'this-payment-method-cannot-be-used' | translate }}\n </div>\n </ng-container>\n <div class=\"method-container text-dark\"\n *ngIf=\"isBalanceInAccount(method.code) && !showMethodError\">\n <div class=\"row px-0 description-cont\" *ngIf=\"method.description\">\n <ng-container *ngFor=\"let line of method.description.split('\\r\\n'); let i = index\">\n <p [id]=\"'cc-desc-'+i\" [class]=\"'qt px-5 m-0 line-'+i\">{{ line }}</p>\n </ng-container>\n </div>\n\n <hr *ngIf=\"method.instructions\">\n\n <div *ngIf=\"method.instructions\" class=\"row px-0 instructions-cont mb-1\">\n <h5 class=\"instructions-title\">{{ ('instructions' | translate) }}</h5>\n <ng-container *ngFor=\"let line of method.instructions.split('\\r\\n'); let i = index\">\n <p [class]=\"'px-5 m-0 instructions-text line-'+i \">{{ line }}</p>\n </ng-container>\n </div>\n\n <ng-container *ngIf=\"!balanceMethodRejected; else showCreditError\">\n <div class=\"end-button\">\n <button class=\"btn comprar\" (click)=\"setLoading() && verifyValidate()\">\n {{ 'pay-with' | translate }} {{ method.name }}\n </button>\n </div>\n </ng-container>\n\n <ng-template #showCreditError>\n <div class=\"text-danger mt-2 px-3 fw-bold\">\n {{ 'not-enough-credits-to-complete' | translate }}\n </div>\n </ng-template>\n\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 </ng-template>\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 <ng-container *ngIf=\"!compactPaymentView\">\n <app-loading-inline-ec></app-loading-inline-ec>\n </ng-container>\n</ng-template>\n",
@@ -9443,14 +9560,14 @@ PaymentEcComponent = __decorate$S([
9443
9560
  })
9444
9561
  ], PaymentEcComponent);
9445
9562
 
9446
- var __decorate$T = (this && this.__decorate) || function (decorators, target, key, desc) {
9563
+ var __decorate$U = (this && this.__decorate) || function (decorators, target, key, desc) {
9447
9564
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
9448
9565
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
9449
9566
  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;
9450
9567
  return c > 3 && r && Object.defineProperty(target, key, r), r;
9451
9568
  };
9452
9569
  let CheckoutEcComponent = class CheckoutEcComponent extends ComponentHelper {
9453
- constructor(checkoutService, toastrService, router, cartService, productsService, channelService, consts, elementRef, modalService, shippingPriceDisplay) {
9570
+ constructor(checkoutService, toastrService, router, cartService, productsService, channelService, consts, elementRef, modalService, shippingPriceDisplay, seo) {
9454
9571
  super();
9455
9572
  this.checkoutService = checkoutService;
9456
9573
  this.toastrService = toastrService;
@@ -9462,6 +9579,7 @@ let CheckoutEcComponent = class CheckoutEcComponent extends ComponentHelper {
9462
9579
  this.elementRef = elementRef;
9463
9580
  this.modalService = modalService;
9464
9581
  this.shippingPriceDisplay = shippingPriceDisplay;
9582
+ this.seo = seo;
9465
9583
  this.loadingSubject = new BehaviorSubject(true);
9466
9584
  this.canCheckout = false;
9467
9585
  this.require_login = false;
@@ -9488,6 +9606,16 @@ let CheckoutEcComponent = class CheckoutEcComponent extends ComponentHelper {
9488
9606
  this.channelReady = false;
9489
9607
  this.pendingCheckoutInit = false;
9490
9608
  this.loading$ = this.loadingSubject.asObservable();
9609
+ this.updateCheckoutSeo = () => {
9610
+ const siteName = this.seo.getSiteName();
9611
+ this.seo.setTitle(`Checkout | ${siteName}`);
9612
+ this.seo.setDescription(`Finalizá tu compra en ${siteName}.`);
9613
+ this.seo.setOgType('website');
9614
+ this.seo.setNoIndex(true);
9615
+ if (typeof window !== 'undefined') {
9616
+ this.seo.setCanonical(window.location.href);
9617
+ }
9618
+ };
9491
9619
  this.initializeCheckout = () => {
9492
9620
  var _a, _b, _c, _d;
9493
9621
  this.canCheckout = true;
@@ -9884,6 +10012,7 @@ let CheckoutEcComponent = class CheckoutEcComponent extends ComponentHelper {
9884
10012
  }
9885
10013
  this.paymentAutoOpened = true;
9886
10014
  });
10015
+ this.updateCheckoutSeo();
9887
10016
  this.ecOnInit();
9888
10017
  this.cartService.showPrice$.subscribe(showPrice => {
9889
10018
  this.creditAccountShowPrices = showPrice;
@@ -10034,22 +10163,23 @@ CheckoutEcComponent.ctorParameters = () => [
10034
10163
  { type: Constants },
10035
10164
  { type: ElementRef },
10036
10165
  { type: BsModalService },
10037
- { type: ShippingPriceDisplayService }
10166
+ { type: ShippingPriceDisplayService },
10167
+ { type: SeoService }
10038
10168
  ];
10039
- __decorate$T([
10169
+ __decorate$U([
10040
10170
  ViewChildren(DataFormEcComponent)
10041
10171
  ], CheckoutEcComponent.prototype, "dataformComponents", void 0);
10042
- __decorate$T([
10172
+ __decorate$U([
10043
10173
  ViewChildren(PaymentEcComponent)
10044
10174
  ], CheckoutEcComponent.prototype, "paymentComponents", void 0);
10045
- __decorate$T([
10175
+ __decorate$U([
10046
10176
  ViewChild('unsavedChangesModal')
10047
10177
  ], CheckoutEcComponent.prototype, "unsavedChangesModal", void 0);
10048
- __decorate$T([
10178
+ __decorate$U([
10049
10179
  HostListener('window:scroll'),
10050
10180
  HostListener('window:resize')
10051
10181
  ], CheckoutEcComponent.prototype, "evaluateMobileBarVisibility", null);
10052
- CheckoutEcComponent = __decorate$T([
10182
+ CheckoutEcComponent = __decorate$U([
10053
10183
  Component({
10054
10184
  selector: 'app-checkout-ec',
10055
10185
  template: "<main class=\"py-4\" id=\"appCheckoutEc\">\n <ng-container *ngIf=\"(checkoutService.loading$ | async) as load\">\n <div class=\"checkout-loading-overlay\" *ngIf=\"load\">\n <div class=\"checkout-loading-card\">\n <app-loading-full-ec></app-loading-full-ec>\n <h5>{{ 'processing-payment' | translate }}</h5>\n </div>\n </div>\n </ng-container>\n <div *ngIf=\"canCheckout; else cartEmpty\">\n <ng-container *ngIf=\"checkoutView === 'single'; else legacyCheckout\">\n <div class=\"container\">\n <div class=\"row checkout-single-row\">\n <div class=\"col-lg-8 col-12\">\n <div class=\"checkout-single\">\n <div class=\"checkout-section\" *ngFor=\"let step of steps; let x=index\"\n [attr.data-step]=\"step.name\"\n [class.is-disabled]=\"!isStepEnabled(step.name)\"\n [class.is-complete]=\"isStepComplete(step.name)\">\n <button class=\"section-header\" type=\"button\"\n [attr.aria-expanded]=\"isSectionOpen(step.name)\"\n [disabled]=\"!isStepEnabled(step.name)\"\n (click)=\"toggleSection(step.name)\">\n <span class=\"section-index\">{{ x + 1 }}</span>\n <span class=\"section-title\">\n {{ getSingleStepTitle(step) | translate }}\n </span>\n <span class=\"section-state\" *ngIf=\"isStepComplete(step.name)\">\n &#10003;\n </span>\n </button>\n <div class=\"section-summary\" *ngIf=\"isStepComplete(step.name) && !isSectionOpen(step.name)\"\n role=\"button\" tabindex=\"0\"\n (click)=\"toggleSection(step.name)\"\n (keydown.enter)=\"toggleSection(step.name)\"\n (keydown.space)=\"toggleSection(step.name)\">\n <span class=\"section-summary-label\">\n {{ getSingleSummaryLabel(step) }}\n </span>\n <span class=\"section-summary-value\">\n {{ getSingleSummaryValue(step) }}\n </span>\n <span class=\"section-summary-edit\"\n role=\"button\"\n tabindex=\"0\"\n (click)=\"toggleSection(step.name); $event.stopPropagation()\"\n (keydown.enter)=\"toggleSection(step.name); $event.stopPropagation()\"\n (keydown.space)=\"toggleSection(step.name); $event.stopPropagation()\">\n {{ 'edit' | translate }}\n </span>\n </div>\n <div class=\"section-body\" [hidden]=\"!isSectionOpen(step.name)\">\n <ng-container [ngSwitch]=\"step.name\">\n <ng-container *ngSwitchCase=\"'address'\">\n <app-dataform-ec [step_id]=\"step.step\" [isLastOne]=\"false\"\n [nextStep]=\"goToNextFromAddress\" [compactAddressView]=\"true\"\n (dirtyChange)=\"onStepDirtyChange('address', $event)\">\n </app-dataform-ec>\n </ng-container>\n <ng-container *ngSwitchCase=\"'shipment'\">\n <app-shipment-ec [step_id]=\"step.step\" [compactShipmentView]=\"true\"\n (advanceStep)=\"goToNextSection(step.name)\"\n (summaryChange)=\"setShipmentSummary($event)\">\n </app-shipment-ec>\n </ng-container>\n <ng-container *ngSwitchCase=\"'payment'\">\n <app-payment-ec [step_id]=\"step.step\" [compactPaymentView]=\"true\"\n (dirtyChange)=\"onStepDirtyChange('payment', $event)\"></app-payment-ec>\n </ng-container>\n </ng-container>\n </div>\n </div>\n </div>\n </div>\n <div class=\"col-lg-4 col-12\">\n <ng-container *ngIf=\"(checkoutService.state$ | async) as checkoutState\">\n <aside class=\"checkout-summary\"\n *ngIf=\"(creditAccountShowPrices !== null ? creditAccountShowPrices : true) || (areAllStepsReady(checkoutState) && !shouldHideFinishButton(checkoutState))\">\n <ng-container *ngIf=\"(creditAccountShowPrices !== null ? creditAccountShowPrices : true)\">\n <h4 class=\"summary-title\">\n {{ checkoutView === 'single' ? ('payment-summary' | translate) : ('purchase-summary' | translate) }}\n </h4>\n <div class=\"summary-totals\" *ngIf=\"(checkoutService.asociatedData$ | async) as data\">\n <ng-container *ngFor=\"let item of getSummaryData(data)\">\n <div class=\"summary-total-row\" *ngIf=\"shouldShowSummaryItem(item)\"\n [class.summary-total-row-total]=\"item.type === 'total'\">\n <span>{{ getSummaryLabel(item.type) | translate }}</span>\n <ng-container *ngIf=\"getSummaryAmountView(item) as priceView\">\n <span class=\"summary-total-row-price\"\n [class.summary-total-row-price--discounted]=\"priceView.showOriginalPrice\"\n [class.summary-total-row-price--free]=\"priceView.isFree\">\n <del *ngIf=\"priceView.showOriginalPrice\">\n {{ priceView.originalPrice | ecCurrencySymbol:'alwaysShowDecimals' }}\n </del>\n <strong>\n <ng-container *ngIf=\"priceView.isFree; else summaryValue\">\n {{ 'free' | translate }}\n </ng-container>\n <ng-template #summaryValue>\n {{ priceView.finalPrice | ecCurrencySymbol:'alwaysShowDecimals' }}\n </ng-template>\n </strong>\n </span>\n </ng-container>\n </div>\n </ng-container>\n </div>\n </ng-container>\n <button class=\"btn valid-btn w-100 mt-3 text-uppercase\"\n id=\"checkoutFinishBtn\"\n *ngIf=\"areAllStepsReady(checkoutState) && !shouldHideFinishButton(checkoutState)\"\n (click)=\"endCheckout()\">\n {{ 'finish-checkout' | translate }}\n </button>\n </aside>\n </ng-container>\n </div>\n </div>\n <ng-container *ngIf=\"(checkoutService.asociatedData$ | async) as data\">\n <ng-container *ngIf=\"(checkoutService.state$ | async) as checkoutState\">\n <div class=\"summary-mobile-bar\" [class.is-hidden]=\"hideMobileSummaryBar\"\n *ngIf=\"(creditAccountShowPrices !== null ? creditAccountShowPrices : true)\">\n <div class=\"summary-mobile-total\">\n <span class=\"summary-mobile-label\">{{ 'total' | translate }}</span>\n <span class=\"summary-mobile-value\">\n {{ getTotalAmount(data) != null ? (getTotalAmount(data) | ecCurrencySymbol:'alwaysShowDecimals') : '--' }}\n </span>\n </div>\n <button class=\"btn valid-btn summary-mobile-btn\"\n *ngIf=\"!shouldHideFinishButton(checkoutState)\"\n [disabled]=\"!areAllStepsReady(checkoutState)\"\n (click)=\"endCheckout()\">\n {{ 'finish-checkout' | translate }}\n </button>\n </div>\n </ng-container>\n </ng-container>\n <ng-template #unsavedChangesModal>\n <div class=\"modal-content checkout-unsaved-modal-content\">\n <div class=\"modal-header\">\n <h5 class=\"modal-title\">{{ 'unsaved-changes-title' | translate }}</h5>\n <button type=\"button\" class=\"btn-close\" aria-label=\"Close\"\n (click)=\"cancelUnsavedClose()\"></button>\n </div>\n <div class=\"modal-body\">\n {{ 'unsaved-changes-body' | translate }}\n </div>\n <div class=\"modal-footer\">\n <button type=\"button\" class=\"btn btn-outline-secondary btn-keep-editing\"\n (click)=\"cancelUnsavedClose()\">\n {{ 'unsaved-changes-continue' | translate }}\n </button>\n <button type=\"button\" class=\"btn btn-primary btn-discard\" (click)=\"confirmUnsavedDiscard()\">\n {{ 'unsaved-changes-discard' | translate }}\n </button>\n </div>\n </div>\n </ng-template>\n </div>\n </ng-container>\n <ng-template #legacyCheckout>\n <app-detail-checkout-block-ec></app-detail-checkout-block-ec>\n <div class=\"container\">\n <div class=\"row\">\n <div class=\"col-md-12 col-12\">\n <div id=\"stepper\" class=\"bs-stepper\" *ngIf=\"(checkoutService.state$ | async) as state\">\n\n <div class=\"row mb-3 position-relative stepperContainer\">\n <ng-container *ngFor=\"let step of steps; let x=index\">\n <div [class]=\"'px-0 col-'+(12 / steps.length)\">\n <div [class]=\"'step ' + getClassToStepper(x)\" [attr.data-target]=\"'#test-l-'+step.step\">\n <button class=\"step-trigger\">\n <span class=\"bs-stepper-circle\">{{x+1}}</span>\n <span class=\"bs-stepper-label\">{{ step.label |translate}}</span>\n </button>\n </div>\n </div>\n </ng-container>\n </div>\n\n <!-- CONTENT -->\n <div class=\"bs-stepper-content margin-bottom-i\">\n <div *ngIf=\"(checkoutService.state$ | async) as checkoutState\">\n <ng-container *ngFor=\"let step of steps; let x=index\">\n <div [id]=\"'test-l-'+step.step\" class=\"content\">\n <app-step-ec [step_id]=\"step.step\" [id_step]=\"x+1\" [previousStep]=\"steps[x-1] ? steps[x-1].name : step.name\" [nextStep]=\"steps[x+1] ? next : endCheckout\" [goBack]=\"goBack\" [lastStep]=\"steps[x+1] ? false : true\"> \n </app-step-ec> \n </div>\n </ng-container>\n </div>\n </div>\n </div>\n </div>\n <ng-container *ngIf=\"(checkoutService.loading$ | async) as load\">\n <div class=\"col-md-12 col-12\">\n <div *ngIf=\"load\" class=\"d-flex flex-column jusitfy-content-center align-items-center mt-2\">\n <app-loading-full-ec></app-loading-full-ec>\n <h5>{{ 'processing-payment' | translate }}</h5>\n </div>\n </div>\n </ng-container>\n </div>\n </div>\n </ng-template>\n </div>\n</main>\n\n<ng-template #cartEmpty>\n <div class=\"wrap\">\n <div *ngIf=\"(loading$ | async) as load\">\n <app-loading-full-ec *ngIf=\"canCheckout\"></app-loading-full-ec>\n </div>\n <section id=\"cart\" *ngIf=\"!canCheckout\">\n <section id=\"cart bg-white h-50\">\n <div class=\"d-flex flex-column justify-content-center align-items-center text-center\">\n <h4>{{ 'empty-cart' | translate }}</h4>\n <h5>{{ 'empty-cart-detail' | translate }}</h5>\n </div>\n </section>\n </section>\n </div>\n</ng-template>\n\n<ng-template #loading>\n <app-loading-full-ec></app-loading-full-ec>\n</ng-template>\n\n<ng-template #requireLoginView>\n</ng-template>\n\n\n<!-- <ec-checkout-error></ec-checkout-error> -->\n",
@@ -10057,7 +10187,7 @@ CheckoutEcComponent = __decorate$T([
10057
10187
  })
10058
10188
  ], CheckoutEcComponent);
10059
10189
 
10060
- var __decorate$U = (this && this.__decorate) || function (decorators, target, key, desc) {
10190
+ var __decorate$V = (this && this.__decorate) || function (decorators, target, key, desc) {
10061
10191
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
10062
10192
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
10063
10193
  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;
@@ -10119,61 +10249,61 @@ let DataformEcSingleComponent = class DataformEcSingleComponent {
10119
10249
  DataformEcSingleComponent.ctorParameters = () => [
10120
10250
  { type: ElementRef }
10121
10251
  ];
10122
- __decorate$U([
10252
+ __decorate$V([
10123
10253
  Input()
10124
10254
  ], DataformEcSingleComponent.prototype, "showToggle", void 0);
10125
- __decorate$U([
10255
+ __decorate$V([
10126
10256
  Input()
10127
10257
  ], DataformEcSingleComponent.prototype, "isNewAddressMode", void 0);
10128
- __decorate$U([
10258
+ __decorate$V([
10129
10259
  Input()
10130
10260
  ], DataformEcSingleComponent.prototype, "showDefaultNewAddressButton", void 0);
10131
- __decorate$U([
10261
+ __decorate$V([
10132
10262
  Input()
10133
10263
  ], DataformEcSingleComponent.prototype, "customNewAddressLabel", void 0);
10134
- __decorate$U([
10264
+ __decorate$V([
10135
10265
  Input()
10136
10266
  ], DataformEcSingleComponent.prototype, "isTemporarySelected", void 0);
10137
- __decorate$U([
10267
+ __decorate$V([
10138
10268
  Input()
10139
10269
  ], DataformEcSingleComponent.prototype, "selectedAddressLabel", void 0);
10140
- __decorate$U([
10270
+ __decorate$V([
10141
10271
  Input()
10142
10272
  ], DataformEcSingleComponent.prototype, "addressDropdownOpen", void 0);
10143
- __decorate$U([
10273
+ __decorate$V([
10144
10274
  Input()
10145
10275
  ], DataformEcSingleComponent.prototype, "addressSearch", void 0);
10146
- __decorate$U([
10276
+ __decorate$V([
10147
10277
  Input()
10148
10278
  ], DataformEcSingleComponent.prototype, "addressOptions", void 0);
10149
- __decorate$U([
10279
+ __decorate$V([
10150
10280
  Input()
10151
10281
  ], DataformEcSingleComponent.prototype, "showSelectBlock", void 0);
10152
- __decorate$U([
10282
+ __decorate$V([
10153
10283
  Input()
10154
10284
  ], DataformEcSingleComponent.prototype, "hasSelectedAddress", void 0);
10155
- __decorate$U([
10285
+ __decorate$V([
10156
10286
  Output()
10157
10287
  ], DataformEcSingleComponent.prototype, "modeChange", void 0);
10158
- __decorate$U([
10288
+ __decorate$V([
10159
10289
  Output()
10160
10290
  ], DataformEcSingleComponent.prototype, "toggleDropdown", void 0);
10161
- __decorate$U([
10291
+ __decorate$V([
10162
10292
  Output()
10163
10293
  ], DataformEcSingleComponent.prototype, "closeDropdown", void 0);
10164
- __decorate$U([
10294
+ __decorate$V([
10165
10295
  Output()
10166
10296
  ], DataformEcSingleComponent.prototype, "selectAddress", void 0);
10167
- __decorate$U([
10297
+ __decorate$V([
10168
10298
  Output()
10169
10299
  ], DataformEcSingleComponent.prototype, "addressSearchChange", void 0);
10170
- __decorate$U([
10300
+ __decorate$V([
10171
10301
  HostListener('document:click', ['$event'])
10172
10302
  ], DataformEcSingleComponent.prototype, "onDocumentClick", null);
10173
- __decorate$U([
10303
+ __decorate$V([
10174
10304
  HostListener('document:mousedown', ['$event'])
10175
10305
  ], DataformEcSingleComponent.prototype, "onDocumentMouseDown", null);
10176
- DataformEcSingleComponent = __decorate$U([
10306
+ DataformEcSingleComponent = __decorate$V([
10177
10307
  Component({
10178
10308
  selector: 'app-dataform-ec-single',
10179
10309
  template: "<ng-container *ngIf=\"showToggle\">\n <div class=\"address-toggle\">\n <button type=\"button\" class=\"address-toggle-btn\" [class.is-active]=\"!isNewAddressMode\"\n (click)=\"modeChange.emit('seleccion')\">\n {{ 'select-address-short' | translate | titlecase }}\n </button>\n <button type=\"button\" class=\"address-toggle-btn\" [class.is-active]=\"isNewAddressMode\"\n *ngIf=\"showDefaultNewAddressButton\"\n (click)=\"modeChange.emit('carga')\">\n {{\n (isTemporarySelected && !isNewAddressMode)\n ? ('update-address' | translate)\n : ('new-address-short' | translate | titlecase)\n }}\n </button>\n <button type=\"button\" class=\"address-toggle-btn\" [class.is-active]=\"isNewAddressMode\"\n *ngIf=\"customNewAddressLabel\"\n (click)=\"modeChange.emit('carga')\">\n {{\n (isTemporarySelected && !isNewAddressMode)\n ? ('update-address' | translate)\n : customNewAddressLabel\n }}\n </button>\n </div>\n</ng-container>\n\n<ng-container *ngIf=\"showSelectBlock\">\n <div class=\"address-select-compact\">\n <button type=\"button\" class=\"address-select-trigger\" (click)=\"onToggleDropdown()\">\n <span class=\"address-select-label\">\n {{ hasSelectedAddress ? selectedAddressLabel : ('select-address' | translate) }}\n </span>\n <span class=\"address-select-caret\">\u25BE</span>\n </button>\n <div class=\"address-select-panel\" *ngIf=\"addressDropdownOpen\" (click)=\"onPanelClick($event)\" (mousedown)=\"onPanelMouseDown($event)\">\n <input class=\"form-control address-select-search\" type=\"search\"\n [ngModel]=\"addressSearch\" (ngModelChange)=\"onSearchChange($event)\"\n placeholder=\"{{ ('search' | translate) | titlecase }}\" />\n <button type=\"button\" class=\"address-option is-disabled\" *ngIf=\"!hasSelectedAddress\" disabled>\n {{ 'select-address' | translate }}\n </button>\n <button type=\"button\" class=\"address-option\" *ngFor=\"let item of addressOptions\"\n (mousedown)=\"onSelectAddressMouseDown($event, item)\"\n (click)=\"onSelectAddress(item)\">\n {{ item?.label || item }}\n </button>\n <div class=\"address-option-empty\" *ngIf=\"addressOptions?.length === 0\">\n {{ 'no-address-results' | translate }}\n </div>\n </div>\n </div>\n</ng-container>\n",
@@ -10181,7 +10311,7 @@ DataformEcSingleComponent = __decorate$U([
10181
10311
  })
10182
10312
  ], DataformEcSingleComponent);
10183
10313
 
10184
- var __decorate$V = (this && this.__decorate) || function (decorators, target, key, desc) {
10314
+ var __decorate$W = (this && this.__decorate) || function (decorators, target, key, desc) {
10185
10315
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
10186
10316
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
10187
10317
  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;
@@ -10226,109 +10356,109 @@ let PaymentEcSingleComponent = class PaymentEcSingleComponent {
10226
10356
  this.getHiddenImages = (images = []) => (images.length > 4 ? images.slice(3) : []);
10227
10357
  }
10228
10358
  };
10229
- __decorate$V([
10359
+ __decorate$W([
10230
10360
  Input()
10231
10361
  ], PaymentEcSingleComponent.prototype, "loadingInternal", void 0);
10232
- __decorate$V([
10362
+ __decorate$W([
10233
10363
  Input()
10234
10364
  ], PaymentEcSingleComponent.prototype, "loadingInternalMp", void 0);
10235
- __decorate$V([
10365
+ __decorate$W([
10236
10366
  Input()
10237
10367
  ], PaymentEcSingleComponent.prototype, "paymentLocked", void 0);
10238
- __decorate$V([
10368
+ __decorate$W([
10239
10369
  Input()
10240
10370
  ], PaymentEcSingleComponent.prototype, "validatingMethodCode", void 0);
10241
- __decorate$V([
10371
+ __decorate$W([
10242
10372
  Input()
10243
10373
  ], PaymentEcSingleComponent.prototype, "selectedMethodCode", void 0);
10244
- __decorate$V([
10374
+ __decorate$W([
10245
10375
  Input()
10246
10376
  ], PaymentEcSingleComponent.prototype, "currentMethod", void 0);
10247
- __decorate$V([
10377
+ __decorate$W([
10248
10378
  Input()
10249
10379
  ], PaymentEcSingleComponent.prototype, "showMethodError", void 0);
10250
- __decorate$V([
10380
+ __decorate$W([
10251
10381
  Input()
10252
10382
  ], PaymentEcSingleComponent.prototype, "balanceMethodRejected", void 0);
10253
- __decorate$V([
10383
+ __decorate$W([
10254
10384
  Input()
10255
10385
  ], PaymentEcSingleComponent.prototype, "methods", void 0);
10256
- __decorate$V([
10386
+ __decorate$W([
10257
10387
  Input()
10258
10388
  ], PaymentEcSingleComponent.prototype, "totalAmount", void 0);
10259
- __decorate$V([
10389
+ __decorate$W([
10260
10390
  Input()
10261
10391
  ], PaymentEcSingleComponent.prototype, "isMethodDisabled", void 0);
10262
- __decorate$V([
10392
+ __decorate$W([
10263
10393
  Input()
10264
10394
  ], PaymentEcSingleComponent.prototype, "isMP", void 0);
10265
- __decorate$V([
10395
+ __decorate$W([
10266
10396
  Input()
10267
10397
  ], PaymentEcSingleComponent.prototype, "isMPTarjetaDeCredito", void 0);
10268
- __decorate$V([
10398
+ __decorate$W([
10269
10399
  Input()
10270
10400
  ], PaymentEcSingleComponent.prototype, "isRedirectRedsys", void 0);
10271
- __decorate$V([
10401
+ __decorate$W([
10272
10402
  Input()
10273
10403
  ], PaymentEcSingleComponent.prototype, "isRedirectCecaBank", void 0);
10274
- __decorate$V([
10404
+ __decorate$W([
10275
10405
  Input()
10276
10406
  ], PaymentEcSingleComponent.prototype, "isPeyPalExpress", void 0);
10277
- __decorate$V([
10407
+ __decorate$W([
10278
10408
  Input()
10279
10409
  ], PaymentEcSingleComponent.prototype, "isMobbex", void 0);
10280
- __decorate$V([
10410
+ __decorate$W([
10281
10411
  Input()
10282
10412
  ], PaymentEcSingleComponent.prototype, "isBancard", void 0);
10283
- __decorate$V([
10413
+ __decorate$W([
10284
10414
  Input()
10285
10415
  ], PaymentEcSingleComponent.prototype, "isDecidir", void 0);
10286
- __decorate$V([
10416
+ __decorate$W([
10287
10417
  Input()
10288
10418
  ], PaymentEcSingleComponent.prototype, "isMethodOffline", void 0);
10289
- __decorate$V([
10419
+ __decorate$W([
10290
10420
  Input()
10291
10421
  ], PaymentEcSingleComponent.prototype, "isCulqi", void 0);
10292
- __decorate$V([
10422
+ __decorate$W([
10293
10423
  Input()
10294
10424
  ], PaymentEcSingleComponent.prototype, "isCatastro", void 0);
10295
- __decorate$V([
10425
+ __decorate$W([
10296
10426
  Input()
10297
10427
  ], PaymentEcSingleComponent.prototype, "isBamboo", void 0);
10298
- __decorate$V([
10428
+ __decorate$W([
10299
10429
  Input()
10300
10430
  ], PaymentEcSingleComponent.prototype, "isBankTransfer", void 0);
10301
- __decorate$V([
10431
+ __decorate$W([
10302
10432
  Input()
10303
10433
  ], PaymentEcSingleComponent.prototype, "isPlaceToPay", void 0);
10304
- __decorate$V([
10434
+ __decorate$W([
10305
10435
  Input()
10306
10436
  ], PaymentEcSingleComponent.prototype, "isBalanceInAccount", void 0);
10307
- __decorate$V([
10437
+ __decorate$W([
10308
10438
  Input()
10309
10439
  ], PaymentEcSingleComponent.prototype, "getPK", void 0);
10310
- __decorate$V([
10440
+ __decorate$W([
10311
10441
  Input()
10312
10442
  ], PaymentEcSingleComponent.prototype, "getPKCulqi", void 0);
10313
- __decorate$V([
10443
+ __decorate$W([
10314
10444
  Input()
10315
10445
  ], PaymentEcSingleComponent.prototype, "getImageUrl", void 0);
10316
- __decorate$V([
10446
+ __decorate$W([
10317
10447
  Input()
10318
10448
  ], PaymentEcSingleComponent.prototype, "allData", void 0);
10319
- __decorate$V([
10449
+ __decorate$W([
10320
10450
  Input()
10321
10451
  ], PaymentEcSingleComponent.prototype, "paymentServiceInst", void 0);
10322
- __decorate$V([
10452
+ __decorate$W([
10323
10453
  Output()
10324
10454
  ], PaymentEcSingleComponent.prototype, "selectMethod", void 0);
10325
- __decorate$V([
10455
+ __decorate$W([
10326
10456
  Output()
10327
10457
  ], PaymentEcSingleComponent.prototype, "verifyValidate", void 0);
10328
- __decorate$V([
10458
+ __decorate$W([
10329
10459
  Output()
10330
10460
  ], PaymentEcSingleComponent.prototype, "setLoading", void 0);
10331
- PaymentEcSingleComponent = __decorate$V([
10461
+ PaymentEcSingleComponent = __decorate$W([
10332
10462
  Component({
10333
10463
  selector: 'app-payment-ec-single',
10334
10464
  template: "<div *ngIf=\"methods?.length\">\n <div class=\"payment-compact payment-compact-flat payment-step-surface\">\n <div class=\"single-step-overlay\" *ngIf=\"loadingInternalMp\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n <div class=\"card-body\">\n <div class=\"payment-lock-message\" *ngIf=\"paymentLocked\">\n {{ 'shipment-method-required' | translate }}\n </div>\n <div class=\"payment-options\" [class.is-locked]=\"paymentLocked\">\n <ng-container *ngFor=\"let method of methods\">\n <label class=\"payment-option\"\n [class.is-selected]=\"selectedMethodCode === method.code\"\n [class.is-disabled]=\"isMethodDisabled(method)\">\n <input class=\"payment-option-input\" type=\"radio\" name=\"payment-option\"\n [checked]=\"selectedMethodCode === method.code\"\n [disabled]=\"paymentLocked || isMethodDisabled(method)\"\n (click)=\"selectMethod.emit(method)\">\n <span class=\"payment-option-title\">{{ method.name | translate }}</span>\n <span class=\"payment-option-logos\" *ngIf=\"method.images?.length\">\n <img class=\"payment-option-logo\"\n *ngFor=\"let logo of getVisibleImages(method.images)\"\n [src]=\"getImageUrl ? getImageUrl(logo) : (logo?.path || logo?.url || logo?.src || logo)\"\n [alt]=\"logo?.name || (method.name || '')\"\n [title]=\"logo?.name || (method.name || '')\">\n <span class=\"payment-option-more\"\n *ngIf=\"method.images.length > 4\"\n [tooltip]=\"hiddenImagesTpl\"\n placement=\"top\"\n container=\"body\"\n triggers=\"hover\">\n +{{ method.images.length - 3 }}\n </span>\n <ng-template #hiddenImagesTpl>\n <span class=\"payment-tooltip-logos\">\n <img class=\"payment-tooltip-logo\"\n *ngFor=\"let logo of getHiddenImages(method.images)\"\n [src]=\"getImageUrl ? getImageUrl(logo) : (logo?.path || logo?.url || logo?.src || logo)\"\n [alt]=\"logo?.name || ''\">\n </span>\n </ng-template>\n </span>\n </label>\n <div class=\"payment-option-details\" *ngIf=\"selectedMethodCode === method.code\">\n <ng-container *ngIf=\"validatingMethodCode === method.code; else methodContent\">\n <div class=\"d-flex justify-content-center py-2\">\n <app-loading-inline-ec></app-loading-inline-ec>\n </div>\n </ng-container>\n <ng-template #methodContent>\n <ng-container *ngIf=\"!showMethodError && currentMethod?.code === method.code\">\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.emit($event)\" [method]=\"method\"\n [paymentServiceInst]=\"paymentServiceInst\"\n [allData]=\"allData()\"></app-mp-redirect-ec>\n </div>\n <div class=\"method-container text-dark text-left\"\n *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.emit()\"\n [public_key]=\"getPK(method)\" [user_data]=\"allData()\"\n [total_amount]=\"totalAmount\">\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\n *ngIf=\"!method.code.includes('bizum') && !method.code.includes('_out_')\">\n <app-redsys-redirect-ec (ready)=\"verifyValidate.emit($event)\"\n [method]=\"method\" [user_data]=\"allData()\">\n </app-redsys-redirect-ec>\n </ng-container>\n <ng-container\n *ngIf=\"method.code.includes('bizum') || method.code.includes('_out_')\">\n <app-redsys-redirect-out-ec (ready)=\"verifyValidate.emit($event)\"\n [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\"\n *ngIf=\"isRedirectCecaBank(method.code)\">\n <div class=\"row\">\n <div class=\"col-12\">\n <app-ceca-redirect-ec (ready)=\"verifyValidate.emit($event)\" [method]=\"method\"\n [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.emit($event)\"\n [method]=\"method\" [user_data]=\"allData()\"\n [total_amount]=\"totalAmount\">\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.emit($event)\" [method]=\"method\"\n [user_data]=\"allData()\" [paymentServiceInst]=\"paymentServiceInst\"\n [total_amount]=\"totalAmount\">\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.emit($event)\" [method]=\"method\"\n [user_data]=\"allData()\" [paymentServiceInst]=\"paymentServiceInst\"\n [total_amount]=\"totalAmount\">\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.emit($event)\" [method]=\"method\"\n [user_data]=\"allData()\" [paymentServiceInst]=\"paymentServiceInst\"\n [total_amount]=\"totalAmount\">\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.emit(); verifyValidate.emit()\">{{\n ('pay-with-offline'| translate) }}</button>\n </div>\n <ng-container *ngIf=\"loadingInternal\">\n <div class=\"mt-2\">\n <app-loading-inline-ec></app-loading-inline-ec>\n </div>\n </ng-container>\n </div>\n <div class=\"method-container text-dark text-start\" *ngIf=\"isCulqi(method.code)\">\n <div class=\"container\">\n <div class=\"row justify-content-center\">\n <div class=\"col-12\">\n <app-culqi-ec [apiKey]=\"getPKCulqi(method)\" [method]=\"method\"\n [amount]=\"totalAmount\" [customStyle]=\"true\"\n (ready)=\"verifyValidate.emit()\"></app-culqi-ec>\n </div>\n </div>\n </div>\n </div>\n <div class=\"method-container text-dark text-start\" *ngIf=\"isCatastro(method.code)\">\n <div class=\"container\">\n <div class=\"row justify-content-center\">\n <div class=\"col-12\">\n <app-bancard-catastro-ec (ready)=\"verifyValidate.emit($event)\"\n [method]=\"method\" [user_data]=\"allData()\"\n [paymentServiceInst]=\"paymentServiceInst\"\n [total_amount]=\"totalAmount\"></app-bancard-catastro-ec>\n </div>\n </div>\n </div>\n </div>\n <div class=\"method-container text-dark text-start\" *ngIf=\"isBamboo(method.code)\">\n <div class=\"container\">\n <div class=\"row justify-content-center\">\n <div class=\"col-12\">\n <app-bamboo-ec (ready)=\"verifyValidate.emit($event)\" [method]=\"method\"\n [user_data]=\"allData()\" [paymentServiceInst]=\"paymentServiceInst\"\n [total_amount]=\"totalAmount\"></app-bamboo-ec>\n </div>\n </div>\n </div>\n </div>\n <div class=\"method-container text-dark\" *ngIf=\"isBankTransfer(method.code)\">\n <div class=\"row px-0 description-cont\">\n <ng-container\n *ngFor=\"let line of method.description.split('\\r\\n'); let i=index\">\n <p [id]=\"'faqs-'+i\" [class]=\"'qt px-5 m-0 line-'+i\">{{ line }}</p>\n </ng-container>\n </div>\n <hr *ngIf=\"method.instructions\">\n <div *ngIf=\"method.instructions\" class=\"row px-0 instructions-cont mb-1\">\n <h5 class=\"instructions-title\">{{ ('instructions' | translate) }}</h5>\n <ng-container\n *ngFor=\"let line of method.instructions.split('\\r\\n'); let i=index\">\n <p [class]=\"'px-5 m-0 instructions-text line-'+i \">{{ line }}</p>\n </ng-container>\n </div>\n\n <div class=\"end-button\">\n <button class=\"btn comprar\" (click)=\"setLoading.emit(); verifyValidate.emit()\">{{\n ('pay-with-transfer'\n | translate) }}</button>\n </div>\n <ng-container *ngIf=\"loadingInternal\">\n <div class=\"mt-2\">\n <app-loading-inline-ec></app-loading-inline-ec>\n </div>\n </ng-container>\n </div>\n <div class=\"method-container text-dark\" *ngIf=\"isPlaceToPay(method.code)\">\n <p id=\"faqs\" *ngIf=\"method.description\" class=\"qt px-5 \">{{ method.description }}\n </p>\n <p class=\"px-5\" *ngIf=\"method.instructions\">{{ method.instructions }}</p>\n <app-place-to-pay-ec (ready)=\"verifyValidate.emit($event)\" [method]=\"method\"\n [paymentServiceInst]=\"paymentServiceInst\" [allData]=\"allData()\">\n </app-place-to-pay-ec>\n </div>\n </ng-container>\n <ng-container *ngIf=\"showMethodError\">\n <div class=\"text-danger mt-2 px-3 fw-bold\">\n {{ 'this-payment-method-cannot-be-used' | translate }}\n </div>\n </ng-container>\n <div class=\"method-container text-dark\"\n *ngIf=\"currentMethod?.code === method.code && isBalanceInAccount(method.code) && !showMethodError\">\n <div class=\"row px-0 description-cont\" *ngIf=\"method.description\">\n <ng-container *ngFor=\"let line of method.description.split('\\r\\n'); let i = index\">\n <p [id]=\"'cc-desc-'+i\" [class]=\"'qt px-5 m-0 line-'+i\">{{ line }}</p>\n </ng-container>\n </div>\n\n <hr *ngIf=\"method.instructions\">\n\n <div *ngIf=\"method.instructions\" class=\"row px-0 instructions-cont mb-1\">\n <h5 class=\"instructions-title\">{{ ('instructions' | translate) }}</h5>\n <ng-container *ngFor=\"let line of method.instructions.split('\\r\\n'); let i = index\">\n <p [class]=\"'px-5 m-0 instructions-text line-'+i \">{{ line }}</p>\n </ng-container>\n </div>\n\n <ng-container *ngIf=\"!balanceMethodRejected; else showCreditError\">\n <div class=\"end-button\">\n <button class=\"btn comprar\" (click)=\"setLoading.emit(); verifyValidate.emit()\">\n {{ 'pay-with' | translate }} {{ method.name }}\n </button>\n </div>\n </ng-container>\n\n <ng-template #showCreditError>\n <div class=\"text-danger mt-2 px-3 fw-bold\">\n {{ 'not-enough-credits-to-complete' | translate }}\n </div>\n </ng-template>\n <ng-container *ngIf=\"loadingInternal\">\n <div class=\"mt-2\">\n <app-loading-inline-ec></app-loading-inline-ec>\n </div>\n </ng-container>\n </div>\n </ng-template>\n </div>\n </ng-container>\n </div>\n </div>\n </div>\n</div>\n",
@@ -10336,7 +10466,7 @@ PaymentEcSingleComponent = __decorate$V([
10336
10466
  })
10337
10467
  ], PaymentEcSingleComponent);
10338
10468
 
10339
- var __decorate$W = (this && this.__decorate) || function (decorators, target, key, desc) {
10469
+ var __decorate$X = (this && this.__decorate) || function (decorators, target, key, desc) {
10340
10470
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
10341
10471
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
10342
10472
  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;
@@ -10390,37 +10520,37 @@ let ShipmentEcSingleComponent = class ShipmentEcSingleComponent {
10390
10520
  ShipmentEcSingleComponent.ctorParameters = () => [
10391
10521
  { type: ShippingPriceDisplayService }
10392
10522
  ];
10393
- __decorate$W([
10523
+ __decorate$X([
10394
10524
  Input()
10395
10525
  ], ShipmentEcSingleComponent.prototype, "loadingInternal", void 0);
10396
- __decorate$W([
10526
+ __decorate$X([
10397
10527
  Input()
10398
10528
  ], ShipmentEcSingleComponent.prototype, "loadingPreload", void 0);
10399
- __decorate$W([
10529
+ __decorate$X([
10400
10530
  Input()
10401
10531
  ], ShipmentEcSingleComponent.prototype, "singleOptions", void 0);
10402
- __decorate$W([
10532
+ __decorate$X([
10403
10533
  Input()
10404
10534
  ], ShipmentEcSingleComponent.prototype, "groupedOptions", void 0);
10405
- __decorate$W([
10535
+ __decorate$X([
10406
10536
  Input()
10407
10537
  ], ShipmentEcSingleComponent.prototype, "selectedOptionId", void 0);
10408
- __decorate$W([
10538
+ __decorate$X([
10409
10539
  Input()
10410
10540
  ], ShipmentEcSingleComponent.prototype, "unavailableMethods", void 0);
10411
- __decorate$W([
10541
+ __decorate$X([
10412
10542
  Input()
10413
10543
  ], ShipmentEcSingleComponent.prototype, "methods", void 0);
10414
- __decorate$W([
10544
+ __decorate$X([
10415
10545
  Input()
10416
10546
  ], ShipmentEcSingleComponent.prototype, "shipmentErrorKey", void 0);
10417
- __decorate$W([
10547
+ __decorate$X([
10418
10548
  Input()
10419
10549
  ], ShipmentEcSingleComponent.prototype, "isFreeShipping", void 0);
10420
- __decorate$W([
10550
+ __decorate$X([
10421
10551
  Output()
10422
10552
  ], ShipmentEcSingleComponent.prototype, "selectOption", void 0);
10423
- ShipmentEcSingleComponent = __decorate$W([
10553
+ ShipmentEcSingleComponent = __decorate$X([
10424
10554
  Component({
10425
10555
  selector: 'app-shipment-ec-single',
10426
10556
  template: "<div class=\"shipment-compact shipment-compact-flat shipment-step-surface\">\n <div class=\"single-step-overlay\" *ngIf=\"loadingInternal\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n <ng-container *ngIf=\"loadingPreload; else shipmentOptions\">\n <div class=\"shipment-loading\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n </ng-container>\n <ng-template #shipmentOptions>\n <ng-container *ngIf=\"groupedOptions?.length; else noMethods\">\n <div class=\"shipment-groups\">\n <div class=\"shipment-group\" *ngFor=\"let group of groupedOptions; trackBy: trackByGroup\">\n <div class=\"shipment-group-title\">{{ group.label | translate }}</div>\n <div class=\"shipment-options\">\n <label class=\"shipment-option\"\n *ngFor=\"let option of group.options; trackBy: trackByOption\"\n [class.is-selected]=\"selectedOptionId === option.id\">\n <input class=\"shipment-option-input\" type=\"radio\" name=\"shipping-option\"\n [checked]=\"selectedOptionId === option.id\"\n (click)=\"selectOption.emit(option)\">\n <span class=\"shipment-option-body\">\n <span class=\"shipment-option-title\" *ngIf=\"!shouldHideContractName(option)\">\n {{ option.contract?.name | translate }}\n </span>\n <span class=\"shipment-option-method\" *ngIf=\"option.method?.name\">\n {{ option.method?.name | translate }}\n </span>\n <span class=\"shipment-option-sub\" *ngIf=\"option.contract?.computed\">\n {{ option.contract?.computed | translate }}\n </span>\n <ng-container *ngIf=\"option.contract?.detail\">\n <span class=\"shipment-option-sub\"\n *ngFor=\"let line of getDetailLines(option.contract.detail); let i = index\"\n [class.shipment-option-detail-primary]=\"i === 0\">\n {{ line }}\n </span>\n </ng-container>\n </span>\n <ng-container *ngIf=\"getOptionPriceView(option) as priceView\">\n <span class=\"shipment-option-price\" [class.shipment-option-price--discounted]=\"priceView.showOriginalPrice\"\n [class.shipment-option-price--free]=\"priceView.isFree\">\n <del class=\"shipment-option-price-original\" *ngIf=\"priceView.showOriginalPrice\">\n {{ priceView.originalPrice | ecCurrencySymbol:'alwaysShowDecimals' }}\n </del>\n <strong class=\"shipment-option-price-current\">\n <ng-container *ngIf=\"priceView.isFree; else finalPrice\">\n {{ 'free' | translate }}\n </ng-container>\n <ng-template #finalPrice>\n {{ priceView.finalPrice | ecCurrencySymbol:'alwaysShowDecimals' }}\n </ng-template>\n </strong>\n </span>\n </ng-container>\n </label>\n </div>\n </div>\n </div>\n </ng-container>\n </ng-template>\n <div class=\"shipment-error\" *ngIf=\"shipmentErrorKey && singleOptions.length === 0 && !loadingPreload\">\n {{ shipmentErrorKey | translate }}\n </div>\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</div>\n",
@@ -10428,7 +10558,7 @@ ShipmentEcSingleComponent = __decorate$W([
10428
10558
  })
10429
10559
  ], ShipmentEcSingleComponent);
10430
10560
 
10431
- var __decorate$X = (this && this.__decorate) || function (decorators, target, key, desc) {
10561
+ var __decorate$Y = (this && this.__decorate) || function (decorators, target, key, desc) {
10432
10562
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
10433
10563
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
10434
10564
  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;
@@ -10734,19 +10864,19 @@ ShipmentEcComponent.ctorParameters = () => [
10734
10864
  { type: TranslateService },
10735
10865
  { type: ShippingPriceDisplayService }
10736
10866
  ];
10737
- __decorate$X([
10867
+ __decorate$Y([
10738
10868
  Input()
10739
10869
  ], ShipmentEcComponent.prototype, "step_id", void 0);
10740
- __decorate$X([
10870
+ __decorate$Y([
10741
10871
  Input()
10742
10872
  ], ShipmentEcComponent.prototype, "compactShipmentView", void 0);
10743
- __decorate$X([
10873
+ __decorate$Y([
10744
10874
  Output()
10745
10875
  ], ShipmentEcComponent.prototype, "summaryChange", void 0);
10746
- __decorate$X([
10876
+ __decorate$Y([
10747
10877
  Output()
10748
10878
  ], ShipmentEcComponent.prototype, "advanceStep", void 0);
10749
- ShipmentEcComponent = __decorate$X([
10879
+ ShipmentEcComponent = __decorate$Y([
10750
10880
  Component({
10751
10881
  selector: 'app-shipment-ec',
10752
10882
  template: "<!-- <div class=\"checkout-title\">\n <h3>{{'shipment-methods'|translate}}</h3>\n</div> -->\n\n<ng-container *ngIf=\"compactShipmentView; else legacyShipment\">\n <app-shipment-ec-single\n [loadingInternal]=\"loading_internal\"\n [loadingPreload]=\"loading_preload\"\n [singleOptions]=\"singleOptions\"\n [groupedOptions]=\"groupedOptions\"\n [selectedOptionId]=\"selectedOptionId\"\n [unavailableMethods]=\"unavailableMethods\"\n [methods]=\"deleteUPS((shipmentService.methods | async) || [])\"\n [shipmentErrorKey]=\"shipmentErrorKey\"\n [isFreeShipping]=\"costos?.amount == 0\"\n (selectOption)=\"selectSingleOption($event)\">\n </app-shipment-ec-single>\n</ng-container>\n\n<ng-template #legacyShipment>\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 [disabled]=\"this.shipmentService.buttonsDisabled || this.buttonsDisabled\" 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 <div class=\"col-12 col-md-6 col-lg-4 d-flex flex-column mb-2\" [id]=\"methodSelect.code\">\n <ng-container *ngFor=\"let line of methodSelect.description.split('\\r\\n'); let i=index\">\n <span [id]=\"methodSelect.code+'-'+i\" [class]=\"'line-'+i\" [innerHTML]=\"line\"> </span>\n </ng-container>\n </div>\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; let y = index\">\n <ng-container *ngIf=\"cost.contracts.length > 0\">\n <ng-container *ngIf=\"costs.length > 1; else uniqueShipment\">\n <span><b>{{ cost.name | translate }}</b></span>\n <hr />\n </ng-container>\n <ng-template #uniqueShipment>\n <span><b>{{ methodSelect.name | translate }}</b></span>\n <hr />\n </ng-template>\n <div class=\"option\" *ngFor=\"let contract of cost.contracts; let i = index\">\n <div class=\"form-check current-contract\">\n <input class=\"form-check-input\" [checked]=\"(y === 0 && i === 0) ? true : 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\" class=\"contract-detail\">\n <div *ngFor=\"let line of contract.detail.split(' - '); let i = index\" [class]=\"'contrat-item-'+i\">\n <span *ngIf=\"i == 0\"><b>{{ line }}</b></span>\n <span class=\"inside-detail\" *ngIf=\"i > 0\">{{ line }}</span>\n </div>\n </div>\n <ng-container *ngIf=\"getContractPriceView(contract) as priceView\">\n <span class=\"inside-detail shipment-price-detail\"\n [class.shipment-price-detail--discounted]=\"priceView.showOriginalPrice\"\n [class.shipment-price-detail--free]=\"priceView.isFree\">\n <br class=\"shipment-contractname\" *ngIf=\"!contract.computed\">\n <del class=\"shipment-price-original\" *ngIf=\"priceView.showOriginalPrice\">\n {{ priceView.originalPrice | ecCurrencySymbol:'alwaysShowDecimals' }}\n </del>\n <strong class=\"shipment-price-current\">\n <ng-container *ngIf=\"priceView.isFree; else shipmentPriceValue\">\n {{ 'free' | translate }}\n </ng-container>\n <ng-template #shipmentPriceValue>\n {{ priceView.finalPrice | ecCurrencySymbol:'alwaysShowDecimals' }}\n </ng-template>\n </strong>\n </span>\n </ng-container>\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</ng-template>\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 <ng-container *ngIf=\"!compactShipmentView\">\n <app-loading-full-ec></app-loading-full-ec>\n </ng-container>\n</ng-template>\n",
@@ -10755,7 +10885,7 @@ ShipmentEcComponent = __decorate$X([
10755
10885
  })
10756
10886
  ], ShipmentEcComponent);
10757
10887
 
10758
- var __decorate$Y = (this && this.__decorate) || function (decorators, target, key, desc) {
10888
+ var __decorate$Z = (this && this.__decorate) || function (decorators, target, key, desc) {
10759
10889
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
10760
10890
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
10761
10891
  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;
@@ -10838,7 +10968,7 @@ SuccessEcComponent.ctorParameters = () => [
10838
10968
  { type: BlocksService },
10839
10969
  { type: Constants }
10840
10970
  ];
10841
- SuccessEcComponent = __decorate$Y([
10971
+ SuccessEcComponent = __decorate$Z([
10842
10972
  Component({
10843
10973
  selector: 'app-order-success-ec',
10844
10974
  template: "<div id=\"container\" class=\"flex-center generalContainer container-xl\">\n <div class=\"Main card my-2\" *ngIf=\"this.payments && this.payments[0].method.code; else loading\">\n <ng-container *ngIf=\"this.blocks && this.blocks.length > 0; else notInfoToMethod\">\n <ng-container *ngIf=\"containsBlock(this.payments[0].method.code) as bloque; else notInfoToMethod\">\n <div class=\"wrap my-4 card-body\" [id]=\"bloque.code\">\n <div class=\"row\">\n <div class=\"col-md-12 col-12\">\n <h5 [class]=\"bloque.code+'-title'\">{{ (bloque?.translations[consts.getLocale()]?.name ?\n bloque.translations[consts.getLocale()].name :\n 'thanks-for-buying') | translate\n | uppercase }}</h5>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-md-12 col-12 text-start\">\n <app-blocks-ec [section]=\"'info_metodo_pago'\" [blockFilters]=\"this.payments[0].method.code\">\n </app-blocks-ec>\n <div class=\"d-flex flex-column details\">\n <p class=\"card-text\">{{ ('number' | translate) + ': ' + params.external_reference }}</p>\n <p class=\"card-text\">\n {{ isBalanceInAccount(payments[0].method.code) ?\n ('balance-in-account-message' | translate) :\n ((params.payment_status || 'pending') | translate) }}\n </p>\n </div>\n </div>\n </div>\n </div>\n </ng-container>\n </ng-container>\n <ng-template #notInfoToMethod>\n <ng-template #defaultMessage>\n <div class=\"wrap my-4 card-body\">\n <div class=\"row\">\n <div class=\"col-md-12 col-12\">\n <h5 class=\"card-title titpage center-block text-center\">\n {{ 'thanks-for-buying' | translate | uppercase }}\n </h5>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-md-12 col-12 text-center py-3\">\n <h4 class=\"thanks-details\">{{ 'thanks-details' | translate }}</h4>\n <h5 class=\"number order-info-line\" [ngClass]=\"{ 'compact': paymentDate && totalAmount }\">{{ ('number' | translate) + ': ' + params.external_reference }}</h5>\n <h5 class=\"order-info-line\" *ngIf=\"paymentDate && totalAmount\">\n {{'payment-date' | translate }}: {{ paymentDate }}\n </h5>\n <h5 class=\"order-info-line\" *ngIf=\"paymentDate && totalAmount\">\n {{'total-paid' | translate }}: {{ totalAmount | ecCurrencySymbol }}\n </h5>\n <h5 class=\"pending\">\n {{ isBalanceInAccount(payments[0].method.code) ?\n ('balance-in-account-message' | translate) :\n ((params.payment_status || 'pending') | translate) }}\n </h5>\n <!-- <h5 *ngIf=\"!from_mp\">{{ ('will_contact' | translate) }}</h5> -->\n\n <!-- <a routerLink=\"/collection\"><button class=\"comprar\">{{ 'continue-shopping' | translate }}</button></a> -->\n </div>\n </div>\n </div>\n </ng-template>\n <ng-container [ngTemplateOutlet]=\"notInfoToMethodTemplate ? notInfoToMethodTemplate : defaultMessage\"\n [ngTemplateOutletContext]=\"{params:params}\">\n </ng-container>\n </ng-template>\n </div>\n</div>\n\n<ng-template #loading>\n <app-loading-full-ec></app-loading-full-ec>\n</ng-template>",
@@ -10846,14 +10976,14 @@ SuccessEcComponent = __decorate$Y([
10846
10976
  })
10847
10977
  ], SuccessEcComponent);
10848
10978
 
10849
- var __decorate$Z = (this && this.__decorate) || function (decorators, target, key, desc) {
10979
+ var __decorate$_ = (this && this.__decorate) || function (decorators, target, key, desc) {
10850
10980
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
10851
10981
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
10852
10982
  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;
10853
10983
  return c > 3 && r && Object.defineProperty(target, key, r), r;
10854
10984
  };
10855
10985
  let CollectionEcComponent = class CollectionEcComponent extends ComponentHelper {
10856
- constructor(productsService, paramsSrv, activeRoute, optionsService, authService, analyticsService, cartService, consts, filtersService) {
10986
+ constructor(productsService, paramsSrv, activeRoute, optionsService, authService, analyticsService, cartService, consts, filtersService, seo) {
10857
10987
  super();
10858
10988
  this.productsService = productsService;
10859
10989
  this.paramsSrv = paramsSrv;
@@ -10864,6 +10994,7 @@ let CollectionEcComponent = class CollectionEcComponent extends ComponentHelper
10864
10994
  this.cartService = cartService;
10865
10995
  this.consts = consts;
10866
10996
  this.filtersService = filtersService;
10997
+ this.seo = seo;
10867
10998
  this.filters = [];
10868
10999
  this.filtersConfig = { filters: [] };
10869
11000
  this.finished = false;
@@ -10938,6 +11069,35 @@ let CollectionEcComponent = class CollectionEcComponent extends ComponentHelper
10938
11069
  this.getObjectWithVariant = () => {
10939
11070
  return this.consts.getParamsProductsWithUniqueVariant();
10940
11071
  };
11072
+ this.normalizeSeoBreadcrumbTitle = (value) => {
11073
+ var _a, _b, _c, _d, _e, _f;
11074
+ if (!value) {
11075
+ return '';
11076
+ }
11077
+ if (typeof value === 'string') {
11078
+ return value.trim();
11079
+ }
11080
+ return (_f = (_d = (_b = (_a = value) === null || _a === void 0 ? void 0 : _a.title, (_b !== null && _b !== void 0 ? _b : (_c = value) === null || _c === void 0 ? void 0 : _c.name)), (_d !== null && _d !== void 0 ? _d : (_e = value) === null || _e === void 0 ? void 0 : _e.label)), (_f !== null && _f !== void 0 ? _f : '')).toString().trim();
11081
+ };
11082
+ this.updateCollectionSeo = () => {
11083
+ var _a;
11084
+ const siteName = this.seo.getSiteName();
11085
+ const breadcrumbTitle = this.normalizeSeoBreadcrumbTitle(((_a = this.breadcrumb) === null || _a === void 0 ? void 0 : _a.length) ? this.breadcrumb[this.breadcrumb.length - 1] : null);
11086
+ const searchTitle = typeof window !== 'undefined' ? (new URLSearchParams(window.location.search).get('search') || '').trim() : '';
11087
+ const titlePrefix = breadcrumbTitle || (searchTitle ? `Resultados para "${searchTitle}"` : 'Productos');
11088
+ const description = breadcrumbTitle
11089
+ ? `Catálogo de ${breadcrumbTitle.toLowerCase()} en ${siteName}.`
11090
+ : (searchTitle
11091
+ ? `Listado de productos para la búsqueda "${searchTitle}" en ${siteName}.`
11092
+ : `Catálogo de productos de ${siteName}.`);
11093
+ this.seo.setTitle(`${titlePrefix} | ${siteName}`);
11094
+ this.seo.setDescription(description);
11095
+ this.seo.setOgType('website');
11096
+ this.seo.setRobots('index, follow');
11097
+ if (typeof window !== 'undefined') {
11098
+ this.seo.setCanonical(window.location.href);
11099
+ }
11100
+ };
10941
11101
  this.paramsSrv.parameters.subscribe(param => this.params = param);
10942
11102
  this.defaultFilters = this.consts.getDefaultFilters();
10943
11103
  this.filtersConfig.filters = this.consts.getFilterConfig();
@@ -11008,6 +11168,7 @@ let CollectionEcComponent = class CollectionEcComponent extends ComponentHelper
11008
11168
  this.breadcrumb = this.optionsService.getBreadcrumbByFilters(res);
11009
11169
  this.filters = this.getSpecificFilters(res, this.filtersConfig.filters);
11010
11170
  this.filters_top = this.getSpecificFilters(res, ['sort']);
11171
+ this.updateCollectionSeo();
11011
11172
  });
11012
11173
  this.productsService.finished().subscribe(res => this.finished = res);
11013
11174
  }
@@ -11030,21 +11191,22 @@ CollectionEcComponent.ctorParameters = () => [
11030
11191
  { type: AnalyticsService },
11031
11192
  { type: CartService },
11032
11193
  { type: Constants },
11033
- { type: FiltersService }
11194
+ { type: FiltersService },
11195
+ { type: SeoService }
11034
11196
  ];
11035
- __decorate$Z([
11197
+ __decorate$_([
11036
11198
  Input()
11037
11199
  ], CollectionEcComponent.prototype, "type", void 0);
11038
- __decorate$Z([
11200
+ __decorate$_([
11039
11201
  Input()
11040
11202
  ], CollectionEcComponent.prototype, "value", void 0);
11041
- __decorate$Z([
11203
+ __decorate$_([
11042
11204
  Input()
11043
11205
  ], CollectionEcComponent.prototype, "productsWithUniqueVariant", void 0);
11044
- __decorate$Z([
11206
+ __decorate$_([
11045
11207
  Input()
11046
11208
  ], CollectionEcComponent.prototype, "optionsFilters", void 0);
11047
- CollectionEcComponent = __decorate$Z([
11209
+ CollectionEcComponent = __decorate$_([
11048
11210
  Component({
11049
11211
  selector: 'app-collection-ec',
11050
11212
  template: "\n<div>\n <div class=\"collection\">\n <ng-content select=\"[collection]\"> </ng-content>\n </div>\n\n <div class=\"all\">\n <ng-content select=\"[all]\"> </ng-content>\n </div>\n</div>\n\n<app-blocks-ec [section]=\"'collection'\"></app-blocks-ec>",
@@ -11052,7 +11214,7 @@ CollectionEcComponent = __decorate$Z([
11052
11214
  })
11053
11215
  ], CollectionEcComponent);
11054
11216
 
11055
- var __decorate$_ = (this && this.__decorate) || function (decorators, target, key, desc) {
11217
+ var __decorate$$ = (this && this.__decorate) || function (decorators, target, key, desc) {
11056
11218
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
11057
11219
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
11058
11220
  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;
@@ -11092,7 +11254,7 @@ CouponEcComponent.ctorParameters = () => [
11092
11254
  { type: CartService },
11093
11255
  { type: ToastService }
11094
11256
  ];
11095
- CouponEcComponent = __decorate$_([
11257
+ CouponEcComponent = __decorate$$([
11096
11258
  Component({
11097
11259
  selector: 'app-coupon-ec',
11098
11260
  template: "<!-- <div class=\"input-group mb-3 border-golden\" *ngIf=\"!aplied\">\n <input type=\"text\" class=\"form-control radius-0\" placeholder=\"\u00A1Tengo un cup\u00F3n de descuento!\"\n aria-label=\"\u00A1Tengo un cup\u00F3n de descuento!\" aria-describedby=\"basic-addon2\"\n [disabled]=\"aplied\" [(ngModel)]=\"coupon_value\">\n <div class=\"input-group-append\">\n <button class=\"btn bg-golden color-white radius-0\" \n (click)=\"setLoading() && addCoupon()\" \n [disabled]=\"!validCoupon() || loading\" \n type=\"button\">APLICAR</button>\n </div>\n</div> -->",
@@ -11100,7 +11262,7 @@ CouponEcComponent = __decorate$_([
11100
11262
  })
11101
11263
  ], CouponEcComponent);
11102
11264
 
11103
- var __decorate$$ = (this && this.__decorate) || function (decorators, target, key, desc) {
11265
+ var __decorate$10 = (this && this.__decorate) || function (decorators, target, key, desc) {
11104
11266
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
11105
11267
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
11106
11268
  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;
@@ -11136,7 +11298,7 @@ FaqsContentEcComponent.ctorParameters = () => [
11136
11298
  { type: OptionsService },
11137
11299
  { type: ToastService }
11138
11300
  ];
11139
- FaqsContentEcComponent = __decorate$$([
11301
+ FaqsContentEcComponent = __decorate$10([
11140
11302
  Component({
11141
11303
  selector: 'app-faqs-content-ec',
11142
11304
  template: "<section class=\"formulario container\" *ngIf=\"faqs; else loading\">\n\n <div *ngIf=\"!empty_faqs; else emptyFaqsView\">\n <div class=\"row w-100 mx-auto my-4 px-3 bb-s bt-md-s py-1\">\n <strong>{{ 'FAQ' | translate }}</strong>\n </div>\n\n <div class=\"row w-100 m-auto\">\n <div class=\"col-12 col-md-4 col-lg-3 col-xl-2\">\n <div class=\"nav flex-column nav-pills\" id=\"v-pills-tab\" role=\"tablist\" aria-orientation=\"vertical\">\n <a [class]=\"'nav-link radius-0 text-dark bb-solid ' + (i == 0 ? 'active' : '')\" data-bs-toggle=\"pill\"\n role=\"tab\" [id]=\"'v-pills-tab-'+i\" [href]=\"'#v-pills-'+i\" [attr.data-bs-target]=\"'#v-pills-'+i\"\n *ngFor=\"let faq of faqs; let i = index\">{{ faq.title | translate }}</a>\n </div>\n </div>\n <div class=\"col-12 col-md-8 col-lg-9 col-xl-10\">\n <div class=\"tab-content mt-5 mt-md-0\" id=\"v-pills-tabContent\">\n <div [class]=\"'tab-pane fade ' + (i == 0 ? 'show active' : '')\" role=\"tabpanel\"\n *ngFor=\"let faq of faqs; let i = index\" [id]=\"'v-pills-'+i\">\n <h3>{{ faq.title | translate }}</h3>\n <div *ngFor=\"let question of faq.questions\">\n <h5><strong>{{ question.question | translate }}</strong></h5>\n <p>{{ question.answer | translate }}</p>\n </div>\n </div>\n </div>\n\n </div>\n </div>\n </div>\n\n</section>\n\n<ng-template #loading>\n <div class=\"container\">\n <div class=\"row\">\n <div class=\"col-12 align-items-center\">\n <div class=\"d-flex flex-column jusitfy-content-center align-items-center my-5\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n </div>\n </div>\n </div>\n</ng-template>\n\n<ng-template #emptyFaqsView>\n <div>\n {{ 'empty_faqs' | translate }}\n </div>\n</ng-template>",
@@ -11144,13 +11306,13 @@ FaqsContentEcComponent = __decorate$$([
11144
11306
  })
11145
11307
  ], FaqsContentEcComponent);
11146
11308
 
11147
- var __decorate$10 = (this && this.__decorate) || function (decorators, target, key, desc) {
11309
+ var __decorate$11 = (this && this.__decorate) || function (decorators, target, key, desc) {
11148
11310
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
11149
11311
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
11150
11312
  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;
11151
11313
  return c > 3 && r && Object.defineProperty(target, key, r), r;
11152
11314
  };
11153
- var __param$7 = (this && this.__param) || function (paramIndex, decorator) {
11315
+ var __param$8 = (this && this.__param) || function (paramIndex, decorator) {
11154
11316
  return function (target, key) { decorator(target, key, paramIndex); }
11155
11317
  };
11156
11318
  /** @dynamic */
@@ -11351,28 +11513,28 @@ FiltersEcComponent.ctorParameters = () => [
11351
11513
  { type: Document, decorators: [{ type: Inject, args: [DOCUMENT,] }] },
11352
11514
  { type: FiltersService }
11353
11515
  ];
11354
- __decorate$10([
11516
+ __decorate$11([
11355
11517
  Input()
11356
11518
  ], FiltersEcComponent.prototype, "setSelected", void 0);
11357
- __decorate$10([
11519
+ __decorate$11([
11358
11520
  Input()
11359
11521
  ], FiltersEcComponent.prototype, "filters", void 0);
11360
- FiltersEcComponent = __decorate$10([
11522
+ FiltersEcComponent = __decorate$11([
11361
11523
  Component({
11362
11524
  selector: 'app-filters-ec',
11363
11525
  template: "",
11364
11526
  styles: [""]
11365
11527
  }),
11366
- __param$7(1, Inject(DOCUMENT))
11528
+ __param$8(1, Inject(DOCUMENT))
11367
11529
  ], FiltersEcComponent);
11368
11530
 
11369
- var __decorate$11 = (this && this.__decorate) || function (decorators, target, key, desc) {
11531
+ var __decorate$12 = (this && this.__decorate) || function (decorators, target, key, desc) {
11370
11532
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
11371
11533
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
11372
11534
  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;
11373
11535
  return c > 3 && r && Object.defineProperty(target, key, r), r;
11374
11536
  };
11375
- var __param$8 = (this && this.__param) || function (paramIndex, decorator) {
11537
+ var __param$9 = (this && this.__param) || function (paramIndex, decorator) {
11376
11538
  return function (target, key) { decorator(target, key, paramIndex); }
11377
11539
  };
11378
11540
  /** @dynamic */
@@ -11442,25 +11604,25 @@ FiltersTopEcComponent.ctorParameters = () => [
11442
11604
  { type: Constants },
11443
11605
  { type: Document, decorators: [{ type: Inject, args: [DOCUMENT,] }] }
11444
11606
  ];
11445
- __decorate$11([
11607
+ __decorate$12([
11446
11608
  Input()
11447
11609
  ], FiltersTopEcComponent.prototype, "setSelected", void 0);
11448
- __decorate$11([
11610
+ __decorate$12([
11449
11611
  Input()
11450
11612
  ], FiltersTopEcComponent.prototype, "filters", void 0);
11451
- __decorate$11([
11613
+ __decorate$12([
11452
11614
  Input()
11453
11615
  ], FiltersTopEcComponent.prototype, "full", void 0);
11454
- __decorate$11([
11616
+ __decorate$12([
11455
11617
  Output()
11456
11618
  ], FiltersTopEcComponent.prototype, "changeFilter", void 0);
11457
- FiltersTopEcComponent = __decorate$11([
11619
+ FiltersTopEcComponent = __decorate$12([
11458
11620
  Component({
11459
11621
  selector: 'app-filters-top-ec',
11460
11622
  template: "",
11461
11623
  styles: [".min-width-large{min-width:150px}"]
11462
11624
  }),
11463
- __param$8(1, Inject(DOCUMENT))
11625
+ __param$9(1, Inject(DOCUMENT))
11464
11626
  ], FiltersTopEcComponent);
11465
11627
 
11466
11628
  function withLeadingSlash(path) {
@@ -11583,7 +11745,7 @@ function pickFooterForDevice(footers, device) {
11583
11745
  return both || null;
11584
11746
  }
11585
11747
 
11586
- var __decorate$12 = (this && this.__decorate) || function (decorators, target, key, desc) {
11748
+ var __decorate$13 = (this && this.__decorate) || function (decorators, target, key, desc) {
11587
11749
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
11588
11750
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
11589
11751
  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;
@@ -11677,19 +11839,19 @@ FooterService.ctorParameters = () => [
11677
11839
  { type: Constants }
11678
11840
  ];
11679
11841
  FooterService.ɵprov = ɵɵdefineInjectable({ factory: function FooterService_Factory() { return new FooterService(ɵɵinject(ConnectionService), ɵɵinject(Constants)); }, token: FooterService, providedIn: "root" });
11680
- FooterService = __decorate$12([
11842
+ FooterService = __decorate$13([
11681
11843
  Injectable({
11682
11844
  providedIn: 'root'
11683
11845
  })
11684
11846
  ], FooterService);
11685
11847
 
11686
- var __decorate$13 = (this && this.__decorate) || function (decorators, target, key, desc) {
11848
+ var __decorate$14 = (this && this.__decorate) || function (decorators, target, key, desc) {
11687
11849
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
11688
11850
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
11689
11851
  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;
11690
11852
  return c > 3 && r && Object.defineProperty(target, key, r), r;
11691
11853
  };
11692
- var __param$9 = (this && this.__param) || function (paramIndex, decorator) {
11854
+ var __param$a = (this && this.__param) || function (paramIndex, decorator) {
11693
11855
  return function (target, key) { decorator(target, key, paramIndex); }
11694
11856
  };
11695
11857
  let FooterEcComponent = class FooterEcComponent extends ComponentHelper {
@@ -11890,16 +12052,16 @@ FooterEcComponent.ctorParameters = () => [
11890
12052
  { type: Router },
11891
12053
  { type: Object, decorators: [{ type: Inject, args: [PLATFORM_ID,] }] }
11892
12054
  ];
11893
- FooterEcComponent = __decorate$13([
12055
+ FooterEcComponent = __decorate$14([
11894
12056
  Component({
11895
12057
  selector: 'app-footer-ec',
11896
12058
  template: "",
11897
12059
  styles: [""]
11898
12060
  }),
11899
- __param$9(5, Inject(PLATFORM_ID))
12061
+ __param$a(5, Inject(PLATFORM_ID))
11900
12062
  ], FooterEcComponent);
11901
12063
 
11902
- var __decorate$14 = (this && this.__decorate) || function (decorators, target, key, desc) {
12064
+ var __decorate$15 = (this && this.__decorate) || function (decorators, target, key, desc) {
11903
12065
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
11904
12066
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
11905
12067
  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;
@@ -12074,10 +12236,10 @@ HeaderEcComponent.ctorParameters = () => [
12074
12236
  { type: Renderer2 },
12075
12237
  { type: ChannelConfigService }
12076
12238
  ];
12077
- __decorate$14([
12239
+ __decorate$15([
12078
12240
  ViewChild("menu")
12079
12241
  ], HeaderEcComponent.prototype, "menu_button", void 0);
12080
- HeaderEcComponent = __decorate$14([
12242
+ HeaderEcComponent = __decorate$15([
12081
12243
  Component({
12082
12244
  selector: 'app-header-ec',
12083
12245
  template: "<!-- <header [class]=\"(!transparent ? 'no-banner' : '')\" id=\"header-principal\">\n <div class=\"row border-color-buttom-gray m-0 d-none d-md-block\" id=\"novedades\">\n <div class=\"col-12 py-2\">\n {{ (params && params.header) || 'Sin informaci\u00F3n de cabecera' }}\n </div>\n </div>\n <div class=\"row encabezado-superior m-0 d-flex justify-content-center\" id=\"top-menu-principal\">\n <div class=\"col-md-6 col-3 p-md-3 p-2\">\n <a routerLink=\"/home\">\n <img src=\"assets/image/logo.png\" id=\"logo-superior\" class=\"ml-md-4 ml-1\">\n </a>\n </div>\n <div class=\"col-md-6 col-9 px-md-5 px-2 d-flex align-items-center justify-content-end\">\n <ul class=\"nav d-flex align-items-center justify-content-end\">\n <li class=\"px-2 outside-menu\">\n <div class=\"order-3 order-lg-1 input-search pt-3\">\n <form (submit)=\"$event.preventDefault()\" class=\"navbar-form navbar-left m-1\">\n <div class=\"input-group input-group-sm mb-3\" >\n <input type=\"text\" class=\"form-control input-rounded bg-transparent border-left-none\" placeholder=\"Buscar producto\"\n aria-label=\"Username\" aria-describedby=\"basic-addon1\" (keyup)=\"setSearchValue($event)\">\n <div class=\"input-group-prepend\" (click)=\"getCollectionSearch()\" role=\"button\">\n <span class=\"input-group-text icon-rounded bg-transparent border-right-none\" id=\"basic-addon1\">\n <a class=\"color-white\"><img src=\"assets/svg/search.svg\"></a>\n </span>\n </div>\n </div>\n </form>\n </div>\n </li>\n <li class=\"px-2 outside-menu\">\n <a routerLink=\"cart\" class=\"color-white\"><img src=\"assets/svg/cart.svg\"></a>\n </li>\n <li class=\"px-2 outside-menu\">\n <a [routerLink]=\"'/account'\" *ngIf=\"(authService.loggedIn | async); else sessionOptionsViewMobile\" class=\"color-white\"><img src=\"assets/svg/user.svg\"></a>\n <ng-template #sessionOptionsViewMobile>\n <a [routerLink]=\"'/auth/login'\" class=\"color-white\"><img src=\"assets/svg/user.svg\"></a>\n </ng-template>\n </li>\n <li class=\"px-2 outside-menu\">\n <a disabled style=\"vertical-align: -webkit-ecline-middle;\"\n class=\"color-white ff-ubuntu-light font-sm\">ES</a>\n </li>\n <li class=\"px-2 d-inline-block d-md-none\">\n <a id=\"openMenu\" class=\"color-white\" (click)=\"toogleToolbar()\">\n <img src=\"assets/svg/menu.svg\" class=\"open-m\" >\n <img src=\"assets/svg/close.svg\" class=\"close-m\">\n </a>\n </li>\n </ul>\n </div>\n <div class=\"col-11 border-color-buttom-gray d-none d-md-block\"></div>\n </div>\n <nav class=\"py-md-3 py-0 w-100 d-none d-md-block\" id=\"menu-principal\" #menu>\n <ul class=\"nav d-flex flex-md-row flex-column justify-content-center\">\n <li class=\"dropdown separador-left\">\n <a class=\"dropdown-toggle color-white color-hover-golden ff-ubuntu-light py-md-2 py-3 px-4 font-sm\"\n data-toggle=\"dropdown\" aria-haspopup=\"true\" aria-expanded=\"false\" data-target=\"#buscador\"\n role=\"button\">\n CAT\u00C1LOGO\n </a>\n <ul class=\"dropdown-menu mega-menu dropdown-menu-right mt-md-2 mt-0\" role=\"menu\">\n <div class=\"flex-md-row flex-column py-0 d-flex align-items-start justify-content-center\">\n <div class=\"row mega-menu-center px-md-3 px-0\">\n <div class=\"col-sm py-3 box-submenu\"\n *ngFor=\"let category of categories; let i = index\">\n <div class=\"row\">\n <div class=\"col-3 col-md-4 p-0\">\n <img [src]=\"consts.mediaUrl() + category.images[0].path\"\n class=\"w-100\">\n </div>\n <div class=\"col-9 col-md-8 py-2 pr-0\">\n <a [routerLink]=\"category.path\">\n <h5 class=\"ff-ubuntu-semi-bold font-xl\">{{ category.title }}</h5>\n </a>\n <ul\n class=\"nav d-md-flex d-none flex-column font-ss ff-ubuntu color-white submenu\">\n <li class=\"text-uppercase mb-2\"\n *ngFor=\"let child of category.children\">\n <a [routerLink]=\"child.path\">\n {{ child.title }}\n </a>\n </li>\n </ul>\n </div>\n </div>\n </div>\n </div>\n </div>\n </ul>\n </li>\n <li class=\"dropdown separador-left\">\n <a [routerLink]=\"'collection/'\"\n class=\"color-white color-hover-golden ff-ubuntu-light py-md-2 py-3 px-4 font-sm\"\n role=\"button\">\n NOVEDADES\n </a>\n </li>\n <li class=\"dropdown separador-left\">\n <a [routerLink]=\"'/collection/attributes/ofertas'\"\n class=\"color-white color-hover-golden ff-ubuntu-light py-md-2 py-3 px-4 font-sm\"\n role=\"button\">\n OFERTAS\n </a>\n </li>\n <li class=\"dropdown separador-left\">\n <a [routerLink]=\"'/section/quienes-somos'\"\n class=\"color-white color-hover-golden ff-ubuntu-light py-md-2 py-3 px-4 font-sm\"\n role=\"button\">\n QUIENES SOMOS\n </a>\n </li>\n <li class=\"dropdown separador-left\">\n <a [routerLink]=\"'/contact'\"\n class=\"color-white color-hover-golden ff-ubuntu-light py-md-2 py-3 px-4 font-sm\"\n role=\"button\">\n CONTACTO\n </a>\n </li>\n </ul>\n </nav>\n</header> -->",
@@ -12085,31 +12247,41 @@ HeaderEcComponent = __decorate$14([
12085
12247
  })
12086
12248
  ], HeaderEcComponent);
12087
12249
 
12088
- var __decorate$15 = (this && this.__decorate) || function (decorators, target, key, desc) {
12250
+ var __decorate$16 = (this && this.__decorate) || function (decorators, target, key, desc) {
12089
12251
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
12090
12252
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
12091
12253
  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;
12092
12254
  return c > 3 && r && Object.defineProperty(target, key, r), r;
12093
12255
  };
12094
12256
  let HomeEcComponent = class HomeEcComponent extends ComponentHelper {
12095
- constructor(blocksService, consts) {
12257
+ constructor(blocksService, consts, seo) {
12096
12258
  super();
12097
12259
  this.blocksService = blocksService;
12098
12260
  this.consts = consts;
12261
+ this.seo = seo;
12099
12262
  this.getHTMLContent = (block) => block.translations[this.consts.getLocale()].content;
12100
12263
  this.noNewsletter = (block) => !block.code.includes('newsletter');
12101
12264
  this.ecOnConstruct();
12102
12265
  }
12103
12266
  ngOnInit() {
12267
+ const siteName = this.seo.getSiteName();
12268
+ this.seo.setTitle(`Home | ${siteName}`);
12269
+ this.seo.setDescription('Catálogo de productos y marcas.');
12270
+ this.seo.setOgType('website');
12271
+ this.seo.setRobots('index, follow');
12272
+ if (typeof window !== 'undefined') {
12273
+ this.seo.setCanonical(window.location.href);
12274
+ }
12104
12275
  this.blocksService.getBlocks('home');
12105
12276
  this.ecOnInit();
12106
12277
  }
12107
12278
  };
12108
12279
  HomeEcComponent.ctorParameters = () => [
12109
12280
  { type: BlocksService },
12110
- { type: Constants }
12281
+ { type: Constants },
12282
+ { type: SeoService }
12111
12283
  ];
12112
- HomeEcComponent = __decorate$15([
12284
+ HomeEcComponent = __decorate$16([
12113
12285
  Component({
12114
12286
  selector: 'app-home-ec',
12115
12287
  template: "<app-blocks-ec [section]=\"'home'\"></app-blocks-ec>",
@@ -12117,7 +12289,7 @@ HomeEcComponent = __decorate$15([
12117
12289
  })
12118
12290
  ], HomeEcComponent);
12119
12291
 
12120
- var __decorate$16 = (this && this.__decorate) || function (decorators, target, key, desc) {
12292
+ var __decorate$17 = (this && this.__decorate) || function (decorators, target, key, desc) {
12121
12293
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
12122
12294
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
12123
12295
  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;
@@ -12186,25 +12358,25 @@ LoginEcComponent.ctorParameters = () => [
12186
12358
  { type: FormBuilder },
12187
12359
  { type: Router }
12188
12360
  ];
12189
- __decorate$16([
12361
+ __decorate$17([
12190
12362
  Input()
12191
12363
  ], LoginEcComponent.prototype, "redirect", void 0);
12192
- __decorate$16([
12364
+ __decorate$17([
12193
12365
  Input()
12194
12366
  ], LoginEcComponent.prototype, "title", void 0);
12195
- __decorate$16([
12367
+ __decorate$17([
12196
12368
  Input()
12197
12369
  ], LoginEcComponent.prototype, "buyButton", void 0);
12198
- __decorate$16([
12370
+ __decorate$17([
12199
12371
  Input()
12200
12372
  ], LoginEcComponent.prototype, "withRoles", void 0);
12201
- __decorate$16([
12373
+ __decorate$17([
12202
12374
  Output()
12203
12375
  ], LoginEcComponent.prototype, "ready", void 0);
12204
- __decorate$16([
12376
+ __decorate$17([
12205
12377
  Output()
12206
12378
  ], LoginEcComponent.prototype, "loggedIn", void 0);
12207
- LoginEcComponent = __decorate$16([
12379
+ LoginEcComponent = __decorate$17([
12208
12380
  Component({
12209
12381
  selector: 'app-login-ec',
12210
12382
  template: "<div class=\"card card-body container content_menu h-100\">\n <div class=\"row w-100 mx-auto\">\n <div class=\"col-12 pb-3 d-flex justify-content-between\">\n <h3>{{title | translate }}</h3>\n </div>\n\n <div class=\"col-12 pb-3\">\n <form [formGroup]=\"loginForm\" (submit)=\"login($event)\">\n <div class=\"form-group\">\n <input type=\"email\" class=\"form-control rounded-0\" formControlName=\"username\"\n autocomplete=\"username\" placeholder=\"Email\">\n </div>\n <div class=\"form-group\">\n <input type=\"password\" class=\"form-control rounded-0\" formControlName=\"password\"\n autocomplete=\"current-password\" placeholder=\"Contrase\u00F1a\">\n </div>\n <button *ngIf=\"!loading\" [disabled]=\"!loginForm.valid\"\n class=\"btn btn-dark bg-black rounded-0 w-100\">INICIAR SESI\u00D3N</button>\n <div class=\"loading-container-form\" *ngIf=\"loading\">\n <div id=\"loading\"></div>\n </div>\n <h6 class=\"text-center mb-0 mt-3\">\n Olvidaste tu contrase\u00F1a?\n <br>\n <a [routerLink]=\"'/auth/forgot-password'\" class=\"d-contents\">Recuperala aqui</a>\n </h6>\n </form>\n </div>\n <div class=\"col-12 pt-3 border-top text-center\">\n\n <ng-container *ngIf=\"!buyButton;else invited\">\n\n Todavia no ten\u00E9s tu cuenta?\n <br>\n Creala desde <a (click)=\"nagivate('/register')\" class=\"d-contents\">aqui</a>\n </ng-container>\n\n\n <ng-template #invited>\n <a routerLink=\"/cart/checkout\" class=\"btn bg-black btn-finalizar-compra text-blanco mt-4\">\n {{ 'invited-checkout' | translate }}\n </a>\n </ng-template>\n </div>\n </div>\n</div>",
@@ -12212,7 +12384,7 @@ LoginEcComponent = __decorate$16([
12212
12384
  })
12213
12385
  ], LoginEcComponent);
12214
12386
 
12215
- var __decorate$17 = (this && this.__decorate) || function (decorators, target, key, desc) {
12387
+ var __decorate$18 = (this && this.__decorate) || function (decorators, target, key, desc) {
12216
12388
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
12217
12389
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
12218
12390
  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;
@@ -12394,13 +12566,13 @@ CurrencyService.ctorParameters = () => [
12394
12566
  { type: Injector }
12395
12567
  ];
12396
12568
  CurrencyService.ɵprov = ɵɵdefineInjectable({ factory: function CurrencyService_Factory() { return new CurrencyService(ɵɵinject(Constants), ɵɵinject(ConnectionService), ɵɵinject(ToastService), ɵɵinject(INJECTOR)); }, token: CurrencyService, providedIn: "root" });
12397
- CurrencyService = __decorate$17([
12569
+ CurrencyService = __decorate$18([
12398
12570
  Injectable({
12399
12571
  providedIn: 'root'
12400
12572
  })
12401
12573
  ], CurrencyService);
12402
12574
 
12403
- var __decorate$18 = (this && this.__decorate) || function (decorators, target, key, desc) {
12575
+ var __decorate$19 = (this && this.__decorate) || function (decorators, target, key, desc) {
12404
12576
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
12405
12577
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
12406
12578
  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;
@@ -12849,11 +13021,11 @@ ProductDetailService.ctorParameters = () => [
12849
13021
  { type: AnalyticsService },
12850
13022
  { type: CurrencyService }
12851
13023
  ];
12852
- ProductDetailService = __decorate$18([
13024
+ ProductDetailService = __decorate$19([
12853
13025
  Injectable()
12854
13026
  ], ProductDetailService);
12855
13027
 
12856
- var __decorate$19 = (this && this.__decorate) || function (decorators, target, key, desc) {
13028
+ var __decorate$1a = (this && this.__decorate) || function (decorators, target, key, desc) {
12857
13029
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
12858
13030
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
12859
13031
  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;
@@ -12869,7 +13041,7 @@ var __awaiter$g = (this && this.__awaiter) || function (thisArg, _arguments, P,
12869
13041
  });
12870
13042
  };
12871
13043
  let ProductDetailEcComponent = class ProductDetailEcComponent extends ComponentHelper {
12872
- constructor(productService, consts, activedRoute, cartService, optionsService, productsService, analyticsService, router, toastrService, meta, injector) {
13044
+ constructor(productService, consts, activedRoute, cartService, optionsService, productsService, analyticsService, router, toastrService, injector, seo) {
12873
13045
  super();
12874
13046
  this.productService = productService;
12875
13047
  this.consts = consts;
@@ -12880,8 +13052,8 @@ let ProductDetailEcComponent = class ProductDetailEcComponent extends ComponentH
12880
13052
  this.analyticsService = analyticsService;
12881
13053
  this.router = router;
12882
13054
  this.toastrService = toastrService;
12883
- this.meta = meta;
12884
13055
  this.injector = injector;
13056
+ this.seo = seo;
12885
13057
  this.show = false;
12886
13058
  this.quantity = 1;
12887
13059
  this.comments = '';
@@ -13023,12 +13195,17 @@ let ProductDetailEcComponent = class ProductDetailEcComponent extends ComponentH
13023
13195
  this.product = res;
13024
13196
  window.scroll(0, 0);
13025
13197
  this.breadcrumb = this.optionsService.getBreadcrumb(this.product.category);
13026
- if (this.product.name) {
13027
- this.meta.updateTag({ property: 'og:title', content: this.product.name });
13028
- this.meta.updateTag({ property: 'og:description', content: this.deleteHTML(this.product.description) });
13029
- this.meta.updateTag({ property: 'og:image', content: this.consts.mediaUrl() + this.product.picturesdefault[0] });
13030
- this.meta.updateTag({ property: 'og:type', content: 'product' });
13031
- this.meta.updateTag({ property: 'og:url', content: window.location.href });
13198
+ if (this.product.name && this.seo) {
13199
+ const siteName = this.seo.getSiteName();
13200
+ const description = this.deleteHTML(this.product.description || '');
13201
+ this.seo.setTitle(`${this.product.name} | ${siteName}`);
13202
+ this.seo.setDescription(description);
13203
+ this.seo.setOgImage(this.consts.mediaUrl() + this.product.picturesdefault[0]);
13204
+ this.seo.setOgType('product');
13205
+ this.seo.setRobots('index, follow');
13206
+ if (typeof window !== 'undefined') {
13207
+ this.seo.setCanonical(window.location.href);
13208
+ }
13032
13209
  }
13033
13210
  }
13034
13211
  });
@@ -13100,13 +13277,13 @@ ProductDetailEcComponent.ctorParameters = () => [
13100
13277
  { type: AnalyticsService },
13101
13278
  { type: Router },
13102
13279
  { type: ToastService },
13103
- { type: Meta },
13104
- { type: Injector }
13280
+ { type: Injector },
13281
+ { type: SeoService }
13105
13282
  ];
13106
- __decorate$19([
13283
+ __decorate$1a([
13107
13284
  ViewChild('contact')
13108
13285
  ], ProductDetailEcComponent.prototype, "contact", void 0);
13109
- ProductDetailEcComponent = __decorate$19([
13286
+ ProductDetailEcComponent = __decorate$1a([
13110
13287
  Component({
13111
13288
  selector: 'app-product-detail-ec',
13112
13289
  template: "",
@@ -13115,7 +13292,7 @@ ProductDetailEcComponent = __decorate$19([
13115
13292
  })
13116
13293
  ], ProductDetailEcComponent);
13117
13294
 
13118
- var __decorate$1a = (this && this.__decorate) || function (decorators, target, key, desc) {
13295
+ var __decorate$1b = (this && this.__decorate) || function (decorators, target, key, desc) {
13119
13296
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
13120
13297
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
13121
13298
  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;
@@ -13227,13 +13404,13 @@ ProductEcComponent.ctorParameters = () => [
13227
13404
  { type: Injector },
13228
13405
  { type: CartService }
13229
13406
  ];
13230
- __decorate$1a([
13407
+ __decorate$1b([
13231
13408
  Input()
13232
13409
  ], ProductEcComponent.prototype, "isProductBox", void 0);
13233
- __decorate$1a([
13410
+ __decorate$1b([
13234
13411
  Input()
13235
13412
  ], ProductEcComponent.prototype, "product", void 0);
13236
- ProductEcComponent = __decorate$1a([
13413
+ ProductEcComponent = __decorate$1b([
13237
13414
  Component({
13238
13415
  selector: 'app-product-ec',
13239
13416
  template: "",
@@ -13242,7 +13419,7 @@ ProductEcComponent = __decorate$1a([
13242
13419
  })
13243
13420
  ], ProductEcComponent);
13244
13421
 
13245
- var __decorate$1b = (this && this.__decorate) || function (decorators, target, key, desc) {
13422
+ var __decorate$1c = (this && this.__decorate) || function (decorators, target, key, desc) {
13246
13423
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
13247
13424
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
13248
13425
  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;
@@ -13317,10 +13494,10 @@ RelatedProductsEcComponent.ctorParameters = () => [
13317
13494
  { type: Constants },
13318
13495
  { type: Router }
13319
13496
  ];
13320
- __decorate$1b([
13497
+ __decorate$1c([
13321
13498
  Input()
13322
13499
  ], RelatedProductsEcComponent.prototype, "product_id", void 0);
13323
- RelatedProductsEcComponent = __decorate$1b([
13500
+ RelatedProductsEcComponent = __decorate$1c([
13324
13501
  Component({
13325
13502
  selector: 'app-related-products-ec',
13326
13503
  template: "<!-- <div *ngFor=\"let products of relatedProducts\" >\n <section class=\"destacados\" id=\"destacados\"> \n <div class=\"container-fluid mx-auto py-5\">\n <div class=\"row mx-auto d-flex justify-content-start px-3 py-3\">\n <h3 class=\"my-auto mx-2 text-left w-fit bold text-beige1\">\n {{ products.title ? products.title : 'PRODUCTOS RECOMENDADOS' | uppercase}}\n </h3>\n </div>\n \n <owl-carousel-o [options]=\"customOptionsDestacados\" class=\"row mx-auto d-flex justify-content-center p-3 pb-1\">\n <ng-template carouselSlide *ngFor=\"let product of products.items\">\n <app-product-destacados [product]=\"product\" [isValorados]=\"false\"></app-product-destacados>\n </ng-template>\n </owl-carousel-o>\n \n <div class=\"row mx-auto d-flex justify-content-center pb-3 d-md-none\">\n <a routerLink=\"/collection\" role=\"button\" class=\"btn btn-dark bg-beige1 text-blanco bold rounded-pill px-5 py-2\">IR A LA TIENDA</a>\n </div>\n </div>\n </section>\n</div> -->",
@@ -13328,44 +13505,83 @@ RelatedProductsEcComponent = __decorate$1b([
13328
13505
  })
13329
13506
  ], RelatedProductsEcComponent);
13330
13507
 
13331
- var __decorate$1c = (this && this.__decorate) || function (decorators, target, key, desc) {
13508
+ var __decorate$1d = (this && this.__decorate) || function (decorators, target, key, desc) {
13332
13509
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
13333
13510
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
13334
13511
  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;
13335
13512
  return c > 3 && r && Object.defineProperty(target, key, r), r;
13336
13513
  };
13337
13514
  let SectionContainerEcComponent = class SectionContainerEcComponent extends ComponentHelper {
13338
- constructor(activatedRoute, optionsService, toastrService, sanitizer) {
13515
+ constructor(activatedRoute, optionsService, toastrService, sanitizer, seo) {
13339
13516
  super();
13340
13517
  this.activatedRoute = activatedRoute;
13341
13518
  this.optionsService = optionsService;
13342
13519
  this.toastrService = toastrService;
13343
13520
  this.sanitizer = sanitizer;
13521
+ this.seo = seo;
13344
13522
  this.content_html = "<p>Sin información</p>";
13345
13523
  this.loadSection = false;
13346
13524
  this.sanitizeHtml = false;
13347
13525
  this.name = null;
13526
+ this.sectionDescription = '';
13348
13527
  this.getSection = (link) => {
13349
13528
  this.loadSection = false;
13350
13529
  this.optionsService.getSectionContentByLink(link).toPromise().then(html => {
13351
- if (html)
13530
+ if (html) {
13531
+ this.sectionDescription = this.stripHTML(html);
13352
13532
  this.content_html =
13353
13533
  this.sanitizeHtml
13354
13534
  ? html
13355
13535
  : this.sanitizer.bypassSecurityTrustHtml(html);
13536
+ }
13356
13537
  this.loadSection = true;
13538
+ this.updateSectionSeo();
13357
13539
  }, error => {
13358
13540
  console.log(error);
13359
13541
  this.loadSection = true;
13360
13542
  this.content_html = "<p>Sin información</p>";
13543
+ this.sectionDescription = '';
13361
13544
  this.toastrService.show('No fue posible encontrar la sección solicitada');
13545
+ this.updateSectionSeo();
13362
13546
  }).catch(error => {
13363
13547
  this.content_html = "<p>Sin información</p>";
13548
+ this.sectionDescription = '';
13364
13549
  this.loadSection = true;
13550
+ this.updateSectionSeo();
13365
13551
  });
13366
13552
  };
13367
13553
  this.getDataSection = (code) => {
13368
13554
  this.dataSection = this.sections.find(section => section.code == code);
13555
+ this.updateSectionSeo();
13556
+ };
13557
+ this.stripHTML = (html) => {
13558
+ if (!html) {
13559
+ return '';
13560
+ }
13561
+ return html.replace(/<[^>]*>/g, ' ').replace(/\s+/g, ' ').trim();
13562
+ };
13563
+ this.formatSectionTitle = (value) => {
13564
+ if (!value) {
13565
+ return 'Sección';
13566
+ }
13567
+ return value
13568
+ .replace(/[-_]+/g, ' ')
13569
+ .replace(/\w/g, char => char.toUpperCase());
13570
+ };
13571
+ this.updateSectionSeo = () => {
13572
+ var _a;
13573
+ const siteName = this.seo.getSiteName();
13574
+ const titlePrefix = this.formatSectionTitle(this.name || ((_a = this.dataSection) === null || _a === void 0 ? void 0 : _a.name) || 'Sección');
13575
+ const description = this.sectionDescription
13576
+ ? this.sectionDescription.slice(0, 160)
13577
+ : `Contenido de ${titlePrefix} en ${siteName}.`;
13578
+ this.seo.setTitle(`${titlePrefix} | ${siteName}`);
13579
+ this.seo.setDescription(description);
13580
+ this.seo.setOgType('website');
13581
+ this.seo.setRobots('index, follow');
13582
+ if (typeof window !== 'undefined') {
13583
+ this.seo.setCanonical(window.location.href);
13584
+ }
13369
13585
  };
13370
13586
  this.optionsService.sections.subscribe(res => this.sections = res);
13371
13587
  this.ecOnConstruct();
@@ -13391,15 +13607,16 @@ SectionContainerEcComponent.ctorParameters = () => [
13391
13607
  { type: ActivatedRoute },
13392
13608
  { type: OptionsService },
13393
13609
  { type: ToastrService },
13394
- { type: DomSanitizer }
13610
+ { type: DomSanitizer },
13611
+ { type: SeoService }
13395
13612
  ];
13396
- __decorate$1c([
13613
+ __decorate$1d([
13397
13614
  Input()
13398
13615
  ], SectionContainerEcComponent.prototype, "sanitizeHtml", void 0);
13399
- __decorate$1c([
13616
+ __decorate$1d([
13400
13617
  Input()
13401
13618
  ], SectionContainerEcComponent.prototype, "name", void 0);
13402
- SectionContainerEcComponent = __decorate$1c([
13619
+ SectionContainerEcComponent = __decorate$1d([
13403
13620
  Component({
13404
13621
  selector: 'app-section-container-ec',
13405
13622
  template: "<div class=\"container-fluid\">\n <div class=\"row\">\n <div class=\"col-12\">\n <div class=\"scrol-if\">\n <div *ngIf=\"loadSection; else notBlockContact\" [innerHtml]=\"content_html\"></div>\n </div>\n </div>\n </div>\n</div>\n\n<app-blocks-ec [section]=\"name\"></app-blocks-ec>\n\n\n<ng-template #notBlockContact>\n<div class=\"col-12 align-items-center\">\n <div class=\"d-flex flex-column jusitfy-content-center align-items-center my-5\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n</div>\n</ng-template>",
@@ -13407,7 +13624,7 @@ SectionContainerEcComponent = __decorate$1c([
13407
13624
  })
13408
13625
  ], SectionContainerEcComponent);
13409
13626
 
13410
- var __decorate$1d = (this && this.__decorate) || function (decorators, target, key, desc) {
13627
+ var __decorate$1e = (this && this.__decorate) || function (decorators, target, key, desc) {
13411
13628
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
13412
13629
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
13413
13630
  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;
@@ -13583,7 +13800,7 @@ StoresEcComponent.ctorParameters = () => [
13583
13800
  { type: Constants },
13584
13801
  { type: DomSanitizer }
13585
13802
  ];
13586
- StoresEcComponent = __decorate$1d([
13803
+ StoresEcComponent = __decorate$1e([
13587
13804
  Component({
13588
13805
  selector: 'app-store-ec',
13589
13806
  template: "<div class=\"row w-100 mx-auto my-4 px-3 bb-s bt-md-s py-1\">\n <strong>{{ 'stores' | translate }}</strong>\n</div>\n\n<section class=\"formulario container-fluid\" *ngIf=\"stores ; else noStores\">\n <div *ngIf=\"stores.length; else loading\">\n\n <div class=\"row\" *ngIf=\"stores && stores.length > 0; else noStores\">\n <div class=\"col-12 col-md-3 order-1 order-md-1\">\n <div class=\"row\">\n <div class=\"form-group w-100\">\n <select (change)=\"selectChange($event.target.value)\"\n class=\"rounded-0 form-control form-control-sm\" id=\"exampleFormControlSelect1\">\n <option selected [value]=\"''\">Seleccione provincia</option>\n <option [value]=\"item.code\" *ngFor=\"let item of getProvices(stores)\"> {{item.name}}\n </option>\n </select>\n </div>\n </div>\n </div>\n <div class=\"col-12 col-md-3 order-3 order-md-2\">\n <div class=\"container-fluid scrolleable\" *ngIf=\"filterStores && filterStores.length\">\n <div class=\"row mb-1\" *ngFor=\"let store of filterStores; let i = index\">\n <div class=\"col-12\">\n <h6 class=\"\"><strong>{{ store.name }}</strong></h6>\n <label>{{ store.address }}</label>\n <label>{{ store.phone }}</label>\n <div [innerHtml]=\"store.note\"></div>\n <div class=\"text-right\">\n <!-- <a [href]=\"store.urlMap\" target=\"_blank\" class=\"custom-a\">Ver mapa</a> -->\n <a *ngIf=\"store.urlMap\" (click)=\"updateMap (store.urlMap)\" class=\"custom-a\">Ver mapa</a>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"col-12 col-md-6 order-2 order-md-3 my-4 mt-md-0\">\n <!-- <img *ngIf=\"imageMap\" src=\"../../../assets/images/recurso (21).png\" alt=\"\" class=\"w-100\"> -->\n <!-- <iframe *ngIf=\"!imageMap\" [src]=\"urlMap\" frameborder=\"0\" style=\"width: 100%; height: 500px;\"></iframe> -->\n <iframe id=\"map-iframe\" [src]=\"urlmap\" frameborder=\"0\"></iframe>\n </div>\n </div>\n </div>\n</section>\n\n\n<ng-template #noStores>\n\n <div class=\"d-flex flex-row justify-content-center my-5 align-items-center alto-total\">\n <h5 class=\"text-center\">{{ 'no-stores' | translate }}</h5>\n </div>\n\n</ng-template>\n\n<ng-template #loading>\n <div class=\"container\">\n <div class=\"row\">\n <div class=\"col-12 align-items-center\">\n <div class=\"d-flex flex-column justify-content-center align-items-center my-5\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n </div>\n </div>\n </div>\n</ng-template>",
@@ -13591,7 +13808,7 @@ StoresEcComponent = __decorate$1d([
13591
13808
  })
13592
13809
  ], StoresEcComponent);
13593
13810
 
13594
- var __decorate$1e = (this && this.__decorate) || function (decorators, target, key, desc) {
13811
+ var __decorate$1f = (this && this.__decorate) || function (decorators, target, key, desc) {
13595
13812
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
13596
13813
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
13597
13814
  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;
@@ -13625,16 +13842,16 @@ VariantsEcComponent.ctorParameters = () => [
13625
13842
  { type: Constants },
13626
13843
  { type: ProductDetailService }
13627
13844
  ];
13628
- __decorate$1e([
13845
+ __decorate$1f([
13629
13846
  Input()
13630
13847
  ], VariantsEcComponent.prototype, "product", void 0);
13631
- __decorate$1e([
13848
+ __decorate$1f([
13632
13849
  Input('options')
13633
13850
  ], VariantsEcComponent.prototype, "options$", void 0);
13634
- __decorate$1e([
13851
+ __decorate$1f([
13635
13852
  Input()
13636
13853
  ], VariantsEcComponent.prototype, "setOption", void 0);
13637
- VariantsEcComponent = __decorate$1e([
13854
+ VariantsEcComponent = __decorate$1f([
13638
13855
  Component({
13639
13856
  selector: 'app-product-variants-ec',
13640
13857
  template: "<div *ngIf=\"(options$ | async) as options ; else loading\">\n <div *ngIf=\"options && options.length && view(options.length, options)\">\n <div *ngFor=\"let option of options; let i = index\" class=\"mb-2\">\n <h5 class=\"text-lowercase\">{{option.name | titlecase}}</h5>\n <div [ngSwitch]=\"option.type\">\n <div *ngSwitchCase=\"'color'\">\n <div class=\"row w-100 mx-auto pb-3 mb-2\">\n <a *ngFor=\"let value of option.values; let x = index\" role=\"buttom\"\n (click)=\"setOption(option.code, value.name)\"\n [class]=\"'rounded-0 color-item mr-2 ' + (value.selected ? 'shadow' : '')\"\n [id]=\"x + value.name\" [style.background]=\"'#' + value.name\"\n [style.border]=\"(value.selected ? '1px black solid' : '1px gray solid')\"></a>\n </div>\n </div>\n <div *ngSwitchCase=\"'size'\">\n <div class=\"row w-100 mx-auto pb-3\">\n <select (change)=\"setSeleccion($event.target.value)\" class=\"form-control pr-5\">\n <option id=\"op\" value=\"\">Seleccione {{option.name | lowercase}}</option>\n <option *ngFor=\"let value of option.values; let x = index\" role=\"buttom\"\n [value]=\"option.code +','+ value.name\" [id]=\"x + value.name\"\n [selected]=\"value.selected\">\n {{ value.name }}\n </option>\n </select>\n <!-- <a *ngFor=\"let value of option.values; let x = index\" role=\"buttom\"\n (click)=\"setOption(option.code, value.name)\"\n [id]=\"x + value.name\"\n [class]=\"'btn btn-outline-dark rounded-0 talle-item m-1 ' + (value.selected ? 'selected-size' : 'unselected-size')\">\n {{ value.name }}\n </a> -->\n </div>\n </div>\n <div *ngSwitchDefault>\n <select (change)=\"setSeleccion($event.target.value)\" class=\"form-control \">\n <option id=\"op\" value=\"\">Seleccione {{option.name | lowercase}}</option>\n <option *ngFor=\"let value of option.values; let x = index\" role=\"buttom\"\n [value]=\"option.code +','+ value.name\" [id]=\"x + value.name\"\n [selected]=\"value.selected\">\n {{ value.name }}\n </option>\n </select>\n </div>\n </div>\n </div>\n </div>\n</div>\n\n<ng-template #loading>\n <div class=\"col-12 align-items-center\">\n <div class=\"d-flex flex-column jusitfy-content-center align-items-center my-5\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n </div>\n</ng-template>",
@@ -13642,13 +13859,13 @@ VariantsEcComponent = __decorate$1e([
13642
13859
  })
13643
13860
  ], VariantsEcComponent);
13644
13861
 
13645
- var __decorate$1f = (this && this.__decorate) || function (decorators, target, key, desc) {
13862
+ var __decorate$1g = (this && this.__decorate) || function (decorators, target, key, desc) {
13646
13863
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
13647
13864
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
13648
13865
  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;
13649
13866
  return c > 3 && r && Object.defineProperty(target, key, r), r;
13650
13867
  };
13651
- var __param$a = (this && this.__param) || function (paramIndex, decorator) {
13868
+ var __param$b = (this && this.__param) || function (paramIndex, decorator) {
13652
13869
  return function (target, key) { decorator(target, key, paramIndex); }
13653
13870
  };
13654
13871
  let SellerDashboardContainerEcComponent = class SellerDashboardContainerEcComponent extends ComponentHelper {
@@ -13752,19 +13969,19 @@ SellerDashboardContainerEcComponent.ctorParameters = () => [
13752
13969
  { type: Constants },
13753
13970
  { type: undefined, decorators: [{ type: Inject, args: ['env',] }] }
13754
13971
  ];
13755
- __decorate$1f([
13972
+ __decorate$1g([
13756
13973
  Input()
13757
13974
  ], SellerDashboardContainerEcComponent.prototype, "UIComponents", void 0);
13758
- SellerDashboardContainerEcComponent = __decorate$1f([
13975
+ SellerDashboardContainerEcComponent = __decorate$1g([
13759
13976
  Component({
13760
13977
  selector: 'app-seller-dashboard-container',
13761
13978
  template: "<section *ngIf=\"user\" id=\"seller-dashboard\">\n <div class=\"section-content mt-5 mb-2 tablaVendedores\">\n <div class=\"container-xl\">\n <div class=\"row\">\n <main class=\"col-md-12\">\n\n <ul *ngIf=\"hasHeader()\" class=\"nav nav-tabs\">\n <li class=\"nav-item col-12 col-lg-2\">\n <a *ngIf=\"hasUIComponent('HEADER_TAB')\" class=\"nav-link active cursor-pointer px-4\"\n aria-current=\"page\">\n {{ 'my-clients' | translate }}\n </a>\n </li>\n <li class=\"ms-auto row\">\n <div\n class=\"d-flex justify-content-end justify-content-lg-end justify-content-xl-end col-12 col-md-12 col-lg-auto\">\n <ng-container *ngIf=\"hasUIComponent('GENERATE_BUDGET_BTN') \">\n <a *ngIf=\"authService.getCustomer()?.id; else withoutCustomer\"\n [routerLink]=\"'/collection'\"\n class=\"btn btn-seller-primary text-white btnGestionar d-flex align-items-center\"><i\n class=\"bi bi-file-earmark me-2 mr-2\"></i>{{ 'generate-budget' | translate }}\n </a>\n <ng-template #withoutCustomer>\n <a class=\"btn btn-seller-primary text-white btnGestionar d-flex align-items-center\"\n (click)=\"toastrService.show('must-select-customer')\">\n <i class=\"bi bi-file-earmark me-2 mr-2\"></i>{{ 'generate-budget' | translate\n }}\n </a>\n </ng-template>\n </ng-container>\n <a *ngIf=\"hasUIComponent('MANAGE_ORDERS_BTN')\"\n (click)=\"navigateExternal(constants.getUrlBase())\"\n class=\"btn btn-seller-primary text-white btnGestionar d-flex align-items-center me- me-lg-4 mr- mr-lg-4\"><i\n class=\"bi bi-archive-fill me-2 mr-2\"></i>{{ 'manage-orders' | translate }}</a>\n </div>\n <div class=\"d-flex camposVendedores col-12 col-md-12 col-lg-auto justify-content-end\">\n <select *ngIf=\"hasUIComponent('SORT_SELECT')\" id=\"customerSort\" name=\"customerSort\"\n (change)=\"sortCustomers($event.target.value)\" class=\"mb-1 ordenarVendedores form-select\">\n <option selected hidden disabled>{{ 'order-by' | translate }}</option>\n <option value='asc_firstName'>{{ 'client' | translate }} (A-Z)</option>\n <option value='desc_firstName'>{{ 'client' | translate }} (Z-A)</option>\n <option value='asc_id'>Menor a Mayor c\u00F3digo</option>\n <option value='desc_id'>Mayor a Menor c\u00F3digo</option>\n </select>\n <form *ngIf=\"hasUIComponent('SEARCH_FORM')\"\n class=\"col-lg-auto mb-lg-0 d-flex ms-3 ml-3 d-flex buscadorVendedores\">\n <input type=\"text\" name=\"searchInput\" class=\"form-control\"\n placeholder=\"{{ 'search' | translate }}\" [(ngModel)]=\"searchInput\"\n (keyup.enter)=\"updateCustomers()\">\n <button class=\"btn btn-primary ms-1 ml-1 bg-white border-dark btnSearch\"><i\n class=\"bi bi-search text-dark\" (click)=\"updateCustomers()\"></i></button>\n </form>\n </div>\n </li>\n </ul>\n\n <ng-container *ngIf=\"user.customers?.length; else noCustomers\">\n\n <article class=\"card card-body mb-1 carritoProductoHeader m-0 py-0 mt-4\">\n <div class=\"row align-items-center font-bold border-bottom\">\n <div class=\"col-3 col-md-2 text-left\">\n <small>{{ 'code' | translate | uppercase }}</small>\n </div>\n <div class=\"col-5 col-md-3 mb-md-0\">\n <small>{{ 'client' | translate | uppercase }}</small>\n </div>\n <div class=\"col-4 col-md-3 text-left d-none d-md-block\">\n <small>{{ 'user' | translate | uppercase }}</small>\n </div>\n <div class=\"col-4 col-md-2 text-left\">\n <small>{{ 'new-orders' | translate | uppercase }}</small>\n </div>\n <div class=\"col-2 col-md-2 text-left d-none d-md-block\">\n <small></small>\n </div>\n\n </div>\n </article>\n\n <article *ngFor=\"let customer of filteredCustomers\" [class]=\"'card card-body mb-3 cadaVendedor ' + (isActive(customer) ? 'activo':'')\">\n <div class=\"row d-flex align-items-center\">\n <div class=\"col-3 col-md-2 text-left ps-2 pl-2\">\n <div class=\"price h6 pb-0 mb-0 ps-3 pl-1\">\n {{ customer.managementSystemInternalCode || 'n/a' }}\n </div>\n </div>\n <div class=\"col-5 col-md-3 text-left\">\n <div class=\"price h6 fw-normal ps-2 pl-2 pb-0 mb-0\">\n {{ customer.firstName }} {{ customer.lastName }}\n <p class=\"d-block d-md-none fs-6 mt-1 mb-0 p-0 userMobile\">\n {{ customer.email }}\n </p>\n </div>\n </div>\n <div class=\"col-4 col-md-3 text-left d-none d-md-block\">\n <div class=\"price h6 fw-normal pb-0 mb-0 ps-2 pl-2\">\n {{ customer.email }}\n </div>\n </div>\n <div class=\"col-4 col-md-2 text-left ps-2 pl-2\">\n <div *ngIf=\"true\" class=\"contNumero\">\n {{ customer.ordersNotApproved }}\n </div>\n </div>\n <div class=\"col-12 col-md-2 btnIngresar\">\n\n <ng-container\n *ngIf=\"authService.getCustomer()?.id == customer.id; else noActiveCustomer\">\n <a (click)=\"changeCustomer(null)\"\n class=\"btn btn-seller-primary justify-content-center\">\n <i class=\"bi bi-box-arrow-left me-2 mr-2\"></i>\n <small class=\"me-2 mr-2 d-none d-md-block\">\n {{ 'exit' | translate | uppercase }}\n </small>\n </a>\n </ng-container>\n <ng-template #noActiveCustomer>\n <a (click)=\"changeCustomer(customer)\"\n class=\"btn btn-seller-primary justify-content-center\">\n <i class=\"bi bi-box-arrow-in-right me-2 mr-2\"></i>\n <small class=\"me-2 mr-2 d-none d-md-block\">\n {{ 'operate-as' | translate | uppercase }}\n </small>\n </a>\n </ng-template>\n\n </div>\n </div>\n </article>\n\n </ng-container>\n\n </main>\n </div>\n </div>\n </div>\n</section>\n\n<ng-template #noCustomers>\n <h4 class=\"text-center p-5\">{{ 'no-customers' | translate }}</h4>\n</ng-template>",
13762
13979
  styles: ["#seller-dashboard{--seller-dashboard-primary-color:0,0,0}.btn-seller-primary{color:#fff!important;background-color:rgba(var(--seller-dashboard-primary-color),1)!important;border-color:rgba(var(--seller-dashboard-primary-color),1)!important}.btn-seller-primary:hover{background-color:rgba(var(--seller-dashboard-primary-color),.9)!important}.btn-seller-primary:active{background-color:rgba(var(--seller-dashboard-primary-color),.8)!important}.btnGestionar{padding:6px 12px!important;height:36px;display:flex;align-items:center;justify-content:center;margin-left:10px}.ordenarVendedores{width:150px!important;color:#8b8b8b!important;background-color:#fff;border:1px solid #b6b6b6!important;border-radius:4px;-webkit-border-radius:4px;-moz-border-radius:4px;-ms-border-radius:4px;-o-border-radius:4px}.buscadorVendedores{margin-bottom:4px!important}.buscadorVendedores input{border:1px solid #b6b6b6!important;width:200px}.buscadorVendedores .btnSearch{border:1px solid #b6b6b6!important;padding:.375rem .75rem;font-size:1rem}.buscadorVendedores .btnSearch:focus{background-color:#fff!important}.carritoProductoHeader{border:none!important}.carritoProductoHeader small{font-size:13px}.cadaVendedor{padding:5px 0;margin-bottom:0!important;border:none!important;border-bottom:1px solid #ccc!important;border-radius:0!important;-webkit-border-radius:0}.cadaVendedor .btnIngresar a{padding:10px!important;border-width:1px!important;border-style:solid!important;display:flex;align-items:center;width:100%!important;margin-left:auto;color:#fff}.cadaVendedor .btnIngresar .contNumero{background-color:#eee;width:20px;height:20px;color:#000;font-size:13px;display:flex;align-items:center;justify-content:center;font-weight:600;border-radius:20px;-webkit-border-radius:20px;-moz-border-radius:20px;-ms-border-radius:20px;-o-border-radius:20px}.userMobile{font-size:14px!important;font-style:italic!important}.cadaVendedor .btnIngresar a:hover{background-color:rgba(var(--seller-dashboard-primary-color),.85)}.cadaVendedor .btnIngresar a:active{background-color:rgba(var(--seller-dashboard-primary-color),.8)}.cursor-pointer{cursor:pointer}.font-bold{font-weight:700}.border-bottom{border-bottom:1px solid #000!important}@media screen and (max-width:1200px){.btnGestionar{font-size:12px}}@media screen and (max-width:992px){.camposVendedores{justify-content:flex-end;margin-top:8px;margin-bottom:4px}}@media all and (max-width:768px){.ordenarVendedores{width:140px!important}.buscadorVendedores input{width:140px}.cadaVendedor .btnIngresar a{width:70px!important}}@media all and (max-width:576px){.tablaVendedores .nav-tabs .nav-link{font-size:13px;padding:6px!important}.btnGestionar{padding:6px 8px!important;font-size:13px;height:36px;display:flex;align-items:center;justify-content:center;margin-top:3px;margin-left:10px}.buscadorVendedores input,.ordenarVendedores{font-size:13px}}.fs-6{font-size:1rem!important}.cadaVendedor.activo{background-color:#eee}"]
13763
13980
  }),
13764
- __param$a(3, Inject('env'))
13981
+ __param$b(3, Inject('env'))
13765
13982
  ], SellerDashboardContainerEcComponent);
13766
13983
 
13767
- var __decorate$1g = (this && this.__decorate) || function (decorators, target, key, desc) {
13984
+ var __decorate$1h = (this && this.__decorate) || function (decorators, target, key, desc) {
13768
13985
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
13769
13986
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
13770
13987
  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;
@@ -13780,10 +13997,10 @@ let LoadingFullEcComponent = class LoadingFullEcComponent extends ComponentHelpe
13780
13997
  this.ecOnInit();
13781
13998
  }
13782
13999
  };
13783
- __decorate$1g([
14000
+ __decorate$1h([
13784
14001
  Input()
13785
14002
  ], LoadingFullEcComponent.prototype, "hole_height", void 0);
13786
- LoadingFullEcComponent = __decorate$1g([
14003
+ LoadingFullEcComponent = __decorate$1h([
13787
14004
  Component({
13788
14005
  selector: 'app-loading-full-ec',
13789
14006
  template: "<div [class]=\"'d-flex w-100 ' + (hole_height ? 'hole_height' : '')\">\n <div class=\"w-100 h-100 d-flex flex-row justify-content-center align-items-center\">\n <div class=\"spinner-border text-dark spinner-color\" id=\"loading\" role=\"status\">\n <span class=\"sr-only\">{{ 'loading' | translate }}</span>\n </div>\n </div>\n</div>",
@@ -13791,7 +14008,7 @@ LoadingFullEcComponent = __decorate$1g([
13791
14008
  })
13792
14009
  ], LoadingFullEcComponent);
13793
14010
 
13794
- var __decorate$1h = (this && this.__decorate) || function (decorators, target, key, desc) {
14011
+ var __decorate$1i = (this && this.__decorate) || function (decorators, target, key, desc) {
13795
14012
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
13796
14013
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
13797
14014
  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;
@@ -13806,7 +14023,7 @@ let LoadingInlineEcComponent = class LoadingInlineEcComponent extends ComponentH
13806
14023
  this.ecOnInit();
13807
14024
  }
13808
14025
  };
13809
- LoadingInlineEcComponent = __decorate$1h([
14026
+ LoadingInlineEcComponent = __decorate$1i([
13810
14027
  Component({
13811
14028
  selector: 'app-loading-inline-ec',
13812
14029
  template: "<div class=\"loading-inline-container\">\n <div class=\"spinner-border text-dark spinner-color\" id=\"loading\" role=\"status\">\n <span class=\"sr-only\">{{ 'loading' | translate }}</span>\n </div>\n</div>",
@@ -13814,7 +14031,7 @@ LoadingInlineEcComponent = __decorate$1h([
13814
14031
  })
13815
14032
  ], LoadingInlineEcComponent);
13816
14033
 
13817
- var __decorate$1i = (this && this.__decorate) || function (decorators, target, key, desc) {
14034
+ var __decorate$1j = (this && this.__decorate) || function (decorators, target, key, desc) {
13818
14035
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
13819
14036
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
13820
14037
  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;
@@ -13825,7 +14042,7 @@ let LoadingSectionEcComponent = class LoadingSectionEcComponent {
13825
14042
  ngOnInit() {
13826
14043
  }
13827
14044
  };
13828
- LoadingSectionEcComponent = __decorate$1i([
14045
+ LoadingSectionEcComponent = __decorate$1j([
13829
14046
  Component({
13830
14047
  selector: 'app-loading-section-ec',
13831
14048
  template: "<div id=\"sectionLoading\" class=\"d-flex flex-column position-absolute top-0 opacity-75 bg-white w-100 h-100 justify-content-center align-items-center\">\n <app-loading-full-ec></app-loading-full-ec>\n</div>\n",
@@ -13833,7 +14050,7 @@ LoadingSectionEcComponent = __decorate$1i([
13833
14050
  })
13834
14051
  ], LoadingSectionEcComponent);
13835
14052
 
13836
- var __decorate$1j = (this && this.__decorate) || function (decorators, target, key, desc) {
14053
+ var __decorate$1k = (this && this.__decorate) || function (decorators, target, key, desc) {
13837
14054
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
13838
14055
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
13839
14056
  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;
@@ -14174,19 +14391,19 @@ MPCreditEcComponent.ctorParameters = () => [
14174
14391
  { type: CartService },
14175
14392
  { type: ToastService }
14176
14393
  ];
14177
- __decorate$1j([
14394
+ __decorate$1k([
14178
14395
  Input()
14179
14396
  ], MPCreditEcComponent.prototype, "public_key", void 0);
14180
- __decorate$1j([
14397
+ __decorate$1k([
14181
14398
  Input()
14182
14399
  ], MPCreditEcComponent.prototype, "total_amount", void 0);
14183
- __decorate$1j([
14400
+ __decorate$1k([
14184
14401
  Output()
14185
14402
  ], MPCreditEcComponent.prototype, "ready", void 0);
14186
- __decorate$1j([
14403
+ __decorate$1k([
14187
14404
  Input()
14188
14405
  ], MPCreditEcComponent.prototype, "user_data", void 0);
14189
- MPCreditEcComponent = __decorate$1j([
14406
+ MPCreditEcComponent = __decorate$1k([
14190
14407
  Component({
14191
14408
  selector: '[app-mp-credit-ec]',
14192
14409
  template: "<h3 class=\"text-center\">Detalles del pago</h3>\n<div *ngIf=\"!consts.mobile()\">\n <div class=\"card-wrapper m-3\"></div>\n</div>\n<form (submit)=\"getCardToken($event)\" method=\"post\" card container=\".card-wrapper\"\n card-width=\"{{ consts.mobile() ? '100': '350' }}\">\n\n <div class=\"row\">\n <div class=\"form-group col-12 col-md-6\">\n <label for=\"emailForm\">Correo electronico</label>\n <input class=\"form-control\" id=\"emailForm\" name=\"emailForm\" type=\"email\" [(ngModel)]=\"email\">\n </div>\n <div class=\"form-group col-12 col-md-2\">\n <label for=\"docTypeForm\">Tipo Doc.</label>\n <select class=\"form-control\" id=\"docTypeForm\" name=\"docTypeForm\" type=\"text\" [(ngModel)]=\"doc_type\">\n <option selected value=\"DNI\">DNI</option>\n <option value=\"CUIT\">CUIT</option>\n </select>\n </div>\n <div class=\"form-group col-12 col-md-4\">\n <label for=\"docNumberForm\">N\u00FAmero Doc.</label>\n <input class=\"form-control\" id=\"docNumberForm\" name=\"docNumberForm\" type=\"text\" [(ngModel)]=\"doc_number\" />\n </div>\n </div>\n <div class=\"row\">\n <div class=\"form-group col-12\">\n <label for=\"cardholderNameForm\">Titular (como figura en la tarjeta)</label>\n <input class=\"form-control\" id=\"cardholderNameForm\" data-checkout=\"cardholderName\" type=\"text\"\n [(ngModel)]=\"cardholder\" [ngModelOptions]=\"{standalone: true}\" name=\"first-name\" autocomplete=\"off\"\n card-name>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"form-group col-12 col-md-7\">\n <label for=\"cardNumberForm\">N\u00FAmero de la tarjeta</label>\n <input class=\"form-control\" type=\"text\" id=\"cardNumberForm\" (change)=\"cardNumberChange($event)\"\n [(ngModel)]=\"bin\" [ngModelOptions]=\"{standalone: true}\" onselectstart=\"return false\"\n onpaste=\"return false\" oncopy=\"return false\" oncut=\"return false\" ondrag=\"return false\"\n ondrop=\"return false\" autocomplete=\"off\" card-number>\n </div>\n <div class=\"form-group col-12 col-md-3\">\n <label for=\"securityCodeForm\">C\u00F3digo de seguridad</label>\n <input class=\"form-control\" id=\"securityCodeForm\" type=\"text\" name=\"cvc\" onselectstart=\"return false\"\n onpaste=\"return false\" oncopy=\"return false\" oncut=\"return false\" ondrag=\"return false\"\n ondrop=\"return false\" autocomplete=\"off\" card-cvc [(ngModel)]=\"code\"\n [ngModelOptions]=\"{standalone: true}\">\n </div>\n <div class=\"form-group col-12 col-md-2\">\n <label for=\"expiryForm\">Expiraci\u00F3n</label>\n <input type=\"text\" class=\"form-control\" id=\"expiryForm\" name=\"expiry\" placeholder=\"MM/YY\" maxlength=\"5\"\n (keyup)=\"expiryOnKey($event)\" (change)=\"expiryChange($event)\" onselectstart=\"return false\"\n onpaste=\"return false\" oncopy=\"return false\" oncut=\"return false\" ondrag=\"return false\"\n ondrop=\"return false\" autocomplete=\"off\" card-expiry />\n </div>\n </div>\n <div class=\"row justify-content-md-center\">\n <div class=\"form-group col-12 col-md-6\" id=\"issuerInput\" *ngIf=\"require_issuer\">\n <label for=\"issuerForm\">Banco emisor</label>\n <select class=\"form-control\" id=\"issuerForm\" name=\"issuer\" autocomplete=\"off\" data-checkout=\"issuer\"\n (change)=\"selectIssuer($event.target.value)\">\n <option selected>Seleccione el banco</option>\n <option *ngFor=\"let issuer of issuers\" [value]=\"issuer.value\">{{ issuer.name }}</option>\n </select>\n </div>\n <div class=\"form-group col-12 col-md-6\">\n <label for=\"installmentsForm\">Cuotas</label>\n <select class=\"form-control\" type=\"text\" id=\"installmentsForm\" name=\"installments\"\n (change)=\"selectInstallment($event.target.value)\">\n <option selected>Seleccione el n\u00FAmero de cuotas</option>\n <option *ngFor=\"let cost of installments\" [value]=\"cost.value\">{{ getDescripcionCuota(cost) }}\n </option>\n </select>\n </div>\n </div>\n <div hidden>\n <input class=\"form-control\" name=\"transactionAmountt\" id=\"transactionAmountt\" [value]=\"total_amount\" />\n <input class=\"form-control\" name=\"paymentMethodIdd\" id=\"paymentMethodIdd\" [value]=\"payment_method\" />\n <input class=\"form-control\" name=\"descriptionn\" id=\"descriptionn\" />\n </div>\n <div class=\"row justify-content-md-center\">\n <div class=\"col-md-auto\">\n <div class=\"checkout-btn-unique\">\n <button type=\"submit\" *ngIf=\"!isInvalid()\" class=\"btn valid-btn\">Pagar</button>\n </div>\n </div>\n </div>\n\n</form>\n\n\n\n\n<form (submit)=\"getCardToken($event)\" hidden method=\"post\" id=\"paymentForm\">\n\n <h3>Detalles del pago</h3>\n <div class=\"row\">\n <div class=\"form-group col-12 col-md-4\">\n <label for=\"email\">Correo electronico</label>\n <input class=\"form-control\" id=\"email\" name=\"email\" type=\"email\" [(ngModel)]=\"email\">\n </div>\n <div class=\"form-group col-12 col-md-4\">\n <label for=\"docType\">Tipo de documento</label>\n <select class=\"form-control\" id=\"docType\" name=\"docType\" data-checkout=\"docType\" type=\"text\"\n [(ngModel)]=\"doc_type\">\n <option selected value=\"DNI\">DNI</option>\n <option value=\"CUIT\">CUIT</option>\n </select>\n </div>\n <div class=\"form-group col-12 col-md-4\">\n <label for=\"docNumber\">N\u00FAmero de documento</label>\n <input class=\"form-control\" id=\"docNumber\" name=\"docNumber\" data-checkout=\"docNumber\" type=\"text\"\n [(ngModel)]=\"doc_number\" />\n </div>\n </div>\n <div class=\"row\">\n <div class=\"form-group col-12 col-md-6\">\n <label for=\"cardholderName\">Titular (como figura en la tarjeta)</label>\n <input class=\"form-control\" id=\"cardholderName\" data-checkout=\"cardholderName\" type=\"text\"\n [(ngModel)]=\"cardholder\" [ngModelOptions]=\"{standalone: true}\" autocomplete=\"off\">\n </div>\n <div class=\"form-group col-12 col-md-6\">\n <label for=\"date\">Fecha de vencimiento</label>\n <div id=\"date\">\n <div class=\"\">\n <input class=\"form-control col-xs-6 col-md-6 half-width\" type=\"text\" placeholder=\"MM\"\n [(ngModel)]=\"month\" [ngModelOptions]=\"{standalone: true}\" id=\"cardExpirationMonth\"\n data-checkout=\"cardExpirationMonth\" onselectstart=\"return false\" onpaste=\"return false\"\n oncopy=\"return false\" oncut=\"return false\" ondrag=\"return false\" ondrop=\"return false\"\n autocomplete=\"off\">\n <input class=\"form-control col-xs-6 col-md-6 half-width ml-1\" type=\"text\" placeholder=\"YY\"\n [(ngModel)]=\"year\" [ngModelOptions]=\"{standalone: true}\" id=\"cardExpirationYear\"\n data-checkout=\"cardExpirationYear\" onselectstart=\"return false\" onpaste=\"return false\"\n oncopy=\"return false\" oncut=\"return false\" ondrag=\"return false\" ondrop=\"return false\"\n autocomplete=\"off\">\n </div>\n </div>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"form-group col-12 col-md-9\">\n <label for=\"cardNumber\">N\u00FAmero de la tarjeta</label>\n <input class=\"form-control\" type=\"text\" id=\"cardNumber\" (change)=\"cardNumberChange($event)\"\n [(ngModel)]=\"bin\" [ngModelOptions]=\"{standalone: true}\" data-checkout=\"cardNumber\"\n onselectstart=\"return false\" oncopy=\"return false\" oncut=\"return false\" ondrag=\"return false\"\n ondrop=\"return false\" autocomplete=\"off\">\n </div>\n <div class=\"form-group col-12 col-md-3\">\n <label for=\"securityCode\">C\u00F3digo de seguridad</label>\n <input class=\"form-control\" id=\"securityCode\" data-checkout=\"securityCode\" type=\"text\" [(ngModel)]=\"code\"\n [ngModelOptions]=\"{standalone: true}\" onselectstart=\"return false\" onpaste=\"return false\"\n oncopy=\"return false\" oncut=\"return false\" ondrag=\"return false\" ondrop=\"return false\"\n autocomplete=\"off\">\n </div>\n </div>\n <div class=\"row\">\n <div class=\"form-group col-12 col-md-6\" id=\"issuerInput\" *ngIf=\"require_issuer\">\n <label for=\"issuer\">Banco emisor</label>\n <select class=\"form-control\" id=\"issuer\" name=\"issuer\" autocomplete=\"off\" data-checkout=\"issuer\"\n (change)=\"selectIssuer($event.target.value)\">\n <option selected>Seleccione el banco</option>\n <option *ngFor=\"let issuer of issuers\" [value]=\"issuer.value\">{{ issuer.name }}</option>\n </select>\n </div>\n <div class=\"form-group col-12 col-md-6\">\n <label for=\"installments\">Cuotas</label>\n <select class=\"form-control\" type=\"text\" id=\"installments\" name=\"installments\"\n (change)=\"selectInstallment($event.target.value)\">\n <option selected>Seleccione el n\u00FAmero de cuotas</option>\n <option *ngFor=\"let cost of installments\" [value]=\"cost.value\">{{ cost.name }}\n </option>\n </select>\n </div>\n </div>\n <div hidden>\n <input class=\"form-control\" name=\"transactionAmount\" id=\"transactionAmount\" [value]=\"total_amount\" />\n <input class=\"form-control\" name=\"paymentMethodId\" id=\"paymentMethodId\" [value]=\"payment_method\" />\n <input class=\"form-control\" name=\"description\" id=\"description\" />\n </div>\n <div class=\"checkout-btn-unique\">\n <button type=\"submit\" *ngIf=\"!isInvalid()\" class=\"btn valid-btn\">Pagar</button>\n </div>\n</form>",
@@ -14194,7 +14411,7 @@ MPCreditEcComponent = __decorate$1j([
14194
14411
  })
14195
14412
  ], MPCreditEcComponent);
14196
14413
 
14197
- var __decorate$1k = (this && this.__decorate) || function (decorators, target, key, desc) {
14414
+ var __decorate$1l = (this && this.__decorate) || function (decorators, target, key, desc) {
14198
14415
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
14199
14416
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
14200
14417
  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;
@@ -14234,55 +14451,55 @@ PriceEcComponent.ctorParameters = () => [
14234
14451
  { type: ProductsService },
14235
14452
  { type: ChannelConfigService }
14236
14453
  ];
14237
- __decorate$1k([
14454
+ __decorate$1l([
14238
14455
  Input()
14239
14456
  ], PriceEcComponent.prototype, "price", void 0);
14240
- __decorate$1k([
14457
+ __decorate$1l([
14241
14458
  Input()
14242
14459
  ], PriceEcComponent.prototype, "saleprice", void 0);
14243
- __decorate$1k([
14460
+ __decorate$1l([
14244
14461
  Input()
14245
14462
  ], PriceEcComponent.prototype, "priceWithoutTaxes", void 0);
14246
- __decorate$1k([
14463
+ __decorate$1l([
14247
14464
  Input()
14248
14465
  ], PriceEcComponent.prototype, "priceSize", void 0);
14249
- __decorate$1k([
14466
+ __decorate$1l([
14250
14467
  Input()
14251
14468
  ], PriceEcComponent.prototype, "classStrSpacing", void 0);
14252
- __decorate$1k([
14469
+ __decorate$1l([
14253
14470
  Input()
14254
14471
  ], PriceEcComponent.prototype, "basePrice", void 0);
14255
- __decorate$1k([
14472
+ __decorate$1l([
14256
14473
  Input()
14257
14474
  ], PriceEcComponent.prototype, "taxeAmount", void 0);
14258
- __decorate$1k([
14475
+ __decorate$1l([
14259
14476
  Input()
14260
14477
  ], PriceEcComponent.prototype, "taxes", void 0);
14261
- __decorate$1k([
14478
+ __decorate$1l([
14262
14479
  Input()
14263
14480
  ], PriceEcComponent.prototype, "showTaxLegendOnly", void 0);
14264
- __decorate$1k([
14481
+ __decorate$1l([
14265
14482
  Input()
14266
14483
  ], PriceEcComponent.prototype, "disableTaxInfo", void 0);
14267
- __decorate$1k([
14484
+ __decorate$1l([
14268
14485
  Input()
14269
14486
  ], PriceEcComponent.prototype, "customPriceTemplate", void 0);
14270
- __decorate$1k([
14487
+ __decorate$1l([
14271
14488
  Input()
14272
14489
  ], PriceEcComponent.prototype, "customSalePriceTemplate", void 0);
14273
- __decorate$1k([
14490
+ __decorate$1l([
14274
14491
  Input()
14275
14492
  ], PriceEcComponent.prototype, "customSimplePriceTemplate", void 0);
14276
- __decorate$1k([
14493
+ __decorate$1l([
14277
14494
  Input()
14278
14495
  ], PriceEcComponent.prototype, "customSimpleSalePriceTemplate", void 0);
14279
- __decorate$1k([
14496
+ __decorate$1l([
14280
14497
  Input()
14281
14498
  ], PriceEcComponent.prototype, "customTaxTemplate", void 0);
14282
- __decorate$1k([
14499
+ __decorate$1l([
14283
14500
  Input()
14284
14501
  ], PriceEcComponent.prototype, "customOnlyTaxLabelTemplate", void 0);
14285
- PriceEcComponent = __decorate$1k([
14502
+ PriceEcComponent = __decorate$1l([
14286
14503
  Component({
14287
14504
  selector: 'app-price-ec',
14288
14505
  template: "<!-- Si hay templates personalizados, se proyectan -->\n<ng-container *ngIf=\"customSalePriceTemplate || customPriceTemplate; else defaultPriceBlock\">\n <ng-container *ngTemplateOutlet=\"customPriceTemplate || defaultPriceBlock\"></ng-container>\n</ng-container>\n\n<ng-template #defaultPriceBlock>\n <div *ngIf=\"saleprice; else onlyprice\" class=\"line-height-custom\">\n <div [class]=\"(priceSize ? 'price-sm' : 'price')\"\n *ngIf=\"price && price.split(' - ').length > 1; else simplePriceDel\">\n <del class=\"tachado\">\n {{ price.split(' - ')[0] | ecCurrencySymbol }}\n {{ price.split(' - ')[1] | ecCurrencySymbol }}\n </del>\n </div>\n <div [class]=\"(priceSize ? 'price-sm' : 'price')\"\n *ngIf=\"saleprice && saleprice.split(' - ').length > 1; else simpleSalePrice\">\n {{ saleprice.split(' - ')[0] | ecCurrencySymbol }}\n {{ saleprice.split(' - ')[1] | ecCurrencySymbol }}\n </div>\n </div>\n\n <ng-template #onlyprice>\n <div [class]=\"(priceSize ? 'price-sm' : 'price')\"\n *ngIf=\"price && price.split(' - ').length > 1; else simplePrice\">\n {{ price.split(' - ')[0] | ecCurrencySymbol }} -\n {{ price.split(' - ')[1] | ecCurrencySymbol }}\n </div>\n </ng-template>\n\n <ng-template #simplePrice>\n <ng-container *ngIf=\"customSimplePriceTemplate; else fallbackSimplePrice\">\n <ng-container *ngTemplateOutlet=\"customSimplePriceTemplate\"></ng-container>\n </ng-container>\n </ng-template>\n\n <ng-template #fallbackSimplePrice>\n <div [class]=\"'uno line-height-custom ' + (priceSize ? 'price-sm' : 'price')\">\n {{ price | ecCurrencySymbol }}\n </div>\n </ng-template>\n\n <ng-template #simplePriceDel>\n <div [class]=\"'dos line-height-custom ' + (priceSize ? 'price-sm' : 'price')\">\n <span class=\"lnth\">{{ price | ecCurrencySymbol }}</span>\n </div>\n </ng-template>\n\n <ng-template #simpleSalePrice>\n <ng-container *ngIf=\"customSimpleSalePriceTemplate; else fallbackSimpleSalePrice\">\n <ng-container *ngTemplateOutlet=\"customSimpleSalePriceTemplate\"></ng-container>\n </ng-container>\n </ng-template>\n\n <ng-template #fallbackSimpleSalePrice>\n <div [class]=\"'tres line-height-custom ' + (priceSize ? 'price-sm' : 'price')\">\n {{ saleprice | ecCurrencySymbol }}\n </div>\n </ng-template>\n</ng-template>\n\n<!-- Secci\u00F3n de impuestos -->\n<ng-container *ngIf=\"shouldShowTaxes\">\n <ng-container *ngIf=\"showTaxLegendOnly; else detailedTaxBlock\">\n <ng-container *ngIf=\"customOnlyTaxLabelTemplate; else defaultOnlyTaxLabelBlock\">\n <ng-container *ngTemplateOutlet=\"customOnlyTaxLabelTemplate\"></ng-container>\n </ng-container>\n <ng-template #defaultOnlyTaxLabelBlock>\n <p class=\"taxes-title\">{{'price-without-national-taxes' | translate }}: <span class=\"nowrap-price\">{{ basePrice | ecCurrencySymbol }}</span>\n </p>\n </ng-template>\n </ng-container>\n\n <ng-template #detailedTaxBlock>\n <ng-container *ngIf=\"customTaxTemplate; else defaultTaxBlock\">\n <ng-container *ngTemplateOutlet=\"customTaxTemplate\"></ng-container>\n </ng-container>\n </ng-template>\n</ng-container>\n\n<ng-template #defaultTaxBlock>\n <div class=\"taxes-section\">\n <p class=\"taxes-title\">{{'price-without-national-taxes' | translate }}: <span class=\"nowrap-price\">{{ basePrice | ecCurrencySymbol }}</span></p>\n <ul class=\"taxes-list\">\n <li>\n {{ taxes.Name }}: {{ taxeAmount | ecCurrencySymbol }}\n </li>\n </ul>\n </div>\n</ng-template>",
@@ -14290,7 +14507,7 @@ PriceEcComponent = __decorate$1k([
14290
14507
  })
14291
14508
  ], PriceEcComponent);
14292
14509
 
14293
- var __decorate$1l = (this && this.__decorate) || function (decorators, target, key, desc) {
14510
+ var __decorate$1m = (this && this.__decorate) || function (decorators, target, key, desc) {
14294
14511
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
14295
14512
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
14296
14513
  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;
@@ -14426,7 +14643,7 @@ RedsysCatchEcComponent.ctorParameters = () => [
14426
14643
  { type: Router },
14427
14644
  { type: CheckoutService }
14428
14645
  ];
14429
- RedsysCatchEcComponent = __decorate$1l([
14646
+ RedsysCatchEcComponent = __decorate$1m([
14430
14647
  Component({
14431
14648
  selector: 'app-redsys-catch-ec',
14432
14649
  template: "<div id=\"container\">\n <div class=\"row\">\n <div class=\"col align-self-center\">\n <h4 class=\"titpage center-block text-center font-nexa font-lg my-3\">{{ message | uppercase }}</h4>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col align-self-center\">\n <h5 class=\"center-block text-center font-nexa my-3\">Redirigiendo en segundos...</h5>\n <br>\n <div class=\"d-flex flex-column jusitfy-content-center align-items-center\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n </div>\n </div>\n</div>",
@@ -14434,13 +14651,13 @@ RedsysCatchEcComponent = __decorate$1l([
14434
14651
  })
14435
14652
  ], RedsysCatchEcComponent);
14436
14653
 
14437
- var __decorate$1m = (this && this.__decorate) || function (decorators, target, key, desc) {
14654
+ var __decorate$1n = (this && this.__decorate) || function (decorators, target, key, desc) {
14438
14655
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
14439
14656
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
14440
14657
  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;
14441
14658
  return c > 3 && r && Object.defineProperty(target, key, r), r;
14442
14659
  };
14443
- var __param$b = (this && this.__param) || function (paramIndex, decorator) {
14660
+ var __param$c = (this && this.__param) || function (paramIndex, decorator) {
14444
14661
  return function (target, key) { decorator(target, key, paramIndex); }
14445
14662
  };
14446
14663
  /** @dynamic */
@@ -14539,35 +14756,35 @@ RedSysProEcComponent.ctorParameters = () => [
14539
14756
  { type: ActivatedRoute },
14540
14757
  { type: BsModalService }
14541
14758
  ];
14542
- __decorate$1m([
14759
+ __decorate$1n([
14543
14760
  Input()
14544
14761
  ], RedSysProEcComponent.prototype, "method", void 0);
14545
- __decorate$1m([
14762
+ __decorate$1n([
14546
14763
  Input()
14547
14764
  ], RedSysProEcComponent.prototype, "total_amount", void 0);
14548
- __decorate$1m([
14765
+ __decorate$1n([
14549
14766
  Output()
14550
14767
  ], RedSysProEcComponent.prototype, "ready", void 0);
14551
- __decorate$1m([
14768
+ __decorate$1n([
14552
14769
  Input()
14553
14770
  ], RedSysProEcComponent.prototype, "user_data", void 0);
14554
- __decorate$1m([
14771
+ __decorate$1n([
14555
14772
  ViewChild('formDobleAuthContainer')
14556
14773
  ], RedSysProEcComponent.prototype, "formDobleAuth", void 0);
14557
- __decorate$1m([
14774
+ __decorate$1n([
14558
14775
  ViewChild('template')
14559
14776
  ], RedSysProEcComponent.prototype, "template", void 0);
14560
- RedSysProEcComponent = __decorate$1m([
14777
+ RedSysProEcComponent = __decorate$1n([
14561
14778
  Component({
14562
14779
  selector: 'app-redsys-pro-ec',
14563
14780
  template: "<div class=\"text-center\">\n <h3>Continuar con el pago</h3>\n <button class=\"btn btn-outline-secondary rounded-0 comprar\" (click)=\"openModal(template)\">Pagar con tarjeta</button>\n</div>\n\n\n<ng-template #template>\n <div class=\"modal-content\">\n <div class=\"modal-header\">\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"clickClose()\">\n <span aria-hidden=\"true\">&times;</span>\n </button>\n </div>\n </div>\n\n <div class=\"modal-body\">\n <iframe src=\"../../../assets/redsysProBase.html\" frameborder=\"0\" class=\"iframeStyle\"></iframe>\n </div>\n \n</ng-template>\n",
14564
14781
  providers: [BsModalService],
14565
14782
  styles: [".half-width{width:49%!important}.ml-1{margin-left:1%}#card-form{height:450px}.iframeStyle{height:800px;width:100%;max-height:800px}"]
14566
14783
  }),
14567
- __param$b(6, Inject(DOCUMENT))
14784
+ __param$c(6, Inject(DOCUMENT))
14568
14785
  ], RedSysProEcComponent);
14569
14786
 
14570
- var __decorate$1n = (this && this.__decorate) || function (decorators, target, key, desc) {
14787
+ var __decorate$1o = (this && this.__decorate) || function (decorators, target, key, desc) {
14571
14788
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
14572
14789
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
14573
14790
  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;
@@ -14720,28 +14937,28 @@ RedSysRedirectEcComponent.ctorParameters = () => [
14720
14937
  { type: ActivatedRoute },
14721
14938
  { type: BsModalService }
14722
14939
  ];
14723
- __decorate$1n([
14940
+ __decorate$1o([
14724
14941
  Input()
14725
14942
  ], RedSysRedirectEcComponent.prototype, "method", void 0);
14726
- __decorate$1n([
14943
+ __decorate$1o([
14727
14944
  Input()
14728
14945
  ], RedSysRedirectEcComponent.prototype, "total_amount", void 0);
14729
- __decorate$1n([
14946
+ __decorate$1o([
14730
14947
  Output()
14731
14948
  ], RedSysRedirectEcComponent.prototype, "ready", void 0);
14732
- __decorate$1n([
14949
+ __decorate$1o([
14733
14950
  Input()
14734
14951
  ], RedSysRedirectEcComponent.prototype, "user_data", void 0);
14735
- __decorate$1n([
14952
+ __decorate$1o([
14736
14953
  ViewChild('template')
14737
14954
  ], RedSysRedirectEcComponent.prototype, "template", void 0);
14738
- __decorate$1n([
14955
+ __decorate$1o([
14739
14956
  HostListener('window:message', ['$event'])
14740
14957
  ], RedSysRedirectEcComponent.prototype, "onMessage", null);
14741
- __decorate$1n([
14958
+ __decorate$1o([
14742
14959
  HostListener('window:storage', ['$event'])
14743
14960
  ], RedSysRedirectEcComponent.prototype, "onStorage", null);
14744
- RedSysRedirectEcComponent = __decorate$1n([
14961
+ RedSysRedirectEcComponent = __decorate$1o([
14745
14962
  Component({
14746
14963
  selector: 'app-redsys-redirect-ec',
14747
14964
  template: "<div class=\"text-center\">\n <h3>Continuar con el pago</h3>\n <p *ngIf=\"method\" class=\"px-5\">{{ method?.description }}</p>\n <p *ngIf=\"method\" class=\"px-5\">{{ method?.instructions }}</p>\n <button class=\"btn btn-outline-secondary comprar\" (click)=\"openModal(template)\">\n Pagar con tarjeta\n </button>\n</div>\n\n<ng-template #template>\n <div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">Pasarela de pago</h4>\n <button type=\"button\" class=\"btn-close close pull-right\" aria-label=\"Close\" (click)=\"clickClose()\">\n </button>\n </div>\n \n <div class=\"modal-body p-0\">\n <iframe src=\"../../../assets/redsysFrameRedirectBase.html\" \n frameborder=\"0\" \n class=\"iframeStyle\"\n style=\"width: 100%; height: 600px; min-height: 60vh;\">\n </iframe>\n </div>\n</ng-template>",
@@ -14749,7 +14966,7 @@ RedSysRedirectEcComponent = __decorate$1n([
14749
14966
  })
14750
14967
  ], RedSysRedirectEcComponent);
14751
14968
 
14752
- var __decorate$1o = (this && this.__decorate) || function (decorators, target, key, desc) {
14969
+ var __decorate$1p = (this && this.__decorate) || function (decorators, target, key, desc) {
14753
14970
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
14754
14971
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
14755
14972
  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;
@@ -14849,22 +15066,22 @@ CecaRedirectEcComponent.ctorParameters = () => [
14849
15066
  { type: ActivatedRoute },
14850
15067
  { type: BsModalService }
14851
15068
  ];
14852
- __decorate$1o([
15069
+ __decorate$1p([
14853
15070
  Input()
14854
15071
  ], CecaRedirectEcComponent.prototype, "method", void 0);
14855
- __decorate$1o([
15072
+ __decorate$1p([
14856
15073
  Input()
14857
15074
  ], CecaRedirectEcComponent.prototype, "total_amount", void 0);
14858
- __decorate$1o([
15075
+ __decorate$1p([
14859
15076
  Output()
14860
15077
  ], CecaRedirectEcComponent.prototype, "ready", void 0);
14861
- __decorate$1o([
15078
+ __decorate$1p([
14862
15079
  Input()
14863
15080
  ], CecaRedirectEcComponent.prototype, "user_data", void 0);
14864
- __decorate$1o([
15081
+ __decorate$1p([
14865
15082
  ViewChild('template')
14866
15083
  ], CecaRedirectEcComponent.prototype, "template", void 0);
14867
- CecaRedirectEcComponent = __decorate$1o([
15084
+ CecaRedirectEcComponent = __decorate$1p([
14868
15085
  Component({
14869
15086
  selector: 'app-ceca-redirect-ec',
14870
15087
  template: "<div class=\"text-center\">\n <p *ngIf=\"method\" class=\"px-5\">{{ method?.description }}</p>\n <p *ngIf=\"method\" class=\"px-5\">{{ method?.instructions }}</p>\n <button class=\"btn btn-outline-secondary comprar\" (click)=\"openModal(template)\">Pagar con cecabank</button>\n</div>\n\n<ng-template #template>\n <div class=\"modal-content\">\n </div>\n <div class=\"modal-body\">\n <iframe src=\"../../../assets/cecaFrameRedirectBase.html\" frameborder=\"0\" class=\"iframeStyle\"></iframe>\n </div>\n \n</ng-template>",
@@ -14873,7 +15090,7 @@ CecaRedirectEcComponent = __decorate$1o([
14873
15090
  })
14874
15091
  ], CecaRedirectEcComponent);
14875
15092
 
14876
- var __decorate$1p = (this && this.__decorate) || function (decorators, target, key, desc) {
15093
+ var __decorate$1q = (this && this.__decorate) || function (decorators, target, key, desc) {
14877
15094
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
14878
15095
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
14879
15096
  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;
@@ -15043,10 +15260,10 @@ OrdersEcComponent.ctorParameters = () => [
15043
15260
  { type: CartService },
15044
15261
  { type: ChannelConfigService }
15045
15262
  ];
15046
- __decorate$1p([
15263
+ __decorate$1q([
15047
15264
  Input()
15048
15265
  ], OrdersEcComponent.prototype, "showImage", void 0);
15049
- OrdersEcComponent = __decorate$1p([
15266
+ OrdersEcComponent = __decorate$1q([
15050
15267
  Component({
15051
15268
  selector: 'app-orders-ec',
15052
15269
  template: "<div class=\"container-fluid\" id=\"ordersEcComponent\">\n <section id=\"orders\" class=\"w-100\" *ngIf=\"!loading; else loadingView\">\n <ng-container *ngIf=\"!hidePrices\">\n <div *ngIf=\"orders && orders.length; else noOrders\">\n <div class=\"row mb-1 border-bottom\">\n <div class=\"col-lg-2 col-12\">\n <p [class]=\"'st dropdown-toggle cursor-pointer my-2 '+ (currentSort.name == 'number' ? 'applied ' + (!currentSort.asc ? 'asc' : 'desc') : '')\"\n (click)=\"sortOrders('number')\">{{ 'order' | translate }}:</p>\n </div>\n <div class=\"col-lg-2 col-12\">\n <p [class]=\"'st dropdown-toggle cursor-pointer my-2 '+ (currentSort.name == 'paymentState' ? 'applied ' + (!currentSort.asc ? 'asc' : 'desc') : '')\"\n (click)=\"sortOrders('paymentState')\">{{ 'payment-state' | translate }}:</p>\n </div>\n <div class=\"col-lg-2 col-12\">\n <p [class]=\"'st dropdown-toggle cursor-pointer my-2 '+ (currentSort.name == 'method' ? 'applied ' + (!currentSort.asc ? 'asc' : 'desc') : '')\"\n (click)=\"sortOrders('method')\">{{ 'shipment-method' | translate }}:</p>\n </div>\n <div class=\"col-lg-2 col-12 \">\n <p [class]=\"'st dropdown-toggle cursor-pointer my-2 '+ (currentSort.name == 'methodState' ? 'applied ' + (!currentSort.asc ? 'asc' : 'desc') : '')\"\n (click)=\"sortOrders('methodState')\">\n {{ 'shipment-state' | translate }}:</p>\n </div>\n <div class=\"col-lg-2 col-12\">\n <p [class]=\"'st dropdown-toggle cursor-pointer my-2 '+ (currentSort.name == 'date' ? 'applied ' + (!currentSort.asc ? 'asc' : 'desc') : '')\"\n (click)=\"sortOrders('date')\">{{ 'date' | translate }}:</p>\n </div>\n <div class=\"col-lg-2 col-12\">\n <p [class]=\"'st dropdown-toggle cursor-pointer my-2 '+ (currentSort.name == 'total' ? 'applied ' + (!currentSort.asc ? 'asc' : 'desc') : '')\"\n (click)=\"sortOrders('total')\">{{ 'total' | translate }}:</p>\n </div>\n </div>\n <div class=\"row item border-bottom py-2\" *ngFor=\"let order of orders\">\n <div class=\"col-lg-2 col-12\">\n <h5 class=\"fw-bold\">\n {{ order.number }}\n </h5>\n <!-- <ng-container *ngIf=\"showImage\">\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 </ng-container> -->\n </div>\n <div class=\"col-lg-2 col-12\">\n <p class=\"price\" *ngIf=\"order.payments && order.payments.length > 0\">\n {{ order.payments[0].state | translate | titlecase }}\n </p>\n </div>\n <div class=\"col-lg-2 col-12\">\n\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=\"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 <a *ngIf=\"order.tracking\" [href]=\"order.tracking\"\n class=\"btn btn-outline-dark btnLogout px-3 py-1 font-size-10 w-auto btn-sm\">Ver\n seguimiento</a>\n </div>\n <div class=\"col-lg-2 col-12\">\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 <h5 class=\"fw-bold text-nowrap\" *ngIf=\"(showPrice !== null ? showPrice : true)\">\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 </ng-container>\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>",
@@ -15054,7 +15271,7 @@ OrdersEcComponent = __decorate$1p([
15054
15271
  })
15055
15272
  ], OrdersEcComponent);
15056
15273
 
15057
- var __decorate$1q = (this && this.__decorate) || function (decorators, target, key, desc) {
15274
+ var __decorate$1r = (this && this.__decorate) || function (decorators, target, key, desc) {
15058
15275
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
15059
15276
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
15060
15277
  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;
@@ -15150,10 +15367,10 @@ OrderEcComponent.ctorParameters = () => [
15150
15367
  { type: CartService },
15151
15368
  { type: ChannelConfigService }
15152
15369
  ];
15153
- __decorate$1q([
15370
+ __decorate$1r([
15154
15371
  Input()
15155
15372
  ], OrderEcComponent.prototype, "numberOrder", void 0);
15156
- OrderEcComponent = __decorate$1q([
15373
+ OrderEcComponent = __decorate$1r([
15157
15374
  Component({
15158
15375
  selector: 'app-order-ec',
15159
15376
  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\" *ngIf=\"(creditAccountShowPrices !== null ? creditAccountShowPrices : true)\">\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 pt-2\">\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 <a *ngIf=\"order.tracking\" [href]=\"order.tracking\"\n class=\"btn btn-outline-dark btnLogout px-3 py-1 font-size-10 w-auto btn-sm\">Ver\n seguimiento</a>\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 *ngIf=\"(creditAccountShowPrices !== null ? creditAccountShowPrices : true)\">\n <p class=\"st\">{{ 'total' | translate }}:</p>\n <h5 class=\"fw-bold\">\n {{ (order.totals.total) | ecCurrencySymbol:'alwaysShowDecimals'}}\n\n </h5>\n </div>\n </div>\n </section>\n\n <div class=\"text-end mt-3\" *ngIf=\"!hidePrices && allowRepeatOrders\">\n <button class=\"btn btn-primary mb-2\" (click)=\"repeatOrder()\">\n {{ 'repeat-order' | translate }}\n </button>\n </div>\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 id=\"colLots\" *ngIf=\"ordersService.channelConfig.applyOrderLot\"\n class=\"col-1 font-sm font-brandon d-none d-md-block\">\n <!-- {{ 'description' | translate | uppercase }} -->\n {{ 'lots' | translate | uppercase }}\n </div>\n <div class=\"col-2 text-center font-sm font-brandon d-none d-md-block\"\n *ngIf=\"(creditAccountShowPrices !== null ? creditAccountShowPrices : true)\">\n {{ 'unit-price' | translate | uppercase }}\n </div>\n <div class=\"col-1 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 *ngIf=\"(creditAccountShowPrices !== null ? creditAccountShowPrices : true)\">\n {{ 'total' | translate | uppercase }}\n </div>\n </div>\n <ng-container *ngFor=\"let item of order.items; let i = index\">\n <div class=\"row cart-items\">\n <div class=\"col-5 col-md-2 py-2\">\n <ng-container *ngIf=\"item.product.variants[0]?.images?.length ; else defaultpicture\">\n <img class=\"smc maxwidth img-fluid rounded-custom \"\n [src]=\"consts.mediaUrl() + item.product.variants[0].images[0]\" alt=\"\">\n </ng-container>\n <ng-template #defaultpicture>\n <img *ngIf=\"item.product.picturesdefault\"\n class=\"smc maxwidth img-fluid rounded-custom\"\n [src]=\"consts.mediaUrl() + item.product.picturesdefault[0]\" alt=\"\">\n </ng-template>\n </div> \n <div\n class=\"col-md-4 col-7 d-flex flex-column justify-content-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 <p *ngIf=\"enableFieldNotesInArticleFile && item.comments\" class=\"comment-truncated fst-italic small text-muted mt-1\">\n \"{{ item.comments }}\"\n </p>\n </div>\n <div class=\"col-md-1 col-1 flex-column flex-md-row justify-content-start d-flex align-items-center\"\n *ngIf=\"ordersService.channelConfig.applyOrderLot\">\n <input type=\"button\" class=\"btn btn-primary btnSeguir m-0 text-center\" type=\"button\"\n [attr.data-bs-toggle]=\"'collapse'\" [attr.data-bs-target]=\"'#collapseExample'+i\"\n aria-expanded=\"false\" [attr.aria-controls]=\"'collapseExample'+i\"\n value=\"{{ 'see' | translate | uppercase }}\">\n </div>\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 *ngIf=\"(creditAccountShowPrices !== null ? creditAccountShowPrices : true)\">\n <p class=\"text-center w-100 m-0\"> {{ (item.product.variants[0].saleprice ?\n item.product.variants[0].saleprice : item.product.variants[0].price) |\n ecCurrencySymbol:'alwaysShowDecimals'}}</p>\n </div>\n <div class=\"col-4 font-xl\"\n *ngIf=\"(creditAccountShowPrices !== null ? creditAccountShowPrices : true)\">\n <p class=\"text-center w-100 m-0\"> {{ ((item.product.variants[0].saleprice ?\n item.product.variants[0].saleprice : item.product.variants[0].price) *\n item.quantity) | ecCurrencySymbol:'alwaysShowDecimals'}}</p>\n </div>\n </div>\n </div>\n\n <div class=\"col-2 d-none d-md-flex align-items-center\"\n *ngIf=\"(creditAccountShowPrices !== null ? creditAccountShowPrices : true)\">\n <p class=\"text-center w-100 m-0\">\n {{ (item.product.variants[0].saleprice ? item.product.variants[0].saleprice :\n item.product.variants[0].price) | ecCurrencySymbol:'alwaysShowDecimals'}}\n </p>\n </div>\n <div class=\"col-1 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 *ngIf=\"(creditAccountShowPrices !== null ? creditAccountShowPrices : true)\">\n <p class=\"text-end w-100 m-0\">\n {{ ((item.product.variants[0].saleprice ? item.product.variants[0].saleprice :\n item.product.variants[0].price) * item.quantity) | ecCurrencySymbol:'alwaysShowDecimals'}}</p>\n </div>\n <div class=\"collapse\" [attr.id]=\"'collapseExample'+i\">\n <div class=\"card card-body\">\n <table class=\"table table-striped\">\n <thead>\n <tr>\n <th scope=\"col\">#</th>\n <th scope=\"col\">Estado</th>\n <th scope=\"col\">Cantidad</th>\n <th scope=\"col\">Fecha Solicitada</th>\n <th scope=\"col\">Fecha Estimada</th>\n <th scope=\"col\">Sede</th>\n <th scope=\"col\">Nota</th>\n <th scope=\"col\">Total Lote</th>\n </tr>\n </thead>\n <tbody>\n <ng-container *ngFor=\"let lot of item.orderItemLot\">\n <tr>\n <th scope=\"row\">{{lot.id}}</th>\n <td>{{lot.lot_status}}</td>\n <td>{{lot.quantity}}</td>\n <td>{{ toDate(lot.date_request, 'DD/MM/YYYY') | translate }}</td>\n <td *ngIf=\"lot.date_deliver; else sinFechaEstimada\">{{\n toDate(lot.date_deliver, 'DD/MM/YYYY') | translate }}</td>\n <ng-template #sinFechaEstimada>\n <td>Pendiente</td>\n </ng-template>\n <td>{{lot.shipping_address_name}}</td>\n <td>{{lot.notes}}</td>\n <td>{{lot.total_lot | ecCurrencySymbol:'alwaysShowDecimals'}}</td>\n </tr>\n </ng-container>\n </tbody>\n </table>\n </div>\n </div>\n </div>\n\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 *ngIf=\"(creditAccountShowPrices !== null ? creditAccountShowPrices : true)\">\n <div class=\"row py-4\">\n <div class=\"col-6 font-brandon font-md text-gray border-bottom \">{{ 'total-products' |\n translate }}</div>\n <div class=\"col-6 font-brandon font-md text-gray border-bottom text-end\">\n {{ (order.totals.subtotal) | ecCurrencySymbol:'alwaysShowDecimals' }}\n </div>\n\n <div class=\"col-6 font-brandon font-md text-gray border-bottom \">{{ 'shipment' |\n translate }}</div>\n <div class=\"col-6 font-brandon font-md text-gray border-bottom text-end\">\n {{ (order.totals.shipping || '0') | ecCurrencySymbol:'alwaysShowDecimals' }}\n\n </div>\n\n <div *ngIf=\"!hideDiscounts && order.totals.promotion && order.totals.promotion != 0\"\n class=\"col-6 font-brandon font-md text-gray border-bottom \">{{ 'discount' |\n translate }}</div>\n <div *ngIf=\"!hideDiscounts && 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:'alwaysShowDecimals' }}</div>\n\n <div *ngIf=\"!hideTaxes && order.totals.taxes && order.totals.taxes != 0 \"\n class=\"col-6 font-brandon font-md text-gray border-bottom \">\n {{ 'taxes' | translate }}</div>\n <div *ngIf=\"!hideTaxes && order.totals.taxes && order.totals.taxes != 0\"\n class=\"col-6 font-brandon font-md text-gray border-bottom text-end\">\n {{ (order.totals.taxes) | ecCurrencySymbol:'alwaysShowDecimals' }}</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:'alwaysShowDecimals' }}\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>",
@@ -15161,14 +15378,14 @@ OrderEcComponent = __decorate$1q([
15161
15378
  })
15162
15379
  ], OrderEcComponent);
15163
15380
 
15164
- var __decorate$1r = (this && this.__decorate) || function (decorators, target, key, desc) {
15381
+ var __decorate$1s = (this && this.__decorate) || function (decorators, target, key, desc) {
15165
15382
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
15166
15383
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
15167
15384
  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;
15168
15385
  return c > 3 && r && Object.defineProperty(target, key, r), r;
15169
15386
  };
15170
15387
  let AuthEcComponent = class AuthEcComponent extends ComponentHelper {
15171
- constructor(authService, toastr, paramsService, activatedRoute, formBuilder, router) {
15388
+ constructor(authService, toastr, paramsService, activatedRoute, formBuilder, router, seo) {
15172
15389
  super();
15173
15390
  this.authService = authService;
15174
15391
  this.toastr = toastr;
@@ -15176,6 +15393,7 @@ let AuthEcComponent = class AuthEcComponent extends ComponentHelper {
15176
15393
  this.activatedRoute = activatedRoute;
15177
15394
  this.formBuilder = formBuilder;
15178
15395
  this.router = router;
15396
+ this.seo = seo;
15179
15397
  this.complete = true;
15180
15398
  this.data = {
15181
15399
  email: null,
@@ -15187,6 +15405,30 @@ let AuthEcComponent = class AuthEcComponent extends ComponentHelper {
15187
15405
  this.loading = false;
15188
15406
  this.register_loading = false;
15189
15407
  this.params = [];
15408
+ this.updateSeoForAuthRoute = () => {
15409
+ const siteName = this.seo.getSiteName();
15410
+ const routeMeta = {
15411
+ '/auth/login': {
15412
+ title: 'Iniciar sesión',
15413
+ description: `Ingresá a tu cuenta de ${siteName} para gestionar pedidos y compras.`,
15414
+ },
15415
+ '/auth/register': {
15416
+ title: 'Crear cuenta',
15417
+ description: `Creá tu cuenta en ${siteName} para acceder al catálogo y realizar compras.`,
15418
+ },
15419
+ };
15420
+ const selected = routeMeta[this.router.url] || {
15421
+ title: 'Autenticación',
15422
+ description: `Acceso de usuarios en ${siteName}.`,
15423
+ };
15424
+ this.seo.setTitle(`${selected.title} | ${siteName}`);
15425
+ this.seo.setDescription(selected.description);
15426
+ this.seo.setOgType('website');
15427
+ this.seo.setRobots('noindex, nofollow');
15428
+ if (typeof window !== 'undefined') {
15429
+ this.seo.setCanonical(window.location.href);
15430
+ }
15431
+ };
15190
15432
  this.setProp = (prop, event) => {
15191
15433
  this.data[prop] = event.target.value;
15192
15434
  };
@@ -15243,6 +15485,7 @@ let AuthEcComponent = class AuthEcComponent extends ComponentHelper {
15243
15485
  resul && this.authService.doLoginUser(resul);
15244
15486
  }
15245
15487
  });
15488
+ this.updateSeoForAuthRoute();
15246
15489
  this.ecOnInit();
15247
15490
  }
15248
15491
  ngOnChanges() {
@@ -15255,15 +15498,16 @@ AuthEcComponent.ctorParameters = () => [
15255
15498
  { type: ParametersService },
15256
15499
  { type: ActivatedRoute },
15257
15500
  { type: FormBuilder },
15258
- { type: Router }
15501
+ { type: Router },
15502
+ { type: SeoService }
15259
15503
  ];
15260
- __decorate$1r([
15504
+ __decorate$1s([
15261
15505
  Input()
15262
15506
  ], AuthEcComponent.prototype, "complete", void 0);
15263
- __decorate$1r([
15507
+ __decorate$1s([
15264
15508
  Input()
15265
15509
  ], AuthEcComponent.prototype, "redirect", void 0);
15266
- AuthEcComponent = __decorate$1r([
15510
+ AuthEcComponent = __decorate$1s([
15267
15511
  Component({
15268
15512
  selector: 'app-auth-ec',
15269
15513
  template: "<!-- banners -->\n<div class=\"row\">\n <div class=\"col-12 p-0\" id=\"banner-slider-home\">\n <div id=\"banner-slider\" class=\"owl-carousel h-100 w-100\">\n <div class=\"item\">\n <img src=\"assets/image/login.png\" class=\"w-100 d-none d-md-block\">\n <img src=\"assets/image/26912-05-mobile.png\" class=\"w-100 d-block d-md-none\">\n <div class=\"caption\">\n <h1 class=\"color-white\">Ingresar</h1>\n </div>\n </div>\n </div>\n </div>\n</div>\n\n<div class=\"row\" id=\"contacto\">\n <div class=\"col-12 py-md-5 py-0 px-0\">\n <div class=\"container\" style=\"background-color: #F1F1F1;\">\n <div class=\"row\">\n <div class=\"col-md-6 px-md-5 px-3 col-12\">\n <app-login-form-ec></app-login-form-ec>\n </div>\n <div class=\"col-md-6 px-md-5 px-3 col-12\">\n <app-register-form-ec></app-register-form-ec>\n </div>\n </div>\n </div>\n </div>\n</div>",
@@ -15271,7 +15515,7 @@ AuthEcComponent = __decorate$1r([
15271
15515
  })
15272
15516
  ], AuthEcComponent);
15273
15517
 
15274
- var __decorate$1s = (this && this.__decorate) || function (decorators, target, key, desc) {
15518
+ var __decorate$1t = (this && this.__decorate) || function (decorators, target, key, desc) {
15275
15519
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
15276
15520
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
15277
15521
  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;
@@ -15507,19 +15751,19 @@ RegisterFormEcComponent.ctorParameters = () => [
15507
15751
  { type: ChannelConfigService },
15508
15752
  { type: Constants }
15509
15753
  ];
15510
- __decorate$1s([
15754
+ __decorate$1t([
15511
15755
  Input()
15512
15756
  ], RegisterFormEcComponent.prototype, "darkMode", void 0);
15513
- __decorate$1s([
15757
+ __decorate$1t([
15514
15758
  Input()
15515
15759
  ], RegisterFormEcComponent.prototype, "redirect", void 0);
15516
- __decorate$1s([
15760
+ __decorate$1t([
15517
15761
  Input()
15518
15762
  ], RegisterFormEcComponent.prototype, "complete", void 0);
15519
- __decorate$1s([
15763
+ __decorate$1t([
15520
15764
  Output()
15521
15765
  ], RegisterFormEcComponent.prototype, "ready", void 0);
15522
- RegisterFormEcComponent = __decorate$1s([
15766
+ RegisterFormEcComponent = __decorate$1t([
15523
15767
  Component({
15524
15768
  selector: 'app-register-form-ec',
15525
15769
  template: "<div class=\"w-100 pl-md-5 position-relative\" id=\"register\">\n <div class=\"py-2\">\n <h5>CREAR CUENTA</h5>\n </div>\n <form id=\"registro\" [formGroup]=\"registerForm\" (submit)=\"register($event)\">\n <div class=\"form-group\">\n <label for=\"\" class=\"form-label\">NOMBRE</label>\n <input formControlName=\"firstName\" class=\"form-control rounded-0\" type=\"text\" placeholder=\"Nombre\">\n </div>\n <div class=\"form-group\">\n <label for=\"\" class=\"form-label\">APELLIDO</label>\n <input formControlName=\"lastName\" class=\"form-control rounded-0\" type=\"text\" placeholder=\"Apellido\">\n </div>\n <div class=\"form-group\">\n <label for=\"\" class=\"\">CORREO ELECTRONICO</label>\n <input formControlName=\"email\" email required class=\"form-control rounded-0\" type=\"email\"\n placeholder=\"Correo electr\u00F3nico\">\n </div>\n <div class=\"form-group\">\n <label for=\"\" class=\"form-label\">CONTRASE\u00D1A</label>\n <input formControlName=\"plainPassword\" required class=\"form-control rounded-0\" type=\"password\"\n placeholder=\"Contrase\u00F1a\">\n </div>\n <div class=\"form-group\">\n <label for=\"\" class=\"form-label\">REPETIR CONTRASE\u00D1A</label>\n <input formControlName=\"plainPassword2\" required class=\"form-control rounded-0\" type=\"password\"\n placeholder=\"Repetir contrase\u00F1a\">\n </div>\n\n <div class=\"custom-control d-flex flex-row form-check custom-checkbox mr-sm-2 mt-4 mb-2\">\n <input type=\"checkbox\" formControlName=\"terms\" required class=\"custom-control-input form-check-input\" name=\"Color2\"\n id=\"Color2\">\n <label class=\"custom-control-label ff-ubuntu-light font-sm form-check-label\" for=\"Color2\"> He\n le\u00EDdo y acepto las pol\u00EDticas de privacidad y los t\u00E9rminos y\n condiciones</label>\n </div>\n\n <div class=\"custom-control d-flex flex-row form-check custom-checkbox mr-sm-2 mb-4\">\n <input type=\"checkbox\" formControlName=\"newsletter\" class=\"custom-control-input form-check-input\" name=\"Color3\" id=\"Color3\">\n <label class=\"custom-control-label form-check-label ff-ubuntu-light font-sm\" for=\"Color3\">\n Suscripci\u00F3n al Newsletter</label>\n </div>\n\n <div class=\"row\">\n <div class=\"col-12\">\n <button [disabled]=\"registerForm.invalid\" type=\"submit\"\n class=\"btn btn-dark bg-black btn-block px-5 py-2 rounded-0 h-fit\">CREAR</button>\n </div>\n </div>\n </form>\n <app-loading-section-ec *ngIf=\"register_loading\"></app-loading-section-ec>\n</div>",
@@ -15527,7 +15771,7 @@ RegisterFormEcComponent = __decorate$1s([
15527
15771
  })
15528
15772
  ], RegisterFormEcComponent);
15529
15773
 
15530
- var __decorate$1t = (this && this.__decorate) || function (decorators, target, key, desc) {
15774
+ var __decorate$1u = (this && this.__decorate) || function (decorators, target, key, desc) {
15531
15775
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
15532
15776
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
15533
15777
  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;
@@ -15602,25 +15846,25 @@ LoginFormEcComponent.ctorParameters = () => [
15602
15846
  { type: FormBuilder },
15603
15847
  { type: Router }
15604
15848
  ];
15605
- __decorate$1t([
15849
+ __decorate$1u([
15606
15850
  Input()
15607
15851
  ], LoginFormEcComponent.prototype, "darkMode", void 0);
15608
- __decorate$1t([
15852
+ __decorate$1u([
15609
15853
  Input()
15610
15854
  ], LoginFormEcComponent.prototype, "redirect", void 0);
15611
- __decorate$1t([
15855
+ __decorate$1u([
15612
15856
  Input()
15613
15857
  ], LoginFormEcComponent.prototype, "redirectTo", void 0);
15614
- __decorate$1t([
15858
+ __decorate$1u([
15615
15859
  Input()
15616
15860
  ], LoginFormEcComponent.prototype, "complete", void 0);
15617
- __decorate$1t([
15861
+ __decorate$1u([
15618
15862
  Input()
15619
15863
  ], LoginFormEcComponent.prototype, "title", void 0);
15620
- __decorate$1t([
15864
+ __decorate$1u([
15621
15865
  Output()
15622
15866
  ], LoginFormEcComponent.prototype, "ready", void 0);
15623
- LoginFormEcComponent = __decorate$1t([
15867
+ LoginFormEcComponent = __decorate$1u([
15624
15868
  Component({
15625
15869
  selector: 'app-login-form-ec',
15626
15870
  template: "<div class=\"d-flex flex-column position-relative\">\n <h1 class=\"right-line ff-ubuntu-light mb-2\"><span>{{'get-into' | translate}}</span></h1>\n <p class=\"ff-ubuntu-light font-sm pr-4\">\n {{'auth.login_prompt' | translate}}\n </p>\n <div class=\"w-md-50 w-100 text-center\">\n <form [formGroup]=\"loginForm\" (submit)=\"login($event)\">\n <input class=\"form-control mb-4 radius-0\" type=\"email\" formControlName=\"username\"\n [placeholder]=\"'mail-enter' | translate\">\n <input class=\"form-control mb-4 radius-0\" type=\"password\" formControlName=\"password\"\n [placeholder]=\"'password' | translate\">\n \n <div class=\"row d-flex flex-column\">\n <div class=\"col-12\">\n <button type=\"submit\"\n class=\"bg-gray border-0 px-4 py-2 color-white ff-ubuntu-light\">{{'get-into2' | translate}}</button>\n </div>\n <div class=\"col-12 d-flex justify-content-center align-items-center\">\n <a [routerLink]=\"'/auth/forgot-password'\" class=\"font-md ff-ubuntu-light\">\n {{'auth.forgot_password' | translate}}\n </a>\n </div>\n </div>\n </form>\n </div>\n <div *ngIf=\"!loading; else loadingView\"></div>\n</div>\n<ng-template #loadingView>\n <app-loading-section-ec></app-loading-section-ec>\n</ng-template>\n\n\n<select-channel-ec></select-channel-ec>",
@@ -15628,17 +15872,18 @@ LoginFormEcComponent = __decorate$1t([
15628
15872
  })
15629
15873
  ], LoginFormEcComponent);
15630
15874
 
15631
- var __decorate$1u = (this && this.__decorate) || function (decorators, target, key, desc) {
15875
+ var __decorate$1v = (this && this.__decorate) || function (decorators, target, key, desc) {
15632
15876
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
15633
15877
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
15634
15878
  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;
15635
15879
  return c > 3 && r && Object.defineProperty(target, key, r), r;
15636
15880
  };
15637
15881
  let ForgotPasswordEcComponent = class ForgotPasswordEcComponent extends ComponentHelper {
15638
- constructor(authService, toastr) {
15882
+ constructor(authService, toastr, seo) {
15639
15883
  super();
15640
15884
  this.authService = authService;
15641
15885
  this.toastr = toastr;
15886
+ this.seo = seo;
15642
15887
  this.email = "";
15643
15888
  this.loading = false;
15644
15889
  this.ready = false;
@@ -15666,14 +15911,23 @@ let ForgotPasswordEcComponent = class ForgotPasswordEcComponent extends Componen
15666
15911
  this.ecOnConstruct();
15667
15912
  }
15668
15913
  ngOnInit() {
15914
+ const siteName = this.seo.getSiteName();
15915
+ this.seo.setTitle(`Recuperar contraseña | ${siteName}`);
15916
+ this.seo.setDescription(`Recuperá el acceso a tu cuenta en ${siteName}.`);
15917
+ this.seo.setOgType('website');
15918
+ this.seo.setRobots('noindex, nofollow');
15919
+ if (typeof window !== 'undefined') {
15920
+ this.seo.setCanonical(window.location.href);
15921
+ }
15669
15922
  this.ecOnInit();
15670
15923
  }
15671
15924
  };
15672
15925
  ForgotPasswordEcComponent.ctorParameters = () => [
15673
15926
  { type: AuthService },
15674
- { type: ToastService }
15927
+ { type: ToastService },
15928
+ { type: SeoService }
15675
15929
  ];
15676
- ForgotPasswordEcComponent = __decorate$1u([
15930
+ ForgotPasswordEcComponent = __decorate$1v([
15677
15931
  Component({
15678
15932
  selector: 'app-forgot-password-ec',
15679
15933
  template: "<div class=\"container\" id=\"passReset\">\n\n <div *ngIf=\"!ready; else readyView\">\n <form (submit)=\"recoverPassword($event)\" class=\"row justify-content-center\">\n <div class=\"col-12 col-md-10 text-center\">\n <h3>{{ 'set-forgot-email' | translate }}</h3>\n <div class=\"element-container\">\n <input type=\"email\" [(ngModel)]=\"email\" class=\"form-control\"\n [ngModelOptions]=\"{standalone: true}\" />\n </div>\n <button class=\"btn btn-primary btn-passreset my-2\" type=\"submit\">{{ 'recover-password' | translate\n }}</button>\n\n <div *ngIf=\"loading\">\n <app-loading-inline-ec></app-loading-inline-ec>\n </div>\n </div>\n </form>\n </div>\n</div>\n\n<ng-template #readyView>\n <div class=\"row\">\n <div class=\"col-12 col-md-8\">\n <div class=\"element-container text-center\">\n <h3>{{ 'mail-sent' | translate }}</h3>\n </div>\n <div class=\"element-container text-center\">\n <h5 class=\"center-text\">{{ 'check-your-email' | translate }}</h5>\n </div>\n </div>\n </div>\n</ng-template>",
@@ -15681,17 +15935,18 @@ ForgotPasswordEcComponent = __decorate$1u([
15681
15935
  })
15682
15936
  ], ForgotPasswordEcComponent);
15683
15937
 
15684
- var __decorate$1v = (this && this.__decorate) || function (decorators, target, key, desc) {
15938
+ var __decorate$1w = (this && this.__decorate) || function (decorators, target, key, desc) {
15685
15939
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
15686
15940
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
15687
15941
  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;
15688
15942
  return c > 3 && r && Object.defineProperty(target, key, r), r;
15689
15943
  };
15690
15944
  let ConfirmAccountEcComponent = class ConfirmAccountEcComponent extends ComponentHelper {
15691
- constructor(authService, activedRoute) {
15945
+ constructor(authService, activedRoute, seo) {
15692
15946
  super();
15693
15947
  this.authService = authService;
15694
15948
  this.activedRoute = activedRoute;
15949
+ this.seo = seo;
15695
15950
  this.ok = false;
15696
15951
  this.error = false;
15697
15952
  this.onSuccess = () => {
@@ -15703,6 +15958,14 @@ let ConfirmAccountEcComponent = class ConfirmAccountEcComponent extends Componen
15703
15958
  this.ecOnConstruct();
15704
15959
  }
15705
15960
  ngOnInit() {
15961
+ const siteName = this.seo.getSiteName();
15962
+ this.seo.setTitle(`Verificar cuenta | ${siteName}`);
15963
+ this.seo.setDescription(`Confirmá tu cuenta de ${siteName}.`);
15964
+ this.seo.setOgType('website');
15965
+ this.seo.setRobots('noindex, nofollow');
15966
+ if (typeof window !== 'undefined') {
15967
+ this.seo.setCanonical(window.location.href);
15968
+ }
15706
15969
  const token = this.activedRoute.snapshot.queryParams.token;
15707
15970
  this.authService.confirmAccount(token).toPromise().then(this.onSuccess, this.onSuccess).catch(this.onSuccess);
15708
15971
  this.ecOnInit();
@@ -15710,9 +15973,10 @@ let ConfirmAccountEcComponent = class ConfirmAccountEcComponent extends Componen
15710
15973
  };
15711
15974
  ConfirmAccountEcComponent.ctorParameters = () => [
15712
15975
  { type: AuthService },
15713
- { type: ActivatedRoute }
15976
+ { type: ActivatedRoute },
15977
+ { type: SeoService }
15714
15978
  ];
15715
- ConfirmAccountEcComponent = __decorate$1v([
15979
+ ConfirmAccountEcComponent = __decorate$1w([
15716
15980
  Component({
15717
15981
  selector: 'app-confirm-account-ec',
15718
15982
  template: "<div class=\"mt-5 mb-5\">\n <div class=\"row\">\n <div class=\"col-md-12 col-12 text-center\">\n <h4 class=\"confirm-title text-white py-3 text-uppercase d-inline-block\">\n {{ ('thanks-for-register' | translate) | uppercase }}</h4>\n </div>\n </div>\n \n \n <div class=\"row\">\n <div class=\"col-md-12 col-12 text-center\">\n <h4>{{ 'thanks-for-register-detail' | translate }}</h4>\n <br>\n <a routerLink=\"/auth/login\">\n <button class=\"btn bg-golden color-white radius-0\" type=\"button\">{{ 'login' | translate |\n uppercase }}</button>\n </a>\n <br>\n <br>\n </div>\n </div>\n</div>",
@@ -15720,20 +15984,21 @@ ConfirmAccountEcComponent = __decorate$1v([
15720
15984
  })
15721
15985
  ], ConfirmAccountEcComponent);
15722
15986
 
15723
- var __decorate$1w = (this && this.__decorate) || function (decorators, target, key, desc) {
15987
+ var __decorate$1x = (this && this.__decorate) || function (decorators, target, key, desc) {
15724
15988
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
15725
15989
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
15726
15990
  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;
15727
15991
  return c > 3 && r && Object.defineProperty(target, key, r), r;
15728
15992
  };
15729
15993
  let PasswordResetEcComponent = class PasswordResetEcComponent extends ComponentHelper {
15730
- constructor(authService, toastr, activedRoute, router, formBuilder) {
15994
+ constructor(authService, toastr, activedRoute, router, formBuilder, seo) {
15731
15995
  super();
15732
15996
  this.authService = authService;
15733
15997
  this.toastr = toastr;
15734
15998
  this.activedRoute = activedRoute;
15735
15999
  this.router = router;
15736
16000
  this.formBuilder = formBuilder;
16001
+ this.seo = seo;
15737
16002
  this.email = "";
15738
16003
  this.loading = false;
15739
16004
  this.ready = false;
@@ -15794,6 +16059,14 @@ let PasswordResetEcComponent = class PasswordResetEcComponent extends ComponentH
15794
16059
  ngOnInit() {
15795
16060
  this.token = this.activedRoute.snapshot.queryParams.token;
15796
16061
  !this.token && this.router.navigateByUrl('/');
16062
+ const siteName = this.seo.getSiteName();
16063
+ this.seo.setTitle(`Restablecer contraseña | ${siteName}`);
16064
+ this.seo.setDescription(`Definí una nueva contraseña para tu cuenta de ${siteName}.`);
16065
+ this.seo.setOgType('website');
16066
+ this.seo.setRobots('noindex, nofollow');
16067
+ if (typeof window !== 'undefined') {
16068
+ this.seo.setCanonical(window.location.href);
16069
+ }
15797
16070
  this.formGroup = this.formBuilder.group({
15798
16071
  first: ['', Validators.required],
15799
16072
  second: ['', Validators.required]
@@ -15806,9 +16079,10 @@ PasswordResetEcComponent.ctorParameters = () => [
15806
16079
  { type: ToastService },
15807
16080
  { type: ActivatedRoute },
15808
16081
  { type: Router },
15809
- { type: FormBuilder }
16082
+ { type: FormBuilder },
16083
+ { type: SeoService }
15810
16084
  ];
15811
- PasswordResetEcComponent = __decorate$1w([
16085
+ PasswordResetEcComponent = __decorate$1x([
15812
16086
  Component({
15813
16087
  selector: 'app-password-reset-ec',
15814
16088
  template: "<div class=\"container\">\n <div class=\"row justify-content-center mt-5\">\n <div class=\"col-12 col-md-6 col-lg-4\">\n <div *ngIf=\"!ready; else readyView\">\n <form [formGroup]=\"formGroup\" (submit)=\"sendNewPassword($event)\">\n <div class=\"mb-4 text-center\">\n <h3>{{ 'set-new-password' | translate }}</h3>\n </div>\n <div class=\"mb-3\">\n <label class=\"form-label\">{{ 'set-password' | translate }}</label>\n <div class=\"input-group\">\n <input type=\"password\" formControlName=\"first\" class=\"form-control\" id=\"contrase\u00F1a1\" />\n <button class=\"btn btn-outline-secondary btn-password\" type=\"button\"\n (click)=\"showPassword()\">\n <i id=\"show1\" class=\"fas fa-eye i-show-password\"></i>\n <i id=\"hide1\" class=\"fas fa-eye-slash d-none i-show-password\"></i>\n </button>\n </div>\n </div>\n <div class=\"mb-3\">\n <label class=\"form-label\">{{ 'repeat-password' | translate }}</label>\n <div class=\"input-group\">\n <input type=\"password\" formControlName=\"second\" class=\"form-control\" id=\"contrase\u00F1a2\" />\n <button class=\"btn btn-outline-secondary btn-password\" type=\"button\"\n (click)=\"showPassword2()\">\n <i id=\"show2\" class=\"fas fa-eye i-show-password\"></i>\n <i id=\"hide2\" class=\"fas fa-eye-slash d-none i-show-password\"></i>\n </button>\n </div>\n </div>\n <div class=\"mt-4 text-center\">\n <button type=\"submit\" class=\"comprar w-100\">{{ 'update' | translate }}</button>\n </div>\n <div *ngIf=\"loading\" class=\"mt-3\">\n <app-loading-inline-ec></app-loading-inline-ec>\n </div>\n </form>\n </div>\n </div>\n </div>\n</div>\n\n<ng-template #readyView>\n <div class=\"row justify-content-center mt-5 mb-5\">\n <div class=\"text-center\">\n <div class=\"mb-4\">\n <h3>{{ 'updated-password' | translate }}</h3>\n </div>\n <div class=\"mb-4\">\n <h5>{{ 'updated-password-detail' | translate }}</h5>\n </div>\n <button class=\"comprar\" (click)=\"sendToLogin()\">{{ 'login' | translate }}</button>\n </div>\n </div>\n</ng-template>",
@@ -15816,7 +16090,7 @@ PasswordResetEcComponent = __decorate$1w([
15816
16090
  })
15817
16091
  ], PasswordResetEcComponent);
15818
16092
 
15819
- var __decorate$1x = (this && this.__decorate) || function (decorators, target, key, desc) {
16093
+ var __decorate$1y = (this && this.__decorate) || function (decorators, target, key, desc) {
15820
16094
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
15821
16095
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
15822
16096
  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;
@@ -15956,19 +16230,19 @@ RegisterWholesalerFormEcComponent.ctorParameters = () => [
15956
16230
  { type: ParametersService },
15957
16231
  { type: FormBuilder }
15958
16232
  ];
15959
- __decorate$1x([
16233
+ __decorate$1y([
15960
16234
  Input()
15961
16235
  ], RegisterWholesalerFormEcComponent.prototype, "darkMode", void 0);
15962
- __decorate$1x([
16236
+ __decorate$1y([
15963
16237
  Input()
15964
16238
  ], RegisterWholesalerFormEcComponent.prototype, "redirect", void 0);
15965
- __decorate$1x([
16239
+ __decorate$1y([
15966
16240
  Input()
15967
16241
  ], RegisterWholesalerFormEcComponent.prototype, "complete", void 0);
15968
- __decorate$1x([
16242
+ __decorate$1y([
15969
16243
  Output()
15970
16244
  ], RegisterWholesalerFormEcComponent.prototype, "ready", void 0);
15971
- RegisterWholesalerFormEcComponent = __decorate$1x([
16245
+ RegisterWholesalerFormEcComponent = __decorate$1y([
15972
16246
  Component({
15973
16247
  selector: 'app-register-wholesaler-form-ec',
15974
16248
  template: "\n<div class=\"container\">\n <div class=\"row\">\n <div class=\"col-12\">\n <div class=\"\">\n <div class=\"pt-5 pb-3 border-bottom\">\n <h3 class=\"my-auto mx-2 text-left w-fit bold text-beige1 white-space-md-nowrap\">CREAR CUENTA MAYORISTA</h3>\n </div>\n <div class=\" py-3\">\n <p>Si todavia no tienes una cuenta de grandes consumidores en Vi\u00F1als registrate ingresando estos\n datos:</p>\n </div>\n <form [formGroup]=\"registerForm\" (submit)=\"register($event)\" class=\"position-relative\">\n <div class=\"row w-100 mx-auto d-flex justify-content-center px-0 py-3\">\n \n <div class=\"col-12 col-md-6 px-0 pr-md-1\">\n <div class=\"form-group\">\n <label for=\"\">Nombre</label>\n <input type=\"text\" id=\"\" placeholder=\"Nombre\" required name=\"firstName\"\n formControlName=\"firstName\"\n [class]=\"registerForm.controls.firstName.touched ? (registerForm.controls.firstName.valid && registerForm.controls.firstName.touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\n <span class=\"invalid-feedback\">El nombre es un campo obligatorio.</span>\n </div>\n </div>\n <div class=\"col-12 col-md-6 px-0 pl-md-1\">\n <div class=\"form-group\">\n <label for=\"\">Apellidos</label>\n <input type=\"text\" id=\"\" placeholder=\"Apellido\" required\n name=\"lastName\" formControlName=\"lastName\"\n [class]=\"registerForm.controls.lastName.touched ? (registerForm.controls.lastName.valid && registerForm.controls.lastName.touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\n <span class=\"invalid-feedback\">El apellido es un campo obligatorio.</span>\n </div>\n </div>\n \n <div class=\"col-12 col-md-6 px-0 pr-md-1\">\n <div class=\"form-group\">\n <label for=\"\">Email</label>\n <input type=\"email\" id=\"\" placeholder=\"Email\" email required\n name=\"email\" formControlName=\"email\"\n [class]=\"registerForm.controls.email.touched ? (registerForm.controls.email.valid && registerForm.controls.email.touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\n <span class=\"invalid-feedback\">El email no posee un formato correcto.</span>\n </div>\n </div>\n <div class=\"col-12 col-md-6 px-0 pl-md-1\">\n <div class=\"form-group\">\n <label for=\"\">Contrase\u00F1a</label>\n <input type=\"password\" id=\"\" placeholder=\"Contrase\u00F1a\" required\n name=\"plainPassword\" formControlName=\"plainPassword\"\n [class]=\"registerForm.controls.plainPassword.touched ? (registerForm.controls.plainPassword.valid && registerForm.controls.plainPassword.touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\n <span class=\"invalid-feedback\">La contrase\u00F1a es un campo obligatorio.</span>\n </div>\n </div>\n \n <div class=\"col-12 col-md-6 px-0 pl-md-1\" *ngIf=\"(countries$ | async) as countries\">\n <div class=\"form-group\">\n <label for=\"\">{{'country'|translate}}</label>\n <select name=\"countryCode\" formControlName=\"countryCode\" required\n (change)=\"onCountrySelected($event.target.value)\"\n [class]=\"registerForm.controls.countryCode.touched ? (registerForm.controls.countryCode.valid && registerForm.controls.countryCode.touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\n <option value=\"null\" id=\"selectOpPais\">Seleccione un pais</option>\n <option *ngFor=\"let country of countries\" [value]=\"country.code\"> {{ country.name }}</option>\n </select>\n <span class=\"invalid-feedback\">{{'country-help'|translate}}</span>\n </div>\n </div>\n \n <div class=\"col-12 col-md-6 px-0 pl-md-1\" *ngIf=\"(provinces$ | async) as provinces\">\n <div class=\"form-group\">\n <label for=\"\">{{'state'|translate}}</label>\n <select name=\"provinceCode\" formControlName=\"provinceCode\" required\n (change)=\"onProvincesSelected($event.target.value)\"\n [class]=\"registerForm.controls.countryCode.touched ? (registerForm.controls.countryCode.valid && registerForm.controls.countryCode.touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\n <option value=\"null\" id=\"selectOpProvincia\">Seleccione una provincia</option>\n <option *ngFor=\"let province of provinces\" [value]=\"province.code\">{{ province.name }}</option>\n </select>\n <span class=\"invalid-feedback\">{{'state-help'|translate}}</span>\n </div>\n </div>\n \n <div class=\"col-12 col-md-6 px-0 pl-md-1\">\n <div class=\"form-group\">\n <label for=\"\">{{'address'|translate}}</label>\n <input placeholder=\"{{'address'|translate}}\" required type=\"text\" name=\"street\"\n formControlName=\"street\"\n [class]=\"registerForm.controls.street.touched ? (registerForm.controls.street.valid && registerForm.controls.street.touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\n <span class=\"invalid-feedback\">{{'address-help1'|translate}}</span>\n </div>\n </div>\n \n <div class=\"col-12 col-md-6 px-0 pl-md-1\">\n <div class=\"form-group\">\n <label for=\"\">{{'town-city'|translate}}</label>\n <input placeholder=\"{{'town-city'|translate}}\" required type=\"text\" name=\"city\"\n formControlName=\"city\"\n [class]=\"registerForm.controls.city.touched ? (registerForm.controls.city.valid && registerForm.controls.city.touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\n <span class=\"invalid-feedback\">{{'town-city-help'|translate}}</span>\n </div>\n </div>\n \n \n <div class=\"col-12 col-md-6 px-0 pl-md-1\">\n <div class=\"form-group\">\n <label for=\"\">{{'postal-code'|translate}}</label>\n <input placeholder=\"{{'postal-code'|translate}}\" required type=\"text\" name=\"postcode\"\n formControlName=\"postcode\"\n [class]=\"registerForm.controls.postcode.touched ? (registerForm.controls.postcode.valid && registerForm.controls.postcode.touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\n <span class=\"invalid-feedback\">{{'postal-code-help'|translate}}</span>\n </div>\n </div>\n \n \n \n <div class=\"col-12 col-md-6 px-0 pr-md-1\">\n <div class=\"form-group\">\n <label for=\"\">Nombre compa\u00F1\u00EDa</label>\n <input type=\"text\" id=\"\" placeholder=\"Nombre compa\u00F1\u00EDa\" required\n name=\"companyName\" formControlName=\"companyName\"\n [class]=\"registerForm.controls.companyName.touched ? (registerForm.controls.companyName.valid && registerForm.controls.companyName.touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\n <span class=\"invalid-feedback\">El nombre compa\u00F1\u00EDa es un campo obligatorio.</span>\n </div>\n </div>\n \n <div class=\"col-12 col-md-6 px-0 pr-md-1\">\n <div class=\"form-group\">\n <label for=\"\">{{'phone'|translate}}</label>\n <input type=\"text\" id=\"\" placeholder=\"{{'phone'|translate}}\" required\n name=\"phoneNumber\" formControlName=\"phoneNumber\"\n [class]=\"registerForm.controls.phoneNumber.touched ? (registerForm.controls.phoneNumber.valid && registerForm.controls.phoneNumber.touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\n <span class=\"invalid-feedback\">El numero de telefono es un campo obligatorio.</span>\n </div>\n </div>\n \n <div class=\"col-12 col-md-6 px-0 pr-md-1\">\n <div class=\"form-group\">\n <label for=\"\">Sexo</label>\n <select (change)=\"onGenderSelected($event.target.value)\" required name=\"gender\"\n formControlName=\"gender\"\n [class]=\"registerForm.controls.gender.touched ? (registerForm.controls.gender.valid && registerForm.controls.gender.touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\n <option value=\"null\" id=\"selectOpSexo\">Sexo</option>\n <option value=\"u\">Desconocido</option>\n <option value=\"s\">Femenino</option>\n <option value=\"m\">Masculino</option>\n </select>\n <span class=\"invalid-feedback\">El sexo es un campo obligatorio.</span>\n </div>\n </div>\n \n <div class=\"col-12 col-md-6 px-0 pr-md-1\">\n <div class=\"form-group\">\n <label for=\"\">Fecha creacion</label>\n <input type=\"date\" id=\"\" placeholder=\"Fecha creacion\" required\n name=\"birthday\" formControlName=\"birthday\"\n [class]=\"registerForm.controls.birthday.touched ? (registerForm.controls.birthday.valid && registerForm.controls.birthday.touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\n <span class=\"invalid-feedback\">La fecha de creacion es un campo obligatorio.</span>\n </div>\n </div>\n \n <div class=\"col-12 col-md-6 px-0 pr-md-1\">\n <div class=\"form-group\">\n <label for=\"\">Identificacion</label>\n <input type=\"text\" id=\"\" placeholder=\"Identificacion\" required\n name=\"taxIdentification\" formControlName=\"taxIdentification\"\n [class]=\"registerForm.controls.taxIdentification.touched ? (registerForm.controls.taxIdentification.valid && registerForm.controls.taxIdentification.touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\n <span class=\"invalid-feedback\">La identificacion de la compa\u00F1\u00EDa es un campo obligatorio.</span>\n </div>\n </div>\n \n \n \n <div class=\"col-12 col-md-6 px-0 py-4 pl-md-1 order-1 order-md-2\">\n <!-- <div class=\"form-check py-2\">\n <input class=\"form-check-input\" type=\"checkbox\" value=\"\" id=\"defaultCheck1\" #terms=\"ngModel\"\n name=\"terms\" [(ngModel)]=\"registroUsuario.terms\" type=\"checkbox\" required\n [class]=\"terms.touched ? (terms.valid && terms.touched && registroUsuario.terms != false) ? 'form-check-input is-valid' : 'form-check-input is-invalid' : 'form-check-input '\" />\n <label class=\"form-check-label\" for=\"defaultCheck1\">\n He leido y acepto las <a routerLink=\"/section/politicas-privacidad\" class=\"text\">pol\u00EDticas de\n privacidad</a>\n y los <a routerLink=\"/section/terminos-y-condiciones\" class=\"text\">t\u00E9rminos y condiciones</a>\n </label>\n <span class=\"invalid-feedback\">Debe aceptar los t\u00E9rminos y condiciones para continuar.</span>\n </div> -->\n <div class=\"form-check py-2\">\n <input class=\"form-check-input\" type=\"checkbox\" value=\"\" id=\"defaultCheck2\"\n name=\"subscribedToNewsletter\" formControlName=\"subscribedToNewsletter\" type=\"checkbox\">\n <label class=\"form-check-label\" for=\"defaultCheck2\">\n Suscripci\u00F3n al newsletter\n </label>\n </div>\n </div>\n \n <div class=\"col-12 col-md-6 px-0 py-4 pr-md-1 d-flex justify-content-md-start order-2 order-md-1\">\n <button *ngIf=\"!register_loading\" type=\"submit\" role=\"button\"\n class=\"btn btn-dark bg-beige1 text-blanco bold rounded-0 px-5 py-2 w-100 w-md-auto h-fit\">REGISTRATE</button>\n </div>\n \n </div>\n <app-loading-section-ec *ngIf=\"register_loading\"></app-loading-section-ec>\n </form>\n </div>\n </div>\n </div>\n</div>",
@@ -15976,7 +16250,7 @@ RegisterWholesalerFormEcComponent = __decorate$1x([
15976
16250
  })
15977
16251
  ], RegisterWholesalerFormEcComponent);
15978
16252
 
15979
- var __decorate$1y = (this && this.__decorate) || function (decorators, target, key, desc) {
16253
+ var __decorate$1z = (this && this.__decorate) || function (decorators, target, key, desc) {
15980
16254
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
15981
16255
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
15982
16256
  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;
@@ -16108,10 +16382,10 @@ ShareBlockEcComponent.ctorParameters = () => [
16108
16382
  { type: Meta },
16109
16383
  { type: Title }
16110
16384
  ];
16111
- __decorate$1y([
16385
+ __decorate$1z([
16112
16386
  Input()
16113
16387
  ], ShareBlockEcComponent.prototype, "product", void 0);
16114
- ShareBlockEcComponent = __decorate$1y([
16388
+ ShareBlockEcComponent = __decorate$1z([
16115
16389
  Component({
16116
16390
  selector: 'app-share-block-ec',
16117
16391
  template: "<div class=\"w-100 d-flex justify-content-around\">\n <ng-container *ngIf=\"params && params.length > 0; else default\">\n <a *ngIf=\"hasParams(params, 'facebook')\" target=\"_blank\" [href]=\"toShareFacebook()\"\n class=\"social-sharing__link\" title=\"Compartir en Facebook\">\n <svg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" class=\"icon icon-facebook\" viewBox=\"0 0 32 32\">\n <path fill=\"#444\"\n d=\"M18.56 31.36V17.28h4.48l.64-5.12h-5.12v-3.2c0-1.28.64-2.56 2.56-2.56h2.56V1.28H19.2c-3.84 0-7.04 2.56-7.04 7.04v3.84H7.68v5.12h4.48v14.08h6.4z\">\n </path>\n </svg>\n <span class=\"social-sharing__title\" aria-hidden=\"true\">Compartir</span>\n </a>\n <a *ngIf=\"hasParams(params, 'twitter')\" target=\"_blank\" \n [href]=\"toShareTwitter()\"\n class=\"social-sharing__link\" title=\"Tuitear en Twitter\">\n <svg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" class=\"icon icon-twitter\" viewBox=\"0 0 32 32\">\n <path fill=\"#444\"\n d=\"M31.281 6.733q-1.304 1.924-3.13 3.26 0 .13.033.408t.033.408q0 2.543-.75 5.086t-2.282 4.858-3.635 4.108-5.053 2.869-6.341 1.076q-5.282 0-9.65-2.836.913.065 1.5.065 4.401 0 7.857-2.673-2.054-.033-3.668-1.255t-2.266-3.146q.554.13 1.206.13.88 0 1.663-.261-2.184-.456-3.619-2.184t-1.435-3.977v-.065q1.239.652 2.836.717-1.271-.848-2.021-2.233t-.75-2.983q0-1.63.815-3.195 2.38 2.967 5.754 4.678t7.319 1.907q-.228-.815-.228-1.434 0-2.608 1.858-4.45t4.532-1.842q1.304 0 2.51.522t2.054 1.467q2.152-.424 4.01-1.532-.685 2.217-2.771 3.488 1.989-.261 3.619-.978z\">\n </path>\n </svg>\n <span class=\"social-sharing__title\" aria-hidden=\"true\">Tuitear</span>\n </a>\n <a *ngIf=\"hasParams(params, 'pinterest')\" target=\"_blank\"\n [href]=\"toSharePinterest()\"\n class=\"social-sharing__link\" title=\"Pinear en Pinterest\">\n <svg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" class=\"icon icon-pinterest\" viewBox=\"0 0 32 32\">\n <path fill=\"#444\"\n d=\"M27.52 9.6c-.64-5.76-6.4-8.32-12.8-7.68-4.48.64-9.6 4.48-9.6 10.24 0 3.2.64 5.76 3.84 6.4 1.28-2.56-.64-3.2-.64-4.48-1.28-7.04 8.32-12.16 13.44-7.04 3.2 3.84 1.28 14.08-4.48 13.44-5.12-1.28 2.56-9.6-1.92-11.52-3.2-1.28-5.12 4.48-3.84 7.04-1.28 4.48-3.2 8.96-1.92 15.36 2.56-1.92 3.84-5.76 4.48-9.6 1.28.64 1.92 1.92 3.84 1.92 6.4-.64 10.24-7.68 9.6-14.08z\">\n </path>\n </svg>\n <span class=\"social-sharing__title\" aria-hidden=\"true\">Hacer pin</span>\n </a>\n <a *ngIf=\"hasParams(params, 'whatsapp') as wsp\" target=\"_blank\" [href]=\"toShareWhatsapp(wsp)\" class=\"social-sharing__link\" title=\"Whatsapp\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" fill=\"currentColor\" class=\"bi bi-whatsapp\"\n viewBox=\"0 0 16 16\">\n <path\n d=\"M13.601 2.326A7.854 7.854 0 0 0 7.994 0C3.627 0 .068 3.558.064 7.926c0 1.399.366 2.76 1.057 3.965L0 16l4.204-1.102a7.933 7.933 0 0 0 3.79.965h.004c4.368 0 7.926-3.558 7.93-7.93A7.898 7.898 0 0 0 13.6 2.326zM7.994 14.521a6.573 6.573 0 0 1-3.356-.92l-.24-.144-2.494.654.666-2.433-.156-.251a6.56 6.56 0 0 1-1.007-3.505c0-3.626 2.957-6.584 6.591-6.584a6.56 6.56 0 0 1 4.66 1.931 6.557 6.557 0 0 1 1.928 4.66c-.004 3.639-2.961 6.592-6.592 6.592zm3.615-4.934c-.197-.099-1.17-.578-1.353-.646-.182-.065-.315-.099-.445.099-.133.197-.513.646-.627.775-.114.133-.232.148-.43.05-.197-.1-.836-.308-1.592-.985-.59-.525-.985-1.175-1.103-1.372-.114-.198-.011-.304.088-.403.087-.088.197-.232.296-.346.1-.114.133-.198.198-.33.065-.134.034-.248-.015-.347-.05-.099-.445-1.076-.612-1.47-.16-.389-.323-.335-.445-.34-.114-.007-.247-.007-.38-.007a.729.729 0 0 0-.529.247c-.182.198-.691.677-.691 1.654 0 .977.71 1.916.81 2.049.098.133 1.394 2.132 3.383 2.992.47.205.84.326 1.129.418.475.152.904.129 1.246.08.38-.058 1.171-.48 1.338-.943.164-.464.164-.86.114-.943-.049-.084-.182-.133-.38-.232z\" />\n </svg>\n <span class=\"social-sharing__title\" aria-hidden=\"true\">Whatsapp</span>\n </a>\n <a *ngIf=\"hasParams(params, 'email') as email\" target=\"_blank\" [href]=\"toShareEmail(email)\" class=\"social-sharing__link\"\n title=\"Email\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" fill=\"currentColor\" class=\"bi bi-envelope-fill\"\n viewBox=\"0 0 16 16\">\n <path\n d=\"M.05 3.555A2 2 0 0 1 2 2h12a2 2 0 0 1 1.95 1.555L8 8.414.05 3.555ZM0 4.697v7.104l5.803-3.558L0 4.697ZM6.761 8.83l-6.57 4.027A2 2 0 0 0 2 14h12a2 2 0 0 0 1.808-1.144l-6.57-4.027L8 9.586l-1.239-.757Zm3.436-.586L16 11.801V4.697l-5.803 3.546Z\" />\n </svg>\n <span class=\"social-sharing__title\" aria-hidden=\"true\">Email</span>\n </a>\n </ng-container>\n</div>\n\n<!-- VISTA DEFAULT CON LINKS QUE NO REQUIEREN PARAMETROS-->\n<ng-template #default>\n <a target=\"_blank\" [href]=\"toShareFacebook()\" class=\"social-sharing__link\" title=\"Compartir en Facebook\">\n <svg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" class=\"icon icon-facebook\" viewBox=\"0 0 32 32\">\n <path fill=\"#444\"\n d=\"M18.56 31.36V17.28h4.48l.64-5.12h-5.12v-3.2c0-1.28.64-2.56 2.56-2.56h2.56V1.28H19.2c-3.84 0-7.04 2.56-7.04 7.04v3.84H7.68v5.12h4.48v14.08h6.4z\">\n </path>\n </svg>\n <span class=\"social-sharing__title\" aria-hidden=\"true\">Compartir</span>\n </a>\n <a target=\"_blank\" [href]=\"toShareTwitter()\" class=\"social-sharing__link\" title=\"Tuitear en Twitter\">\n <svg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" class=\"icon icon-twitter\" viewBox=\"0 0 32 32\">\n <path fill=\"#444\"\n d=\"M31.281 6.733q-1.304 1.924-3.13 3.26 0 .13.033.408t.033.408q0 2.543-.75 5.086t-2.282 4.858-3.635 4.108-5.053 2.869-6.341 1.076q-5.282 0-9.65-2.836.913.065 1.5.065 4.401 0 7.857-2.673-2.054-.033-3.668-1.255t-2.266-3.146q.554.13 1.206.13.88 0 1.663-.261-2.184-.456-3.619-2.184t-1.435-3.977v-.065q1.239.652 2.836.717-1.271-.848-2.021-2.233t-.75-2.983q0-1.63.815-3.195 2.38 2.967 5.754 4.678t7.319 1.907q-.228-.815-.228-1.434 0-2.608 1.858-4.45t4.532-1.842q1.304 0 2.51.522t2.054 1.467q2.152-.424 4.01-1.532-.685 2.217-2.771 3.488 1.989-.261 3.619-.978z\">\n </path>\n </svg>\n <span class=\"social-sharing__title\" aria-hidden=\"true\">Tuitear</span>\n </a>\n <a target=\"_blank\" [href]=\"toSharePinterest()\" class=\"social-sharing__link\" title=\"Pinear en Pinterest\">\n <svg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" class=\"icon icon-pinterest\" viewBox=\"0 0 32 32\">\n <path fill=\"#444\"\n d=\"M27.52 9.6c-.64-5.76-6.4-8.32-12.8-7.68-4.48.64-9.6 4.48-9.6 10.24 0 3.2.64 5.76 3.84 6.4 1.28-2.56-.64-3.2-.64-4.48-1.28-7.04 8.32-12.16 13.44-7.04 3.2 3.84 1.28 14.08-4.48 13.44-5.12-1.28 2.56-9.6-1.92-11.52-3.2-1.28-5.12 4.48-3.84 7.04-1.28 4.48-3.2 8.96-1.92 15.36 2.56-1.92 3.84-5.76 4.48-9.6 1.28.64 1.92 1.92 3.84 1.92 6.4-.64 10.24-7.68 9.6-14.08z\">\n </path>\n </svg>\n <span class=\"social-sharing__title\" aria-hidden=\"true\">Hacer pin</span>\n </a>\n</ng-template>\n<!-- FIN -->",
@@ -16119,7 +16393,7 @@ ShareBlockEcComponent = __decorate$1y([
16119
16393
  })
16120
16394
  ], ShareBlockEcComponent);
16121
16395
 
16122
- var __decorate$1z = (this && this.__decorate) || function (decorators, target, key, desc) {
16396
+ var __decorate$1A = (this && this.__decorate) || function (decorators, target, key, desc) {
16123
16397
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
16124
16398
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
16125
16399
  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;
@@ -16234,10 +16508,10 @@ DetailCheckoutBlockEcComponent.ctorParameters = () => [
16234
16508
  { type: ChannelConfigService },
16235
16509
  { type: ShippingPriceDisplayService }
16236
16510
  ];
16237
- __decorate$1z([
16511
+ __decorate$1A([
16238
16512
  Input()
16239
16513
  ], DetailCheckoutBlockEcComponent.prototype, "asociatedData", void 0);
16240
- DetailCheckoutBlockEcComponent = __decorate$1z([
16514
+ DetailCheckoutBlockEcComponent = __decorate$1A([
16241
16515
  Component({
16242
16516
  selector: 'app-detail-checkout-block-ec',
16243
16517
  template: "<div id=\"appDetailCheckoutBlockEc\" class=\"d-flex flex-row w-100 justify-content-center flex-wrap\"\n *ngIf=\"data && (creditAccountShowPrices !== null ? creditAccountShowPrices : true)\">\n <ng-container *ngFor=\"let item of data; let i = index\">\n <ng-container *ngIf=\"shouldShowItem(item.type) && !shouldHideSubtotal(item)\">\n <div class=\"d-flex flex-column justify-content-center mx-sm-3 mx-2 text-center mb-4 resumen\">\n <i ngClass=\"mb-2 colorIconoCheckout\" [class]=\"getIcon(item)\"></i>\n <strong class=\"text-center w-100 font-brandon font-md mb-1\">\n {{ getTypeLabel(item.type) | translate }}\n </strong>\n <ng-container *ngIf=\"getAmountView(item) as priceView\">\n <span class=\"text-center w-100 font-brandon font-md text-gray resumen-price\"\n [class.resumen-price--discounted]=\"priceView.showOriginalPrice\"\n [class.resumen-price--free]=\"priceView.isFree\">\n <del *ngIf=\"priceView.showOriginalPrice\">\n {{ priceView.originalPrice | ecCurrencySymbol:'alwaysShowDecimals' }}\n </del>\n <strong>\n <ng-container *ngIf=\"priceView.isFree; else resumenPriceValue\">\n {{ 'free' | translate }}\n </ng-container>\n <ng-template #resumenPriceValue>\n {{ priceView.finalPrice | ecCurrencySymbol:'alwaysShowDecimals' }}\n </ng-template>\n </strong>\n </span>\n </ng-container>\n </div>\n </ng-container>\n\n\n <!-- Mostrar total de descuentos -->\n <div class=\"d-flex flex-column justify-content-center mx-sm-3 mx-2 text-center mb-4 resumen\"\n *ngIf=\"!hideDiscounts && this.discountTotal != 0 && i === 1\">\n <i ngClass=\"mb-2 colorIconoCheckout\" [class]=\"getIcon2('discount')\"></i>\n <strong class=\"text-center w-100 font-brandon font-md mb-1\">Descuento</strong>\n <span class=\"text-center w-100 font-brandon font-md text-gray\">{{ (this.discountTotal | ecCurrencySymbol:'alwaysShowDecimals')\n }}</span>\n </div>\n\n <!-- Mostrar total de cupones -->\n <div class=\"d-flex flex-column justify-content-center mx-sm-3 mx-2 text-center mb-4 resumen\"\n *ngIf=\"!hideDiscounts && this.couponTotal != 0 && i === 1\">\n <i ngClass=\"mb-2 colorIconoCheckout\" [class]=\"getIcon2('coupon')\"></i>\n <strong class=\"text-center w-100 font-brandon font-md mb-1\">Cupon</strong>\n <span class=\"text-center w-100 font-brandon font-md text-gray\">{{(this.couponTotal| ecCurrencySymbol:'alwaysShowDecimals')\n }}</span>\n </div>\n <div class=\"d-flex flex-column justify-content-center mx-sm-3 mx-2 text-center mb-4 resumen\"\n *ngIf=\"!hideTaxes && this.clientTaxes != 0 && i === 1\">\n <i ngClass=\"mb-2 colorIconoCheckout\" [class]=\"getIcon2('clienTaxe')\"></i>\n <strong class=\"text-center w-100 font-brandon font-md mb-1\">{{ 'clientTaxes' | translate }}</strong>\n <span class=\"text-center w-100 font-brandon font-md text-gray\">{{(this.clientTaxes | ecCurrencySymbol:'alwaysShowDecimals')\n }}</span>\n </div>\n </ng-container>\n</div>\n",
@@ -16245,7 +16519,7 @@ DetailCheckoutBlockEcComponent = __decorate$1z([
16245
16519
  })
16246
16520
  ], DetailCheckoutBlockEcComponent);
16247
16521
 
16248
- var __decorate$1A = (this && this.__decorate) || function (decorators, target, key, desc) {
16522
+ var __decorate$1B = (this && this.__decorate) || function (decorators, target, key, desc) {
16249
16523
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
16250
16524
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
16251
16525
  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;
@@ -16302,13 +16576,13 @@ CheckoutErrorComponent.ctorParameters = () => [
16302
16576
  { type: BsModalService },
16303
16577
  { type: Router }
16304
16578
  ];
16305
- __decorate$1A([
16579
+ __decorate$1B([
16306
16580
  ViewChild('template')
16307
16581
  ], CheckoutErrorComponent.prototype, "template", void 0);
16308
- __decorate$1A([
16582
+ __decorate$1B([
16309
16583
  Input()
16310
16584
  ], CheckoutErrorComponent.prototype, "urlRedireccion", void 0);
16311
- CheckoutErrorComponent = __decorate$1A([
16585
+ CheckoutErrorComponent = __decorate$1B([
16312
16586
  Component({
16313
16587
  selector: 'ec-checkout-error',
16314
16588
  template: "<ng-template #template>\n <div class=\"modal-content\">\n <div class=\"modal-header\">\n <h4 class=\"modal-title pull-left\">{{ 'error-during-checkout' | translate }}</h4>\n <button type=\"button\" class=\"close pull-right\" aria-label=\"Close\" (click)=\"bsModalRef.hide()\">\n <span aria-hidden=\"true\">&times;</span>\n </button>\n </div>\n <div class=\"modal-body p-5\">\n {{ error.message }}\n </div>\n <div class=\"modal-footer\">\n <button type=\"button\" class=\"btn btn-default\" (click)=\"bsModalRef.hide()\">Continuar</button>\n </div>\n </div>\n</ng-template>\n\n",
@@ -16317,7 +16591,7 @@ CheckoutErrorComponent = __decorate$1A([
16317
16591
  })
16318
16592
  ], CheckoutErrorComponent);
16319
16593
 
16320
- var __decorate$1B = (this && this.__decorate) || function (decorators, target, key, desc) {
16594
+ var __decorate$1C = (this && this.__decorate) || function (decorators, target, key, desc) {
16321
16595
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
16322
16596
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
16323
16597
  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;
@@ -16564,22 +16838,22 @@ MpRedirectEcComponent.ctorParameters = () => [
16564
16838
  { type: DomSanitizer },
16565
16839
  { type: NgZone }
16566
16840
  ];
16567
- __decorate$1B([
16841
+ __decorate$1C([
16568
16842
  Input()
16569
16843
  ], MpRedirectEcComponent.prototype, "method", void 0);
16570
- __decorate$1B([
16844
+ __decorate$1C([
16571
16845
  Input()
16572
16846
  ], MpRedirectEcComponent.prototype, "total_amount", void 0);
16573
- __decorate$1B([
16847
+ __decorate$1C([
16574
16848
  Input()
16575
16849
  ], MpRedirectEcComponent.prototype, "paymentServiceInst", void 0);
16576
- __decorate$1B([
16850
+ __decorate$1C([
16577
16851
  Input()
16578
16852
  ], MpRedirectEcComponent.prototype, "allData", void 0);
16579
- __decorate$1B([
16853
+ __decorate$1C([
16580
16854
  Output()
16581
16855
  ], MpRedirectEcComponent.prototype, "ready", void 0);
16582
- MpRedirectEcComponent = __decorate$1B([
16856
+ MpRedirectEcComponent = __decorate$1C([
16583
16857
  Component({
16584
16858
  selector: 'app-mp-redirect-ec',
16585
16859
  template: "<div class=\"text-center\" *ngIf=\"url; else loadingUrl\">\n\n <ng-container *ngIf=\"isIdle\">\n <button (click)=\"iniciar()\" class=\"btn btn-outline-secondary rounded-0 comprar mt-3\">\n Pagar\n </button>\n </ng-container>\n\n <ng-container *ngIf=\"isPaying\">\n <div class=\"d-flex flex-column jusitfy-content-center align-items-center mt-2\">\n <h3>Procesando el pago por Mercado Pago</h3>\n <h5>Record\u00E1 tocar \u201CVolver al sitio\u201D en Mercado Pago para finalizar.</h5>\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n\n <div class=\"container-fluid\">\n <div class=\"row\">\n <div class=\"col-5\">\n <hr>\n </div>\n <div class=\"col-2 text-center\"><label>o</label></div>\n <div class=\"col-5\">\n <hr>\n </div>\n </div>\n </div>\n\n <div class=\"d-flex flex-column jusitfy-content-center align-items-center mt-2\">\n <button (click)=\"clickClose()\" class=\"btn btn-outline-secondary rounded-0 comprar\">\n Cancelar pago\n </button>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"isFinalizing\">\n <div class=\"d-flex flex-column jusitfy-content-center align-items-center mt-2\">\n <h3>Confirmando pago y redirigiendo\u2026</h3>\n <h5>No cierres ni recargues esta p\u00E1gina.</h5>\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n </ng-container>\n\n</div>\n\n<ng-template #loadingUrl>\n <div class=\"d-flex flex-column jusitfy-content-center align-items-center mt-2\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n</ng-template>",
@@ -16587,7 +16861,7 @@ MpRedirectEcComponent = __decorate$1B([
16587
16861
  })
16588
16862
  ], MpRedirectEcComponent);
16589
16863
 
16590
- var __decorate$1C = (this && this.__decorate) || function (decorators, target, key, desc) {
16864
+ var __decorate$1D = (this && this.__decorate) || function (decorators, target, key, desc) {
16591
16865
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
16592
16866
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
16593
16867
  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;
@@ -16692,25 +16966,25 @@ RedSysRedirectOutEcComponent.ctorParameters = () => [
16692
16966
  { type: ActivatedRoute },
16693
16967
  { type: DomSanitizer }
16694
16968
  ];
16695
- __decorate$1C([
16969
+ __decorate$1D([
16696
16970
  Input()
16697
16971
  ], RedSysRedirectOutEcComponent.prototype, "method", void 0);
16698
- __decorate$1C([
16972
+ __decorate$1D([
16699
16973
  Input()
16700
16974
  ], RedSysRedirectOutEcComponent.prototype, "total_amount", void 0);
16701
- __decorate$1C([
16975
+ __decorate$1D([
16702
16976
  Input()
16703
16977
  ], RedSysRedirectOutEcComponent.prototype, "user_data", void 0);
16704
- __decorate$1C([
16978
+ __decorate$1D([
16705
16979
  Input()
16706
16980
  ], RedSysRedirectOutEcComponent.prototype, "paymentServiceInst", void 0);
16707
- __decorate$1C([
16981
+ __decorate$1D([
16708
16982
  Input()
16709
16983
  ], RedSysRedirectOutEcComponent.prototype, "allData", void 0);
16710
- __decorate$1C([
16984
+ __decorate$1D([
16711
16985
  Output()
16712
16986
  ], RedSysRedirectOutEcComponent.prototype, "ready", void 0);
16713
- RedSysRedirectOutEcComponent = __decorate$1C([
16987
+ RedSysRedirectOutEcComponent = __decorate$1D([
16714
16988
  Component({
16715
16989
  selector: 'app-redsys-redirect-out-ec',
16716
16990
  template: "<div class=\"text-center\">\n <p *ngIf=\"method\" class=\"px-5\">{{ method?.description }}</p>\n <p *ngIf=\"method\" class=\"px-5\">{{ method?.instructions }}</p>\n <ng-container *ngIf=\"url;else loadingUrl\">\n <ng-container *ngIf=\"!loading;else loadingTemp\">\n <button (click)=\"iniciar()\" class=\"btn btn-outline-secondary rounded-0 comprar\">Pagar</button>\n </ng-container>\n </ng-container>\n</div>\n\n<ng-template #loadingUrl>\n <div class=\"d-flex flex-column jusitfy-content-center align-items-center mt-2\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n</ng-template>\n\n<ng-template #loadingTemp>\n <div class=\"d-flex flex-column jusitfy-content-center align-items-center mt-2\">\n <h3>Procesando el pago por Redsys</h3>\n <h5>Recuerde hacer click en \"Continuar\" desde Redsys para finalizar la compra.</h5>\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n <div class=\"container-fluid\">\n <div class=\"row\">\n <div class=\"col-5\">\n <hr>\n </div>\n <div class=\"col-2 text-center\">\n <label for=\"\">o</label>\n </div>\n <div class=\"col-5\">\n <hr>\n </div>\n </div>\n </div>\n <div class=\"d-flex flex-column jusitfy-content-center align-items-center mt-2\">\n <button (click)=\"clickClose()\" class=\"btn btn-outline-secondary rounded-0 comprar\">Cancelar pago</button>\n </div>\n</ng-template>",
@@ -16718,7 +16992,7 @@ RedSysRedirectOutEcComponent = __decorate$1C([
16718
16992
  })
16719
16993
  ], RedSysRedirectOutEcComponent);
16720
16994
 
16721
- var __decorate$1D = (this && this.__decorate) || function (decorators, target, key, desc) {
16995
+ var __decorate$1E = (this && this.__decorate) || function (decorators, target, key, desc) {
16722
16996
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
16723
16997
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
16724
16998
  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;
@@ -16860,25 +17134,25 @@ PaypalExpressEcComponent.ctorParameters = () => [
16860
17134
  { type: ToastService },
16861
17135
  { type: ActivatedRoute }
16862
17136
  ];
16863
- __decorate$1D([
17137
+ __decorate$1E([
16864
17138
  Input()
16865
17139
  ], PaypalExpressEcComponent.prototype, "method", void 0);
16866
- __decorate$1D([
17140
+ __decorate$1E([
16867
17141
  Input()
16868
17142
  ], PaypalExpressEcComponent.prototype, "total_amount", void 0);
16869
- __decorate$1D([
17143
+ __decorate$1E([
16870
17144
  Output()
16871
17145
  ], PaypalExpressEcComponent.prototype, "ready", void 0);
16872
- __decorate$1D([
17146
+ __decorate$1E([
16873
17147
  Input()
16874
17148
  ], PaypalExpressEcComponent.prototype, "user_data", void 0);
16875
- __decorate$1D([
17149
+ __decorate$1E([
16876
17150
  ViewChild('template')
16877
17151
  ], PaypalExpressEcComponent.prototype, "template", void 0);
16878
- __decorate$1D([
17152
+ __decorate$1E([
16879
17153
  ViewChild('paypal', { static: true })
16880
17154
  ], PaypalExpressEcComponent.prototype, "paypalElement", void 0);
16881
- PaypalExpressEcComponent = __decorate$1D([
17155
+ PaypalExpressEcComponent = __decorate$1E([
16882
17156
  Component({
16883
17157
  selector: 'app-paypal-express-ec',
16884
17158
  template: "<div class=\"text-center\">\n <p *ngIf=\"method\" class=\"px-5\">{{ method?.description }}</p>\n <p *ngIf=\"method\" class=\"px-5\">{{ method?.instructions }}</p>\n <ng-container *ngIf=\"!loading;else loadingTemp\">\n </ng-container>\n <div #paypal> </div>\n</div>\n\n<ng-template #loadingTemp>\n <div class=\"d-flex flex-column jusitfy-content-center align-items-center mt-2\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n</ng-template>",
@@ -16886,7 +17160,7 @@ PaypalExpressEcComponent = __decorate$1D([
16886
17160
  })
16887
17161
  ], PaypalExpressEcComponent);
16888
17162
 
16889
- var __decorate$1E = (this && this.__decorate) || function (decorators, target, key, desc) {
17163
+ var __decorate$1F = (this && this.__decorate) || function (decorators, target, key, desc) {
16890
17164
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
16891
17165
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
16892
17166
  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;
@@ -16997,28 +17271,28 @@ MobbexEcComponent.ctorParameters = () => [
16997
17271
  { type: DomSanitizer },
16998
17272
  { type: BsModalService }
16999
17273
  ];
17000
- __decorate$1E([
17274
+ __decorate$1F([
17001
17275
  Input()
17002
17276
  ], MobbexEcComponent.prototype, "paymentServiceInst", void 0);
17003
- __decorate$1E([
17277
+ __decorate$1F([
17004
17278
  Input()
17005
17279
  ], MobbexEcComponent.prototype, "method", void 0);
17006
- __decorate$1E([
17280
+ __decorate$1F([
17007
17281
  Input()
17008
17282
  ], MobbexEcComponent.prototype, "total_amount", void 0);
17009
- __decorate$1E([
17283
+ __decorate$1F([
17010
17284
  Input()
17011
17285
  ], MobbexEcComponent.prototype, "allData", void 0);
17012
- __decorate$1E([
17286
+ __decorate$1F([
17013
17287
  Input()
17014
17288
  ], MobbexEcComponent.prototype, "user_data", void 0);
17015
- __decorate$1E([
17289
+ __decorate$1F([
17016
17290
  Output()
17017
17291
  ], MobbexEcComponent.prototype, "ready", void 0);
17018
- __decorate$1E([
17292
+ __decorate$1F([
17019
17293
  ViewChild('template')
17020
17294
  ], MobbexEcComponent.prototype, "template", void 0);
17021
- MobbexEcComponent = __decorate$1E([
17295
+ MobbexEcComponent = __decorate$1F([
17022
17296
  Component({
17023
17297
  selector: 'app-mobbex-ec',
17024
17298
  template: "<div class=\"text-center\">\n <h3>Continuar con el pago en Mobbex</h3>\n <p *ngIf=\"method\" class=\"px-5\">{{ method?.description }}</p>\n <p *ngIf=\"method\" class=\"px-5\">{{ method?.instructions }}</p>\n <ng-container *ngIf=\"!loading ; else loadingUrl\">\n <button class=\"btn btn-outline-secondary comprar\" (click)=\"openModal(template)\">Pagar</button>\n </ng-container>\n</div>\n\n<ng-template #template>\n <div class=\"modal-content\">\n <div class=\"modal-header\">\n <button type=\"button\" class=\"btn-close\" aria-label=\"Close\" (click)=\"modalRef.hide(); loading = false;\">\n </button>\n </div>\n <div class=\"modal-body\">\n <iframe [src]=\"url\" frameborder=\"0\" class=\"iframeStyle\"></iframe>\n </div>\n </div>\n</ng-template>\n\n<ng-template #loadingUrl>\n <div class=\"d-flex flex-column jusitfy-content-center align-items-center mt-2\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n</ng-template>",
@@ -17027,7 +17301,7 @@ MobbexEcComponent = __decorate$1E([
17027
17301
  })
17028
17302
  ], MobbexEcComponent);
17029
17303
 
17030
- var __decorate$1F = (this && this.__decorate) || function (decorators, target, key, desc) {
17304
+ var __decorate$1G = (this && this.__decorate) || function (decorators, target, key, desc) {
17031
17305
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
17032
17306
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
17033
17307
  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;
@@ -17141,28 +17415,28 @@ BancardEcComponent.ctorParameters = () => [
17141
17415
  { type: DomSanitizer },
17142
17416
  { type: BsModalService }
17143
17417
  ];
17144
- __decorate$1F([
17418
+ __decorate$1G([
17145
17419
  Input()
17146
17420
  ], BancardEcComponent.prototype, "paymentServiceInst", void 0);
17147
- __decorate$1F([
17421
+ __decorate$1G([
17148
17422
  Input()
17149
17423
  ], BancardEcComponent.prototype, "method", void 0);
17150
- __decorate$1F([
17424
+ __decorate$1G([
17151
17425
  Input()
17152
17426
  ], BancardEcComponent.prototype, "total_amount", void 0);
17153
- __decorate$1F([
17427
+ __decorate$1G([
17154
17428
  Input()
17155
17429
  ], BancardEcComponent.prototype, "allData", void 0);
17156
- __decorate$1F([
17430
+ __decorate$1G([
17157
17431
  Input()
17158
17432
  ], BancardEcComponent.prototype, "user_data", void 0);
17159
- __decorate$1F([
17433
+ __decorate$1G([
17160
17434
  Output()
17161
17435
  ], BancardEcComponent.prototype, "ready", void 0);
17162
- __decorate$1F([
17436
+ __decorate$1G([
17163
17437
  ViewChild('template')
17164
17438
  ], BancardEcComponent.prototype, "template", void 0);
17165
- BancardEcComponent = __decorate$1F([
17439
+ BancardEcComponent = __decorate$1G([
17166
17440
  Component({
17167
17441
  selector: 'app-bancard-ec',
17168
17442
  template: "<div class=\"h-100 text-center\">\n <h4>Continuar con el pago con Bancard</h4>\n <p *ngIf=\"method\" class=\"px-5\">{{ method?.description }}</p>\n <p *ngIf=\"method\" class=\"px-5\">{{ method?.instructions }}</p>\n <ng-container *ngIf=\"!loading ; else loadingUrl\">\n <button *ngIf=\"url\" class=\"btn btn-outline-secondary comprar\" (click)=\"openModal(template)\">Pagar</button>\n <p *ngIf=\"!url\" class=\"px-5\">Actualmente no se encuentra disponible el m\u00E9todo de pago</p>\n </ng-container>\n</div>\n\n<ng-template #template>\n <div class=\"modal-content\">\n <div class=\"modal-header border-none justify-content-end px-1\">\n <button type=\"button\" class=\"btn bg-none\" (click)=\"clickClose()\">\n X \n </button>\n </div>\n </div>\n <div class=\"modal-body\">\n <iframe src=\"assets/bancardFrameBase.html\" frameborder=\"0\" class=\"iframeStyle\"></iframe>\n </div>\n</ng-template>\n\n<ng-template #loadingUrl>\n <div class=\"d-flex flex-column jusitfy-content-center align-items-center mt-2\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n</ng-template>",
@@ -17171,7 +17445,7 @@ BancardEcComponent = __decorate$1F([
17171
17445
  })
17172
17446
  ], BancardEcComponent);
17173
17447
 
17174
- var __decorate$1G = (this && this.__decorate) || function (decorators, target, key, desc) {
17448
+ var __decorate$1H = (this && this.__decorate) || function (decorators, target, key, desc) {
17175
17449
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
17176
17450
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
17177
17451
  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;
@@ -17280,25 +17554,25 @@ BancardRedirectEcComponent.ctorParameters = () => [
17280
17554
  { type: ActivatedRoute },
17281
17555
  { type: DomSanitizer }
17282
17556
  ];
17283
- __decorate$1G([
17557
+ __decorate$1H([
17284
17558
  Input()
17285
17559
  ], BancardRedirectEcComponent.prototype, "method", void 0);
17286
- __decorate$1G([
17560
+ __decorate$1H([
17287
17561
  Input()
17288
17562
  ], BancardRedirectEcComponent.prototype, "total_amount", void 0);
17289
- __decorate$1G([
17563
+ __decorate$1H([
17290
17564
  Input()
17291
17565
  ], BancardRedirectEcComponent.prototype, "user_data", void 0);
17292
- __decorate$1G([
17566
+ __decorate$1H([
17293
17567
  Input()
17294
17568
  ], BancardRedirectEcComponent.prototype, "paymentServiceInst", void 0);
17295
- __decorate$1G([
17569
+ __decorate$1H([
17296
17570
  Input()
17297
17571
  ], BancardRedirectEcComponent.prototype, "allData", void 0);
17298
- __decorate$1G([
17572
+ __decorate$1H([
17299
17573
  Output()
17300
17574
  ], BancardRedirectEcComponent.prototype, "ready", void 0);
17301
- BancardRedirectEcComponent = __decorate$1G([
17575
+ BancardRedirectEcComponent = __decorate$1H([
17302
17576
  Component({
17303
17577
  selector: 'app-bancard-redirect-ec',
17304
17578
  template: "<div class=\"text-center\">\n <h4>Continuar con el pago con Bancard</h4>\n <p *ngIf=\"method\" class=\"px-5\">{{ method?.description }}</p>\n <p *ngIf=\"method\" class=\"px-5\">{{ method?.instructions }}</p>\n <ng-container *ngIf=\"url;else loadingUrl\">\n <ng-container *ngIf=\"!loading;else loadingTemp\">\n <button (click)=\"iniciar()\" class=\"btn btn-outline-secondary comprar\">Pagar</button>\n </ng-container>\n </ng-container>\n</div>\n\n<ng-template #loadingUrl>\n <div class=\"d-flex flex-column jusitfy-content-center align-items-center mt-2\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n</ng-template>\n\n<ng-template #loadingTemp>\n <div class=\"d-flex flex-column jusitfy-content-center align-items-center mt-2\">\n <h3>Procesando el pago por Bancard</h3>\n <h5>Recuerde hacer click en \"Finalizar\" desde Bancard para finalizar la compra.</h5>\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n <div class=\"container-fluid\">\n <div class=\"row\">\n <div class=\"col-5\">\n <hr>\n </div>\n <div class=\"col-2 text-center\">\n <label for=\"\">o</label>\n </div>\n <div class=\"col-5\">\n <hr>\n </div>\n </div>\n </div>\n <div class=\"d-flex flex-column jusitfy-content-center align-items-center mt-2\">\n <button (click)=\"clickClose()\" class=\"btn btn-outline-secondary rounded-0 comprar\">Cancelar pago</button>\n </div>\n</ng-template>",
@@ -17306,7 +17580,7 @@ BancardRedirectEcComponent = __decorate$1G([
17306
17580
  })
17307
17581
  ], BancardRedirectEcComponent);
17308
17582
 
17309
- var __decorate$1H = (this && this.__decorate) || function (decorators, target, key, desc) {
17583
+ var __decorate$1I = (this && this.__decorate) || function (decorators, target, key, desc) {
17310
17584
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
17311
17585
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
17312
17586
  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;
@@ -17369,10 +17643,10 @@ SelectChannelEcComponent.ctorParameters = () => [
17369
17643
  { type: BsModalService },
17370
17644
  { type: Router }
17371
17645
  ];
17372
- __decorate$1H([
17646
+ __decorate$1I([
17373
17647
  ViewChild('template')
17374
17648
  ], SelectChannelEcComponent.prototype, "template", void 0);
17375
- SelectChannelEcComponent = __decorate$1H([
17649
+ SelectChannelEcComponent = __decorate$1I([
17376
17650
  Component({
17377
17651
  selector: 'select-channel-ec',
17378
17652
  template: "<ng-template #template>\n <div class=\"modal-content\" id=\"modalChanel\">\n <div class=\"modal-header\">\n <h5 class=\"modal-title w-100 text-center text-uppercase\">{{ 'select-channel' | translate }}</h5>\n </div>\n <div class=\"modal-body px-4\">\n <div class=\"card p-3 my-2 bg-light\" *ngFor=\"let item of channels; let i = index\">\n <div class=\"form-check\">\n <input class=\"form-check-input\" type=\"radio\" [name]=\"'n-'+i\" [id]=\"i\" [checked]=\"item.selected\" (click)=\"setSelect(item)\">\n <h5 class=\"form-check-label\" role=\"button\" (click)=\"setSelect(item)\">{{ 'channel' | translate }}: {{ item.name }}</h5>\n </div>\n </div>\n\n <!-- <div class=\"row\" *ngFor=\"let item of channels; let i = index\">\n <div class=\"col-1\">\n <input class=\"form-check-input\" type=\"radio\" [name]=\"'n-'+i\" [id]=\"i\" [checked]=\"item.selected\"\n (click)=\"setSelect(item)\">\n </div>\n <div class=\"col-11\">\n <h5 role=\"button\" (click)=\"setSelect(item)\">{{ 'channel' | translate }}: {{ item.name }}</h5>\n </div>\n </div> -->\n </div>\n <div class=\"modal-footer\">\n <button type=\"button\" class=\"btn btn-primary px-3 py-2\" (click)=\"setChannel()\">{{ 'continue' | translate }}</button>\n </div>\n </div>\n</ng-template>",
@@ -17381,7 +17655,7 @@ SelectChannelEcComponent = __decorate$1H([
17381
17655
  })
17382
17656
  ], SelectChannelEcComponent);
17383
17657
 
17384
- var __decorate$1I = (this && this.__decorate) || function (decorators, target, key, desc) {
17658
+ var __decorate$1J = (this && this.__decorate) || function (decorators, target, key, desc) {
17385
17659
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
17386
17660
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
17387
17661
  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;
@@ -17415,7 +17689,7 @@ CartLoadEcComponent.ctorParameters = () => [
17415
17689
  { type: CheckoutService },
17416
17690
  { type: CartService }
17417
17691
  ];
17418
- CartLoadEcComponent = __decorate$1I([
17692
+ CartLoadEcComponent = __decorate$1J([
17419
17693
  Component({
17420
17694
  selector: 'app-cart-load-ec',
17421
17695
  template: "<div class=\"container\">\n <div class=\"row\">\n <div class=\"col align-self-center\">\n <h4 class=\"titpage center-block text-center font-nexa font-lg my-3\">{{ 'retrieve-cart' | translate | uppercase }}</h4>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col align-self-center mt-2\">\n <div class=\"d-flex flex-column jusitfy-content-center align-items-center\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n </div>\n </div>\n</div>",
@@ -17423,7 +17697,7 @@ CartLoadEcComponent = __decorate$1I([
17423
17697
  })
17424
17698
  ], CartLoadEcComponent);
17425
17699
 
17426
- var __decorate$1J = (this && this.__decorate) || function (decorators, target, key, desc) {
17700
+ var __decorate$1K = (this && this.__decorate) || function (decorators, target, key, desc) {
17427
17701
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
17428
17702
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
17429
17703
  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;
@@ -17559,28 +17833,28 @@ let MagnizoomComponent = class MagnizoomComponent {
17559
17833
  event.stopPropagation();
17560
17834
  }
17561
17835
  };
17562
- __decorate$1J([
17836
+ __decorate$1K([
17563
17837
  Input()
17564
17838
  ], MagnizoomComponent.prototype, "ImageSrc", null);
17565
- __decorate$1J([
17839
+ __decorate$1K([
17566
17840
  Input()
17567
17841
  ], MagnizoomComponent.prototype, "zoomMode", void 0);
17568
- __decorate$1J([
17842
+ __decorate$1K([
17569
17843
  Input()
17570
17844
  ], MagnizoomComponent.prototype, "minZoomFactor", void 0);
17571
- __decorate$1J([
17845
+ __decorate$1K([
17572
17846
  Input()
17573
17847
  ], MagnizoomComponent.prototype, "maxZoomFactor", void 0);
17574
- __decorate$1J([
17848
+ __decorate$1K([
17575
17849
  Input()
17576
17850
  ], MagnizoomComponent.prototype, "imageStyle", void 0);
17577
- __decorate$1J([
17851
+ __decorate$1K([
17578
17852
  Input()
17579
17853
  ], MagnizoomComponent.prototype, "imageClass", void 0);
17580
- __decorate$1J([
17854
+ __decorate$1K([
17581
17855
  ViewChild('mainCanvas', { static: true })
17582
17856
  ], MagnizoomComponent.prototype, "mainCanvasRef", void 0);
17583
- MagnizoomComponent = __decorate$1J([
17857
+ MagnizoomComponent = __decorate$1K([
17584
17858
  Component({
17585
17859
  selector: '[app-magnizoom-ec]',
17586
17860
  template: "<canvas #mainCanvas\n class=\"main-canvas\"\n [ngClass]=\"imageClass\"\n [ngStyle]=\"imageStyle\"\n [width]=\"canvasWidth\"\n [height]=\"canvasHeight\"\n (mouseleave)=\"onMouseLeave($event)\"\n (mouseenter)=\"onMouseEnterOrMove($event)\"\n (mousemove)=\"onMouseEnterOrMove($event)\"\n (wheel)=\"onMouseScroll($event)\">\n</canvas>\n",
@@ -17588,7 +17862,7 @@ MagnizoomComponent = __decorate$1J([
17588
17862
  })
17589
17863
  ], MagnizoomComponent);
17590
17864
 
17591
- var __decorate$1K = (this && this.__decorate) || function (decorators, target, key, desc) {
17865
+ var __decorate$1L = (this && this.__decorate) || function (decorators, target, key, desc) {
17592
17866
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
17593
17867
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
17594
17868
  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;
@@ -17724,19 +17998,19 @@ MultipleItemsToCartEcComponent.ctorParameters = () => [
17724
17998
  { type: CartService },
17725
17999
  { type: ToastService }
17726
18000
  ];
17727
- __decorate$1K([
18001
+ __decorate$1L([
17728
18002
  Input()
17729
18003
  ], MultipleItemsToCartEcComponent.prototype, "product", void 0);
17730
- __decorate$1K([
18004
+ __decorate$1L([
17731
18005
  Input()
17732
18006
  ], MultipleItemsToCartEcComponent.prototype, "objectWithVariant", void 0);
17733
- __decorate$1K([
18007
+ __decorate$1L([
17734
18008
  Output()
17735
18009
  ], MultipleItemsToCartEcComponent.prototype, "totalCostItems", void 0);
17736
- __decorate$1K([
18010
+ __decorate$1L([
17737
18011
  Output()
17738
18012
  ], MultipleItemsToCartEcComponent.prototype, "totalItems", void 0);
17739
- MultipleItemsToCartEcComponent = __decorate$1K([
18013
+ MultipleItemsToCartEcComponent = __decorate$1L([
17740
18014
  Component({
17741
18015
  selector: 'app-multiple-items-to-cart-ec',
17742
18016
  template: "<table class=\"table table-hover tablas tabla-curva\">\n <thead>\n <tr>\n <th scope=\"col\">Curva</th>\n <th *ngFor=\"let item of optionsProductForVariant()\" scope=\"col\">{{item.currentOption?.code}}</th>\n </tr>\n </thead>\n <tbody>\n <ng-container *ngIf=\"allWithoutTracking()\">\n <tr>\n <td>Stock</td>\n <th *ngFor=\"let item of optionsProductForVariant()\" scope=\"col\">{{(item.currentOption?.stock == 9999)? 'N/A' : item.currentOption?.stock }}</th>\n </tr>\n </ng-container>\n <tr>\n <td></td>\n <td *ngFor=\"let item of optionsProductForVariant()\">\n <div class=\"text-center\">\n <input class=\"form-control form-control-sm in-curva\"\n (keypress)=\"consts.inputValidationByExpressions($event,'[0-9]{1,9}', condition(inputValue.value,item) )\" #inputValue \n (keyup)=\"setQuantity(inputValue.value,item)\" [max]=\"item.currentOption?.stock\" min=\"0\" type=\"text\"\n [value]=\"item?.productToCartItem?.quantity || 0\" id=\"\">\n </div>\n </td>\n </tr>\n </tbody>\n</table>\n<ng-template #loading>\n <div class=\"col-12 align-items-center\">\n <div class=\"d-flex flex-column jusitfy-content-center align-items-center my-5\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n </div>\n</ng-template>",
@@ -17744,7 +18018,7 @@ MultipleItemsToCartEcComponent = __decorate$1K([
17744
18018
  })
17745
18019
  ], MultipleItemsToCartEcComponent);
17746
18020
 
17747
- var __decorate$1L = (this && this.__decorate) || function (decorators, target, key, desc) {
18021
+ var __decorate$1M = (this && this.__decorate) || function (decorators, target, key, desc) {
17748
18022
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
17749
18023
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
17750
18024
  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;
@@ -17857,13 +18131,13 @@ CaptchaService.ctorParameters = () => [
17857
18131
  { type: ParametersService }
17858
18132
  ];
17859
18133
  CaptchaService.ɵprov = ɵɵdefineInjectable({ factory: function CaptchaService_Factory() { return new CaptchaService(ɵɵinject(Constants), ɵɵinject(ConnectionService), ɵɵinject(HttpClient), ɵɵinject(ParametersService)); }, token: CaptchaService, providedIn: "root" });
17860
- CaptchaService = __decorate$1L([
18134
+ CaptchaService = __decorate$1M([
17861
18135
  Injectable({
17862
18136
  providedIn: 'root'
17863
18137
  })
17864
18138
  ], CaptchaService);
17865
18139
 
17866
- var __decorate$1M = (this && this.__decorate) || function (decorators, target, key, desc) {
18140
+ var __decorate$1N = (this && this.__decorate) || function (decorators, target, key, desc) {
17867
18141
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
17868
18142
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
17869
18143
  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;
@@ -17896,13 +18170,13 @@ let RecaptchaEcComponent = class RecaptchaEcComponent {
17896
18170
  RecaptchaEcComponent.ctorParameters = () => [
17897
18171
  { type: CaptchaService }
17898
18172
  ];
17899
- __decorate$1M([
18173
+ __decorate$1N([
17900
18174
  Input()
17901
18175
  ], RecaptchaEcComponent.prototype, "form", void 0);
17902
- __decorate$1M([
18176
+ __decorate$1N([
17903
18177
  Input()
17904
18178
  ], RecaptchaEcComponent.prototype, "siteKey", void 0);
17905
- RecaptchaEcComponent = __decorate$1M([
18179
+ RecaptchaEcComponent = __decorate$1N([
17906
18180
  Component({
17907
18181
  selector: 're-captcha-ec',
17908
18182
  template: "<ng-container *ngIf=\"captcha.siteKey; else loading\">\n <re-captcha (resolved)=\"resolved($event)\" siteKey=\"{{captcha.siteKey}}\" [formControl]=\"form.controls['captcha']\">\n </re-captcha>\n</ng-container>\n<ng-template #loading>\n <app-loading-full-ec></app-loading-full-ec>\n</ng-template>",
@@ -17910,7 +18184,7 @@ RecaptchaEcComponent = __decorate$1M([
17910
18184
  })
17911
18185
  ], RecaptchaEcComponent);
17912
18186
 
17913
- var __decorate$1N = (this && this.__decorate) || function (decorators, target, key, desc) {
18187
+ var __decorate$1O = (this && this.__decorate) || function (decorators, target, key, desc) {
17914
18188
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
17915
18189
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
17916
18190
  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;
@@ -18043,28 +18317,28 @@ DecidirEcComponent.ctorParameters = () => [
18043
18317
  { type: ParametersService },
18044
18318
  { type: CheckoutService }
18045
18319
  ];
18046
- __decorate$1N([
18320
+ __decorate$1O([
18047
18321
  Input()
18048
18322
  ], DecidirEcComponent.prototype, "paymentServiceInst", void 0);
18049
- __decorate$1N([
18323
+ __decorate$1O([
18050
18324
  Input()
18051
18325
  ], DecidirEcComponent.prototype, "method", void 0);
18052
- __decorate$1N([
18326
+ __decorate$1O([
18053
18327
  Input()
18054
18328
  ], DecidirEcComponent.prototype, "total_amount", void 0);
18055
- __decorate$1N([
18329
+ __decorate$1O([
18056
18330
  Input()
18057
18331
  ], DecidirEcComponent.prototype, "allData", void 0);
18058
- __decorate$1N([
18332
+ __decorate$1O([
18059
18333
  Input()
18060
18334
  ], DecidirEcComponent.prototype, "user_data", void 0);
18061
- __decorate$1N([
18335
+ __decorate$1O([
18062
18336
  Output()
18063
18337
  ], DecidirEcComponent.prototype, "ready", void 0);
18064
- __decorate$1N([
18338
+ __decorate$1O([
18065
18339
  ViewChild('template')
18066
18340
  ], DecidirEcComponent.prototype, "template", void 0);
18067
- DecidirEcComponent = __decorate$1N([
18341
+ DecidirEcComponent = __decorate$1O([
18068
18342
  Component({
18069
18343
  selector: 'app-decidir-ec',
18070
18344
  template: "<div class=\"text-center\">\n <h3>Continuar con el pago en Decidir</h3>\n <p *ngIf=\"method\" class=\"px-5\">{{ method?.description }}</p>\n <p *ngIf=\"method\" class=\"px-5\">{{ method?.instructions }}</p>\n <ng-container *ngIf=\"!loading; else loadingUrl\">\n <button class=\"btn btn-outline-secondary comprar\" (click)=\"openModal(template)\">Pagar</button>\n </ng-container>\n</div>\n\n<ng-template #template>\n <div class=\"modal-content\">\n <div class=\"modal-header border-none justify-content-end px-1\">\n <button type=\"button\" class=\"btn bg-none\" (click)=\"clickClose()\">\n X \n </button>\n </div>\n </div>\n <div class=\"modal-body\">\n <iframe #iframe [src]=\"url\" frameborder=\"0\" class=\"iframeStyle\"></iframe>\n </div>\n</ng-template>\n\n<ng-template #loadingUrl>\n <div class=\"d-flex flex-column justify-content-center align-items-center mt-2\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n</ng-template>\n",
@@ -18073,7 +18347,7 @@ DecidirEcComponent = __decorate$1N([
18073
18347
  })
18074
18348
  ], DecidirEcComponent);
18075
18349
 
18076
- var __decorate$1O = (this && this.__decorate) || function (decorators, target, key, desc) {
18350
+ var __decorate$1P = (this && this.__decorate) || function (decorators, target, key, desc) {
18077
18351
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
18078
18352
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
18079
18353
  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;
@@ -18180,13 +18454,13 @@ ConcatenatedAssociationsService.ctorParameters = () => [
18180
18454
  { type: ConnectionService }
18181
18455
  ];
18182
18456
  ConcatenatedAssociationsService.ɵprov = ɵɵdefineInjectable({ factory: function ConcatenatedAssociationsService_Factory() { return new ConcatenatedAssociationsService(ɵɵinject(Constants), ɵɵinject(ConnectionService)); }, token: ConcatenatedAssociationsService, providedIn: "root" });
18183
- ConcatenatedAssociationsService = __decorate$1O([
18457
+ ConcatenatedAssociationsService = __decorate$1P([
18184
18458
  Injectable({
18185
18459
  providedIn: 'root'
18186
18460
  })
18187
18461
  ], ConcatenatedAssociationsService);
18188
18462
 
18189
- var __decorate$1P = (this && this.__decorate) || function (decorators, target, key, desc) {
18463
+ var __decorate$1Q = (this && this.__decorate) || function (decorators, target, key, desc) {
18190
18464
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
18191
18465
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
18192
18466
  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;
@@ -18472,7 +18746,7 @@ BuildYourEcComponent.ctorParameters = () => [
18472
18746
  { type: CartService },
18473
18747
  { type: Router }
18474
18748
  ];
18475
- BuildYourEcComponent = __decorate$1P([
18749
+ BuildYourEcComponent = __decorate$1Q([
18476
18750
  Component({
18477
18751
  selector: 'app-build-your-ec',
18478
18752
  template: "<p>\n build-your-ec works!\n</p>\n",
@@ -18480,7 +18754,7 @@ BuildYourEcComponent = __decorate$1P([
18480
18754
  })
18481
18755
  ], BuildYourEcComponent);
18482
18756
 
18483
- var __decorate$1Q = (this && this.__decorate) || function (decorators, target, key, desc) {
18757
+ var __decorate$1R = (this && this.__decorate) || function (decorators, target, key, desc) {
18484
18758
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
18485
18759
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
18486
18760
  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;
@@ -18541,10 +18815,10 @@ ProductFoundEcComponent.ctorParameters = () => [
18541
18815
  { type: Router },
18542
18816
  { type: ToastService }
18543
18817
  ];
18544
- __decorate$1Q([
18818
+ __decorate$1R([
18545
18819
  Input()
18546
18820
  ], ProductFoundEcComponent.prototype, "product", void 0);
18547
- ProductFoundEcComponent = __decorate$1Q([
18821
+ ProductFoundEcComponent = __decorate$1R([
18548
18822
  Component({
18549
18823
  selector: 'app-product-found-ec',
18550
18824
  template: "<p>\n product-found works!\n</p>\n",
@@ -18553,7 +18827,7 @@ ProductFoundEcComponent = __decorate$1Q([
18553
18827
  })
18554
18828
  ], ProductFoundEcComponent);
18555
18829
 
18556
- var __decorate$1R = (this && this.__decorate) || function (decorators, target, key, desc) {
18830
+ var __decorate$1S = (this && this.__decorate) || function (decorators, target, key, desc) {
18557
18831
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
18558
18832
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
18559
18833
  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;
@@ -18709,22 +18983,22 @@ ComparedProductsEcComponent.ctorParameters = () => [
18709
18983
  { type: Constants },
18710
18984
  { type: Router }
18711
18985
  ];
18712
- __decorate$1R([
18986
+ __decorate$1S([
18713
18987
  Input()
18714
18988
  ], ComparedProductsEcComponent.prototype, "product_id", void 0);
18715
- __decorate$1R([
18989
+ __decorate$1S([
18716
18990
  Input()
18717
18991
  ], ComparedProductsEcComponent.prototype, "emptyValue", void 0);
18718
- __decorate$1R([
18992
+ __decorate$1S([
18719
18993
  Input()
18720
18994
  ], ComparedProductsEcComponent.prototype, "classes", void 0);
18721
- __decorate$1R([
18995
+ __decorate$1S([
18722
18996
  Input()
18723
18997
  ], ComparedProductsEcComponent.prototype, "setSize", null);
18724
- __decorate$1R([
18998
+ __decorate$1S([
18725
18999
  Output()
18726
19000
  ], ComparedProductsEcComponent.prototype, "error", void 0);
18727
- ComparedProductsEcComponent = __decorate$1R([
19001
+ ComparedProductsEcComponent = __decorate$1S([
18728
19002
  Component({
18729
19003
  selector: 'app-compared-products-ec',
18730
19004
  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>",
@@ -18732,7 +19006,7 @@ ComparedProductsEcComponent = __decorate$1R([
18732
19006
  })
18733
19007
  ], ComparedProductsEcComponent);
18734
19008
 
18735
- var __decorate$1S = (this && this.__decorate) || function (decorators, target, key, desc) {
19009
+ var __decorate$1T = (this && this.__decorate) || function (decorators, target, key, desc) {
18736
19010
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
18737
19011
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
18738
19012
  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;
@@ -18754,25 +19028,25 @@ StepEcComponent.ctorParameters = () => [
18754
19028
  { type: CheckoutService },
18755
19029
  { type: AnalyticsService }
18756
19030
  ];
18757
- __decorate$1S([
19031
+ __decorate$1T([
18758
19032
  Input()
18759
19033
  ], StepEcComponent.prototype, "lastStep", void 0);
18760
- __decorate$1S([
19034
+ __decorate$1T([
18761
19035
  Input()
18762
19036
  ], StepEcComponent.prototype, "previousStep", void 0);
18763
- __decorate$1S([
19037
+ __decorate$1T([
18764
19038
  Input()
18765
19039
  ], StepEcComponent.prototype, "step_id", void 0);
18766
- __decorate$1S([
19040
+ __decorate$1T([
18767
19041
  Input()
18768
19042
  ], StepEcComponent.prototype, "nextStep", void 0);
18769
- __decorate$1S([
19043
+ __decorate$1T([
18770
19044
  Input()
18771
19045
  ], StepEcComponent.prototype, "goBack", void 0);
18772
- __decorate$1S([
19046
+ __decorate$1T([
18773
19047
  Input()
18774
19048
  ], StepEcComponent.prototype, "id_step", void 0);
18775
- StepEcComponent = __decorate$1S([
19049
+ StepEcComponent = __decorate$1T([
18776
19050
  Component({
18777
19051
  selector: 'app-step-ec',
18778
19052
  template: "<ng-container [ngSwitch]=\"step_id\">\n\n <ng-container *ngSwitchCase=\"1\">\n <app-dataform-ec [step_id]=\"id_step\" [isLastOne]=\"lastStep\" [nextStep]=\"nextStep\">\n </app-dataform-ec>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"2\">\n <ng-container *ngIf=\"isStepReady('address')\">\n <app-shipment-ec [step_id]=\"id_step\">\n </app-shipment-ec>\n <div class=\"checkout-btn-container mt-2\">\n <button class=\"btn valid-btn\" (click)=\"goBack()\">{{'back'|translate}}</button>\n <ng-container *ngIf=\"(checkoutService.order$ | async) as order\">\n <button *ngIf=\"isStepReady('shipment')\" (click)=\"nextStep()\"\n class=\"btn valid-btn float-end\" (click)=\"metodoEnvio(order)\">{{ (lastStep ? 'finish-checkout' : 'ready-form') |translate}}\n </button>\n </ng-container>\n </div>\n </ng-container>\n </ng-container>\n\n <ng-container *ngSwitchCase=\"3\">\n <ng-container *ngIf=\"isStepReady(previousStep)\">\n <app-payment-ec [step_id]=\"id_step\">\n </app-payment-ec>\n <div class=\"checkout-btn-container mt-2\">\n <button class=\"btn valid-btn\"\n (click)=\"goBack()\">{{'back'|translate}}</button>\n </div>\n </ng-container>\n </ng-container>\n\n</ng-container>\n",
@@ -18780,7 +19054,7 @@ StepEcComponent = __decorate$1S([
18780
19054
  })
18781
19055
  ], StepEcComponent);
18782
19056
 
18783
- var __decorate$1T = (this && this.__decorate) || function (decorators, target, key, desc) {
19057
+ var __decorate$1U = (this && this.__decorate) || function (decorators, target, key, desc) {
18784
19058
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
18785
19059
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
18786
19060
  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;
@@ -18899,25 +19173,25 @@ CulqiEcComponent.ctorParameters = () => [
18899
19173
  { type: ConnectionService },
18900
19174
  { type: ParametersService }
18901
19175
  ];
18902
- __decorate$1T([
19176
+ __decorate$1U([
18903
19177
  Input()
18904
19178
  ], CulqiEcComponent.prototype, "amount", void 0);
18905
- __decorate$1T([
19179
+ __decorate$1U([
18906
19180
  Input()
18907
19181
  ], CulqiEcComponent.prototype, "apiKey", void 0);
18908
- __decorate$1T([
19182
+ __decorate$1U([
18909
19183
  Input()
18910
19184
  ], CulqiEcComponent.prototype, "method", void 0);
18911
- __decorate$1T([
19185
+ __decorate$1U([
18912
19186
  Input()
18913
19187
  ], CulqiEcComponent.prototype, "customStyle", void 0);
18914
- __decorate$1T([
19188
+ __decorate$1U([
18915
19189
  Output()
18916
19190
  ], CulqiEcComponent.prototype, "ready", void 0);
18917
- __decorate$1T([
19191
+ __decorate$1U([
18918
19192
  ViewChild('formContainer')
18919
19193
  ], CulqiEcComponent.prototype, "anchor", void 0);
18920
- CulqiEcComponent = __decorate$1T([
19194
+ CulqiEcComponent = __decorate$1U([
18921
19195
  Component({
18922
19196
  selector: 'app-culqi-ec',
18923
19197
  template: "<div class=\"text-center\">\n <h3 *ngIf=\"method && method?.name\">{{method.name}}</h3>\n <p *ngIf=\"method\" class=\"px-5\">{{ method?.description }}</p>\n <p *ngIf=\"method\" class=\"px-5\">{{ method?.instructions }}</p>\n <form action=\"javascript:void(0)\" #formContainer></form>\n <button *ngIf=\"loaded; else loading\" (click)=\"open()\" class=\"comprar\">Pagar</button>\n</div>\n\n\n<ng-template #loading>\n <app-loading-full-ec></app-loading-full-ec>\n</ng-template>",
@@ -18925,7 +19199,7 @@ CulqiEcComponent = __decorate$1T([
18925
19199
  })
18926
19200
  ], CulqiEcComponent);
18927
19201
 
18928
- var __decorate$1U = (this && this.__decorate) || function (decorators, target, key, desc) {
19202
+ var __decorate$1V = (this && this.__decorate) || function (decorators, target, key, desc) {
18929
19203
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
18930
19204
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
18931
19205
  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;
@@ -18988,16 +19262,16 @@ let RatingEcComponent = class RatingEcComponent extends ComponentHelper {
18988
19262
  this.ratingValue ? this.processRatingValue(this.ratingValue) : null;
18989
19263
  }
18990
19264
  };
18991
- __decorate$1U([
19265
+ __decorate$1V([
18992
19266
  Input()
18993
19267
  ], RatingEcComponent.prototype, "template", void 0);
18994
- __decorate$1U([
19268
+ __decorate$1V([
18995
19269
  Input()
18996
19270
  ], RatingEcComponent.prototype, "type", void 0);
18997
- __decorate$1U([
19271
+ __decorate$1V([
18998
19272
  Input()
18999
19273
  ], RatingEcComponent.prototype, "ratingValue", void 0);
19000
- RatingEcComponent = __decorate$1U([
19274
+ RatingEcComponent = __decorate$1V([
19001
19275
  Component({
19002
19276
  selector: 'app-rating-ec',
19003
19277
  template: "<ng-container [ngSwitch]=\"type\">\n <ng-template #stars let-score=\"score\">\n <ng-container *ngFor=\"let value of score\">\n <ng-container [ngSwitch]=\"value\">\n <i *ngSwitchCase=\"1\" class=\"me-1 bi bi-star-fill text-warning star\"></i>\n <i *ngSwitchCase=\"0.5\" class=\"me-1 bi bi-star-half text-warning star\"></i>\n <i *ngSwitchCase=\"0\" class=\"me-1 bi bi-star text-muted star\"></i>\n </ng-container>\n </ng-container>\n </ng-template>\n <ng-container *ngSwitchCase=\"'stars'\"\n [ngTemplateOutlet]=\"template ? template : stars\"\n [ngTemplateOutletContext]=\"{score:score, ratingValue:ratingValue}\">\n </ng-container>\n</ng-container>\n",
@@ -19005,7 +19279,7 @@ RatingEcComponent = __decorate$1U([
19005
19279
  })
19006
19280
  ], RatingEcComponent);
19007
19281
 
19008
- var __decorate$1V = (this && this.__decorate) || function (decorators, target, key, desc) {
19282
+ var __decorate$1W = (this && this.__decorate) || function (decorators, target, key, desc) {
19009
19283
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
19010
19284
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
19011
19285
  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;
@@ -19097,13 +19371,13 @@ ReviewsService.ctorParameters = () => [
19097
19371
  { type: PaginationService }
19098
19372
  ];
19099
19373
  ReviewsService.ɵprov = ɵɵdefineInjectable({ factory: function ReviewsService_Factory() { return new ReviewsService(ɵɵinject(ConnectionService), ɵɵinject(Constants), ɵɵinject(PaginationService)); }, token: ReviewsService, providedIn: "root" });
19100
- ReviewsService = __decorate$1V([
19374
+ ReviewsService = __decorate$1W([
19101
19375
  Injectable({
19102
19376
  providedIn: 'root'
19103
19377
  })
19104
19378
  ], ReviewsService);
19105
19379
 
19106
- var __decorate$1W = (this && this.__decorate) || function (decorators, target, key, desc) {
19380
+ var __decorate$1X = (this && this.__decorate) || function (decorators, target, key, desc) {
19107
19381
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
19108
19382
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
19109
19383
  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;
@@ -19211,19 +19485,19 @@ ReviewsFormEcComponent.ctorParameters = () => [
19211
19485
  { type: AuthService },
19212
19486
  { type: ReviewsService }
19213
19487
  ];
19214
- __decorate$1W([
19488
+ __decorate$1X([
19215
19489
  Input()
19216
19490
  ], ReviewsFormEcComponent.prototype, "product", void 0);
19217
- __decorate$1W([
19491
+ __decorate$1X([
19218
19492
  Input()
19219
19493
  ], ReviewsFormEcComponent.prototype, "withAuthenticated", void 0);
19220
- __decorate$1W([
19494
+ __decorate$1X([
19221
19495
  Input()
19222
19496
  ], ReviewsFormEcComponent.prototype, "max", void 0);
19223
- __decorate$1W([
19497
+ __decorate$1X([
19224
19498
  Output()
19225
19499
  ], ReviewsFormEcComponent.prototype, "ready", void 0);
19226
- ReviewsFormEcComponent = __decorate$1W([
19500
+ ReviewsFormEcComponent = __decorate$1X([
19227
19501
  Component({
19228
19502
  selector: 'app-reviews-form-ec',
19229
19503
  template: "<p>\n reviews-form-ec works!\n</p>\n",
@@ -19231,7 +19505,7 @@ ReviewsFormEcComponent = __decorate$1W([
19231
19505
  })
19232
19506
  ], ReviewsFormEcComponent);
19233
19507
 
19234
- var __decorate$1X = (this && this.__decorate) || function (decorators, target, key, desc) {
19508
+ var __decorate$1Y = (this && this.__decorate) || function (decorators, target, key, desc) {
19235
19509
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
19236
19510
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
19237
19511
  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;
@@ -19284,10 +19558,10 @@ ReviewsEcComponent.ctorParameters = () => [
19284
19558
  { type: ReviewsService },
19285
19559
  { type: Constants }
19286
19560
  ];
19287
- __decorate$1X([
19561
+ __decorate$1Y([
19288
19562
  Input()
19289
19563
  ], ReviewsEcComponent.prototype, "product", void 0);
19290
- ReviewsEcComponent = __decorate$1X([
19564
+ ReviewsEcComponent = __decorate$1Y([
19291
19565
  Component({
19292
19566
  selector: 'app-reviews-ec',
19293
19567
  template: "<p>\n reviews-ec works!\n</p>\n",
@@ -19295,7 +19569,7 @@ ReviewsEcComponent = __decorate$1X([
19295
19569
  })
19296
19570
  ], ReviewsEcComponent);
19297
19571
 
19298
- var __decorate$1Y = (this && this.__decorate) || function (decorators, target, key, desc) {
19572
+ var __decorate$1Z = (this && this.__decorate) || function (decorators, target, key, desc) {
19299
19573
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
19300
19574
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
19301
19575
  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;
@@ -19554,28 +19828,28 @@ BancardCatastroEcComponent.ctorParameters = () => [
19554
19828
  { type: ChangeDetectorRef },
19555
19829
  { type: Renderer2 }
19556
19830
  ];
19557
- __decorate$1Y([
19831
+ __decorate$1Z([
19558
19832
  Input()
19559
19833
  ], BancardCatastroEcComponent.prototype, "paymentServiceInst", void 0);
19560
- __decorate$1Y([
19834
+ __decorate$1Z([
19561
19835
  Input()
19562
19836
  ], BancardCatastroEcComponent.prototype, "method", void 0);
19563
- __decorate$1Y([
19837
+ __decorate$1Z([
19564
19838
  Input()
19565
19839
  ], BancardCatastroEcComponent.prototype, "total_amount", void 0);
19566
- __decorate$1Y([
19840
+ __decorate$1Z([
19567
19841
  Input()
19568
19842
  ], BancardCatastroEcComponent.prototype, "allData", void 0);
19569
- __decorate$1Y([
19843
+ __decorate$1Z([
19570
19844
  Input()
19571
19845
  ], BancardCatastroEcComponent.prototype, "user_data", void 0);
19572
- __decorate$1Y([
19846
+ __decorate$1Z([
19573
19847
  Output()
19574
19848
  ], BancardCatastroEcComponent.prototype, "ready", void 0);
19575
- __decorate$1Y([
19849
+ __decorate$1Z([
19576
19850
  Output()
19577
19851
  ], BancardCatastroEcComponent.prototype, "cardAdded", void 0);
19578
- BancardCatastroEcComponent = __decorate$1Y([
19852
+ BancardCatastroEcComponent = __decorate$1Z([
19579
19853
  Component({
19580
19854
  selector: 'app-bancard-catastro-ec',
19581
19855
  template: "<div *ngIf=\"!loading; else loadingView\">\n <div class=\"row my-3\">\n <ng-container *ngIf=\"registered_cards && registered_cards.length > 0; else notCards\">\n <ng-container *ngFor=\"let card of registered_cards; let x=index\">\n <div class=\"col-12 col-md-6\">\n <div class=\"card my-2\">\n <div class=\"card-body\">\n <div class=\"row\">\n <div class=\"col-12 col-md-9\">\n <h5 class=\"card-title\">Terminada en {{card.card_masked_number.slice(-4)}}</h5>\n <!-- <h6 class=\"card-subtitle mb-2 text-muted\">Card subtitle</h6> -->\n <!-- <p class=\"card-text\">Some quick example text to build on the card title and make up the bulk of the card's content.</p>\n -->\n <p class=\"card-text text-muted\">{{card.card_brand}}</p>\n <p class=\"card-text text-muted\">Vencimiento: {{card.expiration_date}}</p>\n </div>\n <div class=\"col-3 d-none d-md-flex\">\n <div class=\"d-flex flex-column justify-content-between align-items-center w-100\">\n <div class=\"d-flex justify-content-end w-100\">\n <a class=\"cursor-pointer text-primary\" (click)=\"deleteCard(card.card_id)\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" fill=\"currentColor\" class=\"bi bi-trash3\"\n viewBox=\"0 0 16 16\">\n <path\n d=\"M6.5 1h3a.5.5 0 0 1 .5.5v1H6v-1a.5.5 0 0 1 .5-.5ZM11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3A1.5 1.5 0 0 0 5 1.5v1H2.506a.58.58 0 0 0-.01 0H1.5a.5.5 0 0 0 0 1h.538l.853 10.66A2 2 0 0 0 4.885 16h6.23a2 2 0 0 0 1.994-1.84l.853-10.66h.538a.5.5 0 0 0 0-1h-.995a.59.59 0 0 0-.01 0H11Zm1.958 1-.846 10.58a1 1 0 0 1-.997.92h-6.23a1 1 0 0 1-.997-.92L3.042 3.5h9.916Zm-7.487 1a.5.5 0 0 1 .528.47l.5 8.5a.5.5 0 0 1-.998.06L5 5.03a.5.5 0 0 1 .47-.53Zm5.058 0a.5.5 0 0 1 .47.53l-.5 8.5a.5.5 0 1 1-.998-.06l.5-8.5a.5.5 0 0 1 .528-.47ZM8 4.5a.5.5 0 0 1 .5.5v8.5a.5.5 0 0 1-1 0V5a.5.5 0 0 1 .5-.5Z\" />\n </svg>\n </a>\n </div>\n <img [src]=\"getCardImg(card.card_brand)\" class=\"img-card\" />\n \n </div>\n </div>\n </div>\n </div>\n <div class=\"card-footer d-flex flex-row justify-content-end\">\n <ng-container *ngIf=\"!checkingPayment; else buttonLoading\">\n <button *ngIf=\"card.card_type == 'credit'; else debito\" class=\"btn comprar text-white\" data-bs-toggle=\"modal\"\n data-bs-target=\"#modalCuotas\" (click)=\"setCurrentCardID(card.card_id)\">Pagar</button>\n <ng-template #debito>\n <button class=\"btn comprar text-white\" (click)=\"toPay(card.card_id)\">Pagar</button>\n </ng-template>\n </ng-container>\n </div>\n </div>\n </div>\n </ng-container>\n </ng-container>\n <ng-template #notCards>\n <div class=\"col-12 d-flex justify-content-center\">\n <h6>Usted no posee tarjetas registrada. Para continuar con este m\u00E9todo de pago por favor registre una\n tarjeta presionando el bot\u00F3n de <span class=\"text-decoration-underline fs-6\"> Nueva tarjeta</span>\n </h6>\n </div>\n </ng-template>\n </div>\n <div class=\"d-flex flex-row w-full justify-content-center\">\n <button class=\"btn comprar text-white\" data-bs-toggle=\"modal\" data-bs-target=\"#catastro\"\n (click)=\"getProcessId(); openModal()\">Nueva Tarjeta</button>\n </div>\n</div>\n\n<div class=\"modal\" tabindex=\"-1\" id=\"catastro\">\n <div class=\"modal-dialog\">\n <div class=\"modal-content\">\n <div class=\"modal-header\">\n <!-- <h5 class=\"modal-title\">Modal title</h5> -->\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"\n (click)=\"closeModal()\"></button>\n </div>\n <div class=\"modal-body d-flex flex-column justify-content-center align-items-center\">\n <ng-container *ngIf=\"infoPreview; else iframe\">\n <div class=\"alert alert-warning \" role=\"alert\">\n <p class=\"mb-0\">Estimado usuario,</p>\n <p> A continuaci\u00F3n usted pasar\u00E1 por \u00FAnica vez por un proceso de\n validaci\u00F3n con preguntas de seguridad. Para iniciar favor tener en\n cuenta las siguientes recomendaciones:</p>\n <ol class=\"list-group list-group-numbered\">\n <li class=\"list-group-item list-group-item-warning\">Verifique su n\u00FAmero de c\u00E9dula de\n identidad</li>\n <li class=\"list-group-item list-group-item-warning\">Tenga a mano sus tarjetas de cr\u00E9dito y\n d\u00E9bito activas</li>\n <li class=\"list-group-item list-group-item-warning\">Verifique el monto y lugar de sus\n \u00FAltimas compras en\n comercios o extracciones en cajeros</li>\n </ol>\n </div>\n <div class=\"d-flex flex-row w-full justify-content-center\">\n <a class=\"cursor-pointer text-dark fs-xs\" (click)=\"skipInfoPreview()\">Saltar</a>\n </div>\n </ng-container>\n <ng-template #iframe>\n <iframe *ngIf=\"url; else loadingView\" [src]=\"url\" frameborder=\"0\" class=\"iframeStyle\"></iframe>\n </ng-template>\n </div>\n </div>\n </div>\n</div>\n\n\n<!-- Modal -->\n<div class=\"modal fade\" id=\"modalCuotas\" tabindex=\"-1\" aria-labelledby=\"exampleModalLabel\" aria-hidden=\"true\">\n <div class=\"modal-dialog modal-dialog-centered modal-sm\">\n <div class=\"modal-content\">\n <div class=\"modal-header\">\n <h5 class=\"modal-title\" id=\"exampleModalLabel\">Elija el n\u00FAmero de cuotas</h5>\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\n </div>\n <div class=\"modal-body\">\n <select class=\"form-select\" aria-label=\"Default select example\"\n (change)=\"setNumberOfPayments($event.target.value)\">\n <option selected disabled>Selecciones la cantidad de cuotas</option>\n <option value=\"1\">1 cuota</option>\n <option value=\"3\">3 cuotas</option>\n <option value=\"6\">6 cuotas</option>\n <option value=\"12\">12 cuotas</option>\n </select>\n </div>\n <div class=\"modal-footer\" *ngIf=\"canPay()\">\n <button type=\"button\" class=\"btn comprar text-white\" data-bs-dismiss=\"modal\"\n (click)=\"toPay(currentCardID)\">Pagar</button>\n </div>\n </div>\n </div>\n</div>\n\n<ng-template #loadingView>\n <div>\n <app-loading-inline-ec></app-loading-inline-ec>\n </div>\n</ng-template>\n\n<ng-template #buttonLoading>\n <button type=\"button\" class=\"btn comprar text-white\" data-bs-dismiss=\"modal\"> \n <app-loading-inline-ec></app-loading-inline-ec>\n </button>\n</ng-template>",
@@ -19583,7 +19857,7 @@ BancardCatastroEcComponent = __decorate$1Y([
19583
19857
  })
19584
19858
  ], BancardCatastroEcComponent);
19585
19859
 
19586
- var __decorate$1Z = (this && this.__decorate) || function (decorators, target, key, desc) {
19860
+ var __decorate$1_ = (this && this.__decorate) || function (decorators, target, key, desc) {
19587
19861
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
19588
19862
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
19589
19863
  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;
@@ -19780,13 +20054,13 @@ CookiesService.ctorParameters = () => [
19780
20054
  { type: Injector }
19781
20055
  ];
19782
20056
  CookiesService.ɵprov = ɵɵdefineInjectable({ factory: function CookiesService_Factory() { return new CookiesService(ɵɵinject(INJECTOR)); }, token: CookiesService, providedIn: "root" });
19783
- CookiesService = __decorate$1Z([
20057
+ CookiesService = __decorate$1_([
19784
20058
  Injectable({
19785
20059
  providedIn: 'root'
19786
20060
  })
19787
20061
  ], CookiesService);
19788
20062
 
19789
- var __decorate$1_ = (this && this.__decorate) || function (decorators, target, key, desc) {
20063
+ var __decorate$1$ = (this && this.__decorate) || function (decorators, target, key, desc) {
19790
20064
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
19791
20065
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
19792
20066
  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;
@@ -19879,10 +20153,10 @@ CookiesEcComponent.ctorParameters = () => [
19879
20153
  { type: Constants },
19880
20154
  { type: CookiesService }
19881
20155
  ];
19882
- __decorate$1_([
20156
+ __decorate$1$([
19883
20157
  Input()
19884
20158
  ], CookiesEcComponent.prototype, "templates", void 0);
19885
- CookiesEcComponent = __decorate$1_([
20159
+ CookiesEcComponent = __decorate$1$([
19886
20160
  Component({
19887
20161
  selector: 'app-cookies-ec',
19888
20162
  template: "<ng-container *ngIf=\"ready\">\n <ng-container [ngSwitch]=\"cookies.format.type\">\n <ng-container *ngSwitchCase=\"'toast'\">\n <ng-template #toastEcTemplate>\n <app-toast-cookies-ec [cookies]=\"cookies\" [acceptCookies]=\"acceptCookies\"></app-toast-cookies-ec>\n </ng-template>\n <ng-container [ngTemplateOutlet]=\"templates && templates.toast? templates.toast : toastEcTemplate\"\n [ngTemplateOutletContext]=\"{cookies:cookies, acceptCookies:acceptCookies}\"></ng-container>\n </ng-container>\n <ng-container *ngSwitchCase=\"'modal'\">\n <ng-template #modalEcTemplate>\n <app-modal-cookies-ec [cookies]=\"cookies\" [acceptCookies]=\"acceptCookies\"></app-modal-cookies-ec>\n </ng-template>\n <ng-container [ngTemplateOutlet]=\"templates && templates.modal? templates.modal : modalEcTemplate\"\n [ngTemplateOutletContext]=\"{cookies:cookies, acceptCookies:acceptCookies}\"></ng-container>\n </ng-container>\n <ng-container *ngSwitchCase=\"'sidebar'\">\n <ng-template #sidebarEcTemplate>\n <app-sidebar-cookies-ec [cookies]=\"cookies\" [acceptCookies]=\"acceptCookies\"></app-sidebar-cookies-ec>\n </ng-template>\n <ng-container [ngTemplateOutlet]=\"templates && templates.sidebar? templates.sidebar : sidebarEcTemplate\"\n [ngTemplateOutletContext]=\"{cookies:cookies, acceptCookies:acceptCookies}\"></ng-container>\n </ng-container>\n </ng-container>\n <ng-template #configEcTemplate>\n <app-modal-config-ec [cookies]=\"cookies\" [cookiesToSave]=\"cookiesToSave\"\n [cookiesFunctions]=\"cookiesFunctions\"></app-modal-config-ec>\n </ng-template>\n <ng-container [ngTemplateOutlet]=\"templates && templates.config ? templates.config : configEcTemplate\"\n [ngTemplateOutletContext]=\"{cookies:cookies, cookiesToSave:cookiesToSave, cookiesFunctions:cookiesFunctions}\"></ng-container>\n</ng-container>",
@@ -19890,7 +20164,7 @@ CookiesEcComponent = __decorate$1_([
19890
20164
  })
19891
20165
  ], CookiesEcComponent);
19892
20166
 
19893
- var __decorate$1$ = (this && this.__decorate) || function (decorators, target, key, desc) {
20167
+ var __decorate$20 = (this && this.__decorate) || function (decorators, target, key, desc) {
19894
20168
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
19895
20169
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
19896
20170
  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;
@@ -19908,13 +20182,13 @@ let SidebarCookiesEcComponent = class SidebarCookiesEcComponent {
19908
20182
  }, 2000);
19909
20183
  }
19910
20184
  };
19911
- __decorate$1$([
20185
+ __decorate$20([
19912
20186
  Input()
19913
20187
  ], SidebarCookiesEcComponent.prototype, "cookies", void 0);
19914
- __decorate$1$([
20188
+ __decorate$20([
19915
20189
  Input()
19916
20190
  ], SidebarCookiesEcComponent.prototype, "acceptCookies", void 0);
19917
- SidebarCookiesEcComponent = __decorate$1$([
20191
+ SidebarCookiesEcComponent = __decorate$20([
19918
20192
  Component({
19919
20193
  selector: 'app-sidebar-cookies-ec',
19920
20194
  template: "<ng-container *ngIf=\"cookies.format.position == 'start' || cookies.format.position == 'end'; else startend\">\n <div [class]=\"'offcanvas offcanvas-'+cookies.format.position\"\n [attr.data-bs-scroll]=\"(cookies.format.scrolling != undefined) ? cookies.format.scrolling : true\"\n [attr.data-bs-backdrop]=\"(cookies.format.backdrop != undefined) ? cookies.format.backdrop : false\" tabindex=\"-1\"\n id=\"offcanvasCookies\" aria-labelledby=\"offcanvasScrollingLabel\" style=\"height: 20%\">\n <div class=\"offcanvas-header\">\n <h5 *ngIf=\"cookies.title\" class=\"offcanvas-title\" id=\"offcanvasScrollingLabel\">{{cookies.title}}</h5>\n <button type=\"button\" class=\"btn-close text-reset\" data-bs-dismiss=\"offcanvas\" aria-label=\"Close\"></button>\n </div>\n <div class=\"offcanvas-body d-flex align-items-start\">\n <div class=\"row d-flex flex-row justify-content-between cookies-body\">\n <div class=\"col-lg-12\">\n <p [innerHtml]=\"cookies.message | ecSanitizerHtml\"></p>\n </div>\n <div class=\"col-lg-12 d-flex flex-row justify-content-center align-items-center\">\n <button class=\"btn btn-primary mx-2\" *ngIf=\"cookies.cookies && cookies.cookies.length > 0\"\n data-bs-toggle=\"modal\" data-bs-target=\"#config\">{{cookies.others.btnConfig}}</button>\n <button class=\"btn btn-primary mx-2\" data-bs-dismiss=\"offcanvas\" (click)=\"acceptCookies()\">{{ cookies.others.btnAccept }}</button>\n </div>\n </div>\n </div>\n </div>\n</ng-container>\n\n<ng-template #startend>\n <div [class]=\"'offcanvas offcanvas-'+(cookies.format.position ? cookies.format.position : 'bottom')\"\n [attr.data-bs-scroll]=\"(cookies.format.scrolling != undefined) ? cookies.format.scrolling : true\"\n [attr.data-bs-backdrop]=\"(cookies.format.backdrop != undefined) ? cookies.format.backdrop : false\" tabindex=\"-1\"\n id=\"offcanvasCookies\" aria-labelledby=\"offcanvasScrollingLabel\" style=\"height: 20%\">\n <div class=\"offcanvas-header\">\n <h5 *ngIf=\"cookies.title\" class=\"offcanvas-title\" id=\"offcanvasScrollingLabel\">{{cookies.title}}</h5>\n <button type=\"button\" class=\"btn-close text-reset\" data-bs-dismiss=\"offcanvas\" aria-label=\"Close\"></button>\n </div>\n <div class=\"offcanvas-body d-flex align-items-center\">\n <div class=\"row d-flex flex-row justify-content-between cookies-body w-100\">\n <div class=\"col-lg-9\">\n <p [innerHtml]=\"cookies.message\"></p>\n </div>\n <div class=\"col-lg-3 d-flex flex-row justify-content-center align-items-center\" *ngIf=\"cookies.others\">\n <button class=\"btn btn-primary mx-2\" *ngIf=\"cookies.cookies && cookies.cookies.length > 0\"\n data-bs-toggle=\"modal\" data-bs-target=\"#config\">{{cookies.others.btnConfig}}</button>\n <button class=\"btn btn-primary mx-2\"\n (click)=\"acceptCookies()\" data-bs-dismiss=\"offcanvas\">{{ cookies.others.btnAccept }}</button>\n </div>\n </div>\n </div>\n </div>\n</ng-template>\n",
@@ -19922,7 +20196,7 @@ SidebarCookiesEcComponent = __decorate$1$([
19922
20196
  })
19923
20197
  ], SidebarCookiesEcComponent);
19924
20198
 
19925
- var __decorate$20 = (this && this.__decorate) || function (decorators, target, key, desc) {
20199
+ var __decorate$21 = (this && this.__decorate) || function (decorators, target, key, desc) {
19926
20200
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
19927
20201
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
19928
20202
  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;
@@ -19940,13 +20214,13 @@ let ModalCookiesEcComponent = class ModalCookiesEcComponent {
19940
20214
  }, 2000);
19941
20215
  }
19942
20216
  };
19943
- __decorate$20([
20217
+ __decorate$21([
19944
20218
  Input()
19945
20219
  ], ModalCookiesEcComponent.prototype, "cookies", void 0);
19946
- __decorate$20([
20220
+ __decorate$21([
19947
20221
  Input()
19948
20222
  ], ModalCookiesEcComponent.prototype, "acceptCookies", void 0);
19949
- ModalCookiesEcComponent = __decorate$20([
20223
+ ModalCookiesEcComponent = __decorate$21([
19950
20224
  Component({
19951
20225
  selector: 'app-modal-cookies-ec',
19952
20226
  template: "<!-- Modal -->\n<div class=\"modal fade\" id=\"modal-cookies\" tabindex=\"-1\" aria-labelledby=\"exampleModalLabel\" aria-hidden=\"true\">\n <div [class]=\"'modal-dialog modal-dialog-centered '+(cookies.format.size ? 'modal-'+cookies.format.size : '')\">\n <div class=\"modal-content\">\n <div class=\"modal-header\">\n <h5 *ngIf=\"cookies.title\" class=\"modal-title\" id=\"exampleModalLabel\">{{cookies.title}}</h5>\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\n </div>\n <div class=\"modal-body\">\n <div class=\"row\">\n <div class=\"col-md-12\">\n <p [innerHtml]=\"cookies.message\"></p>\n </div>\n </div>\n </div>\n <div class=\"modal-footer d-flex justify-content-between\" *ngIf=\"cookies.others\">\n <button type=\"button\" class=\"btn btn-primary\" *ngIf=\"cookies.cookies && cookies.cookies.length > 0\"\n data-bs-toggle=\"modal\" data-bs-target=\"#config\">{{cookies.others.btnConfig}}</button>\n <button type=\"button\" class=\"btn btn-primary\" data-bs-dismiss=\"modal\" (click)=\"acceptCookies()\">{{cookies.others.btnAccept}}</button>\n </div>\n </div>\n </div>\n</div>\n",
@@ -19954,7 +20228,7 @@ ModalCookiesEcComponent = __decorate$20([
19954
20228
  })
19955
20229
  ], ModalCookiesEcComponent);
19956
20230
 
19957
- var __decorate$21 = (this && this.__decorate) || function (decorators, target, key, desc) {
20231
+ var __decorate$22 = (this && this.__decorate) || function (decorators, target, key, desc) {
19958
20232
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
19959
20233
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
19960
20234
  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;
@@ -19973,13 +20247,13 @@ let ToastCookiesEcComponent = class ToastCookiesEcComponent {
19973
20247
  }, 2000);
19974
20248
  }
19975
20249
  };
19976
- __decorate$21([
20250
+ __decorate$22([
19977
20251
  Input()
19978
20252
  ], ToastCookiesEcComponent.prototype, "cookies", void 0);
19979
- __decorate$21([
20253
+ __decorate$22([
19980
20254
  Input()
19981
20255
  ], ToastCookiesEcComponent.prototype, "acceptCookies", void 0);
19982
- ToastCookiesEcComponent = __decorate$21([
20256
+ ToastCookiesEcComponent = __decorate$22([
19983
20257
  Component({
19984
20258
  selector: 'app-toast-cookies-ec',
19985
20259
  template: "<div [class]=\"'position-fixed p-3 '+(cookies.format?.positionY ? cookies.format.positionY : 'top-0')+' '+(cookies.format?.positionX ? cookies.format.positionX : 'start-0')\" style=\"z-index: 9999\">\n <div id=\"cookieToast\" class=\"toast\" role=\"alert\" aria-live=\"assertive\" aria-atomic=\"true\">\n <div class=\"toast-header bg-primary\">\n <!-- <img src=\"...\" class=\"rounded me-2\" alt=\"...\"> -->\n <strong *ngIf=\"cookies.title\" class=\"me-auto\">{{cookies.title}}</strong>\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"toast\" aria-label=\"Close\"></button>\n </div>\n <div class=\"toast-body\">\n <p [innerHtml]=\"cookies.message\"></p>\n </div>\n <!-- <div class=\"toast-footer\" *ngIf=\"cookies.others\">\n <button type=\"button\" class=\"btn btn-primary\" *ngIf=\"cookies.cookies && cookies.cookies.length > 0\"\n data-bs-toggle=\"modal\" data-bs-target=\"#config\">{{cookies.others.btnConfig}}</button>\n <button type=\"button\" class=\"btn btn-primary\" (click)=\"acceptCookies()\">{{cookies.others.btnAccept}}</button>\n </div> -->\n </div>\n</div>",
@@ -19987,7 +20261,7 @@ ToastCookiesEcComponent = __decorate$21([
19987
20261
  })
19988
20262
  ], ToastCookiesEcComponent);
19989
20263
 
19990
- var __decorate$22 = (this && this.__decorate) || function (decorators, target, key, desc) {
20264
+ var __decorate$23 = (this && this.__decorate) || function (decorators, target, key, desc) {
19991
20265
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
19992
20266
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
19993
20267
  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;
@@ -20000,16 +20274,16 @@ let ModalConfigEcComponent = class ModalConfigEcComponent {
20000
20274
  ngOnInit() {
20001
20275
  }
20002
20276
  };
20003
- __decorate$22([
20277
+ __decorate$23([
20004
20278
  Input()
20005
20279
  ], ModalConfigEcComponent.prototype, "cookies", void 0);
20006
- __decorate$22([
20280
+ __decorate$23([
20007
20281
  Input()
20008
20282
  ], ModalConfigEcComponent.prototype, "cookiesToSave", void 0);
20009
- __decorate$22([
20283
+ __decorate$23([
20010
20284
  Input()
20011
20285
  ], ModalConfigEcComponent.prototype, "cookiesFunctions", void 0);
20012
- ModalConfigEcComponent = __decorate$22([
20286
+ ModalConfigEcComponent = __decorate$23([
20013
20287
  Component({
20014
20288
  selector: 'app-modal-config-ec',
20015
20289
  template: "<!-- Modal -->\n<div class=\"modal fade\" id=\"config\" tabindex=\"-1\" aria-labelledby=\"configModalLabel\" aria-hidden=\"true\">\n <div class=\"modal-dialog modal-dialog-centered modal-lg\">\n <div class=\"modal-content\">\n <div class=\"modal-header\">\n <h5 *ngIf=\"cookies.title\" class=\"modal-title\" id=\"configModalLabel\">{{cookies.title}}</h5>\n <button *ngIf=\"cookies.format.type == 'modal'; else close\" type=\"button\" class=\"btn-close\" data-bs-toggle=\"modal\" data-bs-target=\"#modal-cookies\" aria-label=\"Close\"></button>\n <ng-template #close>\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\n </ng-template>\n </div>\n <div class=\"modal-body px-0 d-flex justify-content-center\">\n <!--Vertical Pill-->\n <div class=\"row w-100\">\n <div class=\"col-12 col-md-4 p-0 m-0\">\n <div class=\"nav flex-column nav-pills me-3\" id=\"v-pills-tab\" role=\"tablist\" aria-orientation=\"vertical\">\n <button *ngFor=\"let cookie of cookies.cookies; let x = index\"\n [class]=\"'btn rounded-0 btn-primary '+ (x==0 ? 'active' : '')\"\n [id]=\"'v-pills-'+cookie.name+'-tab'\" data-bs-toggle=\"pill\"\n [attr.data-bs-target]=\"'#v-pills-'+cookie.name\" type=\"button\" role=\"tab\"\n [attr.aria-controls]=\"'v-pills-'+cookie.name\" [attr.aria-selected]=\"x==0\">\n {{cookie.name.replaceAll('-',' ')}}\n </button>\n </div>\n </div>\n <div class=\"col-12 col-md-8 p-0 m-0\">\n <div class=\"tab-content\" id=\"v-pills-tabContent\">\n <div *ngFor=\"let cookie of cookies.cookies; let x = index\"\n [class]=\"'tab-pane fade '+ (x==0 ? 'show active ' : '')\" [id]=\"'v-pills-'+cookie.name\"\n role=\"tabpanel\" [attr.aria-labelledby]=\"'v-pills-'+cookie.name+'-tab'\">\n <div class=\"d-flex justify-content-between w-100\">\n <h5 class=\"title-cookie\">{{cookie.name.replaceAll('-',' ')}}</h5>\n <div class=\"form-check\" *ngIf=\"checkCookie(cookie.name) as info\">\n <input class=\"form-check-input\" type=\"radio\" [name]=\"'flexRadio'+x\" [id]=\"'flexRadioDefault'+x\"\n [checked]=\"info.enabled\" (click)=\"cookiesFunctions.toggle(cookie.name)\">\n </div>\n </div>\n \n <div class=\"h-100 overflow-scroll text-content\">\n <p class=\"text-cookie\">{{cookie.message}}</p>\n </div>\n \n </div>\n </div>\n </div>\n </div>\n <!--End-->\n </div>\n <div class=\"modal-footer d-flex justify-content-between\">\n <ng-container *ngIf=\"cookies.format.type == 'modal'; else default\">\n <button type=\"button\" class=\"btn btn-secondary\" data-bs-toggle=\"modal\" data-bs-target=\"#modal-cookies\">{{cookies.others.btnSave}}</button>\n <button type=\"button\" class=\"btn btn-primary\" data-bs-toggle=\"modal\" data-bs-target=\"#modal-cookies\"\n (click)=\"cookiesFunctions.acceptAll()\">{{cookies.others.btnAll}}</button>\n </ng-container>\n <ng-template #default>\n <button type=\"button\" class=\"btn btn-secondary\" data-bs-dismiss=\"modal\">{{cookies.others.btnSave}}</button>\n <button type=\"button\" class=\"btn btn-primary\" data-bs-dismiss=\"modal\"\n (click)=\"cookiesFunctions.acceptAll()\">{{cookies.others.btnAll}}</button>\n </ng-template>\n </div>\n </div>\n </div>\n</div>\n",
@@ -20017,7 +20291,7 @@ ModalConfigEcComponent = __decorate$22([
20017
20291
  })
20018
20292
  ], ModalConfigEcComponent);
20019
20293
 
20020
- var __decorate$23 = (this && this.__decorate) || function (decorators, target, key, desc) {
20294
+ var __decorate$24 = (this && this.__decorate) || function (decorators, target, key, desc) {
20021
20295
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
20022
20296
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
20023
20297
  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;
@@ -20184,28 +20458,28 @@ BambooEcComponent.ctorParameters = () => [
20184
20458
  { type: Injector },
20185
20459
  { type: CartService }
20186
20460
  ];
20187
- __decorate$23([
20461
+ __decorate$24([
20188
20462
  Input()
20189
20463
  ], BambooEcComponent.prototype, "paymentServiceInst", void 0);
20190
- __decorate$23([
20464
+ __decorate$24([
20191
20465
  Input()
20192
20466
  ], BambooEcComponent.prototype, "method", void 0);
20193
- __decorate$23([
20467
+ __decorate$24([
20194
20468
  Input()
20195
20469
  ], BambooEcComponent.prototype, "total_amount", void 0);
20196
- __decorate$23([
20470
+ __decorate$24([
20197
20471
  Input()
20198
20472
  ], BambooEcComponent.prototype, "allData", void 0);
20199
- __decorate$23([
20473
+ __decorate$24([
20200
20474
  Input()
20201
20475
  ], BambooEcComponent.prototype, "user_data", void 0);
20202
- __decorate$23([
20476
+ __decorate$24([
20203
20477
  Output()
20204
20478
  ], BambooEcComponent.prototype, "ready", void 0);
20205
- __decorate$23([
20479
+ __decorate$24([
20206
20480
  ViewChild('template')
20207
20481
  ], BambooEcComponent.prototype, "template", void 0);
20208
- BambooEcComponent = __decorate$23([
20482
+ BambooEcComponent = __decorate$24([
20209
20483
  Component({
20210
20484
  selector: 'app-bamboo-ec',
20211
20485
  template: "<div class=\"text-center\">\n <h3>Continuar con el pago en Bamboo</h3>\n <p *ngIf=\"method\" class=\"px-5\">{{ method?.description }}</p>\n <p *ngIf=\"method\" class=\"px-5\">{{ method?.instructions }}</p>\n <ng-container *ngIf=\"!loading ; else loadingUrl\">\n <button class=\"btn btn-outline-secondary comprar\" (click)=\"iniciar()\">Pagar</button>\n </ng-container>\n</div>\n\n<ng-template #template>\n <div class=\"modal-content\">\n <div class=\"modal-header\">\n <h5 class=\"modal-title\">Modal title</h5>\n <button type=\"button\" class=\"btn-close\" (click)=\"clickClose()\"></button>\n </div>\n <div class=\"modal-body d-flex justify-content-center\" *ngIf=\"url\">\n <iframe [src]=\"url\" frameborder=\"0\" class=\"iframeStyle\"></iframe>\n </div>\n <!-- <div class=\"modal-footer\">\n <button type=\"button\" class=\"btn btn-secondary\" data-bs-dismiss=\"modal\">Close</button>\n <button type=\"button\" class=\"btn btn-primary\">Save changes</button>\n </div> -->\n </div>\n</ng-template>\n\n<ng-template #loadingUrl>\n <div class=\"d-flex flex-column jusitfy-content-center align-items-center mt-2\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n</ng-template>",
@@ -20213,7 +20487,7 @@ BambooEcComponent = __decorate$23([
20213
20487
  })
20214
20488
  ], BambooEcComponent);
20215
20489
 
20216
- var __decorate$24 = (this && this.__decorate) || function (decorators, target, key, desc) {
20490
+ var __decorate$25 = (this && this.__decorate) || function (decorators, target, key, desc) {
20217
20491
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
20218
20492
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
20219
20493
  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;
@@ -20426,7 +20700,7 @@ SidebarEcComponent.ctorParameters = () => [
20426
20700
  { type: ToastService },
20427
20701
  { type: ChannelConfigService }
20428
20702
  ];
20429
- SidebarEcComponent = __decorate$24([
20703
+ SidebarEcComponent = __decorate$25([
20430
20704
  Component({
20431
20705
  selector: 'app-sidebar-ec',
20432
20706
  template: "",
@@ -20434,7 +20708,7 @@ SidebarEcComponent = __decorate$24([
20434
20708
  })
20435
20709
  ], SidebarEcComponent);
20436
20710
 
20437
- var __decorate$25 = (this && this.__decorate) || function (decorators, target, key, desc) {
20711
+ var __decorate$26 = (this && this.__decorate) || function (decorators, target, key, desc) {
20438
20712
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
20439
20713
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
20440
20714
  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;
@@ -20565,22 +20839,22 @@ PlaceToPayEcComponent.ctorParameters = () => [
20565
20839
  { type: CartService },
20566
20840
  { type: ActivatedRoute }
20567
20841
  ];
20568
- __decorate$25([
20842
+ __decorate$26([
20569
20843
  Input()
20570
20844
  ], PlaceToPayEcComponent.prototype, "method", void 0);
20571
- __decorate$25([
20845
+ __decorate$26([
20572
20846
  Input()
20573
20847
  ], PlaceToPayEcComponent.prototype, "total_amount", void 0);
20574
- __decorate$25([
20848
+ __decorate$26([
20575
20849
  Input()
20576
20850
  ], PlaceToPayEcComponent.prototype, "paymentServiceInst", void 0);
20577
- __decorate$25([
20851
+ __decorate$26([
20578
20852
  Input()
20579
20853
  ], PlaceToPayEcComponent.prototype, "allData", void 0);
20580
- __decorate$25([
20854
+ __decorate$26([
20581
20855
  Output()
20582
20856
  ], PlaceToPayEcComponent.prototype, "ready", void 0);
20583
- PlaceToPayEcComponent = __decorate$25([
20857
+ PlaceToPayEcComponent = __decorate$26([
20584
20858
  Component({
20585
20859
  selector: 'app-place-to-pay-ec',
20586
20860
  template: "<div class=\"text-center\">\n <ng-container *ngIf=\"url; else loadingUrl\">\n <ng-container *ngIf=\"!loading; else loadingTemp\">\n <button (click)=\"iniciar()\" class=\"btn btn-outline-secondary rounded-0 comprar mt-3\">\n {{ buttonText }}\n </button>\n\n <!-- Mensaje de intento previo fallido -->\n <div *ngIf=\"hasPreviousFailure\" class=\"alert alert-danger mt-3\">\n El pago del pedido con n\u00FAmero de orden {{ cart.number }} no se pudo realizar el {{ previousFailureDate }}\n por un monto de {{ previousFailureAmount | ecCurrencySymbol }}.\n </div>\n </ng-container>\n </ng-container>\n</div>\n\n<ng-template #loadingUrl>\n <div class=\"d-flex flex-column justify-content-center align-items-center mt-2\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n</ng-template>\n\n<ng-template #loadingTemp>\n <div class=\"d-flex flex-column justify-content-center align-items-center mt-2\">\n <h3>Procesando el pago por Place to Pay</h3>\n <h5>Recuerde hacer click en \"Volver al sitio\" desde Place to Pay para finalizar la compra.</h5>\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n <div class=\"container-fluid\">\n <div class=\"row\">\n <div class=\"col-5\">\n <hr>\n </div>\n <div class=\"col-2 text-center\">\n <label>o</label>\n </div>\n <div class=\"col-5\">\n <hr>\n </div>\n </div>\n </div>\n <div class=\"d-flex flex-column justify-content-center align-items-center mt-2\">\n <button (click)=\"clickClose()\" class=\"btn btn-outline-secondary rounded-0 comprar\">Cancelar pago</button>\n </div>\n</ng-template>",
@@ -20588,7 +20862,7 @@ PlaceToPayEcComponent = __decorate$25([
20588
20862
  })
20589
20863
  ], PlaceToPayEcComponent);
20590
20864
 
20591
- var __decorate$26 = (this && this.__decorate) || function (decorators, target, key, desc) {
20865
+ var __decorate$27 = (this && this.__decorate) || function (decorators, target, key, desc) {
20592
20866
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
20593
20867
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
20594
20868
  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;
@@ -20620,10 +20894,10 @@ let BlockRenderEcComponent = class BlockRenderEcComponent extends ComponentHelpe
20620
20894
  BlockRenderEcComponent.ctorParameters = () => [
20621
20895
  { type: Constants }
20622
20896
  ];
20623
- __decorate$26([
20897
+ __decorate$27([
20624
20898
  Input()
20625
20899
  ], BlockRenderEcComponent.prototype, "block", void 0);
20626
- BlockRenderEcComponent = __decorate$26([
20900
+ BlockRenderEcComponent = __decorate$27([
20627
20901
  Component({
20628
20902
  selector: 'app-block-render-ec',
20629
20903
  template: "<!-- BANNER -->\n<ng-container *ngIf=\"block?.contentType === 'banner'\">\n <!-- full -->\n <app-block-banner-full-ec *ngIf=\"block?.design === 'full'\" class=\"col-12\" [banners]=\"block?.banners\" [margin]=\"0\"\n [meta]=\"block\">\n </app-block-banner-full-ec>\n\n <!-- boxes -->\n <app-block-banner-boxes-ec *ngIf=\"block?.design === 'boxes'\" class=\"col-12\" [banners]=\"block?.banners\"\n [meta]=\"block\">\n </app-block-banner-boxes-ec>\n</ng-container>\n\n<!-- HTML -->\n<app-block-html-ec *ngIf=\"block?.contentType === 'html'\" class=\"col-12\" [html_content]=\"getHTMLContent(block)\">\n</app-block-html-ec>\n\n<!-- PRODUCTS -->\n<app-block-products-ec *ngIf=\"block?.contentType === 'products'\"\n [class]=\"block.styles && block.styles?.items ? ('col-sm-' + block.styles?.items.sm + ' col-md-' + block.styles?.items.md + ' col-lg-' + block.styles?.items.lg) : ' col-12'\"\n [products]=\"block.products.items\" [meta]=\"block\">\n</app-block-products-ec>\n<!--Block Products-->\n<ng-template #appBlockProductsEc let-block=\"block\">\n <app-block-products-ec\n [class]=\"block.styles && block.styles?.items ? ('col-sm-' + block.styles?.items.sm + ' col-md-' + block.styles?.items.md + ' col-lg-' + block.styles?.items.lg) : ' col-12'\"\n [products]=\"block.products.items\" [meta]=\"block\" [appProduct]=\"appProduct\">\n </app-block-products-ec>\n</ng-template>\n\n<ng-container *ngIf=\"block?.contentType === 'products'\">\n {{block | json}}\n</ng-container>\n<ng-container *ngIf=\"block?.contentType === 'products'\"\n [ngTemplateOutlet]=\"templates && templates.appBlockProducts ? templates.appBlockProducts : appBlockProductsEc\"\n [ngTemplateOutletContext]=\"{block:block}\"></ng-container>\n<!--End Blocks Products-->\n\n<!-- CONTACT / NEWSLETTER -->\n<ng-container *ngIf=\"block?.contentType === 'contact_form'\">\n <app-contact-form-news-ec *ngIf=\"isNewsletter(block)\" [block]=\"block?.contactForm\">\n </app-contact-form-news-ec>\n\n <app-block-form-contact-ec *ngIf=\"!isNewsletter(block)\" [block]=\"block?.contactForm\">\n </app-block-form-contact-ec>\n</ng-container>",
@@ -20632,7 +20906,7 @@ BlockRenderEcComponent = __decorate$26([
20632
20906
  })
20633
20907
  ], BlockRenderEcComponent);
20634
20908
 
20635
- var __decorate$27 = (this && this.__decorate) || function (decorators, target, key, desc) {
20909
+ var __decorate$28 = (this && this.__decorate) || function (decorators, target, key, desc) {
20636
20910
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
20637
20911
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
20638
20912
  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;
@@ -20853,22 +21127,22 @@ class UnitPromotionPriceEcComponent {
20853
21127
  UnitPromotionPriceEcComponent.ctorParameters = () => [
20854
21128
  { type: CartService }
20855
21129
  ];
20856
- __decorate$27([
21130
+ __decorate$28([
20857
21131
  Input()
20858
21132
  ], UnitPromotionPriceEcComponent.prototype, "item", void 0);
20859
- __decorate$27([
21133
+ __decorate$28([
20860
21134
  Input()
20861
21135
  ], UnitPromotionPriceEcComponent.prototype, "mobile", void 0);
20862
- __decorate$27([
21136
+ __decorate$28([
20863
21137
  HostListener('document:click')
20864
21138
  ], UnitPromotionPriceEcComponent.prototype, "handleDocumentClick", null);
20865
- __decorate$27([
21139
+ __decorate$28([
20866
21140
  HostListener('window:resize')
20867
21141
  ], UnitPromotionPriceEcComponent.prototype, "handleWindowResize", null);
20868
- __decorate$27([
21142
+ __decorate$28([
20869
21143
  HostListener('window:scroll')
20870
21144
  ], UnitPromotionPriceEcComponent.prototype, "handleWindowScroll", null);
20871
- UnitPromotionPriceEcComponent = __decorate$27([
21145
+ UnitPromotionPriceEcComponent = __decorate$28([
20872
21146
  Component({
20873
21147
  selector: 'app-unit-promotion-price-ec',
20874
21148
  template: "<div\n class=\"ec-unit-promotion-price\"\n [class.ec-unit-promotion-price--mobile]=\"mobile\"\n [class.ec-unit-promotion-price--desktop]=\"!mobile\"\n>\n <div class=\"ec-unit-promotion-price__detail\">\n <div\n class=\"ec-unit-promotion-price__current-wrapper\"\n #priceAnchor\n (mouseenter)=\"handleMouseEnter(priceAnchor)\"\n (mouseleave)=\"handleMouseLeave()\"\n (click)=\"handlePriceClick(priceAnchor, $event)\"\n >\n <span\n class=\"ec-unit-promotion-price__current\"\n [class.ec-unit-promotion-price__current--clickable]=\"hasUnitPromotions() && !supportsHover\"\n >\n <strong class=\"ec-unit-promotion-price__value\">{{ getDisplayedUnitPrice() | ecCurrencySymbol }}</strong>\n\n <button\n *ngIf=\"hasUnitPromotions()\"\n type=\"button\"\n class=\"ec-unit-promotion-price__trigger\"\n [attr.aria-expanded]=\"isSummaryOpen()\"\n aria-label=\"Ver detalle de promociones unitarias\"\n (click)=\"toggleSummary(priceAnchor, $event)\"\n >\n <i class=\"bi bi-info-circle ec-unit-promotion-price__icon\"></i>\n </button>\n </span>\n\n <ng-container *ngIf=\"supportsHover && isSummaryOpen()\">\n <ng-container *ngTemplateOutlet=\"summaryTemplate\"></ng-container>\n </ng-container>\n </div>\n </div>\n\n <ng-container *ngIf=\"mobile && !supportsHover && isSummaryOpen()\">\n <button\n type=\"button\"\n class=\"ec-unit-promotion-price__backdrop\"\n aria-label=\"Cerrar detalle de promociones unitarias\"\n (click)=\"closeSummary()\"\n ></button>\n\n <ng-container *ngTemplateOutlet=\"summaryTemplate\"></ng-container>\n </ng-container>\n</div>\n\n<ng-template #summaryTemplate>\n <div\n class=\"ec-unit-promotion-price__summary\"\n [class.ec-unit-promotion-price__summary--mobile]=\"mobile\"\n [ngStyle]=\"summaryStyles\"\n (click)=\"stopSummaryEvent($event)\"\n >\n <div class=\"ec-unit-promotion-price__row ec-unit-promotion-price__row--original\">\n <span>Precio original</span>\n <span>{{ getOriginalUnitPrice() | ecCurrencySymbol }}</span>\n </div>\n\n <div class=\"ec-unit-promotion-price__row\" *ngFor=\"let promotion of getUnitPromotions()\">\n <span>{{ promotion.name }}</span>\n <span>{{ promotion.amount | ecCurrencySymbol }}</span>\n </div>\n\n <div class=\"ec-unit-promotion-price__divider\"></div>\n\n <div class=\"ec-unit-promotion-price__row ec-unit-promotion-price__row--total\">\n <span>Total descuentos</span>\n <span>{{ getUnitPromotionTotal() | ecCurrencySymbol }}</span>\n </div>\n\n <div class=\"ec-unit-promotion-price__row ec-unit-promotion-price__row--final\">\n <span>{{ getUnitPromotionFinalPriceLabel() }}</span>\n <span>{{ getFinalUnitPrice() | ecCurrencySymbol }}</span>\n </div>\n </div>\n</ng-template>\n",
@@ -20986,13 +21260,13 @@ const components = [
20986
21260
  SidebarEcComponent
20987
21261
  ];
20988
21262
 
20989
- var __decorate$28 = (this && this.__decorate) || function (decorators, target, key, desc) {
21263
+ var __decorate$29 = (this && this.__decorate) || function (decorators, target, key, desc) {
20990
21264
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
20991
21265
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
20992
21266
  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;
20993
21267
  return c > 3 && r && Object.defineProperty(target, key, r), r;
20994
21268
  };
20995
- var __param$c = (this && this.__param) || function (paramIndex, decorator) {
21269
+ var __param$d = (this && this.__param) || function (paramIndex, decorator) {
20996
21270
  return function (target, key) { decorator(target, key, paramIndex); }
20997
21271
  };
20998
21272
  class ParamsContext {
@@ -21023,8 +21297,11 @@ let AddActionRedirectDirective = class AddActionRedirectDirective {
21023
21297
  ngOnInit() { }
21024
21298
  ngOnChanges(changes) {
21025
21299
  var _a;
21300
+ if (this.linstenEvent) {
21301
+ this.linstenEvent();
21302
+ this.linstenEvent = null;
21303
+ }
21026
21304
  this.transparent && this.renderer.setStyle(this.elementRef.nativeElement, 'color', 'transparent');
21027
- this.renderer.setAttribute(this.elementRef.nativeElement, "role", "button");
21028
21305
  (_a = this.classStr) === null || _a === void 0 ? void 0 : _a.split(" ").forEach((cl) => {
21029
21306
  try {
21030
21307
  this.renderer.addClass(this.elementRef.nativeElement, cl);
@@ -21034,20 +21311,39 @@ let AddActionRedirectDirective = class AddActionRedirectDirective {
21034
21311
  }
21035
21312
  });
21036
21313
  this.redirectUrl = this.banner.url ? this.banner.url : this.blocksService.formUrl(this.banner);
21037
- if (this.banner.url) {
21038
- this.renderer.setProperty(this.elementRef.nativeElement, "href", this.banner.url);
21039
- if (this.isExternalUrl(this.banner.url)) {
21040
- this.renderer.setAttribute(this.elementRef.nativeElement, "target", "_blank");
21041
- this.renderer.setAttribute(this.elementRef.nativeElement, "rel", "noopener noreferrer");
21042
- }
21043
- else {
21044
- this.renderer.removeAttribute(this.elementRef.nativeElement, "target");
21045
- this.renderer.removeAttribute(this.elementRef.nativeElement, "rel");
21046
- }
21314
+ const accessibleLabel = this.getAccessibleLabel();
21315
+ if (accessibleLabel) {
21316
+ this.renderer.setAttribute(this.elementRef.nativeElement, 'aria-label', accessibleLabel);
21317
+ }
21318
+ this.renderer.setProperty(this.elementRef.nativeElement, "href", this.redirectUrl);
21319
+ if (this.isExternalUrl(this.redirectUrl)) {
21320
+ this.renderer.setAttribute(this.elementRef.nativeElement, "target", "_blank");
21321
+ this.renderer.setAttribute(this.elementRef.nativeElement, "rel", "noopener noreferrer");
21047
21322
  }
21048
21323
  else {
21049
- this.linstenEvent = this.renderer.listen(this.elementRef.nativeElement, 'click', this.redirectFromUrl);
21324
+ this.renderer.removeAttribute(this.elementRef.nativeElement, "target");
21325
+ this.renderer.removeAttribute(this.elementRef.nativeElement, "rel");
21326
+ this.linstenEvent = this.renderer.listen(this.elementRef.nativeElement, 'click', (evt) => {
21327
+ evt.preventDefault();
21328
+ this.redirectFromUrl(evt);
21329
+ });
21330
+ }
21331
+ }
21332
+ getAccessibleLabel() {
21333
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
21334
+ const title = (_b = (_a = this.banner) === null || _a === void 0 ? void 0 : _a.title) === null || _b === void 0 ? void 0 : _b.trim();
21335
+ if (title) {
21336
+ return title;
21337
+ }
21338
+ const subtitle = (_d = (_c = this.banner) === null || _c === void 0 ? void 0 : _c.subtitle) === null || _d === void 0 ? void 0 : _d.trim();
21339
+ if (subtitle) {
21340
+ return subtitle;
21050
21341
  }
21342
+ const buttonText = (_h = (_g = (_f = (_e = this.banner) === null || _e === void 0 ? void 0 : _e.styles) === null || _f === void 0 ? void 0 : _f.button) === null || _g === void 0 ? void 0 : _g.text) === null || _h === void 0 ? void 0 : _h.trim();
21343
+ if (buttonText) {
21344
+ return buttonText;
21345
+ }
21346
+ return ((_k = (_j = this.banner) === null || _j === void 0 ? void 0 : _j.name) === null || _k === void 0 ? void 0 : _k.trim()) || 'Ver más';
21051
21347
  }
21052
21348
  isExternalUrl(url) {
21053
21349
  var _a, _b;
@@ -21077,23 +21373,23 @@ AddActionRedirectDirective.ctorParameters = () => [
21077
21373
  { type: BlocksService },
21078
21374
  { type: Router }
21079
21375
  ];
21080
- __decorate$28([
21376
+ __decorate$29([
21081
21377
  Input()
21082
21378
  ], AddActionRedirectDirective.prototype, "ecAddActionRedirect", null);
21083
- __decorate$28([
21379
+ __decorate$29([
21084
21380
  Input()
21085
21381
  ], AddActionRedirectDirective.prototype, "classStrSpacing", null);
21086
- __decorate$28([
21382
+ __decorate$29([
21087
21383
  Input()
21088
21384
  ], AddActionRedirectDirective.prototype, "isTransparent", null);
21089
- AddActionRedirectDirective = __decorate$28([
21385
+ AddActionRedirectDirective = __decorate$29([
21090
21386
  Directive({
21091
21387
  selector: "[ecAddActionRedirect]",
21092
21388
  }),
21093
- __param$c(0, Inject(DOCUMENT))
21389
+ __param$d(0, Inject(DOCUMENT))
21094
21390
  ], AddActionRedirectDirective);
21095
21391
 
21096
- var __decorate$29 = (this && this.__decorate) || function (decorators, target, key, desc) {
21392
+ var __decorate$2a = (this && this.__decorate) || function (decorators, target, key, desc) {
21097
21393
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
21098
21394
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21099
21395
  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;
@@ -21154,25 +21450,25 @@ ProductStockDirective.ctorParameters = () => [
21154
21450
  { type: TemplateRef },
21155
21451
  { type: ViewContainerRef }
21156
21452
  ];
21157
- __decorate$29([
21453
+ __decorate$2a([
21158
21454
  Input()
21159
21455
  ], ProductStockDirective.prototype, "ecProductStockElse", void 0);
21160
- __decorate$29([
21456
+ __decorate$2a([
21161
21457
  Input()
21162
21458
  ], ProductStockDirective.prototype, "ecProductStock", null);
21163
- ProductStockDirective = __decorate$29([
21459
+ ProductStockDirective = __decorate$2a([
21164
21460
  Directive({
21165
21461
  selector: "[ecProductStock]"
21166
21462
  })
21167
21463
  ], ProductStockDirective);
21168
21464
 
21169
- var __decorate$2a = (this && this.__decorate) || function (decorators, target, key, desc) {
21465
+ var __decorate$2b = (this && this.__decorate) || function (decorators, target, key, desc) {
21170
21466
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
21171
21467
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21172
21468
  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;
21173
21469
  return c > 3 && r && Object.defineProperty(target, key, r), r;
21174
21470
  };
21175
- var __param$d = (this && this.__param) || function (paramIndex, decorator) {
21471
+ var __param$e = (this && this.__param) || function (paramIndex, decorator) {
21176
21472
  return function (target, key) { decorator(target, key, paramIndex); }
21177
21473
  };
21178
21474
  class ParamsContext$1 {
@@ -21246,7 +21542,7 @@ let ProductOffDirective = class ProductOffDirective {
21246
21542
  };
21247
21543
  this.createImage = (discount) => {
21248
21544
  var _a;
21249
- let popover = this.renderer.createElement("a");
21545
+ let popover = this.renderer.createElement("div");
21250
21546
  this.customMessageStr = this.customMessageStr.replace('{discount}', discount);
21251
21547
  this.renderer.setProperty(popover, "innerHTML", this.customMessageStr);
21252
21548
  (_a = this.classStr) === null || _a === void 0 ? void 0 : _a.split(" ").forEach((cl) => {
@@ -21291,23 +21587,23 @@ ProductOffDirective.ctorParameters = () => [
21291
21587
  { type: ElementRef },
21292
21588
  { type: Renderer2 }
21293
21589
  ];
21294
- __decorate$2a([
21590
+ __decorate$2b([
21295
21591
  Input()
21296
21592
  ], ProductOffDirective.prototype, "ecProductOff", null);
21297
- __decorate$2a([
21593
+ __decorate$2b([
21298
21594
  Input()
21299
21595
  ], ProductOffDirective.prototype, "classStrSpacing", null);
21300
- __decorate$2a([
21596
+ __decorate$2b([
21301
21597
  Input()
21302
21598
  ], ProductOffDirective.prototype, "customMessage", null);
21303
- ProductOffDirective = __decorate$2a([
21599
+ ProductOffDirective = __decorate$2b([
21304
21600
  Directive({
21305
21601
  selector: "[ecProductOff]",
21306
21602
  }),
21307
- __param$d(0, Inject(DOCUMENT))
21603
+ __param$e(0, Inject(DOCUMENT))
21308
21604
  ], ProductOffDirective);
21309
21605
 
21310
- var __decorate$2b = (this && this.__decorate) || function (decorators, target, key, desc) {
21606
+ var __decorate$2c = (this && this.__decorate) || function (decorators, target, key, desc) {
21311
21607
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
21312
21608
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21313
21609
  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;
@@ -21360,16 +21656,16 @@ ProductMiniStandardDirective.ctorParameters = () => [
21360
21656
  { type: Renderer2 },
21361
21657
  { type: Constants }
21362
21658
  ];
21363
- __decorate$2b([
21659
+ __decorate$2c([
21364
21660
  Input()
21365
21661
  ], ProductMiniStandardDirective.prototype, "ecProductMiniStandard", null);
21366
- ProductMiniStandardDirective = __decorate$2b([
21662
+ ProductMiniStandardDirective = __decorate$2c([
21367
21663
  Directive({
21368
21664
  selector: '[ecProductMiniStandard]'
21369
21665
  })
21370
21666
  ], ProductMiniStandardDirective);
21371
21667
 
21372
- var __decorate$2c = (this && this.__decorate) || function (decorators, target, key, desc) {
21668
+ var __decorate$2d = (this && this.__decorate) || function (decorators, target, key, desc) {
21373
21669
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
21374
21670
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21375
21671
  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;
@@ -21408,19 +21704,19 @@ AuthWholesalerDirective.ctorParameters = () => [
21408
21704
  { type: ViewContainerRef },
21409
21705
  { type: AuthService }
21410
21706
  ];
21411
- __decorate$2c([
21707
+ __decorate$2d([
21412
21708
  Input()
21413
21709
  ], AuthWholesalerDirective.prototype, "ecAuthWholesalerElse", void 0);
21414
- __decorate$2c([
21710
+ __decorate$2d([
21415
21711
  Input()
21416
21712
  ], AuthWholesalerDirective.prototype, "ecAuthWholesaler", null);
21417
- AuthWholesalerDirective = __decorate$2c([
21713
+ AuthWholesalerDirective = __decorate$2d([
21418
21714
  Directive({
21419
21715
  selector: "[ecAuthWholesaler]"
21420
21716
  })
21421
21717
  ], AuthWholesalerDirective);
21422
21718
 
21423
- var __decorate$2d = (this && this.__decorate) || function (decorators, target, key, desc) {
21719
+ var __decorate$2e = (this && this.__decorate) || function (decorators, target, key, desc) {
21424
21720
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
21425
21721
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21426
21722
  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;
@@ -21443,10 +21739,10 @@ ReloadViewDirective.ctorParameters = () => [
21443
21739
  { type: TemplateRef },
21444
21740
  { type: ViewContainerRef }
21445
21741
  ];
21446
- __decorate$2d([
21742
+ __decorate$2e([
21447
21743
  Input()
21448
21744
  ], ReloadViewDirective.prototype, "ecReloadView", void 0);
21449
- ReloadViewDirective = __decorate$2d([
21745
+ ReloadViewDirective = __decorate$2e([
21450
21746
  Directive({
21451
21747
  selector: '[ecReloadView]'
21452
21748
  })
@@ -21467,7 +21763,7 @@ const directives = [
21467
21763
  ReloadViewDirective,
21468
21764
  ];
21469
21765
 
21470
- var __decorate$2e = (this && this.__decorate) || function (decorators, target, key, desc) {
21766
+ var __decorate$2f = (this && this.__decorate) || function (decorators, target, key, desc) {
21471
21767
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
21472
21768
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21473
21769
  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;
@@ -21539,14 +21835,14 @@ ecCurrencySymbolPipe.ctorParameters = () => [
21539
21835
  { type: CurrencyService },
21540
21836
  { type: Injector }
21541
21837
  ];
21542
- ecCurrencySymbolPipe = __decorate$2e([
21838
+ ecCurrencySymbolPipe = __decorate$2f([
21543
21839
  Pipe({
21544
21840
  name: 'ecCurrencySymbol',
21545
21841
  pure: false
21546
21842
  })
21547
21843
  ], ecCurrencySymbolPipe);
21548
21844
 
21549
- var __decorate$2f = (this && this.__decorate) || function (decorators, target, key, desc) {
21845
+ var __decorate$2g = (this && this.__decorate) || function (decorators, target, key, desc) {
21550
21846
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
21551
21847
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21552
21848
  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;
@@ -21563,13 +21859,13 @@ let EcSanitizerHtmlPipe = class EcSanitizerHtmlPipe {
21563
21859
  EcSanitizerHtmlPipe.ctorParameters = () => [
21564
21860
  { type: DomSanitizer }
21565
21861
  ];
21566
- EcSanitizerHtmlPipe = __decorate$2f([
21862
+ EcSanitizerHtmlPipe = __decorate$2g([
21567
21863
  Pipe({
21568
21864
  name: 'ecSanitizerHtml'
21569
21865
  })
21570
21866
  ], EcSanitizerHtmlPipe);
21571
21867
 
21572
- var __decorate$2g = (this && this.__decorate) || function (decorators, target, key, desc) {
21868
+ var __decorate$2h = (this && this.__decorate) || function (decorators, target, key, desc) {
21573
21869
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
21574
21870
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21575
21871
  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;
@@ -21586,7 +21882,7 @@ let EcSanitizerUrlPipe = class EcSanitizerUrlPipe {
21586
21882
  EcSanitizerUrlPipe.ctorParameters = () => [
21587
21883
  { type: DomSanitizer }
21588
21884
  ];
21589
- EcSanitizerUrlPipe = __decorate$2g([
21885
+ EcSanitizerUrlPipe = __decorate$2h([
21590
21886
  Pipe({
21591
21887
  name: 'ecSanitizerUrl'
21592
21888
  })
@@ -21599,7 +21895,7 @@ const pipes = [
21599
21895
  EcSanitizerUrlPipe
21600
21896
  ];
21601
21897
 
21602
- var __decorate$2h = (this && this.__decorate) || function (decorators, target, key, desc) {
21898
+ var __decorate$2i = (this && this.__decorate) || function (decorators, target, key, desc) {
21603
21899
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
21604
21900
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21605
21901
  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;
@@ -21684,7 +21980,7 @@ let NgEasycommerceModule = NgEasycommerceModule_1 = class NgEasycommerceModule {
21684
21980
  };
21685
21981
  }
21686
21982
  };
21687
- NgEasycommerceModule = NgEasycommerceModule_1 = __decorate$2h([
21983
+ NgEasycommerceModule = NgEasycommerceModule_1 = __decorate$2i([
21688
21984
  NgModule({
21689
21985
  exports: [
21690
21986
  OrderByPipe,
@@ -21723,7 +22019,7 @@ NgEasycommerceModule = NgEasycommerceModule_1 = __decorate$2h([
21723
22019
  })
21724
22020
  ], NgEasycommerceModule);
21725
22021
 
21726
- var __decorate$2i = (this && this.__decorate) || function (decorators, target, key, desc) {
22022
+ var __decorate$2j = (this && this.__decorate) || function (decorators, target, key, desc) {
21727
22023
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
21728
22024
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21729
22025
  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;
@@ -21771,13 +22067,13 @@ GiftCardService.ctorParameters = () => [
21771
22067
  { type: ConnectionService }
21772
22068
  ];
21773
22069
  GiftCardService.ɵprov = ɵɵdefineInjectable({ factory: function GiftCardService_Factory() { return new GiftCardService(ɵɵinject(Constants), ɵɵinject(CartService), ɵɵinject(ConnectionService)); }, token: GiftCardService, providedIn: "root" });
21774
- GiftCardService = __decorate$2i([
22070
+ GiftCardService = __decorate$2j([
21775
22071
  Injectable({
21776
22072
  providedIn: 'root'
21777
22073
  })
21778
22074
  ], GiftCardService);
21779
22075
 
21780
- var __decorate$2j = (this && this.__decorate) || function (decorators, target, key, desc) {
22076
+ var __decorate$2k = (this && this.__decorate) || function (decorators, target, key, desc) {
21781
22077
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
21782
22078
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21783
22079
  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;
@@ -21834,19 +22130,19 @@ WishlistService.ctorParameters = () => [
21834
22130
  { type: ToastrService }
21835
22131
  ];
21836
22132
  WishlistService.ɵprov = ɵɵdefineInjectable({ factory: function WishlistService_Factory() { return new WishlistService(ɵɵinject(ToastrService)); }, token: WishlistService, providedIn: "root" });
21837
- WishlistService = __decorate$2j([
22133
+ WishlistService = __decorate$2k([
21838
22134
  Injectable({
21839
22135
  providedIn: 'root'
21840
22136
  })
21841
22137
  ], WishlistService);
21842
22138
 
21843
- var __decorate$2k = (this && this.__decorate) || function (decorators, target, key, desc) {
22139
+ var __decorate$2l = (this && this.__decorate) || function (decorators, target, key, desc) {
21844
22140
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
21845
22141
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
21846
22142
  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;
21847
22143
  return c > 3 && r && Object.defineProperty(target, key, r), r;
21848
22144
  };
21849
- var __param$e = (this && this.__param) || function (paramIndex, decorator) {
22145
+ var __param$f = (this && this.__param) || function (paramIndex, decorator) {
21850
22146
  return function (target, key) { decorator(target, key, paramIndex); }
21851
22147
  };
21852
22148
  let StandardReuseStrategy = class StandardReuseStrategy {
@@ -21876,9 +22172,9 @@ let StandardReuseStrategy = class StandardReuseStrategy {
21876
22172
  StandardReuseStrategy.ctorParameters = () => [
21877
22173
  { type: undefined, decorators: [{ type: Inject, args: ['env',] }] }
21878
22174
  ];
21879
- StandardReuseStrategy = __decorate$2k([
22175
+ StandardReuseStrategy = __decorate$2l([
21880
22176
  Injectable(),
21881
- __param$e(0, Inject('env'))
22177
+ __param$f(0, Inject('env'))
21882
22178
  ], StandardReuseStrategy);
21883
22179
 
21884
22180
  /*
@@ -21889,5 +22185,5 @@ StandardReuseStrategy = __decorate$2k([
21889
22185
  * Generated bundle index. Do not edit.
21890
22186
  */
21891
22187
 
21892
- export { AbleBuyerGuardService, AccountEcComponent, AddActionRedirectDirective, AddressingService, AnalyticsService, AttributesFilter, AuthEcComponent, AuthGuardService, AuthInterceptor, AuthService, AuthWholesalerDirective, BambooEcComponent, BancardEcComponent, BancardRedirectEcComponent, BannerService, BlockBannerBoxesEcComponent, BlockBannerFullEcComponent, BlockFormContactEcComponent, BlockHtmlEcComponent, BlockProductsEcComponent, BlockRenderEcComponent, BlocksEcComponent, BlocksService, BrowserWindowRef, BuildYourEcComponent, CaptchaService, CartEcComponent, CartLoadEcComponent, CartService, CategoryFilter, CecaRedirectEcComponent, ChannelConfigService, CheckoutEcComponent, CheckoutErrorComponent, CheckoutReadyGuard, CheckoutService, CollectionEcComponent, ConcatenatedAssociationsService, ConfirmAccountEcComponent, ConnectionService, Constants, ContactFormNewsEcComponent, CookiesEcComponent, CouponEcComponent, CurrencyService, DataFormEcComponent, DataformEcSingleComponent, DataformService, DecidirEcComponent, DetailCheckoutBlockEcComponent, DynamicsFilter, EcSanitizerHtmlPipe, EcSanitizerUrlPipe, FaqsContentEcComponent, Filter, FilterOptionTypes, FiltersEcComponent, FiltersService, FiltersTopEcComponent, FooterEcComponent, FooterService, ForgotPasswordEcComponent, GiftCardService, HeaderEcComponent, HomeEcComponent, LoadingFullEcComponent, LoadingInlineEcComponent, LoadingSectionEcComponent, LoggedInGuard, LoginEcComponent, LoginFormEcComponent, MPCreditEcComponent, MobbexEcComponent, ModalConfigEcComponent, ModalCookiesEcComponent, MpRedirectEcComponent, MultipleItemsToCartEcComponent, NgEasycommerceModule, OptionsService, OrderEcComponent, OrdersEcComponent, OrdersService, PaginationService, ParametersService, ParamsContext, PasswordResetEcComponent, PaymentEcComponent, PaymentEcSingleComponent, PaymentService, PaypalExpressEcComponent, PriceEcComponent, ProductDetailEcComponent, ProductDetailService, ProductEcComponent, ProductFoundEcComponent, ProductMiniStandardDirective, ProductStockDirective, ProductsService, RatingEcComponent, RedSysProEcComponent, RedSysRedirectEcComponent, RedSysRedirectOutEcComponent, RedsysCatchEcComponent, RegisterFormEcComponent, RegisterWholesalerFormEcComponent, RelatedProductsEcComponent, ReviewsEcComponent, ReviewsFormEcComponent, ReviewsService, SectionContainerEcComponent, SelectChannelEcComponent, ShareBlockEcComponent, ShipmentEcComponent, ShipmentEcSingleComponent, ShipmentService, ShippingPriceDisplayService, SidebarCookiesEcComponent, SidebarEcComponent, SortFilter, StandardReuseStrategy, Step, StoresEcComponent, StoresService, SuccessEcComponent, ToastCookiesEcComponent, ToastService, UnitPromotionPriceEcComponent, User, UserRoleGuardService, UtilsService, VariantsEcComponent, WINDOW, WINDOW_PROVIDERS, WindowRef, WishlistService, browserWindowProvider, ecCurrencySymbolPipe, firstBlockUrl, pickFooterForDevice, toHref, toPageHref, toPageText, toText, windowFactory, windowProvider, OrderByPipe as ɵa, components as ɵb, pipes as ɵba, OptionsOfProductListDataReceiverService as ɵbb, PaymentUtils as ɵbc, CustomerInterceptor as ɵbd, SellerDashboardContainerEcComponent as ɵc, MagnizoomComponent as ɵd, RecaptchaEcComponent as ɵe, ComparedProductsEcComponent as ɵf, StepEcComponent as ɵg, CulqiEcComponent as ɵh, BancardCatastroEcComponent as ɵi, PlaceToPayEcComponent as ɵj, ComponentHelper as ɵk, BlocksRepositoryService as ɵl, FacebookPixelService as ɵm, GoogleAnalyticsService as ɵn, GTMService as ɵo, MetricoolPixelService as ɵp, DopplerService as ɵq, OrderUtilityService as ɵr, StepService as ɵs, ErrorHandlerService as ɵt, IpService as ɵu, ShipmentDataTransformer as ɵv, CookiesService as ɵw, directives as ɵx, ProductOffDirective as ɵy, ReloadViewDirective as ɵz };
22188
+ export { AbleBuyerGuardService, AccountEcComponent, AddActionRedirectDirective, AddressingService, AnalyticsService, AttributesFilter, AuthEcComponent, AuthGuardService, AuthInterceptor, AuthService, AuthWholesalerDirective, BambooEcComponent, BancardEcComponent, BancardRedirectEcComponent, BannerService, BlockBannerBoxesEcComponent, BlockBannerFullEcComponent, BlockFormContactEcComponent, BlockHtmlEcComponent, BlockProductsEcComponent, BlockRenderEcComponent, BlocksEcComponent, BlocksService, BrowserWindowRef, BuildYourEcComponent, CaptchaService, CartEcComponent, CartLoadEcComponent, CartService, CategoryFilter, CecaRedirectEcComponent, ChannelConfigService, CheckoutEcComponent, CheckoutErrorComponent, CheckoutReadyGuard, CheckoutService, CollectionEcComponent, ConcatenatedAssociationsService, ConfirmAccountEcComponent, ConnectionService, Constants, ContactFormNewsEcComponent, CookiesEcComponent, CouponEcComponent, CurrencyService, DataFormEcComponent, DataformEcSingleComponent, DataformService, DecidirEcComponent, DetailCheckoutBlockEcComponent, DynamicsFilter, EcSanitizerHtmlPipe, EcSanitizerUrlPipe, FaqsContentEcComponent, Filter, FilterOptionTypes, FiltersEcComponent, FiltersService, FiltersTopEcComponent, FooterEcComponent, FooterService, ForgotPasswordEcComponent, GiftCardService, HeaderEcComponent, HomeEcComponent, LoadingFullEcComponent, LoadingInlineEcComponent, LoadingSectionEcComponent, LoggedInGuard, LoginEcComponent, LoginFormEcComponent, MPCreditEcComponent, MobbexEcComponent, ModalConfigEcComponent, ModalCookiesEcComponent, MpRedirectEcComponent, MultipleItemsToCartEcComponent, NgEasycommerceModule, OptionsService, OrderEcComponent, OrdersEcComponent, OrdersService, PaginationService, ParametersService, ParamsContext, PasswordResetEcComponent, PaymentEcComponent, PaymentEcSingleComponent, PaymentService, PaypalExpressEcComponent, PriceEcComponent, ProductDetailEcComponent, ProductDetailService, ProductEcComponent, ProductFoundEcComponent, ProductMiniStandardDirective, ProductStockDirective, ProductsService, RatingEcComponent, RedSysProEcComponent, RedSysRedirectEcComponent, RedSysRedirectOutEcComponent, RedsysCatchEcComponent, RegisterFormEcComponent, RegisterWholesalerFormEcComponent, RelatedProductsEcComponent, ReviewsEcComponent, ReviewsFormEcComponent, ReviewsService, SectionContainerEcComponent, SelectChannelEcComponent, SeoService, ShareBlockEcComponent, ShipmentEcComponent, ShipmentEcSingleComponent, ShipmentService, ShippingPriceDisplayService, SidebarCookiesEcComponent, SidebarEcComponent, SortFilter, StandardReuseStrategy, Step, StoresEcComponent, StoresService, SuccessEcComponent, ToastCookiesEcComponent, ToastService, UnitPromotionPriceEcComponent, User, UserRoleGuardService, UtilsService, VariantsEcComponent, WINDOW, WINDOW_PROVIDERS, WindowRef, WishlistService, browserWindowProvider, ecCurrencySymbolPipe, firstBlockUrl, pickFooterForDevice, toHref, toPageHref, toPageText, toText, windowFactory, windowProvider, OrderByPipe as ɵa, components as ɵb, pipes as ɵba, OptionsOfProductListDataReceiverService as ɵbb, PaymentUtils as ɵbc, CustomerInterceptor as ɵbd, SellerDashboardContainerEcComponent as ɵc, MagnizoomComponent as ɵd, RecaptchaEcComponent as ɵe, ComparedProductsEcComponent as ɵf, StepEcComponent as ɵg, CulqiEcComponent as ɵh, BancardCatastroEcComponent as ɵi, PlaceToPayEcComponent as ɵj, ComponentHelper as ɵk, BlocksRepositoryService as ɵl, FacebookPixelService as ɵm, GoogleAnalyticsService as ɵn, GTMService as ɵo, MetricoolPixelService as ɵp, DopplerService as ɵq, OrderUtilityService as ɵr, StepService as ɵs, ErrorHandlerService as ɵt, IpService as ɵu, ShipmentDataTransformer as ɵv, CookiesService as ɵw, directives as ɵx, ProductOffDirective as ɵy, ReloadViewDirective as ɵz };
21893
22189
  //# sourceMappingURL=ng-easycommerce.js.map