vviinn-widgets 2.140.0 → 2.142.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 (89) hide show
  1. package/dist/cjs/{index-184d0526.js → index-0f1b8791.js} +1 -0
  2. package/dist/cjs/{index-7b1337af.js → index-5aeee4dd.js} +14 -2
  3. package/dist/cjs/index-b4dc0054.js +5 -0
  4. package/dist/cjs/loader.cjs.js +1 -1
  5. package/dist/cjs/{package-92aaf777.js → package-12f93ede.js} +32 -14
  6. package/dist/cjs/search-filters_19.cjs.entry.js +72 -40
  7. package/dist/cjs/vviinn-button_2.cjs.entry.js +1 -1
  8. package/dist/cjs/vviinn-carousel_9.cjs.entry.js +6 -5
  9. package/dist/cjs/vviinn-vps-button.cjs.entry.js +17 -4
  10. package/dist/cjs/vviinn-vps-widget.cjs.entry.js +18 -7
  11. package/dist/cjs/vviinn-widgets.cjs.js +1 -1
  12. package/dist/collection/components/customized-slots.js +30 -13
  13. package/dist/collection/components/vviinn-product-card/render-helpers.js +1 -1
  14. package/dist/collection/components/vviinn-product-card/vviinn-product-card.js +11 -6
  15. package/dist/collection/components/vviinn-results/vviinn-results.js +48 -67
  16. package/dist/collection/components/vviinn-text-search/helpers/browserType.js +16 -0
  17. package/dist/collection/components/vviinn-text-search/helpers/index.js +2 -0
  18. package/dist/collection/components/vviinn-text-search/{initializeRecognition.js → helpers/initializeRecognition.js} +11 -1
  19. package/dist/collection/components/vviinn-text-search/helpers/permitSpeechRecognition.js +14 -0
  20. package/dist/collection/components/vviinn-text-search/helpers/speechTooltip.js +7 -0
  21. package/dist/collection/components/vviinn-text-search/vviinn-text-search.css +64 -7
  22. package/dist/collection/components/vviinn-text-search/vviinn-text-search.js +27 -7
  23. package/dist/collection/components/vviinn-vpr-button/vviinn-vpr-button.js +10 -5
  24. package/dist/collection/components/vviinn-vpr-widget/vviinn-vpr-widget.js +1 -1
  25. package/dist/collection/components/vviinn-vps-button/vviinn-vps-button.js +27 -8
  26. package/dist/collection/components/vviinn-vps-widget/vviinn-vps-widget.js +47 -10
  27. package/dist/collection/cssParts/index.js +1 -0
  28. package/dist/collection/dom/index.js +1 -0
  29. package/dist/collection/locale/resources.js +14 -2
  30. package/dist/esm/index-25c25361.js +3 -0
  31. package/dist/esm/{index-fc8fd2af.js → index-57cd80c9.js} +14 -2
  32. package/dist/esm/{index-7bc69f1e.js → index-a6fa0e95.js} +1 -0
  33. package/dist/esm/loader.js +1 -1
  34. package/dist/esm/{package-a8634043.js → package-b1f87a0e.js} +32 -15
  35. package/dist/esm/search-filters_19.entry.js +72 -40
  36. package/dist/esm/vviinn-button_2.entry.js +1 -1
  37. package/dist/esm/vviinn-carousel_9.entry.js +6 -5
  38. package/dist/esm/vviinn-vps-button.entry.js +17 -4
  39. package/dist/esm/vviinn-vps-widget.entry.js +17 -6
  40. package/dist/esm/vviinn-widgets.js +1 -1
  41. package/dist/types/components/customized-slots.d.ts +4 -1
  42. package/dist/types/components/vviinn-product-card/vviinn-product-card.d.ts +11 -6
  43. package/dist/types/components/vviinn-results/vviinn-results.d.ts +17 -10
  44. package/dist/types/components/vviinn-text-search/helpers/browserType.d.ts +5 -0
  45. package/dist/types/components/vviinn-text-search/helpers/index.d.ts +2 -0
  46. package/dist/types/components/vviinn-text-search/helpers/initializeRecognition.d.ts +3 -0
  47. package/dist/types/components/vviinn-text-search/helpers/speechTooltip.d.ts +1 -0
  48. package/dist/types/components/vviinn-text-search/vviinn-text-search.d.ts +5 -0
  49. package/dist/types/components/vviinn-vpr-button/vviinn-vpr-button.d.ts +10 -5
  50. package/dist/types/components/vviinn-vpr-widget/vviinn-vpr-widget.d.ts +10 -5
  51. package/dist/types/components/vviinn-vps-button/vviinn-vps-button.d.ts +13 -5
  52. package/dist/types/components.d.ts +6 -2
  53. package/dist/types/dom/index.d.ts +1 -0
  54. package/dist/vviinn-widgets/{p-66a2d81c.entry.js → p-5a860afe.entry.js} +1 -1
  55. package/dist/vviinn-widgets/p-5d613aa3.js +1 -0
  56. package/dist/vviinn-widgets/{p-690c6f87.js → p-634a70d4.js} +1 -1
  57. package/dist/vviinn-widgets/p-7d6b9dba.entry.js +1 -0
  58. package/dist/vviinn-widgets/p-7f8cc7e0.js +1 -0
  59. package/{www/build/p-acdf0479.entry.js → dist/vviinn-widgets/p-835702d7.entry.js} +1 -1
  60. package/dist/vviinn-widgets/p-bf6e514d.js +1 -0
  61. package/dist/vviinn-widgets/p-e0018edf.entry.js +11 -0
  62. package/dist/vviinn-widgets/p-f4f5b8bf.entry.js +1 -0
  63. package/dist/vviinn-widgets/vviinn-widgets.esm.js +1 -1
  64. package/package.json +1 -1
  65. package/www/build/{p-66a2d81c.entry.js → p-5a860afe.entry.js} +1 -1
  66. package/www/build/p-5d613aa3.js +1 -0
  67. package/www/build/{p-690c6f87.js → p-634a70d4.js} +1 -1
  68. package/www/build/p-7d6b9dba.entry.js +1 -0
  69. package/www/build/p-7f8cc7e0.js +1 -0
  70. package/{dist/vviinn-widgets/p-acdf0479.entry.js → www/build/p-835702d7.entry.js} +1 -1
  71. package/www/build/p-bf6e514d.js +1 -0
  72. package/www/build/p-e0018edf.entry.js +11 -0
  73. package/www/build/p-f4f5b8bf.entry.js +1 -0
  74. package/www/build/vviinn-widgets.esm.js +1 -1
  75. package/dist/collection/components/vviinn-icons/icons/RecordingIcon.js +0 -2
  76. package/dist/collection/components/vviinn-text-search/permitSpeechRecognition.js +0 -24
  77. package/dist/types/components/vviinn-icons/icons/RecordingIcon.d.ts +0 -1
  78. package/dist/types/components/vviinn-text-search/initializeRecognition.d.ts +0 -3
  79. package/dist/vviinn-widgets/p-3356dc0b.entry.js +0 -1
  80. package/dist/vviinn-widgets/p-9129f0c8.entry.js +0 -11
  81. package/dist/vviinn-widgets/p-cf848122.entry.js +0 -1
  82. package/dist/vviinn-widgets/p-d5a6d23b.js +0 -1
  83. package/dist/vviinn-widgets/p-ed35322d.js +0 -1
  84. package/www/build/p-3356dc0b.entry.js +0 -1
  85. package/www/build/p-9129f0c8.entry.js +0 -11
  86. package/www/build/p-cf848122.entry.js +0 -1
  87. package/www/build/p-d5a6d23b.js +0 -1
  88. package/www/build/p-ed35322d.js +0 -1
  89. /package/dist/types/components/vviinn-text-search/{permitSpeechRecognition.d.ts → helpers/permitSpeechRecognition.d.ts} +0 -0
@@ -107,6 +107,7 @@ const searchBarParts = makeExportPartsString([
107
107
  "text-search-input",
108
108
  "text-search-button",
109
109
  "speech-button",
110
+ "text-search-tooltip",
110
111
  "text-search-container",
111
112
  ]);
112
113
  const carouselParts = makeExportPartsString([
@@ -2279,7 +2279,13 @@ const resources = {
2279
2279
  teaserText: "Finde Produkte auf \n einem Foto",
2280
2280
  imageSearchModalTitle: "AI Search",
2281
2281
  textSearchPlaceholder: "mit Text suchen",
2282
- speechRecognitionPlaceholder: "Aufnahme...",
2282
+ speechRecognition: {
2283
+ placeholder: "Aufnahme...",
2284
+ tooltip: {
2285
+ general: "Bitte Mikrofon aktivieren",
2286
+ siri: "Bitte aktivieren Siri",
2287
+ },
2288
+ },
2283
2289
  emptyResultsBlock: {
2284
2290
  title: "Leider nichts gefunden",
2285
2291
  button: "Neues Bild hochladen",
@@ -2329,7 +2335,13 @@ const resources = {
2329
2335
  teaserText: "Find Product by Photo",
2330
2336
  imageSearchModalTitle: "AI Search",
2331
2337
  textSearchPlaceholder: "Search by text",
2332
- speechRecognitionPlaceholder: "Listening...",
2338
+ speechRecognition: {
2339
+ placeholder: "Listening...",
2340
+ tooltip: {
2341
+ general: "Please enable microphone",
2342
+ siri: "Please enable Siri",
2343
+ },
2344
+ },
2333
2345
  emptyResultsBlock: {
2334
2346
  title: "Sorry, nothing found",
2335
2347
  button: "Upload another image",
@@ -0,0 +1,5 @@
1
+ 'use strict';
2
+
3
+ const hasSlotContent = (element, name) => !!element.querySelector(`[slot="${name}"]`);
4
+
5
+ exports.hasSlotContent = hasSlotContent;
@@ -14,7 +14,7 @@ const patchEsm = () => {
14
14
  const defineCustomElements = (win, options) => {
15
15
  if (typeof window === 'undefined') return Promise.resolve();
16
16
  return patchEsm().then(() => {
17
- return index.bootstrapLazy(JSON.parse("[[\"vviinn-detected-object.cjs\",[[1,\"vviinn-detected-object\",{\"detectedObject\":[16],\"basicEventData\":[16],\"position\":[32]}]]],[\"vviinn-preloader.cjs\",[[1,\"vviinn-preloader\"]]],[\"vviinn-error.cjs\",[[1,\"vviinn-error\"]]],[\"vviinn-button_2.cjs\",[[1,\"vviinn-recommendations-sidebar\",{\"sidebarTitle\":[1,\"sidebar-title\"],\"token\":[1],\"productId\":[1,\"product-id\"],\"position\":[1],\"widgetScrollbar\":[4,\"widget-scrollbar\"],\"mode\":[1],\"campaigns\":[1],\"campaignType\":[1,\"campaign-type\"],\"color\":[1],\"locale\":[1],\"imageWidth\":[2,\"image-width\"],\"imageRatio\":[2,\"image-ratio\"],\"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\"],\"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\"],\"showInCustomContainer\":[4,\"show-in-custom-container\"],\"buttonChildren\":[16],\"apiPath\":[1,\"api-path\"],\"buttonElementId\":[1,\"button-element-id\"],\"widgetVersion\":[1,\"widget-version\"],\"showingInButton\":[4,\"showing-in-button\"],\"state\":[32],\"sourceProduct\":[32]},[[0,\"vviinnUpdatingAllCardsStarted\",\"updatingAllCardsStarted\"],[0,\"vviinnUpdatingAllCardsFinished\",\"updatingAllCardsFinished\"],[16,\"click\",\"bodyClickListener\"],[0,\"sourceProductReceived\",\"sourceProductReceived\"]]],[1,\"vviinn-button\",{\"addStyle\":[4,\"add-style\"]}]]],[\"search-filters_19.cjs\",[[1,\"vviinn-results\",{\"token\":[1],\"searchId\":[1,\"search-id\"],\"uiSessionId\":[1025,\"ui-session-id\"],\"imageResolutionWidth\":[2,\"image-resolution-width\"],\"currencySign\":[1,\"currency-sign\"],\"locale\":[8],\"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\"],\"textSearchRequestId\":[1,\"text-search-request-id\"],\"filterColumn\":[1,\"filter-column\"],\"filterValue\":[1,\"filter-value\"],\"resultsCount\":[2,\"results-count\"],\"addPriceContainer\":[4,\"add-price-container\"],\"showInWidget\":[4,\"show-in-widget\"],\"oneClickDiscoveryMode\":[1,\"one-click-discovery-mode\"],\"oneClickDiscoveryCampaigns\":[1,\"one-click-discovery-campaigns\"],\"apiPath\":[1,\"api-path\"],\"buttonElementId\":[1,\"button-element-id\"],\"widgetElementId\":[1,\"widget-element-id\"],\"showAspectRatioError\":[4,\"show-aspect-ratio-error\"],\"trackingDeactivated\":[1028,\"tracking-deactivated\"],\"resetState\":[16],\"replaceSlotsContentInWidget\":[16],\"replaceSlotsContentInButton\":[16],\"recommendations\":[32],\"innerTextSearchQuery\":[32],\"innerTextSearchRequestId\":[32],\"slotsReplaced\":[32],\"oneClickDiscoveryAppendIndex\":[32],\"oneClickDiscoverySelectedIndex\":[32],\"isTextSearch\":[32],\"vprSlot\":[32]},[[0,\"vviinnProductLoad\",\"trackProductLoad\"],[0,\"vviinnProductView\",\"trackProductView\"],[0,\"vviinnProductClick\",\"trackProductClick\"],[0,\"vviinnAuxClick\",\"trackAuxClick\"]]],[1,\"vviinn-image-view\",{\"basicEventData\":[16],\"setShowAspectRatioError\":[16],\"showAspectRatioError\":[4,\"show-aspect-ratio-error\"],\"url\":[32],\"width\":[32],\"height\":[32],\"cropper\":[32],\"hidePreloader\":[32]}],[1,\"vviinn-overlayed-modal\",{\"active\":[4],\"resetState\":[16],\"buttonElementId\":[1,\"button-element-id\"],\"hideBackButton\":[4,\"hide-back-button\"],\"widgetVersion\":[1,\"widget-version\"],\"isFirstScreen\":[4,\"is-first-screen\"]}],[1,\"vviinn-text-search\",{\"token\":[1],\"locale\":[1],\"mode\":[1],\"showInWidget\":[4,\"show-in-widget\"],\"searchQuery\":[1025,\"search-query\"],\"apiPath\":[1,\"api-path\"],\"isLoading\":[32],\"isRecording\":[32]},[[0,\"vviinnImageUploadFinished\",\"imageUploadFinished\"]]],[1,\"vviinn-server-error\",{\"handler\":[16]}],[1,\"vviinn-wrong-format\",{\"handler\":[16]}],[1,\"search-filters\",{\"filter\":[16],\"basicEventData\":[16],\"selectedFilter\":[32],\"hideFilters\":[32]}],[1,\"vviinn-example-image\",{\"exampleImageSource\":[1,\"example-image-source\"],\"width\":[2],\"height\":[2],\"basicEventData\":[16],\"srcObject\":[16],\"cameraButtonClicked\":[4,\"camera-button-clicked\"],\"selected\":[32],\"videoInitialized\":[32],\"zoomCapabilities\":[32]}],[1,\"vviinn-privacy-badge\",{\"privacyBadgeText\":[1,\"privacy-badge-text\"]}],[1,\"vviinn-slide\"],[1,\"vviinn-slider\",{\"position\":[514],\"elementsCount\":[32],\"internalPosition\":[32],\"swipeStartPosition\":[32],\"isRTL\":[32]}],[1,\"vviinn-teaser\"],[1,\"vviinn-vpr-button\",{\"token\":[1],\"productId\":[1,\"product-id\"],\"mode\":[1],\"campaigns\":[1],\"excluded\":[1],\"campaignType\":[1,\"campaign-type\"],\"locale\":[1],\"color\":[1],\"imageWidth\":[2,\"image-width\"],\"imageRatio\":[2,\"image-ratio\"],\"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\"],\"addPriceContainer\":[4,\"add-price-container\"],\"setModeDiscounts\":[1,\"set-mode-discounts\"],\"updateButtonLocation\":[1,\"update-button-location\"],\"sidebarTitle\":[1,\"sidebar-title\"],\"modalScrollbar\":[4,\"modal-scrollbar\"],\"position\":[1],\"addStyle\":[4,\"add-style\"],\"appendSidebarTo\":[1,\"append-sidebar-to\"],\"favoriteShow\":[4,\"favorite-show\"],\"appendSidebarToElement\":[16],\"apiPath\":[1,\"api-path\"],\"targetAppendSidebarTo\":[32]}],[1,\"vviinn-cropper\",{\"basicEventDataString\":[1,\"basic-event-data-string\"],\"detectedObjectsString\":[1,\"detected-objects-string\"],\"url\":[1],\"width\":[2],\"height\":[2],\"detectedObjects\":[32],\"basicEventData\":[32],\"cropper\":[32]},[[0,\"vviinnSelectObject\",\"selectDetectedObject\"]]],[1,\"vviinn-empty-results\",{\"handler\":[16]}],[1,\"vviinn-image-selector\",{\"basicEventData\":[16],\"startUpload\":[4,\"start-upload\"],\"loading\":[4],\"accept\":[1],\"resetVpsButton\":[16],\"token\":[1],\"apiPath\":[1,\"api-path\"],\"showInTextSearch\":[4,\"show-in-text-search\"],\"uploadStartedHandler\":[16]}],[1,\"vviinn-wrong-aspect-ratio\",{\"handler\":[16]}],[1,\"vviinn-modal\",{\"active\":[1540],\"resetState\":[16],\"buttonElementId\":[1,\"button-element-id\"],\"widgetVersion\":[1,\"widget-version\"],\"hideBackButton\":[4,\"hide-back-button\"],\"isFirstScreen\":[4,\"is-first-screen\"],\"slider\":[32]}],[1,\"vviinn-overlay\"]]],[\"vviinn-vps-widget.cjs\",[[1,\"vviinn-vps-widget\",{\"token\":[1],\"active\":[1028],\"currencySign\":[1,\"currency-sign\"],\"locale\":[1],\"campaignId\":[1,\"campaign-id\"],\"excluded\":[1],\"productDetailsNewTab\":[4,\"product-details-new-tab\"],\"productDetailsRedirect\":[4,\"product-details-redirect\"],\"imageResolutionWidth\":[2,\"image-resolution-width\"],\"exampleImageSource\":[1,\"example-image-source\"],\"textSearchShow\":[4,\"text-search-show\"],\"addToBasketShow\":[4,\"add-to-basket-show\"],\"favoriteShow\":[4,\"favorite-show\"],\"oneClickDiscoveryShow\":[4,\"one-click-discovery-show\"],\"oneClickDiscoveryCampaigns\":[1,\"one-click-discovery-campaigns\"],\"addPriceContainer\":[4,\"add-price-container\"],\"apiPath\":[1,\"api-path\"],\"showingInButton\":[4,\"showing-in-button\"],\"buttonElementId\":[1,\"button-element-id\"],\"buttonPressed\":[4,\"button-pressed\"],\"mode\":[1],\"resetVpsButton\":[16],\"replaceSlotsContentInButton\":[16],\"slidePosition\":[32],\"width\":[32],\"wrongImageFormat\":[32],\"trackingDeactivated\":[32],\"stream\":[32],\"cameraInitializing\":[32],\"cameraEnabled\":[32],\"cameraButtonClicked\":[32],\"uploadSource\":[32],\"showAspectRatioError\":[32],\"products\":[32],\"searchQuery\":[32],\"requestId\":[32]},[[0,\"widgetTextSearchFinished\",\"textSearchFinishedHandler\"],[0,\"vviinnResultLoad\",\"resultLoadHandler\"],[0,\"vviinnResultView\",\"resultViewHandler\"],[0,\"vviinnCameraEnabled\",\"trackCameraEnabled\"],[0,\"vviinnImageCrop\",\"trachSearchAreaChanges\"],[0,\"vviinnSelectObject\",\"trackDetectedObject\"],[0,\"vviinnSelectFilter\",\"trackFilterSelected\"]]]]],[\"vviinn-vps-button.cjs\",[[1,\"vviinn-vps-button\",{\"token\":[1],\"currencySign\":[1,\"currency-sign\"],\"locale\":[1],\"campaignId\":[1,\"campaign-id\"],\"addStyle\":[4,\"add-style\"],\"mode\":[1],\"excluded\":[1],\"productDetailsNewTab\":[4,\"product-details-new-tab\"],\"productDetailsRedirect\":[4,\"product-details-redirect\"],\"imageResolutionWidth\":[2,\"image-resolution-width\"],\"exampleImageSource\":[1,\"example-image-source\"],\"textSearchShow\":[4,\"text-search-show\"],\"addToBasketShow\":[4,\"add-to-basket-show\"],\"favoriteShow\":[4,\"favorite-show\"],\"oneClickDiscoveryShow\":[4,\"one-click-discovery-show\"],\"oneClickDiscoveryCampaigns\":[1,\"one-click-discovery-campaigns\"],\"addPriceContainer\":[4,\"add-price-container\"],\"apiPath\":[1,\"api-path\"],\"buttonPressed\":[32]},[[0,\"vviinnWidgetClose\",\"handleModalClosed\"]]]]],[\"vviinn-selected-filters.cjs\",[[1,\"vviinn-selected-filters\",{\"showInWidget\":[4,\"show-in-widget\"],\"filters\":[32],\"requestFilters\":[32]}]]],[\"vviinn-carousel_9.cjs\",[[1,\"vviinn-vpr-widget\",{\"token\":[1],\"productId\":[1,\"product-id\"],\"mode\":[1],\"campaigns\":[1],\"excluded\":[1],\"campaignType\":[1,\"campaign-type\"],\"locale\":[1],\"color\":[1],\"imageWidth\":[2,\"image-width\"],\"imageRatio\":[2,\"image-ratio\"],\"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\"],\"showScroll\":[4,\"show-scroll\"],\"apiPath\":[1,\"api-path\"],\"useCarousel\":[4,\"use-carousel\"],\"showingInButton\":[4,\"showing-in-button\"],\"buttonElementId\":[1,\"button-element-id\"],\"closed\":[4],\"opened\":[4],\"recommendations\":[32],\"dynamicFilters\":[32],\"sourceProduct\":[32],\"recommendationsLoading\":[32],\"trackingDeactivated\":[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,\"vviinnUpdatingAllCardsFinished\",\"updatingAllCardsFinishedListener\"],[0,\"vviinnFiltersChanged\",\"filtersChanged\"]]],[0,\"vviinn-carousel\",{\"mode\":[1],\"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],\"widgetVersion\":[1,\"widget-version\"],\"addToBasketShow\":[4,\"add-to-basket-show\"],\"updatingAllCards\":[4,\"updating-all-cards\"],\"updateButtonLocation\":[1,\"update-button-location\"],\"replaceSlotsContent\":[16],\"setModeDiscountsArray\":[16],\"imageRatio\":[2,\"image-ratio\"],\"addPriceContainer\":[4,\"add-price-container\"],\"favoriteShow\":[4,\"favorite-show\"],\"currencySign\":[1,\"currency-sign\"],\"pricePrefix\":[1,\"price-prefix\"],\"locale\":[1],\"setItemsAmount\":[2,\"set-items-amount\"],\"moveDirection\":[32],\"contentGroups\":[32],\"activeContentGroup\":[32],\"isRTL\":[32],\"crossSellingRecommendations\":[32],\"setModeDiscount\":[32],\"currentDiscountIndex\":[32],\"setModeAppliedDiscounts\":[32]},[[0,\"vviinnCrossSellingClick\",\"crossSellingClickListener\"],[0,\"vviinnAddToBasket\",\"trackAddToBasket\"]]],[1,\"vviinn-extended-filters\",{\"filters\":[1040],\"locale\":[1],\"mode\":[1],\"currencySign\":[1,\"currency-sign\"],\"showHeader\":[4,\"show-header\"],\"filtersString\":[1,\"filters-string\"],\"showInWidget\":[4,\"show-in-widget\"],\"widgetElement\":[8,\"widget-element\"],\"innerFilters\":[32],\"requestFilters\":[32],\"showMore\":[32],\"selectedMoreOptions\":[32],\"displayedOptionsCount\":[32]},[[16,\"click\",\"bodyClickListener\"]]],[1,\"vviinn-filters\",{\"filters\":[1040],\"filtersString\":[1,\"filters-string\"],\"showInWidget\":[4,\"show-in-widget\"],\"currencySign\":[1,\"currency-sign\"],\"innerFilters\":[32],\"selectedFilter\":[32],\"requestFilters\":[32]}],[1,\"vviinn-product-card\",{\"brand\":[1],\"currency\":[1],\"image\":[1],\"imageRatio\":[2,\"image-ratio\"],\"imageWidth\":[2,\"image-width\"],\"locale\":[1],\"price\":[2],\"basePrice\":[1,\"base-price\"],\"pricePrefix\":[1,\"price-prefix\"],\"productTitle\":[1,\"product-title\"],\"productType\":[1,\"product-type\"],\"setMode\":[4,\"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],\"productId\":[1,\"product-id\"],\"campaignTypeId\":[1,\"campaign-type-id\"],\"widgetElementId\":[1,\"widget-element-id\"],\"buttonElementId\":[1,\"button-element-id\"],\"widgetVersion\":[1,\"widget-version\"],\"deeplink\":[1],\"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\"],\"isTransitioning\":[32],\"basketButonPressed\":[32],\"favoriteButonPressed\":[32]},[[0,\"vviinnCrossSellingClick\",\"crossSellingClickListener\"]]],[1,\"vviinn-extended-filters-button\",{\"handleClick\":[16],\"showInWidget\":[4,\"show-in-widget\"]}],[1,\"vviinn-energy-label\",{\"classIconUrls\":[16],\"productType\":[1,\"product-type\"],\"classDataSheetUrl\":[1,\"class-data-sheet-url\"],\"iconDirection\":[1,\"icon-direction\"]}],[1,\"vviinn-price-range\",{\"histogram\":[16],\"addStyle\":[4,\"add-style\"],\"priceChangeHandler\":[16],\"selectedInterval\":[16],\"currencySign\":[1,\"currency-sign\"],\"minIndex\":[32],\"maxIndex\":[32],\"scalingFactor\":[32]}],[1,\"vviinn-skeleton\",{\"height\":[2],\"halfWidth\":[4,\"half-width\"]}]]]]"), options);
17
+ return index.bootstrapLazy(JSON.parse("[[\"vviinn-detected-object.cjs\",[[1,\"vviinn-detected-object\",{\"detectedObject\":[16],\"basicEventData\":[16],\"position\":[32]}]]],[\"vviinn-preloader.cjs\",[[1,\"vviinn-preloader\"]]],[\"vviinn-error.cjs\",[[1,\"vviinn-error\"]]],[\"vviinn-button_2.cjs\",[[1,\"vviinn-recommendations-sidebar\",{\"sidebarTitle\":[1,\"sidebar-title\"],\"token\":[1],\"productId\":[1,\"product-id\"],\"position\":[1],\"widgetScrollbar\":[4,\"widget-scrollbar\"],\"mode\":[1],\"campaigns\":[1],\"campaignType\":[1,\"campaign-type\"],\"color\":[1],\"locale\":[1],\"imageWidth\":[2,\"image-width\"],\"imageRatio\":[2,\"image-ratio\"],\"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\"],\"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\"],\"showInCustomContainer\":[4,\"show-in-custom-container\"],\"buttonChildren\":[16],\"apiPath\":[1,\"api-path\"],\"buttonElementId\":[1,\"button-element-id\"],\"widgetVersion\":[1,\"widget-version\"],\"showingInButton\":[4,\"showing-in-button\"],\"state\":[32],\"sourceProduct\":[32]},[[0,\"vviinnUpdatingAllCardsStarted\",\"updatingAllCardsStarted\"],[0,\"vviinnUpdatingAllCardsFinished\",\"updatingAllCardsFinished\"],[16,\"click\",\"bodyClickListener\"],[0,\"sourceProductReceived\",\"sourceProductReceived\"]]],[1,\"vviinn-button\",{\"addStyle\":[4,\"add-style\"]}]]],[\"search-filters_19.cjs\",[[1,\"vviinn-results\",{\"token\":[1],\"searchId\":[1,\"search-id\"],\"uiSessionId\":[1025,\"ui-session-id\"],\"imageResolutionWidth\":[2,\"image-resolution-width\"],\"currencySign\":[1,\"currency-sign\"],\"locale\":[8],\"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\"],\"textSearchRequestId\":[1,\"text-search-request-id\"],\"filterColumn\":[1,\"filter-column\"],\"filterValue\":[1,\"filter-value\"],\"resultsCount\":[2,\"results-count\"],\"addPriceContainer\":[4,\"add-price-container\"],\"showInWidget\":[4,\"show-in-widget\"],\"oneClickDiscoveryMode\":[1,\"one-click-discovery-mode\"],\"oneClickDiscoveryCampaigns\":[1,\"one-click-discovery-campaigns\"],\"apiPath\":[1,\"api-path\"],\"buttonElementId\":[1,\"button-element-id\"],\"widgetElementId\":[1,\"widget-element-id\"],\"showAspectRatioError\":[4,\"show-aspect-ratio-error\"],\"trackingDeactivated\":[1028,\"tracking-deactivated\"],\"resetState\":[16],\"replaceSlotsContentInWidget\":[16],\"replaceSlotsContentInButton\":[16],\"hasVprIconSlot\":[4,\"has-vpr-icon-slot\"],\"recommendations\":[32],\"innerTextSearchQuery\":[32],\"innerTextSearchRequestId\":[32],\"slotsReplaced\":[32],\"oneClickDiscoveryAppendIndex\":[32],\"oneClickDiscoverySelectedIndex\":[32],\"isTextSearch\":[32]},[[0,\"vviinnProductLoad\",\"trackProductLoad\"],[0,\"vviinnProductView\",\"trackProductView\"],[0,\"vviinnProductClick\",\"trackProductClick\"],[0,\"vviinnAuxClick\",\"trackAuxClick\"]]],[1,\"vviinn-image-view\",{\"basicEventData\":[16],\"setShowAspectRatioError\":[16],\"showAspectRatioError\":[4,\"show-aspect-ratio-error\"],\"url\":[32],\"width\":[32],\"height\":[32],\"cropper\":[32],\"hidePreloader\":[32]}],[1,\"vviinn-overlayed-modal\",{\"active\":[4],\"resetState\":[16],\"buttonElementId\":[1,\"button-element-id\"],\"hideBackButton\":[4,\"hide-back-button\"],\"widgetVersion\":[1,\"widget-version\"],\"isFirstScreen\":[4,\"is-first-screen\"]}],[1,\"vviinn-text-search\",{\"token\":[1],\"locale\":[1],\"mode\":[1],\"showInWidget\":[4,\"show-in-widget\"],\"searchQuery\":[1025,\"search-query\"],\"apiPath\":[1,\"api-path\"],\"isLoading\":[32],\"isRecording\":[32],\"showTooltip\":[32]},[[0,\"vviinnImageUploadFinished\",\"imageUploadFinished\"]]],[1,\"vviinn-server-error\",{\"handler\":[16]}],[1,\"vviinn-wrong-format\",{\"handler\":[16]}],[1,\"search-filters\",{\"filter\":[16],\"basicEventData\":[16],\"selectedFilter\":[32],\"hideFilters\":[32]}],[1,\"vviinn-example-image\",{\"exampleImageSource\":[1,\"example-image-source\"],\"width\":[2],\"height\":[2],\"basicEventData\":[16],\"srcObject\":[16],\"cameraButtonClicked\":[4,\"camera-button-clicked\"],\"selected\":[32],\"videoInitialized\":[32],\"zoomCapabilities\":[32]}],[1,\"vviinn-privacy-badge\",{\"privacyBadgeText\":[1,\"privacy-badge-text\"]}],[1,\"vviinn-slide\"],[1,\"vviinn-slider\",{\"position\":[514],\"elementsCount\":[32],\"internalPosition\":[32],\"swipeStartPosition\":[32],\"isRTL\":[32]}],[1,\"vviinn-teaser\"],[1,\"vviinn-vpr-button\",{\"token\":[1],\"productId\":[1,\"product-id\"],\"mode\":[1],\"campaigns\":[1],\"excluded\":[1],\"campaignType\":[1,\"campaign-type\"],\"locale\":[1],\"color\":[1],\"imageWidth\":[2,\"image-width\"],\"imageRatio\":[2,\"image-ratio\"],\"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\"],\"addPriceContainer\":[4,\"add-price-container\"],\"setModeDiscounts\":[1,\"set-mode-discounts\"],\"updateButtonLocation\":[1,\"update-button-location\"],\"sidebarTitle\":[1,\"sidebar-title\"],\"modalScrollbar\":[4,\"modal-scrollbar\"],\"position\":[1],\"addStyle\":[4,\"add-style\"],\"appendSidebarTo\":[1,\"append-sidebar-to\"],\"favoriteShow\":[4,\"favorite-show\"],\"appendSidebarToElement\":[16],\"apiPath\":[1,\"api-path\"],\"targetAppendSidebarTo\":[32]}],[1,\"vviinn-cropper\",{\"basicEventDataString\":[1,\"basic-event-data-string\"],\"detectedObjectsString\":[1,\"detected-objects-string\"],\"url\":[1],\"width\":[2],\"height\":[2],\"detectedObjects\":[32],\"basicEventData\":[32],\"cropper\":[32]},[[0,\"vviinnSelectObject\",\"selectDetectedObject\"]]],[1,\"vviinn-empty-results\",{\"handler\":[16]}],[1,\"vviinn-image-selector\",{\"basicEventData\":[16],\"startUpload\":[4,\"start-upload\"],\"loading\":[4],\"accept\":[1],\"resetVpsButton\":[16],\"token\":[1],\"apiPath\":[1,\"api-path\"],\"showInTextSearch\":[4,\"show-in-text-search\"],\"uploadStartedHandler\":[16]}],[1,\"vviinn-wrong-aspect-ratio\",{\"handler\":[16]}],[1,\"vviinn-modal\",{\"active\":[1540],\"resetState\":[16],\"buttonElementId\":[1,\"button-element-id\"],\"widgetVersion\":[1,\"widget-version\"],\"hideBackButton\":[4,\"hide-back-button\"],\"isFirstScreen\":[4,\"is-first-screen\"],\"slider\":[32]}],[1,\"vviinn-overlay\"]]],[\"vviinn-vps-widget.cjs\",[[1,\"vviinn-vps-widget\",{\"token\":[1],\"active\":[1028],\"currencySign\":[1,\"currency-sign\"],\"locale\":[1],\"campaignId\":[1,\"campaign-id\"],\"excluded\":[1],\"productDetailsNewTab\":[4,\"product-details-new-tab\"],\"productDetailsRedirect\":[4,\"product-details-redirect\"],\"imageResolutionWidth\":[2,\"image-resolution-width\"],\"exampleImageSource\":[1,\"example-image-source\"],\"textSearchShow\":[4,\"text-search-show\"],\"addToBasketShow\":[4,\"add-to-basket-show\"],\"favoriteShow\":[4,\"favorite-show\"],\"oneClickDiscoveryShow\":[4,\"one-click-discovery-show\"],\"oneClickDiscoveryCampaigns\":[1,\"one-click-discovery-campaigns\"],\"addPriceContainer\":[4,\"add-price-container\"],\"apiPath\":[1,\"api-path\"],\"showingInButton\":[4,\"showing-in-button\"],\"buttonElementId\":[1,\"button-element-id\"],\"buttonPressed\":[4,\"button-pressed\"],\"mode\":[1],\"resetVpsButton\":[16],\"replaceSlotsContentInButton\":[16],\"hasVprIconSlot\":[1028,\"has-vpr-icon-slot\"],\"slidePosition\":[32],\"width\":[32],\"wrongImageFormat\":[32],\"trackingDeactivated\":[32],\"stream\":[32],\"cameraInitializing\":[32],\"cameraEnabled\":[32],\"cameraButtonClicked\":[32],\"uploadSource\":[32],\"showAspectRatioError\":[32],\"products\":[32],\"searchQuery\":[32],\"requestId\":[32]},[[0,\"widgetTextSearchFinished\",\"textSearchFinishedHandler\"],[0,\"vviinnResultLoad\",\"resultLoadHandler\"],[0,\"vviinnResultView\",\"resultViewHandler\"],[0,\"vviinnCameraEnabled\",\"trackCameraEnabled\"],[0,\"vviinnImageCrop\",\"trachSearchAreaChanges\"],[0,\"vviinnSelectObject\",\"trackDetectedObject\"],[0,\"vviinnSelectFilter\",\"trackFilterSelected\"]]]]],[\"vviinn-vps-button.cjs\",[[1,\"vviinn-vps-button\",{\"token\":[1],\"currencySign\":[1,\"currency-sign\"],\"locale\":[1],\"campaignId\":[1,\"campaign-id\"],\"addStyle\":[4,\"add-style\"],\"mode\":[1],\"excluded\":[1],\"productDetailsNewTab\":[4,\"product-details-new-tab\"],\"productDetailsRedirect\":[4,\"product-details-redirect\"],\"imageResolutionWidth\":[2,\"image-resolution-width\"],\"exampleImageSource\":[1,\"example-image-source\"],\"textSearchShow\":[4,\"text-search-show\"],\"addToBasketShow\":[4,\"add-to-basket-show\"],\"favoriteShow\":[4,\"favorite-show\"],\"oneClickDiscoveryShow\":[4,\"one-click-discovery-show\"],\"oneClickDiscoveryCampaigns\":[1,\"one-click-discovery-campaigns\"],\"addPriceContainer\":[4,\"add-price-container\"],\"apiPath\":[1,\"api-path\"],\"buttonPressed\":[32]},[[0,\"vviinnWidgetClose\",\"handleModalClosed\"]]]]],[\"vviinn-selected-filters.cjs\",[[1,\"vviinn-selected-filters\",{\"showInWidget\":[4,\"show-in-widget\"],\"filters\":[32],\"requestFilters\":[32]}]]],[\"vviinn-carousel_9.cjs\",[[1,\"vviinn-vpr-widget\",{\"token\":[1],\"productId\":[1,\"product-id\"],\"mode\":[1],\"campaigns\":[1],\"excluded\":[1],\"campaignType\":[1,\"campaign-type\"],\"locale\":[1],\"color\":[1],\"imageWidth\":[2,\"image-width\"],\"imageRatio\":[2,\"image-ratio\"],\"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\"],\"showScroll\":[4,\"show-scroll\"],\"apiPath\":[1,\"api-path\"],\"useCarousel\":[4,\"use-carousel\"],\"showingInButton\":[4,\"showing-in-button\"],\"buttonElementId\":[1,\"button-element-id\"],\"closed\":[4],\"opened\":[4],\"recommendations\":[32],\"dynamicFilters\":[32],\"sourceProduct\":[32],\"recommendationsLoading\":[32],\"trackingDeactivated\":[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,\"vviinnUpdatingAllCardsFinished\",\"updatingAllCardsFinishedListener\"],[0,\"vviinnFiltersChanged\",\"filtersChanged\"]]],[0,\"vviinn-carousel\",{\"mode\":[1],\"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],\"widgetVersion\":[1,\"widget-version\"],\"addToBasketShow\":[4,\"add-to-basket-show\"],\"updatingAllCards\":[4,\"updating-all-cards\"],\"updateButtonLocation\":[1,\"update-button-location\"],\"replaceSlotsContent\":[16],\"setModeDiscountsArray\":[16],\"imageRatio\":[2,\"image-ratio\"],\"addPriceContainer\":[4,\"add-price-container\"],\"favoriteShow\":[4,\"favorite-show\"],\"currencySign\":[1,\"currency-sign\"],\"pricePrefix\":[1,\"price-prefix\"],\"locale\":[1],\"setItemsAmount\":[2,\"set-items-amount\"],\"moveDirection\":[32],\"contentGroups\":[32],\"activeContentGroup\":[32],\"isRTL\":[32],\"crossSellingRecommendations\":[32],\"setModeDiscount\":[32],\"currentDiscountIndex\":[32],\"setModeAppliedDiscounts\":[32]},[[0,\"vviinnCrossSellingClick\",\"crossSellingClickListener\"],[0,\"vviinnAddToBasket\",\"trackAddToBasket\"]]],[1,\"vviinn-extended-filters\",{\"filters\":[1040],\"locale\":[1],\"mode\":[1],\"currencySign\":[1,\"currency-sign\"],\"showHeader\":[4,\"show-header\"],\"filtersString\":[1,\"filters-string\"],\"showInWidget\":[4,\"show-in-widget\"],\"widgetElement\":[8,\"widget-element\"],\"innerFilters\":[32],\"requestFilters\":[32],\"showMore\":[32],\"selectedMoreOptions\":[32],\"displayedOptionsCount\":[32]},[[16,\"click\",\"bodyClickListener\"]]],[1,\"vviinn-filters\",{\"filters\":[1040],\"filtersString\":[1,\"filters-string\"],\"showInWidget\":[4,\"show-in-widget\"],\"currencySign\":[1,\"currency-sign\"],\"innerFilters\":[32],\"selectedFilter\":[32],\"requestFilters\":[32]}],[1,\"vviinn-product-card\",{\"brand\":[1],\"currency\":[1],\"image\":[1],\"imageRatio\":[2,\"image-ratio\"],\"imageWidth\":[2,\"image-width\"],\"locale\":[1],\"price\":[2],\"basePrice\":[1,\"base-price\"],\"pricePrefix\":[1,\"price-prefix\"],\"productTitle\":[1,\"product-title\"],\"productType\":[1,\"product-type\"],\"setMode\":[4,\"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],\"productId\":[1,\"product-id\"],\"campaignTypeId\":[1,\"campaign-type-id\"],\"widgetElementId\":[1,\"widget-element-id\"],\"buttonElementId\":[1,\"button-element-id\"],\"widgetVersion\":[1,\"widget-version\"],\"deeplink\":[1],\"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\"],\"isTransitioning\":[32],\"basketButonPressed\":[32],\"favoriteButonPressed\":[32]},[[0,\"vviinnCrossSellingClick\",\"crossSellingClickListener\"]]],[1,\"vviinn-extended-filters-button\",{\"handleClick\":[16],\"showInWidget\":[4,\"show-in-widget\"]}],[1,\"vviinn-energy-label\",{\"classIconUrls\":[16],\"productType\":[1,\"product-type\"],\"classDataSheetUrl\":[1,\"class-data-sheet-url\"],\"iconDirection\":[1,\"icon-direction\"]}],[1,\"vviinn-price-range\",{\"histogram\":[16],\"addStyle\":[4,\"add-style\"],\"priceChangeHandler\":[16],\"selectedInterval\":[16],\"currencySign\":[1,\"currency-sign\"],\"minIndex\":[32],\"maxIndex\":[32],\"scalingFactor\":[32]}],[1,\"vviinn-skeleton\",{\"height\":[2],\"halfWidth\":[4,\"half-width\"]}]]]]"), options);
18
18
  });
19
19
  };
20
20
 
@@ -21,12 +21,6 @@ const vprSlotsNames = [
21
21
  "vviinn-recommendations-subtitle",
22
22
  "vviinn-update-button-text",
23
23
  "vviinn-update-button-icon",
24
- "vviinn-basket-button-text",
25
- "vviinn-basket-button-icon",
26
- "vviinn-basket-button-text-pressed",
27
- "vviinn-basket-button-icon-pressed",
28
- "vviinn-favorite-icon",
29
- "vviinn-favorite-icon-pressed",
30
24
  ];
31
25
  const vpsSlotsNames = [
32
26
  "vviinn-teaser-text",
@@ -44,15 +38,38 @@ const filtersSlotsNames = [
44
38
  "vviinn-extended-filters-apply",
45
39
  "vviinn-extended-filters-reset",
46
40
  ];
47
- const productCardSlotsNames = ["vviinn-energy-label-data-sheet-text"];
41
+ const productCardSlotsNames = [
42
+ "vviinn-basket-button-icon",
43
+ "vviinn-basket-button-text",
44
+ "vviinn-basket-button-icon-pressed",
45
+ "vviinn-basket-button-text-pressed",
46
+ "vviinn-favorite-icon",
47
+ "vviinn-favorite-icon-pressed",
48
+ "vviinn-energy-label-data-sheet-text",
49
+ "vviinn-custom-label-0",
50
+ "vviinn-custom-label-1",
51
+ "vviinn-custom-label-2",
52
+ "vviinn-custom-label-3",
53
+ "vviinn-custom-label-4",
54
+ ];
48
55
  const renderNamedSlot = (name) => index.h("slot", { name: name });
49
- const SlotSkeleton = (renderType) => {
50
- return (renderType === "vps"
51
- ? [...vpsSlotsNames, ...filtersSlotsNames, ...productCardSlotsNames]
52
- : renderType === "filters"
53
- ? filtersSlotsNames
54
- : [...vprSlotsNames, ...filtersSlotsNames, ...productCardSlotsNames]).map(renderNamedSlot);
56
+ const getSlotsNamesList = (renderType) => {
57
+ switch (renderType) {
58
+ case "search": {
59
+ return [...vpsSlotsNames, ...filtersSlotsNames, ...productCardSlotsNames];
60
+ }
61
+ case "discovery": {
62
+ return [...vprSlotsNames, ...filtersSlotsNames, ...productCardSlotsNames];
63
+ }
64
+ case "filters": {
65
+ return filtersSlotsNames;
66
+ }
67
+ case "card": {
68
+ return productCardSlotsNames;
69
+ }
70
+ }
55
71
  };
72
+ const SlotSkeleton = (renderType) => getSlotsNamesList(renderType).map(renderNamedSlot);
56
73
  const getSlots = (element) => Array.from(element.shadowRoot.querySelectorAll("slot"));
57
74
  const getNameAttribute = (element) => element.getAttribute("name");
58
75
  const getSlotAttribute = (element) => element.getAttribute("slot");
@@ -123,11 +140,12 @@ const slotChangeListener = (component, element) => {
123
140
  component.connectedCallback.call(component);
124
141
  };
125
142
 
126
- const version = "2.140.0";
143
+ const version = "2.142.0";
127
144
 
128
145
  exports.SlotSkeleton = SlotSkeleton;
129
146
  exports.campaignTypeNames = campaignTypeNames;
130
147
  exports.fold = fold;
131
148
  exports.fromString = fromString;
149
+ exports.productCardSlotsNames = productCardSlotsNames;
132
150
  exports.slotChangeListener = slotChangeListener;
133
151
  exports.version = version;
@@ -5,10 +5,11 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  const index = require('./index-711d38e6.js');
6
6
  const search_store = require('./search.store-2527c63a.js');
7
7
  const Rectangle = require('./Rectangle-99c25901.js');
8
- const index$1 = require('./index-7b1337af.js');
9
- const _package = require('./package-92aaf777.js');
8
+ const index$1 = require('./index-5aeee4dd.js');
9
+ const _package = require('./package-12f93ede.js');
10
10
  const index$2 = require('./index-4c9a5dbb.js');
11
- const index$3 = require('./index-184d0526.js');
11
+ const index$3 = require('./index-0f1b8791.js');
12
+ const index$4 = require('./index-b4dc0054.js');
12
13
  const SearchModalUploadIcon = require('./SearchModalUploadIcon-23f00a14.js');
13
14
 
14
15
  const MinusIcon = () => (index.h("svg", { width: "32", height: "32", viewBox: "0 0 32 32", fill: "none", xmlns: "http://www.w3.org/2000/svg" },
@@ -3970,8 +3971,9 @@ const VviinnResults = class {
3970
3971
  this.globalSlotsChanged = index.createEvent(this, "globalSlotsChanged", 7);
3971
3972
  this.vviinnSelectedFiltersReset = index.createEvent(this, "vviinnSelectedFiltersReset", 7);
3972
3973
  var _a;
3973
- this.checkSlotContent = (name) => !!this.el.querySelector(`[slot="${name}"]`);
3974
- this.renderSlotContent = (name) => this.checkSlotContent(name) && (index.h("span", { slot: name }, index.h("slot", { name: name })));
3974
+ this.renderVprIconSlot = () => index$4.hasSlotContent(this.el, "vviinn-results-vpr-icon") ||
3975
+ this.hasVprIconSlot ? (index.h("slot", { name: "vviinn-results-vpr-icon" })) : null;
3976
+ this.renderSlotContent = (name) => (index.h("span", { slot: name }, index.h("slot", { name: name })));
3975
3977
  this.getRecommendations = () => this.showInWidget ? search_store.searchState.results : this.recommendations;
3976
3978
  this.skipFiltersChanges = (isTriggeredByVpsWidget) => (isTriggeredByVpsWidget && !this.showInWidget) ||
3977
3979
  (!isTriggeredByVpsWidget && this.showInWidget);
@@ -4067,6 +4069,7 @@ const VviinnResults = class {
4067
4069
  this.resetState = undefined;
4068
4070
  this.replaceSlotsContentInWidget = undefined;
4069
4071
  this.replaceSlotsContentInButton = undefined;
4072
+ this.hasVprIconSlot = false;
4070
4073
  this.recommendations = [];
4071
4074
  this.innerTextSearchQuery = undefined;
4072
4075
  this.innerTextSearchRequestId = undefined;
@@ -4074,7 +4077,6 @@ const VviinnResults = class {
4074
4077
  this.oneClickDiscoveryAppendIndex = undefined;
4075
4078
  this.oneClickDiscoverySelectedIndex = undefined;
4076
4079
  this.isTextSearch = ((_a = this.textSearchQuery) === null || _a === void 0 ? void 0 : _a.length) > 0;
4077
- this.vprSlot = false;
4078
4080
  }
4079
4081
  replaceSlotsContent() {
4080
4082
  const slots = this.el.querySelectorAll("[slot]");
@@ -4092,13 +4094,12 @@ const VviinnResults = class {
4092
4094
  resources: index$1.resources,
4093
4095
  });
4094
4096
  }
4095
- this.vprSlot = !!this.el.querySelector('[slot="vviinn-results-vpr-slot"]');
4096
4097
  }
4097
4098
  componentDidRender() {
4098
4099
  !!this.replaceSlotsContentInButton
4099
- ? this.replaceSlotsContentInButton()
4100
+ ? this.replaceSlotsContentInButton(this.el)
4100
4101
  : this.showInWidget
4101
- ? this.replaceSlotsContentInWidget()
4102
+ ? this.replaceSlotsContentInWidget(this.el)
4102
4103
  : this.replaceSlotsContent();
4103
4104
  }
4104
4105
  async getVpsResults(filters) {
@@ -4265,21 +4266,13 @@ const VviinnResults = class {
4265
4266
  index + (nCols - ((index % nCols) + 1));
4266
4267
  this.oneClickDiscoverySelectedIndex = index;
4267
4268
  };
4268
- const productCardSlots = [
4269
- "vviinn-basket-button-icon",
4270
- "vviinn-basket-button-text",
4271
- "vviinn-basket-button-icon-pressed",
4272
- "vviinn-basket-button-text-pressed",
4273
- "vviinn-favorite-icon",
4274
- "vviinn-favorite-icon-pressed",
4275
- ];
4276
4269
  return results.map((p, i) => {
4277
4270
  var _a, _b, _c;
4278
- return (index.h("vviinn-product-card", { key: p.productId, index: i, productTitle: p.title, productId: p.productId, productType: p.productType, brand: p.brand, deeplink: p.deeplink, price: p.price.actual, salePrice: p.price.sale, basePrice: (_a = p.basePrice) === null || _a === void 0 ? void 0 : _a.actual, baseSalePrice: (_b = p.basePrice) === null || _b === void 0 ? void 0 : _b.sale, responsive: true, imageWidth: this.imageResolutionWidth, image: (_c = p.image.thumbnail) !== null && _c !== void 0 ? _c : p.image.original, energyCertifications: p.energyCertifications, part: "product-card", campaignTypeId: widgetData.campaignTypeId, widgetElementId: this.widgetElementId, buttonElementId: this.buttonElementId, widgetVersion: _package.version, currency: this.currencySign, locale: this.locale, customLabels: index$2.getCustomLabels(p), addToBasketShow: this.addToBasketShow, favoriteShow: this.favoriteShow, addPriceContainer: this.addPriceContainer, isResultsWidget: true, style: { order: i.toString() }, showFooterArrow: this.oneClickDiscoverySelectedIndex === i }, this.oneClickDiscoveryMode && (index.h("div", { slot: "vviinn-product-card-actions", class: "vviinn-results-product-card-actions" }, index.h("vviinn-vpr-button", { onClick: () => oneClickDiscoveryHandler(i), token: this.token, productId: p.productId, addStyle: false, appendSidebarTo: isOneClickDiscoveryAppendMode
4271
+ return (index.h("vviinn-product-card", { key: p.productId, index: i, productTitle: p.title, productId: p.productId, productType: p.productType, brand: p.brand, deeplink: p.deeplink, price: p.price.actual, salePrice: p.price.sale, basePrice: (_a = p.basePrice) === null || _a === void 0 ? void 0 : _a.actual, baseSalePrice: (_b = p.basePrice) === null || _b === void 0 ? void 0 : _b.sale, responsive: true, imageWidth: this.imageResolutionWidth, image: (_c = p.image.thumbnail) !== null && _c !== void 0 ? _c : p.image.original, energyCertifications: p.energyCertifications, part: "product-card", campaignTypeId: widgetData.campaignTypeId, widgetElementId: this.widgetElementId, buttonElementId: this.buttonElementId, widgetVersion: _package.version, currency: this.currencySign, locale: this.locale, customLabels: index$2.getCustomLabels(p), addToBasketShow: this.addToBasketShow, favoriteShow: this.favoriteShow, addPriceContainer: this.addPriceContainer, isResultsWidget: true, style: { order: i.toString() }, showFooterArrow: this.oneClickDiscoverySelectedIndex === i }, !!this.oneClickDiscoveryMode && (index.h("div", { slot: "vviinn-product-card-actions", class: "vviinn-results-product-card-actions" }, index.h("vviinn-vpr-button", { onClick: () => oneClickDiscoveryHandler(i), token: this.token, productId: p.productId, addStyle: false, appendSidebarTo: isOneClickDiscoveryAppendMode
4279
4272
  ? "one-click-discovery-append"
4280
4273
  : undefined, appendSidebarToElement: isOneClickDiscoveryAppendMode
4281
4274
  ? this.el.shadowRoot.getElementById("one-click-discovery-append")
4282
- : undefined, addToBasketShow: this.addToBasketShow, locale: this.locale, favoriteShow: this.favoriteShow, campaigns: this.oneClickDiscoveryCampaigns }, this.checkSlotContent("vviinn-results-vpr-slot") && (index.h("slot", { name: "vviinn-results-vpr-slot" })), productCardSlots.map((slotName) => this.renderSlotContent(slotName)))))));
4275
+ : undefined, addToBasketShow: this.addToBasketShow, locale: this.locale, favoriteShow: this.favoriteShow, campaigns: this.oneClickDiscoveryCampaigns }, this.renderVprIconSlot(), _package.productCardSlotsNames.map((slotName) => this.renderSlotContent(slotName)))))));
4283
4276
  });
4284
4277
  }
4285
4278
  render() {
@@ -4386,18 +4379,11 @@ const VviinnTeaser = class {
4386
4379
  };
4387
4380
  VviinnTeaser.style = vviinnTeaserCss;
4388
4381
 
4389
- const RecordingIcon = () => (index.h("svg", { width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg" },
4390
- index.h("path", { d: "M9.99961 14C9.19961 14 8.49961 13.7 7.89961 13.1C7.29961 12.5 6.99961 11.8 6.99961 11V5C6.99961 4.2 7.29961 3.5 7.89961 2.9C8.49961 2.3 9.19961 2 9.99961 2C10.7996 2 11.4996 2.3 12.0996 2.9C12.6996 3.5 12.9996 4.2 12.9996 5V11C12.9996 11.8 12.6996 12.5 12.0996 13.1C11.4996 13.7 10.7996 14 9.99961 14ZM8.99961 20V17.9C7.49961 17.7 6.19961 17 5.09961 15.9C3.99961 14.8 3.29961 13.5 3.09961 11.9C3.09961 11.6 3.09961 11.4 3.29961 11.2C3.49961 11 3.69961 10.9 3.99961 10.9C4.29961 10.9 4.49961 10.9 4.69961 11.2C4.89961 11.4 4.99961 11.6 5.09961 11.9C5.39961 13.2 5.99961 14.1 6.89961 14.8C7.89961 15.5 8.99961 15.9 10.1996 15.9C10.6996 15.9 10.7996 15.8 10.9996 16C10.9996 16 10.9996 16.4 10.9996 16.6V19.9C10.9996 20.2 10.9996 20.4 10.6996 20.6C10.4996 20.8 10.2996 20.9 9.99961 20.9C9.69961 20.9 9.49961 20.9 9.29961 20.6C9.09961 20.4 8.99961 20.2 8.99961 19.9V20Z", fill: "#161616" }),
4391
- index.h("circle", { cx: "17", cy: "16", r: "4", fill: "#D95757" })));
4392
-
4393
4382
  const MicIcon = () => (index.h("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 24 24", fill: "none", width: "24", height: "24" },
4394
4383
  index.h("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" })));
4395
4384
 
4396
- const permitSpeechRecognition = () => {
4385
+ const browserType = () => {
4397
4386
  const uncastedWindow = window;
4398
- const speechRecognition = uncastedWindow.SpeechRecognition || uncastedWindow.webkitSpeechRecognition;
4399
- if (!speechRecognition)
4400
- return;
4401
4387
  const winNav = window.navigator;
4402
4388
  const vendorName = winNav.vendor;
4403
4389
  const forbiddenBrowserRules = [
@@ -4405,20 +4391,29 @@ const permitSpeechRecognition = () => {
4405
4391
  winNav.userAgent.indexOf("Firefox") > -1,
4406
4392
  winNav.userAgent.indexOf("Edg") > -1,
4407
4393
  ];
4408
- if (forbiddenBrowserRules.some((rule) => rule === true))
4394
+ const forbiddenBrowser = forbiddenBrowserRules.some((rule) => rule === true);
4395
+ const isChrome = typeof winNav.userAgentData !== "undefined"
4396
+ ? winNav.userAgentData.brands[0].brand === "Google Chrome"
4397
+ : vendorName === "Google Inc.";
4398
+ const isSafari = winNav.userAgent.indexOf("Safari") > -1 && !isChrome;
4399
+ return { forbiddenBrowser, isChrome, isSafari };
4400
+ };
4401
+
4402
+ const permitSpeechRecognition = () => {
4403
+ const uncastedWindow = window;
4404
+ const speechRecognition = uncastedWindow.webkitSpeechRecognition || uncastedWindow.SpeechRecognition;
4405
+ if (!speechRecognition)
4409
4406
  return;
4410
- const permittedBrowserRules = [
4411
- typeof winNav.userAgentData !== "undefined"
4412
- ? winNav.userAgentData.brands[0].brand === "Google Chrome"
4413
- : vendorName === "Google Inc.",
4414
- ];
4415
- if (permittedBrowserRules.some((rule) => rule === true)) {
4407
+ const { forbiddenBrowser, isChrome, isSafari } = browserType();
4408
+ if (forbiddenBrowser)
4409
+ return;
4410
+ if (isChrome || isSafari) {
4416
4411
  return speechRecognition;
4417
4412
  }
4418
4413
  return;
4419
4414
  };
4420
4415
 
4421
- const initializeRecognition = (locale, onEnd, onRecognized) => {
4416
+ const initializeRecognition = (locale, onStart, onEnd, onRecognized) => {
4422
4417
  const speechRecognition = permitSpeechRecognition();
4423
4418
  if (!speechRecognition)
4424
4419
  return;
@@ -4427,9 +4422,19 @@ const initializeRecognition = (locale, onEnd, onRecognized) => {
4427
4422
  recognition.maxAlternatives = 1;
4428
4423
  recognition.continuous = false;
4429
4424
  recognition.lang = locale;
4425
+ let recognitionTimeout;
4426
+ recognition.onstart = () => {
4427
+ onStart();
4428
+ recognitionTimeout = setTimeout(() => {
4429
+ {
4430
+ recognition.stop();
4431
+ }
4432
+ }, 10000);
4433
+ };
4430
4434
  recognition.onspeechend = () => {
4431
4435
  recognition.stop();
4432
4436
  onEnd();
4437
+ clearTimeout(recognitionTimeout);
4433
4438
  };
4434
4439
  recognition.onend = onEnd;
4435
4440
  recognition.onresult = (event) => {
@@ -4439,7 +4444,14 @@ const initializeRecognition = (locale, onEnd, onRecognized) => {
4439
4444
  return recognition;
4440
4445
  };
4441
4446
 
4442
- const vviinnTextSearchCss = ":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;width:100%;height:46px;border:1px solid var(--color-border-02);border-radius:8px;transition:border-color 0.2s;overflow:hidden}.text-search-container:focus-within{border-color:#8d8d8d}.text-search-input{height:46px;padding-left:16px;font-size:16px;box-sizing:border-box;font-style:normal;font-weight:400;font-family:var(--font-family, var(--font-family-base));border:none;outline:none;overflow:hidden;flex-grow:2;min-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}.text-search-button,.speech-button{border:none;width:46px;min-width:46px;height:46px;display:flex;justify-content:center;align-items:center;transition:background-color 0.2s;cursor:pointer}.text-search-button{background-color:#f4f4f4}.speech-button{background-color:transparent}.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}";
4447
+ const speechTooltip = () => {
4448
+ const { isSafari } = browserType();
4449
+ if (isSafari)
4450
+ return "speechRecognition.tooltip.siri";
4451
+ return "speechRecognition.tooltip.general";
4452
+ };
4453
+
4454
+ const vviinnTextSearchCss = ":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;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:46px;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}.text-search-button,.speech-button{border:none;width:46px;min-width:46px;height:46px;display:flex;justify-content:center;align-items:center;transition:background-color 0.2s;cursor:pointer}.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}";
4443
4455
 
4444
4456
  const VviinnTextSearch = class {
4445
4457
  constructor(hostRef) {
@@ -4459,7 +4471,15 @@ const VviinnTextSearch = class {
4459
4471
  this.isShowRecording = () => this.isRecording;
4460
4472
  this.showRecording = () => (this.isRecording = true);
4461
4473
  this.hideRecording = () => (this.isRecording = false);
4462
- this.recognition = initializeRecognition(this.locale, this.hideRecording, (speechResult) => {
4474
+ this.setShowTooltip = (show) => {
4475
+ this.showTooltip = show;
4476
+ };
4477
+ this.tooltipText = speechTooltip();
4478
+ this.recognition = initializeRecognition(this.locale, () => {
4479
+ this.showRecording();
4480
+ this.setShowTooltip(false);
4481
+ clearTimeout(this.triggerTooltipStart);
4482
+ }, this.hideRecording, (speechResult) => {
4463
4483
  this.setSearchQuery(speechResult);
4464
4484
  this.handleTextSearch();
4465
4485
  });
@@ -4474,12 +4494,15 @@ const VviinnTextSearch = class {
4474
4494
  this.apiPath = "https://api.vviinn.com";
4475
4495
  this.isLoading = false;
4476
4496
  this.isRecording = false;
4497
+ this.showTooltip = false;
4477
4498
  }
4478
4499
  connectedCallback() {
4479
4500
  document.addEventListener("resultsSearchFinished", this.hideLoader);
4480
4501
  }
4481
4502
  disconnectedCallback() {
4482
4503
  document.removeEventListener("resultsSearchFinished", this.hideLoader);
4504
+ clearTimeout(this.triggerTooltipStart);
4505
+ clearTimeout(this.triggerTooltipEnd);
4483
4506
  }
4484
4507
  async componentWillLoad() {
4485
4508
  var _a;
@@ -4509,10 +4532,19 @@ const VviinnTextSearch = class {
4509
4532
  if (this.isRecording) {
4510
4533
  this.recognition.stop();
4511
4534
  this.hideRecording();
4535
+ this.setShowTooltip(false);
4512
4536
  }
4513
4537
  else {
4514
- this.showRecording();
4515
4538
  this.recognition.start();
4539
+ this.setSearchQuery("");
4540
+ this.triggerTooltipStart = setTimeout(() => {
4541
+ if (!this.isRecording) {
4542
+ this.setShowTooltip(true);
4543
+ this.triggerTooltipEnd = setTimeout(() => {
4544
+ this.setShowTooltip(false);
4545
+ }, 5000);
4546
+ }
4547
+ }, 1000);
4516
4548
  }
4517
4549
  }
4518
4550
  async handleTextSearch() {
@@ -4545,8 +4577,8 @@ const VviinnTextSearch = class {
4545
4577
  }
4546
4578
  render() {
4547
4579
  return (index.h(index.Host, { exportparts: index$3.searchBarParts }, index.h("div", { class: "text-search-container", part: "text-search-container" }, index.h("input", { class: "text-search-input", part: "text-search-input", type: "text", placeholder: index$1.instance.t(this.isShowRecording()
4548
- ? "speechRecognitionPlaceholder"
4549
- : "textSearchPlaceholder"), value: this.searchQuery, onInput: (event) => this.handleInputChange(event), onKeyUp: (event) => this.handleKeyPress(event) }), this.mode === "upload" ? (index.h("vviinn-image-selector", { token: this.token, apiPath: this.apiPath, showInTextSearch: true, uploadStartedHandler: this.showLoader.bind(this) }, index.h("span", { slot: "upload-button-text" }, index.h(SearchModalUploadIcon.SearchModalUploadIcon, null)))) : (index.h("slot", { name: "vviinn-text-search-actions" })), this.recognition && (index.h("button", { class: "speech-button", part: "speech-button", onClick: () => this.handleSpeech() }, this.isShowRecording() ? index.h(RecordingIcon, null) : index.h(MicIcon, null))), index.h("button", { class: "text-search-button", part: "text-search-button", onClick: () => this.handleTextSearch(), disabled: search_store.searchState.loading }, this.isShowPreloader() ? (index.h("vviinn-preloader", null)) : (index.h("slot", { name: "vviinn-text-search-icon" }, index.h(TextSearchIcon, null)))))));
4580
+ ? "speechRecognition.placeholder"
4581
+ : "textSearchPlaceholder"), value: this.searchQuery, onInput: (event) => this.handleInputChange(event), onKeyUp: (event) => this.handleKeyPress(event) }), this.mode === "upload" ? (index.h("vviinn-image-selector", { token: this.token, apiPath: this.apiPath, showInTextSearch: true, uploadStartedHandler: this.showLoader.bind(this) }, index.h("span", { slot: "upload-button-text" }, index.h(SearchModalUploadIcon.SearchModalUploadIcon, null)))) : (index.h("slot", { name: "vviinn-text-search-actions" })), this.recognition && (index.h("button", { class: "speech-button", part: "speech-button", onClick: () => this.handleSpeech() }, index.h(MicIcon, null), this.isShowRecording() && (index.h("span", { class: "recording-indicator" })))), index.h("button", { class: "text-search-button", part: "text-search-button", onClick: () => this.handleTextSearch(), disabled: search_store.searchState.loading }, this.isShowPreloader() ? (index.h("vviinn-preloader", null)) : (index.h("slot", { name: "vviinn-text-search-icon" }, index.h(TextSearchIcon, null))))), this.showTooltip && (index.h("p", { class: "text-search-tooltip", part: "text-search-tooltip" }, index$1.instance.t(this.tooltipText)))));
4550
4582
  }
4551
4583
  get el() { return index.getElement(this); }
4552
4584
  };
@@ -4,7 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-711d38e6.js');
6
6
  const Rectangle = require('./Rectangle-99c25901.js');
7
- const index$1 = require('./index-184d0526.js');
7
+ const index$1 = require('./index-0f1b8791.js');
8
8
 
9
9
  const CrossIcon = () => (index.h("svg", { width: "16", height: "16", viewBox: "0 0 16 16", fill: "none", xmlns: "http://www.w3.org/2000/svg" },
10
10
  index.h("path", { d: "M16 1.4L14.6 0L8 6.6L1.4 0L0 1.4L6.6 8L0 14.6L1.4 16L8 9.4L14.6 16L16 14.6L9.4 8L16 1.4Z", fill: "#161616" })));
@@ -4,10 +4,10 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-711d38e6.js');
6
6
  const search_store = require('./search.store-2527c63a.js');
7
- const _package = require('./package-92aaf777.js');
7
+ const _package = require('./package-12f93ede.js');
8
8
  const index$1 = require('./index-4c9a5dbb.js');
9
- const index$2 = require('./index-7b1337af.js');
10
- const index$3 = require('./index-184d0526.js');
9
+ const index$2 = require('./index-5aeee4dd.js');
10
+ const index$3 = require('./index-0f1b8791.js');
11
11
  const triggerFilter = require('./triggerFilter-fcab6cac.js');
12
12
  const Rectangle = require('./Rectangle-99c25901.js');
13
13
 
@@ -1083,7 +1083,8 @@ const parseBasePrice = (basePrice) => {
1083
1083
  return basePrice;
1084
1084
  };
1085
1085
  const renderCustomLabels = (labels) => {
1086
- const renderLabel = (label, index$1) => label ? (index.h("span", { part: `custom-label-${index$1}`, class: "custom-label" }, label)) : null;
1086
+ const renderLabel = (label, index$1) => label ? (index.h("span", { part: `custom-label-${index$1}`, class: "custom-label" },
1087
+ index.h("slot", { name: `vviinn-custom-label-${index$1}` }, label))) : null;
1087
1088
  return (index.h(index.Fragment, null, labels.map((label, index) => renderLabel(label, index))));
1088
1089
  };
1089
1090
  const Price = (props) => {
@@ -2346,7 +2347,7 @@ const VviinnVprWidget = class {
2346
2347
  loaded: true,
2347
2348
  empty: this.recommendations.length == 0,
2348
2349
  [this.mode]: true,
2349
- }, "aria-hidden": "false" }, index.h(index.Fragment, null, this.renderExternalCSS(), _package.SlotSkeleton("vpr"), index.h("style", null, search_store.state.fallbackStyles), (this.isSetMode || this.blockTitle.length > 0) && (index.h("div", { class: "widget-header" }, index.h("div", null, index.h("h2", { part: "recommendations-title" }, index.h("slot", { name: "vviinn-recommendations-title" }, this.isSetMode
2350
+ }, "aria-hidden": "false" }, index.h(index.Fragment, null, this.renderExternalCSS(), _package.SlotSkeleton("discovery"), index.h("style", null, search_store.state.fallbackStyles), (this.isSetMode || this.blockTitle.length > 0) && (index.h("div", { class: "widget-header" }, index.h("div", null, index.h("h2", { part: "recommendations-title" }, index.h("slot", { name: "vviinn-recommendations-title" }, this.isSetMode
2350
2351
  ? index$2.instance.t("setMode.widgetTitle")
2351
2352
  : this.blockTitle)), this.isSetMode && (index.h("h3", { part: "recommendations-subtitle" }, index.h("slot", { name: "vviinn-recommendations-subtitle" }, index$2.instance.t("setMode.widgetSubtitle"))))), this.isSetMode && this.updateButtonLocation !== "onItem" ? (index.h("button", { class: "update-button", part: "update-button-top", onClick: () => (this.updatingAllCards = true) }, index.h("slot", { name: "vviinn-update-button-icon" }, index.h(UpdateIcon, null)), index.h("slot", { name: "vviinn-update-button-text" }, index.h("span", null, index$2.instance.t("setMode.updateButtonText"))))) : null)), (this.showFilters || this.showExtendedFilters) && (index.h("div", { class: "filters-header " }, this.showFilters && (index.h("vviinn-filters", { filters: this.dynamicFilters })), this.showExtendedFilters && (index.h("vviinn-extended-filters", { filters: this.dynamicFilters, locale: this.locale })))), this.recommendations.length > 0 &&
2352
2353
  (this.useCarousel ? this.renderCarousel() : this.renderResults()), (this.recommendations.length === 0 ||
@@ -3,9 +3,10 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-711d38e6.js');
6
- const _package = require('./package-92aaf777.js');
6
+ const _package = require('./package-12f93ede.js');
7
7
  const SearchModalUploadIcon = require('./SearchModalUploadIcon-23f00a14.js');
8
8
  const constants = require('./constants-7684cbfc.js');
9
+ const index$1 = require('./index-b4dc0054.js');
9
10
 
10
11
  const SearchModalCameraIcon = () => (index.h("svg", { xmlns: "http://www.w3.org/2000/svg", width: "24", height: "24", viewBox: "0 0 24 24", fill: "none" },
11
12
  index.h("path", { "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M18 4H20C22.21 4 24 5.79 24 8V16H22V8C22 6.9 21.1 6 20 6H16.93L16.34 5.11L14.93 3H9.07L7.66 5.11L7.07 6H4C2.9 6 2 6.9 2 8V18C2 19.1 2.9 20 4 20H9V22H4C1.79 22 0 20.21 0 18V8C0 5.79 1.79 4 4 4H6L8 1H16L18 4ZM12 8C14.76 8 17 10.24 17 13L16.99 13.01C16.99 14.02 16.68 14.97 16.16 15.76L20.7 20.3L19.29 21.71L14.75 17.17C13.96 17.69 13.02 18 12 18C9.24 18 7 15.76 7 13C7 10.24 9.24 8 12 8ZM9 13C9 14.65 10.35 16 12 16C13.65 16 15 14.65 15 13C15 11.35 13.65 10 12 10C10.35 10 9 11.35 9 13Z", fill: "#161616" })));
@@ -42,6 +43,7 @@ const VviinnVpsButton = class {
42
43
  this.vviinnSelectObject = index.createEvent(this, "vviinnSelectObject", 7);
43
44
  this.vviinnSelectFilter = index.createEvent(this, "vviinnSelectFilter", 7);
44
45
  this.globalSlotsChanged = index.createEvent(this, "globalSlotsChanged", 7);
46
+ this.hasVprIconSlot = false;
45
47
  this.getBasicEventData = () => {
46
48
  return {
47
49
  widgetType: "VPS",
@@ -74,15 +76,26 @@ const VviinnVpsButton = class {
74
76
  handleModalClosed() {
75
77
  this.buttonPressed = false;
76
78
  }
79
+ componentWillLoad() {
80
+ if (index$1.hasSlotContent(this.el, "vviinn-results-vpr-icon")) {
81
+ this.hasVprIconSlot = true;
82
+ }
83
+ }
77
84
  componentDidLoad() {
78
85
  this.replaceSlotsContent();
79
86
  }
80
- replaceSlotsContent() {
87
+ replaceSlotsContent(childrenElement) {
81
88
  const slots = this.el.querySelectorAll("[slot]");
82
89
  this.globalSlotsChanged.emit({
83
90
  slots: Array.from(slots),
84
91
  element: this.el,
85
92
  });
93
+ if (childrenElement) {
94
+ this.globalSlotsChanged.emit({
95
+ slots: Array.from(slots),
96
+ element: childrenElement,
97
+ });
98
+ }
86
99
  }
87
100
  handleClick() {
88
101
  this.buttonPressed = true;
@@ -93,8 +106,8 @@ const VviinnVpsButton = class {
93
106
  render() {
94
107
  return (index.h(index.Host, { tabindex: "0", role: "button" }, index.h("vviinn-button", { onClick: () => {
95
108
  this.handleClick();
96
- }, addStyle: this.addStyle, part: "vviinn-button" }, index.h("slot", null, this.mode === "camera" ? (index.h(SearchModalCameraIcon, null)) : this.mode === "upload" ? (index.h(SearchModalUploadIcon.SearchModalUploadIcon, null)) : this.textSearchShow ? (index.h(SearchModalFullSearchIcon, null)) : (index.h(SearchModalImageSearchIcon, null)))), _package.SlotSkeleton("vps"), index.h("vviinn-vps-widget", { mode: this.mode, "currency-sign": this.currencySign, token: this.token, locale: this.locale, apiPath: this.apiPath, campaignId: this.campaignId, showingInButton: true, buttonPressed: this.buttonPressed, resetVpsButton: this.resetButton.bind(this), buttonElementId: this.el.id, active: this.buttonPressed &&
97
- (this.mode === "modal" || this.mode === "camera"), excluded: this.excluded, productDetailsNewTab: this.productDetailsNewTab, productDetailsRedirect: this.productDetailsRedirect, imageResolutionWidth: this.imageResolutionWidth, exampleImageSource: this.exampleImageSource, textSearchShow: this.textSearchShow, addToBasketShow: this.addToBasketShow, addPriceContainer: this.addPriceContainer, replaceSlotsContentInButton: this.replaceSlotsContent.bind(this), oneClickDiscoveryShow: this.oneClickDiscoveryShow, oneClickDiscoveryCampaigns: this.oneClickDiscoveryCampaigns, favoriteShow: this.favoriteShow })));
109
+ }, addStyle: this.addStyle, part: "vviinn-button" }, index.h("slot", null, this.mode === "camera" ? (index.h(SearchModalCameraIcon, null)) : this.mode === "upload" ? (index.h(SearchModalUploadIcon.SearchModalUploadIcon, null)) : this.textSearchShow ? (index.h(SearchModalFullSearchIcon, null)) : (index.h(SearchModalImageSearchIcon, null)))), _package.SlotSkeleton("search"), index.h("vviinn-vps-widget", { mode: this.mode, "currency-sign": this.currencySign, token: this.token, locale: this.locale, apiPath: this.apiPath, campaignId: this.campaignId, showingInButton: true, buttonPressed: this.buttonPressed, resetVpsButton: this.resetButton.bind(this), buttonElementId: this.el.id, active: this.buttonPressed &&
110
+ (this.mode === "modal" || this.mode === "camera"), excluded: this.excluded, productDetailsNewTab: this.productDetailsNewTab, productDetailsRedirect: this.productDetailsRedirect, imageResolutionWidth: this.imageResolutionWidth, exampleImageSource: this.exampleImageSource, textSearchShow: this.textSearchShow, addToBasketShow: this.addToBasketShow, addPriceContainer: this.addPriceContainer, replaceSlotsContentInButton: this.replaceSlotsContent.bind(this), oneClickDiscoveryShow: this.oneClickDiscoveryShow, oneClickDiscoveryCampaigns: this.oneClickDiscoveryCampaigns, favoriteShow: this.favoriteShow, hasVprIconSlot: this.hasVprIconSlot })));
98
111
  }
99
112
  get el() { return index.getElement(this); }
100
113
  };