vviinn-widgets 2.220.0 → 2.222.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (117) hide show
  1. package/dist/cjs/{SecondaryActionIcon-Ng84u7-b.js → SecondaryActionIcon-CuNEBTWD.js} +1 -1
  2. package/dist/cjs/{cssUrlHelper-BX9kngtZ.js → cssUrlHelper-B5A2BBm7.js} +1 -1
  3. package/dist/cjs/{index-CvMi8_tX.js → index-BF9aENF8.js} +6 -2
  4. package/dist/cjs/{index-D38ORu31.js → index-BU8FMTXn.js} +3 -0
  5. package/dist/cjs/{index-CBteD3gC.js → index-CP1QUrJT.js} +11 -1
  6. package/dist/cjs/{index-FE9nOqQo.js → index-RlbsyJJk.js} +2 -2
  7. package/dist/cjs/loader.cjs.js +2 -2
  8. package/dist/cjs/{search.store-C6QU_D02.js → search.store-D4WiAMcl.js} +8 -3
  9. package/dist/cjs/vviinn-button_6.cjs.entry.js +13 -13
  10. package/dist/cjs/vviinn-camera_12.cjs.entry.js +219 -115
  11. package/dist/cjs/vviinn-carousel_10.cjs.entry.js +9 -9
  12. package/dist/cjs/vviinn-detected-object_2.cjs.entry.js +2 -2
  13. package/dist/cjs/vviinn-shop-the-look.cjs.entry.js +6 -6
  14. package/dist/cjs/vviinn-text-search.cjs.entry.js +11 -9
  15. package/dist/cjs/vviinn-vps-button.cjs.entry.js +15 -6
  16. package/dist/cjs/vviinn-widgets.cjs.js +2 -2
  17. package/dist/collection/Image/error.js +6 -1
  18. package/dist/collection/components/customized-slots.js +2 -0
  19. package/dist/collection/components/vviinn-icons/icons/DragDropImageIcon.js +2 -0
  20. package/dist/collection/components/vviinn-icons/index.js +1 -0
  21. package/dist/collection/components/vviinn-image-selector/vviinn-image-selector.css +36 -1
  22. package/dist/collection/components/vviinn-image-selector/vviinn-image-selector.js +132 -21
  23. package/dist/collection/components/vviinn-modal/vviinn-modal.js +2 -2
  24. package/dist/collection/components/vviinn-overlay/vviinn-overlay.js +1 -1
  25. package/dist/collection/components/vviinn-overlayed-modal/vviinn-overlayed-modal.js +1 -1
  26. package/dist/collection/components/vviinn-preloader/vviinn-preloader.js +1 -1
  27. package/dist/collection/components/vviinn-privacy-badge/vviinn-privacy-badge.js +1 -1
  28. package/dist/collection/components/vviinn-product-card/vviinn-energy-label/vviinn-energy-label.js +2 -2
  29. package/dist/collection/components/vviinn-results/vviinn-results.js +3 -3
  30. package/dist/collection/components/vviinn-shop-the-look/vviinn-shop-the-look.js +1 -1
  31. package/dist/collection/components/vviinn-skeleton/vviinn-skeleton.js +1 -1
  32. package/dist/collection/components/vviinn-slider/vviinn-slide/vviinn-slide.js +1 -1
  33. package/dist/collection/components/vviinn-slider/vviinn-slider.js +1 -1
  34. package/dist/collection/components/vviinn-suggestions/helpers.js +27 -10
  35. package/dist/collection/components/vviinn-suggestions/render-helpers.js +42 -15
  36. package/dist/collection/components/vviinn-teaser/vviinn-teaser.js +1 -1
  37. package/dist/collection/components/vviinn-text-search/vviinn-text-search.js +27 -5
  38. package/dist/collection/components/vviinn-vpr-button/recommendations-sidebar/recommendations-sidebar.js +3 -3
  39. package/dist/collection/components/vviinn-vpr-button/vviinn-vpr-button.js +1 -1
  40. package/dist/collection/components/vviinn-vps-button/vviinn-vps-button.js +37 -4
  41. package/dist/collection/components/vviinn-vps-widget/vviinn-vps-widget.css +35 -1
  42. package/dist/collection/components/vviinn-vps-widget/vviinn-vps-widget.js +37 -14
  43. package/dist/collection/cssParts/index.js +2 -0
  44. package/dist/collection/dom/index.js +7 -0
  45. package/dist/collection/helpers/dragAndDrop/parseDroppedFile.js +2 -0
  46. package/dist/collection/locale/resources.js +4 -2
  47. package/dist/esm/{SecondaryActionIcon-FWFzrhba.js → SecondaryActionIcon-D4f3aMUD.js} +1 -1
  48. package/dist/esm/{cssUrlHelper-DsQD_dY6.js → cssUrlHelper-Byz4s-MD.js} +1 -1
  49. package/dist/esm/{index-RkvPN2Rk.js → index-B89nCb_F.js} +3 -0
  50. package/dist/esm/{index-BtnjaTty.js → index-BCrstDkj.js} +6 -2
  51. package/dist/esm/{index-OsoUj2Au.js → index-C1-PYhS4.js} +11 -2
  52. package/dist/esm/{index-ChtanA0O.js → index-CEzGPs5u.js} +2 -2
  53. package/dist/esm/loader.js +3 -3
  54. package/dist/esm/{search.store-BVRhMpHA.js → search.store-Cgs5icgA.js} +8 -3
  55. package/dist/esm/vviinn-button_6.entry.js +13 -13
  56. package/dist/esm/vviinn-camera_12.entry.js +219 -115
  57. package/dist/esm/vviinn-carousel_10.entry.js +9 -9
  58. package/dist/esm/vviinn-detected-object_2.entry.js +2 -2
  59. package/dist/esm/vviinn-shop-the-look.entry.js +6 -6
  60. package/dist/esm/vviinn-text-search.entry.js +11 -9
  61. package/dist/esm/vviinn-vps-button.entry.js +15 -6
  62. package/dist/esm/vviinn-widgets.js +3 -3
  63. package/dist/types/components/vviinn-icons/icons/DragDropImageIcon.d.ts +1 -0
  64. package/dist/types/components/vviinn-icons/index.d.ts +1 -0
  65. package/dist/types/components/vviinn-image-selector/vviinn-image-selector.d.ts +11 -0
  66. package/dist/types/components/vviinn-suggestions/helpers.d.ts +1 -0
  67. package/dist/types/components/vviinn-text-search/vviinn-text-search.d.ts +2 -0
  68. package/dist/types/components/vviinn-vps-button/vviinn-vps-button.d.ts +6 -0
  69. package/dist/types/components/vviinn-vps-widget/vviinn-vps-widget.d.ts +2 -0
  70. package/dist/types/components.d.ts +32 -0
  71. package/dist/types/dom/index.d.ts +1 -0
  72. package/dist/types/helpers/dragAndDrop/parseDroppedFile.d.ts +2 -0
  73. package/dist/vviinn-widgets/p-0b7e8e2e.entry.js +1 -0
  74. package/dist/vviinn-widgets/{p-a8d88d55.entry.js → p-27b41f88.entry.js} +1 -1
  75. package/dist/vviinn-widgets/p-7411202d.entry.js +1 -0
  76. package/dist/vviinn-widgets/p-818a1e53.entry.js +1 -0
  77. package/dist/vviinn-widgets/{p-CU3f7I7a.js → p-B246LK7U.js} +1 -1
  78. package/dist/vviinn-widgets/{p-RkvPN2Rk.js → p-B89nCb_F.js} +1 -1
  79. package/dist/vviinn-widgets/p-BadZr0hq.js +1 -0
  80. package/dist/vviinn-widgets/{p-D3wRLf2J.js → p-BfTXDLup.js} +1 -1
  81. package/dist/vviinn-widgets/p-Bq5Hj7Kz.js +1 -0
  82. package/{www/build/p-CZFFW_Cj.js → dist/vviinn-widgets/p-Cxd6yzhY.js} +1 -1
  83. package/dist/vviinn-widgets/{p-6vxKTHCE.js → p-DvD16Fp_.js} +1 -1
  84. package/{www/build/p-a145a231.entry.js → dist/vviinn-widgets/p-c1eac87b.entry.js} +1 -1
  85. package/dist/vviinn-widgets/p-df4365fb.entry.js +1 -0
  86. package/{www/build/p-1888506e.entry.js → dist/vviinn-widgets/p-df9a1d66.entry.js} +1 -1
  87. package/dist/vviinn-widgets/vviinn-widgets.esm.js +1 -1
  88. package/package.json +1 -2
  89. package/www/build/p-0b7e8e2e.entry.js +1 -0
  90. package/www/build/{p-a8d88d55.entry.js → p-27b41f88.entry.js} +1 -1
  91. package/www/build/p-7411202d.entry.js +1 -0
  92. package/www/build/p-818a1e53.entry.js +1 -0
  93. package/www/build/{p-CU3f7I7a.js → p-B246LK7U.js} +1 -1
  94. package/www/build/{p-RkvPN2Rk.js → p-B89nCb_F.js} +1 -1
  95. package/www/build/p-BadZr0hq.js +1 -0
  96. package/www/build/{p-D3wRLf2J.js → p-BfTXDLup.js} +1 -1
  97. package/www/build/p-Bq5Hj7Kz.js +1 -0
  98. package/{dist/vviinn-widgets/p-CZFFW_Cj.js → www/build/p-Cxd6yzhY.js} +1 -1
  99. package/www/build/{p-6vxKTHCE.js → p-DvD16Fp_.js} +1 -1
  100. package/{dist/vviinn-widgets/p-a145a231.entry.js → www/build/p-c1eac87b.entry.js} +1 -1
  101. package/www/build/p-df4365fb.entry.js +1 -0
  102. package/{dist/vviinn-widgets/p-1888506e.entry.js → www/build/p-df9a1d66.entry.js} +1 -1
  103. package/www/build/{p-1f41ab53.js → p-e969c76d.js} +1 -1
  104. package/www/build/vviinn-widgets.esm.js +1 -1
  105. package/www/index.html +1 -1
  106. package/dist/vviinn-widgets/p-55582bb6.entry.js +0 -1
  107. package/dist/vviinn-widgets/p-773cdbb0.entry.js +0 -1
  108. package/dist/vviinn-widgets/p-7f9e1cff.entry.js +0 -1
  109. package/dist/vviinn-widgets/p-CPTOq59a.js +0 -1
  110. package/dist/vviinn-widgets/p-DKHkeCw7.js +0 -1
  111. package/dist/vviinn-widgets/p-ffbd1062.entry.js +0 -1
  112. package/www/build/p-55582bb6.entry.js +0 -1
  113. package/www/build/p-773cdbb0.entry.js +0 -1
  114. package/www/build/p-7f9e1cff.entry.js +0 -1
  115. package/www/build/p-CPTOq59a.js +0 -1
  116. package/www/build/p-DKHkeCw7.js +0 -1
  117. package/www/build/p-ffbd1062.entry.js +0 -1
@@ -1,15 +1,15 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-D38ORu31.js');
4
- var search_store = require('./search.store-C6QU_D02.js');
3
+ var index = require('./index-BU8FMTXn.js');
4
+ var search_store = require('./search.store-D4WiAMcl.js');
5
5
  var Rectangle = require('./Rectangle-7dF6_xf3.js');
6
6
  var store = require('./store-jPZ4ROqV.js');
7
- var index$1 = require('./index-FE9nOqQo.js');
7
+ var index$1 = require('./index-RlbsyJJk.js');
8
8
  var constants = require('./constants-BlwqMvns.js');
9
- var index$2 = require('./index-CBteD3gC.js');
10
- var index$3 = require('./index-CvMi8_tX.js');
9
+ var index$2 = require('./index-CP1QUrJT.js');
10
+ var index$3 = require('./index-BF9aENF8.js');
11
11
  var swiperElement = require('./swiper-element-DjtzojCR.js');
12
- var cssUrlHelper = require('./cssUrlHelper-BX9kngtZ.js');
12
+ var cssUrlHelper = require('./cssUrlHelper-B5A2BBm7.js');
13
13
  var openProductLink = require('./openProductLink-B3cy6uw_.js');
14
14
 
15
15
  const BasketIcon = () => (index.h("svg", { width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg" },
@@ -604,9 +604,9 @@ const VviinnEnergyLabel = class {
604
604
  return store.instance.t("energyLabel.iconAlt");
605
605
  }
606
606
  render() {
607
- return (index.h(index.Host, { key: 'f311f7c89f27a7dd90a8198284b179fe6e04cb3f', class: {
607
+ return (index.h(index.Host, { key: '9a53d56bb0772e1118fc4f5cda718e9b29adaf24', class: {
608
608
  hidden: !this.classIconUrls && !this.productType && !this.classDataSheetUrl,
609
- }, exportparts: index$3.energyLabelParts }, index.h("div", { key: 'd20b22eaca0f7121a09f20e9a1a8e16ae8c77a16', class: "container", part: "energy-label-container" }, !!this.classIconUrls && (index.h("img", { key: '4551fc562d643b825ff489ebd4fcf51812479862', class: "class-label-icon", part: "energy-label-icon", src: this.classIconUrls[this.iconDirection], alt: this.getEnergyIconAltText() })), (this.productType || this.classDataSheetUrl) && (index.h("div", { key: '3260e0e590ed46c72daf3b06075a153c23ed0c51', class: "info-container" }, this.productType && (index.h("span", { key: 'be310b1e00cc1b279d58ce2d56cee9803622f01b', class: "product-type", part: "energy-label-product-type" }, this.productType)), this.classDataSheetUrl && (index.h("a", { key: '2e4f3d3985d11d7b2bba729b6c1816af866cafdc', class: "data-sheet-link", part: "energy-label-data-sheet-link", href: this.classDataSheetUrl, target: "_blank", rel: "noopener noreferrer" }, index.h("slot", { key: 'ca584e501471e5d6bc9c76f7d3767910ed645016', name: "vviinn-energy-label-data-sheet-text" }, store.instance.t("energyLabel.dataSheetText")))))))));
609
+ }, exportparts: index$3.energyLabelParts }, index.h("div", { key: '73fa2bd6c113c6fc3f1834b630403271fb168da4', class: "container", part: "energy-label-container" }, !!this.classIconUrls && (index.h("img", { key: '3737b12a4aab1f06205186d9ffd7642a1ed527c0', class: "class-label-icon", part: "energy-label-icon", src: this.classIconUrls[this.iconDirection], alt: this.getEnergyIconAltText() })), (this.productType || this.classDataSheetUrl) && (index.h("div", { key: '45c195a6b7bcd3fbf69d330ae22e6666519b54e6', class: "info-container" }, this.productType && (index.h("span", { key: '52725161ec90599fadb046ab396194b1d83b3bb1', class: "product-type", part: "energy-label-product-type" }, this.productType)), this.classDataSheetUrl && (index.h("a", { key: '31efc6ee893e9721cf58a6387b4568832c81ddee', class: "data-sheet-link", part: "energy-label-data-sheet-link", href: this.classDataSheetUrl, target: "_blank", rel: "noopener noreferrer" }, index.h("slot", { key: 'ece6066ee47b41db4b7dfd43a50ad24210e0d037', name: "vviinn-energy-label-data-sheet-text" }, store.instance.t("energyLabel.dataSheetText")))))))));
610
610
  }
611
611
  get el() { return index.getElement(this); }
612
612
  };
@@ -2110,7 +2110,7 @@ const VviinnSkeleton = class {
2110
2110
  this.halfWidth = false;
2111
2111
  }
2112
2112
  render() {
2113
- return (index.h(index.Host, { key: '149fe2396c333fff4ff01e607a8f1b238ac12bdb' }, index.h("div", { key: '6a9e376f9955458af0c30c9df01ea7c2b8849196', class: {
2113
+ return (index.h(index.Host, { key: '762b28b1619a152ca13d7f71c23ede1b8182bf8a' }, index.h("div", { key: '4509aa114dddccfaa65a5bb593f1dfecddb054ba', class: {
2114
2114
  "vviinn-skeleton": true,
2115
2115
  }, style: {
2116
2116
  height: this.height ? `${this.height.toString()}px` : "100%",
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-D38ORu31.js');
3
+ var index = require('./index-BU8FMTXn.js');
4
4
  var Rectangle = require('./Rectangle-7dF6_xf3.js');
5
5
  var store = require('./store-jPZ4ROqV.js');
6
6
 
@@ -57,7 +57,7 @@ const VviinnPreloader = class {
57
57
  index.registerInstance(this, hostRef);
58
58
  }
59
59
  render() {
60
- return index.h(index.Host, { key: 'd8904f0c7dd8aebb13da4d44e2c5422d8d31667d' });
60
+ return index.h(index.Host, { key: '9915424347748222693eb70e98216b2d2fe6969b' });
61
61
  }
62
62
  };
63
63
  VviinnPreloader.style = vviinnPreloaderCss;
@@ -1,14 +1,14 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-D38ORu31.js');
3
+ var index = require('./index-BU8FMTXn.js');
4
4
  var Rectangle = require('./Rectangle-7dF6_xf3.js');
5
5
  var cropperUtils = require('./cropperUtils-DCDOLeBS.js');
6
6
  var swiperElement = require('./swiper-element-DjtzojCR.js');
7
- var search_store = require('./search.store-C6QU_D02.js');
8
- var SecondaryActionIcon = require('./SecondaryActionIcon-Ng84u7-b.js');
9
- var index$1 = require('./index-CvMi8_tX.js');
7
+ var search_store = require('./search.store-D4WiAMcl.js');
8
+ var SecondaryActionIcon = require('./SecondaryActionIcon-CuNEBTWD.js');
9
+ var index$1 = require('./index-BF9aENF8.js');
10
10
  var store = require('./store-jPZ4ROqV.js');
11
- var cssUrlHelper = require('./cssUrlHelper-BX9kngtZ.js');
11
+ var cssUrlHelper = require('./cssUrlHelper-B5A2BBm7.js');
12
12
  var openProductLink = require('./openProductLink-B3cy6uw_.js');
13
13
 
14
14
  const UploadActionIconVariant = () => (index.h("svg", { xmlns: "http://www.w3.org/2000/svg", width: "24", height: "24", viewBox: "0 0 24 24", fill: "none" },
@@ -1380,7 +1380,7 @@ const VviinnShopTheLook = class {
1380
1380
  }, TIMING.SEARCH_DEBOUNCE_DELAY);
1381
1381
  }
1382
1382
  render() {
1383
- return (index.h(index.Host, { key: '4734dcdc0c1a7d206970c8baf08e257077e952f9', exportparts: index$1.shopTheLookParts }, cssUrlHelper.renderExternalCSS(this.cssUrl), index.h("div", { key: '129438fdcf114bd903ad6888287e060e5fdc3948', class: `shop-the-look-container ${this.showModal ? "modal-open" : ""} ${this.showCropper ? "with-cropper" : ""} widget-style-${this.widgetStyle}` }, index.h("div", { key: '04e037ad029930bd366920ca79e0ae7becebaf2c', class: "main-content" }, this.renderSwiperWrapper(), this.showLoadingSpinner && (index.h("div", { key: '18ca739ed4cf0b1167fd8976fdab0c5e6e0ee410', class: "search-loader" }, index.h("vviinn-preloader", { key: 'efd47991fa32bf315c4985f98f0c14ccbf6f5a72' })))), this.renderModalWrapper(), index.h("div", { key: '332adbe2912fb61f82f9cf0488a13f7c9a0a405c', class: "actions-container", part: "shop-the-look-actions-container" }, this.uploadMode && (index.h("div", { key: '55c748ffeded24b97801683454f9a1b8675f6ed6', class: "upload-button-container" }, index.h("button", { key: '7cfa399b98e254bd12bff706cf6c4bea42dce684', class: "upload-button", part: "shop-the-look-upload-button", onClick: () => { var _a; return (_a = this.fileInput) === null || _a === void 0 ? void 0 : _a.click(); }, disabled: this.showLoadingSpinner }, index.h("span", { key: '48b59d82816a50b6f98bbf68c8a6849679437852', class: "upload-button-icon", part: "shop-the-look-upload-button-icon" }, index.h("slot", { key: '14f12cf7f44a39ba4f1d9cbecb6fa3558ae5fd5d', name: "vviinn-image-upload-icon" }, index.h(UploadActionIconVariant, { key: '1937cea6010c0a21182e88f365f188a65b0f3a70' }))), index.h("span", { key: 'd62a5ee1ac2c17a663dda26cb0debd83821510c0', class: "upload-button-text", part: "shop-the-look-upload-button-text" }, index.h("slot", { key: '42a4910a590a2b258dccb2a3ace5da8f60099791', name: "upload-button-text" }))), index.h("input", { key: '242e2ed2e319428ebde6dff7df8c37b60d33a8f1', type: "file", class: "visually-hidden", accept: search_store.getAcceptableFileFormats(), onChange: this.handleFileUpload, ref: (el) => (this.fileInput = el) }))), this.showNavigation() &&
1383
+ return (index.h(index.Host, { key: '810afce8775ce69f39d3ddb19dbfafc081f90b95', exportparts: index$1.shopTheLookParts }, cssUrlHelper.renderExternalCSS(this.cssUrl), index.h("div", { key: 'ab678e97ff5878b7d68fb63fa6ad0344f55e56eb', class: `shop-the-look-container ${this.showModal ? "modal-open" : ""} ${this.showCropper ? "with-cropper" : ""} widget-style-${this.widgetStyle}` }, index.h("div", { key: '78fe26aa58f8c8da8a49a0a1f20d27025de4270e', class: "main-content" }, this.renderSwiperWrapper(), this.showLoadingSpinner && (index.h("div", { key: '02ee522ea4f2f60a5becae75834123f7f2059d31', class: "search-loader" }, index.h("vviinn-preloader", { key: '209d5b1caf48f57ef4ab0f143e77c83e9547403d' })))), this.renderModalWrapper(), index.h("div", { key: '8a92411b196592578c1811e88b20b5c79d955751', class: "actions-container", part: "shop-the-look-actions-container" }, this.uploadMode && (index.h("div", { key: '283494b6ed7e2279ebc12ba00bff48679bd84515', class: "upload-button-container" }, index.h("button", { key: '6843b123419ab70e75c38d2ef1fc6f95724198f6', class: "upload-button", part: "shop-the-look-upload-button", onClick: () => { var _a; return (_a = this.fileInput) === null || _a === void 0 ? void 0 : _a.click(); }, disabled: this.showLoadingSpinner }, index.h("span", { key: '921d7b5487c68d1e5f3095415d7d195a76de5a53', class: "upload-button-icon", part: "shop-the-look-upload-button-icon" }, index.h("slot", { key: 'c5a149403be172d546d34e4271a04b6bf7184cf2', name: "vviinn-image-upload-icon" }, index.h(UploadActionIconVariant, { key: '363804dec9e24cf917d8da7244285f14dd874e61' }))), index.h("span", { key: 'fde616b05fc029c9cc45e063483f0401efdf2ba5', class: "upload-button-text", part: "shop-the-look-upload-button-text" }, index.h("slot", { key: '756831c7b944e0f651b7907bf522375a35acb247', name: "upload-button-text" }))), index.h("input", { key: '6489e9ccae6426f4a96d57c2bec5b9c41b77916b', type: "file", class: "visually-hidden", accept: search_store.getAcceptableFileFormats(), onChange: this.handleFileUpload, ref: (el) => (this.fileInput = el) }))), this.showNavigation() &&
1384
1384
  renderNavigation(this.swiperActiveIndex, this.totalImages, this.handleNavigatePrev, this.handleNavigateNext)))));
1385
1385
  }
1386
1386
  get el() { return index.getElement(this); }
@@ -1,11 +1,11 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-D38ORu31.js');
3
+ var index = require('./index-BU8FMTXn.js');
4
4
  var Rectangle = require('./Rectangle-7dF6_xf3.js');
5
- var search_store = require('./search.store-C6QU_D02.js');
6
- var index$2 = require('./index-CBteD3gC.js');
5
+ var search_store = require('./search.store-D4WiAMcl.js');
6
+ var index$2 = require('./index-CP1QUrJT.js');
7
7
  var store = require('./store-jPZ4ROqV.js');
8
- var index$1 = require('./index-CvMi8_tX.js');
8
+ var index$1 = require('./index-BF9aENF8.js');
9
9
  var resultsPageUrl = require('./resultsPageUrl-Cki7CFQz.js');
10
10
 
11
11
  const TextSearchIcon = () => (index.h("svg", { width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg" },
@@ -185,6 +185,8 @@ const VviinnTextSearch = class {
185
185
  this.placeholder = "";
186
186
  /** Show auto-suggest dropdown with search completions */
187
187
  this.autoSuggestShow = true;
188
+ /** Accept image files dropped from the OS onto the upload button (desktop only) */
189
+ this.useDragAndDrop = false;
188
190
  /** True, when used inside the widget */
189
191
  /** @internal */
190
192
  this.showInWidget = false;
@@ -408,7 +410,7 @@ const VviinnTextSearch = class {
408
410
  }
409
411
  }
410
412
  render() {
411
- return (index.h(index.Host, { key: '0ac6e28c6631ea47c8e7c47b63fa2eb3af500087', exportparts: `${index$1.searchBarParts}, ${index$1.searchModalFirstScreenParts}` }, index.h("div", { key: '4b1d8edd675e91f4abd1a5933a1449b721a571c1', class: "text-search-container", part: "text-search-container" }, index.h("input", Object.assign({ key: '13e356c598ada0b70e9b5c99531563dae6c334b5', class: "text-search-input", part: "text-search-input", type: "text", placeholder: this.getPlaceholderText(), value: this.state.textSearchQuery || "", onInput: (event) => this.handleInputChange(event), onKeyDown: this.handleKeyDown, onBlur: this.autoSuggestShow ? this.hideSuggestions : undefined }, (this.autoSuggestShow && {
413
+ return (index.h(index.Host, { key: '1a6f096832c3cf72d92192e45633a4232ddcd16d', exportparts: `${index$1.searchBarParts}, ${index$1.searchModalFirstScreenParts}` }, index.h("div", { key: '7aa3981060a964959c714bf63bcc15d0e0c63250', class: "text-search-container", part: "text-search-container" }, index.h("input", Object.assign({ key: '21f53521ba84845aaaacc3a6ee80c42ebe1886e1', class: "text-search-input", part: "text-search-input", type: "text", placeholder: this.getPlaceholderText(), value: this.state.textSearchQuery || "", onInput: (event) => this.handleInputChange(event), onKeyDown: this.handleKeyDown, onBlur: this.autoSuggestShow ? this.hideSuggestions : undefined }, (this.autoSuggestShow && {
412
414
  role: "combobox",
413
415
  "aria-autocomplete": "list",
414
416
  "aria-expanded": this.autoSuggestCompletions.length > 0 &&
@@ -419,11 +421,11 @@ const VviinnTextSearch = class {
419
421
  "aria-activedescendant": this.activeSuggestionIndex >= 0
420
422
  ? `suggestion-${this.activeSuggestionIndex}`
421
423
  : undefined,
422
- }))), this.mode === "extended" && (index.h("vviinn-vps-button", Object.assign({ key: 'c3d89667ac1eaa2682a4e3c68481b06f9479e0d6', token: this.token, locale: this.locale, apiPath: this.apiPath, addStyle: false, showResultsInModal: false, resultsPageUrl: this.resultsPageUrl, resultsPageParams: this.resultsPageParams }, (this.exampleImageSource && {
424
+ }))), this.mode === "extended" && (index.h("vviinn-vps-button", Object.assign({ key: '5c30334834e202f2961c8b31b722755254e65509', token: this.token, locale: this.locale, apiPath: this.apiPath, addStyle: false, showResultsInModal: false, resultsPageUrl: this.resultsPageUrl, resultsPageParams: this.resultsPageParams }, (this.exampleImageSource && {
423
425
  exampleImageSource: this.exampleImageSource,
424
- }), (this.cssUrl != null && { cssUrl: this.cssUrl }), (this.visualSearchMode && { mode: this.visualSearchMode }), { parentSlots: this.slots }))), this.mode === "basic" && (index.h("slot", { key: 'c900b67d3dcffb64f3ca513c0475f64eb72ef495', name: "vviinn-text-search-actions" })), (this.mode === "extended" || this.showInWidget) &&
425
- this.recognition && (index.h("button", { key: '99f75f77a43f618a45bd06124f283a5b97e422c3', class: "speech-button", part: "speech-button", "aria-label": store.instance.t("a11y.speechButton"), onClick: this.handleSpeech, onKeyDown: (event) => this.handleButtonKeyDown(event, this.handleSpeech) }, index.h(MicIcon, { key: 'ab0676502accecbb25377737a595550ae96b19cc' }), this.isShowRecording() && (index.h("span", { key: 'ece24c838cabc64e9b045c5eb97bc47d7bd932ba', class: "recording-indicator" })))), index.h("button", { key: 'e986f20a8e3d02f38e58c6a6e6946795d6d29875', class: "text-search-button", part: "text-search-button", onClick: () => this.handleTextSearch(), onKeyDown: (event) => this.handleButtonKeyDown(event, this.handleTextSearch), disabled: this.state.searchStatus === "loading", "aria-label": store.instance.t("a11y.textSearchButton") }, this.isShowPreloader() ? (index.h("vviinn-preloader", null)) : (index.h("slot", { name: "vviinn-text-search-icon" }, index.h(TextSearchIcon, null))))), this.autoSuggestShow &&
426
- renderSuggestions(this.autoSuggestCompletions, this.state.textSearchQuery, this.activeSuggestionIndex, this.selectSuggestion), this.showTooltip && (index.h("p", { key: '470a0c67f9f310f775566a4e581be3dbb7a7cb95', class: "text-search-tooltip", part: "text-search-tooltip" }, store.instance.t(this.tooltipText)))));
426
+ }), (this.cssUrl != null && { cssUrl: this.cssUrl }), (this.visualSearchMode && { mode: this.visualSearchMode }), { useDragAndDrop: this.useDragAndDrop, parentSlots: this.slots }))), this.mode === "basic" && (index.h("slot", { key: 'a5ab212b55f258c70fa0fbee172753614ef9c363', name: "vviinn-text-search-actions" })), (this.mode === "extended" || this.showInWidget) &&
427
+ this.recognition && (index.h("button", { key: '251ac94cac8ae50af09ea450f66348faad27f347', class: "speech-button", part: "speech-button", "aria-label": store.instance.t("a11y.speechButton"), onClick: this.handleSpeech, onKeyDown: (event) => this.handleButtonKeyDown(event, this.handleSpeech) }, index.h(MicIcon, { key: '3ee272b4696a78dbe8c8c4ecc915c3704fecb7a3' }), this.isShowRecording() && (index.h("span", { key: 'a0b2bcaeff31df8d27a2645da02dc00a78940735', class: "recording-indicator" })))), index.h("button", { key: '1639827b452ff09835eeee31736cd86d80036681', class: "text-search-button", part: "text-search-button", onClick: () => this.handleTextSearch(), onKeyDown: (event) => this.handleButtonKeyDown(event, this.handleTextSearch), disabled: this.state.searchStatus === "loading", "aria-label": store.instance.t("a11y.textSearchButton") }, this.isShowPreloader() ? (index.h("vviinn-preloader", null)) : (index.h("slot", { name: "vviinn-text-search-icon" }, index.h(TextSearchIcon, null))))), this.autoSuggestShow &&
428
+ renderSuggestions(this.autoSuggestCompletions, this.state.textSearchQuery, this.activeSuggestionIndex, this.selectSuggestion), this.showTooltip && (index.h("p", { key: '5cdc28a630f1d1e92444382e5c13da889b617e15', class: "text-search-tooltip", part: "text-search-tooltip" }, store.instance.t(this.tooltipText)))));
427
429
  }
428
430
  get el() { return index.getElement(this); }
429
431
  };
@@ -1,11 +1,11 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-D38ORu31.js');
4
- var index$2 = require('./index-CBteD3gC.js');
3
+ var index = require('./index-BU8FMTXn.js');
4
+ var index$2 = require('./index-CP1QUrJT.js');
5
5
  var constants$1 = require('./constants-DHaugTOE.js');
6
6
  var constants = require('./constants-BlwqMvns.js');
7
- var index$1 = require('./index-CvMi8_tX.js');
8
- var cssUrlHelper = require('./cssUrlHelper-BX9kngtZ.js');
7
+ var index$1 = require('./index-BF9aENF8.js');
8
+ var cssUrlHelper = require('./cssUrlHelper-B5A2BBm7.js');
9
9
  var store = require('./store-jPZ4ROqV.js');
10
10
 
11
11
  const SearchModalCameraIcon = () => (index.h("svg", { xmlns: "http://www.w3.org/2000/svg", width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", "aria-hidden": "true" },
@@ -63,6 +63,8 @@ const VviinnVpsButton = class {
63
63
  this.imageResolutionWidth = constants.SEARCH_WIDGET_IMAGE_RESOLUTION_WIDTH;
64
64
  /** Show multiple images: swiper on mobile, hover on desktop in product cards */
65
65
  this.showMultipleImages = false;
66
+ /** Accept image files dropped from the OS onto the upload button (desktop only) */
67
+ this.useDragAndDrop = false;
66
68
  /** Example image source */
67
69
  this.exampleImageSource = constants$1.DEFAULT_EXAMPLE_IMAGE;
68
70
  /** Show the text search */
@@ -89,6 +91,12 @@ const VviinnVpsButton = class {
89
91
  this.parentSlots = [];
90
92
  this.buttonPressed = false;
91
93
  this.slots = [];
94
+ // True when the consumer projects real content into the default slot (custom
95
+ // trigger). Whitespace-only text and named-slot children don't count, so
96
+ // formatting newlines around named slots can't suppress the fallback icon.
97
+ // @State + the default slot's slotchange keep this reactive to light-DOM that
98
+ // is projected/removed after load (e.g. deferred hydration, async injection).
99
+ this.hasCustomTrigger = false;
92
100
  this.allSlots = () => [...this.parentSlots, ...this.slots];
93
101
  this.handleActivation = () => {
94
102
  this.buttonPressed = true;
@@ -116,6 +124,7 @@ const VviinnVpsButton = class {
116
124
  async componentWillLoad() {
117
125
  await index$1.initializeLocale(this.locale);
118
126
  this.slots = index$2.findSlotElements(this.el);
127
+ this.hasCustomTrigger = index$2.hasDefaultSlotContent(this.el);
119
128
  }
120
129
  componentDidLoad() {
121
130
  this.replaceSlotsContent();
@@ -155,8 +164,8 @@ const VviinnVpsButton = class {
155
164
  }
156
165
  render() {
157
166
  const { ariaLabel, buttonIcon } = this.getButtonConfig();
158
- return (index.h(index.Host, { key: '2d9e0e9860039f521305b3f25da2a6aa5fee5e37', role: this.buttonPressed ? undefined : "button", "aria-label": this.buttonPressed ? undefined : ariaLabel, exportparts: `vviinn-button, ${index$1.searchModalFirstScreenParts}` }, cssUrlHelper.renderExternalCSS(this.cssUrl), index.h("vviinn-button", { key: '33bf0113ab55a6bf91cf25181fe8d863af84d264', addStyle: this.addStyle, part: "vviinn-button", tabindex: this.buttonPressed ? undefined : "0", onClick: this.buttonPressed ? undefined : this.handleActivation, onKeyDown: this.buttonPressed ? undefined : this.handleKeyDown }, index.h("slot", { key: '922d706ce5bf9418c3747fc69bf7920d2ad53c8b' }, buttonIcon)), index$2.SlotSkeleton("search"), index.h("vviinn-vps-widget", { key: 'd6735e7ff8e3ca9dca10f5546d7c4f9f97a8ffa7', mode: this.mode, "currency-sign": this.currencySign, token: this.token, locale: this.locale, numberLocale: this.numberLocale, apiPath: this.apiPath, pricePrefix: this.pricePrefix, campaignId: this.campaignId, campaignIdTextSearch: this.campaignIdTextSearch, campaignIdVisualSearch: this.campaignIdVisualSearch, showingInButton: true, buttonPressed: this.buttonPressed, resetVpsButton: this.resetButton, buttonElementId: this.el.id, active: this.buttonPressed &&
159
- (this.mode === "modal" || this.mode === "camera"), excluded: this.excluded, productDetailsNewTab: this.productDetailsNewTab, productDetailsRedirect: this.productDetailsRedirect, imageResolutionWidth: this.imageResolutionWidth, showMultipleImages: this.showMultipleImages, exampleImageSource: this.exampleImageSource, textSearchShow: this.textSearchShow, autoSuggestShow: this.autoSuggestShow, addToBasketShow: this.addToBasketShow, addPriceContainer: this.addPriceContainer, showIntervalInputs: this.showIntervalInputs, replaceSlotsContentInButton: this.replaceSlotsContent.bind(this), oneClickDiscoveryMode: this.oneClickDiscoveryMode, oneClickDiscoveryCampaigns: this.oneClickDiscoveryCampaigns, favoriteShow: this.favoriteShow, showResultsInModal: this.showResultsInModal, resultsPageUrl: this.resultsPageUrl, resultsPageParams: this.resultsPageParams, parentSlots: [...this.parentSlots, ...this.slots], cssUrl: this.cssUrl })));
167
+ return (index.h(index.Host, { key: '47a83c95c23f2450b3f298343577072c91d871e9', role: this.buttonPressed ? undefined : "button", "aria-label": this.buttonPressed ? undefined : ariaLabel, exportparts: `vviinn-button, ${index$1.searchModalFirstScreenParts}` }, cssUrlHelper.renderExternalCSS(this.cssUrl), index.h("vviinn-button", { key: '42131f699f2808187d108e0089a3f1c423bffdeb', addStyle: this.addStyle, part: "vviinn-button", tabindex: this.buttonPressed ? undefined : "0", onClick: this.buttonPressed ? undefined : this.handleActivation, onKeyDown: this.buttonPressed ? undefined : this.handleKeyDown }, index.h("span", { key: '901c041c6a574f74276e8d345f228d7095b2be92', style: { display: this.hasCustomTrigger ? "contents" : "none" } }, index.h("slot", { key: '01dbb14f71554ccb92a7bd041be220d9fb4d6e1b', onSlotchange: () => (this.hasCustomTrigger = index$2.hasDefaultSlotContent(this.el)) })), !this.hasCustomTrigger && buttonIcon), index$2.SlotSkeleton("search"), index.h("vviinn-vps-widget", { key: '7ab197dbf91b01d64fbdf1aac1c5d6a88134c7bb', mode: this.mode, "currency-sign": this.currencySign, token: this.token, locale: this.locale, numberLocale: this.numberLocale, apiPath: this.apiPath, pricePrefix: this.pricePrefix, campaignId: this.campaignId, campaignIdTextSearch: this.campaignIdTextSearch, campaignIdVisualSearch: this.campaignIdVisualSearch, showingInButton: true, buttonPressed: this.buttonPressed, resetVpsButton: this.resetButton, buttonElementId: this.el.id, active: this.buttonPressed &&
168
+ (this.mode === "modal" || this.mode === "camera"), excluded: this.excluded, productDetailsNewTab: this.productDetailsNewTab, productDetailsRedirect: this.productDetailsRedirect, imageResolutionWidth: this.imageResolutionWidth, showMultipleImages: this.showMultipleImages, useDragAndDrop: this.useDragAndDrop, exampleImageSource: this.exampleImageSource, textSearchShow: this.textSearchShow, autoSuggestShow: this.autoSuggestShow, addToBasketShow: this.addToBasketShow, addPriceContainer: this.addPriceContainer, showIntervalInputs: this.showIntervalInputs, replaceSlotsContentInButton: this.replaceSlotsContent.bind(this), oneClickDiscoveryMode: this.oneClickDiscoveryMode, oneClickDiscoveryCampaigns: this.oneClickDiscoveryCampaigns, favoriteShow: this.favoriteShow, showResultsInModal: this.showResultsInModal, resultsPageUrl: this.resultsPageUrl, resultsPageParams: this.resultsPageParams, parentSlots: [...this.parentSlots, ...this.slots], cssUrl: this.cssUrl })));
160
169
  }
161
170
  get el() { return index.getElement(this); }
162
171
  static get watchers() { return {
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-D38ORu31.js');
3
+ var index = require('./index-BU8FMTXn.js');
4
4
  var appGlobals = require('./app-globals-DK9R4CCS.js');
5
5
 
6
6
  var _documentCurrentScript = typeof document !== 'undefined' ? document.currentScript : null;
@@ -19,7 +19,7 @@ var patchBrowser = () => {
19
19
 
20
20
  patchBrowser().then(async (options) => {
21
21
  await appGlobals.globalScripts();
22
- return index.bootstrapLazy(JSON.parse("[[\"vviinn-detected-object_2.cjs\",[[1,\"vviinn-detected-object\",{\"detectedObject\":[16,\"detected-object\"],\"selectedDetectedObject\":[16,\"selected-detected-object\"],\"basicEventData\":[16,\"basic-event-data\"],\"imageBounds\":[16,\"image-bounds\"],\"showInWidget\":[4,\"show-in-widget\"],\"position\":[32]}],[1,\"vviinn-preloader\"]]],[\"vviinn-carousel_10.cjs\",[[1,\"vviinn-vpr-widget\",{\"token\":[1],\"apiPath\":[1,\"api-path\"],\"productId\":[1,\"product-id\"],\"mode\":[1],\"campaigns\":[1],\"excluded\":[1],\"campaignType\":[1,\"campaign-type\"],\"locale\":[1],\"numberLocale\":[1,\"number-locale\"],\"color\":[1],\"imageWidth\":[2,\"image-width\"],\"imageResolutionWidth\":[2,\"image-resolution-width\"],\"showMultipleImages\":[4,\"show-multiple-images\"],\"setItemsAmount\":[2,\"set-items-amount\"],\"cssUrl\":[1,\"css-url\"],\"currencySign\":[1,\"currency-sign\"],\"pricePrefix\":[1,\"price-prefix\"],\"noResultText\":[1,\"no-result-text\"],\"noResultShow\":[4,\"no-result-show\"],\"gridArrowsDynamic\":[4,\"grid-arrows-dynamic\"],\"productDetailsNewTab\":[4,\"product-details-new-tab\"],\"productDetailsRedirect\":[4,\"product-details-redirect\"],\"addToBasketShow\":[4,\"add-to-basket-show\"],\"showFilters\":[4,\"show-filters\"],\"showExtendedFilters\":[4,\"show-extended-filters\"],\"setModeDiscounts\":[1,\"set-mode-discounts\"],\"updateButtonLocation\":[1,\"update-button-location\"],\"addPriceContainer\":[4,\"add-price-container\"],\"favoriteShow\":[4,\"favorite-show\"],\"blockTitle\":[1,\"block-title\"],\"blockSubtitle\":[1,\"block-subtitle\"],\"showScroll\":[4,\"show-scroll\"],\"useCarousel\":[4,\"use-carousel\"],\"showingInButton\":[4,\"showing-in-button\"],\"buttonElementId\":[1,\"button-element-id\"],\"closed\":[4],\"opened\":[4],\"isAppended\":[4,\"is-appended\"],\"showInWidget\":[4,\"show-in-widget\"],\"recommendationsLoading\":[1028,\"recommendations-loading\"],\"setRecommendationsLoading\":[16,\"set-recommendations-loading\"],\"uiSessionId\":[1025,\"ui-session-id\"],\"recommendations\":[32],\"dynamicFilters\":[32],\"sourceProduct\":[32],\"hasErrorOnLoad\":[32],\"updatingAllCards\":[32],\"updatedCardsAmount\":[32],\"setModeDiscountsArray\":[32]},[[0,\"vviinnProductLoad\",\"trackProductLoad\"],[0,\"vviinnProductView\",\"trackProductView\"],[0,\"vviinnProductClick\",\"trackProductClick\"],[0,\"vviinnAuxClick\",\"trackAuxClick\"],[0,\"vviinnAddToBasket\",\"trackAddToBasket\"],[0,\"vviinnAddToFavorite\",\"trackAddToWishlist\"],[0,\"vviinnUpdatingAllCardsFinished\",\"updatingAllCardsFinishedListener\"],[0,\"vviinnFiltersChanged\",\"filtersChanged\"]],{\"productId\":[\"handleProductIdChange\"],\"campaignType\":[\"handleCampaignTypeChange\"],\"campaigns\":[\"handleCampaignsChange\"],\"opened\":[\"trackWidgetOpen\"],\"closed\":[\"trackWidgetClose\"]}],[0,\"vviinn-carousel\",{\"mode\":[1],\"currencySign\":[1,\"currency-sign\"],\"pricePrefix\":[1,\"price-prefix\"],\"locale\":[1],\"numberLocale\":[1,\"number-locale\"],\"imageWidth\":[2,\"image-width\"],\"showScroll\":[4,\"show-scroll\"],\"campaignTypeId\":[1,\"campaign-type-id\"],\"widgetElementId\":[1,\"widget-element-id\"],\"gridArrowsDynamic\":[4,\"grid-arrows-dynamic\"],\"recommendations\":[1040],\"sourceProduct\":[16,\"source-product\"],\"widgetVersion\":[1,\"widget-version\"],\"addToBasketShow\":[4,\"add-to-basket-show\"],\"updatingAllCards\":[4,\"updating-all-cards\"],\"updateButtonLocation\":[1,\"update-button-location\"],\"replaceSlotsContent\":[16,\"replace-slots-content\"],\"setModeDiscountsArray\":[16,\"set-mode-discounts-array\"],\"showMultipleImages\":[4,\"show-multiple-images\"],\"addPriceContainer\":[4,\"add-price-container\"],\"favoriteShow\":[4,\"favorite-show\"],\"setItemsAmount\":[2,\"set-items-amount\"],\"isAppended\":[4,\"is-appended\"],\"loading\":[4],\"hasErrorOnLoad\":[4,\"has-error-on-load\"],\"showInWidget\":[4,\"show-in-widget\"],\"imageResolutionWidth\":[2,\"image-resolution-width\"],\"moveDirection\":[32],\"contentGroups\":[32],\"activeContentGroup\":[32],\"currentScrollIndex\":[32],\"isRTL\":[32],\"crossSellingRecommendations\":[32],\"setModeDiscount\":[32],\"currentDiscountIndex\":[32],\"setModeAppliedDiscounts\":[32],\"columns\":[32],\"showContent\":[32]},[[0,\"vviinnCrossSellingClick\",\"crossSellingClickListener\"],[0,\"vviinnAddToBasket\",\"setModeAddToBasketHandler\"]],{\"recommendations\":[\"recommendationsWatcher\"],\"updatingAllCards\":[\"updatingAllCardsWatcher\"],\"loading\":[\"onLoadingChange\"]}],[1,\"vviinn-extended-filters\",{\"mode\":[513],\"showHeader\":[4,\"show-header\"],\"searchThreshold\":[2,\"search-threshold\"],\"locale\":[1],\"currencySign\":[1,\"currency-sign\"],\"filtersString\":[1,\"filters-string\"],\"showInWidget\":[4,\"show-in-widget\"],\"showingInButton\":[4,\"showing-in-button\"],\"widgetElement\":[8,\"widget-element\"],\"showIntervalInputs\":[4,\"show-interval-inputs\"],\"innerFilters\":[32],\"requestFilters\":[32],\"showMore\":[32],\"selectedMoreOptions\":[32],\"displayedOptionsCount\":[32],\"searchTerm\":[32]},[[17,\"mousedown\",\"bodyMouseDownListener\"]],{\"showMore\":[\"showMoreWatcher\"],\"selectedMoreOptions\":[\"selectedMoreOptionsWatcher\"],\"filtersString\":[\"filtersStringWatcher\"]}],[1,\"vviinn-filters\",{\"filtersString\":[1,\"filters-string\"],\"showInWidget\":[4,\"show-in-widget\"],\"showIntervalInputs\":[4,\"show-interval-inputs\"],\"innerFilters\":[32],\"selectedFilterColumn\":[32],\"requestFilters\":[32]},null,{\"filtersString\":[\"filtersStringWatcher\"]}],[1,\"vviinn-extended-filters-button\",{\"handleClick\":[16,\"handle-click\"],\"showInWidget\":[4,\"show-in-widget\"]}],[1,\"vviinn-product-card\",{\"brand\":[1],\"currencySign\":[1,\"currency-sign\"],\"locale\":[1],\"numberLocale\":[1,\"number-locale\"],\"pricePrefix\":[1,\"price-prefix\"],\"image\":[1],\"images\":[16],\"showMultipleImages\":[4,\"show-multiple-images\"],\"imageWidth\":[2,\"image-width\"],\"price\":[2],\"basePrice\":[1,\"base-price\"],\"productTitle\":[1,\"product-title\"],\"productType\":[1,\"product-type\"],\"entityType\":[1,\"entity-type\"],\"isSetMode\":[4,\"is-set-mode\"],\"salePrice\":[2,\"sale-price\"],\"baseSalePrice\":[1,\"base-sale-price\"],\"responsive\":[4],\"addToBasketShow\":[4,\"add-to-basket-show\"],\"favoriteShow\":[4,\"favorite-show\"],\"updateButtonLocation\":[1,\"update-button-location\"],\"customLabels\":[1,\"custom-labels\"],\"addPriceContainer\":[4,\"add-price-container\"],\"energyCertifications\":[1040,\"energy-certifications\"],\"deeplink\":[1],\"cssUrl\":[1,\"css-url\"],\"productId\":[1,\"product-id\"],\"product\":[16],\"campaignTypeId\":[1,\"campaign-type-id\"],\"widgetElementId\":[1,\"widget-element-id\"],\"buttonElementId\":[1,\"button-element-id\"],\"widgetVersion\":[1,\"widget-version\"],\"index\":[2],\"updatingAllCards\":[4,\"updating-all-cards\"],\"defaultAnimationInterval\":[2,\"default-animation-interval\"],\"appliedDiscountPercentage\":[2,\"applied-discount-percentage\"],\"currentDiscountPercentage\":[2,\"current-discount-percentage\"],\"isSourceProduct\":[4,\"is-source-product\"],\"isResultsWidget\":[4,\"is-results-widget\"],\"energyCertificationsString\":[1,\"energy-certifications-string\"],\"isStandalone\":[4,\"is-standalone\"],\"showFooterArrow\":[4,\"show-footer-arrow\"],\"imageResolutionWidth\":[1026,\"image-resolution-width\"],\"loading\":[1028],\"disableMobileSwiper\":[4,\"disable-mobile-swiper\"],\"isTransitioning\":[32],\"basketButonPressed\":[32],\"favoriteButonPressed\":[32],\"imageLoaded\":[32],\"showSecondImage\":[32]},[[0,\"vviinnCrossSellingClick\",\"crossSellingClickListener\"]],{\"updatingAllCards\":[\"updatingAllCardsWatcher\"],\"productId\":[\"productIdWatcher\"],\"showSecondImage\":[\"showSecondImageWatcher\"]}],[1,\"vviinn-range-filter\",{\"histogram\":[16],\"intervalChangeHandler\":[16,\"interval-change-handler\"],\"selectedInterval\":[16,\"selected-interval\"],\"showCurrency\":[4,\"show-currency\"],\"showIntervalInputs\":[4,\"show-interval-inputs\"],\"currencySign\":[1,\"currency-sign\"],\"scalingFactor\":[32],\"minValue\":[32],\"maxValue\":[32],\"fromValue\":[32],\"toValue\":[32]},null,{\"selectedInterval\":[\"initializeValues\"],\"histogram\":[\"initializeValues\"]}],[1,\"vviinn-image\",{\"src\":[1],\"width\":[2],\"alt\":[1],\"imageTitle\":[1,\"image-title\"],\"responsive\":[4],\"entityType\":[1,\"entity-type\"],\"imageResolutionWidth\":[2,\"image-resolution-width\"],\"objectFit\":[1,\"object-fit\"],\"showSkeleton\":[4,\"show-skeleton\"],\"isSetMode\":[4,\"is-set-mode\"],\"customClass\":[1,\"custom-class\"],\"borderRadius\":[1,\"border-radius\"],\"border\":[1],\"backgroundColor\":[1,\"background-color\"],\"imageRef\":[16,\"image-ref\"],\"loadEndCallback\":[16,\"load-end-callback\"],\"imageLoaded\":[32],\"imageError\":[32]}],[1,\"vviinn-energy-label\",{\"classIconUrls\":[16,\"class-icon-urls\"],\"productType\":[1,\"product-type\"],\"classDataSheetUrl\":[1,\"class-data-sheet-url\"],\"iconDirection\":[1,\"icon-direction\"],\"certificationClass\":[1,\"certification-class\"],\"classRange\":[16,\"class-range\"]}],[1,\"vviinn-skeleton\",{\"height\":[2],\"halfWidth\":[4,\"half-width\"],\"aspectRatio\":[2,\"aspect-ratio\"]}]]],[\"vviinn-shop-the-look.cjs\",[[1,\"vviinn-shop-the-look\",{\"token\":[1],\"apiPath\":[1,\"api-path\"],\"imageUrls\":[1,\"image-urls\"],\"height\":[2],\"currencySign\":[1,\"currency-sign\"],\"campaignId\":[1,\"campaign-id\"],\"locale\":[1],\"numberLocale\":[1,\"number-locale\"],\"widgetStyle\":[1,\"widget-style\"],\"showCropper\":[4,\"show-cropper\"],\"uploadMode\":[4,\"upload-mode\"],\"showMultipleImages\":[4,\"show-multiple-images\"],\"cssUrl\":[1,\"css-url\"],\"productDetailsNewTab\":[4,\"product-details-new-tab\"],\"productDetailsRedirect\":[4,\"product-details-redirect\"],\"selectedDetectedObject\":[32],\"showModal\":[32],\"modalPosition\":[32],\"showDetailedView\":[32],\"selectedProductIndex\":[32],\"modalImageIndex\":[32],\"swiperActiveIndex\":[32],\"totalImages\":[32],\"imageUrlsList\":[32],\"swiperKey\":[32],\"needNavigation\":[32],\"showLoadingSpinner\":[32],\"isSearchInProgress\":[32],\"currentViewMode\":[32],\"isWidgetVisible\":[32],\"uploadedImageUrls\":[32]},[[0,\"vviinnProductClick\",\"handleProductCardClick\"]],{\"currentViewMode\":[\"onViewModeChange\"],\"showModal\":[\"onShowModalChange\"]}]]],[\"vviinn-button_6.cjs\",[[1,\"vviinn-vpr-button\",{\"token\":[1],\"apiPath\":[1,\"api-path\"],\"locale\":[1],\"numberLocale\":[1,\"number-locale\"],\"currencySign\":[1,\"currency-sign\"],\"pricePrefix\":[1,\"price-prefix\"],\"productId\":[1,\"product-id\"],\"mode\":[1],\"campaigns\":[1],\"excluded\":[1],\"campaignType\":[1,\"campaign-type\"],\"color\":[1],\"imageWidth\":[2,\"image-width\"],\"imageResolutionWidth\":[2,\"image-resolution-width\"],\"showMultipleImages\":[4,\"show-multiple-images\"],\"setItemsAmount\":[2,\"set-items-amount\"],\"cssUrl\":[1,\"css-url\"],\"noResultText\":[1,\"no-result-text\"],\"noResultShow\":[4,\"no-result-show\"],\"gridArrowsDynamic\":[4,\"grid-arrows-dynamic\"],\"productDetailsNewTab\":[4,\"product-details-new-tab\"],\"productDetailsRedirect\":[4,\"product-details-redirect\"],\"addToBasketShow\":[4,\"add-to-basket-show\"],\"showFilters\":[4,\"show-filters\"],\"addPriceContainer\":[4,\"add-price-container\"],\"oneClickDiscoveryMode\":[1,\"one-click-discovery-mode\"],\"setModeDiscounts\":[1,\"set-mode-discounts\"],\"updateButtonLocation\":[1,\"update-button-location\"],\"sidebarTitle\":[1,\"sidebar-title\"],\"sidebarSubtitle\":[1,\"sidebar-subtitle\"],\"modalScrollbar\":[4,\"modal-scrollbar\"],\"position\":[1],\"addStyle\":[4,\"add-style\"],\"favoriteShow\":[4,\"favorite-show\"],\"appendSidebarToElement\":[16,\"append-sidebar-to-element\"],\"appendSidebarToId\":[1,\"append-sidebar-to-id\"],\"isStandalone\":[4,\"is-standalone\"],\"showInWidget\":[4,\"show-in-widget\"],\"uiSessionId\":[1,\"ui-session-id\"],\"targetAppendSidebarTo\":[32]},null,{\"appendSidebarToElement\":[\"appendSidebarToElementWatcher\"]}],[1,\"vviinn-error\",{\"hasBackground\":[4,\"has-background\"],\"errorType\":[1,\"error-type\"],\"handler\":[16],\"searchType\":[1,\"search-type\"]}],[1,\"vviinn-modal\",{\"active\":[1540],\"resetState\":[16,\"reset-state\"],\"buttonElementId\":[1,\"button-element-id\"],\"widgetVersion\":[1,\"widget-version\"],\"hideBackButton\":[4,\"hide-back-button\"],\"isFirstScreen\":[4,\"is-first-screen\"],\"slider\":[32]},null,{\"active\":[\"handleActiveChange\"]}],[1,\"vviinn-overlay\",{\"active\":[516]},null,{\"active\":[\"handleActiveChange\"]}],[1,\"vviinn-recommendations-sidebar\",{\"sidebarTitle\":[1,\"sidebar-title\"],\"sidebarSubtitle\":[1,\"sidebar-subtitle\"],\"token\":[1],\"locale\":[1],\"numberLocale\":[1,\"number-locale\"],\"currencySign\":[1,\"currency-sign\"],\"pricePrefix\":[1,\"price-prefix\"],\"productId\":[1,\"product-id\"],\"position\":[1],\"widgetScrollbar\":[4,\"widget-scrollbar\"],\"mode\":[1],\"campaigns\":[1],\"campaignType\":[1,\"campaign-type\"],\"color\":[1],\"imageWidth\":[2,\"image-width\"],\"showMultipleImages\":[4,\"show-multiple-images\"],\"cssUrl\":[1,\"css-url\"],\"noResultText\":[1,\"no-result-text\"],\"noResultShow\":[4,\"no-result-show\"],\"gridArrowsDynamic\":[4,\"grid-arrows-dynamic\"],\"excluded\":[1],\"productDetailsNewTab\":[4,\"product-details-new-tab\"],\"productDetailsRedirect\":[4,\"product-details-redirect\"],\"addToBasketShow\":[4,\"add-to-basket-show\"],\"addPriceContainer\":[4,\"add-price-container\"],\"showFilters\":[4,\"show-filters\"],\"setModeDiscounts\":[1,\"set-mode-discounts\"],\"setItemsAmount\":[2,\"set-items-amount\"],\"updateButtonLocation\":[1,\"update-button-location\"],\"favoriteShow\":[4,\"favorite-show\"],\"useCarousel\":[4,\"use-carousel\"],\"showInWidget\":[4,\"show-in-widget\"],\"imageResolutionWidth\":[2,\"image-resolution-width\"],\"apiPath\":[1,\"api-path\"],\"showInCustomContainer\":[4,\"show-in-custom-container\"],\"buttonChildren\":[16,\"button-children\"],\"buttonElementId\":[1,\"button-element-id\"],\"widgetVersion\":[1,\"widget-version\"],\"showingInButton\":[4,\"showing-in-button\"],\"showInModal\":[4,\"show-in-modal\"],\"isAppended\":[4,\"is-appended\"],\"uiSessionId\":[1,\"ui-session-id\"],\"triggerElement\":[16,\"trigger-element\"],\"sidebarState\":[32],\"sourceProduct\":[32],\"showLoadingClass\":[32],\"recommendationsLoading\":[32],\"hidden\":[32]},[[0,\"vviinnUpdatingAllCardsStarted\",\"updatingAllCardsStarted\"],[0,\"vviinnUpdatingAllCardsFinished\",\"updatingAllCardsFinished\"],[16,\"click\",\"bodyClickListener\"],[0,\"sourceProductReceived\",\"sourceProductReceived\"],[8,\"keydown\",\"handleEscape\"]],{\"recommendationsLoading\":[\"handleLoadingChange\"],\"sidebarState\":[\"handleSidebarStateChange\"]}],[1,\"vviinn-button\",{\"addStyle\":[4,\"add-style\"]}]]],[\"vviinn-vps-button.cjs\",[[1,\"vviinn-vps-button\",{\"token\":[1],\"currencySign\":[1,\"currency-sign\"],\"locale\":[1],\"numberLocale\":[1,\"number-locale\"],\"pricePrefix\":[1,\"price-prefix\"],\"campaignId\":[1,\"campaign-id\"],\"campaignIdTextSearch\":[1,\"campaign-id-text-search\"],\"campaignIdVisualSearch\":[1,\"campaign-id-visual-search\"],\"addStyle\":[4,\"add-style\"],\"mode\":[1],\"excluded\":[1],\"productDetailsNewTab\":[4,\"product-details-new-tab\"],\"productDetailsRedirect\":[4,\"product-details-redirect\"],\"imageResolutionWidth\":[2,\"image-resolution-width\"],\"showMultipleImages\":[4,\"show-multiple-images\"],\"exampleImageSource\":[1,\"example-image-source\"],\"textSearchShow\":[4,\"text-search-show\"],\"autoSuggestShow\":[4,\"auto-suggest-show\"],\"addToBasketShow\":[4,\"add-to-basket-show\"],\"favoriteShow\":[4,\"favorite-show\"],\"oneClickDiscoveryMode\":[1,\"one-click-discovery-mode\"],\"oneClickDiscoveryCampaigns\":[1,\"one-click-discovery-campaigns\"],\"addPriceContainer\":[4,\"add-price-container\"],\"showIntervalInputs\":[4,\"show-interval-inputs\"],\"cssUrl\":[1,\"css-url\"],\"apiPath\":[1,\"api-path\"],\"showResultsInModal\":[4,\"show-results-in-modal\"],\"resultsPageUrl\":[1,\"results-page-url\"],\"resultsPageParams\":[1,\"results-page-params\"],\"parentSlots\":[16,\"parent-slots\"],\"buttonPressed\":[32]},[[0,\"vviinnWidgetClose\",\"handleModalClosed\"]],{\"buttonPressed\":[\"buttonPressedWatcher\"]}]]],[\"vviinn-text-search.cjs\",[[1,\"vviinn-text-search\",{\"token\":[1],\"apiPath\":[1,\"api-path\"],\"locale\":[1],\"mode\":[1],\"searchQuery\":[1025,\"search-query\"],\"placeholder\":[1],\"resultsPageUrl\":[1,\"results-page-url\"],\"resultsPageParams\":[1,\"results-page-params\"],\"autoSuggestShow\":[4,\"auto-suggest-show\"],\"exampleImageSource\":[1,\"example-image-source\"],\"cssUrl\":[1,\"css-url\"],\"visualSearchMode\":[1,\"visual-search-mode\"],\"showInWidget\":[4,\"show-in-widget\"],\"showOnFirstScreen\":[4,\"show-on-first-screen\"],\"uiSessionId\":[1,\"ui-session-id\"],\"basicEventData\":[16,\"basic-event-data\"],\"isRecording\":[32],\"showTooltip\":[32],\"autoSuggestCompletions\":[32],\"activeSuggestionIndex\":[32]}]]],[\"vviinn-camera_12.cjs\",[[1,\"vviinn-vps-widget\",{\"token\":[1],\"apiPath\":[1,\"api-path\"],\"active\":[1028],\"currencySign\":[1,\"currency-sign\"],\"pricePrefix\":[1,\"price-prefix\"],\"locale\":[1],\"numberLocale\":[1,\"number-locale\"],\"campaignId\":[1,\"campaign-id\"],\"campaignIdTextSearch\":[1,\"campaign-id-text-search\"],\"campaignIdVisualSearch\":[1,\"campaign-id-visual-search\"],\"excluded\":[1],\"productDetailsNewTab\":[4,\"product-details-new-tab\"],\"productDetailsRedirect\":[4,\"product-details-redirect\"],\"imageResolutionWidth\":[2,\"image-resolution-width\"],\"showMultipleImages\":[4,\"show-multiple-images\"],\"exampleImageSource\":[1,\"example-image-source\"],\"textSearchShow\":[4,\"text-search-show\"],\"autoSuggestShow\":[4,\"auto-suggest-show\"],\"addToBasketShow\":[4,\"add-to-basket-show\"],\"favoriteShow\":[4,\"favorite-show\"],\"oneClickDiscoveryMode\":[1,\"one-click-discovery-mode\"],\"oneClickDiscoveryCampaigns\":[1,\"one-click-discovery-campaigns\"],\"addPriceContainer\":[4,\"add-price-container\"],\"showIntervalInputs\":[4,\"show-interval-inputs\"],\"cssUrl\":[1,\"css-url\"],\"showResultsInModal\":[4,\"show-results-in-modal\"],\"resultsPageUrl\":[1,\"results-page-url\"],\"resultsPageParams\":[1,\"results-page-params\"],\"showingInButton\":[4,\"showing-in-button\"],\"buttonElementId\":[1,\"button-element-id\"],\"buttonPressed\":[4,\"button-pressed\"],\"mode\":[1],\"resetVpsButton\":[16,\"reset-vps-button\"],\"replaceSlotsContentInButton\":[16,\"replace-slots-content-in-button\"],\"parentSlots\":[16,\"parent-slots\"],\"slidePosition\":[32],\"uploadSource\":[32],\"stream\":[32],\"products\":[32],\"modalBody\":[32],\"uploadDialogOpened\":[32],\"isCameraInitializing\":[32],\"isCameraEnabled\":[32],\"isCameraButtonClicked\":[32],\"showAspectRatioError\":[32],\"wrongImageFormat\":[32]},[[0,\"widgetTextSearchFinished\",\"textSearchFinishedHandler\"],[0,\"vviinnTextSearchStarted\",\"textSearchStartedHandler\"],[0,\"vviinnResultLoad\",\"resultLoadHandler\"],[0,\"vviinnResultView\",\"resultViewHandler\"],[0,\"vviinnCameraEnabled\",\"trackCameraEnabled\"],[0,\"vviinnImageCrop\",\"cropAreaChanges\"],[0,\"vviinnSelectObject\",\"trackDetectedObject\"],[0,\"vviinnSelectFilter\",\"trackImageSearchFilterSelected\"]],{\"active\":[\"activeWatcher\"],\"slidePosition\":[\"slidePositionWatcher\"]}],[1,\"vviinn-results\",{\"token\":[1],\"currencySign\":[1,\"currency-sign\"],\"locale\":[8],\"numberLocale\":[1,\"number-locale\"],\"campaignIdTextSearch\":[1,\"campaign-id-text-search\"],\"campaignIdVisualSearch\":[1,\"campaign-id-visual-search\"],\"pricePrefix\":[1,\"price-prefix\"],\"searchId\":[1,\"search-id\"],\"resultsPageUrl\":[1,\"results-page-url\"],\"resultsPageParams\":[1,\"results-page-params\"],\"uiSessionId\":[1025,\"ui-session-id\"],\"imageResolutionWidth\":[2,\"image-resolution-width\"],\"showMultipleImages\":[4,\"show-multiple-images\"],\"productDetailsNewTab\":[4,\"product-details-new-tab\"],\"productDetailsRedirect\":[4,\"product-details-redirect\"],\"addToBasketShow\":[4,\"add-to-basket-show\"],\"favoriteShow\":[4,\"favorite-show\"],\"textSearchQuery\":[1,\"text-search-query\"],\"filterColumn\":[1,\"filter-column\"],\"filterValue\":[1,\"filter-value\"],\"resultsCount\":[2,\"results-count\"],\"addPriceContainer\":[4,\"add-price-container\"],\"oneClickDiscoveryMode\":[1,\"one-click-discovery-mode\"],\"oneClickDiscoveryCampaigns\":[1,\"one-click-discovery-campaigns\"],\"cssUrl\":[1,\"css-url\"],\"apiPath\":[1,\"api-path\"],\"showInWidget\":[4,\"show-in-widget\"],\"buttonElementId\":[1,\"button-element-id\"],\"widgetElementId\":[1025,\"widget-element-id\"],\"showAspectRatioError\":[4,\"show-aspect-ratio-error\"],\"resetWidgetState\":[16,\"reset-widget-state\"],\"replaceSlotsContentInWidget\":[16,\"replace-slots-content-in-widget\"],\"replaceSlotsContentInButton\":[16,\"replace-slots-content-in-button\"],\"parentSlots\":[16,\"parent-slots\"],\"useInnerState\":[4,\"use-inner-state\"],\"scrollableModalBody\":[16,\"scrollable-modal-body\"],\"slotsReplaced\":[32],\"oneClickDiscoveryAppendIndex\":[32],\"oneClickDiscoverySelectedIndex\":[32],\"innerResults\":[32]},[[0,\"vviinnProductLoad\",\"trackProductLoad\"],[0,\"vviinnProductView\",\"trackProductView\"],[0,\"vviinnProductClick\",\"trackProductClick\"],[0,\"vviinnAuxClick\",\"trackAuxClick\"],[0,\"vviinnAddToBasket\",\"trackAddToBasket\"],[0,\"vviinnAddToFavorite\",\"trackAddToFavorite\"]],{\"textSearchQuery\":[\"watchTextSearchQuery\"],\"searchId\":[\"watchSearchId\"]}],[1,\"vviinn-cropper\",{\"token\":[1],\"apiPath\":[1,\"api-path\"],\"saveImageMode\":[1,\"save-image-mode\"],\"autoSearch\":[4,\"auto-search\"],\"width\":[1026],\"cssUrl\":[1,\"css-url\"],\"height\":[1026],\"basicEventData\":[1040,\"basic-event-data\"],\"showAspectRatioError\":[4,\"show-aspect-ratio-error\"],\"showInWidget\":[4,\"show-in-widget\"],\"cropper\":[32],\"selectedDetectedObject\":[32]},[[0,\"vviinnSelectObject\",\"selectDetectedObject\"],[0,\"vviinnImageCrop\",\"imageCropHandler\"]]],[1,\"vviinn-overlayed-modal\",{\"active\":[4],\"resetState\":[16,\"reset-state\"],\"buttonElementId\":[1,\"button-element-id\"],\"hideBackButton\":[4,\"hide-back-button\"],\"widgetVersion\":[1,\"widget-version\"],\"isFirstScreen\":[4,\"is-first-screen\"]}],[1,\"vviinn-image-selector\",{\"basicEventData\":[16,\"basic-event-data\"],\"startUpload\":[4,\"start-upload\"],\"loading\":[4],\"accept\":[1],\"resetVpsButton\":[16,\"reset-vps-button\"],\"token\":[1],\"apiPath\":[1,\"api-path\"],\"showInWidget\":[4,\"show-in-widget\"],\"storeName\":[1,\"store-name\"],\"state\":[16]},null,{\"startUpload\":[\"startUploadWatcher\"]}],[1,\"vviinn-camera\",{\"token\":[1],\"exampleImageSource\":[1,\"example-image-source\"],\"width\":[2],\"height\":[2],\"basicEventData\":[16,\"basic-event-data\"],\"srcObject\":[16,\"src-object\"],\"cameraButtonClicked\":[4,\"camera-button-clicked\"],\"showInWidget\":[4,\"show-in-widget\"],\"storeName\":[1,\"store-name\"],\"state\":[16],\"apiPath\":[1,\"api-path\"],\"selected\":[32],\"videoInitialized\":[32],\"zoomCapabilities\":[32]},null,{\"srcObject\":[\"handleSrcObjectChange\"]}],[1,\"vviinn-privacy-badge\",{\"privacyBadgeText\":[1,\"privacy-badge-text\"]}],[1,\"vviinn-selected-filters\",{\"locale\":[1],\"currencySign\":[1,\"currency-sign\"],\"showInWidget\":[4,\"show-in-widget\"],\"requestFilters\":[32],\"selectedFilterButtons\":[32],\"textSearchCustomFilter\":[32],\"imageSrc\":[32],\"intervalCustomFilters\":[32]}],[1,\"vviinn-slide\"],[1,\"vviinn-slider\",{\"position\":[514],\"elementsCount\":[32],\"internalPosition\":[32],\"swipeStartPosition\":[32],\"isRTL\":[32]},null,{\"position\":[\"positionWatchHandler\"]}],[1,\"vviinn-suggestions\",{\"showInWidget\":[4,\"show-in-widget\"],\"apiPath\":[1,\"api-path\"],\"locale\":[1],\"currencySign\":[1,\"currency-sign\"],\"pricePrefix\":[1,\"price-prefix\"],\"token\":[1],\"stream\":[32],\"appliedSuggestionFilters\":[32]}],[1,\"vviinn-teaser\"]]]]"), options);
22
+ return index.bootstrapLazy(JSON.parse("[[\"vviinn-detected-object_2.cjs\",[[1,\"vviinn-detected-object\",{\"detectedObject\":[16,\"detected-object\"],\"selectedDetectedObject\":[16,\"selected-detected-object\"],\"basicEventData\":[16,\"basic-event-data\"],\"imageBounds\":[16,\"image-bounds\"],\"showInWidget\":[4,\"show-in-widget\"],\"position\":[32]}],[1,\"vviinn-preloader\"]]],[\"vviinn-carousel_10.cjs\",[[1,\"vviinn-vpr-widget\",{\"token\":[1],\"apiPath\":[1,\"api-path\"],\"productId\":[1,\"product-id\"],\"mode\":[1],\"campaigns\":[1],\"excluded\":[1],\"campaignType\":[1,\"campaign-type\"],\"locale\":[1],\"numberLocale\":[1,\"number-locale\"],\"color\":[1],\"imageWidth\":[2,\"image-width\"],\"imageResolutionWidth\":[2,\"image-resolution-width\"],\"showMultipleImages\":[4,\"show-multiple-images\"],\"setItemsAmount\":[2,\"set-items-amount\"],\"cssUrl\":[1,\"css-url\"],\"currencySign\":[1,\"currency-sign\"],\"pricePrefix\":[1,\"price-prefix\"],\"noResultText\":[1,\"no-result-text\"],\"noResultShow\":[4,\"no-result-show\"],\"gridArrowsDynamic\":[4,\"grid-arrows-dynamic\"],\"productDetailsNewTab\":[4,\"product-details-new-tab\"],\"productDetailsRedirect\":[4,\"product-details-redirect\"],\"addToBasketShow\":[4,\"add-to-basket-show\"],\"showFilters\":[4,\"show-filters\"],\"showExtendedFilters\":[4,\"show-extended-filters\"],\"setModeDiscounts\":[1,\"set-mode-discounts\"],\"updateButtonLocation\":[1,\"update-button-location\"],\"addPriceContainer\":[4,\"add-price-container\"],\"favoriteShow\":[4,\"favorite-show\"],\"blockTitle\":[1,\"block-title\"],\"blockSubtitle\":[1,\"block-subtitle\"],\"showScroll\":[4,\"show-scroll\"],\"useCarousel\":[4,\"use-carousel\"],\"showingInButton\":[4,\"showing-in-button\"],\"buttonElementId\":[1,\"button-element-id\"],\"closed\":[4],\"opened\":[4],\"isAppended\":[4,\"is-appended\"],\"showInWidget\":[4,\"show-in-widget\"],\"recommendationsLoading\":[1028,\"recommendations-loading\"],\"setRecommendationsLoading\":[16,\"set-recommendations-loading\"],\"uiSessionId\":[1025,\"ui-session-id\"],\"recommendations\":[32],\"dynamicFilters\":[32],\"sourceProduct\":[32],\"hasErrorOnLoad\":[32],\"updatingAllCards\":[32],\"updatedCardsAmount\":[32],\"setModeDiscountsArray\":[32]},[[0,\"vviinnProductLoad\",\"trackProductLoad\"],[0,\"vviinnProductView\",\"trackProductView\"],[0,\"vviinnProductClick\",\"trackProductClick\"],[0,\"vviinnAuxClick\",\"trackAuxClick\"],[0,\"vviinnAddToBasket\",\"trackAddToBasket\"],[0,\"vviinnAddToFavorite\",\"trackAddToWishlist\"],[0,\"vviinnUpdatingAllCardsFinished\",\"updatingAllCardsFinishedListener\"],[0,\"vviinnFiltersChanged\",\"filtersChanged\"]],{\"productId\":[\"handleProductIdChange\"],\"campaignType\":[\"handleCampaignTypeChange\"],\"campaigns\":[\"handleCampaignsChange\"],\"opened\":[\"trackWidgetOpen\"],\"closed\":[\"trackWidgetClose\"]}],[0,\"vviinn-carousel\",{\"mode\":[1],\"currencySign\":[1,\"currency-sign\"],\"pricePrefix\":[1,\"price-prefix\"],\"locale\":[1],\"numberLocale\":[1,\"number-locale\"],\"imageWidth\":[2,\"image-width\"],\"showScroll\":[4,\"show-scroll\"],\"campaignTypeId\":[1,\"campaign-type-id\"],\"widgetElementId\":[1,\"widget-element-id\"],\"gridArrowsDynamic\":[4,\"grid-arrows-dynamic\"],\"recommendations\":[1040],\"sourceProduct\":[16,\"source-product\"],\"widgetVersion\":[1,\"widget-version\"],\"addToBasketShow\":[4,\"add-to-basket-show\"],\"updatingAllCards\":[4,\"updating-all-cards\"],\"updateButtonLocation\":[1,\"update-button-location\"],\"replaceSlotsContent\":[16,\"replace-slots-content\"],\"setModeDiscountsArray\":[16,\"set-mode-discounts-array\"],\"showMultipleImages\":[4,\"show-multiple-images\"],\"addPriceContainer\":[4,\"add-price-container\"],\"favoriteShow\":[4,\"favorite-show\"],\"setItemsAmount\":[2,\"set-items-amount\"],\"isAppended\":[4,\"is-appended\"],\"loading\":[4],\"hasErrorOnLoad\":[4,\"has-error-on-load\"],\"showInWidget\":[4,\"show-in-widget\"],\"imageResolutionWidth\":[2,\"image-resolution-width\"],\"moveDirection\":[32],\"contentGroups\":[32],\"activeContentGroup\":[32],\"currentScrollIndex\":[32],\"isRTL\":[32],\"crossSellingRecommendations\":[32],\"setModeDiscount\":[32],\"currentDiscountIndex\":[32],\"setModeAppliedDiscounts\":[32],\"columns\":[32],\"showContent\":[32]},[[0,\"vviinnCrossSellingClick\",\"crossSellingClickListener\"],[0,\"vviinnAddToBasket\",\"setModeAddToBasketHandler\"]],{\"recommendations\":[\"recommendationsWatcher\"],\"updatingAllCards\":[\"updatingAllCardsWatcher\"],\"loading\":[\"onLoadingChange\"]}],[1,\"vviinn-extended-filters\",{\"mode\":[513],\"showHeader\":[4,\"show-header\"],\"searchThreshold\":[2,\"search-threshold\"],\"locale\":[1],\"currencySign\":[1,\"currency-sign\"],\"filtersString\":[1,\"filters-string\"],\"showInWidget\":[4,\"show-in-widget\"],\"showingInButton\":[4,\"showing-in-button\"],\"widgetElement\":[8,\"widget-element\"],\"showIntervalInputs\":[4,\"show-interval-inputs\"],\"innerFilters\":[32],\"requestFilters\":[32],\"showMore\":[32],\"selectedMoreOptions\":[32],\"displayedOptionsCount\":[32],\"searchTerm\":[32]},[[17,\"mousedown\",\"bodyMouseDownListener\"]],{\"showMore\":[\"showMoreWatcher\"],\"selectedMoreOptions\":[\"selectedMoreOptionsWatcher\"],\"filtersString\":[\"filtersStringWatcher\"]}],[1,\"vviinn-filters\",{\"filtersString\":[1,\"filters-string\"],\"showInWidget\":[4,\"show-in-widget\"],\"showIntervalInputs\":[4,\"show-interval-inputs\"],\"innerFilters\":[32],\"selectedFilterColumn\":[32],\"requestFilters\":[32]},null,{\"filtersString\":[\"filtersStringWatcher\"]}],[1,\"vviinn-extended-filters-button\",{\"handleClick\":[16,\"handle-click\"],\"showInWidget\":[4,\"show-in-widget\"]}],[1,\"vviinn-product-card\",{\"brand\":[1],\"currencySign\":[1,\"currency-sign\"],\"locale\":[1],\"numberLocale\":[1,\"number-locale\"],\"pricePrefix\":[1,\"price-prefix\"],\"image\":[1],\"images\":[16],\"showMultipleImages\":[4,\"show-multiple-images\"],\"imageWidth\":[2,\"image-width\"],\"price\":[2],\"basePrice\":[1,\"base-price\"],\"productTitle\":[1,\"product-title\"],\"productType\":[1,\"product-type\"],\"entityType\":[1,\"entity-type\"],\"isSetMode\":[4,\"is-set-mode\"],\"salePrice\":[2,\"sale-price\"],\"baseSalePrice\":[1,\"base-sale-price\"],\"responsive\":[4],\"addToBasketShow\":[4,\"add-to-basket-show\"],\"favoriteShow\":[4,\"favorite-show\"],\"updateButtonLocation\":[1,\"update-button-location\"],\"customLabels\":[1,\"custom-labels\"],\"addPriceContainer\":[4,\"add-price-container\"],\"energyCertifications\":[1040,\"energy-certifications\"],\"deeplink\":[1],\"cssUrl\":[1,\"css-url\"],\"productId\":[1,\"product-id\"],\"product\":[16],\"campaignTypeId\":[1,\"campaign-type-id\"],\"widgetElementId\":[1,\"widget-element-id\"],\"buttonElementId\":[1,\"button-element-id\"],\"widgetVersion\":[1,\"widget-version\"],\"index\":[2],\"updatingAllCards\":[4,\"updating-all-cards\"],\"defaultAnimationInterval\":[2,\"default-animation-interval\"],\"appliedDiscountPercentage\":[2,\"applied-discount-percentage\"],\"currentDiscountPercentage\":[2,\"current-discount-percentage\"],\"isSourceProduct\":[4,\"is-source-product\"],\"isResultsWidget\":[4,\"is-results-widget\"],\"energyCertificationsString\":[1,\"energy-certifications-string\"],\"isStandalone\":[4,\"is-standalone\"],\"showFooterArrow\":[4,\"show-footer-arrow\"],\"imageResolutionWidth\":[1026,\"image-resolution-width\"],\"loading\":[1028],\"disableMobileSwiper\":[4,\"disable-mobile-swiper\"],\"isTransitioning\":[32],\"basketButonPressed\":[32],\"favoriteButonPressed\":[32],\"imageLoaded\":[32],\"showSecondImage\":[32]},[[0,\"vviinnCrossSellingClick\",\"crossSellingClickListener\"]],{\"updatingAllCards\":[\"updatingAllCardsWatcher\"],\"productId\":[\"productIdWatcher\"],\"showSecondImage\":[\"showSecondImageWatcher\"]}],[1,\"vviinn-range-filter\",{\"histogram\":[16],\"intervalChangeHandler\":[16,\"interval-change-handler\"],\"selectedInterval\":[16,\"selected-interval\"],\"showCurrency\":[4,\"show-currency\"],\"showIntervalInputs\":[4,\"show-interval-inputs\"],\"currencySign\":[1,\"currency-sign\"],\"scalingFactor\":[32],\"minValue\":[32],\"maxValue\":[32],\"fromValue\":[32],\"toValue\":[32]},null,{\"selectedInterval\":[\"initializeValues\"],\"histogram\":[\"initializeValues\"]}],[1,\"vviinn-image\",{\"src\":[1],\"width\":[2],\"alt\":[1],\"imageTitle\":[1,\"image-title\"],\"responsive\":[4],\"entityType\":[1,\"entity-type\"],\"imageResolutionWidth\":[2,\"image-resolution-width\"],\"objectFit\":[1,\"object-fit\"],\"showSkeleton\":[4,\"show-skeleton\"],\"isSetMode\":[4,\"is-set-mode\"],\"customClass\":[1,\"custom-class\"],\"borderRadius\":[1,\"border-radius\"],\"border\":[1],\"backgroundColor\":[1,\"background-color\"],\"imageRef\":[16,\"image-ref\"],\"loadEndCallback\":[16,\"load-end-callback\"],\"imageLoaded\":[32],\"imageError\":[32]}],[1,\"vviinn-energy-label\",{\"classIconUrls\":[16,\"class-icon-urls\"],\"productType\":[1,\"product-type\"],\"classDataSheetUrl\":[1,\"class-data-sheet-url\"],\"iconDirection\":[1,\"icon-direction\"],\"certificationClass\":[1,\"certification-class\"],\"classRange\":[16,\"class-range\"]}],[1,\"vviinn-skeleton\",{\"height\":[2],\"halfWidth\":[4,\"half-width\"],\"aspectRatio\":[2,\"aspect-ratio\"]}]]],[\"vviinn-shop-the-look.cjs\",[[1,\"vviinn-shop-the-look\",{\"token\":[1],\"apiPath\":[1,\"api-path\"],\"imageUrls\":[1,\"image-urls\"],\"height\":[2],\"currencySign\":[1,\"currency-sign\"],\"campaignId\":[1,\"campaign-id\"],\"locale\":[1],\"numberLocale\":[1,\"number-locale\"],\"widgetStyle\":[1,\"widget-style\"],\"showCropper\":[4,\"show-cropper\"],\"uploadMode\":[4,\"upload-mode\"],\"showMultipleImages\":[4,\"show-multiple-images\"],\"cssUrl\":[1,\"css-url\"],\"productDetailsNewTab\":[4,\"product-details-new-tab\"],\"productDetailsRedirect\":[4,\"product-details-redirect\"],\"selectedDetectedObject\":[32],\"showModal\":[32],\"modalPosition\":[32],\"showDetailedView\":[32],\"selectedProductIndex\":[32],\"modalImageIndex\":[32],\"swiperActiveIndex\":[32],\"totalImages\":[32],\"imageUrlsList\":[32],\"swiperKey\":[32],\"needNavigation\":[32],\"showLoadingSpinner\":[32],\"isSearchInProgress\":[32],\"currentViewMode\":[32],\"isWidgetVisible\":[32],\"uploadedImageUrls\":[32]},[[0,\"vviinnProductClick\",\"handleProductCardClick\"]],{\"currentViewMode\":[\"onViewModeChange\"],\"showModal\":[\"onShowModalChange\"]}]]],[\"vviinn-button_6.cjs\",[[1,\"vviinn-vpr-button\",{\"token\":[1],\"apiPath\":[1,\"api-path\"],\"locale\":[1],\"numberLocale\":[1,\"number-locale\"],\"currencySign\":[1,\"currency-sign\"],\"pricePrefix\":[1,\"price-prefix\"],\"productId\":[1,\"product-id\"],\"mode\":[1],\"campaigns\":[1],\"excluded\":[1],\"campaignType\":[1,\"campaign-type\"],\"color\":[1],\"imageWidth\":[2,\"image-width\"],\"imageResolutionWidth\":[2,\"image-resolution-width\"],\"showMultipleImages\":[4,\"show-multiple-images\"],\"setItemsAmount\":[2,\"set-items-amount\"],\"cssUrl\":[1,\"css-url\"],\"noResultText\":[1,\"no-result-text\"],\"noResultShow\":[4,\"no-result-show\"],\"gridArrowsDynamic\":[4,\"grid-arrows-dynamic\"],\"productDetailsNewTab\":[4,\"product-details-new-tab\"],\"productDetailsRedirect\":[4,\"product-details-redirect\"],\"addToBasketShow\":[4,\"add-to-basket-show\"],\"showFilters\":[4,\"show-filters\"],\"addPriceContainer\":[4,\"add-price-container\"],\"oneClickDiscoveryMode\":[1,\"one-click-discovery-mode\"],\"setModeDiscounts\":[1,\"set-mode-discounts\"],\"updateButtonLocation\":[1,\"update-button-location\"],\"sidebarTitle\":[1,\"sidebar-title\"],\"sidebarSubtitle\":[1,\"sidebar-subtitle\"],\"modalScrollbar\":[4,\"modal-scrollbar\"],\"position\":[1],\"addStyle\":[4,\"add-style\"],\"favoriteShow\":[4,\"favorite-show\"],\"appendSidebarToElement\":[16,\"append-sidebar-to-element\"],\"appendSidebarToId\":[1,\"append-sidebar-to-id\"],\"isStandalone\":[4,\"is-standalone\"],\"showInWidget\":[4,\"show-in-widget\"],\"uiSessionId\":[1,\"ui-session-id\"],\"targetAppendSidebarTo\":[32]},null,{\"appendSidebarToElement\":[\"appendSidebarToElementWatcher\"]}],[1,\"vviinn-error\",{\"hasBackground\":[4,\"has-background\"],\"errorType\":[1,\"error-type\"],\"handler\":[16],\"searchType\":[1,\"search-type\"]}],[1,\"vviinn-modal\",{\"active\":[1540],\"resetState\":[16,\"reset-state\"],\"buttonElementId\":[1,\"button-element-id\"],\"widgetVersion\":[1,\"widget-version\"],\"hideBackButton\":[4,\"hide-back-button\"],\"isFirstScreen\":[4,\"is-first-screen\"],\"slider\":[32]},null,{\"active\":[\"handleActiveChange\"]}],[1,\"vviinn-overlay\",{\"active\":[516]},null,{\"active\":[\"handleActiveChange\"]}],[1,\"vviinn-recommendations-sidebar\",{\"sidebarTitle\":[1,\"sidebar-title\"],\"sidebarSubtitle\":[1,\"sidebar-subtitle\"],\"token\":[1],\"locale\":[1],\"numberLocale\":[1,\"number-locale\"],\"currencySign\":[1,\"currency-sign\"],\"pricePrefix\":[1,\"price-prefix\"],\"productId\":[1,\"product-id\"],\"position\":[1],\"widgetScrollbar\":[4,\"widget-scrollbar\"],\"mode\":[1],\"campaigns\":[1],\"campaignType\":[1,\"campaign-type\"],\"color\":[1],\"imageWidth\":[2,\"image-width\"],\"showMultipleImages\":[4,\"show-multiple-images\"],\"cssUrl\":[1,\"css-url\"],\"noResultText\":[1,\"no-result-text\"],\"noResultShow\":[4,\"no-result-show\"],\"gridArrowsDynamic\":[4,\"grid-arrows-dynamic\"],\"excluded\":[1],\"productDetailsNewTab\":[4,\"product-details-new-tab\"],\"productDetailsRedirect\":[4,\"product-details-redirect\"],\"addToBasketShow\":[4,\"add-to-basket-show\"],\"addPriceContainer\":[4,\"add-price-container\"],\"showFilters\":[4,\"show-filters\"],\"setModeDiscounts\":[1,\"set-mode-discounts\"],\"setItemsAmount\":[2,\"set-items-amount\"],\"updateButtonLocation\":[1,\"update-button-location\"],\"favoriteShow\":[4,\"favorite-show\"],\"useCarousel\":[4,\"use-carousel\"],\"showInWidget\":[4,\"show-in-widget\"],\"imageResolutionWidth\":[2,\"image-resolution-width\"],\"apiPath\":[1,\"api-path\"],\"showInCustomContainer\":[4,\"show-in-custom-container\"],\"buttonChildren\":[16,\"button-children\"],\"buttonElementId\":[1,\"button-element-id\"],\"widgetVersion\":[1,\"widget-version\"],\"showingInButton\":[4,\"showing-in-button\"],\"showInModal\":[4,\"show-in-modal\"],\"isAppended\":[4,\"is-appended\"],\"uiSessionId\":[1,\"ui-session-id\"],\"triggerElement\":[16,\"trigger-element\"],\"sidebarState\":[32],\"sourceProduct\":[32],\"showLoadingClass\":[32],\"recommendationsLoading\":[32],\"hidden\":[32]},[[0,\"vviinnUpdatingAllCardsStarted\",\"updatingAllCardsStarted\"],[0,\"vviinnUpdatingAllCardsFinished\",\"updatingAllCardsFinished\"],[16,\"click\",\"bodyClickListener\"],[0,\"sourceProductReceived\",\"sourceProductReceived\"],[8,\"keydown\",\"handleEscape\"]],{\"recommendationsLoading\":[\"handleLoadingChange\"],\"sidebarState\":[\"handleSidebarStateChange\"]}],[1,\"vviinn-button\",{\"addStyle\":[4,\"add-style\"]}]]],[\"vviinn-vps-button.cjs\",[[1,\"vviinn-vps-button\",{\"token\":[1],\"currencySign\":[1,\"currency-sign\"],\"locale\":[1],\"numberLocale\":[1,\"number-locale\"],\"pricePrefix\":[1,\"price-prefix\"],\"campaignId\":[1,\"campaign-id\"],\"campaignIdTextSearch\":[1,\"campaign-id-text-search\"],\"campaignIdVisualSearch\":[1,\"campaign-id-visual-search\"],\"addStyle\":[4,\"add-style\"],\"mode\":[1],\"excluded\":[1],\"productDetailsNewTab\":[4,\"product-details-new-tab\"],\"productDetailsRedirect\":[4,\"product-details-redirect\"],\"imageResolutionWidth\":[2,\"image-resolution-width\"],\"showMultipleImages\":[4,\"show-multiple-images\"],\"useDragAndDrop\":[4,\"use-drag-and-drop\"],\"exampleImageSource\":[1,\"example-image-source\"],\"textSearchShow\":[4,\"text-search-show\"],\"autoSuggestShow\":[4,\"auto-suggest-show\"],\"addToBasketShow\":[4,\"add-to-basket-show\"],\"favoriteShow\":[4,\"favorite-show\"],\"oneClickDiscoveryMode\":[1,\"one-click-discovery-mode\"],\"oneClickDiscoveryCampaigns\":[1,\"one-click-discovery-campaigns\"],\"addPriceContainer\":[4,\"add-price-container\"],\"showIntervalInputs\":[4,\"show-interval-inputs\"],\"cssUrl\":[1,\"css-url\"],\"apiPath\":[1,\"api-path\"],\"showResultsInModal\":[4,\"show-results-in-modal\"],\"resultsPageUrl\":[1,\"results-page-url\"],\"resultsPageParams\":[1,\"results-page-params\"],\"parentSlots\":[16,\"parent-slots\"],\"buttonPressed\":[32],\"hasCustomTrigger\":[32]},[[0,\"vviinnWidgetClose\",\"handleModalClosed\"]],{\"buttonPressed\":[\"buttonPressedWatcher\"]}]]],[\"vviinn-text-search.cjs\",[[1,\"vviinn-text-search\",{\"token\":[1],\"apiPath\":[1,\"api-path\"],\"locale\":[1],\"mode\":[1],\"searchQuery\":[1025,\"search-query\"],\"placeholder\":[1],\"resultsPageUrl\":[1,\"results-page-url\"],\"resultsPageParams\":[1,\"results-page-params\"],\"autoSuggestShow\":[4,\"auto-suggest-show\"],\"exampleImageSource\":[1,\"example-image-source\"],\"cssUrl\":[1,\"css-url\"],\"visualSearchMode\":[1,\"visual-search-mode\"],\"useDragAndDrop\":[4,\"use-drag-and-drop\"],\"showInWidget\":[4,\"show-in-widget\"],\"showOnFirstScreen\":[4,\"show-on-first-screen\"],\"uiSessionId\":[1,\"ui-session-id\"],\"basicEventData\":[16,\"basic-event-data\"],\"isRecording\":[32],\"showTooltip\":[32],\"autoSuggestCompletions\":[32],\"activeSuggestionIndex\":[32]}]]],[\"vviinn-camera_12.cjs\",[[1,\"vviinn-vps-widget\",{\"token\":[1],\"apiPath\":[1,\"api-path\"],\"active\":[1028],\"currencySign\":[1,\"currency-sign\"],\"pricePrefix\":[1,\"price-prefix\"],\"locale\":[1],\"numberLocale\":[1,\"number-locale\"],\"campaignId\":[1,\"campaign-id\"],\"campaignIdTextSearch\":[1,\"campaign-id-text-search\"],\"campaignIdVisualSearch\":[1,\"campaign-id-visual-search\"],\"excluded\":[1],\"productDetailsNewTab\":[4,\"product-details-new-tab\"],\"productDetailsRedirect\":[4,\"product-details-redirect\"],\"imageResolutionWidth\":[2,\"image-resolution-width\"],\"showMultipleImages\":[4,\"show-multiple-images\"],\"useDragAndDrop\":[4,\"use-drag-and-drop\"],\"exampleImageSource\":[1,\"example-image-source\"],\"textSearchShow\":[4,\"text-search-show\"],\"autoSuggestShow\":[4,\"auto-suggest-show\"],\"addToBasketShow\":[4,\"add-to-basket-show\"],\"favoriteShow\":[4,\"favorite-show\"],\"oneClickDiscoveryMode\":[1,\"one-click-discovery-mode\"],\"oneClickDiscoveryCampaigns\":[1,\"one-click-discovery-campaigns\"],\"addPriceContainer\":[4,\"add-price-container\"],\"showIntervalInputs\":[4,\"show-interval-inputs\"],\"cssUrl\":[1,\"css-url\"],\"showResultsInModal\":[4,\"show-results-in-modal\"],\"resultsPageUrl\":[1,\"results-page-url\"],\"resultsPageParams\":[1,\"results-page-params\"],\"showingInButton\":[4,\"showing-in-button\"],\"buttonElementId\":[1,\"button-element-id\"],\"buttonPressed\":[4,\"button-pressed\"],\"mode\":[1],\"resetVpsButton\":[16,\"reset-vps-button\"],\"replaceSlotsContentInButton\":[16,\"replace-slots-content-in-button\"],\"parentSlots\":[16,\"parent-slots\"],\"slidePosition\":[32],\"uploadSource\":[32],\"stream\":[32],\"products\":[32],\"modalBody\":[32],\"uploadDialogOpened\":[32],\"isCameraInitializing\":[32],\"isCameraEnabled\":[32],\"isCameraButtonClicked\":[32],\"showAspectRatioError\":[32],\"wrongImageFormat\":[32]},[[0,\"widgetTextSearchFinished\",\"textSearchFinishedHandler\"],[0,\"vviinnTextSearchStarted\",\"textSearchStartedHandler\"],[0,\"vviinnResultLoad\",\"resultLoadHandler\"],[0,\"vviinnResultView\",\"resultViewHandler\"],[0,\"vviinnCameraEnabled\",\"trackCameraEnabled\"],[0,\"vviinnImageCrop\",\"cropAreaChanges\"],[0,\"vviinnSelectObject\",\"trackDetectedObject\"],[0,\"vviinnSelectFilter\",\"trackImageSearchFilterSelected\"]],{\"active\":[\"activeWatcher\"],\"slidePosition\":[\"slidePositionWatcher\"]}],[1,\"vviinn-results\",{\"token\":[1],\"currencySign\":[1,\"currency-sign\"],\"locale\":[8],\"numberLocale\":[1,\"number-locale\"],\"campaignIdTextSearch\":[1,\"campaign-id-text-search\"],\"campaignIdVisualSearch\":[1,\"campaign-id-visual-search\"],\"pricePrefix\":[1,\"price-prefix\"],\"searchId\":[1,\"search-id\"],\"resultsPageUrl\":[1,\"results-page-url\"],\"resultsPageParams\":[1,\"results-page-params\"],\"uiSessionId\":[1025,\"ui-session-id\"],\"imageResolutionWidth\":[2,\"image-resolution-width\"],\"showMultipleImages\":[4,\"show-multiple-images\"],\"productDetailsNewTab\":[4,\"product-details-new-tab\"],\"productDetailsRedirect\":[4,\"product-details-redirect\"],\"addToBasketShow\":[4,\"add-to-basket-show\"],\"favoriteShow\":[4,\"favorite-show\"],\"textSearchQuery\":[1,\"text-search-query\"],\"filterColumn\":[1,\"filter-column\"],\"filterValue\":[1,\"filter-value\"],\"resultsCount\":[2,\"results-count\"],\"addPriceContainer\":[4,\"add-price-container\"],\"oneClickDiscoveryMode\":[1,\"one-click-discovery-mode\"],\"oneClickDiscoveryCampaigns\":[1,\"one-click-discovery-campaigns\"],\"cssUrl\":[1,\"css-url\"],\"apiPath\":[1,\"api-path\"],\"showInWidget\":[4,\"show-in-widget\"],\"buttonElementId\":[1,\"button-element-id\"],\"widgetElementId\":[1025,\"widget-element-id\"],\"showAspectRatioError\":[4,\"show-aspect-ratio-error\"],\"resetWidgetState\":[16,\"reset-widget-state\"],\"replaceSlotsContentInWidget\":[16,\"replace-slots-content-in-widget\"],\"replaceSlotsContentInButton\":[16,\"replace-slots-content-in-button\"],\"parentSlots\":[16,\"parent-slots\"],\"useInnerState\":[4,\"use-inner-state\"],\"scrollableModalBody\":[16,\"scrollable-modal-body\"],\"slotsReplaced\":[32],\"oneClickDiscoveryAppendIndex\":[32],\"oneClickDiscoverySelectedIndex\":[32],\"innerResults\":[32]},[[0,\"vviinnProductLoad\",\"trackProductLoad\"],[0,\"vviinnProductView\",\"trackProductView\"],[0,\"vviinnProductClick\",\"trackProductClick\"],[0,\"vviinnAuxClick\",\"trackAuxClick\"],[0,\"vviinnAddToBasket\",\"trackAddToBasket\"],[0,\"vviinnAddToFavorite\",\"trackAddToFavorite\"]],{\"textSearchQuery\":[\"watchTextSearchQuery\"],\"searchId\":[\"watchSearchId\"]}],[1,\"vviinn-cropper\",{\"token\":[1],\"apiPath\":[1,\"api-path\"],\"saveImageMode\":[1,\"save-image-mode\"],\"autoSearch\":[4,\"auto-search\"],\"width\":[1026],\"cssUrl\":[1,\"css-url\"],\"height\":[1026],\"basicEventData\":[1040,\"basic-event-data\"],\"showAspectRatioError\":[4,\"show-aspect-ratio-error\"],\"showInWidget\":[4,\"show-in-widget\"],\"cropper\":[32],\"selectedDetectedObject\":[32]},[[0,\"vviinnSelectObject\",\"selectDetectedObject\"],[0,\"vviinnImageCrop\",\"imageCropHandler\"]]],[1,\"vviinn-overlayed-modal\",{\"active\":[4],\"resetState\":[16,\"reset-state\"],\"buttonElementId\":[1,\"button-element-id\"],\"hideBackButton\":[4,\"hide-back-button\"],\"widgetVersion\":[1,\"widget-version\"],\"isFirstScreen\":[4,\"is-first-screen\"]}],[1,\"vviinn-image-selector\",{\"basicEventData\":[16,\"basic-event-data\"],\"startUpload\":[4,\"start-upload\"],\"loading\":[4],\"accept\":[1],\"resetVpsButton\":[16,\"reset-vps-button\"],\"token\":[1],\"apiPath\":[1,\"api-path\"],\"showInWidget\":[4,\"show-in-widget\"],\"storeName\":[1,\"store-name\"],\"state\":[16],\"useDragAndDrop\":[4,\"use-drag-and-drop\"],\"isDragOver\":[32]},[[0,\"dragover\",\"onDragOver\"],[1,\"dragleave\",\"onDragLeave\"],[0,\"drop\",\"onDrop\"],[5,\"drop\",\"onGlobalDragEnd\"],[5,\"dragend\",\"onGlobalDragEnd\"]],{\"startUpload\":[\"startUploadWatcher\"]}],[1,\"vviinn-camera\",{\"token\":[1],\"exampleImageSource\":[1,\"example-image-source\"],\"width\":[2],\"height\":[2],\"basicEventData\":[16,\"basic-event-data\"],\"srcObject\":[16,\"src-object\"],\"cameraButtonClicked\":[4,\"camera-button-clicked\"],\"showInWidget\":[4,\"show-in-widget\"],\"storeName\":[1,\"store-name\"],\"state\":[16],\"apiPath\":[1,\"api-path\"],\"selected\":[32],\"videoInitialized\":[32],\"zoomCapabilities\":[32]},null,{\"srcObject\":[\"handleSrcObjectChange\"]}],[1,\"vviinn-privacy-badge\",{\"privacyBadgeText\":[1,\"privacy-badge-text\"]}],[1,\"vviinn-selected-filters\",{\"locale\":[1],\"currencySign\":[1,\"currency-sign\"],\"showInWidget\":[4,\"show-in-widget\"],\"requestFilters\":[32],\"selectedFilterButtons\":[32],\"textSearchCustomFilter\":[32],\"imageSrc\":[32],\"intervalCustomFilters\":[32]}],[1,\"vviinn-slide\"],[1,\"vviinn-slider\",{\"position\":[514],\"elementsCount\":[32],\"internalPosition\":[32],\"swipeStartPosition\":[32],\"isRTL\":[32]},null,{\"position\":[\"positionWatchHandler\"]}],[1,\"vviinn-suggestions\",{\"showInWidget\":[4,\"show-in-widget\"],\"apiPath\":[1,\"api-path\"],\"locale\":[1],\"currencySign\":[1,\"currency-sign\"],\"pricePrefix\":[1,\"price-prefix\"],\"token\":[1],\"stream\":[32],\"appliedSuggestionFilters\":[32]}],[1,\"vviinn-teaser\"]]]]"), options);
23
23
  });
24
24
 
25
25
  exports.setNonce = index.setNonce;
@@ -49,7 +49,12 @@ const heicNotSupportedError = {
49
49
  code: "heic-not-supported",
50
50
  };
51
51
  export const checkImageType = (file) => {
52
- const fileType = file.type.split("/")[1];
52
+ var _a;
53
+ // OS drag-and-drop can yield an empty file.type; fall back to the file
54
+ // extension (which is what the browser derives the type from anyway).
55
+ const fileType = file.type
56
+ ? file.type.split("/")[1]
57
+ : (_a = file.name.split(".").pop()) === null || _a === void 0 ? void 0 : _a.toLowerCase();
53
58
  if ((fileType === "heic" || fileType === "heif") && !isWebKitEngine()) {
54
59
  return left(heicNotSupportedError);
55
60
  }
@@ -9,6 +9,8 @@ const vpsSlotNames = [
9
9
  "vviinn-teaser-text",
10
10
  "vviinn-image-upload-button-text",
11
11
  "vviinn-image-upload-icon",
12
+ "vviinn-drag-drop-icon",
13
+ "vviinn-drag-drop-text",
12
14
  "vviinn-camera-button-text-start",
13
15
  "vviinn-camera-button-text-stop",
14
16
  "vviinn-camera-icon",
@@ -0,0 +1,2 @@
1
+ import { h } from "@stencil/core";
2
+ export const DragDropImageIcon = () => (h("svg", { width: "32", height: "32", viewBox: "0 0 32 32", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, h("path", { d: "M6.66667 28C5.93333 28 5.30556 27.7389 4.78333 27.2167C4.26111 26.6944 4 26.0667 4 25.3333V6.66667C4 5.93333 4.26111 5.30556 4.78333 4.78333C5.30556 4.26111 5.93333 4 6.66667 4H25.3333C26.0667 4 26.6944 4.26111 27.2167 4.78333C27.7389 5.30556 28 5.93333 28 6.66667V25.3333C28 26.0667 27.7389 26.6944 27.2167 27.2167C26.6944 27.7389 26.0667 28 25.3333 28H6.66667ZM6.66667 25.3333H25.3333V6.66667H6.66667V25.3333ZM9.33333 22.6667H22.6667C22.9333 22.6667 23.1333 22.5444 23.2667 22.3C23.4 22.0556 23.3778 21.8222 23.2 21.6L19.5333 16.7C19.4 16.5222 19.2222 16.4333 19 16.4333C18.7778 16.4333 18.6 16.5222 18.4667 16.7L15 21.3333L12.5333 18.0333C12.4 17.8556 12.2222 17.7667 12 17.7667C11.7778 17.7667 11.6 17.8556 11.4667 18.0333L8.8 21.6C8.62222 21.8222 8.6 22.0556 8.73333 22.3C8.86667 22.5444 9.06667 22.6667 9.33333 22.6667Z", fill: "currentColor" })));
@@ -31,3 +31,4 @@ export { SearchModalImageSearchIcon } from "./icons/SearchModalImageSearchIcon";
31
31
  export { FavoriteIcon } from "./icons/FavoriteIcon";
32
32
  export { FavoriteIconPressed } from "./icons/FavoriteIconPressed";
33
33
  export { ImagePlaceholderIcon } from "./icons/ImagePlaceholder";
34
+ export { DragDropImageIcon } from "./icons/DragDropImageIcon";
@@ -12,7 +12,42 @@
12
12
  label {
13
13
  cursor: pointer;
14
14
  display: grid;
15
+ place-items: center;
15
16
  width: 100%;
16
17
  height: 100%;
17
- transition: background 0.1s ease-in-out;
18
+ transition: background 0.15s ease-in-out;
19
+ }
20
+
21
+ /* While uploading, the button shows a spinner but must not re-open the picker. */
22
+ label.loading {
23
+ pointer-events: none;
24
+ cursor: default;
25
+ }
26
+
27
+ /* Host is styled as the dashed container by the parent's .upload-drop-zone rule
28
+ (outer-tree styles win over :host); here we only style this shadow's content. */
29
+ :host(.upload-drop-zone) label {
30
+ height: 48px;
31
+ border-radius: var(--border-radius-100);
32
+ background: var(--color-primary, var(--button-bg-color-primary));
33
+ color: var(--color-text-on-color);
34
+ }
35
+
36
+ :host(.upload-drop-zone) label:hover {
37
+ background: var(--color-primary-hover, var(--button-bg-color-primary-hover));
38
+ }
39
+
40
+ .drop-zone__hint {
41
+ display: flex;
42
+ flex-direction: column;
43
+ align-items: center;
44
+ gap: var(--spacing-50);
45
+ width: 100%;
46
+ }
47
+
48
+ .drop-zone__text {
49
+ font-size: var(--font-size-body);
50
+ line-height: var(--line-height-body);
51
+ text-align: center;
52
+ color: var(--color-text-secondary);
18
53
  }