ng-easycommerce-v18 0.2.28 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +56 -49
- package/assets/decidirFormEc.html +514 -514
- package/assets/ec-i18n/ct.json +281 -281
- package/assets/ec-i18n/en.json +0 -0
- package/assets/ec-i18n/es.json +429 -427
- package/assets/ec-i18n/fr.json +0 -0
- package/assets/ec-i18n/gl.json +281 -281
- package/assets/ec-i18n/pr.json +281 -281
- package/assets/images/cards-occasional.svg +21 -21
- package/assets/recaptcha/recaptcha-site-keys.json +3 -3
- package/assets/recaptcha/recaptcha-sites-prod.json +38 -38
- package/assets/recaptcha/recaptcha-sites.json +52 -52
- package/esm2022/lib/api/connection.service.mjs +1 -1
- package/esm2022/lib/classes/checkout/steps.mjs +1 -1
- package/esm2022/lib/classes/component-helper.mjs +1 -1
- package/esm2022/lib/classes/filters/attributes-filter.mjs +1 -1
- package/esm2022/lib/classes/filters/category-filter.mjs +1 -1
- package/esm2022/lib/classes/filters/dynamics-filter.mjs +1 -1
- package/esm2022/lib/classes/filters/filter-factory.mjs +1 -1
- package/esm2022/lib/classes/filters/filter.mjs +1 -1
- package/esm2022/lib/classes/filters/index.mjs +1 -1
- package/esm2022/lib/classes/filters/price_range-filter.mjs +1 -1
- package/esm2022/lib/classes/filters/sort-filter.mjs +1 -1
- package/esm2022/lib/classes/index.mjs +1 -1
- package/esm2022/lib/classes/user.mjs +1 -1
- package/esm2022/lib/constants/api.constants.service.mjs +1 -1
- package/esm2022/lib/constants/core.constants.service.mjs +1 -1
- package/esm2022/lib/constants/index.mjs +1 -1
- package/esm2022/lib/ec-components/abstractions-components/block-ec.component.mjs +1 -1
- package/esm2022/lib/ec-components/abstractions-components/index.mjs +1 -1
- package/esm2022/lib/ec-components/abstractions-components/menu-ec.component.mjs +1 -1
- package/esm2022/lib/ec-components/account-ec/account-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/account-ec/index.mjs +1 -1
- package/esm2022/lib/ec-components/account-ec/order-ec/order-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/account-ec/orders-list-ec/orders-list-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/auth-ec/auth-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/auth-ec/confirm-account-ec/confirm-account-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/auth-ec/forgot-password-ec/forgot-password-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/auth-ec/index.mjs +1 -1
- package/esm2022/lib/ec-components/auth-ec/login-form-ec/login-form-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/auth-ec/password-reset-ec/password-reset-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/auth-ec/register-form-ec/register-form-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/auth-ec/register-wholesaler-form-ec/register-wholesaler-form-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/blocks-ec/block-banner-box-ec/block-banner-box-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/blocks-ec/block-banner-full-ec/block-banner-full-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/blocks-ec/block-form-contact-ec/block-form-contact-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/blocks-ec/block-html-ec/block-html-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/blocks-ec/block-newsletter-ec/block-newsletter-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/blocks-ec/block-products-ec/block-products-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/blocks-ec/blocks-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/blocks-ec/index.mjs +1 -1
- package/esm2022/lib/ec-components/breadcrumb-ec/breadcrumb-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/cart-ec/cart-ec.component.mjs +10 -4
- package/esm2022/lib/ec-components/cart-ec/cart-item-ec/cart-item-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/cart-ec/index.mjs +1 -1
- package/esm2022/lib/ec-components/checkout-ec/checkout-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/checkout-ec/dataform-ec/dataform-ec.component.mjs +6 -6
- package/esm2022/lib/ec-components/checkout-ec/dataform-ec/input-ec/input-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/checkout-ec/detail-checkout-block-ec/detail-checkout-block-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/checkout-ec/payment-ec/payment-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/checkout-ec/payment-ec/payment-methods/bank-transfer-ec/bank-transfer-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/checkout-ec/payment-ec/payment-methods/index.mjs +1 -1
- package/esm2022/lib/ec-components/checkout-ec/payment-ec/payment-methods/mp-redirect-ec/mp-redirect-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/checkout-ec/payment-ec/payment-methods/offline-ec/offline-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/checkout-ec/shipment-ec/shipment-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/checkout-ec/step-container-ec/step-container-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/checkout-ec/success-ec/success-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/collection-ec/collection-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/contact-ec/contact-ec.component.mjs +1 -1
- package/esm2022/lib/ec-components/coupon-ec/coupon-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/faqs-ec/faqs-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/filters-ec/filters-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/filters-sort-ec/filters-sort-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/footer-ec/footer-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/header-ec/header-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/home-ec/home-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/index.mjs +1 -1
- package/esm2022/lib/ec-components/price-range-filter/price-range-filter.component.mjs +3 -3
- package/esm2022/lib/ec-components/product-detail-ec/product-detail-ec.component.mjs +17 -11
- package/esm2022/lib/ec-components/product-ec/product-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/related-products-ec/related-products-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/reviews-ec/reviews-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/reviews-form-ec/reviews-form-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/section-container-ec/section-container-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/share-ec/share-buttons-ec/index.mjs +1 -1
- package/esm2022/lib/ec-components/share-ec/share-buttons-ec/share-email-ec/share-email-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/share-ec/share-buttons-ec/share-facebook-ec/share-facebook-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/share-ec/share-buttons-ec/share-pinterest-ec/share-pinterest-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/share-ec/share-buttons-ec/share-twitter-ec/share-twitter-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/share-ec/share-buttons-ec/share-whatsapp-ec/share-whatsapp-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/share-ec/share-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/sidebar-ec/sidebar-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/stores-ec/stores-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/variants-ec/variants-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/widgets-ec/decidir-ec/decidir-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/widgets-ec/index.mjs +1 -1
- package/esm2022/lib/ec-components/widgets-ec/loading/index.mjs +1 -1
- package/esm2022/lib/ec-components/widgets-ec/loading/loading-full-ec/loading-full-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/widgets-ec/loading/loading-inline-ec/loading-inline-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/widgets-ec/loading/loading-section-ec/loading-section-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/widgets-ec/magnizoom-ec/magnizoom-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/widgets-ec/price-ec/price-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/widgets-ec/rating-ec/rating-ec.component.mjs +3 -3
- package/esm2022/lib/ec-components/widgets-ec/re-captcha-ec/re-captcha-ec.component.mjs +3 -3
- package/esm2022/lib/ec-directive/index.mjs +1 -1
- package/esm2022/lib/ec-directive/product-off.directive.mjs +1 -1
- package/esm2022/lib/ec-directive/product-stock.directive.mjs +1 -1
- package/esm2022/lib/ec-guards/auth.guard.mjs +1 -1
- package/esm2022/lib/ec-pipe/ec-currency-symbol.pipe.mjs +1 -1
- package/esm2022/lib/ec-pipe/ec-safe-html.pipe.mjs +1 -1
- package/esm2022/lib/ec-pipe/index.mjs +1 -1
- package/esm2022/lib/ec-services/addressing.service.mjs +1 -1
- package/esm2022/lib/ec-services/analytics/analytics.service.mjs +1 -1
- package/esm2022/lib/ec-services/analytics/doppler.service.mjs +1 -1
- package/esm2022/lib/ec-services/analytics/facebook-pixel.service.mjs +1 -1
- package/esm2022/lib/ec-services/analytics/google-analytics.service.mjs +1 -1
- package/esm2022/lib/ec-services/analytics/gtm.service.mjs +1 -1
- package/esm2022/lib/ec-services/analytics/index.mjs +1 -1
- package/esm2022/lib/ec-services/analytics/metricool-pixel.service.mjs +11 -11
- package/esm2022/lib/ec-services/auth.service.mjs +1 -1
- package/esm2022/lib/ec-services/auth.storage.service.mjs +1 -1
- package/esm2022/lib/ec-services/blocks-repository.service.mjs +1 -1
- package/esm2022/lib/ec-services/blocks.service.mjs +1 -1
- package/esm2022/lib/ec-services/cart.service.mjs +2 -2
- package/esm2022/lib/ec-services/channel.service.mjs +1 -1
- package/esm2022/lib/ec-services/checkout.service.mjs +46 -21
- package/esm2022/lib/ec-services/currency.service.mjs +1 -1
- package/esm2022/lib/ec-services/filters.service.mjs +1 -1
- package/esm2022/lib/ec-services/form.service.mjs +1 -1
- package/esm2022/lib/ec-services/index.mjs +1 -1
- package/esm2022/lib/ec-services/local-storage.service.mjs +1 -1
- package/esm2022/lib/ec-services/ngx-local-storage.service.mjs +1 -1
- package/esm2022/lib/ec-services/options.service.mjs +1 -1
- package/esm2022/lib/ec-services/order-utility.service.mjs +2 -2
- package/esm2022/lib/ec-services/orders.service.mjs +1 -1
- package/esm2022/lib/ec-services/pagination.service.mjs +1 -1
- package/esm2022/lib/ec-services/parameters.service.mjs +1 -1
- package/esm2022/lib/ec-services/payment.service.mjs +1 -1
- package/esm2022/lib/ec-services/product-detail.service.mjs +1 -1
- package/esm2022/lib/ec-services/products.service.mjs +1 -1
- package/esm2022/lib/ec-services/re-captcha.service.mjs +1 -1
- package/esm2022/lib/ec-services/reviews.service.mjs +1 -1
- package/esm2022/lib/ec-services/shipment.service.mjs +1 -1
- package/esm2022/lib/ec-services/stores.service.mjs +1 -1
- package/esm2022/lib/ec-services/test.service.mjs +1 -1
- package/esm2022/lib/ec-services/toast.service.mjs +1 -1
- package/esm2022/lib/interceptors/auth.interceptor.mjs +1 -1
- package/esm2022/lib/interfaces/analytics/event-key.mjs +1 -1
- package/esm2022/lib/interfaces/analytics/facebook-pixel-data.mjs +1 -1
- package/esm2022/lib/interfaces/analytics/gtm-config.mjs +1 -1
- package/esm2022/lib/interfaces/analytics/index.mjs +1 -1
- package/esm2022/lib/interfaces/blocks.mjs +1 -1
- package/esm2022/lib/interfaces/checkout.mjs +1 -1
- package/esm2022/lib/interfaces/connection.mjs +1 -1
- package/esm2022/lib/interfaces/coupon.mjs +1 -1
- package/esm2022/lib/interfaces/currency.mjs +1 -1
- package/esm2022/lib/interfaces/deserializable.mjs +1 -1
- package/esm2022/lib/interfaces/environment.mjs +1 -1
- package/esm2022/lib/interfaces/faqs.mjs +1 -1
- package/esm2022/lib/interfaces/filter.mjs +1 -1
- package/esm2022/lib/interfaces/index.mjs +1 -1
- package/esm2022/lib/interfaces/options.mjs +1 -1
- package/esm2022/lib/interfaces/pagination.mjs +1 -1
- package/esm2022/lib/interfaces/parameter.mjs +1 -1
- package/esm2022/lib/interfaces/product.mjs +1 -1
- package/esm2022/lib/interfaces/step.mjs +1 -1
- package/esm2022/lib/interfaces/storage.mjs +1 -1
- package/esm2022/lib/interfaces/store.mjs +1 -1
- package/esm2022/lib/interfaces/types/user.type.mjs +1 -1
- package/esm2022/lib/providers/provideEnvironment.mjs +1 -1
- package/esm2022/lib/stores/currency.store.mjs +1 -1
- package/esm2022/public-api.mjs +1 -1
- package/fesm2022/ng-easycommerce-v18.mjs +203 -166
- package/fesm2022/ng-easycommerce-v18.mjs.map +1 -1
- package/lib/ec-components/cart-ec/cart-ec.component.d.ts +3 -0
- package/lib/ec-components/product-detail-ec/product-detail-ec.component.d.ts +1 -1
- package/package.json +1 -1
|
@@ -1856,16 +1856,16 @@ class MetricoolPixelService {
|
|
|
1856
1856
|
initialize = (pixel_hash) => {
|
|
1857
1857
|
let new_analityc_script = this.renderer.createElement('script');
|
|
1858
1858
|
new_analityc_script.type = 'text/javascript';
|
|
1859
|
-
new_analityc_script.text = `
|
|
1860
|
-
function loadScript(a) {
|
|
1861
|
-
var b = document.getElementsByTagName("head")[0], c = document.createElement("script");
|
|
1862
|
-
c.type = "text/javascript",
|
|
1863
|
-
c.src = "https://tracker.metricool.com/resources/be.js",
|
|
1864
|
-
c.onreadystatechange = a,
|
|
1865
|
-
c.onload = a, b.appendChild(c)
|
|
1866
|
-
} loadScript(function () {
|
|
1867
|
-
beTracker.t({ hash: "${pixel_hash}" })
|
|
1868
|
-
});
|
|
1859
|
+
new_analityc_script.text = `
|
|
1860
|
+
function loadScript(a) {
|
|
1861
|
+
var b = document.getElementsByTagName("head")[0], c = document.createElement("script");
|
|
1862
|
+
c.type = "text/javascript",
|
|
1863
|
+
c.src = "https://tracker.metricool.com/resources/be.js",
|
|
1864
|
+
c.onreadystatechange = a,
|
|
1865
|
+
c.onload = a, b.appendChild(c)
|
|
1866
|
+
} loadScript(function () {
|
|
1867
|
+
beTracker.t({ hash: "${pixel_hash}" })
|
|
1868
|
+
});
|
|
1869
1869
|
`;
|
|
1870
1870
|
this.renderer.appendChild(this.document?.body, new_analityc_script);
|
|
1871
1871
|
};
|
|
@@ -4538,7 +4538,7 @@ class CartService {
|
|
|
4538
4538
|
* @returns
|
|
4539
4539
|
*/
|
|
4540
4540
|
getSubTotalAmount() {
|
|
4541
|
-
return this.cart$.pipe(map((cart) => cart?.totals?.
|
|
4541
|
+
return this.cart$.pipe(map((cart) => cart?.totals?.subtotal));
|
|
4542
4542
|
}
|
|
4543
4543
|
/**
|
|
4544
4544
|
* Retorna un observable con el total del monto de las promociones aplicadas.
|
|
@@ -5039,7 +5039,7 @@ class OrderUtilityService {
|
|
|
5039
5039
|
if (cart.checkoutState && cart.checkoutState == "completed")
|
|
5040
5040
|
return;
|
|
5041
5041
|
let new_state = [];
|
|
5042
|
-
let subtotal = { type: 'subtotal', name: 'subtotal', amount: cart.totals.
|
|
5042
|
+
let subtotal = { type: 'subtotal', name: 'subtotal', amount: cart.totals.subtotal };
|
|
5043
5043
|
let total = { type: 'total', name: 'total', amount: cart.totals.total };
|
|
5044
5044
|
!forCart && new_state.push(subtotal);
|
|
5045
5045
|
for (let index = 0; index < cart.cartDiscounts.length; index++) {
|
|
@@ -5208,33 +5208,58 @@ class CheckoutService {
|
|
|
5208
5208
|
return { ok: false, require_login: false, message: 'An error occurred' };
|
|
5209
5209
|
}
|
|
5210
5210
|
};
|
|
5211
|
+
// updateAsociatedData = (cart: any) => {
|
|
5212
|
+
// let result = this._orderUtilityService.getPromotions(cart);
|
|
5213
|
+
// const userProfile: User = User.fromJson(this._authService.getUserProfileAsUser());
|
|
5214
|
+
// if (result) {
|
|
5215
|
+
// if (userProfile.isWholesaler() && cart.totals.taxes != 0) {
|
|
5216
|
+
// let total = { ...result[result.length - 1] };
|
|
5217
|
+
// result[result.length - 1] = {
|
|
5218
|
+
// type: 'taxes',
|
|
5219
|
+
// name: 'taxes',
|
|
5220
|
+
// amount: cart.totals.taxes
|
|
5221
|
+
// }
|
|
5222
|
+
// result.push(total);
|
|
5223
|
+
// }
|
|
5224
|
+
// let shipment = result?.find((promotion: any) => promotion.type == "shipment");
|
|
5225
|
+
// if (!shipment && cart.totals.shipping != 0) {
|
|
5226
|
+
// if (result?.length && !result.find((item: any) => item.type === "shipment")) {
|
|
5227
|
+
// let total = { ...result[result.length - 1] };
|
|
5228
|
+
// result[result.length - 1] = {
|
|
5229
|
+
// type: 'shipment',
|
|
5230
|
+
// name: 'shipment',
|
|
5231
|
+
// amount: cart.totals.shipping
|
|
5232
|
+
// }
|
|
5233
|
+
// result.push(total);
|
|
5234
|
+
// }
|
|
5235
|
+
// }
|
|
5236
|
+
// this._associatedDataSubject.next(result);
|
|
5237
|
+
// }
|
|
5238
|
+
// }
|
|
5211
5239
|
updateAsociatedData = (cart) => {
|
|
5212
5240
|
let result = this._orderUtilityService.getPromotions(cart);
|
|
5213
|
-
|
|
5214
|
-
|
|
5215
|
-
|
|
5241
|
+
if (cart.totals.taxes != 0 && result && result.length > 0) {
|
|
5242
|
+
let total = { ...result[result.length - 1] };
|
|
5243
|
+
result[result.length - 1] = {
|
|
5244
|
+
type: 'taxes',
|
|
5245
|
+
name: 'taxes',
|
|
5246
|
+
amount: cart.totals.taxes
|
|
5247
|
+
};
|
|
5248
|
+
result.push(total);
|
|
5249
|
+
}
|
|
5250
|
+
let shipment = result?.find(promotion => promotion.type == "shipment");
|
|
5251
|
+
if (!shipment && cart.totals.shipping != 0) {
|
|
5252
|
+
if (result?.length && !result.find(item => item.type === "shipment")) {
|
|
5216
5253
|
let total = { ...result[result.length - 1] };
|
|
5217
5254
|
result[result.length - 1] = {
|
|
5218
|
-
type: '
|
|
5219
|
-
name: '
|
|
5220
|
-
amount: cart.totals.
|
|
5255
|
+
type: 'shipment',
|
|
5256
|
+
name: 'shipment',
|
|
5257
|
+
amount: cart.totals.shipping
|
|
5221
5258
|
};
|
|
5222
5259
|
result.push(total);
|
|
5223
5260
|
}
|
|
5224
|
-
let shipment = result?.find((promotion) => promotion.type == "shipment");
|
|
5225
|
-
if (!shipment && cart.totals.shipping != 0) {
|
|
5226
|
-
if (result?.length && !result.find((item) => item.type === "shipment")) {
|
|
5227
|
-
let total = { ...result[result.length - 1] };
|
|
5228
|
-
result[result.length - 1] = {
|
|
5229
|
-
type: 'shipment',
|
|
5230
|
-
name: 'shipment',
|
|
5231
|
-
amount: cart.totals.shipping
|
|
5232
|
-
};
|
|
5233
|
-
result.push(total);
|
|
5234
|
-
}
|
|
5235
|
-
}
|
|
5236
|
-
this._associatedDataSubject.next(result);
|
|
5237
5261
|
}
|
|
5262
|
+
this._associatedDataSubject.next(result ?? null);
|
|
5238
5263
|
};
|
|
5239
5264
|
getStepData = (step_name) => {
|
|
5240
5265
|
let step_result = this._stateSubject.getValue().find(step => step.name == step_name);
|
|
@@ -5985,11 +6010,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
5985
6010
|
*/
|
|
5986
6011
|
class FooterEcComponent extends MenuEcComponent {
|
|
5987
6012
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FooterEcComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
5988
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FooterEcComponent, isStandalone: true, selector: "lib-footer-ec", usesInheritance: true, ngImport: i0, template: "<p>footer-ec works!</p>\n", styles: [""] });
|
|
6013
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FooterEcComponent, isStandalone: true, selector: "lib-footer-ec", usesInheritance: true, ngImport: i0, template: "<p>footer-ec works!</p>\r\n", styles: [""] });
|
|
5989
6014
|
}
|
|
5990
6015
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FooterEcComponent, decorators: [{
|
|
5991
6016
|
type: Component,
|
|
5992
|
-
args: [{ selector: 'lib-footer-ec', standalone: true, imports: [AsyncPipe], template: "<p>footer-ec works!</p>\n" }]
|
|
6017
|
+
args: [{ selector: 'lib-footer-ec', standalone: true, imports: [AsyncPipe], template: "<p>footer-ec works!</p>\r\n" }]
|
|
5993
6018
|
}] });
|
|
5994
6019
|
|
|
5995
6020
|
/**
|
|
@@ -6159,11 +6184,11 @@ class HeaderEcComponent extends MenuEcComponent {
|
|
|
6159
6184
|
});
|
|
6160
6185
|
}
|
|
6161
6186
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: HeaderEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
6162
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: HeaderEcComponent, isStandalone: true, selector: "lib-header-ec", host: { listeners: { "window:scroll": "onWindowScroll()" } }, usesInheritance: true, ngImport: i0, template: "<p>header-ec works!</p>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }] });
|
|
6187
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: HeaderEcComponent, isStandalone: true, selector: "lib-header-ec", host: { listeners: { "window:scroll": "onWindowScroll()" } }, usesInheritance: true, ngImport: i0, template: "<p>header-ec works!</p>\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }] });
|
|
6163
6188
|
}
|
|
6164
6189
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: HeaderEcComponent, decorators: [{
|
|
6165
6190
|
type: Component,
|
|
6166
|
-
args: [{ selector: 'lib-header-ec', standalone: true, imports: [CommonModule, TitleCasePipe, AsyncPipe, JsonPipe, RouterLink, RouterLinkActive], template: "<p>header-ec works!</p>\n" }]
|
|
6191
|
+
args: [{ selector: 'lib-header-ec', standalone: true, imports: [CommonModule, TitleCasePipe, AsyncPipe, JsonPipe, RouterLink, RouterLinkActive], template: "<p>header-ec works!</p>\r\n" }]
|
|
6167
6192
|
}], ctorParameters: () => [], propDecorators: { onWindowScroll: [{
|
|
6168
6193
|
type: HostListener,
|
|
6169
6194
|
args: ['window:scroll', []]
|
|
@@ -6174,11 +6199,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
6174
6199
|
*/
|
|
6175
6200
|
class HomeEcComponent {
|
|
6176
6201
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: HomeEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
6177
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: HomeEcComponent, isStandalone: true, selector: "lib-home-ec", ngImport: i0, template: "<p>home-ec works!</p>\n", styles: [""] });
|
|
6202
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: HomeEcComponent, isStandalone: true, selector: "lib-home-ec", ngImport: i0, template: "<p>home-ec works!</p>\r\n", styles: [""] });
|
|
6178
6203
|
}
|
|
6179
6204
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: HomeEcComponent, decorators: [{
|
|
6180
6205
|
type: Component,
|
|
6181
|
-
args: [{ selector: 'lib-home-ec', standalone: true, imports: [], template: "<p>home-ec works!</p>\n" }]
|
|
6206
|
+
args: [{ selector: 'lib-home-ec', standalone: true, imports: [], template: "<p>home-ec works!</p>\r\n" }]
|
|
6182
6207
|
}] });
|
|
6183
6208
|
|
|
6184
6209
|
register();
|
|
@@ -6370,11 +6395,11 @@ class BlockBannerFullEcComponent extends BlockEcComponent {
|
|
|
6370
6395
|
};
|
|
6371
6396
|
}
|
|
6372
6397
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BlockBannerFullEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
6373
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: BlockBannerFullEcComponent, isStandalone: true, selector: "app-block-banner-full-ec", inputs: { banners: "banners", meta: "meta", prevArrowImage: "prevArrowImage", nextArrowImage: "nextArrowImage", prevArrowText: "prevArrowText", nextArrowText: "nextArrowText", enableCustomNavigation: "enableCustomNavigation" }, usesInheritance: true, ngImport: i0, template: "@if(banners.length > 0) {\n <section [ngClass]=\"trimClassBlock(meta?.code)+' container-fluid px-0'\"\n [style.background-color]=\"meta.styles?.backgroundColor\"\n [style.background-image]=\"meta.styles?.backgroundImage ? 'url(' + mediaUrl + meta.styles?.backgroundImage +')' : 'inherit'\">\n\n @if (banners.length == 1) {\n <!-- si es formato fijo -->\n <div class=\"row justify-content-center\">\n @let banner = banners[0];\n @if(!banners.styles?.button?.text){\n <!-- banner sin boton -->\n <a [href]=\"banner.url\" >\n <div class=\"item col-12\">\n <img class=\"img-fluid\" [src]=\"mediaBannerUrl + getImage(banner)\" alt=\"\">\n <div class=\"position-absolute w-100 h-100 start-0 top-0\">\n @if(banner.title){\n <h2 [class]=\"'item-title-full px-2 item-position-vertical-' + (banner.styles?.description?.position)\"\n [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#fff' \">\n {{banner.title}}\n </h2>\n }\n @if(banner.subtitle){\n <p [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000' \"\n [class]=\"'px-4 item-subtitle-full item-position-vertical-' + (banner.styles?.description?.position)\">\n {{banner.subtitle}}\n </p>\n }\n </div>\n </div>\n </a>\n }@else {\n <!-- banner fijo con boton -->\n <div class=\"item col-12\">\n <img class=\"img-fluid\" [src]=\"mediaBannerUrl + getImage(banner)\" alt=\"\">\n <div class=\"position-absolute w-100 h-100 start-0 top-0\">\n @if(banner.title){\n <h2 [class]=\"'item-title-full px-2 item-position-vertical-' + (banner.styles?.description?.position)\"\n [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000' \">\n {{banner.title}}\n </h2>\n }\n @if(banner.subtitle){\n <p \n [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000' \"\n [class]=\"'px-4 item-subtitle-full item-position-vertical-' + (banner.styles?.description?.position)\">\n {{banner.subtitle}}\n </p>\n <div [class]=\"'item-position-vertical-' + (banner.styles?.button?.position)\">\n @if(banner.styles?.button?.text){\n <a href=\"{{banner.url}}\"\n [class]=\"'item-button-full btn btn-light '\">\n {{banner.styles.button.text}}\n </a> \n }\n \n </div>\n }\n </div>\n </div>\n }\n </div>\n }@else {\n <!-- si es carrousel -->\n <!-- @if(swiperElement() != null){ -->\n <swiper-container init=\"false\" [id]=\"meta?.code\">\n @for (banner of banners; track $index) {\n <swiper-slide>\n <div class=\"item\">\n @if (!banner.styles?.button?.text) {\n <!-- banner sin boton -->\n @if(banner.url){\n <a [href]=\"banner.url\" class=\"\">\n <img [src]=\"mediaBannerUrl + getImage(banner)\" alt=\"\" class=\"img-fluid w-100\" />\n </a>\n }@else {\n <img [src]=\"mediaBannerUrl + getImage(banner)\" alt=\"\" class=\"img-fluid w-100\" />\n }\n }@else {\n <!-- banner con boton -->\n <img [src]=\"mediaBannerUrl + getImage(banner)\" alt=\"\" />\n <div class=\"position-absolute w-100 h-100 start-0 top-0\">\n @if(banner.title){\n <h2 [class]=\"'item-title-full px-2 item-position-vertical-'+ (banner.styles?.description?.position)\"\n [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000' \">\n {{banner.title}}\n </h2>\n }\n @if(banner.subtitle){\n <p [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000' \"\n [class]=\"'px-4 item-subtitle-full item-position-vertical-' + (banner.styles?.description?.position)\">\n {{banner.subtitle}}\n </p>\n }\n <div [class]=\"'item-position-vertical-' + (banner.styles?.button?.position)\">\n @if(banner.styles?.button?.text){\n <a href=\"{{banner.url}}\" [class]=\"'item-button-full btn btn-light'\">\n {{banner.styles.button.text}}\n </a>\n }\n </div>\n </div>\n }\n </div>\n </swiper-slide>\n }\n </swiper-container>\n <!-- } -->\n \n }\n </section>\n}", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
|
6398
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: BlockBannerFullEcComponent, isStandalone: true, selector: "app-block-banner-full-ec", inputs: { banners: "banners", meta: "meta", prevArrowImage: "prevArrowImage", nextArrowImage: "nextArrowImage", prevArrowText: "prevArrowText", nextArrowText: "nextArrowText", enableCustomNavigation: "enableCustomNavigation" }, usesInheritance: true, ngImport: i0, template: "@if(banners.length > 0) {\r\n <section [ngClass]=\"trimClassBlock(meta?.code)+' container-fluid px-0'\"\r\n [style.background-color]=\"meta.styles?.backgroundColor\"\r\n [style.background-image]=\"meta.styles?.backgroundImage ? 'url(' + mediaUrl + meta.styles?.backgroundImage +')' : 'inherit'\">\r\n\r\n @if (banners.length == 1) {\r\n <!-- si es formato fijo -->\r\n <div class=\"row justify-content-center\">\r\n @let banner = banners[0];\r\n @if(!banners.styles?.button?.text){\r\n <!-- banner sin boton -->\r\n <a [href]=\"banner.url\" >\r\n <div class=\"item col-12\">\r\n <img class=\"img-fluid\" [src]=\"mediaBannerUrl + getImage(banner)\" alt=\"\">\r\n <div class=\"position-absolute w-100 h-100 start-0 top-0\">\r\n @if(banner.title){\r\n <h2 [class]=\"'item-title-full px-2 item-position-vertical-' + (banner.styles?.description?.position)\"\r\n [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#fff' \">\r\n {{banner.title}}\r\n </h2>\r\n }\r\n @if(banner.subtitle){\r\n <p [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000' \"\r\n [class]=\"'px-4 item-subtitle-full item-position-vertical-' + (banner.styles?.description?.position)\">\r\n {{banner.subtitle}}\r\n </p>\r\n }\r\n </div>\r\n </div>\r\n </a>\r\n }@else {\r\n <!-- banner fijo con boton -->\r\n <div class=\"item col-12\">\r\n <img class=\"img-fluid\" [src]=\"mediaBannerUrl + getImage(banner)\" alt=\"\">\r\n <div class=\"position-absolute w-100 h-100 start-0 top-0\">\r\n @if(banner.title){\r\n <h2 [class]=\"'item-title-full px-2 item-position-vertical-' + (banner.styles?.description?.position)\"\r\n [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000' \">\r\n {{banner.title}}\r\n </h2>\r\n }\r\n @if(banner.subtitle){\r\n <p \r\n [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000' \"\r\n [class]=\"'px-4 item-subtitle-full item-position-vertical-' + (banner.styles?.description?.position)\">\r\n {{banner.subtitle}}\r\n </p>\r\n <div [class]=\"'item-position-vertical-' + (banner.styles?.button?.position)\">\r\n @if(banner.styles?.button?.text){\r\n <a href=\"{{banner.url}}\"\r\n [class]=\"'item-button-full btn btn-light '\">\r\n {{banner.styles.button.text}}\r\n </a> \r\n }\r\n \r\n </div>\r\n }\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n }@else {\r\n <!-- si es carrousel -->\r\n <!-- @if(swiperElement() != null){ -->\r\n <swiper-container init=\"false\" [id]=\"meta?.code\">\r\n @for (banner of banners; track $index) {\r\n <swiper-slide>\r\n <div class=\"item\">\r\n @if (!banner.styles?.button?.text) {\r\n <!-- banner sin boton -->\r\n @if(banner.url){\r\n <a [href]=\"banner.url\" class=\"\">\r\n <img [src]=\"mediaBannerUrl + getImage(banner)\" alt=\"\" class=\"img-fluid w-100\" />\r\n </a>\r\n }@else {\r\n <img [src]=\"mediaBannerUrl + getImage(banner)\" alt=\"\" class=\"img-fluid w-100\" />\r\n }\r\n }@else {\r\n <!-- banner con boton -->\r\n <img [src]=\"mediaBannerUrl + getImage(banner)\" alt=\"\" />\r\n <div class=\"position-absolute w-100 h-100 start-0 top-0\">\r\n @if(banner.title){\r\n <h2 [class]=\"'item-title-full px-2 item-position-vertical-'+ (banner.styles?.description?.position)\"\r\n [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000' \">\r\n {{banner.title}}\r\n </h2>\r\n }\r\n @if(banner.subtitle){\r\n <p [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000' \"\r\n [class]=\"'px-4 item-subtitle-full item-position-vertical-' + (banner.styles?.description?.position)\">\r\n {{banner.subtitle}}\r\n </p>\r\n }\r\n <div [class]=\"'item-position-vertical-' + (banner.styles?.button?.position)\">\r\n @if(banner.styles?.button?.text){\r\n <a href=\"{{banner.url}}\" [class]=\"'item-button-full btn btn-light'\">\r\n {{banner.styles.button.text}}\r\n </a>\r\n }\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n </swiper-slide>\r\n }\r\n </swiper-container>\r\n <!-- } -->\r\n \r\n }\r\n </section>\r\n}", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
|
6374
6399
|
}
|
|
6375
6400
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BlockBannerFullEcComponent, decorators: [{
|
|
6376
6401
|
type: Component,
|
|
6377
|
-
args: [{ selector: 'app-block-banner-full-ec', standalone: true, imports: [CommonModule, RouterLink], schemas: [CUSTOM_ELEMENTS_SCHEMA], template: "@if(banners.length > 0) {\n <section [ngClass]=\"trimClassBlock(meta?.code)+' container-fluid px-0'\"\n [style.background-color]=\"meta.styles?.backgroundColor\"\n [style.background-image]=\"meta.styles?.backgroundImage ? 'url(' + mediaUrl + meta.styles?.backgroundImage +')' : 'inherit'\">\n\n @if (banners.length == 1) {\n <!-- si es formato fijo -->\n <div class=\"row justify-content-center\">\n @let banner = banners[0];\n @if(!banners.styles?.button?.text){\n <!-- banner sin boton -->\n <a [href]=\"banner.url\" >\n <div class=\"item col-12\">\n <img class=\"img-fluid\" [src]=\"mediaBannerUrl + getImage(banner)\" alt=\"\">\n <div class=\"position-absolute w-100 h-100 start-0 top-0\">\n @if(banner.title){\n <h2 [class]=\"'item-title-full px-2 item-position-vertical-' + (banner.styles?.description?.position)\"\n [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#fff' \">\n {{banner.title}}\n </h2>\n }\n @if(banner.subtitle){\n <p [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000' \"\n [class]=\"'px-4 item-subtitle-full item-position-vertical-' + (banner.styles?.description?.position)\">\n {{banner.subtitle}}\n </p>\n }\n </div>\n </div>\n </a>\n }@else {\n <!-- banner fijo con boton -->\n <div class=\"item col-12\">\n <img class=\"img-fluid\" [src]=\"mediaBannerUrl + getImage(banner)\" alt=\"\">\n <div class=\"position-absolute w-100 h-100 start-0 top-0\">\n @if(banner.title){\n <h2 [class]=\"'item-title-full px-2 item-position-vertical-' + (banner.styles?.description?.position)\"\n [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000' \">\n {{banner.title}}\n </h2>\n }\n @if(banner.subtitle){\n <p \n [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000' \"\n [class]=\"'px-4 item-subtitle-full item-position-vertical-' + (banner.styles?.description?.position)\">\n {{banner.subtitle}}\n </p>\n <div [class]=\"'item-position-vertical-' + (banner.styles?.button?.position)\">\n @if(banner.styles?.button?.text){\n <a href=\"{{banner.url}}\"\n [class]=\"'item-button-full btn btn-light '\">\n {{banner.styles.button.text}}\n </a> \n }\n \n </div>\n }\n </div>\n </div>\n }\n </div>\n }@else {\n <!-- si es carrousel -->\n <!-- @if(swiperElement() != null){ -->\n <swiper-container init=\"false\" [id]=\"meta?.code\">\n @for (banner of banners; track $index) {\n <swiper-slide>\n <div class=\"item\">\n @if (!banner.styles?.button?.text) {\n <!-- banner sin boton -->\n @if(banner.url){\n <a [href]=\"banner.url\" class=\"\">\n <img [src]=\"mediaBannerUrl + getImage(banner)\" alt=\"\" class=\"img-fluid w-100\" />\n </a>\n }@else {\n <img [src]=\"mediaBannerUrl + getImage(banner)\" alt=\"\" class=\"img-fluid w-100\" />\n }\n }@else {\n <!-- banner con boton -->\n <img [src]=\"mediaBannerUrl + getImage(banner)\" alt=\"\" />\n <div class=\"position-absolute w-100 h-100 start-0 top-0\">\n @if(banner.title){\n <h2 [class]=\"'item-title-full px-2 item-position-vertical-'+ (banner.styles?.description?.position)\"\n [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000' \">\n {{banner.title}}\n </h2>\n }\n @if(banner.subtitle){\n <p [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000' \"\n [class]=\"'px-4 item-subtitle-full item-position-vertical-' + (banner.styles?.description?.position)\">\n {{banner.subtitle}}\n </p>\n }\n <div [class]=\"'item-position-vertical-' + (banner.styles?.button?.position)\">\n @if(banner.styles?.button?.text){\n <a href=\"{{banner.url}}\" [class]=\"'item-button-full btn btn-light'\">\n {{banner.styles.button.text}}\n </a>\n }\n </div>\n </div>\n }\n </div>\n </swiper-slide>\n }\n </swiper-container>\n <!-- } -->\n \n }\n </section>\n}" }]
|
|
6402
|
+
args: [{ selector: 'app-block-banner-full-ec', standalone: true, imports: [CommonModule, RouterLink], schemas: [CUSTOM_ELEMENTS_SCHEMA], template: "@if(banners.length > 0) {\r\n <section [ngClass]=\"trimClassBlock(meta?.code)+' container-fluid px-0'\"\r\n [style.background-color]=\"meta.styles?.backgroundColor\"\r\n [style.background-image]=\"meta.styles?.backgroundImage ? 'url(' + mediaUrl + meta.styles?.backgroundImage +')' : 'inherit'\">\r\n\r\n @if (banners.length == 1) {\r\n <!-- si es formato fijo -->\r\n <div class=\"row justify-content-center\">\r\n @let banner = banners[0];\r\n @if(!banners.styles?.button?.text){\r\n <!-- banner sin boton -->\r\n <a [href]=\"banner.url\" >\r\n <div class=\"item col-12\">\r\n <img class=\"img-fluid\" [src]=\"mediaBannerUrl + getImage(banner)\" alt=\"\">\r\n <div class=\"position-absolute w-100 h-100 start-0 top-0\">\r\n @if(banner.title){\r\n <h2 [class]=\"'item-title-full px-2 item-position-vertical-' + (banner.styles?.description?.position)\"\r\n [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#fff' \">\r\n {{banner.title}}\r\n </h2>\r\n }\r\n @if(banner.subtitle){\r\n <p [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000' \"\r\n [class]=\"'px-4 item-subtitle-full item-position-vertical-' + (banner.styles?.description?.position)\">\r\n {{banner.subtitle}}\r\n </p>\r\n }\r\n </div>\r\n </div>\r\n </a>\r\n }@else {\r\n <!-- banner fijo con boton -->\r\n <div class=\"item col-12\">\r\n <img class=\"img-fluid\" [src]=\"mediaBannerUrl + getImage(banner)\" alt=\"\">\r\n <div class=\"position-absolute w-100 h-100 start-0 top-0\">\r\n @if(banner.title){\r\n <h2 [class]=\"'item-title-full px-2 item-position-vertical-' + (banner.styles?.description?.position)\"\r\n [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000' \">\r\n {{banner.title}}\r\n </h2>\r\n }\r\n @if(banner.subtitle){\r\n <p \r\n [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000' \"\r\n [class]=\"'px-4 item-subtitle-full item-position-vertical-' + (banner.styles?.description?.position)\">\r\n {{banner.subtitle}}\r\n </p>\r\n <div [class]=\"'item-position-vertical-' + (banner.styles?.button?.position)\">\r\n @if(banner.styles?.button?.text){\r\n <a href=\"{{banner.url}}\"\r\n [class]=\"'item-button-full btn btn-light '\">\r\n {{banner.styles.button.text}}\r\n </a> \r\n }\r\n \r\n </div>\r\n }\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n }@else {\r\n <!-- si es carrousel -->\r\n <!-- @if(swiperElement() != null){ -->\r\n <swiper-container init=\"false\" [id]=\"meta?.code\">\r\n @for (banner of banners; track $index) {\r\n <swiper-slide>\r\n <div class=\"item\">\r\n @if (!banner.styles?.button?.text) {\r\n <!-- banner sin boton -->\r\n @if(banner.url){\r\n <a [href]=\"banner.url\" class=\"\">\r\n <img [src]=\"mediaBannerUrl + getImage(banner)\" alt=\"\" class=\"img-fluid w-100\" />\r\n </a>\r\n }@else {\r\n <img [src]=\"mediaBannerUrl + getImage(banner)\" alt=\"\" class=\"img-fluid w-100\" />\r\n }\r\n }@else {\r\n <!-- banner con boton -->\r\n <img [src]=\"mediaBannerUrl + getImage(banner)\" alt=\"\" />\r\n <div class=\"position-absolute w-100 h-100 start-0 top-0\">\r\n @if(banner.title){\r\n <h2 [class]=\"'item-title-full px-2 item-position-vertical-'+ (banner.styles?.description?.position)\"\r\n [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000' \">\r\n {{banner.title}}\r\n </h2>\r\n }\r\n @if(banner.subtitle){\r\n <p [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000' \"\r\n [class]=\"'px-4 item-subtitle-full item-position-vertical-' + (banner.styles?.description?.position)\">\r\n {{banner.subtitle}}\r\n </p>\r\n }\r\n <div [class]=\"'item-position-vertical-' + (banner.styles?.button?.position)\">\r\n @if(banner.styles?.button?.text){\r\n <a href=\"{{banner.url}}\" [class]=\"'item-button-full btn btn-light'\">\r\n {{banner.styles.button.text}}\r\n </a>\r\n }\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n </swiper-slide>\r\n }\r\n </swiper-container>\r\n <!-- } -->\r\n \r\n }\r\n </section>\r\n}" }]
|
|
6378
6403
|
}], ctorParameters: () => [], propDecorators: { banners: [{
|
|
6379
6404
|
type: Input,
|
|
6380
6405
|
args: [{
|
|
@@ -6481,11 +6506,11 @@ class BlockBannerBoxEcComponent extends BlockEcComponent {
|
|
|
6481
6506
|
}
|
|
6482
6507
|
boxesInlcudesCode = (box) => this.meta.code.toUpperCase().includes(box.toUpperCase());
|
|
6483
6508
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BlockBannerBoxEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
6484
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: BlockBannerBoxEcComponent, isStandalone: true, selector: "app-block-banner-box-ec", inputs: { banners: "banners", meta: "meta" }, usesInheritance: true, ngImport: i0, template: "@if(banners.length){\n <section [ngClass]=\"trimClassBlock(meta.code) + ' container'\" \n [style.background-color]=\"meta.styles?.backgroundColor\"\n [style.background-image]=\"meta.styles?.backgroundImage ? 'url(' + mediaUrl + meta.styles?.backgroundImage +')' : 'inherit'\">\n\n <div class=\"block-boxes\">\n @if(meta.name){\n <div class=\"row\">\n a\n <div class=\"col-12 mt-4\">\n <h2 class=\"font-weight-normal font-gd\">\n <span>{{meta.name}}</span>\n </h2>\n </div>\n </div> \n }\n \n @if(meta.styles && meta.styles.carrousel == false){\n <!-- Si es formato fijo -->\n <div class=\"banner-content\">\n <div class=\"row g-0\">\n @for (banner of banners; track $index) {\n <div [ngClass]=\"'item '+'col-md-6 '+'col-lg-'+(12/banners.length) \" [id]=\"$index\">\n <img class=\"img-fluid\" [src]=\" mediaBannerUrl+getImage(banner)\" alt=\"\" />\n <div class=\"position-absolute w-100 top-0 start-0 h-100\">\n <h2 [ngClass]=\"'item-title px-2 item-position-vertical-'+ (banner.styles?.description?.position)\"\n [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000'\">\n {{banner.title}}\n </h2>\n @if(banner.subtitle){\n <p [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000' \"\n [class]=\"'px-4 item-subtitle item-position-vertical-' + (banner.styles?.description?.position)\">\n {{banner.subtitle}}\n </p>\n }\n </div>\n <div [class]=\"'item-position-vertical-' + (banner.styles?.button?.position)\">\n @if(banner.styles?.button?.text){\n <a href=\"{{banner.url}}\" [class]=\"'item-button btn btn-light'\">\n {{banner.styles.button.text}}\n </a>\n }\n </div>\n </div>\n }\n </div>\n </div>\n }@else {\n <!-- Si es Carrousel -->\n <swiper-container init=\"false\" [id]=\"meta?.code\">\n @for (banner of banners; track $index) {\n <!-- Si es de Categorias -->\n @if (banner.taxons[0]) {\n <swiper-slide>\n\n <a class=\"banner-content carrousel item\" (click)='redirectRoute(banner.taxons[0].slug)' [routerLink]=\"['/collection/categories/', banner.taxons[0].slug]\" routerLinkActive=\"router-link-active\" style=\"text-decoration: none; cursor: pointer; background-color: white;\">\n <div class=\"image-container\">\n <img [src]=\"mediaBannerUrl+getImage(banner)\" alt=\"Banner Image\" class=\"banner-image\">\n </div>\n @if(banner.title){\n <h2 [class]=\"'box-text item-title-full px-2 item-position-vertical-'+ (banner.styles?.description?.position)\"\n style=\"color:#fff\">\n {{banner.title}}\n </h2>\n }\n @if(banner.taxons && banner.taxons.length){\n <h5 class=\"item-subtitle-full item-position-vertical-center text-center box-text\">\n {{banner.translations.es_AR.title}}\n </h5>\n }\n @if(banner.subtitle){\n <p [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000' \"\n [class]=\"'box-text px-4 item-subtitle-full item-position-vertical-' + (banner.styles?.description?.position)\">\n {{banner.subtitle}}\n </p>\n }\n </a>\n </swiper-slide>\n } @else {\n <swiper-slide>\n\n <a class=\"banner-content carrousel item\" style=\"cursor: pointer;\">\n <div class=\"image-container\">\n <img [src]=\"mediaBannerUrl+getImage(banner)\" alt=\"Banner Image\" class=\"banner-image\">\n </div>\n @if(banner.title){\n <h2 [class]=\"'box-text item-title-full px-2 item-position-vertical-'+ (banner.styles?.description?.position)\"\n style=\"color:#fff\">\n {{banner.title}}\n </h2>\n }\n @if(banner.taxons && banner.taxons.length){\n <h5 class=\"item-subtitle-full item-position-vertical-center text-center box-text\">\n {{banner.translations.es_AR.title}}\n </h5>\n }\n @if(banner.subtitle){\n <p [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000' \"\n [class]=\"'box-text px-4 item-subtitle-full item-position-vertical-' + (banner.styles?.description?.position)\">\n {{banner.subtitle}}\n </p>\n }\n </a>\n </swiper-slide>\n }\n \n }\n </swiper-container> \n }\n </div>\n\n </section>\n}", styles: ["@charset \"UTF-8\";.banner-container{text-align:center}.banner-image{display:block;margin:0 auto}.item-subtitle-full{margin-top:10px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i2.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }] });
|
|
6509
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: BlockBannerBoxEcComponent, isStandalone: true, selector: "app-block-banner-box-ec", inputs: { banners: "banners", meta: "meta" }, usesInheritance: true, ngImport: i0, template: "@if(banners.length){\r\n <section [ngClass]=\"trimClassBlock(meta.code) + ' container'\" \r\n [style.background-color]=\"meta.styles?.backgroundColor\"\r\n [style.background-image]=\"meta.styles?.backgroundImage ? 'url(' + mediaUrl + meta.styles?.backgroundImage +')' : 'inherit'\">\r\n\r\n <div class=\"block-boxes\">\r\n @if(meta.name){\r\n <div class=\"row\">\r\n a\r\n <div class=\"col-12 mt-4\">\r\n <h2 class=\"font-weight-normal font-gd\">\r\n <span>{{meta.name}}</span>\r\n </h2>\r\n </div>\r\n </div> \r\n }\r\n \r\n @if(meta.styles && meta.styles.carrousel == false){\r\n <!-- Si es formato fijo -->\r\n <div class=\"banner-content\">\r\n <div class=\"row g-0\">\r\n @for (banner of banners; track $index) {\r\n <div [ngClass]=\"'item '+'col-md-6 '+'col-lg-'+(12/banners.length) \" [id]=\"$index\">\r\n <img class=\"img-fluid\" [src]=\" mediaBannerUrl+getImage(banner)\" alt=\"\" />\r\n <div class=\"position-absolute w-100 top-0 start-0 h-100\">\r\n <h2 [ngClass]=\"'item-title px-2 item-position-vertical-'+ (banner.styles?.description?.position)\"\r\n [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000'\">\r\n {{banner.title}}\r\n </h2>\r\n @if(banner.subtitle){\r\n <p [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000' \"\r\n [class]=\"'px-4 item-subtitle item-position-vertical-' + (banner.styles?.description?.position)\">\r\n {{banner.subtitle}}\r\n </p>\r\n }\r\n </div>\r\n <div [class]=\"'item-position-vertical-' + (banner.styles?.button?.position)\">\r\n @if(banner.styles?.button?.text){\r\n <a href=\"{{banner.url}}\" [class]=\"'item-button btn btn-light'\">\r\n {{banner.styles.button.text}}\r\n </a>\r\n }\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n }@else {\r\n <!-- Si es Carrousel -->\r\n <swiper-container init=\"false\" [id]=\"meta?.code\">\r\n @for (banner of banners; track $index) {\r\n <!-- Si es de Categorias -->\r\n @if (banner.taxons[0]) {\r\n <swiper-slide>\r\n\r\n <a class=\"banner-content carrousel item\" (click)='redirectRoute(banner.taxons[0].slug)' [routerLink]=\"['/collection/categories/', banner.taxons[0].slug]\" routerLinkActive=\"router-link-active\" style=\"text-decoration: none; cursor: pointer; background-color: white;\">\r\n <div class=\"image-container\">\r\n <img [src]=\"mediaBannerUrl+getImage(banner)\" alt=\"Banner Image\" class=\"banner-image\">\r\n </div>\r\n @if(banner.title){\r\n <h2 [class]=\"'box-text item-title-full px-2 item-position-vertical-'+ (banner.styles?.description?.position)\"\r\n style=\"color:#fff\">\r\n {{banner.title}}\r\n </h2>\r\n }\r\n @if(banner.taxons && banner.taxons.length){\r\n <h5 class=\"item-subtitle-full item-position-vertical-center text-center box-text\">\r\n {{banner.translations.es_AR.title}}\r\n </h5>\r\n }\r\n @if(banner.subtitle){\r\n <p [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000' \"\r\n [class]=\"'box-text px-4 item-subtitle-full item-position-vertical-' + (banner.styles?.description?.position)\">\r\n {{banner.subtitle}}\r\n </p>\r\n }\r\n </a>\r\n </swiper-slide>\r\n } @else {\r\n <swiper-slide>\r\n\r\n <a class=\"banner-content carrousel item\" style=\"cursor: pointer;\">\r\n <div class=\"image-container\">\r\n <img [src]=\"mediaBannerUrl+getImage(banner)\" alt=\"Banner Image\" class=\"banner-image\">\r\n </div>\r\n @if(banner.title){\r\n <h2 [class]=\"'box-text item-title-full px-2 item-position-vertical-'+ (banner.styles?.description?.position)\"\r\n style=\"color:#fff\">\r\n {{banner.title}}\r\n </h2>\r\n }\r\n @if(banner.taxons && banner.taxons.length){\r\n <h5 class=\"item-subtitle-full item-position-vertical-center text-center box-text\">\r\n {{banner.translations.es_AR.title}}\r\n </h5>\r\n }\r\n @if(banner.subtitle){\r\n <p [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000' \"\r\n [class]=\"'box-text px-4 item-subtitle-full item-position-vertical-' + (banner.styles?.description?.position)\">\r\n {{banner.subtitle}}\r\n </p>\r\n }\r\n </a>\r\n </swiper-slide>\r\n }\r\n \r\n }\r\n </swiper-container> \r\n }\r\n </div>\r\n\r\n </section>\r\n}", styles: ["@charset \"UTF-8\";.banner-container{text-align:center}.banner-image{display:block;margin:0 auto}.item-subtitle-full{margin-top:10px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i2.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }] });
|
|
6485
6510
|
}
|
|
6486
6511
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BlockBannerBoxEcComponent, decorators: [{
|
|
6487
6512
|
type: Component,
|
|
6488
|
-
args: [{ selector: 'app-block-banner-box-ec', standalone: true, imports: [CommonModule, RouterModule], schemas: [CUSTOM_ELEMENTS_SCHEMA], template: "@if(banners.length){\n <section [ngClass]=\"trimClassBlock(meta.code) + ' container'\" \n [style.background-color]=\"meta.styles?.backgroundColor\"\n [style.background-image]=\"meta.styles?.backgroundImage ? 'url(' + mediaUrl + meta.styles?.backgroundImage +')' : 'inherit'\">\n\n <div class=\"block-boxes\">\n @if(meta.name){\n <div class=\"row\">\n a\n <div class=\"col-12 mt-4\">\n <h2 class=\"font-weight-normal font-gd\">\n <span>{{meta.name}}</span>\n </h2>\n </div>\n </div> \n }\n \n @if(meta.styles && meta.styles.carrousel == false){\n <!-- Si es formato fijo -->\n <div class=\"banner-content\">\n <div class=\"row g-0\">\n @for (banner of banners; track $index) {\n <div [ngClass]=\"'item '+'col-md-6 '+'col-lg-'+(12/banners.length) \" [id]=\"$index\">\n <img class=\"img-fluid\" [src]=\" mediaBannerUrl+getImage(banner)\" alt=\"\" />\n <div class=\"position-absolute w-100 top-0 start-0 h-100\">\n <h2 [ngClass]=\"'item-title px-2 item-position-vertical-'+ (banner.styles?.description?.position)\"\n [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000'\">\n {{banner.title}}\n </h2>\n @if(banner.subtitle){\n <p [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000' \"\n [class]=\"'px-4 item-subtitle item-position-vertical-' + (banner.styles?.description?.position)\">\n {{banner.subtitle}}\n </p>\n }\n </div>\n <div [class]=\"'item-position-vertical-' + (banner.styles?.button?.position)\">\n @if(banner.styles?.button?.text){\n <a href=\"{{banner.url}}\" [class]=\"'item-button btn btn-light'\">\n {{banner.styles.button.text}}\n </a>\n }\n </div>\n </div>\n }\n </div>\n </div>\n }@else {\n <!-- Si es Carrousel -->\n <swiper-container init=\"false\" [id]=\"meta?.code\">\n @for (banner of banners; track $index) {\n <!-- Si es de Categorias -->\n @if (banner.taxons[0]) {\n <swiper-slide>\n\n <a class=\"banner-content carrousel item\" (click)='redirectRoute(banner.taxons[0].slug)' [routerLink]=\"['/collection/categories/', banner.taxons[0].slug]\" routerLinkActive=\"router-link-active\" style=\"text-decoration: none; cursor: pointer; background-color: white;\">\n <div class=\"image-container\">\n <img [src]=\"mediaBannerUrl+getImage(banner)\" alt=\"Banner Image\" class=\"banner-image\">\n </div>\n @if(banner.title){\n <h2 [class]=\"'box-text item-title-full px-2 item-position-vertical-'+ (banner.styles?.description?.position)\"\n style=\"color:#fff\">\n {{banner.title}}\n </h2>\n }\n @if(banner.taxons && banner.taxons.length){\n <h5 class=\"item-subtitle-full item-position-vertical-center text-center box-text\">\n {{banner.translations.es_AR.title}}\n </h5>\n }\n @if(banner.subtitle){\n <p [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000' \"\n [class]=\"'box-text px-4 item-subtitle-full item-position-vertical-' + (banner.styles?.description?.position)\">\n {{banner.subtitle}}\n </p>\n }\n </a>\n </swiper-slide>\n } @else {\n <swiper-slide>\n\n <a class=\"banner-content carrousel item\" style=\"cursor: pointer;\">\n <div class=\"image-container\">\n <img [src]=\"mediaBannerUrl+getImage(banner)\" alt=\"Banner Image\" class=\"banner-image\">\n </div>\n @if(banner.title){\n <h2 [class]=\"'box-text item-title-full px-2 item-position-vertical-'+ (banner.styles?.description?.position)\"\n style=\"color:#fff\">\n {{banner.title}}\n </h2>\n }\n @if(banner.taxons && banner.taxons.length){\n <h5 class=\"item-subtitle-full item-position-vertical-center text-center box-text\">\n {{banner.translations.es_AR.title}}\n </h5>\n }\n @if(banner.subtitle){\n <p [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000' \"\n [class]=\"'box-text px-4 item-subtitle-full item-position-vertical-' + (banner.styles?.description?.position)\">\n {{banner.subtitle}}\n </p>\n }\n </a>\n </swiper-slide>\n }\n \n }\n </swiper-container> \n }\n </div>\n\n </section>\n}", styles: ["@charset \"UTF-8\";.banner-container{text-align:center}.banner-image{display:block;margin:0 auto}.item-subtitle-full{margin-top:10px}\n"] }]
|
|
6513
|
+
args: [{ selector: 'app-block-banner-box-ec', standalone: true, imports: [CommonModule, RouterModule], schemas: [CUSTOM_ELEMENTS_SCHEMA], template: "@if(banners.length){\r\n <section [ngClass]=\"trimClassBlock(meta.code) + ' container'\" \r\n [style.background-color]=\"meta.styles?.backgroundColor\"\r\n [style.background-image]=\"meta.styles?.backgroundImage ? 'url(' + mediaUrl + meta.styles?.backgroundImage +')' : 'inherit'\">\r\n\r\n <div class=\"block-boxes\">\r\n @if(meta.name){\r\n <div class=\"row\">\r\n a\r\n <div class=\"col-12 mt-4\">\r\n <h2 class=\"font-weight-normal font-gd\">\r\n <span>{{meta.name}}</span>\r\n </h2>\r\n </div>\r\n </div> \r\n }\r\n \r\n @if(meta.styles && meta.styles.carrousel == false){\r\n <!-- Si es formato fijo -->\r\n <div class=\"banner-content\">\r\n <div class=\"row g-0\">\r\n @for (banner of banners; track $index) {\r\n <div [ngClass]=\"'item '+'col-md-6 '+'col-lg-'+(12/banners.length) \" [id]=\"$index\">\r\n <img class=\"img-fluid\" [src]=\" mediaBannerUrl+getImage(banner)\" alt=\"\" />\r\n <div class=\"position-absolute w-100 top-0 start-0 h-100\">\r\n <h2 [ngClass]=\"'item-title px-2 item-position-vertical-'+ (banner.styles?.description?.position)\"\r\n [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000'\">\r\n {{banner.title}}\r\n </h2>\r\n @if(banner.subtitle){\r\n <p [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000' \"\r\n [class]=\"'px-4 item-subtitle item-position-vertical-' + (banner.styles?.description?.position)\">\r\n {{banner.subtitle}}\r\n </p>\r\n }\r\n </div>\r\n <div [class]=\"'item-position-vertical-' + (banner.styles?.button?.position)\">\r\n @if(banner.styles?.button?.text){\r\n <a href=\"{{banner.url}}\" [class]=\"'item-button btn btn-light'\">\r\n {{banner.styles.button.text}}\r\n </a>\r\n }\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n }@else {\r\n <!-- Si es Carrousel -->\r\n <swiper-container init=\"false\" [id]=\"meta?.code\">\r\n @for (banner of banners; track $index) {\r\n <!-- Si es de Categorias -->\r\n @if (banner.taxons[0]) {\r\n <swiper-slide>\r\n\r\n <a class=\"banner-content carrousel item\" (click)='redirectRoute(banner.taxons[0].slug)' [routerLink]=\"['/collection/categories/', banner.taxons[0].slug]\" routerLinkActive=\"router-link-active\" style=\"text-decoration: none; cursor: pointer; background-color: white;\">\r\n <div class=\"image-container\">\r\n <img [src]=\"mediaBannerUrl+getImage(banner)\" alt=\"Banner Image\" class=\"banner-image\">\r\n </div>\r\n @if(banner.title){\r\n <h2 [class]=\"'box-text item-title-full px-2 item-position-vertical-'+ (banner.styles?.description?.position)\"\r\n style=\"color:#fff\">\r\n {{banner.title}}\r\n </h2>\r\n }\r\n @if(banner.taxons && banner.taxons.length){\r\n <h5 class=\"item-subtitle-full item-position-vertical-center text-center box-text\">\r\n {{banner.translations.es_AR.title}}\r\n </h5>\r\n }\r\n @if(banner.subtitle){\r\n <p [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000' \"\r\n [class]=\"'box-text px-4 item-subtitle-full item-position-vertical-' + (banner.styles?.description?.position)\">\r\n {{banner.subtitle}}\r\n </p>\r\n }\r\n </a>\r\n </swiper-slide>\r\n } @else {\r\n <swiper-slide>\r\n\r\n <a class=\"banner-content carrousel item\" style=\"cursor: pointer;\">\r\n <div class=\"image-container\">\r\n <img [src]=\"mediaBannerUrl+getImage(banner)\" alt=\"Banner Image\" class=\"banner-image\">\r\n </div>\r\n @if(banner.title){\r\n <h2 [class]=\"'box-text item-title-full px-2 item-position-vertical-'+ (banner.styles?.description?.position)\"\r\n style=\"color:#fff\">\r\n {{banner.title}}\r\n </h2>\r\n }\r\n @if(banner.taxons && banner.taxons.length){\r\n <h5 class=\"item-subtitle-full item-position-vertical-center text-center box-text\">\r\n {{banner.translations.es_AR.title}}\r\n </h5>\r\n }\r\n @if(banner.subtitle){\r\n <p [style.color]=\"(banner.styles?.description?.color) ? banner.styles?.description?.color : '#000' \"\r\n [class]=\"'box-text px-4 item-subtitle-full item-position-vertical-' + (banner.styles?.description?.position)\">\r\n {{banner.subtitle}}\r\n </p>\r\n }\r\n </a>\r\n </swiper-slide>\r\n }\r\n \r\n }\r\n </swiper-container> \r\n }\r\n </div>\r\n\r\n </section>\r\n}", styles: ["@charset \"UTF-8\";.banner-container{text-align:center}.banner-image{display:block;margin:0 auto}.item-subtitle-full{margin-top:10px}\n"] }]
|
|
6489
6514
|
}], ctorParameters: () => [], propDecorators: { banners: [{
|
|
6490
6515
|
type: Input,
|
|
6491
6516
|
args: [{
|
|
@@ -6517,11 +6542,11 @@ class BlockHtmlEcComponent extends BlockEcComponent {
|
|
|
6517
6542
|
this.html_content = this.sanitizer.bypassSecurityTrustHtml(this.html_content);
|
|
6518
6543
|
}
|
|
6519
6544
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BlockHtmlEcComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
6520
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: BlockHtmlEcComponent, isStandalone: true, selector: "app-block-html-ec", inputs: { html_content: "html_content" }, usesInheritance: true, ngImport: i0, template: "<div [innerHTML]=\"html_content\"></div>\n", styles: [""] });
|
|
6545
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: BlockHtmlEcComponent, isStandalone: true, selector: "app-block-html-ec", inputs: { html_content: "html_content" }, usesInheritance: true, ngImport: i0, template: "<div [innerHTML]=\"html_content\"></div>\r\n", styles: [""] });
|
|
6521
6546
|
}
|
|
6522
6547
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BlockHtmlEcComponent, decorators: [{
|
|
6523
6548
|
type: Component,
|
|
6524
|
-
args: [{ selector: 'app-block-html-ec', standalone: true, imports: [], template: "<div [innerHTML]=\"html_content\"></div>\n" }]
|
|
6549
|
+
args: [{ selector: 'app-block-html-ec', standalone: true, imports: [], template: "<div [innerHTML]=\"html_content\"></div>\r\n" }]
|
|
6525
6550
|
}], propDecorators: { html_content: [{
|
|
6526
6551
|
type: Input,
|
|
6527
6552
|
args: [{
|
|
@@ -6683,11 +6708,11 @@ class PriceEcComponent {
|
|
|
6683
6708
|
return !!value && value.split(' - ').length === 2;
|
|
6684
6709
|
}
|
|
6685
6710
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PriceEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
6686
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: PriceEcComponent, isStandalone: true, selector: "app-price-ec", inputs: { price: "price", saleprice: "saleprice", basePrice: "basePrice", taxeAmount: "taxeAmount", taxes: "taxes", priceSize: "priceSize", showTaxLegendOnly: "showTaxLegendOnly", disableTaxInfo: "disableTaxInfo", customPriceTemplate: "customPriceTemplate", customSalePriceTemplate: "customSalePriceTemplate", customSimplePriceTemplate: "customSimplePriceTemplate", customSimpleSalePriceTemplate: "customSimpleSalePriceTemplate", customTaxTemplate: "customTaxTemplate", customOnlyTaxLabelTemplate: "customOnlyTaxLabelTemplate" }, ngImport: i0, template: "@if(!hidePrices){\n@if (!showPricesOnlyToLoggedUsers || logged) {\n<ng-container *ngIf=\"customSalePriceTemplate || customPriceTemplate; else defaultPriceBlock\">\n <ng-container *ngTemplateOutlet=\"customSalePriceTemplate || customPriceTemplate\">\n </ng-container>\n</ng-container>\n\n<ng-template #defaultPriceBlock>\n <div class=\"price\">\n <!-- Con precio de oferta -->\n <div *ngIf=\"saleprice; else onlyPriceBlock\" class=\"line-height-custom\">\n\n <!-- Precio original como rango o tachado simple -->\n <div *ngIf=\"hasRange(price); else simplePriceDel\" class=\"price-whithSaleprice\">\n <del class=\"\">\n {{\n price!.split(' - ')[0] | ecCurrencySymbol\n }}\n {{\n price!.split(' - ')[1] | ecCurrencySymbol\n }}\n </del>\n </div>\n\n <!-- Oferta como rango o simple -->\n <div *ngIf=\"hasRange(saleprice); else simpleSalePrice\" class=\"\">\n {{\n saleprice!.split(' - ')[0] | ecCurrencySymbol\n }}\n {{\n saleprice!.split(' - ')[1] | ecCurrencySymbol\n }}\n </div>\n </div>\n\n <!-- S\u00F3lo precio sin oferta -->\n <ng-template #onlyPriceBlock>\n <div *ngIf=\"hasRange(price); else simplePrice\" class=\"price-onlyPrice\">\n {{\n price!.split(' - ')[0] | ecCurrencySymbol\n }} -\n {{\n price!.split(' - ')[1] | ecCurrencySymbol\n }}\n </div>\n </ng-template>\n\n <!-- Fallback simple price -->\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 <ng-template #fallbackSimplePrice>\n <del> </del>\n <div class=\"price-simplePrice\">\n {{ price | ecCurrencySymbol }}\n </div>\n </ng-template>\n\n <!-- Fallback simple price-del -->\n <ng-template #simplePriceDel>\n <div class=\"price-simpleDel\">\n <del class=\"\">{{ price | ecCurrencySymbol }}</del>\n </div>\n </ng-template>\n\n <!-- Fallback simple saleprice -->\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 <ng-template #fallbackSimpleSalePrice>\n <div class=\"price-simpleSaleprice\">\n {{ saleprice | ecCurrencySymbol }}\n </div>\n </ng-template>\n </div>\n</ng-template>\n\n<!-- Secci\u00F3n de impuestos -->\n<ng-container *ngIf=\"shouldShowTaxes\">\n <!-- S\u00F3lo leyenda -->\n <ng-container *ngIf=\"showTaxLegendOnly; else detailedTaxBlock\">\n <ng-container *ngIf=\"customOnlyTaxLabelTemplate; else defaultOnlyTaxLabel\">\n <ng-container *ngTemplateOutlet=\"customOnlyTaxLabelTemplate\"></ng-container>\n </ng-container>\n <ng-template #defaultOnlyTaxLabel>\n <p class=\"taxes-title\">\n {{ 'price-without-national-taxes' | translate }}:\n {{ basePrice! | ecCurrencySymbol }}\n </p>\n </ng-template>\n </ng-container>\n\n <!-- Detalle impuestos -->\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\">\n {{ 'price-without-national-taxes' | translate }}:\n {{ basePrice! | ecCurrencySymbol }}\n </p>\n <ul class=\"taxes-list\">\n <li>\n {{ taxes.Name }}: {{ taxeAmount | ecCurrencySymbol }}\n </li>\n </ul>\n </div>\n</ng-template>\n}\n}", styles: [".price-sm{font-size:13px}.price{font-size:18px}.line-height-custom{line-height:1.2}.lnth{text-decoration:line-through;color:gray}.taxes-section{margin-top:.5rem;border-radius:.5rem;font-size:.95rem;color:#333;line-height:1.4;max-width:400px}.taxes-title{font-weight:500;margin-bottom:.2rem;font-size:.7rem;color:#222}.taxes-list{list-style:none;padding:0;margin:0}.taxes-list li{display:flex;justify-content:space-between;margin-bottom:.1rem;font-size:.65rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: EcCurrencySymbolPipe, name: "ecCurrencySymbol" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
6711
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: PriceEcComponent, isStandalone: true, selector: "app-price-ec", inputs: { price: "price", saleprice: "saleprice", basePrice: "basePrice", taxeAmount: "taxeAmount", taxes: "taxes", priceSize: "priceSize", showTaxLegendOnly: "showTaxLegendOnly", disableTaxInfo: "disableTaxInfo", customPriceTemplate: "customPriceTemplate", customSalePriceTemplate: "customSalePriceTemplate", customSimplePriceTemplate: "customSimplePriceTemplate", customSimpleSalePriceTemplate: "customSimpleSalePriceTemplate", customTaxTemplate: "customTaxTemplate", customOnlyTaxLabelTemplate: "customOnlyTaxLabelTemplate" }, ngImport: i0, template: "@if(!hidePrices){\r\n@if (!showPricesOnlyToLoggedUsers || logged) {\r\n<ng-container *ngIf=\"customSalePriceTemplate || customPriceTemplate; else defaultPriceBlock\">\r\n <ng-container *ngTemplateOutlet=\"customSalePriceTemplate || customPriceTemplate\">\r\n </ng-container>\r\n</ng-container>\r\n\r\n<ng-template #defaultPriceBlock>\r\n <div class=\"price\">\r\n <!-- Con precio de oferta -->\r\n <div *ngIf=\"saleprice; else onlyPriceBlock\" class=\"line-height-custom\">\r\n\r\n <!-- Precio original como rango o tachado simple -->\r\n <div *ngIf=\"hasRange(price); else simplePriceDel\" class=\"price-whithSaleprice\">\r\n <del class=\"\">\r\n {{\r\n price!.split(' - ')[0] | ecCurrencySymbol\r\n }}\r\n {{\r\n price!.split(' - ')[1] | ecCurrencySymbol\r\n }}\r\n </del>\r\n </div>\r\n\r\n <!-- Oferta como rango o simple -->\r\n <div *ngIf=\"hasRange(saleprice); else simpleSalePrice\" class=\"\">\r\n {{\r\n saleprice!.split(' - ')[0] | ecCurrencySymbol\r\n }}\r\n {{\r\n saleprice!.split(' - ')[1] | ecCurrencySymbol\r\n }}\r\n </div>\r\n </div>\r\n\r\n <!-- S\u00F3lo precio sin oferta -->\r\n <ng-template #onlyPriceBlock>\r\n <div *ngIf=\"hasRange(price); else simplePrice\" class=\"price-onlyPrice\">\r\n {{\r\n price!.split(' - ')[0] | ecCurrencySymbol\r\n }} -\r\n {{\r\n price!.split(' - ')[1] | ecCurrencySymbol\r\n }}\r\n </div>\r\n </ng-template>\r\n\r\n <!-- Fallback simple price -->\r\n <ng-template #simplePrice>\r\n <ng-container *ngIf=\"customSimplePriceTemplate; else fallbackSimplePrice\">\r\n <ng-container *ngTemplateOutlet=\"customSimplePriceTemplate\"></ng-container>\r\n </ng-container>\r\n </ng-template>\r\n <ng-template #fallbackSimplePrice>\r\n <del> </del>\r\n <div class=\"price-simplePrice\">\r\n {{ price | ecCurrencySymbol }}\r\n </div>\r\n </ng-template>\r\n\r\n <!-- Fallback simple price-del -->\r\n <ng-template #simplePriceDel>\r\n <div class=\"price-simpleDel\">\r\n <del class=\"\">{{ price | ecCurrencySymbol }}</del>\r\n </div>\r\n </ng-template>\r\n\r\n <!-- Fallback simple saleprice -->\r\n <ng-template #simpleSalePrice>\r\n <ng-container *ngIf=\"customSimpleSalePriceTemplate; else fallbackSimpleSalePrice\">\r\n <ng-container *ngTemplateOutlet=\"customSimpleSalePriceTemplate\"></ng-container>\r\n </ng-container>\r\n </ng-template>\r\n <ng-template #fallbackSimpleSalePrice>\r\n <div class=\"price-simpleSaleprice\">\r\n {{ saleprice | ecCurrencySymbol }}\r\n </div>\r\n </ng-template>\r\n </div>\r\n</ng-template>\r\n\r\n<!-- Secci\u00F3n de impuestos -->\r\n<ng-container *ngIf=\"shouldShowTaxes\">\r\n <!-- S\u00F3lo leyenda -->\r\n <ng-container *ngIf=\"showTaxLegendOnly; else detailedTaxBlock\">\r\n <ng-container *ngIf=\"customOnlyTaxLabelTemplate; else defaultOnlyTaxLabel\">\r\n <ng-container *ngTemplateOutlet=\"customOnlyTaxLabelTemplate\"></ng-container>\r\n </ng-container>\r\n <ng-template #defaultOnlyTaxLabel>\r\n <p class=\"taxes-title\">\r\n {{ 'price-without-national-taxes' | translate }}:\r\n {{ basePrice! | ecCurrencySymbol }}\r\n </p>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <!-- Detalle impuestos -->\r\n <ng-template #detailedTaxBlock>\r\n <ng-container *ngIf=\"customTaxTemplate; else defaultTaxBlock\">\r\n <ng-container *ngTemplateOutlet=\"customTaxTemplate\"></ng-container>\r\n </ng-container>\r\n </ng-template>\r\n</ng-container>\r\n\r\n<ng-template #defaultTaxBlock>\r\n <div class=\"taxes-section\">\r\n <p class=\"taxes-title\">\r\n {{ 'price-without-national-taxes' | translate }}:\r\n {{ basePrice! | ecCurrencySymbol }}\r\n </p>\r\n <ul class=\"taxes-list\">\r\n <li>\r\n {{ taxes.Name }}: {{ taxeAmount | ecCurrencySymbol }}\r\n </li>\r\n </ul>\r\n </div>\r\n</ng-template>\r\n}\r\n}", styles: [".price-sm{font-size:13px}.price{font-size:18px}.line-height-custom{line-height:1.2}.lnth{text-decoration:line-through;color:gray}.taxes-section{margin-top:.5rem;border-radius:.5rem;font-size:.95rem;color:#333;line-height:1.4;max-width:400px}.taxes-title{font-weight:500;margin-bottom:.2rem;font-size:.7rem;color:#222}.taxes-list{list-style:none;padding:0;margin:0}.taxes-list li{display:flex;justify-content:space-between;margin-bottom:.1rem;font-size:.65rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: EcCurrencySymbolPipe, name: "ecCurrencySymbol" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
6687
6712
|
}
|
|
6688
6713
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PriceEcComponent, decorators: [{
|
|
6689
6714
|
type: Component,
|
|
6690
|
-
args: [{ selector: 'app-price-ec', standalone: true, imports: [CommonModule, EcCurrencySymbolPipe, TranslateModule], template: "@if(!hidePrices){\n@if (!showPricesOnlyToLoggedUsers || logged) {\n<ng-container *ngIf=\"customSalePriceTemplate || customPriceTemplate; else defaultPriceBlock\">\n <ng-container *ngTemplateOutlet=\"customSalePriceTemplate || customPriceTemplate\">\n </ng-container>\n</ng-container>\n\n<ng-template #defaultPriceBlock>\n <div class=\"price\">\n <!-- Con precio de oferta -->\n <div *ngIf=\"saleprice; else onlyPriceBlock\" class=\"line-height-custom\">\n\n <!-- Precio original como rango o tachado simple -->\n <div *ngIf=\"hasRange(price); else simplePriceDel\" class=\"price-whithSaleprice\">\n <del class=\"\">\n {{\n price!.split(' - ')[0] | ecCurrencySymbol\n }}\n {{\n price!.split(' - ')[1] | ecCurrencySymbol\n }}\n </del>\n </div>\n\n <!-- Oferta como rango o simple -->\n <div *ngIf=\"hasRange(saleprice); else simpleSalePrice\" class=\"\">\n {{\n saleprice!.split(' - ')[0] | ecCurrencySymbol\n }}\n {{\n saleprice!.split(' - ')[1] | ecCurrencySymbol\n }}\n </div>\n </div>\n\n <!-- S\u00F3lo precio sin oferta -->\n <ng-template #onlyPriceBlock>\n <div *ngIf=\"hasRange(price); else simplePrice\" class=\"price-onlyPrice\">\n {{\n price!.split(' - ')[0] | ecCurrencySymbol\n }} -\n {{\n price!.split(' - ')[1] | ecCurrencySymbol\n }}\n </div>\n </ng-template>\n\n <!-- Fallback simple price -->\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 <ng-template #fallbackSimplePrice>\n <del> </del>\n <div class=\"price-simplePrice\">\n {{ price | ecCurrencySymbol }}\n </div>\n </ng-template>\n\n <!-- Fallback simple price-del -->\n <ng-template #simplePriceDel>\n <div class=\"price-simpleDel\">\n <del class=\"\">{{ price | ecCurrencySymbol }}</del>\n </div>\n </ng-template>\n\n <!-- Fallback simple saleprice -->\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 <ng-template #fallbackSimpleSalePrice>\n <div class=\"price-simpleSaleprice\">\n {{ saleprice | ecCurrencySymbol }}\n </div>\n </ng-template>\n </div>\n</ng-template>\n\n<!-- Secci\u00F3n de impuestos -->\n<ng-container *ngIf=\"shouldShowTaxes\">\n <!-- S\u00F3lo leyenda -->\n <ng-container *ngIf=\"showTaxLegendOnly; else detailedTaxBlock\">\n <ng-container *ngIf=\"customOnlyTaxLabelTemplate; else defaultOnlyTaxLabel\">\n <ng-container *ngTemplateOutlet=\"customOnlyTaxLabelTemplate\"></ng-container>\n </ng-container>\n <ng-template #defaultOnlyTaxLabel>\n <p class=\"taxes-title\">\n {{ 'price-without-national-taxes' | translate }}:\n {{ basePrice! | ecCurrencySymbol }}\n </p>\n </ng-template>\n </ng-container>\n\n <!-- Detalle impuestos -->\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\">\n {{ 'price-without-national-taxes' | translate }}:\n {{ basePrice! | ecCurrencySymbol }}\n </p>\n <ul class=\"taxes-list\">\n <li>\n {{ taxes.Name }}: {{ taxeAmount | ecCurrencySymbol }}\n </li>\n </ul>\n </div>\n</ng-template>\n}\n}", styles: [".price-sm{font-size:13px}.price{font-size:18px}.line-height-custom{line-height:1.2}.lnth{text-decoration:line-through;color:gray}.taxes-section{margin-top:.5rem;border-radius:.5rem;font-size:.95rem;color:#333;line-height:1.4;max-width:400px}.taxes-title{font-weight:500;margin-bottom:.2rem;font-size:.7rem;color:#222}.taxes-list{list-style:none;padding:0;margin:0}.taxes-list li{display:flex;justify-content:space-between;margin-bottom:.1rem;font-size:.65rem}\n"] }]
|
|
6715
|
+
args: [{ selector: 'app-price-ec', standalone: true, imports: [CommonModule, EcCurrencySymbolPipe, TranslateModule], template: "@if(!hidePrices){\r\n@if (!showPricesOnlyToLoggedUsers || logged) {\r\n<ng-container *ngIf=\"customSalePriceTemplate || customPriceTemplate; else defaultPriceBlock\">\r\n <ng-container *ngTemplateOutlet=\"customSalePriceTemplate || customPriceTemplate\">\r\n </ng-container>\r\n</ng-container>\r\n\r\n<ng-template #defaultPriceBlock>\r\n <div class=\"price\">\r\n <!-- Con precio de oferta -->\r\n <div *ngIf=\"saleprice; else onlyPriceBlock\" class=\"line-height-custom\">\r\n\r\n <!-- Precio original como rango o tachado simple -->\r\n <div *ngIf=\"hasRange(price); else simplePriceDel\" class=\"price-whithSaleprice\">\r\n <del class=\"\">\r\n {{\r\n price!.split(' - ')[0] | ecCurrencySymbol\r\n }}\r\n {{\r\n price!.split(' - ')[1] | ecCurrencySymbol\r\n }}\r\n </del>\r\n </div>\r\n\r\n <!-- Oferta como rango o simple -->\r\n <div *ngIf=\"hasRange(saleprice); else simpleSalePrice\" class=\"\">\r\n {{\r\n saleprice!.split(' - ')[0] | ecCurrencySymbol\r\n }}\r\n {{\r\n saleprice!.split(' - ')[1] | ecCurrencySymbol\r\n }}\r\n </div>\r\n </div>\r\n\r\n <!-- S\u00F3lo precio sin oferta -->\r\n <ng-template #onlyPriceBlock>\r\n <div *ngIf=\"hasRange(price); else simplePrice\" class=\"price-onlyPrice\">\r\n {{\r\n price!.split(' - ')[0] | ecCurrencySymbol\r\n }} -\r\n {{\r\n price!.split(' - ')[1] | ecCurrencySymbol\r\n }}\r\n </div>\r\n </ng-template>\r\n\r\n <!-- Fallback simple price -->\r\n <ng-template #simplePrice>\r\n <ng-container *ngIf=\"customSimplePriceTemplate; else fallbackSimplePrice\">\r\n <ng-container *ngTemplateOutlet=\"customSimplePriceTemplate\"></ng-container>\r\n </ng-container>\r\n </ng-template>\r\n <ng-template #fallbackSimplePrice>\r\n <del> </del>\r\n <div class=\"price-simplePrice\">\r\n {{ price | ecCurrencySymbol }}\r\n </div>\r\n </ng-template>\r\n\r\n <!-- Fallback simple price-del -->\r\n <ng-template #simplePriceDel>\r\n <div class=\"price-simpleDel\">\r\n <del class=\"\">{{ price | ecCurrencySymbol }}</del>\r\n </div>\r\n </ng-template>\r\n\r\n <!-- Fallback simple saleprice -->\r\n <ng-template #simpleSalePrice>\r\n <ng-container *ngIf=\"customSimpleSalePriceTemplate; else fallbackSimpleSalePrice\">\r\n <ng-container *ngTemplateOutlet=\"customSimpleSalePriceTemplate\"></ng-container>\r\n </ng-container>\r\n </ng-template>\r\n <ng-template #fallbackSimpleSalePrice>\r\n <div class=\"price-simpleSaleprice\">\r\n {{ saleprice | ecCurrencySymbol }}\r\n </div>\r\n </ng-template>\r\n </div>\r\n</ng-template>\r\n\r\n<!-- Secci\u00F3n de impuestos -->\r\n<ng-container *ngIf=\"shouldShowTaxes\">\r\n <!-- S\u00F3lo leyenda -->\r\n <ng-container *ngIf=\"showTaxLegendOnly; else detailedTaxBlock\">\r\n <ng-container *ngIf=\"customOnlyTaxLabelTemplate; else defaultOnlyTaxLabel\">\r\n <ng-container *ngTemplateOutlet=\"customOnlyTaxLabelTemplate\"></ng-container>\r\n </ng-container>\r\n <ng-template #defaultOnlyTaxLabel>\r\n <p class=\"taxes-title\">\r\n {{ 'price-without-national-taxes' | translate }}:\r\n {{ basePrice! | ecCurrencySymbol }}\r\n </p>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <!-- Detalle impuestos -->\r\n <ng-template #detailedTaxBlock>\r\n <ng-container *ngIf=\"customTaxTemplate; else defaultTaxBlock\">\r\n <ng-container *ngTemplateOutlet=\"customTaxTemplate\"></ng-container>\r\n </ng-container>\r\n </ng-template>\r\n</ng-container>\r\n\r\n<ng-template #defaultTaxBlock>\r\n <div class=\"taxes-section\">\r\n <p class=\"taxes-title\">\r\n {{ 'price-without-national-taxes' | translate }}:\r\n {{ basePrice! | ecCurrencySymbol }}\r\n </p>\r\n <ul class=\"taxes-list\">\r\n <li>\r\n {{ taxes.Name }}: {{ taxeAmount | ecCurrencySymbol }}\r\n </li>\r\n </ul>\r\n </div>\r\n</ng-template>\r\n}\r\n}", styles: [".price-sm{font-size:13px}.price{font-size:18px}.line-height-custom{line-height:1.2}.lnth{text-decoration:line-through;color:gray}.taxes-section{margin-top:.5rem;border-radius:.5rem;font-size:.95rem;color:#333;line-height:1.4;max-width:400px}.taxes-title{font-weight:500;margin-bottom:.2rem;font-size:.7rem;color:#222}.taxes-list{list-style:none;padding:0;margin:0}.taxes-list li{display:flex;justify-content:space-between;margin-bottom:.1rem;font-size:.65rem}\n"] }]
|
|
6691
6716
|
}], propDecorators: { price: [{
|
|
6692
6717
|
type: Input
|
|
6693
6718
|
}], saleprice: [{
|
|
@@ -6798,11 +6823,11 @@ class ProductEcComponent {
|
|
|
6798
6823
|
return Math.round(discount);
|
|
6799
6824
|
}
|
|
6800
6825
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ProductEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
6801
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ProductEcComponent, isStandalone: true, selector: "app-product-ec", inputs: { product: "product", isProductBox: "isProductBox", isCollection: "isCollection" }, outputs: { loaded: "loaded" }, ngImport: i0, template: "<a [routerLink]=\"['/product', product.id]\" class=\"text-decoration-none producto\">\n <!-- Marca especial y descuento -->\n <!-- <div *ngIf=\"product.saleprice || (product.special_mark && product.special_mark !== null && product.special_mark !== undefined && product.special_mark.length >0)\"\n class=\"marcas\">\n <div *ecProductStock=\"product\" [ecProductMini]=\"product.special_mark\"></div>\n <ng-container *ngIf=\"shouldShowPrice\">\n <div *ecProductStock=\"product\" [ngClass]=\"{'tag-dsc float-right': product.saleprice}\"\n [ecProductOff]=\"product\">\n </div>\n </ng-container>\n </div> -->\n\n <!-- Imagen del producto -->\n <div class=\"foto\">\n @if(product.picturesdefault){\n @if (product.picturesdefault && product.picturesdefault.length > 1 ) {\n <img [src]=\"mediaUrl + product.picturesdefault[0]\" alt=\"Imagen principal\" class=\"w-100 pic01\" />\n <img [src]=\"mediaUrl + product.picturesdefault[1]\" alt=\"Imagen secundaria\" class=\"w-100 pic02\" />\n } @else {\n <img [src]=\"mediaUrl + product.picturesdefault[0]\" alt=\"Imagen principal\" class=\"w-100 pic01\" />\n }\n }\n </div>\n <!-- Precio -->\n\n\n <!-- Nombre del producto -->\n <h6 class=\"title\">{{ product.name | titlecase }}</h6>\n\n <div class=\"sku\" [innerHTML]=\"product.shortdetails\"></div>\n\n @if (shouldShowPrice) {\n <app-price-ec [price]=\"product.price\" [saleprice]=\"product.saleprice\" class=\"\" />\n }\n @if(!hidePrices){\n @if(!showPricesOnlyToLoggedUsers || isAuthenticated$){\n\n <div class=\"fixBottom\">\n\n <!-- Bot\u00F3n de acciones -->\n <!-- <ng-container *ecProductStock=\"product; else noStock\"> -->\n <!-- Cuando no tiene marca especial o es de tipo 'standard' -->\n @if (!product.special_mark || product.special_mark.length === 0 || product.special_mark[0]?.type ===\n 'standard') {\n <button class=\"btn standard\" [ngClass]=\"isCollection ? 'px-2 w-100 d-sm-block' : 'py-2 px-4'\">\n <ng-container *ngIf=\"isCollection; else normalText\">\n <span> {{(\"buy\" | translate) | uppercase}} </span>\n </ng-container>\n <ng-template #normalText>\n {{(\"buy\" | translate) | uppercase}}\n </ng-template>\n </button>\n }@else {\n <!-- Caso 1: Agotado o Disponible muy pronto -->\n @if (product.special_mark[0]?.type === 'out_of_stock' || product.special_mark[0]?.type === 'coming_soon') {\n <button class=\"btn\" [ngClass]=\"isCollection ? 'px-2 w-100 d-sm-block' : 'py-2 px-4'\">\n @if(isCollection){\n <span>{{ product.special_mark[0].name | uppercase }} </span>\n }@else {\n {{ product.special_mark[0]?.name | uppercase }}\n }\n </button>}\n <!-- Caso 2: Contacto por WhatsApp -->\n @if (product.special_mark[0].type === 'whatsapp_contact') {\n <button class=\"btn\" [ngClass]=\"isCollection ? 'px-2 w-100 d-sm-block' : 'py-2 px-4'\"\n (click)=\"openWhatsApp(product.special_mark[0]?.whatsappContact)\">\n @if(isCollection){\n <span>{{ product.special_mark[0]?.name | uppercase }}</span>\n }@else {\n {{ product.special_mark[0]?.name | uppercase }}\n }\n\n </button>\n }\n <!-- Caso 3: Solicitar m\u00E1s informaci\u00F3n -->\n @if (product.special_mark[0]?.type === 'more_info') {\n <button class=\"btn\" [ngClass]=\"isCollection ? 'px-2 w-100 d-sm-block' : 'py-2 px-4'\">\n @if(isCollection){\n <span>{{ product.special_mark[0]?.name | uppercase }}</span>\n }@else {\n {{ product.special_mark[0]?.name | uppercase }}\n }\n </button>\n }\n }\n </div>\n }}\n</a>", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.UpperCasePipe, name: "uppercase" }, { kind: "pipe", type: i1.TitleCasePipe, name: "titlecase" }, { kind: "component", type: PriceEcComponent, selector: "app-price-ec", inputs: ["price", "saleprice", "basePrice", "taxeAmount", "taxes", "priceSize", "showTaxLegendOnly", "disableTaxInfo", "customPriceTemplate", "customSalePriceTemplate", "customSimplePriceTemplate", "customSimpleSalePriceTemplate", "customTaxTemplate", "customOnlyTaxLabelTemplate"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
6826
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ProductEcComponent, isStandalone: true, selector: "app-product-ec", inputs: { product: "product", isProductBox: "isProductBox", isCollection: "isCollection" }, outputs: { loaded: "loaded" }, ngImport: i0, template: "<a [routerLink]=\"['/product', product.id]\" class=\"text-decoration-none producto\">\r\n <!-- Marca especial y descuento -->\r\n <!-- <div *ngIf=\"product.saleprice || (product.special_mark && product.special_mark !== null && product.special_mark !== undefined && product.special_mark.length >0)\"\r\n class=\"marcas\">\r\n <div *ecProductStock=\"product\" [ecProductMini]=\"product.special_mark\"></div>\r\n <ng-container *ngIf=\"shouldShowPrice\">\r\n <div *ecProductStock=\"product\" [ngClass]=\"{'tag-dsc float-right': product.saleprice}\"\r\n [ecProductOff]=\"product\">\r\n </div>\r\n </ng-container>\r\n </div> -->\r\n\r\n <!-- Imagen del producto -->\r\n <div class=\"foto\">\r\n @if(product.picturesdefault){\r\n @if (product.picturesdefault && product.picturesdefault.length > 1 ) {\r\n <img [src]=\"mediaUrl + product.picturesdefault[0]\" alt=\"Imagen principal\" class=\"w-100 pic01\" />\r\n <img [src]=\"mediaUrl + product.picturesdefault[1]\" alt=\"Imagen secundaria\" class=\"w-100 pic02\" />\r\n } @else {\r\n <img [src]=\"mediaUrl + product.picturesdefault[0]\" alt=\"Imagen principal\" class=\"w-100 pic01\" />\r\n }\r\n }\r\n </div>\r\n <!-- Precio -->\r\n\r\n\r\n <!-- Nombre del producto -->\r\n <h6 class=\"title\">{{ product.name | titlecase }}</h6>\r\n\r\n <div class=\"sku\" [innerHTML]=\"product.shortdetails\"></div>\r\n\r\n @if (shouldShowPrice) {\r\n <app-price-ec [price]=\"product.price\" [saleprice]=\"product.saleprice\" class=\"\" />\r\n }\r\n @if(!hidePrices){\r\n @if(!showPricesOnlyToLoggedUsers || isAuthenticated$){\r\n\r\n <div class=\"fixBottom\">\r\n\r\n <!-- Bot\u00F3n de acciones -->\r\n <!-- <ng-container *ecProductStock=\"product; else noStock\"> -->\r\n <!-- Cuando no tiene marca especial o es de tipo 'standard' -->\r\n @if (!product.special_mark || product.special_mark.length === 0 || product.special_mark[0]?.type ===\r\n 'standard') {\r\n <button class=\"btn standard\" [ngClass]=\"isCollection ? 'px-2 w-100 d-sm-block' : 'py-2 px-4'\">\r\n <ng-container *ngIf=\"isCollection; else normalText\">\r\n <span> {{(\"buy\" | translate) | uppercase}} </span>\r\n </ng-container>\r\n <ng-template #normalText>\r\n {{(\"buy\" | translate) | uppercase}}\r\n </ng-template>\r\n </button>\r\n }@else {\r\n <!-- Caso 1: Agotado o Disponible muy pronto -->\r\n @if (product.special_mark[0]?.type === 'out_of_stock' || product.special_mark[0]?.type === 'coming_soon') {\r\n <button class=\"btn\" [ngClass]=\"isCollection ? 'px-2 w-100 d-sm-block' : 'py-2 px-4'\">\r\n @if(isCollection){\r\n <span>{{ product.special_mark[0].name | uppercase }} </span>\r\n }@else {\r\n {{ product.special_mark[0]?.name | uppercase }}\r\n }\r\n </button>}\r\n <!-- Caso 2: Contacto por WhatsApp -->\r\n @if (product.special_mark[0].type === 'whatsapp_contact') {\r\n <button class=\"btn\" [ngClass]=\"isCollection ? 'px-2 w-100 d-sm-block' : 'py-2 px-4'\"\r\n (click)=\"openWhatsApp(product.special_mark[0]?.whatsappContact)\">\r\n @if(isCollection){\r\n <span>{{ product.special_mark[0]?.name | uppercase }}</span>\r\n }@else {\r\n {{ product.special_mark[0]?.name | uppercase }}\r\n }\r\n\r\n </button>\r\n }\r\n <!-- Caso 3: Solicitar m\u00E1s informaci\u00F3n -->\r\n @if (product.special_mark[0]?.type === 'more_info') {\r\n <button class=\"btn\" [ngClass]=\"isCollection ? 'px-2 w-100 d-sm-block' : 'py-2 px-4'\">\r\n @if(isCollection){\r\n <span>{{ product.special_mark[0]?.name | uppercase }}</span>\r\n }@else {\r\n {{ product.special_mark[0]?.name | uppercase }}\r\n }\r\n </button>\r\n }\r\n }\r\n </div>\r\n }}\r\n</a>", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.UpperCasePipe, name: "uppercase" }, { kind: "pipe", type: i1.TitleCasePipe, name: "titlecase" }, { kind: "component", type: PriceEcComponent, selector: "app-price-ec", inputs: ["price", "saleprice", "basePrice", "taxeAmount", "taxes", "priceSize", "showTaxLegendOnly", "disableTaxInfo", "customPriceTemplate", "customSalePriceTemplate", "customSimplePriceTemplate", "customSimpleSalePriceTemplate", "customTaxTemplate", "customOnlyTaxLabelTemplate"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
6802
6827
|
}
|
|
6803
6828
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ProductEcComponent, decorators: [{
|
|
6804
6829
|
type: Component,
|
|
6805
|
-
args: [{ selector: 'app-product-ec', standalone: true, imports: [CommonModule, PriceEcComponent, RouterLink, TranslateModule], template: "<a [routerLink]=\"['/product', product.id]\" class=\"text-decoration-none producto\">\n <!-- Marca especial y descuento -->\n <!-- <div *ngIf=\"product.saleprice || (product.special_mark && product.special_mark !== null && product.special_mark !== undefined && product.special_mark.length >0)\"\n class=\"marcas\">\n <div *ecProductStock=\"product\" [ecProductMini]=\"product.special_mark\"></div>\n <ng-container *ngIf=\"shouldShowPrice\">\n <div *ecProductStock=\"product\" [ngClass]=\"{'tag-dsc float-right': product.saleprice}\"\n [ecProductOff]=\"product\">\n </div>\n </ng-container>\n </div> -->\n\n <!-- Imagen del producto -->\n <div class=\"foto\">\n @if(product.picturesdefault){\n @if (product.picturesdefault && product.picturesdefault.length > 1 ) {\n <img [src]=\"mediaUrl + product.picturesdefault[0]\" alt=\"Imagen principal\" class=\"w-100 pic01\" />\n <img [src]=\"mediaUrl + product.picturesdefault[1]\" alt=\"Imagen secundaria\" class=\"w-100 pic02\" />\n } @else {\n <img [src]=\"mediaUrl + product.picturesdefault[0]\" alt=\"Imagen principal\" class=\"w-100 pic01\" />\n }\n }\n </div>\n <!-- Precio -->\n\n\n <!-- Nombre del producto -->\n <h6 class=\"title\">{{ product.name | titlecase }}</h6>\n\n <div class=\"sku\" [innerHTML]=\"product.shortdetails\"></div>\n\n @if (shouldShowPrice) {\n <app-price-ec [price]=\"product.price\" [saleprice]=\"product.saleprice\" class=\"\" />\n }\n @if(!hidePrices){\n @if(!showPricesOnlyToLoggedUsers || isAuthenticated$){\n\n <div class=\"fixBottom\">\n\n <!-- Bot\u00F3n de acciones -->\n <!-- <ng-container *ecProductStock=\"product; else noStock\"> -->\n <!-- Cuando no tiene marca especial o es de tipo 'standard' -->\n @if (!product.special_mark || product.special_mark.length === 0 || product.special_mark[0]?.type ===\n 'standard') {\n <button class=\"btn standard\" [ngClass]=\"isCollection ? 'px-2 w-100 d-sm-block' : 'py-2 px-4'\">\n <ng-container *ngIf=\"isCollection; else normalText\">\n <span> {{(\"buy\" | translate) | uppercase}} </span>\n </ng-container>\n <ng-template #normalText>\n {{(\"buy\" | translate) | uppercase}}\n </ng-template>\n </button>\n }@else {\n <!-- Caso 1: Agotado o Disponible muy pronto -->\n @if (product.special_mark[0]?.type === 'out_of_stock' || product.special_mark[0]?.type === 'coming_soon') {\n <button class=\"btn\" [ngClass]=\"isCollection ? 'px-2 w-100 d-sm-block' : 'py-2 px-4'\">\n @if(isCollection){\n <span>{{ product.special_mark[0].name | uppercase }} </span>\n }@else {\n {{ product.special_mark[0]?.name | uppercase }}\n }\n </button>}\n <!-- Caso 2: Contacto por WhatsApp -->\n @if (product.special_mark[0].type === 'whatsapp_contact') {\n <button class=\"btn\" [ngClass]=\"isCollection ? 'px-2 w-100 d-sm-block' : 'py-2 px-4'\"\n (click)=\"openWhatsApp(product.special_mark[0]?.whatsappContact)\">\n @if(isCollection){\n <span>{{ product.special_mark[0]?.name | uppercase }}</span>\n }@else {\n {{ product.special_mark[0]?.name | uppercase }}\n }\n\n </button>\n }\n <!-- Caso 3: Solicitar m\u00E1s informaci\u00F3n -->\n @if (product.special_mark[0]?.type === 'more_info') {\n <button class=\"btn\" [ngClass]=\"isCollection ? 'px-2 w-100 d-sm-block' : 'py-2 px-4'\">\n @if(isCollection){\n <span>{{ product.special_mark[0]?.name | uppercase }}</span>\n }@else {\n {{ product.special_mark[0]?.name | uppercase }}\n }\n </button>\n }\n }\n </div>\n }}\n</a>" }]
|
|
6830
|
+
args: [{ selector: 'app-product-ec', standalone: true, imports: [CommonModule, PriceEcComponent, RouterLink, TranslateModule], template: "<a [routerLink]=\"['/product', product.id]\" class=\"text-decoration-none producto\">\r\n <!-- Marca especial y descuento -->\r\n <!-- <div *ngIf=\"product.saleprice || (product.special_mark && product.special_mark !== null && product.special_mark !== undefined && product.special_mark.length >0)\"\r\n class=\"marcas\">\r\n <div *ecProductStock=\"product\" [ecProductMini]=\"product.special_mark\"></div>\r\n <ng-container *ngIf=\"shouldShowPrice\">\r\n <div *ecProductStock=\"product\" [ngClass]=\"{'tag-dsc float-right': product.saleprice}\"\r\n [ecProductOff]=\"product\">\r\n </div>\r\n </ng-container>\r\n </div> -->\r\n\r\n <!-- Imagen del producto -->\r\n <div class=\"foto\">\r\n @if(product.picturesdefault){\r\n @if (product.picturesdefault && product.picturesdefault.length > 1 ) {\r\n <img [src]=\"mediaUrl + product.picturesdefault[0]\" alt=\"Imagen principal\" class=\"w-100 pic01\" />\r\n <img [src]=\"mediaUrl + product.picturesdefault[1]\" alt=\"Imagen secundaria\" class=\"w-100 pic02\" />\r\n } @else {\r\n <img [src]=\"mediaUrl + product.picturesdefault[0]\" alt=\"Imagen principal\" class=\"w-100 pic01\" />\r\n }\r\n }\r\n </div>\r\n <!-- Precio -->\r\n\r\n\r\n <!-- Nombre del producto -->\r\n <h6 class=\"title\">{{ product.name | titlecase }}</h6>\r\n\r\n <div class=\"sku\" [innerHTML]=\"product.shortdetails\"></div>\r\n\r\n @if (shouldShowPrice) {\r\n <app-price-ec [price]=\"product.price\" [saleprice]=\"product.saleprice\" class=\"\" />\r\n }\r\n @if(!hidePrices){\r\n @if(!showPricesOnlyToLoggedUsers || isAuthenticated$){\r\n\r\n <div class=\"fixBottom\">\r\n\r\n <!-- Bot\u00F3n de acciones -->\r\n <!-- <ng-container *ecProductStock=\"product; else noStock\"> -->\r\n <!-- Cuando no tiene marca especial o es de tipo 'standard' -->\r\n @if (!product.special_mark || product.special_mark.length === 0 || product.special_mark[0]?.type ===\r\n 'standard') {\r\n <button class=\"btn standard\" [ngClass]=\"isCollection ? 'px-2 w-100 d-sm-block' : 'py-2 px-4'\">\r\n <ng-container *ngIf=\"isCollection; else normalText\">\r\n <span> {{(\"buy\" | translate) | uppercase}} </span>\r\n </ng-container>\r\n <ng-template #normalText>\r\n {{(\"buy\" | translate) | uppercase}}\r\n </ng-template>\r\n </button>\r\n }@else {\r\n <!-- Caso 1: Agotado o Disponible muy pronto -->\r\n @if (product.special_mark[0]?.type === 'out_of_stock' || product.special_mark[0]?.type === 'coming_soon') {\r\n <button class=\"btn\" [ngClass]=\"isCollection ? 'px-2 w-100 d-sm-block' : 'py-2 px-4'\">\r\n @if(isCollection){\r\n <span>{{ product.special_mark[0].name | uppercase }} </span>\r\n }@else {\r\n {{ product.special_mark[0]?.name | uppercase }}\r\n }\r\n </button>}\r\n <!-- Caso 2: Contacto por WhatsApp -->\r\n @if (product.special_mark[0].type === 'whatsapp_contact') {\r\n <button class=\"btn\" [ngClass]=\"isCollection ? 'px-2 w-100 d-sm-block' : 'py-2 px-4'\"\r\n (click)=\"openWhatsApp(product.special_mark[0]?.whatsappContact)\">\r\n @if(isCollection){\r\n <span>{{ product.special_mark[0]?.name | uppercase }}</span>\r\n }@else {\r\n {{ product.special_mark[0]?.name | uppercase }}\r\n }\r\n\r\n </button>\r\n }\r\n <!-- Caso 3: Solicitar m\u00E1s informaci\u00F3n -->\r\n @if (product.special_mark[0]?.type === 'more_info') {\r\n <button class=\"btn\" [ngClass]=\"isCollection ? 'px-2 w-100 d-sm-block' : 'py-2 px-4'\">\r\n @if(isCollection){\r\n <span>{{ product.special_mark[0]?.name | uppercase }}</span>\r\n }@else {\r\n {{ product.special_mark[0]?.name | uppercase }}\r\n }\r\n </button>\r\n }\r\n }\r\n </div>\r\n }}\r\n</a>" }]
|
|
6806
6831
|
}], ctorParameters: () => [], propDecorators: { product: [{
|
|
6807
6832
|
type: Input,
|
|
6808
6833
|
args: [{
|
|
@@ -6999,11 +7024,11 @@ class BlockProductsEcComponent extends BlockEcComponent {
|
|
|
6999
7024
|
});
|
|
7000
7025
|
}
|
|
7001
7026
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BlockProductsEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
7002
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: BlockProductsEcComponent, isStandalone: true, selector: "app-block-products-ec", inputs: { prevArrowImage: "prevArrowImage", nextArrowImage: "nextArrowImage", prevArrowText: "prevArrowText", nextArrowText: "nextArrowText", appProduct: "appProduct", products: "products", meta: "meta" }, usesInheritance: true, ngImport: i0, template: "<section [ngClass]=\"trimClassBlock(meta.code) + ' container-fluid'\">\n\n <div class=\"blockProduct block-product\">\n @if(meta.name){\n <div class=\"row\">\n <div class=\"col-12 mt-4\">\n <h2 class=\"font-weight-normal font-gd\">\n <span>{{meta.name}}</span>\n </h2>\n </div>\n </div>\n }\n\n\n @if(meta.styles && meta.styles.carrousel == false){\n <div class=\"row \">\n @for (product of products; track $index) {\n <div [class]=\"'item '+ ' col-'+ (meta.styles.items?.sm) + ' col-md-' + (meta.styles.items?.md) + ' col-lg-' + (meta.styles.items?.lg) + ' px-2'\" [id]=\"$index\">\n <!-- verifica que si vienen un template para un custom appProduct llamado \"appProduct\" con un objeto \"product\"- sino usa por defecto el del core -->\n <ng-container *ngTemplateOutlet=\"appProduct ? appProduct : defaultAppProduct; context: {product:product}\"></ng-container>\n </div>\n }\n </div>\n } @else {\n <div class=\"container position-relative\">\n <swiper-container \n init=\"false\" \n [id]=\"meta?.code\"\n slides-per-view=\"auto\"\n space-between=\"16\"\n slides-per-group=\"1\"\n navigation=\"false\"\n pagination=\"false\"\n loop=\"false\">\n @for (product of products; track $index) {\n <swiper-slide id=\"swiper-slide\">\n <ng-container\n *ngTemplateOutlet=\"appProduct ? appProduct : defaultAppProduct; context: {product:product}\"></ng-container>\n </swiper-slide>\n }\n </swiper-container>\n \n <!-- Botones de navegaci\u00F3n personalizados -->\n <div class=\"swiper-navigation\">\n <div class=\"swiper-button-prev\" [id]=\"meta?.code + '-prev'\">\n @if(prevArrowImage) {\n <img [src]=\"prevArrowImage\" alt=\"Anterior\" />\n } @else {\n <span class=\"arrow-text\">{{prevArrowText}}</span>\n }\n </div>\n <div class=\"swiper-button-next\" [id]=\"meta?.code + '-next'\">\n @if(nextArrowImage) {\n <img [src]=\"nextArrowImage\" alt=\"Siguiente\" />\n } @else {\n <span class=\"arrow-text\">{{nextArrowText}}</span>\n }\n </div>\n </div>\n </div>\n }\n </div>\n</section>\n\n\n<!-- componente por defecto (tomara como producto el contexto pasado como \"product\") -->\n<ng-template #defaultAppProduct let-product=\"product\">\n <app-product-ec [product]=\"product\"></app-product-ec>\n</ng-template>", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ProductEcComponent, selector: "app-product-ec", inputs: ["product", "isProductBox", "isCollection"], outputs: ["loaded"] }] });
|
|
7027
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: BlockProductsEcComponent, isStandalone: true, selector: "app-block-products-ec", inputs: { prevArrowImage: "prevArrowImage", nextArrowImage: "nextArrowImage", prevArrowText: "prevArrowText", nextArrowText: "nextArrowText", appProduct: "appProduct", products: "products", meta: "meta" }, usesInheritance: true, ngImport: i0, template: "<section [ngClass]=\"trimClassBlock(meta.code) + ' container-fluid'\">\r\n\r\n <div class=\"blockProduct block-product\">\r\n @if(meta.name){\r\n <div class=\"row\">\r\n <div class=\"col-12 mt-4\">\r\n <h2 class=\"font-weight-normal font-gd\">\r\n <span>{{meta.name}}</span>\r\n </h2>\r\n </div>\r\n </div>\r\n }\r\n\r\n\r\n @if(meta.styles && meta.styles.carrousel == false){\r\n <div class=\"row \">\r\n @for (product of products; track $index) {\r\n <div [class]=\"'item '+ ' col-'+ (meta.styles.items?.sm) + ' col-md-' + (meta.styles.items?.md) + ' col-lg-' + (meta.styles.items?.lg) + ' px-2'\" [id]=\"$index\">\r\n <!-- verifica que si vienen un template para un custom appProduct llamado \"appProduct\" con un objeto \"product\"- sino usa por defecto el del core -->\r\n <ng-container *ngTemplateOutlet=\"appProduct ? appProduct : defaultAppProduct; context: {product:product}\"></ng-container>\r\n </div>\r\n }\r\n </div>\r\n } @else {\r\n <div class=\"container position-relative\">\r\n <swiper-container \r\n init=\"false\" \r\n [id]=\"meta?.code\"\r\n slides-per-view=\"auto\"\r\n space-between=\"16\"\r\n slides-per-group=\"1\"\r\n navigation=\"false\"\r\n pagination=\"false\"\r\n loop=\"false\">\r\n @for (product of products; track $index) {\r\n <swiper-slide id=\"swiper-slide\">\r\n <ng-container\r\n *ngTemplateOutlet=\"appProduct ? appProduct : defaultAppProduct; context: {product:product}\"></ng-container>\r\n </swiper-slide>\r\n }\r\n </swiper-container>\r\n \r\n <!-- Botones de navegaci\u00F3n personalizados -->\r\n <div class=\"swiper-navigation\">\r\n <div class=\"swiper-button-prev\" [id]=\"meta?.code + '-prev'\">\r\n @if(prevArrowImage) {\r\n <img [src]=\"prevArrowImage\" alt=\"Anterior\" />\r\n } @else {\r\n <span class=\"arrow-text\">{{prevArrowText}}</span>\r\n }\r\n </div>\r\n <div class=\"swiper-button-next\" [id]=\"meta?.code + '-next'\">\r\n @if(nextArrowImage) {\r\n <img [src]=\"nextArrowImage\" alt=\"Siguiente\" />\r\n } @else {\r\n <span class=\"arrow-text\">{{nextArrowText}}</span>\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n</section>\r\n\r\n\r\n<!-- componente por defecto (tomara como producto el contexto pasado como \"product\") -->\r\n<ng-template #defaultAppProduct let-product=\"product\">\r\n <app-product-ec [product]=\"product\"></app-product-ec>\r\n</ng-template>", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ProductEcComponent, selector: "app-product-ec", inputs: ["product", "isProductBox", "isCollection"], outputs: ["loaded"] }] });
|
|
7003
7028
|
}
|
|
7004
7029
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BlockProductsEcComponent, decorators: [{
|
|
7005
7030
|
type: Component,
|
|
7006
|
-
args: [{ selector: 'app-block-products-ec', standalone: true, imports: [CommonModule, ProductEcComponent], schemas: [CUSTOM_ELEMENTS_SCHEMA], template: "<section [ngClass]=\"trimClassBlock(meta.code) + ' container-fluid'\">\n\n <div class=\"blockProduct block-product\">\n @if(meta.name){\n <div class=\"row\">\n <div class=\"col-12 mt-4\">\n <h2 class=\"font-weight-normal font-gd\">\n <span>{{meta.name}}</span>\n </h2>\n </div>\n </div>\n }\n\n\n @if(meta.styles && meta.styles.carrousel == false){\n <div class=\"row \">\n @for (product of products; track $index) {\n <div [class]=\"'item '+ ' col-'+ (meta.styles.items?.sm) + ' col-md-' + (meta.styles.items?.md) + ' col-lg-' + (meta.styles.items?.lg) + ' px-2'\" [id]=\"$index\">\n <!-- verifica que si vienen un template para un custom appProduct llamado \"appProduct\" con un objeto \"product\"- sino usa por defecto el del core -->\n <ng-container *ngTemplateOutlet=\"appProduct ? appProduct : defaultAppProduct; context: {product:product}\"></ng-container>\n </div>\n }\n </div>\n } @else {\n <div class=\"container position-relative\">\n <swiper-container \n init=\"false\" \n [id]=\"meta?.code\"\n slides-per-view=\"auto\"\n space-between=\"16\"\n slides-per-group=\"1\"\n navigation=\"false\"\n pagination=\"false\"\n loop=\"false\">\n @for (product of products; track $index) {\n <swiper-slide id=\"swiper-slide\">\n <ng-container\n *ngTemplateOutlet=\"appProduct ? appProduct : defaultAppProduct; context: {product:product}\"></ng-container>\n </swiper-slide>\n }\n </swiper-container>\n \n <!-- Botones de navegaci\u00F3n personalizados -->\n <div class=\"swiper-navigation\">\n <div class=\"swiper-button-prev\" [id]=\"meta?.code + '-prev'\">\n @if(prevArrowImage) {\n <img [src]=\"prevArrowImage\" alt=\"Anterior\" />\n } @else {\n <span class=\"arrow-text\">{{prevArrowText}}</span>\n }\n </div>\n <div class=\"swiper-button-next\" [id]=\"meta?.code + '-next'\">\n @if(nextArrowImage) {\n <img [src]=\"nextArrowImage\" alt=\"Siguiente\" />\n } @else {\n <span class=\"arrow-text\">{{nextArrowText}}</span>\n }\n </div>\n </div>\n </div>\n }\n </div>\n</section>\n\n\n<!-- componente por defecto (tomara como producto el contexto pasado como \"product\") -->\n<ng-template #defaultAppProduct let-product=\"product\">\n <app-product-ec [product]=\"product\"></app-product-ec>\n</ng-template>" }]
|
|
7031
|
+
args: [{ selector: 'app-block-products-ec', standalone: true, imports: [CommonModule, ProductEcComponent], schemas: [CUSTOM_ELEMENTS_SCHEMA], template: "<section [ngClass]=\"trimClassBlock(meta.code) + ' container-fluid'\">\r\n\r\n <div class=\"blockProduct block-product\">\r\n @if(meta.name){\r\n <div class=\"row\">\r\n <div class=\"col-12 mt-4\">\r\n <h2 class=\"font-weight-normal font-gd\">\r\n <span>{{meta.name}}</span>\r\n </h2>\r\n </div>\r\n </div>\r\n }\r\n\r\n\r\n @if(meta.styles && meta.styles.carrousel == false){\r\n <div class=\"row \">\r\n @for (product of products; track $index) {\r\n <div [class]=\"'item '+ ' col-'+ (meta.styles.items?.sm) + ' col-md-' + (meta.styles.items?.md) + ' col-lg-' + (meta.styles.items?.lg) + ' px-2'\" [id]=\"$index\">\r\n <!-- verifica que si vienen un template para un custom appProduct llamado \"appProduct\" con un objeto \"product\"- sino usa por defecto el del core -->\r\n <ng-container *ngTemplateOutlet=\"appProduct ? appProduct : defaultAppProduct; context: {product:product}\"></ng-container>\r\n </div>\r\n }\r\n </div>\r\n } @else {\r\n <div class=\"container position-relative\">\r\n <swiper-container \r\n init=\"false\" \r\n [id]=\"meta?.code\"\r\n slides-per-view=\"auto\"\r\n space-between=\"16\"\r\n slides-per-group=\"1\"\r\n navigation=\"false\"\r\n pagination=\"false\"\r\n loop=\"false\">\r\n @for (product of products; track $index) {\r\n <swiper-slide id=\"swiper-slide\">\r\n <ng-container\r\n *ngTemplateOutlet=\"appProduct ? appProduct : defaultAppProduct; context: {product:product}\"></ng-container>\r\n </swiper-slide>\r\n }\r\n </swiper-container>\r\n \r\n <!-- Botones de navegaci\u00F3n personalizados -->\r\n <div class=\"swiper-navigation\">\r\n <div class=\"swiper-button-prev\" [id]=\"meta?.code + '-prev'\">\r\n @if(prevArrowImage) {\r\n <img [src]=\"prevArrowImage\" alt=\"Anterior\" />\r\n } @else {\r\n <span class=\"arrow-text\">{{prevArrowText}}</span>\r\n }\r\n </div>\r\n <div class=\"swiper-button-next\" [id]=\"meta?.code + '-next'\">\r\n @if(nextArrowImage) {\r\n <img [src]=\"nextArrowImage\" alt=\"Siguiente\" />\r\n } @else {\r\n <span class=\"arrow-text\">{{nextArrowText}}</span>\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n</section>\r\n\r\n\r\n<!-- componente por defecto (tomara como producto el contexto pasado como \"product\") -->\r\n<ng-template #defaultAppProduct let-product=\"product\">\r\n <app-product-ec [product]=\"product\"></app-product-ec>\r\n</ng-template>" }]
|
|
7007
7032
|
}], ctorParameters: () => [], propDecorators: { prevArrowImage: [{
|
|
7008
7033
|
type: Input
|
|
7009
7034
|
}], nextArrowImage: [{
|
|
@@ -7094,11 +7119,11 @@ class BlockNewsletterEcComponent {
|
|
|
7094
7119
|
this.sendForm(this.newsletter_form, 'newsletter-thanks');
|
|
7095
7120
|
};
|
|
7096
7121
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BlockNewsletterEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
7097
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: BlockNewsletterEcComponent, isStandalone: true, selector: "app-block-newsletter-ec", inputs: { block: "block", success_message: "success_message", subject: "subject" }, ngImport: i0, template: "<p>block-newsletter-ec works!</p>\n", styles: [""] });
|
|
7122
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: BlockNewsletterEcComponent, isStandalone: true, selector: "app-block-newsletter-ec", inputs: { block: "block", success_message: "success_message", subject: "subject" }, ngImport: i0, template: "<p>block-newsletter-ec works!</p>\r\n", styles: [""] });
|
|
7098
7123
|
}
|
|
7099
7124
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BlockNewsletterEcComponent, decorators: [{
|
|
7100
7125
|
type: Component,
|
|
7101
|
-
args: [{ selector: 'app-block-newsletter-ec', standalone: true, imports: [], template: "<p>block-newsletter-ec works!</p>\n" }]
|
|
7126
|
+
args: [{ selector: 'app-block-newsletter-ec', standalone: true, imports: [], template: "<p>block-newsletter-ec works!</p>\r\n" }]
|
|
7102
7127
|
}], ctorParameters: () => [], propDecorators: { block: [{
|
|
7103
7128
|
type: Input,
|
|
7104
7129
|
args: [{ required: true }]
|
|
@@ -7110,30 +7135,30 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
7110
7135
|
|
|
7111
7136
|
class LoadingFullEcComponent {
|
|
7112
7137
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LoadingFullEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
7113
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: LoadingFullEcComponent, isStandalone: true, selector: "app-loading-full-ec", ngImport: i0, template: "<div [class]=\"'d-flex w-100'\">\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=\"visually-hidden\">{{ 'loading' }}</span><!-- | translate -->\n </div>\n </div>\n</div>", styles: [""] });
|
|
7138
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: LoadingFullEcComponent, isStandalone: true, selector: "app-loading-full-ec", ngImport: i0, template: "<div [class]=\"'d-flex w-100'\">\r\n <div class=\"w-100 h-100 d-flex flex-row justify-content-center align-items-center\">\r\n <div class=\"spinner-border text-dark spinner-color\" id=\"loading\" role=\"status\">\r\n <span class=\"visually-hidden\">{{ 'loading' }}</span><!-- | translate -->\r\n </div>\r\n </div>\r\n</div>", styles: [""] });
|
|
7114
7139
|
}
|
|
7115
7140
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LoadingFullEcComponent, decorators: [{
|
|
7116
7141
|
type: Component,
|
|
7117
|
-
args: [{ selector: 'app-loading-full-ec', standalone: true, imports: [], template: "<div [class]=\"'d-flex w-100'\">\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=\"visually-hidden\">{{ 'loading' }}</span><!-- | translate -->\n </div>\n </div>\n</div>" }]
|
|
7142
|
+
args: [{ selector: 'app-loading-full-ec', standalone: true, imports: [], template: "<div [class]=\"'d-flex w-100'\">\r\n <div class=\"w-100 h-100 d-flex flex-row justify-content-center align-items-center\">\r\n <div class=\"spinner-border text-dark spinner-color\" id=\"loading\" role=\"status\">\r\n <span class=\"visually-hidden\">{{ 'loading' }}</span><!-- | translate -->\r\n </div>\r\n </div>\r\n</div>" }]
|
|
7118
7143
|
}] });
|
|
7119
7144
|
|
|
7120
7145
|
class LoadingSectionEcComponent {
|
|
7121
7146
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LoadingSectionEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
7122
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: LoadingSectionEcComponent, isStandalone: true, selector: "app-loading-section-ec", ngImport: i0, 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", styles: [""], dependencies: [{ kind: "component", type: LoadingFullEcComponent, selector: "app-loading-full-ec" }] });
|
|
7147
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: LoadingSectionEcComponent, isStandalone: true, selector: "app-loading-section-ec", ngImport: i0, 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\">\r\n <app-loading-full-ec></app-loading-full-ec>\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "component", type: LoadingFullEcComponent, selector: "app-loading-full-ec" }] });
|
|
7123
7148
|
}
|
|
7124
7149
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LoadingSectionEcComponent, decorators: [{
|
|
7125
7150
|
type: Component,
|
|
7126
|
-
args: [{ selector: 'app-loading-section-ec', standalone: true, imports: [LoadingFullEcComponent], 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" }]
|
|
7151
|
+
args: [{ selector: 'app-loading-section-ec', standalone: true, imports: [LoadingFullEcComponent], 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\">\r\n <app-loading-full-ec></app-loading-full-ec>\r\n</div>\r\n" }]
|
|
7127
7152
|
}] });
|
|
7128
7153
|
|
|
7129
7154
|
class LoadingInlineEcComponent {
|
|
7130
7155
|
type = 'border';
|
|
7131
7156
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LoadingInlineEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
7132
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: LoadingInlineEcComponent, isStandalone: true, selector: "app-loading-inline-ec", inputs: { type: "type" }, ngImport: i0, template: "<div class=\"loading-inline-container\">\n <div [class]=\"'spinner-'+type+' text-dark spinner-colo'\" id=\"loading\" role=\"status\">\n <span class=\"visually-hidden\">{{ 'loading' | translate }}</span>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
7157
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: LoadingInlineEcComponent, isStandalone: true, selector: "app-loading-inline-ec", inputs: { type: "type" }, ngImport: i0, template: "<div class=\"loading-inline-container\">\r\n <div [class]=\"'spinner-'+type+' text-dark spinner-colo'\" id=\"loading\" role=\"status\">\r\n <span class=\"visually-hidden\">{{ 'loading' | translate }}</span>\r\n </div>\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
7133
7158
|
}
|
|
7134
7159
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LoadingInlineEcComponent, decorators: [{
|
|
7135
7160
|
type: Component,
|
|
7136
|
-
args: [{ selector: 'app-loading-inline-ec', standalone: true, imports: [TranslateModule], template: "<div class=\"loading-inline-container\">\n <div [class]=\"'spinner-'+type+' text-dark spinner-colo'\" id=\"loading\" role=\"status\">\n <span class=\"visually-hidden\">{{ 'loading' | translate }}</span>\n </div>\n</div>\n" }]
|
|
7161
|
+
args: [{ selector: 'app-loading-inline-ec', standalone: true, imports: [TranslateModule], template: "<div class=\"loading-inline-container\">\r\n <div [class]=\"'spinner-'+type+' text-dark spinner-colo'\" id=\"loading\" role=\"status\">\r\n <span class=\"visually-hidden\">{{ 'loading' | translate }}</span>\r\n </div>\r\n</div>\r\n" }]
|
|
7137
7162
|
}], propDecorators: { type: [{
|
|
7138
7163
|
type: Input
|
|
7139
7164
|
}] } });
|
|
@@ -7187,7 +7212,7 @@ class ReCaptchaEcComponent {
|
|
|
7187
7212
|
useExisting: forwardRef(() => ReCaptchaEcComponent),
|
|
7188
7213
|
multi: true
|
|
7189
7214
|
}
|
|
7190
|
-
], ngImport: i0, template: "@if(captcha.siteKey){\n <re-captcha (resolved)=\"resolved($event)\" siteKey=\"{{captcha.siteKey}}\">\n </re-captcha>\n}@else {\n <app-loading-full-ec></app-loading-full-ec>\n}", styles: [""], dependencies: [{ kind: "component", type: LoadingFullEcComponent, selector: "app-loading-full-ec" }, { kind: "ngmodule", type: RecaptchaModule }, { kind: "component", type: i1$2.RecaptchaComponent, selector: "re-captcha", inputs: ["id", "siteKey", "theme", "type", "size", "tabIndex", "badge", "errorMode"], outputs: ["resolved", "error", "errored"], exportAs: ["reCaptcha"] }, { kind: "ngmodule", type: ReactiveFormsModule }] });
|
|
7215
|
+
], ngImport: i0, template: "@if(captcha.siteKey){\r\n <re-captcha (resolved)=\"resolved($event)\" siteKey=\"{{captcha.siteKey}}\">\r\n </re-captcha>\r\n}@else {\r\n <app-loading-full-ec></app-loading-full-ec>\r\n}", styles: [""], dependencies: [{ kind: "component", type: LoadingFullEcComponent, selector: "app-loading-full-ec" }, { kind: "ngmodule", type: RecaptchaModule }, { kind: "component", type: i1$2.RecaptchaComponent, selector: "re-captcha", inputs: ["id", "siteKey", "theme", "type", "size", "tabIndex", "badge", "errorMode"], outputs: ["resolved", "error", "errored"], exportAs: ["reCaptcha"] }, { kind: "ngmodule", type: ReactiveFormsModule }] });
|
|
7191
7216
|
}
|
|
7192
7217
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ReCaptchaEcComponent, decorators: [{
|
|
7193
7218
|
type: Component,
|
|
@@ -7197,7 +7222,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
7197
7222
|
useExisting: forwardRef(() => ReCaptchaEcComponent),
|
|
7198
7223
|
multi: true
|
|
7199
7224
|
}
|
|
7200
|
-
], template: "@if(captcha.siteKey){\n <re-captcha (resolved)=\"resolved($event)\" siteKey=\"{{captcha.siteKey}}\">\n </re-captcha>\n}@else {\n <app-loading-full-ec></app-loading-full-ec>\n}" }]
|
|
7225
|
+
], template: "@if(captcha.siteKey){\r\n <re-captcha (resolved)=\"resolved($event)\" siteKey=\"{{captcha.siteKey}}\">\r\n </re-captcha>\r\n}@else {\r\n <app-loading-full-ec></app-loading-full-ec>\r\n}" }]
|
|
7201
7226
|
}], propDecorators: { siteKey: [{
|
|
7202
7227
|
type: Input
|
|
7203
7228
|
}] } });
|
|
@@ -7354,11 +7379,11 @@ class MagnizoomEcComponent {
|
|
|
7354
7379
|
event.stopPropagation();
|
|
7355
7380
|
}
|
|
7356
7381
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MagnizoomEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
7357
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: MagnizoomEcComponent, isStandalone: true, selector: "[app-magnizoom-ec]", inputs: { ImageSrc: "ImageSrc", zoomMode: "zoomMode", minZoomFactor: "minZoomFactor", maxZoomFactor: "maxZoomFactor", imageStyle: "imageStyle", imageClass: "imageClass" }, viewQueries: [{ propertyName: "mainCanvasRef", first: true, predicate: ["mainCanvas"], descendants: true, static: true }], ngImport: i0, 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", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
|
|
7382
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: MagnizoomEcComponent, isStandalone: true, selector: "[app-magnizoom-ec]", inputs: { ImageSrc: "ImageSrc", zoomMode: "zoomMode", minZoomFactor: "minZoomFactor", maxZoomFactor: "maxZoomFactor", imageStyle: "imageStyle", imageClass: "imageClass" }, viewQueries: [{ propertyName: "mainCanvasRef", first: true, predicate: ["mainCanvas"], descendants: true, static: true }], ngImport: i0, template: "<canvas #mainCanvas\r\n class=\"main-canvas\"\r\n [ngClass]=\"imageClass\"\r\n [ngStyle]=\"imageStyle\"\r\n [width]=\"canvasWidth\"\r\n [height]=\"canvasHeight\"\r\n (mouseleave)=\"onMouseLeave($event)\"\r\n (mouseenter)=\"onMouseEnterOrMove($event)\"\r\n (mousemove)=\"onMouseEnterOrMove($event)\"\r\n (wheel)=\"onMouseScroll($event)\">\r\n</canvas>\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
|
|
7358
7383
|
}
|
|
7359
7384
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MagnizoomEcComponent, decorators: [{
|
|
7360
7385
|
type: Component,
|
|
7361
|
-
args: [{ selector: '[app-magnizoom-ec]', standalone: true, imports: [CommonModule], 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" }]
|
|
7386
|
+
args: [{ selector: '[app-magnizoom-ec]', standalone: true, imports: [CommonModule], template: "<canvas #mainCanvas\r\n class=\"main-canvas\"\r\n [ngClass]=\"imageClass\"\r\n [ngStyle]=\"imageStyle\"\r\n [width]=\"canvasWidth\"\r\n [height]=\"canvasHeight\"\r\n (mouseleave)=\"onMouseLeave($event)\"\r\n (mouseenter)=\"onMouseEnterOrMove($event)\"\r\n (mousemove)=\"onMouseEnterOrMove($event)\"\r\n (wheel)=\"onMouseScroll($event)\">\r\n</canvas>\r\n" }]
|
|
7362
7387
|
}], ctorParameters: () => [], propDecorators: { ImageSrc: [{
|
|
7363
7388
|
type: Input
|
|
7364
7389
|
}], zoomMode: [{
|
|
@@ -7442,11 +7467,11 @@ class BlockFormContactEcComponent extends BlockEcComponent {
|
|
|
7442
7467
|
}
|
|
7443
7468
|
}
|
|
7444
7469
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BlockFormContactEcComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
7445
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: BlockFormContactEcComponent, isStandalone: true, selector: "app-block-form-contact-ec", inputs: { block: "block", success_message: "success_message", redirect: "redirect", subject: "subject" }, usesInheritance: true, ngImport: i0, template: "@if(block){\n<div [class]=\"trimClassBlock(block.code) + ' container-fluid'\">\n <div class=\"row justify-content-center\">\n <div class=\"col-12 col-md-12\">\n <div class=\"row w-100 m-auto\">\n <h5>{{block.name || 'Dejanos tu consulta'}}</h5>\n <p class=\"w-100\">{{ block.description || 'Completa el siguiente formulario y responderemos tu consulta a la brevedad' }}</p>\n </div>\n <form [formGroup]=\"form()\" (submit)=\"onSubmit($event)\" class=\"position-relative\" ><!-- (submit)=\"toastCompleteForm($event)\" -->\n @if(block.sendName){\n <div class=\"form-group mt-1\">\n <label class=\"sr-only\" for=\"nombre\">Nombre</label>\n <input formControlName=\"name\" type=\"text\"\n class=\"form-control form-control-sm required\" id=\"nombre\" placeholder=\"Nombre\">\n </div>\n }\n @if(block.sendEmail){\n <div class=\"form-group mt-1\">\n <label class=\"sr-only\" for=\"mail\">Email</label>\n <input formControlName=\"email\" type=\"email\"\n class=\"form-control form-control-sm required\" id=\"mail\" placeholder=\"Email\">\n </div>\n }\n @if(block.sendTelephone){\n <div class=\"form-group mt-1\">\n <label class=\"sr-only\" for=\"telefono\">Tel\u00E9fono</label>\n <input formControlName=\"telephone\" type=\"text\"\n class=\"form-control form-control-sm required\" id=\"telefono\" placeholder=\"Tel\u00E9fono\">\n </div>\n }\n @if(block.sendSubject){\n <div class=\"form-group mt-1\">\n <label class=\"sr-only\" for=\"subject\">Asunto</label>\n <input formControlName=\"subject\" type=\"text\"\n class=\"form-control form-control-sm required\" id=\"subject\" placeholder=\"Asunto\">\n </div>\n }\n @if(block.sendBody){\n <div class=\"form-group mt-1\">\n <label class=\"sr-only\" for=\"mensaje\">Mensaje</label>\n <textarea formControlName=\"body\" name=\"mensaje\" id=\"mensaje \" cols=\"30\"\n rows=\"5\" placeholder=\"Dejanos tu mensaje\"\n class=\"form-control form-control-sm required\"></textarea>\n </div>\n }\n <div class=\"boxContenidoCapcha mb-3 mt-1\">\n <div class=\"contenedorCaptcha\">\n <re-captcha-ec formControlName=\"recaptcha\"></re-captcha-ec>\n </div>\n </div>\n\n <button type=\"submit\" class=\"btn btn-dark text-uppercase px-5\"\n [disabled]=\"form().invalid\">ENVIAR</button>\n @if(loading){\n <app-loading-section-ec/>\n }\n </form>\n </div>\n\n </div>\n</div>\n}", styles: [""], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: LoadingSectionEcComponent, selector: "app-loading-section-ec" }, { kind: "component", type: ReCaptchaEcComponent, selector: "re-captcha-ec", inputs: ["siteKey"] }] });
|
|
7470
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: BlockFormContactEcComponent, isStandalone: true, selector: "app-block-form-contact-ec", inputs: { block: "block", success_message: "success_message", redirect: "redirect", subject: "subject" }, usesInheritance: true, ngImport: i0, template: "@if(block){\r\n<div [class]=\"trimClassBlock(block.code) + ' container-fluid'\">\r\n <div class=\"row justify-content-center\">\r\n <div class=\"col-12 col-md-12\">\r\n <div class=\"row w-100 m-auto\">\r\n <h5>{{block.name || 'Dejanos tu consulta'}}</h5>\r\n <p class=\"w-100\">{{ block.description || 'Completa el siguiente formulario y responderemos tu consulta a la brevedad' }}</p>\r\n </div>\r\n <form [formGroup]=\"form()\" (submit)=\"onSubmit($event)\" class=\"position-relative\" ><!-- (submit)=\"toastCompleteForm($event)\" -->\r\n @if(block.sendName){\r\n <div class=\"form-group mt-1\">\r\n <label class=\"sr-only\" for=\"nombre\">Nombre</label>\r\n <input formControlName=\"name\" type=\"text\"\r\n class=\"form-control form-control-sm required\" id=\"nombre\" placeholder=\"Nombre\">\r\n </div>\r\n }\r\n @if(block.sendEmail){\r\n <div class=\"form-group mt-1\">\r\n <label class=\"sr-only\" for=\"mail\">Email</label>\r\n <input formControlName=\"email\" type=\"email\"\r\n class=\"form-control form-control-sm required\" id=\"mail\" placeholder=\"Email\">\r\n </div>\r\n }\r\n @if(block.sendTelephone){\r\n <div class=\"form-group mt-1\">\r\n <label class=\"sr-only\" for=\"telefono\">Tel\u00E9fono</label>\r\n <input formControlName=\"telephone\" type=\"text\"\r\n class=\"form-control form-control-sm required\" id=\"telefono\" placeholder=\"Tel\u00E9fono\">\r\n </div>\r\n }\r\n @if(block.sendSubject){\r\n <div class=\"form-group mt-1\">\r\n <label class=\"sr-only\" for=\"subject\">Asunto</label>\r\n <input formControlName=\"subject\" type=\"text\"\r\n class=\"form-control form-control-sm required\" id=\"subject\" placeholder=\"Asunto\">\r\n </div>\r\n }\r\n @if(block.sendBody){\r\n <div class=\"form-group mt-1\">\r\n <label class=\"sr-only\" for=\"mensaje\">Mensaje</label>\r\n <textarea formControlName=\"body\" name=\"mensaje\" id=\"mensaje \" cols=\"30\"\r\n rows=\"5\" placeholder=\"Dejanos tu mensaje\"\r\n class=\"form-control form-control-sm required\"></textarea>\r\n </div>\r\n }\r\n <div class=\"boxContenidoCapcha mb-3 mt-1\">\r\n <div class=\"contenedorCaptcha\">\r\n <re-captcha-ec formControlName=\"recaptcha\"></re-captcha-ec>\r\n </div>\r\n </div>\r\n\r\n <button type=\"submit\" class=\"btn btn-dark text-uppercase px-5\"\r\n [disabled]=\"form().invalid\">ENVIAR</button>\r\n @if(loading){\r\n <app-loading-section-ec/>\r\n }\r\n </form>\r\n </div>\r\n\r\n </div>\r\n</div>\r\n}", styles: [""], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: LoadingSectionEcComponent, selector: "app-loading-section-ec" }, { kind: "component", type: ReCaptchaEcComponent, selector: "re-captcha-ec", inputs: ["siteKey"] }] });
|
|
7446
7471
|
}
|
|
7447
7472
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BlockFormContactEcComponent, decorators: [{
|
|
7448
7473
|
type: Component,
|
|
7449
|
-
args: [{ selector: 'app-block-form-contact-ec', standalone: true, imports: [ReactiveFormsModule, LoadingSectionEcComponent, ReCaptchaEcComponent], template: "@if(block){\n<div [class]=\"trimClassBlock(block.code) + ' container-fluid'\">\n <div class=\"row justify-content-center\">\n <div class=\"col-12 col-md-12\">\n <div class=\"row w-100 m-auto\">\n <h5>{{block.name || 'Dejanos tu consulta'}}</h5>\n <p class=\"w-100\">{{ block.description || 'Completa el siguiente formulario y responderemos tu consulta a la brevedad' }}</p>\n </div>\n <form [formGroup]=\"form()\" (submit)=\"onSubmit($event)\" class=\"position-relative\" ><!-- (submit)=\"toastCompleteForm($event)\" -->\n @if(block.sendName){\n <div class=\"form-group mt-1\">\n <label class=\"sr-only\" for=\"nombre\">Nombre</label>\n <input formControlName=\"name\" type=\"text\"\n class=\"form-control form-control-sm required\" id=\"nombre\" placeholder=\"Nombre\">\n </div>\n }\n @if(block.sendEmail){\n <div class=\"form-group mt-1\">\n <label class=\"sr-only\" for=\"mail\">Email</label>\n <input formControlName=\"email\" type=\"email\"\n class=\"form-control form-control-sm required\" id=\"mail\" placeholder=\"Email\">\n </div>\n }\n @if(block.sendTelephone){\n <div class=\"form-group mt-1\">\n <label class=\"sr-only\" for=\"telefono\">Tel\u00E9fono</label>\n <input formControlName=\"telephone\" type=\"text\"\n class=\"form-control form-control-sm required\" id=\"telefono\" placeholder=\"Tel\u00E9fono\">\n </div>\n }\n @if(block.sendSubject){\n <div class=\"form-group mt-1\">\n <label class=\"sr-only\" for=\"subject\">Asunto</label>\n <input formControlName=\"subject\" type=\"text\"\n class=\"form-control form-control-sm required\" id=\"subject\" placeholder=\"Asunto\">\n </div>\n }\n @if(block.sendBody){\n <div class=\"form-group mt-1\">\n <label class=\"sr-only\" for=\"mensaje\">Mensaje</label>\n <textarea formControlName=\"body\" name=\"mensaje\" id=\"mensaje \" cols=\"30\"\n rows=\"5\" placeholder=\"Dejanos tu mensaje\"\n class=\"form-control form-control-sm required\"></textarea>\n </div>\n }\n <div class=\"boxContenidoCapcha mb-3 mt-1\">\n <div class=\"contenedorCaptcha\">\n <re-captcha-ec formControlName=\"recaptcha\"></re-captcha-ec>\n </div>\n </div>\n\n <button type=\"submit\" class=\"btn btn-dark text-uppercase px-5\"\n [disabled]=\"form().invalid\">ENVIAR</button>\n @if(loading){\n <app-loading-section-ec/>\n }\n </form>\n </div>\n\n </div>\n</div>\n}" }]
|
|
7474
|
+
args: [{ selector: 'app-block-form-contact-ec', standalone: true, imports: [ReactiveFormsModule, LoadingSectionEcComponent, ReCaptchaEcComponent], template: "@if(block){\r\n<div [class]=\"trimClassBlock(block.code) + ' container-fluid'\">\r\n <div class=\"row justify-content-center\">\r\n <div class=\"col-12 col-md-12\">\r\n <div class=\"row w-100 m-auto\">\r\n <h5>{{block.name || 'Dejanos tu consulta'}}</h5>\r\n <p class=\"w-100\">{{ block.description || 'Completa el siguiente formulario y responderemos tu consulta a la brevedad' }}</p>\r\n </div>\r\n <form [formGroup]=\"form()\" (submit)=\"onSubmit($event)\" class=\"position-relative\" ><!-- (submit)=\"toastCompleteForm($event)\" -->\r\n @if(block.sendName){\r\n <div class=\"form-group mt-1\">\r\n <label class=\"sr-only\" for=\"nombre\">Nombre</label>\r\n <input formControlName=\"name\" type=\"text\"\r\n class=\"form-control form-control-sm required\" id=\"nombre\" placeholder=\"Nombre\">\r\n </div>\r\n }\r\n @if(block.sendEmail){\r\n <div class=\"form-group mt-1\">\r\n <label class=\"sr-only\" for=\"mail\">Email</label>\r\n <input formControlName=\"email\" type=\"email\"\r\n class=\"form-control form-control-sm required\" id=\"mail\" placeholder=\"Email\">\r\n </div>\r\n }\r\n @if(block.sendTelephone){\r\n <div class=\"form-group mt-1\">\r\n <label class=\"sr-only\" for=\"telefono\">Tel\u00E9fono</label>\r\n <input formControlName=\"telephone\" type=\"text\"\r\n class=\"form-control form-control-sm required\" id=\"telefono\" placeholder=\"Tel\u00E9fono\">\r\n </div>\r\n }\r\n @if(block.sendSubject){\r\n <div class=\"form-group mt-1\">\r\n <label class=\"sr-only\" for=\"subject\">Asunto</label>\r\n <input formControlName=\"subject\" type=\"text\"\r\n class=\"form-control form-control-sm required\" id=\"subject\" placeholder=\"Asunto\">\r\n </div>\r\n }\r\n @if(block.sendBody){\r\n <div class=\"form-group mt-1\">\r\n <label class=\"sr-only\" for=\"mensaje\">Mensaje</label>\r\n <textarea formControlName=\"body\" name=\"mensaje\" id=\"mensaje \" cols=\"30\"\r\n rows=\"5\" placeholder=\"Dejanos tu mensaje\"\r\n class=\"form-control form-control-sm required\"></textarea>\r\n </div>\r\n }\r\n <div class=\"boxContenidoCapcha mb-3 mt-1\">\r\n <div class=\"contenedorCaptcha\">\r\n <re-captcha-ec formControlName=\"recaptcha\"></re-captcha-ec>\r\n </div>\r\n </div>\r\n\r\n <button type=\"submit\" class=\"btn btn-dark text-uppercase px-5\"\r\n [disabled]=\"form().invalid\">ENVIAR</button>\r\n @if(loading){\r\n <app-loading-section-ec/>\r\n }\r\n </form>\r\n </div>\r\n\r\n </div>\r\n</div>\r\n}" }]
|
|
7450
7475
|
}], propDecorators: { block: [{
|
|
7451
7476
|
type: Input,
|
|
7452
7477
|
args: [{ required: true }]
|
|
@@ -7519,7 +7544,7 @@ class BlocksEcComponent {
|
|
|
7519
7544
|
}
|
|
7520
7545
|
}
|
|
7521
7546
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BlocksEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
7522
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: BlocksEcComponent, isStandalone: true, selector: "app-blocks-ec", inputs: { templates: "templates", show_loading: "show_loading", section: "section", blockFilters: "blockFilters" }, ngImport: i0, template: "@if(blocks$ | async; as blocks){\n @if(blocks.length > 0){\n <div class=\"container-fluid px-0\">\n <div class=\"row\">\n @for (block of blocks; track $index) {\n @switch (block.contentType) {\n @case ('banner') {\n @switch(block.design){\n @case ('full') {\n <app-block-banner-full-ec [banners]=\"block.banners\" [meta]=\"block\" />\n }\n @case ('boxes') {\n <app-block-banner-box-ec [banners]=\"block.banners\" [meta]=\"block\"/>\n }\n }\n }\n @case ('html') {\n @if(showBlock(block)){\n <app-block-html-ec [html_content]=\"getHTMLContent(block)\" />\n }\n }\n @case ('products') {\n <app-block-products-ec [products]=\"block.products?.items\" [meta]=\"block\" />\n }\n @case ('contact_form') {\n @if(isNewsletter(block)){\n <app-block-newsletter-ec [block]=\"block.contactForm\" />\n } @else {\n <app-block-form-contact-ec [block]=\"block.contactForm\" />\n }\n }\n }\n }\n </div>\n </div>\n }\n}", styles: [""], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "component", type: BlockBannerFullEcComponent, selector: "app-block-banner-full-ec", inputs: ["banners", "meta", "prevArrowImage", "nextArrowImage", "prevArrowText", "nextArrowText", "enableCustomNavigation"] }, { kind: "component", type: BlockBannerBoxEcComponent, selector: "app-block-banner-box-ec", inputs: ["banners", "meta"] }, { kind: "component", type: BlockHtmlEcComponent, selector: "app-block-html-ec", inputs: ["html_content"] }, { kind: "component", type: BlockProductsEcComponent, selector: "app-block-products-ec", inputs: ["prevArrowImage", "nextArrowImage", "prevArrowText", "nextArrowText", "appProduct", "products", "meta"] }, { kind: "component", type: BlockNewsletterEcComponent, selector: "app-block-newsletter-ec", inputs: ["block", "success_message", "subject"] }, { kind: "component", type: BlockFormContactEcComponent, selector: "app-block-form-contact-ec", inputs: ["block", "success_message", "redirect", "subject"] }] });
|
|
7547
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: BlocksEcComponent, isStandalone: true, selector: "app-blocks-ec", inputs: { templates: "templates", show_loading: "show_loading", section: "section", blockFilters: "blockFilters" }, ngImport: i0, template: "@if(blocks$ | async; as blocks){\r\n @if(blocks.length > 0){\r\n <div class=\"container-fluid px-0\">\r\n <div class=\"row\">\r\n @for (block of blocks; track $index) {\r\n @switch (block.contentType) {\r\n @case ('banner') {\r\n @switch(block.design){\r\n @case ('full') {\r\n <app-block-banner-full-ec [banners]=\"block.banners\" [meta]=\"block\" />\r\n }\r\n @case ('boxes') {\r\n <app-block-banner-box-ec [banners]=\"block.banners\" [meta]=\"block\"/>\r\n }\r\n }\r\n }\r\n @case ('html') {\r\n @if(showBlock(block)){\r\n <app-block-html-ec [html_content]=\"getHTMLContent(block)\" />\r\n }\r\n }\r\n @case ('products') {\r\n <app-block-products-ec [products]=\"block.products?.items\" [meta]=\"block\" />\r\n }\r\n @case ('contact_form') {\r\n @if(isNewsletter(block)){\r\n <app-block-newsletter-ec [block]=\"block.contactForm\" />\r\n } @else {\r\n <app-block-form-contact-ec [block]=\"block.contactForm\" />\r\n }\r\n }\r\n }\r\n }\r\n </div>\r\n </div>\r\n }\r\n}", styles: [""], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "component", type: BlockBannerFullEcComponent, selector: "app-block-banner-full-ec", inputs: ["banners", "meta", "prevArrowImage", "nextArrowImage", "prevArrowText", "nextArrowText", "enableCustomNavigation"] }, { kind: "component", type: BlockBannerBoxEcComponent, selector: "app-block-banner-box-ec", inputs: ["banners", "meta"] }, { kind: "component", type: BlockHtmlEcComponent, selector: "app-block-html-ec", inputs: ["html_content"] }, { kind: "component", type: BlockProductsEcComponent, selector: "app-block-products-ec", inputs: ["prevArrowImage", "nextArrowImage", "prevArrowText", "nextArrowText", "appProduct", "products", "meta"] }, { kind: "component", type: BlockNewsletterEcComponent, selector: "app-block-newsletter-ec", inputs: ["block", "success_message", "subject"] }, { kind: "component", type: BlockFormContactEcComponent, selector: "app-block-form-contact-ec", inputs: ["block", "success_message", "redirect", "subject"] }] });
|
|
7523
7548
|
}
|
|
7524
7549
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BlocksEcComponent, decorators: [{
|
|
7525
7550
|
type: Component,
|
|
@@ -7532,7 +7557,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
7532
7557
|
BlockProductsEcComponent,
|
|
7533
7558
|
BlockNewsletterEcComponent,
|
|
7534
7559
|
BlockFormContactEcComponent
|
|
7535
|
-
], template: "@if(blocks$ | async; as blocks){\n @if(blocks.length > 0){\n <div class=\"container-fluid px-0\">\n <div class=\"row\">\n @for (block of blocks; track $index) {\n @switch (block.contentType) {\n @case ('banner') {\n @switch(block.design){\n @case ('full') {\n <app-block-banner-full-ec [banners]=\"block.banners\" [meta]=\"block\" />\n }\n @case ('boxes') {\n <app-block-banner-box-ec [banners]=\"block.banners\" [meta]=\"block\"/>\n }\n }\n }\n @case ('html') {\n @if(showBlock(block)){\n <app-block-html-ec [html_content]=\"getHTMLContent(block)\" />\n }\n }\n @case ('products') {\n <app-block-products-ec [products]=\"block.products?.items\" [meta]=\"block\" />\n }\n @case ('contact_form') {\n @if(isNewsletter(block)){\n <app-block-newsletter-ec [block]=\"block.contactForm\" />\n } @else {\n <app-block-form-contact-ec [block]=\"block.contactForm\" />\n }\n }\n }\n }\n </div>\n </div>\n }\n}" }]
|
|
7560
|
+
], template: "@if(blocks$ | async; as blocks){\r\n @if(blocks.length > 0){\r\n <div class=\"container-fluid px-0\">\r\n <div class=\"row\">\r\n @for (block of blocks; track $index) {\r\n @switch (block.contentType) {\r\n @case ('banner') {\r\n @switch(block.design){\r\n @case ('full') {\r\n <app-block-banner-full-ec [banners]=\"block.banners\" [meta]=\"block\" />\r\n }\r\n @case ('boxes') {\r\n <app-block-banner-box-ec [banners]=\"block.banners\" [meta]=\"block\"/>\r\n }\r\n }\r\n }\r\n @case ('html') {\r\n @if(showBlock(block)){\r\n <app-block-html-ec [html_content]=\"getHTMLContent(block)\" />\r\n }\r\n }\r\n @case ('products') {\r\n <app-block-products-ec [products]=\"block.products?.items\" [meta]=\"block\" />\r\n }\r\n @case ('contact_form') {\r\n @if(isNewsletter(block)){\r\n <app-block-newsletter-ec [block]=\"block.contactForm\" />\r\n } @else {\r\n <app-block-form-contact-ec [block]=\"block.contactForm\" />\r\n }\r\n }\r\n }\r\n }\r\n </div>\r\n </div>\r\n }\r\n}" }]
|
|
7536
7561
|
}], ctorParameters: () => [], propDecorators: { templates: [{
|
|
7537
7562
|
type: Input
|
|
7538
7563
|
}], show_loading: [{
|
|
@@ -7604,11 +7629,11 @@ class CollectionEcComponent {
|
|
|
7604
7629
|
return this._productsService.hasStock(product);
|
|
7605
7630
|
}
|
|
7606
7631
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CollectionEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
7607
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: CollectionEcComponent, isStandalone: true, selector: "lib-collection-ec", inputs: { optionsFilters: "optionsFilters" }, ngImport: i0, template: "<section class=\"container-xl mb-5\">\n <div class=\"row m-0 p-0\">\n <div class=\"d-none d-lg-block col-3\">\n <!--Filtros-->\n </div>\n\n <div class=\"col-12 col-lg-9 mt-2 p-0\">\n <div class=\"container\">\n <!-- @for(['a', 'b', 'c', 'd'] as product){\n\n } -->\n </div>\n </div>\n\n </div>\n</section>\n", styles: [""] });
|
|
7632
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: CollectionEcComponent, isStandalone: true, selector: "lib-collection-ec", inputs: { optionsFilters: "optionsFilters" }, ngImport: i0, template: "<section class=\"container-xl mb-5\">\r\n <div class=\"row m-0 p-0\">\r\n <div class=\"d-none d-lg-block col-3\">\r\n <!--Filtros-->\r\n </div>\r\n\r\n <div class=\"col-12 col-lg-9 mt-2 p-0\">\r\n <div class=\"container\">\r\n <!-- @for(['a', 'b', 'c', 'd'] as product){\r\n\r\n } -->\r\n </div>\r\n </div>\r\n\r\n </div>\r\n</section>\r\n", styles: [""] });
|
|
7608
7633
|
}
|
|
7609
7634
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CollectionEcComponent, decorators: [{
|
|
7610
7635
|
type: Component,
|
|
7611
|
-
args: [{ selector: 'lib-collection-ec', standalone: true, imports: [InfiniteScrollDirective], template: "<section class=\"container-xl mb-5\">\n <div class=\"row m-0 p-0\">\n <div class=\"d-none d-lg-block col-3\">\n <!--Filtros-->\n </div>\n\n <div class=\"col-12 col-lg-9 mt-2 p-0\">\n <div class=\"container\">\n <!-- @for(['a', 'b', 'c', 'd'] as product){\n\n } -->\n </div>\n </div>\n\n </div>\n</section>\n" }]
|
|
7636
|
+
args: [{ selector: 'lib-collection-ec', standalone: true, imports: [InfiniteScrollDirective], template: "<section class=\"container-xl mb-5\">\r\n <div class=\"row m-0 p-0\">\r\n <div class=\"d-none d-lg-block col-3\">\r\n <!--Filtros-->\r\n </div>\r\n\r\n <div class=\"col-12 col-lg-9 mt-2 p-0\">\r\n <div class=\"container\">\r\n <!-- @for(['a', 'b', 'c', 'd'] as product){\r\n\r\n } -->\r\n </div>\r\n </div>\r\n\r\n </div>\r\n</section>\r\n" }]
|
|
7612
7637
|
}], ctorParameters: () => [], propDecorators: { optionsFilters: [{
|
|
7613
7638
|
type: Input
|
|
7614
7639
|
}] } });
|
|
@@ -7637,11 +7662,11 @@ class FiltersSortEcComponent {
|
|
|
7637
7662
|
selectedOption && this._filtersService.setFilterSelected(this.filters[0], selectedOption);
|
|
7638
7663
|
}
|
|
7639
7664
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FiltersSortEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
7640
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FiltersSortEcComponent, isStandalone: true, selector: "app-filters-sort-ec", outputs: { changeFilter: "changeFilter" }, ngImport: i0, template: "<p>filters-sort works!</p>\n", styles: [""] });
|
|
7665
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FiltersSortEcComponent, isStandalone: true, selector: "app-filters-sort-ec", outputs: { changeFilter: "changeFilter" }, ngImport: i0, template: "<p>filters-sort works!</p>\r\n", styles: [""] });
|
|
7641
7666
|
}
|
|
7642
7667
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FiltersSortEcComponent, decorators: [{
|
|
7643
7668
|
type: Component,
|
|
7644
|
-
args: [{ selector: 'app-filters-sort-ec', standalone: true, imports: [], template: "<p>filters-sort works!</p>\n" }]
|
|
7669
|
+
args: [{ selector: 'app-filters-sort-ec', standalone: true, imports: [], template: "<p>filters-sort works!</p>\r\n" }]
|
|
7645
7670
|
}], ctorParameters: () => [], propDecorators: { changeFilter: [{
|
|
7646
7671
|
type: Output
|
|
7647
7672
|
}] } });
|
|
@@ -7740,11 +7765,11 @@ class LoginFormEcComponent {
|
|
|
7740
7765
|
: this._router.navigateByUrl(this.redirectTo);
|
|
7741
7766
|
}
|
|
7742
7767
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LoginFormEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
7743
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: LoginFormEcComponent, isStandalone: true, selector: "app-login-form-ec", inputs: { redirect: "redirect", redirectTo: "redirectTo", inCart: "inCart" }, outputs: { ready: "ready" }, ngImport: i0, template: "<div class=\"d-flex flex-column position-relative\">\n <h1 class=\"right-line ff-ubuntu-light mb-4\"><span>Ingresar</span></h1>\n <p class=\"ff-ubuntu-light font-sm pr-4 mb-4\">\n Si ya est\u00E1s registrado. Ingresa en tu cuenta con tu email y la\n contrase\u00F1a adecuada.\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=\"Correo Electr\u00F3nico\">\n <input class=\"form-control mb-4 radius-0\" type=\"password\" formControlName=\"password\"\n placeholder=\"Contrase\u00F1a\">\n\n <div class=\"row d-flex flex-column\">\n <div class=\"col-12 mb-4\">\n <button type=\"submit\"\n class=\"bg-gray border-0 px-4 py-2 color-white ff-ubuntu-light\">INGRESAR</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 \u00BFOlvid\u00F3 su contrase\u00F1a?\n </a>\n </div>\n </div>\n </form>\n </div>\n @if(loading){\n <app-loading-section-ec></app-loading-section-ec>\n }\n</div>", styles: [""], dependencies: [{ kind: "component", type: LoadingSectionEcComponent, selector: "app-loading-section-ec" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] });
|
|
7768
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: LoginFormEcComponent, isStandalone: true, selector: "app-login-form-ec", inputs: { redirect: "redirect", redirectTo: "redirectTo", inCart: "inCart" }, outputs: { ready: "ready" }, ngImport: i0, template: "<div class=\"d-flex flex-column position-relative\">\r\n <h1 class=\"right-line ff-ubuntu-light mb-4\"><span>Ingresar</span></h1>\r\n <p class=\"ff-ubuntu-light font-sm pr-4 mb-4\">\r\n Si ya est\u00E1s registrado. Ingresa en tu cuenta con tu email y la\r\n contrase\u00F1a adecuada.\r\n </p>\r\n <div class=\"w-md-50 w-100 text-center\">\r\n <form [formGroup]=\"loginForm()\" (submit)=\"login($event)\">\r\n <input class=\"form-control mb-4 radius-0\" type=\"email\" formControlName=\"username\"\r\n placeholder=\"Correo Electr\u00F3nico\">\r\n <input class=\"form-control mb-4 radius-0\" type=\"password\" formControlName=\"password\"\r\n placeholder=\"Contrase\u00F1a\">\r\n\r\n <div class=\"row d-flex flex-column\">\r\n <div class=\"col-12 mb-4\">\r\n <button type=\"submit\"\r\n class=\"bg-gray border-0 px-4 py-2 color-white ff-ubuntu-light\">INGRESAR</button>\r\n </div>\r\n <div class=\"col-12 d-flex justify-content-center align-items-center\">\r\n <a [routerLink]=\"'/auth/forgot-password'\" class=\"font-md ff-ubuntu-light\">\r\n \u00BFOlvid\u00F3 su contrase\u00F1a?\r\n </a>\r\n </div>\r\n </div>\r\n </form>\r\n </div>\r\n @if(loading){\r\n <app-loading-section-ec></app-loading-section-ec>\r\n }\r\n</div>", styles: [""], dependencies: [{ kind: "component", type: LoadingSectionEcComponent, selector: "app-loading-section-ec" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] });
|
|
7744
7769
|
}
|
|
7745
7770
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LoginFormEcComponent, decorators: [{
|
|
7746
7771
|
type: Component,
|
|
7747
|
-
args: [{ selector: 'app-login-form-ec', standalone: true, imports: [LoadingSectionEcComponent, ReactiveFormsModule, RouterLink, JsonPipe], template: "<div class=\"d-flex flex-column position-relative\">\n <h1 class=\"right-line ff-ubuntu-light mb-4\"><span>Ingresar</span></h1>\n <p class=\"ff-ubuntu-light font-sm pr-4 mb-4\">\n Si ya est\u00E1s registrado. Ingresa en tu cuenta con tu email y la\n contrase\u00F1a adecuada.\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=\"Correo Electr\u00F3nico\">\n <input class=\"form-control mb-4 radius-0\" type=\"password\" formControlName=\"password\"\n placeholder=\"Contrase\u00F1a\">\n\n <div class=\"row d-flex flex-column\">\n <div class=\"col-12 mb-4\">\n <button type=\"submit\"\n class=\"bg-gray border-0 px-4 py-2 color-white ff-ubuntu-light\">INGRESAR</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 \u00BFOlvid\u00F3 su contrase\u00F1a?\n </a>\n </div>\n </div>\n </form>\n </div>\n @if(loading){\n <app-loading-section-ec></app-loading-section-ec>\n }\n</div>" }]
|
|
7772
|
+
args: [{ selector: 'app-login-form-ec', standalone: true, imports: [LoadingSectionEcComponent, ReactiveFormsModule, RouterLink, JsonPipe], template: "<div class=\"d-flex flex-column position-relative\">\r\n <h1 class=\"right-line ff-ubuntu-light mb-4\"><span>Ingresar</span></h1>\r\n <p class=\"ff-ubuntu-light font-sm pr-4 mb-4\">\r\n Si ya est\u00E1s registrado. Ingresa en tu cuenta con tu email y la\r\n contrase\u00F1a adecuada.\r\n </p>\r\n <div class=\"w-md-50 w-100 text-center\">\r\n <form [formGroup]=\"loginForm()\" (submit)=\"login($event)\">\r\n <input class=\"form-control mb-4 radius-0\" type=\"email\" formControlName=\"username\"\r\n placeholder=\"Correo Electr\u00F3nico\">\r\n <input class=\"form-control mb-4 radius-0\" type=\"password\" formControlName=\"password\"\r\n placeholder=\"Contrase\u00F1a\">\r\n\r\n <div class=\"row d-flex flex-column\">\r\n <div class=\"col-12 mb-4\">\r\n <button type=\"submit\"\r\n class=\"bg-gray border-0 px-4 py-2 color-white ff-ubuntu-light\">INGRESAR</button>\r\n </div>\r\n <div class=\"col-12 d-flex justify-content-center align-items-center\">\r\n <a [routerLink]=\"'/auth/forgot-password'\" class=\"font-md ff-ubuntu-light\">\r\n \u00BFOlvid\u00F3 su contrase\u00F1a?\r\n </a>\r\n </div>\r\n </div>\r\n </form>\r\n </div>\r\n @if(loading){\r\n <app-loading-section-ec></app-loading-section-ec>\r\n }\r\n</div>" }]
|
|
7748
7773
|
}], propDecorators: { redirect: [{
|
|
7749
7774
|
type: Input
|
|
7750
7775
|
}], redirectTo: [{
|
|
@@ -7757,11 +7782,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
7757
7782
|
|
|
7758
7783
|
class AuthEcComponent {
|
|
7759
7784
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AuthEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
7760
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: AuthEcComponent, isStandalone: true, selector: "app-auth-ec", ngImport: i0, template: "<div class=\"container-xl\">\n <div class=\"row\">\n <div class=\"col-md-6 col-12\">\n <app-login-form-ec />\n </div>\n <div class=\"col-md-6 col-12\">\n \n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "component", type: LoginFormEcComponent, selector: "app-login-form-ec", inputs: ["redirect", "redirectTo", "inCart"], outputs: ["ready"] }] });
|
|
7785
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: AuthEcComponent, isStandalone: true, selector: "app-auth-ec", ngImport: i0, template: "<div class=\"container-xl\">\r\n <div class=\"row\">\r\n <div class=\"col-md-6 col-12\">\r\n <app-login-form-ec />\r\n </div>\r\n <div class=\"col-md-6 col-12\">\r\n \r\n </div>\r\n </div>\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "component", type: LoginFormEcComponent, selector: "app-login-form-ec", inputs: ["redirect", "redirectTo", "inCart"], outputs: ["ready"] }] });
|
|
7761
7786
|
}
|
|
7762
7787
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AuthEcComponent, decorators: [{
|
|
7763
7788
|
type: Component,
|
|
7764
|
-
args: [{ selector: 'app-auth-ec', standalone: true, imports: [LoginFormEcComponent], template: "<div class=\"container-xl\">\n <div class=\"row\">\n <div class=\"col-md-6 col-12\">\n <app-login-form-ec />\n </div>\n <div class=\"col-md-6 col-12\">\n \n </div>\n </div>\n</div>\n" }]
|
|
7789
|
+
args: [{ selector: 'app-auth-ec', standalone: true, imports: [LoginFormEcComponent], template: "<div class=\"container-xl\">\r\n <div class=\"row\">\r\n <div class=\"col-md-6 col-12\">\r\n <app-login-form-ec />\r\n </div>\r\n <div class=\"col-md-6 col-12\">\r\n \r\n </div>\r\n </div>\r\n</div>\r\n" }]
|
|
7765
7790
|
}] });
|
|
7766
7791
|
|
|
7767
7792
|
class ForgotPasswordEcComponent {
|
|
@@ -7802,11 +7827,11 @@ class ForgotPasswordEcComponent {
|
|
|
7802
7827
|
}).finally(() => this.loading = false);
|
|
7803
7828
|
};
|
|
7804
7829
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ForgotPasswordEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
7805
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ForgotPasswordEcComponent, isStandalone: true, selector: "app-forgot-password-ec", ngImport: i0, template: "\n<!-- CONTENIDO -->\n @if(!ready){\n<section class=\"container-fluid mb-3 py-3 py-md-4 bloqueContact\">\n <div class=\"container-xl\">\n <div class=\"row\">\n\n <div class=\"col-12 col-md-8 col-lg-5 m-auto recuperar mt-5\">\n <h2 class=\"fw-600 mt-0 mb-4\">{{ 'recover-password' | translate\n }}</h2>\n <form [formGroup]=\"form\" (submit)=\"recoverPassword($event)\" class=\"mt-0\">\n\n <p for=\"nombre\">{{ 'set-forgot-email' | translate }}</p>\n <input class=\"form-control\" formControlName=\"email\" type='text' name='nombre' id=\"nombre\" value='' placeholder=''>\n\n <div class=\"contSend mt-4\">\n <input class=\"comprar\" type=\"submit\" [disabled]=\"form.invalid\" name='' value='ENVIAR' placeholder=''>\n </div>\n\n </form>\n </div>\n\n </div>\n </div>\n</section>\n} @else {\n <div class=\"row d-flex justify-content-center py-5 \">\n <div class=\"col-12 col-md-8 my-5\">\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 }", styles: [""], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] });
|
|
7830
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ForgotPasswordEcComponent, isStandalone: true, selector: "app-forgot-password-ec", ngImport: i0, template: "\r\n<!-- CONTENIDO -->\r\n @if(!ready){\r\n<section class=\"container-fluid mb-3 py-3 py-md-4 bloqueContact\">\r\n <div class=\"container-xl\">\r\n <div class=\"row\">\r\n\r\n <div class=\"col-12 col-md-8 col-lg-5 m-auto recuperar mt-5\">\r\n <h2 class=\"fw-600 mt-0 mb-4\">{{ 'recover-password' | translate\r\n }}</h2>\r\n <form [formGroup]=\"form\" (submit)=\"recoverPassword($event)\" class=\"mt-0\">\r\n\r\n <p for=\"nombre\">{{ 'set-forgot-email' | translate }}</p>\r\n <input class=\"form-control\" formControlName=\"email\" type='text' name='nombre' id=\"nombre\" value='' placeholder=''>\r\n\r\n <div class=\"contSend mt-4\">\r\n <input class=\"comprar\" type=\"submit\" [disabled]=\"form.invalid\" name='' value='ENVIAR' placeholder=''>\r\n </div>\r\n\r\n </form>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n</section>\r\n} @else {\r\n <div class=\"row d-flex justify-content-center py-5 \">\r\n <div class=\"col-12 col-md-8 my-5\">\r\n <div class=\"element-container text-center\">\r\n <h3>{{ 'mail-sent' | translate }}</h3>\r\n </div>\r\n <div class=\"element-container text-center\">\r\n <h5 class=\"center-text\">{{ 'check-your-email' | translate }}</h5>\r\n </div>\r\n </div>\r\n </div>\r\n }", styles: [""], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] });
|
|
7806
7831
|
}
|
|
7807
7832
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ForgotPasswordEcComponent, decorators: [{
|
|
7808
7833
|
type: Component,
|
|
7809
|
-
args: [{ selector: 'app-forgot-password-ec', standalone: true, imports: [TranslateModule, ReactiveFormsModule, LoadingInlineEcComponent], template: "\n<!-- CONTENIDO -->\n @if(!ready){\n<section class=\"container-fluid mb-3 py-3 py-md-4 bloqueContact\">\n <div class=\"container-xl\">\n <div class=\"row\">\n\n <div class=\"col-12 col-md-8 col-lg-5 m-auto recuperar mt-5\">\n <h2 class=\"fw-600 mt-0 mb-4\">{{ 'recover-password' | translate\n }}</h2>\n <form [formGroup]=\"form\" (submit)=\"recoverPassword($event)\" class=\"mt-0\">\n\n <p for=\"nombre\">{{ 'set-forgot-email' | translate }}</p>\n <input class=\"form-control\" formControlName=\"email\" type='text' name='nombre' id=\"nombre\" value='' placeholder=''>\n\n <div class=\"contSend mt-4\">\n <input class=\"comprar\" type=\"submit\" [disabled]=\"form.invalid\" name='' value='ENVIAR' placeholder=''>\n </div>\n\n </form>\n </div>\n\n </div>\n </div>\n</section>\n} @else {\n <div class=\"row d-flex justify-content-center py-5 \">\n <div class=\"col-12 col-md-8 my-5\">\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 }" }]
|
|
7834
|
+
args: [{ selector: 'app-forgot-password-ec', standalone: true, imports: [TranslateModule, ReactiveFormsModule, LoadingInlineEcComponent], template: "\r\n<!-- CONTENIDO -->\r\n @if(!ready){\r\n<section class=\"container-fluid mb-3 py-3 py-md-4 bloqueContact\">\r\n <div class=\"container-xl\">\r\n <div class=\"row\">\r\n\r\n <div class=\"col-12 col-md-8 col-lg-5 m-auto recuperar mt-5\">\r\n <h2 class=\"fw-600 mt-0 mb-4\">{{ 'recover-password' | translate\r\n }}</h2>\r\n <form [formGroup]=\"form\" (submit)=\"recoverPassword($event)\" class=\"mt-0\">\r\n\r\n <p for=\"nombre\">{{ 'set-forgot-email' | translate }}</p>\r\n <input class=\"form-control\" formControlName=\"email\" type='text' name='nombre' id=\"nombre\" value='' placeholder=''>\r\n\r\n <div class=\"contSend mt-4\">\r\n <input class=\"comprar\" type=\"submit\" [disabled]=\"form.invalid\" name='' value='ENVIAR' placeholder=''>\r\n </div>\r\n\r\n </form>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n</section>\r\n} @else {\r\n <div class=\"row d-flex justify-content-center py-5 \">\r\n <div class=\"col-12 col-md-8 my-5\">\r\n <div class=\"element-container text-center\">\r\n <h3>{{ 'mail-sent' | translate }}</h3>\r\n </div>\r\n <div class=\"element-container text-center\">\r\n <h5 class=\"center-text\">{{ 'check-your-email' | translate }}</h5>\r\n </div>\r\n </div>\r\n </div>\r\n }" }]
|
|
7810
7835
|
}], ctorParameters: () => [] });
|
|
7811
7836
|
|
|
7812
7837
|
class ConfirmAccountEcComponent {
|
|
@@ -7824,11 +7849,11 @@ class ConfirmAccountEcComponent {
|
|
|
7824
7849
|
});
|
|
7825
7850
|
}
|
|
7826
7851
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ConfirmAccountEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
7827
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ConfirmAccountEcComponent, isStandalone: true, selector: "app-confirm-account-ec", ngImport: i0, template: "<div class=\"my-5 py-5\">\n <div class=\"row\">\n <div class=\"col-md-12 col-12 text-center\">\n <h4 class=\"confirm-title py-3 text-uppercase d-inline-block\">\n {{ ('thanks-for-register' | translate) | uppercase }}</h4>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-md-12 col-12 text-center\">\n <h4>{{ 'thanks-for-register-detail' | translate }}</h4>\n <a href=\"/auth/login\">\n <button class=\"btn btn-primary my-4\" type=\"button\">{{ 'login' | translate |\n uppercase }}</button>\n </a>\n </div>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: UpperCasePipe, name: "uppercase" }] });
|
|
7852
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ConfirmAccountEcComponent, isStandalone: true, selector: "app-confirm-account-ec", ngImport: i0, template: "<div class=\"my-5 py-5\">\r\n <div class=\"row\">\r\n <div class=\"col-md-12 col-12 text-center\">\r\n <h4 class=\"confirm-title py-3 text-uppercase d-inline-block\">\r\n {{ ('thanks-for-register' | translate) | uppercase }}</h4>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-md-12 col-12 text-center\">\r\n <h4>{{ 'thanks-for-register-detail' | translate }}</h4>\r\n <a href=\"/auth/login\">\r\n <button class=\"btn btn-primary my-4\" type=\"button\">{{ 'login' | translate |\r\n uppercase }}</button>\r\n </a>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: UpperCasePipe, name: "uppercase" }] });
|
|
7828
7853
|
}
|
|
7829
7854
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ConfirmAccountEcComponent, decorators: [{
|
|
7830
7855
|
type: Component,
|
|
7831
|
-
args: [{ selector: 'app-confirm-account-ec', standalone: true, imports: [TranslateModule, UpperCasePipe], template: "<div class=\"my-5 py-5\">\n <div class=\"row\">\n <div class=\"col-md-12 col-12 text-center\">\n <h4 class=\"confirm-title py-3 text-uppercase d-inline-block\">\n {{ ('thanks-for-register' | translate) | uppercase }}</h4>\n </div>\n </div>\n <div class=\"row\">\n <div class=\"col-md-12 col-12 text-center\">\n <h4>{{ 'thanks-for-register-detail' | translate }}</h4>\n <a href=\"/auth/login\">\n <button class=\"btn btn-primary my-4\" type=\"button\">{{ 'login' | translate |\n uppercase }}</button>\n </a>\n </div>\n </div>\n</div>\n" }]
|
|
7856
|
+
args: [{ selector: 'app-confirm-account-ec', standalone: true, imports: [TranslateModule, UpperCasePipe], template: "<div class=\"my-5 py-5\">\r\n <div class=\"row\">\r\n <div class=\"col-md-12 col-12 text-center\">\r\n <h4 class=\"confirm-title py-3 text-uppercase d-inline-block\">\r\n {{ ('thanks-for-register' | translate) | uppercase }}</h4>\r\n </div>\r\n </div>\r\n <div class=\"row\">\r\n <div class=\"col-md-12 col-12 text-center\">\r\n <h4>{{ 'thanks-for-register-detail' | translate }}</h4>\r\n <a href=\"/auth/login\">\r\n <button class=\"btn btn-primary my-4\" type=\"button\">{{ 'login' | translate |\r\n uppercase }}</button>\r\n </a>\r\n </div>\r\n </div>\r\n</div>\r\n" }]
|
|
7832
7857
|
}] });
|
|
7833
7858
|
|
|
7834
7859
|
class RegisterFormEcComponent {
|
|
@@ -7954,11 +7979,11 @@ class RegisterFormEcComponent {
|
|
|
7954
7979
|
}
|
|
7955
7980
|
}
|
|
7956
7981
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RegisterFormEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
7957
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: RegisterFormEcComponent, isStandalone: true, selector: "app-register-form-ec", inputs: { redirect: "redirect" }, outputs: { ready: "ready" }, ngImport: i0, 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-primary px-5 py-2 h-fit\">CREAR</button>\n </div>\n </div>\n </form>\n @if(loading){\n <app-loading-section-ec />\n }\n \n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$3.CheckboxRequiredValidator, selector: "input[type=checkbox][required][formControlName],input[type=checkbox][required][formControl],input[type=checkbox][required][ngModel]" }, { kind: "directive", type: i1$3.EmailValidator, selector: "[email][formControlName],[email][formControl],[email][ngModel]", inputs: ["email"] }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: LoadingSectionEcComponent, selector: "app-loading-section-ec" }] });
|
|
7982
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: RegisterFormEcComponent, isStandalone: true, selector: "app-register-form-ec", inputs: { redirect: "redirect" }, outputs: { ready: "ready" }, ngImport: i0, template: "<div class=\"w-100 pl-md-5 position-relative\" id=\"register\">\r\n <div class=\"py-2\">\r\n <h5>CREAR CUENTA</h5>\r\n </div>\r\n <form id=\"registro\" [formGroup]=\"registerForm\" (submit)=\"register($event)\">\r\n <div class=\"form-group\">\r\n <label for=\"\" class=\"form-label\">NOMBRE</label>\r\n <input formControlName=\"firstName\" class=\"form-control rounded-0\" type=\"text\" placeholder=\"Nombre\">\r\n </div>\r\n <div class=\"form-group\">\r\n <label for=\"\" class=\"form-label\">APELLIDO</label>\r\n <input formControlName=\"lastName\" class=\"form-control rounded-0\" type=\"text\" placeholder=\"Apellido\">\r\n </div>\r\n <div class=\"form-group\">\r\n <label for=\"\" class=\"\">CORREO ELECTRONICO</label>\r\n <input formControlName=\"email\" email required class=\"form-control rounded-0\" type=\"email\"\r\n placeholder=\"Correo electr\u00F3nico\">\r\n </div>\r\n <div class=\"form-group\">\r\n <label for=\"\" class=\"form-label\">CONTRASE\u00D1A</label>\r\n <input formControlName=\"plainPassword\" required class=\"form-control rounded-0\" type=\"password\"\r\n placeholder=\"Contrase\u00F1a\">\r\n </div>\r\n <div class=\"form-group\">\r\n <label for=\"\" class=\"form-label\">REPETIR CONTRASE\u00D1A</label>\r\n <input formControlName=\"plainPassword2\" required class=\"form-control rounded-0\" type=\"password\"\r\n placeholder=\"Repetir contrase\u00F1a\">\r\n </div>\r\n\r\n <div class=\"custom-control d-flex flex-row form-check custom-checkbox mr-sm-2 mt-4 mb-2\">\r\n <input type=\"checkbox\" formControlName=\"terms\" required class=\"custom-control-input form-check-input\" name=\"Color2\"\r\n id=\"Color2\">\r\n <label class=\"custom-control-label ff-ubuntu-light font-sm form-check-label\" for=\"Color2\"> He\r\n le\u00EDdo y acepto las pol\u00EDticas de privacidad y los t\u00E9rminos y\r\n condiciones</label>\r\n </div>\r\n\r\n <div class=\"custom-control d-flex flex-row form-check custom-checkbox mr-sm-2 mb-4\">\r\n <input type=\"checkbox\" formControlName=\"newsletter\" class=\"custom-control-input form-check-input\" name=\"Color3\" id=\"Color3\">\r\n <label class=\"custom-control-label form-check-label ff-ubuntu-light font-sm\" for=\"Color3\">\r\n Suscripci\u00F3n al Newsletter</label>\r\n </div>\r\n\r\n <div class=\"row\">\r\n <div class=\"col-12\">\r\n <button [disabled]=\"registerForm.invalid\" type=\"submit\"\r\n class=\"btn btn-primary px-5 py-2 h-fit\">CREAR</button>\r\n </div>\r\n </div>\r\n </form>\r\n @if(loading){\r\n <app-loading-section-ec />\r\n }\r\n \r\n</div>\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$3.CheckboxRequiredValidator, selector: "input[type=checkbox][required][formControlName],input[type=checkbox][required][formControl],input[type=checkbox][required][ngModel]" }, { kind: "directive", type: i1$3.EmailValidator, selector: "[email][formControlName],[email][formControl],[email][ngModel]", inputs: ["email"] }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: LoadingSectionEcComponent, selector: "app-loading-section-ec" }] });
|
|
7958
7983
|
}
|
|
7959
7984
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RegisterFormEcComponent, decorators: [{
|
|
7960
7985
|
type: Component,
|
|
7961
|
-
args: [{ selector: 'app-register-form-ec', standalone: true, imports: [ReactiveFormsModule, LoadingSectionEcComponent], 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-primary px-5 py-2 h-fit\">CREAR</button>\n </div>\n </div>\n </form>\n @if(loading){\n <app-loading-section-ec />\n }\n \n</div>\n" }]
|
|
7986
|
+
args: [{ selector: 'app-register-form-ec', standalone: true, imports: [ReactiveFormsModule, LoadingSectionEcComponent], template: "<div class=\"w-100 pl-md-5 position-relative\" id=\"register\">\r\n <div class=\"py-2\">\r\n <h5>CREAR CUENTA</h5>\r\n </div>\r\n <form id=\"registro\" [formGroup]=\"registerForm\" (submit)=\"register($event)\">\r\n <div class=\"form-group\">\r\n <label for=\"\" class=\"form-label\">NOMBRE</label>\r\n <input formControlName=\"firstName\" class=\"form-control rounded-0\" type=\"text\" placeholder=\"Nombre\">\r\n </div>\r\n <div class=\"form-group\">\r\n <label for=\"\" class=\"form-label\">APELLIDO</label>\r\n <input formControlName=\"lastName\" class=\"form-control rounded-0\" type=\"text\" placeholder=\"Apellido\">\r\n </div>\r\n <div class=\"form-group\">\r\n <label for=\"\" class=\"\">CORREO ELECTRONICO</label>\r\n <input formControlName=\"email\" email required class=\"form-control rounded-0\" type=\"email\"\r\n placeholder=\"Correo electr\u00F3nico\">\r\n </div>\r\n <div class=\"form-group\">\r\n <label for=\"\" class=\"form-label\">CONTRASE\u00D1A</label>\r\n <input formControlName=\"plainPassword\" required class=\"form-control rounded-0\" type=\"password\"\r\n placeholder=\"Contrase\u00F1a\">\r\n </div>\r\n <div class=\"form-group\">\r\n <label for=\"\" class=\"form-label\">REPETIR CONTRASE\u00D1A</label>\r\n <input formControlName=\"plainPassword2\" required class=\"form-control rounded-0\" type=\"password\"\r\n placeholder=\"Repetir contrase\u00F1a\">\r\n </div>\r\n\r\n <div class=\"custom-control d-flex flex-row form-check custom-checkbox mr-sm-2 mt-4 mb-2\">\r\n <input type=\"checkbox\" formControlName=\"terms\" required class=\"custom-control-input form-check-input\" name=\"Color2\"\r\n id=\"Color2\">\r\n <label class=\"custom-control-label ff-ubuntu-light font-sm form-check-label\" for=\"Color2\"> He\r\n le\u00EDdo y acepto las pol\u00EDticas de privacidad y los t\u00E9rminos y\r\n condiciones</label>\r\n </div>\r\n\r\n <div class=\"custom-control d-flex flex-row form-check custom-checkbox mr-sm-2 mb-4\">\r\n <input type=\"checkbox\" formControlName=\"newsletter\" class=\"custom-control-input form-check-input\" name=\"Color3\" id=\"Color3\">\r\n <label class=\"custom-control-label form-check-label ff-ubuntu-light font-sm\" for=\"Color3\">\r\n Suscripci\u00F3n al Newsletter</label>\r\n </div>\r\n\r\n <div class=\"row\">\r\n <div class=\"col-12\">\r\n <button [disabled]=\"registerForm.invalid\" type=\"submit\"\r\n class=\"btn btn-primary px-5 py-2 h-fit\">CREAR</button>\r\n </div>\r\n </div>\r\n </form>\r\n @if(loading){\r\n <app-loading-section-ec />\r\n }\r\n \r\n</div>\r\n" }]
|
|
7962
7987
|
}], ctorParameters: () => [], propDecorators: { redirect: [{
|
|
7963
7988
|
type: Input
|
|
7964
7989
|
}], ready: [{
|
|
@@ -8096,11 +8121,11 @@ class RegisterWholesalerFormEcComponent {
|
|
|
8096
8121
|
this.form.controls['provinceName'].setValue(provinces.find((province) => province.code == value).name);
|
|
8097
8122
|
};
|
|
8098
8123
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RegisterWholesalerFormEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
8099
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: RegisterWholesalerFormEcComponent, isStandalone: true, selector: "app-register-wholesaler-form-ec", inputs: { redirect: "redirect" }, outputs: { ready: "ready" }, ngImport: i0, template: "<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\n MAYORISTA</h3>\n </div>\n <div class=\" py-3\">\n <p>Si todavia no tienes una cuenta de grandes consumidores en nuestra plataforma, registrate\n ingresando estos\n datos:</p>\n </div>\n <form [formGroup]=\"form\" (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]=\"form.controls['firstName'].touched ? (form.controls['firstName'].valid && form.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 name=\"lastName\"\n formControlName=\"lastName\"\n [class]=\"form.controls['lastName'].touched ? (form.controls['lastName'].valid && form.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 name=\"email\"\n formControlName=\"email\"\n [class]=\"form.controls['email'].touched ? (form.controls['email'].valid && form.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 name=\"plainPassword\"\n formControlName=\"plainPassword\"\n [class]=\"form.controls['plainPassword'].touched ? (form.controls['plainPassword'].valid && form.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 @if(documentTypes$ | async; as documentTypes){\n <div class=\"col-12 col-md-6 px-0 pl-md-1\">\n <div class=\"form-group\">\n <label for=\"\">{{'document-type'|translate}}</label>\n <select name=\"documentType\" formControlName=\"documentType\" required\n [class]=\"form.controls['documentType'].touched ? (form.controls['documentType'].valid && form.controls['documentType'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\n <option [value]=\"null\" id=\"selectDocumentType\" disabled>Seleccione un tipo</option>\n @for (type of documentTypes; track $index) {\n <option [value]=\"type.code\">{{ type.name }}</option>\n }\n </select>\n <span class=\"invalid-feedback\">{{'document-type-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=\"\">{{'document-number'|translate}}</label>\n <input type=\"text\" id=\"\" placeholder=\"{{'document-number'|translate}}\" required\n name=\"documentNumber\" formControlName=\"documentNumber\"\n [class]=\"form.controls['documentNumber'].touched ? (form.controls['documentNumber'].valid && form.controls['documentNumber'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\n <span class=\"invalid-feedback\">{{'document-type-help'|translate}}</span>\n </div>\n </div>\n\n @if(countries$ | async; as countries ){\n <div class=\"col-12 col-md-6 px-0 pl-md-1\">\n <div class=\"form-group\">\n <label for=\"\">{{'country'|translate}}</label>\n <select name=\"countryCode\" formControlName=\"countryCode\" required (change)=\"onCountrySelected($event)\"\n [class]=\"form.controls['countryCode'].touched ? (form.controls['countryCode'].valid && form.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\" disabled>Seleccione un pais</option>\n @for (country of countries; track $index) {\n <option [value]=\"country.code\"> {{ country.name }}</option>\n }\n </select>\n <span class=\"invalid-feedback\">{{'country-help'|translate}}</span>\n </div>\n </div>\n }\n @if(provinces$ |async ; as provinces){\n <div class=\"col-12 col-md-6 px-0 pl-md-1\">\n <div class=\"form-group\">\n <label for=\"\">{{'state'|translate}}</label>\n <select name=\"provinceCode\" formControlName=\"provinceCode\" required (change)=\"onProvincesSelected($event, provinces)\"\n [class]=\"form.controls['provinceCode'].touched ? (form.controls['provinceCode'].valid && form.controls['provinceCode'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\n <option [value]=\"null\" id=\"selectOpProvincia\" disabled>Seleccione una provincia\n </option>\n @for (province of provinces; track $index) {\n <option [value]=\"province.code\">{{ province.name }}</option>\n }\n </select>\n <span class=\"invalid-feedback\">{{'state-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=\"\">{{'address'|translate}}</label>\n <input placeholder=\"{{'address'|translate}}\" required type=\"text\" name=\"street\"\n formControlName=\"street\"\n [class]=\"form.controls['street'].touched ? (form.controls['street'].valid && form.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]=\"form.controls['city'].touched ? (form.controls['city'].valid && form.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 <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]=\"form.controls['postcode'].touched ? (form.controls['postcode'].valid && form.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 <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 name=\"companyName\"\n formControlName=\"companyName\"\n [class]=\"form.controls['companyName'].touched ? (form.controls['companyName'].valid && form.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 name=\"phoneNumber\"\n formControlName=\"phoneNumber\"\n [class]=\"form.controls['phoneNumber'].touched ? (form.controls['phoneNumber'].valid && form.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 required name=\"gender\" formControlName=\"gender\"\n [class]=\"form.controls['gender'].touched ? (form.controls['gender'].valid && form.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 name=\"birthday\"\n formControlName=\"birthday\"\n [class]=\"form.controls['birthday'].touched ? (form.controls['birthday'].valid && form.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 name=\"taxIdentification\"\n formControlName=\"taxIdentification\"\n [class]=\"form.controls['taxIdentification'].touched ? (form.controls['taxIdentification'].valid && form.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\n obligatorio.</span>\n </div>\n </div>\n <div class=\"col-12 col-md-6 px-0 py-4 pl-md-1 \">\n <div class=\"form-check py-2\">\n <input class=\"form-check-input\" type=\"checkbox\" value=\"\" id=\"terms\" name=\"terms\"\n formControlName=\"terms\" type=\"checkbox\">\n <label for=\"terms\" class=\"form-check-label\">Acepto los <a\n [routerLink]=\"['/section/terminos-y-condiciones']\"\n routerLinkActive=\"router-link-active\" class=\"text-primary\">t\u00E9rminos y\n condiciones *</a></label>\n </div>\n </div>\n <div class=\"col-12 col-md-6 px-0 py-4 pl-md-1\">\n <div class=\"form-check py-2\">\n <input class=\"form-check-input\" type=\"checkbox\" value=\"\" id=\"defaultCheck2\"\n name=\"subscribedToNewsletter\" formControlName=\"subscribedToNewsletter\"\n type=\"checkbox\">\n <label class=\"form-check-label\" for=\"defaultCheck2\">\n Suscripci\u00F3n al newsletter\n </label>\n </div>\n </div>\n\n <div\n 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\n <button type=\"submit\" role=\"button\" [disabled]=\"form.invalid\"\n class=\"btn btn-primary rounded-0 px-5 py-2 w-100 w-md-auto h-fit\">REGISTRATE</button>\n </div>\n\n </div>\n <pre>{{form.value | json}}</pre>\n @if(loading){\n <app-loading-section-ec />\n }\n </form>\n </div>\n </div>\n </div>\n</div>", styles: [""], dependencies: [{ kind: "component", type: LoadingSectionEcComponent, selector: "app-loading-section-ec" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1$3.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$3.EmailValidator, selector: "[email][formControlName],[email][formControl],[email][ngModel]", inputs: ["email"] }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: JsonPipe, name: "json" }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] });
|
|
8124
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: RegisterWholesalerFormEcComponent, isStandalone: true, selector: "app-register-wholesaler-form-ec", inputs: { redirect: "redirect" }, outputs: { ready: "ready" }, ngImport: i0, template: "<div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-12\">\r\n <div class=\"\">\r\n <div class=\"pt-5 pb-3 border-bottom\">\r\n <h3 class=\"my-auto mx-2 text-left w-fit bold text-beige1 white-space-md-nowrap\">CREAR CUENTA\r\n MAYORISTA</h3>\r\n </div>\r\n <div class=\" py-3\">\r\n <p>Si todavia no tienes una cuenta de grandes consumidores en nuestra plataforma, registrate\r\n ingresando estos\r\n datos:</p>\r\n </div>\r\n <form [formGroup]=\"form\" (submit)=\"register($event)\" class=\"position-relative\">\r\n <div class=\"row w-100 mx-auto d-flex justify-content-center px-0 py-3\">\r\n\r\n <div class=\"col-12 col-md-6 px-0 pr-md-1\">\r\n <div class=\"form-group\">\r\n <label for=\"\">Nombre</label>\r\n <input type=\"text\" id=\"\" placeholder=\"Nombre\" required name=\"firstName\"\r\n formControlName=\"firstName\"\r\n [class]=\"form.controls['firstName'].touched ? (form.controls['firstName'].valid && form.controls['firstName'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\r\n <span class=\"invalid-feedback\">El nombre es un campo obligatorio.</span>\r\n </div>\r\n </div>\r\n <div class=\"col-12 col-md-6 px-0 pl-md-1\">\r\n <div class=\"form-group\">\r\n <label for=\"\">Apellidos</label>\r\n <input type=\"text\" id=\"\" placeholder=\"Apellido\" required name=\"lastName\"\r\n formControlName=\"lastName\"\r\n [class]=\"form.controls['lastName'].touched ? (form.controls['lastName'].valid && form.controls['lastName'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\r\n <span class=\"invalid-feedback\">El apellido es un campo obligatorio.</span>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-12 col-md-6 px-0 pr-md-1\">\r\n <div class=\"form-group\">\r\n <label for=\"\">Email</label>\r\n <input type=\"email\" id=\"\" placeholder=\"Email\" email required name=\"email\"\r\n formControlName=\"email\"\r\n [class]=\"form.controls['email'].touched ? (form.controls['email'].valid && form.controls['email'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\r\n <span class=\"invalid-feedback\">El email no posee un formato correcto.</span>\r\n </div>\r\n </div>\r\n <div class=\"col-12 col-md-6 px-0 pl-md-1\">\r\n <div class=\"form-group\">\r\n <label for=\"\">Contrase\u00F1a</label>\r\n <input type=\"password\" id=\"\" placeholder=\"Contrase\u00F1a\" required name=\"plainPassword\"\r\n formControlName=\"plainPassword\"\r\n [class]=\"form.controls['plainPassword'].touched ? (form.controls['plainPassword'].valid && form.controls['plainPassword'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\r\n <span class=\"invalid-feedback\">La contrase\u00F1a es un campo obligatorio.</span>\r\n </div>\r\n </div>\r\n @if(documentTypes$ | async; as documentTypes){\r\n <div class=\"col-12 col-md-6 px-0 pl-md-1\">\r\n <div class=\"form-group\">\r\n <label for=\"\">{{'document-type'|translate}}</label>\r\n <select name=\"documentType\" formControlName=\"documentType\" required\r\n [class]=\"form.controls['documentType'].touched ? (form.controls['documentType'].valid && form.controls['documentType'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\r\n <option [value]=\"null\" id=\"selectDocumentType\" disabled>Seleccione un tipo</option>\r\n @for (type of documentTypes; track $index) {\r\n <option [value]=\"type.code\">{{ type.name }}</option>\r\n }\r\n </select>\r\n <span class=\"invalid-feedback\">{{'document-type-help'|translate}}</span>\r\n </div>\r\n </div>\r\n }\r\n\r\n <div class=\"col-12 col-md-6 px-0 pl-md-1\">\r\n <div class=\"form-group\">\r\n <label for=\"\">{{'document-number'|translate}}</label>\r\n <input type=\"text\" id=\"\" placeholder=\"{{'document-number'|translate}}\" required\r\n name=\"documentNumber\" formControlName=\"documentNumber\"\r\n [class]=\"form.controls['documentNumber'].touched ? (form.controls['documentNumber'].valid && form.controls['documentNumber'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\r\n <span class=\"invalid-feedback\">{{'document-type-help'|translate}}</span>\r\n </div>\r\n </div>\r\n\r\n @if(countries$ | async; as countries ){\r\n <div class=\"col-12 col-md-6 px-0 pl-md-1\">\r\n <div class=\"form-group\">\r\n <label for=\"\">{{'country'|translate}}</label>\r\n <select name=\"countryCode\" formControlName=\"countryCode\" required (change)=\"onCountrySelected($event)\"\r\n [class]=\"form.controls['countryCode'].touched ? (form.controls['countryCode'].valid && form.controls['countryCode'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\r\n <option [value]=\"null\" id=\"selectOpPais\" disabled>Seleccione un pais</option>\r\n @for (country of countries; track $index) {\r\n <option [value]=\"country.code\"> {{ country.name }}</option>\r\n }\r\n </select>\r\n <span class=\"invalid-feedback\">{{'country-help'|translate}}</span>\r\n </div>\r\n </div>\r\n }\r\n @if(provinces$ |async ; as provinces){\r\n <div class=\"col-12 col-md-6 px-0 pl-md-1\">\r\n <div class=\"form-group\">\r\n <label for=\"\">{{'state'|translate}}</label>\r\n <select name=\"provinceCode\" formControlName=\"provinceCode\" required (change)=\"onProvincesSelected($event, provinces)\"\r\n [class]=\"form.controls['provinceCode'].touched ? (form.controls['provinceCode'].valid && form.controls['provinceCode'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\r\n <option [value]=\"null\" id=\"selectOpProvincia\" disabled>Seleccione una provincia\r\n </option>\r\n @for (province of provinces; track $index) {\r\n <option [value]=\"province.code\">{{ province.name }}</option>\r\n }\r\n </select>\r\n <span class=\"invalid-feedback\">{{'state-help'|translate}}</span>\r\n </div>\r\n </div>\r\n }\r\n\r\n <div class=\"col-12 col-md-6 px-0 pl-md-1\">\r\n <div class=\"form-group\">\r\n <label for=\"\">{{'address'|translate}}</label>\r\n <input placeholder=\"{{'address'|translate}}\" required type=\"text\" name=\"street\"\r\n formControlName=\"street\"\r\n [class]=\"form.controls['street'].touched ? (form.controls['street'].valid && form.controls['street'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\r\n <span class=\"invalid-feedback\">{{'address-help1'|translate}}</span>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-12 col-md-6 px-0 pl-md-1\">\r\n <div class=\"form-group\">\r\n <label for=\"\">{{'town-city'|translate}}</label>\r\n <input placeholder=\"{{'town-city'|translate}}\" required type=\"text\" name=\"city\"\r\n formControlName=\"city\"\r\n [class]=\"form.controls['city'].touched ? (form.controls['city'].valid && form.controls['city'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\r\n <span class=\"invalid-feedback\">{{'town-city-help'|translate}}</span>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-12 col-md-6 px-0 pl-md-1\">\r\n <div class=\"form-group\">\r\n <label for=\"\">{{'postal-code'|translate}}</label>\r\n <input placeholder=\"{{'postal-code'|translate}}\" required type=\"text\" name=\"postcode\"\r\n formControlName=\"postcode\"\r\n [class]=\"form.controls['postcode'].touched ? (form.controls['postcode'].valid && form.controls['postcode'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\r\n <span class=\"invalid-feedback\">{{'postal-code-help'|translate}}</span>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-12 col-md-6 px-0 pr-md-1\">\r\n <div class=\"form-group\">\r\n <label for=\"\">Nombre compa\u00F1\u00EDa</label>\r\n <input type=\"text\" id=\"\" placeholder=\"Nombre compa\u00F1\u00EDa\" required name=\"companyName\"\r\n formControlName=\"companyName\"\r\n [class]=\"form.controls['companyName'].touched ? (form.controls['companyName'].valid && form.controls['companyName'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\r\n <span class=\"invalid-feedback\">El nombre compa\u00F1\u00EDa es un campo obligatorio.</span>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-12 col-md-6 px-0 pr-md-1\">\r\n <div class=\"form-group\">\r\n <label for=\"\">{{'phone'|translate}}</label>\r\n <input type=\"text\" id=\"\" placeholder=\"{{'phone'|translate}}\" required name=\"phoneNumber\"\r\n formControlName=\"phoneNumber\"\r\n [class]=\"form.controls['phoneNumber'].touched ? (form.controls['phoneNumber'].valid && form.controls['phoneNumber'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\r\n <span class=\"invalid-feedback\">El numero de telefono es un campo obligatorio.</span>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-12 col-md-6 px-0 pr-md-1\">\r\n <div class=\"form-group\">\r\n <label for=\"\">Sexo</label>\r\n <select required name=\"gender\" formControlName=\"gender\"\r\n [class]=\"form.controls['gender'].touched ? (form.controls['gender'].valid && form.controls['gender'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\r\n <option value=\"null\" id=\"selectOpSexo\">Sexo</option>\r\n <option value=\"u\">Desconocido</option>\r\n <option value=\"s\">Femenino</option>\r\n <option value=\"m\">Masculino</option>\r\n </select>\r\n <span class=\"invalid-feedback\">El sexo es un campo obligatorio.</span>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-12 col-md-6 px-0 pr-md-1\">\r\n <div class=\"form-group\">\r\n <label for=\"\">Fecha creacion</label>\r\n <input type=\"date\" id=\"\" placeholder=\"Fecha creacion\" required name=\"birthday\"\r\n formControlName=\"birthday\"\r\n [class]=\"form.controls['birthday'].touched ? (form.controls['birthday'].valid && form.controls['birthday'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\r\n <span class=\"invalid-feedback\">La fecha de creacion es un campo obligatorio.</span>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-12 col-md-6 px-0 pr-md-1\">\r\n <div class=\"form-group\">\r\n <label for=\"\">Identificacion</label>\r\n <input type=\"text\" id=\"\" placeholder=\"Identificacion\" required name=\"taxIdentification\"\r\n formControlName=\"taxIdentification\"\r\n [class]=\"form.controls['taxIdentification'].touched ? (form.controls['taxIdentification'].valid && form.controls['taxIdentification'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\r\n <span class=\"invalid-feedback\">La identificacion de la compa\u00F1\u00EDa es un campo\r\n obligatorio.</span>\r\n </div>\r\n </div>\r\n <div class=\"col-12 col-md-6 px-0 py-4 pl-md-1 \">\r\n <div class=\"form-check py-2\">\r\n <input class=\"form-check-input\" type=\"checkbox\" value=\"\" id=\"terms\" name=\"terms\"\r\n formControlName=\"terms\" type=\"checkbox\">\r\n <label for=\"terms\" class=\"form-check-label\">Acepto los <a\r\n [routerLink]=\"['/section/terminos-y-condiciones']\"\r\n routerLinkActive=\"router-link-active\" class=\"text-primary\">t\u00E9rminos y\r\n condiciones *</a></label>\r\n </div>\r\n </div>\r\n <div class=\"col-12 col-md-6 px-0 py-4 pl-md-1\">\r\n <div class=\"form-check py-2\">\r\n <input class=\"form-check-input\" type=\"checkbox\" value=\"\" id=\"defaultCheck2\"\r\n name=\"subscribedToNewsletter\" formControlName=\"subscribedToNewsletter\"\r\n type=\"checkbox\">\r\n <label class=\"form-check-label\" for=\"defaultCheck2\">\r\n Suscripci\u00F3n al newsletter\r\n </label>\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"col-12 col-md-6 px-0 py-4 pr-md-1 d-flex justify-content-md-start order-2 order-md-1\">\r\n\r\n <button type=\"submit\" role=\"button\" [disabled]=\"form.invalid\"\r\n class=\"btn btn-primary rounded-0 px-5 py-2 w-100 w-md-auto h-fit\">REGISTRATE</button>\r\n </div>\r\n\r\n </div>\r\n <pre>{{form.value | json}}</pre>\r\n @if(loading){\r\n <app-loading-section-ec />\r\n }\r\n </form>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", styles: [""], dependencies: [{ kind: "component", type: LoadingSectionEcComponent, selector: "app-loading-section-ec" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1$3.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$3.EmailValidator, selector: "[email][formControlName],[email][formControl],[email][ngModel]", inputs: ["email"] }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: JsonPipe, name: "json" }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] });
|
|
8100
8125
|
}
|
|
8101
8126
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RegisterWholesalerFormEcComponent, decorators: [{
|
|
8102
8127
|
type: Component,
|
|
8103
|
-
args: [{ selector: 'app-register-wholesaler-form-ec', standalone: true, imports: [LoadingSectionEcComponent, ReactiveFormsModule, TranslateModule, AsyncPipe, JsonPipe, RouterLink], template: "<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\n MAYORISTA</h3>\n </div>\n <div class=\" py-3\">\n <p>Si todavia no tienes una cuenta de grandes consumidores en nuestra plataforma, registrate\n ingresando estos\n datos:</p>\n </div>\n <form [formGroup]=\"form\" (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]=\"form.controls['firstName'].touched ? (form.controls['firstName'].valid && form.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 name=\"lastName\"\n formControlName=\"lastName\"\n [class]=\"form.controls['lastName'].touched ? (form.controls['lastName'].valid && form.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 name=\"email\"\n formControlName=\"email\"\n [class]=\"form.controls['email'].touched ? (form.controls['email'].valid && form.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 name=\"plainPassword\"\n formControlName=\"plainPassword\"\n [class]=\"form.controls['plainPassword'].touched ? (form.controls['plainPassword'].valid && form.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 @if(documentTypes$ | async; as documentTypes){\n <div class=\"col-12 col-md-6 px-0 pl-md-1\">\n <div class=\"form-group\">\n <label for=\"\">{{'document-type'|translate}}</label>\n <select name=\"documentType\" formControlName=\"documentType\" required\n [class]=\"form.controls['documentType'].touched ? (form.controls['documentType'].valid && form.controls['documentType'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\n <option [value]=\"null\" id=\"selectDocumentType\" disabled>Seleccione un tipo</option>\n @for (type of documentTypes; track $index) {\n <option [value]=\"type.code\">{{ type.name }}</option>\n }\n </select>\n <span class=\"invalid-feedback\">{{'document-type-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=\"\">{{'document-number'|translate}}</label>\n <input type=\"text\" id=\"\" placeholder=\"{{'document-number'|translate}}\" required\n name=\"documentNumber\" formControlName=\"documentNumber\"\n [class]=\"form.controls['documentNumber'].touched ? (form.controls['documentNumber'].valid && form.controls['documentNumber'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\n <span class=\"invalid-feedback\">{{'document-type-help'|translate}}</span>\n </div>\n </div>\n\n @if(countries$ | async; as countries ){\n <div class=\"col-12 col-md-6 px-0 pl-md-1\">\n <div class=\"form-group\">\n <label for=\"\">{{'country'|translate}}</label>\n <select name=\"countryCode\" formControlName=\"countryCode\" required (change)=\"onCountrySelected($event)\"\n [class]=\"form.controls['countryCode'].touched ? (form.controls['countryCode'].valid && form.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\" disabled>Seleccione un pais</option>\n @for (country of countries; track $index) {\n <option [value]=\"country.code\"> {{ country.name }}</option>\n }\n </select>\n <span class=\"invalid-feedback\">{{'country-help'|translate}}</span>\n </div>\n </div>\n }\n @if(provinces$ |async ; as provinces){\n <div class=\"col-12 col-md-6 px-0 pl-md-1\">\n <div class=\"form-group\">\n <label for=\"\">{{'state'|translate}}</label>\n <select name=\"provinceCode\" formControlName=\"provinceCode\" required (change)=\"onProvincesSelected($event, provinces)\"\n [class]=\"form.controls['provinceCode'].touched ? (form.controls['provinceCode'].valid && form.controls['provinceCode'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\n <option [value]=\"null\" id=\"selectOpProvincia\" disabled>Seleccione una provincia\n </option>\n @for (province of provinces; track $index) {\n <option [value]=\"province.code\">{{ province.name }}</option>\n }\n </select>\n <span class=\"invalid-feedback\">{{'state-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=\"\">{{'address'|translate}}</label>\n <input placeholder=\"{{'address'|translate}}\" required type=\"text\" name=\"street\"\n formControlName=\"street\"\n [class]=\"form.controls['street'].touched ? (form.controls['street'].valid && form.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]=\"form.controls['city'].touched ? (form.controls['city'].valid && form.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 <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]=\"form.controls['postcode'].touched ? (form.controls['postcode'].valid && form.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 <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 name=\"companyName\"\n formControlName=\"companyName\"\n [class]=\"form.controls['companyName'].touched ? (form.controls['companyName'].valid && form.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 name=\"phoneNumber\"\n formControlName=\"phoneNumber\"\n [class]=\"form.controls['phoneNumber'].touched ? (form.controls['phoneNumber'].valid && form.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 required name=\"gender\" formControlName=\"gender\"\n [class]=\"form.controls['gender'].touched ? (form.controls['gender'].valid && form.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 name=\"birthday\"\n formControlName=\"birthday\"\n [class]=\"form.controls['birthday'].touched ? (form.controls['birthday'].valid && form.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 name=\"taxIdentification\"\n formControlName=\"taxIdentification\"\n [class]=\"form.controls['taxIdentification'].touched ? (form.controls['taxIdentification'].valid && form.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\n obligatorio.</span>\n </div>\n </div>\n <div class=\"col-12 col-md-6 px-0 py-4 pl-md-1 \">\n <div class=\"form-check py-2\">\n <input class=\"form-check-input\" type=\"checkbox\" value=\"\" id=\"terms\" name=\"terms\"\n formControlName=\"terms\" type=\"checkbox\">\n <label for=\"terms\" class=\"form-check-label\">Acepto los <a\n [routerLink]=\"['/section/terminos-y-condiciones']\"\n routerLinkActive=\"router-link-active\" class=\"text-primary\">t\u00E9rminos y\n condiciones *</a></label>\n </div>\n </div>\n <div class=\"col-12 col-md-6 px-0 py-4 pl-md-1\">\n <div class=\"form-check py-2\">\n <input class=\"form-check-input\" type=\"checkbox\" value=\"\" id=\"defaultCheck2\"\n name=\"subscribedToNewsletter\" formControlName=\"subscribedToNewsletter\"\n type=\"checkbox\">\n <label class=\"form-check-label\" for=\"defaultCheck2\">\n Suscripci\u00F3n al newsletter\n </label>\n </div>\n </div>\n\n <div\n 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\n <button type=\"submit\" role=\"button\" [disabled]=\"form.invalid\"\n class=\"btn btn-primary rounded-0 px-5 py-2 w-100 w-md-auto h-fit\">REGISTRATE</button>\n </div>\n\n </div>\n <pre>{{form.value | json}}</pre>\n @if(loading){\n <app-loading-section-ec />\n }\n </form>\n </div>\n </div>\n </div>\n</div>" }]
|
|
8128
|
+
args: [{ selector: 'app-register-wholesaler-form-ec', standalone: true, imports: [LoadingSectionEcComponent, ReactiveFormsModule, TranslateModule, AsyncPipe, JsonPipe, RouterLink], template: "<div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-12\">\r\n <div class=\"\">\r\n <div class=\"pt-5 pb-3 border-bottom\">\r\n <h3 class=\"my-auto mx-2 text-left w-fit bold text-beige1 white-space-md-nowrap\">CREAR CUENTA\r\n MAYORISTA</h3>\r\n </div>\r\n <div class=\" py-3\">\r\n <p>Si todavia no tienes una cuenta de grandes consumidores en nuestra plataforma, registrate\r\n ingresando estos\r\n datos:</p>\r\n </div>\r\n <form [formGroup]=\"form\" (submit)=\"register($event)\" class=\"position-relative\">\r\n <div class=\"row w-100 mx-auto d-flex justify-content-center px-0 py-3\">\r\n\r\n <div class=\"col-12 col-md-6 px-0 pr-md-1\">\r\n <div class=\"form-group\">\r\n <label for=\"\">Nombre</label>\r\n <input type=\"text\" id=\"\" placeholder=\"Nombre\" required name=\"firstName\"\r\n formControlName=\"firstName\"\r\n [class]=\"form.controls['firstName'].touched ? (form.controls['firstName'].valid && form.controls['firstName'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\r\n <span class=\"invalid-feedback\">El nombre es un campo obligatorio.</span>\r\n </div>\r\n </div>\r\n <div class=\"col-12 col-md-6 px-0 pl-md-1\">\r\n <div class=\"form-group\">\r\n <label for=\"\">Apellidos</label>\r\n <input type=\"text\" id=\"\" placeholder=\"Apellido\" required name=\"lastName\"\r\n formControlName=\"lastName\"\r\n [class]=\"form.controls['lastName'].touched ? (form.controls['lastName'].valid && form.controls['lastName'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\r\n <span class=\"invalid-feedback\">El apellido es un campo obligatorio.</span>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-12 col-md-6 px-0 pr-md-1\">\r\n <div class=\"form-group\">\r\n <label for=\"\">Email</label>\r\n <input type=\"email\" id=\"\" placeholder=\"Email\" email required name=\"email\"\r\n formControlName=\"email\"\r\n [class]=\"form.controls['email'].touched ? (form.controls['email'].valid && form.controls['email'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\r\n <span class=\"invalid-feedback\">El email no posee un formato correcto.</span>\r\n </div>\r\n </div>\r\n <div class=\"col-12 col-md-6 px-0 pl-md-1\">\r\n <div class=\"form-group\">\r\n <label for=\"\">Contrase\u00F1a</label>\r\n <input type=\"password\" id=\"\" placeholder=\"Contrase\u00F1a\" required name=\"plainPassword\"\r\n formControlName=\"plainPassword\"\r\n [class]=\"form.controls['plainPassword'].touched ? (form.controls['plainPassword'].valid && form.controls['plainPassword'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\r\n <span class=\"invalid-feedback\">La contrase\u00F1a es un campo obligatorio.</span>\r\n </div>\r\n </div>\r\n @if(documentTypes$ | async; as documentTypes){\r\n <div class=\"col-12 col-md-6 px-0 pl-md-1\">\r\n <div class=\"form-group\">\r\n <label for=\"\">{{'document-type'|translate}}</label>\r\n <select name=\"documentType\" formControlName=\"documentType\" required\r\n [class]=\"form.controls['documentType'].touched ? (form.controls['documentType'].valid && form.controls['documentType'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\r\n <option [value]=\"null\" id=\"selectDocumentType\" disabled>Seleccione un tipo</option>\r\n @for (type of documentTypes; track $index) {\r\n <option [value]=\"type.code\">{{ type.name }}</option>\r\n }\r\n </select>\r\n <span class=\"invalid-feedback\">{{'document-type-help'|translate}}</span>\r\n </div>\r\n </div>\r\n }\r\n\r\n <div class=\"col-12 col-md-6 px-0 pl-md-1\">\r\n <div class=\"form-group\">\r\n <label for=\"\">{{'document-number'|translate}}</label>\r\n <input type=\"text\" id=\"\" placeholder=\"{{'document-number'|translate}}\" required\r\n name=\"documentNumber\" formControlName=\"documentNumber\"\r\n [class]=\"form.controls['documentNumber'].touched ? (form.controls['documentNumber'].valid && form.controls['documentNumber'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\r\n <span class=\"invalid-feedback\">{{'document-type-help'|translate}}</span>\r\n </div>\r\n </div>\r\n\r\n @if(countries$ | async; as countries ){\r\n <div class=\"col-12 col-md-6 px-0 pl-md-1\">\r\n <div class=\"form-group\">\r\n <label for=\"\">{{'country'|translate}}</label>\r\n <select name=\"countryCode\" formControlName=\"countryCode\" required (change)=\"onCountrySelected($event)\"\r\n [class]=\"form.controls['countryCode'].touched ? (form.controls['countryCode'].valid && form.controls['countryCode'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\r\n <option [value]=\"null\" id=\"selectOpPais\" disabled>Seleccione un pais</option>\r\n @for (country of countries; track $index) {\r\n <option [value]=\"country.code\"> {{ country.name }}</option>\r\n }\r\n </select>\r\n <span class=\"invalid-feedback\">{{'country-help'|translate}}</span>\r\n </div>\r\n </div>\r\n }\r\n @if(provinces$ |async ; as provinces){\r\n <div class=\"col-12 col-md-6 px-0 pl-md-1\">\r\n <div class=\"form-group\">\r\n <label for=\"\">{{'state'|translate}}</label>\r\n <select name=\"provinceCode\" formControlName=\"provinceCode\" required (change)=\"onProvincesSelected($event, provinces)\"\r\n [class]=\"form.controls['provinceCode'].touched ? (form.controls['provinceCode'].valid && form.controls['provinceCode'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\r\n <option [value]=\"null\" id=\"selectOpProvincia\" disabled>Seleccione una provincia\r\n </option>\r\n @for (province of provinces; track $index) {\r\n <option [value]=\"province.code\">{{ province.name }}</option>\r\n }\r\n </select>\r\n <span class=\"invalid-feedback\">{{'state-help'|translate}}</span>\r\n </div>\r\n </div>\r\n }\r\n\r\n <div class=\"col-12 col-md-6 px-0 pl-md-1\">\r\n <div class=\"form-group\">\r\n <label for=\"\">{{'address'|translate}}</label>\r\n <input placeholder=\"{{'address'|translate}}\" required type=\"text\" name=\"street\"\r\n formControlName=\"street\"\r\n [class]=\"form.controls['street'].touched ? (form.controls['street'].valid && form.controls['street'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\r\n <span class=\"invalid-feedback\">{{'address-help1'|translate}}</span>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-12 col-md-6 px-0 pl-md-1\">\r\n <div class=\"form-group\">\r\n <label for=\"\">{{'town-city'|translate}}</label>\r\n <input placeholder=\"{{'town-city'|translate}}\" required type=\"text\" name=\"city\"\r\n formControlName=\"city\"\r\n [class]=\"form.controls['city'].touched ? (form.controls['city'].valid && form.controls['city'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\r\n <span class=\"invalid-feedback\">{{'town-city-help'|translate}}</span>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-12 col-md-6 px-0 pl-md-1\">\r\n <div class=\"form-group\">\r\n <label for=\"\">{{'postal-code'|translate}}</label>\r\n <input placeholder=\"{{'postal-code'|translate}}\" required type=\"text\" name=\"postcode\"\r\n formControlName=\"postcode\"\r\n [class]=\"form.controls['postcode'].touched ? (form.controls['postcode'].valid && form.controls['postcode'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\r\n <span class=\"invalid-feedback\">{{'postal-code-help'|translate}}</span>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-12 col-md-6 px-0 pr-md-1\">\r\n <div class=\"form-group\">\r\n <label for=\"\">Nombre compa\u00F1\u00EDa</label>\r\n <input type=\"text\" id=\"\" placeholder=\"Nombre compa\u00F1\u00EDa\" required name=\"companyName\"\r\n formControlName=\"companyName\"\r\n [class]=\"form.controls['companyName'].touched ? (form.controls['companyName'].valid && form.controls['companyName'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\r\n <span class=\"invalid-feedback\">El nombre compa\u00F1\u00EDa es un campo obligatorio.</span>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-12 col-md-6 px-0 pr-md-1\">\r\n <div class=\"form-group\">\r\n <label for=\"\">{{'phone'|translate}}</label>\r\n <input type=\"text\" id=\"\" placeholder=\"{{'phone'|translate}}\" required name=\"phoneNumber\"\r\n formControlName=\"phoneNumber\"\r\n [class]=\"form.controls['phoneNumber'].touched ? (form.controls['phoneNumber'].valid && form.controls['phoneNumber'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\r\n <span class=\"invalid-feedback\">El numero de telefono es un campo obligatorio.</span>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-12 col-md-6 px-0 pr-md-1\">\r\n <div class=\"form-group\">\r\n <label for=\"\">Sexo</label>\r\n <select required name=\"gender\" formControlName=\"gender\"\r\n [class]=\"form.controls['gender'].touched ? (form.controls['gender'].valid && form.controls['gender'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\r\n <option value=\"null\" id=\"selectOpSexo\">Sexo</option>\r\n <option value=\"u\">Desconocido</option>\r\n <option value=\"s\">Femenino</option>\r\n <option value=\"m\">Masculino</option>\r\n </select>\r\n <span class=\"invalid-feedback\">El sexo es un campo obligatorio.</span>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-12 col-md-6 px-0 pr-md-1\">\r\n <div class=\"form-group\">\r\n <label for=\"\">Fecha creacion</label>\r\n <input type=\"date\" id=\"\" placeholder=\"Fecha creacion\" required name=\"birthday\"\r\n formControlName=\"birthday\"\r\n [class]=\"form.controls['birthday'].touched ? (form.controls['birthday'].valid && form.controls['birthday'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\r\n <span class=\"invalid-feedback\">La fecha de creacion es un campo obligatorio.</span>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-12 col-md-6 px-0 pr-md-1\">\r\n <div class=\"form-group\">\r\n <label for=\"\">Identificacion</label>\r\n <input type=\"text\" id=\"\" placeholder=\"Identificacion\" required name=\"taxIdentification\"\r\n formControlName=\"taxIdentification\"\r\n [class]=\"form.controls['taxIdentification'].touched ? (form.controls['taxIdentification'].valid && form.controls['taxIdentification'].touched) ? 'form-control rounded-0 is-valid' : 'form-control rounded-0 is-invalid' : 'form-control rounded-0'\">\r\n <span class=\"invalid-feedback\">La identificacion de la compa\u00F1\u00EDa es un campo\r\n obligatorio.</span>\r\n </div>\r\n </div>\r\n <div class=\"col-12 col-md-6 px-0 py-4 pl-md-1 \">\r\n <div class=\"form-check py-2\">\r\n <input class=\"form-check-input\" type=\"checkbox\" value=\"\" id=\"terms\" name=\"terms\"\r\n formControlName=\"terms\" type=\"checkbox\">\r\n <label for=\"terms\" class=\"form-check-label\">Acepto los <a\r\n [routerLink]=\"['/section/terminos-y-condiciones']\"\r\n routerLinkActive=\"router-link-active\" class=\"text-primary\">t\u00E9rminos y\r\n condiciones *</a></label>\r\n </div>\r\n </div>\r\n <div class=\"col-12 col-md-6 px-0 py-4 pl-md-1\">\r\n <div class=\"form-check py-2\">\r\n <input class=\"form-check-input\" type=\"checkbox\" value=\"\" id=\"defaultCheck2\"\r\n name=\"subscribedToNewsletter\" formControlName=\"subscribedToNewsletter\"\r\n type=\"checkbox\">\r\n <label class=\"form-check-label\" for=\"defaultCheck2\">\r\n Suscripci\u00F3n al newsletter\r\n </label>\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"col-12 col-md-6 px-0 py-4 pr-md-1 d-flex justify-content-md-start order-2 order-md-1\">\r\n\r\n <button type=\"submit\" role=\"button\" [disabled]=\"form.invalid\"\r\n class=\"btn btn-primary rounded-0 px-5 py-2 w-100 w-md-auto h-fit\">REGISTRATE</button>\r\n </div>\r\n\r\n </div>\r\n <pre>{{form.value | json}}</pre>\r\n @if(loading){\r\n <app-loading-section-ec />\r\n }\r\n </form>\r\n </div>\r\n </div>\r\n </div>\r\n</div>" }]
|
|
8104
8129
|
}], ctorParameters: () => [], propDecorators: { redirect: [{
|
|
8105
8130
|
type: Input
|
|
8106
8131
|
}], ready: [{
|
|
@@ -8209,11 +8234,11 @@ class PasswordResetEcComponent extends ComponentHelper {
|
|
|
8209
8234
|
hideIcon?.classList.toggle('d-none');
|
|
8210
8235
|
};
|
|
8211
8236
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PasswordResetEcComponent, deps: [{ token: AuthService }, { token: ToastService }, { token: i2.ActivatedRoute }, { token: i2.Router }, { token: i1$3.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
|
|
8212
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: PasswordResetEcComponent, isStandalone: true, selector: "app-password-reset-ec", usesInheritance: true, ngImport: i0, template: "<div class=\"container\">\n <div class=\"row justify-content-center py-5\">\n <div class=\"col-12 col-md-6 col-lg-4\">\n @if(!ready){\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\" (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\" (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 @if(loading){\n <app-loading-inline-ec></app-loading-inline-ec>\n }\n </form>\n }@else {<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\n\n\n </div>\n </div>\n</div>", styles: [""], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "component", type: LoadingInlineEcComponent, selector: "app-loading-inline-ec", inputs: ["type"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] });
|
|
8237
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: PasswordResetEcComponent, isStandalone: true, selector: "app-password-reset-ec", usesInheritance: true, ngImport: i0, template: "<div class=\"container\">\r\n <div class=\"row justify-content-center py-5\">\r\n <div class=\"col-12 col-md-6 col-lg-4\">\r\n @if(!ready){\r\n <form [formGroup]=\"formGroup\" (submit)=\"sendNewPassword($event)\">\r\n <div class=\"mb-4 text-center\">\r\n <h3>{{ 'set-new-password' | translate }}</h3>\r\n </div>\r\n <div class=\"mb-3\">\r\n <label class=\"form-label\">{{ 'set-password' | translate }}</label>\r\n <div class=\"input-group\">\r\n <input type=\"password\" formControlName=\"first\" class=\"form-control\" id=\"contrase\u00F1a1\" />\r\n <button class=\"btn btn-outline-secondary btn-password\" type=\"button\" (click)=\"showPassword()\">\r\n <i id=\"show1\" class=\"fas fa-eye i-show-password\"></i>\r\n <i id=\"hide1\" class=\"fas fa-eye-slash d-none i-show-password\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"mb-3\">\r\n <label class=\"form-label\">{{ 'repeat-password' | translate }}</label>\r\n <div class=\"input-group\">\r\n <input type=\"password\" formControlName=\"second\" class=\"form-control\" id=\"contrase\u00F1a2\" />\r\n <button class=\"btn btn-outline-secondary btn-password\" type=\"button\" (click)=\"showPassword2()\">\r\n <i id=\"show2\" class=\"fas fa-eye i-show-password\"></i>\r\n <i id=\"hide2\" class=\"fas fa-eye-slash d-none i-show-password\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"mt-4 text-center\">\r\n <button type=\"submit\" class=\"comprar w-100\">{{ 'update' | translate }}</button>\r\n </div>\r\n @if(loading){\r\n <app-loading-inline-ec></app-loading-inline-ec>\r\n }\r\n </form>\r\n }@else {<div class=\"row justify-content-center mt-5 mb-5\">\r\n <div class=\"text-center\">\r\n <div class=\"mb-4\">\r\n <h3>{{ 'updated-password' | translate }}</h3>\r\n </div>\r\n <div class=\"mb-4\">\r\n <h5>{{ 'updated-password-detail' | translate }}</h5>\r\n </div>\r\n <button class=\"comprar\" (click)=\"sendToLogin()\">{{ 'login' | translate }}</button>\r\n </div>\r\n </div>}\r\n\r\n\r\n\r\n </div>\r\n </div>\r\n</div>", styles: [""], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "component", type: LoadingInlineEcComponent, selector: "app-loading-inline-ec", inputs: ["type"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] });
|
|
8213
8238
|
}
|
|
8214
8239
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PasswordResetEcComponent, decorators: [{
|
|
8215
8240
|
type: Component,
|
|
8216
|
-
args: [{ selector: 'app-password-reset-ec', imports: [TranslateModule, LoadingInlineEcComponent, ReactiveFormsModule], standalone: true, template: "<div class=\"container\">\n <div class=\"row justify-content-center py-5\">\n <div class=\"col-12 col-md-6 col-lg-4\">\n @if(!ready){\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\" (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\" (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 @if(loading){\n <app-loading-inline-ec></app-loading-inline-ec>\n }\n </form>\n }@else {<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\n\n\n </div>\n </div>\n</div>" }]
|
|
8241
|
+
args: [{ selector: 'app-password-reset-ec', imports: [TranslateModule, LoadingInlineEcComponent, ReactiveFormsModule], standalone: true, template: "<div class=\"container\">\r\n <div class=\"row justify-content-center py-5\">\r\n <div class=\"col-12 col-md-6 col-lg-4\">\r\n @if(!ready){\r\n <form [formGroup]=\"formGroup\" (submit)=\"sendNewPassword($event)\">\r\n <div class=\"mb-4 text-center\">\r\n <h3>{{ 'set-new-password' | translate }}</h3>\r\n </div>\r\n <div class=\"mb-3\">\r\n <label class=\"form-label\">{{ 'set-password' | translate }}</label>\r\n <div class=\"input-group\">\r\n <input type=\"password\" formControlName=\"first\" class=\"form-control\" id=\"contrase\u00F1a1\" />\r\n <button class=\"btn btn-outline-secondary btn-password\" type=\"button\" (click)=\"showPassword()\">\r\n <i id=\"show1\" class=\"fas fa-eye i-show-password\"></i>\r\n <i id=\"hide1\" class=\"fas fa-eye-slash d-none i-show-password\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"mb-3\">\r\n <label class=\"form-label\">{{ 'repeat-password' | translate }}</label>\r\n <div class=\"input-group\">\r\n <input type=\"password\" formControlName=\"second\" class=\"form-control\" id=\"contrase\u00F1a2\" />\r\n <button class=\"btn btn-outline-secondary btn-password\" type=\"button\" (click)=\"showPassword2()\">\r\n <i id=\"show2\" class=\"fas fa-eye i-show-password\"></i>\r\n <i id=\"hide2\" class=\"fas fa-eye-slash d-none i-show-password\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"mt-4 text-center\">\r\n <button type=\"submit\" class=\"comprar w-100\">{{ 'update' | translate }}</button>\r\n </div>\r\n @if(loading){\r\n <app-loading-inline-ec></app-loading-inline-ec>\r\n }\r\n </form>\r\n }@else {<div class=\"row justify-content-center mt-5 mb-5\">\r\n <div class=\"text-center\">\r\n <div class=\"mb-4\">\r\n <h3>{{ 'updated-password' | translate }}</h3>\r\n </div>\r\n <div class=\"mb-4\">\r\n <h5>{{ 'updated-password-detail' | translate }}</h5>\r\n </div>\r\n <button class=\"comprar\" (click)=\"sendToLogin()\">{{ 'login' | translate }}</button>\r\n </div>\r\n </div>}\r\n\r\n\r\n\r\n </div>\r\n </div>\r\n</div>" }]
|
|
8217
8242
|
}], ctorParameters: () => [{ type: AuthService }, { type: ToastService }, { type: i2.ActivatedRoute }, { type: i2.Router }, { type: i1$3.FormBuilder }] });
|
|
8218
8243
|
|
|
8219
8244
|
class FiltersEcComponent {
|
|
@@ -8331,11 +8356,11 @@ class FiltersEcComponent {
|
|
|
8331
8356
|
}) ?? false;
|
|
8332
8357
|
}
|
|
8333
8358
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FiltersEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
8334
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FiltersEcComponent, isStandalone: true, selector: "lib-filters-ec", inputs: { setSelect: "setSelect" }, ngImport: i0, template: "<p>filters-ec works!</p>\n", styles: [""] });
|
|
8359
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FiltersEcComponent, isStandalone: true, selector: "lib-filters-ec", inputs: { setSelect: "setSelect" }, ngImport: i0, template: "<p>filters-ec works!</p>\r\n", styles: [""] });
|
|
8335
8360
|
}
|
|
8336
8361
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FiltersEcComponent, decorators: [{
|
|
8337
8362
|
type: Component,
|
|
8338
|
-
args: [{ selector: 'lib-filters-ec', standalone: true, imports: [], template: "<p>filters-ec works!</p>\n" }]
|
|
8363
|
+
args: [{ selector: 'lib-filters-ec', standalone: true, imports: [], template: "<p>filters-ec works!</p>\r\n" }]
|
|
8339
8364
|
}], ctorParameters: () => [], propDecorators: { setSelect: [{
|
|
8340
8365
|
type: Input
|
|
8341
8366
|
}] } });
|
|
@@ -8379,11 +8404,11 @@ class VariantsEcComponent {
|
|
|
8379
8404
|
return products[index].stock;
|
|
8380
8405
|
}
|
|
8381
8406
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: VariantsEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
8382
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: VariantsEcComponent, isStandalone: true, selector: "app-variants-ec", inputs: { setImages: "setImages", product: "product" }, ngImport: i0, template: "@if(options$ | async; as options){\n@if(options && options.length ){\n@for(option of options; track $index){\n\n@switch (option.type) {\n@case ('color') {\n@if(option.values && option.values.length > 1) {\n<h5>{{option.name | uppercase}}</h5>\n<div class=\"row w-100 mx-auto pb-3 mb-3\">\n @for(value of option.values; track $index; let x = $index){\n <a role=\"button\" (click)=\"setValuesImages(value.name, option.code) && setOption(option.code, value.name)\"\n [class]=\"'rounded-circle color-item m-1 ' + (value.selected ? 'shadow' : '')\" [id]=\"x + value.name\"\n [style.border]=\"'1px solid black'\"\n [style.background]=\"value.image && (value.image.endsWith('.jpg') || value.image.endsWith('.png') || value.image.endsWith('.svg')) ? 'url(' + this.consts.mediaUrl(value.image) + ')' : '#' + value.name\"\n [style.background-size]=\"'cover'\" [style.background-repeat]=\"'no-repeat'\" [style.background-position]=\"'center'\"\n [style.box-shadow]=\"(value.selected ? '0px 0px 0px 2px #000' : 'none')\"></a>\n }\n</div>\n}\n}\n@case ('size') {\n@if(option.values && option.values.length > 1) {\n<h5>{{option.name | uppercase}}</h5>\n<div class=\"row w-100 mx-auto pb-3\">\n <div class=\"btn-group ps-0\">\n <a class=\"btn btn-light dropdown-toggle cursor-pointer border border-1 d-flex flex-row justify-content-between align-items-center\"\n data-bs-toggle=\"dropdown\" aria-expanded=\"false\"> {{ itemSelected ? itemSelected :\n getValueSelect(option.values)}}</a>\n <ul class=\"dropdown-menu\">\n @for(value of option.values; track $index; let x = $index){\n <li [class]=\" (value.selected ? 'selected-size' : 'unselected-size')\">\n <a [class]=\"'dropdown-item cursor-pointer '+ (value.selected ? 'text-light' : '')\"\n (click)=\"chosenOption(option.code, value.name)\">{{ value.name }}</a>\n </li>\n }\n </ul>\n </div>\n\n</div>\n}\n}\n@default {\n\n}\n}\n}\n}\n}", styles: [".circle{width:32px;height:32px;border-radius:50%}.shadow{border:1px solid #000}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1.UpperCasePipe, name: "uppercase" }] });
|
|
8407
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: VariantsEcComponent, isStandalone: true, selector: "app-variants-ec", inputs: { setImages: "setImages", product: "product" }, ngImport: i0, template: "@if(options$ | async; as options){\r\n@if(options && options.length ){\r\n@for(option of options; track $index){\r\n\r\n@switch (option.type) {\r\n@case ('color') {\r\n@if(option.values && option.values.length > 1) {\r\n<h5>{{option.name | uppercase}}</h5>\r\n<div class=\"row w-100 mx-auto pb-3 mb-3\">\r\n @for(value of option.values; track $index; let x = $index){\r\n <a role=\"button\" (click)=\"setValuesImages(value.name, option.code) && setOption(option.code, value.name)\"\r\n [class]=\"'rounded-circle color-item m-1 ' + (value.selected ? 'shadow' : '')\" [id]=\"x + value.name\"\r\n [style.border]=\"'1px solid black'\"\r\n [style.background]=\"value.image && (value.image.endsWith('.jpg') || value.image.endsWith('.png') || value.image.endsWith('.svg')) ? 'url(' + this.consts.mediaUrl(value.image) + ')' : '#' + value.name\"\r\n [style.background-size]=\"'cover'\" [style.background-repeat]=\"'no-repeat'\" [style.background-position]=\"'center'\"\r\n [style.box-shadow]=\"(value.selected ? '0px 0px 0px 2px #000' : 'none')\"></a>\r\n }\r\n</div>\r\n}\r\n}\r\n@case ('size') {\r\n@if(option.values && option.values.length > 1) {\r\n<h5>{{option.name | uppercase}}</h5>\r\n<div class=\"row w-100 mx-auto pb-3\">\r\n <div class=\"btn-group ps-0\">\r\n <a class=\"btn btn-light dropdown-toggle cursor-pointer border border-1 d-flex flex-row justify-content-between align-items-center\"\r\n data-bs-toggle=\"dropdown\" aria-expanded=\"false\"> {{ itemSelected ? itemSelected :\r\n getValueSelect(option.values)}}</a>\r\n <ul class=\"dropdown-menu\">\r\n @for(value of option.values; track $index; let x = $index){\r\n <li [class]=\" (value.selected ? 'selected-size' : 'unselected-size')\">\r\n <a [class]=\"'dropdown-item cursor-pointer '+ (value.selected ? 'text-light' : '')\"\r\n (click)=\"chosenOption(option.code, value.name)\">{{ value.name }}</a>\r\n </li>\r\n }\r\n </ul>\r\n </div>\r\n\r\n</div>\r\n}\r\n}\r\n@default {\r\n\r\n}\r\n}\r\n}\r\n}\r\n}", styles: [".circle{width:32px;height:32px;border-radius:50%}.shadow{border:1px solid #000}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1.UpperCasePipe, name: "uppercase" }] });
|
|
8383
8408
|
}
|
|
8384
8409
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: VariantsEcComponent, decorators: [{
|
|
8385
8410
|
type: Component,
|
|
8386
|
-
args: [{ selector: 'app-variants-ec', standalone: true, imports: [AsyncPipe, CommonModule], template: "@if(options$ | async; as options){\n@if(options && options.length ){\n@for(option of options; track $index){\n\n@switch (option.type) {\n@case ('color') {\n@if(option.values && option.values.length > 1) {\n<h5>{{option.name | uppercase}}</h5>\n<div class=\"row w-100 mx-auto pb-3 mb-3\">\n @for(value of option.values; track $index; let x = $index){\n <a role=\"button\" (click)=\"setValuesImages(value.name, option.code) && setOption(option.code, value.name)\"\n [class]=\"'rounded-circle color-item m-1 ' + (value.selected ? 'shadow' : '')\" [id]=\"x + value.name\"\n [style.border]=\"'1px solid black'\"\n [style.background]=\"value.image && (value.image.endsWith('.jpg') || value.image.endsWith('.png') || value.image.endsWith('.svg')) ? 'url(' + this.consts.mediaUrl(value.image) + ')' : '#' + value.name\"\n [style.background-size]=\"'cover'\" [style.background-repeat]=\"'no-repeat'\" [style.background-position]=\"'center'\"\n [style.box-shadow]=\"(value.selected ? '0px 0px 0px 2px #000' : 'none')\"></a>\n }\n</div>\n}\n}\n@case ('size') {\n@if(option.values && option.values.length > 1) {\n<h5>{{option.name | uppercase}}</h5>\n<div class=\"row w-100 mx-auto pb-3\">\n <div class=\"btn-group ps-0\">\n <a class=\"btn btn-light dropdown-toggle cursor-pointer border border-1 d-flex flex-row justify-content-between align-items-center\"\n data-bs-toggle=\"dropdown\" aria-expanded=\"false\"> {{ itemSelected ? itemSelected :\n getValueSelect(option.values)}}</a>\n <ul class=\"dropdown-menu\">\n @for(value of option.values; track $index; let x = $index){\n <li [class]=\" (value.selected ? 'selected-size' : 'unselected-size')\">\n <a [class]=\"'dropdown-item cursor-pointer '+ (value.selected ? 'text-light' : '')\"\n (click)=\"chosenOption(option.code, value.name)\">{{ value.name }}</a>\n </li>\n }\n </ul>\n </div>\n\n</div>\n}\n}\n@default {\n\n}\n}\n}\n}\n}", styles: [".circle{width:32px;height:32px;border-radius:50%}.shadow{border:1px solid #000}\n"] }]
|
|
8411
|
+
args: [{ selector: 'app-variants-ec', standalone: true, imports: [AsyncPipe, CommonModule], template: "@if(options$ | async; as options){\r\n@if(options && options.length ){\r\n@for(option of options; track $index){\r\n\r\n@switch (option.type) {\r\n@case ('color') {\r\n@if(option.values && option.values.length > 1) {\r\n<h5>{{option.name | uppercase}}</h5>\r\n<div class=\"row w-100 mx-auto pb-3 mb-3\">\r\n @for(value of option.values; track $index; let x = $index){\r\n <a role=\"button\" (click)=\"setValuesImages(value.name, option.code) && setOption(option.code, value.name)\"\r\n [class]=\"'rounded-circle color-item m-1 ' + (value.selected ? 'shadow' : '')\" [id]=\"x + value.name\"\r\n [style.border]=\"'1px solid black'\"\r\n [style.background]=\"value.image && (value.image.endsWith('.jpg') || value.image.endsWith('.png') || value.image.endsWith('.svg')) ? 'url(' + this.consts.mediaUrl(value.image) + ')' : '#' + value.name\"\r\n [style.background-size]=\"'cover'\" [style.background-repeat]=\"'no-repeat'\" [style.background-position]=\"'center'\"\r\n [style.box-shadow]=\"(value.selected ? '0px 0px 0px 2px #000' : 'none')\"></a>\r\n }\r\n</div>\r\n}\r\n}\r\n@case ('size') {\r\n@if(option.values && option.values.length > 1) {\r\n<h5>{{option.name | uppercase}}</h5>\r\n<div class=\"row w-100 mx-auto pb-3\">\r\n <div class=\"btn-group ps-0\">\r\n <a class=\"btn btn-light dropdown-toggle cursor-pointer border border-1 d-flex flex-row justify-content-between align-items-center\"\r\n data-bs-toggle=\"dropdown\" aria-expanded=\"false\"> {{ itemSelected ? itemSelected :\r\n getValueSelect(option.values)}}</a>\r\n <ul class=\"dropdown-menu\">\r\n @for(value of option.values; track $index; let x = $index){\r\n <li [class]=\" (value.selected ? 'selected-size' : 'unselected-size')\">\r\n <a [class]=\"'dropdown-item cursor-pointer '+ (value.selected ? 'text-light' : '')\"\r\n (click)=\"chosenOption(option.code, value.name)\">{{ value.name }}</a>\r\n </li>\r\n }\r\n </ul>\r\n </div>\r\n\r\n</div>\r\n}\r\n}\r\n@default {\r\n\r\n}\r\n}\r\n}\r\n}\r\n}", styles: [".circle{width:32px;height:32px;border-radius:50%}.shadow{border:1px solid #000}\n"] }]
|
|
8387
8412
|
}], propDecorators: { setImages: [{
|
|
8388
8413
|
type: Input
|
|
8389
8414
|
}], product: [{
|
|
@@ -8497,25 +8522,31 @@ class ProductDetailEcComponent {
|
|
|
8497
8522
|
}, 2000);
|
|
8498
8523
|
}
|
|
8499
8524
|
plus(stock, multipleQuantity) {
|
|
8525
|
+
const current = Number(this.quantity()); // <-- fuerza a número
|
|
8500
8526
|
if (multipleQuantity && multipleQuantity > 0) {
|
|
8501
|
-
stock
|
|
8502
|
-
?
|
|
8503
|
-
|
|
8504
|
-
|
|
8527
|
+
stock
|
|
8528
|
+
? (current < stock
|
|
8529
|
+
? this.quantity.set(current + multipleQuantity)
|
|
8530
|
+
: this._toastService.show('out-of-stock-actually'))
|
|
8531
|
+
: this.quantity.set(current + multipleQuantity);
|
|
8505
8532
|
}
|
|
8506
8533
|
else {
|
|
8507
|
-
stock
|
|
8508
|
-
?
|
|
8509
|
-
|
|
8510
|
-
|
|
8534
|
+
stock
|
|
8535
|
+
? (current < stock
|
|
8536
|
+
? this.quantity.set(current + 1)
|
|
8537
|
+
: this._toastService.show('out-of-stock-actually'))
|
|
8538
|
+
: this.quantity.set(current + 1);
|
|
8511
8539
|
}
|
|
8512
8540
|
}
|
|
8513
8541
|
less(multipleQuantity) {
|
|
8542
|
+
const current = Number(this.quantity()); // <-- fuerza a número
|
|
8514
8543
|
if (multipleQuantity && multipleQuantity > 0) {
|
|
8515
|
-
|
|
8544
|
+
current > multipleQuantity
|
|
8545
|
+
? this.quantity.set(current - multipleQuantity)
|
|
8546
|
+
: null;
|
|
8516
8547
|
}
|
|
8517
8548
|
else {
|
|
8518
|
-
|
|
8549
|
+
current > 1 ? this.quantity.set(current - 1) : null;
|
|
8519
8550
|
}
|
|
8520
8551
|
}
|
|
8521
8552
|
checkStock(stock) {
|
|
@@ -8599,11 +8630,11 @@ class BreadcrumbEcComponent {
|
|
|
8599
8630
|
return this._optionsService.getBreadcrumbByFilters(filters);
|
|
8600
8631
|
}
|
|
8601
8632
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BreadcrumbEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
8602
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: BreadcrumbEcComponent, isStandalone: true, selector: "app-breadcrumb-ec", ngImport: i0, template: "<nav aria-label=\"breadcrumb\">\n <ol class=\"breadcrumb\">\n <li class=\"breadcrumb-item\"><a routerLink=\"/home\">Home</a></li>\n @for (crumb of breadcrumb; track $index) {\n @if(breadcrumb.length === $index+1){\n <li class=\"breadcrumb-item active\" aria-current=\"page\">\n {{\n crumb.title | translate | titlecase\n }}\n </li>\n }@else {\n <li class=\"breadcrumb-item\">\n <a [routerLink]=\"'/'+crumb.path\">{{\n crumb.title | translate | titlecase\n }}</a>\n </li>\n }\n }\n </ol>\n</nav>", styles: [""], dependencies: [{ kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: TitleCasePipe, name: "titlecase" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
8633
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: BreadcrumbEcComponent, isStandalone: true, selector: "app-breadcrumb-ec", ngImport: i0, template: "<nav aria-label=\"breadcrumb\">\r\n <ol class=\"breadcrumb\">\r\n <li class=\"breadcrumb-item\"><a routerLink=\"/home\">Home</a></li>\r\n @for (crumb of breadcrumb; track $index) {\r\n @if(breadcrumb.length === $index+1){\r\n <li class=\"breadcrumb-item active\" aria-current=\"page\">\r\n {{\r\n crumb.title | translate | titlecase\r\n }}\r\n </li>\r\n }@else {\r\n <li class=\"breadcrumb-item\">\r\n <a [routerLink]=\"'/'+crumb.path\">{{\r\n crumb.title | translate | titlecase\r\n }}</a>\r\n </li>\r\n }\r\n }\r\n </ol>\r\n</nav>", styles: [""], dependencies: [{ kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: TitleCasePipe, name: "titlecase" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
8603
8634
|
}
|
|
8604
8635
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BreadcrumbEcComponent, decorators: [{
|
|
8605
8636
|
type: Component,
|
|
8606
|
-
args: [{ selector: 'app-breadcrumb-ec', standalone: true, imports: [RouterLink, RouterLinkActive, TitleCasePipe, TranslateModule, JsonPipe], template: "<nav aria-label=\"breadcrumb\">\n <ol class=\"breadcrumb\">\n <li class=\"breadcrumb-item\"><a routerLink=\"/home\">Home</a></li>\n @for (crumb of breadcrumb; track $index) {\n @if(breadcrumb.length === $index+1){\n <li class=\"breadcrumb-item active\" aria-current=\"page\">\n {{\n crumb.title | translate | titlecase\n }}\n </li>\n }@else {\n <li class=\"breadcrumb-item\">\n <a [routerLink]=\"'/'+crumb.path\">{{\n crumb.title | translate | titlecase\n }}</a>\n </li>\n }\n }\n </ol>\n</nav>" }]
|
|
8637
|
+
args: [{ selector: 'app-breadcrumb-ec', standalone: true, imports: [RouterLink, RouterLinkActive, TitleCasePipe, TranslateModule, JsonPipe], template: "<nav aria-label=\"breadcrumb\">\r\n <ol class=\"breadcrumb\">\r\n <li class=\"breadcrumb-item\"><a routerLink=\"/home\">Home</a></li>\r\n @for (crumb of breadcrumb; track $index) {\r\n @if(breadcrumb.length === $index+1){\r\n <li class=\"breadcrumb-item active\" aria-current=\"page\">\r\n {{\r\n crumb.title | translate | titlecase\r\n }}\r\n </li>\r\n }@else {\r\n <li class=\"breadcrumb-item\">\r\n <a [routerLink]=\"'/'+crumb.path\">{{\r\n crumb.title | translate | titlecase\r\n }}</a>\r\n </li>\r\n }\r\n }\r\n </ol>\r\n</nav>" }]
|
|
8607
8638
|
}], ctorParameters: () => [] });
|
|
8608
8639
|
|
|
8609
8640
|
class CartEcComponent {
|
|
@@ -8621,13 +8652,19 @@ class CartEcComponent {
|
|
|
8621
8652
|
isAuthenticated$ = this._authService.isAuthenticated();
|
|
8622
8653
|
getTotalAmount = this._cartService.getTotalAmount();
|
|
8623
8654
|
couponCode$ = this._cartService.getCouponCode();
|
|
8655
|
+
hideTaxes = false;
|
|
8656
|
+
injector;
|
|
8624
8657
|
constructor() {
|
|
8625
8658
|
//console.log("constructo.....");
|
|
8659
|
+
this.injector = inject(Injector);
|
|
8626
8660
|
this._channelService.channel$.subscribe((res) => {
|
|
8627
8661
|
//console.log("construct")
|
|
8628
8662
|
this.channel = res;
|
|
8629
8663
|
//this.initializeSteps();
|
|
8630
8664
|
});
|
|
8665
|
+
this.injector.get(ChannelService).channel$.subscribe(channel => {
|
|
8666
|
+
this.hideTaxes = !!channel.hideTaxes;
|
|
8667
|
+
});
|
|
8631
8668
|
}
|
|
8632
8669
|
removeCoupon() {
|
|
8633
8670
|
// console.log(this.couponCode$)
|
|
@@ -8665,11 +8702,11 @@ class CartEcComponent {
|
|
|
8665
8702
|
}
|
|
8666
8703
|
};
|
|
8667
8704
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CartEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
8668
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: CartEcComponent, isStandalone: true, selector: "lib-cart-ec", ngImport: i0, template: "<p>cart-ec works!</p>\n", styles: [""] });
|
|
8705
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: CartEcComponent, isStandalone: true, selector: "lib-cart-ec", ngImport: i0, template: "<p>cart-ec works!</p>\r\n", styles: [""] });
|
|
8669
8706
|
}
|
|
8670
8707
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CartEcComponent, decorators: [{
|
|
8671
8708
|
type: Component,
|
|
8672
|
-
args: [{ selector: 'lib-cart-ec', standalone: true, imports: [], template: "<p>cart-ec works!</p>\n" }]
|
|
8709
|
+
args: [{ selector: 'lib-cart-ec', standalone: true, imports: [], template: "<p>cart-ec works!</p>\r\n" }]
|
|
8673
8710
|
}], ctorParameters: () => [] });
|
|
8674
8711
|
|
|
8675
8712
|
class EcSafeHtmlPipe {
|
|
@@ -8786,11 +8823,11 @@ class CartItemEcComponent {
|
|
|
8786
8823
|
return false; // Solo se ejecuta si no se cumple la condición
|
|
8787
8824
|
}
|
|
8788
8825
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CartItemEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
8789
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: CartItemEcComponent, isStandalone: true, selector: "app-cart-item-ec", inputs: { item: "item", inSidebar: "inSidebar" }, ngImport: i0, template: "@if(!inSidebar){\n<p>cart-item-ec works!</p>\n}@else{\n\n<div class=\"row\">\n <div class=\"col-3\">\n @let product= item.product;\n @if(item.variant_id && product.variants.length>0){\n <img [src]=\"mediaUrl + product.variants[0].images[0]\" alt=\"\" class=\"img-fluid\">\n }@else{\n <img [src]=\"mediaUrl + product.picturesdefault[0]\" alt=\"\" class=\"img-fluid\">\n }\n </div>\n <div class=\"col-7\">\n <div class=\"info d-flex flex-column align-items-start\">\n @if (item.product.special_mark?.length > 0 || item.product.saleprice) {\n <div class=\"marcas\">\n <img [src]=\"mediaUrl + (item.product.special_mark?.[0]?.images[0] || '')\" alt=\"\">\n\n @if (item.product.saleprice) {\n <div class=\"tag-dsc\">\n {{\n createDiscountMessage(item.product.saleprice,\n item.product.price)\n }}\n </div>\n }\n </div>\n }\n <a class=\"title text-dark text-decoration-none m-0 p-0 h6 mb-0\"\n [routerLink]=\"['/product', item.variant_id]\">{{\n item.product.name | titlecase\n }}</a>\n <div class=\"qty1\">\n <span>{{ item.product.id}}</span>\n </div>\n <div class=\"price h6 fw-bold mb-0 pb-0\">{{ item.product.price | ecCurrencySymbol\n }}</div>\n @if(getVariants(item); as options){\n <div class=\"d-flex align-items-center p-0\">\n @for(option of options; track $index){\n <span class=\"me-1\"> {{option.name | titlecase}}:</span>\n @if(option.name == 'COLOR'){\n <div class=\"p-2 rounded\" [style.background]=\"'#' + option.value\"></div>\n }@else{\n <b>{{option.value}}</b>\n }\n }\n </div>\n }\n <div class=\"campoCantidad mt-2\">\n <div class=\"numero\">\n <button (click)=\"less(item.product.variants[0]?.stock)\" class=\"btn btn-outline-secondary\"\n type=\"button\" id=\"button-addon1\">\n <i class=\"fa fa-minus\" aria-hidden=\"true\"></i>\n </button>\n <input type=\"text\" class=\"form-control text-center\" placeholder=\"\"\n aria-label=\"Example text with button addon\" aria-describedby=\"button-addon1\"\n [value]=\"item.quantity\" min=\"1\" step=\"1\" [(ngModel)]=\"quantity\"\n (change)=\"updateQuantity(item.product.variants[0]?.stock)\">\n <button (click)=\"plus(item.product.variants[0]?.stock)\" class=\"btn btn-outline-secondary\"\n type=\"button\" id=\"button-addon1\">\n <i class=\"fa fa-plus\" aria-hidden=\"true\"></i>\n </button>\n </div>\n\n </div>\n </div>\n </div>\n <div class=\"col-2\">\n <a (click)=\"deleteCartItem()\" class=\"btn botBorrar\"><i class=\"fa fa-trash\" aria-hidden=\"true\"></i></a>\n </div>\n</div>\n\n\n\n\n\n}", styles: [""], dependencies: [{ kind: "pipe", type: TitleCasePipe, name: "titlecase" }, { kind: "pipe", type: EcCurrencySymbolPipe, name: "ecCurrencySymbol" }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
|
|
8826
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: CartItemEcComponent, isStandalone: true, selector: "app-cart-item-ec", inputs: { item: "item", inSidebar: "inSidebar" }, ngImport: i0, template: "@if(!inSidebar){\r\n<p>cart-item-ec works!</p>\r\n}@else{\r\n\r\n<div class=\"row\">\r\n <div class=\"col-3\">\r\n @let product= item.product;\r\n @if(item.variant_id && product.variants.length>0){\r\n <img [src]=\"mediaUrl + product.variants[0].images[0]\" alt=\"\" class=\"img-fluid\">\r\n }@else{\r\n <img [src]=\"mediaUrl + product.picturesdefault[0]\" alt=\"\" class=\"img-fluid\">\r\n }\r\n </div>\r\n <div class=\"col-7\">\r\n <div class=\"info d-flex flex-column align-items-start\">\r\n @if (item.product.special_mark?.length > 0 || item.product.saleprice) {\r\n <div class=\"marcas\">\r\n <img [src]=\"mediaUrl + (item.product.special_mark?.[0]?.images[0] || '')\" alt=\"\">\r\n\r\n @if (item.product.saleprice) {\r\n <div class=\"tag-dsc\">\r\n {{\r\n createDiscountMessage(item.product.saleprice,\r\n item.product.price)\r\n }}\r\n </div>\r\n }\r\n </div>\r\n }\r\n <a class=\"title text-dark text-decoration-none m-0 p-0 h6 mb-0\"\r\n [routerLink]=\"['/product', item.variant_id]\">{{\r\n item.product.name | titlecase\r\n }}</a>\r\n <div class=\"qty1\">\r\n <span>{{ item.product.id}}</span>\r\n </div>\r\n <div class=\"price h6 fw-bold mb-0 pb-0\">{{ item.product.price | ecCurrencySymbol\r\n }}</div>\r\n @if(getVariants(item); as options){\r\n <div class=\"d-flex align-items-center p-0\">\r\n @for(option of options; track $index){\r\n <span class=\"me-1\"> {{option.name | titlecase}}:</span>\r\n @if(option.name == 'COLOR'){\r\n <div class=\"p-2 rounded\" [style.background]=\"'#' + option.value\"></div>\r\n }@else{\r\n <b>{{option.value}}</b>\r\n }\r\n }\r\n </div>\r\n }\r\n <div class=\"campoCantidad mt-2\">\r\n <div class=\"numero\">\r\n <button (click)=\"less(item.product.variants[0]?.stock)\" class=\"btn btn-outline-secondary\"\r\n type=\"button\" id=\"button-addon1\">\r\n <i class=\"fa fa-minus\" aria-hidden=\"true\"></i>\r\n </button>\r\n <input type=\"text\" class=\"form-control text-center\" placeholder=\"\"\r\n aria-label=\"Example text with button addon\" aria-describedby=\"button-addon1\"\r\n [value]=\"item.quantity\" min=\"1\" step=\"1\" [(ngModel)]=\"quantity\"\r\n (change)=\"updateQuantity(item.product.variants[0]?.stock)\">\r\n <button (click)=\"plus(item.product.variants[0]?.stock)\" class=\"btn btn-outline-secondary\"\r\n type=\"button\" id=\"button-addon1\">\r\n <i class=\"fa fa-plus\" aria-hidden=\"true\"></i>\r\n </button>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-2\">\r\n <a (click)=\"deleteCartItem()\" class=\"btn botBorrar\"><i class=\"fa fa-trash\" aria-hidden=\"true\"></i></a>\r\n </div>\r\n</div>\r\n\r\n\r\n\r\n\r\n\r\n}", styles: [""], dependencies: [{ kind: "pipe", type: TitleCasePipe, name: "titlecase" }, { kind: "pipe", type: EcCurrencySymbolPipe, name: "ecCurrencySymbol" }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
|
|
8790
8827
|
}
|
|
8791
8828
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CartItemEcComponent, decorators: [{
|
|
8792
8829
|
type: Component,
|
|
8793
|
-
args: [{ selector: 'app-cart-item-ec', standalone: true, imports: [TitleCasePipe, EcCurrencySymbolPipe, RouterLink, FormsModule], template: "@if(!inSidebar){\n<p>cart-item-ec works!</p>\n}@else{\n\n<div class=\"row\">\n <div class=\"col-3\">\n @let product= item.product;\n @if(item.variant_id && product.variants.length>0){\n <img [src]=\"mediaUrl + product.variants[0].images[0]\" alt=\"\" class=\"img-fluid\">\n }@else{\n <img [src]=\"mediaUrl + product.picturesdefault[0]\" alt=\"\" class=\"img-fluid\">\n }\n </div>\n <div class=\"col-7\">\n <div class=\"info d-flex flex-column align-items-start\">\n @if (item.product.special_mark?.length > 0 || item.product.saleprice) {\n <div class=\"marcas\">\n <img [src]=\"mediaUrl + (item.product.special_mark?.[0]?.images[0] || '')\" alt=\"\">\n\n @if (item.product.saleprice) {\n <div class=\"tag-dsc\">\n {{\n createDiscountMessage(item.product.saleprice,\n item.product.price)\n }}\n </div>\n }\n </div>\n }\n <a class=\"title text-dark text-decoration-none m-0 p-0 h6 mb-0\"\n [routerLink]=\"['/product', item.variant_id]\">{{\n item.product.name | titlecase\n }}</a>\n <div class=\"qty1\">\n <span>{{ item.product.id}}</span>\n </div>\n <div class=\"price h6 fw-bold mb-0 pb-0\">{{ item.product.price | ecCurrencySymbol\n }}</div>\n @if(getVariants(item); as options){\n <div class=\"d-flex align-items-center p-0\">\n @for(option of options; track $index){\n <span class=\"me-1\"> {{option.name | titlecase}}:</span>\n @if(option.name == 'COLOR'){\n <div class=\"p-2 rounded\" [style.background]=\"'#' + option.value\"></div>\n }@else{\n <b>{{option.value}}</b>\n }\n }\n </div>\n }\n <div class=\"campoCantidad mt-2\">\n <div class=\"numero\">\n <button (click)=\"less(item.product.variants[0]?.stock)\" class=\"btn btn-outline-secondary\"\n type=\"button\" id=\"button-addon1\">\n <i class=\"fa fa-minus\" aria-hidden=\"true\"></i>\n </button>\n <input type=\"text\" class=\"form-control text-center\" placeholder=\"\"\n aria-label=\"Example text with button addon\" aria-describedby=\"button-addon1\"\n [value]=\"item.quantity\" min=\"1\" step=\"1\" [(ngModel)]=\"quantity\"\n (change)=\"updateQuantity(item.product.variants[0]?.stock)\">\n <button (click)=\"plus(item.product.variants[0]?.stock)\" class=\"btn btn-outline-secondary\"\n type=\"button\" id=\"button-addon1\">\n <i class=\"fa fa-plus\" aria-hidden=\"true\"></i>\n </button>\n </div>\n\n </div>\n </div>\n </div>\n <div class=\"col-2\">\n <a (click)=\"deleteCartItem()\" class=\"btn botBorrar\"><i class=\"fa fa-trash\" aria-hidden=\"true\"></i></a>\n </div>\n</div>\n\n\n\n\n\n}" }]
|
|
8830
|
+
args: [{ selector: 'app-cart-item-ec', standalone: true, imports: [TitleCasePipe, EcCurrencySymbolPipe, RouterLink, FormsModule], template: "@if(!inSidebar){\r\n<p>cart-item-ec works!</p>\r\n}@else{\r\n\r\n<div class=\"row\">\r\n <div class=\"col-3\">\r\n @let product= item.product;\r\n @if(item.variant_id && product.variants.length>0){\r\n <img [src]=\"mediaUrl + product.variants[0].images[0]\" alt=\"\" class=\"img-fluid\">\r\n }@else{\r\n <img [src]=\"mediaUrl + product.picturesdefault[0]\" alt=\"\" class=\"img-fluid\">\r\n }\r\n </div>\r\n <div class=\"col-7\">\r\n <div class=\"info d-flex flex-column align-items-start\">\r\n @if (item.product.special_mark?.length > 0 || item.product.saleprice) {\r\n <div class=\"marcas\">\r\n <img [src]=\"mediaUrl + (item.product.special_mark?.[0]?.images[0] || '')\" alt=\"\">\r\n\r\n @if (item.product.saleprice) {\r\n <div class=\"tag-dsc\">\r\n {{\r\n createDiscountMessage(item.product.saleprice,\r\n item.product.price)\r\n }}\r\n </div>\r\n }\r\n </div>\r\n }\r\n <a class=\"title text-dark text-decoration-none m-0 p-0 h6 mb-0\"\r\n [routerLink]=\"['/product', item.variant_id]\">{{\r\n item.product.name | titlecase\r\n }}</a>\r\n <div class=\"qty1\">\r\n <span>{{ item.product.id}}</span>\r\n </div>\r\n <div class=\"price h6 fw-bold mb-0 pb-0\">{{ item.product.price | ecCurrencySymbol\r\n }}</div>\r\n @if(getVariants(item); as options){\r\n <div class=\"d-flex align-items-center p-0\">\r\n @for(option of options; track $index){\r\n <span class=\"me-1\"> {{option.name | titlecase}}:</span>\r\n @if(option.name == 'COLOR'){\r\n <div class=\"p-2 rounded\" [style.background]=\"'#' + option.value\"></div>\r\n }@else{\r\n <b>{{option.value}}</b>\r\n }\r\n }\r\n </div>\r\n }\r\n <div class=\"campoCantidad mt-2\">\r\n <div class=\"numero\">\r\n <button (click)=\"less(item.product.variants[0]?.stock)\" class=\"btn btn-outline-secondary\"\r\n type=\"button\" id=\"button-addon1\">\r\n <i class=\"fa fa-minus\" aria-hidden=\"true\"></i>\r\n </button>\r\n <input type=\"text\" class=\"form-control text-center\" placeholder=\"\"\r\n aria-label=\"Example text with button addon\" aria-describedby=\"button-addon1\"\r\n [value]=\"item.quantity\" min=\"1\" step=\"1\" [(ngModel)]=\"quantity\"\r\n (change)=\"updateQuantity(item.product.variants[0]?.stock)\">\r\n <button (click)=\"plus(item.product.variants[0]?.stock)\" class=\"btn btn-outline-secondary\"\r\n type=\"button\" id=\"button-addon1\">\r\n <i class=\"fa fa-plus\" aria-hidden=\"true\"></i>\r\n </button>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-2\">\r\n <a (click)=\"deleteCartItem()\" class=\"btn botBorrar\"><i class=\"fa fa-trash\" aria-hidden=\"true\"></i></a>\r\n </div>\r\n</div>\r\n\r\n\r\n\r\n\r\n\r\n}" }]
|
|
8794
8831
|
}], propDecorators: { item: [{
|
|
8795
8832
|
type: Input,
|
|
8796
8833
|
args: [{
|
|
@@ -8822,11 +8859,11 @@ class CouponEcComponent {
|
|
|
8822
8859
|
}
|
|
8823
8860
|
setLoading = () => this.loading = true;
|
|
8824
8861
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CouponEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
8825
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: CouponEcComponent, isStandalone: true, selector: "app-coupon-ec", ngImport: i0, template: "<div class=\"border border-bottom card p-2\">\n <p class=\"w-100 mb-1\">C\u00F3digo de descuento</p>\n \n @if(coupon$ | async; as coupon){\n <div class=\"d-flex justify-content-between align-items-center px-1\">\n <p class=\"m-0\">{{coupon.code}}</p>\n <button class=\"btn\" (click)=\"removeCoupon()\"><i class=\"bi bi-trash\"></i></button>\n </div>\n }@else {\n <form class=\"campo d-flex align-items-center\">\n <input type='text' class=\"elcampo\" [(ngModel)]=\"couponValue\" name=\"coupon_value\" />\n <input type='button' value='VALIDAR' class=\"btn btn-primary btnSend py-1\"\n (click)=\" addCoupon()\" />\n </form> \n }\n</div>", styles: [""], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1$3.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }] });
|
|
8862
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: CouponEcComponent, isStandalone: true, selector: "app-coupon-ec", ngImport: i0, template: "<div class=\"border border-bottom card p-2\">\r\n <p class=\"w-100 mb-1\">C\u00F3digo de descuento</p>\r\n \r\n @if(coupon$ | async; as coupon){\r\n <div class=\"d-flex justify-content-between align-items-center px-1\">\r\n <p class=\"m-0\">{{coupon.code}}</p>\r\n <button class=\"btn\" (click)=\"removeCoupon()\"><i class=\"bi bi-trash\"></i></button>\r\n </div>\r\n }@else {\r\n <form class=\"campo d-flex align-items-center\">\r\n <input type='text' class=\"elcampo\" [(ngModel)]=\"couponValue\" name=\"coupon_value\" />\r\n <input type='button' value='VALIDAR' class=\"btn btn-primary btnSend py-1\"\r\n (click)=\" addCoupon()\" />\r\n </form> \r\n }\r\n</div>", styles: [""], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1$3.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }] });
|
|
8826
8863
|
}
|
|
8827
8864
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CouponEcComponent, decorators: [{
|
|
8828
8865
|
type: Component,
|
|
8829
|
-
args: [{ selector: 'app-coupon-ec', standalone: true, imports: [AsyncPipe, FormsModule, UpperCasePipe], template: "<div class=\"border border-bottom card p-2\">\n <p class=\"w-100 mb-1\">C\u00F3digo de descuento</p>\n \n @if(coupon$ | async; as coupon){\n <div class=\"d-flex justify-content-between align-items-center px-1\">\n <p class=\"m-0\">{{coupon.code}}</p>\n <button class=\"btn\" (click)=\"removeCoupon()\"><i class=\"bi bi-trash\"></i></button>\n </div>\n }@else {\n <form class=\"campo d-flex align-items-center\">\n <input type='text' class=\"elcampo\" [(ngModel)]=\"couponValue\" name=\"coupon_value\" />\n <input type='button' value='VALIDAR' class=\"btn btn-primary btnSend py-1\"\n (click)=\" addCoupon()\" />\n </form> \n }\n</div>" }]
|
|
8866
|
+
args: [{ selector: 'app-coupon-ec', standalone: true, imports: [AsyncPipe, FormsModule, UpperCasePipe], template: "<div class=\"border border-bottom card p-2\">\r\n <p class=\"w-100 mb-1\">C\u00F3digo de descuento</p>\r\n \r\n @if(coupon$ | async; as coupon){\r\n <div class=\"d-flex justify-content-between align-items-center px-1\">\r\n <p class=\"m-0\">{{coupon.code}}</p>\r\n <button class=\"btn\" (click)=\"removeCoupon()\"><i class=\"bi bi-trash\"></i></button>\r\n </div>\r\n }@else {\r\n <form class=\"campo d-flex align-items-center\">\r\n <input type='text' class=\"elcampo\" [(ngModel)]=\"couponValue\" name=\"coupon_value\" />\r\n <input type='button' value='VALIDAR' class=\"btn btn-primary btnSend py-1\"\r\n (click)=\" addCoupon()\" />\r\n </form> \r\n }\r\n</div>" }]
|
|
8830
8867
|
}] });
|
|
8831
8868
|
|
|
8832
8869
|
class ContactEcComponent {
|
|
@@ -9093,7 +9130,7 @@ class DataformEcComponent {
|
|
|
9093
9130
|
//$('#selectOpPais').attr('disabled', true);
|
|
9094
9131
|
const form = billing ? this.checkoutFormFacturacion : this.checkoutForm;
|
|
9095
9132
|
form.controls['countryCode'].setValue(value);
|
|
9096
|
-
form.controls['provinceCode'].setValue('
|
|
9133
|
+
form.controls['provinceCode'].setValue('');
|
|
9097
9134
|
//value != '' && this.provincesSubject.next(this.countriesSubject.value.find(country => country.code == value).provinces);
|
|
9098
9135
|
if (value != '' || value != 'null') {
|
|
9099
9136
|
this._formService.onCountrySelected(value);
|
|
@@ -9121,8 +9158,8 @@ class DataformEcComponent {
|
|
|
9121
9158
|
this.countriesFacturacion$.subscribe(res => {
|
|
9122
9159
|
if (res && res.length > 0) {
|
|
9123
9160
|
this.checkoutFormFacturacion.controls['countryCode'].setValue(res[0].code);
|
|
9124
|
-
// Provincia
|
|
9125
|
-
this.checkoutFormFacturacion.controls['provinceCode'].setValue(
|
|
9161
|
+
// Provincia - No seleccionar automáticamente ninguna provincia
|
|
9162
|
+
this.checkoutFormFacturacion.controls['provinceCode'].setValue('');
|
|
9126
9163
|
this.provincesFacturacionSubject.next(res[0]?.provinces);
|
|
9127
9164
|
// Documento - Usar el nuevo método
|
|
9128
9165
|
this.setDefaultDocumentType(res[0]?.documentTypes[0], true);
|
|
@@ -9137,7 +9174,7 @@ class DataformEcComponent {
|
|
|
9137
9174
|
this._checkoutService.next();
|
|
9138
9175
|
}
|
|
9139
9176
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DataformEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
9140
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: DataformEcComponent, isStandalone: true, selector: "app-dataform-ec", ngImport: i0, template: "@if(channel$ | async; as channelConfig){\n@if(channelConfig.channelType != 'b2b' || (channelConfig.channelType == 'b2b' && isAuthenticated())){\n@if( modeSelectAddress == 'LOAD_ADDRESS_AND_SELECTION' && isAuthenticated() && this.addressBook != null){\n<!--Selector de modos-->\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 @if(!getParamByChannelAndLanguage('btn_new_address_')){\n <label [class]=\"'btn btn-outline-secondary ' + (getMode() ? 'active' : '')\">\n <input type=\"radio\" name=\"options\" id=\"option2\" autocomplete=\"off\" (change)=\"setMode('carga')\">\n {{ 'new-address' | translate | titlecase}}\n </label>\n }\n @if(getParamByChannelAndLanguage('btn_new_address_'); as param){\n <label [class]=\"'btn btn-outline-secondary ' + (selectAddress ? 'active' : '')\">\n <input type=\"radio\" name=\"options\" id=\"option2\" autocomplete=\"off\" (change)=\"setMode('carga')\">\n {{ param.value}}\n </label>\n }\n </div>\n </div>\n </div>\n</div>\n}\n\n@if(getMode()){\n@if(!require_login){\n<div>\n @if(modeSelectAddress == 'ONLY_LOAD_ADDRESS'){\n <div class=\"checkout-title my-2\">\n <h3>{{'billing-details'|translate}}</h3>\n </div>\n }\n <!--Formulario-->\n <form [formGroup]=\"checkoutForm\" (submit)=\"verifyValidate($event)\"> <!-- //this.cartService.items -->\n <div class=\"row mt-2\"><!--Fila 1-->\n\n @if(getTypeForm().viewForms.firstName.enabled){\n <div class=\"form-group col-12 col-md-6\">\n <!--Si es required-->\n <label class=\"form-label\">{{'first-name'|translate}}\n @if(getTypeForm().viewForms.firstName.required){\n <span class=\"required\">*</span>\n }\n </label>\n <!--Input-->\n <input class=\"form-control\" type=\"text\" name=\"firstName\" formControlName=\"firstName\" value=\"\"\n placeholder=\"\" autocomplete=\"off\">\n @if(checkoutForm.controls['firstName'].touched &&\n checkoutForm.controls['firstName'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{'first-name-help1'|translate}}</span>\n </div>\n }\n <!--Error info-->\n @if(checkoutForm.controls['firstName'].touched &&\n checkoutForm.controls['firstName'].errors?.['pattern']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">\n {{'first-name-help2'|translate}}\n </span>\n </div>\n }\n </div>\n }\n @if(getTypeForm().viewForms.lastName.enabled){\n <div class=\"form-group col-12 col-md-6\">\n <label class=\"form-label\">{{'last-name'|translate}}\n @if(getTypeForm().viewForms.lastName.required){\n <span class=\"required\">*</span>\n }\n </label>\n <input class=\"form-control\" type=\"text\" name=\"lastName\" formControlName=\"lastName\" value=\"\"\n placeholder=\"\" autocomplete=\"off\">\n @if(checkoutForm.controls['lastName'].touched &&\n checkoutForm.controls['lastName'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{'last-name-help1'|translate}}</span>\n </div>\n }\n @if(checkoutForm.controls['lastName'].touched && checkoutForm.controls['lastName'].errors?.['pattern']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{'last-name-help2'|translate}}</span>\n </div>\n }\n </div>\n }\n </div>\n <div class=\"row mt-2\"><!--Fila 2-->\n @if(getTypeForm().viewForms.phoneNumber.enabled){\n <div class=\"form-group col-12 col-md-6\">\n <label class=\"form-label\">{{'phone'|translate}}\n @if(getTypeForm().viewForms.phoneNumber.required){\n <span class=\"required\">*</span>\n }\n </label>\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"phoneNumber\"\n formControlName='phoneNumber' value=\"\" placeholder=\"\" autocomplete=\"off\">\n @if(checkoutForm.controls['phoneNumber'].touched &&\n checkoutForm.controls['phoneNumber'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">\n {{'phone-help1'|translate}}\n </span>\n </div>\n }\n @if(checkoutForm.controls['phoneNumber'].touched &&\n checkoutForm.controls['phoneNumber'].errors?.['pattern']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">\n {{'phone-help2'|translate}}\n </span>\n </div>\n }\n </div>\n }\n @if(getTypeForm().viewForms.email.enabled){\n <div class=\"form-group col-12 col-md-6\">\n <label class=\"form-label\">{{'email-address'|translate}}\n @if(getTypeForm().viewForms.email.required){\n <span class=\"required\">*</span>\n }</label>\n <input class=\"form-control\" type=\"email\" name=\"email\" formControlName='email' value=\"\" placeholder=\"\"\n autocomplete=\"off\">\n @if(checkoutForm.controls['email'].touched && checkoutForm.controls['email'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">\n {{'email-address-help1'|translate}}\n </span>\n </div>\n }\n @if(checkoutForm.controls['email'].touched && checkoutForm.controls['email'].errors?.['email']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">\n {{'email-address-help2'|translate}}\n </span>\n </div>\n }\n </div>\n }\n </div>\n <div class=\"row mt-2\"><!--Fila 3-->\n @if(getTypeForm().viewForms.countryCode.enabled){\n @if(countries$ | async; as countries){\n <div class=\"form-group col-12 col-md-4\">\n <label class=\"form-label\">{{'country'|translate}}\n @if(getTypeForm().viewForms.countryCode.required){\n <span class=\"required\">*</span>\n }</label>\n <select class=\"form-select\" name=\"countryCode\" formControlName='countryCode'\n (change)=\"onCountrySelected($event)\">\n @for(country of countries; track $index){\n <option [value]=\"country.code\">{{ country.name }}</option>\n }\n </select>\n @if(checkoutForm.controls['countryCode'].touched &&\n checkoutForm.controls['countryCode'].errors?.['required']){\n <div class=\"text text-danger\">\n {{'country-help'|translate}}\n </div>\n }\n </div>\n }\n }\n @if(getTypeForm().viewForms.provinceCode.enabled){\n @if(provinces$ | async; as provinces){\n <div class=\"form-group col-12 col-md-4\">\n <label class=\"form-label\">{{'state'|translate}}\n @if(getTypeForm().viewForms.provinceCode.required){\n <span class=\"required\">*</span>\n }</label>\n <select class=\"form-select\" name=\"provinceCode\" (change)=\"onProvincesSelected($event, provinces)\"\n formControlName='provinceCode'>\n @for(province of provinces; track $index){\n <option [value]=\"province.code\">{{ province.name }}\n </option>\n }\n </select>\n @if(checkoutForm.controls['provinceCode'].touched &&\n checkoutForm.controls['provinceCode'].errors?.['required']){\n <div class=\"text text-danger\">\n {{'state-help'|translate}}\n </div>\n }\n </div>\n }\n }\n @if(getTypeForm().viewForms.city.enabled){\n <div class=\"form-group col-12 col-md-4\">\n <label class=\"form-label\">{{'town-city'|translate}}\n @if(getTypeForm().viewForms.city.required){\n <span class=\"required\">*</span>\n }</label>\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"city\" formControlName='city'\n value=\"\" placeholder=\"\" autocomplete=\"off\">\n @if(checkoutForm.controls['city'].touched && checkoutForm.controls['city'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{'town-city-help'|translate}}</span>\n </div>\n }\n </div>\n }\n </div>\n <div class=\"row mt-df\"><!--Fila 4-->\n @if(getTypeForm().viewForms.street.enabled){\n <div class=\"form-group col-12 col-md-8\">\n <label class=\"field-label\">{{'address'|translate}}\n @if(getTypeForm().viewForms.street.required){\n <span class=\"required\">*</span>\n }\n </label>\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"street\"\n formControlName='street' value=\"\" placeholder=\"\" autocomplete=\"off\">\n @if(checkoutForm.controls['street'].touched && checkoutForm.controls['street'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{'address-help1'|translate}}</span>\n </div>\n }\n @if(checkoutForm.controls['street'].touched && checkoutForm.controls['street'].errors?.['maxlength']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{'address-help2'|translate}}</span>\n </div>\n }\n </div>\n }\n\n <!-- form direcci\u00F3n -->\n @if(getTypeForm().viewForms.postcode.enabled){\n <div class=\"form-group col-12 col-md-4\">\n <label class=\"field-label\">{{'postal-code'|translate}}\n @if(getTypeForm().viewForms.postcode.required){\n <span class=\"required\">*</span>\n }</label>\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"postcode\"\n formControlName='postcode' value=\"\" placeholder=\"\" autocomplete=\"off\">\n @if(checkoutForm.controls['postcode'].touched &&\n checkoutForm.controls['postcode'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{'postal-code-help'|translate}}</span>\n </div>\n }\n @if(checkoutForm.controls['postcode'].touched && checkoutForm.controls['postcode'].errors?.['pattern']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\"> {{'postal-code-pattern-error' | translate}} </span>\n </div>\n }\n </div>\n }\n </div>\n <div class=\"row mt-df\"><!--Fila 5-->\n @if(getTypeForm().viewForms.documentType.enabled){\n @if(documentTypes$ | async; as documentTypes){\n <div class=\"form-group col-12 col-md-4\">\n <label class=\"field-label\">{{'document-type'|translate}}\n @if(getTypeForm().viewForms.documentType.required){\n <span class=\"required\">*</span>\n }</label>\n <select name=\"documentType\" class=\"form-select\" (change)=\"onDocumentTypesSelected($event)\"\n formControlName='documentType'>\n @for(item of documentTypes; track $index){\n <option [value]=\"item.code\">{{item.name}}</option>\n }\n </select>\n @if(checkoutForm.controls['documentType'].touched &&\n checkoutForm.controls['documentType'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">\n {{'type-document-help'|translate}}\n </span>\n </div>\n }\n </div>\n }\n }\n @if(getTypeForm().viewForms.documentNumber.enabled){\n <div class=\"form-group col-12 col-md-4\">\n <label class=\"field-label\">{{'document-number'|translate}}\n @if(getTypeForm().viewForms.documentNumber.required){\n <span class=\"required\">*</span>\n }\n </label>\n <input (change)=\"onInputChange()\" class=\"form-control\" [type]=\"'text'\" name=\"documentNumber\"\n formControlName='documentNumber' min=\"1\" max=\"99999999999\" value=\"\" placeholder=\"\"\n autocomplete=\"off\">\n @if(checkoutForm.controls['documentNumber'].touched &&\n checkoutForm.controls['documentNumber'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">\n {{'document-number-help'|translate}}\n </span>\n </div>\n }\n </div>\n }\n </div>\n <div class=\"row mt-df\"><!--Fila 6-->\n @if(this.channel.checkoutNotesField == 'required' || this.channel.checkoutNotesField == 'show'){\n <div class=\"form-group col-12 col-md-12\">\n @if(!getLabelNotesParam()){\n <label class=\"field-label\">{{'notes'|translate}}\n @if(this.channel.checkoutNotesField == 'required'){\n <span class=\"required\">*</span>\n }\n </label>\n }\n @if(getLabelNotesParam(); as labelnotes){\n <label class=\"field-label\" [innerHTML]=\"labelnotes.value\">\n @if(this.channel.checkoutNotesField == 'required'){\n <span class=\"required\">*</span>\n }\n </label>\n }\n\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"notes\" formControlName='notes'\n value=\"\" placeholder=\"\" autocomplete=\"off\">\n @if(this.channel.checkoutNotesField == 'required' && checkoutForm.controls['notes'].touched &&\n checkoutForm.controls['notes'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{'notes-help'|translate}}</span>\n </div>\n }\n </div>\n }\n </div>\n <div class=\"row mt-df\"><!--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\">\n <div class=\"col-12\">\n <p>\n <label class=\"required text-underline text-danger\">* {{ 'required-fields' | translate }}</label>\n </p>\n </div>\n </div>\n <div class=\"row mt-df\">\n @if(getTypeForm().viewForms.terms.enabled){\n <div class=\"form-group col-12 col-md-12\">\n @if(getTypeForm().viewForms.terms.required){\n <span class=\"required\">*</span>\n }\n <label class=\"\" for=\"\"> {{ 'accept-terms' | translate }} <input class=\"ms-2\" name=\"terms\"\n formControlName='terms' type=\"checkbox\" required (change)=\"onInputChange()\" /> </label><br />\n <button type=\"button\" class=\"btn btn-primary\" data-bs-toggle=\"modal\"\n data-bs-target=\"#terminos-y-condiciones\">\n {{ 'whats-this' | translate }}\n </button>\n @if(checkoutForm.controls['terms'].touched && !checkoutForm.controls['terms'].value){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{ 'must-accept-terms' | translate }}</span>\n </div>\n }\n </div>\n }\n </div>\n @if(!viewDataFacturacion){\n <!--Formulario de Facturaci\u00F3n-->\n <div class=\"card\">\n <div class=\"card-header text-center\">\n <h2>{{ 'billing-data' | translate }}</h2>\n </div>\n <div class=\"card-body\">\n <form [formGroup]=\"checkoutFormFacturacion\">\n <div class=\"row mt-2\"><!--Fila 1-->\n\n @if(getTypeForm().viewForms.firstName.enabled){\n <div class=\"form-group col-12 col-md-6\">\n <!--Si es required-->\n <label class=\"form-label\">{{'first-name'|translate}}\n @if(getTypeForm().viewForms.firstName.required){\n <span class=\"required\">*</span>\n }\n </label>\n <!--Input-->\n <input class=\"form-control\" type=\"text\" name=\"firstName\" formControlName=\"firstName\"\n value=\"\" placeholder=\"\" autocomplete=\"off\">\n @if(checkoutFormFacturacion.controls['firstName'].touched &&\n checkoutFormFacturacion.controls['firstName'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{'first-name-help1'|translate}}</span>\n </div>\n }\n <!--Error info-->\n @if(checkoutFormFacturacion.controls['firstName'].touched &&\n checkoutFormFacturacion.controls['firstName'].errors?.['pattern']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">\n {{'first-name-help2'|translate}}\n </span>\n </div>\n }\n </div>\n }\n @if(getTypeForm().viewForms.lastName.enabled){\n <div class=\"form-group col-12 col-md-6\">\n <label class=\"form-label\">{{'last-name'|translate}}\n @if(getTypeForm().viewForms.lastName.required){\n <span class=\"required\">*</span>\n }\n </label>\n <input class=\"form-control\" type=\"text\" name=\"lastName\" formControlName=\"lastName\" value=\"\"\n placeholder=\"\" autocomplete=\"off\">\n @if(checkoutFormFacturacion.controls['lastName'].touched &&\n checkoutFormFacturacion.controls['lastName'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{'last-name-help1'|translate}}</span>\n </div>\n }\n @if(checkoutFormFacturacion.controls['lastName'].touched &&\n checkoutFormFacturacion.controls['lastName'].errors?.['pattern']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{'last-name-help2'|translate}}</span>\n </div>\n }\n </div>\n }\n </div>\n <div class=\"row mt-2\"><!--Fila 2-->\n @if(getTypeForm().viewForms.phoneNumber.enabled){\n <div class=\"form-group col-12 col-md-6\">\n <label class=\"form-label\">{{'phone'|translate}}\n @if(getTypeForm().viewForms.phoneNumber.required){\n <span class=\"required\">*</span>\n }\n </label>\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"phoneNumber\"\n formControlName='phoneNumber' value=\"\" placeholder=\"\" autocomplete=\"off\">\n @if(checkoutFormFacturacion.controls['phoneNumber'].touched &&\n checkoutFormFacturacion.controls['phoneNumber'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">\n {{'phone-help1'|translate}}\n </span>\n </div>\n }\n @if(checkoutFormFacturacion.controls['phoneNumber'].touched &&\n checkoutFormFacturacion.controls['phoneNumber'].errors?.['pattern']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">\n {{'phone-help2'|translate}}\n </span>\n </div>\n }\n </div>\n }\n @if(getTypeForm().viewForms.email.enabled){\n <div class=\"form-group col-12 col-md-6\">\n <label class=\"form-label\">{{'email-address'|translate}}\n @if(getTypeForm().viewForms.email.required){\n <span class=\"required\">*</span>\n }</label>\n <input class=\"form-control\" type=\"email\" name=\"email\" formControlName='email' value=\"\"\n placeholder=\"\" autocomplete=\"off\">\n @if(checkoutFormFacturacion.controls['email'].touched &&\n checkoutFormFacturacion.controls['email'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">\n {{'email-address-help1'|translate}}\n </span>\n </div>\n }\n @if(checkoutFormFacturacion.controls['email'].touched &&\n checkoutFormFacturacion.controls['email'].errors?.['email']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">\n {{'email-address-help2'|translate}}\n </span>\n </div>\n }\n </div>\n }\n </div>\n <div class=\"row mt-2\"><!--Fila 3-->\n @if(getTypeForm().viewForms.countryCode.enabled){\n @if(countries$ | async; as countries){\n <div class=\"form-group col-12 col-md-4\">\n <label class=\"form-label\">{{'country'|translate}}\n @if(getTypeForm().viewForms.countryCode.required){\n <span class=\"required\">*</span>\n }</label>\n <select class=\"form-select\" name=\"countryCode\" formControlName='countryCode'\n (change)=\"onCountrySelected($event, true)\">\n @for(country of countries; track $index){\n <option [value]=\"country.code\">{{ country.name }}</option>\n }\n </select>\n @if(checkoutFormFacturacion.controls['countryCode'].touched &&\n checkoutFormFacturacion.controls['countryCode'].errors?.['required']){\n <div class=\"text text-danger\">\n {{'country-help'|translate}}\n </div>\n }\n </div>\n }\n }\n @if(getTypeForm().viewForms.provinceCode.enabled){\n @if(provinces$ | async; as provinces){\n <div class=\"form-group col-12 col-md-4\">\n <label class=\"form-label\">{{'state'|translate}}\n @if(getTypeForm().viewForms.provinceCode.required){\n <span class=\"required\">*</span>\n }</label>\n <select class=\"form-select\" name=\"provinceCode\"\n (change)=\"onProvincesSelected($event, provinces, true)\" formControlName='provinceCode'>\n @for(province of provinces; track $index){\n <option [value]=\"province.code\">{{ province.name }}\n </option>\n }\n </select>\n @if(checkoutFormFacturacion.controls['provinceCode'].touched &&\n checkoutFormFacturacion.controls['provinceCode'].errors?.['required']){\n <div class=\"text text-danger\">\n {{'state-help'|translate}}\n </div>\n }\n </div>\n }\n }\n @if(getTypeForm().viewForms.city.enabled){\n <div class=\"form-group col-12 col-md-4\">\n <label class=\"form-label\">{{'town-city'|translate}}\n @if(getTypeForm().viewForms.city.required){\n <span class=\"required\">*</span>\n }</label>\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"city\"\n formControlName='city' value=\"\" placeholder=\"\" autocomplete=\"off\">\n @if(checkoutFormFacturacion.controls['city'].touched &&\n checkoutFormFacturacion.controls['city'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{'town-city-help'|translate}}</span>\n </div>\n }\n </div>\n }\n </div>\n <div class=\"row mt-df\"><!--Fila 4-->\n @if(getTypeForm().viewForms.street.enabled){\n <div class=\"form-group col-12 col-md-8\">\n <label class=\"field-label\">{{'address'|translate}}\n @if(getTypeForm().viewForms.street.required){\n <span class=\"required\">*</span>\n }\n </label>\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"street\"\n formControlName='street' value=\"\" placeholder=\"\" autocomplete=\"off\">\n @if(checkoutFormFacturacion.controls['street'].touched &&\n checkoutFormFacturacion.controls['street'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{'address-help1'|translate}}</span>\n </div>\n }\n @if(checkoutFormFacturacion.controls['street'].touched &&\n checkoutFormFacturacion.controls['street'].errors?.['maxlength']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{'address-help2'|translate}}</span>\n </div>\n }\n </div>\n }\n\n <!-- form direcci\u00F3n -->\n @if(getTypeForm().viewForms.postcode.enabled){\n <div class=\"form-group col-12 col-md-4\">\n <label class=\"field-label\">{{'postal-code'|translate}}\n @if(getTypeForm().viewForms.postcode.required){\n <span class=\"required\">*</span>\n }</label>\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"postcode\"\n formControlName='postcode' value=\"\" placeholder=\"\" autocomplete=\"off\">\n @if(checkoutFormFacturacion.controls['postcode'].touched &&\n checkoutFormFacturacion.controls['postcode'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{'postal-code-help'|translate}}</span>\n </div>\n }\n @if(checkoutFormFacturacion.controls['postcode'].touched &&\n checkoutFormFacturacion.controls['postcode'].errors?.['pattern']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\"> {{'postal-code-pattern-error' | translate}} </span>\n </div>\n }\n </div>\n }\n </div>\n <div class=\"row mt-df\"><!--Fila 5-->\n @if(getTypeForm().viewForms.documentType.enabled){\n @if(documentTypes$ | async; as documentTypes){\n <div class=\"form-group col-12 col-md-4\">\n <label class=\"field-label\">{{'document-type'|translate}}\n @if(getTypeForm().viewForms.documentType.required){\n <span class=\"required\">*</span>\n }</label>\n <select name=\"documentType\" class=\"form-select\"\n (change)=\"onDocumentTypesSelected($event, true)\" formControlName='documentType'>\n @for(item of documentTypes; track $index){\n <option [value]=\"item.code\">{{item.name}}</option>\n }\n </select>\n @if(checkoutFormFacturacion.controls['documentType'].touched &&\n checkoutFormFacturacion.controls['documentType'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">\n {{'type-document-help'|translate}}\n </span>\n </div>\n }\n </div>\n }\n }\n @if(getTypeForm().viewForms.documentNumber.enabled){\n <div class=\"form-group col-12 col-md-4\">\n <label class=\"field-label\">{{'document-number'|translate}}\n @if(getTypeForm().viewForms.documentNumber.required){\n <span class=\"required\">*</span>\n }\n </label>\n <input (change)=\"onInputChange()\" class=\"form-control\" [type]=\"'text'\" name=\"documentNumber\"\n formControlName='documentNumber' min=\"1\" max=\"99999999999\" value=\"\" placeholder=\"\"\n autocomplete=\"off\">\n @if(checkoutFormFacturacion.controls['documentNumber'].touched &&\n checkoutFormFacturacion.controls['documentNumber'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">\n {{'document-number-help'|translate}}\n </span>\n </div>\n }\n </div>\n }\n </div>\n <div class=\"row mt-df\"><!--Fila 6-->\n @if(this.channel.checkoutNotesField == 'required' || this.channel.checkoutNotesField == 'show'){\n <div class=\"form-group col-12 col-md-12\">\n @if(!getLabelNotesParam()){\n <label class=\"field-label\">{{'notes'|translate}}\n @if(this.channel.checkoutNotesField == 'required'){\n <span class=\"required\">*</span>\n }\n </label>\n }\n @if(getLabelNotesParam(); as labelnotes){\n <label class=\"field-label\" [innerHTML]=\"labelnotes.value\">\n @if(this.channel.checkoutNotesField == 'required'){\n <span class=\"required\">*</span>\n }\n </label>\n }\n\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"notes\"\n formControlName='notes' value=\"\" placeholder=\"\" autocomplete=\"off\">\n @if(this.channel.checkoutNotesField == 'required' &&\n checkoutFormFacturacion.controls['notes'].touched &&\n checkoutFormFacturacion.controls['notes'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{'notes-help'|translate}}</span>\n </div>\n }\n </div>\n }\n </div>\n </form>\n </div>\n </div>\n }\n <div class=\"row d-flex flex-row\">\n <div class=\"col-12 d-flex justify-content-end\">\n <button type=\"submit\" class=\"btn btn-primary text-white\"\n [disabled]=\"checkoutForm.invalid || (this.channel.checkoutNotesField == 'required' && (!checkoutForm.get('notes')?.value || checkoutForm.get('notes')?.value.trim() === '')) || (!viewDataFacturacion && checkoutFormFacturacion && (checkoutFormFacturacion.invalid || (this.channel.checkoutNotesField == 'required' && (!checkoutFormFacturacion.get('notes')?.value || checkoutFormFacturacion.get('notes')?.value.trim() === ''))))\">{{(isLastOne\n ? 'finish-checkout' : (allready_data ? 'update' :\n 'ready-form')) | translate}}\n <!-- {{(allready_data ? 'update' : (isLastOne ? 'finish-checkout' : 'ready-form')) | translate}} -->\n </button>\n </div>\n </div>\n @if(loading){\n <div class=\"d-flex flex-column justify-content-center align-items-center\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n }\n\n </form>\n</div>\n} @else {\n<div id=\"loginCheckout\">\n @if(require_login){\n <div class=\"d-flex flex-column justify-content-center align-items-center my-5 \">\n <div class=\"col-12 col-md-6 \">\n <app-login-form-ec (ready)=\"verifyValidate($event)\" [redirect]=\"false\" [title]=\"'need-login'\">\n </app-login-form-ec>\n </div>\n </div>\n }\n</div>\n}\n} @else {\n@if(modeSelectAddress == 'ONLY_ADDRESS_SELECTION'){\n<div class=\"checkout-title my-2\">\n <h3>{{'address-selection'|translate}}</h3>\n</div>\n}\n\n@if(this.addressBook){\n@if(this.addressBook?.length){\n<div class=\"container\">\n <div class=\"row\">\n @for(item of addressBook; track $index; let i = $index){\n <div class=\"col-sm-6 col-12 my-3\">\n <div class=\"card p-3\">\n <input class=\"ms-1 mt-3 form-check-input input-size-lg\" type=\"radio\" [name]=\"'n-'+i\" [id]=\"i\"\n [checked]=\"item.selected\" (click)=\"setSelectAddress(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 <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 </div>\n }\n\n </div>\n\n <div class=\"w-100\">\n @if(this.channel.checkoutNotesField == 'required' || this.channel.checkoutNotesField == 'show'){\n <div class=\"row mt-df\">\n <div class=\"form-group col-12 col-md-12\">\n @if(!getLabelNotesParam()){\n <label class=\"form-label\">{{'notes'|translate}}\n @if(this.channel.checkoutNotesField == 'required'){\n <span class=\"required\">*</span>\n }\n </label>\n }\n @if(getLabelNotesParam(); as labelnotes){\n <label class=\"form-label\" [innerHTML]=\"labelnotes.value\">\n @if(this.channel.checkoutNotesField == 'required'){\n <span class=\"required\">*</span>\n }\n </label>\n }\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"notes\"\n [(ngModel)]=\"this.addressBookSelected.notes\" #ctrl=\"ngModel\" value=\"\" placeholder=\"\"\n autocomplete=\"off\" [required]=\"this.channel.checkoutNotesField == 'required'\">\n @if(this.channel.checkoutNotesField == 'required' && ctrl.touched && ctrl.invalid){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{'notes-help'|translate}}</span>\n </div>\n }\n </div>\n </div>\n }\n </div>\n <div class=\"row d-flex flex-row\">\n <div class=\"col-12 d-flex justify-content-end\">\n <button (click)=\"onSelectAddress(cartItems)\" class=\"btn btn-primary text-white\"\n [disabled]=\"loadingStep || (this.channel.checkoutNotesField == 'required' && (!this.addressBookSelected.notes || this.addressBookSelected.notes.trim() === ''))\">{{(isLastOne\n ? 'finish-checkout' : (allready_data ? 'update' :\n 'ready-form')) | translate}}\n <!-- {{(allready_data ? 'update' : (isLastOne ? 'finish-checkout' : 'ready-form')) | translate}} -->\n </button>\n\n </div>\n </div>\n @if(loading){\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 }\n</div>\n} @else {\n<div class=\"container\">\n <div class=\"row\">\n <div class=\"col-12 text-center my-2\">\n <div class=\"d-flex flex-column justify-content-center align-items-center\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n </div>\n </div>\n</div>\n}\n} @else {\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}\n\n}\n\n}\n@else {\n<div class=\"container\">\n <p>Por favor <a [routerLink]=\"['/auth/login']\"> Inicie Sesi\u00F3n</a></p>\n</div>\n}\n}\n@if(getTypeForm().viewForms.terms.enabled){\n<div class=\"modal fade\" id=\"terminos-y-condiciones\" tabindex=\"-1\" aria-labelledby=\"modalLabel\" aria-hidden=\"true\">\n <div class=\"modal-dialog modal-xl modal-dialog-scrollable\">\n <div class=\"modal-content\">\n <div class=\"modal-header\">\n <h5 class=\"modal-title\" id=\"modalLabel\">T\u00E9rminos y condiciones</h5>\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\n </div>\n <div class=\"modal-body\">\n <app-blocks-ec [section]=\"'terminos-y-condiciones'\" />\n </div>\n </div>\n </div>\n</div>\n}", styles: [""], dependencies: [{ kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1$3.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$3.CheckboxRequiredValidator, selector: "input[type=checkbox][required][formControlName],input[type=checkbox][required][formControl],input[type=checkbox][required][ngModel]" }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: LoginFormEcComponent, selector: "app-login-form-ec", inputs: ["redirect", "redirectTo", "inCart"], outputs: ["ready"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: TitleCasePipe, name: "titlecase" }, { kind: "component", type: LoadingFullEcComponent, selector: "app-loading-full-ec" }, { kind: "component", type: BlocksEcComponent, selector: "app-blocks-ec", inputs: ["templates", "show_loading", "section", "blockFilters"] }] });
|
|
9177
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: DataformEcComponent, isStandalone: true, selector: "app-dataform-ec", ngImport: i0, template: "@if(channel$ | async; as channelConfig){\r\n@if(channelConfig.channelType != 'b2b' || (channelConfig.channelType == 'b2b' && isAuthenticated())){\r\n@if( modeSelectAddress == 'LOAD_ADDRESS_AND_SELECTION' && isAuthenticated() && this.addressBook != null){\r\n<!--Selector de modos-->\r\n<div class=\"container card p-4 mb-3\">\r\n <div class=\"row justify-content-center\">\r\n <div class=\"col-12 col-md-10 col-lg-8 text-center\">\r\n <div class=\"btn-group btn-group-toggle\" data-bs-toggle=\"buttons\">\r\n <label [class]=\"'btn btn-outline-secondary ' + (!getMode() ? 'active' : '')\">\r\n <input type=\"radio\" name=\"options\" id=\"option1\" autocomplete=\"off\" checked\r\n (change)=\"setMode('seleccion')\"> {{'select-address' | translate | titlecase}}\r\n </label>\r\n @if(!getParamByChannelAndLanguage('btn_new_address_')){\r\n <label [class]=\"'btn btn-outline-secondary ' + (getMode() ? 'active' : '')\">\r\n <input type=\"radio\" name=\"options\" id=\"option2\" autocomplete=\"off\" (change)=\"setMode('carga')\">\r\n {{ 'new-address' | translate | titlecase}}\r\n </label>\r\n }\r\n @if(getParamByChannelAndLanguage('btn_new_address_'); as param){\r\n <label [class]=\"'btn btn-outline-secondary ' + (selectAddress ? 'active' : '')\">\r\n <input type=\"radio\" name=\"options\" id=\"option2\" autocomplete=\"off\" (change)=\"setMode('carga')\">\r\n {{ param.value}}\r\n </label>\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n}\r\n\r\n@if(getMode()){\r\n@if(!require_login){\r\n<div>\r\n @if(modeSelectAddress == 'ONLY_LOAD_ADDRESS'){\r\n <div class=\"checkout-title my-2\">\r\n <h3>{{'billing-details'|translate}}</h3>\r\n </div>\r\n }\r\n <!--Formulario-->\r\n <form [formGroup]=\"checkoutForm\" (submit)=\"verifyValidate($event)\"> <!-- //this.cartService.items -->\r\n <div class=\"row mt-2\"><!--Fila 1-->\r\n\r\n @if(getTypeForm().viewForms.firstName.enabled){\r\n <div class=\"form-group col-12 col-md-6\">\r\n <!--Si es required-->\r\n <label class=\"form-label\">{{'first-name'|translate}}\r\n @if(getTypeForm().viewForms.firstName.required){\r\n <span class=\"required\">*</span>\r\n }\r\n </label>\r\n <!--Input-->\r\n <input class=\"form-control\" type=\"text\" name=\"firstName\" formControlName=\"firstName\" value=\"\"\r\n placeholder=\"\" autocomplete=\"off\">\r\n @if(checkoutForm.controls['firstName'].touched &&\r\n checkoutForm.controls['firstName'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{'first-name-help1'|translate}}</span>\r\n </div>\r\n }\r\n <!--Error info-->\r\n @if(checkoutForm.controls['firstName'].touched &&\r\n checkoutForm.controls['firstName'].errors?.['pattern']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">\r\n {{'first-name-help2'|translate}}\r\n </span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n @if(getTypeForm().viewForms.lastName.enabled){\r\n <div class=\"form-group col-12 col-md-6\">\r\n <label class=\"form-label\">{{'last-name'|translate}}\r\n @if(getTypeForm().viewForms.lastName.required){\r\n <span class=\"required\">*</span>\r\n }\r\n </label>\r\n <input class=\"form-control\" type=\"text\" name=\"lastName\" formControlName=\"lastName\" value=\"\"\r\n placeholder=\"\" autocomplete=\"off\">\r\n @if(checkoutForm.controls['lastName'].touched &&\r\n checkoutForm.controls['lastName'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{'last-name-help1'|translate}}</span>\r\n </div>\r\n }\r\n @if(checkoutForm.controls['lastName'].touched && checkoutForm.controls['lastName'].errors?.['pattern']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{'last-name-help2'|translate}}</span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n <div class=\"row mt-2\"><!--Fila 2-->\r\n @if(getTypeForm().viewForms.phoneNumber.enabled){\r\n <div class=\"form-group col-12 col-md-6\">\r\n <label class=\"form-label\">{{'phone'|translate}}\r\n @if(getTypeForm().viewForms.phoneNumber.required){\r\n <span class=\"required\">*</span>\r\n }\r\n </label>\r\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"phoneNumber\"\r\n formControlName='phoneNumber' value=\"\" placeholder=\"\" autocomplete=\"off\">\r\n @if(checkoutForm.controls['phoneNumber'].touched &&\r\n checkoutForm.controls['phoneNumber'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">\r\n {{'phone-help1'|translate}}\r\n </span>\r\n </div>\r\n }\r\n @if(checkoutForm.controls['phoneNumber'].touched &&\r\n checkoutForm.controls['phoneNumber'].errors?.['pattern']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">\r\n {{'phone-help2'|translate}}\r\n </span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n @if(getTypeForm().viewForms.email.enabled){\r\n <div class=\"form-group col-12 col-md-6\">\r\n <label class=\"form-label\">{{'email-address'|translate}}\r\n @if(getTypeForm().viewForms.email.required){\r\n <span class=\"required\">*</span>\r\n }</label>\r\n <input class=\"form-control\" type=\"email\" name=\"email\" formControlName='email' value=\"\" placeholder=\"\"\r\n autocomplete=\"off\">\r\n @if(checkoutForm.controls['email'].touched && checkoutForm.controls['email'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">\r\n {{'email-address-help1'|translate}}\r\n </span>\r\n </div>\r\n }\r\n @if(checkoutForm.controls['email'].touched && checkoutForm.controls['email'].errors?.['email']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">\r\n {{'email-address-help2'|translate}}\r\n </span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n <div class=\"row mt-2\"><!--Fila 3-->\r\n @if(getTypeForm().viewForms.countryCode.enabled){\r\n @if(countries$ | async; as countries){\r\n <div class=\"form-group col-12 col-md-4\">\r\n <label class=\"form-label\">{{'country'|translate}}\r\n @if(getTypeForm().viewForms.countryCode.required){\r\n <span class=\"required\">*</span>\r\n }</label>\r\n <select class=\"form-select\" name=\"countryCode\" formControlName='countryCode'\r\n (change)=\"onCountrySelected($event)\">\r\n @for(country of countries; track $index){\r\n <option [value]=\"country.code\">{{ country.name }}</option>\r\n }\r\n </select>\r\n @if(checkoutForm.controls['countryCode'].touched &&\r\n checkoutForm.controls['countryCode'].errors?.['required']){\r\n <div class=\"text text-danger\">\r\n {{'country-help'|translate}}\r\n </div>\r\n }\r\n </div>\r\n }\r\n }\r\n @if(getTypeForm().viewForms.provinceCode.enabled){\r\n @if(provinces$ | async; as provinces){\r\n <div class=\"form-group col-12 col-md-4\">\r\n <label class=\"form-label\">{{'state'|translate}}\r\n @if(getTypeForm().viewForms.provinceCode.required){\r\n <span class=\"required\">*</span>\r\n }</label>\r\n <select class=\"form-select\" name=\"provinceCode\" (change)=\"onProvincesSelected($event, provinces)\"\r\n formControlName='provinceCode'>\r\n <option value=\"\">{{'select-state'|translate}}</option>\r\n @for(province of provinces; track $index){\r\n <option [value]=\"province.code\">{{ province.name }}\r\n </option>\r\n }\r\n </select>\r\n @if(checkoutForm.controls['provinceCode'].touched &&\r\n checkoutForm.controls['provinceCode'].errors?.['required']){\r\n <div class=\"text text-danger\">\r\n {{'state-help'|translate}}\r\n </div>\r\n }\r\n </div>\r\n }\r\n }\r\n @if(getTypeForm().viewForms.city.enabled){\r\n <div class=\"form-group col-12 col-md-4\">\r\n <label class=\"form-label\">{{'town-city'|translate}}\r\n @if(getTypeForm().viewForms.city.required){\r\n <span class=\"required\">*</span>\r\n }</label>\r\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"city\" formControlName='city'\r\n value=\"\" placeholder=\"\" autocomplete=\"off\">\r\n @if(checkoutForm.controls['city'].touched && checkoutForm.controls['city'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{'town-city-help'|translate}}</span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n <div class=\"row mt-df\"><!--Fila 4-->\r\n @if(getTypeForm().viewForms.street.enabled){\r\n <div class=\"form-group col-12 col-md-8\">\r\n <label class=\"field-label\">{{'address'|translate}}\r\n @if(getTypeForm().viewForms.street.required){\r\n <span class=\"required\">*</span>\r\n }\r\n </label>\r\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"street\"\r\n formControlName='street' value=\"\" placeholder=\"\" autocomplete=\"off\">\r\n @if(checkoutForm.controls['street'].touched && checkoutForm.controls['street'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{'address-help1'|translate}}</span>\r\n </div>\r\n }\r\n @if(checkoutForm.controls['street'].touched && checkoutForm.controls['street'].errors?.['maxlength']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{'address-help2'|translate}}</span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n\r\n <!-- form direcci\u00F3n -->\r\n @if(getTypeForm().viewForms.postcode.enabled){\r\n <div class=\"form-group col-12 col-md-4\">\r\n <label class=\"field-label\">{{'postal-code'|translate}}\r\n @if(getTypeForm().viewForms.postcode.required){\r\n <span class=\"required\">*</span>\r\n }</label>\r\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"postcode\"\r\n formControlName='postcode' value=\"\" placeholder=\"\" autocomplete=\"off\">\r\n @if(checkoutForm.controls['postcode'].touched &&\r\n checkoutForm.controls['postcode'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{'postal-code-help'|translate}}</span>\r\n </div>\r\n }\r\n @if(checkoutForm.controls['postcode'].touched && checkoutForm.controls['postcode'].errors?.['pattern']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\"> {{'postal-code-pattern-error' | translate}} </span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n <div class=\"row mt-df\"><!--Fila 5-->\r\n @if(getTypeForm().viewForms.documentType.enabled){\r\n @if(documentTypes$ | async; as documentTypes){\r\n <div class=\"form-group col-12 col-md-4\">\r\n <label class=\"field-label\">{{'document-type'|translate}}\r\n @if(getTypeForm().viewForms.documentType.required){\r\n <span class=\"required\">*</span>\r\n }</label>\r\n <select name=\"documentType\" class=\"form-select\" (change)=\"onDocumentTypesSelected($event)\"\r\n formControlName='documentType'>\r\n @for(item of documentTypes; track $index){\r\n <option [value]=\"item.code\">{{item.name}}</option>\r\n }\r\n </select>\r\n @if(checkoutForm.controls['documentType'].touched &&\r\n checkoutForm.controls['documentType'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">\r\n {{'type-document-help'|translate}}\r\n </span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n }\r\n @if(getTypeForm().viewForms.documentNumber.enabled){\r\n <div class=\"form-group col-12 col-md-4\">\r\n <label class=\"field-label\">{{'document-number'|translate}}\r\n @if(getTypeForm().viewForms.documentNumber.required){\r\n <span class=\"required\">*</span>\r\n }\r\n </label>\r\n <input (change)=\"onInputChange()\" class=\"form-control\" [type]=\"'text'\" name=\"documentNumber\"\r\n formControlName='documentNumber' min=\"1\" max=\"99999999999\" value=\"\" placeholder=\"\"\r\n autocomplete=\"off\">\r\n @if(checkoutForm.controls['documentNumber'].touched &&\r\n checkoutForm.controls['documentNumber'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">\r\n {{'document-number-help'|translate}}\r\n </span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n <div class=\"row mt-df\"><!--Fila 6-->\r\n @if(this.channel.checkoutNotesField == 'required' || this.channel.checkoutNotesField == 'show'){\r\n <div class=\"form-group col-12 col-md-12\">\r\n @if(!getLabelNotesParam()){\r\n <label class=\"field-label\">{{'notes'|translate}}\r\n @if(this.channel.checkoutNotesField == 'required'){\r\n <span class=\"required\">*</span>\r\n }\r\n </label>\r\n }\r\n @if(getLabelNotesParam(); as labelnotes){\r\n <label class=\"field-label\" [innerHTML]=\"labelnotes.value\">\r\n @if(this.channel.checkoutNotesField == 'required'){\r\n <span class=\"required\">*</span>\r\n }\r\n </label>\r\n }\r\n\r\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"notes\" formControlName='notes'\r\n value=\"\" placeholder=\"\" autocomplete=\"off\">\r\n @if(this.channel.checkoutNotesField == 'required' && checkoutForm.controls['notes'].touched &&\r\n checkoutForm.controls['notes'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{'notes-help'|translate}}</span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n <div class=\"row mt-df\"><!--Fila 7-->\r\n <div class=\"form-group col-12 col-md-12\">\r\n <label for=\"formFact\"><b>{{ 'same-billing-address' | translate }}</b> <input type=\"checkbox\"\r\n class=\"ms-2\" [checked]=\"viewDataFacturacion\" (change)=\"showFormFacturacion()\"\r\n id=\"formFact\"></label>\r\n </div>\r\n </div>\r\n <div class=\"row mt-df\">\r\n <div class=\"col-12\">\r\n <p>\r\n <label class=\"required text-underline text-danger\">* {{ 'required-fields' | translate }}</label>\r\n </p>\r\n </div>\r\n </div>\r\n <div class=\"row mt-df\">\r\n @if(getTypeForm().viewForms.terms.enabled){\r\n <div class=\"form-group col-12 col-md-12\">\r\n @if(getTypeForm().viewForms.terms.required){\r\n <span class=\"required\">*</span>\r\n }\r\n <label class=\"\" for=\"\"> {{ 'accept-terms' | translate }} <input class=\"ms-2\" name=\"terms\"\r\n formControlName='terms' type=\"checkbox\" required (change)=\"onInputChange()\" /> </label><br />\r\n <button type=\"button\" class=\"btn btn-primary\" data-bs-toggle=\"modal\"\r\n data-bs-target=\"#terminos-y-condiciones\">\r\n {{ 'whats-this' | translate }}\r\n </button>\r\n @if(checkoutForm.controls['terms'].touched && !checkoutForm.controls['terms'].value){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{ 'must-accept-terms' | translate }}</span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n @if(!viewDataFacturacion){\r\n <!--Formulario de Facturaci\u00F3n-->\r\n <div class=\"card\">\r\n <div class=\"card-header text-center\">\r\n <h2>{{ 'billing-data' | translate }}</h2>\r\n </div>\r\n <div class=\"card-body\">\r\n <form [formGroup]=\"checkoutFormFacturacion\">\r\n <div class=\"row mt-2\"><!--Fila 1-->\r\n\r\n @if(getTypeForm().viewForms.firstName.enabled){\r\n <div class=\"form-group col-12 col-md-6\">\r\n <!--Si es required-->\r\n <label class=\"form-label\">{{'first-name'|translate}}\r\n @if(getTypeForm().viewForms.firstName.required){\r\n <span class=\"required\">*</span>\r\n }\r\n </label>\r\n <!--Input-->\r\n <input class=\"form-control\" type=\"text\" name=\"firstName\" formControlName=\"firstName\"\r\n value=\"\" placeholder=\"\" autocomplete=\"off\">\r\n @if(checkoutFormFacturacion.controls['firstName'].touched &&\r\n checkoutFormFacturacion.controls['firstName'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{'first-name-help1'|translate}}</span>\r\n </div>\r\n }\r\n <!--Error info-->\r\n @if(checkoutFormFacturacion.controls['firstName'].touched &&\r\n checkoutFormFacturacion.controls['firstName'].errors?.['pattern']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">\r\n {{'first-name-help2'|translate}}\r\n </span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n @if(getTypeForm().viewForms.lastName.enabled){\r\n <div class=\"form-group col-12 col-md-6\">\r\n <label class=\"form-label\">{{'last-name'|translate}}\r\n @if(getTypeForm().viewForms.lastName.required){\r\n <span class=\"required\">*</span>\r\n }\r\n </label>\r\n <input class=\"form-control\" type=\"text\" name=\"lastName\" formControlName=\"lastName\" value=\"\"\r\n placeholder=\"\" autocomplete=\"off\">\r\n @if(checkoutFormFacturacion.controls['lastName'].touched &&\r\n checkoutFormFacturacion.controls['lastName'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{'last-name-help1'|translate}}</span>\r\n </div>\r\n }\r\n @if(checkoutFormFacturacion.controls['lastName'].touched &&\r\n checkoutFormFacturacion.controls['lastName'].errors?.['pattern']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{'last-name-help2'|translate}}</span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n <div class=\"row mt-2\"><!--Fila 2-->\r\n @if(getTypeForm().viewForms.phoneNumber.enabled){\r\n <div class=\"form-group col-12 col-md-6\">\r\n <label class=\"form-label\">{{'phone'|translate}}\r\n @if(getTypeForm().viewForms.phoneNumber.required){\r\n <span class=\"required\">*</span>\r\n }\r\n </label>\r\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"phoneNumber\"\r\n formControlName='phoneNumber' value=\"\" placeholder=\"\" autocomplete=\"off\">\r\n @if(checkoutFormFacturacion.controls['phoneNumber'].touched &&\r\n checkoutFormFacturacion.controls['phoneNumber'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">\r\n {{'phone-help1'|translate}}\r\n </span>\r\n </div>\r\n }\r\n @if(checkoutFormFacturacion.controls['phoneNumber'].touched &&\r\n checkoutFormFacturacion.controls['phoneNumber'].errors?.['pattern']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">\r\n {{'phone-help2'|translate}}\r\n </span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n @if(getTypeForm().viewForms.email.enabled){\r\n <div class=\"form-group col-12 col-md-6\">\r\n <label class=\"form-label\">{{'email-address'|translate}}\r\n @if(getTypeForm().viewForms.email.required){\r\n <span class=\"required\">*</span>\r\n }</label>\r\n <input class=\"form-control\" type=\"email\" name=\"email\" formControlName='email' value=\"\"\r\n placeholder=\"\" autocomplete=\"off\">\r\n @if(checkoutFormFacturacion.controls['email'].touched &&\r\n checkoutFormFacturacion.controls['email'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">\r\n {{'email-address-help1'|translate}}\r\n </span>\r\n </div>\r\n }\r\n @if(checkoutFormFacturacion.controls['email'].touched &&\r\n checkoutFormFacturacion.controls['email'].errors?.['email']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">\r\n {{'email-address-help2'|translate}}\r\n </span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n <div class=\"row mt-2\"><!--Fila 3-->\r\n @if(getTypeForm().viewForms.countryCode.enabled){\r\n @if(countries$ | async; as countries){\r\n <div class=\"form-group col-12 col-md-4\">\r\n <label class=\"form-label\">{{'country'|translate}}\r\n @if(getTypeForm().viewForms.countryCode.required){\r\n <span class=\"required\">*</span>\r\n }</label>\r\n <select class=\"form-select\" name=\"countryCode\" formControlName='countryCode'\r\n (change)=\"onCountrySelected($event, true)\">\r\n @for(country of countries; track $index){\r\n <option [value]=\"country.code\">{{ country.name }}</option>\r\n }\r\n </select>\r\n @if(checkoutFormFacturacion.controls['countryCode'].touched &&\r\n checkoutFormFacturacion.controls['countryCode'].errors?.['required']){\r\n <div class=\"text text-danger\">\r\n {{'country-help'|translate}}\r\n </div>\r\n }\r\n </div>\r\n }\r\n }\r\n @if(getTypeForm().viewForms.provinceCode.enabled){\r\n @if(provinces$ | async; as provinces){\r\n <div class=\"form-group col-12 col-md-4\">\r\n <label class=\"form-label\">{{'state'|translate}}\r\n @if(getTypeForm().viewForms.provinceCode.required){\r\n <span class=\"required\">*</span>\r\n }</label>\r\n <select class=\"form-select\" name=\"provinceCode\"\r\n (change)=\"onProvincesSelected($event, provinces, true)\" formControlName='provinceCode'>\r\n <option value=\"\">{{'select-state'|translate}}</option>\r\n @for(province of provinces; track $index){\r\n <option [value]=\"province.code\">{{ province.name }}\r\n </option>\r\n }\r\n </select>\r\n @if(checkoutFormFacturacion.controls['provinceCode'].touched &&\r\n checkoutFormFacturacion.controls['provinceCode'].errors?.['required']){\r\n <div class=\"text text-danger\">\r\n {{'state-help'|translate}}\r\n </div>\r\n }\r\n </div>\r\n }\r\n }\r\n @if(getTypeForm().viewForms.city.enabled){\r\n <div class=\"form-group col-12 col-md-4\">\r\n <label class=\"form-label\">{{'town-city'|translate}}\r\n @if(getTypeForm().viewForms.city.required){\r\n <span class=\"required\">*</span>\r\n }</label>\r\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"city\"\r\n formControlName='city' value=\"\" placeholder=\"\" autocomplete=\"off\">\r\n @if(checkoutFormFacturacion.controls['city'].touched &&\r\n checkoutFormFacturacion.controls['city'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{'town-city-help'|translate}}</span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n <div class=\"row mt-df\"><!--Fila 4-->\r\n @if(getTypeForm().viewForms.street.enabled){\r\n <div class=\"form-group col-12 col-md-8\">\r\n <label class=\"field-label\">{{'address'|translate}}\r\n @if(getTypeForm().viewForms.street.required){\r\n <span class=\"required\">*</span>\r\n }\r\n </label>\r\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"street\"\r\n formControlName='street' value=\"\" placeholder=\"\" autocomplete=\"off\">\r\n @if(checkoutFormFacturacion.controls['street'].touched &&\r\n checkoutFormFacturacion.controls['street'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{'address-help1'|translate}}</span>\r\n </div>\r\n }\r\n @if(checkoutFormFacturacion.controls['street'].touched &&\r\n checkoutFormFacturacion.controls['street'].errors?.['maxlength']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{'address-help2'|translate}}</span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n\r\n <!-- form direcci\u00F3n -->\r\n @if(getTypeForm().viewForms.postcode.enabled){\r\n <div class=\"form-group col-12 col-md-4\">\r\n <label class=\"field-label\">{{'postal-code'|translate}}\r\n @if(getTypeForm().viewForms.postcode.required){\r\n <span class=\"required\">*</span>\r\n }</label>\r\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"postcode\"\r\n formControlName='postcode' value=\"\" placeholder=\"\" autocomplete=\"off\">\r\n @if(checkoutFormFacturacion.controls['postcode'].touched &&\r\n checkoutFormFacturacion.controls['postcode'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{'postal-code-help'|translate}}</span>\r\n </div>\r\n }\r\n @if(checkoutFormFacturacion.controls['postcode'].touched &&\r\n checkoutFormFacturacion.controls['postcode'].errors?.['pattern']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\"> {{'postal-code-pattern-error' | translate}} </span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n <div class=\"row mt-df\"><!--Fila 5-->\r\n @if(getTypeForm().viewForms.documentType.enabled){\r\n @if(documentTypes$ | async; as documentTypes){\r\n <div class=\"form-group col-12 col-md-4\">\r\n <label class=\"field-label\">{{'document-type'|translate}}\r\n @if(getTypeForm().viewForms.documentType.required){\r\n <span class=\"required\">*</span>\r\n }</label>\r\n <select name=\"documentType\" class=\"form-select\"\r\n (change)=\"onDocumentTypesSelected($event, true)\" formControlName='documentType'>\r\n @for(item of documentTypes; track $index){\r\n <option [value]=\"item.code\">{{item.name}}</option>\r\n }\r\n </select>\r\n @if(checkoutFormFacturacion.controls['documentType'].touched &&\r\n checkoutFormFacturacion.controls['documentType'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">\r\n {{'type-document-help'|translate}}\r\n </span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n }\r\n @if(getTypeForm().viewForms.documentNumber.enabled){\r\n <div class=\"form-group col-12 col-md-4\">\r\n <label class=\"field-label\">{{'document-number'|translate}}\r\n @if(getTypeForm().viewForms.documentNumber.required){\r\n <span class=\"required\">*</span>\r\n }\r\n </label>\r\n <input (change)=\"onInputChange()\" class=\"form-control\" [type]=\"'text'\" name=\"documentNumber\"\r\n formControlName='documentNumber' min=\"1\" max=\"99999999999\" value=\"\" placeholder=\"\"\r\n autocomplete=\"off\">\r\n @if(checkoutFormFacturacion.controls['documentNumber'].touched &&\r\n checkoutFormFacturacion.controls['documentNumber'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">\r\n {{'document-number-help'|translate}}\r\n </span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n <div class=\"row mt-df\"><!--Fila 6-->\r\n @if(this.channel.checkoutNotesField == 'required' || this.channel.checkoutNotesField == 'show'){\r\n <div class=\"form-group col-12 col-md-12\">\r\n @if(!getLabelNotesParam()){\r\n <label class=\"field-label\">{{'notes'|translate}}\r\n @if(this.channel.checkoutNotesField == 'required'){\r\n <span class=\"required\">*</span>\r\n }\r\n </label>\r\n }\r\n @if(getLabelNotesParam(); as labelnotes){\r\n <label class=\"field-label\" [innerHTML]=\"labelnotes.value\">\r\n @if(this.channel.checkoutNotesField == 'required'){\r\n <span class=\"required\">*</span>\r\n }\r\n </label>\r\n }\r\n\r\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"notes\"\r\n formControlName='notes' value=\"\" placeholder=\"\" autocomplete=\"off\">\r\n @if(this.channel.checkoutNotesField == 'required' &&\r\n checkoutFormFacturacion.controls['notes'].touched &&\r\n checkoutFormFacturacion.controls['notes'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{'notes-help'|translate}}</span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n </form>\r\n </div>\r\n </div>\r\n }\r\n <div class=\"row d-flex flex-row\">\r\n <div class=\"col-12 d-flex justify-content-end\">\r\n <button type=\"submit\" class=\"btn btn-primary text-white\"\r\n [disabled]=\"checkoutForm.invalid || (this.channel.checkoutNotesField == 'required' && (!checkoutForm.get('notes')?.value || checkoutForm.get('notes')?.value.trim() === '')) || (!viewDataFacturacion && checkoutFormFacturacion && (checkoutFormFacturacion.invalid || (this.channel.checkoutNotesField == 'required' && (!checkoutFormFacturacion.get('notes')?.value || checkoutFormFacturacion.get('notes')?.value.trim() === ''))))\">{{(isLastOne\r\n ? 'finish-checkout' : (allready_data ? 'update' :\r\n 'ready-form')) | translate}}\r\n <!-- {{(allready_data ? 'update' : (isLastOne ? 'finish-checkout' : 'ready-form')) | translate}} -->\r\n </button>\r\n </div>\r\n </div>\r\n @if(loading){\r\n <div class=\"d-flex flex-column justify-content-center align-items-center\">\r\n <app-loading-full-ec></app-loading-full-ec>\r\n </div>\r\n }\r\n\r\n </form>\r\n</div>\r\n} @else {\r\n<div id=\"loginCheckout\">\r\n @if(require_login){\r\n <div class=\"d-flex flex-column justify-content-center align-items-center my-5 \">\r\n <div class=\"col-12 col-md-6 \">\r\n <app-login-form-ec (ready)=\"verifyValidate($event)\" [redirect]=\"false\" [title]=\"'need-login'\">\r\n </app-login-form-ec>\r\n </div>\r\n </div>\r\n }\r\n</div>\r\n}\r\n} @else {\r\n@if(modeSelectAddress == 'ONLY_ADDRESS_SELECTION'){\r\n<div class=\"checkout-title my-2\">\r\n <h3>{{'address-selection'|translate}}</h3>\r\n</div>\r\n}\r\n\r\n@if(this.addressBook){\r\n@if(this.addressBook?.length){\r\n<div class=\"container\">\r\n <div class=\"row\">\r\n @for(item of addressBook; track $index; let i = $index){\r\n <div class=\"col-sm-6 col-12 my-3\">\r\n <div class=\"card p-3\">\r\n <input class=\"ms-1 mt-3 form-check-input input-size-lg\" type=\"radio\" [name]=\"'n-'+i\" [id]=\"i\"\r\n [checked]=\"item.selected\" (click)=\"setSelectAddress(item)\" (change)=\"onInputChange()\">\r\n <div class=\"ms-5\">\r\n <h4 class=\"card-title\">\r\n <strong>{{'address'|translate}}</strong><br>\r\n <span class=\"text-uppercase h3\">{{item.street}}</span>\r\n </h4>\r\n <div class=\"row\">\r\n <h5 class=\"card-subtitle mb-2 text-muted col-auto\">\r\n <strong>{{'country'|translate}}</strong> {{getCountry(item.countryCode)}}\r\n </h5>\r\n <h5 class=\"card-subtitle mb-2 text-muted col-auto\">\r\n <strong>{{'state'|translate}}</strong> {{getProvince(item.provinceCode)}}\r\n </h5>\r\n <h5 class=\"card-subtitle mb-2 text-muted col-auto\">\r\n <strong>{{'town-city'|translate}}</strong> {{item.city}}\r\n </h5>\r\n <h5 class=\"card-subtitle mb-2 text-muted col-auto\">\r\n <strong>{{'postal-code'|translate}}</strong> {{item.postcode}}\r\n </h5>\r\n </div>\r\n <div class=\"row px-3\">\r\n <div class=\"card p-2 bg-light w-100\">\r\n <div class=\"card-body\">\r\n <h5 class=\"card-title\">{{'address-contact'|translate}}</h5>\r\n <h6 class=\"card-subtitle mb-2 text-muted\">\r\n <strong>{{'first-name'|translate}}</strong>\r\n {{item.addressContact.firstName}}\r\n </h6>\r\n <h6 class=\"card-subtitle mb-2 text-muted\">\r\n <strong>{{'last-name'|translate}}</strong>\r\n {{item.addressContact.lastName}}\r\n </h6>\r\n <h6 class=\"card-subtitle mb-2 text-muted\">\r\n <strong>{{'document-type'|translate}}</strong>\r\n {{getDocumentType(item.addressContact.documentType)}}\r\n </h6>\r\n <h6 class=\"card-subtitle mb-2 text-muted\">\r\n <strong>{{'document-number'|translate}}</strong>\r\n {{item.addressContact.documentNumber}}\r\n </h6>\r\n <h6 class=\"card-subtitle mb-2 text-muted\">\r\n <strong>{{'email-address'|translate}}</strong>\r\n {{item.addressContact.email}}\r\n </h6>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n }\r\n\r\n </div>\r\n\r\n <div class=\"w-100\">\r\n @if(this.channel.checkoutNotesField == 'required' || this.channel.checkoutNotesField == 'show'){\r\n <div class=\"row mt-df\">\r\n <div class=\"form-group col-12 col-md-12\">\r\n @if(!getLabelNotesParam()){\r\n <label class=\"form-label\">{{'notes'|translate}}\r\n @if(this.channel.checkoutNotesField == 'required'){\r\n <span class=\"required\">*</span>\r\n }\r\n </label>\r\n }\r\n @if(getLabelNotesParam(); as labelnotes){\r\n <label class=\"form-label\" [innerHTML]=\"labelnotes.value\">\r\n @if(this.channel.checkoutNotesField == 'required'){\r\n <span class=\"required\">*</span>\r\n }\r\n </label>\r\n }\r\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"notes\"\r\n [(ngModel)]=\"this.addressBookSelected.notes\" #ctrl=\"ngModel\" value=\"\" placeholder=\"\"\r\n autocomplete=\"off\" [required]=\"this.channel.checkoutNotesField == 'required'\">\r\n @if(this.channel.checkoutNotesField == 'required' && ctrl.touched && ctrl.invalid){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{'notes-help'|translate}}</span>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n <div class=\"row d-flex flex-row\">\r\n <div class=\"col-12 d-flex justify-content-end\">\r\n <button (click)=\"onSelectAddress(cartItems)\" class=\"btn btn-primary text-white\"\r\n [disabled]=\"loadingStep || (this.channel.checkoutNotesField == 'required' && (!this.addressBookSelected.notes || this.addressBookSelected.notes.trim() === ''))\">{{(isLastOne\r\n ? 'finish-checkout' : (allready_data ? 'update' :\r\n 'ready-form')) | translate}}\r\n <!-- {{(allready_data ? 'update' : (isLastOne ? 'finish-checkout' : 'ready-form')) | translate}} -->\r\n </button>\r\n\r\n </div>\r\n </div>\r\n @if(loading){\r\n <div class=\"d-flex flex-column jusitfy-content-center align-items-center\">\r\n <app-loading-full-ec></app-loading-full-ec>\r\n </div>\r\n }\r\n</div>\r\n} @else {\r\n<div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-12 text-center my-2\">\r\n <div class=\"d-flex flex-column justify-content-center align-items-center\">\r\n <app-loading-full-ec></app-loading-full-ec>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n}\r\n} @else {\r\n<div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-12 text-center my-2\">\r\n <h4> {{'address-book-not-result' | translate }} </h4>\r\n </div>\r\n </div>\r\n</div>\r\n}\r\n\r\n}\r\n\r\n}\r\n@else {\r\n<div class=\"container\">\r\n <p>Por favor <a [routerLink]=\"['/auth/login']\"> Inicie Sesi\u00F3n</a></p>\r\n</div>\r\n}\r\n}\r\n@if(getTypeForm().viewForms.terms.enabled){\r\n<div class=\"modal fade\" id=\"terminos-y-condiciones\" tabindex=\"-1\" aria-labelledby=\"modalLabel\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog modal-xl modal-dialog-scrollable\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\">\r\n <h5 class=\"modal-title\" id=\"modalLabel\">T\u00E9rminos y condiciones</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n <app-blocks-ec [section]=\"'terminos-y-condiciones'\" />\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n}", styles: [""], dependencies: [{ kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$3.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1$3.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$3.CheckboxRequiredValidator, selector: "input[type=checkbox][required][formControlName],input[type=checkbox][required][formControl],input[type=checkbox][required][ngModel]" }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: LoginFormEcComponent, selector: "app-login-form-ec", inputs: ["redirect", "redirectTo", "inCart"], outputs: ["ready"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: TitleCasePipe, name: "titlecase" }, { kind: "component", type: LoadingFullEcComponent, selector: "app-loading-full-ec" }, { kind: "component", type: BlocksEcComponent, selector: "app-blocks-ec", inputs: ["templates", "show_loading", "section", "blockFilters"] }] });
|
|
9141
9178
|
}
|
|
9142
9179
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DataformEcComponent, decorators: [{
|
|
9143
9180
|
type: Component,
|
|
@@ -9152,7 +9189,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
9152
9189
|
LoadingFullEcComponent,
|
|
9153
9190
|
JsonPipe,
|
|
9154
9191
|
BlocksEcComponent
|
|
9155
|
-
], template: "@if(channel$ | async; as channelConfig){\n@if(channelConfig.channelType != 'b2b' || (channelConfig.channelType == 'b2b' && isAuthenticated())){\n@if( modeSelectAddress == 'LOAD_ADDRESS_AND_SELECTION' && isAuthenticated() && this.addressBook != null){\n<!--Selector de modos-->\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 @if(!getParamByChannelAndLanguage('btn_new_address_')){\n <label [class]=\"'btn btn-outline-secondary ' + (getMode() ? 'active' : '')\">\n <input type=\"radio\" name=\"options\" id=\"option2\" autocomplete=\"off\" (change)=\"setMode('carga')\">\n {{ 'new-address' | translate | titlecase}}\n </label>\n }\n @if(getParamByChannelAndLanguage('btn_new_address_'); as param){\n <label [class]=\"'btn btn-outline-secondary ' + (selectAddress ? 'active' : '')\">\n <input type=\"radio\" name=\"options\" id=\"option2\" autocomplete=\"off\" (change)=\"setMode('carga')\">\n {{ param.value}}\n </label>\n }\n </div>\n </div>\n </div>\n</div>\n}\n\n@if(getMode()){\n@if(!require_login){\n<div>\n @if(modeSelectAddress == 'ONLY_LOAD_ADDRESS'){\n <div class=\"checkout-title my-2\">\n <h3>{{'billing-details'|translate}}</h3>\n </div>\n }\n <!--Formulario-->\n <form [formGroup]=\"checkoutForm\" (submit)=\"verifyValidate($event)\"> <!-- //this.cartService.items -->\n <div class=\"row mt-2\"><!--Fila 1-->\n\n @if(getTypeForm().viewForms.firstName.enabled){\n <div class=\"form-group col-12 col-md-6\">\n <!--Si es required-->\n <label class=\"form-label\">{{'first-name'|translate}}\n @if(getTypeForm().viewForms.firstName.required){\n <span class=\"required\">*</span>\n }\n </label>\n <!--Input-->\n <input class=\"form-control\" type=\"text\" name=\"firstName\" formControlName=\"firstName\" value=\"\"\n placeholder=\"\" autocomplete=\"off\">\n @if(checkoutForm.controls['firstName'].touched &&\n checkoutForm.controls['firstName'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{'first-name-help1'|translate}}</span>\n </div>\n }\n <!--Error info-->\n @if(checkoutForm.controls['firstName'].touched &&\n checkoutForm.controls['firstName'].errors?.['pattern']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">\n {{'first-name-help2'|translate}}\n </span>\n </div>\n }\n </div>\n }\n @if(getTypeForm().viewForms.lastName.enabled){\n <div class=\"form-group col-12 col-md-6\">\n <label class=\"form-label\">{{'last-name'|translate}}\n @if(getTypeForm().viewForms.lastName.required){\n <span class=\"required\">*</span>\n }\n </label>\n <input class=\"form-control\" type=\"text\" name=\"lastName\" formControlName=\"lastName\" value=\"\"\n placeholder=\"\" autocomplete=\"off\">\n @if(checkoutForm.controls['lastName'].touched &&\n checkoutForm.controls['lastName'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{'last-name-help1'|translate}}</span>\n </div>\n }\n @if(checkoutForm.controls['lastName'].touched && checkoutForm.controls['lastName'].errors?.['pattern']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{'last-name-help2'|translate}}</span>\n </div>\n }\n </div>\n }\n </div>\n <div class=\"row mt-2\"><!--Fila 2-->\n @if(getTypeForm().viewForms.phoneNumber.enabled){\n <div class=\"form-group col-12 col-md-6\">\n <label class=\"form-label\">{{'phone'|translate}}\n @if(getTypeForm().viewForms.phoneNumber.required){\n <span class=\"required\">*</span>\n }\n </label>\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"phoneNumber\"\n formControlName='phoneNumber' value=\"\" placeholder=\"\" autocomplete=\"off\">\n @if(checkoutForm.controls['phoneNumber'].touched &&\n checkoutForm.controls['phoneNumber'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">\n {{'phone-help1'|translate}}\n </span>\n </div>\n }\n @if(checkoutForm.controls['phoneNumber'].touched &&\n checkoutForm.controls['phoneNumber'].errors?.['pattern']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">\n {{'phone-help2'|translate}}\n </span>\n </div>\n }\n </div>\n }\n @if(getTypeForm().viewForms.email.enabled){\n <div class=\"form-group col-12 col-md-6\">\n <label class=\"form-label\">{{'email-address'|translate}}\n @if(getTypeForm().viewForms.email.required){\n <span class=\"required\">*</span>\n }</label>\n <input class=\"form-control\" type=\"email\" name=\"email\" formControlName='email' value=\"\" placeholder=\"\"\n autocomplete=\"off\">\n @if(checkoutForm.controls['email'].touched && checkoutForm.controls['email'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">\n {{'email-address-help1'|translate}}\n </span>\n </div>\n }\n @if(checkoutForm.controls['email'].touched && checkoutForm.controls['email'].errors?.['email']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">\n {{'email-address-help2'|translate}}\n </span>\n </div>\n }\n </div>\n }\n </div>\n <div class=\"row mt-2\"><!--Fila 3-->\n @if(getTypeForm().viewForms.countryCode.enabled){\n @if(countries$ | async; as countries){\n <div class=\"form-group col-12 col-md-4\">\n <label class=\"form-label\">{{'country'|translate}}\n @if(getTypeForm().viewForms.countryCode.required){\n <span class=\"required\">*</span>\n }</label>\n <select class=\"form-select\" name=\"countryCode\" formControlName='countryCode'\n (change)=\"onCountrySelected($event)\">\n @for(country of countries; track $index){\n <option [value]=\"country.code\">{{ country.name }}</option>\n }\n </select>\n @if(checkoutForm.controls['countryCode'].touched &&\n checkoutForm.controls['countryCode'].errors?.['required']){\n <div class=\"text text-danger\">\n {{'country-help'|translate}}\n </div>\n }\n </div>\n }\n }\n @if(getTypeForm().viewForms.provinceCode.enabled){\n @if(provinces$ | async; as provinces){\n <div class=\"form-group col-12 col-md-4\">\n <label class=\"form-label\">{{'state'|translate}}\n @if(getTypeForm().viewForms.provinceCode.required){\n <span class=\"required\">*</span>\n }</label>\n <select class=\"form-select\" name=\"provinceCode\" (change)=\"onProvincesSelected($event, provinces)\"\n formControlName='provinceCode'>\n @for(province of provinces; track $index){\n <option [value]=\"province.code\">{{ province.name }}\n </option>\n }\n </select>\n @if(checkoutForm.controls['provinceCode'].touched &&\n checkoutForm.controls['provinceCode'].errors?.['required']){\n <div class=\"text text-danger\">\n {{'state-help'|translate}}\n </div>\n }\n </div>\n }\n }\n @if(getTypeForm().viewForms.city.enabled){\n <div class=\"form-group col-12 col-md-4\">\n <label class=\"form-label\">{{'town-city'|translate}}\n @if(getTypeForm().viewForms.city.required){\n <span class=\"required\">*</span>\n }</label>\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"city\" formControlName='city'\n value=\"\" placeholder=\"\" autocomplete=\"off\">\n @if(checkoutForm.controls['city'].touched && checkoutForm.controls['city'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{'town-city-help'|translate}}</span>\n </div>\n }\n </div>\n }\n </div>\n <div class=\"row mt-df\"><!--Fila 4-->\n @if(getTypeForm().viewForms.street.enabled){\n <div class=\"form-group col-12 col-md-8\">\n <label class=\"field-label\">{{'address'|translate}}\n @if(getTypeForm().viewForms.street.required){\n <span class=\"required\">*</span>\n }\n </label>\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"street\"\n formControlName='street' value=\"\" placeholder=\"\" autocomplete=\"off\">\n @if(checkoutForm.controls['street'].touched && checkoutForm.controls['street'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{'address-help1'|translate}}</span>\n </div>\n }\n @if(checkoutForm.controls['street'].touched && checkoutForm.controls['street'].errors?.['maxlength']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{'address-help2'|translate}}</span>\n </div>\n }\n </div>\n }\n\n <!-- form direcci\u00F3n -->\n @if(getTypeForm().viewForms.postcode.enabled){\n <div class=\"form-group col-12 col-md-4\">\n <label class=\"field-label\">{{'postal-code'|translate}}\n @if(getTypeForm().viewForms.postcode.required){\n <span class=\"required\">*</span>\n }</label>\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"postcode\"\n formControlName='postcode' value=\"\" placeholder=\"\" autocomplete=\"off\">\n @if(checkoutForm.controls['postcode'].touched &&\n checkoutForm.controls['postcode'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{'postal-code-help'|translate}}</span>\n </div>\n }\n @if(checkoutForm.controls['postcode'].touched && checkoutForm.controls['postcode'].errors?.['pattern']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\"> {{'postal-code-pattern-error' | translate}} </span>\n </div>\n }\n </div>\n }\n </div>\n <div class=\"row mt-df\"><!--Fila 5-->\n @if(getTypeForm().viewForms.documentType.enabled){\n @if(documentTypes$ | async; as documentTypes){\n <div class=\"form-group col-12 col-md-4\">\n <label class=\"field-label\">{{'document-type'|translate}}\n @if(getTypeForm().viewForms.documentType.required){\n <span class=\"required\">*</span>\n }</label>\n <select name=\"documentType\" class=\"form-select\" (change)=\"onDocumentTypesSelected($event)\"\n formControlName='documentType'>\n @for(item of documentTypes; track $index){\n <option [value]=\"item.code\">{{item.name}}</option>\n }\n </select>\n @if(checkoutForm.controls['documentType'].touched &&\n checkoutForm.controls['documentType'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">\n {{'type-document-help'|translate}}\n </span>\n </div>\n }\n </div>\n }\n }\n @if(getTypeForm().viewForms.documentNumber.enabled){\n <div class=\"form-group col-12 col-md-4\">\n <label class=\"field-label\">{{'document-number'|translate}}\n @if(getTypeForm().viewForms.documentNumber.required){\n <span class=\"required\">*</span>\n }\n </label>\n <input (change)=\"onInputChange()\" class=\"form-control\" [type]=\"'text'\" name=\"documentNumber\"\n formControlName='documentNumber' min=\"1\" max=\"99999999999\" value=\"\" placeholder=\"\"\n autocomplete=\"off\">\n @if(checkoutForm.controls['documentNumber'].touched &&\n checkoutForm.controls['documentNumber'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">\n {{'document-number-help'|translate}}\n </span>\n </div>\n }\n </div>\n }\n </div>\n <div class=\"row mt-df\"><!--Fila 6-->\n @if(this.channel.checkoutNotesField == 'required' || this.channel.checkoutNotesField == 'show'){\n <div class=\"form-group col-12 col-md-12\">\n @if(!getLabelNotesParam()){\n <label class=\"field-label\">{{'notes'|translate}}\n @if(this.channel.checkoutNotesField == 'required'){\n <span class=\"required\">*</span>\n }\n </label>\n }\n @if(getLabelNotesParam(); as labelnotes){\n <label class=\"field-label\" [innerHTML]=\"labelnotes.value\">\n @if(this.channel.checkoutNotesField == 'required'){\n <span class=\"required\">*</span>\n }\n </label>\n }\n\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"notes\" formControlName='notes'\n value=\"\" placeholder=\"\" autocomplete=\"off\">\n @if(this.channel.checkoutNotesField == 'required' && checkoutForm.controls['notes'].touched &&\n checkoutForm.controls['notes'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{'notes-help'|translate}}</span>\n </div>\n }\n </div>\n }\n </div>\n <div class=\"row mt-df\"><!--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\">\n <div class=\"col-12\">\n <p>\n <label class=\"required text-underline text-danger\">* {{ 'required-fields' | translate }}</label>\n </p>\n </div>\n </div>\n <div class=\"row mt-df\">\n @if(getTypeForm().viewForms.terms.enabled){\n <div class=\"form-group col-12 col-md-12\">\n @if(getTypeForm().viewForms.terms.required){\n <span class=\"required\">*</span>\n }\n <label class=\"\" for=\"\"> {{ 'accept-terms' | translate }} <input class=\"ms-2\" name=\"terms\"\n formControlName='terms' type=\"checkbox\" required (change)=\"onInputChange()\" /> </label><br />\n <button type=\"button\" class=\"btn btn-primary\" data-bs-toggle=\"modal\"\n data-bs-target=\"#terminos-y-condiciones\">\n {{ 'whats-this' | translate }}\n </button>\n @if(checkoutForm.controls['terms'].touched && !checkoutForm.controls['terms'].value){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{ 'must-accept-terms' | translate }}</span>\n </div>\n }\n </div>\n }\n </div>\n @if(!viewDataFacturacion){\n <!--Formulario de Facturaci\u00F3n-->\n <div class=\"card\">\n <div class=\"card-header text-center\">\n <h2>{{ 'billing-data' | translate }}</h2>\n </div>\n <div class=\"card-body\">\n <form [formGroup]=\"checkoutFormFacturacion\">\n <div class=\"row mt-2\"><!--Fila 1-->\n\n @if(getTypeForm().viewForms.firstName.enabled){\n <div class=\"form-group col-12 col-md-6\">\n <!--Si es required-->\n <label class=\"form-label\">{{'first-name'|translate}}\n @if(getTypeForm().viewForms.firstName.required){\n <span class=\"required\">*</span>\n }\n </label>\n <!--Input-->\n <input class=\"form-control\" type=\"text\" name=\"firstName\" formControlName=\"firstName\"\n value=\"\" placeholder=\"\" autocomplete=\"off\">\n @if(checkoutFormFacturacion.controls['firstName'].touched &&\n checkoutFormFacturacion.controls['firstName'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{'first-name-help1'|translate}}</span>\n </div>\n }\n <!--Error info-->\n @if(checkoutFormFacturacion.controls['firstName'].touched &&\n checkoutFormFacturacion.controls['firstName'].errors?.['pattern']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">\n {{'first-name-help2'|translate}}\n </span>\n </div>\n }\n </div>\n }\n @if(getTypeForm().viewForms.lastName.enabled){\n <div class=\"form-group col-12 col-md-6\">\n <label class=\"form-label\">{{'last-name'|translate}}\n @if(getTypeForm().viewForms.lastName.required){\n <span class=\"required\">*</span>\n }\n </label>\n <input class=\"form-control\" type=\"text\" name=\"lastName\" formControlName=\"lastName\" value=\"\"\n placeholder=\"\" autocomplete=\"off\">\n @if(checkoutFormFacturacion.controls['lastName'].touched &&\n checkoutFormFacturacion.controls['lastName'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{'last-name-help1'|translate}}</span>\n </div>\n }\n @if(checkoutFormFacturacion.controls['lastName'].touched &&\n checkoutFormFacturacion.controls['lastName'].errors?.['pattern']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{'last-name-help2'|translate}}</span>\n </div>\n }\n </div>\n }\n </div>\n <div class=\"row mt-2\"><!--Fila 2-->\n @if(getTypeForm().viewForms.phoneNumber.enabled){\n <div class=\"form-group col-12 col-md-6\">\n <label class=\"form-label\">{{'phone'|translate}}\n @if(getTypeForm().viewForms.phoneNumber.required){\n <span class=\"required\">*</span>\n }\n </label>\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"phoneNumber\"\n formControlName='phoneNumber' value=\"\" placeholder=\"\" autocomplete=\"off\">\n @if(checkoutFormFacturacion.controls['phoneNumber'].touched &&\n checkoutFormFacturacion.controls['phoneNumber'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">\n {{'phone-help1'|translate}}\n </span>\n </div>\n }\n @if(checkoutFormFacturacion.controls['phoneNumber'].touched &&\n checkoutFormFacturacion.controls['phoneNumber'].errors?.['pattern']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">\n {{'phone-help2'|translate}}\n </span>\n </div>\n }\n </div>\n }\n @if(getTypeForm().viewForms.email.enabled){\n <div class=\"form-group col-12 col-md-6\">\n <label class=\"form-label\">{{'email-address'|translate}}\n @if(getTypeForm().viewForms.email.required){\n <span class=\"required\">*</span>\n }</label>\n <input class=\"form-control\" type=\"email\" name=\"email\" formControlName='email' value=\"\"\n placeholder=\"\" autocomplete=\"off\">\n @if(checkoutFormFacturacion.controls['email'].touched &&\n checkoutFormFacturacion.controls['email'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">\n {{'email-address-help1'|translate}}\n </span>\n </div>\n }\n @if(checkoutFormFacturacion.controls['email'].touched &&\n checkoutFormFacturacion.controls['email'].errors?.['email']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">\n {{'email-address-help2'|translate}}\n </span>\n </div>\n }\n </div>\n }\n </div>\n <div class=\"row mt-2\"><!--Fila 3-->\n @if(getTypeForm().viewForms.countryCode.enabled){\n @if(countries$ | async; as countries){\n <div class=\"form-group col-12 col-md-4\">\n <label class=\"form-label\">{{'country'|translate}}\n @if(getTypeForm().viewForms.countryCode.required){\n <span class=\"required\">*</span>\n }</label>\n <select class=\"form-select\" name=\"countryCode\" formControlName='countryCode'\n (change)=\"onCountrySelected($event, true)\">\n @for(country of countries; track $index){\n <option [value]=\"country.code\">{{ country.name }}</option>\n }\n </select>\n @if(checkoutFormFacturacion.controls['countryCode'].touched &&\n checkoutFormFacturacion.controls['countryCode'].errors?.['required']){\n <div class=\"text text-danger\">\n {{'country-help'|translate}}\n </div>\n }\n </div>\n }\n }\n @if(getTypeForm().viewForms.provinceCode.enabled){\n @if(provinces$ | async; as provinces){\n <div class=\"form-group col-12 col-md-4\">\n <label class=\"form-label\">{{'state'|translate}}\n @if(getTypeForm().viewForms.provinceCode.required){\n <span class=\"required\">*</span>\n }</label>\n <select class=\"form-select\" name=\"provinceCode\"\n (change)=\"onProvincesSelected($event, provinces, true)\" formControlName='provinceCode'>\n @for(province of provinces; track $index){\n <option [value]=\"province.code\">{{ province.name }}\n </option>\n }\n </select>\n @if(checkoutFormFacturacion.controls['provinceCode'].touched &&\n checkoutFormFacturacion.controls['provinceCode'].errors?.['required']){\n <div class=\"text text-danger\">\n {{'state-help'|translate}}\n </div>\n }\n </div>\n }\n }\n @if(getTypeForm().viewForms.city.enabled){\n <div class=\"form-group col-12 col-md-4\">\n <label class=\"form-label\">{{'town-city'|translate}}\n @if(getTypeForm().viewForms.city.required){\n <span class=\"required\">*</span>\n }</label>\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"city\"\n formControlName='city' value=\"\" placeholder=\"\" autocomplete=\"off\">\n @if(checkoutFormFacturacion.controls['city'].touched &&\n checkoutFormFacturacion.controls['city'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{'town-city-help'|translate}}</span>\n </div>\n }\n </div>\n }\n </div>\n <div class=\"row mt-df\"><!--Fila 4-->\n @if(getTypeForm().viewForms.street.enabled){\n <div class=\"form-group col-12 col-md-8\">\n <label class=\"field-label\">{{'address'|translate}}\n @if(getTypeForm().viewForms.street.required){\n <span class=\"required\">*</span>\n }\n </label>\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"street\"\n formControlName='street' value=\"\" placeholder=\"\" autocomplete=\"off\">\n @if(checkoutFormFacturacion.controls['street'].touched &&\n checkoutFormFacturacion.controls['street'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{'address-help1'|translate}}</span>\n </div>\n }\n @if(checkoutFormFacturacion.controls['street'].touched &&\n checkoutFormFacturacion.controls['street'].errors?.['maxlength']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{'address-help2'|translate}}</span>\n </div>\n }\n </div>\n }\n\n <!-- form direcci\u00F3n -->\n @if(getTypeForm().viewForms.postcode.enabled){\n <div class=\"form-group col-12 col-md-4\">\n <label class=\"field-label\">{{'postal-code'|translate}}\n @if(getTypeForm().viewForms.postcode.required){\n <span class=\"required\">*</span>\n }</label>\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"postcode\"\n formControlName='postcode' value=\"\" placeholder=\"\" autocomplete=\"off\">\n @if(checkoutFormFacturacion.controls['postcode'].touched &&\n checkoutFormFacturacion.controls['postcode'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{'postal-code-help'|translate}}</span>\n </div>\n }\n @if(checkoutFormFacturacion.controls['postcode'].touched &&\n checkoutFormFacturacion.controls['postcode'].errors?.['pattern']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\"> {{'postal-code-pattern-error' | translate}} </span>\n </div>\n }\n </div>\n }\n </div>\n <div class=\"row mt-df\"><!--Fila 5-->\n @if(getTypeForm().viewForms.documentType.enabled){\n @if(documentTypes$ | async; as documentTypes){\n <div class=\"form-group col-12 col-md-4\">\n <label class=\"field-label\">{{'document-type'|translate}}\n @if(getTypeForm().viewForms.documentType.required){\n <span class=\"required\">*</span>\n }</label>\n <select name=\"documentType\" class=\"form-select\"\n (change)=\"onDocumentTypesSelected($event, true)\" formControlName='documentType'>\n @for(item of documentTypes; track $index){\n <option [value]=\"item.code\">{{item.name}}</option>\n }\n </select>\n @if(checkoutFormFacturacion.controls['documentType'].touched &&\n checkoutFormFacturacion.controls['documentType'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">\n {{'type-document-help'|translate}}\n </span>\n </div>\n }\n </div>\n }\n }\n @if(getTypeForm().viewForms.documentNumber.enabled){\n <div class=\"form-group col-12 col-md-4\">\n <label class=\"field-label\">{{'document-number'|translate}}\n @if(getTypeForm().viewForms.documentNumber.required){\n <span class=\"required\">*</span>\n }\n </label>\n <input (change)=\"onInputChange()\" class=\"form-control\" [type]=\"'text'\" name=\"documentNumber\"\n formControlName='documentNumber' min=\"1\" max=\"99999999999\" value=\"\" placeholder=\"\"\n autocomplete=\"off\">\n @if(checkoutFormFacturacion.controls['documentNumber'].touched &&\n checkoutFormFacturacion.controls['documentNumber'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">\n {{'document-number-help'|translate}}\n </span>\n </div>\n }\n </div>\n }\n </div>\n <div class=\"row mt-df\"><!--Fila 6-->\n @if(this.channel.checkoutNotesField == 'required' || this.channel.checkoutNotesField == 'show'){\n <div class=\"form-group col-12 col-md-12\">\n @if(!getLabelNotesParam()){\n <label class=\"field-label\">{{'notes'|translate}}\n @if(this.channel.checkoutNotesField == 'required'){\n <span class=\"required\">*</span>\n }\n </label>\n }\n @if(getLabelNotesParam(); as labelnotes){\n <label class=\"field-label\" [innerHTML]=\"labelnotes.value\">\n @if(this.channel.checkoutNotesField == 'required'){\n <span class=\"required\">*</span>\n }\n </label>\n }\n\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"notes\"\n formControlName='notes' value=\"\" placeholder=\"\" autocomplete=\"off\">\n @if(this.channel.checkoutNotesField == 'required' &&\n checkoutFormFacturacion.controls['notes'].touched &&\n checkoutFormFacturacion.controls['notes'].errors?.['required']){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{'notes-help'|translate}}</span>\n </div>\n }\n </div>\n }\n </div>\n </form>\n </div>\n </div>\n }\n <div class=\"row d-flex flex-row\">\n <div class=\"col-12 d-flex justify-content-end\">\n <button type=\"submit\" class=\"btn btn-primary text-white\"\n [disabled]=\"checkoutForm.invalid || (this.channel.checkoutNotesField == 'required' && (!checkoutForm.get('notes')?.value || checkoutForm.get('notes')?.value.trim() === '')) || (!viewDataFacturacion && checkoutFormFacturacion && (checkoutFormFacturacion.invalid || (this.channel.checkoutNotesField == 'required' && (!checkoutFormFacturacion.get('notes')?.value || checkoutFormFacturacion.get('notes')?.value.trim() === ''))))\">{{(isLastOne\n ? 'finish-checkout' : (allready_data ? 'update' :\n 'ready-form')) | translate}}\n <!-- {{(allready_data ? 'update' : (isLastOne ? 'finish-checkout' : 'ready-form')) | translate}} -->\n </button>\n </div>\n </div>\n @if(loading){\n <div class=\"d-flex flex-column justify-content-center align-items-center\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n }\n\n </form>\n</div>\n} @else {\n<div id=\"loginCheckout\">\n @if(require_login){\n <div class=\"d-flex flex-column justify-content-center align-items-center my-5 \">\n <div class=\"col-12 col-md-6 \">\n <app-login-form-ec (ready)=\"verifyValidate($event)\" [redirect]=\"false\" [title]=\"'need-login'\">\n </app-login-form-ec>\n </div>\n </div>\n }\n</div>\n}\n} @else {\n@if(modeSelectAddress == 'ONLY_ADDRESS_SELECTION'){\n<div class=\"checkout-title my-2\">\n <h3>{{'address-selection'|translate}}</h3>\n</div>\n}\n\n@if(this.addressBook){\n@if(this.addressBook?.length){\n<div class=\"container\">\n <div class=\"row\">\n @for(item of addressBook; track $index; let i = $index){\n <div class=\"col-sm-6 col-12 my-3\">\n <div class=\"card p-3\">\n <input class=\"ms-1 mt-3 form-check-input input-size-lg\" type=\"radio\" [name]=\"'n-'+i\" [id]=\"i\"\n [checked]=\"item.selected\" (click)=\"setSelectAddress(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 <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 </div>\n }\n\n </div>\n\n <div class=\"w-100\">\n @if(this.channel.checkoutNotesField == 'required' || this.channel.checkoutNotesField == 'show'){\n <div class=\"row mt-df\">\n <div class=\"form-group col-12 col-md-12\">\n @if(!getLabelNotesParam()){\n <label class=\"form-label\">{{'notes'|translate}}\n @if(this.channel.checkoutNotesField == 'required'){\n <span class=\"required\">*</span>\n }\n </label>\n }\n @if(getLabelNotesParam(); as labelnotes){\n <label class=\"form-label\" [innerHTML]=\"labelnotes.value\">\n @if(this.channel.checkoutNotesField == 'required'){\n <span class=\"required\">*</span>\n }\n </label>\n }\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"notes\"\n [(ngModel)]=\"this.addressBookSelected.notes\" #ctrl=\"ngModel\" value=\"\" placeholder=\"\"\n autocomplete=\"off\" [required]=\"this.channel.checkoutNotesField == 'required'\">\n @if(this.channel.checkoutNotesField == 'required' && ctrl.touched && ctrl.invalid){\n <div class=\"text-danger-container\">\n <span class=\"text-danger\">{{'notes-help'|translate}}</span>\n </div>\n }\n </div>\n </div>\n }\n </div>\n <div class=\"row d-flex flex-row\">\n <div class=\"col-12 d-flex justify-content-end\">\n <button (click)=\"onSelectAddress(cartItems)\" class=\"btn btn-primary text-white\"\n [disabled]=\"loadingStep || (this.channel.checkoutNotesField == 'required' && (!this.addressBookSelected.notes || this.addressBookSelected.notes.trim() === ''))\">{{(isLastOne\n ? 'finish-checkout' : (allready_data ? 'update' :\n 'ready-form')) | translate}}\n <!-- {{(allready_data ? 'update' : (isLastOne ? 'finish-checkout' : 'ready-form')) | translate}} -->\n </button>\n\n </div>\n </div>\n @if(loading){\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 }\n</div>\n} @else {\n<div class=\"container\">\n <div class=\"row\">\n <div class=\"col-12 text-center my-2\">\n <div class=\"d-flex flex-column justify-content-center align-items-center\">\n <app-loading-full-ec></app-loading-full-ec>\n </div>\n </div>\n </div>\n</div>\n}\n} @else {\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}\n\n}\n\n}\n@else {\n<div class=\"container\">\n <p>Por favor <a [routerLink]=\"['/auth/login']\"> Inicie Sesi\u00F3n</a></p>\n</div>\n}\n}\n@if(getTypeForm().viewForms.terms.enabled){\n<div class=\"modal fade\" id=\"terminos-y-condiciones\" tabindex=\"-1\" aria-labelledby=\"modalLabel\" aria-hidden=\"true\">\n <div class=\"modal-dialog modal-xl modal-dialog-scrollable\">\n <div class=\"modal-content\">\n <div class=\"modal-header\">\n <h5 class=\"modal-title\" id=\"modalLabel\">T\u00E9rminos y condiciones</h5>\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\n </div>\n <div class=\"modal-body\">\n <app-blocks-ec [section]=\"'terminos-y-condiciones'\" />\n </div>\n </div>\n </div>\n</div>\n}" }]
|
|
9192
|
+
], template: "@if(channel$ | async; as channelConfig){\r\n@if(channelConfig.channelType != 'b2b' || (channelConfig.channelType == 'b2b' && isAuthenticated())){\r\n@if( modeSelectAddress == 'LOAD_ADDRESS_AND_SELECTION' && isAuthenticated() && this.addressBook != null){\r\n<!--Selector de modos-->\r\n<div class=\"container card p-4 mb-3\">\r\n <div class=\"row justify-content-center\">\r\n <div class=\"col-12 col-md-10 col-lg-8 text-center\">\r\n <div class=\"btn-group btn-group-toggle\" data-bs-toggle=\"buttons\">\r\n <label [class]=\"'btn btn-outline-secondary ' + (!getMode() ? 'active' : '')\">\r\n <input type=\"radio\" name=\"options\" id=\"option1\" autocomplete=\"off\" checked\r\n (change)=\"setMode('seleccion')\"> {{'select-address' | translate | titlecase}}\r\n </label>\r\n @if(!getParamByChannelAndLanguage('btn_new_address_')){\r\n <label [class]=\"'btn btn-outline-secondary ' + (getMode() ? 'active' : '')\">\r\n <input type=\"radio\" name=\"options\" id=\"option2\" autocomplete=\"off\" (change)=\"setMode('carga')\">\r\n {{ 'new-address' | translate | titlecase}}\r\n </label>\r\n }\r\n @if(getParamByChannelAndLanguage('btn_new_address_'); as param){\r\n <label [class]=\"'btn btn-outline-secondary ' + (selectAddress ? 'active' : '')\">\r\n <input type=\"radio\" name=\"options\" id=\"option2\" autocomplete=\"off\" (change)=\"setMode('carga')\">\r\n {{ param.value}}\r\n </label>\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n}\r\n\r\n@if(getMode()){\r\n@if(!require_login){\r\n<div>\r\n @if(modeSelectAddress == 'ONLY_LOAD_ADDRESS'){\r\n <div class=\"checkout-title my-2\">\r\n <h3>{{'billing-details'|translate}}</h3>\r\n </div>\r\n }\r\n <!--Formulario-->\r\n <form [formGroup]=\"checkoutForm\" (submit)=\"verifyValidate($event)\"> <!-- //this.cartService.items -->\r\n <div class=\"row mt-2\"><!--Fila 1-->\r\n\r\n @if(getTypeForm().viewForms.firstName.enabled){\r\n <div class=\"form-group col-12 col-md-6\">\r\n <!--Si es required-->\r\n <label class=\"form-label\">{{'first-name'|translate}}\r\n @if(getTypeForm().viewForms.firstName.required){\r\n <span class=\"required\">*</span>\r\n }\r\n </label>\r\n <!--Input-->\r\n <input class=\"form-control\" type=\"text\" name=\"firstName\" formControlName=\"firstName\" value=\"\"\r\n placeholder=\"\" autocomplete=\"off\">\r\n @if(checkoutForm.controls['firstName'].touched &&\r\n checkoutForm.controls['firstName'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{'first-name-help1'|translate}}</span>\r\n </div>\r\n }\r\n <!--Error info-->\r\n @if(checkoutForm.controls['firstName'].touched &&\r\n checkoutForm.controls['firstName'].errors?.['pattern']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">\r\n {{'first-name-help2'|translate}}\r\n </span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n @if(getTypeForm().viewForms.lastName.enabled){\r\n <div class=\"form-group col-12 col-md-6\">\r\n <label class=\"form-label\">{{'last-name'|translate}}\r\n @if(getTypeForm().viewForms.lastName.required){\r\n <span class=\"required\">*</span>\r\n }\r\n </label>\r\n <input class=\"form-control\" type=\"text\" name=\"lastName\" formControlName=\"lastName\" value=\"\"\r\n placeholder=\"\" autocomplete=\"off\">\r\n @if(checkoutForm.controls['lastName'].touched &&\r\n checkoutForm.controls['lastName'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{'last-name-help1'|translate}}</span>\r\n </div>\r\n }\r\n @if(checkoutForm.controls['lastName'].touched && checkoutForm.controls['lastName'].errors?.['pattern']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{'last-name-help2'|translate}}</span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n <div class=\"row mt-2\"><!--Fila 2-->\r\n @if(getTypeForm().viewForms.phoneNumber.enabled){\r\n <div class=\"form-group col-12 col-md-6\">\r\n <label class=\"form-label\">{{'phone'|translate}}\r\n @if(getTypeForm().viewForms.phoneNumber.required){\r\n <span class=\"required\">*</span>\r\n }\r\n </label>\r\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"phoneNumber\"\r\n formControlName='phoneNumber' value=\"\" placeholder=\"\" autocomplete=\"off\">\r\n @if(checkoutForm.controls['phoneNumber'].touched &&\r\n checkoutForm.controls['phoneNumber'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">\r\n {{'phone-help1'|translate}}\r\n </span>\r\n </div>\r\n }\r\n @if(checkoutForm.controls['phoneNumber'].touched &&\r\n checkoutForm.controls['phoneNumber'].errors?.['pattern']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">\r\n {{'phone-help2'|translate}}\r\n </span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n @if(getTypeForm().viewForms.email.enabled){\r\n <div class=\"form-group col-12 col-md-6\">\r\n <label class=\"form-label\">{{'email-address'|translate}}\r\n @if(getTypeForm().viewForms.email.required){\r\n <span class=\"required\">*</span>\r\n }</label>\r\n <input class=\"form-control\" type=\"email\" name=\"email\" formControlName='email' value=\"\" placeholder=\"\"\r\n autocomplete=\"off\">\r\n @if(checkoutForm.controls['email'].touched && checkoutForm.controls['email'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">\r\n {{'email-address-help1'|translate}}\r\n </span>\r\n </div>\r\n }\r\n @if(checkoutForm.controls['email'].touched && checkoutForm.controls['email'].errors?.['email']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">\r\n {{'email-address-help2'|translate}}\r\n </span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n <div class=\"row mt-2\"><!--Fila 3-->\r\n @if(getTypeForm().viewForms.countryCode.enabled){\r\n @if(countries$ | async; as countries){\r\n <div class=\"form-group col-12 col-md-4\">\r\n <label class=\"form-label\">{{'country'|translate}}\r\n @if(getTypeForm().viewForms.countryCode.required){\r\n <span class=\"required\">*</span>\r\n }</label>\r\n <select class=\"form-select\" name=\"countryCode\" formControlName='countryCode'\r\n (change)=\"onCountrySelected($event)\">\r\n @for(country of countries; track $index){\r\n <option [value]=\"country.code\">{{ country.name }}</option>\r\n }\r\n </select>\r\n @if(checkoutForm.controls['countryCode'].touched &&\r\n checkoutForm.controls['countryCode'].errors?.['required']){\r\n <div class=\"text text-danger\">\r\n {{'country-help'|translate}}\r\n </div>\r\n }\r\n </div>\r\n }\r\n }\r\n @if(getTypeForm().viewForms.provinceCode.enabled){\r\n @if(provinces$ | async; as provinces){\r\n <div class=\"form-group col-12 col-md-4\">\r\n <label class=\"form-label\">{{'state'|translate}}\r\n @if(getTypeForm().viewForms.provinceCode.required){\r\n <span class=\"required\">*</span>\r\n }</label>\r\n <select class=\"form-select\" name=\"provinceCode\" (change)=\"onProvincesSelected($event, provinces)\"\r\n formControlName='provinceCode'>\r\n <option value=\"\">{{'select-state'|translate}}</option>\r\n @for(province of provinces; track $index){\r\n <option [value]=\"province.code\">{{ province.name }}\r\n </option>\r\n }\r\n </select>\r\n @if(checkoutForm.controls['provinceCode'].touched &&\r\n checkoutForm.controls['provinceCode'].errors?.['required']){\r\n <div class=\"text text-danger\">\r\n {{'state-help'|translate}}\r\n </div>\r\n }\r\n </div>\r\n }\r\n }\r\n @if(getTypeForm().viewForms.city.enabled){\r\n <div class=\"form-group col-12 col-md-4\">\r\n <label class=\"form-label\">{{'town-city'|translate}}\r\n @if(getTypeForm().viewForms.city.required){\r\n <span class=\"required\">*</span>\r\n }</label>\r\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"city\" formControlName='city'\r\n value=\"\" placeholder=\"\" autocomplete=\"off\">\r\n @if(checkoutForm.controls['city'].touched && checkoutForm.controls['city'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{'town-city-help'|translate}}</span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n <div class=\"row mt-df\"><!--Fila 4-->\r\n @if(getTypeForm().viewForms.street.enabled){\r\n <div class=\"form-group col-12 col-md-8\">\r\n <label class=\"field-label\">{{'address'|translate}}\r\n @if(getTypeForm().viewForms.street.required){\r\n <span class=\"required\">*</span>\r\n }\r\n </label>\r\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"street\"\r\n formControlName='street' value=\"\" placeholder=\"\" autocomplete=\"off\">\r\n @if(checkoutForm.controls['street'].touched && checkoutForm.controls['street'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{'address-help1'|translate}}</span>\r\n </div>\r\n }\r\n @if(checkoutForm.controls['street'].touched && checkoutForm.controls['street'].errors?.['maxlength']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{'address-help2'|translate}}</span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n\r\n <!-- form direcci\u00F3n -->\r\n @if(getTypeForm().viewForms.postcode.enabled){\r\n <div class=\"form-group col-12 col-md-4\">\r\n <label class=\"field-label\">{{'postal-code'|translate}}\r\n @if(getTypeForm().viewForms.postcode.required){\r\n <span class=\"required\">*</span>\r\n }</label>\r\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"postcode\"\r\n formControlName='postcode' value=\"\" placeholder=\"\" autocomplete=\"off\">\r\n @if(checkoutForm.controls['postcode'].touched &&\r\n checkoutForm.controls['postcode'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{'postal-code-help'|translate}}</span>\r\n </div>\r\n }\r\n @if(checkoutForm.controls['postcode'].touched && checkoutForm.controls['postcode'].errors?.['pattern']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\"> {{'postal-code-pattern-error' | translate}} </span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n <div class=\"row mt-df\"><!--Fila 5-->\r\n @if(getTypeForm().viewForms.documentType.enabled){\r\n @if(documentTypes$ | async; as documentTypes){\r\n <div class=\"form-group col-12 col-md-4\">\r\n <label class=\"field-label\">{{'document-type'|translate}}\r\n @if(getTypeForm().viewForms.documentType.required){\r\n <span class=\"required\">*</span>\r\n }</label>\r\n <select name=\"documentType\" class=\"form-select\" (change)=\"onDocumentTypesSelected($event)\"\r\n formControlName='documentType'>\r\n @for(item of documentTypes; track $index){\r\n <option [value]=\"item.code\">{{item.name}}</option>\r\n }\r\n </select>\r\n @if(checkoutForm.controls['documentType'].touched &&\r\n checkoutForm.controls['documentType'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">\r\n {{'type-document-help'|translate}}\r\n </span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n }\r\n @if(getTypeForm().viewForms.documentNumber.enabled){\r\n <div class=\"form-group col-12 col-md-4\">\r\n <label class=\"field-label\">{{'document-number'|translate}}\r\n @if(getTypeForm().viewForms.documentNumber.required){\r\n <span class=\"required\">*</span>\r\n }\r\n </label>\r\n <input (change)=\"onInputChange()\" class=\"form-control\" [type]=\"'text'\" name=\"documentNumber\"\r\n formControlName='documentNumber' min=\"1\" max=\"99999999999\" value=\"\" placeholder=\"\"\r\n autocomplete=\"off\">\r\n @if(checkoutForm.controls['documentNumber'].touched &&\r\n checkoutForm.controls['documentNumber'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">\r\n {{'document-number-help'|translate}}\r\n </span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n <div class=\"row mt-df\"><!--Fila 6-->\r\n @if(this.channel.checkoutNotesField == 'required' || this.channel.checkoutNotesField == 'show'){\r\n <div class=\"form-group col-12 col-md-12\">\r\n @if(!getLabelNotesParam()){\r\n <label class=\"field-label\">{{'notes'|translate}}\r\n @if(this.channel.checkoutNotesField == 'required'){\r\n <span class=\"required\">*</span>\r\n }\r\n </label>\r\n }\r\n @if(getLabelNotesParam(); as labelnotes){\r\n <label class=\"field-label\" [innerHTML]=\"labelnotes.value\">\r\n @if(this.channel.checkoutNotesField == 'required'){\r\n <span class=\"required\">*</span>\r\n }\r\n </label>\r\n }\r\n\r\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"notes\" formControlName='notes'\r\n value=\"\" placeholder=\"\" autocomplete=\"off\">\r\n @if(this.channel.checkoutNotesField == 'required' && checkoutForm.controls['notes'].touched &&\r\n checkoutForm.controls['notes'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{'notes-help'|translate}}</span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n <div class=\"row mt-df\"><!--Fila 7-->\r\n <div class=\"form-group col-12 col-md-12\">\r\n <label for=\"formFact\"><b>{{ 'same-billing-address' | translate }}</b> <input type=\"checkbox\"\r\n class=\"ms-2\" [checked]=\"viewDataFacturacion\" (change)=\"showFormFacturacion()\"\r\n id=\"formFact\"></label>\r\n </div>\r\n </div>\r\n <div class=\"row mt-df\">\r\n <div class=\"col-12\">\r\n <p>\r\n <label class=\"required text-underline text-danger\">* {{ 'required-fields' | translate }}</label>\r\n </p>\r\n </div>\r\n </div>\r\n <div class=\"row mt-df\">\r\n @if(getTypeForm().viewForms.terms.enabled){\r\n <div class=\"form-group col-12 col-md-12\">\r\n @if(getTypeForm().viewForms.terms.required){\r\n <span class=\"required\">*</span>\r\n }\r\n <label class=\"\" for=\"\"> {{ 'accept-terms' | translate }} <input class=\"ms-2\" name=\"terms\"\r\n formControlName='terms' type=\"checkbox\" required (change)=\"onInputChange()\" /> </label><br />\r\n <button type=\"button\" class=\"btn btn-primary\" data-bs-toggle=\"modal\"\r\n data-bs-target=\"#terminos-y-condiciones\">\r\n {{ 'whats-this' | translate }}\r\n </button>\r\n @if(checkoutForm.controls['terms'].touched && !checkoutForm.controls['terms'].value){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{ 'must-accept-terms' | translate }}</span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n @if(!viewDataFacturacion){\r\n <!--Formulario de Facturaci\u00F3n-->\r\n <div class=\"card\">\r\n <div class=\"card-header text-center\">\r\n <h2>{{ 'billing-data' | translate }}</h2>\r\n </div>\r\n <div class=\"card-body\">\r\n <form [formGroup]=\"checkoutFormFacturacion\">\r\n <div class=\"row mt-2\"><!--Fila 1-->\r\n\r\n @if(getTypeForm().viewForms.firstName.enabled){\r\n <div class=\"form-group col-12 col-md-6\">\r\n <!--Si es required-->\r\n <label class=\"form-label\">{{'first-name'|translate}}\r\n @if(getTypeForm().viewForms.firstName.required){\r\n <span class=\"required\">*</span>\r\n }\r\n </label>\r\n <!--Input-->\r\n <input class=\"form-control\" type=\"text\" name=\"firstName\" formControlName=\"firstName\"\r\n value=\"\" placeholder=\"\" autocomplete=\"off\">\r\n @if(checkoutFormFacturacion.controls['firstName'].touched &&\r\n checkoutFormFacturacion.controls['firstName'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{'first-name-help1'|translate}}</span>\r\n </div>\r\n }\r\n <!--Error info-->\r\n @if(checkoutFormFacturacion.controls['firstName'].touched &&\r\n checkoutFormFacturacion.controls['firstName'].errors?.['pattern']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">\r\n {{'first-name-help2'|translate}}\r\n </span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n @if(getTypeForm().viewForms.lastName.enabled){\r\n <div class=\"form-group col-12 col-md-6\">\r\n <label class=\"form-label\">{{'last-name'|translate}}\r\n @if(getTypeForm().viewForms.lastName.required){\r\n <span class=\"required\">*</span>\r\n }\r\n </label>\r\n <input class=\"form-control\" type=\"text\" name=\"lastName\" formControlName=\"lastName\" value=\"\"\r\n placeholder=\"\" autocomplete=\"off\">\r\n @if(checkoutFormFacturacion.controls['lastName'].touched &&\r\n checkoutFormFacturacion.controls['lastName'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{'last-name-help1'|translate}}</span>\r\n </div>\r\n }\r\n @if(checkoutFormFacturacion.controls['lastName'].touched &&\r\n checkoutFormFacturacion.controls['lastName'].errors?.['pattern']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{'last-name-help2'|translate}}</span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n <div class=\"row mt-2\"><!--Fila 2-->\r\n @if(getTypeForm().viewForms.phoneNumber.enabled){\r\n <div class=\"form-group col-12 col-md-6\">\r\n <label class=\"form-label\">{{'phone'|translate}}\r\n @if(getTypeForm().viewForms.phoneNumber.required){\r\n <span class=\"required\">*</span>\r\n }\r\n </label>\r\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"phoneNumber\"\r\n formControlName='phoneNumber' value=\"\" placeholder=\"\" autocomplete=\"off\">\r\n @if(checkoutFormFacturacion.controls['phoneNumber'].touched &&\r\n checkoutFormFacturacion.controls['phoneNumber'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">\r\n {{'phone-help1'|translate}}\r\n </span>\r\n </div>\r\n }\r\n @if(checkoutFormFacturacion.controls['phoneNumber'].touched &&\r\n checkoutFormFacturacion.controls['phoneNumber'].errors?.['pattern']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">\r\n {{'phone-help2'|translate}}\r\n </span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n @if(getTypeForm().viewForms.email.enabled){\r\n <div class=\"form-group col-12 col-md-6\">\r\n <label class=\"form-label\">{{'email-address'|translate}}\r\n @if(getTypeForm().viewForms.email.required){\r\n <span class=\"required\">*</span>\r\n }</label>\r\n <input class=\"form-control\" type=\"email\" name=\"email\" formControlName='email' value=\"\"\r\n placeholder=\"\" autocomplete=\"off\">\r\n @if(checkoutFormFacturacion.controls['email'].touched &&\r\n checkoutFormFacturacion.controls['email'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">\r\n {{'email-address-help1'|translate}}\r\n </span>\r\n </div>\r\n }\r\n @if(checkoutFormFacturacion.controls['email'].touched &&\r\n checkoutFormFacturacion.controls['email'].errors?.['email']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">\r\n {{'email-address-help2'|translate}}\r\n </span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n <div class=\"row mt-2\"><!--Fila 3-->\r\n @if(getTypeForm().viewForms.countryCode.enabled){\r\n @if(countries$ | async; as countries){\r\n <div class=\"form-group col-12 col-md-4\">\r\n <label class=\"form-label\">{{'country'|translate}}\r\n @if(getTypeForm().viewForms.countryCode.required){\r\n <span class=\"required\">*</span>\r\n }</label>\r\n <select class=\"form-select\" name=\"countryCode\" formControlName='countryCode'\r\n (change)=\"onCountrySelected($event, true)\">\r\n @for(country of countries; track $index){\r\n <option [value]=\"country.code\">{{ country.name }}</option>\r\n }\r\n </select>\r\n @if(checkoutFormFacturacion.controls['countryCode'].touched &&\r\n checkoutFormFacturacion.controls['countryCode'].errors?.['required']){\r\n <div class=\"text text-danger\">\r\n {{'country-help'|translate}}\r\n </div>\r\n }\r\n </div>\r\n }\r\n }\r\n @if(getTypeForm().viewForms.provinceCode.enabled){\r\n @if(provinces$ | async; as provinces){\r\n <div class=\"form-group col-12 col-md-4\">\r\n <label class=\"form-label\">{{'state'|translate}}\r\n @if(getTypeForm().viewForms.provinceCode.required){\r\n <span class=\"required\">*</span>\r\n }</label>\r\n <select class=\"form-select\" name=\"provinceCode\"\r\n (change)=\"onProvincesSelected($event, provinces, true)\" formControlName='provinceCode'>\r\n <option value=\"\">{{'select-state'|translate}}</option>\r\n @for(province of provinces; track $index){\r\n <option [value]=\"province.code\">{{ province.name }}\r\n </option>\r\n }\r\n </select>\r\n @if(checkoutFormFacturacion.controls['provinceCode'].touched &&\r\n checkoutFormFacturacion.controls['provinceCode'].errors?.['required']){\r\n <div class=\"text text-danger\">\r\n {{'state-help'|translate}}\r\n </div>\r\n }\r\n </div>\r\n }\r\n }\r\n @if(getTypeForm().viewForms.city.enabled){\r\n <div class=\"form-group col-12 col-md-4\">\r\n <label class=\"form-label\">{{'town-city'|translate}}\r\n @if(getTypeForm().viewForms.city.required){\r\n <span class=\"required\">*</span>\r\n }</label>\r\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"city\"\r\n formControlName='city' value=\"\" placeholder=\"\" autocomplete=\"off\">\r\n @if(checkoutFormFacturacion.controls['city'].touched &&\r\n checkoutFormFacturacion.controls['city'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{'town-city-help'|translate}}</span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n <div class=\"row mt-df\"><!--Fila 4-->\r\n @if(getTypeForm().viewForms.street.enabled){\r\n <div class=\"form-group col-12 col-md-8\">\r\n <label class=\"field-label\">{{'address'|translate}}\r\n @if(getTypeForm().viewForms.street.required){\r\n <span class=\"required\">*</span>\r\n }\r\n </label>\r\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"street\"\r\n formControlName='street' value=\"\" placeholder=\"\" autocomplete=\"off\">\r\n @if(checkoutFormFacturacion.controls['street'].touched &&\r\n checkoutFormFacturacion.controls['street'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{'address-help1'|translate}}</span>\r\n </div>\r\n }\r\n @if(checkoutFormFacturacion.controls['street'].touched &&\r\n checkoutFormFacturacion.controls['street'].errors?.['maxlength']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{'address-help2'|translate}}</span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n\r\n <!-- form direcci\u00F3n -->\r\n @if(getTypeForm().viewForms.postcode.enabled){\r\n <div class=\"form-group col-12 col-md-4\">\r\n <label class=\"field-label\">{{'postal-code'|translate}}\r\n @if(getTypeForm().viewForms.postcode.required){\r\n <span class=\"required\">*</span>\r\n }</label>\r\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"postcode\"\r\n formControlName='postcode' value=\"\" placeholder=\"\" autocomplete=\"off\">\r\n @if(checkoutFormFacturacion.controls['postcode'].touched &&\r\n checkoutFormFacturacion.controls['postcode'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{'postal-code-help'|translate}}</span>\r\n </div>\r\n }\r\n @if(checkoutFormFacturacion.controls['postcode'].touched &&\r\n checkoutFormFacturacion.controls['postcode'].errors?.['pattern']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\"> {{'postal-code-pattern-error' | translate}} </span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n <div class=\"row mt-df\"><!--Fila 5-->\r\n @if(getTypeForm().viewForms.documentType.enabled){\r\n @if(documentTypes$ | async; as documentTypes){\r\n <div class=\"form-group col-12 col-md-4\">\r\n <label class=\"field-label\">{{'document-type'|translate}}\r\n @if(getTypeForm().viewForms.documentType.required){\r\n <span class=\"required\">*</span>\r\n }</label>\r\n <select name=\"documentType\" class=\"form-select\"\r\n (change)=\"onDocumentTypesSelected($event, true)\" formControlName='documentType'>\r\n @for(item of documentTypes; track $index){\r\n <option [value]=\"item.code\">{{item.name}}</option>\r\n }\r\n </select>\r\n @if(checkoutFormFacturacion.controls['documentType'].touched &&\r\n checkoutFormFacturacion.controls['documentType'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">\r\n {{'type-document-help'|translate}}\r\n </span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n }\r\n @if(getTypeForm().viewForms.documentNumber.enabled){\r\n <div class=\"form-group col-12 col-md-4\">\r\n <label class=\"field-label\">{{'document-number'|translate}}\r\n @if(getTypeForm().viewForms.documentNumber.required){\r\n <span class=\"required\">*</span>\r\n }\r\n </label>\r\n <input (change)=\"onInputChange()\" class=\"form-control\" [type]=\"'text'\" name=\"documentNumber\"\r\n formControlName='documentNumber' min=\"1\" max=\"99999999999\" value=\"\" placeholder=\"\"\r\n autocomplete=\"off\">\r\n @if(checkoutFormFacturacion.controls['documentNumber'].touched &&\r\n checkoutFormFacturacion.controls['documentNumber'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">\r\n {{'document-number-help'|translate}}\r\n </span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n <div class=\"row mt-df\"><!--Fila 6-->\r\n @if(this.channel.checkoutNotesField == 'required' || this.channel.checkoutNotesField == 'show'){\r\n <div class=\"form-group col-12 col-md-12\">\r\n @if(!getLabelNotesParam()){\r\n <label class=\"field-label\">{{'notes'|translate}}\r\n @if(this.channel.checkoutNotesField == 'required'){\r\n <span class=\"required\">*</span>\r\n }\r\n </label>\r\n }\r\n @if(getLabelNotesParam(); as labelnotes){\r\n <label class=\"field-label\" [innerHTML]=\"labelnotes.value\">\r\n @if(this.channel.checkoutNotesField == 'required'){\r\n <span class=\"required\">*</span>\r\n }\r\n </label>\r\n }\r\n\r\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"notes\"\r\n formControlName='notes' value=\"\" placeholder=\"\" autocomplete=\"off\">\r\n @if(this.channel.checkoutNotesField == 'required' &&\r\n checkoutFormFacturacion.controls['notes'].touched &&\r\n checkoutFormFacturacion.controls['notes'].errors?.['required']){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{'notes-help'|translate}}</span>\r\n </div>\r\n }\r\n </div>\r\n }\r\n </div>\r\n </form>\r\n </div>\r\n </div>\r\n }\r\n <div class=\"row d-flex flex-row\">\r\n <div class=\"col-12 d-flex justify-content-end\">\r\n <button type=\"submit\" class=\"btn btn-primary text-white\"\r\n [disabled]=\"checkoutForm.invalid || (this.channel.checkoutNotesField == 'required' && (!checkoutForm.get('notes')?.value || checkoutForm.get('notes')?.value.trim() === '')) || (!viewDataFacturacion && checkoutFormFacturacion && (checkoutFormFacturacion.invalid || (this.channel.checkoutNotesField == 'required' && (!checkoutFormFacturacion.get('notes')?.value || checkoutFormFacturacion.get('notes')?.value.trim() === ''))))\">{{(isLastOne\r\n ? 'finish-checkout' : (allready_data ? 'update' :\r\n 'ready-form')) | translate}}\r\n <!-- {{(allready_data ? 'update' : (isLastOne ? 'finish-checkout' : 'ready-form')) | translate}} -->\r\n </button>\r\n </div>\r\n </div>\r\n @if(loading){\r\n <div class=\"d-flex flex-column justify-content-center align-items-center\">\r\n <app-loading-full-ec></app-loading-full-ec>\r\n </div>\r\n }\r\n\r\n </form>\r\n</div>\r\n} @else {\r\n<div id=\"loginCheckout\">\r\n @if(require_login){\r\n <div class=\"d-flex flex-column justify-content-center align-items-center my-5 \">\r\n <div class=\"col-12 col-md-6 \">\r\n <app-login-form-ec (ready)=\"verifyValidate($event)\" [redirect]=\"false\" [title]=\"'need-login'\">\r\n </app-login-form-ec>\r\n </div>\r\n </div>\r\n }\r\n</div>\r\n}\r\n} @else {\r\n@if(modeSelectAddress == 'ONLY_ADDRESS_SELECTION'){\r\n<div class=\"checkout-title my-2\">\r\n <h3>{{'address-selection'|translate}}</h3>\r\n</div>\r\n}\r\n\r\n@if(this.addressBook){\r\n@if(this.addressBook?.length){\r\n<div class=\"container\">\r\n <div class=\"row\">\r\n @for(item of addressBook; track $index; let i = $index){\r\n <div class=\"col-sm-6 col-12 my-3\">\r\n <div class=\"card p-3\">\r\n <input class=\"ms-1 mt-3 form-check-input input-size-lg\" type=\"radio\" [name]=\"'n-'+i\" [id]=\"i\"\r\n [checked]=\"item.selected\" (click)=\"setSelectAddress(item)\" (change)=\"onInputChange()\">\r\n <div class=\"ms-5\">\r\n <h4 class=\"card-title\">\r\n <strong>{{'address'|translate}}</strong><br>\r\n <span class=\"text-uppercase h3\">{{item.street}}</span>\r\n </h4>\r\n <div class=\"row\">\r\n <h5 class=\"card-subtitle mb-2 text-muted col-auto\">\r\n <strong>{{'country'|translate}}</strong> {{getCountry(item.countryCode)}}\r\n </h5>\r\n <h5 class=\"card-subtitle mb-2 text-muted col-auto\">\r\n <strong>{{'state'|translate}}</strong> {{getProvince(item.provinceCode)}}\r\n </h5>\r\n <h5 class=\"card-subtitle mb-2 text-muted col-auto\">\r\n <strong>{{'town-city'|translate}}</strong> {{item.city}}\r\n </h5>\r\n <h5 class=\"card-subtitle mb-2 text-muted col-auto\">\r\n <strong>{{'postal-code'|translate}}</strong> {{item.postcode}}\r\n </h5>\r\n </div>\r\n <div class=\"row px-3\">\r\n <div class=\"card p-2 bg-light w-100\">\r\n <div class=\"card-body\">\r\n <h5 class=\"card-title\">{{'address-contact'|translate}}</h5>\r\n <h6 class=\"card-subtitle mb-2 text-muted\">\r\n <strong>{{'first-name'|translate}}</strong>\r\n {{item.addressContact.firstName}}\r\n </h6>\r\n <h6 class=\"card-subtitle mb-2 text-muted\">\r\n <strong>{{'last-name'|translate}}</strong>\r\n {{item.addressContact.lastName}}\r\n </h6>\r\n <h6 class=\"card-subtitle mb-2 text-muted\">\r\n <strong>{{'document-type'|translate}}</strong>\r\n {{getDocumentType(item.addressContact.documentType)}}\r\n </h6>\r\n <h6 class=\"card-subtitle mb-2 text-muted\">\r\n <strong>{{'document-number'|translate}}</strong>\r\n {{item.addressContact.documentNumber}}\r\n </h6>\r\n <h6 class=\"card-subtitle mb-2 text-muted\">\r\n <strong>{{'email-address'|translate}}</strong>\r\n {{item.addressContact.email}}\r\n </h6>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n }\r\n\r\n </div>\r\n\r\n <div class=\"w-100\">\r\n @if(this.channel.checkoutNotesField == 'required' || this.channel.checkoutNotesField == 'show'){\r\n <div class=\"row mt-df\">\r\n <div class=\"form-group col-12 col-md-12\">\r\n @if(!getLabelNotesParam()){\r\n <label class=\"form-label\">{{'notes'|translate}}\r\n @if(this.channel.checkoutNotesField == 'required'){\r\n <span class=\"required\">*</span>\r\n }\r\n </label>\r\n }\r\n @if(getLabelNotesParam(); as labelnotes){\r\n <label class=\"form-label\" [innerHTML]=\"labelnotes.value\">\r\n @if(this.channel.checkoutNotesField == 'required'){\r\n <span class=\"required\">*</span>\r\n }\r\n </label>\r\n }\r\n <input (change)=\"onInputChange()\" class=\"form-control\" type=\"text\" name=\"notes\"\r\n [(ngModel)]=\"this.addressBookSelected.notes\" #ctrl=\"ngModel\" value=\"\" placeholder=\"\"\r\n autocomplete=\"off\" [required]=\"this.channel.checkoutNotesField == 'required'\">\r\n @if(this.channel.checkoutNotesField == 'required' && ctrl.touched && ctrl.invalid){\r\n <div class=\"text-danger-container\">\r\n <span class=\"text-danger\">{{'notes-help'|translate}}</span>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n <div class=\"row d-flex flex-row\">\r\n <div class=\"col-12 d-flex justify-content-end\">\r\n <button (click)=\"onSelectAddress(cartItems)\" class=\"btn btn-primary text-white\"\r\n [disabled]=\"loadingStep || (this.channel.checkoutNotesField == 'required' && (!this.addressBookSelected.notes || this.addressBookSelected.notes.trim() === ''))\">{{(isLastOne\r\n ? 'finish-checkout' : (allready_data ? 'update' :\r\n 'ready-form')) | translate}}\r\n <!-- {{(allready_data ? 'update' : (isLastOne ? 'finish-checkout' : 'ready-form')) | translate}} -->\r\n </button>\r\n\r\n </div>\r\n </div>\r\n @if(loading){\r\n <div class=\"d-flex flex-column jusitfy-content-center align-items-center\">\r\n <app-loading-full-ec></app-loading-full-ec>\r\n </div>\r\n }\r\n</div>\r\n} @else {\r\n<div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-12 text-center my-2\">\r\n <div class=\"d-flex flex-column justify-content-center align-items-center\">\r\n <app-loading-full-ec></app-loading-full-ec>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n}\r\n} @else {\r\n<div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-12 text-center my-2\">\r\n <h4> {{'address-book-not-result' | translate }} </h4>\r\n </div>\r\n </div>\r\n</div>\r\n}\r\n\r\n}\r\n\r\n}\r\n@else {\r\n<div class=\"container\">\r\n <p>Por favor <a [routerLink]=\"['/auth/login']\"> Inicie Sesi\u00F3n</a></p>\r\n</div>\r\n}\r\n}\r\n@if(getTypeForm().viewForms.terms.enabled){\r\n<div class=\"modal fade\" id=\"terminos-y-condiciones\" tabindex=\"-1\" aria-labelledby=\"modalLabel\" aria-hidden=\"true\">\r\n <div class=\"modal-dialog modal-xl modal-dialog-scrollable\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\">\r\n <h5 class=\"modal-title\" id=\"modalLabel\">T\u00E9rminos y condiciones</h5>\r\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\r\n </div>\r\n <div class=\"modal-body\">\r\n <app-blocks-ec [section]=\"'terminos-y-condiciones'\" />\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n}" }]
|
|
9156
9193
|
}], ctorParameters: () => [] });
|
|
9157
9194
|
|
|
9158
9195
|
class ShipmentEcComponent {
|
|
@@ -9286,11 +9323,11 @@ class ShipmentEcComponent {
|
|
|
9286
9323
|
this._checkoutService.next();
|
|
9287
9324
|
}
|
|
9288
9325
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ShipmentEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
9289
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ShipmentEcComponent, isStandalone: true, selector: "app-shipment-ec", ngImport: i0, template: "<div class=\"container-fluid\">\n\t<div class=\"col-12\">\n\t\t<div class=\"card text-center\">\n\t\t\t<div class=\"card-header text-dark\">\n\t\t\t\t<h4>{{ 'select-method' | translate }}</h4>\n\t\t\t\t@if(methods$ | async; as methods){\n\t\t\t\t\t<div class=\"btn-toolbar justify-content-center\" role=\"toolbar\" aria-label=\"Envios toolbar\">\n\t\t\t\t\t\t<div class=\"\" role=\"group\" aria-label=\"Grupo botones envio\">\n\t\t\t\t\t\t\t<div class=\"d-flex align-content-start justify-content-center flex-wrap\">\n\t\t\t\t\t\t\t\t@for(method of filterMethods(methods); track $index){\n\t\t\t\t\t\t\t\t<button [disabled]=\"buttonsDisabled\" type=\"button\"\n\t\t\t\t\t\t\t\t\t[class]=\"'btn btn-outline-secondary mx-1 mb-1' + (isMethodActive(method.code) ? ' active' : '')\"\n\t\t\t\t\t\t\t\t\t(click)=\"setMethod(method)\">\n\t\t\t\t\t\t\t\t\t{{ method.name | translate }}\n\t\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t}@else {\n\t\t\t\t\t<div class=\"d-flex flex-row w-100 justify-content-center mt-2\">\n\t\t\t\t\t\t<h5 class=\"text-secondary\">{{'no-shipment-methods'|translate}}</h5>\n\t\t\t\t\t</div>\n\t\t\t\t}\n\t\t\t</div>\n\t\t\t<div class=\"card-body\">\n\t\t\t\t@if(moreInfoInMethod && methodSelect && methodSelect.description){\n <div class=\"row justify-content-center mb-2\">\n <div class=\"col-12 col-md-6 col-lg-4 d-flex flex-column mb-2\" [id]=\"methodSelect.code\">\n @for(line of methodSelect.description.split('\\r\\n'); track $index; let i=$index){\n <span [id]=\"methodSelect.code+'-'+i\" [class]=\"'line-'+i\">{{line}}</span>\n\t\t\t\t\t }\n </div>\n </div>}\n\t\t\t\t@if(costs$ | async; as costs){\n<!-- \t\t\t\t @if(costs){ -->\n <div class=\"row justify-content-center\">\n @if(!loadingInternal){\n\t\t\t\t\t\t@for(cost of costs; track $index; let y = $index){\n <div class=\"col-auto text-dark\">\n\t\t\t\t\t\t\t@if(cost.contracts.length > 0){\n\t\t\t\t\t\t\t\t@if(costs.length > 1){\n\t\t\t\t\t\t\t\t\t<span><b>{{ cost.name | translate }}</b></span>\n\t\t\t\t\t\t\t\t\t<hr />\n\t\t\t\t\t\t\t\t}@else{\n\t\t\t\t\t\t\t\t\t<span><b>{{ methodSelect.name | translate }}</b></span>\n\t\t\t\t\t\t\t\t\t<hr />\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t@for(contract of cost.contracts; track $index; let i = $index){\n <div class=\"option\">\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(costs,cost.name, contract)\">\n <label class=\"form-check-label\" [for]=\"cost.name + i\" aria-label=\"Dark grey\">\n @if(validName(contract.name)){\n\t\t\t\t\t\t\t\t\t\t\t<span\n [class]=\"(cost.name == 'home_delivery') ? 'shipment-contractname home_delivery' : 'shipment-contractname' \">\n\t\t\t\t\t\t\t\t\t\t\t\t{{ contract.name | translate }}\n\t\t\t\t\t\t\t\t\t\t\t</span>}\n\t\t\t\t\t\t\t\t\t\t\t@if(contract.computed){\n\t\t\t\t\t\t\t\t\t\t\t\t<span><br class=\"shipment-contractname\">{{ contract.computed | translate }}\n\t\t\t\t\t\t\t\t\t\t\t\t\t<br class=\"shipment-contractname\">\n\t\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t@if(contract.detail){\n <div class=\"contract-detail\">\n\t\t\t\t\t\t\t\t\t\t\t\t@for(line of contract.detail.split(' - '); track $index; let i = $index){\n <div [class]=\"'contrat-item-'+i\">\n @if(i == 0){<span><b>{{ line }}</b></span>}\n @if(i > 0){<span class=\"inside-detail\">{{ line }}</span>}\n </div>\n\t\t\t\t\t\t\t\t\t\t\t\t}\n </div>\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t@if(contract.price > 0){\n <span [class]=\"'inside-detail ' + ( costos?.amount == 0 ? ' free ' : '') \">\n @if(!contract.computed){<br class=\"shipment-contractname\">}\n {{ ('price'|translate) + ': ' + (contract.price | ecCurrencySymbol) }}</span>\n\t\t\t\t\t\t\t\t\t\t\t}\n <br>\n </label>\n </div>\n </div>\n\t\t\t\t\t\t\t\t}\n \n\t\t\t\t\t\t\t}\n </div>\n\t\t\t\t\t\t}\n }@else {\n\t\t\t\t\t\t<app-loading-full-ec></app-loading-full-ec>\n\t\t\t\t\t}\n </div>\n\t\t\t\t}\n\t\t\t\t\n </div>\n\n\t\t</div>\n\t\t<div class=\"row d-flex flex-row\">\n\t\t\t<div class=\"col-12 d-flex justify-content-between\">\n\t\t\t\t<button class=\"btn btn-primary text-white\" (click)=\"goBack()\">{{'back'|translate}}</button>\n\t\t\t\t<button type=\"submit\" (click)=\"next()\" [disabled]=\"!enabledConfirmButton\" class=\"btn btn-primary text-white\">{{(isLastOne\n\t\t\t\t\t? 'finish-checkout' :'ready-form') | translate}}\n\t\t\t\t\t<!-- {{(allready_data ? 'update' : (isLastOne ? 'finish-checkout' : 'ready-form')) | translate}} -->\n\t\t\t\t</button>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n\n</div>", styles: [""], dependencies: [{ kind: "component", type: LoadingFullEcComponent, selector: "app-loading-full-ec" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: EcCurrencySymbolPipe, name: "ecCurrencySymbol" }] });
|
|
9326
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ShipmentEcComponent, isStandalone: true, selector: "app-shipment-ec", ngImport: i0, template: "<div class=\"container-fluid\">\r\n\t<div class=\"col-12\">\r\n\t\t<div class=\"card text-center\">\r\n\t\t\t<div class=\"card-header text-dark\">\r\n\t\t\t\t<h4>{{ 'select-method' | translate }}</h4>\r\n\t\t\t\t@if(methods$ | async; as methods){\r\n\t\t\t\t\t<div class=\"btn-toolbar justify-content-center\" role=\"toolbar\" aria-label=\"Envios toolbar\">\r\n\t\t\t\t\t\t<div class=\"\" role=\"group\" aria-label=\"Grupo botones envio\">\r\n\t\t\t\t\t\t\t<div class=\"d-flex align-content-start justify-content-center flex-wrap\">\r\n\t\t\t\t\t\t\t\t@for(method of filterMethods(methods); track $index){\r\n\t\t\t\t\t\t\t\t<button [disabled]=\"buttonsDisabled\" type=\"button\"\r\n\t\t\t\t\t\t\t\t\t[class]=\"'btn btn-outline-secondary mx-1 mb-1' + (isMethodActive(method.code) ? ' active' : '')\"\r\n\t\t\t\t\t\t\t\t\t(click)=\"setMethod(method)\">\r\n\t\t\t\t\t\t\t\t\t{{ method.name | translate }}\r\n\t\t\t\t\t\t\t\t</button>\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t}@else {\r\n\t\t\t\t\t<div class=\"d-flex flex-row w-100 justify-content-center mt-2\">\r\n\t\t\t\t\t\t<h5 class=\"text-secondary\">{{'no-shipment-methods'|translate}}</h5>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t}\r\n\t\t\t</div>\r\n\t\t\t<div class=\"card-body\">\r\n\t\t\t\t@if(moreInfoInMethod && methodSelect && methodSelect.description){\r\n <div class=\"row justify-content-center mb-2\">\r\n <div class=\"col-12 col-md-6 col-lg-4 d-flex flex-column mb-2\" [id]=\"methodSelect.code\">\r\n @for(line of methodSelect.description.split('\\r\\n'); track $index; let i=$index){\r\n <span [id]=\"methodSelect.code+'-'+i\" [class]=\"'line-'+i\">{{line}}</span>\r\n\t\t\t\t\t }\r\n </div>\r\n </div>}\r\n\t\t\t\t@if(costs$ | async; as costs){\r\n<!-- \t\t\t\t @if(costs){ -->\r\n <div class=\"row justify-content-center\">\r\n @if(!loadingInternal){\r\n\t\t\t\t\t\t@for(cost of costs; track $index; let y = $index){\r\n <div class=\"col-auto text-dark\">\r\n\t\t\t\t\t\t\t@if(cost.contracts.length > 0){\r\n\t\t\t\t\t\t\t\t@if(costs.length > 1){\r\n\t\t\t\t\t\t\t\t\t<span><b>{{ cost.name | translate }}</b></span>\r\n\t\t\t\t\t\t\t\t\t<hr />\r\n\t\t\t\t\t\t\t\t}@else{\r\n\t\t\t\t\t\t\t\t\t<span><b>{{ methodSelect.name | translate }}</b></span>\r\n\t\t\t\t\t\t\t\t\t<hr />\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t@for(contract of cost.contracts; track $index; let i = $index){\r\n <div class=\"option\">\r\n <div class=\"form-check current-contract\">\r\n <input class=\"form-check-input\" [checked]=\"(y === 0 && i === 0) ? true : contract.selected\" type=\"radio\" name=\"card\" [id]=\"cost.name + i\"\r\n value=\"dark\" (click)=\"verifyValidate(costs,cost.name, contract)\">\r\n <label class=\"form-check-label\" [for]=\"cost.name + i\" aria-label=\"Dark grey\">\r\n @if(validName(contract.name)){\r\n\t\t\t\t\t\t\t\t\t\t\t<span\r\n [class]=\"(cost.name == 'home_delivery') ? 'shipment-contractname home_delivery' : 'shipment-contractname' \">\r\n\t\t\t\t\t\t\t\t\t\t\t\t{{ contract.name | translate }}\r\n\t\t\t\t\t\t\t\t\t\t\t</span>}\r\n\t\t\t\t\t\t\t\t\t\t\t@if(contract.computed){\r\n\t\t\t\t\t\t\t\t\t\t\t\t<span><br class=\"shipment-contractname\">{{ contract.computed | translate }}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<br class=\"shipment-contractname\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t@if(contract.detail){\r\n <div class=\"contract-detail\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t@for(line of contract.detail.split(' - '); track $index; let i = $index){\r\n <div [class]=\"'contrat-item-'+i\">\r\n @if(i == 0){<span><b>{{ line }}</b></span>}\r\n @if(i > 0){<span class=\"inside-detail\">{{ line }}</span>}\r\n </div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n </div>\r\n\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t@if(contract.price > 0){\r\n <span [class]=\"'inside-detail ' + ( costos?.amount == 0 ? ' free ' : '') \">\r\n @if(!contract.computed){<br class=\"shipment-contractname\">}\r\n {{ ('price'|translate) + ': ' + (contract.price | ecCurrencySymbol) }}</span>\r\n\t\t\t\t\t\t\t\t\t\t\t}\r\n <br>\r\n </label>\r\n </div>\r\n </div>\r\n\t\t\t\t\t\t\t\t}\r\n \r\n\t\t\t\t\t\t\t}\r\n </div>\r\n\t\t\t\t\t\t}\r\n }@else {\r\n\t\t\t\t\t\t<app-loading-full-ec></app-loading-full-ec>\r\n\t\t\t\t\t}\r\n </div>\r\n\t\t\t\t}\r\n\t\t\t\t\r\n </div>\r\n\r\n\t\t</div>\r\n\t\t<div class=\"row d-flex flex-row\">\r\n\t\t\t<div class=\"col-12 d-flex justify-content-between\">\r\n\t\t\t\t<button class=\"btn btn-primary text-white\" (click)=\"goBack()\">{{'back'|translate}}</button>\r\n\t\t\t\t<button type=\"submit\" (click)=\"next()\" [disabled]=\"!enabledConfirmButton\" class=\"btn btn-primary text-white\">{{(isLastOne\r\n\t\t\t\t\t? 'finish-checkout' :'ready-form') | translate}}\r\n\t\t\t\t\t<!-- {{(allready_data ? 'update' : (isLastOne ? 'finish-checkout' : 'ready-form')) | translate}} -->\r\n\t\t\t\t</button>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n\r\n</div>", styles: [""], dependencies: [{ kind: "component", type: LoadingFullEcComponent, selector: "app-loading-full-ec" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: EcCurrencySymbolPipe, name: "ecCurrencySymbol" }] });
|
|
9290
9327
|
}
|
|
9291
9328
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ShipmentEcComponent, decorators: [{
|
|
9292
9329
|
type: Component,
|
|
9293
|
-
args: [{ selector: 'app-shipment-ec', standalone: true, imports: [LoadingFullEcComponent, TranslateModule, AsyncPipe, EcCurrencySymbolPipe, JsonPipe], template: "<div class=\"container-fluid\">\n\t<div class=\"col-12\">\n\t\t<div class=\"card text-center\">\n\t\t\t<div class=\"card-header text-dark\">\n\t\t\t\t<h4>{{ 'select-method' | translate }}</h4>\n\t\t\t\t@if(methods$ | async; as methods){\n\t\t\t\t\t<div class=\"btn-toolbar justify-content-center\" role=\"toolbar\" aria-label=\"Envios toolbar\">\n\t\t\t\t\t\t<div class=\"\" role=\"group\" aria-label=\"Grupo botones envio\">\n\t\t\t\t\t\t\t<div class=\"d-flex align-content-start justify-content-center flex-wrap\">\n\t\t\t\t\t\t\t\t@for(method of filterMethods(methods); track $index){\n\t\t\t\t\t\t\t\t<button [disabled]=\"buttonsDisabled\" type=\"button\"\n\t\t\t\t\t\t\t\t\t[class]=\"'btn btn-outline-secondary mx-1 mb-1' + (isMethodActive(method.code) ? ' active' : '')\"\n\t\t\t\t\t\t\t\t\t(click)=\"setMethod(method)\">\n\t\t\t\t\t\t\t\t\t{{ method.name | translate }}\n\t\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t}@else {\n\t\t\t\t\t<div class=\"d-flex flex-row w-100 justify-content-center mt-2\">\n\t\t\t\t\t\t<h5 class=\"text-secondary\">{{'no-shipment-methods'|translate}}</h5>\n\t\t\t\t\t</div>\n\t\t\t\t}\n\t\t\t</div>\n\t\t\t<div class=\"card-body\">\n\t\t\t\t@if(moreInfoInMethod && methodSelect && methodSelect.description){\n <div class=\"row justify-content-center mb-2\">\n <div class=\"col-12 col-md-6 col-lg-4 d-flex flex-column mb-2\" [id]=\"methodSelect.code\">\n @for(line of methodSelect.description.split('\\r\\n'); track $index; let i=$index){\n <span [id]=\"methodSelect.code+'-'+i\" [class]=\"'line-'+i\">{{line}}</span>\n\t\t\t\t\t }\n </div>\n </div>}\n\t\t\t\t@if(costs$ | async; as costs){\n<!-- \t\t\t\t @if(costs){ -->\n <div class=\"row justify-content-center\">\n @if(!loadingInternal){\n\t\t\t\t\t\t@for(cost of costs; track $index; let y = $index){\n <div class=\"col-auto text-dark\">\n\t\t\t\t\t\t\t@if(cost.contracts.length > 0){\n\t\t\t\t\t\t\t\t@if(costs.length > 1){\n\t\t\t\t\t\t\t\t\t<span><b>{{ cost.name | translate }}</b></span>\n\t\t\t\t\t\t\t\t\t<hr />\n\t\t\t\t\t\t\t\t}@else{\n\t\t\t\t\t\t\t\t\t<span><b>{{ methodSelect.name | translate }}</b></span>\n\t\t\t\t\t\t\t\t\t<hr />\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t@for(contract of cost.contracts; track $index; let i = $index){\n <div class=\"option\">\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(costs,cost.name, contract)\">\n <label class=\"form-check-label\" [for]=\"cost.name + i\" aria-label=\"Dark grey\">\n @if(validName(contract.name)){\n\t\t\t\t\t\t\t\t\t\t\t<span\n [class]=\"(cost.name == 'home_delivery') ? 'shipment-contractname home_delivery' : 'shipment-contractname' \">\n\t\t\t\t\t\t\t\t\t\t\t\t{{ contract.name | translate }}\n\t\t\t\t\t\t\t\t\t\t\t</span>}\n\t\t\t\t\t\t\t\t\t\t\t@if(contract.computed){\n\t\t\t\t\t\t\t\t\t\t\t\t<span><br class=\"shipment-contractname\">{{ contract.computed | translate }}\n\t\t\t\t\t\t\t\t\t\t\t\t\t<br class=\"shipment-contractname\">\n\t\t\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t@if(contract.detail){\n <div class=\"contract-detail\">\n\t\t\t\t\t\t\t\t\t\t\t\t@for(line of contract.detail.split(' - '); track $index; let i = $index){\n <div [class]=\"'contrat-item-'+i\">\n @if(i == 0){<span><b>{{ line }}</b></span>}\n @if(i > 0){<span class=\"inside-detail\">{{ line }}</span>}\n </div>\n\t\t\t\t\t\t\t\t\t\t\t\t}\n </div>\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t@if(contract.price > 0){\n <span [class]=\"'inside-detail ' + ( costos?.amount == 0 ? ' free ' : '') \">\n @if(!contract.computed){<br class=\"shipment-contractname\">}\n {{ ('price'|translate) + ': ' + (contract.price | ecCurrencySymbol) }}</span>\n\t\t\t\t\t\t\t\t\t\t\t}\n <br>\n </label>\n </div>\n </div>\n\t\t\t\t\t\t\t\t}\n \n\t\t\t\t\t\t\t}\n </div>\n\t\t\t\t\t\t}\n }@else {\n\t\t\t\t\t\t<app-loading-full-ec></app-loading-full-ec>\n\t\t\t\t\t}\n </div>\n\t\t\t\t}\n\t\t\t\t\n </div>\n\n\t\t</div>\n\t\t<div class=\"row d-flex flex-row\">\n\t\t\t<div class=\"col-12 d-flex justify-content-between\">\n\t\t\t\t<button class=\"btn btn-primary text-white\" (click)=\"goBack()\">{{'back'|translate}}</button>\n\t\t\t\t<button type=\"submit\" (click)=\"next()\" [disabled]=\"!enabledConfirmButton\" class=\"btn btn-primary text-white\">{{(isLastOne\n\t\t\t\t\t? 'finish-checkout' :'ready-form') | translate}}\n\t\t\t\t\t<!-- {{(allready_data ? 'update' : (isLastOne ? 'finish-checkout' : 'ready-form')) | translate}} -->\n\t\t\t\t</button>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n\n</div>" }]
|
|
9330
|
+
args: [{ selector: 'app-shipment-ec', standalone: true, imports: [LoadingFullEcComponent, TranslateModule, AsyncPipe, EcCurrencySymbolPipe, JsonPipe], template: "<div class=\"container-fluid\">\r\n\t<div class=\"col-12\">\r\n\t\t<div class=\"card text-center\">\r\n\t\t\t<div class=\"card-header text-dark\">\r\n\t\t\t\t<h4>{{ 'select-method' | translate }}</h4>\r\n\t\t\t\t@if(methods$ | async; as methods){\r\n\t\t\t\t\t<div class=\"btn-toolbar justify-content-center\" role=\"toolbar\" aria-label=\"Envios toolbar\">\r\n\t\t\t\t\t\t<div class=\"\" role=\"group\" aria-label=\"Grupo botones envio\">\r\n\t\t\t\t\t\t\t<div class=\"d-flex align-content-start justify-content-center flex-wrap\">\r\n\t\t\t\t\t\t\t\t@for(method of filterMethods(methods); track $index){\r\n\t\t\t\t\t\t\t\t<button [disabled]=\"buttonsDisabled\" type=\"button\"\r\n\t\t\t\t\t\t\t\t\t[class]=\"'btn btn-outline-secondary mx-1 mb-1' + (isMethodActive(method.code) ? ' active' : '')\"\r\n\t\t\t\t\t\t\t\t\t(click)=\"setMethod(method)\">\r\n\t\t\t\t\t\t\t\t\t{{ method.name | translate }}\r\n\t\t\t\t\t\t\t\t</button>\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t}@else {\r\n\t\t\t\t\t<div class=\"d-flex flex-row w-100 justify-content-center mt-2\">\r\n\t\t\t\t\t\t<h5 class=\"text-secondary\">{{'no-shipment-methods'|translate}}</h5>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t}\r\n\t\t\t</div>\r\n\t\t\t<div class=\"card-body\">\r\n\t\t\t\t@if(moreInfoInMethod && methodSelect && methodSelect.description){\r\n <div class=\"row justify-content-center mb-2\">\r\n <div class=\"col-12 col-md-6 col-lg-4 d-flex flex-column mb-2\" [id]=\"methodSelect.code\">\r\n @for(line of methodSelect.description.split('\\r\\n'); track $index; let i=$index){\r\n <span [id]=\"methodSelect.code+'-'+i\" [class]=\"'line-'+i\">{{line}}</span>\r\n\t\t\t\t\t }\r\n </div>\r\n </div>}\r\n\t\t\t\t@if(costs$ | async; as costs){\r\n<!-- \t\t\t\t @if(costs){ -->\r\n <div class=\"row justify-content-center\">\r\n @if(!loadingInternal){\r\n\t\t\t\t\t\t@for(cost of costs; track $index; let y = $index){\r\n <div class=\"col-auto text-dark\">\r\n\t\t\t\t\t\t\t@if(cost.contracts.length > 0){\r\n\t\t\t\t\t\t\t\t@if(costs.length > 1){\r\n\t\t\t\t\t\t\t\t\t<span><b>{{ cost.name | translate }}</b></span>\r\n\t\t\t\t\t\t\t\t\t<hr />\r\n\t\t\t\t\t\t\t\t}@else{\r\n\t\t\t\t\t\t\t\t\t<span><b>{{ methodSelect.name | translate }}</b></span>\r\n\t\t\t\t\t\t\t\t\t<hr />\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t@for(contract of cost.contracts; track $index; let i = $index){\r\n <div class=\"option\">\r\n <div class=\"form-check current-contract\">\r\n <input class=\"form-check-input\" [checked]=\"(y === 0 && i === 0) ? true : contract.selected\" type=\"radio\" name=\"card\" [id]=\"cost.name + i\"\r\n value=\"dark\" (click)=\"verifyValidate(costs,cost.name, contract)\">\r\n <label class=\"form-check-label\" [for]=\"cost.name + i\" aria-label=\"Dark grey\">\r\n @if(validName(contract.name)){\r\n\t\t\t\t\t\t\t\t\t\t\t<span\r\n [class]=\"(cost.name == 'home_delivery') ? 'shipment-contractname home_delivery' : 'shipment-contractname' \">\r\n\t\t\t\t\t\t\t\t\t\t\t\t{{ contract.name | translate }}\r\n\t\t\t\t\t\t\t\t\t\t\t</span>}\r\n\t\t\t\t\t\t\t\t\t\t\t@if(contract.computed){\r\n\t\t\t\t\t\t\t\t\t\t\t\t<span><br class=\"shipment-contractname\">{{ contract.computed | translate }}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<br class=\"shipment-contractname\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t</span>\r\n\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t@if(contract.detail){\r\n <div class=\"contract-detail\">\r\n\t\t\t\t\t\t\t\t\t\t\t\t@for(line of contract.detail.split(' - '); track $index; let i = $index){\r\n <div [class]=\"'contrat-item-'+i\">\r\n @if(i == 0){<span><b>{{ line }}</b></span>}\r\n @if(i > 0){<span class=\"inside-detail\">{{ line }}</span>}\r\n </div>\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n </div>\r\n\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t@if(contract.price > 0){\r\n <span [class]=\"'inside-detail ' + ( costos?.amount == 0 ? ' free ' : '') \">\r\n @if(!contract.computed){<br class=\"shipment-contractname\">}\r\n {{ ('price'|translate) + ': ' + (contract.price | ecCurrencySymbol) }}</span>\r\n\t\t\t\t\t\t\t\t\t\t\t}\r\n <br>\r\n </label>\r\n </div>\r\n </div>\r\n\t\t\t\t\t\t\t\t}\r\n \r\n\t\t\t\t\t\t\t}\r\n </div>\r\n\t\t\t\t\t\t}\r\n }@else {\r\n\t\t\t\t\t\t<app-loading-full-ec></app-loading-full-ec>\r\n\t\t\t\t\t}\r\n </div>\r\n\t\t\t\t}\r\n\t\t\t\t\r\n </div>\r\n\r\n\t\t</div>\r\n\t\t<div class=\"row d-flex flex-row\">\r\n\t\t\t<div class=\"col-12 d-flex justify-content-between\">\r\n\t\t\t\t<button class=\"btn btn-primary text-white\" (click)=\"goBack()\">{{'back'|translate}}</button>\r\n\t\t\t\t<button type=\"submit\" (click)=\"next()\" [disabled]=\"!enabledConfirmButton\" class=\"btn btn-primary text-white\">{{(isLastOne\r\n\t\t\t\t\t? 'finish-checkout' :'ready-form') | translate}}\r\n\t\t\t\t\t<!-- {{(allready_data ? 'update' : (isLastOne ? 'finish-checkout' : 'ready-form')) | translate}} -->\r\n\t\t\t\t</button>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n\r\n</div>" }]
|
|
9294
9331
|
}], ctorParameters: () => [] });
|
|
9295
9332
|
|
|
9296
9333
|
class MpRedirectEcComponent {
|
|
@@ -9392,11 +9429,11 @@ class MpRedirectEcComponent {
|
|
|
9392
9429
|
});
|
|
9393
9430
|
};
|
|
9394
9431
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MpRedirectEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
9395
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: MpRedirectEcComponent, isStandalone: true, selector: "app-mp-redirect-ec", inputs: { method: "method", total_amount: "total_amount", allData: "allData" }, outputs: { ready: "ready" }, ngImport: i0, template: "<div class=\"text-center\">\n\t@if(url){\n\t\t@if(!loading){\n\t\t\t<button (click)=\"iniciar()\" class=\"btn btn-outline-primary rounded-0 comprar mt-3\">Pagar</button>\n\t\t} @else {\n\t\t\t<div class=\"d-flex flex-column jusitfy-content-center align-items-center mt-2\">\n\t\t\t\t<h3>Procesando el pago por mercado pago</h3>\n\t\t\t\t<h5>Recuerde hacer click en \"Volver al sitio\" desde mercado pago para finalizar la compra.</h5>\n\t\t\t\t<app-loading-full-ec></app-loading-full-ec>\n\t\t\t</div>\n\t\t\t<div class=\"container-fluid\">\n\t\t\t\t<div class=\"row\">\n\t\t\t\t\t<div class=\"col-5\">\n\t\t\t\t\t\t<hr>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-2 text-center\">\n\t\t\t\t\t\t<label for=\"\">o</label>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-5\">\n\t\t\t\t\t\t<hr>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div class=\"d-flex flex-column justify-content-center align-items-center mt-2\">\n\t\t\t\t<button (click)=\"clickClose()\" class=\"btn btn-outline-secondary\">Cancelar pago</button>\n\t\t\t</div>\n\t\t}\n\t} @else{\n\t<div class=\"d-flex flex-column justify-content-center align-items-center mt-2\">\n\t\t<app-loading-full-ec></app-loading-full-ec>\n\t</div>\n\t}\n</div>", styles: [""], dependencies: [{ kind: "component", type: LoadingFullEcComponent, selector: "app-loading-full-ec" }] });
|
|
9432
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: MpRedirectEcComponent, isStandalone: true, selector: "app-mp-redirect-ec", inputs: { method: "method", total_amount: "total_amount", allData: "allData" }, outputs: { ready: "ready" }, ngImport: i0, template: "<div class=\"text-center\">\r\n\t@if(url){\r\n\t\t@if(!loading){\r\n\t\t\t<button (click)=\"iniciar()\" class=\"btn btn-outline-primary rounded-0 comprar mt-3\">Pagar</button>\r\n\t\t} @else {\r\n\t\t\t<div class=\"d-flex flex-column jusitfy-content-center align-items-center mt-2\">\r\n\t\t\t\t<h3>Procesando el pago por mercado pago</h3>\r\n\t\t\t\t<h5>Recuerde hacer click en \"Volver al sitio\" desde mercado pago para finalizar la compra.</h5>\r\n\t\t\t\t<app-loading-full-ec></app-loading-full-ec>\r\n\t\t\t</div>\r\n\t\t\t<div class=\"container-fluid\">\r\n\t\t\t\t<div class=\"row\">\r\n\t\t\t\t\t<div class=\"col-5\">\r\n\t\t\t\t\t\t<hr>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div class=\"col-2 text-center\">\r\n\t\t\t\t\t\t<label for=\"\">o</label>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div class=\"col-5\">\r\n\t\t\t\t\t\t<hr>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<div class=\"d-flex flex-column justify-content-center align-items-center mt-2\">\r\n\t\t\t\t<button (click)=\"clickClose()\" class=\"btn btn-outline-secondary\">Cancelar pago</button>\r\n\t\t\t</div>\r\n\t\t}\r\n\t} @else{\r\n\t<div class=\"d-flex flex-column justify-content-center align-items-center mt-2\">\r\n\t\t<app-loading-full-ec></app-loading-full-ec>\r\n\t</div>\r\n\t}\r\n</div>", styles: [""], dependencies: [{ kind: "component", type: LoadingFullEcComponent, selector: "app-loading-full-ec" }] });
|
|
9396
9433
|
}
|
|
9397
9434
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MpRedirectEcComponent, decorators: [{
|
|
9398
9435
|
type: Component,
|
|
9399
|
-
args: [{ selector: 'app-mp-redirect-ec', standalone: true, imports: [LoadingFullEcComponent], template: "<div class=\"text-center\">\n\t@if(url){\n\t\t@if(!loading){\n\t\t\t<button (click)=\"iniciar()\" class=\"btn btn-outline-primary rounded-0 comprar mt-3\">Pagar</button>\n\t\t} @else {\n\t\t\t<div class=\"d-flex flex-column jusitfy-content-center align-items-center mt-2\">\n\t\t\t\t<h3>Procesando el pago por mercado pago</h3>\n\t\t\t\t<h5>Recuerde hacer click en \"Volver al sitio\" desde mercado pago para finalizar la compra.</h5>\n\t\t\t\t<app-loading-full-ec></app-loading-full-ec>\n\t\t\t</div>\n\t\t\t<div class=\"container-fluid\">\n\t\t\t\t<div class=\"row\">\n\t\t\t\t\t<div class=\"col-5\">\n\t\t\t\t\t\t<hr>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-2 text-center\">\n\t\t\t\t\t\t<label for=\"\">o</label>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"col-5\">\n\t\t\t\t\t\t<hr>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div class=\"d-flex flex-column justify-content-center align-items-center mt-2\">\n\t\t\t\t<button (click)=\"clickClose()\" class=\"btn btn-outline-secondary\">Cancelar pago</button>\n\t\t\t</div>\n\t\t}\n\t} @else{\n\t<div class=\"d-flex flex-column justify-content-center align-items-center mt-2\">\n\t\t<app-loading-full-ec></app-loading-full-ec>\n\t</div>\n\t}\n</div>" }]
|
|
9436
|
+
args: [{ selector: 'app-mp-redirect-ec', standalone: true, imports: [LoadingFullEcComponent], template: "<div class=\"text-center\">\r\n\t@if(url){\r\n\t\t@if(!loading){\r\n\t\t\t<button (click)=\"iniciar()\" class=\"btn btn-outline-primary rounded-0 comprar mt-3\">Pagar</button>\r\n\t\t} @else {\r\n\t\t\t<div class=\"d-flex flex-column jusitfy-content-center align-items-center mt-2\">\r\n\t\t\t\t<h3>Procesando el pago por mercado pago</h3>\r\n\t\t\t\t<h5>Recuerde hacer click en \"Volver al sitio\" desde mercado pago para finalizar la compra.</h5>\r\n\t\t\t\t<app-loading-full-ec></app-loading-full-ec>\r\n\t\t\t</div>\r\n\t\t\t<div class=\"container-fluid\">\r\n\t\t\t\t<div class=\"row\">\r\n\t\t\t\t\t<div class=\"col-5\">\r\n\t\t\t\t\t\t<hr>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div class=\"col-2 text-center\">\r\n\t\t\t\t\t\t<label for=\"\">o</label>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div class=\"col-5\">\r\n\t\t\t\t\t\t<hr>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<div class=\"d-flex flex-column justify-content-center align-items-center mt-2\">\r\n\t\t\t\t<button (click)=\"clickClose()\" class=\"btn btn-outline-secondary\">Cancelar pago</button>\r\n\t\t\t</div>\r\n\t\t}\r\n\t} @else{\r\n\t<div class=\"d-flex flex-column justify-content-center align-items-center mt-2\">\r\n\t\t<app-loading-full-ec></app-loading-full-ec>\r\n\t</div>\r\n\t}\r\n</div>" }]
|
|
9400
9437
|
}], ctorParameters: () => [], propDecorators: { method: [{
|
|
9401
9438
|
type: Input
|
|
9402
9439
|
}], total_amount: [{
|
|
@@ -9415,11 +9452,11 @@ class BankTransferEcComponent {
|
|
|
9415
9452
|
ngOnInit() {
|
|
9416
9453
|
}
|
|
9417
9454
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BankTransferEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
9418
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: BankTransferEcComponent, isStandalone: true, selector: "app-bank-transfer-ec", inputs: { method: "method", verifyValidate: "verifyValidate", setLoading: "setLoading" }, ngImport: i0, template: "<div class=\"row px-0 description-cont\">\n\n @for(line of method.description.split('\\r\\n');track $index; let i=$index){\n <p [id]=\"'faqs-'+i\" [class]=\"'qt px-5 m-0 line-'+i\">{{ line }}</p>\n }\n</div>\n@if(method.instructions){\n <hr />\n <div class=\"row px-0 instructions-cont mb-1\">\n <h5 class=\"instructions-title\">{{ ('instructions' | translate) }}</h5>\n @for(line of method.instructions.split('\\r\\n'); track $index; let i=$index){\n <p [class]=\"'px-5 m-0 instructions-text line-'+i \">{{ line }}</p>\n }\n</div>\n}\n\n<div class=\"end-button\">\n <button class=\"btn btn-outline-primary\" (click)=\"setLoading() && verifyValidate()\">{{\n ('pay-with-transfer'\n | translate) }}</button>\n</div>\n<!-- @if(loading$ | async; as loading){\n @if(loading){\n <div class=\"mt-2\">\n <app-loading-inline-ec></app-loading-inline-ec>\n </div>\n }\n} -->", styles: [""], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
9455
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: BankTransferEcComponent, isStandalone: true, selector: "app-bank-transfer-ec", inputs: { method: "method", verifyValidate: "verifyValidate", setLoading: "setLoading" }, ngImport: i0, template: "<div class=\"row px-0 description-cont\">\r\n\r\n @for(line of method.description.split('\\r\\n');track $index; let i=$index){\r\n <p [id]=\"'faqs-'+i\" [class]=\"'qt px-5 m-0 line-'+i\">{{ line }}</p>\r\n }\r\n</div>\r\n@if(method.instructions){\r\n <hr />\r\n <div class=\"row px-0 instructions-cont mb-1\">\r\n <h5 class=\"instructions-title\">{{ ('instructions' | translate) }}</h5>\r\n @for(line of method.instructions.split('\\r\\n'); track $index; let i=$index){\r\n <p [class]=\"'px-5 m-0 instructions-text line-'+i \">{{ line }}</p>\r\n }\r\n</div>\r\n}\r\n\r\n<div class=\"end-button\">\r\n <button class=\"btn btn-outline-primary\" (click)=\"setLoading() && verifyValidate()\">{{\r\n ('pay-with-transfer'\r\n | translate) }}</button>\r\n</div>\r\n<!-- @if(loading$ | async; as loading){\r\n @if(loading){\r\n <div class=\"mt-2\">\r\n <app-loading-inline-ec></app-loading-inline-ec>\r\n </div>\r\n }\r\n} -->", styles: [""], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
9419
9456
|
}
|
|
9420
9457
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BankTransferEcComponent, decorators: [{
|
|
9421
9458
|
type: Component,
|
|
9422
|
-
args: [{ selector: 'app-bank-transfer-ec', standalone: true, imports: [LoadingInlineEcComponent, TranslateModule, AsyncPipe], template: "<div class=\"row px-0 description-cont\">\n\n @for(line of method.description.split('\\r\\n');track $index; let i=$index){\n <p [id]=\"'faqs-'+i\" [class]=\"'qt px-5 m-0 line-'+i\">{{ line }}</p>\n }\n</div>\n@if(method.instructions){\n <hr />\n <div class=\"row px-0 instructions-cont mb-1\">\n <h5 class=\"instructions-title\">{{ ('instructions' | translate) }}</h5>\n @for(line of method.instructions.split('\\r\\n'); track $index; let i=$index){\n <p [class]=\"'px-5 m-0 instructions-text line-'+i \">{{ line }}</p>\n }\n</div>\n}\n\n<div class=\"end-button\">\n <button class=\"btn btn-outline-primary\" (click)=\"setLoading() && verifyValidate()\">{{\n ('pay-with-transfer'\n | translate) }}</button>\n</div>\n<!-- @if(loading$ | async; as loading){\n @if(loading){\n <div class=\"mt-2\">\n <app-loading-inline-ec></app-loading-inline-ec>\n </div>\n }\n} -->" }]
|
|
9459
|
+
args: [{ selector: 'app-bank-transfer-ec', standalone: true, imports: [LoadingInlineEcComponent, TranslateModule, AsyncPipe], template: "<div class=\"row px-0 description-cont\">\r\n\r\n @for(line of method.description.split('\\r\\n');track $index; let i=$index){\r\n <p [id]=\"'faqs-'+i\" [class]=\"'qt px-5 m-0 line-'+i\">{{ line }}</p>\r\n }\r\n</div>\r\n@if(method.instructions){\r\n <hr />\r\n <div class=\"row px-0 instructions-cont mb-1\">\r\n <h5 class=\"instructions-title\">{{ ('instructions' | translate) }}</h5>\r\n @for(line of method.instructions.split('\\r\\n'); track $index; let i=$index){\r\n <p [class]=\"'px-5 m-0 instructions-text line-'+i \">{{ line }}</p>\r\n }\r\n</div>\r\n}\r\n\r\n<div class=\"end-button\">\r\n <button class=\"btn btn-outline-primary\" (click)=\"setLoading() && verifyValidate()\">{{\r\n ('pay-with-transfer'\r\n | translate) }}</button>\r\n</div>\r\n<!-- @if(loading$ | async; as loading){\r\n @if(loading){\r\n <div class=\"mt-2\">\r\n <app-loading-inline-ec></app-loading-inline-ec>\r\n </div>\r\n }\r\n} -->" }]
|
|
9423
9460
|
}], ctorParameters: () => [], propDecorators: { method: [{
|
|
9424
9461
|
type: Input,
|
|
9425
9462
|
args: [{
|
|
@@ -9439,14 +9476,14 @@ class OfflineEcComponent {
|
|
|
9439
9476
|
ngOnInit() {
|
|
9440
9477
|
}
|
|
9441
9478
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OfflineEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
9442
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: OfflineEcComponent, isStandalone: true, selector: "app-offline-ec", inputs: { method: "method", verifyValidate: "verifyValidate", setLoading: "setLoading" }, ngImport: i0, template: "<p id=\"faqs\" class=\"qt px-5\">{{ method.description }}</p>\n<p class=\"px-5\">{{ method.instructions }}</p>\n<div class=\"end-button\">\n\t<button class=\"btn btn-outline-primary\" (click)=\"setLoading() && verifyValidate()\">{{\n\t\t('pay-with-offline'| translate) }}</button>\n</div>\n<!-- @if(loading$ | async; as loading){\n @if(loading){\n <div class=\"mt-2\">\n <app-loading-inline-ec></app-loading-inline-ec>\n </div>\n }\n} -->", styles: [""], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
9479
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: OfflineEcComponent, isStandalone: true, selector: "app-offline-ec", inputs: { method: "method", verifyValidate: "verifyValidate", setLoading: "setLoading" }, ngImport: i0, template: "<p id=\"faqs\" class=\"qt px-5\">{{ method.description }}</p>\r\n<p class=\"px-5\">{{ method.instructions }}</p>\r\n<div class=\"end-button\">\r\n\t<button class=\"btn btn-outline-primary\" (click)=\"setLoading() && verifyValidate()\">{{\r\n\t\t('pay-with-offline'| translate) }}</button>\r\n</div>\r\n<!-- @if(loading$ | async; as loading){\r\n @if(loading){\r\n <div class=\"mt-2\">\r\n <app-loading-inline-ec></app-loading-inline-ec>\r\n </div>\r\n }\r\n} -->", styles: [""], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
9443
9480
|
}
|
|
9444
9481
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OfflineEcComponent, decorators: [{
|
|
9445
9482
|
type: Component,
|
|
9446
9483
|
args: [{ selector: 'app-offline-ec', standalone: true, imports: [
|
|
9447
9484
|
LoadingInlineEcComponent,
|
|
9448
9485
|
TranslateModule
|
|
9449
|
-
], template: "<p id=\"faqs\" class=\"qt px-5\">{{ method.description }}</p>\n<p class=\"px-5\">{{ method.instructions }}</p>\n<div class=\"end-button\">\n\t<button class=\"btn btn-outline-primary\" (click)=\"setLoading() && verifyValidate()\">{{\n\t\t('pay-with-offline'| translate) }}</button>\n</div>\n<!-- @if(loading$ | async; as loading){\n @if(loading){\n <div class=\"mt-2\">\n <app-loading-inline-ec></app-loading-inline-ec>\n </div>\n }\n} -->" }]
|
|
9486
|
+
], template: "<p id=\"faqs\" class=\"qt px-5\">{{ method.description }}</p>\r\n<p class=\"px-5\">{{ method.instructions }}</p>\r\n<div class=\"end-button\">\r\n\t<button class=\"btn btn-outline-primary\" (click)=\"setLoading() && verifyValidate()\">{{\r\n\t\t('pay-with-offline'| translate) }}</button>\r\n</div>\r\n<!-- @if(loading$ | async; as loading){\r\n @if(loading){\r\n <div class=\"mt-2\">\r\n <app-loading-inline-ec></app-loading-inline-ec>\r\n </div>\r\n }\r\n} -->" }]
|
|
9450
9487
|
}], ctorParameters: () => [], propDecorators: { method: [{
|
|
9451
9488
|
type: Input,
|
|
9452
9489
|
args: [{
|
|
@@ -9640,11 +9677,11 @@ class DecidirEcComponent extends ComponentHelper {
|
|
|
9640
9677
|
obj.style.width = obj.contentWindow.document.body.scrollWidth + 'px';
|
|
9641
9678
|
};
|
|
9642
9679
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DecidirEcComponent, deps: [{ token: i0.Renderer2 }, { token: ConnectionService }, { token: ToastService }, { token: CoreConstantsService }, { token: ApiConstantsService }, { token: CartService }, { token: i2.ActivatedRoute }, { token: i1$4.DomSanitizer }, { token: ParametersService }], target: i0.ɵɵFactoryTarget.Component });
|
|
9643
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: DecidirEcComponent, isStandalone: true, selector: "app-decidir-ec", inputs: { paymentServiceInst: "paymentServiceInst", method: "method", total_amount: "total_amount", allData: "allData", user_data: "user_data" }, outputs: { ready: "ready" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"text-center\">\n <h3>Continuar con el pago en Decidir</h3>\n @if (method) {\n <p class=\"px-5\">{{ method.description }}</p>\n <p class=\"px-5\">{{ method.instructions }}</p>\n }\n @if (!loading) {\n <button class=\"btn btn-outline-secondary comprar\" (click)=\"openModal()\">Pagar</button>\n } @else {\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 }\n </div>\n\n@if (showModal) {\n<div class=\"modal-backdrop\" (click)=\"clickClose()\">\n <div class=\"modal-dialog modal-lg\" (click)=\"$event.stopPropagation()\">\n <div class=\"modal-content\">\n\n <div class=\"modal-body\">\n <div class=\"payment-container\">\n \n <!-- Iframe del formulario de decidir -->\n <div class=\"iframe-container\">\n <iframe [src]=\"url\" frameborder=\"0\" class=\"payment-iframe\"></iframe>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n}\n", styles: [".modal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:1050;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-dialog{max-width:90%;max-height:90%;width:800px;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 20px 60px #0000004d;animation:modalFadeIn .3s ease-out}.modal-dialog.modal-lg{max-width:900px;width:90%}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.9) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-content{display:flex;flex-direction:column;height:100%;border:none;border-radius:16px;background:#fff}.modal-header{padding:1.5rem 2rem;border-bottom:1px solid #e9ecef;background:linear-gradient(135deg,#f8f9fa,#e9ecef);display:flex;justify-content:space-between;align-items:center;position:relative}.modal-header:after{content:\"\";position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,#dee2e6 50%,transparent 100%)}.modal-header .modal-title{margin:0;font-size:1.5rem;font-weight:700;color:#2c3e50;text-shadow:0 1px 2px rgba(0,0,0,.1)}.modal-header .btn-close{background:none;border:none;font-size:1.8rem;color:#6c757d;cursor:pointer;padding:0;width:35px;height:35px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s ease;position:relative}.modal-header .btn-close:hover{background-color:#dc3545;color:#fff;transform:rotate(90deg);box-shadow:0 4px 12px #dc35454d}.modal-header .btn-close:active{transform:rotate(90deg) scale(.95)}.modal-body{padding:0;flex:1;overflow:hidden;background:#fff}.payment-container{height:100%;display:flex;flex-direction:column;background:#fff}.cards-accepted{padding:1.5rem 2rem;text-align:center;border-bottom:1px solid #e9ecef;background:linear-gradient(135deg,#fff,#f8f9fa);position:relative}.cards-accepted:after{content:\"\";position:absolute;bottom:0;left:5%;right:5%;height:1px;background:linear-gradient(90deg,transparent 0%,#dee2e6 50%,transparent 100%)}.cards-accepted .cards-img{height:45px;max-width:100%;object-fit:contain;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));transition:transform .2s ease}.cards-accepted .cards-img:hover{transform:scale(1.05)}.iframe-container{flex:1;padding:1.5rem;background:#fff;position:relative}.iframe-container:before{content:\"\";position:absolute;top:0;left:1.5rem;right:1.5rem;height:1px;background:linear-gradient(90deg,transparent 0%,#e9ecef 50%,transparent 100%)}.payment-iframe{width:100%;height:620px;border:none;border-radius:12px;background:#fff;box-shadow:inset 0 2px 8px #0000000d}.half-width{width:49%!important}.ml-1{margin-left:1%}#card-form{height:450px}.iframeStyle{height:520px;width:100%}@media only screen and (max-width: 1024px){.modal-dialog,.modal-dialog.modal-lg{max-width:95%;width:95%}.payment-iframe{height:650px}.modal-header{padding:1rem 1.5rem}.modal-header .modal-title{font-size:1.125rem}.cards-accepted{padding:.75rem 1.5rem}}@media only screen and (max-width: 680px){.modal-dialog{max-width:98%;width:98%;margin:1rem;max-height:calc(100vh - 2rem)}.modal-dialog.modal-lg{max-width:98%;width:98%}.payment-iframe{height:550px}.modal-header{padding:1rem}.modal-header .modal-title{font-size:1rem}.modal-header .btn-close{width:28px;height:28px;font-size:1.25rem}.cards-accepted{padding:.5rem 1rem}.cards-accepted .cards-img{height:35px}.iframe-container{padding:.5rem}}@media only screen and (max-width: 480px){.modal-dialog{margin:.5rem;max-height:calc(100vh - 1rem);border-radius:8px}.modal-content{border-radius:8px}.payment-iframe{height:500px}.cards-accepted .cards-img{height:30px}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: LoadingFullEcComponent, selector: "app-loading-full-ec" }] });
|
|
9680
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: DecidirEcComponent, isStandalone: true, selector: "app-decidir-ec", inputs: { paymentServiceInst: "paymentServiceInst", method: "method", total_amount: "total_amount", allData: "allData", user_data: "user_data" }, outputs: { ready: "ready" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"text-center\">\r\n <h3>Continuar con el pago en Decidir</h3>\r\n @if (method) {\r\n <p class=\"px-5\">{{ method.description }}</p>\r\n <p class=\"px-5\">{{ method.instructions }}</p>\r\n }\r\n @if (!loading) {\r\n <button class=\"btn btn-outline-secondary comprar\" (click)=\"openModal()\">Pagar</button>\r\n } @else {\r\n <div class=\"d-flex flex-column jusitfy-content-center align-items-center mt-2\">\r\n <app-loading-full-ec></app-loading-full-ec>\r\n </div>\r\n }\r\n </div>\r\n\r\n@if (showModal) {\r\n<div class=\"modal-backdrop\" (click)=\"clickClose()\">\r\n <div class=\"modal-dialog modal-lg\" (click)=\"$event.stopPropagation()\">\r\n <div class=\"modal-content\">\r\n\r\n <div class=\"modal-body\">\r\n <div class=\"payment-container\">\r\n \r\n <!-- Iframe del formulario de decidir -->\r\n <div class=\"iframe-container\">\r\n <iframe [src]=\"url\" frameborder=\"0\" class=\"payment-iframe\"></iframe>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n}\r\n", styles: [".modal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:1050;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-dialog{max-width:90%;max-height:90%;width:800px;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 20px 60px #0000004d;animation:modalFadeIn .3s ease-out}.modal-dialog.modal-lg{max-width:900px;width:90%}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.9) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-content{display:flex;flex-direction:column;height:100%;border:none;border-radius:16px;background:#fff}.modal-header{padding:1.5rem 2rem;border-bottom:1px solid #e9ecef;background:linear-gradient(135deg,#f8f9fa,#e9ecef);display:flex;justify-content:space-between;align-items:center;position:relative}.modal-header:after{content:\"\";position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,#dee2e6 50%,transparent 100%)}.modal-header .modal-title{margin:0;font-size:1.5rem;font-weight:700;color:#2c3e50;text-shadow:0 1px 2px rgba(0,0,0,.1)}.modal-header .btn-close{background:none;border:none;font-size:1.8rem;color:#6c757d;cursor:pointer;padding:0;width:35px;height:35px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s ease;position:relative}.modal-header .btn-close:hover{background-color:#dc3545;color:#fff;transform:rotate(90deg);box-shadow:0 4px 12px #dc35454d}.modal-header .btn-close:active{transform:rotate(90deg) scale(.95)}.modal-body{padding:0;flex:1;overflow:hidden;background:#fff}.payment-container{height:100%;display:flex;flex-direction:column;background:#fff}.cards-accepted{padding:1.5rem 2rem;text-align:center;border-bottom:1px solid #e9ecef;background:linear-gradient(135deg,#fff,#f8f9fa);position:relative}.cards-accepted:after{content:\"\";position:absolute;bottom:0;left:5%;right:5%;height:1px;background:linear-gradient(90deg,transparent 0%,#dee2e6 50%,transparent 100%)}.cards-accepted .cards-img{height:45px;max-width:100%;object-fit:contain;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));transition:transform .2s ease}.cards-accepted .cards-img:hover{transform:scale(1.05)}.iframe-container{flex:1;padding:1.5rem;background:#fff;position:relative}.iframe-container:before{content:\"\";position:absolute;top:0;left:1.5rem;right:1.5rem;height:1px;background:linear-gradient(90deg,transparent 0%,#e9ecef 50%,transparent 100%)}.payment-iframe{width:100%;height:620px;border:none;border-radius:12px;background:#fff;box-shadow:inset 0 2px 8px #0000000d}.half-width{width:49%!important}.ml-1{margin-left:1%}#card-form{height:450px}.iframeStyle{height:520px;width:100%}@media only screen and (max-width: 1024px){.modal-dialog,.modal-dialog.modal-lg{max-width:95%;width:95%}.payment-iframe{height:650px}.modal-header{padding:1rem 1.5rem}.modal-header .modal-title{font-size:1.125rem}.cards-accepted{padding:.75rem 1.5rem}}@media only screen and (max-width: 680px){.modal-dialog{max-width:98%;width:98%;margin:1rem;max-height:calc(100vh - 2rem)}.modal-dialog.modal-lg{max-width:98%;width:98%}.payment-iframe{height:550px}.modal-header{padding:1rem}.modal-header .modal-title{font-size:1rem}.modal-header .btn-close{width:28px;height:28px;font-size:1.25rem}.cards-accepted{padding:.5rem 1rem}.cards-accepted .cards-img{height:35px}.iframe-container{padding:.5rem}}@media only screen and (max-width: 480px){.modal-dialog{margin:.5rem;max-height:calc(100vh - 1rem);border-radius:8px}.modal-content{border-radius:8px}.payment-iframe{height:500px}.cards-accepted .cards-img{height:30px}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: LoadingFullEcComponent, selector: "app-loading-full-ec" }] });
|
|
9644
9681
|
}
|
|
9645
9682
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DecidirEcComponent, decorators: [{
|
|
9646
9683
|
type: Component,
|
|
9647
|
-
args: [{ selector: 'app-decidir-ec', standalone: true, imports: [CommonModule, FormsModule, LoadingFullEcComponent], template: "<div class=\"text-center\">\n <h3>Continuar con el pago en Decidir</h3>\n @if (method) {\n <p class=\"px-5\">{{ method.description }}</p>\n <p class=\"px-5\">{{ method.instructions }}</p>\n }\n @if (!loading) {\n <button class=\"btn btn-outline-secondary comprar\" (click)=\"openModal()\">Pagar</button>\n } @else {\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 }\n </div>\n\n@if (showModal) {\n<div class=\"modal-backdrop\" (click)=\"clickClose()\">\n <div class=\"modal-dialog modal-lg\" (click)=\"$event.stopPropagation()\">\n <div class=\"modal-content\">\n\n <div class=\"modal-body\">\n <div class=\"payment-container\">\n \n <!-- Iframe del formulario de decidir -->\n <div class=\"iframe-container\">\n <iframe [src]=\"url\" frameborder=\"0\" class=\"payment-iframe\"></iframe>\n </div>\n </div>\n </div>\n </div>\n </div>\n</div>\n}\n", styles: [".modal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:1050;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-dialog{max-width:90%;max-height:90%;width:800px;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 20px 60px #0000004d;animation:modalFadeIn .3s ease-out}.modal-dialog.modal-lg{max-width:900px;width:90%}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.9) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-content{display:flex;flex-direction:column;height:100%;border:none;border-radius:16px;background:#fff}.modal-header{padding:1.5rem 2rem;border-bottom:1px solid #e9ecef;background:linear-gradient(135deg,#f8f9fa,#e9ecef);display:flex;justify-content:space-between;align-items:center;position:relative}.modal-header:after{content:\"\";position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,#dee2e6 50%,transparent 100%)}.modal-header .modal-title{margin:0;font-size:1.5rem;font-weight:700;color:#2c3e50;text-shadow:0 1px 2px rgba(0,0,0,.1)}.modal-header .btn-close{background:none;border:none;font-size:1.8rem;color:#6c757d;cursor:pointer;padding:0;width:35px;height:35px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s ease;position:relative}.modal-header .btn-close:hover{background-color:#dc3545;color:#fff;transform:rotate(90deg);box-shadow:0 4px 12px #dc35454d}.modal-header .btn-close:active{transform:rotate(90deg) scale(.95)}.modal-body{padding:0;flex:1;overflow:hidden;background:#fff}.payment-container{height:100%;display:flex;flex-direction:column;background:#fff}.cards-accepted{padding:1.5rem 2rem;text-align:center;border-bottom:1px solid #e9ecef;background:linear-gradient(135deg,#fff,#f8f9fa);position:relative}.cards-accepted:after{content:\"\";position:absolute;bottom:0;left:5%;right:5%;height:1px;background:linear-gradient(90deg,transparent 0%,#dee2e6 50%,transparent 100%)}.cards-accepted .cards-img{height:45px;max-width:100%;object-fit:contain;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));transition:transform .2s ease}.cards-accepted .cards-img:hover{transform:scale(1.05)}.iframe-container{flex:1;padding:1.5rem;background:#fff;position:relative}.iframe-container:before{content:\"\";position:absolute;top:0;left:1.5rem;right:1.5rem;height:1px;background:linear-gradient(90deg,transparent 0%,#e9ecef 50%,transparent 100%)}.payment-iframe{width:100%;height:620px;border:none;border-radius:12px;background:#fff;box-shadow:inset 0 2px 8px #0000000d}.half-width{width:49%!important}.ml-1{margin-left:1%}#card-form{height:450px}.iframeStyle{height:520px;width:100%}@media only screen and (max-width: 1024px){.modal-dialog,.modal-dialog.modal-lg{max-width:95%;width:95%}.payment-iframe{height:650px}.modal-header{padding:1rem 1.5rem}.modal-header .modal-title{font-size:1.125rem}.cards-accepted{padding:.75rem 1.5rem}}@media only screen and (max-width: 680px){.modal-dialog{max-width:98%;width:98%;margin:1rem;max-height:calc(100vh - 2rem)}.modal-dialog.modal-lg{max-width:98%;width:98%}.payment-iframe{height:550px}.modal-header{padding:1rem}.modal-header .modal-title{font-size:1rem}.modal-header .btn-close{width:28px;height:28px;font-size:1.25rem}.cards-accepted{padding:.5rem 1rem}.cards-accepted .cards-img{height:35px}.iframe-container{padding:.5rem}}@media only screen and (max-width: 480px){.modal-dialog{margin:.5rem;max-height:calc(100vh - 1rem);border-radius:8px}.modal-content{border-radius:8px}.payment-iframe{height:500px}.cards-accepted .cards-img{height:30px}}\n"] }]
|
|
9684
|
+
args: [{ selector: 'app-decidir-ec', standalone: true, imports: [CommonModule, FormsModule, LoadingFullEcComponent], template: "<div class=\"text-center\">\r\n <h3>Continuar con el pago en Decidir</h3>\r\n @if (method) {\r\n <p class=\"px-5\">{{ method.description }}</p>\r\n <p class=\"px-5\">{{ method.instructions }}</p>\r\n }\r\n @if (!loading) {\r\n <button class=\"btn btn-outline-secondary comprar\" (click)=\"openModal()\">Pagar</button>\r\n } @else {\r\n <div class=\"d-flex flex-column jusitfy-content-center align-items-center mt-2\">\r\n <app-loading-full-ec></app-loading-full-ec>\r\n </div>\r\n }\r\n </div>\r\n\r\n@if (showModal) {\r\n<div class=\"modal-backdrop\" (click)=\"clickClose()\">\r\n <div class=\"modal-dialog modal-lg\" (click)=\"$event.stopPropagation()\">\r\n <div class=\"modal-content\">\r\n\r\n <div class=\"modal-body\">\r\n <div class=\"payment-container\">\r\n \r\n <!-- Iframe del formulario de decidir -->\r\n <div class=\"iframe-container\">\r\n <iframe [src]=\"url\" frameborder=\"0\" class=\"payment-iframe\"></iframe>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n}\r\n", styles: [".modal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:1050;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-dialog{max-width:90%;max-height:90%;width:800px;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 20px 60px #0000004d;animation:modalFadeIn .3s ease-out}.modal-dialog.modal-lg{max-width:900px;width:90%}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.9) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-content{display:flex;flex-direction:column;height:100%;border:none;border-radius:16px;background:#fff}.modal-header{padding:1.5rem 2rem;border-bottom:1px solid #e9ecef;background:linear-gradient(135deg,#f8f9fa,#e9ecef);display:flex;justify-content:space-between;align-items:center;position:relative}.modal-header:after{content:\"\";position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,#dee2e6 50%,transparent 100%)}.modal-header .modal-title{margin:0;font-size:1.5rem;font-weight:700;color:#2c3e50;text-shadow:0 1px 2px rgba(0,0,0,.1)}.modal-header .btn-close{background:none;border:none;font-size:1.8rem;color:#6c757d;cursor:pointer;padding:0;width:35px;height:35px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s ease;position:relative}.modal-header .btn-close:hover{background-color:#dc3545;color:#fff;transform:rotate(90deg);box-shadow:0 4px 12px #dc35454d}.modal-header .btn-close:active{transform:rotate(90deg) scale(.95)}.modal-body{padding:0;flex:1;overflow:hidden;background:#fff}.payment-container{height:100%;display:flex;flex-direction:column;background:#fff}.cards-accepted{padding:1.5rem 2rem;text-align:center;border-bottom:1px solid #e9ecef;background:linear-gradient(135deg,#fff,#f8f9fa);position:relative}.cards-accepted:after{content:\"\";position:absolute;bottom:0;left:5%;right:5%;height:1px;background:linear-gradient(90deg,transparent 0%,#dee2e6 50%,transparent 100%)}.cards-accepted .cards-img{height:45px;max-width:100%;object-fit:contain;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));transition:transform .2s ease}.cards-accepted .cards-img:hover{transform:scale(1.05)}.iframe-container{flex:1;padding:1.5rem;background:#fff;position:relative}.iframe-container:before{content:\"\";position:absolute;top:0;left:1.5rem;right:1.5rem;height:1px;background:linear-gradient(90deg,transparent 0%,#e9ecef 50%,transparent 100%)}.payment-iframe{width:100%;height:620px;border:none;border-radius:12px;background:#fff;box-shadow:inset 0 2px 8px #0000000d}.half-width{width:49%!important}.ml-1{margin-left:1%}#card-form{height:450px}.iframeStyle{height:520px;width:100%}@media only screen and (max-width: 1024px){.modal-dialog,.modal-dialog.modal-lg{max-width:95%;width:95%}.payment-iframe{height:650px}.modal-header{padding:1rem 1.5rem}.modal-header .modal-title{font-size:1.125rem}.cards-accepted{padding:.75rem 1.5rem}}@media only screen and (max-width: 680px){.modal-dialog{max-width:98%;width:98%;margin:1rem;max-height:calc(100vh - 2rem)}.modal-dialog.modal-lg{max-width:98%;width:98%}.payment-iframe{height:550px}.modal-header{padding:1rem}.modal-header .modal-title{font-size:1rem}.modal-header .btn-close{width:28px;height:28px;font-size:1.25rem}.cards-accepted{padding:.5rem 1rem}.cards-accepted .cards-img{height:35px}.iframe-container{padding:.5rem}}@media only screen and (max-width: 480px){.modal-dialog{margin:.5rem;max-height:calc(100vh - 1rem);border-radius:8px}.modal-content{border-radius:8px}.payment-iframe{height:500px}.cards-accepted .cards-img{height:30px}}\n"] }]
|
|
9648
9685
|
}], ctorParameters: () => [{ type: i0.Renderer2 }, { type: ConnectionService }, { type: ToastService }, { type: CoreConstantsService }, { type: ApiConstantsService }, { type: CartService }, { type: i2.ActivatedRoute }, { type: i1$4.DomSanitizer }, { type: ParametersService }], propDecorators: { paymentServiceInst: [{
|
|
9649
9686
|
type: Input
|
|
9650
9687
|
}], method: [{
|
|
@@ -9738,7 +9775,7 @@ class PaymentEcComponent {
|
|
|
9738
9775
|
this._checkoutService.back();
|
|
9739
9776
|
};
|
|
9740
9777
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PaymentEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
9741
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: PaymentEcComponent, isStandalone: true, selector: "app-payment-ec", ngImport: i0, template: "@if(methods$ | async; as methods){\n<div class=\"container-fluid\">\n\n\t<div class=\"row\">\n\t\t<div class=\"col-12\">\n\t\t\t<div class=\"card \">\n\t\t\t\t<div class=\"card-header text-dark text-center\">\n\t\t\t\t\t<h4>{{ 'select-method' | translate }}</h4>\n\t\t\t\t\t<div class=\"btn-toolbar justify-content-center\" role=\"toolbar\" aria-label=\"Envios toolbar\">\n\t\t\t\t\t\t<div class=\"\" role=\"group\" aria-label=\"Grupo botones envio\">\n\t\t\t\t\t\t\t<div class=\"d-flex align-content-start justify-content-center flex-wrap\">\n\t\t\t\t\t\t\t\t@for (method of methods; track $index; let x = $index) {\n\t\t\t\t\t\t\t\t<button type=\"button\" class=\"btn btn-outline-secondary mx-1 mb-1\"(click)=\"setMethod(method) ; setActive($event)\">\n\t\t\t\t\t\t\t\t\t{{ method.name | translate }}\n\t\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<div class=\"card-body text-center\">\n\t\t\t\t\t@if(methodData$ | async; as method){\n\t\t\t\t\t<div class=\"row justify-content-center\">\n\t\t\t\t\t\t@if(!loadingInternal){\n\t\t\t\t\t\t\t@if(isMP(method.code)){\n\t\t\t\t\t\t\t\t<div class=\"method-container text-dark\">\n\t\t\t\t\t\t\t\t\t<div class=\"row\">\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\n\t\t\t\t\t\t\t\t\t\t\t<p id=\"faqs\" class=\"qt px-5 \">{{ method.description }}</p>\n\t\t\t\t\t\t\t\t\t\t\t<p class=\"px-5\">{{ method.instructions }}</p>\n\t\t\t\t\t\t\t\t\t\t<app-mp-redirect-ec (ready)=\"verifyValidate($event)\" \t[method]=\"method\"></app-mp-redirect-ec>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t<!-- <div class=\"method-container text-dark text-left\" *ngIf=\"isMPTarjetaDeCredito(method.code)\">\n\t\t\t\t\t\t\t\t<div class=\"row\">\n\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\n\t\t\t\t\t\t\t\t\t\t<p id=\"faqs\" class=\"qt px-5 \">{{ method.description }}</p>\n\t\t\t\t\t\t\t\t\t\t<p class=\"px-5\">{{ method.instructions }}</p>\n\t\t\t\t\t\t\t\t\t\t<div app-mp-credit-ec (ready)=\"verifyValidate()\" [public_key]=\"getPK(method)\"\n\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\" [total_amount]=\"total_amount\">\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isRedirectRedsys(method.code)\">\n\t\t\t\t\t\t\t\t<div class=\"row\">\n\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\n\t\t\t\t\t\t\t\t\t\t<ng-container\n\t\t\t\t\t\t\t\t\t\t\t*ngIf=\"!method.code.includes('bizum') && !method.code.includes('_out_')\">\n\t\t\t\t\t\t\t\t\t\t\t<app-redsys-redirect-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\n\t\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\">\n\t\t\t\t\t\t\t\t\t\t\t</app-redsys-redirect-ec>\n\t\t\t\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t\t\t\t\t<ng-container\n\t\t\t\t\t\t\t\t\t\t\t*ngIf=\"method.code.includes('bizum') || method.code.includes('_out_')\">\n\t\t\t\t\t\t\t\t\t\t\t<app-redsys-redirect-out-ec (ready)=\"verifyValidate($event)\"\n\t\t\t\t\t\t\t\t\t\t\t\t[method]=\"method\" [user_data]=\"allData()\">\n\t\t\t\t\t\t\t\t\t\t\t</app-redsys-redirect-out-ec>\n\t\t\t\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isRedirectCecaBank(method.code)\">\n\t\t\t\t\t\t\t\t<div class=\"row\">\n\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\n\t\t\t\t\t\t\t\t\t\t<app-ceca-redirect-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\n\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\">\n\t\t\t\t\t\t\t\t\t\t</app-ceca-redirect-ec>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isPeyPalExpress(method.code)\">\n\t\t\t\t\t\t\t\t<div class=\"container\">\n\t\t\t\t\t\t\t\t\t<div class=\"row justify-content-center\">\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\n\t\t\t\t\t\t\t\t\t\t\t<app-paypal-express-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\n\t\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\" [total_amount]=\"total_amount\">\n\t\t\t\t\t\t\t\t\t\t\t</app-paypal-express-ec>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isMobbex(method.code)\">\n\t\t\t\t\t\t\t\t<div class=\"container\">\n\t\t\t\t\t\t\t\t\t<div class=\"row justify-content-center\">\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\n\t\t\t\t\t\t\t\t\t\t\t<app-mobbex-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\n\t\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\" [paymentServiceInst]=\"paymentService\"\n\t\t\t\t\t\t\t\t\t\t\t\t[total_amount]=\"total_amount\">\n\t\t\t\t\t\t\t\t\t\t\t</app-mobbex-ec>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isBancard(method.code)\">\n\t\t\t\t\t\t\t\t<div class=\"container\">\n\t\t\t\t\t\t\t\t\t<div class=\"row justify-content-center\">\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\n\t\t\t\t\t\t\t\t\t\t\t<app-bancard-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\n\t\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\" [paymentServiceInst]=\"paymentService\"\n\t\t\t\t\t\t\t\t\t\t\t\t[total_amount]=\"total_amount\">\n\t\t\t\t\t\t\t\t\t\t\t</app-bancard-ec>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>-->\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isDecidir(method.code)\">\n\t\t\t\t\t\t\t\t<div class=\"container\">\n\t\t\t\t\t\t\t\t\t<div class=\"row justify-content-center\">\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\n\t\t\t\t\t\t\t\t\t\t\t<app-decidir-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\n\t\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\" [paymentServiceInst]=\"_paymentService\"\n\t\t\t\t\t\t\t\t\t\t\t\t[total_amount]=\"total_amount\">\n\t\t\t\t\t\t\t\t\t\t\t</app-decidir-ec>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div> \n\t\t\t\t\t\t\t@if(isMethodOffline(method.code)){\n\t\t\t\t\t\t\t<div class=\"method-container text-dark\">\n\t\t\t\t\t\t\t\t<div class=\"row\">\n\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\n\t\t\t\t\t\t\t\t\t\t<app-offline-ec \n\t\t\t\t\t\t\t\t\t\t[method]=\"method\" \n\t\t\t\t\t\t\t\t\t\t[verifyValidate]= \"verifyValidate\"\n\t\t\t\t\t\t\t\t\t\t[setLoading] = \"setLoading\" />\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\t\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t<!--\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isCulqi(method.code)\">\n\t\t\t\t\t\t\t\t<div class=\"container\">\n\t\t\t\t\t\t\t\t\t<div class=\"row justify-content-center\">\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\n\t\t\t\t\t\t\t\t\t\t\t<app-culqi-ec [apiKey]=\"getPKCulqi(method)\" [method]=\"method\"\n\t\t\t\t\t\t\t\t\t\t\t\t[amount]=\"total_amount\" [customStyle]=\"true\"\n\t\t\t\t\t\t\t\t\t\t\t\t(ready)=\"verifyValidate()\"></app-culqi-ec>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isCatastro(method.code)\">\n\t\t\t\t\t\t\t\t<div class=\"container\">\n\t\t\t\t\t\t\t\t\t<div class=\"row justify-content-center\">\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\n\t\t\t\t\t\t\t\t\t\t\t<app-bancard-catastro-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\n\t\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\" [paymentServiceInst]=\"paymentService\"\n\t\t\t\t\t\t\t\t\t\t\t\t[total_amount]=\"total_amount\"></app-bancard-catastro-ec>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isBamboo(method.code)\">\n\t\t\t\t\t\t\t\t<div class=\"container\">\n\t\t\t\t\t\t\t\t\t<div class=\"row justify-content-center\">\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\n\t\t\t\t\t\t\t\t\t\t\t<app-bamboo-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\n\t\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\" [paymentServiceInst]=\"paymentService\"\n\t\t\t\t\t\t\t\t\t\t\t\t[total_amount]=\"total_amount\"></app-bamboo-ec>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div> -->\n\t\t\t\t\t\t\t@if(isBankTransfer(method.code)){\n\t\t\t\t\t\t\t\t<div class=\"method-container text-dark\">\n\t\t\t\t\t\t\t\t\t<div class=\"row\">\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\n\t\t\t\t\t\t\t\t\t\t\t<app-bank-transfer-ec \n\t\t\t\t\t\t\t\t\t\t\t\t[method]=\"method\" \n\t\t\t\t\t\t\t\t\t\t\t\t[verifyValidate]= \"verifyValidate\"\n\t\t\t\t\t\t\t\t\t\t\t\t[setLoading] = \"setLoading\" />\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} @else {\n\t\t\t\t\t\t\t<app-loading-inline-ec></app-loading-inline-ec>\n\t\t\t\t\t\t}\n\t\t\t\t\t</div>\n\t\t\t\t\t}\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div class=\"row d-flex flex-row\">\n\t\t\t\t<div class=\"col-12 d-flex justify-content-between\">\n\t\t\t\t\t<button class=\"btn btn-primary text-white\" (click)=\"goBack()\">{{'back'|translate}}</button>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n}", styles: [""], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "component", type: LoadingInlineEcComponent, selector: "app-loading-inline-ec", inputs: ["type"] }, { kind: "component", type: MpRedirectEcComponent, selector: "app-mp-redirect-ec", inputs: ["method", "total_amount", "allData"], outputs: ["ready"] }, { kind: "component", type: BankTransferEcComponent, selector: "app-bank-transfer-ec", inputs: ["method", "verifyValidate", "setLoading"] }, { kind: "component", type: OfflineEcComponent, selector: "app-offline-ec", inputs: ["method", "verifyValidate", "setLoading"] }, { kind: "component", type: DecidirEcComponent, selector: "app-decidir-ec", inputs: ["paymentServiceInst", "method", "total_amount", "allData", "user_data"], outputs: ["ready"] }] });
|
|
9778
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: PaymentEcComponent, isStandalone: true, selector: "app-payment-ec", ngImport: i0, template: "@if(methods$ | async; as methods){\r\n<div class=\"container-fluid\">\r\n\r\n\t<div class=\"row\">\r\n\t\t<div class=\"col-12\">\r\n\t\t\t<div class=\"card \">\r\n\t\t\t\t<div class=\"card-header text-dark text-center\">\r\n\t\t\t\t\t<h4>{{ 'select-method' | translate }}</h4>\r\n\t\t\t\t\t<div class=\"btn-toolbar justify-content-center\" role=\"toolbar\" aria-label=\"Envios toolbar\">\r\n\t\t\t\t\t\t<div class=\"\" role=\"group\" aria-label=\"Grupo botones envio\">\r\n\t\t\t\t\t\t\t<div class=\"d-flex align-content-start justify-content-center flex-wrap\">\r\n\t\t\t\t\t\t\t\t@for (method of methods; track $index; let x = $index) {\r\n\t\t\t\t\t\t\t\t<button type=\"button\" class=\"btn btn-outline-secondary mx-1 mb-1\"(click)=\"setMethod(method) ; setActive($event)\">\r\n\t\t\t\t\t\t\t\t\t{{ method.name | translate }}\r\n\t\t\t\t\t\t\t\t</button>\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div class=\"card-body text-center\">\r\n\t\t\t\t\t@if(methodData$ | async; as method){\r\n\t\t\t\t\t<div class=\"row justify-content-center\">\r\n\t\t\t\t\t\t@if(!loadingInternal){\r\n\t\t\t\t\t\t\t@if(isMP(method.code)){\r\n\t\t\t\t\t\t\t\t<div class=\"method-container text-dark\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"row\">\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\r\n\t\t\t\t\t\t\t\t\t\t\t<p id=\"faqs\" class=\"qt px-5 \">{{ method.description }}</p>\r\n\t\t\t\t\t\t\t\t\t\t\t<p class=\"px-5\">{{ method.instructions }}</p>\r\n\t\t\t\t\t\t\t\t\t\t<app-mp-redirect-ec (ready)=\"verifyValidate($event)\" \t[method]=\"method\"></app-mp-redirect-ec>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t<!-- <div class=\"method-container text-dark text-left\" *ngIf=\"isMPTarjetaDeCredito(method.code)\">\r\n\t\t\t\t\t\t\t\t<div class=\"row\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\r\n\t\t\t\t\t\t\t\t\t\t<p id=\"faqs\" class=\"qt px-5 \">{{ method.description }}</p>\r\n\t\t\t\t\t\t\t\t\t\t<p class=\"px-5\">{{ method.instructions }}</p>\r\n\t\t\t\t\t\t\t\t\t\t<div app-mp-credit-ec (ready)=\"verifyValidate()\" [public_key]=\"getPK(method)\"\r\n\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\" [total_amount]=\"total_amount\">\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isRedirectRedsys(method.code)\">\r\n\t\t\t\t\t\t\t\t<div class=\"row\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\r\n\t\t\t\t\t\t\t\t\t\t<ng-container\r\n\t\t\t\t\t\t\t\t\t\t\t*ngIf=\"!method.code.includes('bizum') && !method.code.includes('_out_')\">\r\n\t\t\t\t\t\t\t\t\t\t\t<app-redsys-redirect-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\">\r\n\t\t\t\t\t\t\t\t\t\t\t</app-redsys-redirect-ec>\r\n\t\t\t\t\t\t\t\t\t\t</ng-container>\r\n\t\t\t\t\t\t\t\t\t\t<ng-container\r\n\t\t\t\t\t\t\t\t\t\t\t*ngIf=\"method.code.includes('bizum') || method.code.includes('_out_')\">\r\n\t\t\t\t\t\t\t\t\t\t\t<app-redsys-redirect-out-ec (ready)=\"verifyValidate($event)\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t[method]=\"method\" [user_data]=\"allData()\">\r\n\t\t\t\t\t\t\t\t\t\t\t</app-redsys-redirect-out-ec>\r\n\t\t\t\t\t\t\t\t\t\t</ng-container>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isRedirectCecaBank(method.code)\">\r\n\t\t\t\t\t\t\t\t<div class=\"row\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\r\n\t\t\t\t\t\t\t\t\t\t<app-ceca-redirect-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\r\n\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\">\r\n\t\t\t\t\t\t\t\t\t\t</app-ceca-redirect-ec>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isPeyPalExpress(method.code)\">\r\n\t\t\t\t\t\t\t\t<div class=\"container\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"row justify-content-center\">\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\r\n\t\t\t\t\t\t\t\t\t\t\t<app-paypal-express-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\" [total_amount]=\"total_amount\">\r\n\t\t\t\t\t\t\t\t\t\t\t</app-paypal-express-ec>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isMobbex(method.code)\">\r\n\t\t\t\t\t\t\t\t<div class=\"container\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"row justify-content-center\">\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\r\n\t\t\t\t\t\t\t\t\t\t\t<app-mobbex-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\" [paymentServiceInst]=\"paymentService\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t[total_amount]=\"total_amount\">\r\n\t\t\t\t\t\t\t\t\t\t\t</app-mobbex-ec>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isBancard(method.code)\">\r\n\t\t\t\t\t\t\t\t<div class=\"container\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"row justify-content-center\">\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\r\n\t\t\t\t\t\t\t\t\t\t\t<app-bancard-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\" [paymentServiceInst]=\"paymentService\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t[total_amount]=\"total_amount\">\r\n\t\t\t\t\t\t\t\t\t\t\t</app-bancard-ec>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>-->\r\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isDecidir(method.code)\">\r\n\t\t\t\t\t\t\t\t<div class=\"container\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"row justify-content-center\">\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\r\n\t\t\t\t\t\t\t\t\t\t\t<app-decidir-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\" [paymentServiceInst]=\"_paymentService\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t[total_amount]=\"total_amount\">\r\n\t\t\t\t\t\t\t\t\t\t\t</app-decidir-ec>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div> \r\n\t\t\t\t\t\t\t@if(isMethodOffline(method.code)){\r\n\t\t\t\t\t\t\t<div class=\"method-container text-dark\">\r\n\t\t\t\t\t\t\t\t<div class=\"row\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\r\n\t\t\t\t\t\t\t\t\t\t<app-offline-ec \r\n\t\t\t\t\t\t\t\t\t\t[method]=\"method\" \r\n\t\t\t\t\t\t\t\t\t\t[verifyValidate]= \"verifyValidate\"\r\n\t\t\t\t\t\t\t\t\t\t[setLoading] = \"setLoading\" />\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\t\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t<!--\r\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isCulqi(method.code)\">\r\n\t\t\t\t\t\t\t\t<div class=\"container\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"row justify-content-center\">\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\r\n\t\t\t\t\t\t\t\t\t\t\t<app-culqi-ec [apiKey]=\"getPKCulqi(method)\" [method]=\"method\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t[amount]=\"total_amount\" [customStyle]=\"true\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t(ready)=\"verifyValidate()\"></app-culqi-ec>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isCatastro(method.code)\">\r\n\t\t\t\t\t\t\t\t<div class=\"container\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"row justify-content-center\">\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\r\n\t\t\t\t\t\t\t\t\t\t\t<app-bancard-catastro-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\" [paymentServiceInst]=\"paymentService\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t[total_amount]=\"total_amount\"></app-bancard-catastro-ec>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isBamboo(method.code)\">\r\n\t\t\t\t\t\t\t\t<div class=\"container\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"row justify-content-center\">\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\r\n\t\t\t\t\t\t\t\t\t\t\t<app-bamboo-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\" [paymentServiceInst]=\"paymentService\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t[total_amount]=\"total_amount\"></app-bamboo-ec>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div> -->\r\n\t\t\t\t\t\t\t@if(isBankTransfer(method.code)){\r\n\t\t\t\t\t\t\t\t<div class=\"method-container text-dark\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"row\">\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\r\n\t\t\t\t\t\t\t\t\t\t\t<app-bank-transfer-ec \r\n\t\t\t\t\t\t\t\t\t\t\t\t[method]=\"method\" \r\n\t\t\t\t\t\t\t\t\t\t\t\t[verifyValidate]= \"verifyValidate\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t[setLoading] = \"setLoading\" />\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t} @else {\r\n\t\t\t\t\t\t\t<app-loading-inline-ec></app-loading-inline-ec>\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t}\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<div class=\"row d-flex flex-row\">\r\n\t\t\t\t<div class=\"col-12 d-flex justify-content-between\">\r\n\t\t\t\t\t<button class=\"btn btn-primary text-white\" (click)=\"goBack()\">{{'back'|translate}}</button>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</div>\r\n}", styles: [""], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "component", type: LoadingInlineEcComponent, selector: "app-loading-inline-ec", inputs: ["type"] }, { kind: "component", type: MpRedirectEcComponent, selector: "app-mp-redirect-ec", inputs: ["method", "total_amount", "allData"], outputs: ["ready"] }, { kind: "component", type: BankTransferEcComponent, selector: "app-bank-transfer-ec", inputs: ["method", "verifyValidate", "setLoading"] }, { kind: "component", type: OfflineEcComponent, selector: "app-offline-ec", inputs: ["method", "verifyValidate", "setLoading"] }, { kind: "component", type: DecidirEcComponent, selector: "app-decidir-ec", inputs: ["paymentServiceInst", "method", "total_amount", "allData", "user_data"], outputs: ["ready"] }] });
|
|
9742
9779
|
}
|
|
9743
9780
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PaymentEcComponent, decorators: [{
|
|
9744
9781
|
type: Component,
|
|
@@ -9750,7 +9787,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
9750
9787
|
BankTransferEcComponent,
|
|
9751
9788
|
OfflineEcComponent,
|
|
9752
9789
|
DecidirEcComponent
|
|
9753
|
-
], template: "@if(methods$ | async; as methods){\n<div class=\"container-fluid\">\n\n\t<div class=\"row\">\n\t\t<div class=\"col-12\">\n\t\t\t<div class=\"card \">\n\t\t\t\t<div class=\"card-header text-dark text-center\">\n\t\t\t\t\t<h4>{{ 'select-method' | translate }}</h4>\n\t\t\t\t\t<div class=\"btn-toolbar justify-content-center\" role=\"toolbar\" aria-label=\"Envios toolbar\">\n\t\t\t\t\t\t<div class=\"\" role=\"group\" aria-label=\"Grupo botones envio\">\n\t\t\t\t\t\t\t<div class=\"d-flex align-content-start justify-content-center flex-wrap\">\n\t\t\t\t\t\t\t\t@for (method of methods; track $index; let x = $index) {\n\t\t\t\t\t\t\t\t<button type=\"button\" class=\"btn btn-outline-secondary mx-1 mb-1\"(click)=\"setMethod(method) ; setActive($event)\">\n\t\t\t\t\t\t\t\t\t{{ method.name | translate }}\n\t\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<div class=\"card-body text-center\">\n\t\t\t\t\t@if(methodData$ | async; as method){\n\t\t\t\t\t<div class=\"row justify-content-center\">\n\t\t\t\t\t\t@if(!loadingInternal){\n\t\t\t\t\t\t\t@if(isMP(method.code)){\n\t\t\t\t\t\t\t\t<div class=\"method-container text-dark\">\n\t\t\t\t\t\t\t\t\t<div class=\"row\">\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\n\t\t\t\t\t\t\t\t\t\t\t<p id=\"faqs\" class=\"qt px-5 \">{{ method.description }}</p>\n\t\t\t\t\t\t\t\t\t\t\t<p class=\"px-5\">{{ method.instructions }}</p>\n\t\t\t\t\t\t\t\t\t\t<app-mp-redirect-ec (ready)=\"verifyValidate($event)\" \t[method]=\"method\"></app-mp-redirect-ec>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t<!-- <div class=\"method-container text-dark text-left\" *ngIf=\"isMPTarjetaDeCredito(method.code)\">\n\t\t\t\t\t\t\t\t<div class=\"row\">\n\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\n\t\t\t\t\t\t\t\t\t\t<p id=\"faqs\" class=\"qt px-5 \">{{ method.description }}</p>\n\t\t\t\t\t\t\t\t\t\t<p class=\"px-5\">{{ method.instructions }}</p>\n\t\t\t\t\t\t\t\t\t\t<div app-mp-credit-ec (ready)=\"verifyValidate()\" [public_key]=\"getPK(method)\"\n\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\" [total_amount]=\"total_amount\">\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isRedirectRedsys(method.code)\">\n\t\t\t\t\t\t\t\t<div class=\"row\">\n\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\n\t\t\t\t\t\t\t\t\t\t<ng-container\n\t\t\t\t\t\t\t\t\t\t\t*ngIf=\"!method.code.includes('bizum') && !method.code.includes('_out_')\">\n\t\t\t\t\t\t\t\t\t\t\t<app-redsys-redirect-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\n\t\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\">\n\t\t\t\t\t\t\t\t\t\t\t</app-redsys-redirect-ec>\n\t\t\t\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t\t\t\t\t<ng-container\n\t\t\t\t\t\t\t\t\t\t\t*ngIf=\"method.code.includes('bizum') || method.code.includes('_out_')\">\n\t\t\t\t\t\t\t\t\t\t\t<app-redsys-redirect-out-ec (ready)=\"verifyValidate($event)\"\n\t\t\t\t\t\t\t\t\t\t\t\t[method]=\"method\" [user_data]=\"allData()\">\n\t\t\t\t\t\t\t\t\t\t\t</app-redsys-redirect-out-ec>\n\t\t\t\t\t\t\t\t\t\t</ng-container>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isRedirectCecaBank(method.code)\">\n\t\t\t\t\t\t\t\t<div class=\"row\">\n\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\n\t\t\t\t\t\t\t\t\t\t<app-ceca-redirect-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\n\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\">\n\t\t\t\t\t\t\t\t\t\t</app-ceca-redirect-ec>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isPeyPalExpress(method.code)\">\n\t\t\t\t\t\t\t\t<div class=\"container\">\n\t\t\t\t\t\t\t\t\t<div class=\"row justify-content-center\">\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\n\t\t\t\t\t\t\t\t\t\t\t<app-paypal-express-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\n\t\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\" [total_amount]=\"total_amount\">\n\t\t\t\t\t\t\t\t\t\t\t</app-paypal-express-ec>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isMobbex(method.code)\">\n\t\t\t\t\t\t\t\t<div class=\"container\">\n\t\t\t\t\t\t\t\t\t<div class=\"row justify-content-center\">\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\n\t\t\t\t\t\t\t\t\t\t\t<app-mobbex-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\n\t\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\" [paymentServiceInst]=\"paymentService\"\n\t\t\t\t\t\t\t\t\t\t\t\t[total_amount]=\"total_amount\">\n\t\t\t\t\t\t\t\t\t\t\t</app-mobbex-ec>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isBancard(method.code)\">\n\t\t\t\t\t\t\t\t<div class=\"container\">\n\t\t\t\t\t\t\t\t\t<div class=\"row justify-content-center\">\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\n\t\t\t\t\t\t\t\t\t\t\t<app-bancard-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\n\t\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\" [paymentServiceInst]=\"paymentService\"\n\t\t\t\t\t\t\t\t\t\t\t\t[total_amount]=\"total_amount\">\n\t\t\t\t\t\t\t\t\t\t\t</app-bancard-ec>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>-->\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isDecidir(method.code)\">\n\t\t\t\t\t\t\t\t<div class=\"container\">\n\t\t\t\t\t\t\t\t\t<div class=\"row justify-content-center\">\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\n\t\t\t\t\t\t\t\t\t\t\t<app-decidir-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\n\t\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\" [paymentServiceInst]=\"_paymentService\"\n\t\t\t\t\t\t\t\t\t\t\t\t[total_amount]=\"total_amount\">\n\t\t\t\t\t\t\t\t\t\t\t</app-decidir-ec>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div> \n\t\t\t\t\t\t\t@if(isMethodOffline(method.code)){\n\t\t\t\t\t\t\t<div class=\"method-container text-dark\">\n\t\t\t\t\t\t\t\t<div class=\"row\">\n\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\n\t\t\t\t\t\t\t\t\t\t<app-offline-ec \n\t\t\t\t\t\t\t\t\t\t[method]=\"method\" \n\t\t\t\t\t\t\t\t\t\t[verifyValidate]= \"verifyValidate\"\n\t\t\t\t\t\t\t\t\t\t[setLoading] = \"setLoading\" />\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\t\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t<!--\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isCulqi(method.code)\">\n\t\t\t\t\t\t\t\t<div class=\"container\">\n\t\t\t\t\t\t\t\t\t<div class=\"row justify-content-center\">\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\n\t\t\t\t\t\t\t\t\t\t\t<app-culqi-ec [apiKey]=\"getPKCulqi(method)\" [method]=\"method\"\n\t\t\t\t\t\t\t\t\t\t\t\t[amount]=\"total_amount\" [customStyle]=\"true\"\n\t\t\t\t\t\t\t\t\t\t\t\t(ready)=\"verifyValidate()\"></app-culqi-ec>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isCatastro(method.code)\">\n\t\t\t\t\t\t\t\t<div class=\"container\">\n\t\t\t\t\t\t\t\t\t<div class=\"row justify-content-center\">\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\n\t\t\t\t\t\t\t\t\t\t\t<app-bancard-catastro-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\n\t\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\" [paymentServiceInst]=\"paymentService\"\n\t\t\t\t\t\t\t\t\t\t\t\t[total_amount]=\"total_amount\"></app-bancard-catastro-ec>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isBamboo(method.code)\">\n\t\t\t\t\t\t\t\t<div class=\"container\">\n\t\t\t\t\t\t\t\t\t<div class=\"row justify-content-center\">\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\n\t\t\t\t\t\t\t\t\t\t\t<app-bamboo-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\n\t\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\" [paymentServiceInst]=\"paymentService\"\n\t\t\t\t\t\t\t\t\t\t\t\t[total_amount]=\"total_amount\"></app-bamboo-ec>\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div> -->\n\t\t\t\t\t\t\t@if(isBankTransfer(method.code)){\n\t\t\t\t\t\t\t\t<div class=\"method-container text-dark\">\n\t\t\t\t\t\t\t\t\t<div class=\"row\">\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\n\t\t\t\t\t\t\t\t\t\t\t<app-bank-transfer-ec \n\t\t\t\t\t\t\t\t\t\t\t\t[method]=\"method\" \n\t\t\t\t\t\t\t\t\t\t\t\t[verifyValidate]= \"verifyValidate\"\n\t\t\t\t\t\t\t\t\t\t\t\t[setLoading] = \"setLoading\" />\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} @else {\n\t\t\t\t\t\t\t<app-loading-inline-ec></app-loading-inline-ec>\n\t\t\t\t\t\t}\n\t\t\t\t\t</div>\n\t\t\t\t\t}\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div class=\"row d-flex flex-row\">\n\t\t\t\t<div class=\"col-12 d-flex justify-content-between\">\n\t\t\t\t\t<button class=\"btn btn-primary text-white\" (click)=\"goBack()\">{{'back'|translate}}</button>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</div>\n}" }]
|
|
9790
|
+
], template: "@if(methods$ | async; as methods){\r\n<div class=\"container-fluid\">\r\n\r\n\t<div class=\"row\">\r\n\t\t<div class=\"col-12\">\r\n\t\t\t<div class=\"card \">\r\n\t\t\t\t<div class=\"card-header text-dark text-center\">\r\n\t\t\t\t\t<h4>{{ 'select-method' | translate }}</h4>\r\n\t\t\t\t\t<div class=\"btn-toolbar justify-content-center\" role=\"toolbar\" aria-label=\"Envios toolbar\">\r\n\t\t\t\t\t\t<div class=\"\" role=\"group\" aria-label=\"Grupo botones envio\">\r\n\t\t\t\t\t\t\t<div class=\"d-flex align-content-start justify-content-center flex-wrap\">\r\n\t\t\t\t\t\t\t\t@for (method of methods; track $index; let x = $index) {\r\n\t\t\t\t\t\t\t\t<button type=\"button\" class=\"btn btn-outline-secondary mx-1 mb-1\"(click)=\"setMethod(method) ; setActive($event)\">\r\n\t\t\t\t\t\t\t\t\t{{ method.name | translate }}\r\n\t\t\t\t\t\t\t\t</button>\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div class=\"card-body text-center\">\r\n\t\t\t\t\t@if(methodData$ | async; as method){\r\n\t\t\t\t\t<div class=\"row justify-content-center\">\r\n\t\t\t\t\t\t@if(!loadingInternal){\r\n\t\t\t\t\t\t\t@if(isMP(method.code)){\r\n\t\t\t\t\t\t\t\t<div class=\"method-container text-dark\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"row\">\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\r\n\t\t\t\t\t\t\t\t\t\t\t<p id=\"faqs\" class=\"qt px-5 \">{{ method.description }}</p>\r\n\t\t\t\t\t\t\t\t\t\t\t<p class=\"px-5\">{{ method.instructions }}</p>\r\n\t\t\t\t\t\t\t\t\t\t<app-mp-redirect-ec (ready)=\"verifyValidate($event)\" \t[method]=\"method\"></app-mp-redirect-ec>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t<!-- <div class=\"method-container text-dark text-left\" *ngIf=\"isMPTarjetaDeCredito(method.code)\">\r\n\t\t\t\t\t\t\t\t<div class=\"row\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\r\n\t\t\t\t\t\t\t\t\t\t<p id=\"faqs\" class=\"qt px-5 \">{{ method.description }}</p>\r\n\t\t\t\t\t\t\t\t\t\t<p class=\"px-5\">{{ method.instructions }}</p>\r\n\t\t\t\t\t\t\t\t\t\t<div app-mp-credit-ec (ready)=\"verifyValidate()\" [public_key]=\"getPK(method)\"\r\n\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\" [total_amount]=\"total_amount\">\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isRedirectRedsys(method.code)\">\r\n\t\t\t\t\t\t\t\t<div class=\"row\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\r\n\t\t\t\t\t\t\t\t\t\t<ng-container\r\n\t\t\t\t\t\t\t\t\t\t\t*ngIf=\"!method.code.includes('bizum') && !method.code.includes('_out_')\">\r\n\t\t\t\t\t\t\t\t\t\t\t<app-redsys-redirect-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\">\r\n\t\t\t\t\t\t\t\t\t\t\t</app-redsys-redirect-ec>\r\n\t\t\t\t\t\t\t\t\t\t</ng-container>\r\n\t\t\t\t\t\t\t\t\t\t<ng-container\r\n\t\t\t\t\t\t\t\t\t\t\t*ngIf=\"method.code.includes('bizum') || method.code.includes('_out_')\">\r\n\t\t\t\t\t\t\t\t\t\t\t<app-redsys-redirect-out-ec (ready)=\"verifyValidate($event)\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t[method]=\"method\" [user_data]=\"allData()\">\r\n\t\t\t\t\t\t\t\t\t\t\t</app-redsys-redirect-out-ec>\r\n\t\t\t\t\t\t\t\t\t\t</ng-container>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isRedirectCecaBank(method.code)\">\r\n\t\t\t\t\t\t\t\t<div class=\"row\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\r\n\t\t\t\t\t\t\t\t\t\t<app-ceca-redirect-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\r\n\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\">\r\n\t\t\t\t\t\t\t\t\t\t</app-ceca-redirect-ec>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isPeyPalExpress(method.code)\">\r\n\t\t\t\t\t\t\t\t<div class=\"container\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"row justify-content-center\">\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\r\n\t\t\t\t\t\t\t\t\t\t\t<app-paypal-express-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\" [total_amount]=\"total_amount\">\r\n\t\t\t\t\t\t\t\t\t\t\t</app-paypal-express-ec>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isMobbex(method.code)\">\r\n\t\t\t\t\t\t\t\t<div class=\"container\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"row justify-content-center\">\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\r\n\t\t\t\t\t\t\t\t\t\t\t<app-mobbex-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\" [paymentServiceInst]=\"paymentService\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t[total_amount]=\"total_amount\">\r\n\t\t\t\t\t\t\t\t\t\t\t</app-mobbex-ec>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isBancard(method.code)\">\r\n\t\t\t\t\t\t\t\t<div class=\"container\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"row justify-content-center\">\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\r\n\t\t\t\t\t\t\t\t\t\t\t<app-bancard-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\" [paymentServiceInst]=\"paymentService\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t[total_amount]=\"total_amount\">\r\n\t\t\t\t\t\t\t\t\t\t\t</app-bancard-ec>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>-->\r\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isDecidir(method.code)\">\r\n\t\t\t\t\t\t\t\t<div class=\"container\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"row justify-content-center\">\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\r\n\t\t\t\t\t\t\t\t\t\t\t<app-decidir-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\" [paymentServiceInst]=\"_paymentService\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t[total_amount]=\"total_amount\">\r\n\t\t\t\t\t\t\t\t\t\t\t</app-decidir-ec>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div> \r\n\t\t\t\t\t\t\t@if(isMethodOffline(method.code)){\r\n\t\t\t\t\t\t\t<div class=\"method-container text-dark\">\r\n\t\t\t\t\t\t\t\t<div class=\"row\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\r\n\t\t\t\t\t\t\t\t\t\t<app-offline-ec \r\n\t\t\t\t\t\t\t\t\t\t[method]=\"method\" \r\n\t\t\t\t\t\t\t\t\t\t[verifyValidate]= \"verifyValidate\"\r\n\t\t\t\t\t\t\t\t\t\t[setLoading] = \"setLoading\" />\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\t\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t<!--\r\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isCulqi(method.code)\">\r\n\t\t\t\t\t\t\t\t<div class=\"container\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"row justify-content-center\">\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\r\n\t\t\t\t\t\t\t\t\t\t\t<app-culqi-ec [apiKey]=\"getPKCulqi(method)\" [method]=\"method\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t[amount]=\"total_amount\" [customStyle]=\"true\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t(ready)=\"verifyValidate()\"></app-culqi-ec>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isCatastro(method.code)\">\r\n\t\t\t\t\t\t\t\t<div class=\"container\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"row justify-content-center\">\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\r\n\t\t\t\t\t\t\t\t\t\t\t<app-bancard-catastro-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\" [paymentServiceInst]=\"paymentService\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t[total_amount]=\"total_amount\"></app-bancard-catastro-ec>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t<div class=\"method-container text-dark text-start\" *ngIf=\"isBamboo(method.code)\">\r\n\t\t\t\t\t\t\t\t<div class=\"container\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"row justify-content-center\">\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\r\n\t\t\t\t\t\t\t\t\t\t\t<app-bamboo-ec (ready)=\"verifyValidate($event)\" [method]=\"method\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t[user_data]=\"allData()\" [paymentServiceInst]=\"paymentService\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t[total_amount]=\"total_amount\"></app-bamboo-ec>\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t</div> -->\r\n\t\t\t\t\t\t\t@if(isBankTransfer(method.code)){\r\n\t\t\t\t\t\t\t\t<div class=\"method-container text-dark\">\r\n\t\t\t\t\t\t\t\t\t<div class=\"row\">\r\n\t\t\t\t\t\t\t\t\t\t<div class=\"col-12\">\r\n\t\t\t\t\t\t\t\t\t\t\t<app-bank-transfer-ec \r\n\t\t\t\t\t\t\t\t\t\t\t\t[method]=\"method\" \r\n\t\t\t\t\t\t\t\t\t\t\t\t[verifyValidate]= \"verifyValidate\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t[setLoading] = \"setLoading\" />\r\n\t\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t} @else {\r\n\t\t\t\t\t\t\t<app-loading-inline-ec></app-loading-inline-ec>\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t}\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<div class=\"row d-flex flex-row\">\r\n\t\t\t\t<div class=\"col-12 d-flex justify-content-between\">\r\n\t\t\t\t\t<button class=\"btn btn-primary text-white\" (click)=\"goBack()\">{{'back'|translate}}</button>\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</div>\r\n}" }]
|
|
9754
9791
|
}], ctorParameters: () => [] });
|
|
9755
9792
|
|
|
9756
9793
|
class StepContainerEcComponent {
|
|
@@ -9766,7 +9803,7 @@ class StepContainerEcComponent {
|
|
|
9766
9803
|
this._checkoutService.back();
|
|
9767
9804
|
}
|
|
9768
9805
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: StepContainerEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
9769
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: StepContainerEcComponent, isStandalone: true, selector: "app-step-container-ec", inputs: { steps: "steps" }, ngImport: i0, template: "<div>\n @for(step of steps; track $index; let x=$index){\n <div [id]=\"'test-l-'+step.priority\" 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 @switch (step.name) {\n @case ('address') {\n @if(step.state == 'ready') {\n <app-dataform-ec />\n }\n }\n @case ('payment') {\n @if(step.state == 'ready') {\n <app-payment-ec />\n }\n }\n @case ('shipment') {\n @if(step.state == 'ready') {\n <app-shipment-ec />\n }\n }\n }\n </div>\n }\n <!-- <div class=\"row d-flex flex-row\">\n <div class=\"col-6 d-flex justify-content-start\">\n <button type=\"button\" class=\"btn btn-primary text-white\" (click)=\"back()\">Anterior</button>\n </div>\n <div class=\"col-6 d-flex justify-content-end\">\n <button type=\"button\" class=\"btn btn-primary text-white\" (click)=\"next()\">Siguiente</button>\n </div>\n </div> -->\n</div>\n", styles: [""], dependencies: [{ kind: "component", type: DataformEcComponent, selector: "app-dataform-ec" }, { kind: "component", type: ShipmentEcComponent, selector: "app-shipment-ec" }, { kind: "component", type: PaymentEcComponent, selector: "app-payment-ec" }] });
|
|
9806
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: StepContainerEcComponent, isStandalone: true, selector: "app-step-container-ec", inputs: { steps: "steps" }, ngImport: i0, template: "<div>\r\n @for(step of steps; track $index; let x=$index){\r\n <div [id]=\"'test-l-'+step.priority\" class=\"content\">\r\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\">\r\n </app-step-ec> -->\r\n @switch (step.name) {\r\n @case ('address') {\r\n @if(step.state == 'ready') {\r\n <app-dataform-ec />\r\n }\r\n }\r\n @case ('payment') {\r\n @if(step.state == 'ready') {\r\n <app-payment-ec />\r\n }\r\n }\r\n @case ('shipment') {\r\n @if(step.state == 'ready') {\r\n <app-shipment-ec />\r\n }\r\n }\r\n }\r\n </div>\r\n }\r\n <!-- <div class=\"row d-flex flex-row\">\r\n <div class=\"col-6 d-flex justify-content-start\">\r\n <button type=\"button\" class=\"btn btn-primary text-white\" (click)=\"back()\">Anterior</button>\r\n </div>\r\n <div class=\"col-6 d-flex justify-content-end\">\r\n <button type=\"button\" class=\"btn btn-primary text-white\" (click)=\"next()\">Siguiente</button>\r\n </div>\r\n </div> -->\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "component", type: DataformEcComponent, selector: "app-dataform-ec" }, { kind: "component", type: ShipmentEcComponent, selector: "app-shipment-ec" }, { kind: "component", type: PaymentEcComponent, selector: "app-payment-ec" }] });
|
|
9770
9807
|
}
|
|
9771
9808
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: StepContainerEcComponent, decorators: [{
|
|
9772
9809
|
type: Component,
|
|
@@ -9774,7 +9811,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
9774
9811
|
DataformEcComponent,
|
|
9775
9812
|
ShipmentEcComponent,
|
|
9776
9813
|
PaymentEcComponent
|
|
9777
|
-
], template: "<div>\n @for(step of steps; track $index; let x=$index){\n <div [id]=\"'test-l-'+step.priority\" 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 @switch (step.name) {\n @case ('address') {\n @if(step.state == 'ready') {\n <app-dataform-ec />\n }\n }\n @case ('payment') {\n @if(step.state == 'ready') {\n <app-payment-ec />\n }\n }\n @case ('shipment') {\n @if(step.state == 'ready') {\n <app-shipment-ec />\n }\n }\n }\n </div>\n }\n <!-- <div class=\"row d-flex flex-row\">\n <div class=\"col-6 d-flex justify-content-start\">\n <button type=\"button\" class=\"btn btn-primary text-white\" (click)=\"back()\">Anterior</button>\n </div>\n <div class=\"col-6 d-flex justify-content-end\">\n <button type=\"button\" class=\"btn btn-primary text-white\" (click)=\"next()\">Siguiente</button>\n </div>\n </div> -->\n</div>\n" }]
|
|
9814
|
+
], template: "<div>\r\n @for(step of steps; track $index; let x=$index){\r\n <div [id]=\"'test-l-'+step.priority\" class=\"content\">\r\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\">\r\n </app-step-ec> -->\r\n @switch (step.name) {\r\n @case ('address') {\r\n @if(step.state == 'ready') {\r\n <app-dataform-ec />\r\n }\r\n }\r\n @case ('payment') {\r\n @if(step.state == 'ready') {\r\n <app-payment-ec />\r\n }\r\n }\r\n @case ('shipment') {\r\n @if(step.state == 'ready') {\r\n <app-shipment-ec />\r\n }\r\n }\r\n }\r\n </div>\r\n }\r\n <!-- <div class=\"row d-flex flex-row\">\r\n <div class=\"col-6 d-flex justify-content-start\">\r\n <button type=\"button\" class=\"btn btn-primary text-white\" (click)=\"back()\">Anterior</button>\r\n </div>\r\n <div class=\"col-6 d-flex justify-content-end\">\r\n <button type=\"button\" class=\"btn btn-primary text-white\" (click)=\"next()\">Siguiente</button>\r\n </div>\r\n </div> -->\r\n</div>\r\n" }]
|
|
9778
9815
|
}], ctorParameters: () => [], propDecorators: { steps: [{
|
|
9779
9816
|
type: Input,
|
|
9780
9817
|
args: [{
|
|
@@ -9813,11 +9850,11 @@ class DetailCheckoutBlockEcComponent {
|
|
|
9813
9850
|
}
|
|
9814
9851
|
}
|
|
9815
9852
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DetailCheckoutBlockEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
9816
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: DetailCheckoutBlockEcComponent, isStandalone: true, selector: "app-detail-checkout-block-ec", ngImport: i0, template: "@if(data$ | async; as datos){\n <div id=\"appDetailCheckoutBlockEc\" class=\"d-flex flex-row w-100 justify-content-center flex-wrap\">\n @for(item of data; track $index; let i = $index){\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.type)\"></i>\n <strong class=\"text-center w-100 font-brandon font-md mb-1\">{{ item.type | translate }}</strong>\n <span class=\"text-center w-100 font-brandon font-md text-gray\">{{ (item.amount != 0 ) ? (item.amount |\n ecCurrencySymbol) : ('free' | translate) }}</span>\n </div>\n }\n </div>\n}", styles: [""], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: EcCurrencySymbolPipe, name: "ecCurrencySymbol" }, { kind: "pipe", type: AsyncPipe, name: "async" }] });
|
|
9853
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: DetailCheckoutBlockEcComponent, isStandalone: true, selector: "app-detail-checkout-block-ec", ngImport: i0, template: "@if(data$ | async; as datos){\r\n <div id=\"appDetailCheckoutBlockEc\" class=\"d-flex flex-row w-100 justify-content-center flex-wrap\">\r\n @for(item of data; track $index; let i = $index){\r\n <div class=\"d-flex flex-column justify-content-center mx-sm-3 mx-2 text-center mb-4 resumen\">\r\n <i ngClass=\"mb-2 colorIconoCheckout\" [class]=\"getIcon(item.type)\"></i>\r\n <strong class=\"text-center w-100 font-brandon font-md mb-1\">{{ item.type | translate }}</strong>\r\n <span class=\"text-center w-100 font-brandon font-md text-gray\">{{ (item.amount != 0 ) ? (item.amount |\r\n ecCurrencySymbol) : ('free' | translate) }}</span>\r\n </div>\r\n }\r\n </div>\r\n}", styles: [""], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: EcCurrencySymbolPipe, name: "ecCurrencySymbol" }, { kind: "pipe", type: AsyncPipe, name: "async" }] });
|
|
9817
9854
|
}
|
|
9818
9855
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DetailCheckoutBlockEcComponent, decorators: [{
|
|
9819
9856
|
type: Component,
|
|
9820
|
-
args: [{ selector: 'app-detail-checkout-block-ec', standalone: true, imports: [TranslateModule, EcCurrencySymbolPipe, AsyncPipe], template: "@if(data$ | async; as datos){\n <div id=\"appDetailCheckoutBlockEc\" class=\"d-flex flex-row w-100 justify-content-center flex-wrap\">\n @for(item of data; track $index; let i = $index){\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.type)\"></i>\n <strong class=\"text-center w-100 font-brandon font-md mb-1\">{{ item.type | translate }}</strong>\n <span class=\"text-center w-100 font-brandon font-md text-gray\">{{ (item.amount != 0 ) ? (item.amount |\n ecCurrencySymbol) : ('free' | translate) }}</span>\n </div>\n }\n </div>\n}" }]
|
|
9857
|
+
args: [{ selector: 'app-detail-checkout-block-ec', standalone: true, imports: [TranslateModule, EcCurrencySymbolPipe, AsyncPipe], template: "@if(data$ | async; as datos){\r\n <div id=\"appDetailCheckoutBlockEc\" class=\"d-flex flex-row w-100 justify-content-center flex-wrap\">\r\n @for(item of data; track $index; let i = $index){\r\n <div class=\"d-flex flex-column justify-content-center mx-sm-3 mx-2 text-center mb-4 resumen\">\r\n <i ngClass=\"mb-2 colorIconoCheckout\" [class]=\"getIcon(item.type)\"></i>\r\n <strong class=\"text-center w-100 font-brandon font-md mb-1\">{{ item.type | translate }}</strong>\r\n <span class=\"text-center w-100 font-brandon font-md text-gray\">{{ (item.amount != 0 ) ? (item.amount |\r\n ecCurrencySymbol) : ('free' | translate) }}</span>\r\n </div>\r\n }\r\n </div>\r\n}" }]
|
|
9821
9858
|
}], ctorParameters: () => [] });
|
|
9822
9859
|
|
|
9823
9860
|
class CheckoutEcComponent {
|
|
@@ -9864,11 +9901,11 @@ class CheckoutEcComponent {
|
|
|
9864
9901
|
this._checkoutService.setSteps(steps);
|
|
9865
9902
|
}
|
|
9866
9903
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CheckoutEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
9867
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: CheckoutEcComponent, isStandalone: true, selector: "lib-checkout-ec", ngImport: i0, template: "<main class=\"py-4\" id=\"appCheckoutEc\">\n @if(canCheckout){\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 @if(state$ | async; as steps){ \n <div id=\"stepper\" class=\"bs-stepper\">\n <div class=\"mb-3 row d-flex justify-content-center position-relative stepperContainer\">\n @for(step of steps; track $index; let x=$index){\n <div [class]=\"'d-flex flex-column justify-content-center align-items-center px-0 col-2'\">\n <div [class]=\"'step d-inline-flex align-items-center'\" [attr.data-target]=\"'#test-l-'+step.step\">\n <span\n [class]=\"'px-2 rounded-circle text-white font-bold bs-stepper-number ' + (step.state == 'ready' ? 'bg-primary' : 'bg-secondary') \">{{x+1}}</span>\n <span class=\"bs-stepper-label\">{{ step.label |translate}}</span>\n </div>\n \n </div>\n @if(x < steps.length-1){\n <div class=\"col-3 d-flex align-items-center\"><hr [class]=\"'w-100 line ' + (step.state == 'doing' ? 'line-active' : 'line-default')\" ></div>\n }\n }\n </div>\n <!-- CONTENT -->\n <div class=\"bs-stepper-content margin-bottom-i\">\n <app-step-container-ec [steps]=\"steps\" />\n </div>\n </div>\n } \n </div>\n <!--@if(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 }-->\n </div>\n </div>\n } @else {\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 }\n</main>\n", styles: [".bs-stepper-label{font-size:10px;padding-left:.5rem;font-weight:700}@media (max-width: 767.98px){.bs-stepper-label{font-size:10px;line-height:1.1;white-space:normal;word-wrap:break-word;max-width:65px;text-align:center;padding-left:0;padding-top:.2rem}}.bs-stepper-number{font-size:10px;font-weight:700;padding-top:.2rem;padding-bottom:.2rem}@media (max-width: 767.98px){.bs-stepper-number{font-size:9px;padding:.2rem .35rem;min-width:20px;height:20px;display:flex;align-items:center;justify-content:center}}@media (max-width: 767.98px){.step{flex-direction:column!important;align-items:center!important;text-align:center;width:100%}}@media (max-width: 767.98px){.stepperContainer{margin-bottom:1.5rem!important}.stepperContainer .col-2{display:flex;justify-content:center;align-items:flex-start;min-height:50px}.stepperContainer .col-3{display:flex;align-items:center}.stepperContainer .col-3 hr{margin-top:-10px}}.line{height:1px;border:none;background-color:var(--bs-secondary);position:relative;overflow:hidden;margin:0;opacity:.75!important}.line:before{content:\"\";position:absolute;top:0;left:0;width:0;height:100%;background-color:var(--bs-primary);transition:width .5s}.line-active:before{width:100%;left:0}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "component", type: StepContainerEcComponent, selector: "app-step-container-ec", inputs: ["steps"] }, { kind: "component", type: DetailCheckoutBlockEcComponent, selector: "app-detail-checkout-block-ec" }] });
|
|
9904
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: CheckoutEcComponent, isStandalone: true, selector: "lib-checkout-ec", ngImport: i0, template: "<main class=\"py-4\" id=\"appCheckoutEc\">\r\n @if(canCheckout){\r\n <app-detail-checkout-block-ec></app-detail-checkout-block-ec>\r\n <div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-md-12 col-12\">\r\n @if(state$ | async; as steps){ \r\n <div id=\"stepper\" class=\"bs-stepper\">\r\n <div class=\"mb-3 row d-flex justify-content-center position-relative stepperContainer\">\r\n @for(step of steps; track $index; let x=$index){\r\n <div [class]=\"'d-flex flex-column justify-content-center align-items-center px-0 col-2'\">\r\n <div [class]=\"'step d-inline-flex align-items-center'\" [attr.data-target]=\"'#test-l-'+step.step\">\r\n <span\r\n [class]=\"'px-2 rounded-circle text-white font-bold bs-stepper-number ' + (step.state == 'ready' ? 'bg-primary' : 'bg-secondary') \">{{x+1}}</span>\r\n <span class=\"bs-stepper-label\">{{ step.label |translate}}</span>\r\n </div>\r\n \r\n </div>\r\n @if(x < steps.length-1){\r\n <div class=\"col-3 d-flex align-items-center\"><hr [class]=\"'w-100 line ' + (step.state == 'doing' ? 'line-active' : 'line-default')\" ></div>\r\n }\r\n }\r\n </div>\r\n <!-- CONTENT -->\r\n <div class=\"bs-stepper-content margin-bottom-i\">\r\n <app-step-container-ec [steps]=\"steps\" />\r\n </div>\r\n </div>\r\n } \r\n </div>\r\n <!--@if(loading$ | async; as load){\r\n <div class=\"col-md-12 col-12\">\r\n <div *ngIf=\"load\" class=\"d-flex flex-column jusitfy-content-center align-items-center mt-2\">\r\n <app-loading-full-ec></app-loading-full-ec>\r\n <h5>{{ 'processing-payment' | translate }}</h5> \r\n </div>\r\n </div>\r\n }-->\r\n </div>\r\n </div>\r\n } @else {\r\n <div class=\"wrap\">\r\n <!-- <div *ngIf=\"(loading$ | async) as load\">\r\n <app-loading-full-ec *ngIf=\"canCheckout\"></app-loading-full-ec>\r\n </div>\r\n <section id=\"cart\" *ngIf=\"!canCheckout\">\r\n <section id=\"cart bg-white h-50\">\r\n <div class=\"d-flex flex-column justify-content-center align-items-center text-center\">\r\n <h4>{{ 'empty-cart' | translate }}</h4>\r\n <h5>{{ 'empty-cart-detail' | translate }}</h5>\r\n </div>\r\n </section>\r\n </section> -->\r\n </div>\r\n }\r\n</main>\r\n", styles: [".bs-stepper-label{font-size:10px;padding-left:.5rem;font-weight:700}@media (max-width: 767.98px){.bs-stepper-label{font-size:10px;line-height:1.1;white-space:normal;word-wrap:break-word;max-width:65px;text-align:center;padding-left:0;padding-top:.2rem}}.bs-stepper-number{font-size:10px;font-weight:700;padding-top:.2rem;padding-bottom:.2rem}@media (max-width: 767.98px){.bs-stepper-number{font-size:9px;padding:.2rem .35rem;min-width:20px;height:20px;display:flex;align-items:center;justify-content:center}}@media (max-width: 767.98px){.step{flex-direction:column!important;align-items:center!important;text-align:center;width:100%}}@media (max-width: 767.98px){.stepperContainer{margin-bottom:1.5rem!important}.stepperContainer .col-2{display:flex;justify-content:center;align-items:flex-start;min-height:50px}.stepperContainer .col-3{display:flex;align-items:center}.stepperContainer .col-3 hr{margin-top:-10px}}.line{height:1px;border:none;background-color:var(--bs-secondary);position:relative;overflow:hidden;margin:0;opacity:.75!important}.line:before{content:\"\";position:absolute;top:0;left:0;width:0;height:100%;background-color:var(--bs-primary);transition:width .5s}.line-active:before{width:100%;left:0}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "component", type: StepContainerEcComponent, selector: "app-step-container-ec", inputs: ["steps"] }, { kind: "component", type: DetailCheckoutBlockEcComponent, selector: "app-detail-checkout-block-ec" }] });
|
|
9868
9905
|
}
|
|
9869
9906
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CheckoutEcComponent, decorators: [{
|
|
9870
9907
|
type: Component,
|
|
9871
|
-
args: [{ selector: 'lib-checkout-ec', standalone: true, imports: [AsyncPipe, TranslateModule, StepContainerEcComponent, DetailCheckoutBlockEcComponent], schemas: [CUSTOM_ELEMENTS_SCHEMA], template: "<main class=\"py-4\" id=\"appCheckoutEc\">\n @if(canCheckout){\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 @if(state$ | async; as steps){ \n <div id=\"stepper\" class=\"bs-stepper\">\n <div class=\"mb-3 row d-flex justify-content-center position-relative stepperContainer\">\n @for(step of steps; track $index; let x=$index){\n <div [class]=\"'d-flex flex-column justify-content-center align-items-center px-0 col-2'\">\n <div [class]=\"'step d-inline-flex align-items-center'\" [attr.data-target]=\"'#test-l-'+step.step\">\n <span\n [class]=\"'px-2 rounded-circle text-white font-bold bs-stepper-number ' + (step.state == 'ready' ? 'bg-primary' : 'bg-secondary') \">{{x+1}}</span>\n <span class=\"bs-stepper-label\">{{ step.label |translate}}</span>\n </div>\n \n </div>\n @if(x < steps.length-1){\n <div class=\"col-3 d-flex align-items-center\"><hr [class]=\"'w-100 line ' + (step.state == 'doing' ? 'line-active' : 'line-default')\" ></div>\n }\n }\n </div>\n <!-- CONTENT -->\n <div class=\"bs-stepper-content margin-bottom-i\">\n <app-step-container-ec [steps]=\"steps\" />\n </div>\n </div>\n } \n </div>\n <!--@if(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 }-->\n </div>\n </div>\n } @else {\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 }\n</main>\n", styles: [".bs-stepper-label{font-size:10px;padding-left:.5rem;font-weight:700}@media (max-width: 767.98px){.bs-stepper-label{font-size:10px;line-height:1.1;white-space:normal;word-wrap:break-word;max-width:65px;text-align:center;padding-left:0;padding-top:.2rem}}.bs-stepper-number{font-size:10px;font-weight:700;padding-top:.2rem;padding-bottom:.2rem}@media (max-width: 767.98px){.bs-stepper-number{font-size:9px;padding:.2rem .35rem;min-width:20px;height:20px;display:flex;align-items:center;justify-content:center}}@media (max-width: 767.98px){.step{flex-direction:column!important;align-items:center!important;text-align:center;width:100%}}@media (max-width: 767.98px){.stepperContainer{margin-bottom:1.5rem!important}.stepperContainer .col-2{display:flex;justify-content:center;align-items:flex-start;min-height:50px}.stepperContainer .col-3{display:flex;align-items:center}.stepperContainer .col-3 hr{margin-top:-10px}}.line{height:1px;border:none;background-color:var(--bs-secondary);position:relative;overflow:hidden;margin:0;opacity:.75!important}.line:before{content:\"\";position:absolute;top:0;left:0;width:0;height:100%;background-color:var(--bs-primary);transition:width .5s}.line-active:before{width:100%;left:0}\n"] }]
|
|
9908
|
+
args: [{ selector: 'lib-checkout-ec', standalone: true, imports: [AsyncPipe, TranslateModule, StepContainerEcComponent, DetailCheckoutBlockEcComponent], schemas: [CUSTOM_ELEMENTS_SCHEMA], template: "<main class=\"py-4\" id=\"appCheckoutEc\">\r\n @if(canCheckout){\r\n <app-detail-checkout-block-ec></app-detail-checkout-block-ec>\r\n <div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-md-12 col-12\">\r\n @if(state$ | async; as steps){ \r\n <div id=\"stepper\" class=\"bs-stepper\">\r\n <div class=\"mb-3 row d-flex justify-content-center position-relative stepperContainer\">\r\n @for(step of steps; track $index; let x=$index){\r\n <div [class]=\"'d-flex flex-column justify-content-center align-items-center px-0 col-2'\">\r\n <div [class]=\"'step d-inline-flex align-items-center'\" [attr.data-target]=\"'#test-l-'+step.step\">\r\n <span\r\n [class]=\"'px-2 rounded-circle text-white font-bold bs-stepper-number ' + (step.state == 'ready' ? 'bg-primary' : 'bg-secondary') \">{{x+1}}</span>\r\n <span class=\"bs-stepper-label\">{{ step.label |translate}}</span>\r\n </div>\r\n \r\n </div>\r\n @if(x < steps.length-1){\r\n <div class=\"col-3 d-flex align-items-center\"><hr [class]=\"'w-100 line ' + (step.state == 'doing' ? 'line-active' : 'line-default')\" ></div>\r\n }\r\n }\r\n </div>\r\n <!-- CONTENT -->\r\n <div class=\"bs-stepper-content margin-bottom-i\">\r\n <app-step-container-ec [steps]=\"steps\" />\r\n </div>\r\n </div>\r\n } \r\n </div>\r\n <!--@if(loading$ | async; as load){\r\n <div class=\"col-md-12 col-12\">\r\n <div *ngIf=\"load\" class=\"d-flex flex-column jusitfy-content-center align-items-center mt-2\">\r\n <app-loading-full-ec></app-loading-full-ec>\r\n <h5>{{ 'processing-payment' | translate }}</h5> \r\n </div>\r\n </div>\r\n }-->\r\n </div>\r\n </div>\r\n } @else {\r\n <div class=\"wrap\">\r\n <!-- <div *ngIf=\"(loading$ | async) as load\">\r\n <app-loading-full-ec *ngIf=\"canCheckout\"></app-loading-full-ec>\r\n </div>\r\n <section id=\"cart\" *ngIf=\"!canCheckout\">\r\n <section id=\"cart bg-white h-50\">\r\n <div class=\"d-flex flex-column justify-content-center align-items-center text-center\">\r\n <h4>{{ 'empty-cart' | translate }}</h4>\r\n <h5>{{ 'empty-cart-detail' | translate }}</h5>\r\n </div>\r\n </section>\r\n </section> -->\r\n </div>\r\n }\r\n</main>\r\n", styles: [".bs-stepper-label{font-size:10px;padding-left:.5rem;font-weight:700}@media (max-width: 767.98px){.bs-stepper-label{font-size:10px;line-height:1.1;white-space:normal;word-wrap:break-word;max-width:65px;text-align:center;padding-left:0;padding-top:.2rem}}.bs-stepper-number{font-size:10px;font-weight:700;padding-top:.2rem;padding-bottom:.2rem}@media (max-width: 767.98px){.bs-stepper-number{font-size:9px;padding:.2rem .35rem;min-width:20px;height:20px;display:flex;align-items:center;justify-content:center}}@media (max-width: 767.98px){.step{flex-direction:column!important;align-items:center!important;text-align:center;width:100%}}@media (max-width: 767.98px){.stepperContainer{margin-bottom:1.5rem!important}.stepperContainer .col-2{display:flex;justify-content:center;align-items:flex-start;min-height:50px}.stepperContainer .col-3{display:flex;align-items:center}.stepperContainer .col-3 hr{margin-top:-10px}}.line{height:1px;border:none;background-color:var(--bs-secondary);position:relative;overflow:hidden;margin:0;opacity:.75!important}.line:before{content:\"\";position:absolute;top:0;left:0;width:0;height:100%;background-color:var(--bs-primary);transition:width .5s}.line-active:before{width:100%;left:0}\n"] }]
|
|
9872
9909
|
}], ctorParameters: () => [] });
|
|
9873
9910
|
|
|
9874
9911
|
class SuccessEcComponent {
|
|
@@ -9908,11 +9945,11 @@ class SuccessEcComponent {
|
|
|
9908
9945
|
*/
|
|
9909
9946
|
containsBlock(codeBlock) { return this.blocks.find((block) => block.code == codeBlock); }
|
|
9910
9947
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SuccessEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
9911
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: SuccessEcComponent, isStandalone: true, selector: "app-order-success-ec", ngImport: i0, template: "<div id=\"container \" class=\"flex-center generalContainer container-xl py-5\">\n\t@if(payments && payments[0].method.code){\n\t<div class=\"Main card my-2\">\n\t\t@if(this.blocks && this.blocks.length > 0){ \n\t\t\t@if(containsBlock(this.payments[0].method.code); as bloque) {\n\t\t\t\t<div class=\"wrap my-4 card-body\" [id]=\"bloque.code\">\n\t\t\t\t\t<div class=\"row\">\n\t\t\t\t\t\t<div class=\"col-md-12 col-12\">\n\t\t\t\t\t\t\t<h5 [class]=\"bloque.code+'-title'\">{{ (bloque?.translations[locale]?.name ?\n\t\t\t\t\t\t\t\tbloque.translations[locale].name :\n\t\t\t\t\t\t\t\t'thanks-for-buying') | translate\n\t\t\t\t\t\t\t\t| uppercase }}</h5>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"row\">\n\t\t\t\t\t\t<div class=\"col-md-12 col-12 text-start\">\n\t\t\t\t\t\t\t<app-blocks-ec [section]=\"'info_metodo_pago'\" [blockFilters]=\"payments[0].method.code\">\n\t\t\t\t\t\t\t</app-blocks-ec>\n\t\t\t\t\t\t\t<div class=\"d-flex flex-column details\">\n\t\t\t\t\t\t\t\t<p class=\"card-text\">{{ ('number' | translate) + ': ' + params.external_reference }}</p>\n\t\t\t\t\t\t\t\t<p class=\"card-text\">{{((params.payment_status || 'pending') | translate)}}</p>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t}@else {\n\t\t\t\t<ng-container *ngTemplateOutlet=\"notInfoToMethodTemplate ? notInfoToMethodTemplate : notInfoToMethod; context: { $implicit: params }\"></ng-container>\n\t\t\t}\n\t\t} @else{\n\t\t\t<ng-container *ngTemplateOutlet=\"notInfoToMethodTemplate ? notInfoToMethodTemplate : notInfoToMethod; context: { $implicit: params }\"></ng-container>\n\t}\n\t</div>\n\t} @else {\n\t\t<app-loading-full-ec></app-loading-full-ec>\t\n\t}\n</div>\n\n<ng-template #notInfoToMethod let-params>\n\n\t<div class=\"wrap my-4 card-body\">\n\t\t<div class=\"row\">\n\t\t\t<div class=\"col-md-12 col-12\">\n\t\t\t\t<h5 class=\"card-title titpage center-block text-center\">\n\t\t\t\t\t{{ 'thanks-for-buying' | translate | uppercase }}\n\t\t\t\t</h5>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"row\">\n\t\t\t<div class=\"col-md-12 col-12 text-center py-3\">\n\t\t\t\t<h4 class=\"thanks-details\">{{ 'thanks-details' | translate }}</h4>\n\t\t\t\t<h5 class=\"number\">{{ ('number' | translate) + ': ' + params.external_reference }}</h5>\n\t\t\t\t<h5 class=\"pending\">{{ ((params.payment_status || 'pending') | translate) }}</h5>\n\t\t\t\t<!-- <h5 *ngIf=\"!from_mp\">{{ ('will_contact' | translate) }}</h5> -->\n\n\t\t\t\t<!-- <a routerLink=\"/collection\"><button class=\"comprar\">{{ 'continue-shopping' | translate }}</button></a> -->\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</ng-template>", styles: [""], dependencies: [{ kind: "component", type: BlocksEcComponent, selector: "app-blocks-ec", inputs: ["templates", "show_loading", "section", "blockFilters"] }, { kind: "component", type: LoadingFullEcComponent, selector: "app-loading-full-ec" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: UpperCasePipe, name: "uppercase" }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
|
|
9948
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: SuccessEcComponent, isStandalone: true, selector: "app-order-success-ec", ngImport: i0, template: "<div id=\"container \" class=\"flex-center generalContainer container-xl py-5\">\r\n\t@if(payments && payments[0].method.code){\r\n\t<div class=\"Main card my-2\">\r\n\t\t@if(this.blocks && this.blocks.length > 0){ \r\n\t\t\t@if(containsBlock(this.payments[0].method.code); as bloque) {\r\n\t\t\t\t<div class=\"wrap my-4 card-body\" [id]=\"bloque.code\">\r\n\t\t\t\t\t<div class=\"row\">\r\n\t\t\t\t\t\t<div class=\"col-md-12 col-12\">\r\n\t\t\t\t\t\t\t<h5 [class]=\"bloque.code+'-title'\">{{ (bloque?.translations[locale]?.name ?\r\n\t\t\t\t\t\t\t\tbloque.translations[locale].name :\r\n\t\t\t\t\t\t\t\t'thanks-for-buying') | translate\r\n\t\t\t\t\t\t\t\t| uppercase }}</h5>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div class=\"row\">\r\n\t\t\t\t\t\t<div class=\"col-md-12 col-12 text-start\">\r\n\t\t\t\t\t\t\t<app-blocks-ec [section]=\"'info_metodo_pago'\" [blockFilters]=\"payments[0].method.code\">\r\n\t\t\t\t\t\t\t</app-blocks-ec>\r\n\t\t\t\t\t\t\t<div class=\"d-flex flex-column details\">\r\n\t\t\t\t\t\t\t\t<p class=\"card-text\">{{ ('number' | translate) + ': ' + params.external_reference }}</p>\r\n\t\t\t\t\t\t\t\t<p class=\"card-text\">{{((params.payment_status || 'pending') | translate)}}</p>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t}@else {\r\n\t\t\t\t<ng-container *ngTemplateOutlet=\"notInfoToMethodTemplate ? notInfoToMethodTemplate : notInfoToMethod; context: { $implicit: params }\"></ng-container>\r\n\t\t\t}\r\n\t\t} @else{\r\n\t\t\t<ng-container *ngTemplateOutlet=\"notInfoToMethodTemplate ? notInfoToMethodTemplate : notInfoToMethod; context: { $implicit: params }\"></ng-container>\r\n\t}\r\n\t</div>\r\n\t} @else {\r\n\t\t<app-loading-full-ec></app-loading-full-ec>\t\r\n\t}\r\n</div>\r\n\r\n<ng-template #notInfoToMethod let-params>\r\n\r\n\t<div class=\"wrap my-4 card-body\">\r\n\t\t<div class=\"row\">\r\n\t\t\t<div class=\"col-md-12 col-12\">\r\n\t\t\t\t<h5 class=\"card-title titpage center-block text-center\">\r\n\t\t\t\t\t{{ 'thanks-for-buying' | translate | uppercase }}\r\n\t\t\t\t</h5>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t\t<div class=\"row\">\r\n\t\t\t<div class=\"col-md-12 col-12 text-center py-3\">\r\n\t\t\t\t<h4 class=\"thanks-details\">{{ 'thanks-details' | translate }}</h4>\r\n\t\t\t\t<h5 class=\"number\">{{ ('number' | translate) + ': ' + params.external_reference }}</h5>\r\n\t\t\t\t<h5 class=\"pending\">{{ ((params.payment_status || 'pending') | translate) }}</h5>\r\n\t\t\t\t<!-- <h5 *ngIf=\"!from_mp\">{{ ('will_contact' | translate) }}</h5> -->\r\n\r\n\t\t\t\t<!-- <a routerLink=\"/collection\"><button class=\"comprar\">{{ 'continue-shopping' | translate }}</button></a> -->\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</ng-template>", styles: [""], dependencies: [{ kind: "component", type: BlocksEcComponent, selector: "app-blocks-ec", inputs: ["templates", "show_loading", "section", "blockFilters"] }, { kind: "component", type: LoadingFullEcComponent, selector: "app-loading-full-ec" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: UpperCasePipe, name: "uppercase" }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
|
|
9912
9949
|
}
|
|
9913
9950
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SuccessEcComponent, decorators: [{
|
|
9914
9951
|
type: Component,
|
|
9915
|
-
args: [{ selector: 'app-order-success-ec', standalone: true, imports: [BlocksEcComponent, LoadingFullEcComponent, TranslateModule, UpperCasePipe, CommonModule], template: "<div id=\"container \" class=\"flex-center generalContainer container-xl py-5\">\n\t@if(payments && payments[0].method.code){\n\t<div class=\"Main card my-2\">\n\t\t@if(this.blocks && this.blocks.length > 0){ \n\t\t\t@if(containsBlock(this.payments[0].method.code); as bloque) {\n\t\t\t\t<div class=\"wrap my-4 card-body\" [id]=\"bloque.code\">\n\t\t\t\t\t<div class=\"row\">\n\t\t\t\t\t\t<div class=\"col-md-12 col-12\">\n\t\t\t\t\t\t\t<h5 [class]=\"bloque.code+'-title'\">{{ (bloque?.translations[locale]?.name ?\n\t\t\t\t\t\t\t\tbloque.translations[locale].name :\n\t\t\t\t\t\t\t\t'thanks-for-buying') | translate\n\t\t\t\t\t\t\t\t| uppercase }}</h5>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"row\">\n\t\t\t\t\t\t<div class=\"col-md-12 col-12 text-start\">\n\t\t\t\t\t\t\t<app-blocks-ec [section]=\"'info_metodo_pago'\" [blockFilters]=\"payments[0].method.code\">\n\t\t\t\t\t\t\t</app-blocks-ec>\n\t\t\t\t\t\t\t<div class=\"d-flex flex-column details\">\n\t\t\t\t\t\t\t\t<p class=\"card-text\">{{ ('number' | translate) + ': ' + params.external_reference }}</p>\n\t\t\t\t\t\t\t\t<p class=\"card-text\">{{((params.payment_status || 'pending') | translate)}}</p>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t}@else {\n\t\t\t\t<ng-container *ngTemplateOutlet=\"notInfoToMethodTemplate ? notInfoToMethodTemplate : notInfoToMethod; context: { $implicit: params }\"></ng-container>\n\t\t\t}\n\t\t} @else{\n\t\t\t<ng-container *ngTemplateOutlet=\"notInfoToMethodTemplate ? notInfoToMethodTemplate : notInfoToMethod; context: { $implicit: params }\"></ng-container>\n\t}\n\t</div>\n\t} @else {\n\t\t<app-loading-full-ec></app-loading-full-ec>\t\n\t}\n</div>\n\n<ng-template #notInfoToMethod let-params>\n\n\t<div class=\"wrap my-4 card-body\">\n\t\t<div class=\"row\">\n\t\t\t<div class=\"col-md-12 col-12\">\n\t\t\t\t<h5 class=\"card-title titpage center-block text-center\">\n\t\t\t\t\t{{ 'thanks-for-buying' | translate | uppercase }}\n\t\t\t\t</h5>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class=\"row\">\n\t\t\t<div class=\"col-md-12 col-12 text-center py-3\">\n\t\t\t\t<h4 class=\"thanks-details\">{{ 'thanks-details' | translate }}</h4>\n\t\t\t\t<h5 class=\"number\">{{ ('number' | translate) + ': ' + params.external_reference }}</h5>\n\t\t\t\t<h5 class=\"pending\">{{ ((params.payment_status || 'pending') | translate) }}</h5>\n\t\t\t\t<!-- <h5 *ngIf=\"!from_mp\">{{ ('will_contact' | translate) }}</h5> -->\n\n\t\t\t\t<!-- <a routerLink=\"/collection\"><button class=\"comprar\">{{ 'continue-shopping' | translate }}</button></a> -->\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</ng-template>" }]
|
|
9952
|
+
args: [{ selector: 'app-order-success-ec', standalone: true, imports: [BlocksEcComponent, LoadingFullEcComponent, TranslateModule, UpperCasePipe, CommonModule], template: "<div id=\"container \" class=\"flex-center generalContainer container-xl py-5\">\r\n\t@if(payments && payments[0].method.code){\r\n\t<div class=\"Main card my-2\">\r\n\t\t@if(this.blocks && this.blocks.length > 0){ \r\n\t\t\t@if(containsBlock(this.payments[0].method.code); as bloque) {\r\n\t\t\t\t<div class=\"wrap my-4 card-body\" [id]=\"bloque.code\">\r\n\t\t\t\t\t<div class=\"row\">\r\n\t\t\t\t\t\t<div class=\"col-md-12 col-12\">\r\n\t\t\t\t\t\t\t<h5 [class]=\"bloque.code+'-title'\">{{ (bloque?.translations[locale]?.name ?\r\n\t\t\t\t\t\t\t\tbloque.translations[locale].name :\r\n\t\t\t\t\t\t\t\t'thanks-for-buying') | translate\r\n\t\t\t\t\t\t\t\t| uppercase }}</h5>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div class=\"row\">\r\n\t\t\t\t\t\t<div class=\"col-md-12 col-12 text-start\">\r\n\t\t\t\t\t\t\t<app-blocks-ec [section]=\"'info_metodo_pago'\" [blockFilters]=\"payments[0].method.code\">\r\n\t\t\t\t\t\t\t</app-blocks-ec>\r\n\t\t\t\t\t\t\t<div class=\"d-flex flex-column details\">\r\n\t\t\t\t\t\t\t\t<p class=\"card-text\">{{ ('number' | translate) + ': ' + params.external_reference }}</p>\r\n\t\t\t\t\t\t\t\t<p class=\"card-text\">{{((params.payment_status || 'pending') | translate)}}</p>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>\r\n\t\t\t}@else {\r\n\t\t\t\t<ng-container *ngTemplateOutlet=\"notInfoToMethodTemplate ? notInfoToMethodTemplate : notInfoToMethod; context: { $implicit: params }\"></ng-container>\r\n\t\t\t}\r\n\t\t} @else{\r\n\t\t\t<ng-container *ngTemplateOutlet=\"notInfoToMethodTemplate ? notInfoToMethodTemplate : notInfoToMethod; context: { $implicit: params }\"></ng-container>\r\n\t}\r\n\t</div>\r\n\t} @else {\r\n\t\t<app-loading-full-ec></app-loading-full-ec>\t\r\n\t}\r\n</div>\r\n\r\n<ng-template #notInfoToMethod let-params>\r\n\r\n\t<div class=\"wrap my-4 card-body\">\r\n\t\t<div class=\"row\">\r\n\t\t\t<div class=\"col-md-12 col-12\">\r\n\t\t\t\t<h5 class=\"card-title titpage center-block text-center\">\r\n\t\t\t\t\t{{ 'thanks-for-buying' | translate | uppercase }}\r\n\t\t\t\t</h5>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t\t<div class=\"row\">\r\n\t\t\t<div class=\"col-md-12 col-12 text-center py-3\">\r\n\t\t\t\t<h4 class=\"thanks-details\">{{ 'thanks-details' | translate }}</h4>\r\n\t\t\t\t<h5 class=\"number\">{{ ('number' | translate) + ': ' + params.external_reference }}</h5>\r\n\t\t\t\t<h5 class=\"pending\">{{ ((params.payment_status || 'pending') | translate) }}</h5>\r\n\t\t\t\t<!-- <h5 *ngIf=\"!from_mp\">{{ ('will_contact' | translate) }}</h5> -->\r\n\r\n\t\t\t\t<!-- <a routerLink=\"/collection\"><button class=\"comprar\">{{ 'continue-shopping' | translate }}</button></a> -->\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</ng-template>" }]
|
|
9916
9953
|
}], ctorParameters: () => [] });
|
|
9917
9954
|
|
|
9918
9955
|
class OrdersListEcComponent {
|
|
@@ -10047,11 +10084,11 @@ class OrdersListEcComponent {
|
|
|
10047
10084
|
this._router.navigateByUrl((`account/orders/${order.number}`));
|
|
10048
10085
|
}
|
|
10049
10086
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OrdersListEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
10050
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: OrdersListEcComponent, isStandalone: true, selector: "app-orders-ec", ngImport: i0, template: "<div class=\"container-fluid\" id=\"ordersEcComponent\">\n @if(!loading){\n <section id=\"orders\" class=\"w-100\">\n @if(orders && orders.length){\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 @for(order of orders; track $index){\n <div class=\"row item border-bottom py-2\">\n <div class=\"col-lg-2 col-12\">\n <h5 class=\"fw-bold\">\n {{ order.number }}\n </h5>\n </div>\n <div class=\"col-lg-2 col-12\">\n @if(order.payments && order.payments.length > 0){\n <p class=\"price\">\n {{ order.payments[0].state | translate | titlecase }}\n </p>\n }\n </div>\n <div class=\"col-lg-2 col-12\">\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 @if(order.tracking){\n <a [href]=\"order.tracking\"\n class=\"btn btn-outline-dark btnLogout px-3 py-1 font-size-10 w-auto btn-sm\">Ver seguimiento</a>\n }\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 d-flex\">\n @if(creditAmountConfigured ? showPrice : true){\n <h5 class=\"fw-bold text-nowrap\">\n {{ (order.totals.total) | ecCurrencySymbol }}\n </h5>\n }\n <!-- <button class=\"btn px-0 w-100 btdetalle\" (click)=\"goToOrder(order)\">{{\n 'see-order' | translate }}</button> -->\n <button class=\"btn px-0 w-100 btdetalle\" (click)=\"goToOrder(order)\">\n <i class=\"bi bi-box-arrow-in-right\"></i></button>\n </div>\n </div>\n }\n }@else {\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 }\n </section>\n }@else {\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 }\n</div>\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", styles: [""], dependencies: [{ kind: "component", type: LoadingFullEcComponent, selector: "app-loading-full-ec" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: TitleCasePipe, name: "titlecase" }, { kind: "pipe", type: EcCurrencySymbolPipe, name: "ecCurrencySymbol" }] });
|
|
10087
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: OrdersListEcComponent, isStandalone: true, selector: "app-orders-ec", ngImport: i0, template: "<div class=\"container-fluid\" id=\"ordersEcComponent\">\r\n @if(!loading){\r\n <section id=\"orders\" class=\"w-100\">\r\n @if(orders && orders.length){\r\n <div class=\"row mb-1 border-bottom\">\r\n <div class=\"col-lg-2 col-12\">\r\n <p [class]=\"'st dropdown-toggle cursor-pointer my-2 '+ (currentSort.name == 'number' ? 'applied ' + (!currentSort.asc ? 'asc' : 'desc') : '')\"\r\n (click)=\"sortOrders('number')\">{{ 'order' | translate }}:</p>\r\n </div>\r\n <div class=\"col-lg-2 col-12\">\r\n <p [class]=\"'st dropdown-toggle cursor-pointer my-2 '+ (currentSort.name == 'paymentState' ? 'applied ' + (!currentSort.asc ? 'asc' : 'desc') : '')\"\r\n (click)=\"sortOrders('paymentState')\">{{ 'payment-state' | translate }}:</p>\r\n </div>\r\n <div class=\"col-lg-2 col-12\">\r\n <p [class]=\"'st dropdown-toggle cursor-pointer my-2 '+ (currentSort.name == 'method' ? 'applied ' + (!currentSort.asc ? 'asc' : 'desc') : '')\"\r\n (click)=\"sortOrders('method')\">{{ 'shipment-method' | translate }}:</p>\r\n </div>\r\n <div class=\"col-lg-2 col-12 \">\r\n <p [class]=\"'st dropdown-toggle cursor-pointer my-2 '+ (currentSort.name == 'methodState' ? 'applied ' + (!currentSort.asc ? 'asc' : 'desc') : '')\"\r\n (click)=\"sortOrders('methodState')\">\r\n {{ 'shipment-state' | translate }}:</p>\r\n </div>\r\n <div class=\"col-lg-2 col-12\">\r\n <p [class]=\"'st dropdown-toggle cursor-pointer my-2 '+ (currentSort.name == 'date' ? 'applied ' + (!currentSort.asc ? 'asc' : 'desc') : '')\"\r\n (click)=\"sortOrders('date')\">{{ 'date' | translate }}:</p>\r\n </div>\r\n <div class=\"col-lg-2 col-12\">\r\n <p [class]=\"'st dropdown-toggle cursor-pointer my-2 '+ (currentSort.name == 'total' ? 'applied ' + (!currentSort.asc ? 'asc' : 'desc') : '')\"\r\n (click)=\"sortOrders('total')\">{{ 'total' | translate }}:</p>\r\n </div>\r\n </div>\r\n @for(order of orders; track $index){\r\n <div class=\"row item border-bottom py-2\">\r\n <div class=\"col-lg-2 col-12\">\r\n <h5 class=\"fw-bold\">\r\n {{ order.number }}\r\n </h5>\r\n </div>\r\n <div class=\"col-lg-2 col-12\">\r\n @if(order.payments && order.payments.length > 0){\r\n <p class=\"price\">\r\n {{ order.payments[0].state | translate | titlecase }}\r\n </p>\r\n }\r\n </div>\r\n <div class=\"col-lg-2 col-12\">\r\n <p class=\"price\">\r\n {{ order.shipments[0].method.name }}\r\n </p>\r\n </div>\r\n <div class=\"col-lg-2 col-12\">\r\n <p class=\"price\">\r\n {{ order.shipments[0].state | translate | titlecase }}\r\n </p>\r\n <!-- ACA DEBERIA IR EL LINK DE SEGUIMIENTO -->\r\n <!-- <button class=\"btn btn-outline-dark btnLogout px-3 py-1 font-size-10 w-auto btn-sm\">Ver seguimiento</button> -->\r\n @if(order.tracking){\r\n <a [href]=\"order.tracking\"\r\n class=\"btn btn-outline-dark btnLogout px-3 py-1 font-size-10 w-auto btn-sm\">Ver seguimiento</a>\r\n }\r\n </div>\r\n <div class=\"col-lg-2 col-12\">\r\n <p class=\"price\">\r\n {{ toDate(order.checkoutCompletedAt, 'DD/MM/YYYY') | translate }}<br>\r\n {{ toDate(order.checkoutCompletedAt, 'h:mm:ss a') | translate }}\r\n </p>\r\n </div>\r\n <div class=\"col-lg-2 col-12 d-flex\">\r\n @if(creditAmountConfigured ? showPrice : true){\r\n <h5 class=\"fw-bold text-nowrap\">\r\n {{ (order.totals.total) | ecCurrencySymbol }}\r\n </h5>\r\n }\r\n <!-- <button class=\"btn px-0 w-100 btdetalle\" (click)=\"goToOrder(order)\">{{\r\n 'see-order' | translate }}</button> -->\r\n <button class=\"btn px-0 w-100 btdetalle\" (click)=\"goToOrder(order)\">\r\n <i class=\"bi bi-box-arrow-in-right\"></i></button>\r\n </div>\r\n </div>\r\n }\r\n }@else {\r\n <div class=\"w-100 h-50\">\r\n <div class=\"d-flex flex-row justify-content-center align-items-center text-center\">\r\n <h5>{{ 'no-orders' | translate }}</h5>\r\n </div>\r\n </div>\r\n }\r\n </section>\r\n }@else {\r\n <div class=\"w-100 h-50 py-5\">\r\n <div class=\"d-flex flex-row justify-content-center align-items-center text-center\">\r\n <app-loading-full-ec></app-loading-full-ec>\r\n </div>\r\n </div>\r\n }\r\n</div>\r\n\r\n<ng-template #errorView>\r\n <div class=\"w-100 h-50\">\r\n <div class=\"d-flex flex-row justify-content-center align-items-center text-center\">\r\n <h4>{{ 'orders-error' | translate }}</h4>\r\n </div>\r\n </div>\r\n</ng-template>\r\n", styles: [""], dependencies: [{ kind: "component", type: LoadingFullEcComponent, selector: "app-loading-full-ec" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: TitleCasePipe, name: "titlecase" }, { kind: "pipe", type: EcCurrencySymbolPipe, name: "ecCurrencySymbol" }] });
|
|
10051
10088
|
}
|
|
10052
10089
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OrdersListEcComponent, decorators: [{
|
|
10053
10090
|
type: Component,
|
|
10054
|
-
args: [{ selector: 'app-orders-ec', standalone: true, imports: [LoadingFullEcComponent, TranslateModule, TitleCasePipe, EcCurrencySymbolPipe], template: "<div class=\"container-fluid\" id=\"ordersEcComponent\">\n @if(!loading){\n <section id=\"orders\" class=\"w-100\">\n @if(orders && orders.length){\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 @for(order of orders; track $index){\n <div class=\"row item border-bottom py-2\">\n <div class=\"col-lg-2 col-12\">\n <h5 class=\"fw-bold\">\n {{ order.number }}\n </h5>\n </div>\n <div class=\"col-lg-2 col-12\">\n @if(order.payments && order.payments.length > 0){\n <p class=\"price\">\n {{ order.payments[0].state | translate | titlecase }}\n </p>\n }\n </div>\n <div class=\"col-lg-2 col-12\">\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 @if(order.tracking){\n <a [href]=\"order.tracking\"\n class=\"btn btn-outline-dark btnLogout px-3 py-1 font-size-10 w-auto btn-sm\">Ver seguimiento</a>\n }\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 d-flex\">\n @if(creditAmountConfigured ? showPrice : true){\n <h5 class=\"fw-bold text-nowrap\">\n {{ (order.totals.total) | ecCurrencySymbol }}\n </h5>\n }\n <!-- <button class=\"btn px-0 w-100 btdetalle\" (click)=\"goToOrder(order)\">{{\n 'see-order' | translate }}</button> -->\n <button class=\"btn px-0 w-100 btdetalle\" (click)=\"goToOrder(order)\">\n <i class=\"bi bi-box-arrow-in-right\"></i></button>\n </div>\n </div>\n }\n }@else {\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 }\n </section>\n }@else {\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 }\n</div>\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" }]
|
|
10091
|
+
args: [{ selector: 'app-orders-ec', standalone: true, imports: [LoadingFullEcComponent, TranslateModule, TitleCasePipe, EcCurrencySymbolPipe], template: "<div class=\"container-fluid\" id=\"ordersEcComponent\">\r\n @if(!loading){\r\n <section id=\"orders\" class=\"w-100\">\r\n @if(orders && orders.length){\r\n <div class=\"row mb-1 border-bottom\">\r\n <div class=\"col-lg-2 col-12\">\r\n <p [class]=\"'st dropdown-toggle cursor-pointer my-2 '+ (currentSort.name == 'number' ? 'applied ' + (!currentSort.asc ? 'asc' : 'desc') : '')\"\r\n (click)=\"sortOrders('number')\">{{ 'order' | translate }}:</p>\r\n </div>\r\n <div class=\"col-lg-2 col-12\">\r\n <p [class]=\"'st dropdown-toggle cursor-pointer my-2 '+ (currentSort.name == 'paymentState' ? 'applied ' + (!currentSort.asc ? 'asc' : 'desc') : '')\"\r\n (click)=\"sortOrders('paymentState')\">{{ 'payment-state' | translate }}:</p>\r\n </div>\r\n <div class=\"col-lg-2 col-12\">\r\n <p [class]=\"'st dropdown-toggle cursor-pointer my-2 '+ (currentSort.name == 'method' ? 'applied ' + (!currentSort.asc ? 'asc' : 'desc') : '')\"\r\n (click)=\"sortOrders('method')\">{{ 'shipment-method' | translate }}:</p>\r\n </div>\r\n <div class=\"col-lg-2 col-12 \">\r\n <p [class]=\"'st dropdown-toggle cursor-pointer my-2 '+ (currentSort.name == 'methodState' ? 'applied ' + (!currentSort.asc ? 'asc' : 'desc') : '')\"\r\n (click)=\"sortOrders('methodState')\">\r\n {{ 'shipment-state' | translate }}:</p>\r\n </div>\r\n <div class=\"col-lg-2 col-12\">\r\n <p [class]=\"'st dropdown-toggle cursor-pointer my-2 '+ (currentSort.name == 'date' ? 'applied ' + (!currentSort.asc ? 'asc' : 'desc') : '')\"\r\n (click)=\"sortOrders('date')\">{{ 'date' | translate }}:</p>\r\n </div>\r\n <div class=\"col-lg-2 col-12\">\r\n <p [class]=\"'st dropdown-toggle cursor-pointer my-2 '+ (currentSort.name == 'total' ? 'applied ' + (!currentSort.asc ? 'asc' : 'desc') : '')\"\r\n (click)=\"sortOrders('total')\">{{ 'total' | translate }}:</p>\r\n </div>\r\n </div>\r\n @for(order of orders; track $index){\r\n <div class=\"row item border-bottom py-2\">\r\n <div class=\"col-lg-2 col-12\">\r\n <h5 class=\"fw-bold\">\r\n {{ order.number }}\r\n </h5>\r\n </div>\r\n <div class=\"col-lg-2 col-12\">\r\n @if(order.payments && order.payments.length > 0){\r\n <p class=\"price\">\r\n {{ order.payments[0].state | translate | titlecase }}\r\n </p>\r\n }\r\n </div>\r\n <div class=\"col-lg-2 col-12\">\r\n <p class=\"price\">\r\n {{ order.shipments[0].method.name }}\r\n </p>\r\n </div>\r\n <div class=\"col-lg-2 col-12\">\r\n <p class=\"price\">\r\n {{ order.shipments[0].state | translate | titlecase }}\r\n </p>\r\n <!-- ACA DEBERIA IR EL LINK DE SEGUIMIENTO -->\r\n <!-- <button class=\"btn btn-outline-dark btnLogout px-3 py-1 font-size-10 w-auto btn-sm\">Ver seguimiento</button> -->\r\n @if(order.tracking){\r\n <a [href]=\"order.tracking\"\r\n class=\"btn btn-outline-dark btnLogout px-3 py-1 font-size-10 w-auto btn-sm\">Ver seguimiento</a>\r\n }\r\n </div>\r\n <div class=\"col-lg-2 col-12\">\r\n <p class=\"price\">\r\n {{ toDate(order.checkoutCompletedAt, 'DD/MM/YYYY') | translate }}<br>\r\n {{ toDate(order.checkoutCompletedAt, 'h:mm:ss a') | translate }}\r\n </p>\r\n </div>\r\n <div class=\"col-lg-2 col-12 d-flex\">\r\n @if(creditAmountConfigured ? showPrice : true){\r\n <h5 class=\"fw-bold text-nowrap\">\r\n {{ (order.totals.total) | ecCurrencySymbol }}\r\n </h5>\r\n }\r\n <!-- <button class=\"btn px-0 w-100 btdetalle\" (click)=\"goToOrder(order)\">{{\r\n 'see-order' | translate }}</button> -->\r\n <button class=\"btn px-0 w-100 btdetalle\" (click)=\"goToOrder(order)\">\r\n <i class=\"bi bi-box-arrow-in-right\"></i></button>\r\n </div>\r\n </div>\r\n }\r\n }@else {\r\n <div class=\"w-100 h-50\">\r\n <div class=\"d-flex flex-row justify-content-center align-items-center text-center\">\r\n <h5>{{ 'no-orders' | translate }}</h5>\r\n </div>\r\n </div>\r\n }\r\n </section>\r\n }@else {\r\n <div class=\"w-100 h-50 py-5\">\r\n <div class=\"d-flex flex-row justify-content-center align-items-center text-center\">\r\n <app-loading-full-ec></app-loading-full-ec>\r\n </div>\r\n </div>\r\n }\r\n</div>\r\n\r\n<ng-template #errorView>\r\n <div class=\"w-100 h-50\">\r\n <div class=\"d-flex flex-row justify-content-center align-items-center text-center\">\r\n <h4>{{ 'orders-error' | translate }}</h4>\r\n </div>\r\n </div>\r\n</ng-template>\r\n" }]
|
|
10055
10092
|
}] });
|
|
10056
10093
|
|
|
10057
10094
|
class AccountEcComponent {
|
|
@@ -10064,11 +10101,11 @@ class AccountEcComponent {
|
|
|
10064
10101
|
this._router.navigateByUrl(path);
|
|
10065
10102
|
};
|
|
10066
10103
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AccountEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
10067
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: AccountEcComponent, isStandalone: true, selector: "lib-account-ec", ngImport: i0, template: "<section class=\"perfil mt-0\" id=\"accountEcComponent\">\n <div class=\"container row w-100 mx-auto py-md-3\">\n <div class=\"col-12 py-3\">\n <div class=\"row w-100 mx-auto border-bottom justify-content-between align-items-center py-3\">\n <h3 class=\"text-black w-auto\">MIS PEDIDOS</h3>\n <button class=\"btn btn-outline-dark px-3 py-1 font-size-10 w-auto\" (click)=\"logout()\">CERRAR\n SESI\u00D3N</button>\n </div>\n <app-orders-ec></app-orders-ec>\n </div>\n </div>\n</section>\n", styles: [""], dependencies: [{ kind: "component", type: OrdersListEcComponent, selector: "app-orders-ec" }] });
|
|
10104
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: AccountEcComponent, isStandalone: true, selector: "lib-account-ec", ngImport: i0, template: "<section class=\"perfil mt-0\" id=\"accountEcComponent\">\r\n <div class=\"container row w-100 mx-auto py-md-3\">\r\n <div class=\"col-12 py-3\">\r\n <div class=\"row w-100 mx-auto border-bottom justify-content-between align-items-center py-3\">\r\n <h3 class=\"text-black w-auto\">MIS PEDIDOS</h3>\r\n <button class=\"btn btn-outline-dark px-3 py-1 font-size-10 w-auto\" (click)=\"logout()\">CERRAR\r\n SESI\u00D3N</button>\r\n </div>\r\n <app-orders-ec></app-orders-ec>\r\n </div>\r\n </div>\r\n</section>\r\n", styles: [""], dependencies: [{ kind: "component", type: OrdersListEcComponent, selector: "app-orders-ec" }] });
|
|
10068
10105
|
}
|
|
10069
10106
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AccountEcComponent, decorators: [{
|
|
10070
10107
|
type: Component,
|
|
10071
|
-
args: [{ selector: 'lib-account-ec', standalone: true, imports: [OrdersListEcComponent], template: "<section class=\"perfil mt-0\" id=\"accountEcComponent\">\n <div class=\"container row w-100 mx-auto py-md-3\">\n <div class=\"col-12 py-3\">\n <div class=\"row w-100 mx-auto border-bottom justify-content-between align-items-center py-3\">\n <h3 class=\"text-black w-auto\">MIS PEDIDOS</h3>\n <button class=\"btn btn-outline-dark px-3 py-1 font-size-10 w-auto\" (click)=\"logout()\">CERRAR\n SESI\u00D3N</button>\n </div>\n <app-orders-ec></app-orders-ec>\n </div>\n </div>\n</section>\n" }]
|
|
10108
|
+
args: [{ selector: 'lib-account-ec', standalone: true, imports: [OrdersListEcComponent], template: "<section class=\"perfil mt-0\" id=\"accountEcComponent\">\r\n <div class=\"container row w-100 mx-auto py-md-3\">\r\n <div class=\"col-12 py-3\">\r\n <div class=\"row w-100 mx-auto border-bottom justify-content-between align-items-center py-3\">\r\n <h3 class=\"text-black w-auto\">MIS PEDIDOS</h3>\r\n <button class=\"btn btn-outline-dark px-3 py-1 font-size-10 w-auto\" (click)=\"logout()\">CERRAR\r\n SESI\u00D3N</button>\r\n </div>\r\n <app-orders-ec></app-orders-ec>\r\n </div>\r\n </div>\r\n</section>\r\n" }]
|
|
10072
10109
|
}] });
|
|
10073
10110
|
|
|
10074
10111
|
class OrderEcComponent {
|
|
@@ -10132,7 +10169,7 @@ class OrderEcComponent {
|
|
|
10132
10169
|
}
|
|
10133
10170
|
mediaUrl = () => this._constants.mediaUrl();
|
|
10134
10171
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OrderEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
10135
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: OrderEcComponent, isStandalone: true, selector: "app-order-ec", ngImport: i0, template: "<main class=\"py-5\" id=\"orderEcComponent\">\n <div class=\"container\">\n @if(order$ | async; as order){\n <div class=\"wrap\">\n @if(order){\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 @if(order?.invoice){\n <div class=\"col-sm col-12 font-brandon\">\n <a target=\"_blank\" [href]=\"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 }\n <a (click)=\"back()\" class=\"col-auto text-end\">\n <button class=\"btn btn-outline-dark btvolver border\">{{ '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 @if(order.tracking){\n <a [href]=\"order.tracking\"\n class=\"btn btn-outline-dark btnLogout px-3 py-1 font-size-10 w-auto btn-sm\">\n Ver seguimiento</a>\n }\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 @if(creditAccountShowPrices !== null ? creditAccountShowPrices : true){\n <div class=\"col-md-2 col-12 font-brandon\">\n <p class=\"st\">{{ 'total' | translate }}:</p>\n <h5 class=\"fw-bold\">\n {{ (order.totals.total) | ecCurrencySymbol}}\n\n </h5>\n </div>\n }\n </div>\n </section>\n @if(!hidePrices && allowRepeatOrders){\n <div class=\"text-end mt-3\">\n <button class=\"btn btn-primary mb-2 btnRepeatOrder\" (click)=\"repeatOrder()\">\n {{ 'repeat-order' | translate }}\n </button>\n </div> \n }\n\n <div class=\"container py-3 border-top border-bottom\">\n @if(order.items.length){\n <div 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 @if(channelConfig.applyOrderLot){\n <div id=\"colLots\" class=\"col-1 font-sm font-brandon d-none d-md-block\">\n <!-- {{ 'description' | translate | uppercase }} -->\n {{ 'lots' | translate | uppercase }}\n </div>\n }\n @if(creditAccountShowPrices !== null ? creditAccountShowPrices : true){\n <div class=\"col-2 text-center font-sm font-brandon d-none d-md-block\">\n {{ 'unit-price' | translate | uppercase }}\n </div>\n }\n <div class=\"col-1 text-center font-sm font-brandon d-none d-md-block\">\n {{ 'quantity' | translate | uppercase }}\n </div>\n @if(creditAccountShowPrices !== null ? creditAccountShowPrices : true){\n <div class=\"col-2 text-end font-sm font-brandon d-none d-md-block\">\n {{ 'total' | translate | uppercase }}\n </div>\n }\n </div>\n } @else {\n\n }\n @for(item of order.items; track $index; let i = $index){\n <div class=\"row cart-items\">\n <div class=\"col-5 col-md-2 py-2\">\n @if(item.product.variants[0]?.images?.length){\n <img class=\"smc maxwidth img-fluid rounded-custom \"\n [src]=\"mediaUrl() + item.product.variants[0].images[0]\" alt=\"\">\n } @else {\n @if(item.product.picturesdefault){\n <img class=\"smc maxwidth img-fluid rounded-custom\"\n [src]=\"mediaUrl() + item.product.picturesdefault[0]\" alt=\"\">\n }\n }\n </div>\n <div\n class=\"col-md-4 col-7 flex-column flex-md-row justify-content-start d-flex align-items-center\">\n <p class=\"font-brandon d-flex w-100 mb-0\">\n {{ item.product.name }} (Cod:{{ item.product.variants[0].code }})\n </p>\n </div>\n @if(channelConfig.applyOrderLot){\n <div class=\"col-md-1 col-1 flex-column flex-md-row justify-content-start d-flex align-items-center\">\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 }\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 @if(creditAccountShowPrices !== null ? creditAccountShowPrices : true){\n <div class=\"col-4 font-xl\">\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}}</p>\n </div>\n }\n @if(creditAccountShowPrices !== null ? creditAccountShowPrices : true){\n <div class=\"col-4 font-xl\">\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}}aaaa</p>\n </div>\n }\n </div>\n </div>\n @if(creditAccountShowPrices !== null ? creditAccountShowPrices : true){\n <div class=\"col-2 d-none d-md-flex align-items-center\">\n <p class=\"text-center w-100 m-0\">\n {{ (item.product.variants[0].saleprice ? item.product.variants[0].saleprice :\n item.product.variants[0].price) | ecCurrencySymbol}}\n </p>\n </div>\n }\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 @if(creditAccountShowPrices !== null ? creditAccountShowPrices : true){\n <div class=\"col-2 d-none d-md-flex align-items-center\">\n <p class=\"text-end w-100 m-0\">\n {{ ((item.product.variants[0].saleprice ? item.product.variants[0].saleprice :\n item.product.variants[0].price) * item.quantity) | ecCurrencySymbol}}</p>\n </div>\n }\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 @for( lot of item.orderItemLot; track $index){\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 @if(lot.date_deliver){\n <td>{{\n toDate(lot.date_deliver, 'DD/MM/YYYY') | translate }}</td>\n } @else {\n <td>Pendiente</td>\n }\n <td>{{lot.shipping_address_name}}</td>\n <td>{{lot.notes}}</td>\n <td>{{lot.total_lot | ecCurrencySymbol}}</td>\n </tr>\n }\n </tbody>\n </table>\n </div>\n </div>\n </div>\n }\n </div>\n\n <div class=\"container\">\n <div class=\"row\">\n <div class=\"col-12 col-md-6\"></div>\n @if(creditAccountShowPrices !== null ? creditAccountShowPrices : true){\n <div class=\"col-12 col-md-6\">\n <div class=\"row py-4\">\n <div class=\"col-6 font-brandon font-md text-gray border-bottom \">{{ 'total-products' |\n translate }}</div>\n <div class=\"col-6 font-brandon font-md text-gray border-bottom text-end\">\n {{ (order.totals.items) | ecCurrencySymbol }}\n </div>\n\n <div class=\"col-6 font-brandon font-md text-gray border-bottom \">{{ 'shipment' |\n translate }}</div>\n <div class=\"col-6 font-brandon font-md text-gray border-bottom text-end\">\n {{ (order.totals.shipping || '0') | ecCurrencySymbol }}\n\n </div>\n @if(!hideDiscounts && order.totals.promotion && order.totals.promotion != 0){\n <div class=\"col-6 font-brandon font-md text-gray border-bottom \">{{ 'discount' |\n translate }}</div>\n }\n @if(!hideDiscounts && order.totals.promotion && order.totals.promotion != 0){\n <div class=\"col-6 font-brandon font-md text-gray border-bottom text-end text-end\">\n {{ (order.totals.promotion) | ecCurrencySymbol }}</div>\n }\n @if(!hideTaxes && order.totals.taxes && order.totals.taxes != 0 ){\n <div class=\"col-6 font-brandon font-md text-gray border-bottom \">{{ 'taxes' | translate }}</div>\n }\n @if(!hideTaxes && order.totals.taxes && order.totals.taxes != 0){\n <div class=\"col-6 font-brandon font-md text-gray border-bottom text-end\">\n {{ (order.totals.taxes) | ecCurrencySymbol }}</div>\n }\n\n <div class=\"col-6 font-brandon font-md\">{{ 'total' | translate | uppercase }}</div>\n <div class=\"col-6 font-brandon font-md text-end\">\n {{ (order.totals.total) | ecCurrencySymbol }}\n </div>\n </div>\n </div>\n }\n </div>\n </div>\n\n } @else {\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 }\n </div>\n\n } @else {\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 }\n </div>\n</main>", styles: [""], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: EcCurrencySymbolPipe, name: "ecCurrencySymbol" }, { kind: "component", type: LoadingFullEcComponent, selector: "app-loading-full-ec" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: TitleCasePipe, name: "titlecase" }, { kind: "pipe", type: UpperCasePipe, name: "uppercase" }] });
|
|
10172
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: OrderEcComponent, isStandalone: true, selector: "app-order-ec", ngImport: i0, template: "<main class=\"py-5\" id=\"orderEcComponent\">\r\n <div class=\"container\">\r\n @if(order$ | async; as order){\r\n <div class=\"wrap\">\r\n @if(order){\r\n\r\n <div class=\"row justify-content-between \">\r\n <div class=\"col-sm-auto col-12 font-brandon\">\r\n <h4 class=\"tit1 fw-bold\">{{ ('order' | translate) + ': ' + order.number }}</h4>\r\n </div>\r\n @if(order?.invoice){\r\n <div class=\"col-sm col-12 font-brandon\">\r\n <a target=\"_blank\" [href]=\"getUrlBase().slice(0, -1) + order.invoice\"\r\n class=\"btn btn-link btn-invoice\">\r\n <i class=\"fas fa-file-download me-1\"></i>\r\n {{ 'download' | translate }} {{ 'invoices' | translate | titlecase }}\r\n </a>\r\n </div>\r\n }\r\n <a (click)=\"back()\" class=\"col-auto text-end\">\r\n <button class=\"btn btn-outline-dark btvolver border\">{{ 'back-to-orders' | translate }}</button>\r\n </a>\r\n </div>\r\n\r\n <section id=\"orders\">\r\n <div class=\"row pt-2\">\r\n <div class=\"col-md-2 col-12\">\r\n <p class=\"st\">{{ 'payment-state' | translate }}:</p>\r\n <p class=\"\">\r\n {{ order.payments[0].state | translate }}\r\n </p>\r\n </div>\r\n <div class=\"col-md-2 col-12 font-brandon\">\r\n <p class=\"st\">{{ 'shipment-state' | translate }}:</p>\r\n <p class=\"\">\r\n {{ order.shipments[0].state | translate }}\r\n </p>\r\n </div>\r\n <div class=\"col-md-2 col-12 font-brandon\">\r\n <p class=\"st\">{{ 'payment-method' | translate }}:</p>\r\n <p class=\"\">\r\n {{ order.payments[0]?.method?.name | translate }}\r\n </p>\r\n </div>\r\n <div class=\"col-md-2 col-12 font-brandon\">\r\n <p class=\"st\">{{ 'shipment-method' | translate }}:</p>\r\n <p class=\"\">\r\n {{ order.shipments[0].method.name }}\r\n </p>\r\n <!-- ACA DEBERIA IR EL LINK DE SEGUIMIENTO -->\r\n @if(order.tracking){\r\n <a [href]=\"order.tracking\"\r\n class=\"btn btn-outline-dark btnLogout px-3 py-1 font-size-10 w-auto btn-sm\">\r\n Ver seguimiento</a>\r\n }\r\n </div>\r\n <div class=\"col-md-2 col-12 font-brandon\">\r\n <p class=\"st\">{{ 'date' | translate }}:</p>\r\n <p class=\"\">\r\n {{ toDate(order.checkoutCompletedAt, 'DD/MM/YYYY') | translate }}<br>\r\n {{ toDate(order.checkoutCompletedAt, 'h:mm:ss a') | translate }}\r\n </p>\r\n </div>\r\n @if(creditAccountShowPrices !== null ? creditAccountShowPrices : true){\r\n <div class=\"col-md-2 col-12 font-brandon\">\r\n <p class=\"st\">{{ 'total' | translate }}:</p>\r\n <h5 class=\"fw-bold\">\r\n {{ (order.totals.total) | ecCurrencySymbol}}\r\n\r\n </h5>\r\n </div>\r\n }\r\n </div>\r\n </section>\r\n @if(!hidePrices && allowRepeatOrders){\r\n <div class=\"text-end mt-3\">\r\n <button class=\"btn btn-primary mb-2 btnRepeatOrder\" (click)=\"repeatOrder()\">\r\n {{ 'repeat-order' | translate }}\r\n </button>\r\n </div> \r\n }\r\n\r\n <div class=\"container py-3 border-top border-bottom\">\r\n @if(order.items.length){\r\n <div class=\"row\">\r\n <div class=\"col-2 font-sm font-brandon d-none d-md-block\">\r\n {{ 'product' | translate | uppercase }}\r\n </div>\r\n <div class=\"col-4 font-sm font-brandon d-none d-md-block\">\r\n {{ 'description' | translate | uppercase }}\r\n </div>\r\n @if(channelConfig.applyOrderLot){\r\n <div id=\"colLots\" class=\"col-1 font-sm font-brandon d-none d-md-block\">\r\n <!-- {{ 'description' | translate | uppercase }} -->\r\n {{ 'lots' | translate | uppercase }}\r\n </div>\r\n }\r\n @if(creditAccountShowPrices !== null ? creditAccountShowPrices : true){\r\n <div class=\"col-2 text-center font-sm font-brandon d-none d-md-block\">\r\n {{ 'unit-price' | translate | uppercase }}\r\n </div>\r\n }\r\n <div class=\"col-1 text-center font-sm font-brandon d-none d-md-block\">\r\n {{ 'quantity' | translate | uppercase }}\r\n </div>\r\n @if(creditAccountShowPrices !== null ? creditAccountShowPrices : true){\r\n <div class=\"col-2 text-end font-sm font-brandon d-none d-md-block\">\r\n {{ 'total' | translate | uppercase }}\r\n </div>\r\n }\r\n </div>\r\n } @else {\r\n\r\n }\r\n @for(item of order.items; track $index; let i = $index){\r\n <div class=\"row cart-items\">\r\n <div class=\"col-5 col-md-2 py-2\">\r\n @if(item.product.variants[0]?.images?.length){\r\n <img class=\"smc maxwidth img-fluid rounded-custom \"\r\n [src]=\"mediaUrl() + item.product.variants[0].images[0]\" alt=\"\">\r\n } @else {\r\n @if(item.product.picturesdefault){\r\n <img class=\"smc maxwidth img-fluid rounded-custom\"\r\n [src]=\"mediaUrl() + item.product.picturesdefault[0]\" alt=\"\">\r\n }\r\n }\r\n </div>\r\n <div\r\n class=\"col-md-4 col-7 flex-column flex-md-row justify-content-start d-flex align-items-center\">\r\n <p class=\"font-brandon d-flex w-100 mb-0\">\r\n {{ item.product.name }} (Cod:{{ item.product.variants[0].code }})\r\n </p>\r\n </div>\r\n @if(channelConfig.applyOrderLot){\r\n <div class=\"col-md-1 col-1 flex-column flex-md-row justify-content-start d-flex align-items-center\">\r\n <input type=\"button\" class=\"btn btn-primary btnSeguir m-0 text-center\" type=\"button\"\r\n [attr.data-bs-toggle]=\"'collapse'\" [attr.data-bs-target]=\"'#collapseExample'+i\"\r\n aria-expanded=\"false\" [attr.aria-controls]=\"'collapseExample'+i\"\r\n value=\"{{ 'see' | translate | uppercase }}\">\r\n </div>\r\n }\r\n <div class=\"container d-md-none\">\r\n <div class=\"row\">\r\n <div class=\"col-4\">\r\n <p class=\"text-center w-100 m-0\"> {{ item.quantity }}</p>\r\n </div>\r\n @if(creditAccountShowPrices !== null ? creditAccountShowPrices : true){\r\n <div class=\"col-4 font-xl\">\r\n <p class=\"text-center w-100 m-0\"> {{ (item.product.variants[0].saleprice ?\r\n item.product.variants[0].saleprice : item.product.variants[0].price) |\r\n ecCurrencySymbol}}</p>\r\n </div>\r\n }\r\n @if(creditAccountShowPrices !== null ? creditAccountShowPrices : true){\r\n <div class=\"col-4 font-xl\">\r\n <p class=\"text-center w-100 m-0\"> {{ ((item.product.variants[0].saleprice ?\r\n item.product.variants[0].saleprice : item.product.variants[0].price) *\r\n item.quantity) | ecCurrencySymbol}}aaaa</p>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n @if(creditAccountShowPrices !== null ? creditAccountShowPrices : true){\r\n <div class=\"col-2 d-none d-md-flex align-items-center\">\r\n <p class=\"text-center w-100 m-0\">\r\n {{ (item.product.variants[0].saleprice ? item.product.variants[0].saleprice :\r\n item.product.variants[0].price) | ecCurrencySymbol}}\r\n </p>\r\n </div>\r\n }\r\n <div class=\"col-1 d-none d-md-flex align-items-center\">\r\n <p class=\"text-center w-100 m-0\"> {{ item.quantity }}</p>\r\n </div>\r\n @if(creditAccountShowPrices !== null ? creditAccountShowPrices : true){\r\n <div class=\"col-2 d-none d-md-flex align-items-center\">\r\n <p class=\"text-end w-100 m-0\">\r\n {{ ((item.product.variants[0].saleprice ? item.product.variants[0].saleprice :\r\n item.product.variants[0].price) * item.quantity) | ecCurrencySymbol}}</p>\r\n </div>\r\n }\r\n <div class=\"collapse\" [attr.id]=\"'collapseExample'+i\">\r\n <div class=\"card card-body\">\r\n <table class=\"table table-striped\">\r\n <thead>\r\n <tr>\r\n <th scope=\"col\">#</th>\r\n <th scope=\"col\">Estado</th>\r\n <th scope=\"col\">Cantidad</th>\r\n <th scope=\"col\">Fecha Solicitada</th>\r\n <th scope=\"col\">Fecha Estimada</th>\r\n <th scope=\"col\">Sede</th>\r\n <th scope=\"col\">Nota</th>\r\n <th scope=\"col\">Total Lote</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n @for( lot of item.orderItemLot; track $index){\r\n <tr>\r\n <th scope=\"row\">{{lot.id}}</th>\r\n <td>{{lot.lot_status}}</td>\r\n <td>{{lot.quantity}}</td>\r\n <td>{{ toDate(lot.date_request, 'DD/MM/YYYY') | translate }}</td>\r\n @if(lot.date_deliver){\r\n <td>{{\r\n toDate(lot.date_deliver, 'DD/MM/YYYY') | translate }}</td>\r\n } @else {\r\n <td>Pendiente</td>\r\n }\r\n <td>{{lot.shipping_address_name}}</td>\r\n <td>{{lot.notes}}</td>\r\n <td>{{lot.total_lot | ecCurrencySymbol}}</td>\r\n </tr>\r\n }\r\n </tbody>\r\n </table>\r\n </div>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n\r\n <div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-12 col-md-6\"></div>\r\n @if(creditAccountShowPrices !== null ? creditAccountShowPrices : true){\r\n <div class=\"col-12 col-md-6\">\r\n <div class=\"row py-4\">\r\n <div class=\"col-6 font-brandon font-md text-gray border-bottom \">{{ 'total-products' |\r\n translate }}</div>\r\n <div class=\"col-6 font-brandon font-md text-gray border-bottom text-end\">\r\n {{ (order.totals.items) | ecCurrencySymbol }}\r\n </div>\r\n\r\n <div class=\"col-6 font-brandon font-md text-gray border-bottom \">{{ 'shipment' |\r\n translate }}</div>\r\n <div class=\"col-6 font-brandon font-md text-gray border-bottom text-end\">\r\n {{ (order.totals.shipping || '0') | ecCurrencySymbol }}\r\n\r\n </div>\r\n @if(!hideDiscounts && order.totals.promotion && order.totals.promotion != 0){\r\n <div class=\"col-6 font-brandon font-md text-gray border-bottom \">{{ 'discount' |\r\n translate }}</div>\r\n }\r\n @if(!hideDiscounts && order.totals.promotion && order.totals.promotion != 0){\r\n <div class=\"col-6 font-brandon font-md text-gray border-bottom text-end text-end\">\r\n {{ (order.totals.promotion) | ecCurrencySymbol }}</div>\r\n }\r\n @if(!hideTaxes && order.totals.taxes && order.totals.taxes != 0 ){\r\n <div class=\"col-6 font-brandon font-md text-gray border-bottom \">{{ 'taxes' | translate }}</div>\r\n }\r\n @if(!hideTaxes && order.totals.taxes && order.totals.taxes != 0){\r\n <div class=\"col-6 font-brandon font-md text-gray border-bottom text-end\">\r\n {{ (order.totals.taxes) | ecCurrencySymbol }}</div>\r\n }\r\n\r\n <div class=\"col-6 font-brandon font-md\">{{ 'total' | translate | uppercase }}</div>\r\n <div class=\"col-6 font-brandon font-md text-end\">\r\n {{ (order.totals.total) | ecCurrencySymbol }}\r\n </div>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n\r\n } @else {\r\n <div class=\"w-100 h-50\">\r\n <div class=\"d-flex flex-row justify-content-center align-items-center text-center\">\r\n <h5>{{ 'no-orders' | translate }}</h5>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n\r\n } @else {\r\n <div class=\"w-100 h-50 py-5\">\r\n <div class=\"d-flex flex-row justify-content-center align-items-center text-center\">\r\n <app-loading-full-ec></app-loading-full-ec>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n</main>", styles: [""], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "pipe", type: EcCurrencySymbolPipe, name: "ecCurrencySymbol" }, { kind: "component", type: LoadingFullEcComponent, selector: "app-loading-full-ec" }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: TitleCasePipe, name: "titlecase" }, { kind: "pipe", type: UpperCasePipe, name: "uppercase" }] });
|
|
10136
10173
|
}
|
|
10137
10174
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: OrderEcComponent, decorators: [{
|
|
10138
10175
|
type: Component,
|
|
@@ -10142,7 +10179,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
10142
10179
|
AsyncPipe,
|
|
10143
10180
|
TitleCasePipe,
|
|
10144
10181
|
UpperCasePipe
|
|
10145
|
-
], template: "<main class=\"py-5\" id=\"orderEcComponent\">\n <div class=\"container\">\n @if(order$ | async; as order){\n <div class=\"wrap\">\n @if(order){\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 @if(order?.invoice){\n <div class=\"col-sm col-12 font-brandon\">\n <a target=\"_blank\" [href]=\"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 }\n <a (click)=\"back()\" class=\"col-auto text-end\">\n <button class=\"btn btn-outline-dark btvolver border\">{{ '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 @if(order.tracking){\n <a [href]=\"order.tracking\"\n class=\"btn btn-outline-dark btnLogout px-3 py-1 font-size-10 w-auto btn-sm\">\n Ver seguimiento</a>\n }\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 @if(creditAccountShowPrices !== null ? creditAccountShowPrices : true){\n <div class=\"col-md-2 col-12 font-brandon\">\n <p class=\"st\">{{ 'total' | translate }}:</p>\n <h5 class=\"fw-bold\">\n {{ (order.totals.total) | ecCurrencySymbol}}\n\n </h5>\n </div>\n }\n </div>\n </section>\n @if(!hidePrices && allowRepeatOrders){\n <div class=\"text-end mt-3\">\n <button class=\"btn btn-primary mb-2 btnRepeatOrder\" (click)=\"repeatOrder()\">\n {{ 'repeat-order' | translate }}\n </button>\n </div> \n }\n\n <div class=\"container py-3 border-top border-bottom\">\n @if(order.items.length){\n <div 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 @if(channelConfig.applyOrderLot){\n <div id=\"colLots\" class=\"col-1 font-sm font-brandon d-none d-md-block\">\n <!-- {{ 'description' | translate | uppercase }} -->\n {{ 'lots' | translate | uppercase }}\n </div>\n }\n @if(creditAccountShowPrices !== null ? creditAccountShowPrices : true){\n <div class=\"col-2 text-center font-sm font-brandon d-none d-md-block\">\n {{ 'unit-price' | translate | uppercase }}\n </div>\n }\n <div class=\"col-1 text-center font-sm font-brandon d-none d-md-block\">\n {{ 'quantity' | translate | uppercase }}\n </div>\n @if(creditAccountShowPrices !== null ? creditAccountShowPrices : true){\n <div class=\"col-2 text-end font-sm font-brandon d-none d-md-block\">\n {{ 'total' | translate | uppercase }}\n </div>\n }\n </div>\n } @else {\n\n }\n @for(item of order.items; track $index; let i = $index){\n <div class=\"row cart-items\">\n <div class=\"col-5 col-md-2 py-2\">\n @if(item.product.variants[0]?.images?.length){\n <img class=\"smc maxwidth img-fluid rounded-custom \"\n [src]=\"mediaUrl() + item.product.variants[0].images[0]\" alt=\"\">\n } @else {\n @if(item.product.picturesdefault){\n <img class=\"smc maxwidth img-fluid rounded-custom\"\n [src]=\"mediaUrl() + item.product.picturesdefault[0]\" alt=\"\">\n }\n }\n </div>\n <div\n class=\"col-md-4 col-7 flex-column flex-md-row justify-content-start d-flex align-items-center\">\n <p class=\"font-brandon d-flex w-100 mb-0\">\n {{ item.product.name }} (Cod:{{ item.product.variants[0].code }})\n </p>\n </div>\n @if(channelConfig.applyOrderLot){\n <div class=\"col-md-1 col-1 flex-column flex-md-row justify-content-start d-flex align-items-center\">\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 }\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 @if(creditAccountShowPrices !== null ? creditAccountShowPrices : true){\n <div class=\"col-4 font-xl\">\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}}</p>\n </div>\n }\n @if(creditAccountShowPrices !== null ? creditAccountShowPrices : true){\n <div class=\"col-4 font-xl\">\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}}aaaa</p>\n </div>\n }\n </div>\n </div>\n @if(creditAccountShowPrices !== null ? creditAccountShowPrices : true){\n <div class=\"col-2 d-none d-md-flex align-items-center\">\n <p class=\"text-center w-100 m-0\">\n {{ (item.product.variants[0].saleprice ? item.product.variants[0].saleprice :\n item.product.variants[0].price) | ecCurrencySymbol}}\n </p>\n </div>\n }\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 @if(creditAccountShowPrices !== null ? creditAccountShowPrices : true){\n <div class=\"col-2 d-none d-md-flex align-items-center\">\n <p class=\"text-end w-100 m-0\">\n {{ ((item.product.variants[0].saleprice ? item.product.variants[0].saleprice :\n item.product.variants[0].price) * item.quantity) | ecCurrencySymbol}}</p>\n </div>\n }\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 @for( lot of item.orderItemLot; track $index){\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 @if(lot.date_deliver){\n <td>{{\n toDate(lot.date_deliver, 'DD/MM/YYYY') | translate }}</td>\n } @else {\n <td>Pendiente</td>\n }\n <td>{{lot.shipping_address_name}}</td>\n <td>{{lot.notes}}</td>\n <td>{{lot.total_lot | ecCurrencySymbol}}</td>\n </tr>\n }\n </tbody>\n </table>\n </div>\n </div>\n </div>\n }\n </div>\n\n <div class=\"container\">\n <div class=\"row\">\n <div class=\"col-12 col-md-6\"></div>\n @if(creditAccountShowPrices !== null ? creditAccountShowPrices : true){\n <div class=\"col-12 col-md-6\">\n <div class=\"row py-4\">\n <div class=\"col-6 font-brandon font-md text-gray border-bottom \">{{ 'total-products' |\n translate }}</div>\n <div class=\"col-6 font-brandon font-md text-gray border-bottom text-end\">\n {{ (order.totals.items) | ecCurrencySymbol }}\n </div>\n\n <div class=\"col-6 font-brandon font-md text-gray border-bottom \">{{ 'shipment' |\n translate }}</div>\n <div class=\"col-6 font-brandon font-md text-gray border-bottom text-end\">\n {{ (order.totals.shipping || '0') | ecCurrencySymbol }}\n\n </div>\n @if(!hideDiscounts && order.totals.promotion && order.totals.promotion != 0){\n <div class=\"col-6 font-brandon font-md text-gray border-bottom \">{{ 'discount' |\n translate }}</div>\n }\n @if(!hideDiscounts && order.totals.promotion && order.totals.promotion != 0){\n <div class=\"col-6 font-brandon font-md text-gray border-bottom text-end text-end\">\n {{ (order.totals.promotion) | ecCurrencySymbol }}</div>\n }\n @if(!hideTaxes && order.totals.taxes && order.totals.taxes != 0 ){\n <div class=\"col-6 font-brandon font-md text-gray border-bottom \">{{ 'taxes' | translate }}</div>\n }\n @if(!hideTaxes && order.totals.taxes && order.totals.taxes != 0){\n <div class=\"col-6 font-brandon font-md text-gray border-bottom text-end\">\n {{ (order.totals.taxes) | ecCurrencySymbol }}</div>\n }\n\n <div class=\"col-6 font-brandon font-md\">{{ 'total' | translate | uppercase }}</div>\n <div class=\"col-6 font-brandon font-md text-end\">\n {{ (order.totals.total) | ecCurrencySymbol }}\n </div>\n </div>\n </div>\n }\n </div>\n </div>\n\n } @else {\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 }\n </div>\n\n } @else {\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 }\n </div>\n</main>" }]
|
|
10182
|
+
], template: "<main class=\"py-5\" id=\"orderEcComponent\">\r\n <div class=\"container\">\r\n @if(order$ | async; as order){\r\n <div class=\"wrap\">\r\n @if(order){\r\n\r\n <div class=\"row justify-content-between \">\r\n <div class=\"col-sm-auto col-12 font-brandon\">\r\n <h4 class=\"tit1 fw-bold\">{{ ('order' | translate) + ': ' + order.number }}</h4>\r\n </div>\r\n @if(order?.invoice){\r\n <div class=\"col-sm col-12 font-brandon\">\r\n <a target=\"_blank\" [href]=\"getUrlBase().slice(0, -1) + order.invoice\"\r\n class=\"btn btn-link btn-invoice\">\r\n <i class=\"fas fa-file-download me-1\"></i>\r\n {{ 'download' | translate }} {{ 'invoices' | translate | titlecase }}\r\n </a>\r\n </div>\r\n }\r\n <a (click)=\"back()\" class=\"col-auto text-end\">\r\n <button class=\"btn btn-outline-dark btvolver border\">{{ 'back-to-orders' | translate }}</button>\r\n </a>\r\n </div>\r\n\r\n <section id=\"orders\">\r\n <div class=\"row pt-2\">\r\n <div class=\"col-md-2 col-12\">\r\n <p class=\"st\">{{ 'payment-state' | translate }}:</p>\r\n <p class=\"\">\r\n {{ order.payments[0].state | translate }}\r\n </p>\r\n </div>\r\n <div class=\"col-md-2 col-12 font-brandon\">\r\n <p class=\"st\">{{ 'shipment-state' | translate }}:</p>\r\n <p class=\"\">\r\n {{ order.shipments[0].state | translate }}\r\n </p>\r\n </div>\r\n <div class=\"col-md-2 col-12 font-brandon\">\r\n <p class=\"st\">{{ 'payment-method' | translate }}:</p>\r\n <p class=\"\">\r\n {{ order.payments[0]?.method?.name | translate }}\r\n </p>\r\n </div>\r\n <div class=\"col-md-2 col-12 font-brandon\">\r\n <p class=\"st\">{{ 'shipment-method' | translate }}:</p>\r\n <p class=\"\">\r\n {{ order.shipments[0].method.name }}\r\n </p>\r\n <!-- ACA DEBERIA IR EL LINK DE SEGUIMIENTO -->\r\n @if(order.tracking){\r\n <a [href]=\"order.tracking\"\r\n class=\"btn btn-outline-dark btnLogout px-3 py-1 font-size-10 w-auto btn-sm\">\r\n Ver seguimiento</a>\r\n }\r\n </div>\r\n <div class=\"col-md-2 col-12 font-brandon\">\r\n <p class=\"st\">{{ 'date' | translate }}:</p>\r\n <p class=\"\">\r\n {{ toDate(order.checkoutCompletedAt, 'DD/MM/YYYY') | translate }}<br>\r\n {{ toDate(order.checkoutCompletedAt, 'h:mm:ss a') | translate }}\r\n </p>\r\n </div>\r\n @if(creditAccountShowPrices !== null ? creditAccountShowPrices : true){\r\n <div class=\"col-md-2 col-12 font-brandon\">\r\n <p class=\"st\">{{ 'total' | translate }}:</p>\r\n <h5 class=\"fw-bold\">\r\n {{ (order.totals.total) | ecCurrencySymbol}}\r\n\r\n </h5>\r\n </div>\r\n }\r\n </div>\r\n </section>\r\n @if(!hidePrices && allowRepeatOrders){\r\n <div class=\"text-end mt-3\">\r\n <button class=\"btn btn-primary mb-2 btnRepeatOrder\" (click)=\"repeatOrder()\">\r\n {{ 'repeat-order' | translate }}\r\n </button>\r\n </div> \r\n }\r\n\r\n <div class=\"container py-3 border-top border-bottom\">\r\n @if(order.items.length){\r\n <div class=\"row\">\r\n <div class=\"col-2 font-sm font-brandon d-none d-md-block\">\r\n {{ 'product' | translate | uppercase }}\r\n </div>\r\n <div class=\"col-4 font-sm font-brandon d-none d-md-block\">\r\n {{ 'description' | translate | uppercase }}\r\n </div>\r\n @if(channelConfig.applyOrderLot){\r\n <div id=\"colLots\" class=\"col-1 font-sm font-brandon d-none d-md-block\">\r\n <!-- {{ 'description' | translate | uppercase }} -->\r\n {{ 'lots' | translate | uppercase }}\r\n </div>\r\n }\r\n @if(creditAccountShowPrices !== null ? creditAccountShowPrices : true){\r\n <div class=\"col-2 text-center font-sm font-brandon d-none d-md-block\">\r\n {{ 'unit-price' | translate | uppercase }}\r\n </div>\r\n }\r\n <div class=\"col-1 text-center font-sm font-brandon d-none d-md-block\">\r\n {{ 'quantity' | translate | uppercase }}\r\n </div>\r\n @if(creditAccountShowPrices !== null ? creditAccountShowPrices : true){\r\n <div class=\"col-2 text-end font-sm font-brandon d-none d-md-block\">\r\n {{ 'total' | translate | uppercase }}\r\n </div>\r\n }\r\n </div>\r\n } @else {\r\n\r\n }\r\n @for(item of order.items; track $index; let i = $index){\r\n <div class=\"row cart-items\">\r\n <div class=\"col-5 col-md-2 py-2\">\r\n @if(item.product.variants[0]?.images?.length){\r\n <img class=\"smc maxwidth img-fluid rounded-custom \"\r\n [src]=\"mediaUrl() + item.product.variants[0].images[0]\" alt=\"\">\r\n } @else {\r\n @if(item.product.picturesdefault){\r\n <img class=\"smc maxwidth img-fluid rounded-custom\"\r\n [src]=\"mediaUrl() + item.product.picturesdefault[0]\" alt=\"\">\r\n }\r\n }\r\n </div>\r\n <div\r\n class=\"col-md-4 col-7 flex-column flex-md-row justify-content-start d-flex align-items-center\">\r\n <p class=\"font-brandon d-flex w-100 mb-0\">\r\n {{ item.product.name }} (Cod:{{ item.product.variants[0].code }})\r\n </p>\r\n </div>\r\n @if(channelConfig.applyOrderLot){\r\n <div class=\"col-md-1 col-1 flex-column flex-md-row justify-content-start d-flex align-items-center\">\r\n <input type=\"button\" class=\"btn btn-primary btnSeguir m-0 text-center\" type=\"button\"\r\n [attr.data-bs-toggle]=\"'collapse'\" [attr.data-bs-target]=\"'#collapseExample'+i\"\r\n aria-expanded=\"false\" [attr.aria-controls]=\"'collapseExample'+i\"\r\n value=\"{{ 'see' | translate | uppercase }}\">\r\n </div>\r\n }\r\n <div class=\"container d-md-none\">\r\n <div class=\"row\">\r\n <div class=\"col-4\">\r\n <p class=\"text-center w-100 m-0\"> {{ item.quantity }}</p>\r\n </div>\r\n @if(creditAccountShowPrices !== null ? creditAccountShowPrices : true){\r\n <div class=\"col-4 font-xl\">\r\n <p class=\"text-center w-100 m-0\"> {{ (item.product.variants[0].saleprice ?\r\n item.product.variants[0].saleprice : item.product.variants[0].price) |\r\n ecCurrencySymbol}}</p>\r\n </div>\r\n }\r\n @if(creditAccountShowPrices !== null ? creditAccountShowPrices : true){\r\n <div class=\"col-4 font-xl\">\r\n <p class=\"text-center w-100 m-0\"> {{ ((item.product.variants[0].saleprice ?\r\n item.product.variants[0].saleprice : item.product.variants[0].price) *\r\n item.quantity) | ecCurrencySymbol}}aaaa</p>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n @if(creditAccountShowPrices !== null ? creditAccountShowPrices : true){\r\n <div class=\"col-2 d-none d-md-flex align-items-center\">\r\n <p class=\"text-center w-100 m-0\">\r\n {{ (item.product.variants[0].saleprice ? item.product.variants[0].saleprice :\r\n item.product.variants[0].price) | ecCurrencySymbol}}\r\n </p>\r\n </div>\r\n }\r\n <div class=\"col-1 d-none d-md-flex align-items-center\">\r\n <p class=\"text-center w-100 m-0\"> {{ item.quantity }}</p>\r\n </div>\r\n @if(creditAccountShowPrices !== null ? creditAccountShowPrices : true){\r\n <div class=\"col-2 d-none d-md-flex align-items-center\">\r\n <p class=\"text-end w-100 m-0\">\r\n {{ ((item.product.variants[0].saleprice ? item.product.variants[0].saleprice :\r\n item.product.variants[0].price) * item.quantity) | ecCurrencySymbol}}</p>\r\n </div>\r\n }\r\n <div class=\"collapse\" [attr.id]=\"'collapseExample'+i\">\r\n <div class=\"card card-body\">\r\n <table class=\"table table-striped\">\r\n <thead>\r\n <tr>\r\n <th scope=\"col\">#</th>\r\n <th scope=\"col\">Estado</th>\r\n <th scope=\"col\">Cantidad</th>\r\n <th scope=\"col\">Fecha Solicitada</th>\r\n <th scope=\"col\">Fecha Estimada</th>\r\n <th scope=\"col\">Sede</th>\r\n <th scope=\"col\">Nota</th>\r\n <th scope=\"col\">Total Lote</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n @for( lot of item.orderItemLot; track $index){\r\n <tr>\r\n <th scope=\"row\">{{lot.id}}</th>\r\n <td>{{lot.lot_status}}</td>\r\n <td>{{lot.quantity}}</td>\r\n <td>{{ toDate(lot.date_request, 'DD/MM/YYYY') | translate }}</td>\r\n @if(lot.date_deliver){\r\n <td>{{\r\n toDate(lot.date_deliver, 'DD/MM/YYYY') | translate }}</td>\r\n } @else {\r\n <td>Pendiente</td>\r\n }\r\n <td>{{lot.shipping_address_name}}</td>\r\n <td>{{lot.notes}}</td>\r\n <td>{{lot.total_lot | ecCurrencySymbol}}</td>\r\n </tr>\r\n }\r\n </tbody>\r\n </table>\r\n </div>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n\r\n <div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-12 col-md-6\"></div>\r\n @if(creditAccountShowPrices !== null ? creditAccountShowPrices : true){\r\n <div class=\"col-12 col-md-6\">\r\n <div class=\"row py-4\">\r\n <div class=\"col-6 font-brandon font-md text-gray border-bottom \">{{ 'total-products' |\r\n translate }}</div>\r\n <div class=\"col-6 font-brandon font-md text-gray border-bottom text-end\">\r\n {{ (order.totals.items) | ecCurrencySymbol }}\r\n </div>\r\n\r\n <div class=\"col-6 font-brandon font-md text-gray border-bottom \">{{ 'shipment' |\r\n translate }}</div>\r\n <div class=\"col-6 font-brandon font-md text-gray border-bottom text-end\">\r\n {{ (order.totals.shipping || '0') | ecCurrencySymbol }}\r\n\r\n </div>\r\n @if(!hideDiscounts && order.totals.promotion && order.totals.promotion != 0){\r\n <div class=\"col-6 font-brandon font-md text-gray border-bottom \">{{ 'discount' |\r\n translate }}</div>\r\n }\r\n @if(!hideDiscounts && order.totals.promotion && order.totals.promotion != 0){\r\n <div class=\"col-6 font-brandon font-md text-gray border-bottom text-end text-end\">\r\n {{ (order.totals.promotion) | ecCurrencySymbol }}</div>\r\n }\r\n @if(!hideTaxes && order.totals.taxes && order.totals.taxes != 0 ){\r\n <div class=\"col-6 font-brandon font-md text-gray border-bottom \">{{ 'taxes' | translate }}</div>\r\n }\r\n @if(!hideTaxes && order.totals.taxes && order.totals.taxes != 0){\r\n <div class=\"col-6 font-brandon font-md text-gray border-bottom text-end\">\r\n {{ (order.totals.taxes) | ecCurrencySymbol }}</div>\r\n }\r\n\r\n <div class=\"col-6 font-brandon font-md\">{{ 'total' | translate | uppercase }}</div>\r\n <div class=\"col-6 font-brandon font-md text-end\">\r\n {{ (order.totals.total) | ecCurrencySymbol }}\r\n </div>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n\r\n } @else {\r\n <div class=\"w-100 h-50\">\r\n <div class=\"d-flex flex-row justify-content-center align-items-center text-center\">\r\n <h5>{{ 'no-orders' | translate }}</h5>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n\r\n } @else {\r\n <div class=\"w-100 h-50 py-5\">\r\n <div class=\"d-flex flex-row justify-content-center align-items-center text-center\">\r\n <app-loading-full-ec></app-loading-full-ec>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n</main>" }]
|
|
10146
10183
|
}] });
|
|
10147
10184
|
|
|
10148
10185
|
class SidebarEcComponent {
|
|
@@ -10193,11 +10230,11 @@ class SidebarEcComponent {
|
|
|
10193
10230
|
throw new Error('Method not implemented.');
|
|
10194
10231
|
}
|
|
10195
10232
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SidebarEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
10196
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: SidebarEcComponent, isStandalone: true, selector: "app-sidebar-ec", ngImport: i0, template: "<div class=\"nav nav-sidebar py-4 mx-0 position-relative text-center shadow-sm border-bottom d-flex justify-content-center\">\n <h2 class=\"row text-center\">Mi pedido</h2>\n <div class=\" me-3 closeCart position-absolute end-0\" data-bs-dismiss=\"offcanvas\" aria-label=\"Close\">\n <i class=\"fa fa-times-circle fs-5\" aria-hidden=\"true\"></i>\n </div>\n</div>\n\n\n@if(cartItems$ | async; as items){\n @if(items.length > 0){\n <!-- PRODUCTO -->\n <div class=\"d-flex flex-column mb-4 items border-bottom\">\n @for(item of items; track $index; let i = $index){\n <div class=\"productoCarrito mt-1 mb-2 w-100\">\n <app-cart-item-ec [inSidebar]=\"true\" [item]=\"item\"></app-cart-item-ec>\n </div>\n }\n </div>\n <div class=\"d-flex mx-4 justify-content-between mt-2 \">\n <p class=\"fw-bold\">Subtotal</p>\n <p class=\"fw-700\">{{ (subTotalAmount$ | async) | ecCurrencySymbol}}</p>\n </div>\n <div class=\"mx-4 bordeBot py-2\">\n <app-coupon-ec></app-coupon-ec>\n </div>\n <div class=\"d-flex mx-4 justify-content-between bordeBot2 mt-2\">\n <p class=\"fw-bold\">Descuentos:</p>\n <p>{{ (totalPromotionAmount$ | async) |ecCurrencySymbol }}</p>\n </div>\n\n <div class=\"d-flex mx-4 justify-content-between bordeBot2 pt-2\">\n <!-- @if(this._cartService.cart.source.value.couponCode){\n <a class=\"quitar-cupon text-dark\" role=\"button\"\n (click)=\"removeCoupon()\">(Quitar cup\u00F3n)</a>\n } -->\n </div>\n <div class=\"d-flex mx-4 justify-content-between mb-3 mt-2\">\n <p class=\"fw-bold h5\">TOTAL</p>\n <p class=\"fw-bold h5\">{{(totalAmount$ | async) | ecCurrencySymbol}}</p>\n </div>\n <div class=\"d-flex flex-column mx-4 justify-content-between mb-3\" data-bs-dismiss=\"offcanvas\" aria-label=\"Close\">\n <a [routerLink]=\"['/cart']\" class=\"btn btnPedido mb-2\">FINALIZAR PEDIDO</a>\n <a [routerLink]=\"['/collection']\" class=\"btn btnSeguir mb-3\">SEGUIR COMPRANDO</a>\n </div>\n\n\n } @else {\n <div class=\"container-lg px-lg-0 px-md-4 my-5\">\n <div class=\"row\">\n <div class=\"col-12\">\n <h5 class=\"text-center mb-sm-4 text-uppercase\"> \u00B7 Su carrito se\n encuentra vac\u00EDo \u00B7 </h5>\n </div>\n </div>\n </div>\n }\n}", styles: [""], dependencies: [{ kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "component", type: CouponEcComponent, selector: "app-coupon-ec" }, { kind: "component", type: CartItemEcComponent, selector: "app-cart-item-ec", inputs: ["item", "inSidebar"] }, { kind: "pipe", type: EcCurrencySymbolPipe, name: "ecCurrencySymbol" }] });
|
|
10233
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: SidebarEcComponent, isStandalone: true, selector: "app-sidebar-ec", ngImport: i0, template: "<div class=\"nav nav-sidebar py-4 mx-0 position-relative text-center shadow-sm border-bottom d-flex justify-content-center\">\r\n <h2 class=\"row text-center\">Mi pedido</h2>\r\n <div class=\" me-3 closeCart position-absolute end-0\" data-bs-dismiss=\"offcanvas\" aria-label=\"Close\">\r\n <i class=\"fa fa-times-circle fs-5\" aria-hidden=\"true\"></i>\r\n </div>\r\n</div>\r\n\r\n\r\n@if(cartItems$ | async; as items){\r\n @if(items.length > 0){\r\n <!-- PRODUCTO -->\r\n <div class=\"d-flex flex-column mb-4 items border-bottom\">\r\n @for(item of items; track $index; let i = $index){\r\n <div class=\"productoCarrito mt-1 mb-2 w-100\">\r\n <app-cart-item-ec [inSidebar]=\"true\" [item]=\"item\"></app-cart-item-ec>\r\n </div>\r\n }\r\n </div>\r\n <div class=\"d-flex mx-4 justify-content-between mt-2 \">\r\n <p class=\"fw-bold\">Subtotal</p>\r\n <p class=\"fw-700\">{{ (subTotalAmount$ | async) | ecCurrencySymbol}}</p>\r\n </div>\r\n <div class=\"mx-4 bordeBot py-2\">\r\n <app-coupon-ec></app-coupon-ec>\r\n </div>\r\n <div class=\"d-flex mx-4 justify-content-between bordeBot2 mt-2\">\r\n <p class=\"fw-bold\">Descuentos:</p>\r\n <p>{{ (totalPromotionAmount$ | async) |ecCurrencySymbol }}</p>\r\n </div>\r\n\r\n <div class=\"d-flex mx-4 justify-content-between bordeBot2 pt-2\">\r\n <!-- @if(this._cartService.cart.source.value.couponCode){\r\n <a class=\"quitar-cupon text-dark\" role=\"button\"\r\n (click)=\"removeCoupon()\">(Quitar cup\u00F3n)</a>\r\n } -->\r\n </div>\r\n <div class=\"d-flex mx-4 justify-content-between mb-3 mt-2\">\r\n <p class=\"fw-bold h5\">TOTAL</p>\r\n <p class=\"fw-bold h5\">{{(totalAmount$ | async) | ecCurrencySymbol}}</p>\r\n </div>\r\n <div class=\"d-flex flex-column mx-4 justify-content-between mb-3\" data-bs-dismiss=\"offcanvas\" aria-label=\"Close\">\r\n <a [routerLink]=\"['/cart']\" class=\"btn btnPedido mb-2\">FINALIZAR PEDIDO</a>\r\n <a [routerLink]=\"['/collection']\" class=\"btn btnSeguir mb-3\">SEGUIR COMPRANDO</a>\r\n </div>\r\n\r\n\r\n } @else {\r\n <div class=\"container-lg px-lg-0 px-md-4 my-5\">\r\n <div class=\"row\">\r\n <div class=\"col-12\">\r\n <h5 class=\"text-center mb-sm-4 text-uppercase\"> \u00B7 Su carrito se\r\n encuentra vac\u00EDo \u00B7 </h5>\r\n </div>\r\n </div>\r\n </div>\r\n }\r\n}", styles: [""], dependencies: [{ kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "component", type: CouponEcComponent, selector: "app-coupon-ec" }, { kind: "component", type: CartItemEcComponent, selector: "app-cart-item-ec", inputs: ["item", "inSidebar"] }, { kind: "pipe", type: EcCurrencySymbolPipe, name: "ecCurrencySymbol" }] });
|
|
10197
10234
|
}
|
|
10198
10235
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SidebarEcComponent, decorators: [{
|
|
10199
10236
|
type: Component,
|
|
10200
|
-
args: [{ selector: 'app-sidebar-ec', standalone: true, imports: [RouterLink, AsyncPipe, CouponEcComponent, CartItemEcComponent, EcCurrencySymbolPipe, CouponEcComponent], template: "<div class=\"nav nav-sidebar py-4 mx-0 position-relative text-center shadow-sm border-bottom d-flex justify-content-center\">\n <h2 class=\"row text-center\">Mi pedido</h2>\n <div class=\" me-3 closeCart position-absolute end-0\" data-bs-dismiss=\"offcanvas\" aria-label=\"Close\">\n <i class=\"fa fa-times-circle fs-5\" aria-hidden=\"true\"></i>\n </div>\n</div>\n\n\n@if(cartItems$ | async; as items){\n @if(items.length > 0){\n <!-- PRODUCTO -->\n <div class=\"d-flex flex-column mb-4 items border-bottom\">\n @for(item of items; track $index; let i = $index){\n <div class=\"productoCarrito mt-1 mb-2 w-100\">\n <app-cart-item-ec [inSidebar]=\"true\" [item]=\"item\"></app-cart-item-ec>\n </div>\n }\n </div>\n <div class=\"d-flex mx-4 justify-content-between mt-2 \">\n <p class=\"fw-bold\">Subtotal</p>\n <p class=\"fw-700\">{{ (subTotalAmount$ | async) | ecCurrencySymbol}}</p>\n </div>\n <div class=\"mx-4 bordeBot py-2\">\n <app-coupon-ec></app-coupon-ec>\n </div>\n <div class=\"d-flex mx-4 justify-content-between bordeBot2 mt-2\">\n <p class=\"fw-bold\">Descuentos:</p>\n <p>{{ (totalPromotionAmount$ | async) |ecCurrencySymbol }}</p>\n </div>\n\n <div class=\"d-flex mx-4 justify-content-between bordeBot2 pt-2\">\n <!-- @if(this._cartService.cart.source.value.couponCode){\n <a class=\"quitar-cupon text-dark\" role=\"button\"\n (click)=\"removeCoupon()\">(Quitar cup\u00F3n)</a>\n } -->\n </div>\n <div class=\"d-flex mx-4 justify-content-between mb-3 mt-2\">\n <p class=\"fw-bold h5\">TOTAL</p>\n <p class=\"fw-bold h5\">{{(totalAmount$ | async) | ecCurrencySymbol}}</p>\n </div>\n <div class=\"d-flex flex-column mx-4 justify-content-between mb-3\" data-bs-dismiss=\"offcanvas\" aria-label=\"Close\">\n <a [routerLink]=\"['/cart']\" class=\"btn btnPedido mb-2\">FINALIZAR PEDIDO</a>\n <a [routerLink]=\"['/collection']\" class=\"btn btnSeguir mb-3\">SEGUIR COMPRANDO</a>\n </div>\n\n\n } @else {\n <div class=\"container-lg px-lg-0 px-md-4 my-5\">\n <div class=\"row\">\n <div class=\"col-12\">\n <h5 class=\"text-center mb-sm-4 text-uppercase\"> \u00B7 Su carrito se\n encuentra vac\u00EDo \u00B7 </h5>\n </div>\n </div>\n </div>\n }\n}" }]
|
|
10237
|
+
args: [{ selector: 'app-sidebar-ec', standalone: true, imports: [RouterLink, AsyncPipe, CouponEcComponent, CartItemEcComponent, EcCurrencySymbolPipe, CouponEcComponent], template: "<div class=\"nav nav-sidebar py-4 mx-0 position-relative text-center shadow-sm border-bottom d-flex justify-content-center\">\r\n <h2 class=\"row text-center\">Mi pedido</h2>\r\n <div class=\" me-3 closeCart position-absolute end-0\" data-bs-dismiss=\"offcanvas\" aria-label=\"Close\">\r\n <i class=\"fa fa-times-circle fs-5\" aria-hidden=\"true\"></i>\r\n </div>\r\n</div>\r\n\r\n\r\n@if(cartItems$ | async; as items){\r\n @if(items.length > 0){\r\n <!-- PRODUCTO -->\r\n <div class=\"d-flex flex-column mb-4 items border-bottom\">\r\n @for(item of items; track $index; let i = $index){\r\n <div class=\"productoCarrito mt-1 mb-2 w-100\">\r\n <app-cart-item-ec [inSidebar]=\"true\" [item]=\"item\"></app-cart-item-ec>\r\n </div>\r\n }\r\n </div>\r\n <div class=\"d-flex mx-4 justify-content-between mt-2 \">\r\n <p class=\"fw-bold\">Subtotal</p>\r\n <p class=\"fw-700\">{{ (subTotalAmount$ | async) | ecCurrencySymbol}}</p>\r\n </div>\r\n <div class=\"mx-4 bordeBot py-2\">\r\n <app-coupon-ec></app-coupon-ec>\r\n </div>\r\n <div class=\"d-flex mx-4 justify-content-between bordeBot2 mt-2\">\r\n <p class=\"fw-bold\">Descuentos:</p>\r\n <p>{{ (totalPromotionAmount$ | async) |ecCurrencySymbol }}</p>\r\n </div>\r\n\r\n <div class=\"d-flex mx-4 justify-content-between bordeBot2 pt-2\">\r\n <!-- @if(this._cartService.cart.source.value.couponCode){\r\n <a class=\"quitar-cupon text-dark\" role=\"button\"\r\n (click)=\"removeCoupon()\">(Quitar cup\u00F3n)</a>\r\n } -->\r\n </div>\r\n <div class=\"d-flex mx-4 justify-content-between mb-3 mt-2\">\r\n <p class=\"fw-bold h5\">TOTAL</p>\r\n <p class=\"fw-bold h5\">{{(totalAmount$ | async) | ecCurrencySymbol}}</p>\r\n </div>\r\n <div class=\"d-flex flex-column mx-4 justify-content-between mb-3\" data-bs-dismiss=\"offcanvas\" aria-label=\"Close\">\r\n <a [routerLink]=\"['/cart']\" class=\"btn btnPedido mb-2\">FINALIZAR PEDIDO</a>\r\n <a [routerLink]=\"['/collection']\" class=\"btn btnSeguir mb-3\">SEGUIR COMPRANDO</a>\r\n </div>\r\n\r\n\r\n } @else {\r\n <div class=\"container-lg px-lg-0 px-md-4 my-5\">\r\n <div class=\"row\">\r\n <div class=\"col-12\">\r\n <h5 class=\"text-center mb-sm-4 text-uppercase\"> \u00B7 Su carrito se\r\n encuentra vac\u00EDo \u00B7 </h5>\r\n </div>\r\n </div>\r\n </div>\r\n }\r\n}" }]
|
|
10201
10238
|
}] });
|
|
10202
10239
|
|
|
10203
10240
|
class RelatedProductsEcComponent extends BlockEcComponent {
|
|
@@ -10291,11 +10328,11 @@ class RelatedProductsEcComponent extends BlockEcComponent {
|
|
|
10291
10328
|
}
|
|
10292
10329
|
}
|
|
10293
10330
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RelatedProductsEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
10294
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: RelatedProductsEcComponent, isStandalone: true, selector: "app-related-products-ec", inputs: { appProduct: "appProduct", productID: "productID" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }] });
|
|
10331
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: RelatedProductsEcComponent, isStandalone: true, selector: "app-related-products-ec", inputs: { appProduct: "appProduct", productID: "productID" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }] });
|
|
10295
10332
|
}
|
|
10296
10333
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RelatedProductsEcComponent, decorators: [{
|
|
10297
10334
|
type: Component,
|
|
10298
|
-
args: [{ selector: 'app-related-products-ec', standalone: true, imports: [AsyncPipe, ProductEcComponent, CommonModule], schemas: [CUSTOM_ELEMENTS_SCHEMA], template: "\n" }]
|
|
10335
|
+
args: [{ selector: 'app-related-products-ec', standalone: true, imports: [AsyncPipe, ProductEcComponent, CommonModule], schemas: [CUSTOM_ELEMENTS_SCHEMA], template: "\r\n" }]
|
|
10299
10336
|
}], ctorParameters: () => [], propDecorators: { appProduct: [{
|
|
10300
10337
|
type: Input
|
|
10301
10338
|
}], productID: [{
|
|
@@ -10325,21 +10362,21 @@ class FaqsEcComponent {
|
|
|
10325
10362
|
}).catch(err => this._toastService.show('empty-faqs'));
|
|
10326
10363
|
}
|
|
10327
10364
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FaqsEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
10328
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: FaqsEcComponent, isStandalone: true, selector: "app-faqs-ec", ngImport: i0, template: "<section class=\"formulario container py-2\">\n@if(faqs$ | async; as faqs){\n @if(!empty_faqs){\n <div class=\"d-flex align-items-start row\">\n <div class=\"nav flex-column nav-pills me-3 col-2\" id=\"v-pills-tab\" role=\"tablist\" aria-orientation=\"vertical\">\n @for(faq of faqs; track $index; let i = $index){\n <button [class]=\"'nav-link '+(i==0 ? 'active': '')\" [id]=\"'v-pills-'+faq.code+'-tab'\" data-bs-toggle=\"pill\" [attr.data-bs-target]=\"'#v-pills-'+faq.code\" type=\"button\" role=\"tab\" [attr.aria-controls]=\"'v-pills-'+faq.code\" [attr.aria-selected]=\"(i==0)\">{{faq.title}}</button>\n }\n </div>\n <div class=\"tab-content col-9\" id=\"v-pills-tabContent\">\n @for(faq of faqs; track $index; let i = $index){\n <div [class]=\"'tab-pane fade '+(i==0 ? 'show active' : '')\" [id]=\"'v-pills-'+faq.code\" role=\"tabpanel\" [attr.aria-labelledby]=\"'v-pills-'+faq.code+'-tab'\" tabindex=\"0\">\n <div class=\"accordion\" id=\"accordionFaqs\">\n @for(item of faq.questions; track $index; let i = $index){\n <div class=\"accordion-item\">\n <h2 class=\"accordion-header\">\n <button class=\"accordion-button collapsed\" type=\"button\" data-bs-toggle=\"collapse\"\n [attr.data-bs-target]=\"'#collapse-'+i\" aria-expanded=\"false\" [attr.aria-controls]=\"'collapse-'+i\">\n {{item.question}}\n </button>\n </h2>\n <div [id]=\"'collapse-'+i\" class=\"accordion-collapse collapse\" data-bs-parent=\"#accordionFaqs\">\n <div class=\"accordion-body\">\n <p>{{item.answer}}</p>\n </div>\n </div>\n </div>\n }\n </div>\n </div>\n }\n </div>\n </div>\n }@else {\n <div class=\"d-flex justify-content-center\">\n {{ 'empty_faqs' | translate }}\n </div>\n }\n}@else {\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}\n</section>", styles: [""], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "component", type: LoadingFullEcComponent, selector: "app-loading-full-ec" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
10365
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: FaqsEcComponent, isStandalone: true, selector: "app-faqs-ec", ngImport: i0, template: "<section class=\"formulario container py-2\">\r\n@if(faqs$ | async; as faqs){\r\n @if(!empty_faqs){\r\n <div class=\"d-flex align-items-start row\">\r\n <div class=\"nav flex-column nav-pills me-3 col-2\" id=\"v-pills-tab\" role=\"tablist\" aria-orientation=\"vertical\">\r\n @for(faq of faqs; track $index; let i = $index){\r\n <button [class]=\"'nav-link '+(i==0 ? 'active': '')\" [id]=\"'v-pills-'+faq.code+'-tab'\" data-bs-toggle=\"pill\" [attr.data-bs-target]=\"'#v-pills-'+faq.code\" type=\"button\" role=\"tab\" [attr.aria-controls]=\"'v-pills-'+faq.code\" [attr.aria-selected]=\"(i==0)\">{{faq.title}}</button>\r\n }\r\n </div>\r\n <div class=\"tab-content col-9\" id=\"v-pills-tabContent\">\r\n @for(faq of faqs; track $index; let i = $index){\r\n <div [class]=\"'tab-pane fade '+(i==0 ? 'show active' : '')\" [id]=\"'v-pills-'+faq.code\" role=\"tabpanel\" [attr.aria-labelledby]=\"'v-pills-'+faq.code+'-tab'\" tabindex=\"0\">\r\n <div class=\"accordion\" id=\"accordionFaqs\">\r\n @for(item of faq.questions; track $index; let i = $index){\r\n <div class=\"accordion-item\">\r\n <h2 class=\"accordion-header\">\r\n <button class=\"accordion-button collapsed\" type=\"button\" data-bs-toggle=\"collapse\"\r\n [attr.data-bs-target]=\"'#collapse-'+i\" aria-expanded=\"false\" [attr.aria-controls]=\"'collapse-'+i\">\r\n {{item.question}}\r\n </button>\r\n </h2>\r\n <div [id]=\"'collapse-'+i\" class=\"accordion-collapse collapse\" data-bs-parent=\"#accordionFaqs\">\r\n <div class=\"accordion-body\">\r\n <p>{{item.answer}}</p>\r\n </div>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n }@else {\r\n <div class=\"d-flex justify-content-center\">\r\n {{ 'empty_faqs' | translate }}\r\n </div>\r\n }\r\n}@else {\r\n <div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-12 align-items-center\">\r\n <div class=\"d-flex flex-column jusitfy-content-center align-items-center my-5\">\r\n <app-loading-full-ec></app-loading-full-ec>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n}\r\n</section>", styles: [""], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "component", type: LoadingFullEcComponent, selector: "app-loading-full-ec" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
10329
10366
|
}
|
|
10330
10367
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FaqsEcComponent, decorators: [{
|
|
10331
10368
|
type: Component,
|
|
10332
|
-
args: [{ selector: 'app-faqs-ec', standalone: true, imports: [AsyncPipe, LoadingFullEcComponent, TranslateModule], template: "<section class=\"formulario container py-2\">\n@if(faqs$ | async; as faqs){\n @if(!empty_faqs){\n <div class=\"d-flex align-items-start row\">\n <div class=\"nav flex-column nav-pills me-3 col-2\" id=\"v-pills-tab\" role=\"tablist\" aria-orientation=\"vertical\">\n @for(faq of faqs; track $index; let i = $index){\n <button [class]=\"'nav-link '+(i==0 ? 'active': '')\" [id]=\"'v-pills-'+faq.code+'-tab'\" data-bs-toggle=\"pill\" [attr.data-bs-target]=\"'#v-pills-'+faq.code\" type=\"button\" role=\"tab\" [attr.aria-controls]=\"'v-pills-'+faq.code\" [attr.aria-selected]=\"(i==0)\">{{faq.title}}</button>\n }\n </div>\n <div class=\"tab-content col-9\" id=\"v-pills-tabContent\">\n @for(faq of faqs; track $index; let i = $index){\n <div [class]=\"'tab-pane fade '+(i==0 ? 'show active' : '')\" [id]=\"'v-pills-'+faq.code\" role=\"tabpanel\" [attr.aria-labelledby]=\"'v-pills-'+faq.code+'-tab'\" tabindex=\"0\">\n <div class=\"accordion\" id=\"accordionFaqs\">\n @for(item of faq.questions; track $index; let i = $index){\n <div class=\"accordion-item\">\n <h2 class=\"accordion-header\">\n <button class=\"accordion-button collapsed\" type=\"button\" data-bs-toggle=\"collapse\"\n [attr.data-bs-target]=\"'#collapse-'+i\" aria-expanded=\"false\" [attr.aria-controls]=\"'collapse-'+i\">\n {{item.question}}\n </button>\n </h2>\n <div [id]=\"'collapse-'+i\" class=\"accordion-collapse collapse\" data-bs-parent=\"#accordionFaqs\">\n <div class=\"accordion-body\">\n <p>{{item.answer}}</p>\n </div>\n </div>\n </div>\n }\n </div>\n </div>\n }\n </div>\n </div>\n }@else {\n <div class=\"d-flex justify-content-center\">\n {{ 'empty_faqs' | translate }}\n </div>\n }\n}@else {\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}\n</section>" }]
|
|
10369
|
+
args: [{ selector: 'app-faqs-ec', standalone: true, imports: [AsyncPipe, LoadingFullEcComponent, TranslateModule], template: "<section class=\"formulario container py-2\">\r\n@if(faqs$ | async; as faqs){\r\n @if(!empty_faqs){\r\n <div class=\"d-flex align-items-start row\">\r\n <div class=\"nav flex-column nav-pills me-3 col-2\" id=\"v-pills-tab\" role=\"tablist\" aria-orientation=\"vertical\">\r\n @for(faq of faqs; track $index; let i = $index){\r\n <button [class]=\"'nav-link '+(i==0 ? 'active': '')\" [id]=\"'v-pills-'+faq.code+'-tab'\" data-bs-toggle=\"pill\" [attr.data-bs-target]=\"'#v-pills-'+faq.code\" type=\"button\" role=\"tab\" [attr.aria-controls]=\"'v-pills-'+faq.code\" [attr.aria-selected]=\"(i==0)\">{{faq.title}}</button>\r\n }\r\n </div>\r\n <div class=\"tab-content col-9\" id=\"v-pills-tabContent\">\r\n @for(faq of faqs; track $index; let i = $index){\r\n <div [class]=\"'tab-pane fade '+(i==0 ? 'show active' : '')\" [id]=\"'v-pills-'+faq.code\" role=\"tabpanel\" [attr.aria-labelledby]=\"'v-pills-'+faq.code+'-tab'\" tabindex=\"0\">\r\n <div class=\"accordion\" id=\"accordionFaqs\">\r\n @for(item of faq.questions; track $index; let i = $index){\r\n <div class=\"accordion-item\">\r\n <h2 class=\"accordion-header\">\r\n <button class=\"accordion-button collapsed\" type=\"button\" data-bs-toggle=\"collapse\"\r\n [attr.data-bs-target]=\"'#collapse-'+i\" aria-expanded=\"false\" [attr.aria-controls]=\"'collapse-'+i\">\r\n {{item.question}}\r\n </button>\r\n </h2>\r\n <div [id]=\"'collapse-'+i\" class=\"accordion-collapse collapse\" data-bs-parent=\"#accordionFaqs\">\r\n <div class=\"accordion-body\">\r\n <p>{{item.answer}}</p>\r\n </div>\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n }\r\n </div>\r\n </div>\r\n }@else {\r\n <div class=\"d-flex justify-content-center\">\r\n {{ 'empty_faqs' | translate }}\r\n </div>\r\n }\r\n}@else {\r\n <div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-12 align-items-center\">\r\n <div class=\"d-flex flex-column jusitfy-content-center align-items-center my-5\">\r\n <app-loading-full-ec></app-loading-full-ec>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n}\r\n</section>" }]
|
|
10333
10370
|
}] });
|
|
10334
10371
|
|
|
10335
10372
|
class ShareFacebookEcComponent {
|
|
10336
10373
|
shareLink;
|
|
10337
10374
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ShareFacebookEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
10338
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ShareFacebookEcComponent, isStandalone: true, selector: "app-share-facebook-ec", inputs: { shareLink: "shareLink" }, ngImport: i0, template: "<a target=\"_blank\" [href]=\"shareLink\" 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>", styles: [""] });
|
|
10375
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ShareFacebookEcComponent, isStandalone: true, selector: "app-share-facebook-ec", inputs: { shareLink: "shareLink" }, ngImport: i0, template: "<a target=\"_blank\" [href]=\"shareLink\" class=\"social-sharing__link\" title=\"Compartir en Facebook\">\r\n <svg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" class=\"icon icon-facebook\" viewBox=\"0 0 32 32\">\r\n <path fill=\"#444\"\r\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\">\r\n </path>\r\n </svg>\r\n <span class=\"social-sharing__title\" aria-hidden=\"true\">Compartir</span>\r\n</a>", styles: [""] });
|
|
10339
10376
|
}
|
|
10340
10377
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ShareFacebookEcComponent, decorators: [{
|
|
10341
10378
|
type: Component,
|
|
10342
|
-
args: [{ selector: 'app-share-facebook-ec', standalone: true, template: "<a target=\"_blank\" [href]=\"shareLink\" 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>" }]
|
|
10379
|
+
args: [{ selector: 'app-share-facebook-ec', standalone: true, template: "<a target=\"_blank\" [href]=\"shareLink\" class=\"social-sharing__link\" title=\"Compartir en Facebook\">\r\n <svg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" class=\"icon icon-facebook\" viewBox=\"0 0 32 32\">\r\n <path fill=\"#444\"\r\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\">\r\n </path>\r\n </svg>\r\n <span class=\"social-sharing__title\" aria-hidden=\"true\">Compartir</span>\r\n</a>" }]
|
|
10343
10380
|
}], propDecorators: { shareLink: [{
|
|
10344
10381
|
type: Input,
|
|
10345
10382
|
args: [{
|
|
@@ -10350,11 +10387,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
10350
10387
|
class ShareTwitterEcComponent {
|
|
10351
10388
|
shareLink;
|
|
10352
10389
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ShareTwitterEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
10353
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ShareTwitterEcComponent, isStandalone: true, selector: "app-share-twitter-ec", inputs: { shareLink: "shareLink" }, ngImport: i0, template: "<a target=\"_blank\" [href]=\"shareLink\" 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>", styles: [""] });
|
|
10390
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ShareTwitterEcComponent, isStandalone: true, selector: "app-share-twitter-ec", inputs: { shareLink: "shareLink" }, ngImport: i0, template: "<a target=\"_blank\" [href]=\"shareLink\" class=\"social-sharing__link\" title=\"Tuitear en Twitter\">\r\n <svg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" class=\"icon icon-twitter\" viewBox=\"0 0 32 32\">\r\n <path fill=\"#444\"\r\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\">\r\n </path>\r\n </svg>\r\n <span class=\"social-sharing__title\" aria-hidden=\"true\">Tuitear</span>\r\n</a>", styles: [""] });
|
|
10354
10391
|
}
|
|
10355
10392
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ShareTwitterEcComponent, decorators: [{
|
|
10356
10393
|
type: Component,
|
|
10357
|
-
args: [{ selector: 'app-share-twitter-ec', standalone: true, template: "<a target=\"_blank\" [href]=\"shareLink\" 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>" }]
|
|
10394
|
+
args: [{ selector: 'app-share-twitter-ec', standalone: true, template: "<a target=\"_blank\" [href]=\"shareLink\" class=\"social-sharing__link\" title=\"Tuitear en Twitter\">\r\n <svg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" class=\"icon icon-twitter\" viewBox=\"0 0 32 32\">\r\n <path fill=\"#444\"\r\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\">\r\n </path>\r\n </svg>\r\n <span class=\"social-sharing__title\" aria-hidden=\"true\">Tuitear</span>\r\n</a>" }]
|
|
10358
10395
|
}], propDecorators: { shareLink: [{
|
|
10359
10396
|
type: Input,
|
|
10360
10397
|
args: [{
|
|
@@ -10365,11 +10402,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
10365
10402
|
class SharePinterestEcComponent {
|
|
10366
10403
|
shareLink;
|
|
10367
10404
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SharePinterestEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
10368
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: SharePinterestEcComponent, isStandalone: true, selector: "app-share-pinterest-ec", inputs: { shareLink: "shareLink" }, ngImport: i0, template: "<a target=\"_blank\" [href]=\"shareLink\" 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>", styles: [""] });
|
|
10405
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: SharePinterestEcComponent, isStandalone: true, selector: "app-share-pinterest-ec", inputs: { shareLink: "shareLink" }, ngImport: i0, template: "<a target=\"_blank\" [href]=\"shareLink\" class=\"social-sharing__link\" title=\"Pinear en Pinterest\">\r\n <svg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" class=\"icon icon-pinterest\" viewBox=\"0 0 32 32\">\r\n <path fill=\"#444\"\r\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\">\r\n </path>\r\n </svg>\r\n <span class=\"social-sharing__title\" aria-hidden=\"true\">Hacer pin</span>\r\n</a>", styles: [""] });
|
|
10369
10406
|
}
|
|
10370
10407
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SharePinterestEcComponent, decorators: [{
|
|
10371
10408
|
type: Component,
|
|
10372
|
-
args: [{ selector: 'app-share-pinterest-ec', standalone: true, template: "<a target=\"_blank\" [href]=\"shareLink\" 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>" }]
|
|
10409
|
+
args: [{ selector: 'app-share-pinterest-ec', standalone: true, template: "<a target=\"_blank\" [href]=\"shareLink\" class=\"social-sharing__link\" title=\"Pinear en Pinterest\">\r\n <svg aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" class=\"icon icon-pinterest\" viewBox=\"0 0 32 32\">\r\n <path fill=\"#444\"\r\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\">\r\n </path>\r\n </svg>\r\n <span class=\"social-sharing__title\" aria-hidden=\"true\">Hacer pin</span>\r\n</a>" }]
|
|
10373
10410
|
}], propDecorators: { shareLink: [{
|
|
10374
10411
|
type: Input,
|
|
10375
10412
|
args: [{
|
|
@@ -10380,11 +10417,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
10380
10417
|
class ShareWhatsappEcComponent {
|
|
10381
10418
|
shareLink;
|
|
10382
10419
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ShareWhatsappEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
10383
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ShareWhatsappEcComponent, isStandalone: true, selector: "app-share-whatsapp-ec", inputs: { shareLink: "shareLink" }, ngImport: i0, template: "<a target=\"_blank\" [href]=\"shareLink\" class=\"social-sharing__link\" title=\"Whatsapp\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" fill=\"currentColor\"\n class=\"bi bi-whatsapp\" 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", styles: [""] });
|
|
10420
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ShareWhatsappEcComponent, isStandalone: true, selector: "app-share-whatsapp-ec", inputs: { shareLink: "shareLink" }, ngImport: i0, template: "<a target=\"_blank\" [href]=\"shareLink\" class=\"social-sharing__link\" title=\"Whatsapp\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" fill=\"currentColor\"\r\n class=\"bi bi-whatsapp\" viewBox=\"0 0 16 16\">\r\n <path\r\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\" />\r\n </svg>\r\n <span class=\"social-sharing__title\" aria-hidden=\"true\">Whatsapp</span>\r\n</a>\r\n", styles: [""] });
|
|
10384
10421
|
}
|
|
10385
10422
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ShareWhatsappEcComponent, decorators: [{
|
|
10386
10423
|
type: Component,
|
|
10387
|
-
args: [{ selector: 'app-share-whatsapp-ec', standalone: true, imports: [], template: "<a target=\"_blank\" [href]=\"shareLink\" class=\"social-sharing__link\" title=\"Whatsapp\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" fill=\"currentColor\"\n class=\"bi bi-whatsapp\" 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" }]
|
|
10424
|
+
args: [{ selector: 'app-share-whatsapp-ec', standalone: true, imports: [], template: "<a target=\"_blank\" [href]=\"shareLink\" class=\"social-sharing__link\" title=\"Whatsapp\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" fill=\"currentColor\"\r\n class=\"bi bi-whatsapp\" viewBox=\"0 0 16 16\">\r\n <path\r\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\" />\r\n </svg>\r\n <span class=\"social-sharing__title\" aria-hidden=\"true\">Whatsapp</span>\r\n</a>\r\n" }]
|
|
10388
10425
|
}], propDecorators: { shareLink: [{
|
|
10389
10426
|
type: Input,
|
|
10390
10427
|
args: [{
|
|
@@ -10395,11 +10432,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
10395
10432
|
class ShareEmailEcComponent {
|
|
10396
10433
|
shareLink;
|
|
10397
10434
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ShareEmailEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
10398
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ShareEmailEcComponent, isStandalone: true, selector: "app-share-email-ec", inputs: { shareLink: "shareLink" }, ngImport: i0, template: "<a target=\"_blank\" [href]=\"shareLink\" class=\"social-sharing__link\" title=\"Email\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" fill=\"currentColor\"\n class=\"bi bi-envelope-fill\" 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>", styles: [""] });
|
|
10435
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ShareEmailEcComponent, isStandalone: true, selector: "app-share-email-ec", inputs: { shareLink: "shareLink" }, ngImport: i0, template: "<a target=\"_blank\" [href]=\"shareLink\" class=\"social-sharing__link\" title=\"Email\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" fill=\"currentColor\"\r\n class=\"bi bi-envelope-fill\" viewBox=\"0 0 16 16\">\r\n <path\r\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\" />\r\n </svg>\r\n <span class=\"social-sharing__title\" aria-hidden=\"true\">Email</span>\r\n</a>", styles: [""] });
|
|
10399
10436
|
}
|
|
10400
10437
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ShareEmailEcComponent, decorators: [{
|
|
10401
10438
|
type: Component,
|
|
10402
|
-
args: [{ selector: 'app-share-email-ec', standalone: true, imports: [], template: "<a target=\"_blank\" [href]=\"shareLink\" class=\"social-sharing__link\" title=\"Email\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" fill=\"currentColor\"\n class=\"bi bi-envelope-fill\" 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>" }]
|
|
10439
|
+
args: [{ selector: 'app-share-email-ec', standalone: true, imports: [], template: "<a target=\"_blank\" [href]=\"shareLink\" class=\"social-sharing__link\" title=\"Email\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" fill=\"currentColor\"\r\n class=\"bi bi-envelope-fill\" viewBox=\"0 0 16 16\">\r\n <path\r\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\" />\r\n </svg>\r\n <span class=\"social-sharing__title\" aria-hidden=\"true\">Email</span>\r\n</a>" }]
|
|
10403
10440
|
}], propDecorators: { shareLink: [{
|
|
10404
10441
|
type: Input,
|
|
10405
10442
|
args: [{
|
|
@@ -10506,7 +10543,7 @@ class ShareEcComponent {
|
|
|
10506
10543
|
return `mailto:${mail.value}?subject=Consulta%20sobre%20el%20producto:%20${this.description}&body=Artículo:%20${this.url}`;
|
|
10507
10544
|
};
|
|
10508
10545
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ShareEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
10509
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ShareEcComponent, isStandalone: true, selector: "app-share-ec", inputs: { product: "product" }, ngImport: i0, template: "<div class=\"w-100 d-flex justify-content-around\">\n @if(params && params.length > 0){ \n @if(hasParams(params, 'facebook')){\n <app-share-facebook-ec [shareLink]=\"toShareFacebook()\" />\n }\n @if(hasParams(params, 'twitter')){\n <app-share-twitter-ec [shareLink]=\"toShareTwitter()\" />\n }\n @if(hasParams(params, 'pinterest')){\n <app-share-pinterest-ec [shareLink]=\"toSharePinterest()\" />\n }\n @if(hasParams(params, 'whatsapp'); as wsp){\n <app-share-whatsapp-ec [shareLink]=\"toShareWhatsapp(wsp)\" />\n }\n @if(hasParams(params, 'email'); as email){\n <app-share-email-ec [shareLink]=\"toShareEmail(email)\" />\n }\n } @else {\n <!-- VISTA DEFAULT CON LINKS QUE NO REQUIEREN PARAMETROS-->\n <app-share-facebook-ec [shareLink]=\"toShareFacebook()\" />\n \n <app-share-twitter-ec [shareLink]=\"toShareTwitter()\" />\n\n <app-share-pinterest-ec [shareLink]=\"toSharePinterest()\" />\n }\n</div>\n", styles: [""], dependencies: [{ kind: "component", type: ShareFacebookEcComponent, selector: "app-share-facebook-ec", inputs: ["shareLink"] }, { kind: "component", type: ShareTwitterEcComponent, selector: "app-share-twitter-ec", inputs: ["shareLink"] }, { kind: "component", type: SharePinterestEcComponent, selector: "app-share-pinterest-ec", inputs: ["shareLink"] }, { kind: "component", type: ShareWhatsappEcComponent, selector: "app-share-whatsapp-ec", inputs: ["shareLink"] }, { kind: "component", type: ShareEmailEcComponent, selector: "app-share-email-ec", inputs: ["shareLink"] }] });
|
|
10546
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ShareEcComponent, isStandalone: true, selector: "app-share-ec", inputs: { product: "product" }, ngImport: i0, template: "<div class=\"w-100 d-flex justify-content-around\">\r\n @if(params && params.length > 0){ \r\n @if(hasParams(params, 'facebook')){\r\n <app-share-facebook-ec [shareLink]=\"toShareFacebook()\" />\r\n }\r\n @if(hasParams(params, 'twitter')){\r\n <app-share-twitter-ec [shareLink]=\"toShareTwitter()\" />\r\n }\r\n @if(hasParams(params, 'pinterest')){\r\n <app-share-pinterest-ec [shareLink]=\"toSharePinterest()\" />\r\n }\r\n @if(hasParams(params, 'whatsapp'); as wsp){\r\n <app-share-whatsapp-ec [shareLink]=\"toShareWhatsapp(wsp)\" />\r\n }\r\n @if(hasParams(params, 'email'); as email){\r\n <app-share-email-ec [shareLink]=\"toShareEmail(email)\" />\r\n }\r\n } @else {\r\n <!-- VISTA DEFAULT CON LINKS QUE NO REQUIEREN PARAMETROS-->\r\n <app-share-facebook-ec [shareLink]=\"toShareFacebook()\" />\r\n \r\n <app-share-twitter-ec [shareLink]=\"toShareTwitter()\" />\r\n\r\n <app-share-pinterest-ec [shareLink]=\"toSharePinterest()\" />\r\n }\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "component", type: ShareFacebookEcComponent, selector: "app-share-facebook-ec", inputs: ["shareLink"] }, { kind: "component", type: ShareTwitterEcComponent, selector: "app-share-twitter-ec", inputs: ["shareLink"] }, { kind: "component", type: SharePinterestEcComponent, selector: "app-share-pinterest-ec", inputs: ["shareLink"] }, { kind: "component", type: ShareWhatsappEcComponent, selector: "app-share-whatsapp-ec", inputs: ["shareLink"] }, { kind: "component", type: ShareEmailEcComponent, selector: "app-share-email-ec", inputs: ["shareLink"] }] });
|
|
10510
10547
|
}
|
|
10511
10548
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ShareEcComponent, decorators: [{
|
|
10512
10549
|
type: Component,
|
|
@@ -10516,7 +10553,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
10516
10553
|
SharePinterestEcComponent,
|
|
10517
10554
|
ShareWhatsappEcComponent,
|
|
10518
10555
|
ShareEmailEcComponent
|
|
10519
|
-
], template: "<div class=\"w-100 d-flex justify-content-around\">\n @if(params && params.length > 0){ \n @if(hasParams(params, 'facebook')){\n <app-share-facebook-ec [shareLink]=\"toShareFacebook()\" />\n }\n @if(hasParams(params, 'twitter')){\n <app-share-twitter-ec [shareLink]=\"toShareTwitter()\" />\n }\n @if(hasParams(params, 'pinterest')){\n <app-share-pinterest-ec [shareLink]=\"toSharePinterest()\" />\n }\n @if(hasParams(params, 'whatsapp'); as wsp){\n <app-share-whatsapp-ec [shareLink]=\"toShareWhatsapp(wsp)\" />\n }\n @if(hasParams(params, 'email'); as email){\n <app-share-email-ec [shareLink]=\"toShareEmail(email)\" />\n }\n } @else {\n <!-- VISTA DEFAULT CON LINKS QUE NO REQUIEREN PARAMETROS-->\n <app-share-facebook-ec [shareLink]=\"toShareFacebook()\" />\n \n <app-share-twitter-ec [shareLink]=\"toShareTwitter()\" />\n\n <app-share-pinterest-ec [shareLink]=\"toSharePinterest()\" />\n }\n</div>\n" }]
|
|
10556
|
+
], template: "<div class=\"w-100 d-flex justify-content-around\">\r\n @if(params && params.length > 0){ \r\n @if(hasParams(params, 'facebook')){\r\n <app-share-facebook-ec [shareLink]=\"toShareFacebook()\" />\r\n }\r\n @if(hasParams(params, 'twitter')){\r\n <app-share-twitter-ec [shareLink]=\"toShareTwitter()\" />\r\n }\r\n @if(hasParams(params, 'pinterest')){\r\n <app-share-pinterest-ec [shareLink]=\"toSharePinterest()\" />\r\n }\r\n @if(hasParams(params, 'whatsapp'); as wsp){\r\n <app-share-whatsapp-ec [shareLink]=\"toShareWhatsapp(wsp)\" />\r\n }\r\n @if(hasParams(params, 'email'); as email){\r\n <app-share-email-ec [shareLink]=\"toShareEmail(email)\" />\r\n }\r\n } @else {\r\n <!-- VISTA DEFAULT CON LINKS QUE NO REQUIEREN PARAMETROS-->\r\n <app-share-facebook-ec [shareLink]=\"toShareFacebook()\" />\r\n \r\n <app-share-twitter-ec [shareLink]=\"toShareTwitter()\" />\r\n\r\n <app-share-pinterest-ec [shareLink]=\"toSharePinterest()\" />\r\n }\r\n</div>\r\n" }]
|
|
10520
10557
|
}], ctorParameters: () => [], propDecorators: { product: [{
|
|
10521
10558
|
type: Input,
|
|
10522
10559
|
args: [{
|
|
@@ -10580,11 +10617,11 @@ class RatingEcComponent extends ComponentHelper {
|
|
|
10580
10617
|
}
|
|
10581
10618
|
};
|
|
10582
10619
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RatingEcComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
10583
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: RatingEcComponent, isStandalone: true, selector: "app-rating-ec", inputs: { template: "template", type: "type", ratingValue: "ratingValue" }, usesInheritance: true, ngImport: i0, template: "<ng-container [ngSwitch]=\"type\">\n <ng-template #stars let-score=\"score\">\n @for (value of score; track $index) {\n @switch (value) {\n @case (1) {\n <i class=\"me-1 bi bi-star-fill text-warning star\"></i> \n }\n @case (0.5) {\n <i class=\"me-1 bi bi-star-half text-warning star\"></i>\n } \n @default {\n <i class=\"me-1 bi bi-star text-muted star\"></i>\n }\n }\n }\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", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }] });
|
|
10620
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: RatingEcComponent, isStandalone: true, selector: "app-rating-ec", inputs: { template: "template", type: "type", ratingValue: "ratingValue" }, usesInheritance: true, ngImport: i0, template: "<ng-container [ngSwitch]=\"type\">\r\n <ng-template #stars let-score=\"score\">\r\n @for (value of score; track $index) {\r\n @switch (value) {\r\n @case (1) {\r\n <i class=\"me-1 bi bi-star-fill text-warning star\"></i> \r\n }\r\n @case (0.5) {\r\n <i class=\"me-1 bi bi-star-half text-warning star\"></i>\r\n } \r\n @default {\r\n <i class=\"me-1 bi bi-star text-muted star\"></i>\r\n }\r\n }\r\n }\r\n </ng-template>\r\n <ng-container *ngSwitchCase=\"'stars'\"\r\n [ngTemplateOutlet]=\"template ? template : stars\"\r\n [ngTemplateOutletContext]=\"{score:score, ratingValue:ratingValue}\">\r\n </ng-container>\r\n</ng-container> \r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }] });
|
|
10584
10621
|
}
|
|
10585
10622
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RatingEcComponent, decorators: [{
|
|
10586
10623
|
type: Component,
|
|
10587
|
-
args: [{ selector: 'app-rating-ec', standalone: true, imports: [CommonModule], template: "<ng-container [ngSwitch]=\"type\">\n <ng-template #stars let-score=\"score\">\n @for (value of score; track $index) {\n @switch (value) {\n @case (1) {\n <i class=\"me-1 bi bi-star-fill text-warning star\"></i> \n }\n @case (0.5) {\n <i class=\"me-1 bi bi-star-half text-warning star\"></i>\n } \n @default {\n <i class=\"me-1 bi bi-star text-muted star\"></i>\n }\n }\n }\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" }]
|
|
10624
|
+
args: [{ selector: 'app-rating-ec', standalone: true, imports: [CommonModule], template: "<ng-container [ngSwitch]=\"type\">\r\n <ng-template #stars let-score=\"score\">\r\n @for (value of score; track $index) {\r\n @switch (value) {\r\n @case (1) {\r\n <i class=\"me-1 bi bi-star-fill text-warning star\"></i> \r\n }\r\n @case (0.5) {\r\n <i class=\"me-1 bi bi-star-half text-warning star\"></i>\r\n } \r\n @default {\r\n <i class=\"me-1 bi bi-star text-muted star\"></i>\r\n }\r\n }\r\n }\r\n </ng-template>\r\n <ng-container *ngSwitchCase=\"'stars'\"\r\n [ngTemplateOutlet]=\"template ? template : stars\"\r\n [ngTemplateOutletContext]=\"{score:score, ratingValue:ratingValue}\">\r\n </ng-container>\r\n</ng-container> \r\n" }]
|
|
10588
10625
|
}], propDecorators: { template: [{
|
|
10589
10626
|
type: Input
|
|
10590
10627
|
}], type: [{
|
|
@@ -10747,11 +10784,11 @@ class ReviewsEcComponent extends ComponentHelper {
|
|
|
10747
10784
|
_authService = inject(AuthService);
|
|
10748
10785
|
isAuthenticated$ = this._authService.isAuthenticated();
|
|
10749
10786
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ReviewsEcComponent, deps: [{ token: ReviewsService }, { token: CoreConstantsService }], target: i0.ɵɵFactoryTarget.Component });
|
|
10750
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ReviewsEcComponent, isStandalone: true, selector: "app-reviews-ec", inputs: { product: "product" }, usesInheritance: true, ngImport: i0, template: "<div class=\"row px-3\">\n <div class=\"col-12 pb-2 pb-md-0\">\n <div class=\"row w-100\">\n <div class=\"col-12 col-md-6\">\n <h4 class=\"mb-0 pt-2 pb-1\">{{\"product-review\" | translate}}</h4>\n @if(isAuthenticated$ ){\n <small class=\"pb-2 escribir\" data-bs-toggle=\"modal\" href=\"#modalReview\">\n {{\"write-a-review\" | translate}}\n <i class=\"bi bi-pencil-square\"></i>\n </small>\n }\n </div>\n <div class=\"col-12 col-md-6 d-flex align-items-center justify-content-start justify-content-md-end\">\n <div class=\"puntaje d-flex\">\n <ng-template #number let-ratingValue=\"ratingValue\">\n <p class=\"puntos mb-0\">\n {{ratingValue}}\n </p>\n </ng-template>\n <app-rating-ec [ratingValue]=\"product.rating\" [template]=\"number\"></app-rating-ec>\n <div class=\"ms-2\">\n <div class=\"stars mb-1\">\n <app-rating-ec [ratingValue]=\"product.rating\"></app-rating-ec>\n </div>\n <small><strong>{{reviews.total}} {{\"reviews\" | translate}}</strong></small>\n </div>\n </div>\n </div>\n </div>\n </div>\n <hr>\n\n <div class=\"tab-content mt-4\" id=\"myTabContent\">\n <div class=\"row g-5\">\n @for (item of reviews.items; track $index) {\n <div class=\"col-12 col-sm-6 col-md-4\">\n <div class=\"row\">\n <div class=\"col-9 col-sm-10\">\n <div class=\"ranking\">\n <app-rating-ec [ratingValue]=\"item.rating\"></app-rating-ec>\n </div>\n <h4 class=\"text-uppercase\">{{item.title}}</h4>\n <div class=\"d-flex justify-content-between\">\n <div class=\"ususario\">\n <i class=\"bi bi-person-fill\"></i> {{ getAuthorName(item.author) }}\n </div>\n </div>\n <div class=\"resenia mt-2\">\n <p style=\"font-size: 14px;\"> {{item.comment}}</p>\n </div>\n </div>\n </div>\n\n </div>\n }\n @if (getPages() && getPages().length > 1) {\n <nav aria-label=\"Page navigation example\">\n <ul class=\"pagination custom-pagination\">\n <li class=\"page-item\">\n <a class=\"page-link cursor-pointer\" (click)=\"first()\" aria-label=\"Previous\">\n <span aria-hidden=\"true\">«</span>\n </a>\n </li>\n @for (page of getPages(); track $index) {\n <li class=\"page-item\">\n <a class=\"page-link cursor-pointer\" (click)=\"goPage(page)\">{{ page }}</a>\n </li>\n }\n <li class=\"page-item\">\n <a class=\"page-link cursor-pointer\" (click)=\"next()\" aria-label=\"Next\">\n <span aria-hidden=\"true\">»</span>\n </a>\n </li>\n </ul>\n </nav>\n\n }\n\n </div>\n </div>\n\n</div>", styles: [".custom-pagination{display:flex;justify-content:center;list-style:none;padding:0;margin-top:20px}.custom-pagination .page-item{margin:0 5px}.custom-pagination .page-link{color:#131716;background-color:#f3f3f3;border:1px solid #ccc;padding:8px 12px;border-radius:5px;text-decoration:none;transition:background-color .3s ease}.custom-pagination .page-link:hover{background-color:#0b0c0c;color:#fff}.custom-pagination .page-item.active .page-link{background-color:#131716;color:#fff;font-weight:700}.cursor-pointer{cursor:pointer}\n"], dependencies: [{ kind: "component", type: RatingEcComponent, selector: "app-rating-ec", inputs: ["template", "type", "ratingValue"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
10787
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ReviewsEcComponent, isStandalone: true, selector: "app-reviews-ec", inputs: { product: "product" }, usesInheritance: true, ngImport: i0, template: "<div class=\"row px-3\">\r\n <div class=\"col-12 pb-2 pb-md-0\">\r\n <div class=\"row w-100\">\r\n <div class=\"col-12 col-md-6\">\r\n <h4 class=\"mb-0 pt-2 pb-1\">{{\"product-review\" | translate}}</h4>\r\n @if(isAuthenticated$ ){\r\n <small class=\"pb-2 escribir\" data-bs-toggle=\"modal\" href=\"#modalReview\">\r\n {{\"write-a-review\" | translate}}\r\n <i class=\"bi bi-pencil-square\"></i>\r\n </small>\r\n }\r\n </div>\r\n <div class=\"col-12 col-md-6 d-flex align-items-center justify-content-start justify-content-md-end\">\r\n <div class=\"puntaje d-flex\">\r\n <ng-template #number let-ratingValue=\"ratingValue\">\r\n <p class=\"puntos mb-0\">\r\n {{ratingValue}}\r\n </p>\r\n </ng-template>\r\n <app-rating-ec [ratingValue]=\"product.rating\" [template]=\"number\"></app-rating-ec>\r\n <div class=\"ms-2\">\r\n <div class=\"stars mb-1\">\r\n <app-rating-ec [ratingValue]=\"product.rating\"></app-rating-ec>\r\n </div>\r\n <small><strong>{{reviews.total}} {{\"reviews\" | translate}}</strong></small>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <hr>\r\n\r\n <div class=\"tab-content mt-4\" id=\"myTabContent\">\r\n <div class=\"row g-5\">\r\n @for (item of reviews.items; track $index) {\r\n <div class=\"col-12 col-sm-6 col-md-4\">\r\n <div class=\"row\">\r\n <div class=\"col-9 col-sm-10\">\r\n <div class=\"ranking\">\r\n <app-rating-ec [ratingValue]=\"item.rating\"></app-rating-ec>\r\n </div>\r\n <h4 class=\"text-uppercase\">{{item.title}}</h4>\r\n <div class=\"d-flex justify-content-between\">\r\n <div class=\"ususario\">\r\n <i class=\"bi bi-person-fill\"></i> {{ getAuthorName(item.author) }}\r\n </div>\r\n </div>\r\n <div class=\"resenia mt-2\">\r\n <p style=\"font-size: 14px;\"> {{item.comment}}</p>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n }\r\n @if (getPages() && getPages().length > 1) {\r\n <nav aria-label=\"Page navigation example\">\r\n <ul class=\"pagination custom-pagination\">\r\n <li class=\"page-item\">\r\n <a class=\"page-link cursor-pointer\" (click)=\"first()\" aria-label=\"Previous\">\r\n <span aria-hidden=\"true\">«</span>\r\n </a>\r\n </li>\r\n @for (page of getPages(); track $index) {\r\n <li class=\"page-item\">\r\n <a class=\"page-link cursor-pointer\" (click)=\"goPage(page)\">{{ page }}</a>\r\n </li>\r\n }\r\n <li class=\"page-item\">\r\n <a class=\"page-link cursor-pointer\" (click)=\"next()\" aria-label=\"Next\">\r\n <span aria-hidden=\"true\">»</span>\r\n </a>\r\n </li>\r\n </ul>\r\n </nav>\r\n\r\n }\r\n\r\n </div>\r\n </div>\r\n\r\n</div>", styles: [".custom-pagination{display:flex;justify-content:center;list-style:none;padding:0;margin-top:20px}.custom-pagination .page-item{margin:0 5px}.custom-pagination .page-link{color:#131716;background-color:#f3f3f3;border:1px solid #ccc;padding:8px 12px;border-radius:5px;text-decoration:none;transition:background-color .3s ease}.custom-pagination .page-link:hover{background-color:#0b0c0c;color:#fff}.custom-pagination .page-item.active .page-link{background-color:#131716;color:#fff;font-weight:700}.cursor-pointer{cursor:pointer}\n"], dependencies: [{ kind: "component", type: RatingEcComponent, selector: "app-rating-ec", inputs: ["template", "type", "ratingValue"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }] });
|
|
10751
10788
|
}
|
|
10752
10789
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ReviewsEcComponent, decorators: [{
|
|
10753
10790
|
type: Component,
|
|
10754
|
-
args: [{ selector: 'app-reviews-ec', standalone: true, imports: [RatingEcComponent, TranslateModule], template: "<div class=\"row px-3\">\n <div class=\"col-12 pb-2 pb-md-0\">\n <div class=\"row w-100\">\n <div class=\"col-12 col-md-6\">\n <h4 class=\"mb-0 pt-2 pb-1\">{{\"product-review\" | translate}}</h4>\n @if(isAuthenticated$ ){\n <small class=\"pb-2 escribir\" data-bs-toggle=\"modal\" href=\"#modalReview\">\n {{\"write-a-review\" | translate}}\n <i class=\"bi bi-pencil-square\"></i>\n </small>\n }\n </div>\n <div class=\"col-12 col-md-6 d-flex align-items-center justify-content-start justify-content-md-end\">\n <div class=\"puntaje d-flex\">\n <ng-template #number let-ratingValue=\"ratingValue\">\n <p class=\"puntos mb-0\">\n {{ratingValue}}\n </p>\n </ng-template>\n <app-rating-ec [ratingValue]=\"product.rating\" [template]=\"number\"></app-rating-ec>\n <div class=\"ms-2\">\n <div class=\"stars mb-1\">\n <app-rating-ec [ratingValue]=\"product.rating\"></app-rating-ec>\n </div>\n <small><strong>{{reviews.total}} {{\"reviews\" | translate}}</strong></small>\n </div>\n </div>\n </div>\n </div>\n </div>\n <hr>\n\n <div class=\"tab-content mt-4\" id=\"myTabContent\">\n <div class=\"row g-5\">\n @for (item of reviews.items; track $index) {\n <div class=\"col-12 col-sm-6 col-md-4\">\n <div class=\"row\">\n <div class=\"col-9 col-sm-10\">\n <div class=\"ranking\">\n <app-rating-ec [ratingValue]=\"item.rating\"></app-rating-ec>\n </div>\n <h4 class=\"text-uppercase\">{{item.title}}</h4>\n <div class=\"d-flex justify-content-between\">\n <div class=\"ususario\">\n <i class=\"bi bi-person-fill\"></i> {{ getAuthorName(item.author) }}\n </div>\n </div>\n <div class=\"resenia mt-2\">\n <p style=\"font-size: 14px;\"> {{item.comment}}</p>\n </div>\n </div>\n </div>\n\n </div>\n }\n @if (getPages() && getPages().length > 1) {\n <nav aria-label=\"Page navigation example\">\n <ul class=\"pagination custom-pagination\">\n <li class=\"page-item\">\n <a class=\"page-link cursor-pointer\" (click)=\"first()\" aria-label=\"Previous\">\n <span aria-hidden=\"true\">«</span>\n </a>\n </li>\n @for (page of getPages(); track $index) {\n <li class=\"page-item\">\n <a class=\"page-link cursor-pointer\" (click)=\"goPage(page)\">{{ page }}</a>\n </li>\n }\n <li class=\"page-item\">\n <a class=\"page-link cursor-pointer\" (click)=\"next()\" aria-label=\"Next\">\n <span aria-hidden=\"true\">»</span>\n </a>\n </li>\n </ul>\n </nav>\n\n }\n\n </div>\n </div>\n\n</div>", styles: [".custom-pagination{display:flex;justify-content:center;list-style:none;padding:0;margin-top:20px}.custom-pagination .page-item{margin:0 5px}.custom-pagination .page-link{color:#131716;background-color:#f3f3f3;border:1px solid #ccc;padding:8px 12px;border-radius:5px;text-decoration:none;transition:background-color .3s ease}.custom-pagination .page-link:hover{background-color:#0b0c0c;color:#fff}.custom-pagination .page-item.active .page-link{background-color:#131716;color:#fff;font-weight:700}.cursor-pointer{cursor:pointer}\n"] }]
|
|
10791
|
+
args: [{ selector: 'app-reviews-ec', standalone: true, imports: [RatingEcComponent, TranslateModule], template: "<div class=\"row px-3\">\r\n <div class=\"col-12 pb-2 pb-md-0\">\r\n <div class=\"row w-100\">\r\n <div class=\"col-12 col-md-6\">\r\n <h4 class=\"mb-0 pt-2 pb-1\">{{\"product-review\" | translate}}</h4>\r\n @if(isAuthenticated$ ){\r\n <small class=\"pb-2 escribir\" data-bs-toggle=\"modal\" href=\"#modalReview\">\r\n {{\"write-a-review\" | translate}}\r\n <i class=\"bi bi-pencil-square\"></i>\r\n </small>\r\n }\r\n </div>\r\n <div class=\"col-12 col-md-6 d-flex align-items-center justify-content-start justify-content-md-end\">\r\n <div class=\"puntaje d-flex\">\r\n <ng-template #number let-ratingValue=\"ratingValue\">\r\n <p class=\"puntos mb-0\">\r\n {{ratingValue}}\r\n </p>\r\n </ng-template>\r\n <app-rating-ec [ratingValue]=\"product.rating\" [template]=\"number\"></app-rating-ec>\r\n <div class=\"ms-2\">\r\n <div class=\"stars mb-1\">\r\n <app-rating-ec [ratingValue]=\"product.rating\"></app-rating-ec>\r\n </div>\r\n <small><strong>{{reviews.total}} {{\"reviews\" | translate}}</strong></small>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <hr>\r\n\r\n <div class=\"tab-content mt-4\" id=\"myTabContent\">\r\n <div class=\"row g-5\">\r\n @for (item of reviews.items; track $index) {\r\n <div class=\"col-12 col-sm-6 col-md-4\">\r\n <div class=\"row\">\r\n <div class=\"col-9 col-sm-10\">\r\n <div class=\"ranking\">\r\n <app-rating-ec [ratingValue]=\"item.rating\"></app-rating-ec>\r\n </div>\r\n <h4 class=\"text-uppercase\">{{item.title}}</h4>\r\n <div class=\"d-flex justify-content-between\">\r\n <div class=\"ususario\">\r\n <i class=\"bi bi-person-fill\"></i> {{ getAuthorName(item.author) }}\r\n </div>\r\n </div>\r\n <div class=\"resenia mt-2\">\r\n <p style=\"font-size: 14px;\"> {{item.comment}}</p>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n }\r\n @if (getPages() && getPages().length > 1) {\r\n <nav aria-label=\"Page navigation example\">\r\n <ul class=\"pagination custom-pagination\">\r\n <li class=\"page-item\">\r\n <a class=\"page-link cursor-pointer\" (click)=\"first()\" aria-label=\"Previous\">\r\n <span aria-hidden=\"true\">«</span>\r\n </a>\r\n </li>\r\n @for (page of getPages(); track $index) {\r\n <li class=\"page-item\">\r\n <a class=\"page-link cursor-pointer\" (click)=\"goPage(page)\">{{ page }}</a>\r\n </li>\r\n }\r\n <li class=\"page-item\">\r\n <a class=\"page-link cursor-pointer\" (click)=\"next()\" aria-label=\"Next\">\r\n <span aria-hidden=\"true\">»</span>\r\n </a>\r\n </li>\r\n </ul>\r\n </nav>\r\n\r\n }\r\n\r\n </div>\r\n </div>\r\n\r\n</div>", styles: [".custom-pagination{display:flex;justify-content:center;list-style:none;padding:0;margin-top:20px}.custom-pagination .page-item{margin:0 5px}.custom-pagination .page-link{color:#131716;background-color:#f3f3f3;border:1px solid #ccc;padding:8px 12px;border-radius:5px;text-decoration:none;transition:background-color .3s ease}.custom-pagination .page-link:hover{background-color:#0b0c0c;color:#fff}.custom-pagination .page-item.active .page-link{background-color:#131716;color:#fff;font-weight:700}.cursor-pointer{cursor:pointer}\n"] }]
|
|
10755
10792
|
}], ctorParameters: () => [{ type: ReviewsService }, { type: CoreConstantsService }], propDecorators: { product: [{
|
|
10756
10793
|
type: Input
|
|
10757
10794
|
}] } });
|
|
@@ -10862,11 +10899,11 @@ class ReviewsFormEcComponent extends ComponentHelper {
|
|
|
10862
10899
|
*/
|
|
10863
10900
|
updateReviews = () => this.reviewsService.updateReviewsByCode(this.product.id);
|
|
10864
10901
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ReviewsFormEcComponent, deps: [{ token: ToastService }, { token: i2.Router }, { token: CoreConstantsService }, { token: i1$3.FormBuilder }, { token: ProductsService }, { token: AuthService }, { token: ReviewsService }], target: i0.ɵɵFactoryTarget.Component });
|
|
10865
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ReviewsFormEcComponent, isStandalone: true, selector: "app-reviews-form-ec", inputs: { product: "product", withAuthenticated: "withAuthenticated", max: "max" }, outputs: { ready: "ready" }, usesInheritance: true, ngImport: i0, template: "<form class=\"formResenia\" [formGroup]=\"reviews_form\" (submit)=\"toastReviewsForm($event)\">\n <div class=\"row\">\n <div class=\"col-4\">\n <label class=\"pt-2\">{{\"product\" | translate }}*</label>\n </div>\n <div class=\"col-8\">\n <p class=\"mt-1 mb-3\">{{ product.name }}</p>\n </div>\n </div>\n\n <!-- Calificaci\u00F3n -->\n <div class=\"row\">\n <div class=\"col-4\">\n <label class=\"pt-2\">{{\"rating\" | translate}}*</label>\n </div>\n <div class=\"col-8\">\n <div class=\"cont-star mt-1 mb-3\">\n @for(star of limit; track $index){\n <input type=\"radio\" class=\"d-none\" [id]=\"'star-' + (limit.length - $index)\" [value]=\"limit.length - $index\"\n formControlName=\"rating\">\n <label class=\"star-label\" [for]=\"'star-' + (limit.length - $index)\">\n <i class=\"bi bi-star-fill\"></i>\n </label>\n }\n </div>\n </div>\n </div>\n\n <!-- Resumen -->\n <div class=\"row\">\n <div class=\"col-4\">\n <label for=\"review-summary\" class=\"pt-2\">{{\"summary\" | translate }}*</label>\n </div>\n <div class=\"col-8\">\n <textarea id=\"review-summary\" class=\"w-100\" placeholder=\"\u00BFC\u00F3mo fue tu experiencia?\" formControlName=\"title\"></textarea>\n </div>\n </div>\n\n <!-- Detalle -->\n <div class=\"row\">\n <div class=\"col-4\">\n <label for=\"review-detail\" class=\"pt-2\">{{\"detail\" | translate }}*</label>\n </div>\n <div class=\"col-8\">\n <textarea id=\"review-detail\" class=\"w-100\" placeholder=\"Contanos por qu\u00E9\" formControlName=\"comment\"></textarea>\n <small class=\"text-uppercase\">(*) {{\"mandatory-fields\" | translate }}</small>\n </div>\n </div>\n\n <!-- Bot\u00F3n de env\u00EDo -->\n <div class=\"row\">\n <div class=\"col-4\"></div>\n <div class=\"col-8\">\n <button type=\"submit\" class=\"btn btn-dark py-2 px-4 rounded-0 mt-4\"\n [disabled]=\"reviews_form.invalid\">{{\"submit-review\" | translate }}</button>\n </div>\n </div> \n</form>", styles: [".cont-star{direction:rtl;unicode-bidi:bidi-override;display:flex;justify-content:end}.cont-star label{display:flex}.cont-star label i{color:#ccc!important;cursor:pointer;font-size:26px;line-height:30px}.cont-star label i:hover,.cont-star label:hover~label i{color:#ffc107!important}input[type=radio]:checked~label i{color:#ffc107!important}input[type=radio]:checked~label i:before,label:hover i:before{content:\"\\f586\"}\n"], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.RadioControlValueAccessor, selector: "input[type=radio][formControlName],input[type=radio][formControl],input[type=radio][ngModel]", inputs: ["name", "formControlName", "value"] }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] });
|
|
10902
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ReviewsFormEcComponent, isStandalone: true, selector: "app-reviews-form-ec", inputs: { product: "product", withAuthenticated: "withAuthenticated", max: "max" }, outputs: { ready: "ready" }, usesInheritance: true, ngImport: i0, template: "<form class=\"formResenia\" [formGroup]=\"reviews_form\" (submit)=\"toastReviewsForm($event)\">\r\n <div class=\"row\">\r\n <div class=\"col-4\">\r\n <label class=\"pt-2\">{{\"product\" | translate }}*</label>\r\n </div>\r\n <div class=\"col-8\">\r\n <p class=\"mt-1 mb-3\">{{ product.name }}</p>\r\n </div>\r\n </div>\r\n\r\n <!-- Calificaci\u00F3n -->\r\n <div class=\"row\">\r\n <div class=\"col-4\">\r\n <label class=\"pt-2\">{{\"rating\" | translate}}*</label>\r\n </div>\r\n <div class=\"col-8\">\r\n <div class=\"cont-star mt-1 mb-3\">\r\n @for(star of limit; track $index){\r\n <input type=\"radio\" class=\"d-none\" [id]=\"'star-' + (limit.length - $index)\" [value]=\"limit.length - $index\"\r\n formControlName=\"rating\">\r\n <label class=\"star-label\" [for]=\"'star-' + (limit.length - $index)\">\r\n <i class=\"bi bi-star-fill\"></i>\r\n </label>\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Resumen -->\r\n <div class=\"row\">\r\n <div class=\"col-4\">\r\n <label for=\"review-summary\" class=\"pt-2\">{{\"summary\" | translate }}*</label>\r\n </div>\r\n <div class=\"col-8\">\r\n <textarea id=\"review-summary\" class=\"w-100\" placeholder=\"\u00BFC\u00F3mo fue tu experiencia?\" formControlName=\"title\"></textarea>\r\n </div>\r\n </div>\r\n\r\n <!-- Detalle -->\r\n <div class=\"row\">\r\n <div class=\"col-4\">\r\n <label for=\"review-detail\" class=\"pt-2\">{{\"detail\" | translate }}*</label>\r\n </div>\r\n <div class=\"col-8\">\r\n <textarea id=\"review-detail\" class=\"w-100\" placeholder=\"Contanos por qu\u00E9\" formControlName=\"comment\"></textarea>\r\n <small class=\"text-uppercase\">(*) {{\"mandatory-fields\" | translate }}</small>\r\n </div>\r\n </div>\r\n\r\n <!-- Bot\u00F3n de env\u00EDo -->\r\n <div class=\"row\">\r\n <div class=\"col-4\"></div>\r\n <div class=\"col-8\">\r\n <button type=\"submit\" class=\"btn btn-dark py-2 px-4 rounded-0 mt-4\"\r\n [disabled]=\"reviews_form.invalid\">{{\"submit-review\" | translate }}</button>\r\n </div>\r\n </div> \r\n</form>", styles: [".cont-star{direction:rtl;unicode-bidi:bidi-override;display:flex;justify-content:end}.cont-star label{display:flex}.cont-star label i{color:#ccc!important;cursor:pointer;font-size:26px;line-height:30px}.cont-star label i:hover,.cont-star label:hover~label i{color:#ffc107!important}input[type=radio]:checked~label i{color:#ffc107!important}input[type=radio]:checked~label i:before,label:hover i:before{content:\"\\f586\"}\n"], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1$1.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.RadioControlValueAccessor, selector: "input[type=radio][formControlName],input[type=radio][formControl],input[type=radio][ngModel]", inputs: ["name", "formControlName", "value"] }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] });
|
|
10866
10903
|
}
|
|
10867
10904
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ReviewsFormEcComponent, decorators: [{
|
|
10868
10905
|
type: Component,
|
|
10869
|
-
args: [{ selector: 'app-reviews-form-ec', standalone: true, imports: [TranslateModule, ReactiveFormsModule], template: "<form class=\"formResenia\" [formGroup]=\"reviews_form\" (submit)=\"toastReviewsForm($event)\">\n <div class=\"row\">\n <div class=\"col-4\">\n <label class=\"pt-2\">{{\"product\" | translate }}*</label>\n </div>\n <div class=\"col-8\">\n <p class=\"mt-1 mb-3\">{{ product.name }}</p>\n </div>\n </div>\n\n <!-- Calificaci\u00F3n -->\n <div class=\"row\">\n <div class=\"col-4\">\n <label class=\"pt-2\">{{\"rating\" | translate}}*</label>\n </div>\n <div class=\"col-8\">\n <div class=\"cont-star mt-1 mb-3\">\n @for(star of limit; track $index){\n <input type=\"radio\" class=\"d-none\" [id]=\"'star-' + (limit.length - $index)\" [value]=\"limit.length - $index\"\n formControlName=\"rating\">\n <label class=\"star-label\" [for]=\"'star-' + (limit.length - $index)\">\n <i class=\"bi bi-star-fill\"></i>\n </label>\n }\n </div>\n </div>\n </div>\n\n <!-- Resumen -->\n <div class=\"row\">\n <div class=\"col-4\">\n <label for=\"review-summary\" class=\"pt-2\">{{\"summary\" | translate }}*</label>\n </div>\n <div class=\"col-8\">\n <textarea id=\"review-summary\" class=\"w-100\" placeholder=\"\u00BFC\u00F3mo fue tu experiencia?\" formControlName=\"title\"></textarea>\n </div>\n </div>\n\n <!-- Detalle -->\n <div class=\"row\">\n <div class=\"col-4\">\n <label for=\"review-detail\" class=\"pt-2\">{{\"detail\" | translate }}*</label>\n </div>\n <div class=\"col-8\">\n <textarea id=\"review-detail\" class=\"w-100\" placeholder=\"Contanos por qu\u00E9\" formControlName=\"comment\"></textarea>\n <small class=\"text-uppercase\">(*) {{\"mandatory-fields\" | translate }}</small>\n </div>\n </div>\n\n <!-- Bot\u00F3n de env\u00EDo -->\n <div class=\"row\">\n <div class=\"col-4\"></div>\n <div class=\"col-8\">\n <button type=\"submit\" class=\"btn btn-dark py-2 px-4 rounded-0 mt-4\"\n [disabled]=\"reviews_form.invalid\">{{\"submit-review\" | translate }}</button>\n </div>\n </div> \n</form>", styles: [".cont-star{direction:rtl;unicode-bidi:bidi-override;display:flex;justify-content:end}.cont-star label{display:flex}.cont-star label i{color:#ccc!important;cursor:pointer;font-size:26px;line-height:30px}.cont-star label i:hover,.cont-star label:hover~label i{color:#ffc107!important}input[type=radio]:checked~label i{color:#ffc107!important}input[type=radio]:checked~label i:before,label:hover i:before{content:\"\\f586\"}\n"] }]
|
|
10906
|
+
args: [{ selector: 'app-reviews-form-ec', standalone: true, imports: [TranslateModule, ReactiveFormsModule], template: "<form class=\"formResenia\" [formGroup]=\"reviews_form\" (submit)=\"toastReviewsForm($event)\">\r\n <div class=\"row\">\r\n <div class=\"col-4\">\r\n <label class=\"pt-2\">{{\"product\" | translate }}*</label>\r\n </div>\r\n <div class=\"col-8\">\r\n <p class=\"mt-1 mb-3\">{{ product.name }}</p>\r\n </div>\r\n </div>\r\n\r\n <!-- Calificaci\u00F3n -->\r\n <div class=\"row\">\r\n <div class=\"col-4\">\r\n <label class=\"pt-2\">{{\"rating\" | translate}}*</label>\r\n </div>\r\n <div class=\"col-8\">\r\n <div class=\"cont-star mt-1 mb-3\">\r\n @for(star of limit; track $index){\r\n <input type=\"radio\" class=\"d-none\" [id]=\"'star-' + (limit.length - $index)\" [value]=\"limit.length - $index\"\r\n formControlName=\"rating\">\r\n <label class=\"star-label\" [for]=\"'star-' + (limit.length - $index)\">\r\n <i class=\"bi bi-star-fill\"></i>\r\n </label>\r\n }\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- Resumen -->\r\n <div class=\"row\">\r\n <div class=\"col-4\">\r\n <label for=\"review-summary\" class=\"pt-2\">{{\"summary\" | translate }}*</label>\r\n </div>\r\n <div class=\"col-8\">\r\n <textarea id=\"review-summary\" class=\"w-100\" placeholder=\"\u00BFC\u00F3mo fue tu experiencia?\" formControlName=\"title\"></textarea>\r\n </div>\r\n </div>\r\n\r\n <!-- Detalle -->\r\n <div class=\"row\">\r\n <div class=\"col-4\">\r\n <label for=\"review-detail\" class=\"pt-2\">{{\"detail\" | translate }}*</label>\r\n </div>\r\n <div class=\"col-8\">\r\n <textarea id=\"review-detail\" class=\"w-100\" placeholder=\"Contanos por qu\u00E9\" formControlName=\"comment\"></textarea>\r\n <small class=\"text-uppercase\">(*) {{\"mandatory-fields\" | translate }}</small>\r\n </div>\r\n </div>\r\n\r\n <!-- Bot\u00F3n de env\u00EDo -->\r\n <div class=\"row\">\r\n <div class=\"col-4\"></div>\r\n <div class=\"col-8\">\r\n <button type=\"submit\" class=\"btn btn-dark py-2 px-4 rounded-0 mt-4\"\r\n [disabled]=\"reviews_form.invalid\">{{\"submit-review\" | translate }}</button>\r\n </div>\r\n </div> \r\n</form>", styles: [".cont-star{direction:rtl;unicode-bidi:bidi-override;display:flex;justify-content:end}.cont-star label{display:flex}.cont-star label i{color:#ccc!important;cursor:pointer;font-size:26px;line-height:30px}.cont-star label i:hover,.cont-star label:hover~label i{color:#ffc107!important}input[type=radio]:checked~label i{color:#ffc107!important}input[type=radio]:checked~label i:before,label:hover i:before{content:\"\\f586\"}\n"] }]
|
|
10870
10907
|
}], ctorParameters: () => [{ type: ToastService }, { type: i2.Router }, { type: CoreConstantsService }, { type: i1$3.FormBuilder }, { type: ProductsService }, { type: AuthService }, { type: ReviewsService }], propDecorators: { product: [{
|
|
10871
10908
|
type: Input
|
|
10872
10909
|
}], withAuthenticated: [{
|
|
@@ -10932,11 +10969,11 @@ class SectionContainerEcComponent extends ComponentHelper {
|
|
|
10932
10969
|
this.dataSection = this.sections.find(section => section.code == code);
|
|
10933
10970
|
};
|
|
10934
10971
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SectionContainerEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
10935
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: SectionContainerEcComponent, isStandalone: true, selector: "app-section-container-ec", inputs: { sanitizeHtml: "sanitizeHtml", name: "name" }, usesInheritance: true, ngImport: i0, template: "<div class=\"container-fluid\">\n <div class=\"row\">\n <div class=\"col-12\">\n <div class=\"scrol-if\">\n @if (loadSection){\n <div [innerHtml]=\"content_html\"></div>\n } @else {\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 }\n\n </div>\n </div>\n </div>\n</div>\n\n<app-blocks-ec [section]=\"name\"></app-blocks-ec>", styles: [".custom-page{background-color:#fff!important;padding-top:5%!important;padding-bottom:5%!important}.scrol-if{overflow:auto}\n"], dependencies: [{ kind: "component", type: BlocksEcComponent, selector: "app-blocks-ec", inputs: ["templates", "show_loading", "section", "blockFilters"] }, { kind: "component", type: LoadingFullEcComponent, selector: "app-loading-full-ec" }] });
|
|
10972
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: SectionContainerEcComponent, isStandalone: true, selector: "app-section-container-ec", inputs: { sanitizeHtml: "sanitizeHtml", name: "name" }, usesInheritance: true, ngImport: i0, template: "<div class=\"container-fluid\">\r\n <div class=\"row\">\r\n <div class=\"col-12\">\r\n <div class=\"scrol-if\">\r\n @if (loadSection){\r\n <div [innerHtml]=\"content_html\"></div>\r\n } @else {\r\n <div class=\"col-12 align-items-center\">\r\n <div class=\"d-flex flex-column jusitfy-content-center align-items-center my-5\">\r\n <app-loading-full-ec></app-loading-full-ec>\r\n </div>\r\n </div>\r\n }\r\n\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<app-blocks-ec [section]=\"name\"></app-blocks-ec>", styles: [".custom-page{background-color:#fff!important;padding-top:5%!important;padding-bottom:5%!important}.scrol-if{overflow:auto}\n"], dependencies: [{ kind: "component", type: BlocksEcComponent, selector: "app-blocks-ec", inputs: ["templates", "show_loading", "section", "blockFilters"] }, { kind: "component", type: LoadingFullEcComponent, selector: "app-loading-full-ec" }] });
|
|
10936
10973
|
}
|
|
10937
10974
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SectionContainerEcComponent, decorators: [{
|
|
10938
10975
|
type: Component,
|
|
10939
|
-
args: [{ selector: 'app-section-container-ec', standalone: true, imports: [BlocksEcComponent, LoadingFullEcComponent], template: "<div class=\"container-fluid\">\n <div class=\"row\">\n <div class=\"col-12\">\n <div class=\"scrol-if\">\n @if (loadSection){\n <div [innerHtml]=\"content_html\"></div>\n } @else {\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 }\n\n </div>\n </div>\n </div>\n</div>\n\n<app-blocks-ec [section]=\"name\"></app-blocks-ec>", styles: [".custom-page{background-color:#fff!important;padding-top:5%!important;padding-bottom:5%!important}.scrol-if{overflow:auto}\n"] }]
|
|
10976
|
+
args: [{ selector: 'app-section-container-ec', standalone: true, imports: [BlocksEcComponent, LoadingFullEcComponent], template: "<div class=\"container-fluid\">\r\n <div class=\"row\">\r\n <div class=\"col-12\">\r\n <div class=\"scrol-if\">\r\n @if (loadSection){\r\n <div [innerHtml]=\"content_html\"></div>\r\n } @else {\r\n <div class=\"col-12 align-items-center\">\r\n <div class=\"d-flex flex-column jusitfy-content-center align-items-center my-5\">\r\n <app-loading-full-ec></app-loading-full-ec>\r\n </div>\r\n </div>\r\n }\r\n\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<app-blocks-ec [section]=\"name\"></app-blocks-ec>", styles: [".custom-page{background-color:#fff!important;padding-top:5%!important;padding-bottom:5%!important}.scrol-if{overflow:auto}\n"] }]
|
|
10940
10977
|
}], ctorParameters: () => [], propDecorators: { sanitizeHtml: [{
|
|
10941
10978
|
type: Input
|
|
10942
10979
|
}], name: [{
|
|
@@ -11123,11 +11160,11 @@ class StoresEcComponent extends ComponentHelper {
|
|
|
11123
11160
|
});
|
|
11124
11161
|
}
|
|
11125
11162
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: StoresEcComponent, deps: [{ token: StoresService }, { token: CoreConstantsService }, { token: i1$4.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
|
|
11126
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: StoresEcComponent, isStandalone: true, selector: "app-store-ec", usesInheritance: true, ngImport: i0, 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@if(stores){\n<div class=\"row\">\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)\" class=\"rounded-0 form-control form-control-sm\"\n 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\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\n <iframe id=\"map-iframe\" [src]=\"urlmap\" frameborder=\"0\"></iframe>\n </div>\n</div>\n}@else {\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\n\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> -->", styles: [".scrolleable{height:70vh;overflow:auto}@media screen and (max-width: 768px){.scrolleable{height:auto}}.background-white{background-color:#fff}.alto-total{height:60vh}.custom-a{color:#000}#map-iframe{width:100%;border:0;height:100%}@media screen and (max-width: 425px){#map-iframe{height:400px}}\n"], dependencies: [{ kind: "ngmodule", type: TranslateModule }] });
|
|
11163
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: StoresEcComponent, isStandalone: true, selector: "app-store-ec", usesInheritance: true, ngImport: i0, template: "<!-- <div class=\"row w-100 mx-auto my-4 px-3 bb-s bt-md-s py-1\">\r\n <strong>{{ 'stores' | translate }}</strong>\r\n</div>\r\n@if(stores){\r\n<div class=\"row\">\r\n <div class=\"col-12 col-md-3 order-1 order-md-1\">\r\n <div class=\"row\">\r\n <div class=\"form-group w-100\">\r\n <select (change)=\"selectChange($event.target.value)\" class=\"rounded-0 form-control form-control-sm\"\r\n id=\"exampleFormControlSelect1\">\r\n <option selected [value]=\"''\">Seleccione provincia</option>\r\n <option [value]=\"item.code\" *ngFor=\"let item of getProvices(stores)\"> {{item.name}}\r\n </option>\r\n </select>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-12 col-md-3 order-3 order-md-2\">\r\n <div class=\"container-fluid scrolleable\" *ngIf=\"filterStores && filterStores.length\">\r\n <div class=\"row mb-1\" *ngFor=\"let store of filterStores; let i = index\">\r\n <div class=\"col-12\">\r\n <h6 class=\"\"><strong>{{ store.name }}</strong></h6>\r\n <label>{{ store.address }}</label>\r\n <label>{{ store.phone }}</label>\r\n <div [innerHtml]=\"store.note\"></div>\r\n <div class=\"text-right\">\r\n\r\n <a *ngIf=\"store.urlMap\" (click)=\"updateMap (store.urlMap)\" class=\"custom-a\">Ver mapa</a>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-12 col-md-6 order-2 order-md-3 my-4 mt-md-0\">\r\n\r\n <iframe id=\"map-iframe\" [src]=\"urlmap\" frameborder=\"0\"></iframe>\r\n </div>\r\n</div>\r\n}@else {\r\n<div class=\"d-flex flex-row justify-content-center my-5 align-items-center alto-total\">\r\n <h5 class=\"text-center\">{{ 'no-stores' | translate }}</h5>\r\n</div>\r\n}\r\n\r\n\r\n\r\n<ng-template #loading>\r\n <div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-12 align-items-center\">\r\n <div class=\"d-flex flex-column justify-content-center align-items-center my-5\">\r\n <app-loading-full-ec></app-loading-full-ec>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</ng-template> -->", styles: [".scrolleable{height:70vh;overflow:auto}@media screen and (max-width: 768px){.scrolleable{height:auto}}.background-white{background-color:#fff}.alto-total{height:60vh}.custom-a{color:#000}#map-iframe{width:100%;border:0;height:100%}@media screen and (max-width: 425px){#map-iframe{height:400px}}\n"], dependencies: [{ kind: "ngmodule", type: TranslateModule }] });
|
|
11127
11164
|
}
|
|
11128
11165
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: StoresEcComponent, decorators: [{
|
|
11129
11166
|
type: Component,
|
|
11130
|
-
args: [{ selector: 'app-store-ec', standalone: true, imports: [TranslateModule], 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@if(stores){\n<div class=\"row\">\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)\" class=\"rounded-0 form-control form-control-sm\"\n 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\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\n <iframe id=\"map-iframe\" [src]=\"urlmap\" frameborder=\"0\"></iframe>\n </div>\n</div>\n}@else {\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\n\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> -->", styles: [".scrolleable{height:70vh;overflow:auto}@media screen and (max-width: 768px){.scrolleable{height:auto}}.background-white{background-color:#fff}.alto-total{height:60vh}.custom-a{color:#000}#map-iframe{width:100%;border:0;height:100%}@media screen and (max-width: 425px){#map-iframe{height:400px}}\n"] }]
|
|
11167
|
+
args: [{ selector: 'app-store-ec', standalone: true, imports: [TranslateModule], template: "<!-- <div class=\"row w-100 mx-auto my-4 px-3 bb-s bt-md-s py-1\">\r\n <strong>{{ 'stores' | translate }}</strong>\r\n</div>\r\n@if(stores){\r\n<div class=\"row\">\r\n <div class=\"col-12 col-md-3 order-1 order-md-1\">\r\n <div class=\"row\">\r\n <div class=\"form-group w-100\">\r\n <select (change)=\"selectChange($event.target.value)\" class=\"rounded-0 form-control form-control-sm\"\r\n id=\"exampleFormControlSelect1\">\r\n <option selected [value]=\"''\">Seleccione provincia</option>\r\n <option [value]=\"item.code\" *ngFor=\"let item of getProvices(stores)\"> {{item.name}}\r\n </option>\r\n </select>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-12 col-md-3 order-3 order-md-2\">\r\n <div class=\"container-fluid scrolleable\" *ngIf=\"filterStores && filterStores.length\">\r\n <div class=\"row mb-1\" *ngFor=\"let store of filterStores; let i = index\">\r\n <div class=\"col-12\">\r\n <h6 class=\"\"><strong>{{ store.name }}</strong></h6>\r\n <label>{{ store.address }}</label>\r\n <label>{{ store.phone }}</label>\r\n <div [innerHtml]=\"store.note\"></div>\r\n <div class=\"text-right\">\r\n\r\n <a *ngIf=\"store.urlMap\" (click)=\"updateMap (store.urlMap)\" class=\"custom-a\">Ver mapa</a>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-12 col-md-6 order-2 order-md-3 my-4 mt-md-0\">\r\n\r\n <iframe id=\"map-iframe\" [src]=\"urlmap\" frameborder=\"0\"></iframe>\r\n </div>\r\n</div>\r\n}@else {\r\n<div class=\"d-flex flex-row justify-content-center my-5 align-items-center alto-total\">\r\n <h5 class=\"text-center\">{{ 'no-stores' | translate }}</h5>\r\n</div>\r\n}\r\n\r\n\r\n\r\n<ng-template #loading>\r\n <div class=\"container\">\r\n <div class=\"row\">\r\n <div class=\"col-12 align-items-center\">\r\n <div class=\"d-flex flex-column justify-content-center align-items-center my-5\">\r\n <app-loading-full-ec></app-loading-full-ec>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</ng-template> -->", styles: [".scrolleable{height:70vh;overflow:auto}@media screen and (max-width: 768px){.scrolleable{height:auto}}.background-white{background-color:#fff}.alto-total{height:60vh}.custom-a{color:#000}#map-iframe{width:100%;border:0;height:100%}@media screen and (max-width: 425px){#map-iframe{height:400px}}\n"] }]
|
|
11131
11168
|
}], ctorParameters: () => [{ type: StoresService }, { type: CoreConstantsService }, { type: i1$4.DomSanitizer }] });
|
|
11132
11169
|
|
|
11133
11170
|
class PriceRangeFilterComponent {
|
|
@@ -11255,11 +11292,11 @@ class PriceRangeFilterComponent {
|
|
|
11255
11292
|
return value;
|
|
11256
11293
|
}
|
|
11257
11294
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PriceRangeFilterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
11258
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: PriceRangeFilterComponent, isStandalone: true, selector: "lib-price-range-filter", inputs: { filter: "filter" }, outputs: { rangeChanged: "rangeChanged" }, ngImport: i0, template: "<div class=\"slider\">\n <div class=\"slider\">\n <div class=\"progress\" [ngStyle]=\"getSliderStyle(filter)\">\n </div>\n </div>\n</div>\n<div class=\"range-input d-flex gap-2\">\n <input #rangeMin type=\"range\" class=\"range-min\" [min]=\"filter.minPrice\" [max]=\"filter.maxPrice\"\n [value]=\"getMinValue(filter)\" (input)=\"onRangeChange($event, 'min', filter)\"\n (change)=\"updatePriceRange(filter); scrollUp()\">\n <input #rangeMax type=\"range\" class=\"range-max\" [min]=\"filter.minPrice\" [max]=\"filter.maxPrice\"\n [value]=\"getMaxValue(filter)\" (input)=\"onRangeChange($event, 'max', filter)\"\n (change)=\"updatePriceRange(filter); scrollUp()\">\n</div>\n<!-- precios M\u00EDnimo / M\u00E1ximo -->\n<div class=\"price-container mt-2\">\n <div class=\"price-label-wrapper\">\n <span class=\"price-label\">M\u00EDnimo:</span>\n <span class=\"price-value\">\n {{ (getFormattedMinPrice(filter) | ecCurrencySymbol) || '0' }}\n </span>\n </div>\n <div class=\"price-label-wrapper\">\n <span class=\"price-label\">M\u00E1ximo:</span>\n <span class=\"price-value price-value-right\">\n {{ getFormattedMaxPrice(filter) | ecCurrencySymbol }}\n </span>\n </div>\n</div>", styles: [":root{--slider-bg: #ddd;--slider-progress-bg: #0FA3AF;--thumb-bg: #0FA3AF;--thumb-border: #fff;--text-color: #131716;--label-color: #0FA3AF;--shadow-color: rgba(15, 163, 175, .4)}.slider{height:6px;border-radius:5px;background:var(--slider-bg);position:relative;overflow:hidden}.slider .progress{height:6px;position:absolute;left:0;right:0;border-radius:5px;background:var(--slider-progress-bg)}.range-input{position:relative;margin-bottom:14px}.range-input input[type=range]{position:absolute;top:-5px;width:100%;height:5px;background:none;pointer-events:none;-webkit-appearance:none}.range-input input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;pointer-events:auto;height:20px;width:20px;border-radius:50%;background:var(--thumb-bg);border:3px solid var(--thumb-border);cursor:pointer;box-shadow:0 4px 8px #0003}.range-input input[type=range]::-moz-range-thumb{-moz-appearance:none;pointer-events:auto;height:20px;width:20px;border-radius:50%;background:var(--thumb-bg);border:3px solid var(--thumb-border);cursor:pointer;box-shadow:0 4px 8px #0003}.range-input input[type=range]:focus::-webkit-slider-thumb,.range-input input[type=range]:focus::-moz-range-thumb{box-shadow:0 0 0 4px var(--shadow-color);outline:none}.price-container{display:flex;flex-wrap:wrap;gap:1rem}.price-label-wrapper{display:flex;flex-direction:column;flex:0 1 auto;min-width:0}.price-label{font-weight:600;color:var(--label-color);margin-bottom:.25rem}.price-value{white-space:nowrap;font-weight:700;color:var(--text-color);overflow:hidden;text-overflow:ellipsis;font-size:14px}.price-value-right{text-align:right}\n"], dependencies: [{ kind: "pipe", type: EcCurrencySymbolPipe, name: "ecCurrencySymbol" }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
11295
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: PriceRangeFilterComponent, isStandalone: true, selector: "lib-price-range-filter", inputs: { filter: "filter" }, outputs: { rangeChanged: "rangeChanged" }, ngImport: i0, template: "<div class=\"slider\">\r\n <div class=\"slider\">\r\n <div class=\"progress\" [ngStyle]=\"getSliderStyle(filter)\">\r\n </div>\r\n </div>\r\n</div>\r\n<div class=\"range-input d-flex gap-2\">\r\n <input #rangeMin type=\"range\" class=\"range-min\" [min]=\"filter.minPrice\" [max]=\"filter.maxPrice\"\r\n [value]=\"getMinValue(filter)\" (input)=\"onRangeChange($event, 'min', filter)\"\r\n (change)=\"updatePriceRange(filter); scrollUp()\">\r\n <input #rangeMax type=\"range\" class=\"range-max\" [min]=\"filter.minPrice\" [max]=\"filter.maxPrice\"\r\n [value]=\"getMaxValue(filter)\" (input)=\"onRangeChange($event, 'max', filter)\"\r\n (change)=\"updatePriceRange(filter); scrollUp()\">\r\n</div>\r\n<!-- precios M\u00EDnimo / M\u00E1ximo -->\r\n<div class=\"price-container mt-2\">\r\n <div class=\"price-label-wrapper\">\r\n <span class=\"price-label\">M\u00EDnimo:</span>\r\n <span class=\"price-value\">\r\n {{ (getFormattedMinPrice(filter) | ecCurrencySymbol) || '0' }}\r\n </span>\r\n </div>\r\n <div class=\"price-label-wrapper\">\r\n <span class=\"price-label\">M\u00E1ximo:</span>\r\n <span class=\"price-value price-value-right\">\r\n {{ getFormattedMaxPrice(filter) | ecCurrencySymbol }}\r\n </span>\r\n </div>\r\n</div>", styles: [":root{--slider-bg: #ddd;--slider-progress-bg: #0FA3AF;--thumb-bg: #0FA3AF;--thumb-border: #fff;--text-color: #131716;--label-color: #0FA3AF;--shadow-color: rgba(15, 163, 175, .4)}.slider{height:6px;border-radius:5px;background:var(--slider-bg);position:relative;overflow:hidden}.slider .progress{height:6px;position:absolute;left:0;right:0;border-radius:5px;background:var(--slider-progress-bg)}.range-input{position:relative;margin-bottom:14px}.range-input input[type=range]{position:absolute;top:-5px;width:100%;height:5px;background:none;pointer-events:none;-webkit-appearance:none}.range-input input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;pointer-events:auto;height:20px;width:20px;border-radius:50%;background:var(--thumb-bg);border:3px solid var(--thumb-border);cursor:pointer;box-shadow:0 4px 8px #0003}.range-input input[type=range]::-moz-range-thumb{-moz-appearance:none;pointer-events:auto;height:20px;width:20px;border-radius:50%;background:var(--thumb-bg);border:3px solid var(--thumb-border);cursor:pointer;box-shadow:0 4px 8px #0003}.range-input input[type=range]:focus::-webkit-slider-thumb,.range-input input[type=range]:focus::-moz-range-thumb{box-shadow:0 0 0 4px var(--shadow-color);outline:none}.price-container{display:flex;flex-wrap:wrap;gap:1rem}.price-label-wrapper{display:flex;flex-direction:column;flex:0 1 auto;min-width:0}.price-label{font-weight:600;color:var(--label-color);margin-bottom:.25rem}.price-value{white-space:nowrap;font-weight:700;color:var(--text-color);overflow:hidden;text-overflow:ellipsis;font-size:14px}.price-value-right{text-align:right}\n"], dependencies: [{ kind: "pipe", type: EcCurrencySymbolPipe, name: "ecCurrencySymbol" }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
11259
11296
|
}
|
|
11260
11297
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PriceRangeFilterComponent, decorators: [{
|
|
11261
11298
|
type: Component,
|
|
11262
|
-
args: [{ selector: 'lib-price-range-filter', standalone: true, imports: [EcCurrencySymbolPipe, CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"slider\">\n <div class=\"slider\">\n <div class=\"progress\" [ngStyle]=\"getSliderStyle(filter)\">\n </div>\n </div>\n</div>\n<div class=\"range-input d-flex gap-2\">\n <input #rangeMin type=\"range\" class=\"range-min\" [min]=\"filter.minPrice\" [max]=\"filter.maxPrice\"\n [value]=\"getMinValue(filter)\" (input)=\"onRangeChange($event, 'min', filter)\"\n (change)=\"updatePriceRange(filter); scrollUp()\">\n <input #rangeMax type=\"range\" class=\"range-max\" [min]=\"filter.minPrice\" [max]=\"filter.maxPrice\"\n [value]=\"getMaxValue(filter)\" (input)=\"onRangeChange($event, 'max', filter)\"\n (change)=\"updatePriceRange(filter); scrollUp()\">\n</div>\n<!-- precios M\u00EDnimo / M\u00E1ximo -->\n<div class=\"price-container mt-2\">\n <div class=\"price-label-wrapper\">\n <span class=\"price-label\">M\u00EDnimo:</span>\n <span class=\"price-value\">\n {{ (getFormattedMinPrice(filter) | ecCurrencySymbol) || '0' }}\n </span>\n </div>\n <div class=\"price-label-wrapper\">\n <span class=\"price-label\">M\u00E1ximo:</span>\n <span class=\"price-value price-value-right\">\n {{ getFormattedMaxPrice(filter) | ecCurrencySymbol }}\n </span>\n </div>\n</div>", styles: [":root{--slider-bg: #ddd;--slider-progress-bg: #0FA3AF;--thumb-bg: #0FA3AF;--thumb-border: #fff;--text-color: #131716;--label-color: #0FA3AF;--shadow-color: rgba(15, 163, 175, .4)}.slider{height:6px;border-radius:5px;background:var(--slider-bg);position:relative;overflow:hidden}.slider .progress{height:6px;position:absolute;left:0;right:0;border-radius:5px;background:var(--slider-progress-bg)}.range-input{position:relative;margin-bottom:14px}.range-input input[type=range]{position:absolute;top:-5px;width:100%;height:5px;background:none;pointer-events:none;-webkit-appearance:none}.range-input input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;pointer-events:auto;height:20px;width:20px;border-radius:50%;background:var(--thumb-bg);border:3px solid var(--thumb-border);cursor:pointer;box-shadow:0 4px 8px #0003}.range-input input[type=range]::-moz-range-thumb{-moz-appearance:none;pointer-events:auto;height:20px;width:20px;border-radius:50%;background:var(--thumb-bg);border:3px solid var(--thumb-border);cursor:pointer;box-shadow:0 4px 8px #0003}.range-input input[type=range]:focus::-webkit-slider-thumb,.range-input input[type=range]:focus::-moz-range-thumb{box-shadow:0 0 0 4px var(--shadow-color);outline:none}.price-container{display:flex;flex-wrap:wrap;gap:1rem}.price-label-wrapper{display:flex;flex-direction:column;flex:0 1 auto;min-width:0}.price-label{font-weight:600;color:var(--label-color);margin-bottom:.25rem}.price-value{white-space:nowrap;font-weight:700;color:var(--text-color);overflow:hidden;text-overflow:ellipsis;font-size:14px}.price-value-right{text-align:right}\n"] }]
|
|
11299
|
+
args: [{ selector: 'lib-price-range-filter', standalone: true, imports: [EcCurrencySymbolPipe, CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"slider\">\r\n <div class=\"slider\">\r\n <div class=\"progress\" [ngStyle]=\"getSliderStyle(filter)\">\r\n </div>\r\n </div>\r\n</div>\r\n<div class=\"range-input d-flex gap-2\">\r\n <input #rangeMin type=\"range\" class=\"range-min\" [min]=\"filter.minPrice\" [max]=\"filter.maxPrice\"\r\n [value]=\"getMinValue(filter)\" (input)=\"onRangeChange($event, 'min', filter)\"\r\n (change)=\"updatePriceRange(filter); scrollUp()\">\r\n <input #rangeMax type=\"range\" class=\"range-max\" [min]=\"filter.minPrice\" [max]=\"filter.maxPrice\"\r\n [value]=\"getMaxValue(filter)\" (input)=\"onRangeChange($event, 'max', filter)\"\r\n (change)=\"updatePriceRange(filter); scrollUp()\">\r\n</div>\r\n<!-- precios M\u00EDnimo / M\u00E1ximo -->\r\n<div class=\"price-container mt-2\">\r\n <div class=\"price-label-wrapper\">\r\n <span class=\"price-label\">M\u00EDnimo:</span>\r\n <span class=\"price-value\">\r\n {{ (getFormattedMinPrice(filter) | ecCurrencySymbol) || '0' }}\r\n </span>\r\n </div>\r\n <div class=\"price-label-wrapper\">\r\n <span class=\"price-label\">M\u00E1ximo:</span>\r\n <span class=\"price-value price-value-right\">\r\n {{ getFormattedMaxPrice(filter) | ecCurrencySymbol }}\r\n </span>\r\n </div>\r\n</div>", styles: [":root{--slider-bg: #ddd;--slider-progress-bg: #0FA3AF;--thumb-bg: #0FA3AF;--thumb-border: #fff;--text-color: #131716;--label-color: #0FA3AF;--shadow-color: rgba(15, 163, 175, .4)}.slider{height:6px;border-radius:5px;background:var(--slider-bg);position:relative;overflow:hidden}.slider .progress{height:6px;position:absolute;left:0;right:0;border-radius:5px;background:var(--slider-progress-bg)}.range-input{position:relative;margin-bottom:14px}.range-input input[type=range]{position:absolute;top:-5px;width:100%;height:5px;background:none;pointer-events:none;-webkit-appearance:none}.range-input input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;pointer-events:auto;height:20px;width:20px;border-radius:50%;background:var(--thumb-bg);border:3px solid var(--thumb-border);cursor:pointer;box-shadow:0 4px 8px #0003}.range-input input[type=range]::-moz-range-thumb{-moz-appearance:none;pointer-events:auto;height:20px;width:20px;border-radius:50%;background:var(--thumb-bg);border:3px solid var(--thumb-border);cursor:pointer;box-shadow:0 4px 8px #0003}.range-input input[type=range]:focus::-webkit-slider-thumb,.range-input input[type=range]:focus::-moz-range-thumb{box-shadow:0 0 0 4px var(--shadow-color);outline:none}.price-container{display:flex;flex-wrap:wrap;gap:1rem}.price-label-wrapper{display:flex;flex-direction:column;flex:0 1 auto;min-width:0}.price-label{font-weight:600;color:var(--label-color);margin-bottom:.25rem}.price-value{white-space:nowrap;font-weight:700;color:var(--text-color);overflow:hidden;text-overflow:ellipsis;font-size:14px}.price-value-right{text-align:right}\n"] }]
|
|
11263
11300
|
}], propDecorators: { filter: [{
|
|
11264
11301
|
type: Input
|
|
11265
11302
|
}], rangeChanged: [{
|