ng-easycommerce-v18 0.2.1 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/assets/ec-i18n/ct.json +2 -1
  2. package/assets/ec-i18n/en.json +2 -1
  3. package/assets/ec-i18n/es.json +1 -0
  4. package/assets/ec-i18n/fr.json +2 -1
  5. package/assets/ec-i18n/gl.json +2 -1
  6. package/assets/ec-i18n/pr.json +2 -1
  7. package/esm2022/lib/classes/filters/filter-factory.mjs +4 -1
  8. package/esm2022/lib/classes/filters/price_range-filter.mjs +59 -0
  9. package/esm2022/lib/ec-components/auth-ec/login-form-ec/login-form-ec.component.mjs +3 -3
  10. package/esm2022/lib/ec-components/blocks-ec/block-products-ec/block-products-ec.component.mjs +3 -2
  11. package/esm2022/lib/ec-components/cart-ec/cart-ec.component.mjs +9 -1
  12. package/esm2022/lib/ec-components/checkout-ec/dataform-ec/dataform-ec.component.mjs +24 -3
  13. package/esm2022/lib/ec-components/collection-ec/collection-ec.component.mjs +1 -5
  14. package/esm2022/lib/ec-components/coupon-ec/coupon-ec.component.mjs +3 -3
  15. package/esm2022/lib/ec-components/filters-ec/filters-ec.component.mjs +38 -91
  16. package/esm2022/lib/ec-components/index.mjs +2 -1
  17. package/esm2022/lib/ec-components/price-range-filter/price-range-filter.component.mjs +143 -0
  18. package/esm2022/lib/ec-components/product-detail-ec/product-detail-ec.component.mjs +39 -3
  19. package/esm2022/lib/ec-components/product-ec/product-ec.component.mjs +16 -2
  20. package/esm2022/lib/ec-components/widgets-ec/price-ec/price-ec.component.mjs +73 -10
  21. package/esm2022/lib/ec-services/filters.service.mjs +45 -12
  22. package/esm2022/lib/ec-services/pagination.service.mjs +8 -7
  23. package/esm2022/lib/ec-services/product-detail.service.mjs +50 -35
  24. package/esm2022/lib/ec-services/products.service.mjs +18 -4
  25. package/esm2022/lib/interfaces/filter.mjs +1 -1
  26. package/esm2022/lib/interfaces/pagination.mjs +1 -1
  27. package/fesm2022/ng-easycommerce-v18.mjs +504 -166
  28. package/fesm2022/ng-easycommerce-v18.mjs.map +1 -1
  29. package/lib/classes/filters/price_range-filter.d.ts +26 -0
  30. package/lib/ec-components/cart-ec/cart-ec.component.d.ts +1 -0
  31. package/lib/ec-components/checkout-ec/dataform-ec/dataform-ec.component.d.ts +1 -0
  32. package/lib/ec-components/filters-ec/filters-ec.component.d.ts +7 -22
  33. package/lib/ec-components/index.d.ts +1 -0
  34. package/lib/ec-components/price-range-filter/price-range-filter.component.d.ts +37 -0
  35. package/lib/ec-components/product-detail-ec/product-detail-ec.component.d.ts +4 -0
  36. package/lib/ec-components/product-ec/product-ec.component.d.ts +1 -0
  37. package/lib/ec-components/widgets-ec/price-ec/price-ec.component.d.ts +30 -10
  38. package/lib/ec-services/filters.service.d.ts +6 -1
  39. package/lib/ec-services/product-detail.service.d.ts +4 -4
  40. package/lib/ec-services/products.service.d.ts +1 -0
  41. package/lib/interfaces/filter.d.ts +1 -1
  42. package/lib/interfaces/pagination.d.ts +2 -0
  43. package/package.json +1 -1
@@ -49,10 +49,6 @@ export class CollectionEcComponent {
49
49
  type: params['type'] || null,
50
50
  value: params['value'] || null
51
51
  };
52
- //console.log(ready,"actualizar")
53
- console.log(paginationSettings);
54
- /* console.log(paginationSettings) */
55
- // console.log('params',queryParams["search"])
56
52
  this._productsService.getProductsForFilter(paginationSettings, queryParams["search"]);
57
53
  }
58
54
  });
@@ -70,4 +66,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
70
66
  }], ctorParameters: () => [], propDecorators: { optionsFilters: [{
71
67
  type: Input
72
68
  }] } });
73
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbi1lYy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1lYXN5Y29tbWVyY2UtdjE4L3NyYy9saWIvZWMtY29tcG9uZW50cy9jb2xsZWN0aW9uLWVjL2NvbGxlY3Rpb24tZWMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctZWFzeWNvbW1lcmNlLXYxOC9zcmMvbGliL2VjLWNvbXBvbmVudHMvY29sbGVjdGlvbi1lYy9jb2xsZWN0aW9uLWVjLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBbUIsU0FBUyxFQUFnQixNQUFNLEVBQUUsS0FBSyxFQUFVLFdBQVcsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFckgsT0FBTyxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUUsY0FBYyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2pHLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFtQyxNQUFNLE1BQU0sQ0FBQztBQUV0RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFRcEQsTUFBTSxPQUFPLHFCQUFxQjtJQUV2QixnQkFBZ0IsR0FBb0IsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFBO0lBQzNELFlBQVksR0FBbUIsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFBO0lBQ3JELGVBQWUsR0FBbUIsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFBO0lBRTNELE9BQU8sR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQTtJQUN6QywyQ0FBMkM7SUFDcEMsWUFBWSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFBO0lBQzVDLFNBQVMsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFBO0lBQ2xELHVCQUF1QjtJQUVoQixXQUFXLEdBQWdCLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQTtJQUM5QyxTQUFTLEdBQXlCLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFBO0lBRTlELFFBQVEsR0FBYyxFQUFFLENBQUM7SUFDekIsY0FBYyxHQUFvQixFQUFFLENBQUM7SUFDckMsT0FBTyxHQUFXLEtBQUssQ0FBQztJQUN4QixhQUFhLEdBQUcsTUFBTSxDQUFTLENBQUMsQ0FBQyxDQUFBO0lBQ2hDLE1BQU0sR0FBRyxLQUFLLENBQUM7SUFFZCxjQUFjLEdBQWlCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFFaEQsWUFBWSxHQUFZLEVBQUUsQ0FBQztJQUVuQixlQUFlLEdBQW1CLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQTtJQUN0RCxRQUFRLEdBQXlCLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDO0lBQ2xFLE1BQU0sR0FBd0IsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUM7SUFFekQsTUFBTSxDQUFTO0lBRXZCLFFBQVE7UUFDSixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFBO0lBQzFCLENBQUM7SUFFRCx3REFBd0Q7SUFDaEQsS0FBSyxHQUFHLENBQUMsQ0FBQztJQUNWLFVBQVUsR0FBUSxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUE7SUFFN0M7UUFDQyxJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQ3hDLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFBO1FBRXJCLENBQUM7SUFDRixDQUFDO0lBRUQsV0FBVztRQUNWLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1lBQzFELElBQUksRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxFQUFFLEVBQUU7Z0JBQy9CLE1BQU0sa0JBQWtCLEdBQXNCO29CQUM3QyxNQUFNLEVBQUMsSUFBSTtvQkFDWCxLQUFLLEVBQUMsRUFBRTtvQkFDUixJQUFJLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUk7b0JBQzVCLEtBQUssRUFBRSxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksSUFBSTtpQkFDOUIsQ0FBQTtnQkFDRCxpQ0FBaUM7Z0JBQ2pDLE9BQU8sQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsQ0FBQTtnQkFDL0IscUNBQXFDO2dCQUNyQyw4Q0FBOEM7Z0JBQzlDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxvQkFBb0IsQ0FBQyxrQkFBa0IsRUFBRSxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztZQUN2RixDQUFDO1NBQ0QsQ0FBQyxDQUFBO0lBQ0gsQ0FBQztJQUVELFFBQVE7UUFDUCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztRQUNkLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLEVBQUUsQ0FBQTtJQUMzQyxDQUFDO3dHQXBFUyxxQkFBcUI7NEZBQXJCLHFCQUFxQiwySENoQmxDLHNiQWdCQTs7NEZEQWEscUJBQXFCO2tCQVBqQyxTQUFTOytCQUNDLG1CQUFtQixjQUNqQixJQUFJLFdBQ1AsQ0FBQyx1QkFBdUIsQ0FBQzt3REF5QnpCLGNBQWM7c0JBQXRCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhZnRlck5leHRSZW5kZXIsIENvbXBvbmVudCwgSG9zdExpc3RlbmVyLCBpbmplY3QsIElucHV0LCBPbkluaXQsIFBMQVRGT1JNX0lELCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRGVmYXVsdEZpbHRlciwgRmlsdGVyVHlwZSwgUGFnaW5hdGlvblNldHRpbmdzLCBQcm9kdWN0IH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlLCBGaWx0ZXJzU2VydmljZSwgT3B0aW9uc1NlcnZpY2UsIFByb2R1Y3RzU2VydmljZSB9IGZyb20gJy4uLy4uL2VjLXNlcnZpY2VzJztcclxuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBDb3JlQ29uc3RhbnRzU2VydmljZSB9IGZyb20gJy4uLy4uL2NvbnN0YW50cyc7XHJcbmltcG9ydCB7IGNvbWJpbmVMYXRlc3QsIGZvcmtKb2luLCBtYXAsIE9ic2VydmFibGUsIHRha2UgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgRmlsdGVyIH0gZnJvbSAnLi4vLi4vY2xhc3Nlcyc7XHJcbmltcG9ydCB7IEluZmluaXRlU2Nyb2xsRGlyZWN0aXZlIH0gZnJvbSBcIm5neC1pbmZpbml0ZS1zY3JvbGxcIjtcclxuaW1wb3J0IHsgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5AQ29tcG9uZW50KHtcclxuXHRzZWxlY3RvcjogJ2xpYi1jb2xsZWN0aW9uLWVjJyxcclxuXHRzdGFuZGFsb25lOiB0cnVlLFxyXG5cdGltcG9ydHM6IFtJbmZpbml0ZVNjcm9sbERpcmVjdGl2ZV0sXHJcblx0dGVtcGxhdGVVcmw6ICcuL2NvbGxlY3Rpb24tZWMuY29tcG9uZW50Lmh0bWwnLFxyXG5cdHN0eWxlVXJsOiAnLi9jb2xsZWN0aW9uLWVjLmNvbXBvbmVudC5zY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQ29sbGVjdGlvbkVjQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcblx0cHJvdGVjdGVkIF9wcm9kdWN0c1NlcnZpY2U6IFByb2R1Y3RzU2VydmljZSA9IGluamVjdChQcm9kdWN0c1NlcnZpY2UpXHJcblx0cHJvdGVjdGVkIF9hY3RpdmVSb3V0ZTogQWN0aXZhdGVkUm91dGUgPSBpbmplY3QoQWN0aXZhdGVkUm91dGUpXHJcblx0cHJvdGVjdGVkIF9vcHRpb25zU2VydmljZTogT3B0aW9uc1NlcnZpY2UgPSBpbmplY3QoT3B0aW9uc1NlcnZpY2UpXHJcblxyXG5cdHB1YmxpYyBwYXJhbXMkID0gdGhpcy5fYWN0aXZlUm91dGUucGFyYW1zXHJcblx0Ly9wdWJsaWMgcmVhZHkgPSB0aGlzLl9vcHRpb25zU2VydmljZS5yZWFkeVxyXG5cdHB1YmxpYyBxdWVyeVBhcmFtcyQgPSB0aGlzLl9hY3RpdmVSb3V0ZS5xdWVyeVBhcmFtc1xyXG5cdHB1YmxpYyBwcm9kdWN0cyQgPSB0aGlzLl9wcm9kdWN0c1NlcnZpY2UucHJvZHVjdHMkXHJcblx0Ly9wdWJsaWMgcHJvZHVjdHMkID0gW11cclxuXHJcblx0cHVibGljIGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSA9IGluamVjdChBdXRoU2VydmljZSlcclxuXHRwdWJsaWMgY29uc3RhbnN0OiBDb3JlQ29uc3RhbnRzU2VydmljZSA9IGluamVjdChDb3JlQ29uc3RhbnRzU2VydmljZSlcclxuXHJcblx0cHVibGljIHByb2R1Y3RzOiBQcm9kdWN0W10gPSBbXTtcclxuXHRwdWJsaWMgZGVmYXVsdEZpbHRlcnM6IERlZmF1bHRGaWx0ZXJbXSA9IFtdO1xyXG5cdHB1YmxpYyBsb2FkaW5nOkJvb2xlYW4gPSBmYWxzZTtcclxuXHRwdWJsaWMgY291bnRQcm9kdWN0cyA9IHNpZ25hbDxudW1iZXI+KDApXHJcblx0cHJpdmF0ZSBsb2FkZWQgPSBmYWxzZTtcclxuXHJcblx0QElucHV0KCkgb3B0aW9uc0ZpbHRlcnM6IEZpbHRlclR5cGVbXSA9IFsnYWxsJ107XHJcblxyXG5cdGZpbHRlcnNfc29ydDpGaWx0ZXJbXSA9IFtdO1xyXG5cclxuXHRwcml2YXRlIF9maWx0ZXJzU2VydmljZTogRmlsdGVyc1NlcnZpY2UgPSBpbmplY3QoRmlsdGVyc1NlcnZpY2UpXHJcbiAgICBwdWJsaWMgZmlsdGVycyQ6IE9ic2VydmFibGU8RmlsdGVyW10+ID0gdGhpcy5fZmlsdGVyc1NlcnZpY2UuZmlsdGVycyQ7XHJcblx0cHVibGljIHJlYWR5JDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IHRoaXMuX2ZpbHRlcnNTZXJ2aWNlLnJlYWR5JDtcclxuXHJcblx0cHJpdmF0ZSB3aW5kb3c/OldpbmRvdztcclxuXHJcblx0bmdPbkluaXQoKTogdm9pZCB7XHJcblx0ICAgXHR0aGlzLmdldFByb2R1Y3RzKCk7XHJcblx0XHR0aGlzLndpbmRvdz8uc2Nyb2xsKDAsIDApXHJcblx0fVxyXG5cclxuXHQvL3Byb3RlY3RlZCByZWFkb25seSBxdWVzdGlvbnMgPSBzaWduYWw8UXVlc3Rpb25bXT4oW10pO1xyXG5cdHByaXZhdGUgdG90YWwgPSAwO1xyXG5cdHByaXZhdGUgcGxhdGZvcm1JZDogYW55ID0gaW5qZWN0KFBMQVRGT1JNX0lEKVxyXG5cclxuXHRjb25zdHJ1Y3RvcigpIHtcclxuXHRcdGlmIChpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpKSB7XHJcblx0XHRcdHRoaXMud2luZG93ID0gd2luZG93XHJcblx0XHRcdFxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Z2V0UHJvZHVjdHMoKTogdm9pZCB7XHJcblx0XHRjb21iaW5lTGF0ZXN0KFt0aGlzLnBhcmFtcyQsIHRoaXMucXVlcnlQYXJhbXMkXSkuc3Vic2NyaWJlKHtcclxuXHRcdFx0bmV4dDogKFtwYXJhbXMsIHF1ZXJ5UGFyYW1zXSkgPT4ge1xyXG5cdFx0XHRcdGNvbnN0IHBhZ2luYXRpb25TZXR0aW5nczpQYWdpbmF0aW9uU2V0dGluZ3MgPSB7XHJcblx0XHRcdFx0XHRsYXRlc3Q6dHJ1ZSxcclxuXHRcdFx0XHRcdGxpbWl0OjEwLFxyXG5cdFx0XHRcdFx0dHlwZTogcGFyYW1zWyd0eXBlJ10gfHwgbnVsbCxcclxuXHRcdFx0XHRcdHZhbHVlOiBwYXJhbXNbJ3ZhbHVlJ10gfHwgbnVsbFxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQvL2NvbnNvbGUubG9nKHJlYWR5LFwiYWN0dWFsaXphclwiKVxyXG5cdFx0XHRcdGNvbnNvbGUubG9nKHBhZ2luYXRpb25TZXR0aW5ncylcclxuXHRcdFx0XHQvKiBjb25zb2xlLmxvZyhwYWdpbmF0aW9uU2V0dGluZ3MpICovXHJcblx0XHRcdFx0Ly8gY29uc29sZS5sb2coJ3BhcmFtcycscXVlcnlQYXJhbXNbXCJzZWFyY2hcIl0pXHJcblx0XHRcdFx0dGhpcy5fcHJvZHVjdHNTZXJ2aWNlLmdldFByb2R1Y3RzRm9yRmlsdGVyKHBhZ2luYXRpb25TZXR0aW5ncywgcXVlcnlQYXJhbXNbXCJzZWFyY2hcIl0pO1xyXG5cdFx0XHR9XHJcblx0XHR9KVxyXG5cdH1cclxuXHJcblx0b25TY3JvbGwoKSB7XHJcblx0XHR0aGlzLmxvYWRpbmcgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMuX3Byb2R1Y3RzU2VydmljZS51cGRhdGVQcm9kdWN0cygpXHJcblx0ICB9XHJcblxyXG59XHJcbiIsIjxzZWN0aW9uIGNsYXNzPVwiY29udGFpbmVyLXhsIG1iLTVcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJyb3cgbS0wIHAtMFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLW5vbmUgZC1sZy1ibG9jayBjb2wtM1wiPlxyXG4gICAgICAgICAgICA8IS0tRmlsdHJvcy0tPlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIGNvbC1sZy05IG10LTIgcC0wXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb250YWluZXJcIj5cclxuICAgICAgICAgICAgICAgIDwhLS0gQGZvcihbJ2EnLCAnYicsICdjJywgJ2QnXSBhcyBwcm9kdWN0KXtcclxuXHJcbiAgICAgICAgICAgICAgICB9IC0tPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICA8L2Rpdj5cclxuPC9zZWN0aW9uPlxyXG4iXX0=
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbi1lYy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1lYXN5Y29tbWVyY2UtdjE4L3NyYy9saWIvZWMtY29tcG9uZW50cy9jb2xsZWN0aW9uLWVjL2NvbGxlY3Rpb24tZWMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctZWFzeWNvbW1lcmNlLXYxOC9zcmMvbGliL2VjLWNvbXBvbmVudHMvY29sbGVjdGlvbi1lYy9jb2xsZWN0aW9uLWVjLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBbUIsU0FBUyxFQUFnQixNQUFNLEVBQUUsS0FBSyxFQUFVLFdBQVcsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFckgsT0FBTyxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUUsY0FBYyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2pHLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxFQUFtQyxNQUFNLE1BQU0sQ0FBQztBQUV0RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFRcEQsTUFBTSxPQUFPLHFCQUFxQjtJQUV2QixnQkFBZ0IsR0FBb0IsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFBO0lBQzNELFlBQVksR0FBbUIsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFBO0lBQ3JELGVBQWUsR0FBbUIsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFBO0lBRTNELE9BQU8sR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQTtJQUN6QywyQ0FBMkM7SUFDcEMsWUFBWSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFBO0lBQzVDLFNBQVMsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFBO0lBQ2xELHVCQUF1QjtJQUVoQixXQUFXLEdBQWdCLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQTtJQUM5QyxTQUFTLEdBQXlCLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFBO0lBRTlELFFBQVEsR0FBYyxFQUFFLENBQUM7SUFDekIsY0FBYyxHQUFvQixFQUFFLENBQUM7SUFDckMsT0FBTyxHQUFXLEtBQUssQ0FBQztJQUN4QixhQUFhLEdBQUcsTUFBTSxDQUFTLENBQUMsQ0FBQyxDQUFBO0lBQ2hDLE1BQU0sR0FBRyxLQUFLLENBQUM7SUFFZCxjQUFjLEdBQWlCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFFaEQsWUFBWSxHQUFZLEVBQUUsQ0FBQztJQUVuQixlQUFlLEdBQW1CLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQTtJQUN0RCxRQUFRLEdBQXlCLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDO0lBQ2xFLE1BQU0sR0FBd0IsSUFBSSxDQUFDLGVBQWUsQ0FBQyxNQUFNLENBQUM7SUFFekQsTUFBTSxDQUFTO0lBRXZCLFFBQVE7UUFDSixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFBO0lBQzFCLENBQUM7SUFFRCx3REFBd0Q7SUFDaEQsS0FBSyxHQUFHLENBQUMsQ0FBQztJQUNWLFVBQVUsR0FBUSxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUE7SUFFN0M7UUFDQyxJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQ3hDLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFBO1FBRXJCLENBQUM7SUFDRixDQUFDO0lBRUQsV0FBVztRQUNWLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1lBQzFELElBQUksRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxFQUFFLEVBQUU7Z0JBQy9CLE1BQU0sa0JBQWtCLEdBQXNCO29CQUM3QyxNQUFNLEVBQUMsSUFBSTtvQkFDWCxLQUFLLEVBQUMsRUFBRTtvQkFDUixJQUFJLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUk7b0JBQzVCLEtBQUssRUFBRSxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksSUFBSTtpQkFDOUIsQ0FBQTtnQkFDRCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsb0JBQW9CLENBQUMsa0JBQWtCLEVBQUUsV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7WUFDdkYsQ0FBQztTQUNELENBQUMsQ0FBQTtJQUNILENBQUM7SUFFRCxRQUFRO1FBQ1AsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDZCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxFQUFFLENBQUE7SUFDM0MsQ0FBQzt3R0FoRVMscUJBQXFCOzRGQUFyQixxQkFBcUIsMkhDaEJsQyxzYkFnQkE7OzRGREFhLHFCQUFxQjtrQkFQakMsU0FBUzsrQkFDQyxtQkFBbUIsY0FDakIsSUFBSSxXQUNQLENBQUMsdUJBQXVCLENBQUM7d0RBeUJ6QixjQUFjO3NCQUF0QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYWZ0ZXJOZXh0UmVuZGVyLCBDb21wb25lbnQsIEhvc3RMaXN0ZW5lciwgaW5qZWN0LCBJbnB1dCwgT25Jbml0LCBQTEFURk9STV9JRCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERlZmF1bHRGaWx0ZXIsIEZpbHRlclR5cGUsIFBhZ2luYXRpb25TZXR0aW5ncywgUHJvZHVjdCB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xyXG5pbXBvcnQgeyBBdXRoU2VydmljZSwgRmlsdGVyc1NlcnZpY2UsIE9wdGlvbnNTZXJ2aWNlLCBQcm9kdWN0c1NlcnZpY2UgfSBmcm9tICcuLi8uLi9lYy1zZXJ2aWNlcyc7XHJcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgQ29yZUNvbnN0YW50c1NlcnZpY2UgfSBmcm9tICcuLi8uLi9jb25zdGFudHMnO1xyXG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0LCBmb3JrSm9pbiwgbWFwLCBPYnNlcnZhYmxlLCB0YWtlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEZpbHRlciB9IGZyb20gJy4uLy4uL2NsYXNzZXMnO1xyXG5pbXBvcnQgeyBJbmZpbml0ZVNjcm9sbERpcmVjdGl2ZSB9IGZyb20gXCJuZ3gtaW5maW5pdGUtc2Nyb2xsXCI7XHJcbmltcG9ydCB7IGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuQENvbXBvbmVudCh7XHJcblx0c2VsZWN0b3I6ICdsaWItY29sbGVjdGlvbi1lYycsXHJcblx0c3RhbmRhbG9uZTogdHJ1ZSxcclxuXHRpbXBvcnRzOiBbSW5maW5pdGVTY3JvbGxEaXJlY3RpdmVdLFxyXG5cdHRlbXBsYXRlVXJsOiAnLi9jb2xsZWN0aW9uLWVjLmNvbXBvbmVudC5odG1sJyxcclxuXHRzdHlsZVVybDogJy4vY29sbGVjdGlvbi1lYy5jb21wb25lbnQuc2NzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIENvbGxlY3Rpb25FY0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG5cdHByb3RlY3RlZCBfcHJvZHVjdHNTZXJ2aWNlOiBQcm9kdWN0c1NlcnZpY2UgPSBpbmplY3QoUHJvZHVjdHNTZXJ2aWNlKVxyXG5cdHByb3RlY3RlZCBfYWN0aXZlUm91dGU6IEFjdGl2YXRlZFJvdXRlID0gaW5qZWN0KEFjdGl2YXRlZFJvdXRlKVxyXG5cdHByb3RlY3RlZCBfb3B0aW9uc1NlcnZpY2U6IE9wdGlvbnNTZXJ2aWNlID0gaW5qZWN0KE9wdGlvbnNTZXJ2aWNlKVxyXG5cclxuXHRwdWJsaWMgcGFyYW1zJCA9IHRoaXMuX2FjdGl2ZVJvdXRlLnBhcmFtc1xyXG5cdC8vcHVibGljIHJlYWR5ID0gdGhpcy5fb3B0aW9uc1NlcnZpY2UucmVhZHlcclxuXHRwdWJsaWMgcXVlcnlQYXJhbXMkID0gdGhpcy5fYWN0aXZlUm91dGUucXVlcnlQYXJhbXNcclxuXHRwdWJsaWMgcHJvZHVjdHMkID0gdGhpcy5fcHJvZHVjdHNTZXJ2aWNlLnByb2R1Y3RzJFxyXG5cdC8vcHVibGljIHByb2R1Y3RzJCA9IFtdXHJcblxyXG5cdHB1YmxpYyBhdXRoU2VydmljZTogQXV0aFNlcnZpY2UgPSBpbmplY3QoQXV0aFNlcnZpY2UpXHJcblx0cHVibGljIGNvbnN0YW5zdDogQ29yZUNvbnN0YW50c1NlcnZpY2UgPSBpbmplY3QoQ29yZUNvbnN0YW50c1NlcnZpY2UpXHJcblxyXG5cdHB1YmxpYyBwcm9kdWN0czogUHJvZHVjdFtdID0gW107XHJcblx0cHVibGljIGRlZmF1bHRGaWx0ZXJzOiBEZWZhdWx0RmlsdGVyW10gPSBbXTtcclxuXHRwdWJsaWMgbG9hZGluZzpCb29sZWFuID0gZmFsc2U7XHJcblx0cHVibGljIGNvdW50UHJvZHVjdHMgPSBzaWduYWw8bnVtYmVyPigwKVxyXG5cdHByaXZhdGUgbG9hZGVkID0gZmFsc2U7XHJcblxyXG5cdEBJbnB1dCgpIG9wdGlvbnNGaWx0ZXJzOiBGaWx0ZXJUeXBlW10gPSBbJ2FsbCddO1xyXG5cclxuXHRmaWx0ZXJzX3NvcnQ6RmlsdGVyW10gPSBbXTtcclxuXHJcblx0cHJpdmF0ZSBfZmlsdGVyc1NlcnZpY2U6IEZpbHRlcnNTZXJ2aWNlID0gaW5qZWN0KEZpbHRlcnNTZXJ2aWNlKVxyXG4gICAgcHVibGljIGZpbHRlcnMkOiBPYnNlcnZhYmxlPEZpbHRlcltdPiA9IHRoaXMuX2ZpbHRlcnNTZXJ2aWNlLmZpbHRlcnMkO1xyXG5cdHB1YmxpYyByZWFkeSQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gPSB0aGlzLl9maWx0ZXJzU2VydmljZS5yZWFkeSQ7XHJcblxyXG5cdHByaXZhdGUgd2luZG93PzpXaW5kb3c7XHJcblxyXG5cdG5nT25Jbml0KCk6IHZvaWQge1xyXG5cdCAgIFx0dGhpcy5nZXRQcm9kdWN0cygpO1xyXG5cdFx0dGhpcy53aW5kb3c/LnNjcm9sbCgwLCAwKVxyXG5cdH1cclxuXHJcblx0Ly9wcm90ZWN0ZWQgcmVhZG9ubHkgcXVlc3Rpb25zID0gc2lnbmFsPFF1ZXN0aW9uW10+KFtdKTtcclxuXHRwcml2YXRlIHRvdGFsID0gMDtcclxuXHRwcml2YXRlIHBsYXRmb3JtSWQ6IGFueSA9IGluamVjdChQTEFURk9STV9JRClcclxuXHJcblx0Y29uc3RydWN0b3IoKSB7XHJcblx0XHRpZiAoaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xyXG5cdFx0XHR0aGlzLndpbmRvdyA9IHdpbmRvd1xyXG5cdFx0XHRcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdGdldFByb2R1Y3RzKCk6IHZvaWQge1x0XHRcclxuXHRcdGNvbWJpbmVMYXRlc3QoW3RoaXMucGFyYW1zJCwgdGhpcy5xdWVyeVBhcmFtcyRdKS5zdWJzY3JpYmUoe1xyXG5cdFx0XHRuZXh0OiAoW3BhcmFtcywgcXVlcnlQYXJhbXNdKSA9PiB7XHRcdFx0XHRcclxuXHRcdFx0XHRjb25zdCBwYWdpbmF0aW9uU2V0dGluZ3M6UGFnaW5hdGlvblNldHRpbmdzID0ge1xyXG5cdFx0XHRcdFx0bGF0ZXN0OnRydWUsXHJcblx0XHRcdFx0XHRsaW1pdDoxMCxcclxuXHRcdFx0XHRcdHR5cGU6IHBhcmFtc1sndHlwZSddIHx8IG51bGwsXHJcblx0XHRcdFx0XHR2YWx1ZTogcGFyYW1zWyd2YWx1ZSddIHx8IG51bGxcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0dGhpcy5fcHJvZHVjdHNTZXJ2aWNlLmdldFByb2R1Y3RzRm9yRmlsdGVyKHBhZ2luYXRpb25TZXR0aW5ncywgcXVlcnlQYXJhbXNbXCJzZWFyY2hcIl0pO1xyXG5cdFx0XHR9XHJcblx0XHR9KVxyXG5cdH1cclxuXHJcblx0b25TY3JvbGwoKSB7XHJcblx0XHR0aGlzLmxvYWRpbmcgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMuX3Byb2R1Y3RzU2VydmljZS51cGRhdGVQcm9kdWN0cygpXHJcblx0ICB9XHJcblxyXG59XHJcbiIsIjxzZWN0aW9uIGNsYXNzPVwiY29udGFpbmVyLXhsIG1iLTVcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJyb3cgbS0wIHAtMFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLW5vbmUgZC1sZy1ibG9jayBjb2wtM1wiPlxyXG4gICAgICAgICAgICA8IS0tRmlsdHJvcy0tPlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIGNvbC1sZy05IG10LTIgcC0wXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb250YWluZXJcIj5cclxuICAgICAgICAgICAgICAgIDwhLS0gQGZvcihbJ2EnLCAnYicsICdjJywgJ2QnXSBhcyBwcm9kdWN0KXtcclxuXHJcbiAgICAgICAgICAgICAgICB9IC0tPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICA8L2Rpdj5cclxuPC9zZWN0aW9uPlxyXG4iXX0=
@@ -26,10 +26,10 @@ export class CouponEcComponent {
26
26
  }
27
27
  setLoading = () => this.loading = true;
28
28
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CouponEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
29
- 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 | uppercase}}</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.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.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.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "pipe", type: UpperCasePipe, name: "uppercase" }] });
29
+ 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.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.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.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }] });
30
30
  }
31
31
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CouponEcComponent, decorators: [{
32
32
  type: Component,
33
- 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 | uppercase}}</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>" }]
33
+ 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>" }]
34
34
  }] });
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY291cG9uLWVjLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWVhc3ljb21tZXJjZS12MTgvc3JjL2xpYi9lYy1jb21wb25lbnRzL2NvdXBvbi1lYy9jb3Vwb24tZWMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctZWFzeWNvbW1lcmNlLXYxOC9zcmMvbGliL2VjLWNvbXBvbmVudHMvY291cG9uLWVjL2NvdXBvbi1lYy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFaEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQVM3QyxNQUFNLE9BQU8saUJBQWlCO0lBQ3JCLFlBQVksR0FBZ0IsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ2pELE9BQU8sR0FBb0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUE7SUFDcEQsV0FBVyxHQUFXLEVBQUUsQ0FBQztJQUN6QixNQUFNLEdBQUcsS0FBSyxDQUFDO0lBQ2YsT0FBTyxHQUFHLEtBQUssQ0FBQztJQUV2QixTQUFTO1FBQ1IsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQTtJQUNwRSxDQUFDO0lBRUQsV0FBVztRQUNWLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3RCLE9BQU8sdUJBQXVCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUN2RCxDQUFDO2FBQU0sQ0FBQztZQUNQLE9BQU8sS0FBSyxDQUFDO1FBQ2QsQ0FBQztJQUNGLENBQUM7SUFFRCxZQUFZO1FBQ1gsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsQ0FBQTtJQUNqQyxDQUFDO0lBRUQsVUFBVSxHQUFHLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO3dHQXZCM0IsaUJBQWlCOzRGQUFqQixpQkFBaUIseUVDYjlCLG92QkFlTSxxREROSyxTQUFTLDZDQUFFLFdBQVcsbWlDQUFFLGFBQWE7OzRGQUluQyxpQkFBaUI7a0JBUDdCLFNBQVM7K0JBQ0MsZUFBZSxjQUNiLElBQUksV0FDUCxDQUFDLFNBQVMsRUFBRSxXQUFXLEVBQUUsYUFBYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ2FydFNlcnZpY2UgfSBmcm9tICcuLi8uLi9lYy1zZXJ2aWNlcyc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQXN5bmNQaXBlLCBVcHBlckNhc2VQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuXHRzZWxlY3RvcjogJ2FwcC1jb3Vwb24tZWMnLFxyXG5cdHN0YW5kYWxvbmU6IHRydWUsXHJcblx0aW1wb3J0czogW0FzeW5jUGlwZSwgRm9ybXNNb2R1bGUsIFVwcGVyQ2FzZVBpcGVdLFxyXG5cdHRlbXBsYXRlVXJsOiAnLi9jb3Vwb24tZWMuY29tcG9uZW50Lmh0bWwnLFxyXG5cdHN0eWxlVXJsOiAnLi9jb3Vwb24tZWMuY29tcG9uZW50LnNjc3MnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDb3Vwb25FY0NvbXBvbmVudCB7XHJcblx0cHJpdmF0ZSBfY2FydFNlcnZpY2U6IENhcnRTZXJ2aWNlID0gaW5qZWN0KENhcnRTZXJ2aWNlKTtcclxuXHRwdWJsaWMgY291cG9uJDogT2JzZXJ2YWJsZTxhbnk+ID0gdGhpcy5fY2FydFNlcnZpY2UuY291cG9uJFxyXG5cdHB1YmxpYyBjb3Vwb25WYWx1ZTogc3RyaW5nID0gXCJcIjtcclxuXHRwdWJsaWMgYXBsaWVkID0gZmFsc2U7XHJcblx0cHVibGljIGxvYWRpbmcgPSBmYWxzZTtcclxuXHJcblx0YWRkQ291cG9uKCkge1xyXG5cdFx0dGhpcy52YWxpZENvdXBvbigpICYmIHRoaXMuX2NhcnRTZXJ2aWNlLmFkZENvdXBvbih0aGlzLmNvdXBvblZhbHVlKVxyXG5cdH1cclxuXHJcblx0dmFsaWRDb3Vwb24oKTogYm9vbGVhbiB7XHJcblx0XHRpZiAodGhpcy5jb3Vwb25WYWx1ZSkge1xyXG5cdFx0XHRyZXR1cm4gL14oW0EtWmEtelxcLTAtOV0qKVxcdyskLy50ZXN0KHRoaXMuY291cG9uVmFsdWUpO1xyXG5cdFx0fSBlbHNlIHtcclxuXHRcdFx0cmV0dXJuIGZhbHNlO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0cmVtb3ZlQ291cG9uKCkge1xyXG5cdFx0dGhpcy5fY2FydFNlcnZpY2UucmVtb3ZlQ291cG9uKClcclxuXHR9XHJcblx0XHJcblx0c2V0TG9hZGluZyA9ICgpID0+IHRoaXMubG9hZGluZyA9IHRydWU7XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImJvcmRlciBib3JkZXItYm90dG9tIGNhcmQgcC0yXCI+XHJcbiAgICA8cCBjbGFzcz1cInctMTAwIG1iLTFcIj5Dw7NkaWdvIGRlIGRlc2N1ZW50bzwvcD5cclxuICAgIFxyXG4gICAgQGlmKGNvdXBvbiQgfCBhc3luYzsgYXMgY291cG9uKXtcclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuIGFsaWduLWl0ZW1zLWNlbnRlciBweC0xXCI+XHJcbiAgICAgICAgPHAgY2xhc3M9XCJtLTBcIj57e2NvdXBvbi5jb2RlIHwgdXBwZXJjYXNlfX08L3A+XHJcbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0blwiIChjbGljayk9XCJyZW1vdmVDb3Vwb24oKVwiPjxpIGNsYXNzPVwiYmkgYmktdHJhc2hcIj48L2k+PC9idXR0b24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICB9QGVsc2Uge1xyXG4gICAgICAgPGZvcm0gY2xhc3M9XCJjYW1wbyBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgPGlucHV0IHR5cGU9J3RleHQnIGNsYXNzPVwiZWxjYW1wb1wiIFsobmdNb2RlbCldPVwiY291cG9uVmFsdWVcIiBuYW1lPVwiY291cG9uX3ZhbHVlXCIgLz5cclxuICAgICAgICA8aW5wdXQgdHlwZT0nYnV0dG9uJyAgdmFsdWU9J1ZBTElEQVInIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IGJ0blNlbmQgcHktMVwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCIgYWRkQ291cG9uKClcIiAvPlxyXG4gICAgPC9mb3JtPiBcclxuICAgIH1cclxuPC9kaXY+Il19
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY291cG9uLWVjLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWVhc3ljb21tZXJjZS12MTgvc3JjL2xpYi9lYy1jb21wb25lbnRzL2NvdXBvbi1lYy9jb3Vwb24tZWMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctZWFzeWNvbW1lcmNlLXYxOC9zcmMvbGliL2VjLWNvbXBvbmVudHMvY291cG9uLWVjL2NvdXBvbi1lYy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFaEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQVM3QyxNQUFNLE9BQU8saUJBQWlCO0lBQ3JCLFlBQVksR0FBZ0IsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ2pELE9BQU8sR0FBb0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUE7SUFDcEQsV0FBVyxHQUFXLEVBQUUsQ0FBQztJQUN6QixNQUFNLEdBQUcsS0FBSyxDQUFDO0lBQ2YsT0FBTyxHQUFHLEtBQUssQ0FBQztJQUV2QixTQUFTO1FBQ1IsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQTtJQUNwRSxDQUFDO0lBRUQsV0FBVztRQUNWLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3RCLE9BQU8sdUJBQXVCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUN2RCxDQUFDO2FBQU0sQ0FBQztZQUNQLE9BQU8sS0FBSyxDQUFDO1FBQ2QsQ0FBQztJQUNGLENBQUM7SUFFRCxZQUFZO1FBQ1gsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsQ0FBQTtJQUNqQyxDQUFDO0lBRUQsVUFBVSxHQUFHLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO3dHQXZCM0IsaUJBQWlCOzRGQUFqQixpQkFBaUIseUVDYjlCLHd1QkFlTSxxREROSyxTQUFTLDZDQUFFLFdBQVc7OzRGQUlwQixpQkFBaUI7a0JBUDdCLFNBQVM7K0JBQ0MsZUFBZSxjQUNiLElBQUksV0FDUCxDQUFDLFNBQVMsRUFBRSxXQUFXLEVBQUUsYUFBYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ2FydFNlcnZpY2UgfSBmcm9tICcuLi8uLi9lYy1zZXJ2aWNlcyc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQXN5bmNQaXBlLCBVcHBlckNhc2VQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuXHRzZWxlY3RvcjogJ2FwcC1jb3Vwb24tZWMnLFxyXG5cdHN0YW5kYWxvbmU6IHRydWUsXHJcblx0aW1wb3J0czogW0FzeW5jUGlwZSwgRm9ybXNNb2R1bGUsIFVwcGVyQ2FzZVBpcGVdLFxyXG5cdHRlbXBsYXRlVXJsOiAnLi9jb3Vwb24tZWMuY29tcG9uZW50Lmh0bWwnLFxyXG5cdHN0eWxlVXJsOiAnLi9jb3Vwb24tZWMuY29tcG9uZW50LnNjc3MnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDb3Vwb25FY0NvbXBvbmVudCB7XHJcblx0cHJpdmF0ZSBfY2FydFNlcnZpY2U6IENhcnRTZXJ2aWNlID0gaW5qZWN0KENhcnRTZXJ2aWNlKTtcclxuXHRwdWJsaWMgY291cG9uJDogT2JzZXJ2YWJsZTxhbnk+ID0gdGhpcy5fY2FydFNlcnZpY2UuY291cG9uJFxyXG5cdHB1YmxpYyBjb3Vwb25WYWx1ZTogc3RyaW5nID0gXCJcIjtcclxuXHRwdWJsaWMgYXBsaWVkID0gZmFsc2U7XHJcblx0cHVibGljIGxvYWRpbmcgPSBmYWxzZTtcclxuXHJcblx0YWRkQ291cG9uKCkge1xyXG5cdFx0dGhpcy52YWxpZENvdXBvbigpICYmIHRoaXMuX2NhcnRTZXJ2aWNlLmFkZENvdXBvbih0aGlzLmNvdXBvblZhbHVlKVxyXG5cdH1cclxuXHJcblx0dmFsaWRDb3Vwb24oKTogYm9vbGVhbiB7XHJcblx0XHRpZiAodGhpcy5jb3Vwb25WYWx1ZSkge1xyXG5cdFx0XHRyZXR1cm4gL14oW0EtWmEtelxcLTAtOV0qKVxcdyskLy50ZXN0KHRoaXMuY291cG9uVmFsdWUpO1xyXG5cdFx0fSBlbHNlIHtcclxuXHRcdFx0cmV0dXJuIGZhbHNlO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0cmVtb3ZlQ291cG9uKCkge1xyXG5cdFx0dGhpcy5fY2FydFNlcnZpY2UucmVtb3ZlQ291cG9uKClcclxuXHR9XHJcblx0XHJcblx0c2V0TG9hZGluZyA9ICgpID0+IHRoaXMubG9hZGluZyA9IHRydWU7XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImJvcmRlciBib3JkZXItYm90dG9tIGNhcmQgcC0yXCI+XHJcbiAgICA8cCBjbGFzcz1cInctMTAwIG1iLTFcIj5Dw7NkaWdvIGRlIGRlc2N1ZW50bzwvcD5cclxuICAgIFxyXG4gICAgQGlmKGNvdXBvbiQgfCBhc3luYzsgYXMgY291cG9uKXtcclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuIGFsaWduLWl0ZW1zLWNlbnRlciBweC0xXCI+XHJcbiAgICAgICAgPHAgY2xhc3M9XCJtLTBcIj57e2NvdXBvbi5jb2RlfX08L3A+XHJcbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0blwiIChjbGljayk9XCJyZW1vdmVDb3Vwb24oKVwiPjxpIGNsYXNzPVwiYmkgYmktdHJhc2hcIj48L2k+PC9idXR0b24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICB9QGVsc2Uge1xyXG4gICAgICAgPGZvcm0gY2xhc3M9XCJjYW1wbyBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgPGlucHV0IHR5cGU9J3RleHQnIGNsYXNzPVwiZWxjYW1wb1wiIFsobmdNb2RlbCldPVwiY291cG9uVmFsdWVcIiBuYW1lPVwiY291cG9uX3ZhbHVlXCIgLz5cclxuICAgICAgICA8aW5wdXQgdHlwZT0nYnV0dG9uJyAgdmFsdWU9J1ZBTElEQVInIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IGJ0blNlbmQgcHktMVwiXHJcbiAgICAgICAgICAgIChjbGljayk9XCIgYWRkQ291cG9uKClcIiAvPlxyXG4gICAgPC9mb3JtPiBcclxuICAgIH1cclxuPC9kaXY+Il19
@@ -1,9 +1,10 @@
1
- import { Component, inject, Input, ViewChild } from '@angular/core';
1
+ import { Component, inject, Input } from '@angular/core';
2
2
  import { FiltersService } from '../../ec-services';
3
3
  import { Filter } from '../../classes';
4
4
  import { ProductsService } from '../../ec-services/products.service';
5
5
  import { CoreConstantsService } from '../../constants';
6
6
  import { Router } from '@angular/router';
7
+ import { PriceRangeFilter } from '../../classes/filters/price_range-filter';
7
8
  import * as i0 from "@angular/core";
8
9
  export class FiltersEcComponent {
9
10
  _filtersService = inject(FiltersService);
@@ -13,9 +14,8 @@ export class FiltersEcComponent {
13
14
  filters = [];
14
15
  filter$ = this._filtersService.filters$;
15
16
  setSelect;
16
- rangeMinRef;
17
- rangeMaxRef;
18
- priceGapPercentage = 0.1;
17
+ ngOnInit() {
18
+ }
19
19
  constructor() {
20
20
  this._filtersService.filters$.subscribe((filters) => {
21
21
  this.filters = filters;
@@ -23,7 +23,7 @@ export class FiltersEcComponent {
23
23
  }
24
24
  getSpecificFilter(type) {
25
25
  const filter = this.filters.find(f => f.type() === type);
26
- if (!(filter instanceof Filter)) {
26
+ if (type === 'price_range' && filter && !(filter instanceof Filter)) {
27
27
  console.error(`Expected a Filter instance but got`, filter);
28
28
  }
29
29
  return filter || null;
@@ -47,8 +47,6 @@ export class FiltersEcComponent {
47
47
  console.error('filter.setSelected is not a function. Filter might not be an instance of the expected class:', filter);
48
48
  return;
49
49
  }
50
- console.log("Setting selected filter:", filter);
51
- console.log("Setting selected element:", selected);
52
50
  try {
53
51
  // this._filtersService.setFilterSelected(filter, selected);
54
52
  if (selected.path) {
@@ -59,33 +57,12 @@ export class FiltersEcComponent {
59
57
  console.error("Error while setting selected filter:", error);
60
58
  }
61
59
  }
62
- /**
63
- * Redondea al múltiplo de 'step' respetando el redondeo entero:
64
- * - Mínimo: redondea hacia abajo.
65
- * - Máximo: redondea hacia arriba.
66
- */
67
- onRangeChange(event, type, filter) {
68
- const input = event.target;
69
- let value = parseInt(input.value, 10);
70
- value = this.roundToNearest(value, 5, type, filter);
71
- this.updateFilterPrices(type, value, filter, this.priceGapPercentage);
72
- }
73
- roundToNearest(value, step, type, filter) {
74
- let rounded = Math.round(value / step) * step;
75
- if (type === 'max' && rounded < filter.maxPrice) {
76
- rounded = Math.ceil(value / step) * step;
77
- }
78
- if (type === 'min' && rounded > filter.minPrice) {
79
- rounded = Math.floor(value / step) * step;
80
- }
81
- return rounded;
82
- }
83
60
  uniqueSelection(filter, filterChild) {
84
61
  // Buscar si hay un filtro de tipo PriceRangeFilter en la lista de filtros
85
- // const priceRangeFilter = this.filters.find(f => f instanceof PriceRangeFilter);
86
- // if (priceRangeFilter) {
87
- // priceRangeFilter.reset();
88
- // }
62
+ const priceRangeFilter = this.filters.find(f => f instanceof PriceRangeFilter);
63
+ if (priceRangeFilter) {
64
+ priceRangeFilter.reset();
65
+ }
89
66
  filter.data.forEach(filterElement => {
90
67
  if (filterElement.selected) {
91
68
  filterElement.selected = false;
@@ -97,74 +74,44 @@ export class FiltersEcComponent {
97
74
  });
98
75
  });
99
76
  }
100
- /**
101
- * Actualiza los valores del filtro permitiendo que un input empuje al otro.
102
- */
103
- updateFilterPrices(type, value, filter, priceGap) {
104
- const globalMin = filter.minPrice ?? 0;
105
- const globalMax = filter.maxPrice;
106
- let currentMin = filter.currentMinPrice ?? globalMin;
107
- let currentMax = filter.currentMaxPrice ?? globalMax;
108
- if (type === 'min') {
109
- let newMin = Math.min(Math.max(value, globalMin), globalMax);
110
- if (newMin + priceGap > currentMax) {
111
- let newMaxCandidate = newMin + priceGap;
112
- if (newMaxCandidate <= globalMax) {
113
- currentMax = newMaxCandidate;
114
- }
115
- else {
116
- newMin = globalMax - priceGap;
117
- }
118
- }
119
- filter.currentMinPrice = newMin;
120
- filter.currentMaxPrice = currentMax;
121
- }
122
- else if (type === 'max') {
123
- let newMax = Math.max(Math.min(value, globalMax), globalMin);
124
- if (newMax - priceGap < currentMin) {
125
- let newMinCandidate = newMax - priceGap;
126
- if (newMinCandidate >= globalMin) {
127
- currentMin = newMinCandidate;
128
- }
129
- else {
130
- newMax = globalMin + priceGap;
131
- }
132
- }
133
- filter.currentMaxPrice = newMax;
134
- filter.currentMinPrice = currentMin;
135
- }
136
- }
137
- // Método para actualizar los valores de precio seleccionados
138
- // updatePriceRange(min: number, max: number, priceFilter: PriceRangeFilter) {
139
- // priceFilter.setSelected(min, max);
140
- // this.setSelect(priceFilter);
141
- // }
142
- // Métodos para actualizar la barra del filtro por precio
143
- calculateLeftPercentage(currentMinPrice, minPrice, maxPrice) {
144
- const minVal = Math.max(minPrice, Math.min(currentMinPrice ?? minPrice, maxPrice));
145
- return Math.max(0, Math.min(((minVal - minPrice) / (maxPrice - minPrice)) * 100, 100));
146
- }
147
- calculateRightPercentage(currentMaxPrice, minPrice, maxPrice) {
148
- const maxVal = Math.max(minPrice, Math.min(currentMaxPrice ?? maxPrice, maxPrice));
149
- return Math.max(0, Math.min(100 - ((maxVal - minPrice) / (maxPrice - minPrice)) * 100, 100));
150
- }
77
+ // close = () => {
78
+ // this.document.getElementById("filtros").classList.remove('in');
79
+ // return true;
80
+ // };
81
+ close = () => {
82
+ // this.consts.mobile()
83
+ // ? this.document.getElementById("accordionExample").classList.remove('show')
84
+ // : this.document.getElementById(accordion_id).classList.remove('show');
85
+ return true;
86
+ };
151
87
  scrollUp = () => {
152
88
  window.scroll(0, 0);
153
89
  return true;
154
90
  };
91
+ hasAppliedFilters() {
92
+ return this.filters?.some((filter) => {
93
+ if (filter.type?.() === 'price_range') {
94
+ const minSet = filter.currentMinPrice !== null && filter.currentMinPrice !== 0;
95
+ const maxSet = filter.currentMaxPrice !== null && filter.currentMaxPrice !== filter.maxPrice;
96
+ if (minSet || maxSet) {
97
+ return true;
98
+ }
99
+ }
100
+ return filter.data?.some((filterElement) => {
101
+ if (Array.isArray(filterElement.children)) {
102
+ return filterElement.children.some((child) => child.selected);
103
+ }
104
+ return filterElement.selected;
105
+ });
106
+ }) ?? false;
107
+ }
155
108
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FiltersEcComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
156
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FiltersEcComponent, isStandalone: true, selector: "lib-filters-ec", inputs: { setSelect: "setSelect" }, viewQueries: [{ propertyName: "rangeMinRef", first: true, predicate: ["rangeMin"], descendants: true }, { propertyName: "rangeMaxRef", first: true, predicate: ["rangeMax"], descendants: true }], ngImport: i0, template: "<p>filters-ec works!</p>\r\n", styles: [""] });
109
+ 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: [""] });
157
110
  }
158
111
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FiltersEcComponent, decorators: [{
159
112
  type: Component,
160
113
  args: [{ selector: 'lib-filters-ec', standalone: true, imports: [], template: "<p>filters-ec works!</p>\r\n" }]
161
114
  }], ctorParameters: () => [], propDecorators: { setSelect: [{
162
115
  type: Input
163
- }], rangeMinRef: [{
164
- type: ViewChild,
165
- args: ['rangeMin']
166
- }], rangeMaxRef: [{
167
- type: ViewChild,
168
- args: ['rangeMax']
169
116
  }] } });
170
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVycy1lYy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1lYXN5Y29tbWVyY2UtdjE4L3NyYy9saWIvZWMtY29tcG9uZW50cy9maWx0ZXJzLWVjL2ZpbHRlcnMtZWMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctZWFzeWNvbW1lcmNlLXYxOC9zcmMvbGliL2VjLWNvbXBvbmVudHMvZmlsdGVycy1lYy9maWx0ZXJzLWVjLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBYyxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdkMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFTekMsTUFBTSxPQUFPLGtCQUFrQjtJQUN0QixlQUFlLEdBQW1CLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUN6RCxnQkFBZ0IsR0FBb0IsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQzVELFVBQVUsR0FBeUIsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFDaEUsTUFBTSxHQUFXLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNqQyxPQUFPLEdBQWEsRUFBRSxDQUFDO0lBQ3ZCLE9BQU8sR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQztJQUN0QyxTQUFTLENBQU07SUFFRCxXQUFXLENBQWM7SUFDekIs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LGtCQUFrQjs0RkFBbEIsa0JBQWtCLGlUQ2YvQiw4QkFDQTs7NEZEY2Esa0JBQWtCO2tCQVA5QixTQUFTOytCQUNDLGdCQUFnQixjQUNkLElBQUksV0FDUCxFQUFFO3dEQVdGLFNBQVM7c0JBQWpCLEtBQUs7Z0JBRWlCLFdBQVc7c0JBQWpDLFNBQVM7dUJBQUMsVUFBVTtnQkFDRSxXQUFXO3NCQUFqQyxTQUFTO3VCQUFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGluamVjdCwgSW5wdXQsIEVsZW1lbnRSZWYsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGaWx0ZXJzU2VydmljZSB9IGZyb20gJy4uLy4uL2VjLXNlcnZpY2VzJztcclxuaW1wb3J0IHsgRmlsdGVyIH0gZnJvbSAnLi4vLi4vY2xhc3Nlcyc7XHJcbmltcG9ydCB7IEZpbHRlckVsZW1lbnQsIEZpbHRlclR5cGUsIFBhZ2luYXRpb25TZXR0aW5ncyB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMnO1xyXG5pbXBvcnQgeyBQcm9kdWN0c1NlcnZpY2UgfSBmcm9tICcuLi8uLi9lYy1zZXJ2aWNlcy9wcm9kdWN0cy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ29yZUNvbnN0YW50c1NlcnZpY2UgfSBmcm9tICcuLi8uLi9jb25zdGFudHMnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5cclxuQENvbXBvbmVudCh7XHJcblx0c2VsZWN0b3I6ICdsaWItZmlsdGVycy1lYycsXHJcblx0c3RhbmRhbG9uZTogdHJ1ZSxcclxuXHRpbXBvcnRzOiBbXSxcclxuXHR0ZW1wbGF0ZVVybDogJy4vZmlsdGVycy1lYy5jb21wb25lbnQuaHRtbCcsXHJcblx0c3R5bGVVcmw6ICcuL2ZpbHRlcnMtZWMuY29tcG9uZW50LnNjc3MnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGaWx0ZXJzRWNDb21wb25lbnQge1xyXG5cdHByaXZhdGUgX2ZpbHRlcnNTZXJ2aWNlOiBGaWx0ZXJzU2VydmljZSA9IGluamVjdChGaWx0ZXJzU2VydmljZSk7XHJcblx0cHJpdmF0ZSBfcHJvZHVjdHNTZXJ2aWNlOiBQcm9kdWN0c1NlcnZpY2UgPSBpbmplY3QoUHJvZHVjdHNTZXJ2aWNlKTtcclxuXHRwcml2YXRlIF9jb25zdGFudHM6IENvcmVDb25zdGFudHNTZXJ2aWNlID0gaW5qZWN0KENvcmVDb25zdGFudHNTZXJ2aWNlKTtcclxuXHRwcml2YXRlIHJvdXRlcjogUm91dGVyID0gaW5qZWN0KFJvdXRlcik7XHJcblx0cHVibGljIGZpbHRlcnM6IEZpbHRlcltdID0gW107XHJcblx0cHVibGljIGZpbHRlciQgPSB0aGlzLl9maWx0ZXJzU2VydmljZS5maWx0ZXJzJDtcclxuXHRASW5wdXQoKSBzZXRTZWxlY3Q6IGFueTtcclxuXHJcblx0QFZpZXdDaGlsZCgncmFuZ2VNaW4nKSByYW5nZU1pblJlZiE6IEVsZW1lbnRSZWY7XHJcblx0QFZpZXdDaGlsZCgncmFuZ2VNYXgnKSByYW5nZU1heFJlZiE6IEVsZW1lbnRSZWY7XHJcblxyXG5cdHByaWNlR2FwUGVyY2VudGFnZSA9IDAuMTtcclxuXHJcblxyXG5cdGNvbnN0cnVjdG9yKCkge1xyXG5cdFx0dGhpcy5fZmlsdGVyc1NlcnZpY2UuZmlsdGVycyQuc3Vic2NyaWJlKChmaWx0ZXJzOiBGaWx0ZXJbXSkgPT4ge1xyXG5cdFx0XHR0aGlzLmZpbHRlcnMgPSBmaWx0ZXJzO1xyXG5cdFx0fSk7XHJcblx0fVxyXG5cclxuXHRnZXRTcGVjaWZpY0ZpbHRlcih0eXBlOiBGaWx0ZXJUeXBlKTogRmlsdGVyIHwgbnVsbCB7XHJcblx0XHRjb25zdCBmaWx0ZXIgPSB0aGlzLmZpbHRlcnMuZmluZChmID0+IGYudHlwZSgpID09PSB0eXBlKTtcclxuXHRcdGlmICghKGZpbHRlciBpbnN0YW5jZW9mIEZpbHRlcikpIHtcclxuXHRcdFx0Y29uc29sZS5lcnJvcihgRXhwZWN0ZWQgYSBGaWx0ZXIgaW5zdGFuY2UgYnV0IGdvdGAsIGZpbHRlcik7XHJcblx0XHR9XHJcblx0XHRyZXR1cm4gZmlsdGVyIHx8IG51bGw7XHJcblx0fVxyXG5cclxuXHQvKk9idGllbmUgZWwgZmlsdHJvIGVsZWdpZG8gZW4gZWwgc2VsZWN0LCBsbyBwYXNhIGFsIHNldFNlbGVjdFxyXG5cdHBhcmEgcXVlIHNlIG1hcnF1ZSBzZWxlY2Npb25hZG8qL1xyXG5cdG9uU2VsZWN0KGV2ZW50OiBhbnksIGZpbHRlcjogRmlsdGVyRWxlbWVudFtdIHwgbnVsbCkge1xyXG5cdFx0Y29uc29sZS5sb2coZmlsdGVyKVxyXG5cdFx0LyogIGNvbnN0IHNlbGVjdGVkT3B0aW9uID0gZmlsdGVyXHJcblx0XHRcdCAuZmxhdE1hcChjYXRlZ29yeSA9PiBjYXRlZ29yeS5jaGlsZHJlbilcclxuXHRcdFx0IC5maWx0ZXIob3B0aW9uID0+IG9wdGlvbj8uY29kZSA9PT0gZXZlbnQudGFyZ2V0LnZhbHVlKVxyXG5cdFx0XHQgLnBvcCgpXHJcblx0XHQgc2VsZWN0ZWRPcHRpb24gJiYgdGhpcy5fZmlsdGVyc1NlcnZpY2Uuc2V0RmlsdGVyU2VsZWN0ZWQodGhpcy5maWx0ZXJzWzBdLCBzZWxlY3RlZE9wdGlvbikgKi9cclxuXHR9XHJcblxyXG5cdHNldFNlbGVjdGVkKGZpbHRlcjogRmlsdGVyIHwgbnVsbCwgc2VsZWN0ZWQ6IEZpbHRlckVsZW1lbnQgfCBudWxsKSB7XHJcblx0XHRpZiAoIWZpbHRlciB8fCAhc2VsZWN0ZWQpIHtcclxuXHRcdFx0Y29uc29sZS5lcnJvcignRmlsdGVyIG9yIHNlbGVjdGVkIGVsZW1lbnQgaXMgdW5kZWZpbmVkOicsIHsgZmlsdGVyLCBzZWxlY3RlZCB9KTtcclxuXHRcdFx0cmV0dXJuO1xyXG5cdFx0fVxyXG5cclxuXHRcdGlmICh0eXBlb2YgKGZpbHRlciBhcyBhbnkpLnNldFNlbGVjdGVkICE9PSAnZnVuY3Rpb24nKSB7XHJcblx0XHRcdGNvbnNvbGUuZXJyb3IoJ2ZpbHRlci5zZXRTZWxlY3RlZCBpcyBub3QgYSBmdW5jdGlvbi4gRmlsdGVyIG1pZ2h0IG5vdCBiZSBhbiBpbnN0YW5jZSBvZiB0aGUgZXhwZWN0ZWQgY2xhc3M6JywgZmlsdGVyKTtcclxuXHRcdFx0cmV0dXJuO1xyXG5cdFx0fVxyXG5cclxuXHRcdGNvbnNvbGUubG9nKFwiU2V0dGluZyBzZWxlY3RlZCBmaWx0ZXI6XCIsIGZpbHRlcik7XHJcblx0XHRjb25zb2xlLmxvZyhcIlNldHRpbmcgc2VsZWN0ZWQgZWxlbWVudDpcIiwgc2VsZWN0ZWQpO1xyXG5cclxuXHRcdHRyeSB7XHJcblx0XHRcdC8vIHRoaXMuX2ZpbHRlcnNTZXJ2aWNlLnNldEZpbHRlclNlbGVjdGVkKGZpbHRlciwgc2VsZWN0ZWQpO1xyXG5cdFx0XHRpZiAoc2VsZWN0ZWQucGF0aCkge1xyXG5cdFx0XHRcdHRoaXMucm91dGVyLm5hdmlnYXRlKFtzZWxlY3RlZC5wYXRoXSk7XHJcblx0XHRcdH1cclxuXHJcblxyXG5cdFx0fSBjYXRjaCAoZXJyb3IpIHtcclxuXHRcdFx0Y29uc29sZS5lcnJvcihcIkVycm9yIHdoaWxlIHNldHRpbmcgc2VsZWN0ZWQgZmlsdGVyOlwiLCBlcnJvcik7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQvKipcclxuXHQqIFJlZG9uZGVhIGFsIG3Dumx0aXBsbyBkZSAnc3RlcCcgcmVzcGV0YW5kbyBlbCByZWRvbmRlbyBlbnRlcm86XHJcblx0KiAtIE3DrW5pbW86IHJlZG9uZGVhIGhhY2lhIGFiYWpvLlxyXG5cdCogLSBNw6F4aW1vOiByZWRvbmRlYSBoYWNpYSBhcnJpYmEuXHJcblx0Ki9cclxuXHRvblJhbmdlQ2hhbmdlKGV2ZW50OiBFdmVudCwgdHlwZTogJ21pbicgfCAnbWF4JywgZmlsdGVyOiB7IG1pblByaWNlOiBudW1iZXI7IG1heFByaWNlOiBudW1iZXI7IGN1cnJlbnRNaW5QcmljZT86IG51bWJlcjsgY3VycmVudE1heFByaWNlPzogbnVtYmVyIH0pIHtcclxuXHRcdGNvbnN0IGlucHV0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQ7XHJcblx0XHRsZXQgdmFsdWUgPSBwYXJzZUludChpbnB1dC52YWx1ZSwgMTApO1xyXG5cdFx0dmFsdWUgPSB0aGlzLnJvdW5kVG9OZWFyZXN0KHZhbHVlLCA1LCB0eXBlLCBmaWx0ZXIpO1xyXG5cclxuXHRcdHRoaXMudXBkYXRlRmlsdGVyUHJpY2VzKHR5cGUsIHZhbHVlLCBmaWx0ZXIsIHRoaXMucHJpY2VHYXBQZXJjZW50YWdlKTtcclxuXHR9XHJcblxyXG5cdHJvdW5kVG9OZWFyZXN0KHZhbHVlOiBudW1iZXIsIHN0ZXA6IG51bWJlciwgdHlwZTogJ21pbicgfCAnbWF4JywgZmlsdGVyOiBhbnkpOiBudW1iZXIge1xyXG5cdFx0bGV0IHJvdW5kZWQgPSBNYXRoLnJvdW5kKHZhbHVlIC8gc3RlcCkgKiBzdGVwO1xyXG5cdFx0aWYgKHR5cGUgPT09ICdtYXgnICYmIHJvdW5kZWQgPCBmaWx0ZXIubWF4UHJpY2UpIHtcclxuXHRcdFx0cm91bmRlZCA9IE1hdGguY2VpbCh2YWx1ZSAvIHN0ZXApICogc3RlcDtcclxuXHRcdH1cclxuXHRcdGlmICh0eXBlID09PSAnbWluJyAmJiByb3VuZGVkID4gZmlsdGVyLm1pblByaWNlKSB7XHJcblx0XHRcdHJvdW5kZWQgPSBNYXRoLmZsb29yKHZhbHVlIC8gc3RlcCkgKiBzdGVwO1xyXG5cdFx0fVxyXG5cdFx0cmV0dXJuIHJvdW5kZWQ7XHJcblx0fVxyXG5cdHVuaXF1ZVNlbGVjdGlvbihmaWx0ZXI6IHsgZGF0YTogYW55W107IH0sIGZpbHRlckNoaWxkOiBhbnkpIHtcclxuXHRcdC8vIEJ1c2NhciBzaSBoYXkgdW4gZmlsdHJvIGRlIHRpcG8gUHJpY2VSYW5nZUZpbHRlciBlbiBsYSBsaXN0YSBkZSBmaWx0cm9zXHJcblx0XHQvLyBjb25zdCBwcmljZVJhbmdlRmlsdGVyID0gdGhpcy5maWx0ZXJzLmZpbmQoZiA9PiBmIGluc3RhbmNlb2YgUHJpY2VSYW5nZUZpbHRlcik7XHJcblxyXG5cdFx0Ly8gaWYgKHByaWNlUmFuZ2VGaWx0ZXIpIHtcclxuXHRcdC8vIFx0cHJpY2VSYW5nZUZpbHRlci5yZXNldCgpO1xyXG5cdFx0Ly8gfVxyXG5cdFx0ZmlsdGVyLmRhdGEuZm9yRWFjaChmaWx0ZXJFbGVtZW50ID0+IHtcclxuXHRcdFx0aWYgKGZpbHRlckVsZW1lbnQuc2VsZWN0ZWQpIHtcclxuXHRcdFx0XHRmaWx0ZXJFbGVtZW50LnNlbGVjdGVkID0gZmFsc2U7XHJcblx0XHRcdH1cclxuXHRcdFx0ZmlsdGVyRWxlbWVudC5jaGlsZHJlbi5mb3JFYWNoKChmaWx0ZXJDaGlsZHJlbjogRmlsdGVyRWxlbWVudCkgPT4ge1xyXG5cdFx0XHRcdGlmIChmaWx0ZXJDaGlsZHJlbiAhPSBmaWx0ZXJDaGlsZCAmJiBmaWx0ZXJDaGlsZHJlbi5zZWxlY3RlZCkge1xyXG5cdFx0XHRcdFx0ZmlsdGVyQ2hpbGRyZW4uc2VsZWN0ZWQgPSBmYWxzZTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH0pO1xyXG5cdFx0fSk7XHJcblx0fVxyXG5cclxuXHQvKipcclxuICAgKiBBY3R1YWxpemEgbG9zIHZhbG9yZXMgZGVsIGZpbHRybyBwZXJtaXRpZW5kbyBxdWUgdW4gaW5wdXQgZW1wdWplIGFsIG90cm8uXHJcbiAgKi9cclxuXHR1cGRhdGVGaWx0ZXJQcmljZXModHlwZTogJ21pbicgfCAnbWF4JywgdmFsdWU6IG51bWJlciwgZmlsdGVyOiBhbnksIHByaWNlR2FwOiBudW1iZXIpIHtcclxuXHRcdGNvbnN0IGdsb2JhbE1pbiA9IGZpbHRlci5taW5QcmljZSA/PyAwO1xyXG5cdFx0Y29uc3QgZ2xvYmFsTWF4ID0gZmlsdGVyLm1heFByaWNlO1xyXG5cclxuXHRcdGxldCBjdXJyZW50TWluID0gZmlsdGVyLmN1cnJlbnRNaW5QcmljZSA/PyBnbG9iYWxNaW47XHJcblx0XHRsZXQgY3VycmVudE1heCA9IGZpbHRlci5jdXJyZW50TWF4UHJpY2UgPz8gZ2xvYmFsTWF4O1xyXG5cclxuXHRcdGlmICh0eXBlID09PSAnbWluJykge1xyXG5cdFx0XHRsZXQgbmV3TWluID0gTWF0aC5taW4oTWF0aC5tYXgodmFsdWUsIGdsb2JhbE1pbiksIGdsb2JhbE1heCk7XHJcblx0XHRcdGlmIChuZXdNaW4gKyBwcmljZUdhcCA+IGN1cnJlbnRNYXgpIHtcclxuXHRcdFx0XHRsZXQgbmV3TWF4Q2FuZGlkYXRlID0gbmV3TWluICsgcHJpY2VHYXA7XHJcblx0XHRcdFx0aWYgKG5ld01heENhbmRpZGF0ZSA8PSBnbG9iYWxNYXgpIHtcclxuXHRcdFx0XHRcdGN1cnJlbnRNYXggPSBuZXdNYXhDYW5kaWRhdGU7XHJcblx0XHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHRcdG5ld01pbiA9IGdsb2JhbE1heCAtIHByaWNlR2FwO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHRmaWx0ZXIuY3VycmVudE1pblByaWNlID0gbmV3TWluO1xyXG5cdFx0XHRmaWx0ZXIuY3VycmVudE1heFByaWNlID0gY3VycmVudE1heDtcclxuXHRcdH0gZWxzZSBpZiAodHlwZSA9PT0gJ21heCcpIHtcclxuXHRcdFx0bGV0IG5ld01heCA9IE1hdGgubWF4KE1hdGgubWluKHZhbHVlLCBnbG9iYWxNYXgpLCBnbG9iYWxNaW4pO1xyXG5cdFx0XHRpZiAobmV3TWF4IC0gcHJpY2VHYXAgPCBjdXJyZW50TWluKSB7XHJcblx0XHRcdFx0bGV0IG5ld01pbkNhbmRpZGF0ZSA9IG5ld01heCAtIHByaWNlR2FwO1xyXG5cdFx0XHRcdGlmIChuZXdNaW5DYW5kaWRhdGUgPj0gZ2xvYmFsTWluKSB7XHJcblx0XHRcdFx0XHRjdXJyZW50TWluID0gbmV3TWluQ2FuZGlkYXRlO1xyXG5cdFx0XHRcdH0gZWxzZSB7XHJcblx0XHRcdFx0XHRuZXdNYXggPSBnbG9iYWxNaW4gKyBwcmljZUdhcDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0ZmlsdGVyLmN1cnJlbnRNYXhQcmljZSA9IG5ld01heDtcclxuXHRcdFx0ZmlsdGVyLmN1cnJlbnRNaW5QcmljZSA9IGN1cnJlbnRNaW47XHJcblx0XHR9XHJcblx0fVxyXG5cdC8vIE3DqXRvZG8gcGFyYSBhY3R1YWxpemFyIGxvcyB2YWxvcmVzIGRlIHByZWNpbyBzZWxlY2Npb25hZG9zXHJcblx0Ly8gdXBkYXRlUHJpY2VSYW5nZShtaW46IG51bWJlciwgbWF4OiBudW1iZXIsIHByaWNlRmlsdGVyOiBQcmljZVJhbmdlRmlsdGVyKSB7XHJcblx0Ly8gXHRwcmljZUZpbHRlci5zZXRTZWxlY3RlZChtaW4sIG1heCk7XHJcblx0Ly8gXHR0aGlzLnNldFNlbGVjdChwcmljZUZpbHRlcik7XHJcblx0Ly8gfVxyXG5cclxuXHQvLyBNw6l0b2RvcyBwYXJhIGFjdHVhbGl6YXIgbGEgYmFycmEgZGVsIGZpbHRybyBwb3IgcHJlY2lvXHJcblx0Y2FsY3VsYXRlTGVmdFBlcmNlbnRhZ2UoY3VycmVudE1pblByaWNlOiBudW1iZXIsIG1pblByaWNlOiBudW1iZXIsIG1heFByaWNlOiBudW1iZXIpOiBudW1iZXIge1xyXG5cdFx0Y29uc3QgbWluVmFsID0gTWF0aC5tYXgobWluUHJpY2UsIE1hdGgubWluKGN1cnJlbnRNaW5QcmljZSA/PyBtaW5QcmljZSwgbWF4UHJpY2UpKTtcclxuXHRcdHJldHVybiBNYXRoLm1heCgwLCBNYXRoLm1pbigoKG1pblZhbCAtIG1pblByaWNlKSAvIChtYXhQcmljZSAtIG1pblByaWNlKSkgKiAxMDAsIDEwMCkpO1xyXG5cdH1cclxuXHJcblx0Y2FsY3VsYXRlUmlnaHRQZXJjZW50YWdlKGN1cnJlbnRNYXhQcmljZTogbnVtYmVyLCBtaW5QcmljZTogbnVtYmVyLCBtYXhQcmljZTogbnVtYmVyKTogbnVtYmVyIHtcclxuXHRcdGNvbnN0IG1heFZhbCA9IE1hdGgubWF4KG1pblByaWNlLCBNYXRoLm1pbihjdXJyZW50TWF4UHJpY2UgPz8gbWF4UHJpY2UsIG1heFByaWNlKSk7XHJcblx0XHRyZXR1cm4gTWF0aC5tYXgoMCwgTWF0aC5taW4oMTAwIC0gKChtYXhWYWwgLSBtaW5QcmljZSkgLyAobWF4UHJpY2UgLSBtaW5QcmljZSkpICogMTAwLCAxMDApKTtcclxuXHR9XHJcblxyXG5cdHNjcm9sbFVwID0gKCkgPT4ge1xyXG5cdFx0d2luZG93LnNjcm9sbCgwLCAwKTtcclxuXHRcdHJldHVybiB0cnVlXHJcblx0fVxyXG5cclxufVxyXG4iLCI8cD5maWx0ZXJzLWVjIHdvcmtzITwvcD5cclxuIl19
117
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVycy1lYy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1lYXN5Y29tbWVyY2UtdjE4L3NyYy9saWIvZWMtY29tcG9uZW50cy9maWx0ZXJzLWVjL2ZpbHRlcnMtZWMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctZWFzeWNvbW1lcmNlLXYxOC9zcmMvbGliL2VjLWNvbXBvbmVudHMvZmlsdGVycy1lYy9maWx0ZXJzLWVjLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBeUIsTUFBTSxlQUFlLENBQUM7QUFDaEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFdkMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQzs7QUFVNUUsTUFBTSxPQUFPLGtCQUFrQjtJQUVuQixlQUFlLEdBQW1CLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUN6RCxnQkFBZ0IsR0FBb0IsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQzVELFVBQVUsR0FBeUIsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFDaEUsTUFBTSxHQUFXLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNqQyxPQUFPLEdBQWEsRUFBRSxDQUFDO0lBQ3ZCLE9BQU8sR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQztJ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bEIsa0JBQWtCLDhHQ2pCL0IsOEJBQ0E7OzRGRGdCYSxrQkFBa0I7a0JBUDlCLFNBQVM7K0JBQ0ksZ0JBQWdCLGNBQ2QsSUFBSSxXQUNQLEVBQUU7d0RBWUYsU0FBUztzQkFBakIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgaW5qZWN0LCBJbnB1dCwgRWxlbWVudFJlZiwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZpbHRlcnNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vZWMtc2VydmljZXMnO1xyXG5pbXBvcnQgeyBGaWx0ZXIgfSBmcm9tICcuLi8uLi9jbGFzc2VzJztcclxuaW1wb3J0IHsgRmlsdGVyRWxlbWVudCwgRmlsdGVyVHlwZSwgUGFnaW5hdGlvblNldHRpbmdzIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XHJcbmltcG9ydCB7IFByb2R1Y3RzU2VydmljZSB9IGZyb20gJy4uLy4uL2VjLXNlcnZpY2VzL3Byb2R1Y3RzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDb3JlQ29uc3RhbnRzU2VydmljZSB9IGZyb20gJy4uLy4uL2NvbnN0YW50cyc7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IFByaWNlUmFuZ2VGaWx0ZXIgfSBmcm9tICcuLi8uLi9jbGFzc2VzL2ZpbHRlcnMvcHJpY2VfcmFuZ2UtZmlsdGVyJztcclxuXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnbGliLWZpbHRlcnMtZWMnLFxyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICAgIGltcG9ydHM6IFtdLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL2ZpbHRlcnMtZWMuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmw6ICcuL2ZpbHRlcnMtZWMuY29tcG9uZW50LnNjc3MnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGaWx0ZXJzRWNDb21wb25lbnQge1xyXG5cclxuICAgIHByaXZhdGUgX2ZpbHRlcnNTZXJ2aWNlOiBGaWx0ZXJzU2VydmljZSA9IGluamVjdChGaWx0ZXJzU2VydmljZSk7XHJcbiAgICBwcml2YXRlIF9wcm9kdWN0c1NlcnZpY2U6IFByb2R1Y3RzU2VydmljZSA9IGluamVjdChQcm9kdWN0c1NlcnZpY2UpO1xyXG4gICAgcHJpdmF0ZSBfY29uc3RhbnRzOiBDb3JlQ29uc3RhbnRzU2VydmljZSA9IGluamVjdChDb3JlQ29uc3RhbnRzU2VydmljZSk7XHJcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyID0gaW5qZWN0KFJvdXRlcik7XHJcbiAgICBwdWJsaWMgZmlsdGVyczogRmlsdGVyW10gPSBbXTtcclxuICAgIHB1YmxpYyBmaWx0ZXIkID0gdGhpcy5fZmlsdGVyc1NlcnZpY2UuZmlsdGVycyQ7XHJcbiAgICBASW5wdXQoKSBzZXRTZWxlY3Q6IGFueTtcclxuXHJcbiAgICBuZ09uSW5pdCgpIHtcclxuXHJcbiAgICB9XHJcblxyXG4gICAgY29uc3RydWN0b3IoKSB7XHJcbiAgICAgICAgdGhpcy5fZmlsdGVyc1NlcnZpY2UuZmlsdGVycyQuc3Vic2NyaWJlKChmaWx0ZXJzOiBGaWx0ZXJbXSkgPT4geyAgICAgICAgICAgIFxyXG4gICAgICAgICAgICB0aGlzLmZpbHRlcnMgPSBmaWx0ZXJzO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgLyoqIDEpIFBhcmEgY3VhbmRvIG1lIHBpZGVuICdwcmljZV9yYW5nZScsIGRldnVlbHZvIFByaWNlUmFuZ2VGaWx0ZXIgKi9cclxuICAgIHB1YmxpYyBnZXRTcGVjaWZpY0ZpbHRlcih0eXBlOiAncHJpY2VfcmFuZ2UnKTogUHJpY2VSYW5nZUZpbHRlciB8IG51bGw7XHJcblxyXG4gICAgLyoqIDIpIFBhcmEgY3VhbHF1aWVyIG90cm8gRmlsdGVyVHlwZSwgZGV2dWVsdm8gRmlsdGVyICovXHJcbiAgICBwdWJsaWMgZ2V0U3BlY2lmaWNGaWx0ZXIodHlwZTogRmlsdGVyVHlwZSk6IEZpbHRlciB8IG51bGw7XHJcbiAgICBwdWJsaWMgZ2V0U3BlY2lmaWNGaWx0ZXIodHlwZTogRmlsdGVyVHlwZSk6IEZpbHRlciB8IG51bGwge1xyXG4gICAgICAgIGNvbnN0IGZpbHRlciA9IHRoaXMuZmlsdGVycy5maW5kKGYgPT4gZi50eXBlKCkgPT09IHR5cGUpO1xyXG4gICAgICAgIGlmICh0eXBlID09PSAncHJpY2VfcmFuZ2UnICYmIGZpbHRlciAmJiAhKGZpbHRlciBpbnN0YW5jZW9mIEZpbHRlcikpIHtcclxuICAgICAgICAgICAgY29uc29sZS5lcnJvcihgRXhwZWN0ZWQgYSBGaWx0ZXIgaW5zdGFuY2UgYnV0IGdvdGAsIGZpbHRlcik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBmaWx0ZXIgfHwgbnVsbDtcclxuICAgIH1cclxuXHJcbiAgICAvKk9idGllbmUgZWwgZmlsdHJvIGVsZWdpZG8gZW4gZWwgc2VsZWN0LCBsbyBwYXNhIGFsIHNldFNlbGVjdFxyXG4gICAgcGFyYSBxdWUgc2UgbWFycXVlIHNlbGVjY2lvbmFkbyovXHJcbiAgICBvblNlbGVjdChldmVudDogYW55LCBmaWx0ZXI6IEZpbHRlckVsZW1lbnRbXSB8IG51bGwpIHtcclxuICAgICAgICBjb25zb2xlLmxvZyhmaWx0ZXIpXHJcbiAgICAgICAgLyogIGNvbnN0IHNlbGVjdGVkT3B0aW9uID0gZmlsdGVyXHJcbiAgICAgICAgICAgICAuZmxhdE1hcChjYXRlZ29yeSA9PiBjYXRlZ29yeS5jaGlsZHJlbilcclxuICAgICAgICAgICAgIC5maWx0ZXIob3B0aW9uID0+IG9wdGlvbj8uY29kZSA9PT0gZXZlbnQudGFyZ2V0LnZhbHVlKVxyXG4gICAgICAgICAgICAgLnBvcCgpXHJcbiAgICAgICAgIHNlbGVjdGVkT3B0aW9uICYmIHRoaXMuX2ZpbHRlcnNTZXJ2aWNlLnNldEZpbHRlclNlbGVjdGVkKHRoaXMuZmlsdGVyc1swXSwgc2VsZWN0ZWRPcHRpb24pICovXHJcbiAgICB9XHJcblxyXG4gICAgc2V0U2VsZWN0ZWQoZmlsdGVyOiBGaWx0ZXIgfCBudWxsLCBzZWxlY3RlZDogRmlsdGVyRWxlbWVudCB8IG51bGwpIHsgICAgICAgIFxyXG4gICAgICAgIGlmICghZmlsdGVyIHx8ICFzZWxlY3RlZCkge1xyXG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKCdGaWx0ZXIgb3Igc2VsZWN0ZWQgZWxlbWVudCBpcyB1bmRlZmluZWQ6JywgeyBmaWx0ZXIsIHNlbGVjdGVkIH0pO1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAodHlwZW9mIChmaWx0ZXIgYXMgYW55KS5zZXRTZWxlY3RlZCAhPT0gJ2Z1bmN0aW9uJykge1xyXG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKCdmaWx0ZXIuc2V0U2VsZWN0ZWQgaXMgbm90IGEgZnVuY3Rpb24uIEZpbHRlciBtaWdodCBub3QgYmUgYW4gaW5zdGFuY2Ugb2YgdGhlIGV4cGVjdGVkIGNsYXNzOicsIGZpbHRlcik7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgIC8vIHRoaXMuX2ZpbHRlcnNTZXJ2aWNlLnNldEZpbHRlclNlbGVjdGVkKGZpbHRlciwgc2VsZWN0ZWQpO1xyXG4gICAgICAgICAgICBpZiAoc2VsZWN0ZWQucGF0aCkgeyAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtzZWxlY3RlZC5wYXRoXSk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcblxyXG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoXCJFcnJvciB3aGlsZSBzZXR0aW5nIHNlbGVjdGVkIGZpbHRlcjpcIiwgZXJyb3IpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB1bmlxdWVTZWxlY3Rpb24oZmlsdGVyOiB7IGRhdGE6IGFueVtdOyB9LCBmaWx0ZXJDaGlsZDogYW55KSB7XHJcbiAgICAgICAgLy8gQnVzY2FyIHNpIGhheSB1biBmaWx0cm8gZGUgdGlwbyBQcmljZVJhbmdlRmlsdGVyIGVuIGxhIGxpc3RhIGRlIGZpbHRyb3NcclxuICAgICAgICBjb25zdCBwcmljZVJhbmdlRmlsdGVyID0gdGhpcy5maWx0ZXJzLmZpbmQoZiA9PiBmIGluc3RhbmNlb2YgUHJpY2VSYW5nZUZpbHRlcik7ICAgICAgICBcclxuXHJcbiAgICAgICAgaWYgKHByaWNlUmFuZ2VGaWx0ZXIpIHtcclxuICAgICAgICAgICAgcHJpY2VSYW5nZUZpbHRlci5yZXNldCgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBmaWx0ZXIuZGF0YS5mb3JFYWNoKGZpbHRlckVsZW1lbnQgPT4ge1xyXG4gICAgICAgICAgICBpZiAoZmlsdGVyRWxlbWVudC5zZWxlY3RlZCkge1xyXG4gICAgICAgICAgICAgICAgZmlsdGVyRWxlbWVudC5zZWxlY3RlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGZpbHRlckVsZW1lbnQuY2hpbGRyZW4uZm9yRWFjaCgoZmlsdGVyQ2hpbGRyZW46IEZpbHRlckVsZW1lbnQpID0+IHtcclxuICAgICAgICAgICAgICAgIGlmIChmaWx0ZXJDaGlsZHJlbiAhPSBmaWx0ZXJDaGlsZCAmJiBmaWx0ZXJDaGlsZHJlbi5zZWxlY3RlZCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGZpbHRlckNoaWxkcmVuLnNlbGVjdGVkID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIC8vICBjbG9zZSA9ICgpID0+IHtcclxuICAgIC8vICAgICAgIHRoaXMuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJmaWx0cm9zXCIpLmNsYXNzTGlzdC5yZW1vdmUoJ2luJyk7XHJcbiAgICAvLyAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIC8vICB9O1xyXG5cclxuXHJcbiAgICBjbG9zZSA9ICgpID0+IHtcclxuICAgICAgICAvLyB0aGlzLmNvbnN0cy5tb2JpbGUoKVxyXG4gICAgICAgIC8vICAgICAgPyB0aGlzLmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwiYWNjb3JkaW9uRXhhbXBsZVwiKS5jbGFzc0xpc3QucmVtb3ZlKCdzaG93JylcclxuICAgICAgICAvLyAgICAgIDogdGhpcy5kb2N1bWVudC5nZXRFbGVtZW50QnlJZChhY2NvcmRpb25faWQpLmNsYXNzTGlzdC5yZW1vdmUoJ3Nob3cnKTtcclxuICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH07XHJcblxyXG5cclxuICAgIHNjcm9sbFVwID0gKCkgPT4ge1xyXG4gICAgICAgIHdpbmRvdy5zY3JvbGwoMCwgMCk7XHJcbiAgICAgICAgcmV0dXJuIHRydWVcclxuICAgIH1cclxuXHJcblxyXG5cclxuXHJcblxyXG4gICAgaGFzQXBwbGllZEZpbHRlcnMoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZmlsdGVycz8uc29tZSgoZmlsdGVyOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgaWYgKGZpbHRlci50eXBlPy4oKSA9PT0gJ3ByaWNlX3JhbmdlJykge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgbWluU2V0ID0gZmlsdGVyLmN1cnJlbnRNaW5QcmljZSAhPT0gbnVsbCAmJiBmaWx0ZXIuY3VycmVudE1pblByaWNlICE9PSAwO1xyXG4gICAgICAgICAgICAgICAgY29uc3QgbWF4U2V0ID0gZmlsdGVyLmN1cnJlbnRNYXhQcmljZSAhPT0gbnVsbCAmJiBmaWx0ZXIuY3VycmVudE1heFByaWNlICE9PSBmaWx0ZXIubWF4UHJpY2U7XHJcbiAgICAgICAgICAgICAgICBpZiAobWluU2V0IHx8IG1heFNldCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICByZXR1cm4gZmlsdGVyLmRhdGE/LnNvbWUoKGZpbHRlckVsZW1lbnQ6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoZmlsdGVyRWxlbWVudC5jaGlsZHJlbikpIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmlsdGVyRWxlbWVudC5jaGlsZHJlbi5zb21lKChjaGlsZDogYW55KSA9PiBjaGlsZC5zZWxlY3RlZCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gZmlsdGVyRWxlbWVudC5zZWxlY3RlZDtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfSkgPz8gZmFsc2U7XHJcbiAgICB9XHJcblxyXG59XHJcbiIsIjxwPmZpbHRlcnMtZWMgd29ya3MhPC9wPlxyXG4iXX0=
@@ -31,4 +31,5 @@ export * from './reviews-ec/reviews-ec.component';
31
31
  export * from './reviews-form-ec/reviews-form-ec.component';
32
32
  export * from './section-container-ec/section-container-ec.component';
33
33
  export * from './stores-ec/stores-ec.component';
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1lYXN5Y29tbWVyY2UtdjE4L3NyYy9saWIvZWMtY29tcG9uZW50cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsV0FBVyxDQUFDO0FBQzFCLGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyxpREFBaUQsQ0FBQztBQUNoRSxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLCtEQUErRCxDQUFDO0FBQzlFLGNBQWMsbURBQW1ELENBQUM7QUFDbEUsY0FBYywyREFBMkQsQ0FBQztBQUMxRSxjQUFjLGlFQUFpRSxDQUFDO0FBQ2hGLGNBQWMsK0RBQStELENBQUE7QUFDN0UsY0FBYyxtRUFBbUUsQ0FBQTtBQUNqRixjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMscURBQXFELENBQUM7QUFDcEUsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLHVEQUF1RCxDQUFDO0FBQ3RFLGNBQWMsaUNBQWlDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2Zvb3Rlci1lYy9mb290ZXItZWMuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9oZWFkZXItZWMvaGVhZGVyLWVjLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vaG9tZS1lYy9ob21lLWVjLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vYmxvY2tzLWVjL2Jsb2Nrcy1lYy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3Byb2R1Y3QtZWMvcHJvZHVjdC1lYy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2NvbGxlY3Rpb24tZWMvY29sbGVjdGlvbi1lYy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2ZpbHRlcnMtc29ydC1lYy9maWx0ZXJzLXNvcnQtZWMuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi93aWRnZXRzLWVjJztcclxuZXhwb3J0ICogZnJvbSAnLi9hdXRoLWVjJztcclxuZXhwb3J0ICogZnJvbSAnLi9maWx0ZXJzLWVjL2ZpbHRlcnMtZWMuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9wcm9kdWN0LWRldGFpbC1lYy9wcm9kdWN0LWRldGFpbC1lYy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3ZhcmlhbnRzLWVjL3ZhcmlhbnRzLWVjLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vYnJlYWRjcnVtYi1lYy9icmVhZGNydW1iLWVjLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY2FydC1lYyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY291cG9uLWVjL2NvdXBvbi1lYy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2NvbnRhY3QtZWMvY29udGFjdC1lYy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2NoZWNrb3V0LWVjL2NoZWNrb3V0LWVjLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY2hlY2tvdXQtZWMvc3VjY2Vzcy1lYy9zdWNjZXNzLWVjLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vYWNjb3VudC1lYyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vYmxvY2tzLWVjL2Jsb2NrLW5ld3NsZXR0ZXItZWMvYmxvY2stbmV3c2xldHRlci1lYy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2Jsb2Nrcy1lYy9ibG9jay1odG1sLWVjL2Jsb2NrLWh0bWwtZWMuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9ibG9ja3MtZWMvYmxvY2stcHJvZHVjdHMtZWMvYmxvY2stcHJvZHVjdHMtZWMuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9ibG9ja3MtZWMvYmxvY2stYmFubmVyLWZ1bGwtZWMvYmxvY2stYmFubmVyLWZ1bGwtZWMuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9ibG9ja3MtZWMvYmxvY2stYmFubmVyLWJveC1lYy9ibG9jay1iYW5uZXItYm94LWVjLmNvbXBvbmVudCdcclxuZXhwb3J0ICogZnJvbSAnLi9ibG9ja3MtZWMvYmxvY2stZm9ybS1jb250YWN0LWVjL2Jsb2NrLWZvcm0tY29udGFjdC1lYy5jb21wb25lbnQnXHJcbmV4cG9ydCAqIGZyb20gJy4vc2lkZWJhci1lYy9zaWRlYmFyLWVjLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vcmVsYXRlZC1wcm9kdWN0cy1lYy9yZWxhdGVkLXByb2R1Y3RzLWVjLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vZmFxcy1lYy9mYXFzLWVjLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmUtZWMvc2hhcmUtZWMuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9yZXZpZXdzLWVjL3Jldmlld3MtZWMuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9yZXZpZXdzLWZvcm0tZWMvcmV2aWV3cy1mb3JtLWVjLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vc2VjdGlvbi1jb250YWluZXItZWMvc2VjdGlvbi1jb250YWluZXItZWMuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9zdG9yZXMtZWMvc3RvcmVzLWVjLmNvbXBvbmVudCc7Il19
34
+ export * from './price-range-filter/price-range-filter.component';
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZy1lYXN5Y29tbWVyY2UtdjE4L3NyYy9saWIvZWMtY29tcG9uZW50cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsV0FBVyxDQUFDO0FBQzFCLGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyxpREFBaUQsQ0FBQztBQUNoRSxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLCtEQUErRCxDQUFDO0FBQzlFLGNBQWMsbURBQW1ELENBQUM7QUFDbEUsY0FBYywyREFBMkQsQ0FBQztBQUMxRSxjQUFjLGlFQUFpRSxDQUFDO0FBQ2hGLGNBQWMsK0RBQStELENBQUE7QUFDN0UsY0FBYyxtRUFBbUUsQ0FBQTtBQUNqRixjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMscURBQXFELENBQUM7QUFDcEUsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLHVEQUF1RCxDQUFDO0FBQ3RFLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxtREFBbUQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZm9vdGVyLWVjL2Zvb3Rlci1lYy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2hlYWRlci1lYy9oZWFkZXItZWMuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9ob21lLWVjL2hvbWUtZWMuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9ibG9ja3MtZWMvYmxvY2tzLWVjLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vcHJvZHVjdC1lYy9wcm9kdWN0LWVjLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY29sbGVjdGlvbi1lYy9jb2xsZWN0aW9uLWVjLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vZmlsdGVycy1zb3J0LWVjL2ZpbHRlcnMtc29ydC1lYy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3dpZGdldHMtZWMnO1xyXG5leHBvcnQgKiBmcm9tICcuL2F1dGgtZWMnO1xyXG5leHBvcnQgKiBmcm9tICcuL2ZpbHRlcnMtZWMvZmlsdGVycy1lYy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3Byb2R1Y3QtZGV0YWlsLWVjL3Byb2R1Y3QtZGV0YWlsLWVjLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vdmFyaWFudHMtZWMvdmFyaWFudHMtZWMuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9icmVhZGNydW1iLWVjL2JyZWFkY3J1bWItZWMuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9jYXJ0LWVjJztcclxuZXhwb3J0ICogZnJvbSAnLi9jb3Vwb24tZWMvY291cG9uLWVjLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY29udGFjdC1lYy9jb250YWN0LWVjLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vY2hlY2tvdXQtZWMvY2hlY2tvdXQtZWMuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9jaGVja291dC1lYy9zdWNjZXNzLWVjL3N1Y2Nlc3MtZWMuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9hY2NvdW50LWVjJztcclxuZXhwb3J0ICogZnJvbSAnLi9ibG9ja3MtZWMvYmxvY2stbmV3c2xldHRlci1lYy9ibG9jay1uZXdzbGV0dGVyLWVjLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vYmxvY2tzLWVjL2Jsb2NrLWh0bWwtZWMvYmxvY2staHRtbC1lYy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2Jsb2Nrcy1lYy9ibG9jay1wcm9kdWN0cy1lYy9ibG9jay1wcm9kdWN0cy1lYy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2Jsb2Nrcy1lYy9ibG9jay1iYW5uZXItZnVsbC1lYy9ibG9jay1iYW5uZXItZnVsbC1lYy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2Jsb2Nrcy1lYy9ibG9jay1iYW5uZXItYm94LWVjL2Jsb2NrLWJhbm5lci1ib3gtZWMuY29tcG9uZW50J1xyXG5leHBvcnQgKiBmcm9tICcuL2Jsb2Nrcy1lYy9ibG9jay1mb3JtLWNvbnRhY3QtZWMvYmxvY2stZm9ybS1jb250YWN0LWVjLmNvbXBvbmVudCdcclxuZXhwb3J0ICogZnJvbSAnLi9zaWRlYmFyLWVjL3NpZGViYXItZWMuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9yZWxhdGVkLXByb2R1Y3RzLWVjL3JlbGF0ZWQtcHJvZHVjdHMtZWMuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9mYXFzLWVjL2ZhcXMtZWMuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9zaGFyZS1lYy9zaGFyZS1lYy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3Jldmlld3MtZWMvcmV2aWV3cy1lYy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3Jldmlld3MtZm9ybS1lYy9yZXZpZXdzLWZvcm0tZWMuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9zZWN0aW9uLWNvbnRhaW5lci1lYy9zZWN0aW9uLWNvbnRhaW5lci1lYy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL3N0b3Jlcy1lYy9zdG9yZXMtZWMuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9wcmljZS1yYW5nZS1maWx0ZXIvcHJpY2UtcmFuZ2UtZmlsdGVyLmNvbXBvbmVudCc7Il19
@@ -0,0 +1,143 @@
1
+ import { ChangeDetectionStrategy, Component, EventEmitter, inject, Input, Output } from '@angular/core';
2
+ import { PriceRangeFilter } from '../../classes/filters/price_range-filter';
3
+ import { CommonModule } from '@angular/common';
4
+ import { EcCurrencySymbolPipe } from '../../ec-pipe';
5
+ import { FiltersService } from '../../ec-services';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@angular/common";
8
+ export class PriceRangeFilterComponent {
9
+ _filtersService = inject(FiltersService);
10
+ priceGap = 1;
11
+ roundStep = 5;
12
+ filter;
13
+ rangeChanged = new EventEmitter();
14
+ getSliderStyle(filter) {
15
+ if (!(filter instanceof PriceRangeFilter))
16
+ return { left: '0%', right: '0%' };
17
+ const left = this.calculateLeftPercentage(filter);
18
+ const right = this.calculateRightPercentage(filter);
19
+ return { left: `${left}%`, right: `${right}%` };
20
+ }
21
+ // Métodos para actualizar la barra del filtro por precio
22
+ calculateLeftPercentage(filter) {
23
+ if (!(filter instanceof PriceRangeFilter))
24
+ return 0;
25
+ const min = filter.minPrice;
26
+ const max = filter.maxPrice;
27
+ const currentMin = filter.currentMinPrice ?? min;
28
+ const clampedMin = Math.max(min, Math.min(currentMin, max));
29
+ return Math.max(0, Math.min(((clampedMin - min) / (max - min)) * 100, 100));
30
+ }
31
+ calculateRightPercentage(filter) {
32
+ if (!(filter instanceof PriceRangeFilter))
33
+ return 0;
34
+ const min = filter.minPrice;
35
+ const max = filter.maxPrice;
36
+ const currentMax = filter.currentMaxPrice ?? max;
37
+ const clampedMax = Math.max(min, Math.min(currentMax, max));
38
+ return Math.max(0, Math.min(100 - ((clampedMax - min) / (max - min)) * 100, 100));
39
+ }
40
+ // Método para actualizar los valores de precio seleccionados
41
+ updatePriceRange(filter) {
42
+ if (!(filter instanceof PriceRangeFilter))
43
+ return;
44
+ const min = filter.currentMinPrice ?? filter.minPrice;
45
+ const max = filter.currentMaxPrice ?? filter.maxPrice;
46
+ this._filtersService.updatePriceRangeFilter(min, max);
47
+ }
48
+ getMinValue(filter) {
49
+ return (filter instanceof PriceRangeFilter && filter.currentMinPrice != null)
50
+ ? filter.currentMinPrice
51
+ : filter.minPrice;
52
+ }
53
+ getMaxValue(filter) {
54
+ return (filter instanceof PriceRangeFilter && filter.currentMaxPrice != null)
55
+ ? filter.currentMaxPrice
56
+ : filter.maxPrice;
57
+ }
58
+ /**
59
+ * Redondea al múltiplo de 'step' respetando el redondeo entero:
60
+ * - Mínimo: redondea hacia abajo.
61
+ * - Máximo: redondea hacia arriba.
62
+ */
63
+ onRangeChange(event, type, filter) {
64
+ const input = event.target;
65
+ let value = parseFloat(input.value);
66
+ value = this.roundToNearest(value, this.roundStep, type, filter);
67
+ this.updateFilterPrices(type, value, filter, this.priceGap);
68
+ }
69
+ roundToNearest(value, step, type, filter) {
70
+ let rounded = Math.round(value / step) * step;
71
+ if (type === 'max' && rounded < filter.maxPrice) {
72
+ rounded = Math.ceil(value / step) * step;
73
+ }
74
+ if (type === 'min' && rounded > filter.minPrice) {
75
+ rounded = Math.floor(value / step) * step;
76
+ }
77
+ return rounded;
78
+ }
79
+ /**
80
+ * Actualiza los valores del filtro permitiendo que un input empuje al otro.
81
+ */
82
+ updateFilterPrices(type, value, filter, priceGap) {
83
+ const globalMin = filter.minPrice ?? 0;
84
+ const globalMax = filter.maxPrice;
85
+ let currentMin = filter.currentMinPrice ?? globalMin;
86
+ let currentMax = filter.currentMaxPrice ?? globalMax;
87
+ if (type === 'min') {
88
+ let newMin = Math.min(Math.max(value, globalMin), globalMax);
89
+ if (newMin + priceGap > currentMax) {
90
+ let newMaxCandidate = newMin + priceGap;
91
+ if (newMaxCandidate <= globalMax) {
92
+ currentMax = newMaxCandidate;
93
+ }
94
+ else {
95
+ newMin = globalMax - priceGap;
96
+ }
97
+ }
98
+ filter.currentMinPrice = newMin;
99
+ filter.currentMaxPrice = currentMax;
100
+ }
101
+ else if (type === 'max') {
102
+ let newMax = Math.max(Math.min(value, globalMax), globalMin);
103
+ if (newMax - priceGap < currentMin) {
104
+ let newMinCandidate = newMax - priceGap;
105
+ if (newMinCandidate >= globalMin) {
106
+ currentMin = newMinCandidate;
107
+ }
108
+ else {
109
+ newMax = globalMin + priceGap;
110
+ }
111
+ }
112
+ filter.currentMaxPrice = newMax;
113
+ filter.currentMinPrice = currentMin;
114
+ }
115
+ }
116
+ scrollUp = () => {
117
+ window.scroll(0, 0);
118
+ return true;
119
+ };
120
+ getFormattedMinPrice(filter) {
121
+ const value = (filter instanceof PriceRangeFilter && filter.currentMinPrice != null)
122
+ ? filter.currentMinPrice
123
+ : filter.minPrice;
124
+ return value;
125
+ }
126
+ getFormattedMaxPrice(filter) {
127
+ const value = (filter instanceof PriceRangeFilter && filter.currentMaxPrice != null)
128
+ ? filter.currentMaxPrice
129
+ : filter.maxPrice;
130
+ return value;
131
+ }
132
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PriceRangeFilterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
133
+ 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 });
134
+ }
135
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PriceRangeFilterComponent, decorators: [{
136
+ type: Component,
137
+ 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"] }]
138
+ }], propDecorators: { filter: [{
139
+ type: Input
140
+ }], rangeChanged: [{
141
+ type: Output
142
+ }] } });
143
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpY2UtcmFuZ2UtZmlsdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25nLWVhc3ljb21tZXJjZS12MTgvc3JjL2xpYi9lYy1jb21wb25lbnRzL3ByaWNlLXJhbmdlLWZpbHRlci9wcmljZS1yYW5nZS1maWx0ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmctZWFzeWNvbW1lcmNlLXYxOC9zcmMvbGliL2VjLWNvbXBvbmVudHMvcHJpY2UtcmFuZ2UtZmlsdGVyL3ByaWNlLXJhbmdlLWZpbHRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7O0FBVW5ELE1BQU0sT0FBTyx5QkFBeUI7SUFFNUIsZUFBZSxHQUFtQixNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7SUFFakUsUUFBUSxHQUFHLENBQUMsQ0FBQztJQUNiLFNBQVMsR0FBRyxDQUFDLENBQUM7SUFFTCxNQUFNLENBQW9CO0lBQ3pCLFlBQVksR0FBRyxJQUFJLFlBQVksRUFBZ0MsQ0FBQztJQUUxRSxjQUFjLENBQUMsTUFBVztRQUN4QixJQUFJLENBQUMsQ0FBQyxNQUFNLFlBQVksZ0JBQWdCLENBQUM7WUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFB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QUFkLEtBQUs7Z0JBQ0ksWUFBWTtzQkFBckIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgaW5qZWN0LCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFByaWNlUmFuZ2VGaWx0ZXIgfSBmcm9tICcuLi8uLi9jbGFzc2VzL2ZpbHRlcnMvcHJpY2VfcmFuZ2UtZmlsdGVyJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgRWNDdXJyZW5jeVN5bWJvbFBpcGUgfSBmcm9tICcuLi8uLi9lYy1waXBlJztcclxuaW1wb3J0IHsgRmlsdGVyc1NlcnZpY2UgfSBmcm9tICcuLi8uLi9lYy1zZXJ2aWNlcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1wcmljZS1yYW5nZS1maWx0ZXInLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW0VjQ3VycmVuY3lTeW1ib2xQaXBlLCBDb21tb25Nb2R1bGVdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9wcmljZS1yYW5nZS1maWx0ZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9wcmljZS1yYW5nZS1maWx0ZXIuY29tcG9uZW50LnNjc3MnLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQcmljZVJhbmdlRmlsdGVyQ29tcG9uZW50IHtcclxuXHJcbiAgcHJpdmF0ZSBfZmlsdGVyc1NlcnZpY2U6IEZpbHRlcnNTZXJ2aWNlID0gaW5qZWN0KEZpbHRlcnNTZXJ2aWNlKTtcclxuXHJcbiAgcHJpY2VHYXAgPSAxO1xyXG4gIHJvdW5kU3RlcCA9IDU7XHJcblxyXG4gIEBJbnB1dCgpIGZpbHRlciE6IFByaWNlUmFuZ2VGaWx0ZXI7XHJcbiAgQE91dHB1dCgpIHJhbmdlQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8eyBtaW46IG51bWJlcjsgbWF4OiBudW1iZXIgfT4oKTtcclxuXHJcbiAgZ2V0U2xpZGVyU3R5bGUoZmlsdGVyOiBhbnkpOiB7IFtrbGFzczogc3RyaW5nXTogc3RyaW5nIH0ge1xyXG4gICAgaWYgKCEoZmlsdGVyIGluc3RhbmNlb2YgUHJpY2VSYW5nZUZpbHRlcikpIHJldHVybiB7IGxlZnQ6ICcwJScsIHJpZ2h0OiAnMCUnIH07XHJcblxyXG4gICAgY29uc3QgbGVmdCA9IHRoaXMuY2FsY3VsYXRlTGVmdFBlcmNlbnRhZ2UoZmlsdGVyKTtcclxuICAgIGNvbnN0IHJpZ2h0ID0gdGhpcy5jYWxjdWxhdGVSaWdodFBlcmNlbnRhZ2UoZmlsdGVyKTtcclxuICAgIHJldHVybiB7IGxlZnQ6IGAke2xlZnR9JWAsIHJpZ2h0OiBgJHtyaWdodH0lYCB9O1xyXG4gIH1cclxuXHJcbiAgLy8gTcOpdG9kb3MgcGFyYSBhY3R1YWxpemFyIGxhIGJhcnJhIGRlbCBmaWx0cm8gcG9yIHByZWNpb1xyXG4gIGNhbGN1bGF0ZUxlZnRQZXJjZW50YWdlKGZpbHRlcjogYW55KTogbnVtYmVyIHtcclxuICAgIGlmICghKGZpbHRlciBpbnN0YW5jZW9mIFByaWNlUmFuZ2VGaWx0ZXIpKSByZXR1cm4gMDtcclxuXHJcbiAgICBjb25zdCBtaW4gPSBmaWx0ZXIubWluUHJpY2U7XHJcbiAgICBjb25zdCBtYXggPSBmaWx0ZXIubWF4UHJpY2U7XHJcbiAgICBjb25zdCBjdXJyZW50TWluID0gZmlsdGVyLmN1cnJlbnRNaW5QcmljZSA/PyBtaW47XHJcblxyXG4gICAgY29uc3QgY2xhbXBlZE1pbiA9IE1hdGgubWF4KG1pbiwgTWF0aC5taW4oY3VycmVudE1pbiwgbWF4KSk7XHJcbiAgICByZXR1cm4gTWF0aC5tYXgoMCwgTWF0aC5taW4oKChjbGFtcGVkTWluIC0gbWluKSAvIChtYXggLSBtaW4pKSAqIDEwMCwgMTAwKSk7XHJcbiAgfVxyXG5cclxuICBjYWxjdWxhdGVSaWdodFBlcmNlbnRhZ2UoZmlsdGVyOiBhbnkpOiBudW1iZXIge1xyXG4gICAgaWYgKCEoZmlsdGVyIGluc3RhbmNlb2YgUHJpY2VSYW5nZUZpbHRlcikpIHJldHVybiAwO1xyXG5cclxuICAgIGNvbnN0IG1pbiA9IGZpbHRlci5taW5QcmljZTtcclxuICAgIGNvbnN0IG1heCA9IGZpbHRlci5tYXhQcmljZTtcclxuICAgIGNvbnN0IGN1cnJlbnRNYXggPSBmaWx0ZXIuY3VycmVudE1heFByaWNlID8/IG1heDtcclxuXHJcbiAgICBjb25zdCBjbGFtcGVkTWF4ID0gTWF0aC5tYXgobWluLCBNYXRoLm1pbihjdXJyZW50TWF4LCBtYXgpKTtcclxuICAgIHJldHVybiBNYXRoLm1heCgwLCBNYXRoLm1pbigxMDAgLSAoKGNsYW1wZWRNYXggLSBtaW4pIC8gKG1heCAtIG1pbikpICogMTAwLCAxMDApKTtcclxuICB9XHJcblxyXG4gIC8vIE3DqXRvZG8gcGFyYSBhY3R1YWxpemFyIGxvcyB2YWxvcmVzIGRlIHByZWNpbyBzZWxlY2Npb25hZG9zXHJcbiAgdXBkYXRlUHJpY2VSYW5nZShmaWx0ZXI6IGFueSkge1xyXG4gICAgaWYgKCEoZmlsdGVyIGluc3RhbmNlb2YgUHJpY2VSYW5nZUZpbHRlcikpIHJldHVybjtcclxuXHJcbiAgICBjb25zdCBtaW4gPSBmaWx0ZXIuY3VycmVudE1pblByaWNlID8/IGZpbHRlci5taW5QcmljZTtcclxuICAgIGNvbnN0IG1heCA9IGZpbHRlci5jdXJyZW50TWF4UHJpY2UgPz8gZmlsdGVyLm1heFByaWNlO1xyXG4gICAgdGhpcy5fZmlsdGVyc1NlcnZpY2UudXBkYXRlUHJpY2VSYW5nZUZpbHRlcihtaW4sIG1heCk7XHJcbiAgfVxyXG5cclxuICBnZXRNaW5WYWx1ZShmaWx0ZXI6IGFueSk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gKGZpbHRlciBpbnN0YW5jZW9mIFByaWNlUmFuZ2VGaWx0ZXIgJiYgZmlsdGVyLmN1cnJlbnRNaW5QcmljZSAhPSBudWxsKVxyXG4gICAgICA/IGZpbHRlci5jdXJyZW50TWluUHJpY2VcclxuICAgICAgOiBmaWx0ZXIubWluUHJpY2U7XHJcbiAgfVxyXG5cclxuICBnZXRNYXhWYWx1ZShmaWx0ZXI6IGFueSk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gKGZpbHRlciBpbnN0YW5jZW9mIFByaWNlUmFuZ2VGaWx0ZXIgJiYgZmlsdGVyLmN1cnJlbnRNYXhQcmljZSAhPSBudWxsKVxyXG4gICAgICA/IGZpbHRlci5jdXJyZW50TWF4UHJpY2VcclxuICAgICAgOiBmaWx0ZXIubWF4UHJpY2U7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAqIFJlZG9uZGVhIGFsIG3Dumx0aXBsbyBkZSAnc3RlcCcgcmVzcGV0YW5kbyBlbCByZWRvbmRlbyBlbnRlcm86XHJcbiAgKiAtIE3DrW5pbW86IHJlZG9uZGVhIGhhY2lhIGFiYWpvLlxyXG4gICogLSBNw6F4aW1vOiByZWRvbmRlYSBoYWNpYSBhcnJpYmEuXHJcbiAgKi9cclxuICBvblJhbmdlQ2hhbmdlKGV2ZW50OiBFdmVudCwgdHlwZTogJ21pbicgfCAnbWF4JywgZmlsdGVyOiBhbnkpIHtcclxuICAgIGNvbnN0IGlucHV0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQ7XHJcbiAgICBsZXQgdmFsdWUgPSBwYXJzZUZsb2F0KGlucHV0LnZhbHVlKTtcclxuICAgIHZhbHVlID0gdGhpcy5yb3VuZFRvTmVhcmVzdCh2YWx1ZSwgdGhpcy5yb3VuZFN0ZXAsIHR5cGUsIGZpbHRlcik7XHJcbiAgICB0aGlzLnVwZGF0ZUZpbHRlclByaWNlcyh0eXBlLCB2YWx1ZSwgZmlsdGVyLCB0aGlzLnByaWNlR2FwKTtcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCByb3VuZFRvTmVhcmVzdCh2YWx1ZTogbnVtYmVyLCBzdGVwOiBudW1iZXIsIHR5cGU6ICdtaW4nIHwgJ21heCcsIGZpbHRlcjogYW55KTogbnVtYmVyIHtcclxuICAgIGxldCByb3VuZGVkID0gTWF0aC5yb3VuZCh2YWx1ZSAvIHN0ZXApICogc3RlcDtcclxuICAgIGlmICh0eXBlID09PSAnbWF4JyAmJiByb3VuZGVkIDwgZmlsdGVyLm1heFByaWNlKSB7XHJcbiAgICAgIHJvdW5kZWQgPSBNYXRoLmNlaWwodmFsdWUgLyBzdGVwKSAqIHN0ZXA7XHJcbiAgICB9XHJcbiAgICBpZiAodHlwZSA9PT0gJ21pbicgJiYgcm91bmRlZCA+IGZpbHRlci5taW5QcmljZSkge1xyXG4gICAgICByb3VuZGVkID0gTWF0aC5mbG9vcih2YWx1ZSAvIHN0ZXApICogc3RlcDtcclxuICAgIH1cclxuICAgIHJldHVybiByb3VuZGVkO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgKiBBY3R1YWxpemEgbG9zIHZhbG9yZXMgZGVsIGZpbHRybyBwZXJtaXRpZW5kbyBxdWUgdW4gaW5wdXQgZW1wdWplIGFsIG90cm8uXHJcbiAgKi9cclxuICBwcm90ZWN0ZWQgdXBkYXRlRmlsdGVyUHJpY2VzKHR5cGU6ICdtaW4nIHwgJ21heCcsIHZhbHVlOiBudW1iZXIsIGZpbHRlcjogYW55LCBwcmljZUdhcDogbnVtYmVyKSB7XHJcbiAgICBjb25zdCBnbG9iYWxNaW4gPSBmaWx0ZXIubWluUHJpY2UgPz8gMDtcclxuICAgIGNvbnN0IGdsb2JhbE1heCA9IGZpbHRlci5tYXhQcmljZTtcclxuXHJcbiAgICBsZXQgY3VycmVudE1pbiA9IGZpbHRlci5jdXJyZW50TWluUHJpY2UgPz8gZ2xvYmFsTWluO1xyXG4gICAgbGV0IGN1cnJlbnRNYXggPSBmaWx0ZXIuY3VycmVudE1heFByaWNlID8/IGdsb2JhbE1heDtcclxuXHJcbiAgICBpZiAodHlwZSA9PT0gJ21pbicpIHtcclxuICAgICAgbGV0IG5ld01pbiA9IE1hdGgubWluKE1hdGgubWF4KHZhbHVlLCBnbG9iYWxNaW4pLCBnbG9iYWxNYXgpO1xyXG4gICAgICBpZiAobmV3TWluICsgcHJpY2VHYXAgPiBjdXJyZW50TWF4KSB7XHJcbiAgICAgICAgbGV0IG5ld01heENhbmRpZGF0ZSA9IG5ld01pbiArIHByaWNlR2FwO1xyXG4gICAgICAgIGlmIChuZXdNYXhDYW5kaWRhdGUgPD0gZ2xvYmFsTWF4KSB7XHJcbiAgICAgICAgICBjdXJyZW50TWF4ID0gbmV3TWF4Q2FuZGlkYXRlO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBuZXdNaW4gPSBnbG9iYWxNYXggLSBwcmljZUdhcDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgZmlsdGVyLmN1cnJlbnRNaW5QcmljZSA9IG5ld01pbjtcclxuICAgICAgZmlsdGVyLmN1cnJlbnRNYXhQcmljZSA9IGN1cnJlbnRNYXg7XHJcbiAgICB9IGVsc2UgaWYgKHR5cGUgPT09ICdtYXgnKSB7XHJcbiAgICAgIGxldCBuZXdNYXggPSBNYXRoLm1heChNYXRoLm1pbih2YWx1ZSwgZ2xvYmFsTWF4KSwgZ2xvYmFsTWluKTtcclxuICAgICAgaWYgKG5ld01heCAtIHByaWNlR2FwIDwgY3VycmVudE1pbikge1xyXG4gICAgICAgIGxldCBuZXdNaW5DYW5kaWRhdGUgPSBuZXdNYXggLSBwcmljZUdhcDtcclxuICAgICAgICBpZiAobmV3TWluQ2FuZGlkYXRlID49IGdsb2JhbE1pbikge1xyXG4gICAgICAgICAgY3VycmVudE1pbiA9IG5ld01pbkNhbmRpZGF0ZTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgbmV3TWF4ID0gZ2xvYmFsTWluICsgcHJpY2VHYXA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGZpbHRlci5jdXJyZW50TWF4UHJpY2UgPSBuZXdNYXg7XHJcbiAgICAgIGZpbHRlci5jdXJyZW50TWluUHJpY2UgPSBjdXJyZW50TWluO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc2Nyb2xsVXAgPSAoKSA9PiB7XHJcbiAgICB3aW5kb3cuc2Nyb2xsKDAsIDApO1xyXG4gICAgcmV0dXJuIHRydWVcclxuICB9XHJcblxyXG4gIGdldEZvcm1hdHRlZE1pblByaWNlKGZpbHRlcjogYW55KTogc3RyaW5nIHtcclxuICAgIGNvbnN0IHZhbHVlID0gKGZpbHRlciBpbnN0YW5jZW9mIFByaWNlUmFuZ2VGaWx0ZXIgJiYgZmlsdGVyLmN1cnJlbnRNaW5QcmljZSAhPSBudWxsKVxyXG4gICAgICA/IGZpbHRlci5jdXJyZW50TWluUHJpY2VcclxuICAgICAgOiBmaWx0ZXIubWluUHJpY2U7XHJcbiAgICByZXR1cm4gdmFsdWU7XHJcbiAgfVxyXG5cclxuICBnZXRGb3JtYXR0ZWRNYXhQcmljZShmaWx0ZXI6IGFueSk6IHN0cmluZyB7XHJcbiAgICBjb25zdCB2YWx1ZSA9IChmaWx0ZXIgaW5zdGFuY2VvZiBQcmljZVJhbmdlRmlsdGVyICYmIGZpbHRlci5jdXJyZW50TWF4UHJpY2UgIT0gbnVsbClcclxuICAgICAgPyBmaWx0ZXIuY3VycmVudE1heFByaWNlXHJcbiAgICAgIDogZmlsdGVyLm1heFByaWNlO1xyXG4gICAgcmV0dXJuIHZhbHVlO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwic2xpZGVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwic2xpZGVyXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInByb2dyZXNzXCIgW25nU3R5bGVdPVwiZ2V0U2xpZGVyU3R5bGUoZmlsdGVyKVwiPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PlxyXG48ZGl2IGNsYXNzPVwicmFuZ2UtaW5wdXQgZC1mbGV4IGdhcC0yXCI+XHJcbiAgICA8aW5wdXQgI3JhbmdlTWluIHR5cGU9XCJyYW5nZVwiIGNsYXNzPVwicmFuZ2UtbWluXCIgW21pbl09XCJmaWx0ZXIubWluUHJpY2VcIiBbbWF4XT1cImZpbHRlci5tYXhQcmljZVwiXHJcbiAgICAgICAgW3ZhbHVlXT1cImdldE1pblZhbHVlKGZpbHRlcilcIiAoaW5wdXQpPVwib25SYW5nZUNoYW5nZSgkZXZlbnQsICdtaW4nLCBmaWx0ZXIpXCJcclxuICAgICAgICAoY2hhbmdlKT1cInVwZGF0ZVByaWNlUmFuZ2UoZmlsdGVyKTsgc2Nyb2xsVXAoKVwiPlxyXG4gICAgPGlucHV0ICNyYW5nZU1heCB0eXBlPVwicmFuZ2VcIiBjbGFzcz1cInJhbmdlLW1heFwiIFttaW5dPVwiZmlsdGVyLm1pblByaWNlXCIgW21heF09XCJmaWx0ZXIubWF4UHJpY2VcIlxyXG4gICAgICAgIFt2YWx1ZV09XCJnZXRNYXhWYWx1ZShmaWx0ZXIpXCIgKGlucHV0KT1cIm9uUmFuZ2VDaGFuZ2UoJGV2ZW50LCAnbWF4JywgZmlsdGVyKVwiXHJcbiAgICAgICAgKGNoYW5nZSk9XCJ1cGRhdGVQcmljZVJhbmdlKGZpbHRlcik7IHNjcm9sbFVwKClcIj5cclxuPC9kaXY+XHJcbjwhLS0gcHJlY2lvcyBNw61uaW1vIC8gTcOheGltbyAtLT5cclxuPGRpdiBjbGFzcz1cInByaWNlLWNvbnRhaW5lciBtdC0yXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwicHJpY2UtbGFiZWwtd3JhcHBlclwiPlxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwicHJpY2UtbGFiZWxcIj5Nw61uaW1vOjwvc3Bhbj5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cInByaWNlLXZhbHVlXCI+XHJcbiAgICAgICAgICAgIHt7IChnZXRGb3JtYXR0ZWRNaW5QcmljZShmaWx0ZXIpIHwgZWNDdXJyZW5jeVN5bWJvbCkgfHwgJzAnIH19XHJcbiAgICAgICAgPC9zcGFuPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwicHJpY2UtbGFiZWwtd3JhcHBlclwiPlxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwicHJpY2UtbGFiZWxcIj5Nw6F4aW1vOjwvc3Bhbj5cclxuICAgICAgICA8c3BhbiBjbGFzcz1cInByaWNlLXZhbHVlIHByaWNlLXZhbHVlLXJpZ2h0XCI+XHJcbiAgICAgICAgICAgIHt7IGdldEZvcm1hdHRlZE1heFByaWNlKGZpbHRlcikgfCBlY0N1cnJlbmN5U3ltYm9sIH19XHJcbiAgICAgICAgPC9zcGFuPlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==