vviinn-widgets 2.145.11 → 2.145.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/dist/cjs/{package-7189c39b.js → package-0598a72d.js} +1 -1
  2. package/dist/cjs/search-filters_13.cjs.entry.js +1 -1
  3. package/dist/cjs/vviinn-carousel_9.cjs.entry.js +4 -4
  4. package/dist/cjs/vviinn-detected-object_7.cjs.entry.js +1 -1
  5. package/dist/cjs/vviinn-selected-filters.cjs.entry.js +1 -1
  6. package/dist/cjs/vviinn-text-search.cjs.entry.js +1 -1
  7. package/dist/collection/components/image-search/search-filters/search-filters.css +0 -1
  8. package/dist/collection/components/vviinn-button/vviinn-button.css +0 -1
  9. package/dist/collection/components/vviinn-cropper/vviinn-detected-object/vviinn-detected-object.css +0 -1
  10. package/dist/collection/components/vviinn-error/vviinn-error.css +0 -1
  11. package/dist/collection/components/vviinn-filters/vviinn-filters.css +3 -2
  12. package/dist/collection/components/vviinn-modal/vviinn-modal.css +0 -1
  13. package/dist/collection/components/vviinn-overlay/vviinn-overlay.js +1 -1
  14. package/dist/collection/components/vviinn-price-range/vviinn-price-range.css +0 -1
  15. package/dist/collection/components/vviinn-price-range/vviinn-price-range.js +1 -1
  16. package/dist/collection/components/vviinn-privacy-badge/vviinn-privacy-badge.css +0 -1
  17. package/dist/collection/components/vviinn-product-card/vviinn-energy-label/vviinn-energy-label.css +0 -1
  18. package/dist/collection/components/vviinn-product-card/vviinn-product-card.css +0 -1
  19. package/dist/collection/components/vviinn-results/vviinn-results.css +0 -1
  20. package/dist/collection/components/vviinn-slider/vviinn-slider.css +0 -1
  21. package/dist/collection/components/vviinn-teaser/vviinn-teaser.css +0 -1
  22. package/dist/collection/components/vviinn-text-search/vviinn-text-search.css +0 -1
  23. package/dist/collection/components/vviinn-text-search/vviinn-text-search.js +1 -1
  24. package/dist/collection/components/vviinn-vpr-button/recommendations-sidebar/recommendations-sidebar.css +0 -1
  25. package/dist/collection/components/vviinn-vpr-widget/vviinn-vpr-widget.css +0 -1
  26. package/dist/collection/components/vviinn-vps-widget/vviinn-vps-widget.css +0 -1
  27. package/dist/collection/index.js +1 -1
  28. package/dist/esm/{package-e7df49f1.js → package-578728c8.js} +1 -1
  29. package/dist/esm/search-filters_13.entry.js +1 -1
  30. package/dist/esm/vviinn-carousel_9.entry.js +4 -4
  31. package/dist/esm/vviinn-detected-object_7.entry.js +1 -1
  32. package/dist/esm/vviinn-selected-filters.entry.js +1 -1
  33. package/dist/esm/vviinn-text-search.entry.js +1 -1
  34. package/dist/types/components.d.ts +2 -2
  35. package/dist/types/index.d.ts +1 -1
  36. package/dist/vviinn-widgets/{p-60068f93.entry.js → p-27943563.entry.js} +1 -1
  37. package/dist/vviinn-widgets/p-5b49585c.entry.js +1 -0
  38. package/dist/vviinn-widgets/{p-537d8d5b.entry.js → p-78e70ca6.entry.js} +1 -1
  39. package/dist/vviinn-widgets/{p-8a0f67c6.js → p-800ea3cc.js} +1 -1
  40. package/{www/build/p-2c14dd34.entry.js → dist/vviinn-widgets/p-c79f3aa6.entry.js} +1 -1
  41. package/dist/vviinn-widgets/p-e720457a.entry.js +1 -0
  42. package/dist/vviinn-widgets/vviinn-widgets.esm.js +1 -1
  43. package/package.json +4 -3
  44. package/readme.md +2 -1
  45. package/www/build/{p-60068f93.entry.js → p-27943563.entry.js} +1 -1
  46. package/www/build/p-5b49585c.entry.js +1 -0
  47. package/www/build/{p-537d8d5b.entry.js → p-78e70ca6.entry.js} +1 -1
  48. package/www/build/{p-8a0f67c6.js → p-800ea3cc.js} +1 -1
  49. package/{dist/vviinn-widgets/p-2c14dd34.entry.js → www/build/p-c79f3aa6.entry.js} +1 -1
  50. package/www/build/p-e720457a.entry.js +1 -0
  51. package/www/build/vviinn-widgets.esm.js +1 -1
  52. package/dist/vviinn-widgets/p-4c8fad0c.entry.js +0 -1
  53. package/dist/vviinn-widgets/p-794a0bc1.entry.js +0 -1
  54. package/www/build/p-4c8fad0c.entry.js +0 -1
  55. package/www/build/p-794a0bc1.entry.js +0 -1
@@ -0,0 +1 @@
1
+ import{h as t,r as e,c as i,H as r,g as o,F as s}from"./p-c3953cbf.js";import{_ as a,a as n,h as l,t as c,s as d,c as p,O as h,S as f,E as u,p as g,b,m as v,f as m,g as x,d as w,A as y,e as C,T as k}from"./p-f601d5c0.js";import{c as z,f as S,a as I,v as j}from"./p-800ea3cc.js";import{g as P,P as T,v as _,c as V,a as L,b as M,d as R,e as O,f as A,h as E,i as B,j as W,k as F}from"./p-380b7211.js";import{i as H}from"./p-2e76a5c3.js";import{s as N,S as D}from"./p-43e147d6.js";import{e as Z,p as $,a as U}from"./p-1f0dc75e.js";import{R as J,t as G,a as X,s as q}from"./p-6832d51f.js";import{r as Y}from"./p-645df5cc.js";import{i as K}from"./p-f2d58f7d.js";const Q=()=>t("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},t("g",{id:"shopping-bag"},t("path",{id:"Vector",d:"M6 22C5.45 22 4.97917 21.8042 4.5875 21.4125C4.19583 21.0208 4 20.55 4 20V8C4 7.45 4.19583 6.97917 4.5875 6.5875C4.97917 6.19583 5.45 6 6 6H8C8 4.9 8.39167 3.95833 9.175 3.175C9.95833 2.39167 10.9 2 12 2C13.1 2 14.0417 2.39167 14.825 3.175C15.6083 3.95833 16 4.9 16 6H18C18.55 6 19.0208 6.19583 19.4125 6.5875C19.8042 6.97917 20 7.45 20 8V20C20 20.55 19.8042 21.0208 19.4125 21.4125C19.0208 21.8042 18.55 22 18 22H6ZM6 20H18V8H16V10C16 10.2833 15.9042 10.5208 15.7125 10.7125C15.5208 10.9042 15.2833 11 15 11C14.7167 11 14.4792 10.9042 14.2875 10.7125C14.0958 10.5208 14 10.2833 14 10V8H10V10C10 10.2833 9.90417 10.5208 9.7125 10.7125C9.52083 10.9042 9.28333 11 9 11C8.71667 11 8.47917 10.9042 8.2875 10.7125C8.09583 10.5208 8 10.2833 8 10V8H6V20ZM10 6H14C14 5.45 13.8042 4.97917 13.4125 4.5875C13.0208 4.19583 12.55 4 12 4C11.45 4 10.9792 4.19583 10.5875 4.5875C10.1958 4.97917 10 5.45 10 6Z",fill:"#161616"}))),tt=()=>t("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},t("g",{id:"check"},t("path",{id:"Vector",d:"M10.6 13.8L8.45 11.65C8.26667 11.4667 8.03333 11.375 7.75 11.375C7.46667 11.375 7.23333 11.4667 7.05 11.65C6.86667 11.8333 6.775 12.0667 6.775 12.35C6.775 12.6333 6.86667 12.8667 7.05 13.05L9.9 15.9C10.1 16.1 10.3333 16.2 10.6 16.2C10.8667 16.2 11.1 16.1 11.3 15.9L16.95 10.25C17.1333 10.0667 17.225 9.83333 17.225 9.55C17.225 9.26667 17.1333 9.03333 16.95 8.85C16.7667 8.66667 16.5333 8.575 16.25 8.575C15.9667 8.575 15.7333 8.66667 15.55 8.85L10.6 13.8ZM12 22C10.6167 22 9.31667 21.7375 8.1 21.2125C6.88333 20.6875 5.825 19.975 4.925 19.075C4.025 18.175 3.3125 17.1167 2.7875 15.9C2.2625 14.6833 2 13.3833 2 12C2 10.6167 2.2625 9.31667 2.7875 8.1C3.3125 6.88333 4.025 5.825 4.925 4.925C5.825 4.025 6.88333 3.3125 8.1 2.7875C9.31667 2.2625 10.6167 2 12 2C13.3833 2 14.6833 2.2625 15.9 2.7875C17.1167 3.3125 18.175 4.025 19.075 4.925C19.975 5.825 20.6875 6.88333 21.2125 8.1C21.7375 9.31667 22 10.6167 22 12C22 13.3833 21.7375 14.6833 21.2125 15.9C20.6875 17.1167 19.975 18.175 19.075 19.075C18.175 19.975 17.1167 20.6875 15.9 21.2125C14.6833 21.7375 13.3833 22 12 22Z",fill:"#16A34A"}))),et=()=>t("svg",{width:"9",height:"16",xmlns:"http://www.w3.org/2000/svg"},t("path",{d:"m9 8-7.895 8L0 14.88 6.79 8 0 1.12 1.105 0 9 8Z"})),it=()=>t("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none"},t("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"})),rt=({width:e=24,height:i=24})=>t("svg",{xmlns:"http://www.w3.org/2000/svg",width:e,height:i,viewBox:"0 0 24 24",fill:"none"},t("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"}),t("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M19.93 13C19.43 13 19.01 13.37 18.95 13.86C18.52 17.36 15.51 20.06 11.89 20C8.24 19.94 5.15 16.92 5.01 13.27C4.92 10.79 6.13 8.58 8.01 7.27V11C8.01 11.55 8.46 12 9.01 12C9.56 12 10.01 11.55 10.01 11V5C10.01 4.45 9.56 4 9.01 4H3C2.45 4 2 4.45 2 5C2 5.55 2.45 6 3 6H6.35C4.24 7.71 2.91 10.35 3 13.3C3.15 17.98 7.06 21.87 11.74 22C16.45 22.13 20.37 18.65 20.93 14.13C21 13.53 20.53 13.01 19.93 13.01V13Z",fill:"currentColor"})),ot=()=>t("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none"},t("path",{d:"M12 21C11.7167 21 11.4792 20.9042 11.2875 20.7125C11.0958 20.5208 11 20.2833 11 20V16C11 15.7167 11.0958 15.4792 11.2875 15.2875C11.4792 15.0958 11.7167 15 12 15C12.2833 15 12.5208 15.0958 12.7125 15.2875C12.9042 15.4792 13 15.7167 13 16V17H20C20.2833 17 20.5208 17.0958 20.7125 17.2875C20.9042 17.4792 21 17.7167 21 18C21 18.2833 20.9042 18.5208 20.7125 18.7125C20.5208 18.9042 20.2833 19 20 19H13V20C13 20.2833 12.9042 20.5208 12.7125 20.7125C12.5208 20.9042 12.2833 21 12 21ZM4 19C3.71667 19 3.47917 18.9042 3.2875 18.7125C3.09583 18.5208 3 18.2833 3 18C3 17.7167 3.09583 17.4792 3.2875 17.2875C3.47917 17.0958 3.71667 17 4 17H8C8.28333 17 8.52083 17.0958 8.7125 17.2875C8.90417 17.4792 9 17.7167 9 18C9 18.2833 8.90417 18.5208 8.7125 18.7125C8.52083 18.9042 8.28333 19 8 19H4ZM8 15C7.71667 15 7.47917 14.9042 7.2875 14.7125C7.09583 14.5208 7 14.2833 7 14V13H4C3.71667 13 3.47917 12.9042 3.2875 12.7125C3.09583 12.5208 3 12.2833 3 12C3 11.7167 3.09583 11.4792 3.2875 11.2875C3.47917 11.0958 3.71667 11 4 11H7V10C7 9.71667 7.09583 9.47917 7.2875 9.2875C7.47917 9.09583 7.71667 9 8 9C8.28333 9 8.52083 9.09583 8.7125 9.2875C8.90417 9.47917 9 9.71667 9 10V14C9 14.2833 8.90417 14.5208 8.7125 14.7125C8.52083 14.9042 8.28333 15 8 15ZM12 13C11.7167 13 11.4792 12.9042 11.2875 12.7125C11.0958 12.5208 11 12.2833 11 12C11 11.7167 11.0958 11.4792 11.2875 11.2875C11.4792 11.0958 11.7167 11 12 11H20C20.2833 11 20.5208 11.0958 20.7125 11.2875C20.9042 11.4792 21 11.7167 21 12C21 12.2833 20.9042 12.5208 20.7125 12.7125C20.5208 12.9042 20.2833 13 20 13H12ZM16 9C15.7167 9 15.4792 8.90417 15.2875 8.7125C15.0958 8.52083 15 8.28333 15 8V4C15 3.71667 15.0958 3.47917 15.2875 3.2875C15.4792 3.09583 15.7167 3 16 3C16.2833 3 16.5208 3.09583 16.7125 3.2875C16.9042 3.47917 17 3.71667 17 4V5H20C20.2833 5 20.5208 5.09583 20.7125 5.2875C20.9042 5.47917 21 5.71667 21 6C21 6.28333 20.9042 6.52083 20.7125 6.7125C20.5208 6.90417 20.2833 7 20 7H17V8C17 8.28333 16.9042 8.52083 16.7125 8.7125C16.5208 8.90417 16.2833 9 16 9ZM4 7C3.71667 7 3.47917 6.90417 3.2875 6.7125C3.09583 6.52083 3 6.28333 3 6C3 5.71667 3.09583 5.47917 3.2875 5.2875C3.47917 5.09583 3.71667 5 4 5H12C12.2833 5 12.5208 5.09583 12.7125 5.2875C12.9042 5.47917 13 5.71667 13 6C13 6.28333 12.9042 6.52083 12.7125 6.7125C12.5208 6.90417 12.2833 7 12 7H4Z",fill:"#161616"})),st=()=>t("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none"},t("path",{d:"M12 13.3892L6.91958 18.4696C6.72248 18.6667 6.49095 18.7653 6.225 18.7653C5.95905 18.7653 5.72753 18.6667 5.53043 18.4696C5.33333 18.2725 5.23478 18.041 5.23478 17.775C5.23478 17.5091 5.33333 17.2776 5.53043 17.0805L10.6109 12L5.53043 6.9196C5.33333 6.7225 5.23478 6.49098 5.23478 6.22503C5.23478 5.95908 5.33333 5.72755 5.53043 5.53045C5.72753 5.33335 5.95905 5.2348 6.225 5.2348C6.49095 5.2348 6.72248 5.33335 6.91958 5.53045L12 10.6109L17.0804 5.53045C17.2775 5.33335 17.5091 5.2348 17.775 5.2348C18.041 5.2348 18.2725 5.33335 18.4696 5.53045C18.6667 5.72755 18.7652 5.95908 18.7652 6.22503C18.7652 6.49098 18.6667 6.7225 18.4696 6.9196L13.3892 12L18.4696 17.0805C18.6667 17.2776 18.7652 17.5091 18.7652 17.775C18.7652 18.041 18.6667 18.2725 18.4696 18.4696C18.2725 18.6667 18.041 18.7653 17.775 18.7653C17.5091 18.7653 17.2775 18.6667 17.0804 18.4696L12 13.3892Z",fill:"currentColor"})),at=({width:e=24,height:i=24})=>t("svg",{xmlns:"http://www.w3.org/2000/svg",width:e,height:i,viewBox:"0 0 24 24",fill:"none"},t("path",{d:"M12 21.325C11.7667 21.325 11.5292 21.2834 11.2875 21.2C11.0458 21.1167 10.8333 20.9834 10.65 20.8L8.925 19.225C7.15833 17.6084 5.5625 16.0042 4.1375 14.4125C2.7125 12.8209 2 11.0667 2 9.15002C2 7.58336 2.525 6.27502 3.575 5.22502C4.625 4.17502 5.93333 3.65002 7.5 3.65002C8.38333 3.65002 9.21667 3.83752 10 4.21252C10.7833 4.58752 11.45 5.10002 12 5.75002C12.55 5.10002 13.2167 4.58752 14 4.21252C14.7833 3.83752 15.6167 3.65002 16.5 3.65002C18.0667 3.65002 19.375 4.17502 20.425 5.22502C21.475 6.27502 22 7.58336 22 9.15002C22 11.0667 21.2917 12.825 19.875 14.425C18.4583 16.025 16.85 17.6334 15.05 19.25L13.35 20.8C13.1667 20.9834 12.9542 21.1167 12.7125 21.2C12.4708 21.2834 12.2333 21.325 12 21.325ZM11.05 7.75002C10.5667 7.06669 10.05 6.54586 9.5 6.18752C8.95 5.82919 8.28333 5.65002 7.5 5.65002C6.5 5.65002 5.66667 5.98336 5 6.65002C4.33333 7.31669 4 8.15002 4 9.15002C4 10.0167 4.30833 10.9375 4.925 11.9125C5.54167 12.8875 6.27917 13.8334 7.1375 14.75C7.99583 15.6667 8.87917 16.525 9.7875 17.325C10.6958 18.125 11.4333 18.7834 12 19.3C12.5667 18.7834 13.3042 18.125 14.2125 17.325C15.1208 16.525 16.0042 15.6667 16.8625 14.75C17.7208 13.8334 18.4583 12.8875 19.075 11.9125C19.6917 10.9375 20 10.0167 20 9.15002C20 8.15002 19.6667 7.31669 19 6.65002C18.3333 5.98336 17.5 5.65002 16.5 5.65002C15.7167 5.65002 15.05 5.82919 14.5 6.18752C13.95 6.54586 13.4333 7.06669 12.95 7.75002C12.8333 7.91669 12.6917 8.04169 12.525 8.12502C12.3583 8.20836 12.1833 8.25002 12 8.25002C11.8167 8.25002 11.6417 8.20836 11.475 8.12502C11.3083 8.04169 11.1667 7.91669 11.05 7.75002Z",fill:"white"})),nt=({width:e=24,height:i=24})=>t("svg",{xmlns:"http://www.w3.org/2000/svg",width:e,height:i,viewBox:"0 0 24 24",fill:"none"},t("path",{d:"M12 21.325C11.7667 21.325 11.5292 21.2834 11.2875 21.2C11.0458 21.1167 10.8333 20.9834 10.65 20.8L8.925 19.225C7.15833 17.6084 5.5625 16.0042 4.1375 14.4125C2.7125 12.8209 2 11.0667 2 9.15002C2 7.58336 2.525 6.27502 3.575 5.22502C4.625 4.17502 5.93333 3.65002 7.5 3.65002C8.38333 3.65002 9.21667 3.83752 10 4.21252C10.7833 4.58752 11.45 5.10002 12 5.75002C12.55 5.10002 13.2167 4.58752 14 4.21252C14.7833 3.83752 15.6167 3.65002 16.5 3.65002C18.0667 3.65002 19.375 4.17502 20.425 5.22502C21.475 6.27502 22 7.58336 22 9.15002C22 11.0667 21.2917 12.825 19.875 14.425C18.4583 16.025 16.85 17.6334 15.05 19.25L13.35 20.8C13.1667 20.9834 12.9542 21.1167 12.7125 21.2C12.4708 21.2834 12.2333 21.325 12 21.325Z",fill:"white"})),lt="--vviinn-carousel-image-width",ct="items-group";Object.assign(Object.assign({},{concat:(t,e)=>t/e}),{empty:1});const dt=class{constructor(t){e(this,t),this.vviinnProductLoad=i(this,"vviinnProductLoad",7),this.vviinnProductView=i(this,"vviinnProductView",7),this.columns=0,this.resizeObserver=new ResizeObserver((()=>this.handleResize())),this.defaultAnimationInterval=2e3,this.setModeMaxDiscount=null,this.mutationObserver=new MutationObserver((()=>this.cloneSlottedContent())),this.handleWindowResize=()=>this.setImageWidthSetMode("100%"),this.isLastGroup=()=>this.isGridMode&&this.activeContentGroup===this.getContentGroups().length-1,this.isFirstGroup=()=>this.isGridMode&&0===this.activeContentGroup,this.updateCard=(t,e,i)=>{let r=this.crossSellingRecommendations.find((e=>e.productId===t));const o=this.crossSellingRecommendations.indexOf(r),s=this.recommendations.indexOf(r),a=this.crossSellingRecommendations;if(s+e<this.recommendations.length){const r=this.recommendations[s+e];a[o]=r;const n=this.getProductData(r,s+e);this.vviinnProductLoad.emit(n),this.crossSellingRecommendations=[...a];let l=this.el.querySelector(`[data-id="${t}"]`);const c=l.shadowRoot.querySelector(".update-button");null==c||c.classList.add("hidden");const d=l.getBoundingClientRect().width;this.setImageWidthSetMode(`${d}px`);const p=setTimeout((()=>{s+2*e<=this.recommendations.length-1&&(null==c||c.classList.remove("hidden")),this.vviinnProductView.emit(n),clearTimeout(p)}),i)}},this.moveDirection="right",this.contentGroups=[],this.activeContentGroup=0,this.isRTL=!1,this.crossSellingRecommendations=[],this.setModeDiscount=null,this.currentDiscountIndex=0,this.setModeAppliedDiscounts={},this.mode="continuity",this.imageWidth=140,this.showScroll=!0,this.campaignTypeId=void 0,this.widgetElementId=void 0,this.gridArrowsDynamic=void 0,this.recommendations=[],this.sourceProduct=void 0,this.widgetVersion=void 0,this.addToBasketShow=void 0,this.updatingAllCards=void 0,this.updateButtonLocation=void 0,this.replaceSlotsContent=void 0,this.setModeDiscountsArray=void 0,this.imageRatio=void 0,this.addPriceContainer=!1,this.favoriteShow=void 0,this.currencySign=void 0,this.pricePrefix="",this.locale=void 0,this.setItemsAmount=void 0}getProductData(t,e){return{productId:t.productId,productRank:e,productName:t.productTitle,productType:t.productType,widgetType:"VPR",campaignTypeId:this.campaignTypeId,campaignTypeName:z[this.campaignTypeId],widgetId:this.widgetElementId,widgetVersion:this.widgetVersion}}componentWillLoad(){this.isRTL="rtl"===document.dir}connectedCallback(){this.setItemWidth(),this.isSetMode="set"===this.mode,this.isGridMode="grid"===this.mode,this.isContinuityMode="continuity"===this.mode,this.columns=this.getColumnsNumber(),this.isSetMode&&(window.addEventListener("resize",this.handleWindowResize),this.setModeDiscount=this.setModeDiscountsArray[0],this.setModeMaxDiscount=this.setModeDiscountsArray[this.setModeDiscountsArray.length-1]),this.isSetMode&&this.recommendations.length>=this.columns&&(this.crossSellingRecommendations=this.recommendations.slice(0,this.columns))}disconnectedCallback(){this.resizeObserver.disconnect(),window.removeEventListener("resize",this.handleWindowResize)}componentDidUpdate(){this.replaceSlotsContent()}componentDidLoad(){this.setWidth();const t=this.el.querySelector(".content");this.mutationObserver.observe(t,{subtree:!0,childList:!0}),this.resizeObserver.observe(this.getHostParent()),this.isGridMode&&this.getContentNode().addEventListener("scrollend",(()=>{this.activeContentGroup=this.getActiveGroupIndex()}))}updatingAllCardsWatcher(){if(!this.updatingAllCards)return;const t=this.getColumnsNumber();this.crossSellingRecommendations.forEach((e=>{this.updateCard(e.productId,t,this.defaultAnimationInterval)}))}crossSellingClickListener({detail:t}){const e=this.getColumnsNumber(),{animationInterval:i,productData:r}=t;this.updateCard(r.productId,e,i)}getItemWidthFromDocument(){return parseInt(getComputedStyle(document.body).getPropertyValue(lt))}async trackAddToBasket({detail:t}){if(!this.isSetMode)return;const{productId:e}=t;this.setModeAppliedDiscounts.hasOwnProperty(e)||(this.setModeAppliedDiscounts=Object.assign(Object.assign({},this.setModeAppliedDiscounts),{[e]:this.setModeDiscount}),this.setModeDiscount===this.setModeMaxDiscount||(this.currentDiscountIndex+=1,this.setModeDiscount=this.setModeDiscountsArray[this.currentDiscountIndex]))}setItemWidth(){const t=this.getItemWidthFromDocument(),e=isNaN(t)?this.imageWidth:t;this.el.style.setProperty(lt,`${e}px`)}setImageWidthSetMode(t){this.el.style.setProperty("--vviinn-set-mode-image-width",t)}getContentClassMap(){return{content:!0,[this.moveDirection]:!0,[this.mode]:!0,"show-scrollbar":!this.isSetMode&&this.showScroll}}handleResize(){this.setWidth(),this.setItemWidth();const t=this.getColumnsNumber();t!==this.columns&&(this.columns=t)}calculateMoveStep(){const t=this.getContent().filter((t=>!t.matches("button"))).map((t=>t.getBoundingClientRect().width)),e=t.reduce(((t,e)=>t+e),0),i=a.pipe(window.getComputedStyle(this.getContentNode()),(t=>t.getPropertyValue("gap")),(t=>parseInt(t.split("px")[0])),(t=>isNaN(t)?0:t));return e/t.length+i}getHostParent(){return this.el.parentNode.host.parentElement}setWidth(){const t=this.getHostParent();if(!t)return;const e=getComputedStyle(t),i=t.getBoundingClientRect().width-(parseInt(e["padding-right"])+parseInt(e["padding-left"]));this.el.style.setProperty("--vviinn-carousel-content-width",`${i}px`)}getParent(){return this.el.parentNode.host.parentElement}cloneSlottedContent(){this.setWidth()}getActiveGroupIndex(){const t=this.getContentGroups().map((t=>t.getBoundingClientRect().left)).map(((t,e)=>[t,e])).filter((t=>t[0]>=0));return t.length>0?this.isRTL?t[t.length-1][1]:t[0][1]:0}getContentNode(){return this.el.querySelector(".content")}getContent(){const t=this.getContentNode().children;return Array.from(t).map((t=>t))}getColumnsNumber(){if(this.setItemsAmount&&this.isSetMode)return this.setItemsAmount;const t=getComputedStyle(this.el),e=this.el.querySelector(".items-group");if(e){const t=this.el.getBoundingClientRect().width,i=e.children[0].getBoundingClientRect().width,r=Math.floor(t/i);if(r)return r}const i=t.getPropertyValue("--vviinn-carousel-columns-internal"),r=parseInt(i);return r&&!isNaN(r)?r:4}getContentGroups(){return Array.from(this.el.querySelectorAll(`.${ct}`))}handleCarouselButtonClick(t){this.moveDirection=t;const e=this.getContentNode(),{scrollLeft:i}=e,r=this.calculateMoveStep();requestAnimationFrame((()=>{e.scrollTo({top:0,left:"right"===t?i+r:i-r,behavior:"smooth"})}))}scroll(t){const e=this.getContentNode();requestAnimationFrame((()=>{e.scrollTo({top:0,left:this.calculateMoveStep()*t,behavior:"smooth"})}))}showBullets(){return this.isGridMode&&this.showScroll}showScrollbar(){return this.isContinuityMode&&this.showScroll}getClassMap(){return{[this.mode]:!0,"show-scrollbar":this.showScrollbar()}}renderRecommendation(e,i){var r,o,s;const a=this.setModeAppliedDiscounts[e.productId],n=(l=null===(r=e.price)||void 0===r?void 0:r.actual,Math.round(l*(1-(null!=a?a:this.setModeDiscount)/100)*100)/100);var l;return t("vviinn-product-card",{index:i,productId:e.productId,productTitle:e.title,productType:e.productType,deeplink:e.deeplink,image:e.image.thumbnail,brand:e.brand,imageWidth:this.imageWidth,imageRatio:this.imageRatio,price:e.price.actual,salePrice:this.isSetMode?n:e.price.sale,basePrice:null===(o=e.basePrice)||void 0===o?void 0:o.actual,baseSalePrice:null===(s=e.basePrice)||void 0===s?void 0:s.sale,responsive:this.isGridMode,campaignTypeId:this.campaignTypeId,widgetElementId:this.widgetElementId,widgetVersion:this.widgetVersion,addToBasketShow:this.addToBasketShow,"data-id":e.productId,energyCertifications:e.energyCertifications,updatingAllCards:this.updatingAllCards,defaultAnimationInterval:this.defaultAnimationInterval,updateButtonLocation:this.updateButtonLocation,appliedDiscountPercentage:a,currentDiscountPercentage:this.setModeDiscount,currency:this.currencySign,pricePrefix:this.pricePrefix,locale:this.locale,setMode:this.isSetMode,customLabels:P(e),addPriceContainer:this.addPriceContainer,favoriteShow:this.favoriteShow})}renderRecommendationGroup(e){return t("div",{class:ct,part:"items-group"},...e)}renderRecommendationGroups(t){return t.map((t=>this.renderRecommendationGroup(t)))}renderRecommendations(){return this.isGridMode?this.renderGrid():this.renderRecommendationsElements()}renderRecommendationsElements(){return(this.isSetMode?this.crossSellingRecommendations:this.recommendations).map(((t,e)=>this.renderRecommendation(t,e)))}renderGrid(){const t=this.renderRecommendationsElements(),e=n.chunksOf(this.getColumnsNumber())(t);return this.renderRecommendationGroups(e)}renderBullets(){const e=Math.ceil(this.recommendations.length/this.getColumnsNumber());return Array.from(Array(e).keys()).map((e=>t("div",{class:{bullet:!0,active:this.activeContentGroup===e},onClick:()=>this.scroll(e)})))}render(){var e,i;return t(r,{class:this.getClassMap()},t("div",{class:Object.assign({body:!0},this.getClassMap())},this.isSetMode&&this.crossSellingRecommendations.length>0&&t("vviinn-product-card",{class:"set-mode product-card--source",productTitle:this.sourceProduct.title,image:this.sourceProduct.image.thumbnail,price:this.sourceProduct.price.actual,salePrice:this.sourceProduct.price.sale,basePrice:null===(e=this.sourceProduct.basePrice)||void 0===e?void 0:e.actual,baseSalePrice:null===(i=this.sourceProduct.basePrice)||void 0===i?void 0:i.sale,addPriceContainer:this.addPriceContainer,imageRatio:1,imageWidth:300,isSourceProduct:!0,currency:this.currencySign,pricePrefix:this.pricePrefix,setMode:this.isSetMode,locale:this.locale,favoriteShow:this.favoriteShow}),t("div",{class:this.getContentClassMap()},!this.isSetMode&&t("button",{class:"prev",onClick:()=>this.handleCarouselButtonClick("left"),part:"carousel-button",disabled:this.gridArrowsDynamic&&this.isFirstGroup()},t(et,null)),this.renderRecommendations(),!this.isSetMode&&t("button",{class:"next",onClick:()=>this.handleCarouselButtonClick("right"),part:"carousel-button",disabled:this.gridArrowsDynamic&&this.isLastGroup()},t(et,null)))),this.showBullets()&&t("div",{class:"bullets"},this.renderBullets()))}get el(){return o(this)}static get watchers(){return{updatingAllCards:["updatingAllCardsWatcher"]}}};dt.style=":host{--vviinn-carousel-columns-internal:var(--vviinn-carousel-columns, 4)}.body{display:flex;position:relative;width:var(--vviinn-carousel-content-width);flex-direction:column}.bullets{display:flex;flex-direction:row;grid-gap:24px;justify-content:center}.bullet{width:10px;height:10px;background:#e0e0e0;border-radius:50%;cursor:pointer}.bullet.active{background:#161616}.content{display:flex;flex-direction:row;gap:8px;overflow-y:hidden;overflow-x:auto;flex-grow:1;padding-bottom:16px;scrollbar-width:thin}.content:not(.show-scrollbar),.content.grid{scrollbar-color:#fff0 #fff0}content. .content:not(.show-scrollbar)::-webkit-scrollbar,.content.grid::-webkit-scrollbar{opacity:0}@supports (scrollbar-color: unset){.content.continuity,:host(.set){scrollbar-color:transparent transparent}.content.continuity:hover,:host(.set:hover){scrollbar-color:initial}}.content.left>*{scroll-snap-align:start}.content.right>*{scroll-snap-align:end}:host(.continuity) .prev,:host(.continuity) .next{border-radius:2px}:host(.grid) .prev,:host(.grid) .next{border-radius:50%}.prev,.next{align-items:center;background-color:white;border:none;box-shadow:0px 2px 6px rgba(0, 0, 0, 0.15);fill:#525252;cursor:pointer;display:grid;height:40px;justify-items:center;position:absolute;top:calc(50% - 20px);width:40px;z-index:1;padding:0;margin:0}.next:disabled,.prev:disabled{display:none}.prev svg{transform:rotate(180deg);margin-left:-5px}.prev{left:0}.next{right:0}.items-group{display:grid;grid-gap:16px;grid-template-columns:repeat(var(--vviinn-carousel-columns-internal), 1fr);min-width:100%}@media (max-width: 480px){.items-group{grid-template-columns:repeat(2, 1fr)}}.body.set{max-width:100%;justify-content:space-between;margin-left:auto;display:flex;flex-direction:row;gap:112px}.body.set::-webkit-scrollbar{display:none}@media (max-width: 768px){.body.set{gap:40px}}.content.set{grid-gap:20px;height:-moz-fit-content;height:fit-content;max-width:-moz-fit-content;max-width:fit-content;overflow:unset}";const pt=class{constructor(t){e(this,t),this.classIconUrls=void 0,this.productType=void 0,this.classDataSheetUrl=void 0,this.iconDirection="right"}componentWillLoad(){N(this,this.el)}render(){return t(r,{class:{hidden:!this.classIconUrls&&!this.productType&&!this.classDataSheetUrl},exportparts:Z},t("div",{class:"container",part:"energy-label-container"},!!this.classIconUrls&&t("img",{class:"class-label-icon",part:"energy-label-icon",src:this.classIconUrls[this.iconDirection]}),(this.productType||this.classDataSheetUrl)&&t("div",{class:"info-container"},this.productType&&t("span",{class:"product-type",part:"energy-label-product-type"},this.productType),this.classDataSheetUrl&&t("a",{class:"data-sheet-link",part:"energy-label-data-sheet-link",href:this.classDataSheetUrl,target:"_blank",rel:"noopener noreferrer"},t("slot",{name:"vviinn-energy-label-data-sheet-text"},H.t("energyLabel.dataSheetText"))))))}get el(){return o(this)}};pt.style=":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:contents;line-height:0px}:host(.hidden){display:none}.container{display:flex;flex-direction:row;max-width:100%;gap:var(--spacing-75);justify-content:var(\n --product-card-content-align,\n var(--product-card-content-align-default)\n );align-items:center}.info-container{width:-moz-fit-content;width:fit-content;height:100%;display:flex;justify-content:center;text-align:left;flex-direction:column;font-size:var(--font-size-caption);font-weight:var(--font-weight-400);line-height:var(--line-height-caption);letter-spacing:var(--letter-spacing-caption);font-style:normal}.class-label-icon{display:inline-block;height:32px;width:auto;flex-shrink:0}.product-type,.data-sheet-link{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;overflow-wrap:anywhere;overflow:hidden;text-overflow:ellipsis;text-decoration:none;color:var(--color-text-primary)}.product-type{color:var(--color-text-helper)}.data-sheet-link{display:none;cursor:pointer;text-decoration:none;color:var(--color-text-primary)}";const ht=t=>t&&"values"in t?t.values:t&&"histogram"in t?t.histogram:[];function ft(t,e,i){return function(r){for(var o=Array(i.length+1),s=0;s<i.length;s++)o[s]=i[s];return o[i.length]=r,0===e?t.apply(null,o):ft(t,e-1,o)}}var ut={1:function(t){return[t]},2:function(t){return function(e){return[t,e]}},3:function(t){return function(e){return function(i){return[t,e,i]}}},4:function(t){return function(e){return function(i){return function(r){return[t,e,i,r]}}}},5:function(t){return function(e){return function(i){return function(r){return function(o){return[t,e,i,r,o]}}}}}};function gt(t){return l.call(ut,t)||(ut[t]=ft(c,t-1,[])),ut[t]}const bt=class{constructor(t){e(this,t),this.vviinnFiltersChanged=i(this,"vviinnFiltersChanged",7),this.vviinnFilterTriggered=i(this,"vviinnFilterTriggered",7),this.globalSlotsChanged=i(this,"globalSlotsChanged",7),this.vviinnSelectedFiltersReset=i(this,"vviinnSelectedFiltersReset",7),this.vviinnExtendedFiltersButtonClicked=i(this,"vviinnExtendedFiltersButtonClicked",7),this.getFilters=()=>this.innerFilters.length?this.innerFilters:this.state.dynamicFilters,this.getSelectedPriceInterval=()=>{var t,e;return null!==(e=null===(t=this.requestFilters.find((({column:t})=>"price"===t)))||void 0===t?void 0:t.values[0])&&void 0!==e?e:{}},this.handleSelectedFiltersReset=({detail:t})=>{this.skipFiltersChanges(t.isTriggeredByVpsWidget)||(this.requestFilters=[],this.selectedMoreOptions=[])},this.skipFiltersChanges=t=>t&&!this.showInWidget||!t&&this.showInWidget,this.handleExtendedFiltersButtonClicked=({detail:t})=>{const{isTriggeredByVpsWidget:e}=t;this.skipFiltersChanges(e)||(this.showMore=!0)},this.handleFiltersChanged=({detail:t})=>{const{filters:e,el:i,isTriggeredByVpsWidget:r}=t;i===this.el||this.skipFiltersChanges(r)||(this.requestFilters=e)},this.priceChangeHandler=t=>{const e=this.getFilters().find((t=>"price"===t.column));e&&this.handleSubFilterSelection(t,e)},this.filters=[],this.locale="de-DE",this.mode="button",this.currencySign="€",this.showHeader=!0,this.filtersString="",this.showInWidget=!1,this.widgetElement=void 0,this.innerFilters=[],this.requestFilters=[],this.showMore=!1,this.selectedMoreOptions=[],this.displayedOptionsCount=new Map}replaceSlotsContent(){const t=this.el.querySelectorAll("[slot]");this.globalSlotsChanged.emit({slots:Array.from(t),element:this.el})}componentDidRender(){this.replaceSlotsContent()}async componentWillLoad(){await H.init({lng:this.locale,fallbackLng:"en",resources:Y}),N(this,this.el)}initializeDisplayedOptions(t){this.displayedOptionsCount.has(t)||this.displayedOptionsCount.set(t,8)}showMoreOptions(t,e){const i=this.displayedOptionsCount.get(t)||8,r=Math.min(i+8,e);this.displayedOptionsCount=new Map(this.displayedOptionsCount),this.displayedOptionsCount.set(t,r)}renderModal(e){return t("div",{class:`filters-modal ${this.mode} ${this.showMore?"open":""}`,part:"extended-filters-modal"},t("aside",{class:"filters-modal-wrapper",part:"extended-filters-modal-wrapper"},this.showHeader&&t("div",{class:"filters-modal-header",part:"extended-filters-header"},t("slot",{name:"vviinn-extended-filters-title"},t("span",null,H.t("filters.modal.title"))),t("button",{class:"filters-modal-close",onClick:()=>{this.showMore=!1},part:"extended-filters-modal-close"},t(st,null))),t("div",{class:"filters-modal-main",part:"extended-filters-main"},t("ul",{class:"filters-modal-list",part:"extended-filters-list"},(null!=e?e:[]).map((e=>{var i;const r=e.column,o=ht(e),s=this.requestFilters.find((({column:t})=>t===r)),a=[];return null===(i=null==s?void 0:s.values)||void 0===i||i.forEach((e=>{const i=o.findIndex((t=>t.value.value===e||t.value===e));i>-1&&a.push(t("span",null,o[i].label))})),t("li",{part:"extended-filters-row"},t("div",{class:"filters-modal-main-button-wrapper",part:"extended-filters-row-wrapper"},t("button",{onClick:()=>this.handleMoreOptionsMainClick(e.column),class:"filters-modal-main-button",part:"extended-filters-main-button"},e.label,a.length>0&&t("div",{class:"filters-modal-main-button-added-options",part:"extended-filters-selected-wrapper"},a)),"price"===r&&this.selectedMoreOptions.includes(e.column)?t("vviinn-price-range",{histogram:o.filter((t=>t.value.frequency>0)),priceChangeHandler:this.priceChangeHandler,selectedInterval:this.getSelectedPriceInterval(),currencySign:this.currencySign}):t("ul",{class:"filters-modal-sub-list "+(this.selectedMoreOptions.includes(e.column)?"open":""),part:"extended-filters-sub-list"},this.renderFilterOptions(e,o))))}))),(null==e?void 0:e.length)>0&&t("div",{class:"filters-modal-actions",part:"extended-filters-actions"},"button"===this.mode&&t("button",{class:"filters-modal-apply",onClick:()=>this.showMore=!1,disabled:0===this.requestFilters.length,part:"extended-filters-apply"},t("slot",{name:"vviinn-extended-filters-apply"},H.t("filters.modal.apply"))),t("button",{class:"filters-modal-reset",onClick:()=>this.resetModal(),part:"extended-filters-reset"},t("slot",{name:"vviinn-extended-filters-reset"},H.t("filters.modal.resetFilters")))))))}renderFilterOptions(e,i){const{column:r}=e;this.initializeDisplayedOptions(r);const o=this.displayedOptionsCount.get(r)||8;return t(s,null,i.slice(0,o).map((({value:t,label:i,active:r})=>{const o=this.showActiveOnModalSubButton(this.requestFilters,t);return J(this.handleSubFilterSelection.bind(this),t,i,r,e,o)})),o<i.length&&t("button",{onClick:()=>this.showMoreOptions(r,i.length),class:"filters-more-modal-button",part:"filters-option-button"},t(it,null)))}handleSubFilterSelection(t,e){this.requestFilters=G(t,e,this.requestFilters,this.vviinnFilterTriggered,this.vviinnFiltersChanged,this.el,this.showInWidget)}showActiveOnModalSubButton(t,e){let i=!1;return t.forEach((t=>{t.values.some((t=>t===e||t===e.interval||t===e.value))&&(i=!0)})),i}handleMoreOptionsMainClick(t){this.selectedMoreOptions=this.selectedMoreOptions.includes(t)?this.selectedMoreOptions.filter((e=>e!==t)):[...this.selectedMoreOptions,t]}filtersStringWatcher(){if(""!==this.filtersString)try{this.innerFilters=JSON.parse(this.filtersString)}catch(t){console.error("Invalid filters string",t)}}connectedCallback(){this.state=this.showInWidget?d:p,document.addEventListener("vviinnFiltersChanged",this.handleFiltersChanged),document.addEventListener("vviinnSelectedFiltersReset",this.handleSelectedFiltersReset),document.addEventListener("vviinnExtendedFiltersButtonClicked",this.handleExtendedFiltersButtonClicked),this.filtersStringWatcher()}disconnectedCallback(){document.addEventListener("vviinnFiltersChanged",this.handleFiltersChanged),document.addEventListener("vviinnSelectedFiltersReset",this.handleSelectedFiltersReset),document.removeEventListener("vviinnExtendedFiltersButtonClicked",this.handleExtendedFiltersButtonClicked)}resetModal(){X(this.vviinnFilterTriggered,this.vviinnFiltersChanged,this.el,this.showInWidget),this.selectedMoreOptions=[],this.requestFilters=[],this.showMore=!1}getAsideElement(){return this.el.shadowRoot.querySelector("aside")}getSidebarRectangle(){var t;return null===(t=this.getAsideElement())||void 0===t?void 0:t.getBoundingClientRect()}bodyClickListener(t){if("button"!==this.mode)return;const e=this.getSidebarRectangle();e&&0!==e.width&&0!==e.height&&(K(t,e)||(this.showMore=!1))}render(){const e=this.getFilters();return t(r,{class:{"show-in-widget":this.showInWidget}},D("filters"),(null==e?void 0:e.length)>0&&"button"===this.mode&&t("vviinn-extended-filters-button",null),this.renderModal(e))}get el(){return o(this)}static get watchers(){return{filtersString:["filtersStringWatcher"]}}};bt.style=':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;}: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;padding-bottom:6px}.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{margin-top:var(--spacing-125);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-100);align-items:center;gap:var(--spacing-25);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{display:flex;align-items:center;justify-content:center;gap:var(--spacing-25)}.filters-more-modal-button>span>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-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}}';const vt=class{constructor(t){e(this,t),this.vviinnExtendedFiltersButtonClicked=i(this,"vviinnExtendedFiltersButtonClicked",7),this.handleClick=void 0,this.showInWidget=!1}render(){return t(r,{exportparts:"extended-filters-button"},t("button",{class:"filters-more-button",onClick:()=>{this.vviinnExtendedFiltersButtonClicked.emit({isTriggeredByVpsWidget:this.showInWidget})},part:"extended-filters-button"},t(ot,null)))}};vt.style=':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;}: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;padding-bottom:6px}.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{margin-top:var(--spacing-125);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-100);align-items:center;gap:var(--spacing-25);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{display:flex;align-items:center;justify-content:center;gap:var(--spacing-25)}.filters-more-modal-button>span>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-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}}';const mt=class{constructor(t){e(this,t),this.vviinnFiltersChanged=i(this,"vviinnFiltersChanged",7),this.vviinnFilterTriggered=i(this,"vviinnFilterTriggered",7),this.globalSlotsChanged=i(this,"globalSlotsChanged",7),this.vviinnSelectedFiltersReset=i(this,"vviinnSelectedFiltersReset",7),this.getFilters=()=>this.innerFilters.length?this.innerFilters:this.state.dynamicFilters,this.getSelectedPriceInterval=()=>{var t,e;return null!==(e=null===(t=this.requestFilters.find((({column:t})=>"price"===t)))||void 0===t?void 0:t.values[0])&&void 0!==e?e:{}},this.handleSelectedFiltersReset=({detail:t})=>{this.skipFiltersChanges(t.isTriggeredByVpsWidget)||(this.requestFilters=[],this.selectedFilter=void 0)},this.skipFiltersChanges=t=>t&&!this.showInWidget||!t&&this.showInWidget,this.priceChangeHandler=t=>{this.handleSubFilterSelection(t,this.selectedFilter)},this.handleFiltersChanged=({detail:t})=>{const{filters:e,el:i,isTriggeredByVpsWidget:r}=t;i===this.el||this.skipFiltersChanges(r)||(this.requestFilters=e,this.selectedFilter||(this.selectedFilter=this.getFilters().find((t=>{var i;return(null==t?void 0:t.column)===(null===(i=e[0])||void 0===i?void 0:i.column)}))))},this.filters=[],this.filtersString="",this.showInWidget=!1,this.currencySign="€",this.innerFilters=[],this.selectedFilter=void 0,this.requestFilters=[]}handleMainFilterSelection(t){this.selectedFilter=t}handleSubFilterSelection(t,e){this.requestFilters=G(t,e,this.requestFilters,this.vviinnFilterTriggered,this.vviinnFiltersChanged,this.el,this.showInWidget)}showActiveOnMainButton({column:t}){var e;return this.selectedFilter&&(null===(e=this.selectedFilter)||void 0===e?void 0:e.column)===t?"active":""}filtersStringWatcher(){if(""!==this.filtersString)try{this.innerFilters=JSON.parse(this.filtersString)}catch(t){console.error("Invalid filters string",t)}}connectedCallback(){this.state=this.showInWidget?d:p,document.addEventListener("vviinnFiltersChanged",this.handleFiltersChanged),document.addEventListener("vviinnSelectedFiltersReset",this.handleSelectedFiltersReset),this.filtersStringWatcher()}disconnectedCallback(){document.removeEventListener("vviinnFiltersChanged",this.handleFiltersChanged),document.removeEventListener("vviinnSelectedFiltersReset",this.handleSelectedFiltersReset)}render(){var e;const i=this.getFilters().filter((t=>t.isPrimary)),{column:o}=null!==(e=this.selectedFilter)&&void 0!==e?e:{},s=ht(this.selectedFilter);return t(r,{class:{"show-in-widget":this.showInWidget}},t("div",{class:"main-filters-wrapper",part:"filters-wrapper"},t("ul",{class:"main-filters-list",part:"filters-list"},i.map((e=>t("li",null,t("button",{class:`filters-main-button ${this.showActiveOnMainButton(e)}`,onClick:()=>this.handleMainFilterSelection(e),part:"filters-main-button"},e.label)))))),!!this.selectedFilter&&t("div",{class:"filters-footer",part:"filters-footer"},"price"===o?t("vviinn-price-range",{histogram:s.filter((t=>t.value.frequency>0)),priceChangeHandler:this.priceChangeHandler,selectedInterval:this.getSelectedPriceInterval(),currencySign:this.currencySign}):t("ul",{class:"sub-filters-wrapper",part:"filters-footer-list"},!!s&&s.map((({value:t,label:e,active:i})=>{const r=q(this.requestFilters,t,this.selectedFilter);return J(this.handleSubFilterSelection.bind(this),t,e,i,this.selectedFilter,r)})))))}get el(){return o(this)}static get watchers(){return{filtersString:["filtersStringWatcher"]}}};mt.style=':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;}: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;padding-bottom:6px}.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{margin-top:var(--spacing-125);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-100);align-items:center;gap:var(--spacing-25);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{display:flex;align-items:center;justify-content:center;gap:var(--spacing-25)}.filters-more-modal-button>span>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-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}}';const xt=class{constructor(t){e(this,t),this.histogram=[],this.addStyle=!0,this.priceChangeHandler=void 0,this.selectedInterval=void 0,this.currencySign=void 0,this.minIndex=0,this.maxIndex=void 0,this.scalingFactor=void 0}componentWillLoad(){this.updatingSelectedInterval()}updatingSelectedInterval(){this.maxIndex=this.histogram.length-1;const t=Math.max(...this.histogram.map((({value:t})=>t.frequency)));this.scalingFactor=100/t,this.minIndex=void 0!==this.selectedInterval.start?this.histogram.findIndex((({value:t})=>t.interval.start===this.selectedInterval.start)):0,this.maxIndex=this.selectedInterval.end?this.histogram.findIndex((t=>t.value.interval.end===this.selectedInterval.end)):this.histogram.length-1}controlFromSlider(t){const e=parseInt(t.target.value);this.minIndex=e>=this.maxIndex?this.maxIndex-1:e,t.target.value=String(this.minIndex)}controlToSlider(t){const e=parseInt(t.target.value);this.maxIndex=e<=this.minIndex?this.minIndex+1:e,t.target.value=String(this.maxIndex)}sendBackValue(){var t,e,i,r,o,s;this.priceChangeHandler({interval:{start:null===(i=null===(e=null===(t=this.histogram[this.minIndex])||void 0===t?void 0:t.value)||void 0===e?void 0:e.interval)||void 0===i?void 0:i.start,end:null===(s=null===(o=null===(r=this.histogram[this.maxIndex])||void 0===r?void 0:r.value)||void 0===o?void 0:o.interval)||void 0===s?void 0:s.end}})}calculateBarHeight(t){return t*this.scalingFactor}render(){var e,i,o,s,a,n;const l=this.histogram.length-1;return t(r,{exportparts:$},t("div",{class:"histogram",part:"histogram"},this.histogram.map(((e,i)=>{const r=this.calculateBarHeight(e.value.frequency);return t("div",{class:"histogram-bar "+(i<this.minIndex||i>this.maxIndex?"histogram-bar-inactive":""),style:{height:`${r&&r<3?3:r}%`},part:"histogram-bar"})}))),t("div",{class:"range_container",part:"histogram-range-container"},t("div",{class:"sliders_control",part:"histogram-sliders-control"},t("input",{ref:t=>this.fromSlider=t,id:"fromSlider",type:"range",min:"0",max:l,value:this.minIndex,onInput:t=>{this.controlFromSlider(t)},onChange:()=>this.sendBackValue(),part:"histogram-from-slider"}),t("input",{ref:t=>this.toSlider=t,id:"toSlider",type:"range",min:"0",max:l,value:this.maxIndex,onInput:t=>{this.controlToSlider(t)},onChange:()=>this.sendBackValue(),part:"histogram-to-slider"}))),t("div",{class:"label-wrapper",part:"histogram-label-wrapper"},t("div",{class:"label",part:"histogram-label"},null===(o=null===(i=null===(e=this.histogram[this.minIndex])||void 0===e?void 0:e.value)||void 0===i?void 0:i.interval)||void 0===o?void 0:o.start,t("span",{class:"histogram-currency"},this.currencySign)),t("div",{class:"label",part:"histogram-label"},null===(n=null===(a=null===(s=this.histogram[this.maxIndex])||void 0===s?void 0:s.value)||void 0===a?void 0:a.interval)||void 0===n?void 0:n.end,t("span",{class:"histogram-currency"},this.currencySign))))}get el(){return o(this)}static get watchers(){return{selectedInterval:["updatingSelectedInterval"]}}};xt.style=':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;margin-top:var(--spacing-300);font-family:var(--font-family, var(--font-family-base));--thumb-size:32px}.histogram{height:64px;display:flex;align-items:flex-end;gap:2px;padding:0 12px}.histogram-bar{background:var(--surface-inverse-bg-color, #262626);flex:1;border-radius:2px 2px 0px 0px}.histogram-bar.histogram-bar-inactive{background:var(--surface-bg-color-disabled)}.range_container{display:flex;flex-direction:column;width:100%;margin-top:-2px;transform:translateX(-2px)}.range_container .sliders_control{position:relative;min-height:25px}.range_container .form_control{position:relative;display:flex;justify-content:space-between;font-size:24px;color:#635a5a}.range_container input[type="range"]{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:1px;width:100%;position:absolute;background:var(--color-border-02);pointer-events:none}.range_container input[type="range"]::-webkit-slider-thumb{-webkit-appearance:none;pointer-events:all;width:var(--thumb-size);height:var(--thumb-size);background-color:var(--color-bg-base);box-shadow:unset;border-radius:50%;border:1px solid var(--color-border-03);cursor:pointer}.range_container input[type="range"]::-moz-range-thumb{-webkit-appearance:none;pointer-events:all;width:var(--thumb-size);height:var(--thumb-size);background-color:var(--color-bg-base);box-shadow:unset;border-radius:50%;border:1px solid var(--color-border-02);cursor:pointer}.range_container input[type="range"]::-webkit-slider-thumb:hover{background:#f7f7f7}.range_container #fromSlider{z-index:1;background:transparent}.label-wrapper{display:flex;justify-content:space-between;margin-top:6px}.label-wrapper .label{display:flex;padding:var(--spacing-25) var(--spacing-100);justify-content:center;align-items:center;border-radius:var(--border-radius-100);background:var(--chip-bg-color-primary);color:var(--color-text-inverse);text-align:center;font-size:var(--font-size-label);font-style:normal;font-weight:var(--font-weight-500);line-height:var(--line-height-label);letter-spacing:var(--letter-spacing-label);gap:3px}';class wt{sendImpression(t){var e,i,r;t&&gtag("event","view_item_list",{items:[{id:t.productId,name:t.title,brand:null!==(e=t.brand)&&void 0!==e?e:"",category:null!==(i=t.productType)&&void 0!==i?i:"",list_name:"VI VPR View",price:Math.min(t.price.actual,null!==(r=t.price.sale)&&void 0!==r?r:1/0)}]})}sendClick(t){var e,i,r;gtag("event","select_content",{content_type:"product",items:[{id:t.productId,name:t.title,brand:null!==(e=t.brand)&&void 0!==e?e:"",category:null!==(i=t.productType)&&void 0!==i?i:"",list_name:"VI VPR View",price:Math.min(t.price.actual,null!==(r=t.price.sale)&&void 0!==r?r:1/0)}]})}}class yt{constructor(){ga("require","ec")}convertProduct(t){var e,i,r;return{id:t.productId,name:t.title,brand:null!==(e=t.brand)&&void 0!==e?e:"",category:null!==(i=t.productType)&&void 0!==i?i:"",list:"VI VPR View",price:Math.min(t.price.actual,null!==(r=t.price.sale)&&void 0!==r?r:1/0)}}sendImpression(t){ga("ec:addImpression",this.convertProduct(t))}sendClick(t){var e,i,r;ga("ec:addProduct",{id:t.productId,name:t.title,brand:null!==(e=t.brand)&&void 0!==e?e:"",category:null!==(i=t.productType)&&void 0!==i?i:"",price:Math.min(t.price.actual,null!==(r=t.price.sale)&&void 0!==r?r:1/0)}),ga("ec:setAction","click",{list:"VI VPR View"})}}const Ct=h.getMonoid(f.first()).concat(a.pipe(h.fromNullable(window.gtag),h.map((()=>new wt))),a.pipe(h.fromNullable(window.ga),h.map((()=>new yt)))),kt=/fit\/\d+\//,zt=(t,e)=>a.pipe((t=>a.pipe(t.match(kt),u.fromNullable(t),u.map((()=>t))))(t),u.map((t=>t.replace(kt,`fit/${e}/`))),u.getOrElse((()=>t))),St=(e,i)=>e.deeplink?t("a",{class:e.part,part:e.part,href:e.deeplink},i):i,It=(t,e)=>t?new Intl.NumberFormat(e,{minimumFractionDigits:2,maximumFractionDigits:2}).format(t):null,jt=e=>{const i=e.priceType,r=It(e.price,e.locale),o=e.prefix?t("span",{part:"price-prefix"},e.prefix+" "):null,s=e.currency?t("span",{part:"currency",class:"currency"},e.currency):null;return t("span",{class:"price-amount",part:"price-amount"+(i?"-"+i:"")},o,r,s)},Pt=({currency:e,basePrice:i,priceType:r,locale:o})=>{if(!(null==i?void 0:i.price))return null;const s=It(i.price,o);return t("span",{class:"price-amount price-amount--base",part:"price-amount-base"+(r?"-"+r:"")},s,(null==e?void 0:e.length)>0&&t("span",{part:"currency",class:"currency"},e),"/",(null==i?void 0:i.quantity)>1&&(null==i?void 0:i.quantity),null==i?void 0:i.measure)},Tt=t=>t?"string"==typeof t?JSON.parse(t):t:null,_t=e=>{const i=()=>e.salePrice?[t("span",{class:"price-outdated",part:"price-outdated"},t(jt,{prefix:e.prefix,currency:e.currency,price:e.price,locale:e.locale,priceType:"outdated"}),t(Pt,{currency:e.currency,basePrice:e.basePrice,locale:e.locale,priceType:"outdated"})),t("span",{class:"price-sale",part:"price-sale"},t(jt,{prefix:e.prefix,currency:e.currency,price:e.salePrice,locale:e.locale,priceType:"sale"}),t(Pt,{currency:e.currency,basePrice:e.baseSalePrice,locale:e.locale,priceType:"sale"}))]:t("span",{class:"price-regular",part:"price-regular"},t(jt,{prefix:e.prefix,currency:e.currency,price:e.price,locale:e.locale,priceType:"regular"}),t(Pt,{currency:e.currency,basePrice:e.basePrice,locale:e.locale,priceType:"regular"}));return e.showInContainer?t("div",{class:"price-container",part:"price-container"},i()):i()},Vt=class{constructor(t){e(this,t),this.vviinnProductLoad=i(this,"vviinnProductLoad",7),this.vviinnProductView=i(this,"vviinnProductView",7),this.vviinnProductClick=i(this,"vviinnProductClick",7),this.vviinnAddToBasket=i(this,"vviinnAddToBasket",7),this.vviinnFavorite=i(this,"vviinnFavorite",7),this.vviinnAuxClick=i(this,"vviinnAuxClick",7),this.vviinnCrossSellingClick=i(this,"vviinnCrossSellingClick",7),this.vviinnUpdatingAllCardsStarted=i(this,"vviinnUpdatingAllCardsStarted",7),this.vviinnUpdatingAllCardsFinished=i(this,"vviinnUpdatingAllCardsFinished",7),this.productData=null,this.isShowUpdateButton=()=>this.setMode&&!this.isSourceProduct&&!this.basketButonPressed&&"onTop"!==this.updateButtonLocation,this.isShowBasketButton=()=>!this.isSourceProduct&&(this.addToBasketShow||this.setMode),this.intersectionCallback=t=>{t.length&&t.some((t=>t.isIntersecting))&&(a.pipe(Ct,h.map((t=>t.sendImpression(this.getProduct())))),this.vviinnProductView.emit(this.productData),this.intersectionObserver.disconnect())},this.brand=void 0,this.currency=void 0,this.image=void 0,this.imageRatio=1,this.imageWidth=200,this.locale=void 0,this.price=void 0,this.basePrice=void 0,this.pricePrefix=void 0,this.productTitle=void 0,this.productType=void 0,this.setMode=!1,this.salePrice=void 0,this.baseSalePrice=void 0,this.responsive=!1,this.addToBasketShow=void 0,this.favoriteShow=void 0,this.updateButtonLocation=void 0,this.customLabels="",this.addPriceContainer=!1,this.energyCertifications=void 0,this.productId=void 0,this.campaignTypeId=void 0,this.widgetElementId=void 0,this.buttonElementId=void 0,this.widgetVersion=void 0,this.deeplink=void 0,this.index=0,this.updatingAllCards=void 0,this.defaultAnimationInterval=void 0,this.appliedDiscountPercentage=void 0,this.currentDiscountPercentage=void 0,this.isSourceProduct=!1,this.isResultsWidget=!1,this.energyCertificationsString="",this.isStandalone=!1,this.showFooterArrow=!1,this.isTransitioning=!1,this.basketButonPressed=!1,this.favoriteButonPressed=!1}connectedCallback(){this.productData=this.getProductData(),this.isStandalone&&H.init({lng:this.locale,fallbackLng:"en",resources:Y}),this.energyCertificationsString.length>0&&this.parseEnergyCertificationsString()}componentWillLoad(){N(this,this.el)}componentDidLoad(){this.vviinnProductLoad.emit(this.productData),this.intersectionObserver=new IntersectionObserver(this.intersectionCallback.bind(this.imageElement),{threshold:1}),this.intersectionObserver.observe(this.imageElement),this.addLinksEventListeners()}crossSellingClickListener({detail:t}){const{animationInterval:e}=t;this.isTransitioning=!0,this.basketButonPressed=!1;const i=setTimeout((()=>{this.isTransitioning=!1,clearTimeout(i)}),e)}updatingAllCardsWatcher(){if(!this.updatingAllCards)return;this.vviinnUpdatingAllCardsStarted.emit(),this.isTransitioning=!0,this.basketButonPressed=!1;const t=setTimeout((()=>{this.vviinnUpdatingAllCardsFinished.emit(),this.isTransitioning=!1,clearTimeout(t)}),this.defaultAnimationInterval)}productIdWatcher(){this.productData=this.getProductData()}parseEnergyCertificationsString(){if(""!==this.energyCertificationsString)try{this.energyCertifications=JSON.parse(this.energyCertificationsString)}catch(t){console.error("Invalid filters string",t)}}getWidgetType(){return this.campaignTypeId}getProductData(){var t;return{productId:this.productId,productRank:this.index,productName:this.productTitle,productType:this.productType,widgetType:this.getWidgetType(),campaignTypeId:this.campaignTypeId,campaignTypeName:z[this.campaignTypeId],widgetId:null!==(t=this.buttonElementId)&&void 0!==t?t:this.widgetElementId,widgetVersion:this.widgetVersion}}basketButtonClickHandler(){this.vviinnAddToBasket.emit(Object.assign(Object.assign({},this.productData),{discount:this.currentDiscountPercentage})),this.basketButonPressed=!0}favoriteButtonClickHandler(){this.vviinnFavorite.emit(Object.assign({},this.productData)),this.favoriteButonPressed=!this.favoriteButonPressed}productClickHandler(t){t.preventDefault(),t.stopImmediatePropagation(),this.vviinnProductClick.emit(Object.assign(Object.assign({},this.productData),{clickEvent:t})),a.pipe(Ct,h.match((()=>null),(t=>t.sendClick(this.getProduct()))))}addLinksEventListeners(){this.el.shadowRoot.querySelectorAll("a").forEach((t=>{t.addEventListener("click",this.productClickHandler.bind(this)),t.addEventListener("auxclick",(()=>{this.vviinnAuxClick.emit(Object.assign({},this.productData))}))}))}getProduct(){return d.results.find((t=>t.productId===this.productId))}renderImage(){const e={width:this.imageWidth,height:this.imageWidth*this.imageRatio,src:this.image,title:this.productTitle,lazy:!1,ref:t=>{this.imageElement=t},isSource:this.isSourceProduct};return this.responsive?((e,i=(()=>{}))=>t("picture",{part:"image-picture"},t("img",{loading:e.lazy?"lazy":"eager",part:"image",class:"image responsive",src:zt(e.src,e.width),alt:e.title,ref:e.ref,onLoad:i})))(e):((e,i=(()=>{}))=>t("picture",{part:"image-picture"},t("img",{loading:e.lazy?"lazy":"eager",part:"image",class:"image",width:e.width,height:e.height,src:zt(e.src,e.width),alt:e.title,ref:e.ref,onLoad:i}),e.isSource&&t(T,null)))(e)}render(){var e,i,o,a;return t(r,{part:"product-card",class:{animated:this.isTransitioning},exportparts:U},t("div",{class:"image-container",part:"image-container"},t(St,{deeplink:this.deeplink,part:"image-link"},this.renderImage()),t("div",{class:"product-card-actions-top",part:"product-card-actions-top"},t("button",{class:{hidden:!this.favoriteShow},part:"favorite-button",onClick:this.favoriteButtonClickHandler.bind(this)},t("div",{key:"favorite-not-pressed",class:{hidden:this.favoriteButonPressed}},t("slot",{name:"vviinn-favorite-icon"},t(at,{width:14,height:14}))),t("div",{key:"favorite-pressed",class:{hidden:!this.favoriteButonPressed}},t("slot",{name:"vviinn-favorite-icon-pressed"},t(nt,{width:14,height:14})))),t("button",{class:{"update-button":!0,hidden:!this.isShowUpdateButton()},part:"update-button-item",onClick:()=>{this.vviinnCrossSellingClick.emit({animationInterval:(800,1400,Math.floor(601*Math.random())+800),productData:this.productData})}},t("div",null,t("slot",{name:"vviinn-update-button-icon"},t(rt,{width:14,height:14}))))),t("div",{class:"product-card-actions",part:"product-card-actions"},t("slot",{name:"vviinn-product-card-actions"}))),t("div",{class:"content-container",part:"content-container"},this.isTransitioning?t(s,null,t("vviinn-skeleton",{height:40}),t("vviinn-skeleton",{height:20,halfWidth:!0})):t(s,null,t(St,{deeplink:this.deeplink,part:"deeplink"},t("span",{class:"title",part:"title"},this.productTitle)),(null===(e=this.brand)||void 0===e?void 0:e.length)>0&&t("span",{class:"brand",part:"brand"},this.brand),(null===(i=this.productType)||void 0===i?void 0:i.length)>0&&t("span",{class:"product-type",part:"product-type"},this.productType),(null!==(o=null==this?void 0:this.energyCertifications)&&void 0!==o?o:[]).map((e=>t("vviinn-energy-label",{classIconUrls:null==e?void 0:e.classIconUrls,classDataSheetUrl:null==e?void 0:e.classDataSheetUrl,productType:null==e?void 0:e.productType}))),t(_t,{prefix:this.pricePrefix,currency:this.currency,price:this.price,basePrice:Tt(this.basePrice),salePrice:this.salePrice,baseSalePrice:Tt(this.baseSalePrice),locale:this.locale,showInContainer:this.addPriceContainer}),this.setMode&&!this.appliedDiscountPercentage&&this.currentDiscountPercentage&&t("div",{class:"discount-label",part:"discount-label"},`-${this.currentDiscountPercentage}%`),(a=this.customLabels.split(","),t(s,null,a.map(((e,i)=>((e,i)=>e?t("span",{part:`custom-label-${i}`,class:"custom-label"},t("slot",{name:`vviinn-custom-label-${i}`},e)):null)(e,i)))))),t("vviinn-skeleton",{height:40,class:{hidden:!this.isTransitioning}})),t("div",{class:{"basket-button-container":!0,hidden:!this.isShowBasketButton()},part:"basket-button-container"},t("button",{class:{"basket-button":!0,hidden:this.isTransitioning,pressed:this.basketButonPressed},part:"basket-button",onClick:this.basketButtonClickHandler.bind(this)},t("div",{class:{"basket-button-content":!0,hidden:this.basketButonPressed},key:"not-pressed"},t("span",{class:"basket-button-icon-container"},t("slot",{name:"vviinn-basket-button-icon"},t(Q,null))),t("span",null,this.setMode?t("slot",{name:"vviinn-basket-button-text",key:"button-text-set"},H.t("setMode.basketButtonText")):t("slot",{name:"vviinn-basket-button-text",key:"button-text-default"},H.t("basketButtonText")))),t("div",{key:"pressed",class:{"basket-button-content":!0,hidden:!this.basketButonPressed}},t("span",{class:"basket-button-icon-container"},t("slot",{name:"vviinn-basket-button-icon-pressed"},t(tt,null))),t("span",null,t("span",{class:"discount-percentage",part:"discount-percentage",hidden:!(this.setMode&&this.appliedDiscountPercentage)},this.appliedDiscountPercentage,"%"),t("slot",{name:"vviinn-basket-button-text-pressed"},H.t(this.setMode?"setMode.basketButtonPressedText":"basketButtonPressedText")))))),this.showFooterArrow&&t("div",{class:"footer-arrow"}))}get el(){return o(this)}static get watchers(){return{updatingAllCards:["updatingAllCardsWatcher"],productId:["productIdWatcher"]}}};Vt.style=":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:-34.5px;left:50%;transform:translate(-50%, 0) rotate(90deg);width:0;height:0;border-top:22.5px 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:21.5px solid transparent;border-bottom:21px solid transparent;border-right:21.5px solid #ffffff;position:absolute;top:-21px;left:1px}.hidden{display:none !important}";const Lt=class{constructor(t){e(this,t),this.height=void 0,this.halfWidth=!1}render(){return t(r,null,t("div",{class:{"vviinn-skeleton":!0},style:{height:`${this.height.toString()}px`,width:this.halfWidth?"50%":"100%"}}))}get el(){return o(this)}};function Mt(t){return"function"==typeof t}function Rt(t){const e=t((t=>{Error.call(t),t.stack=(new Error).stack}));return e.prototype=Object.create(Error.prototype),e.prototype.constructor=e,e}Lt.style=":host{display:block;width:100%;height:100%;line-height:0}.vviinn-skeleton{display:inline-block;animation:pulse 1.2s infinite}@keyframes pulse{0%{background-color:rgb(244, 244, 244)}50%{background-color:rgb(232, 232, 232)}100%{background-color:rgba(244, 244, 244)}}";const Ot=Rt((t=>function(e){t(this),this.message=e?`${e.length} errors occurred during unsubscription:\n${e.map(((t,e)=>`${e+1}) ${t.toString()}`)).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=e}));function At(t,e){if(t){const i=t.indexOf(e);0<=i&&t.splice(i,1)}}class Et{constructor(t){this.initialTeardown=t,this.closed=!1,this._parentage=null,this._finalizers=null}unsubscribe(){let t;if(!this.closed){this.closed=!0;const{_parentage:e}=this;if(e)if(this._parentage=null,Array.isArray(e))for(const t of e)t.remove(this);else e.remove(this);const{initialTeardown:i}=this;if(Mt(i))try{i()}catch(e){t=e instanceof Ot?e.errors:[e]}const{_finalizers:r}=this;if(r){this._finalizers=null;for(const e of r)try{Ft(e)}catch(e){t=null!=t?t:[],e instanceof Ot?t=[...t,...e.errors]:t.push(e)}}if(t)throw new Ot(t)}}add(t){var e;if(t&&t!==this)if(this.closed)Ft(t);else{if(t instanceof Et){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._finalizers=null!==(e=this._finalizers)&&void 0!==e?e:[]).push(t)}}_hasParent(t){const{_parentage:e}=this;return e===t||Array.isArray(e)&&e.includes(t)}_addParent(t){const{_parentage:e}=this;this._parentage=Array.isArray(e)?(e.push(t),e):e?[e,t]:t}_removeParent(t){const{_parentage:e}=this;e===t?this._parentage=null:Array.isArray(e)&&At(e,t)}remove(t){const{_finalizers:e}=this;e&&At(e,t),t instanceof Et&&t._removeParent(this)}}Et.EMPTY=(()=>{const t=new Et;return t.closed=!0,t})();const Bt=Et.EMPTY;function Wt(t){return t instanceof Et||t&&"closed"in t&&Mt(t.remove)&&Mt(t.add)&&Mt(t.unsubscribe)}function Ft(t){Mt(t)?t():t.unsubscribe()}const Ht={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1},Nt={setTimeout(t,e,...i){const{delegate:r}=Nt;return(null==r?void 0:r.setTimeout)?r.setTimeout(t,e,...i):setTimeout(t,e,...i)},clearTimeout(t){const{delegate:e}=Nt;return((null==e?void 0:e.clearTimeout)||clearTimeout)(t)},delegate:void 0};function Dt(){}const Zt=$t("C",void 0,void 0);function $t(t,e,i){return{kind:t,value:e,error:i}}function Ut(t){t()}class Jt extends Et{constructor(t){super(),this.isStopped=!1,t?(this.destination=t,Wt(t)&&t.add(this)):this.destination=te}static create(t,e,i){return new Yt(t,e,i)}next(t){this.isStopped?Qt(function(t){return $t("N",t,void 0)}(t),this):this._next(t)}error(t){this.isStopped?Qt($t("E",void 0,t),this):(this.isStopped=!0,this._error(t))}complete(){this.isStopped?Qt(Zt,this):(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe(),this.destination=null)}_next(t){this.destination.next(t)}_error(t){try{this.destination.error(t)}finally{this.unsubscribe()}}_complete(){try{this.destination.complete()}finally{this.unsubscribe()}}}const Gt=Function.prototype.bind;function Xt(t,e){return Gt.call(t,e)}class qt{constructor(t){this.partialObserver=t}next(t){const{partialObserver:e}=this;if(e.next)try{e.next(t)}catch(t){Kt(t)}}error(t){const{partialObserver:e}=this;if(e.error)try{e.error(t)}catch(t){Kt(t)}else Kt(t)}complete(){const{partialObserver:t}=this;if(t.complete)try{t.complete()}catch(t){Kt(t)}}}class Yt extends Jt{constructor(t,e,i){let r;if(super(),Mt(t)||!t)r={next:null!=t?t:void 0,error:null!=e?e:void 0,complete:null!=i?i:void 0};else{let e;this&&Ht.useDeprecatedNextContext?(e=Object.create(t),e.unsubscribe=()=>this.unsubscribe(),r={next:t.next&&Xt(t.next,e),error:t.error&&Xt(t.error,e),complete:t.complete&&Xt(t.complete,e)}):r=t}this.destination=new qt(r)}}function Kt(t){var e;e=t,Nt.setTimeout((()=>{const{onUnhandledError:t}=Ht;if(!t)throw e;t(e)}))}function Qt(t,e){const{onStoppedNotification:i}=Ht;i&&Nt.setTimeout((()=>i(t,e)))}const te={closed:!0,next:Dt,error:function(t){throw t},complete:Dt},ee="function"==typeof Symbol&&Symbol.observable||"@@observable";function ie(t){return t}class re{constructor(t){t&&(this._subscribe=t)}lift(t){const e=new re;return e.source=this,e.operator=t,e}subscribe(t,e,i){const r=(o=t)&&o instanceof Jt||function(t){return t&&Mt(t.next)&&Mt(t.error)&&Mt(t.complete)}(o)&&Wt(o)?t:new Yt(t,e,i);var o;return Ut((()=>{const{operator:t,source:e}=this;r.add(t?t.call(r,e):e?this._subscribe(r):this._trySubscribe(r))})),r}_trySubscribe(t){try{return this._subscribe(t)}catch(e){t.error(e)}}forEach(t,e){return new(e=oe(e))(((e,i)=>{const r=new Yt({next:e=>{try{t(e)}catch(t){i(t),r.unsubscribe()}},error:i,complete:e});this.subscribe(r)}))}_subscribe(t){var e;return null===(e=this.source)||void 0===e?void 0:e.subscribe(t)}[ee](){return this}pipe(...t){return(0===(e=t).length?ie:1===e.length?e[0]:function(t){return e.reduce(((t,e)=>e(t)),t)})(this);var e}toPromise(t){return new(t=oe(t))(((t,e)=>{let i;this.subscribe((t=>i=t),(t=>e(t)),(()=>t(i)))}))}}function oe(t){var e;return null!==(e=null!=t?t:Ht.Promise)&&void 0!==e?e:Promise}re.create=t=>new re(t);const se=Rt((t=>function(){t(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"}));class ae extends re{constructor(){super(),this.closed=!1,this.currentObservers=null,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(t){const e=new ne(this,this);return e.operator=t,e}_throwIfClosed(){if(this.closed)throw new se}next(t){Ut((()=>{if(this._throwIfClosed(),!this.isStopped){this.currentObservers||(this.currentObservers=Array.from(this.observers));for(const e of this.currentObservers)e.next(t)}}))}error(t){Ut((()=>{if(this._throwIfClosed(),!this.isStopped){this.hasError=this.isStopped=!0,this.thrownError=t;const{observers:e}=this;for(;e.length;)e.shift().error(t)}}))}complete(){Ut((()=>{if(this._throwIfClosed(),!this.isStopped){this.isStopped=!0;const{observers:t}=this;for(;t.length;)t.shift().complete()}}))}unsubscribe(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null}get observed(){var t;return(null===(t=this.observers)||void 0===t?void 0:t.length)>0}_trySubscribe(t){return this._throwIfClosed(),super._trySubscribe(t)}_subscribe(t){return this._throwIfClosed(),this._checkFinalizedStatuses(t),this._innerSubscribe(t)}_innerSubscribe(t){const{hasError:e,isStopped:i,observers:r}=this;return e||i?Bt:(this.currentObservers=null,r.push(t),new Et((()=>{this.currentObservers=null,At(r,t)})))}_checkFinalizedStatuses(t){const{hasError:e,thrownError:i,isStopped:r}=this;e?t.error(i):r&&t.complete()}asObservable(){const t=new re;return t.source=this,t}}ae.create=(t,e)=>new ne(t,e);class ne extends ae{constructor(t,e){super(),this.destination=t,this.source=e}next(t){var e,i;null===(i=null===(e=this.destination)||void 0===e?void 0:e.next)||void 0===i||i.call(e,t)}error(t){var e,i;null===(i=null===(e=this.destination)||void 0===e?void 0:e.error)||void 0===i||i.call(e,t)}complete(){var t,e;null===(e=null===(t=this.destination)||void 0===t?void 0:t.complete)||void 0===e||e.call(t)}_subscribe(t){var e,i;return null!==(i=null===(e=this.source)||void 0===e?void 0:e.subscribe(t))&&void 0!==i?i:Bt}}const le=a.flow((t=>`Bearer ${t}`),(t=>new Headers({Authorization:t,"Content-Type":"application/json"})),(t=>({headers:t}))),ce=(de=y,function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];for(var i=t.length,r=gt(i),o=de.map(t[0],r),s=1;s<i;s++)o=de.ap(o,t[s]);return o});var de;const pe=(t,e={})=>g(ce(x(),w),m,b(v(t,e))),he=t=>e=>pe("similar-products",Object.assign(Object.assign({},e),{body:JSON.stringify(t)})),fe=t=>e=>pe("cross-selling",Object.assign(Object.assign({},e),{body:JSON.stringify(t)}));var ue=function(t,e){var i={};for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&e.indexOf(r)<0&&(i[r]=t[r]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(r=Object.getOwnPropertySymbols(t);o<r.length;o++)e.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(t,r[o])&&(i[r[o]]=t[r[o]])}return i};const ge=class{constructor(t){e(this,t),this.vviinnWidgetLoad=i(this,"vviinnWidgetLoad",7),this.vviinnProductLoad=i(this,"vviinnProductLoad",7),this.vviinnProductView=i(this,"vviinnProductView",7),this.vviinnProductClick=i(this,"vviinnProductClick",7),this.vviinnResultLoad=i(this,"vviinnResultLoad",7),this.vviinnResultView=i(this,"vviinnResultView",7),this.vviinnNoResult=i(this,"vviinnNoResult",7),this.vviinnAddToBasket=i(this,"vviinnAddToBasket",7),this.vviinnFiltersChanged=i(this,"vviinnFiltersChanged",7),this.globalSlotsChanged=i(this,"globalSlotsChanged",7),this.vviinnRecommendationsLoaded=i(this,"vviinnRecommendationsLoaded",7),this.vviinnWidgetOpen=i(this,"vviinnWidgetOpen",7),this.vviinnWidgetClose=i(this,"vviinnWidgetClose",7),this.sourceProductReceived=i(this,"sourceProductReceived",7),this.productImageLoadedSubject=new ae,this.resultViewed=!1,this.requestDynamicFilters=[],this.setTrackingDeactivated=t=>{"rejected"===t.status&&(this.trackingDeactivated=!0)},this.token=void 0,this.productId=void 0,this.mode="continuity",this.campaigns="",this.excluded="",this.campaignType="set"===this.mode?"VCS":"VPR",this.locale="de-DE",this.color="",this.imageWidth=300,this.imageRatio=1,this.setItemsAmount=4,this.cssUrl=null,this.currencySign="€",this.pricePrefix="",this.noResultText="",this.noResultShow=!0,this.gridArrowsDynamic=!1,this.productDetailsNewTab=!1,this.productDetailsRedirect=!0,this.addToBasketShow=!1,this.showFilters=!1,this.showExtendedFilters=!1,this.setModeDiscounts="set"===this.mode?"5, 10, 15":"",this.updateButtonLocation="topAndItem",this.addPriceContainer=!1,this.favoriteShow=!1,this.blockTitle="Recommended products",this.showScroll=!0,this.apiPath="https://api.vviinn.com",this.useCarousel=!0,this.showingInButton=!1,this.buttonElementId=void 0,this.closed=void 0,this.opened=void 0,this.recommendations=[],this.dynamicFilters=[],this.sourceProduct=null,this.recommendationsLoading=!1,this.trackingDeactivated=!1,this.hasErrorOnLoad=!1,this.updatingAllCards=!1,this.updatedCardsAmount=0,this.setModeDiscountsArray=[]}getBasicEventData(){return{widgetType:"VPR",campaignTypeId:this.campaignType,campaignTypeName:z[this.campaignType],widgetId:this.id,widgetVersion:j}}handleOpenLink(t,e){if(this.productDetailsRedirect)if(this.productDetailsNewTab||e.ctrlKey||e.metaKey){let e=window.open();e?e.location.href=t:window.location.href=t}else window.location.href=t}findProductById(t){return this.recommendations.find((e=>e.productId===t))}replaceSlotsContent(){const t=this.el.querySelectorAll("[slot]");this.globalSlotsChanged.emit({slots:Array.from(t),element:this.el})}handleProductIdChange(){this.getRecommendations()}handleCampaignTypeChange(){this.getRecommendations()}handleCampaignsChange(){this.getRecommendations()}handleApiPathChange(t){C.apiPath=t,this.getRecommendations()}trackWidgetOpen(){this.opened&&(this.vviinnWidgetOpen.emit(this.getBasicEventData()),this.trackWidgetEvent("open"))}trackWidgetClose(){this.closed&&(this.vviinnWidgetClose.emit(this.getBasicEventData()),this.trackWidgetEvent("close"))}componentDidRender(){this.showingInButton&&this.closed||this.replaceSlotsContent()}connectedCallback(){var t;C.apiPath=this.apiPath,C.pricePrefix=this.pricePrefix,C.currencySign=this.currencySign,C.locale=this.locale,this.id=null!==(t=this.buttonElementId)&&void 0!==t?t:this.el.id,this.uiSessionId=_(),this.trackingApi=V(this.apiPath,this.token),this.getRecommendations(),this.vviinnWidgetLoad.emit(this.getBasicEventData()),this.trackWidgetEvent("load"),this.isSetMode="set"===this.mode,this.isGridMode="grid"===this.mode,this.isSetMode&&this.setModeDiscounts.length&&(this.setModeDiscountsArray=this.setModeDiscounts.split(",").map((t=>parseInt(t.trim()))).filter((t=>!isNaN(t))))}async componentWillLoad(){await H.init({lng:this.locale,fallbackLng:"en",resources:Y}),N(this,this.el)}trackProductLoad({detail:t}){this.productImageLoadedSubject.next(t.productId);const e=this.getProductTrackEvent(t,"load");e&&this.trackingApi.trackEvent(e).then(this.setTrackingDeactivated)}trackProductView({detail:t}){this.resultViewed||(this.resultViewed=!0,this.vviinnResultView.emit(this.getBasicEventData()),this.trackResultEvent("view"));const e=this.getProductTrackEvent(t,"view");e&&this.trackingApi.trackEvent(e).then(this.setTrackingDeactivated)}async trackProductClick({detail:t}){const{productId:e,clickEvent:i}=t,r=this.findProductById(e);if(!r||!r.deeplink)return;const o=this.getProductTrackEvent(t,"click");this.trackingDeactivated?this.handleOpenLink(r.deeplink,i):await this.trackingApi.trackEvent(o).then(this.setTrackingDeactivated).finally((()=>{this.handleOpenLink(r.deeplink,i)}))}async trackAuxClick({detail:t}){const{productId:e}=t,i=this.findProductById(e);if(!i||!i.deeplink)return;const r=this.getProductTrackEvent(t,"click");this.trackingDeactivated||await this.trackingApi.trackEvent(r).then(this.setTrackingDeactivated)}async trackAddToBasket({detail:t}){const{productRank:e,productId:i}=t,r=ue(t,["productRank","productId","campaignTypeId","widgetType"]);let o;const s=Object.assign({session_id:this.uiSessionId,rank:e,product:i},r);"VCS"===this.campaignType?o=L(s):"VPR"===this.campaignType&&(o=M(s)),this.trackingApi.trackEvent(o).then(this.setTrackingDeactivated)}updatingAllCardsFinishedListener(){this.updatingAllCards&&(this.updatingAllCards=!1)}async filtersChanged({detail:t}){this.requestDynamicFilters=t.filters,this.getRecommendations()}trackWidgetEvent(t){if(this.trackingDeactivated)return;const e=this.getBasicEventData(),i=ue(e,["campaignTypeId","widgetType"]);let r;const o=Object.assign({action:t,session_id:this.uiSessionId},i);"VCS"===this.campaignType?r=R(o):"VPR"===this.campaignType&&(r=O(o)),this.trackingApi.trackEvent(r).then(this.setTrackingDeactivated)}trackResultEvent(t){if(this.trackingDeactivated)return;const e=this.getBasicEventData(),i=ue(e,["campaignTypeId","widgetType"]);let r;const o=Object.assign({session_id:this.uiSessionId},i);"VCS"===this.campaignType?r=A(t)(o):"VPR"===this.campaignType&&(r=E(t)(o)),this.trackingApi.trackEvent(r).then(this.setTrackingDeactivated)}getProductTrackEvent(t,e){if(this.trackingDeactivated)return null;const{productRank:i,productId:r,campaignTypeId:o}=t,s=ue(t,["productRank","productId","campaignTypeId","widgetType","clickEvent"]);let a;const n=Object.assign({session_id:this.uiSessionId,rank:i,product:r},s);return"VCS"===o?a=B(e)(n):"VPR"===o&&(a=W(e)(n)),a}async getRecommendations(){if(void 0===this.productId||void 0===this.token)return;this.recommendationsLoading=!0;const t=this.campaignType.length>0?this.campaignType:"VPR",e=le(this.token),i=F({productId:this.productId,color:this.color,excluded:this.excluded,campaigns:this.campaigns,dynamicFilters:this.requestDynamicFilters}),r=a.pipe(k.of((t=>a.pipe(S(t),I((()=>he),(()=>fe))))(t)),k.ap(k.of(i)),k.ap(k.of(e)),k.flatten),o=await r();a.pipe(o,u.fold((t=>{this.handleError(t),this.vviinnNoResult.emit(this.getBasicEventData()),this.vviinnRecommendationsLoaded.emit(),this.recommendationsLoading=!1}),(t=>{this.handleRecommendationsSuccess(t),this.recommendationsLoading=!1})))}handleError(t){this.hasErrorOnLoad=!0}handleRecommendationsSuccess({data:t,interactions:e}){this.vviinnResultLoad.emit(this.getBasicEventData()),this.trackResultEvent("load"),this.dynamicFilters=e.dynamicFilters;const{products:i,sourceProduct:r}=t;this.recommendations=i,this.sourceProduct=r,this.sourceProductReceived.emit(r),this.productIds=this.recommendations.map((t=>t.productId)),this.productImageLoadedSubject.subscribe((t=>{this.productIds=this.productIds.filter((e=>e!==t)),this.isSetMode||0!==this.productIds.length||this.vviinnRecommendationsLoaded.emit(),this.isSetMode&&this.productIds.length===this.recommendations.length-this.setItemsAmount&&this.vviinnRecommendationsLoaded.emit()}))}isExternalCSS(){return this.cssUrl&&this.cssUrl.length>0}renderExternalCSS(){return this.isExternalCSS()?t("link",{href:this.cssUrl,rel:"stylesheet"}):""}render(){return 0===this.recommendations.length&&!1===this.noResultShow?null:t(r,{class:{loaded:!0,empty:0==this.recommendations.length,[this.mode]:!0},"aria-hidden":"false"},t(s,null,this.renderExternalCSS(),D("discovery"),t("style",null,C.fallbackStyles),(this.isSetMode||this.blockTitle.length>0)&&t("div",{class:"widget-header"},t("div",null,t("h2",{part:"recommendations-title"},t("slot",{name:"vviinn-recommendations-title"},this.isSetMode?H.t("setMode.widgetTitle"):this.blockTitle)),this.isSetMode&&t("h3",{part:"recommendations-subtitle"},t("slot",{name:"vviinn-recommendations-subtitle"},H.t("setMode.widgetSubtitle")))),this.isSetMode&&"onItem"!==this.updateButtonLocation?t("button",{class:"update-button",part:"update-button-top",onClick:()=>this.updatingAllCards=!0},t("slot",{name:"vviinn-update-button-icon"},t(rt,null)),t("slot",{name:"vviinn-update-button-text"},t("span",null,H.t("setMode.updateButtonText")))):null),(this.showFilters||this.showExtendedFilters)&&t("div",{class:"filters-header "},this.showFilters&&t("vviinn-filters",{filters:this.dynamicFilters}),this.showExtendedFilters&&t("vviinn-extended-filters",{filters:this.dynamicFilters,locale:this.locale})),this.recommendations.length>0&&(this.useCarousel?this.renderCarousel():this.renderResults()),(0===this.recommendations.length||this.recommendations.length<this.setItemsAmount&&this.isSetMode||this.hasErrorOnLoad)&&!this.recommendationsLoading&&t("p",{class:"no-result-text"},this.noResultText.length?this.noResultText:H.t("noResultText"))))}renderRecommendation(e,i){var r,o;return t("vviinn-product-card",{productId:e.productId,productTitle:e.title,productType:e.productType,deeplink:e.deeplink,image:e.image.thumbnail,brand:e.brand,imageWidth:this.imageWidth,imageRatio:this.imageRatio,price:e.price.actual,salePrice:e.price.sale,basePrice:null===(r=e.basePrice)||void 0===r?void 0:r.actual,baseSalePrice:null===(o=e.basePrice)||void 0===o?void 0:o.sale,energyCertifications:e.energyCertifications,addPriceContainer:this.addPriceContainer,responsive:this.isGridMode,addToBasketShow:this.addToBasketShow,campaignTypeId:this.campaignType,index:i,widgetElementId:this.id,widgetVersion:j,currency:this.currencySign,pricePrefix:this.pricePrefix,setMode:this.isSetMode,locale:this.locale,customLabels:P(e),favoriteShow:this.favoriteShow})}renderResults(){return t("div",{class:`recommendations-results recommendations-${this.mode}`,part:"recommendations-results"},this.recommendations.map(((t,e)=>this.renderRecommendation(t,e))))}renderCarousel(){return t("vviinn-carousel",{mode:this.mode,campaignTypeId:this.campaignType,imageWidth:this.imageWidth,showScroll:this.showScroll,recommendations:this.recommendations,sourceProduct:this.sourceProduct,widgetElementId:this.id,widgetVersion:j,gridArrowsDynamic:this.gridArrowsDynamic,addToBasketShow:this.addToBasketShow,addPriceContainer:this.addPriceContainer,updatingAllCards:this.updatingAllCards,updateButtonLocation:this.updateButtonLocation,replaceSlotsContent:this.replaceSlotsContent.bind(this),setModeDiscountsArray:this.setModeDiscountsArray,currencySign:this.currencySign,pricePrefix:this.pricePrefix,locale:this.locale,imageRatio:this.imageRatio,favoriteShow:this.favoriteShow,setItemsAmount:this.setItemsAmount})}get el(){return o(this)}static get watchers(){return{productId:["handleProductIdChange"],campaignType:["handleCampaignTypeChange"],campaigns:["handleCampaignsChange"],apiPath:["handleApiPathChange"],opened:["trackWidgetOpen"],closed:["trackWidgetClose"]}}};ge.style=":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:grid;grid-gap:var(--spacing-200);width:100%}:host(:not(.loaded)){position:absolute;visibility:hidden}:host(.set){grid-gap:var(--spacing-300)}:host(.set) vviinn-carousel{overflow-x:auto;scrollbar-width:thin}:host(.set) vviinn-product-card::part(image){width:var(--vviinn-set-mode-image-width, 100%);height:auto;min-width:var(--image-set-mode-min-size);min-height:var(--image-set-mode-min-size)}:host(.set) vviinn-product-card.product-card--source::part(image){width:100%;height:auto}:host(.grid) h2{justify-content:center}.filters-header{display:flex;justify-content:space-between;gap:14px}.filters-header>vviinn-extended-filters{width:44px;height:44px}@media (max-width: 768px){.filters-header>vviinn-filters{flex:1;width:100px}}.widget-header{display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;align-items:center}.widget-header h3{margin-top:8px;margin-bottom:0;font-size:14px;font-weight:400;line-height:20px}.widget-header h2,.widget-header h3{margin:0;font-family:var(--font-family, var(--font-family-base))}.widget-header h2{font-weight:var(--font-weight-600);line-height:var(--line-height-title)}.widget-header h3{line-height:var(--line-height-body);margin-top:var(--spacing-100)}.update-button{display:flex;align-items:center;justify-content:center;font-family:var(--font-family, var(--font-family-base));color:#525252;gap:8px;padding:8px 10px;background:rgb(244, 244, 244);border:none;cursor:pointer}.update-button:hover{background:rgb(234, 234, 234)}.update-button svg{color:#6f6f6f}.results{display:grid;grid-gap:1rem}.no-result-text{font-family:var(--font-family, var(--font-family-base));font-size:20px}.visually-hidden{position:absolute;top:0;left:0;z-index:-1;height:0;width:0}.recommendations-results.recommendations-grid{width:100%;align-content:center;align-items:start;box-sizing:border-box;display:grid;grid-gap:32px 16px;grid-template-columns:repeat(\n auto-fill,\n minmax(\n var(--product-card-width, var(--product-card-results-min-width)),\n 1fr\n )\n );padding-bottom:var(--spacing-300)}@media (max-width: 768px){.recommendations-results.recommendations-grid{width:unset;grid-gap:24px 16px;justify-content:center;grid-template-columns:repeat(auto-fill, minmax(155px, 1fr))}}";export{dt as vviinn_carousel,pt as vviinn_energy_label,bt as vviinn_extended_filters,vt as vviinn_extended_filters_button,mt as vviinn_filters,xt as vviinn_price_range,Vt as vviinn_product_card,Lt as vviinn_skeleton,ge as vviinn_vpr_widget}
@@ -1,4 +1,4 @@
1
- import{h as t,r as i,c as e,H as o,g as r,F as s}from"./p-c3953cbf.js";import{s as n,k as a,_ as h,l as c,E as l,j as d,i as p,n as f,e as u,c as g,O as v,o as b,q as m,r as x,u as w,v as y,w as k,x as C,y as M,z as j}from"./p-f601d5c0.js";import{s as z,p as S,v as I,S as O}from"./p-43e147d6.js";import{P as T,l as E,c as W,v as B,m as R,n as _,g as N,o as P,p as V}from"./p-380b7211.js";import{f as H}from"./p-f2d58f7d.js";import{c as L,v as D}from"./p-8a0f67c6.js";import{i as A}from"./p-2e76a5c3.js";import{r as F}from"./p-645df5cc.js";import{a as U,m as X,f as $,b as Y,s as Z,c as q,d as K}from"./p-1f0dc75e.js";import{f as Q,g as G,D as J}from"./p-92c02a9f.js";import{W as tt}from"./p-b2aa3af6.js";const it=()=>t("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none"},t("path",{d:"M12 17.5C13.25 17.5 14.3125 17.0625 15.1875 16.1875C16.0625 15.3125 16.5 14.25 16.5 13C16.5 11.75 16.0625 10.6875 15.1875 9.8125C14.3125 8.9375 13.25 8.5 12 8.5C10.75 8.5 9.6875 8.9375 8.8125 9.8125C7.9375 10.6875 7.5 11.75 7.5 13C7.5 14.25 7.9375 15.3125 8.8125 16.1875C9.6875 17.0625 10.75 17.5 12 17.5ZM12 15.5C11.3 15.5 10.7083 15.2583 10.225 14.775C9.74167 14.2917 9.5 13.7 9.5 13C9.5 12.3 9.74167 11.7083 10.225 11.225C10.7083 10.7417 11.3 10.5 12 10.5C12.7 10.5 13.2917 10.7417 13.775 11.225C14.2583 11.7083 14.5 12.3 14.5 13C14.5 13.7 14.2583 14.2917 13.775 14.775C13.2917 15.2583 12.7 15.5 12 15.5ZM4 21C3.45 21 2.97917 20.8042 2.5875 20.4125C2.19583 20.0208 2 19.55 2 19V7C2 6.45 2.19583 5.97917 2.5875 5.5875C2.97917 5.19583 3.45 5 4 5H7.15L8.4 3.65C8.58333 3.45 8.80417 3.29167 9.0625 3.175C9.32083 3.05833 9.59167 3 9.875 3H14.125C14.4083 3 14.6792 3.05833 14.9375 3.175C15.1958 3.29167 15.4167 3.45 15.6 3.65L16.85 5H20C20.55 5 21.0208 5.19583 21.4125 5.5875C21.8042 5.97917 22 6.45 22 7V19C22 19.55 21.8042 20.0208 21.4125 20.4125C21.0208 20.8042 20.55 21 20 21H4Z",fill:"currentColor"})),et=()=>t("svg",{width:"32",height:"32",viewBox:"0 0 32 32",fill:"none",xmlns:"http://www.w3.org/2000/svg"},t("path",{d:"M8.00001 17.3333C7.62223 17.3333 7.30556 17.2056 7.05001 16.95C6.79445 16.6944 6.66667 16.3778 6.66667 16C6.66667 15.6222 6.79445 15.3056 7.05001 15.05C7.30556 14.7944 7.62223 14.6667 8.00001 14.6667H24C24.3778 14.6667 24.6944 14.7944 24.95 15.05C25.2056 15.3056 25.3333 15.6222 25.3333 16C25.3333 16.3778 25.2056 16.6944 24.95 16.95C24.6944 17.2056 24.3778 17.3333 24 17.3333H8.00001Z",fill:"currentColor"})),ot=()=>t("svg",{xmlns:"http://www.w3.org/2000/svg",width:"80",height:"80",viewBox:"0 0 80 80",fill:"none"},t("circle",{cx:"40",cy:"40",r:"36",fill:"white"}),t("circle",{cx:"40",cy:"40",r:"39",fill:"white","fill-opacity":"0.16",stroke:"white","stroke-width":"2"}),t("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M48 29.3333H50.6667C53.6133 29.3333 56 31.72 56 34.6667V45.3333H53.3333V34.6667C53.3333 33.2 52.1333 32 50.6667 32H46.5733L45.7867 30.8133L43.9067 28H36.0933L34.2133 30.8133L33.4267 32H29.3333C27.8667 32 26.6667 33.2 26.6667 34.6667V48C26.6667 49.4667 27.8667 50.6667 29.3333 50.6667H36V53.3333H29.3333C26.3867 53.3333 24 50.9467 24 48V34.6667C24 31.72 26.3867 29.3333 29.3333 29.3333H32L34.6667 25.3333H45.3333L48 29.3333ZM40 34.6667C43.68 34.6667 46.6667 37.6533 46.6667 41.3333L46.6533 41.3467C46.6533 42.6933 46.24 43.96 45.5467 45.0133L51.6 51.0667L49.72 52.9467L43.6667 46.8933C42.6133 47.5867 41.36 48 40 48C36.32 48 33.3333 45.0133 33.3333 41.3333C33.3333 37.6533 36.32 34.6667 40 34.6667ZM36 41.3333C36 43.5333 37.8 45.3333 40 45.3333C42.2 45.3333 44 43.5333 44 41.3333C44 39.1333 42.2 37.3333 40 37.3333C37.8 37.3333 36 39.1333 36 41.3333Z",fill:"#161616"})),rt=()=>t("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none"},t("path",{d:"M4.5 21C4.1 21 3.75 20.85 3.45 20.55C3.15 20.25 3 19.9 3 19.5V4.5C3 4.1 3.15 3.75 3.45 3.45C3.75 3.15 4.1 3 4.5 3H19.5C19.9 3 20.25 3.15 20.55 3.45C20.85 3.75 21 4.1 21 4.5V19.5C21 19.9 20.85 20.25 20.55 20.55C20.25 20.85 19.9 21 19.5 21H4.5ZM6.65 17.075H17.375C17.525 17.075 17.6333 17.0083 17.7 16.875C17.7667 16.7417 17.7583 16.6083 17.675 16.475L14.75 12.575C14.6667 12.475 14.5667 12.425 14.45 12.425C14.3333 12.425 14.2333 12.475 14.15 12.575L11.15 16.45L9.125 13.675C9.04167 13.575 8.94167 13.525 8.825 13.525C8.70833 13.525 8.60833 13.575 8.525 13.675L6.375 16.475C6.275 16.6083 6.25833 16.7417 6.325 16.875C6.39167 17.0083 6.5 17.075 6.65 17.075Z",fill:"currentColor"})),st=({className:i})=>t("svg",{width:"34",height:"34",viewBox:"0 0 34 34",fill:"none",xmlns:"http://www.w3.org/2000/svg",class:i},t("path",{d:"M31 3H15C8.37258 3 3 8.37258 3 15V31",stroke:"white","stroke-width":"6","stroke-linecap":"square"})),nt=(t,i)=>{var e;if(!t)return"";const o={};return t.href.split("?")[1].split("included[]=").join("").split("&").forEach((t=>{const[i,e]=t.split("%3A");o[i]=e})),"categories"===i?null!==(e=o.product_type)&&void 0!==e?e:o.google_product_category:o[i]},at=class{constructor(t){var o;i(this,t),this.vviinnSelectFilter=e(this,"vviinnSelectFilter",7),this.filterType=null===(o=this.filter)||void 0===o?void 0:o.name,this.filter=null,this.basicEventData=void 0,this.selectedFilter="",this.hideFilters=!0}isCategoriesFilterType(){return"categories"===this.filterType}getFilterKind(){return this.isCategoriesFilterType()?"category":this.filterType}handleFilterSelection(t){return this.isFilterSelected(t)?this.clearSelectedFilter(t):this.selectFilter(t)}selectFilter(t){n.activeIonLink=t,this.selectedFilter=nt(t,this.filterType),this.vviinnSelectFilter.emit(Object.assign(Object.assign({},this.basicEventData),{action:"select",kind:this.getFilterKind()}))}clearSelectedFilter(t){n.activeIonLink=t.clear,this.selectedFilter=nt(t.clear,this.filterType),this.vviinnSelectFilter.emit(Object.assign(Object.assign({},this.basicEventData),{action:"deselect",kind:this.getFilterKind()}))}toggleFilters(){this.hideFilters=!this.hideFilters}handleEnter(t,i){"Enter"===t.key&&this.handleFilterSelection(i)}isFilterSelected(t){return this.isCategoriesFilterType()?this.selectedFilter===nt(t,"categories"):this.selectedFilter===t.name}render(){var i;const e=(null===(i=this.filter)||void 0===i?void 0:i.filters)||[];return t(o,{exportparts:"filter, show-more-filters"},t("div",{class:{filters:!0,"no-scrollbar-mobile":this.isCategoriesFilterType(),"no-scrollbar":!this.isCategoriesFilterType()}},!!e.length&&e.filter(((t,i)=>!this.hideFilters||i<4)).map(((i,e)=>{const o="categories"===this.filter.name?this.selectedFilter===nt(i,"categories"):this.selectedFilter===i.name;return t("div",{role:"button",tabindex:"0",key:e,part:o?"filter active":"filter",class:{filter:!0,active:o},style:{"animation-delay":10*e+"ms"},onPointerUp:t=>{n.loading||(t.stopPropagation(),this.handleFilterSelection(i))},onKeyPress:t=>{n.loading||this.handleEnter(t,i)}},i.name)})),this.hideFilters&&t("div",{class:{"show-more":!0,hidden:e.length<=4,active:!this.hideFilters},role:"button",tabindex:"0","aria-role":"button",onClick:()=>{setTimeout((()=>this.toggleFilters()),300)},onKeyPress:t=>{"Enter"===t.key&&this.toggleFilters()},part:"show-more-filters"})))}get el(){return r(this)}};at.style=":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;}.filters{display:flex;flex-direction:row;overflow-x:auto;padding:0 12px 6px 24px;scrollbar-width:thin}:host(:not(:first-child)) .filters{margin-top:6px}.filter{align-items:center;color:#525252;cursor:pointer;display:flex;margin-right:12px;height:-moz-max-content;height:max-content;min-width:-moz-max-content;min-width:max-content;transition-property:background;transition-duration:0.5s;transition-timing-function:ease-in-out;font-family:var(--font-family, var(--font-family-base));-webkit-user-select:none;-moz-user-select:none;user-select:none;padding:10px 12px}.show-more{display:flex}.show-more.hidden{display:none !important}.show-more::after{position:relative;content:url(\"data:image/svg+xml,%3Csvg width='16' height='16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8 12.2l-6-6L3.2 5 8 9.8 12.8 5 14 6.2l-6 6z' fill='%23525252'/%3E%3C/svg%3E\");display:block;transform:rotate(-90deg);left:2px}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}@media (max-width: 640px){.no-scrollbar-mobile{-ms-overflow-style:none;scrollbar-width:none}.no-scrollbar-mobile::-webkit-scrollbar{display:none}}";const ht=class{constructor(t){i(this,t),this.vviinnImageUpload=e(this,"vviinnImageUpload",7),this.vviinnNoResult=e(this,"vviinnNoResult",7),this.vviinnImageUploadFinished=e(this,"vviinnImageUploadFinished",7),this.vviinnCameraEnabled=e(this,"vviinnCameraEnabled",7),this.videoTrack=null,this.initializeZoom=async()=>{var t;if(!this.videoTrack)return;const i=(null===(t=this.videoTrack)||void 0===t?void 0:t.getCapabilities)?this.videoTrack.getCapabilities():{};"zoom"in i&&(this.zoomCapabilities=i.zoom,await this.videoTrack.applyConstraints({advanced:[{zoom:this.zoomCapabilities.min}]}))},this.onZoom=async t=>{var i;if(!this.videoTrack||!this.zoomCapabilities)return;const{max:e,min:o}=this.zoomCapabilities,r=null!==(i=this.videoTrack.getSettings().zoom)&&void 0!==i?i:o,s=Math.round((e-o)/3*10)/10;let n;n="in"===t?r+s:r-s,n<o&&(n=o),n>e&&(n=e),await this.videoTrack.applyConstraints({advanced:[{zoom:n}]})},this.exampleImageSource=void 0,this.width=0,this.height=0,this.basicEventData=void 0,this.srcObject=void 0,this.cameraButtonClicked=!1,this.useComponentsStore=!1,this.selected=!1,this.videoInitialized=!1,this.zoomCapabilities=null}componentWillLoad(){z(this,this.el)}componentDidLoad(){this.videoElement=this.el.shadowRoot.getElementById("camera-preview")}createPlaceholderImageCanvas(){const t=this.el.shadowRoot.getElementById("captured-image-placeholder"),i=this.videoElement,{videoWidth:e,videoHeight:o}=i,r=document.createElement("canvas");r.width=e,r.height=o,r.getContext("2d").drawImage(i,0,0,r.width,r.height);const s=r.toDataURL("image/jpeg");t.src=s}async selectImage(){if(!this.srcObject)return;let t;this.vviinnImageUpload.emit(this.basicEventData);const i=this.el.shadowRoot.getElementById("photo-frame"),e=this.videoElement,o=i.getBoundingClientRect(),r=e.getBoundingClientRect(),{videoWidth:s,videoHeight:n}=e,d=document.createElement("canvas");this.selected=!0,this.videoElement.pause(),this.createPlaceholderImageCanvas();const p=s/r.width,f=n/r.height,u=Math.min(o.width*p,o.height*f);d.width=u,d.height=u;const g=(o.left-r.left+(o.width-u/p)/2)*p,v=(o.top-r.top+(o.height-u/f)/2)*f;d.getContext("2d").drawImage(e,g,v,u,u,0,0,d.width,d.height);const b=d.toDataURL("image/jpeg");t=await a(b),h.pipe(await c(this.useComponentsStore?"components":"widget")(t),l.match((()=>this.vviinnNoResult.emit(this.basicEventData)),(({links:t})=>this.vviinnImageUploadFinished.emit({searchId:t.self.href})))),this.selected=!1,this.videoInitialized=!1,this.vviinnCameraEnabled.emit(!1)}handleKeyPress({key:t}){"Enter"!==t&&" "!==t||this.selectImage()}handleSrcObjectChange(){this.srcObject?(this.videoElement.srcObject=this.srcObject,this.videoTrack=this.srcObject.getVideoTracks()[0],this.initializeZoom(),this.videoElement.onloadedmetadata=()=>{this.vviinnCameraEnabled.emit(!0),this.videoInitialized=!0}):this.videoInitialized=!1}render(){return t(o,{onKeyUp:t=>this.handleKeyPress(t),class:{"video-expanded":this.cameraButtonClicked}},t("video",{id:"camera-preview",class:{hidden:!this.videoInitialized||this.selected},autoplay:!0,playsinline:!0,muted:!0}),t("img",{src:this.exampleImageSource,width:this.width,height:this.height,tabindex:1,class:{hidden:this.videoInitialized||this.selected}}),t("img",{id:"captured-image-placeholder",class:{hidden:!this.selected}}),t("div",{class:{container:!0,hidden:!this.videoInitialized}},t("div",{class:"photo-frame-container"},t("div",{id:"photo-frame"},t(st,{className:"photo-frame-corner top-left"}),t(st,{className:"photo-frame-corner top-right"}),t(st,{className:"photo-frame-corner bottom-left"}),t(st,{className:"photo-frame-corner bottom-right"})),t("div",{class:{"zoom-buttons":!0,hidden:!this.zoomCapabilities}},t("button",{onClick:()=>this.onZoom("out")},t(et,null)),t("button",{onClick:()=>this.onZoom("in")},t(T,null)))),t("div",{class:"photo-button-container"},t("button",{class:"photo-button",onClick:()=>this.selectImage()},t(ot,null)))))}get el(){return r(this)}static get watchers(){return{srcObject:["handleSrcObjectChange"]}}};ht.style=":host{display:block;width:100%;height:100%;min-height:0;position:relative;overflow:hidden;flex-grow:1;transition:min-height 1s}:host(.video-expanded){min-height:100%;transition:min-height 0.8s}img{width:100%;height:100%;min-height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center}#camera-preview{width:100%;min-height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;position:relative}#captured-image-placeholder{height:auto}.container{position:absolute;width:100%;height:100%;left:0;top:0;display:flex;flex-direction:column;gap:12px;padding:68px 0 48px;justify-content:space-around;align-content:center;box-sizing:border-box}.photo-frame-container{width:100%;height:100%;display:flex;flex-direction:column;gap:12px}#photo-frame{position:relative;aspect-ratio:1/1;border-radius:16px;box-shadow:0 0 0 100vmax rgba(0, 0, 0, 0.32);width:100%;height:auto;max-width:80%;margin:0 auto}@media (max-width: 960px){.photo-frame-container{width:auto;height:auto}}@media (max-width: 380px){#photo-frame{max-width:70%}}.photo-frame-corner{position:absolute;--delta:-3px}.photo-frame-corner.top-left{top:var(--delta);left:var(--delta)}.photo-frame-corner.top-right{top:var(--delta);right:var(--delta);transform:rotate(90deg)}.photo-frame-corner.bottom-left{bottom:var(--delta);left:var(--delta);transform:rotate(-90deg)}.photo-frame-corner.bottom-right{bottom:var(--delta);right:var(--delta);transform:rotate(180deg)}.photo-button-container{display:flex;width:100%;align-items:center;justify-self:flex-end}.photo-button{cursor:pointer;border:none;position:relative;z-index:1;padding:0;color:#6f6f6f;background-color:transparent;-webkit-tap-highlight-color:transparent;line-height:0;margin:0 auto}.zoom-buttons{display:flex;position:relative;justify-content:center;gap:12px}.zoom-buttons button{color:white;display:flex;width:48px;height:48px;justify-content:center;align-items:center;border-radius:var(--border-radius-100, 8px);background-color:rgba(0, 0, 0, 0.48);border:none;cursor:pointer}.hidden{display:none}";var ct=d((function(t){
1
+ import{h as t,r as i,c as e,H as o,g as r,F as s}from"./p-c3953cbf.js";import{s as n,k as a,_ as h,l as c,E as l,j as d,i as p,n as f,e as u,c as g,O as v,o as b,q as m,r as x,u as w,v as y,w as k,x as C,y as M,z as j}from"./p-f601d5c0.js";import{s as z,p as S,v as I,S as O}from"./p-43e147d6.js";import{P as T,l as E,c as W,v as B,m as R,n as _,g as N,o as P,p as V}from"./p-380b7211.js";import{f as H}from"./p-f2d58f7d.js";import{c as L,v as D}from"./p-800ea3cc.js";import{i as A}from"./p-2e76a5c3.js";import{r as F}from"./p-645df5cc.js";import{a as U,m as X,f as $,b as Y,s as Z,c as q,d as K}from"./p-1f0dc75e.js";import{f as Q,g as G,D as J}from"./p-92c02a9f.js";import{W as tt}from"./p-b2aa3af6.js";const it=()=>t("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none"},t("path",{d:"M12 17.5C13.25 17.5 14.3125 17.0625 15.1875 16.1875C16.0625 15.3125 16.5 14.25 16.5 13C16.5 11.75 16.0625 10.6875 15.1875 9.8125C14.3125 8.9375 13.25 8.5 12 8.5C10.75 8.5 9.6875 8.9375 8.8125 9.8125C7.9375 10.6875 7.5 11.75 7.5 13C7.5 14.25 7.9375 15.3125 8.8125 16.1875C9.6875 17.0625 10.75 17.5 12 17.5ZM12 15.5C11.3 15.5 10.7083 15.2583 10.225 14.775C9.74167 14.2917 9.5 13.7 9.5 13C9.5 12.3 9.74167 11.7083 10.225 11.225C10.7083 10.7417 11.3 10.5 12 10.5C12.7 10.5 13.2917 10.7417 13.775 11.225C14.2583 11.7083 14.5 12.3 14.5 13C14.5 13.7 14.2583 14.2917 13.775 14.775C13.2917 15.2583 12.7 15.5 12 15.5ZM4 21C3.45 21 2.97917 20.8042 2.5875 20.4125C2.19583 20.0208 2 19.55 2 19V7C2 6.45 2.19583 5.97917 2.5875 5.5875C2.97917 5.19583 3.45 5 4 5H7.15L8.4 3.65C8.58333 3.45 8.80417 3.29167 9.0625 3.175C9.32083 3.05833 9.59167 3 9.875 3H14.125C14.4083 3 14.6792 3.05833 14.9375 3.175C15.1958 3.29167 15.4167 3.45 15.6 3.65L16.85 5H20C20.55 5 21.0208 5.19583 21.4125 5.5875C21.8042 5.97917 22 6.45 22 7V19C22 19.55 21.8042 20.0208 21.4125 20.4125C21.0208 20.8042 20.55 21 20 21H4Z",fill:"currentColor"})),et=()=>t("svg",{width:"32",height:"32",viewBox:"0 0 32 32",fill:"none",xmlns:"http://www.w3.org/2000/svg"},t("path",{d:"M8.00001 17.3333C7.62223 17.3333 7.30556 17.2056 7.05001 16.95C6.79445 16.6944 6.66667 16.3778 6.66667 16C6.66667 15.6222 6.79445 15.3056 7.05001 15.05C7.30556 14.7944 7.62223 14.6667 8.00001 14.6667H24C24.3778 14.6667 24.6944 14.7944 24.95 15.05C25.2056 15.3056 25.3333 15.6222 25.3333 16C25.3333 16.3778 25.2056 16.6944 24.95 16.95C24.6944 17.2056 24.3778 17.3333 24 17.3333H8.00001Z",fill:"currentColor"})),ot=()=>t("svg",{xmlns:"http://www.w3.org/2000/svg",width:"80",height:"80",viewBox:"0 0 80 80",fill:"none"},t("circle",{cx:"40",cy:"40",r:"36",fill:"white"}),t("circle",{cx:"40",cy:"40",r:"39",fill:"white","fill-opacity":"0.16",stroke:"white","stroke-width":"2"}),t("path",{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M48 29.3333H50.6667C53.6133 29.3333 56 31.72 56 34.6667V45.3333H53.3333V34.6667C53.3333 33.2 52.1333 32 50.6667 32H46.5733L45.7867 30.8133L43.9067 28H36.0933L34.2133 30.8133L33.4267 32H29.3333C27.8667 32 26.6667 33.2 26.6667 34.6667V48C26.6667 49.4667 27.8667 50.6667 29.3333 50.6667H36V53.3333H29.3333C26.3867 53.3333 24 50.9467 24 48V34.6667C24 31.72 26.3867 29.3333 29.3333 29.3333H32L34.6667 25.3333H45.3333L48 29.3333ZM40 34.6667C43.68 34.6667 46.6667 37.6533 46.6667 41.3333L46.6533 41.3467C46.6533 42.6933 46.24 43.96 45.5467 45.0133L51.6 51.0667L49.72 52.9467L43.6667 46.8933C42.6133 47.5867 41.36 48 40 48C36.32 48 33.3333 45.0133 33.3333 41.3333C33.3333 37.6533 36.32 34.6667 40 34.6667ZM36 41.3333C36 43.5333 37.8 45.3333 40 45.3333C42.2 45.3333 44 43.5333 44 41.3333C44 39.1333 42.2 37.3333 40 37.3333C37.8 37.3333 36 39.1333 36 41.3333Z",fill:"#161616"})),rt=()=>t("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none"},t("path",{d:"M4.5 21C4.1 21 3.75 20.85 3.45 20.55C3.15 20.25 3 19.9 3 19.5V4.5C3 4.1 3.15 3.75 3.45 3.45C3.75 3.15 4.1 3 4.5 3H19.5C19.9 3 20.25 3.15 20.55 3.45C20.85 3.75 21 4.1 21 4.5V19.5C21 19.9 20.85 20.25 20.55 20.55C20.25 20.85 19.9 21 19.5 21H4.5ZM6.65 17.075H17.375C17.525 17.075 17.6333 17.0083 17.7 16.875C17.7667 16.7417 17.7583 16.6083 17.675 16.475L14.75 12.575C14.6667 12.475 14.5667 12.425 14.45 12.425C14.3333 12.425 14.2333 12.475 14.15 12.575L11.15 16.45L9.125 13.675C9.04167 13.575 8.94167 13.525 8.825 13.525C8.70833 13.525 8.60833 13.575 8.525 13.675L6.375 16.475C6.275 16.6083 6.25833 16.7417 6.325 16.875C6.39167 17.0083 6.5 17.075 6.65 17.075Z",fill:"currentColor"})),st=({className:i})=>t("svg",{width:"34",height:"34",viewBox:"0 0 34 34",fill:"none",xmlns:"http://www.w3.org/2000/svg",class:i},t("path",{d:"M31 3H15C8.37258 3 3 8.37258 3 15V31",stroke:"white","stroke-width":"6","stroke-linecap":"square"})),nt=(t,i)=>{var e;if(!t)return"";const o={};return t.href.split("?")[1].split("included[]=").join("").split("&").forEach((t=>{const[i,e]=t.split("%3A");o[i]=e})),"categories"===i?null!==(e=o.product_type)&&void 0!==e?e:o.google_product_category:o[i]},at=class{constructor(t){var o;i(this,t),this.vviinnSelectFilter=e(this,"vviinnSelectFilter",7),this.filterType=null===(o=this.filter)||void 0===o?void 0:o.name,this.filter=null,this.basicEventData=void 0,this.selectedFilter="",this.hideFilters=!0}isCategoriesFilterType(){return"categories"===this.filterType}getFilterKind(){return this.isCategoriesFilterType()?"category":this.filterType}handleFilterSelection(t){return this.isFilterSelected(t)?this.clearSelectedFilter(t):this.selectFilter(t)}selectFilter(t){n.activeIonLink=t,this.selectedFilter=nt(t,this.filterType),this.vviinnSelectFilter.emit(Object.assign(Object.assign({},this.basicEventData),{action:"select",kind:this.getFilterKind()}))}clearSelectedFilter(t){n.activeIonLink=t.clear,this.selectedFilter=nt(t.clear,this.filterType),this.vviinnSelectFilter.emit(Object.assign(Object.assign({},this.basicEventData),{action:"deselect",kind:this.getFilterKind()}))}toggleFilters(){this.hideFilters=!this.hideFilters}handleEnter(t,i){"Enter"===t.key&&this.handleFilterSelection(i)}isFilterSelected(t){return this.isCategoriesFilterType()?this.selectedFilter===nt(t,"categories"):this.selectedFilter===t.name}render(){var i;const e=(null===(i=this.filter)||void 0===i?void 0:i.filters)||[];return t(o,{exportparts:"filter, show-more-filters"},t("div",{class:{filters:!0,"no-scrollbar-mobile":this.isCategoriesFilterType(),"no-scrollbar":!this.isCategoriesFilterType()}},!!e.length&&e.filter(((t,i)=>!this.hideFilters||i<4)).map(((i,e)=>{const o="categories"===this.filter.name?this.selectedFilter===nt(i,"categories"):this.selectedFilter===i.name;return t("div",{role:"button",tabindex:"0",key:e,part:o?"filter active":"filter",class:{filter:!0,active:o},style:{"animation-delay":10*e+"ms"},onPointerUp:t=>{n.loading||(t.stopPropagation(),this.handleFilterSelection(i))},onKeyPress:t=>{n.loading||this.handleEnter(t,i)}},i.name)})),this.hideFilters&&t("div",{class:{"show-more":!0,hidden:e.length<=4,active:!this.hideFilters},role:"button",tabindex:"0","aria-role":"button",onClick:()=>{setTimeout((()=>this.toggleFilters()),300)},onKeyPress:t=>{"Enter"===t.key&&this.toggleFilters()},part:"show-more-filters"})))}get el(){return r(this)}};at.style=":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;}.filters{display:flex;flex-direction:row;overflow-x:auto;padding:0 12px 6px 24px;scrollbar-width:thin}:host(:not(:first-child)) .filters{margin-top:6px}.filter{align-items:center;color:#525252;cursor:pointer;display:flex;margin-right:12px;height:-moz-max-content;height:max-content;min-width:-moz-max-content;min-width:max-content;transition-property:background;transition-duration:0.5s;transition-timing-function:ease-in-out;font-family:var(--font-family, var(--font-family-base));-webkit-user-select:none;-moz-user-select:none;user-select:none;padding:10px 12px}.show-more{display:flex}.show-more.hidden{display:none !important}.show-more::after{position:relative;content:url(\"data:image/svg+xml,%3Csvg width='16' height='16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8 12.2l-6-6L3.2 5 8 9.8 12.8 5 14 6.2l-6 6z' fill='%23525252'/%3E%3C/svg%3E\");display:block;transform:rotate(-90deg);left:2px}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}@media (max-width: 640px){.no-scrollbar-mobile{-ms-overflow-style:none;scrollbar-width:none}.no-scrollbar-mobile::-webkit-scrollbar{display:none}}";const ht=class{constructor(t){i(this,t),this.vviinnImageUpload=e(this,"vviinnImageUpload",7),this.vviinnNoResult=e(this,"vviinnNoResult",7),this.vviinnImageUploadFinished=e(this,"vviinnImageUploadFinished",7),this.vviinnCameraEnabled=e(this,"vviinnCameraEnabled",7),this.videoTrack=null,this.initializeZoom=async()=>{var t;if(!this.videoTrack)return;const i=(null===(t=this.videoTrack)||void 0===t?void 0:t.getCapabilities)?this.videoTrack.getCapabilities():{};"zoom"in i&&(this.zoomCapabilities=i.zoom,await this.videoTrack.applyConstraints({advanced:[{zoom:this.zoomCapabilities.min}]}))},this.onZoom=async t=>{var i;if(!this.videoTrack||!this.zoomCapabilities)return;const{max:e,min:o}=this.zoomCapabilities,r=null!==(i=this.videoTrack.getSettings().zoom)&&void 0!==i?i:o,s=Math.round((e-o)/3*10)/10;let n;n="in"===t?r+s:r-s,n<o&&(n=o),n>e&&(n=e),await this.videoTrack.applyConstraints({advanced:[{zoom:n}]})},this.exampleImageSource=void 0,this.width=0,this.height=0,this.basicEventData=void 0,this.srcObject=void 0,this.cameraButtonClicked=!1,this.useComponentsStore=!1,this.selected=!1,this.videoInitialized=!1,this.zoomCapabilities=null}componentWillLoad(){z(this,this.el)}componentDidLoad(){this.videoElement=this.el.shadowRoot.getElementById("camera-preview")}createPlaceholderImageCanvas(){const t=this.el.shadowRoot.getElementById("captured-image-placeholder"),i=this.videoElement,{videoWidth:e,videoHeight:o}=i,r=document.createElement("canvas");r.width=e,r.height=o,r.getContext("2d").drawImage(i,0,0,r.width,r.height);const s=r.toDataURL("image/jpeg");t.src=s}async selectImage(){if(!this.srcObject)return;let t;this.vviinnImageUpload.emit(this.basicEventData);const i=this.el.shadowRoot.getElementById("photo-frame"),e=this.videoElement,o=i.getBoundingClientRect(),r=e.getBoundingClientRect(),{videoWidth:s,videoHeight:n}=e,d=document.createElement("canvas");this.selected=!0,this.videoElement.pause(),this.createPlaceholderImageCanvas();const p=s/r.width,f=n/r.height,u=Math.min(o.width*p,o.height*f);d.width=u,d.height=u;const g=(o.left-r.left+(o.width-u/p)/2)*p,v=(o.top-r.top+(o.height-u/f)/2)*f;d.getContext("2d").drawImage(e,g,v,u,u,0,0,d.width,d.height);const b=d.toDataURL("image/jpeg");t=await a(b),h.pipe(await c(this.useComponentsStore?"components":"widget")(t),l.match((()=>this.vviinnNoResult.emit(this.basicEventData)),(({links:t})=>this.vviinnImageUploadFinished.emit({searchId:t.self.href})))),this.selected=!1,this.videoInitialized=!1,this.vviinnCameraEnabled.emit(!1)}handleKeyPress({key:t}){"Enter"!==t&&" "!==t||this.selectImage()}handleSrcObjectChange(){this.srcObject?(this.videoElement.srcObject=this.srcObject,this.videoTrack=this.srcObject.getVideoTracks()[0],this.initializeZoom(),this.videoElement.onloadedmetadata=()=>{this.vviinnCameraEnabled.emit(!0),this.videoInitialized=!0}):this.videoInitialized=!1}render(){return t(o,{onKeyUp:t=>this.handleKeyPress(t),class:{"video-expanded":this.cameraButtonClicked}},t("video",{id:"camera-preview",class:{hidden:!this.videoInitialized||this.selected},autoplay:!0,playsinline:!0,muted:!0}),t("img",{src:this.exampleImageSource,width:this.width,height:this.height,tabindex:1,class:{hidden:this.videoInitialized||this.selected}}),t("img",{id:"captured-image-placeholder",class:{hidden:!this.selected}}),t("div",{class:{container:!0,hidden:!this.videoInitialized}},t("div",{class:"photo-frame-container"},t("div",{id:"photo-frame"},t(st,{className:"photo-frame-corner top-left"}),t(st,{className:"photo-frame-corner top-right"}),t(st,{className:"photo-frame-corner bottom-left"}),t(st,{className:"photo-frame-corner bottom-right"})),t("div",{class:{"zoom-buttons":!0,hidden:!this.zoomCapabilities}},t("button",{onClick:()=>this.onZoom("out")},t(et,null)),t("button",{onClick:()=>this.onZoom("in")},t(T,null)))),t("div",{class:"photo-button-container"},t("button",{class:"photo-button",onClick:()=>this.selectImage()},t(ot,null)))))}get el(){return r(this)}static get watchers(){return{srcObject:["handleSrcObjectChange"]}}};ht.style=":host{display:block;width:100%;height:100%;min-height:0;position:relative;overflow:hidden;flex-grow:1;transition:min-height 1s}:host(.video-expanded){min-height:100%;transition:min-height 0.8s}img{width:100%;height:100%;min-height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center}#camera-preview{width:100%;min-height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;position:relative}#captured-image-placeholder{height:auto}.container{position:absolute;width:100%;height:100%;left:0;top:0;display:flex;flex-direction:column;gap:12px;padding:68px 0 48px;justify-content:space-around;align-content:center;box-sizing:border-box}.photo-frame-container{width:100%;height:100%;display:flex;flex-direction:column;gap:12px}#photo-frame{position:relative;aspect-ratio:1/1;border-radius:16px;box-shadow:0 0 0 100vmax rgba(0, 0, 0, 0.32);width:100%;height:auto;max-width:80%;margin:0 auto}@media (max-width: 960px){.photo-frame-container{width:auto;height:auto}}@media (max-width: 380px){#photo-frame{max-width:70%}}.photo-frame-corner{position:absolute;--delta:-3px}.photo-frame-corner.top-left{top:var(--delta);left:var(--delta)}.photo-frame-corner.top-right{top:var(--delta);right:var(--delta);transform:rotate(90deg)}.photo-frame-corner.bottom-left{bottom:var(--delta);left:var(--delta);transform:rotate(-90deg)}.photo-frame-corner.bottom-right{bottom:var(--delta);right:var(--delta);transform:rotate(180deg)}.photo-button-container{display:flex;width:100%;align-items:center;justify-self:flex-end}.photo-button{cursor:pointer;border:none;position:relative;z-index:1;padding:0;color:#6f6f6f;background-color:transparent;-webkit-tap-highlight-color:transparent;line-height:0;margin:0 auto}.zoom-buttons{display:flex;position:relative;justify-content:center;gap:12px}.zoom-buttons button{color:white;display:flex;width:48px;height:48px;justify-content:center;align-items:center;border-radius:var(--border-radius-100, 8px);background-color:rgba(0, 0, 0, 0.48);border:none;cursor:pointer}.hidden{display:none}";var ct=d((function(t){
2
2
  /*!
3
3
  * Cropper.js v1.5.13
4
4
  * https://fengyuanchen.github.io/cropperjs
@@ -1 +1 @@
1
- const t={VPR:"Similar Products",VPS:"Visual Search",VCS:"Cross-Selling",TPS:"Text Product Search"};function a(t,a){return r=>(t=>"VPR"===t._tag)(r)?t():a()}function r(t){return"VPR"===t?{_tag:"VPR"}:{_tag:"VCS"}}const s="2.145.11";export{a,t as c,r as f,s as v}
1
+ const t={VPR:"Similar Products",VPS:"Visual Search",VCS:"Cross-Selling",TPS:"Text Product Search"};function a(t,a){return r=>(t=>"VPR"===t._tag)(r)?t():a()}function r(t){return"VPR"===t?{_tag:"VPR"}:{_tag:"VCS"}}const s="2.145.13";export{a,t as c,r as f,s as v}
@@ -1 +1 @@
1
- import{h as t,r as e,c as i,H as o,g as r}from"./p-c3953cbf.js";import{s,c as n,_ as a,v as c,w as h}from"./p-f601d5c0.js";import{s as l}from"./p-43e147d6.js";import{i as d}from"./p-2e76a5c3.js";import{r as p}from"./p-645df5cc.js";import{s as f}from"./p-1f0dc75e.js";import"./p-f2d58f7d.js";const b=()=>t("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},t("path",{d:"M20.6 4.57C17.39 4.19 16.88 3.68 16.42 0.37C16.38 0.15 16.22 0 16.01 0C15.8 0 15.63 0.15 15.59 0.37C15.12 3.66 14.63 4.13 11.41 4.57C11.17 4.61 11.01 4.77 11.01 5C11.01 5.23 11.17 5.39 11.41 5.42C14.63 5.81 15.14 6.31 15.59 9.62C15.63 9.84 15.8 10 16.01 10C16.22 10 16.39 9.84 16.42 9.62C16.89 6.31 17.39 5.81 20.6 5.42C20.84 5.38 21 5.22 21 5C21 4.78 20.83 4.6 20.6 4.57Z",fill:"#525252"}),t("path",{d:"M14 12C14 9.24 11.76 7 9 7C6.24 7 4 9.24 4 12C4 14.76 6.24 17 9 17C10.02 17 10.96 16.69 11.75 16.17L16.29 20.71L17.7 19.3L13.16 14.76C13.68 13.97 13.99 13.02 13.99 12.01L14 12ZM9 15C7.35 15 6 13.65 6 12C6 10.35 7.35 9 9 9C10.65 9 12 10.35 12 12C12 13.65 10.65 15 9 15Z",fill:"#525252"})),g=()=>t("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",width:"24",height:"24"},t("path",{d:"M12 14C11.1667 14 10.4583 13.7083 9.87501 13.125C9.29168 12.5417 9.00001 11.8333 9.00001 11V5C9.00001 4.16667 9.29168 3.45833 9.87501 2.875C10.4583 2.29167 11.1667 2 12 2C12.8333 2 13.5417 2.29167 14.125 2.875C14.7083 3.45833 15 4.16667 15 5V11C15 11.8333 14.7083 12.5417 14.125 13.125C13.5417 13.7083 12.8333 14 12 14ZM11 20V17.925C9.46668 17.7083 8.15418 17.0583 7.06251 15.975C5.97085 14.8917 5.30835 13.575 5.07501 12.025C5.04168 11.7417 5.11668 11.5 5.30001 11.3C5.48335 11.1 5.71668 11 6.00001 11C6.28335 11 6.52085 11.0958 6.71251 11.2875C6.90418 11.4792 7.03335 11.7167 7.10001 12C7.33335 13.1667 7.91251 14.125 8.83751 14.875C9.76251 15.625 10.8167 16 12 16C13.2 16 14.2583 15.6208 15.175 14.8625C16.0917 14.1042 16.6667 13.15 16.9 12C16.9667 11.7167 17.0958 11.4792 17.2875 11.2875C17.4792 11.0958 17.7167 11 18 11C18.2833 11 18.5167 11.1 18.7 11.3C18.8833 11.5 18.9583 11.7417 18.925 12.025C18.6917 13.5417 18.0333 14.85 16.95 15.95C15.8667 17.05 14.55 17.7083 13 17.925V20C13 20.2833 12.9042 20.5208 12.7125 20.7125C12.5208 20.9042 12.2833 21 12 21C11.7167 21 11.4792 20.9042 11.2875 20.7125C11.0958 20.5208 11 20.2833 11 20Z",fill:"#161616"})),x=()=>{var t;const e=window,i=window.navigator,o=i.vendor,r=[void 0!==e.opr,i.userAgent.indexOf("Firefox")>-1,i.userAgent.indexOf("Edg")>-1].some((t=>!0===t)),s=void 0!==i.userAgentData?"Google Chrome"===(null===(t=i.userAgentData.brands[0])||void 0===t?void 0:t.brand):"Google Inc."===o;return{forbiddenBrowser:r,isChrome:s,isSafari:i.userAgent.indexOf("Safari")>-1&&!s}},u=class{constructor(t){e(this,t),this.vviinnTextSearchStarted=i(this,"vviinnTextSearchStarted",7),this.vviinnSearchIdReceived=i(this,"vviinnSearchIdReceived",7),this.vviinnFilterTriggered=i(this,"vviinnFilterTriggered",7),this.widgetTextSearchFinished=i(this,"widgetTextSearchFinished",7),this.resultsSearchFinished=i(this,"resultsSearchFinished",7),this.vviinnSelectedFiltersReset=i(this,"vviinnSelectedFiltersReset",7),this.isShowPreloader=()=>this.state.loading&&"text"===this.state.searchType,this.showLoader=()=>this.isLoading=!0,this.hideLoader=()=>this.isLoading=!1,this.isShowRecording=()=>this.isRecording,this.showRecording=()=>this.isRecording=!0,this.hideRecording=()=>this.isRecording=!1,this.setShowTooltip=t=>{this.showTooltip=t},this.tooltipText=(()=>{const{isSafari:t}=x();return t?"speechRecognition.tooltip.siri":"speechRecognition.tooltip.general"})(),this.recognition=((t,e,i,o)=>{const r=(()=>{const t=window,e=t.webkitSpeechRecognition||t.SpeechRecognition;if(!e)return;const{forbiddenBrowser:i,isChrome:o,isSafari:r}=x();return i?void 0:o||r?e:void 0})();if(!r)return;const s=new r;let n;return s.interimResults=!1,s.maxAlternatives=1,s.continuous=!1,s.lang=t,s.onstart=()=>{e(),n=setTimeout((()=>{s.stop()}),1e4)},s.onspeechend=()=>{s.stop(),i(),clearTimeout(n)},s.onend=i,s.onresult=t=>{o(t.results[0][0].transcript)},s})(this.locale,(()=>{this.showRecording(),this.setShowTooltip(!1),clearTimeout(this.triggerTooltipStart)}),this.hideRecording,(t=>{this.setSearchQuery(t),this.handleTextSearch()})),this.trackTextSearch=()=>this.vviinnFilterTriggered.emit({kind:this.searchQuery,action:"select",customTrigger:"TPS",isTriggeredByVpsWidget:this.showInWidget}),this.setSearchQuery=t=>{this.searchQuery=t},this.token=void 0,this.locale="de-DE",this.mode="basic",this.showInWidget=!1,this.searchQuery=void 0,this.apiPath="https://api.vviinn.com",this.isLoading=!1,this.isRecording=!1,this.showTooltip=!1}connectedCallback(){this.storeName=this.showInWidget?"widget":"components",this.state=this.showInWidget?s:n,this.token&&(this.state.token=this.token),document.addEventListener("resultsSearchFinished",this.hideLoader)}disconnectedCallback(){document.removeEventListener("resultsSearchFinished",this.hideLoader),clearTimeout(this.triggerTooltipStart),clearTimeout(this.triggerTooltipEnd)}async componentWillLoad(){var t;await d.init({lng:this.locale,fallbackLng:"en",resources:p}),l(this,this.el),!this.showInWidget&&(null===(t=this.searchQuery)||void 0===t?void 0:t.length)>0&&(this.showLoader(),this.vviinnTextSearchStarted.emit({query:this.searchQuery,isTriggeredByVpsWidget:this.showInWidget}),this.trackTextSearch())}imageUploadFinished({detail:t}){this.showInWidget||(this.showLoader(),this.vviinnSearchIdReceived.emit({searchId:t.searchId}))}handleInputChange(t){this.setSearchQuery(t.target.value)}async handleSpeech(){this.isRecording?(this.recognition.stop(),this.hideRecording(),this.setShowTooltip(!1)):(this.recognition.start(),this.setSearchQuery(""),this.triggerTooltipStart=setTimeout((()=>{this.isRecording||(this.setShowTooltip(!0),this.triggerTooltipEnd=setTimeout((()=>{this.setShowTooltip(!1)}),5e3))}),1e3))}async handleTextSearch(){if(this.searchQuery)if(this.trackTextSearch(),this.showInWidget){const{requestId:t}=a.pipe(await c(this.storeName,this.searchQuery),h((()=>null)),(t=>t));this.widgetTextSearchFinished.emit({query:this.searchQuery,requestId:t}),this.vviinnSelectedFiltersReset.emit({isTriggeredByVpsWidget:this.showInWidget})}else this.showLoader(),this.vviinnTextSearchStarted.emit({query:this.searchQuery})}handleKeyPress(t){"Enter"===t.key&&this.handleTextSearch()}render(){return t(o,{exportparts:f},t("div",{class:"text-search-container",part:"text-search-container"},t("input",{class:"text-search-input",part:"text-search-input",type:"text",placeholder:d.t(this.isShowRecording()?"speechRecognition.placeholder":"textSearchPlaceholder"),value:this.searchQuery,onInput:t=>this.handleInputChange(t),onKeyUp:t=>this.handleKeyPress(t)}),"extended"===this.mode&&t("vviinn-vps-button",{token:this.token,locale:this.locale,addStyle:!1,useComponentsStore:!0}),"basic"===this.mode&&t("slot",{name:"vviinn-text-search-actions"}),("extended"===this.mode||this.showInWidget)&&this.recognition&&t("button",{class:"speech-button",part:"speech-button",onClick:()=>this.handleSpeech()},t(g,null),this.isShowRecording()&&t("span",{class:"recording-indicator"})),t("button",{class:"text-search-button",part:"text-search-button",onClick:()=>this.handleTextSearch(),disabled:this.state.loading},this.isShowPreloader()?t("vviinn-preloader",null):t("slot",{name:"vviinn-text-search-icon"},t(b,null)))),this.showTooltip&&t("p",{class:"text-search-tooltip",part:"text-search-tooltip"},d.t(this.tooltipText)))}get el(){return r(this)}};u.style=':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;position:relative;width:100%;}.text-search-container{display:flex;align-items:center;gap:var(--spacing-50);width:100%;height:46px;border:1px solid var(--color-border-02);border-radius:8px;transition:border-color 0.2s;overflow:hidden;box-sizing:border-box}.text-search-container:focus-within{border-color:#8d8d8d}.text-search-input,.text-search-tooltip{font-size:16px;font-style:normal;font-weight:400;font-family:var(--font-family, var(--font-family-base))}.text-search-input{height:100%;padding-left:16px;box-sizing:border-box;border:none;outline:none;overflow:hidden;flex-grow:2;width:150px}.text-search-input::-moz-placeholder{color:#a8a8a8}.text-search-input::placeholder{color:#a8a8a8}.text-search-input:focus,.text-search-input:active{border-color:#8d8d8d}vviinn-vps-button{height:100%}.text-search-button,.speech-button,vviinn-vps-button::part(vviinn-button){border:none;height:100%;display:flex;justify-content:center;align-items:center;transition:background-color 0.2s;cursor:pointer}.speech-button,vviinn-vps-button::part(vviinn-button){padding:0 8px}.text-search-button{width:44px}.upload-button-text{display:contents}.text-search-button{background-color:#f4f4f4}.speech-button{background-color:transparent;position:relative}@keyframes recordingSpeech{0%{background-color:#ff0000;scale:1}100%{background-color:#ff8888;scale:1.5}}.recording-indicator{border-radius:50%;width:8px;height:8px;left:24px;top:24px;background-color:#ff0000;position:absolute;animation:recordingSpeech 1s infinite alternate ease-in-out}@keyframes fade-out{0%{opacity:0}20%{opacity:1}80%{opacity:1}100%{opacity:0;display:none}}.text-search-tooltip{position:absolute;right:0;top:80%;background:#f4f4f4;animation:fade-out 5s forwards;width:-moz-fit-content;width:fit-content;padding:24px;border-radius:8px;border:1px solid #8d8d8d;box-sizing:border-box}.text-search-button:not(:disabled):hover{background-color:#e0e0e0}.text-search-button:disabled{cursor:unset}vviinn-image-selector,::slotted([slot="vviinn-text-search-actions"]){margin:auto 8px}vviinn-preloader{--preloader-size:16px;display:flex;color:#525252}';export{u as vviinn_text_search}
1
+ import{h as t,r as e,c as i,H as o,g as r}from"./p-c3953cbf.js";import{s,c as n,_ as a,v as c,w as h}from"./p-f601d5c0.js";import{s as l}from"./p-43e147d6.js";import{i as d}from"./p-2e76a5c3.js";import{r as p}from"./p-645df5cc.js";import{s as f}from"./p-1f0dc75e.js";import"./p-f2d58f7d.js";const b=()=>t("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},t("path",{d:"M20.6 4.57C17.39 4.19 16.88 3.68 16.42 0.37C16.38 0.15 16.22 0 16.01 0C15.8 0 15.63 0.15 15.59 0.37C15.12 3.66 14.63 4.13 11.41 4.57C11.17 4.61 11.01 4.77 11.01 5C11.01 5.23 11.17 5.39 11.41 5.42C14.63 5.81 15.14 6.31 15.59 9.62C15.63 9.84 15.8 10 16.01 10C16.22 10 16.39 9.84 16.42 9.62C16.89 6.31 17.39 5.81 20.6 5.42C20.84 5.38 21 5.22 21 5C21 4.78 20.83 4.6 20.6 4.57Z",fill:"#525252"}),t("path",{d:"M14 12C14 9.24 11.76 7 9 7C6.24 7 4 9.24 4 12C4 14.76 6.24 17 9 17C10.02 17 10.96 16.69 11.75 16.17L16.29 20.71L17.7 19.3L13.16 14.76C13.68 13.97 13.99 13.02 13.99 12.01L14 12ZM9 15C7.35 15 6 13.65 6 12C6 10.35 7.35 9 9 9C10.65 9 12 10.35 12 12C12 13.65 10.65 15 9 15Z",fill:"#525252"})),g=()=>t("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",width:"24",height:"24"},t("path",{d:"M12 14C11.1667 14 10.4583 13.7083 9.87501 13.125C9.29168 12.5417 9.00001 11.8333 9.00001 11V5C9.00001 4.16667 9.29168 3.45833 9.87501 2.875C10.4583 2.29167 11.1667 2 12 2C12.8333 2 13.5417 2.29167 14.125 2.875C14.7083 3.45833 15 4.16667 15 5V11C15 11.8333 14.7083 12.5417 14.125 13.125C13.5417 13.7083 12.8333 14 12 14ZM11 20V17.925C9.46668 17.7083 8.15418 17.0583 7.06251 15.975C5.97085 14.8917 5.30835 13.575 5.07501 12.025C5.04168 11.7417 5.11668 11.5 5.30001 11.3C5.48335 11.1 5.71668 11 6.00001 11C6.28335 11 6.52085 11.0958 6.71251 11.2875C6.90418 11.4792 7.03335 11.7167 7.10001 12C7.33335 13.1667 7.91251 14.125 8.83751 14.875C9.76251 15.625 10.8167 16 12 16C13.2 16 14.2583 15.6208 15.175 14.8625C16.0917 14.1042 16.6667 13.15 16.9 12C16.9667 11.7167 17.0958 11.4792 17.2875 11.2875C17.4792 11.0958 17.7167 11 18 11C18.2833 11 18.5167 11.1 18.7 11.3C18.8833 11.5 18.9583 11.7417 18.925 12.025C18.6917 13.5417 18.0333 14.85 16.95 15.95C15.8667 17.05 14.55 17.7083 13 17.925V20C13 20.2833 12.9042 20.5208 12.7125 20.7125C12.5208 20.9042 12.2833 21 12 21C11.7167 21 11.4792 20.9042 11.2875 20.7125C11.0958 20.5208 11 20.2833 11 20Z",fill:"#161616"})),x=()=>{var t;const e=window,i=window.navigator,o=i.vendor,r=[void 0!==e.opr,i.userAgent.indexOf("Firefox")>-1,i.userAgent.indexOf("Edg")>-1].some((t=>!0===t)),s=void 0!==i.userAgentData?"Google Chrome"===(null===(t=i.userAgentData.brands[0])||void 0===t?void 0:t.brand):"Google Inc."===o;return{forbiddenBrowser:r,isChrome:s,isSafari:i.userAgent.indexOf("Safari")>-1&&!s}},u=class{constructor(t){e(this,t),this.vviinnTextSearchStarted=i(this,"vviinnTextSearchStarted",7),this.vviinnSearchIdReceived=i(this,"vviinnSearchIdReceived",7),this.vviinnFilterTriggered=i(this,"vviinnFilterTriggered",7),this.widgetTextSearchFinished=i(this,"widgetTextSearchFinished",7),this.resultsSearchFinished=i(this,"resultsSearchFinished",7),this.vviinnSelectedFiltersReset=i(this,"vviinnSelectedFiltersReset",7),this.isShowPreloader=()=>this.state.loading&&"text"===this.state.searchType,this.showLoader=()=>this.isLoading=!0,this.hideLoader=()=>this.isLoading=!1,this.isShowRecording=()=>this.isRecording,this.showRecording=()=>this.isRecording=!0,this.hideRecording=()=>this.isRecording=!1,this.setShowTooltip=t=>{this.showTooltip=t},this.tooltipText=(()=>{const{isSafari:t}=x();return t?"speechRecognition.tooltip.siri":"speechRecognition.tooltip.general"})(),this.recognition=((t,e,i,o)=>{const r=(()=>{const t=window,e=t.webkitSpeechRecognition||t.SpeechRecognition;if(!e)return;const{forbiddenBrowser:i,isChrome:o,isSafari:r}=x();return i?void 0:o||r?e:void 0})();if(!r)return;const s=new r;let n;return s.interimResults=!1,s.maxAlternatives=1,s.continuous=!1,s.lang=t,s.onstart=()=>{e(),n=setTimeout((()=>{s.stop()}),1e4)},s.onspeechend=()=>{s.stop(),i(),clearTimeout(n)},s.onend=i,s.onresult=t=>{o(t.results[0][0].transcript)},s})(this.locale,(()=>{this.showRecording(),this.setShowTooltip(!1),clearTimeout(this.triggerTooltipStart)}),this.hideRecording,(t=>{this.setSearchQuery(t),this.handleTextSearch()})),this.trackTextSearch=()=>this.vviinnFilterTriggered.emit({kind:this.searchQuery,action:"select",customTrigger:"TPS",isTriggeredByVpsWidget:this.showInWidget}),this.setSearchQuery=t=>{this.searchQuery=t},this.token=void 0,this.locale="de-DE",this.mode="basic",this.showInWidget=!1,this.searchQuery=void 0,this.apiPath="https://api.vviinn.com",this.isLoading=!1,this.isRecording=!1,this.showTooltip=!1}connectedCallback(){this.storeName=this.showInWidget?"widget":"components",this.state=this.showInWidget?s:n,this.token&&(this.state.token=this.token),document.addEventListener("resultsSearchFinished",this.hideLoader)}disconnectedCallback(){document.removeEventListener("resultsSearchFinished",this.hideLoader),clearTimeout(this.triggerTooltipStart),clearTimeout(this.triggerTooltipEnd)}async componentWillLoad(){var t;await d.init({lng:this.locale,fallbackLng:"en",resources:p}),l(this,this.el),!this.showInWidget&&(null===(t=this.searchQuery)||void 0===t?void 0:t.length)>0&&(this.showLoader(),this.vviinnTextSearchStarted.emit({query:this.searchQuery,isTriggeredByVpsWidget:this.showInWidget}),this.trackTextSearch())}imageUploadFinished({detail:t}){this.showInWidget||(this.showLoader(),this.vviinnSearchIdReceived.emit({searchId:t.searchId}))}handleInputChange(t){this.setSearchQuery(t.target.value)}async handleSpeech(){this.isRecording?(this.recognition.stop(),this.hideRecording(),this.setShowTooltip(!1)):(this.recognition.start(),this.setSearchQuery(""),this.triggerTooltipStart=setTimeout((()=>{this.isRecording||(this.setShowTooltip(!0),this.triggerTooltipEnd=setTimeout((()=>{this.setShowTooltip(!1)}),5e3))}),1e3))}async handleTextSearch(){if(this.searchQuery)if(this.trackTextSearch(),this.showInWidget){const{requestId:t}=a.pipe(await c(this.storeName,this.searchQuery),h((()=>null)),(t=>t));this.widgetTextSearchFinished.emit({query:this.searchQuery,requestId:t}),this.vviinnSelectedFiltersReset.emit({isTriggeredByVpsWidget:this.showInWidget})}else this.showLoader(),this.vviinnTextSearchStarted.emit({query:this.searchQuery})}handleKeyPress(t){"Enter"===t.key&&this.handleTextSearch()}render(){return t(o,{exportparts:f},t("div",{class:"text-search-container",part:"text-search-container"},t("input",{class:"text-search-input",part:"text-search-input",type:"text",placeholder:d.t(this.isShowRecording()?"speechRecognition.placeholder":"textSearchPlaceholder"),value:this.searchQuery,onInput:t=>this.handleInputChange(t),onKeyUp:t=>this.handleKeyPress(t)}),"extended"===this.mode&&t("vviinn-vps-button",{token:this.token,locale:this.locale,addStyle:!1,useComponentsStore:!0,apiPath:this.apiPath}),"basic"===this.mode&&t("slot",{name:"vviinn-text-search-actions"}),("extended"===this.mode||this.showInWidget)&&this.recognition&&t("button",{class:"speech-button",part:"speech-button",onClick:()=>this.handleSpeech()},t(g,null),this.isShowRecording()&&t("span",{class:"recording-indicator"})),t("button",{class:"text-search-button",part:"text-search-button",onClick:()=>this.handleTextSearch(),disabled:this.state.loading},this.isShowPreloader()?t("vviinn-preloader",null):t("slot",{name:"vviinn-text-search-icon"},t(b,null)))),this.showTooltip&&t("p",{class:"text-search-tooltip",part:"text-search-tooltip"},d.t(this.tooltipText)))}get el(){return r(this)}};u.style=':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;position:relative;width:100%;}.text-search-container{display:flex;align-items:center;gap:var(--spacing-50);width:100%;height:46px;border:1px solid var(--color-border-02);border-radius:8px;transition:border-color 0.2s;overflow:hidden;box-sizing:border-box}.text-search-container:focus-within{border-color:#8d8d8d}.text-search-input,.text-search-tooltip{font-size:16px;font-style:normal;font-weight:400;font-family:var(--font-family, var(--font-family-base))}.text-search-input{height:100%;padding-left:16px;box-sizing:border-box;border:none;outline:none;overflow:hidden;flex-grow:2;width:150px}.text-search-input::-moz-placeholder{color:#a8a8a8}.text-search-input::placeholder{color:#a8a8a8}.text-search-input:focus,.text-search-input:active{border-color:#8d8d8d}vviinn-vps-button{height:100%}.text-search-button,.speech-button,vviinn-vps-button::part(vviinn-button){border:none;height:100%;display:flex;justify-content:center;align-items:center;transition:background-color 0.2s;cursor:pointer}.speech-button,vviinn-vps-button::part(vviinn-button){padding:0 8px}.text-search-button{width:44px}.upload-button-text{display:contents}.text-search-button{background-color:#f4f4f4}.speech-button{background-color:transparent;position:relative}@keyframes recordingSpeech{0%{background-color:#ff0000;scale:1}100%{background-color:#ff8888;scale:1.5}}.recording-indicator{border-radius:50%;width:8px;height:8px;left:24px;top:24px;background-color:#ff0000;position:absolute;animation:recordingSpeech 1s infinite alternate ease-in-out}@keyframes fade-out{0%{opacity:0}20%{opacity:1}80%{opacity:1}100%{opacity:0;display:none}}.text-search-tooltip{position:absolute;right:0;top:80%;background:#f4f4f4;animation:fade-out 5s forwards;width:-moz-fit-content;width:fit-content;padding:24px;border-radius:8px;border:1px solid #8d8d8d;box-sizing:border-box}.text-search-button:not(:disabled):hover{background-color:#e0e0e0}.text-search-button:disabled{cursor:unset}vviinn-image-selector,::slotted([slot="vviinn-text-search-actions"]){margin:auto 8px}vviinn-preloader{--preloader-size:16px;display:flex;color:#525252}';export{u as vviinn_text_search}
@@ -0,0 +1 @@
1
+ import{r as e,c as r,h as t,H as o,g as i}from"./p-c3953cbf.js";import{t as a,s as l,R as s}from"./p-6832d51f.js";import{s as n,c as d}from"./p-f601d5c0.js";import"./p-f2d58f7d.js";const c=class{constructor(t){e(this,t),this.vviinnFiltersChanged=r(this,"vviinnFiltersChanged",7),this.vviinnSelectedFiltersReset=r(this,"vviinnSelectedFiltersReset",7),this.vviinnFilterTriggered=r(this,"vviinnFilterTriggered",7),this.skipFiltersChanges=e=>e&&!this.showInWidget||!e&&this.showInWidget,this.handleFiltersChanged=({detail:e})=>{const{filters:r,el:t,isTriggeredByVpsWidget:o}=e;t===this.el||this.skipFiltersChanges(o)||(this.requestFilters=r)},this.handleSelectedFiltersReset=({detail:e})=>{this.skipFiltersChanges(e.isTriggeredByVpsWidget)||(this.requestFilters=[])},this.showInWidget=!1,this.filters=[],this.requestFilters=[]}handleSubFilterSelection(e,r){this.requestFilters=a(e,r,this.requestFilters,this.vviinnFilterTriggered,this.vviinnFiltersChanged,this.el,this.showInWidget)}connectedCallback(){this.state=this.showInWidget?n:d,document.addEventListener("vviinnFiltersChanged",this.handleFiltersChanged),document.addEventListener("vviinnSelectedFiltersReset",this.handleSelectedFiltersReset)}disconnectedCallback(){document.removeEventListener("vviinnFiltersChanged",this.handleFiltersChanged),document.removeEventListener("vviinnSelectedFiltersReset",this.handleSelectedFiltersReset)}render(){const e=this.state.dynamicFilters;if(!(null==e?void 0:e.length))return;let r=[];return e.forEach((e=>{"values"in e&&e.values.forEach((({value:t,label:o,active:i})=>{l(this.requestFilters,t,e)&&r.push(s(this.handleSubFilterSelection.bind(this),t,o,i,e,!0,!0))}))})),t(o,{class:{"show-in-widget":this.showInWidget}},r.length>0&&t("ul",{class:"selected-filters-wrapper",part:"selected-filters-list"},r))}get el(){return i(this)}};c.style=':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;}: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;padding-bottom:6px}.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{margin-top:var(--spacing-125);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-100);align-items:center;gap:var(--spacing-25);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{display:flex;align-items:center;justify-content:center;gap:var(--spacing-25)}.filters-more-modal-button>span>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-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}}';export{c as vviinn_selected_filters}