vviinn-widgets 2.144.0 → 2.144.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/dist/cjs/{index-0f1b8791.js → index-9ea9f6a5.js} +1 -1
  2. package/dist/cjs/{package-afb835d4.js → package-48fafeab.js} +2 -1
  3. package/dist/cjs/search-filters_19.cjs.entry.js +2 -2
  4. package/dist/cjs/vviinn-button_2.cjs.entry.js +1 -1
  5. package/dist/cjs/vviinn-carousel_9.cjs.entry.js +15 -15
  6. package/dist/cjs/vviinn-vps-button.cjs.entry.js +5 -3
  7. package/dist/cjs/vviinn-vps-widget.cjs.entry.js +2 -5
  8. package/dist/collection/components/customized-slots.js +1 -0
  9. package/dist/collection/components/vviinn-product-card/vviinn-product-card.css +43 -60
  10. package/dist/collection/components/vviinn-product-card/vviinn-product-card.js +13 -13
  11. package/dist/collection/components/vviinn-vps-button/vviinn-vps-button.js +4 -2
  12. package/dist/collection/components/vviinn-vps-widget/vviinn-vps-widget.js +0 -3
  13. package/dist/collection/cssParts/product.js +1 -1
  14. package/dist/esm/{index-a6fa0e95.js → index-f39001f9.js} +1 -1
  15. package/dist/esm/{package-0eedf6bd.js → package-53a7d414.js} +2 -1
  16. package/dist/esm/search-filters_19.entry.js +2 -2
  17. package/dist/esm/vviinn-button_2.entry.js +1 -1
  18. package/dist/esm/vviinn-carousel_9.entry.js +15 -15
  19. package/dist/esm/vviinn-vps-button.entry.js +5 -3
  20. package/dist/esm/vviinn-vps-widget.entry.js +2 -5
  21. package/dist/types/components/vviinn-product-card/vviinn-product-card.d.ts +1 -1
  22. package/dist/types/components/vviinn-vps-button/vviinn-vps-button.d.ts +1 -1
  23. package/dist/vviinn-widgets/{p-6f49c188.entry.js → p-0077a11d.entry.js} +2 -2
  24. package/dist/vviinn-widgets/p-1d2e2973.entry.js +1 -0
  25. package/dist/vviinn-widgets/{p-634a70d4.js → p-1f0dc75e.js} +1 -1
  26. package/dist/vviinn-widgets/{p-5a860afe.entry.js → p-4985a65c.entry.js} +1 -1
  27. package/dist/vviinn-widgets/{p-82ca1986.entry.js → p-5c900a8a.entry.js} +1 -1
  28. package/dist/vviinn-widgets/{p-95019e2d.entry.js → p-7d9778a3.entry.js} +1 -1
  29. package/dist/vviinn-widgets/p-cddc96d8.js +1 -0
  30. package/dist/vviinn-widgets/vviinn-widgets.esm.js +1 -1
  31. package/package.json +1 -1
  32. package/www/build/{p-6f49c188.entry.js → p-0077a11d.entry.js} +2 -2
  33. package/www/build/p-1d2e2973.entry.js +1 -0
  34. package/www/build/{p-634a70d4.js → p-1f0dc75e.js} +1 -1
  35. package/www/build/{p-5a860afe.entry.js → p-4985a65c.entry.js} +1 -1
  36. package/www/build/{p-82ca1986.entry.js → p-5c900a8a.entry.js} +1 -1
  37. package/www/build/{p-95019e2d.entry.js → p-7d9778a3.entry.js} +1 -1
  38. package/www/build/p-cddc96d8.js +1 -0
  39. package/www/build/vviinn-widgets.esm.js +1 -1
  40. package/dist/vviinn-widgets/p-7b3d64e6.entry.js +0 -1
  41. package/dist/vviinn-widgets/p-b9444554.js +0 -1
  42. package/www/build/p-7b3d64e6.entry.js +0 -1
  43. package/www/build/p-b9444554.js +0 -1
@@ -60,7 +60,7 @@ const productCardGeneralPartsList = [
60
60
  "basket-button-container",
61
61
  "update-button-item",
62
62
  "product-card-actions",
63
- "product-card-top-actions",
63
+ "product-card-actions-top",
64
64
  "discount-label",
65
65
  "discount-percentage",
66
66
  ];
@@ -46,6 +46,7 @@ const productCardSlotNames = [
46
46
  "vviinn-favorite-icon",
47
47
  "vviinn-favorite-icon-pressed",
48
48
  "vviinn-energy-label-data-sheet-text",
49
+ "vviinn-product-card-actions",
49
50
  "vviinn-custom-label-0",
50
51
  "vviinn-custom-label-1",
51
52
  "vviinn-custom-label-2",
@@ -141,7 +142,7 @@ const slotChangeListener = (component, element) => {
141
142
  component.connectedCallback.call(component);
142
143
  };
143
144
 
144
- const version = "2.144.0";
145
+ const version = "2.144.2";
145
146
 
146
147
  exports.SlotSkeleton = SlotSkeleton;
147
148
  exports.campaignTypeNames = campaignTypeNames;
@@ -6,9 +6,9 @@ const index = require('./index-711d38e6.js');
6
6
  const search_store = require('./search.store-c28f0090.js');
7
7
  const Rectangle = require('./Rectangle-99c25901.js');
8
8
  const index$1 = require('./index-9e399164.js');
9
- const _package = require('./package-afb835d4.js');
9
+ const _package = require('./package-48fafeab.js');
10
10
  const index$2 = require('./index-4c9a5dbb.js');
11
- const index$3 = require('./index-0f1b8791.js');
11
+ const index$3 = require('./index-9ea9f6a5.js');
12
12
  const index$4 = require('./index-d5006d29.js');
13
13
  const SearchModalUploadIcon = require('./SearchModalUploadIcon-23f00a14.js');
14
14
 
@@ -4,7 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-711d38e6.js');
6
6
  const Rectangle = require('./Rectangle-99c25901.js');
7
- const index$1 = require('./index-0f1b8791.js');
7
+ const index$1 = require('./index-9ea9f6a5.js');
8
8
 
9
9
  const CrossIcon = () => (index.h("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", xmlns: "http://www.w3.org/2000/svg" },
10
10
  index.h("path", { d: "M16 1.4L14.6 0L8 6.6L1.4 0L0 1.4L6.6 8L0 14.6L1.4 16L8 9.4L14.6 16L16 14.6L9.4 8L16 1.4Z", fill: "#161616" })));
@@ -4,10 +4,10 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-711d38e6.js');
6
6
  const search_store = require('./search.store-c28f0090.js');
7
- const _package = require('./package-afb835d4.js');
7
+ const _package = require('./package-48fafeab.js');
8
8
  const index$1 = require('./index-4c9a5dbb.js');
9
9
  const index$2 = require('./index-9e399164.js');
10
- const index$3 = require('./index-0f1b8791.js');
10
+ const index$3 = require('./index-9ea9f6a5.js');
11
11
  const triggerFilter = require('./triggerFilter-107252e6.js');
12
12
  const Rectangle = require('./Rectangle-99c25901.js');
13
13
 
@@ -1090,7 +1090,7 @@ const Image = (props, onLoadEnd = () => undefined) => (index.h("picture", { part
1090
1090
  const ResponsiveImage = (props, onLoadEnd = () => undefined) => (index.h("picture", { part: "image-picture" },
1091
1091
  index.h("img", { loading: props.lazy ? "lazy" : "eager", part: "image", class: "image responsive", src: processWidth(props.src, props.width), alt: props.title, ref: props.ref, onLoad: onLoadEnd })));
1092
1092
 
1093
- const vviinnProductCardCss = ":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{--product-card-content-align-default:flex-start;--product-card-text-align-default:left;--product-card-image-border-default:none;--product-card-image-bg-color-default:var(--surface-bg-color-01);--basket-button-bg-color-pressed-default:var(--button-bg-color-positive);position:relative;height:-moz-fit-content;height:fit-content;display:flex;flex-direction:column;align-items:var(\n --product-card-content-align,\n var(--product-card-content-align-default)\n );text-align:var(\n --product-card-text-align,\n var(--product-card-text-align-default)\n );font-family:var(--font-family, var(--font-family-base));font-weight:var(--font-weight-400);font-size:var(--font-size-body);line-height:var(--line-height-body);font-style:normal;color:var(--color-text-primary);gap:var(--spacing-100)}.image-container{position:relative;width:100%}.basket-button-container{width:100%;display:flex;justify-content:var(\n --product-card-content-align,\n var(--product-card-content-align-default)\n )}.content-container{display:grid;width:100%;grid-template-columns:1fr;align-items:var(\n --product-card-content-align,\n var(--product-card-content-align-default)\n );gap:var(--spacing-50)}.price-container{display:flex;flex-direction:column;gap:var(--spacing-50);flex-wrap:wrap;justify-content:var(\n --product-card-content-align,\n var(--product-card-content-align-default)\n )}.price-outdated,.price-sale,.price-regular{justify-content:var(\n --product-card-content-align,\n var(--product-card-content-align-default)\n );display:flex;gap:var(--spacing-100);flex-wrap:wrap}.price-outdated{color:var(--color-text-helper);text-decoration:line-through}.custom-label{font-weight:var(--font-weight-600);display:none}.price-amount,.custom-label>span,.currency{white-space:nowrap}.custom-label>span{margin-right:var(--spacing-75)}.price-amount--base{color:var(--color-text-helper);font-size:var(--font-size-caption)}.product-type{word-wrap:anywhere}.image{box-sizing:border-box;display:grid;align-content:center;-o-object-position:50% 50%;object-position:50% 50%;aspect-ratio:1;-o-object-fit:contain;object-fit:contain;text-align:center;border:var(\n --product-card-image-border,\n var(--product-card-image-border-default)\n )}.image.responsive{width:100%;height:auto}.currency{padding-left:var(--spacing-50)}.brand,.title,.product-type{display:-webkit-box;max-width:var(--product-card-set-mode-max-width);text-align:var(\n --product-card-text-align,\n var(--product-card-text-align-default)\n );-webkit-box-orient:vertical;-webkit-line-clamp:1;overflow-wrap:anywhere;text-overflow:ellipsis;overflow:hidden}.title{font-weight:var(--font-weight-600);color:var(--color-text-primary);-webkit-line-clamp:2}.deeplink{max-width:100%;text-decoration:none}.image-link{display:contents}picture{display:block;width:100%;height:100%;position:relative}picture::before{display:block;box-sizing:border-box;position:absolute;width:100%;height:100%;top:0;left:0;content:\"\";opacity:0}.update-button{position:absolute;width:32px;height:32px;top:var(--spacing-100);right:var(--spacing-100);z-index:1;border:none;cursor:pointer;background:none}.update-button>div{background-color:var(--button-bg-color-frosted);color:var(--color-icon-on-color);-webkit-backdrop-filter:blur(calc(var(--filter-blur-150) / 2));backdrop-filter:blur(calc(var(--filter-blur-150) / 2));padding:var(--spacing-50);display:flex;justify-content:center;align-items:center}.update-button::after{position:absolute;width:calc(100% + var(--spacing-100));height:calc(100% + var(--spacing-100));top:calc(-1 * var(--spacing-50));right:calc(-1 * var(--spacing-50));content:\"\"}.update-button:hover>div{background-color:var(--button-bg-color-frosted-hover)}.basket-button{box-sizing:border-box;border:none;width:100%;padding:var(--spacing-100);font-size:var(--font-size-label);font-weight:var(--font-weight-600);font-family:var(--font-family, var(--font-family-base));color:var(--color-text-primary);background-color:var(--button-bg-color-secondary);cursor:pointer}.basket-button:hover{background-color:var(--button-bg-color-secondary-hover)}.basket-button-icon-container{display:inline-flex;align-items:center;justify-content:center}picture::after{box-sizing:border-box;display:block;position:absolute;width:100%;height:100%;top:0;left:0;background-color:var(\n --product-card-image-bg-color,\n var(--product-card-image-bg-color-default)\n );mix-blend-mode:multiply;content:\"\"}:host(.animated) picture::after{mix-blend-mode:normal}:host(.animated) picture::before{opacity:1;animation:pulse 1.8s infinite}:host(.animated) picture::after{content:url(\"data:image/svg+xml,%3Csvg width='80' height='80' viewBox='0 0 80 80' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_810_154)'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M64.7332 1.23333C66.2665 12.2667 67.9665 13.9667 78.6665 15.2333C79.4332 15.3333 79.9999 15.9333 79.9999 16.6667C79.9999 17.4 79.4665 17.9333 78.6665 18.0667C67.9665 19.3667 66.2999 21.0333 64.7332 32.0667C64.6332 32.8 64.0665 33.3333 63.3665 33.3333C62.6665 33.3333 62.0999 32.8 61.9665 32.0667C60.4665 21.0333 58.7665 19.3667 48.0332 18.0667C47.2332 17.9667 46.6999 17.4333 46.6999 16.6667C46.6999 15.9 47.2332 15.3667 48.0332 15.2333C58.7665 13.7667 60.3999 12.2 61.9665 1.23333C62.0999 0.5 62.6665 0 63.3665 0C64.0665 0 64.5999 0.5 64.7332 1.23333ZM38.5665 71.5667C38.3665 72.6 37.6665 73.3333 36.6665 73.3333C35.6665 73.3333 34.9665 72.6 34.7998 71.5667C31.9332 50.7 29.0998 47.9 8.49984 45.2C7.39984 45.1 6.6665 44.3 6.6665 43.3C6.6665 42.3 7.39984 41.5333 8.49984 41.4333C29.1332 39.1333 32.0998 35.9333 34.7998 15.0333C34.9665 14.0333 35.6665 13.3333 36.6665 13.3333C37.6665 13.3333 38.3665 14 38.5665 15.0333C41.2665 35.9333 44.1998 39.1333 64.8665 41.4333C65.9332 41.5333 66.6665 42.2667 66.6665 43.3C66.6665 44.3333 65.9332 45.1 64.8665 45.2C44.1998 47.5 41.2665 50.7 38.5665 71.5667Z' fill='white'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_810_154'%3E%3Crect width='80' height='80' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E\");position:absolute;width:80px;height:80px;left:calc(50% - 40px);top:calc(50% - 40px);background-color:transparent}:host(.animated) .update-button{display:none}.basket-button-content{box-sizing:border-box;display:flex;align-items:center;justify-content:center;gap:var(--spacing-75)}:host(.product-card--source){flex-grow:1}:host(.product-card--source) picture{aspect-ratio:1}picture .plus-icon{position:absolute;width:32px;height:32px;top:calc(50% - 32px);right:-88px;padding:var(--spacing-200);background-color:var(--color-bg-base);color:var(--color-text-placeholder);outline:1px solid var(--color-border-01);z-index:1;border-radius:50%}.basket-button.pressed{background-color:var(\n --basket-button-bg-color-pressed,\n var(--basket-button-bg-color-pressed-default)\n )}.basket-button.pressed .discount-percentage{padding-right:var(--spacing-50)}@media (max-width: 768px){picture .plus-icon{padding:var(--spacing-100);top:calc(50% - var(--spacing-300));right:calc(-1 * var(--spacing-300))}}@keyframes pulse{0%{background-color:var(--surface-bg-color-01)}50%{background-color:var(--surface-bg-color-01-active)}100%{background-color:var(--surface-bg-color-01)}}.discount-label{position:absolute;left:var(--spacing-none);top:var(--spacing-150);padding:var(--spacing-25) var(--spacing-50);border-radius:var(--border-radius-none) var(--border-radius-50)\n var(--border-radius-50) var(--border-radius-none);color:var(--color-text-on-color);background-color:var(--label-bg-color-accent);letter-spacing:var(--letter-spacing-label)}vviinn-energy-label{justify-content:var(\n --product-card-content-align,\n var(--product-card-content-align-default)\n )}.product-card-actions,.product-card-top-actions{position:absolute;right:3px}.product-card-top-actions{top:3px}.product-card-actions{bottom:3px}.product-card-top-actions button{border:none;display:flex;justify-content:center;align-items:center;gap:var(--spacing-50);color:var(--color-icon-inverse);cursor:pointer;line-height:0px;background:none;width:32px;height:32px}.product-card-top-actions button>div{padding:var(--spacing-50);border-radius:var(--border-radius-100);background:var(--button-bg-color-frosted);-webkit-backdrop-filter:blur(calc(var(--filter-blur-150, 12px) / 2));backdrop-filter:blur(calc(var(--filter-blur-150, 12px) / 2))}.product-card-top-actions button:hover>div{background:var(--button-bg-color-frosted-hover)}::slotted([slot=\"vviinn-product-card-actions\"]),.product-card-top-actions{display:flex;flex-direction:column;gap:8px}.footer-arrow{position:absolute;bottom:-35px;left:50%;transform:translate(-50%, 0) rotate(90deg);width:0;height:0;border-top:22px solid transparent;border-bottom:22px solid transparent;border-right:22px solid var(--color-border-02);z-index:99}.footer-arrow::after{content:\"\";width:0;height:0;border-top:21px solid transparent;border-bottom:21px solid transparent;border-right:21px solid #ffffff;position:absolute;top:-21px;left:1px}.hidden{display:none !important}";
1093
+ const vviinnProductCardCss = ":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{--product-card-content-align-default:flex-start;--product-card-text-align-default:left;--product-card-image-border-default:none;--product-card-image-bg-color-default:var(--surface-bg-color-01);--basket-button-bg-color-pressed-default:var(--button-bg-color-positive);position:relative;height:-moz-fit-content;height:fit-content;display:flex;flex-direction:column;align-items:var(\n --product-card-content-align,\n var(--product-card-content-align-default)\n );text-align:var(\n --product-card-text-align,\n var(--product-card-text-align-default)\n );font-family:var(--font-family, var(--font-family-base));font-weight:var(--font-weight-400);font-size:var(--font-size-body);line-height:var(--line-height-body);font-style:normal;color:var(--color-text-primary);gap:var(--spacing-100)}.image-container{position:relative;width:100%}.basket-button-container{width:100%;display:flex;justify-content:var(\n --product-card-content-align,\n var(--product-card-content-align-default)\n )}.content-container{display:grid;width:100%;grid-template-columns:1fr;align-items:var(\n --product-card-content-align,\n var(--product-card-content-align-default)\n );gap:var(--spacing-50)}.price-container{display:flex;flex-direction:column;gap:var(--spacing-50);flex-wrap:wrap;justify-content:var(\n --product-card-content-align,\n var(--product-card-content-align-default)\n )}.price-outdated,.price-sale,.price-regular{justify-content:var(\n --product-card-content-align,\n var(--product-card-content-align-default)\n );display:flex;gap:var(--spacing-100);flex-wrap:wrap}.price-outdated{color:var(--color-text-helper);text-decoration:line-through}.custom-label{font-weight:var(--font-weight-600);display:none}.price-amount,.custom-label>span,.currency{white-space:nowrap}.custom-label>span{margin-right:var(--spacing-75)}.price-amount--base{color:var(--color-text-helper);font-size:var(--font-size-caption)}.product-type{word-wrap:anywhere}.image{box-sizing:border-box;display:grid;align-content:center;-o-object-position:50% 50%;object-position:50% 50%;aspect-ratio:1;-o-object-fit:contain;object-fit:contain;text-align:center;border:var(\n --product-card-image-border,\n var(--product-card-image-border-default)\n )}.image.responsive{width:100%;height:auto}.currency{padding-left:var(--spacing-50)}.brand,.title,.product-type{display:-webkit-box;max-width:var(--product-card-set-mode-max-width);text-align:var(\n --product-card-text-align,\n var(--product-card-text-align-default)\n );-webkit-box-orient:vertical;-webkit-line-clamp:1;overflow-wrap:anywhere;text-overflow:ellipsis;overflow:hidden}.title{font-weight:var(--font-weight-600);color:var(--color-text-primary);-webkit-line-clamp:2}.deeplink{max-width:100%;text-decoration:none}.image-link{display:contents}picture{display:block;width:100%;height:100%;position:relative}picture::before{display:block;box-sizing:border-box;position:absolute;width:100%;height:100%;top:0;left:0;content:\"\";opacity:0}.product-card-actions,.product-card-actions-top{line-height:0px;position:absolute;right:var(--spacing-75)}.product-card-actions-top{top:var(--spacing-75)}.product-card-actions{bottom:var(--spacing-75)}::slotted([slot=\"vviinn-product-card-actions\"]),.product-card-actions-top,.product-card-actions{display:flex;flex-direction:column;gap:4px}.product-card-actions-top button,.product-card-actions button,vviinn-vpr-button::part(button),.update-button{width:24px;height:24px;line-height:0px;z-index:1;border:none;cursor:pointer;background:none;background-color:var(--button-bg-color-frosted);color:var(--color-icon-on-color);-webkit-backdrop-filter:blur(calc(var(--filter-blur-150) / 2));backdrop-filter:blur(calc(var(--filter-blur-150) / 2));border-radius:var(--border-radius-100);padding:var(--spacing-50);display:flex;justify-content:center;align-items:center}.product-card-actions-top button:hover,.product-card-actions button:hover,.product-card-actions vviinn-vpr-button::part(button):hover,.update-button:hover{background-color:var(--button-bg-color-frosted-hover)}.product-card-actions-top button::after,.product-card-actions button::after,.product-card-actions vviinn-vpr-button::part(button)::after,.update-button::after{position:absolute;width:calc(100% + var(--spacing-100));height:calc(100% + var(--spacing-100));top:calc(-1 * var(--spacing-50));right:calc(-1 * var(--spacing-50));content:\"\";cursor:pointer}.basket-button{box-sizing:border-box;border:none;width:100%;padding:var(--spacing-100);font-size:var(--font-size-label);font-weight:var(--font-weight-600);font-family:var(--font-family, var(--font-family-base));color:var(--color-text-primary);background-color:var(--button-bg-color-secondary);cursor:pointer}.basket-button:hover{background-color:var(--button-bg-color-secondary-hover)}.basket-button-icon-container{display:inline-flex;align-items:center;justify-content:center}picture::after{box-sizing:border-box;display:block;position:absolute;width:100%;height:100%;top:0;left:0;background-color:var(\n --product-card-image-bg-color,\n var(--product-card-image-bg-color-default)\n );mix-blend-mode:multiply;content:\"\"}:host(.animated) picture::after{mix-blend-mode:normal}:host(.animated) picture::before{opacity:1;animation:pulse 1.8s infinite}:host(.animated) picture::after{content:url(\"data:image/svg+xml,%3Csvg width='80' height='80' viewBox='0 0 80 80' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_810_154)'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M64.7332 1.23333C66.2665 12.2667 67.9665 13.9667 78.6665 15.2333C79.4332 15.3333 79.9999 15.9333 79.9999 16.6667C79.9999 17.4 79.4665 17.9333 78.6665 18.0667C67.9665 19.3667 66.2999 21.0333 64.7332 32.0667C64.6332 32.8 64.0665 33.3333 63.3665 33.3333C62.6665 33.3333 62.0999 32.8 61.9665 32.0667C60.4665 21.0333 58.7665 19.3667 48.0332 18.0667C47.2332 17.9667 46.6999 17.4333 46.6999 16.6667C46.6999 15.9 47.2332 15.3667 48.0332 15.2333C58.7665 13.7667 60.3999 12.2 61.9665 1.23333C62.0999 0.5 62.6665 0 63.3665 0C64.0665 0 64.5999 0.5 64.7332 1.23333ZM38.5665 71.5667C38.3665 72.6 37.6665 73.3333 36.6665 73.3333C35.6665 73.3333 34.9665 72.6 34.7998 71.5667C31.9332 50.7 29.0998 47.9 8.49984 45.2C7.39984 45.1 6.6665 44.3 6.6665 43.3C6.6665 42.3 7.39984 41.5333 8.49984 41.4333C29.1332 39.1333 32.0998 35.9333 34.7998 15.0333C34.9665 14.0333 35.6665 13.3333 36.6665 13.3333C37.6665 13.3333 38.3665 14 38.5665 15.0333C41.2665 35.9333 44.1998 39.1333 64.8665 41.4333C65.9332 41.5333 66.6665 42.2667 66.6665 43.3C66.6665 44.3333 65.9332 45.1 64.8665 45.2C44.1998 47.5 41.2665 50.7 38.5665 71.5667Z' fill='white'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_810_154'%3E%3Crect width='80' height='80' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E\");position:absolute;width:80px;height:80px;left:calc(50% - 40px);top:calc(50% - 40px);background-color:transparent}:host(.animated) .product-card-actions,:host(.animated) .product-card-actions-top{display:none}.basket-button-content{box-sizing:border-box;display:flex;align-items:center;justify-content:center;gap:var(--spacing-75)}:host(.product-card--source){flex-grow:1}:host(.product-card--source) picture{aspect-ratio:1}picture .plus-icon{position:absolute;width:32px;height:32px;top:calc(50% - 32px);right:-88px;padding:var(--spacing-200);background-color:var(--color-bg-base);color:var(--color-text-placeholder);outline:1px solid var(--color-border-01);z-index:1;border-radius:50%}.basket-button.pressed{background-color:var(\n --basket-button-bg-color-pressed,\n var(--basket-button-bg-color-pressed-default)\n )}.basket-button.pressed .discount-percentage{padding-right:var(--spacing-50)}@media (max-width: 768px){picture .plus-icon{padding:var(--spacing-100);top:calc(50% - var(--spacing-300));right:calc(-1 * var(--spacing-300))}}@keyframes pulse{0%{background-color:var(--surface-bg-color-01)}50%{background-color:var(--surface-bg-color-01-active)}100%{background-color:var(--surface-bg-color-01)}}.discount-label{position:absolute;left:var(--spacing-none);top:var(--spacing-150);padding:var(--spacing-25) var(--spacing-50);border-radius:var(--border-radius-none) var(--border-radius-50)\n var(--border-radius-50) var(--border-radius-none);color:var(--color-text-on-color);background-color:var(--label-bg-color-accent);letter-spacing:var(--letter-spacing-label)}vviinn-energy-label{justify-content:var(\n --product-card-content-align,\n var(--product-card-content-align-default)\n )}.footer-arrow{position:absolute;bottom:-35px;left:50%;transform:translate(-50%, 0) rotate(90deg);width:0;height:0;border-top:22px solid transparent;border-bottom:22px solid transparent;border-right:22px solid var(--color-border-02);z-index:99}.footer-arrow::after{content:\"\";width:0;height:0;border-top:21px solid transparent;border-bottom:21px solid transparent;border-right:21px solid #ffffff;position:absolute;top:-21px;left:1px}.hidden{display:none !important}";
1094
1094
 
1095
1095
  const VviinnProductCard = class {
1096
1096
  constructor(hostRef) {
@@ -1276,15 +1276,23 @@ const VviinnProductCard = class {
1276
1276
  var _a, _b, _c;
1277
1277
  return (index.h(index.Host, { part: "product-card", class: {
1278
1278
  animated: this.isTransitioning,
1279
- }, exportparts: index$3.productCardParts }, index.h("div", { class: "image-container", part: "image-container" }, index.h(Linked, { deeplink: this.deeplink, part: "image-link" }, this.renderImage()), index.h("div", { class: "product-card-top-actions", part: "product-card-top-actions" }, index.h("button", { class: {
1279
+ }, exportparts: index$3.productCardParts }, index.h("div", { class: "image-container", part: "image-container" }, index.h(Linked, { deeplink: this.deeplink, part: "image-link" }, this.renderImage()), index.h("div", { class: "product-card-actions-top", part: "product-card-actions-top" }, index.h("button", { class: {
1280
1280
  hidden: !this.favoriteShow,
1281
1281
  }, part: "favorite-button", onClick: this.favoriteButtonClickHandler.bind(this) }, index.h("div", { key: "favorite-not-pressed", class: {
1282
1282
  hidden: this.favoriteButonPressed,
1283
1283
  } }, index.h("slot", { name: "vviinn-favorite-icon" }, index.h(FavoriteIcon, { width: 14, height: 14 }))), index.h("div", { key: "favorite-pressed", class: {
1284
1284
  hidden: !this.favoriteButonPressed,
1285
- } }, index.h("slot", { name: "vviinn-favorite-icon-pressed" }, index.h(FavoriteIconPressed, { width: 14, height: 14 }))))), index.h("div", { class: "product-card-actions", part: "product-card-actions" }, index.h("slot", { name: "vviinn-product-card-actions" }))), index.h("div", { class: "content-container", part: "content-container" }, this.isTransitioning ? (index.h(index.Fragment, null, index.h("vviinn-skeleton", { height: 40 }), index.h("vviinn-skeleton", { height: 20, halfWidth: true }))) : (index.h(index.Fragment, null, index.h(Linked, { deeplink: this.deeplink, part: "deeplink" }, index.h("span", { class: "title", part: "title" }, this.productTitle)), ((_a = this.brand) === null || _a === void 0 ? void 0 : _a.length) > 0 && (index.h("span", { class: "brand", part: "brand" }, this.brand)), ((_b = this.productType) === null || _b === void 0 ? void 0 : _b.length) > 0 && (index.h("span", { class: "product-type", part: "product-type" }, this.productType)), ((_c = this === null || this === void 0 ? void 0 : this.energyCertifications) !== null && _c !== void 0 ? _c : []).map((energyCertification) => (index.h("vviinn-energy-label", { classIconUrls: energyCertification === null || energyCertification === void 0 ? void 0 : energyCertification.classIconUrls, classDataSheetUrl: energyCertification === null || energyCertification === void 0 ? void 0 : energyCertification.classDataSheetUrl, productType: energyCertification === null || energyCertification === void 0 ? void 0 : energyCertification.productType }))), index.h(Price, { prefix: this.pricePrefix, currency: this.currency, price: this.price, basePrice: parseBasePrice(this.basePrice), salePrice: this.salePrice, baseSalePrice: parseBasePrice(this.baseSalePrice), locale: this.locale, showInContainer: this.addPriceContainer }), this.setMode &&
1285
+ } }, index.h("slot", { name: "vviinn-favorite-icon-pressed" }, index.h(FavoriteIconPressed, { width: 14, height: 14 })))), index.h("button", { class: {
1286
+ "update-button": true,
1287
+ hidden: !this.isShowUpdateButton(),
1288
+ }, part: "update-button-item", onClick: () => {
1289
+ this.vviinnCrossSellingClick.emit({
1290
+ animationInterval: generateRandomNumber(800, 1400),
1291
+ productData: this.productData,
1292
+ });
1293
+ } }, index.h("div", null, index.h("slot", { name: "vviinn-update-button-icon" }, index.h(UpdateIcon, { width: 14, height: 14 }))))), index.h("div", { class: "product-card-actions", part: "product-card-actions" }, index.h("slot", { name: "vviinn-product-card-actions" }))), index.h("div", { class: "content-container", part: "content-container" }, this.isTransitioning ? (index.h(index.Fragment, null, index.h("vviinn-skeleton", { height: 40 }), index.h("vviinn-skeleton", { height: 20, halfWidth: true }))) : (index.h(index.Fragment, null, index.h(Linked, { deeplink: this.deeplink, part: "deeplink" }, index.h("span", { class: "title", part: "title" }, this.productTitle)), ((_a = this.brand) === null || _a === void 0 ? void 0 : _a.length) > 0 && (index.h("span", { class: "brand", part: "brand" }, this.brand)), ((_b = this.productType) === null || _b === void 0 ? void 0 : _b.length) > 0 && (index.h("span", { class: "product-type", part: "product-type" }, this.productType)), ((_c = this === null || this === void 0 ? void 0 : this.energyCertifications) !== null && _c !== void 0 ? _c : []).map((energyCertification) => (index.h("vviinn-energy-label", { classIconUrls: energyCertification === null || energyCertification === void 0 ? void 0 : energyCertification.classIconUrls, classDataSheetUrl: energyCertification === null || energyCertification === void 0 ? void 0 : energyCertification.classDataSheetUrl, productType: energyCertification === null || energyCertification === void 0 ? void 0 : energyCertification.productType }))), index.h(Price, { prefix: this.pricePrefix, currency: this.currency, price: this.price, basePrice: parseBasePrice(this.basePrice), salePrice: this.salePrice, baseSalePrice: parseBasePrice(this.baseSalePrice), locale: this.locale, showInContainer: this.addPriceContainer }), this.setMode &&
1286
1294
  !this.appliedDiscountPercentage &&
1287
- this.currentDiscountPercentage && (index.h("div", { class: "discount-label", part: "discount-label" }, `-${this.currentDiscountPercentage}%`)))), renderCustomLabels(this.customLabels.split(",")), index.h("vviinn-skeleton", { height: 40, class: {
1295
+ this.currentDiscountPercentage && (index.h("div", { class: "discount-label", part: "discount-label" }, `-${this.currentDiscountPercentage}%`)), renderCustomLabels(this.customLabels.split(",")))), index.h("vviinn-skeleton", { height: 40, class: {
1288
1296
  hidden: !this.isTransitioning,
1289
1297
  } })), index.h("div", { class: {
1290
1298
  "basket-button-container": true,
@@ -1301,15 +1309,7 @@ const VviinnProductCard = class {
1301
1309
  hidden: !this.basketButonPressed,
1302
1310
  } }, index.h("span", { class: "basket-button-icon-container" }, index.h("slot", { name: "vviinn-basket-button-icon-pressed" }, index.h(CheckCircleIcon, null))), index.h("span", null, index.h("span", { class: "discount-percentage", part: "discount-percentage", hidden: !(this.setMode && this.appliedDiscountPercentage) }, this.appliedDiscountPercentage, "%"), index.h("slot", { name: "vviinn-basket-button-text-pressed" }, this.setMode
1303
1311
  ? index$2.instance.t("setMode.basketButtonPressedText")
1304
- : index$2.instance.t("basketButtonPressedText")))))), index.h("button", { class: {
1305
- "update-button": true,
1306
- hidden: !this.isShowUpdateButton(),
1307
- }, part: "update-button-item", onClick: () => {
1308
- this.vviinnCrossSellingClick.emit({
1309
- animationInterval: generateRandomNumber(800, 1400),
1310
- productData: this.productData,
1311
- });
1312
- } }, index.h("div", null, index.h("slot", { name: "vviinn-update-button-icon" }, index.h(UpdateIcon, { width: 14, height: 14 })))), this.showFooterArrow && index.h("div", { class: "footer-arrow" })));
1312
+ : index$2.instance.t("basketButtonPressedText")))))), this.showFooterArrow && index.h("div", { class: "footer-arrow" })));
1313
1313
  }
1314
1314
  get el() { return index.getElement(this); }
1315
1315
  static get watchers() { return {
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-711d38e6.js');
6
- const _package = require('./package-afb835d4.js');
6
+ const _package = require('./package-48fafeab.js');
7
7
  const SearchModalUploadIcon = require('./SearchModalUploadIcon-23f00a14.js');
8
8
  const constants = require('./constants-7684cbfc.js');
9
9
  const index$1 = require('./index-d5006d29.js');
@@ -74,8 +74,10 @@ const VviinnVpsButton = class {
74
74
  this.apiPath = "https://api.vviinn.com";
75
75
  this.buttonPressed = false;
76
76
  }
77
- handleModalClosed() {
78
- this.buttonPressed = false;
77
+ handleModalClosed({ detail }) {
78
+ if (detail.widgetType === "VPS") {
79
+ this.buttonPressed = false;
80
+ }
79
81
  }
80
82
  componentWillLoad() {
81
83
  this.slots = index$1.findSlotElements(this.el);
@@ -5,9 +5,9 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  const index = require('./index-711d38e6.js');
6
6
  const search_store = require('./search.store-c28f0090.js');
7
7
  const index$1 = require('./index-9e399164.js');
8
- const _package = require('./package-afb835d4.js');
8
+ const _package = require('./package-48fafeab.js');
9
9
  const constants = require('./constants-7684cbfc.js');
10
- const index$3 = require('./index-0f1b8791.js');
10
+ const index$3 = require('./index-9ea9f6a5.js');
11
11
  const index$2 = require('./index-d5006d29.js');
12
12
  require('./Rectangle-99c25901.js');
13
13
 
@@ -169,9 +169,6 @@ const VviinnVpsWidget = class {
169
169
  this.setShowAspectRatioError(detail);
170
170
  this.el.classList.add("bordered");
171
171
  };
172
- this.LinkText = ({ href, children }) => {
173
- return index.h("a", { href: href || "" }, children);
174
- };
175
172
  this.token = undefined;
176
173
  this.active = true;
177
174
  this.currencySign = "€";
@@ -29,6 +29,7 @@ export const productCardSlotNames = [
29
29
  "vviinn-favorite-icon",
30
30
  "vviinn-favorite-icon-pressed",
31
31
  "vviinn-energy-label-data-sheet-text",
32
+ "vviinn-product-card-actions",
32
33
  "vviinn-custom-label-0",
33
34
  "vviinn-custom-label-1",
34
35
  "vviinn-custom-label-2",
@@ -404,23 +404,46 @@ picture::before {
404
404
  opacity: 0;
405
405
  }
406
406
 
407
- .update-button {
407
+ .product-card-actions,
408
+ .product-card-actions-top {
409
+ line-height: 0px;
408
410
  position: absolute;
409
- width: 32px;
410
- height: 32px;
411
- top: var(--spacing-100);
412
- right: var(--spacing-100);
411
+ right: var(--spacing-75);
412
+ }
413
+
414
+ .product-card-actions-top {
415
+ top: var(--spacing-75);
416
+ }
417
+
418
+ .product-card-actions {
419
+ bottom: var(--spacing-75);
420
+ }
421
+
422
+ ::slotted([slot="vviinn-product-card-actions"]),
423
+ .product-card-actions-top,
424
+ .product-card-actions {
425
+ display: flex;
426
+ flex-direction: column;
427
+ gap: 4px;
428
+ }
429
+
430
+ .product-card-actions-top button,
431
+ .product-card-actions button,
432
+ vviinn-vpr-button::part(button),
433
+ .update-button {
434
+ width: 24px;
435
+ height: 24px;
436
+ line-height: 0px;
413
437
  z-index: 1;
414
438
  border: none;
415
439
  cursor: pointer;
416
440
  background: none;
417
- }
418
441
 
419
- .update-button > div {
420
442
  background-color: var(--button-bg-color-frosted);
421
443
  color: var(--color-icon-on-color);
422
444
  -webkit-backdrop-filter: blur(calc(var(--filter-blur-150) / 2));
423
445
  backdrop-filter: blur(calc(var(--filter-blur-150) / 2));
446
+ border-radius: var(--border-radius-100);
424
447
  padding: var(--spacing-50);
425
448
 
426
449
  display: flex;
@@ -428,6 +451,16 @@ picture::before {
428
451
  align-items: center;
429
452
  }
430
453
 
454
+ .product-card-actions-top button:hover,
455
+ .product-card-actions button:hover,
456
+ .product-card-actions vviinn-vpr-button::part(button):hover,
457
+ .update-button:hover {
458
+ background-color: var(--button-bg-color-frosted-hover);
459
+ }
460
+
461
+ .product-card-actions-top button::after,
462
+ .product-card-actions button::after,
463
+ .product-card-actions vviinn-vpr-button::part(button)::after,
431
464
  .update-button::after {
432
465
  position: absolute;
433
466
  width: calc(100% + var(--spacing-100));
@@ -435,10 +468,7 @@ picture::before {
435
468
  top: calc(-1 * var(--spacing-50));
436
469
  right: calc(-1 * var(--spacing-50));
437
470
  content: "";
438
- }
439
-
440
- .update-button:hover > div {
441
- background-color: var(--button-bg-color-frosted-hover);
471
+ cursor: pointer;
442
472
  }
443
473
 
444
474
  .basket-button {
@@ -499,7 +529,8 @@ picture::after {
499
529
  background-color: transparent;
500
530
  }
501
531
 
502
- :host(.animated) .update-button {
532
+ :host(.animated) .product-card-actions,
533
+ :host(.animated) .product-card-actions-top {
503
534
  display: none;
504
535
  }
505
536
 
@@ -583,54 +614,6 @@ vviinn-energy-label {
583
614
  );
584
615
  }
585
616
 
586
- .product-card-actions,
587
- .product-card-top-actions {
588
- position: absolute;
589
- right: 3px;
590
- }
591
- .product-card-top-actions {
592
- top: 3px;
593
- }
594
- .product-card-actions {
595
- bottom: 3px;
596
- }
597
-
598
- .product-card-top-actions button {
599
- border: none;
600
- display: flex;
601
- justify-content: center;
602
- align-items: center;
603
- gap: var(--spacing-50);
604
-
605
- color: var(--color-icon-inverse);
606
- cursor: pointer;
607
- line-height: 0px;
608
-
609
- background: none;
610
-
611
- width: 32px;
612
- height: 32px;
613
- }
614
-
615
- .product-card-top-actions button > div {
616
- padding: var(--spacing-50);
617
- border-radius: var(--border-radius-100);
618
- background: var(--button-bg-color-frosted);
619
- -webkit-backdrop-filter: blur(calc(var(--filter-blur-150, 12px) / 2));
620
- backdrop-filter: blur(calc(var(--filter-blur-150, 12px) / 2));
621
- }
622
-
623
- .product-card-top-actions button:hover > div {
624
- background: var(--button-bg-color-frosted-hover);
625
- }
626
-
627
- ::slotted([slot="vviinn-product-card-actions"]),
628
- .product-card-top-actions {
629
- display: flex;
630
- flex-direction: column;
631
- gap: 8px;
632
- }
633
-
634
617
  .footer-arrow {
635
618
  position: absolute;
636
619
  bottom: -35px;
@@ -48,7 +48,7 @@ import { productCardParts } from "../../cssParts";
48
48
  * @part custom-label-3 - Custom label with index 3.
49
49
  * @part custom-label-4 - Custom label with index 4.
50
50
  * @part product-card-actions - Style actions wrapper.
51
- * @part product-card-top-actions - Style top actions wrapper.
51
+ * @part product-card-actions-top - Style top actions wrapper.
52
52
  *
53
53
  * @slot vviinn-update-button-icon - Icon of Update Button (Set mode).
54
54
  * @slot vviinn-basket-button-text - Text of Add to Basket button.
@@ -240,15 +240,23 @@ export class VviinnProductCard {
240
240
  var _a, _b, _c;
241
241
  return (h(Host, { part: "product-card", class: {
242
242
  animated: this.isTransitioning,
243
- }, exportparts: productCardParts }, h("div", { class: "image-container", part: "image-container" }, h(Linked, { deeplink: this.deeplink, part: "image-link" }, this.renderImage()), h("div", { class: "product-card-top-actions", part: "product-card-top-actions" }, h("button", { class: {
243
+ }, exportparts: productCardParts }, h("div", { class: "image-container", part: "image-container" }, h(Linked, { deeplink: this.deeplink, part: "image-link" }, this.renderImage()), h("div", { class: "product-card-actions-top", part: "product-card-actions-top" }, h("button", { class: {
244
244
  hidden: !this.favoriteShow,
245
245
  }, part: "favorite-button", onClick: this.favoriteButtonClickHandler.bind(this) }, h("div", { key: "favorite-not-pressed", class: {
246
246
  hidden: this.favoriteButonPressed,
247
247
  } }, h("slot", { name: "vviinn-favorite-icon" }, h(FavoriteIcon, { width: 14, height: 14 }))), h("div", { key: "favorite-pressed", class: {
248
248
  hidden: !this.favoriteButonPressed,
249
- } }, h("slot", { name: "vviinn-favorite-icon-pressed" }, h(FavoriteIconPressed, { width: 14, height: 14 }))))), h("div", { class: "product-card-actions", part: "product-card-actions" }, h("slot", { name: "vviinn-product-card-actions" }))), h("div", { class: "content-container", part: "content-container" }, this.isTransitioning ? (h(Fragment, null, h("vviinn-skeleton", { height: 40 }), h("vviinn-skeleton", { height: 20, halfWidth: true }))) : (h(Fragment, null, h(Linked, { deeplink: this.deeplink, part: "deeplink" }, h("span", { class: "title", part: "title" }, this.productTitle)), ((_a = this.brand) === null || _a === void 0 ? void 0 : _a.length) > 0 && (h("span", { class: "brand", part: "brand" }, this.brand)), ((_b = this.productType) === null || _b === void 0 ? void 0 : _b.length) > 0 && (h("span", { class: "product-type", part: "product-type" }, this.productType)), ((_c = this === null || this === void 0 ? void 0 : this.energyCertifications) !== null && _c !== void 0 ? _c : []).map((energyCertification) => (h("vviinn-energy-label", { classIconUrls: energyCertification === null || energyCertification === void 0 ? void 0 : energyCertification.classIconUrls, classDataSheetUrl: energyCertification === null || energyCertification === void 0 ? void 0 : energyCertification.classDataSheetUrl, productType: energyCertification === null || energyCertification === void 0 ? void 0 : energyCertification.productType }))), h(Price, { prefix: this.pricePrefix, currency: this.currency, price: this.price, basePrice: parseBasePrice(this.basePrice), salePrice: this.salePrice, baseSalePrice: parseBasePrice(this.baseSalePrice), locale: this.locale, showInContainer: this.addPriceContainer }), this.setMode &&
249
+ } }, h("slot", { name: "vviinn-favorite-icon-pressed" }, h(FavoriteIconPressed, { width: 14, height: 14 })))), h("button", { class: {
250
+ "update-button": true,
251
+ hidden: !this.isShowUpdateButton(),
252
+ }, part: "update-button-item", onClick: () => {
253
+ this.vviinnCrossSellingClick.emit({
254
+ animationInterval: generateRandomNumber(800, 1400),
255
+ productData: this.productData,
256
+ });
257
+ } }, h("div", null, h("slot", { name: "vviinn-update-button-icon" }, h(UpdateIcon, { width: 14, height: 14 }))))), h("div", { class: "product-card-actions", part: "product-card-actions" }, h("slot", { name: "vviinn-product-card-actions" }))), h("div", { class: "content-container", part: "content-container" }, this.isTransitioning ? (h(Fragment, null, h("vviinn-skeleton", { height: 40 }), h("vviinn-skeleton", { height: 20, halfWidth: true }))) : (h(Fragment, null, h(Linked, { deeplink: this.deeplink, part: "deeplink" }, h("span", { class: "title", part: "title" }, this.productTitle)), ((_a = this.brand) === null || _a === void 0 ? void 0 : _a.length) > 0 && (h("span", { class: "brand", part: "brand" }, this.brand)), ((_b = this.productType) === null || _b === void 0 ? void 0 : _b.length) > 0 && (h("span", { class: "product-type", part: "product-type" }, this.productType)), ((_c = this === null || this === void 0 ? void 0 : this.energyCertifications) !== null && _c !== void 0 ? _c : []).map((energyCertification) => (h("vviinn-energy-label", { classIconUrls: energyCertification === null || energyCertification === void 0 ? void 0 : energyCertification.classIconUrls, classDataSheetUrl: energyCertification === null || energyCertification === void 0 ? void 0 : energyCertification.classDataSheetUrl, productType: energyCertification === null || energyCertification === void 0 ? void 0 : energyCertification.productType }))), h(Price, { prefix: this.pricePrefix, currency: this.currency, price: this.price, basePrice: parseBasePrice(this.basePrice), salePrice: this.salePrice, baseSalePrice: parseBasePrice(this.baseSalePrice), locale: this.locale, showInContainer: this.addPriceContainer }), this.setMode &&
250
258
  !this.appliedDiscountPercentage &&
251
- this.currentDiscountPercentage && (h("div", { class: "discount-label", part: "discount-label" }, `-${this.currentDiscountPercentage}%`)))), renderCustomLabels(this.customLabels.split(",")), h("vviinn-skeleton", { height: 40, class: {
259
+ this.currentDiscountPercentage && (h("div", { class: "discount-label", part: "discount-label" }, `-${this.currentDiscountPercentage}%`)), renderCustomLabels(this.customLabels.split(",")))), h("vviinn-skeleton", { height: 40, class: {
252
260
  hidden: !this.isTransitioning,
253
261
  } })), h("div", { class: {
254
262
  "basket-button-container": true,
@@ -265,15 +273,7 @@ export class VviinnProductCard {
265
273
  hidden: !this.basketButonPressed,
266
274
  } }, h("span", { class: "basket-button-icon-container" }, h("slot", { name: "vviinn-basket-button-icon-pressed" }, h(CheckCircleIcon, null))), h("span", null, h("span", { class: "discount-percentage", part: "discount-percentage", hidden: !(this.setMode && this.appliedDiscountPercentage) }, this.appliedDiscountPercentage, "%"), h("slot", { name: "vviinn-basket-button-text-pressed" }, this.setMode
267
275
  ? i18next.t("setMode.basketButtonPressedText")
268
- : i18next.t("basketButtonPressedText")))))), h("button", { class: {
269
- "update-button": true,
270
- hidden: !this.isShowUpdateButton(),
271
- }, part: "update-button-item", onClick: () => {
272
- this.vviinnCrossSellingClick.emit({
273
- animationInterval: generateRandomNumber(800, 1400),
274
- productData: this.productData,
275
- });
276
- } }, h("div", null, h("slot", { name: "vviinn-update-button-icon" }, h(UpdateIcon, { width: 14, height: 14 })))), this.showFooterArrow && h("div", { class: "footer-arrow" })));
276
+ : i18next.t("basketButtonPressedText")))))), this.showFooterArrow && h("div", { class: "footer-arrow" })));
277
277
  }
278
278
  static get is() { return "vviinn-product-card"; }
279
279
  static get encapsulation() { return "shadow"; }
@@ -93,8 +93,10 @@ export class VviinnVpsButton {
93
93
  this.apiPath = "https://api.vviinn.com";
94
94
  this.buttonPressed = false;
95
95
  }
96
- handleModalClosed() {
97
- this.buttonPressed = false;
96
+ handleModalClosed({ detail }) {
97
+ if (detail.widgetType === "VPS") {
98
+ this.buttonPressed = false;
99
+ }
98
100
  }
99
101
  componentWillLoad() {
100
102
  this.slots = findSlotElements(this.el);
@@ -196,9 +196,6 @@ export class VviinnVpsWidget {
196
196
  this.setShowAspectRatioError(detail);
197
197
  this.el.classList.add("bordered");
198
198
  };
199
- this.LinkText = ({ href, children }) => {
200
- return h("a", { href: href || "" }, children);
201
- };
202
199
  this.token = undefined;
203
200
  this.active = true;
204
201
  this.currencySign = "€";
@@ -14,7 +14,7 @@ export const productCardGeneralPartsList = [
14
14
  "basket-button-container",
15
15
  "update-button-item",
16
16
  "product-card-actions",
17
- "product-card-top-actions",
17
+ "product-card-actions-top",
18
18
  "discount-label",
19
19
  "discount-percentage",
20
20
  ];
@@ -58,7 +58,7 @@ const productCardGeneralPartsList = [
58
58
  "basket-button-container",
59
59
  "update-button-item",
60
60
  "product-card-actions",
61
- "product-card-top-actions",
61
+ "product-card-actions-top",
62
62
  "discount-label",
63
63
  "discount-percentage",
64
64
  ];
@@ -44,6 +44,7 @@ const productCardSlotNames = [
44
44
  "vviinn-favorite-icon",
45
45
  "vviinn-favorite-icon-pressed",
46
46
  "vviinn-energy-label-data-sheet-text",
47
+ "vviinn-product-card-actions",
47
48
  "vviinn-custom-label-0",
48
49
  "vviinn-custom-label-1",
49
50
  "vviinn-custom-label-2",
@@ -139,6 +140,6 @@ const slotChangeListener = (component, element) => {
139
140
  component.connectedCallback.call(component);
140
141
  };
141
142
 
142
- const version = "2.144.0";
143
+ const version = "2.144.2";
143
144
 
144
145
  export { SlotSkeleton as S, fold as a, vprIconSlotName as b, campaignTypeNames as c, fromString as f, productCardSlotNames as p, slotChangeListener as s, version as v };
@@ -2,9 +2,9 @@ import { h, r as registerInstance, c as createEvent, H as Host, g as getElement
2
2
  import { s as searchState, j as createCommonjsModule, i as commonjsGlobal, l as makeRectangularSearchRequest, e as state, c as componentsState, _ as _function, n as sequenceToOption, O as Option, o as getImageSizes, q as foldValueObject, r as detectedObjectEq, u as toFile, v as processSelectedFile, E as Either, w as match, x as makeSearchIdRequest, y as makeTextSearchRequest, z as getOrElse, B as makeProductListingPageRequest } from './search.store-3c94f453.js';
3
3
  import { f as fromImage, a as fromAlt, s as scaleWithSized, c as center } from './Rectangle-6e69b807.js';
4
4
  import { i as instance, l as createFilterEvent, r as resources, c as createTrackingApi, v as v4, n as createResultEventByType, o as createProductWidgetEventByType } from './index-54d4fcfb.js';
5
- import { s as slotChangeListener, c as campaignTypeNames, p as productCardSlotNames, b as vprIconSlotName, v as version } from './package-0eedf6bd.js';
5
+ import { s as slotChangeListener, c as campaignTypeNames, p as productCardSlotNames, b as vprIconSlotName, v as version } from './package-53a7d414.js';
6
6
  import { P as PlusIcon, g as getCustomLabels } from './index-f38df7a0.js';
7
- import { m as modalParts, a as productCardParts, s as searchBarParts } from './index-a6fa0e95.js';
7
+ import { m as modalParts, a as productCardParts, s as searchBarParts } from './index-f39001f9.js';
8
8
  import { f as findSlotElements, g as getSlotNames } from './index-cd60a76c.js';
9
9
  import { S as SearchModalUploadIcon } from './SearchModalUploadIcon-08db80ec.js';
10
10
 
@@ -1,6 +1,6 @@
1
1
  import { h, r as registerInstance, H as Host, c as createEvent, g as getElement } from './index-8e1dd483.js';
2
2
  import { i as isClickedInRectBound } from './Rectangle-6e69b807.js';
3
- import { g as carouselParts, a as productCardParts } from './index-a6fa0e95.js';
3
+ import { g as carouselParts, a as productCardParts } from './index-f39001f9.js';
4
4
 
5
5
  const CrossIcon = () => (h("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", xmlns: "http://www.w3.org/2000/svg" },
6
6
  h("path", { d: "M16 1.4L14.6 0L8 6.6L1.4 0L0 1.4L6.6 8L0 14.6L1.4 16L8 9.4L14.6 16L16 14.6L9.4 8L16 1.4Z", fill: "#161616" })));