vviinn-widgets 2.153.0 → 2.154.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/dist/cjs/{package-74a9f6ab.js → package-524961b1.js} +1 -1
  2. package/dist/cjs/search-filters_13.cjs.entry.js +29 -4
  3. package/dist/cjs/{triggerFilter-bf6cdb59.js → triggerFilter-41cce3ec.js} +14 -0
  4. package/dist/cjs/vviinn-carousel_9.cjs.entry.js +65 -34
  5. package/dist/cjs/vviinn-detected-object_7.cjs.entry.js +1 -1
  6. package/dist/cjs/vviinn-selected-filters.cjs.entry.js +27 -24
  7. package/dist/collection/components/vviinn-cropper/vviinn-cropper.js +9 -4
  8. package/dist/collection/components/vviinn-filters/helpers/getPriceLabel.js +12 -0
  9. package/dist/collection/components/vviinn-filters/helpers/index.js +1 -0
  10. package/dist/collection/components/vviinn-filters/vviinn-extended-filters-button.js +2 -2
  11. package/dist/collection/components/vviinn-filters/vviinn-extended-filters.js +53 -32
  12. package/dist/collection/components/vviinn-filters/vviinn-filters.css +20 -1
  13. package/dist/collection/components/vviinn-filters/vviinn-filters.js +16 -6
  14. package/dist/collection/components/vviinn-filters/vviinn-selected-filters.js +28 -25
  15. package/dist/collection/components/vviinn-icons/icons/ChevronIconSmall.js +1 -1
  16. package/dist/collection/components/vviinn-results/vviinn-results.js +24 -4
  17. package/dist/collection/components/vviinn-text-search/vviinn-text-search.js +2 -2
  18. package/dist/esm/{package-542c92d6.js → package-45bdc965.js} +1 -1
  19. package/dist/esm/search-filters_13.entry.js +30 -5
  20. package/dist/esm/{triggerFilter-3eab12a3.js → triggerFilter-dc7d4473.js} +14 -1
  21. package/dist/esm/vviinn-carousel_9.entry.js +65 -34
  22. package/dist/esm/vviinn-detected-object_7.entry.js +1 -1
  23. package/dist/esm/vviinn-selected-filters.entry.js +28 -25
  24. package/dist/types/components/vviinn-cropper/vviinn-cropper.d.ts +2 -2
  25. package/dist/types/components/vviinn-filters/helpers/getPriceLabel.d.ts +3 -0
  26. package/dist/types/components/vviinn-filters/helpers/index.d.ts +1 -0
  27. package/dist/types/components/vviinn-filters/vviinn-extended-filters-button.d.ts +2 -2
  28. package/dist/types/components/vviinn-filters/vviinn-filters.d.ts +4 -3
  29. package/dist/types/components/vviinn-filters/vviinn-selected-filters.d.ts +5 -3
  30. package/dist/types/components/vviinn-results/vviinn-results.d.ts +4 -3
  31. package/dist/types/components/vviinn-text-search/vviinn-text-search.d.ts +2 -2
  32. package/dist/types/components.d.ts +5 -5
  33. package/dist/types/recommendation/events.d.ts +5 -8
  34. package/dist/vviinn-widgets/p-11fc8383.entry.js +11 -0
  35. package/dist/vviinn-widgets/{p-4af1b38b.js → p-1971190e.js} +1 -1
  36. package/dist/vviinn-widgets/{p-d8745d3a.js → p-33e4a22d.js} +1 -1
  37. package/dist/vviinn-widgets/p-507dbb04.entry.js +1 -0
  38. package/dist/vviinn-widgets/{p-95a4237b.entry.js → p-7702acf3.entry.js} +1 -1
  39. package/dist/vviinn-widgets/p-c61ba61f.entry.js +1 -0
  40. package/dist/vviinn-widgets/vviinn-widgets.esm.js +1 -1
  41. package/package.json +1 -1
  42. package/www/build/p-11fc8383.entry.js +11 -0
  43. package/www/build/{p-4af1b38b.js → p-1971190e.js} +1 -1
  44. package/www/build/{p-d8745d3a.js → p-33e4a22d.js} +1 -1
  45. package/www/build/p-507dbb04.entry.js +1 -0
  46. package/www/build/{p-95a4237b.entry.js → p-7702acf3.entry.js} +1 -1
  47. package/www/build/p-c61ba61f.entry.js +1 -0
  48. package/www/build/vviinn-widgets.esm.js +1 -1
  49. package/dist/vviinn-widgets/p-1053bdfe.entry.js +0 -1
  50. package/dist/vviinn-widgets/p-2a110023.entry.js +0 -1
  51. package/dist/vviinn-widgets/p-a7eccdb4.entry.js +0 -11
  52. package/www/build/p-1053bdfe.entry.js +0 -1
  53. package/www/build/p-2a110023.entry.js +0 -1
  54. package/www/build/p-a7eccdb4.entry.js +0 -11
@@ -14,7 +14,7 @@ function fromString(s) {
14
14
  return s === "VPR" ? { _tag: "VPR" } : { _tag: "VCS" };
15
15
  }
16
16
 
17
- const version = "2.153.0";
17
+ const version = "2.154.0";
18
18
 
19
19
  exports.campaignTypeNames = campaignTypeNames;
20
20
  exports.fold = fold;
@@ -7,7 +7,7 @@ const search_store = require('./search.store-fefd485b.js');
7
7
  const customizedSlots = require('./customized-slots-174c1053.js');
8
8
  const v4 = require('./v4-b1fe7cc6.js');
9
9
  const Rectangle = require('./Rectangle-99c25901.js');
10
- const _package = require('./package-74a9f6ab.js');
10
+ const _package = require('./package-524961b1.js');
11
11
  const index$1 = require('./index-4c7242d9.js');
12
12
  const index$2 = require('./index-08c5c086.js');
13
13
  const resources = require('./resources-79dac054.js');
@@ -3650,7 +3650,9 @@ const VviinnCropper = class {
3650
3650
  this.searchArea = cropboxData;
3651
3651
  search_store.makeRectangularSearchRequest(this.storeName, this.searchArea, this.imageBounds);
3652
3652
  this.selectedDetectedObject = undefined;
3653
- this.vviinnImageCrop.emit(this.basicEventData);
3653
+ this.vviinnImageCrop.emit({
3654
+ isTriggeredByVpsWidget: this.showInWidget,
3655
+ });
3654
3656
  };
3655
3657
  this.showPreloader = () => (this.state.loading || this.state.objectDetectionInProgress) &&
3656
3658
  this.state.searchType === "image" &&
@@ -3710,6 +3712,9 @@ const VviinnCropper = class {
3710
3712
  height: height * data.height,
3711
3713
  };
3712
3714
  this.cropper.setCropBoxData(ValidateCropBoxData(cropBoxData));
3715
+ this.vviinnImageCrop.emit({
3716
+ isTriggeredByVpsWidget: this.showInWidget,
3717
+ });
3713
3718
  search_store.makeRectangularSearchRequest(this.storeName, this.searchArea, this.imageBounds);
3714
3719
  }
3715
3720
  getCropboxData() {
@@ -3962,8 +3967,25 @@ const VviinnResults = class {
3962
3967
  const filterEvent = index$1.createFilterEvent(this.isTextSearch ? "TPS" : "VPS")(eventBody);
3963
3968
  search_store.trackEvent(filterEvent);
3964
3969
  };
3965
- this.uploadTriggeredHandler = ({ detail, }) => {
3970
+ this.imageUploadStartedHandler = ({ detail, }) => {
3971
+ if (this.skipStateChanges(detail.isTriggeredByVpsWidget))
3972
+ return;
3973
+ this.vviinnSelectedFiltersReset.emit({
3974
+ isTriggeredByVpsWidget: this.showInWidget,
3975
+ });
3966
3976
  this.setTextSearch(false, detail.isTriggeredByVpsWidget);
3977
+ search_store.resetStore(this.storeName);
3978
+ };
3979
+ this.imageCropHandler = ({ detail, }) => {
3980
+ if (this.skipStateChanges(detail.isTriggeredByVpsWidget))
3981
+ return;
3982
+ if (this.isTextSearch) {
3983
+ this.setTextSearch(false, detail.isTriggeredByVpsWidget);
3984
+ this.vviinnSelectedFiltersReset.emit({
3985
+ isTriggeredByVpsWidget: this.showInWidget,
3986
+ });
3987
+ this.state.dynamicFilters = [];
3988
+ }
3967
3989
  };
3968
3990
  this.widgetCloseHandler = () => {
3969
3991
  this.oneClickDiscoveryAppendIndex = undefined;
@@ -4072,11 +4094,12 @@ const VviinnResults = class {
4072
4094
  if (!this.uiSessionId) {
4073
4095
  this.uiSessionId = v4.v4();
4074
4096
  }
4097
+ document.addEventListener("vviinnImageUploadStarted", this.imageUploadStartedHandler);
4075
4098
  document.addEventListener("vviinnImageUploadFinished", this.imageUploadFinishedHandler);
4076
4099
  document.addEventListener("vviinnTextSearchStarted", this.textSearchStartedHandler);
4077
4100
  document.addEventListener("vviinnFiltersChanged", this.filtersChangedHandler);
4078
4101
  document.addEventListener("vviinnFilterTriggered", this.filterTriggeredHandler);
4079
- document.addEventListener("vviinnImageUploadStarted", this.uploadTriggeredHandler);
4102
+ document.addEventListener("vviinnImageCrop", this.imageCropHandler);
4080
4103
  document.addEventListener("vviinnWidgetClose", this.widgetCloseHandler);
4081
4104
  this.getResultsBySearchId(this.searchId);
4082
4105
  this.getResultsByCategory();
@@ -4087,10 +4110,12 @@ const VviinnResults = class {
4087
4110
  }
4088
4111
  disconnectedCallback() {
4089
4112
  search_store.resetStore(this.storeName);
4113
+ document.removeEventListener("vviinnImageUploadStarted", this.imageUploadStartedHandler);
4090
4114
  document.removeEventListener("vviinnImageUploadFinished", this.imageUploadFinishedHandler);
4091
4115
  document.removeEventListener("vviinnTextSearchStarted", this.textSearchStartedHandler);
4092
4116
  document.removeEventListener("vviinnFiltersChanged", this.filtersChangedHandler);
4093
4117
  document.removeEventListener("vviinnFilterTriggered", this.filterTriggeredHandler);
4118
+ document.removeEventListener("vviinnImageCrop", this.imageCropHandler);
4094
4119
  document.removeEventListener("vviinnWidgetClose", this.widgetCloseHandler);
4095
4120
  }
4096
4121
  watchTextSearchQuery(newQuery) {
@@ -68,6 +68,19 @@ const showActiveOnSubButton = (requestFilters, filterValue, selectedFilter) => {
68
68
  : false;
69
69
  };
70
70
 
71
+ const getPriceLabel = (intervalFilter, interval, currencySign) => {
72
+ if (!interval)
73
+ return null;
74
+ const { start, end } = interval;
75
+ const { start: rangeStart, end: rangeEnd } = intervalFilter.full;
76
+ if (start !== rangeStart || end !== rangeEnd) {
77
+ return `${start} ${currencySign} – ${end} ${currencySign}`;
78
+ }
79
+ else {
80
+ return null;
81
+ }
82
+ };
83
+
71
84
  const triggerFilter = ({ filterValue, selectedFilter, requestFilters, vviinnFilterTriggered, vviinnFiltersChanged, el, isTriggeredByVpsWidget, }) => {
72
85
  const { filters, action } = subFilterSelection(requestFilters, selectedFilter, filterValue);
73
86
  vviinnFilterTriggered.emit({
@@ -98,6 +111,7 @@ const triggerResetFilters = ({ vviinnFilterTriggered, vviinnFiltersChanged, el,
98
111
 
99
112
  exports.FilterIconClose = FilterIconClose;
100
113
  exports.RenderFilterButton = RenderFilterButton;
114
+ exports.getPriceLabel = getPriceLabel;
101
115
  exports.isIntervalFilter = isIntervalFilter;
102
116
  exports.showActiveOnSubButton = showActiveOnSubButton;
103
117
  exports.triggerFilter = triggerFilter;
@@ -4,11 +4,11 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-1a40d6c9.js');
6
6
  const search_store = require('./search.store-fefd485b.js');
7
- const _package = require('./package-74a9f6ab.js');
7
+ const _package = require('./package-524961b1.js');
8
8
  const v4 = require('./v4-b1fe7cc6.js');
9
9
  const index$1 = require('./index-08c5c086.js');
10
10
  const customizedSlots = require('./customized-slots-174c1053.js');
11
- const triggerFilter = require('./triggerFilter-bf6cdb59.js');
11
+ const triggerFilter = require('./triggerFilter-41cce3ec.js');
12
12
  const resources = require('./resources-79dac054.js');
13
13
  const Rectangle = require('./Rectangle-99c25901.js');
14
14
  const index$2 = require('./index-4c7242d9.js');
@@ -25,7 +25,7 @@ const ChevronIcon = () => (index.h("svg", { width: "9", height: "16", xmlns: "ht
25
25
  index.h("path", { d: "m9 8-7.895 8L0 14.88 6.79 8 0 1.12 1.105 0 9 8Z" })));
26
26
 
27
27
  const ChevronIconSmall = () => (index.h("svg", { xmlns: "http://www.w3.org/2000/svg", width: "24", height: "24", viewBox: "0 0 24 24", fill: "none" },
28
- index.h("path", { d: "M13.6 12L9.70005 8.09999C9.51672 7.91665 9.42505 7.68332 9.42505 7.39999C9.42505 7.11665 9.51672 6.88332 9.70005 6.69999C9.88338 6.51665 10.1167 6.42499 10.4 6.42499C10.6834 6.42499 10.9167 6.51665 11.1 6.69999L15.7 11.3C15.8 11.4 15.8709 11.5083 15.9125 11.625C15.9542 11.7417 15.975 11.8667 15.975 12C15.975 12.1333 15.9542 12.2583 15.9125 12.375C15.8709 12.4917 15.8 12.6 15.7 12.7L11.1 17.3C10.9167 17.4833 10.6834 17.575 10.4 17.575C10.1167 17.575 9.88338 17.4833 9.70005 17.3C9.51672 17.1167 9.42505 16.8833 9.42505 16.6C9.42505 16.3167 9.51672 16.0833 9.70005 15.9L13.6 12Z", fill: "#161616" })));
28
+ index.h("path", { d: "M13.6 12L9.70005 8.09999C9.51672 7.91665 9.42505 7.68332 9.42505 7.39999C9.42505 7.11665 9.51672 6.88332 9.70005 6.69999C9.88338 6.51665 10.1167 6.42499 10.4 6.42499C10.6834 6.42499 10.9167 6.51665 11.1 6.69999L15.7 11.3C15.8 11.4 15.8709 11.5083 15.9125 11.625C15.9542 11.7417 15.975 11.8667 15.975 12C15.975 12.1333 15.9542 12.2583 15.9125 12.375C15.8709 12.4917 15.8 12.6 15.7 12.7L11.1 17.3C10.9167 17.4833 10.6834 17.575 10.4 17.575C10.1167 17.575 9.88338 17.4833 9.70005 17.3C9.51672 17.1167 9.42505 16.8833 9.42505 16.6C9.42505 16.3167 9.51672 16.0833 9.70005 15.9L13.6 12Z", fill: "currentColor" })));
29
29
 
30
30
  const UpdateIcon = ({ width = 24, height = 24 }) => (index.h("svg", { xmlns: "http://www.w3.org/2000/svg", width: width, height: height, viewBox: "0 0 24 24", fill: "none" },
31
31
  index.h("path", { "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M23.5998 4.57C20.3898 4.19 19.8798 3.68 19.4198 0.37C19.3798 0.15 19.2198 0 19.0098 0C18.7998 0 18.6298 0.15 18.5898 0.37C18.1198 3.66 17.6298 4.13 14.4098 4.57C14.1698 4.61 14.0098 4.77 14.0098 5C14.0098 5.23 14.1698 5.39 14.4098 5.42C17.6298 5.81 18.1398 6.31 18.5898 9.62C18.6298 9.84 18.7998 10 19.0098 10C19.2198 10 19.3898 9.84 19.4198 9.62C19.8898 6.31 20.3898 5.81 23.5998 5.42C23.8398 5.38 23.9998 5.22 23.9998 5C23.9998 4.78 23.8298 4.6 23.5998 4.57Z", fill: "currentColor" }),
@@ -491,7 +491,7 @@ const getFilterOptions = (filter) => {
491
491
  : [];
492
492
  };
493
493
 
494
- const vviinnFiltersCss$2 = ":host{--font-family-base:Inter, system-ui, sans-serif;--font-family-mono:monospace;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--font-size-title:24px;--font-size-headline:18px;--font-size-label-large:16px;--font-size-label:14px;--font-size-body-large:16px;--font-size-body:14px;--font-size-caption:12px;--line-height-title:32px;--line-height-headline:24px;--line-height-label-large:24px;--line-height-label:20px;--line-height-body-large:24px;--line-height-body:20px;--line-height-caption:16px;--letter-spacing-title:0px;--letter-spacing-headline:0px;--letter-spacing-label-large:0px;--letter-spacing-label:0px;--letter-spacing-body-large:0px;--letter-spacing-body:0px;--letter-spacing-caption:0px;--font-weight-400:400;--font-weight-500:500;--font-weight-600:600;--font-weight-700:700;--spacing-none:0px;--spacing-25:2px;--spacing-50:4px;--spacing-75:6px;--spacing-100:8px;--spacing-125:10px;--spacing-150:12px;--spacing-200:16px;--spacing-250:20px;--spacing-300:24px;--spacing-400:32px;--spacing-500:40px;--spacing-600:48px;--border-radius-none:0px;--border-radius-25:2px;--border-radius-50:4px;--border-radius-100:8px;--border-radius-150:12px;--border-radius-200:16px;--border-radius-300:24px;--border-radius-400:32px;--border-radius-full:9999px;--stroke-width-none:0px;--stroke-width-25:1px;--stroke-width-50:2px;--stroke-width-75:3px;--stroke-width-100:4px;--stroke-width-150:6px;--stroke-width-200:8px;--stroke-width-300:12px;--product-card-widget-min-width:135px;--product-card-results-min-width:250px;--image-set-mode-min-size:155px;--product-card-set-mode-max-width:300px;--source-card-set-mode-max-width:500px;--filter-blur-none:0px;--filter-blur-100:8px;--filter-blur-150:12px;--filter-blur-200:16px;--color-bg-base:#ffffff;--color-bg-inverse:#161616;--color-border-00:#ffffff;--color-border-01:#f4f4f4;--color-border-02:#e0e0e0;--color-border-03:#c6c6c6;--color-border-inverse-00:#161616;--color-border-inverse-01:#393939;--color-field-01:#ffffff;--color-field-02:#f4f4f4;--color-icon-primary:#161616;--color-icon-secondary:#525252;--color-icon-helper:#8d8d8d;--color-icon-on-color:#ffffff;--color-icon-inverse:#ffffff;--color-icon-disabled:#16161640;--color-text-primary:#161616;--color-text-secondary:#525252;--color-text-helper:#8d8d8d;--color-text-placeholder:#a8a8a8;--color-text-on-color:#ffffff;--color-text-inverse:#ffffff;--color-text-disabled:#16161640;--button-bg-color-primary:#000000;--button-bg-color-primary-hover:#161616;--button-bg-color-primary-active:#1e1e1e;--button-bg-color-secondary:#f4f4f4;--button-bg-color-secondary-hover:#e0e0e0;--button-bg-color-secondary-active:#c6c6c6;--button-bg-color-ghost-hover:#f4f4f4;--button-bg-color-ghost-active:#eaeaea;--button-bg-color-frosted:#6f6f6f66;--button-bg-color-frosted-hover:#6f6f6f80;--button-bg-color-frosted-active:#6f6f6f99;--button-bg-color-disabled:#e0e0e0;--button-bg-color-positive:#dcfce7;--surface-bg-color-01:#f4f4f4;--surface-bg-color-01-hover:#eaeaea;--surface-bg-color-01-active:#e0e0e0;--surface-bg-color-02:#ffffff;--surface-bg-color-inverse:#262626;--surface-bg-color-inverse-hover:#303030;--surface-bg-color-inverse-active:#393939;--surface-bg-color-disabled:#e0e0e0;--chip-bg-color-primary:#161616;--chip-bg-color-primary-hover:#1e1e1e;--chip-bg-color-primary-active:#262626;--chip-bg-color-subtle:#f4f4f4;--chip-bg-color-subtle-hover:#eaeaea;--chip-bg-color-subtle-active:#e0e0e0;--chip-bg-color-outline-hover:#f4f4f4;--chip-bg-color-outline-active:#eaeaea;--label-bg-color-accent:#ff3944;}:host{display:block;font-family:var(--font-family, var(--font-family-base));font-style:normal;display:contents;}:host(.show-in-widget.preview-filters){padding-left:24px}.filters-modal-list,.sub-filters-wrapper,.main-filters-list,.filters-modal-sub-list,.selected-filters-wrapper{list-style:none;margin:0;padding:0}.main-filters-list{padding:var(--spacing-25);gap:var(--spacing-25);border-radius:8px;background:var(--surface-bg-color-01);display:inline-flex}vviinn-price-range{max-width:400px;padding-bottom:var(--spacing-150)}:host(.show-in-widget) vviinn-price-range{max-width:unset}.filters-modal-main-button,.filters-sub-button,.filters-main-button,.filters-modal-close,.filters-sub-button-selected{font-family:var(--font-family, var(--font-family-base));cursor:pointer;border:none}.filters-sub-button,.filters-main-button{font-size:var(--font-size-body);font-weight:var(--font-weight-400);line-height:var(--line-height-body);letter-spacing:var(--letter-spacing-body);display:flex;justify-content:center;align-items:center;border-radius:6px}.filters-main-button{padding:var(--spacing-100);color:var(--color-text-helper);background:none;transition:background 0.15s,\n color 0.15s}.filters-main-button.active,.filters-main-button:hover{background:var(--surface-bg-color-02);color:var(--color-text-primary)}.sub-filters-wrapper,.selected-filters-wrapper{gap:var(--spacing-100);display:flex;flex-direction:row;overflow-x:auto;scrollbar-width:thin}.sub-filters-wrapper{align-items:center;gap:var(--spacing-100);margin-top:16px;margin:16px -2px 0}.sub-filters-wrapper>li{padding:2px}.selected-filters-wrapper{align-items:center;gap:var(--spacing-100);flex-wrap:wrap}:host(.show-in-widget.preview-filters) .selected-filters-wrapper{flex-wrap:unset;overflow-x:auto}:host(.show-in-widget.preview-filters) .sub-filters-wrapper,:host(.show-in-widget.preview-filters) .selected-filters-wrapper{transform:translateX(-24px);padding-left:var(--spacing-300);padding-right:var(--spacing-300);width:100%}.filters-sub-button{color:var(--color-text-primary);background:var(--surface-bg-color-01);padding:var(--spacing-100);gap:var(--spacing-25);height:100%}.filters-sub-button>span,.filters-sub-button-selected>span{display:inline-flex;justify-content:center;align-items:center;gap:var(--spacing-25);white-space:nowrap}.filters-sub-button>span>span,.filters-sub-button-selected>span>span{padding:var(--spacing-25)}.filters-sub-button:hover{background:var(--surface-bg-color-01-hover)}.filters-sub-button:disabled{cursor:not-allowed;background:var(--surface-bg-color-disabled);color:var(--color-text-disabled)}.filters-more-button{display:flex;padding:var(--spacing-100);gap:var(--spacing-50);border-radius:var(--border-radius-100);align-items:flex-start;background-color:var(--button-bg-color-secondary);transition:background-color 0.1s;border:none;cursor:pointer}.filters-more-button:hover{background-color:var(--button-bg-color-secondary-hover)}.filters-modal-wrapper{display:flex;flex-direction:column;background:#ffffff}.filters-modal.button,.filters-modal.modal{display:none;position:fixed;top:0;bottom:0;right:0;left:0;z-index:99999;background-color:rgba(0, 0, 0, 0.5)}.filters-modal.button .filters-modal-wrapper{position:fixed;top:0;bottom:0;right:0;width:420px;z-index:99999;border-radius:var(--border-radius-400) var(--border-radius-none)\n var(--border-radius-none) var(--border-radius-400)}.filters-modal.preview{display:block}.filters-modal.open{display:block}.filters-modal-header{position:relative;padding:var(--spacing-200) 0;color:var(--color-text-primary);text-align:center;font-size:var(--font-size-headline);font-weight:var(--font-weight-500);line-height:var(--line-height-headline);letter-spacing:var(--letter-spacing-headline);border-bottom:1px solid var(--color-border-01);display:flex;justify-content:center;gap:5px}.filters-modal-main{overflow-y:auto;scrolbar-width:thin}.filters-modal-list{margin:var(--spacing-50) 0 0 var(--spacing-300)}.filters-modal-list>li{padding-right:var(--spacing-300)}.filters-modal-list>li:not(:last-child) .filters-modal-main-button-wrapper{border-bottom:1px solid var(--color-border-01)}.filters-modal-main-button{width:100%;background:none;text-align:left;padding:var(--spacing-200) 0;color:var(--color-text-primary);font-size:var(--font-size-label-large);font-weight:var(--font-weight-500);line-height:var(--line-height-label-large);letter-spacing:var(--letter-spacing-label-large)}.filters-modal-sub-list{display:none}.filters-modal-sub-list.open{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding-bottom:var(--spacing-150)}.filters-modal-sub-list>li{display:contents}.filters-modal-close{position:absolute;color:#6f6f6f;right:var(--spacing-100);top:var(--spacing-200);cursor:pointer;background:none}.filters-modal-close:hover{color:#000}.filters-modal.preview .filters-modal-close{display:none}.filters-more-modal-button{background:none;border:none;cursor:pointer;display:flex;padding:var(--spacing-75);align-items:center;gap:var(--spacing-50);border-radius:var(--border-radius-100);background-color:var(--surface-bg-color-01);transition:background-color 0.1s;font-family:var(--font-family, var(--font-family-base));font-size:var(--font-size-label);color:var(--color-text-primary)}.filters-more-modal-button:hover{background-color:var(--surface-bg-color-01-hover)}.filters-more-modal-button.active{background:var(--surface-bg-color-inverse);color:var(--color-text-inverse)}.filters-more-modal-button>span{white-space:nowrap;padding:var(--spacing-25)}.filters-more-modal-button:disabled{cursor:not-allowed;opacity:0.5}.filters-modal-actions{border-top:1px solid var(--color-border-01);padding:var(--spacing-125);z-index:10;border-radius:0px 0px 0px 32px}.filters-modal-apply,.filters-modal-reset{font-family:var(--font-family, var(--font-family-base))}.filters-modal-apply{cursor:pointer;width:100%;border:none;margin-bottom:20px;display:flex;padding:var(--spacing-150);justify-content:center;align-items:center;gap:var(--spacing-50);align-self:stretch;color:var(--color-text-inverse);text-align:center;border-radius:var(--border-radius-150);background:var(--button-bg-color-primary);font-size:var(--font-size-label-large);font-weight:var(--font-weight-500);line-height:var(--line-height-label-large);letter-spacing:var(--letter-spacing-label-large)}.filters-modal-apply:disabled{background:var(--button-bg-color-disabled);color:var(--color-text-disabled)}.filters-modal-reset{background:none;border:none;cursor:pointer;display:block;text-align:center;width:100%;padding:var(--spacing-125) 0;color:var(--color-text-secondary);text-align:center;font-size:var(--font-size-label);font-weight:var(--font-weight-500);line-height:var(--line-height-label);letter-spacing:var(--letter-spacing-label)}.filters-modal-reset:hover{color:var(--color-text-primary)}.selected-filters-wrapper>li .filters-sub-button-selected{border-radius:var(--border-radius-100);background:var(--surface-bg-color-inverse);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:var(--spacing-100)}.filters-sub-button-selected{display:flex;align-items:center;gap:var(--spacing-25);background:var(--surface-bg-color-inverse);border-radius:var(--border-radius-100);color:var(--color-text-inverse);text-overflow:ellipsis;font-size:var(--font-size-body);font-weight:var(--font-weight-400);line-height:var(--line-height-body);letter-spacing:var(--letter-spacing-body);padding:var(--spacing-100)}.filters-sub-button-color{width:40px;height:40px;border:var(--stroke-width-50) solid var(--color-border-01);border-radius:var(--border-radius-full);display:inline-block;box-sizing:border-box;position:relative}.filters-sub-button-color-dot{position:absolute;left:0;top:0;width:100%;height:100%;border-radius:var(--border-radius-full)}.filters-sub-button-color:disabled{opacity:0.25}.selected-filters-wrapper .filters-sub-button-selected.filters-sub-button-color{width:24px;height:24px;border:none}.filters-option-icon-wrapper{display:contents}.filters-sub-button-color>span{display:none}.filters-sub-button-color.active{border:var(--stroke-width-75) solid var(--color-border-inverse-00);background-color:white}.filters-sub-button-color.active .filters-sub-button-color-dot{transform:scale(0.75)}.filters-modal-main-button-added-options{color:var(--color-text-secondary);text-overflow:ellipsis;font-size:var(--font-size-body);font-weight:var(--font-weight-400);line-height:var(--line-height-body);letter-spacing:var(--letter-spacing-body)}.filters-modal-main-button-added-options>span::after{content:\", \"}.filters-modal-main-button-added-options>span:last-child::after{content:\"\"}@media (max-width: 768px){:host(.show-in-widget.preview-filters){padding-right:var(--spacing-300)}.sub-filters-wrapper,.selected-filters-wrapper{flex-wrap:unset;overflow-x:auto;padding-bottom:0}.sub-filters-wrapper,.selected-filters-wrapper{margin-top:16px;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.sub-filters-wrapper::-webkit-scrollbar,.selected-filters-wrapper::-webkit-scrollbar{display:none}.filters-modal.button .filters-modal-wrapper,.filters-modal.modal .filters-modal-wrapper{width:100%;border-radius:24px 24px 0px 0px}.filters-modal.button .filters-modal-wrapper{top:10%}.filters-modal.modal .filters-modal-wrapper{position:fixed;width:100%;height:calc(100% - 64px);bottom:0;transform:translateY(-64px)}.filters-modal.modal .filters-modal-header{font-size:var(--font-size-body-large)}.filters-modal.modal .filters-modal-main{padding-bottom:120px}}";
494
+ const vviinnFiltersCss$2 = ":host{--font-family-base:Inter, system-ui, sans-serif;--font-family-mono:monospace;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--font-size-title:24px;--font-size-headline:18px;--font-size-label-large:16px;--font-size-label:14px;--font-size-body-large:16px;--font-size-body:14px;--font-size-caption:12px;--line-height-title:32px;--line-height-headline:24px;--line-height-label-large:24px;--line-height-label:20px;--line-height-body-large:24px;--line-height-body:20px;--line-height-caption:16px;--letter-spacing-title:0px;--letter-spacing-headline:0px;--letter-spacing-label-large:0px;--letter-spacing-label:0px;--letter-spacing-body-large:0px;--letter-spacing-body:0px;--letter-spacing-caption:0px;--font-weight-400:400;--font-weight-500:500;--font-weight-600:600;--font-weight-700:700;--spacing-none:0px;--spacing-25:2px;--spacing-50:4px;--spacing-75:6px;--spacing-100:8px;--spacing-125:10px;--spacing-150:12px;--spacing-200:16px;--spacing-250:20px;--spacing-300:24px;--spacing-400:32px;--spacing-500:40px;--spacing-600:48px;--border-radius-none:0px;--border-radius-25:2px;--border-radius-50:4px;--border-radius-100:8px;--border-radius-150:12px;--border-radius-200:16px;--border-radius-300:24px;--border-radius-400:32px;--border-radius-full:9999px;--stroke-width-none:0px;--stroke-width-25:1px;--stroke-width-50:2px;--stroke-width-75:3px;--stroke-width-100:4px;--stroke-width-150:6px;--stroke-width-200:8px;--stroke-width-300:12px;--product-card-widget-min-width:135px;--product-card-results-min-width:250px;--image-set-mode-min-size:155px;--product-card-set-mode-max-width:300px;--source-card-set-mode-max-width:500px;--filter-blur-none:0px;--filter-blur-100:8px;--filter-blur-150:12px;--filter-blur-200:16px;--color-bg-base:#ffffff;--color-bg-inverse:#161616;--color-border-00:#ffffff;--color-border-01:#f4f4f4;--color-border-02:#e0e0e0;--color-border-03:#c6c6c6;--color-border-inverse-00:#161616;--color-border-inverse-01:#393939;--color-field-01:#ffffff;--color-field-02:#f4f4f4;--color-icon-primary:#161616;--color-icon-secondary:#525252;--color-icon-helper:#8d8d8d;--color-icon-on-color:#ffffff;--color-icon-inverse:#ffffff;--color-icon-disabled:#16161640;--color-text-primary:#161616;--color-text-secondary:#525252;--color-text-helper:#8d8d8d;--color-text-placeholder:#a8a8a8;--color-text-on-color:#ffffff;--color-text-inverse:#ffffff;--color-text-disabled:#16161640;--button-bg-color-primary:#000000;--button-bg-color-primary-hover:#161616;--button-bg-color-primary-active:#1e1e1e;--button-bg-color-secondary:#f4f4f4;--button-bg-color-secondary-hover:#e0e0e0;--button-bg-color-secondary-active:#c6c6c6;--button-bg-color-ghost-hover:#f4f4f4;--button-bg-color-ghost-active:#eaeaea;--button-bg-color-frosted:#6f6f6f66;--button-bg-color-frosted-hover:#6f6f6f80;--button-bg-color-frosted-active:#6f6f6f99;--button-bg-color-disabled:#e0e0e0;--button-bg-color-positive:#dcfce7;--surface-bg-color-01:#f4f4f4;--surface-bg-color-01-hover:#eaeaea;--surface-bg-color-01-active:#e0e0e0;--surface-bg-color-02:#ffffff;--surface-bg-color-inverse:#262626;--surface-bg-color-inverse-hover:#303030;--surface-bg-color-inverse-active:#393939;--surface-bg-color-disabled:#e0e0e0;--chip-bg-color-primary:#161616;--chip-bg-color-primary-hover:#1e1e1e;--chip-bg-color-primary-active:#262626;--chip-bg-color-subtle:#f4f4f4;--chip-bg-color-subtle-hover:#eaeaea;--chip-bg-color-subtle-active:#e0e0e0;--chip-bg-color-outline-hover:#f4f4f4;--chip-bg-color-outline-active:#eaeaea;--label-bg-color-accent:#ff3944;}:host{display:block;font-family:var(--font-family, var(--font-family-base));font-style:normal;display:contents;}:host(.show-in-widget.preview-filters){padding-left:24px}.filters-modal-list,.sub-filters-wrapper,.main-filters-list,.filters-modal-sub-list,.selected-filters-wrapper{list-style:none;margin:0;padding:0}.main-filters-list{padding:var(--spacing-25);gap:var(--spacing-25);border-radius:8px;background:var(--surface-bg-color-01);display:inline-flex}vviinn-price-range{max-width:400px;padding-bottom:var(--spacing-150)}:host(.show-in-widget) vviinn-price-range{max-width:unset}.filters-modal-main-button,.filters-sub-button,.filters-main-button,.filters-modal-close,.filters-sub-button-selected{font-family:var(--font-family, var(--font-family-base));cursor:pointer;border:none}.filters-sub-button,.filters-main-button{font-size:var(--font-size-body);font-weight:var(--font-weight-400);line-height:var(--line-height-body);letter-spacing:var(--letter-spacing-body);display:flex;justify-content:center;align-items:center;border-radius:6px}.filters-main-button{padding:var(--spacing-100);color:var(--color-text-helper);background:none;transition:background 0.15s,\n color 0.15s}.filters-main-button.active,.filters-main-button:hover{background:var(--surface-bg-color-02);color:var(--color-text-primary)}.sub-filters-wrapper,.selected-filters-wrapper{gap:var(--spacing-100);display:flex;flex-direction:row;overflow-x:auto;scrollbar-width:thin}.sub-filters-wrapper{align-items:center;gap:var(--spacing-100);margin-top:16px;margin:16px -2px 0}.sub-filters-wrapper>li{padding:2px}.selected-filters-wrapper{align-items:center;gap:var(--spacing-100);flex-wrap:wrap}:host(.show-in-widget.preview-filters) .selected-filters-wrapper{flex-wrap:unset;overflow-x:auto}:host(.show-in-widget.preview-filters) .sub-filters-wrapper,:host(.show-in-widget.preview-filters) .selected-filters-wrapper{transform:translateX(-24px);padding-left:var(--spacing-300);padding-right:var(--spacing-300);width:100%}.filters-sub-button{color:var(--color-text-primary);background:var(--surface-bg-color-01);padding:var(--spacing-100);gap:var(--spacing-25);height:100%}.filters-sub-button>span,.filters-sub-button-selected>span{display:inline-flex;justify-content:center;align-items:center;gap:var(--spacing-25);white-space:nowrap}.filters-sub-button>span>span,.filters-sub-button-selected>span>span{padding:var(--spacing-25)}.filters-sub-button:hover{background:var(--surface-bg-color-01-hover)}.filters-sub-button:disabled{cursor:not-allowed;background:var(--surface-bg-color-disabled);color:var(--color-text-disabled)}.filters-more-button{display:flex;padding:var(--spacing-100);gap:var(--spacing-50);border-radius:var(--border-radius-100);align-items:flex-start;background-color:var(--button-bg-color-secondary);transition:background-color 0.1s;border:none;cursor:pointer}.filters-more-button:hover{background-color:var(--button-bg-color-secondary-hover)}.filters-modal-wrapper{display:flex;flex-direction:column;background:#ffffff}.filters-modal.button,.filters-modal.modal{display:none;position:fixed;top:0;bottom:0;right:0;left:0;z-index:99999;background-color:rgba(0, 0, 0, 0.5)}.filters-modal.button .filters-modal-wrapper{position:fixed;top:0;bottom:0;right:0;width:420px;z-index:99999;border-radius:var(--border-radius-400) var(--border-radius-none)\n var(--border-radius-none) var(--border-radius-400)}.filters-modal.preview{display:block}.filters-modal.open{display:block}.filters-modal-header{position:relative;padding:var(--spacing-200) 0;color:var(--color-text-primary);text-align:center;font-size:var(--font-size-headline);font-weight:var(--font-weight-500);line-height:var(--line-height-headline);letter-spacing:var(--letter-spacing-headline);border-bottom:1px solid var(--color-border-01);display:flex;justify-content:center;gap:5px}.filters-modal-main{overflow-y:auto;scrolbar-width:thin}.filters-modal-list{margin:var(--spacing-50) 0 0 var(--spacing-300)}.filters-modal-list>li{padding-right:var(--spacing-300)}.filters-modal-list>li:not(:last-child) .filters-modal-main-button-wrapper{border-bottom:1px solid var(--color-border-01)}.filters-modal-main-button{position:relative;width:100%;background:none;text-align:left;padding:var(--spacing-200) 0;color:var(--color-text-primary);font-size:var(--font-size-label-large);font-weight:var(--font-weight-500);line-height:var(--line-height-label-large);letter-spacing:var(--letter-spacing-label-large)}.filters-modal-main-button>svg{position:absolute;right:0;top:var(--spacing-200);color:var(--color-icon-helper);transform:rotate(90deg)}.filters-modal-main-button:hover>svg{color:var(--color-icon-primary);transition:color 0.2s}.filters-modal-main-button-wrapper.open .filters-modal-main-button>svg{transform:rotate(-90deg)}.filters-modal-sub-list{display:none}.filters-modal-main-button-wrapper.open .filters-modal-sub-list{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding-bottom:var(--spacing-150)}.filters-modal-sub-list>li{display:contents}.filters-modal-close{position:absolute;color:#6f6f6f;right:var(--spacing-100);top:var(--spacing-200);cursor:pointer;background:none}.filters-modal-close:hover{color:#000}.filters-modal.preview .filters-modal-close{display:none}.filters-more-modal-button{background:none;border:none;cursor:pointer;display:flex;padding:var(--spacing-75);align-items:center;gap:var(--spacing-50);border-radius:var(--border-radius-100);background-color:var(--surface-bg-color-01);transition:background-color 0.1s;font-family:var(--font-family, var(--font-family-base));font-size:var(--font-size-label);color:var(--color-text-primary)}.filters-more-modal-button:hover{background-color:var(--surface-bg-color-01-hover)}.filters-more-modal-button.active{background:var(--surface-bg-color-inverse);color:var(--color-text-inverse)}.filters-more-modal-button>span{white-space:nowrap;padding:var(--spacing-25)}.filters-more-modal-button:disabled{cursor:not-allowed;opacity:0.5}.filters-modal-actions{border-top:1px solid var(--color-border-01);padding:var(--spacing-125);z-index:10;border-radius:0px 0px 0px 32px}.filters-modal-apply,.filters-modal-reset{font-family:var(--font-family, var(--font-family-base))}.filters-modal-apply{cursor:pointer;width:100%;border:none;margin-bottom:20px;display:flex;padding:var(--spacing-150);justify-content:center;align-items:center;gap:var(--spacing-50);align-self:stretch;color:var(--color-text-inverse);text-align:center;border-radius:var(--border-radius-150);background:var(--button-bg-color-primary);font-size:var(--font-size-label-large);font-weight:var(--font-weight-500);line-height:var(--line-height-label-large);letter-spacing:var(--letter-spacing-label-large)}.filters-modal-apply:disabled{background:var(--button-bg-color-disabled);color:var(--color-text-disabled)}.filters-modal-reset{background:none;border:none;cursor:pointer;display:block;text-align:center;width:100%;padding:var(--spacing-125) 0;color:var(--color-text-secondary);text-align:center;font-size:var(--font-size-label);font-weight:var(--font-weight-500);line-height:var(--line-height-label);letter-spacing:var(--letter-spacing-label)}.filters-modal-reset:hover{color:var(--color-text-primary)}.selected-filters-wrapper>li .filters-sub-button-selected{border-radius:var(--border-radius-100);background:var(--surface-bg-color-inverse);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:var(--spacing-100)}.filters-sub-button-selected{display:flex;align-items:center;gap:var(--spacing-25);background:var(--surface-bg-color-inverse);border-radius:var(--border-radius-100);color:var(--color-text-inverse);text-overflow:ellipsis;font-size:var(--font-size-body);font-weight:var(--font-weight-400);line-height:var(--line-height-body);letter-spacing:var(--letter-spacing-body);padding:var(--spacing-100)}.filters-sub-button-color{width:40px;height:40px;border:var(--stroke-width-50) solid var(--color-border-01);border-radius:var(--border-radius-full);display:inline-block;box-sizing:border-box;position:relative}.filters-sub-button-color-dot{position:absolute;left:0;top:0;width:100%;height:100%;border-radius:var(--border-radius-full)}.filters-sub-button-color:disabled{opacity:0.25}.selected-filters-wrapper .filters-sub-button-selected.filters-sub-button-color{width:24px;height:24px;border:none}.filters-option-icon-wrapper{display:contents}.filters-sub-button-color>span{display:none}.filters-sub-button-color.active{border:var(--stroke-width-75) solid var(--color-border-inverse-00);background-color:white}.filters-sub-button-color.active .filters-sub-button-color-dot{transform:scale(0.75)}.filters-modal-main-button-added-options{color:var(--color-text-secondary);text-overflow:ellipsis;padding-right:var(--spacing-100);font-size:var(--font-size-body);font-weight:var(--font-weight-400);line-height:var(--line-height-body);letter-spacing:var(--letter-spacing-body)}.filters-modal-main-button-added-options>span::after{content:\", \"}.filters-modal-main-button-added-options>span:last-child::after{content:\"\"}@media (max-width: 768px){:host(.show-in-widget.preview-filters){padding-right:var(--spacing-300)}.sub-filters-wrapper,.selected-filters-wrapper{flex-wrap:unset;overflow-x:auto;padding-bottom:0}.sub-filters-wrapper,.selected-filters-wrapper{margin-top:16px;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.sub-filters-wrapper::-webkit-scrollbar,.selected-filters-wrapper::-webkit-scrollbar{display:none}.filters-modal.button .filters-modal-wrapper,.filters-modal.modal .filters-modal-wrapper{width:100%;border-radius:24px 24px 0px 0px}.filters-modal.button .filters-modal-wrapper{top:10%}.filters-modal.modal .filters-modal-wrapper{position:fixed;width:100%;height:calc(100% - 64px);bottom:0;transform:translateY(-64px)}.filters-modal.modal .filters-modal-header{font-size:var(--font-size-body-large)}.filters-modal.modal .filters-modal-main{padding-bottom:120px}}";
495
495
 
496
496
  /**
497
497
  * @slot vviinn-extended-filters-title - Text on widget's header.
@@ -529,6 +529,7 @@ const vviinnFiltersCss$2 = ":host{--font-family-base:Inter, system-ui, sans-seri
529
529
  * @part histogram-label - Label for the histogram.
530
530
  */
531
531
  const FILTER_OPTIONS_INITIAL_COUNT = 8;
532
+ const FILTER_OPTIONS_STEP_COUNT = 5;
532
533
  const VviinnExtendedFilters = class {
533
534
  constructor(hostRef) {
534
535
  index.registerInstance(this, hostRef);
@@ -538,6 +539,8 @@ const VviinnExtendedFilters = class {
538
539
  this.vviinnSelectedFiltersReset = index.createEvent(this, "vviinnSelectedFiltersReset", 7);
539
540
  this.vviinnExtendedFiltersButtonClicked = index.createEvent(this, "vviinnExtendedFiltersButtonClicked", 7);
540
541
  this.getFilters = () => this.innerFilters.length ? this.innerFilters : this.state.dynamicFilters;
542
+ this.skipStateChanges = (isTriggeredByVpsWidget) => (isTriggeredByVpsWidget && !this.showInWidget) ||
543
+ (!isTriggeredByVpsWidget && this.showInWidget);
541
544
  this.getSelectedPriceInterval = () => {
542
545
  var _a, _b;
543
546
  return ((_b = (_a = this.requestFilters.find(({ column }) => triggerFilter.isIntervalFilter(column))) === null || _a === void 0 ? void 0 : _a.values[0]) !== null && _b !== void 0 ? _b : {});
@@ -545,11 +548,25 @@ const VviinnExtendedFilters = class {
545
548
  this.handleSelectedFiltersReset = ({ detail, }) => {
546
549
  if (this.skipStateChanges(detail.isTriggeredByVpsWidget))
547
550
  return;
548
- this.requestFilters = [];
549
- this.selectedMoreOptions = [];
551
+ this.resetFiltersState();
552
+ };
553
+ this.handleCloseModal = () => {
554
+ this.showMore = false;
555
+ this.resetOptionsInteractions();
556
+ };
557
+ this.resetModal = () => {
558
+ triggerFilter.triggerResetFilters({
559
+ vviinnFilterTriggered: this.vviinnFilterTriggered,
560
+ vviinnFiltersChanged: this.vviinnFiltersChanged,
561
+ el: this.el,
562
+ isTriggeredByVpsWidget: this.showInWidget,
563
+ });
564
+ this.vviinnSelectedFiltersReset.emit({
565
+ isTriggeredByVpsWidget: this.showInWidget,
566
+ });
567
+ this.resetFiltersState();
568
+ this.showMore = false;
550
569
  };
551
- this.skipStateChanges = (isTriggeredByVpsWidget) => (isTriggeredByVpsWidget && !this.showInWidget) ||
552
- (!isTriggeredByVpsWidget && this.showInWidget);
553
570
  this.handleExtendedFiltersButtonClicked = ({ detail, }) => {
554
571
  const { isTriggeredByVpsWidget } = detail;
555
572
  if (!this.skipStateChanges(isTriggeredByVpsWidget)) {
@@ -581,6 +598,14 @@ const VviinnExtendedFilters = class {
581
598
  this.selectedMoreOptions = [];
582
599
  this.displayedOptionsCount = new Map();
583
600
  }
601
+ resetOptionsInteractions() {
602
+ this.displayedOptionsCount = new Map();
603
+ this.selectedMoreOptions = [];
604
+ }
605
+ resetFiltersState() {
606
+ this.resetOptionsInteractions();
607
+ this.requestFilters = [];
608
+ }
584
609
  replaceSlotsContent() {
585
610
  const slots = this.el.querySelectorAll("[slot]");
586
611
  this.globalSlotsChanged.emit({
@@ -613,30 +638,35 @@ const VviinnExtendedFilters = class {
613
638
  showMoreOptions(filterColumn, totalOptions) {
614
639
  const currentCount = this.displayedOptionsCount.get(filterColumn) ||
615
640
  FILTER_OPTIONS_INITIAL_COUNT;
616
- const newCount = Math.min(currentCount + FILTER_OPTIONS_INITIAL_COUNT, totalOptions);
641
+ const newCount = Math.min(currentCount + FILTER_OPTIONS_STEP_COUNT, totalOptions);
617
642
  this.displayedOptionsCount = new Map(this.displayedOptionsCount);
618
643
  this.displayedOptionsCount.set(filterColumn, newCount);
619
644
  }
620
645
  renderModal(filters) {
621
- return (index.h("div", { class: `filters-modal ${this.mode} ${this.showMore ? "open" : ""}`, part: "extended-filters-modal" }, index.h("aside", { class: "filters-modal-wrapper", part: "extended-filters-modal-wrapper" }, this.showHeader && (index.h("div", { class: "filters-modal-header", part: "extended-filters-header" }, index.h("slot", { name: "vviinn-extended-filters-title" }, index.h("span", null, index$1.instance.t("filters.modal.title"))), index.h("button", { class: "filters-modal-close", onClick: () => {
622
- this.showMore = false;
623
- }, part: "extended-filters-modal-close" }, index.h(NewCloseIcon, null)))), index.h("div", { class: "filters-modal-main", part: "extended-filters-main" }, index.h("ul", { class: "filters-modal-list", part: "extended-filters-list" }, (filters !== null && filters !== void 0 ? filters : []).map((mainFilter) => {
646
+ return (index.h("div", { class: `filters-modal ${this.mode} ${this.showMore ? "open" : ""}`, part: "extended-filters-modal" }, index.h("aside", { class: "filters-modal-wrapper", part: "extended-filters-modal-wrapper" }, this.showHeader && (index.h("div", { class: "filters-modal-header", part: "extended-filters-header" }, index.h("slot", { name: "vviinn-extended-filters-title" }, index.h("span", null, index$1.instance.t("filters.modal.title"))), index.h("button", { class: "filters-modal-close", onClick: this.handleCloseModal, part: "extended-filters-modal-close" }, index.h(NewCloseIcon, null)))), index.h("div", { class: "filters-modal-main", part: "extended-filters-main" }, index.h("ul", { class: "filters-modal-list", part: "extended-filters-list" }, (filters !== null && filters !== void 0 ? filters : []).map((mainFilter) => {
624
647
  var _a;
625
648
  const mainColumn = mainFilter.column;
626
649
  const filterOptions = getFilterOptions(mainFilter);
627
650
  const requestFilter = this.requestFilters.find(({ column }) => column === mainColumn);
628
651
  const addedOptions = [];
629
652
  (_a = requestFilter === null || requestFilter === void 0 ? void 0 : requestFilter.values) === null || _a === void 0 ? void 0 : _a.forEach((value) => {
630
- const index$1 = filterOptions.findIndex((f) => f.value.value === value || f.value === value);
631
- if (index$1 > -1) {
632
- addedOptions.push(index.h("span", null, filterOptions[index$1].label));
653
+ if (triggerFilter.isIntervalFilter(mainColumn)) {
654
+ const intervalFilter = filters.find((filter) => filter.column === mainColumn);
655
+ const priceLabel = triggerFilter.getPriceLabel(intervalFilter, value, search_store.globalState.currencySign);
656
+ priceLabel && addedOptions.push(index.h("span", null, priceLabel));
657
+ }
658
+ else {
659
+ const index$1 = filterOptions.findIndex((f) => { var _a; return ((_a = f.value.value) !== null && _a !== void 0 ? _a : f.value) === value; });
660
+ if (index$1 > -1) {
661
+ addedOptions.push(index.h("span", null, filterOptions[index$1].label));
662
+ }
633
663
  }
634
664
  });
635
- return (index.h("li", { part: "extended-filters-row" }, index.h("div", { class: "filters-modal-main-button-wrapper", part: "extended-filters-row-wrapper" }, index.h("button", { onClick: () => this.handleMoreOptionsMainClick(mainFilter.column), class: "filters-modal-main-button", part: "extended-filters-main-button" }, mainFilter.label, addedOptions.length > 0 && (index.h("div", { class: "filters-modal-main-button-added-options", part: "extended-filters-selected-wrapper" }, addedOptions))), triggerFilter.isIntervalFilter(mainColumn) &&
636
- this.selectedMoreOptions.includes(mainFilter.column) ? (index.h("vviinn-price-range", { histogram: filterOptions.filter((item) => item.value.frequency > 0), priceChangeHandler: this.priceChangeHandler, selectedInterval: this.getSelectedPriceInterval() })) : (index.h("ul", { class: `filters-modal-sub-list ${this.selectedMoreOptions.includes(mainFilter.column)
665
+ return (index.h("li", { part: "extended-filters-row" }, index.h("div", { class: `filters-modal-main-button-wrapper ${this.selectedMoreOptions.includes(mainFilter.column)
637
666
  ? "open"
638
- : ""}`, part: "extended-filters-sub-list" }, this.renderFilterOptions(mainFilter, filterOptions))))));
639
- })), (filters === null || filters === void 0 ? void 0 : filters.length) > 0 && (index.h("div", { class: "filters-modal-actions", part: "extended-filters-actions" }, this.mode === "button" && (index.h("button", { class: "filters-modal-apply", onClick: () => (this.showMore = false), disabled: this.requestFilters.length === 0, part: "extended-filters-apply" }, index.h("slot", { name: "vviinn-extended-filters-apply" }, index$1.instance.t("filters.modal.apply")))), index.h("button", { class: "filters-modal-reset", onClick: () => this.resetModal(), part: "extended-filters-reset" }, index.h("slot", { name: "vviinn-extended-filters-reset" }, index$1.instance.t("filters.modal.resetFilters")))))))));
667
+ : ""}`, part: "extended-filters-row-wrapper" }, index.h("button", { onClick: () => this.handleMoreOptionsMainClick(mainFilter.column), class: "filters-modal-main-button", part: "extended-filters-main-button" }, mainFilter.label, addedOptions.length > 0 && (index.h("div", { class: "filters-modal-main-button-added-options", part: "extended-filters-selected-wrapper" }, addedOptions)), index.h(ChevronIconSmall, null)), triggerFilter.isIntervalFilter(mainColumn) &&
668
+ this.selectedMoreOptions.includes(mainFilter.column) ? (index.h("vviinn-price-range", { histogram: filterOptions.filter((item) => item.value.frequency > 0), priceChangeHandler: this.priceChangeHandler, selectedInterval: this.getSelectedPriceInterval() })) : (index.h("ul", { class: "filters-modal-sub-list", part: "extended-filters-sub-list" }, this.renderFilterOptions(mainFilter, filterOptions))))));
669
+ })), (filters === null || filters === void 0 ? void 0 : filters.length) > 0 && (index.h("div", { class: "filters-modal-actions", part: "extended-filters-actions" }, this.mode === "button" && (index.h("button", { class: "filters-modal-apply", onClick: () => (this.showMore = false), disabled: this.requestFilters.length === 0, part: "extended-filters-apply" }, index.h("slot", { name: "vviinn-extended-filters-apply" }, index$1.instance.t("filters.modal.apply")))), index.h("button", { class: "filters-modal-reset", onClick: this.resetModal, part: "extended-filters-reset" }, index.h("slot", { name: "vviinn-extended-filters-reset" }, index$1.instance.t("filters.modal.resetFilters")))))))));
640
670
  }
641
671
  renderFilterOptions(filter, filterOptions) {
642
672
  const { column: filterColumn } = filter;
@@ -680,8 +710,10 @@ const VviinnExtendedFilters = class {
680
710
  return active;
681
711
  }
682
712
  handleMoreOptionsMainClick(column) {
683
- if (this.selectedMoreOptions.includes(column)) {
713
+ const optionsVisible = this.selectedMoreOptions.includes(column);
714
+ if (optionsVisible) {
684
715
  this.selectedMoreOptions = this.selectedMoreOptions.filter((option) => option !== column);
716
+ this.displayedOptionsCount.delete(column);
685
717
  }
686
718
  else {
687
719
  this.vviinnFilterTriggered.emit({
@@ -716,17 +748,6 @@ const VviinnExtendedFilters = class {
716
748
  this.mode !== "preview" &&
717
749
  document.removeEventListener("vviinnExtendedFiltersButtonClicked", this.handleExtendedFiltersButtonClicked);
718
750
  }
719
- resetModal() {
720
- triggerFilter.triggerResetFilters({
721
- vviinnFilterTriggered: this.vviinnFilterTriggered,
722
- vviinnFiltersChanged: this.vviinnFiltersChanged,
723
- el: this.el,
724
- isTriggeredByVpsWidget: this.showInWidget,
725
- });
726
- this.selectedMoreOptions = [];
727
- this.requestFilters = [];
728
- this.showMore = false;
729
- }
730
751
  getAsideElement() {
731
752
  return this.el.shadowRoot.querySelector("aside");
732
753
  }
@@ -759,7 +780,7 @@ const VviinnExtendedFilters = class {
759
780
  };
760
781
  VviinnExtendedFilters.style = vviinnFiltersCss$2;
761
782
 
762
- const vviinnFiltersCss$1 = ":host{--font-family-base:Inter, system-ui, sans-serif;--font-family-mono:monospace;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--font-size-title:24px;--font-size-headline:18px;--font-size-label-large:16px;--font-size-label:14px;--font-size-body-large:16px;--font-size-body:14px;--font-size-caption:12px;--line-height-title:32px;--line-height-headline:24px;--line-height-label-large:24px;--line-height-label:20px;--line-height-body-large:24px;--line-height-body:20px;--line-height-caption:16px;--letter-spacing-title:0px;--letter-spacing-headline:0px;--letter-spacing-label-large:0px;--letter-spacing-label:0px;--letter-spacing-body-large:0px;--letter-spacing-body:0px;--letter-spacing-caption:0px;--font-weight-400:400;--font-weight-500:500;--font-weight-600:600;--font-weight-700:700;--spacing-none:0px;--spacing-25:2px;--spacing-50:4px;--spacing-75:6px;--spacing-100:8px;--spacing-125:10px;--spacing-150:12px;--spacing-200:16px;--spacing-250:20px;--spacing-300:24px;--spacing-400:32px;--spacing-500:40px;--spacing-600:48px;--border-radius-none:0px;--border-radius-25:2px;--border-radius-50:4px;--border-radius-100:8px;--border-radius-150:12px;--border-radius-200:16px;--border-radius-300:24px;--border-radius-400:32px;--border-radius-full:9999px;--stroke-width-none:0px;--stroke-width-25:1px;--stroke-width-50:2px;--stroke-width-75:3px;--stroke-width-100:4px;--stroke-width-150:6px;--stroke-width-200:8px;--stroke-width-300:12px;--product-card-widget-min-width:135px;--product-card-results-min-width:250px;--image-set-mode-min-size:155px;--product-card-set-mode-max-width:300px;--source-card-set-mode-max-width:500px;--filter-blur-none:0px;--filter-blur-100:8px;--filter-blur-150:12px;--filter-blur-200:16px;--color-bg-base:#ffffff;--color-bg-inverse:#161616;--color-border-00:#ffffff;--color-border-01:#f4f4f4;--color-border-02:#e0e0e0;--color-border-03:#c6c6c6;--color-border-inverse-00:#161616;--color-border-inverse-01:#393939;--color-field-01:#ffffff;--color-field-02:#f4f4f4;--color-icon-primary:#161616;--color-icon-secondary:#525252;--color-icon-helper:#8d8d8d;--color-icon-on-color:#ffffff;--color-icon-inverse:#ffffff;--color-icon-disabled:#16161640;--color-text-primary:#161616;--color-text-secondary:#525252;--color-text-helper:#8d8d8d;--color-text-placeholder:#a8a8a8;--color-text-on-color:#ffffff;--color-text-inverse:#ffffff;--color-text-disabled:#16161640;--button-bg-color-primary:#000000;--button-bg-color-primary-hover:#161616;--button-bg-color-primary-active:#1e1e1e;--button-bg-color-secondary:#f4f4f4;--button-bg-color-secondary-hover:#e0e0e0;--button-bg-color-secondary-active:#c6c6c6;--button-bg-color-ghost-hover:#f4f4f4;--button-bg-color-ghost-active:#eaeaea;--button-bg-color-frosted:#6f6f6f66;--button-bg-color-frosted-hover:#6f6f6f80;--button-bg-color-frosted-active:#6f6f6f99;--button-bg-color-disabled:#e0e0e0;--button-bg-color-positive:#dcfce7;--surface-bg-color-01:#f4f4f4;--surface-bg-color-01-hover:#eaeaea;--surface-bg-color-01-active:#e0e0e0;--surface-bg-color-02:#ffffff;--surface-bg-color-inverse:#262626;--surface-bg-color-inverse-hover:#303030;--surface-bg-color-inverse-active:#393939;--surface-bg-color-disabled:#e0e0e0;--chip-bg-color-primary:#161616;--chip-bg-color-primary-hover:#1e1e1e;--chip-bg-color-primary-active:#262626;--chip-bg-color-subtle:#f4f4f4;--chip-bg-color-subtle-hover:#eaeaea;--chip-bg-color-subtle-active:#e0e0e0;--chip-bg-color-outline-hover:#f4f4f4;--chip-bg-color-outline-active:#eaeaea;--label-bg-color-accent:#ff3944;}:host{display:block;font-family:var(--font-family, var(--font-family-base));font-style:normal;display:contents;}:host(.show-in-widget.preview-filters){padding-left:24px}.filters-modal-list,.sub-filters-wrapper,.main-filters-list,.filters-modal-sub-list,.selected-filters-wrapper{list-style:none;margin:0;padding:0}.main-filters-list{padding:var(--spacing-25);gap:var(--spacing-25);border-radius:8px;background:var(--surface-bg-color-01);display:inline-flex}vviinn-price-range{max-width:400px;padding-bottom:var(--spacing-150)}:host(.show-in-widget) vviinn-price-range{max-width:unset}.filters-modal-main-button,.filters-sub-button,.filters-main-button,.filters-modal-close,.filters-sub-button-selected{font-family:var(--font-family, var(--font-family-base));cursor:pointer;border:none}.filters-sub-button,.filters-main-button{font-size:var(--font-size-body);font-weight:var(--font-weight-400);line-height:var(--line-height-body);letter-spacing:var(--letter-spacing-body);display:flex;justify-content:center;align-items:center;border-radius:6px}.filters-main-button{padding:var(--spacing-100);color:var(--color-text-helper);background:none;transition:background 0.15s,\n color 0.15s}.filters-main-button.active,.filters-main-button:hover{background:var(--surface-bg-color-02);color:var(--color-text-primary)}.sub-filters-wrapper,.selected-filters-wrapper{gap:var(--spacing-100);display:flex;flex-direction:row;overflow-x:auto;scrollbar-width:thin}.sub-filters-wrapper{align-items:center;gap:var(--spacing-100);margin-top:16px;margin:16px -2px 0}.sub-filters-wrapper>li{padding:2px}.selected-filters-wrapper{align-items:center;gap:var(--spacing-100);flex-wrap:wrap}:host(.show-in-widget.preview-filters) .selected-filters-wrapper{flex-wrap:unset;overflow-x:auto}:host(.show-in-widget.preview-filters) .sub-filters-wrapper,:host(.show-in-widget.preview-filters) .selected-filters-wrapper{transform:translateX(-24px);padding-left:var(--spacing-300);padding-right:var(--spacing-300);width:100%}.filters-sub-button{color:var(--color-text-primary);background:var(--surface-bg-color-01);padding:var(--spacing-100);gap:var(--spacing-25);height:100%}.filters-sub-button>span,.filters-sub-button-selected>span{display:inline-flex;justify-content:center;align-items:center;gap:var(--spacing-25);white-space:nowrap}.filters-sub-button>span>span,.filters-sub-button-selected>span>span{padding:var(--spacing-25)}.filters-sub-button:hover{background:var(--surface-bg-color-01-hover)}.filters-sub-button:disabled{cursor:not-allowed;background:var(--surface-bg-color-disabled);color:var(--color-text-disabled)}.filters-more-button{display:flex;padding:var(--spacing-100);gap:var(--spacing-50);border-radius:var(--border-radius-100);align-items:flex-start;background-color:var(--button-bg-color-secondary);transition:background-color 0.1s;border:none;cursor:pointer}.filters-more-button:hover{background-color:var(--button-bg-color-secondary-hover)}.filters-modal-wrapper{display:flex;flex-direction:column;background:#ffffff}.filters-modal.button,.filters-modal.modal{display:none;position:fixed;top:0;bottom:0;right:0;left:0;z-index:99999;background-color:rgba(0, 0, 0, 0.5)}.filters-modal.button .filters-modal-wrapper{position:fixed;top:0;bottom:0;right:0;width:420px;z-index:99999;border-radius:var(--border-radius-400) var(--border-radius-none)\n var(--border-radius-none) var(--border-radius-400)}.filters-modal.preview{display:block}.filters-modal.open{display:block}.filters-modal-header{position:relative;padding:var(--spacing-200) 0;color:var(--color-text-primary);text-align:center;font-size:var(--font-size-headline);font-weight:var(--font-weight-500);line-height:var(--line-height-headline);letter-spacing:var(--letter-spacing-headline);border-bottom:1px solid var(--color-border-01);display:flex;justify-content:center;gap:5px}.filters-modal-main{overflow-y:auto;scrolbar-width:thin}.filters-modal-list{margin:var(--spacing-50) 0 0 var(--spacing-300)}.filters-modal-list>li{padding-right:var(--spacing-300)}.filters-modal-list>li:not(:last-child) .filters-modal-main-button-wrapper{border-bottom:1px solid var(--color-border-01)}.filters-modal-main-button{width:100%;background:none;text-align:left;padding:var(--spacing-200) 0;color:var(--color-text-primary);font-size:var(--font-size-label-large);font-weight:var(--font-weight-500);line-height:var(--line-height-label-large);letter-spacing:var(--letter-spacing-label-large)}.filters-modal-sub-list{display:none}.filters-modal-sub-list.open{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding-bottom:var(--spacing-150)}.filters-modal-sub-list>li{display:contents}.filters-modal-close{position:absolute;color:#6f6f6f;right:var(--spacing-100);top:var(--spacing-200);cursor:pointer;background:none}.filters-modal-close:hover{color:#000}.filters-modal.preview .filters-modal-close{display:none}.filters-more-modal-button{background:none;border:none;cursor:pointer;display:flex;padding:var(--spacing-75);align-items:center;gap:var(--spacing-50);border-radius:var(--border-radius-100);background-color:var(--surface-bg-color-01);transition:background-color 0.1s;font-family:var(--font-family, var(--font-family-base));font-size:var(--font-size-label);color:var(--color-text-primary)}.filters-more-modal-button:hover{background-color:var(--surface-bg-color-01-hover)}.filters-more-modal-button.active{background:var(--surface-bg-color-inverse);color:var(--color-text-inverse)}.filters-more-modal-button>span{white-space:nowrap;padding:var(--spacing-25)}.filters-more-modal-button:disabled{cursor:not-allowed;opacity:0.5}.filters-modal-actions{border-top:1px solid var(--color-border-01);padding:var(--spacing-125);z-index:10;border-radius:0px 0px 0px 32px}.filters-modal-apply,.filters-modal-reset{font-family:var(--font-family, var(--font-family-base))}.filters-modal-apply{cursor:pointer;width:100%;border:none;margin-bottom:20px;display:flex;padding:var(--spacing-150);justify-content:center;align-items:center;gap:var(--spacing-50);align-self:stretch;color:var(--color-text-inverse);text-align:center;border-radius:var(--border-radius-150);background:var(--button-bg-color-primary);font-size:var(--font-size-label-large);font-weight:var(--font-weight-500);line-height:var(--line-height-label-large);letter-spacing:var(--letter-spacing-label-large)}.filters-modal-apply:disabled{background:var(--button-bg-color-disabled);color:var(--color-text-disabled)}.filters-modal-reset{background:none;border:none;cursor:pointer;display:block;text-align:center;width:100%;padding:var(--spacing-125) 0;color:var(--color-text-secondary);text-align:center;font-size:var(--font-size-label);font-weight:var(--font-weight-500);line-height:var(--line-height-label);letter-spacing:var(--letter-spacing-label)}.filters-modal-reset:hover{color:var(--color-text-primary)}.selected-filters-wrapper>li .filters-sub-button-selected{border-radius:var(--border-radius-100);background:var(--surface-bg-color-inverse);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:var(--spacing-100)}.filters-sub-button-selected{display:flex;align-items:center;gap:var(--spacing-25);background:var(--surface-bg-color-inverse);border-radius:var(--border-radius-100);color:var(--color-text-inverse);text-overflow:ellipsis;font-size:var(--font-size-body);font-weight:var(--font-weight-400);line-height:var(--line-height-body);letter-spacing:var(--letter-spacing-body);padding:var(--spacing-100)}.filters-sub-button-color{width:40px;height:40px;border:var(--stroke-width-50) solid var(--color-border-01);border-radius:var(--border-radius-full);display:inline-block;box-sizing:border-box;position:relative}.filters-sub-button-color-dot{position:absolute;left:0;top:0;width:100%;height:100%;border-radius:var(--border-radius-full)}.filters-sub-button-color:disabled{opacity:0.25}.selected-filters-wrapper .filters-sub-button-selected.filters-sub-button-color{width:24px;height:24px;border:none}.filters-option-icon-wrapper{display:contents}.filters-sub-button-color>span{display:none}.filters-sub-button-color.active{border:var(--stroke-width-75) solid var(--color-border-inverse-00);background-color:white}.filters-sub-button-color.active .filters-sub-button-color-dot{transform:scale(0.75)}.filters-modal-main-button-added-options{color:var(--color-text-secondary);text-overflow:ellipsis;font-size:var(--font-size-body);font-weight:var(--font-weight-400);line-height:var(--line-height-body);letter-spacing:var(--letter-spacing-body)}.filters-modal-main-button-added-options>span::after{content:\", \"}.filters-modal-main-button-added-options>span:last-child::after{content:\"\"}@media (max-width: 768px){:host(.show-in-widget.preview-filters){padding-right:var(--spacing-300)}.sub-filters-wrapper,.selected-filters-wrapper{flex-wrap:unset;overflow-x:auto;padding-bottom:0}.sub-filters-wrapper,.selected-filters-wrapper{margin-top:16px;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.sub-filters-wrapper::-webkit-scrollbar,.selected-filters-wrapper::-webkit-scrollbar{display:none}.filters-modal.button .filters-modal-wrapper,.filters-modal.modal .filters-modal-wrapper{width:100%;border-radius:24px 24px 0px 0px}.filters-modal.button .filters-modal-wrapper{top:10%}.filters-modal.modal .filters-modal-wrapper{position:fixed;width:100%;height:calc(100% - 64px);bottom:0;transform:translateY(-64px)}.filters-modal.modal .filters-modal-header{font-size:var(--font-size-body-large)}.filters-modal.modal .filters-modal-main{padding-bottom:120px}}";
783
+ const vviinnFiltersCss$1 = ":host{--font-family-base:Inter, system-ui, sans-serif;--font-family-mono:monospace;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--font-size-title:24px;--font-size-headline:18px;--font-size-label-large:16px;--font-size-label:14px;--font-size-body-large:16px;--font-size-body:14px;--font-size-caption:12px;--line-height-title:32px;--line-height-headline:24px;--line-height-label-large:24px;--line-height-label:20px;--line-height-body-large:24px;--line-height-body:20px;--line-height-caption:16px;--letter-spacing-title:0px;--letter-spacing-headline:0px;--letter-spacing-label-large:0px;--letter-spacing-label:0px;--letter-spacing-body-large:0px;--letter-spacing-body:0px;--letter-spacing-caption:0px;--font-weight-400:400;--font-weight-500:500;--font-weight-600:600;--font-weight-700:700;--spacing-none:0px;--spacing-25:2px;--spacing-50:4px;--spacing-75:6px;--spacing-100:8px;--spacing-125:10px;--spacing-150:12px;--spacing-200:16px;--spacing-250:20px;--spacing-300:24px;--spacing-400:32px;--spacing-500:40px;--spacing-600:48px;--border-radius-none:0px;--border-radius-25:2px;--border-radius-50:4px;--border-radius-100:8px;--border-radius-150:12px;--border-radius-200:16px;--border-radius-300:24px;--border-radius-400:32px;--border-radius-full:9999px;--stroke-width-none:0px;--stroke-width-25:1px;--stroke-width-50:2px;--stroke-width-75:3px;--stroke-width-100:4px;--stroke-width-150:6px;--stroke-width-200:8px;--stroke-width-300:12px;--product-card-widget-min-width:135px;--product-card-results-min-width:250px;--image-set-mode-min-size:155px;--product-card-set-mode-max-width:300px;--source-card-set-mode-max-width:500px;--filter-blur-none:0px;--filter-blur-100:8px;--filter-blur-150:12px;--filter-blur-200:16px;--color-bg-base:#ffffff;--color-bg-inverse:#161616;--color-border-00:#ffffff;--color-border-01:#f4f4f4;--color-border-02:#e0e0e0;--color-border-03:#c6c6c6;--color-border-inverse-00:#161616;--color-border-inverse-01:#393939;--color-field-01:#ffffff;--color-field-02:#f4f4f4;--color-icon-primary:#161616;--color-icon-secondary:#525252;--color-icon-helper:#8d8d8d;--color-icon-on-color:#ffffff;--color-icon-inverse:#ffffff;--color-icon-disabled:#16161640;--color-text-primary:#161616;--color-text-secondary:#525252;--color-text-helper:#8d8d8d;--color-text-placeholder:#a8a8a8;--color-text-on-color:#ffffff;--color-text-inverse:#ffffff;--color-text-disabled:#16161640;--button-bg-color-primary:#000000;--button-bg-color-primary-hover:#161616;--button-bg-color-primary-active:#1e1e1e;--button-bg-color-secondary:#f4f4f4;--button-bg-color-secondary-hover:#e0e0e0;--button-bg-color-secondary-active:#c6c6c6;--button-bg-color-ghost-hover:#f4f4f4;--button-bg-color-ghost-active:#eaeaea;--button-bg-color-frosted:#6f6f6f66;--button-bg-color-frosted-hover:#6f6f6f80;--button-bg-color-frosted-active:#6f6f6f99;--button-bg-color-disabled:#e0e0e0;--button-bg-color-positive:#dcfce7;--surface-bg-color-01:#f4f4f4;--surface-bg-color-01-hover:#eaeaea;--surface-bg-color-01-active:#e0e0e0;--surface-bg-color-02:#ffffff;--surface-bg-color-inverse:#262626;--surface-bg-color-inverse-hover:#303030;--surface-bg-color-inverse-active:#393939;--surface-bg-color-disabled:#e0e0e0;--chip-bg-color-primary:#161616;--chip-bg-color-primary-hover:#1e1e1e;--chip-bg-color-primary-active:#262626;--chip-bg-color-subtle:#f4f4f4;--chip-bg-color-subtle-hover:#eaeaea;--chip-bg-color-subtle-active:#e0e0e0;--chip-bg-color-outline-hover:#f4f4f4;--chip-bg-color-outline-active:#eaeaea;--label-bg-color-accent:#ff3944;}:host{display:block;font-family:var(--font-family, var(--font-family-base));font-style:normal;display:contents;}:host(.show-in-widget.preview-filters){padding-left:24px}.filters-modal-list,.sub-filters-wrapper,.main-filters-list,.filters-modal-sub-list,.selected-filters-wrapper{list-style:none;margin:0;padding:0}.main-filters-list{padding:var(--spacing-25);gap:var(--spacing-25);border-radius:8px;background:var(--surface-bg-color-01);display:inline-flex}vviinn-price-range{max-width:400px;padding-bottom:var(--spacing-150)}:host(.show-in-widget) vviinn-price-range{max-width:unset}.filters-modal-main-button,.filters-sub-button,.filters-main-button,.filters-modal-close,.filters-sub-button-selected{font-family:var(--font-family, var(--font-family-base));cursor:pointer;border:none}.filters-sub-button,.filters-main-button{font-size:var(--font-size-body);font-weight:var(--font-weight-400);line-height:var(--line-height-body);letter-spacing:var(--letter-spacing-body);display:flex;justify-content:center;align-items:center;border-radius:6px}.filters-main-button{padding:var(--spacing-100);color:var(--color-text-helper);background:none;transition:background 0.15s,\n color 0.15s}.filters-main-button.active,.filters-main-button:hover{background:var(--surface-bg-color-02);color:var(--color-text-primary)}.sub-filters-wrapper,.selected-filters-wrapper{gap:var(--spacing-100);display:flex;flex-direction:row;overflow-x:auto;scrollbar-width:thin}.sub-filters-wrapper{align-items:center;gap:var(--spacing-100);margin-top:16px;margin:16px -2px 0}.sub-filters-wrapper>li{padding:2px}.selected-filters-wrapper{align-items:center;gap:var(--spacing-100);flex-wrap:wrap}:host(.show-in-widget.preview-filters) .selected-filters-wrapper{flex-wrap:unset;overflow-x:auto}:host(.show-in-widget.preview-filters) .sub-filters-wrapper,:host(.show-in-widget.preview-filters) .selected-filters-wrapper{transform:translateX(-24px);padding-left:var(--spacing-300);padding-right:var(--spacing-300);width:100%}.filters-sub-button{color:var(--color-text-primary);background:var(--surface-bg-color-01);padding:var(--spacing-100);gap:var(--spacing-25);height:100%}.filters-sub-button>span,.filters-sub-button-selected>span{display:inline-flex;justify-content:center;align-items:center;gap:var(--spacing-25);white-space:nowrap}.filters-sub-button>span>span,.filters-sub-button-selected>span>span{padding:var(--spacing-25)}.filters-sub-button:hover{background:var(--surface-bg-color-01-hover)}.filters-sub-button:disabled{cursor:not-allowed;background:var(--surface-bg-color-disabled);color:var(--color-text-disabled)}.filters-more-button{display:flex;padding:var(--spacing-100);gap:var(--spacing-50);border-radius:var(--border-radius-100);align-items:flex-start;background-color:var(--button-bg-color-secondary);transition:background-color 0.1s;border:none;cursor:pointer}.filters-more-button:hover{background-color:var(--button-bg-color-secondary-hover)}.filters-modal-wrapper{display:flex;flex-direction:column;background:#ffffff}.filters-modal.button,.filters-modal.modal{display:none;position:fixed;top:0;bottom:0;right:0;left:0;z-index:99999;background-color:rgba(0, 0, 0, 0.5)}.filters-modal.button .filters-modal-wrapper{position:fixed;top:0;bottom:0;right:0;width:420px;z-index:99999;border-radius:var(--border-radius-400) var(--border-radius-none)\n var(--border-radius-none) var(--border-radius-400)}.filters-modal.preview{display:block}.filters-modal.open{display:block}.filters-modal-header{position:relative;padding:var(--spacing-200) 0;color:var(--color-text-primary);text-align:center;font-size:var(--font-size-headline);font-weight:var(--font-weight-500);line-height:var(--line-height-headline);letter-spacing:var(--letter-spacing-headline);border-bottom:1px solid var(--color-border-01);display:flex;justify-content:center;gap:5px}.filters-modal-main{overflow-y:auto;scrolbar-width:thin}.filters-modal-list{margin:var(--spacing-50) 0 0 var(--spacing-300)}.filters-modal-list>li{padding-right:var(--spacing-300)}.filters-modal-list>li:not(:last-child) .filters-modal-main-button-wrapper{border-bottom:1px solid var(--color-border-01)}.filters-modal-main-button{position:relative;width:100%;background:none;text-align:left;padding:var(--spacing-200) 0;color:var(--color-text-primary);font-size:var(--font-size-label-large);font-weight:var(--font-weight-500);line-height:var(--line-height-label-large);letter-spacing:var(--letter-spacing-label-large)}.filters-modal-main-button>svg{position:absolute;right:0;top:var(--spacing-200);color:var(--color-icon-helper);transform:rotate(90deg)}.filters-modal-main-button:hover>svg{color:var(--color-icon-primary);transition:color 0.2s}.filters-modal-main-button-wrapper.open .filters-modal-main-button>svg{transform:rotate(-90deg)}.filters-modal-sub-list{display:none}.filters-modal-main-button-wrapper.open .filters-modal-sub-list{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding-bottom:var(--spacing-150)}.filters-modal-sub-list>li{display:contents}.filters-modal-close{position:absolute;color:#6f6f6f;right:var(--spacing-100);top:var(--spacing-200);cursor:pointer;background:none}.filters-modal-close:hover{color:#000}.filters-modal.preview .filters-modal-close{display:none}.filters-more-modal-button{background:none;border:none;cursor:pointer;display:flex;padding:var(--spacing-75);align-items:center;gap:var(--spacing-50);border-radius:var(--border-radius-100);background-color:var(--surface-bg-color-01);transition:background-color 0.1s;font-family:var(--font-family, var(--font-family-base));font-size:var(--font-size-label);color:var(--color-text-primary)}.filters-more-modal-button:hover{background-color:var(--surface-bg-color-01-hover)}.filters-more-modal-button.active{background:var(--surface-bg-color-inverse);color:var(--color-text-inverse)}.filters-more-modal-button>span{white-space:nowrap;padding:var(--spacing-25)}.filters-more-modal-button:disabled{cursor:not-allowed;opacity:0.5}.filters-modal-actions{border-top:1px solid var(--color-border-01);padding:var(--spacing-125);z-index:10;border-radius:0px 0px 0px 32px}.filters-modal-apply,.filters-modal-reset{font-family:var(--font-family, var(--font-family-base))}.filters-modal-apply{cursor:pointer;width:100%;border:none;margin-bottom:20px;display:flex;padding:var(--spacing-150);justify-content:center;align-items:center;gap:var(--spacing-50);align-self:stretch;color:var(--color-text-inverse);text-align:center;border-radius:var(--border-radius-150);background:var(--button-bg-color-primary);font-size:var(--font-size-label-large);font-weight:var(--font-weight-500);line-height:var(--line-height-label-large);letter-spacing:var(--letter-spacing-label-large)}.filters-modal-apply:disabled{background:var(--button-bg-color-disabled);color:var(--color-text-disabled)}.filters-modal-reset{background:none;border:none;cursor:pointer;display:block;text-align:center;width:100%;padding:var(--spacing-125) 0;color:var(--color-text-secondary);text-align:center;font-size:var(--font-size-label);font-weight:var(--font-weight-500);line-height:var(--line-height-label);letter-spacing:var(--letter-spacing-label)}.filters-modal-reset:hover{color:var(--color-text-primary)}.selected-filters-wrapper>li .filters-sub-button-selected{border-radius:var(--border-radius-100);background:var(--surface-bg-color-inverse);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:var(--spacing-100)}.filters-sub-button-selected{display:flex;align-items:center;gap:var(--spacing-25);background:var(--surface-bg-color-inverse);border-radius:var(--border-radius-100);color:var(--color-text-inverse);text-overflow:ellipsis;font-size:var(--font-size-body);font-weight:var(--font-weight-400);line-height:var(--line-height-body);letter-spacing:var(--letter-spacing-body);padding:var(--spacing-100)}.filters-sub-button-color{width:40px;height:40px;border:var(--stroke-width-50) solid var(--color-border-01);border-radius:var(--border-radius-full);display:inline-block;box-sizing:border-box;position:relative}.filters-sub-button-color-dot{position:absolute;left:0;top:0;width:100%;height:100%;border-radius:var(--border-radius-full)}.filters-sub-button-color:disabled{opacity:0.25}.selected-filters-wrapper .filters-sub-button-selected.filters-sub-button-color{width:24px;height:24px;border:none}.filters-option-icon-wrapper{display:contents}.filters-sub-button-color>span{display:none}.filters-sub-button-color.active{border:var(--stroke-width-75) solid var(--color-border-inverse-00);background-color:white}.filters-sub-button-color.active .filters-sub-button-color-dot{transform:scale(0.75)}.filters-modal-main-button-added-options{color:var(--color-text-secondary);text-overflow:ellipsis;padding-right:var(--spacing-100);font-size:var(--font-size-body);font-weight:var(--font-weight-400);line-height:var(--line-height-body);letter-spacing:var(--letter-spacing-body)}.filters-modal-main-button-added-options>span::after{content:\", \"}.filters-modal-main-button-added-options>span:last-child::after{content:\"\"}@media (max-width: 768px){:host(.show-in-widget.preview-filters){padding-right:var(--spacing-300)}.sub-filters-wrapper,.selected-filters-wrapper{flex-wrap:unset;overflow-x:auto;padding-bottom:0}.sub-filters-wrapper,.selected-filters-wrapper{margin-top:16px;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.sub-filters-wrapper::-webkit-scrollbar,.selected-filters-wrapper::-webkit-scrollbar{display:none}.filters-modal.button .filters-modal-wrapper,.filters-modal.modal .filters-modal-wrapper{width:100%;border-radius:24px 24px 0px 0px}.filters-modal.button .filters-modal-wrapper{top:10%}.filters-modal.modal .filters-modal-wrapper{position:fixed;width:100%;height:calc(100% - 64px);bottom:0;transform:translateY(-64px)}.filters-modal.modal .filters-modal-header{font-size:var(--font-size-body-large)}.filters-modal.modal .filters-modal-main{padding-bottom:120px}}";
763
784
 
764
785
  const VviinnExtendedFiltersButton = class {
765
786
  constructor(hostRef) {
@@ -778,7 +799,7 @@ const VviinnExtendedFiltersButton = class {
778
799
  };
779
800
  VviinnExtendedFiltersButton.style = vviinnFiltersCss$1;
780
801
 
781
- const vviinnFiltersCss = ":host{--font-family-base:Inter, system-ui, sans-serif;--font-family-mono:monospace;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--font-size-title:24px;--font-size-headline:18px;--font-size-label-large:16px;--font-size-label:14px;--font-size-body-large:16px;--font-size-body:14px;--font-size-caption:12px;--line-height-title:32px;--line-height-headline:24px;--line-height-label-large:24px;--line-height-label:20px;--line-height-body-large:24px;--line-height-body:20px;--line-height-caption:16px;--letter-spacing-title:0px;--letter-spacing-headline:0px;--letter-spacing-label-large:0px;--letter-spacing-label:0px;--letter-spacing-body-large:0px;--letter-spacing-body:0px;--letter-spacing-caption:0px;--font-weight-400:400;--font-weight-500:500;--font-weight-600:600;--font-weight-700:700;--spacing-none:0px;--spacing-25:2px;--spacing-50:4px;--spacing-75:6px;--spacing-100:8px;--spacing-125:10px;--spacing-150:12px;--spacing-200:16px;--spacing-250:20px;--spacing-300:24px;--spacing-400:32px;--spacing-500:40px;--spacing-600:48px;--border-radius-none:0px;--border-radius-25:2px;--border-radius-50:4px;--border-radius-100:8px;--border-radius-150:12px;--border-radius-200:16px;--border-radius-300:24px;--border-radius-400:32px;--border-radius-full:9999px;--stroke-width-none:0px;--stroke-width-25:1px;--stroke-width-50:2px;--stroke-width-75:3px;--stroke-width-100:4px;--stroke-width-150:6px;--stroke-width-200:8px;--stroke-width-300:12px;--product-card-widget-min-width:135px;--product-card-results-min-width:250px;--image-set-mode-min-size:155px;--product-card-set-mode-max-width:300px;--source-card-set-mode-max-width:500px;--filter-blur-none:0px;--filter-blur-100:8px;--filter-blur-150:12px;--filter-blur-200:16px;--color-bg-base:#ffffff;--color-bg-inverse:#161616;--color-border-00:#ffffff;--color-border-01:#f4f4f4;--color-border-02:#e0e0e0;--color-border-03:#c6c6c6;--color-border-inverse-00:#161616;--color-border-inverse-01:#393939;--color-field-01:#ffffff;--color-field-02:#f4f4f4;--color-icon-primary:#161616;--color-icon-secondary:#525252;--color-icon-helper:#8d8d8d;--color-icon-on-color:#ffffff;--color-icon-inverse:#ffffff;--color-icon-disabled:#16161640;--color-text-primary:#161616;--color-text-secondary:#525252;--color-text-helper:#8d8d8d;--color-text-placeholder:#a8a8a8;--color-text-on-color:#ffffff;--color-text-inverse:#ffffff;--color-text-disabled:#16161640;--button-bg-color-primary:#000000;--button-bg-color-primary-hover:#161616;--button-bg-color-primary-active:#1e1e1e;--button-bg-color-secondary:#f4f4f4;--button-bg-color-secondary-hover:#e0e0e0;--button-bg-color-secondary-active:#c6c6c6;--button-bg-color-ghost-hover:#f4f4f4;--button-bg-color-ghost-active:#eaeaea;--button-bg-color-frosted:#6f6f6f66;--button-bg-color-frosted-hover:#6f6f6f80;--button-bg-color-frosted-active:#6f6f6f99;--button-bg-color-disabled:#e0e0e0;--button-bg-color-positive:#dcfce7;--surface-bg-color-01:#f4f4f4;--surface-bg-color-01-hover:#eaeaea;--surface-bg-color-01-active:#e0e0e0;--surface-bg-color-02:#ffffff;--surface-bg-color-inverse:#262626;--surface-bg-color-inverse-hover:#303030;--surface-bg-color-inverse-active:#393939;--surface-bg-color-disabled:#e0e0e0;--chip-bg-color-primary:#161616;--chip-bg-color-primary-hover:#1e1e1e;--chip-bg-color-primary-active:#262626;--chip-bg-color-subtle:#f4f4f4;--chip-bg-color-subtle-hover:#eaeaea;--chip-bg-color-subtle-active:#e0e0e0;--chip-bg-color-outline-hover:#f4f4f4;--chip-bg-color-outline-active:#eaeaea;--label-bg-color-accent:#ff3944;}:host{display:block;font-family:var(--font-family, var(--font-family-base));font-style:normal;display:contents;}:host(.show-in-widget.preview-filters){padding-left:24px}.filters-modal-list,.sub-filters-wrapper,.main-filters-list,.filters-modal-sub-list,.selected-filters-wrapper{list-style:none;margin:0;padding:0}.main-filters-list{padding:var(--spacing-25);gap:var(--spacing-25);border-radius:8px;background:var(--surface-bg-color-01);display:inline-flex}vviinn-price-range{max-width:400px;padding-bottom:var(--spacing-150)}:host(.show-in-widget) vviinn-price-range{max-width:unset}.filters-modal-main-button,.filters-sub-button,.filters-main-button,.filters-modal-close,.filters-sub-button-selected{font-family:var(--font-family, var(--font-family-base));cursor:pointer;border:none}.filters-sub-button,.filters-main-button{font-size:var(--font-size-body);font-weight:var(--font-weight-400);line-height:var(--line-height-body);letter-spacing:var(--letter-spacing-body);display:flex;justify-content:center;align-items:center;border-radius:6px}.filters-main-button{padding:var(--spacing-100);color:var(--color-text-helper);background:none;transition:background 0.15s,\n color 0.15s}.filters-main-button.active,.filters-main-button:hover{background:var(--surface-bg-color-02);color:var(--color-text-primary)}.sub-filters-wrapper,.selected-filters-wrapper{gap:var(--spacing-100);display:flex;flex-direction:row;overflow-x:auto;scrollbar-width:thin}.sub-filters-wrapper{align-items:center;gap:var(--spacing-100);margin-top:16px;margin:16px -2px 0}.sub-filters-wrapper>li{padding:2px}.selected-filters-wrapper{align-items:center;gap:var(--spacing-100);flex-wrap:wrap}:host(.show-in-widget.preview-filters) .selected-filters-wrapper{flex-wrap:unset;overflow-x:auto}:host(.show-in-widget.preview-filters) .sub-filters-wrapper,:host(.show-in-widget.preview-filters) .selected-filters-wrapper{transform:translateX(-24px);padding-left:var(--spacing-300);padding-right:var(--spacing-300);width:100%}.filters-sub-button{color:var(--color-text-primary);background:var(--surface-bg-color-01);padding:var(--spacing-100);gap:var(--spacing-25);height:100%}.filters-sub-button>span,.filters-sub-button-selected>span{display:inline-flex;justify-content:center;align-items:center;gap:var(--spacing-25);white-space:nowrap}.filters-sub-button>span>span,.filters-sub-button-selected>span>span{padding:var(--spacing-25)}.filters-sub-button:hover{background:var(--surface-bg-color-01-hover)}.filters-sub-button:disabled{cursor:not-allowed;background:var(--surface-bg-color-disabled);color:var(--color-text-disabled)}.filters-more-button{display:flex;padding:var(--spacing-100);gap:var(--spacing-50);border-radius:var(--border-radius-100);align-items:flex-start;background-color:var(--button-bg-color-secondary);transition:background-color 0.1s;border:none;cursor:pointer}.filters-more-button:hover{background-color:var(--button-bg-color-secondary-hover)}.filters-modal-wrapper{display:flex;flex-direction:column;background:#ffffff}.filters-modal.button,.filters-modal.modal{display:none;position:fixed;top:0;bottom:0;right:0;left:0;z-index:99999;background-color:rgba(0, 0, 0, 0.5)}.filters-modal.button .filters-modal-wrapper{position:fixed;top:0;bottom:0;right:0;width:420px;z-index:99999;border-radius:var(--border-radius-400) var(--border-radius-none)\n var(--border-radius-none) var(--border-radius-400)}.filters-modal.preview{display:block}.filters-modal.open{display:block}.filters-modal-header{position:relative;padding:var(--spacing-200) 0;color:var(--color-text-primary);text-align:center;font-size:var(--font-size-headline);font-weight:var(--font-weight-500);line-height:var(--line-height-headline);letter-spacing:var(--letter-spacing-headline);border-bottom:1px solid var(--color-border-01);display:flex;justify-content:center;gap:5px}.filters-modal-main{overflow-y:auto;scrolbar-width:thin}.filters-modal-list{margin:var(--spacing-50) 0 0 var(--spacing-300)}.filters-modal-list>li{padding-right:var(--spacing-300)}.filters-modal-list>li:not(:last-child) .filters-modal-main-button-wrapper{border-bottom:1px solid var(--color-border-01)}.filters-modal-main-button{width:100%;background:none;text-align:left;padding:var(--spacing-200) 0;color:var(--color-text-primary);font-size:var(--font-size-label-large);font-weight:var(--font-weight-500);line-height:var(--line-height-label-large);letter-spacing:var(--letter-spacing-label-large)}.filters-modal-sub-list{display:none}.filters-modal-sub-list.open{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding-bottom:var(--spacing-150)}.filters-modal-sub-list>li{display:contents}.filters-modal-close{position:absolute;color:#6f6f6f;right:var(--spacing-100);top:var(--spacing-200);cursor:pointer;background:none}.filters-modal-close:hover{color:#000}.filters-modal.preview .filters-modal-close{display:none}.filters-more-modal-button{background:none;border:none;cursor:pointer;display:flex;padding:var(--spacing-75);align-items:center;gap:var(--spacing-50);border-radius:var(--border-radius-100);background-color:var(--surface-bg-color-01);transition:background-color 0.1s;font-family:var(--font-family, var(--font-family-base));font-size:var(--font-size-label);color:var(--color-text-primary)}.filters-more-modal-button:hover{background-color:var(--surface-bg-color-01-hover)}.filters-more-modal-button.active{background:var(--surface-bg-color-inverse);color:var(--color-text-inverse)}.filters-more-modal-button>span{white-space:nowrap;padding:var(--spacing-25)}.filters-more-modal-button:disabled{cursor:not-allowed;opacity:0.5}.filters-modal-actions{border-top:1px solid var(--color-border-01);padding:var(--spacing-125);z-index:10;border-radius:0px 0px 0px 32px}.filters-modal-apply,.filters-modal-reset{font-family:var(--font-family, var(--font-family-base))}.filters-modal-apply{cursor:pointer;width:100%;border:none;margin-bottom:20px;display:flex;padding:var(--spacing-150);justify-content:center;align-items:center;gap:var(--spacing-50);align-self:stretch;color:var(--color-text-inverse);text-align:center;border-radius:var(--border-radius-150);background:var(--button-bg-color-primary);font-size:var(--font-size-label-large);font-weight:var(--font-weight-500);line-height:var(--line-height-label-large);letter-spacing:var(--letter-spacing-label-large)}.filters-modal-apply:disabled{background:var(--button-bg-color-disabled);color:var(--color-text-disabled)}.filters-modal-reset{background:none;border:none;cursor:pointer;display:block;text-align:center;width:100%;padding:var(--spacing-125) 0;color:var(--color-text-secondary);text-align:center;font-size:var(--font-size-label);font-weight:var(--font-weight-500);line-height:var(--line-height-label);letter-spacing:var(--letter-spacing-label)}.filters-modal-reset:hover{color:var(--color-text-primary)}.selected-filters-wrapper>li .filters-sub-button-selected{border-radius:var(--border-radius-100);background:var(--surface-bg-color-inverse);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:var(--spacing-100)}.filters-sub-button-selected{display:flex;align-items:center;gap:var(--spacing-25);background:var(--surface-bg-color-inverse);border-radius:var(--border-radius-100);color:var(--color-text-inverse);text-overflow:ellipsis;font-size:var(--font-size-body);font-weight:var(--font-weight-400);line-height:var(--line-height-body);letter-spacing:var(--letter-spacing-body);padding:var(--spacing-100)}.filters-sub-button-color{width:40px;height:40px;border:var(--stroke-width-50) solid var(--color-border-01);border-radius:var(--border-radius-full);display:inline-block;box-sizing:border-box;position:relative}.filters-sub-button-color-dot{position:absolute;left:0;top:0;width:100%;height:100%;border-radius:var(--border-radius-full)}.filters-sub-button-color:disabled{opacity:0.25}.selected-filters-wrapper .filters-sub-button-selected.filters-sub-button-color{width:24px;height:24px;border:none}.filters-option-icon-wrapper{display:contents}.filters-sub-button-color>span{display:none}.filters-sub-button-color.active{border:var(--stroke-width-75) solid var(--color-border-inverse-00);background-color:white}.filters-sub-button-color.active .filters-sub-button-color-dot{transform:scale(0.75)}.filters-modal-main-button-added-options{color:var(--color-text-secondary);text-overflow:ellipsis;font-size:var(--font-size-body);font-weight:var(--font-weight-400);line-height:var(--line-height-body);letter-spacing:var(--letter-spacing-body)}.filters-modal-main-button-added-options>span::after{content:\", \"}.filters-modal-main-button-added-options>span:last-child::after{content:\"\"}@media (max-width: 768px){:host(.show-in-widget.preview-filters){padding-right:var(--spacing-300)}.sub-filters-wrapper,.selected-filters-wrapper{flex-wrap:unset;overflow-x:auto;padding-bottom:0}.sub-filters-wrapper,.selected-filters-wrapper{margin-top:16px;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.sub-filters-wrapper::-webkit-scrollbar,.selected-filters-wrapper::-webkit-scrollbar{display:none}.filters-modal.button .filters-modal-wrapper,.filters-modal.modal .filters-modal-wrapper{width:100%;border-radius:24px 24px 0px 0px}.filters-modal.button .filters-modal-wrapper{top:10%}.filters-modal.modal .filters-modal-wrapper{position:fixed;width:100%;height:calc(100% - 64px);bottom:0;transform:translateY(-64px)}.filters-modal.modal .filters-modal-header{font-size:var(--font-size-body-large)}.filters-modal.modal .filters-modal-main{padding-bottom:120px}}";
802
+ const vviinnFiltersCss = ":host{--font-family-base:Inter, system-ui, sans-serif;--font-family-mono:monospace;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--font-size-title:24px;--font-size-headline:18px;--font-size-label-large:16px;--font-size-label:14px;--font-size-body-large:16px;--font-size-body:14px;--font-size-caption:12px;--line-height-title:32px;--line-height-headline:24px;--line-height-label-large:24px;--line-height-label:20px;--line-height-body-large:24px;--line-height-body:20px;--line-height-caption:16px;--letter-spacing-title:0px;--letter-spacing-headline:0px;--letter-spacing-label-large:0px;--letter-spacing-label:0px;--letter-spacing-body-large:0px;--letter-spacing-body:0px;--letter-spacing-caption:0px;--font-weight-400:400;--font-weight-500:500;--font-weight-600:600;--font-weight-700:700;--spacing-none:0px;--spacing-25:2px;--spacing-50:4px;--spacing-75:6px;--spacing-100:8px;--spacing-125:10px;--spacing-150:12px;--spacing-200:16px;--spacing-250:20px;--spacing-300:24px;--spacing-400:32px;--spacing-500:40px;--spacing-600:48px;--border-radius-none:0px;--border-radius-25:2px;--border-radius-50:4px;--border-radius-100:8px;--border-radius-150:12px;--border-radius-200:16px;--border-radius-300:24px;--border-radius-400:32px;--border-radius-full:9999px;--stroke-width-none:0px;--stroke-width-25:1px;--stroke-width-50:2px;--stroke-width-75:3px;--stroke-width-100:4px;--stroke-width-150:6px;--stroke-width-200:8px;--stroke-width-300:12px;--product-card-widget-min-width:135px;--product-card-results-min-width:250px;--image-set-mode-min-size:155px;--product-card-set-mode-max-width:300px;--source-card-set-mode-max-width:500px;--filter-blur-none:0px;--filter-blur-100:8px;--filter-blur-150:12px;--filter-blur-200:16px;--color-bg-base:#ffffff;--color-bg-inverse:#161616;--color-border-00:#ffffff;--color-border-01:#f4f4f4;--color-border-02:#e0e0e0;--color-border-03:#c6c6c6;--color-border-inverse-00:#161616;--color-border-inverse-01:#393939;--color-field-01:#ffffff;--color-field-02:#f4f4f4;--color-icon-primary:#161616;--color-icon-secondary:#525252;--color-icon-helper:#8d8d8d;--color-icon-on-color:#ffffff;--color-icon-inverse:#ffffff;--color-icon-disabled:#16161640;--color-text-primary:#161616;--color-text-secondary:#525252;--color-text-helper:#8d8d8d;--color-text-placeholder:#a8a8a8;--color-text-on-color:#ffffff;--color-text-inverse:#ffffff;--color-text-disabled:#16161640;--button-bg-color-primary:#000000;--button-bg-color-primary-hover:#161616;--button-bg-color-primary-active:#1e1e1e;--button-bg-color-secondary:#f4f4f4;--button-bg-color-secondary-hover:#e0e0e0;--button-bg-color-secondary-active:#c6c6c6;--button-bg-color-ghost-hover:#f4f4f4;--button-bg-color-ghost-active:#eaeaea;--button-bg-color-frosted:#6f6f6f66;--button-bg-color-frosted-hover:#6f6f6f80;--button-bg-color-frosted-active:#6f6f6f99;--button-bg-color-disabled:#e0e0e0;--button-bg-color-positive:#dcfce7;--surface-bg-color-01:#f4f4f4;--surface-bg-color-01-hover:#eaeaea;--surface-bg-color-01-active:#e0e0e0;--surface-bg-color-02:#ffffff;--surface-bg-color-inverse:#262626;--surface-bg-color-inverse-hover:#303030;--surface-bg-color-inverse-active:#393939;--surface-bg-color-disabled:#e0e0e0;--chip-bg-color-primary:#161616;--chip-bg-color-primary-hover:#1e1e1e;--chip-bg-color-primary-active:#262626;--chip-bg-color-subtle:#f4f4f4;--chip-bg-color-subtle-hover:#eaeaea;--chip-bg-color-subtle-active:#e0e0e0;--chip-bg-color-outline-hover:#f4f4f4;--chip-bg-color-outline-active:#eaeaea;--label-bg-color-accent:#ff3944;}:host{display:block;font-family:var(--font-family, var(--font-family-base));font-style:normal;display:contents;}:host(.show-in-widget.preview-filters){padding-left:24px}.filters-modal-list,.sub-filters-wrapper,.main-filters-list,.filters-modal-sub-list,.selected-filters-wrapper{list-style:none;margin:0;padding:0}.main-filters-list{padding:var(--spacing-25);gap:var(--spacing-25);border-radius:8px;background:var(--surface-bg-color-01);display:inline-flex}vviinn-price-range{max-width:400px;padding-bottom:var(--spacing-150)}:host(.show-in-widget) vviinn-price-range{max-width:unset}.filters-modal-main-button,.filters-sub-button,.filters-main-button,.filters-modal-close,.filters-sub-button-selected{font-family:var(--font-family, var(--font-family-base));cursor:pointer;border:none}.filters-sub-button,.filters-main-button{font-size:var(--font-size-body);font-weight:var(--font-weight-400);line-height:var(--line-height-body);letter-spacing:var(--letter-spacing-body);display:flex;justify-content:center;align-items:center;border-radius:6px}.filters-main-button{padding:var(--spacing-100);color:var(--color-text-helper);background:none;transition:background 0.15s,\n color 0.15s}.filters-main-button.active,.filters-main-button:hover{background:var(--surface-bg-color-02);color:var(--color-text-primary)}.sub-filters-wrapper,.selected-filters-wrapper{gap:var(--spacing-100);display:flex;flex-direction:row;overflow-x:auto;scrollbar-width:thin}.sub-filters-wrapper{align-items:center;gap:var(--spacing-100);margin-top:16px;margin:16px -2px 0}.sub-filters-wrapper>li{padding:2px}.selected-filters-wrapper{align-items:center;gap:var(--spacing-100);flex-wrap:wrap}:host(.show-in-widget.preview-filters) .selected-filters-wrapper{flex-wrap:unset;overflow-x:auto}:host(.show-in-widget.preview-filters) .sub-filters-wrapper,:host(.show-in-widget.preview-filters) .selected-filters-wrapper{transform:translateX(-24px);padding-left:var(--spacing-300);padding-right:var(--spacing-300);width:100%}.filters-sub-button{color:var(--color-text-primary);background:var(--surface-bg-color-01);padding:var(--spacing-100);gap:var(--spacing-25);height:100%}.filters-sub-button>span,.filters-sub-button-selected>span{display:inline-flex;justify-content:center;align-items:center;gap:var(--spacing-25);white-space:nowrap}.filters-sub-button>span>span,.filters-sub-button-selected>span>span{padding:var(--spacing-25)}.filters-sub-button:hover{background:var(--surface-bg-color-01-hover)}.filters-sub-button:disabled{cursor:not-allowed;background:var(--surface-bg-color-disabled);color:var(--color-text-disabled)}.filters-more-button{display:flex;padding:var(--spacing-100);gap:var(--spacing-50);border-radius:var(--border-radius-100);align-items:flex-start;background-color:var(--button-bg-color-secondary);transition:background-color 0.1s;border:none;cursor:pointer}.filters-more-button:hover{background-color:var(--button-bg-color-secondary-hover)}.filters-modal-wrapper{display:flex;flex-direction:column;background:#ffffff}.filters-modal.button,.filters-modal.modal{display:none;position:fixed;top:0;bottom:0;right:0;left:0;z-index:99999;background-color:rgba(0, 0, 0, 0.5)}.filters-modal.button .filters-modal-wrapper{position:fixed;top:0;bottom:0;right:0;width:420px;z-index:99999;border-radius:var(--border-radius-400) var(--border-radius-none)\n var(--border-radius-none) var(--border-radius-400)}.filters-modal.preview{display:block}.filters-modal.open{display:block}.filters-modal-header{position:relative;padding:var(--spacing-200) 0;color:var(--color-text-primary);text-align:center;font-size:var(--font-size-headline);font-weight:var(--font-weight-500);line-height:var(--line-height-headline);letter-spacing:var(--letter-spacing-headline);border-bottom:1px solid var(--color-border-01);display:flex;justify-content:center;gap:5px}.filters-modal-main{overflow-y:auto;scrolbar-width:thin}.filters-modal-list{margin:var(--spacing-50) 0 0 var(--spacing-300)}.filters-modal-list>li{padding-right:var(--spacing-300)}.filters-modal-list>li:not(:last-child) .filters-modal-main-button-wrapper{border-bottom:1px solid var(--color-border-01)}.filters-modal-main-button{position:relative;width:100%;background:none;text-align:left;padding:var(--spacing-200) 0;color:var(--color-text-primary);font-size:var(--font-size-label-large);font-weight:var(--font-weight-500);line-height:var(--line-height-label-large);letter-spacing:var(--letter-spacing-label-large)}.filters-modal-main-button>svg{position:absolute;right:0;top:var(--spacing-200);color:var(--color-icon-helper);transform:rotate(90deg)}.filters-modal-main-button:hover>svg{color:var(--color-icon-primary);transition:color 0.2s}.filters-modal-main-button-wrapper.open .filters-modal-main-button>svg{transform:rotate(-90deg)}.filters-modal-sub-list{display:none}.filters-modal-main-button-wrapper.open .filters-modal-sub-list{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding-bottom:var(--spacing-150)}.filters-modal-sub-list>li{display:contents}.filters-modal-close{position:absolute;color:#6f6f6f;right:var(--spacing-100);top:var(--spacing-200);cursor:pointer;background:none}.filters-modal-close:hover{color:#000}.filters-modal.preview .filters-modal-close{display:none}.filters-more-modal-button{background:none;border:none;cursor:pointer;display:flex;padding:var(--spacing-75);align-items:center;gap:var(--spacing-50);border-radius:var(--border-radius-100);background-color:var(--surface-bg-color-01);transition:background-color 0.1s;font-family:var(--font-family, var(--font-family-base));font-size:var(--font-size-label);color:var(--color-text-primary)}.filters-more-modal-button:hover{background-color:var(--surface-bg-color-01-hover)}.filters-more-modal-button.active{background:var(--surface-bg-color-inverse);color:var(--color-text-inverse)}.filters-more-modal-button>span{white-space:nowrap;padding:var(--spacing-25)}.filters-more-modal-button:disabled{cursor:not-allowed;opacity:0.5}.filters-modal-actions{border-top:1px solid var(--color-border-01);padding:var(--spacing-125);z-index:10;border-radius:0px 0px 0px 32px}.filters-modal-apply,.filters-modal-reset{font-family:var(--font-family, var(--font-family-base))}.filters-modal-apply{cursor:pointer;width:100%;border:none;margin-bottom:20px;display:flex;padding:var(--spacing-150);justify-content:center;align-items:center;gap:var(--spacing-50);align-self:stretch;color:var(--color-text-inverse);text-align:center;border-radius:var(--border-radius-150);background:var(--button-bg-color-primary);font-size:var(--font-size-label-large);font-weight:var(--font-weight-500);line-height:var(--line-height-label-large);letter-spacing:var(--letter-spacing-label-large)}.filters-modal-apply:disabled{background:var(--button-bg-color-disabled);color:var(--color-text-disabled)}.filters-modal-reset{background:none;border:none;cursor:pointer;display:block;text-align:center;width:100%;padding:var(--spacing-125) 0;color:var(--color-text-secondary);text-align:center;font-size:var(--font-size-label);font-weight:var(--font-weight-500);line-height:var(--line-height-label);letter-spacing:var(--letter-spacing-label)}.filters-modal-reset:hover{color:var(--color-text-primary)}.selected-filters-wrapper>li .filters-sub-button-selected{border-radius:var(--border-radius-100);background:var(--surface-bg-color-inverse);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:var(--spacing-100)}.filters-sub-button-selected{display:flex;align-items:center;gap:var(--spacing-25);background:var(--surface-bg-color-inverse);border-radius:var(--border-radius-100);color:var(--color-text-inverse);text-overflow:ellipsis;font-size:var(--font-size-body);font-weight:var(--font-weight-400);line-height:var(--line-height-body);letter-spacing:var(--letter-spacing-body);padding:var(--spacing-100)}.filters-sub-button-color{width:40px;height:40px;border:var(--stroke-width-50) solid var(--color-border-01);border-radius:var(--border-radius-full);display:inline-block;box-sizing:border-box;position:relative}.filters-sub-button-color-dot{position:absolute;left:0;top:0;width:100%;height:100%;border-radius:var(--border-radius-full)}.filters-sub-button-color:disabled{opacity:0.25}.selected-filters-wrapper .filters-sub-button-selected.filters-sub-button-color{width:24px;height:24px;border:none}.filters-option-icon-wrapper{display:contents}.filters-sub-button-color>span{display:none}.filters-sub-button-color.active{border:var(--stroke-width-75) solid var(--color-border-inverse-00);background-color:white}.filters-sub-button-color.active .filters-sub-button-color-dot{transform:scale(0.75)}.filters-modal-main-button-added-options{color:var(--color-text-secondary);text-overflow:ellipsis;padding-right:var(--spacing-100);font-size:var(--font-size-body);font-weight:var(--font-weight-400);line-height:var(--line-height-body);letter-spacing:var(--letter-spacing-body)}.filters-modal-main-button-added-options>span::after{content:\", \"}.filters-modal-main-button-added-options>span:last-child::after{content:\"\"}@media (max-width: 768px){:host(.show-in-widget.preview-filters){padding-right:var(--spacing-300)}.sub-filters-wrapper,.selected-filters-wrapper{flex-wrap:unset;overflow-x:auto;padding-bottom:0}.sub-filters-wrapper,.selected-filters-wrapper{margin-top:16px;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.sub-filters-wrapper::-webkit-scrollbar,.selected-filters-wrapper::-webkit-scrollbar{display:none}.filters-modal.button .filters-modal-wrapper,.filters-modal.modal .filters-modal-wrapper{width:100%;border-radius:24px 24px 0px 0px}.filters-modal.button .filters-modal-wrapper{top:10%}.filters-modal.modal .filters-modal-wrapper{position:fixed;width:100%;height:calc(100% - 64px);bottom:0;transform:translateY(-64px)}.filters-modal.modal .filters-modal-header{font-size:var(--font-size-body-large)}.filters-modal.modal .filters-modal-main{padding-bottom:120px}}";
782
803
 
783
804
  const VviinnFilters = class {
784
805
  constructor(hostRef) {
@@ -803,6 +824,14 @@ const VviinnFilters = class {
803
824
  this.priceChangeHandler = (filterValue) => {
804
825
  this.handleSubFilterSelection(filterValue, this.selectedFilter);
805
826
  };
827
+ this.handleFilterTriggered = ({ detail, }) => {
828
+ const { kind, isTriggeredByVpsWidget, action, customTrigger } = detail;
829
+ if (this.skipStateChanges(isTriggeredByVpsWidget) || !!customTrigger)
830
+ return;
831
+ if (action === "select") {
832
+ this.selectedFilter = this.getFilters().find((f) => f.column === kind);
833
+ }
834
+ };
806
835
  this.handleFiltersChanged = ({ detail, }) => {
807
836
  const { filters, el: senderElement, isTriggeredByVpsWidget } = detail;
808
837
  if (senderElement === this.el ||
@@ -859,11 +888,13 @@ const VviinnFilters = class {
859
888
  this.state = this.showInWidget ? search_store.searchState : search_store.componentsState;
860
889
  document.addEventListener("vviinnFiltersChanged", this.handleFiltersChanged);
861
890
  document.addEventListener("vviinnSelectedFiltersReset", this.handleSelectedFiltersReset);
891
+ document.addEventListener("vviinnFilterTriggered", this.handleFilterTriggered);
862
892
  this.filtersStringWatcher();
863
893
  }
864
894
  disconnectedCallback() {
865
895
  document.removeEventListener("vviinnFiltersChanged", this.handleFiltersChanged);
866
896
  document.removeEventListener("vviinnSelectedFiltersReset", this.handleSelectedFiltersReset);
897
+ document.removeEventListener("vviinnFilterTriggered", this.handleFilterTriggered);
867
898
  }
868
899
  render() {
869
900
  var _a;
@@ -874,7 +905,7 @@ const VviinnFilters = class {
874
905
  "show-in-widget": this.showInWidget,
875
906
  } }, (filters === null || filters === void 0 ? void 0 : filters.length) > 0 && (index.h("ul", { class: "main-filters-list", part: "filters-list" }, filters.map((filter) => {
876
907
  return (index.h("li", null, index.h("button", { class: `filters-main-button ${this.showActiveOnMainButton(filter)}`, onClick: () => this.handleMainFilterSelection(filter), part: "filters-main-button" }, filter.label)));
877
- }))), !!this.selectedFilter && (index.h("div", { class: "filters-footer", part: "filters-footer" }, triggerFilter.isIntervalFilter(column) ? (index.h("vviinn-price-range", { histogram: filterOptions.filter((item) => item.value.frequency > 0), priceChangeHandler: this.priceChangeHandler, selectedInterval: this.getSelectedPriceInterval() })) : (index.h("ul", { class: "sub-filters-wrapper", part: "filters-footer-list" }, !!filterOptions &&
908
+ }))), !!this.selectedFilter && this.selectedFilter.isPrimary && (index.h("div", { class: "filters-footer", part: "filters-footer" }, triggerFilter.isIntervalFilter(column) ? (index.h("vviinn-price-range", { histogram: filterOptions.filter((item) => item.value.frequency > 0), priceChangeHandler: this.priceChangeHandler, selectedInterval: this.getSelectedPriceInterval() })) : (index.h("ul", { class: "sub-filters-wrapper", part: "filters-footer-list" }, !!filterOptions &&
878
909
  filterOptions.map(({ value, label, active }) => {
879
910
  const isSelected = triggerFilter.showActiveOnSubButton(this.requestFilters, value, this.selectedFilter);
880
911
  return triggerFilter.RenderFilterButton({
@@ -8,7 +8,7 @@ const Rectangle = require('./Rectangle-99c25901.js');
8
8
  const index$1 = require('./index-08c5c086.js');
9
9
  const WarningIcon = require('./WarningIcon-db443b71.js');
10
10
  const customizedSlots = require('./customized-slots-174c1053.js');
11
- const _package = require('./package-74a9f6ab.js');
11
+ const _package = require('./package-524961b1.js');
12
12
 
13
13
  const SecondaryActionIcon = () => (index.h("svg", { xmlns: "http://www.w3.org/2000/svg", width: "24", height: "24", viewBox: "0 0 24 24", fill: "none" },
14
14
  index.h("path", { d: "M7.82499 13L12.725 17.9C12.925 18.1 13.0208 18.3333 13.0125 18.6C13.0042 18.8667 12.9 19.1 12.7 19.3C12.5 19.4833 12.2667 19.5792 12 19.5875C11.7333 19.5958 11.5 19.5 11.3 19.3L4.69999 12.7C4.59999 12.6 4.52915 12.4917 4.48749 12.375C4.44582 12.2583 4.42499 12.1333 4.42499 12C4.42499 11.8667 4.44582 11.7417 4.48749 11.625C4.52915 11.5083 4.59999 11.4 4.69999 11.3L11.3 4.69999C11.4833 4.51665 11.7125 4.42499 11.9875 4.42499C12.2625 4.42499 12.5 4.51665 12.7 4.69999C12.9 4.89999 13 5.13749 13 5.41249C13 5.68749 12.9 5.92499 12.7 6.12499L7.82499 11H19C19.2833 11 19.5208 11.0958 19.7125 11.2875C19.9042 11.4792 20 11.7167 20 12C20 12.2833 19.9042 12.5208 19.7125 12.7125C19.5208 12.9042 19.2833 13 19 13H7.82499Z", fill: "currentColor" })));