vviinn-widgets 2.223.0 → 2.224.1
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.
- package/dist/cjs/{index-DZw3p4dq.js → index-DJP-DLP2.js} +62 -66
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{search.store-Bh2_GSpU.js → search.store-BOJh7lOl.js} +51 -23
- package/dist/cjs/vviinn-button_6.cjs.entry.js +1 -1
- package/dist/cjs/vviinn-camera_12.cjs.entry.js +60 -97
- package/dist/cjs/vviinn-carousel_10.cjs.entry.js +16 -19
- package/dist/cjs/vviinn-shop-the-look.cjs.entry.js +2 -2
- package/dist/cjs/vviinn-text-search.cjs.entry.js +1 -1
- package/dist/cjs/vviinn-vps-button.cjs.entry.js +4 -2
- package/dist/cjs/vviinn-widgets.cjs.js +1 -1
- package/dist/collection/components/vviinn-cropper/vviinn-cropper.js +14 -33
- package/dist/collection/components/vviinn-filters/helpers/syncRequestFilters.js +8 -10
- package/dist/collection/components/vviinn-filters/vviinn-extended-filters.js +6 -5
- package/dist/collection/components/vviinn-filters/vviinn-filters.js +6 -5
- package/dist/collection/components/vviinn-filters/vviinn-selected-filters.js +25 -61
- package/dist/collection/components/vviinn-results/vviinn-results.js +4 -13
- package/dist/collection/components/vviinn-shop-the-look/helpers.js +1 -1
- package/dist/collection/components/vviinn-vps-button/vviinn-vps-button.js +24 -2
- package/dist/collection/components/vviinn-vps-widget/vviinn-vps-widget.js +32 -10
- package/dist/collection/store/helpers/applyResponseFilters.js +13 -0
- package/dist/collection/store/helpers/searchSequence.js +13 -0
- package/dist/collection/store/search.store.js +25 -23
- package/dist/esm/{index-DQQYIioG.js → index-Dh2tkxzk.js} +62 -67
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{search.store-lTerE9Yh.js → search.store-D5QcaJG3.js} +51 -23
- package/dist/esm/vviinn-button_6.entry.js +1 -1
- package/dist/esm/vviinn-camera_12.entry.js +60 -97
- package/dist/esm/vviinn-carousel_10.entry.js +14 -17
- package/dist/esm/vviinn-shop-the-look.entry.js +2 -2
- package/dist/esm/vviinn-text-search.entry.js +1 -1
- package/dist/esm/vviinn-vps-button.entry.js +4 -2
- package/dist/esm/vviinn-widgets.js +1 -1
- package/dist/types/components/vviinn-cropper/vviinn-cropper.d.ts +0 -2
- package/dist/types/components/vviinn-filters/helpers/syncRequestFilters.d.ts +4 -2
- package/dist/types/components/vviinn-filters/vviinn-extended-filters.d.ts +1 -0
- package/dist/types/components/vviinn-filters/vviinn-filters.d.ts +1 -0
- package/dist/types/components/vviinn-filters/vviinn-selected-filters.d.ts +6 -7
- package/dist/types/components/vviinn-results/vviinn-results.d.ts +0 -1
- package/dist/types/components/vviinn-vps-button/vviinn-vps-button.d.ts +2 -0
- package/dist/types/components/vviinn-vps-widget/vviinn-vps-widget.d.ts +2 -0
- package/dist/types/components.d.ts +16 -1
- package/dist/types/store/helpers/applyResponseFilters.d.ts +13 -0
- package/dist/types/store/helpers/searchSequence.d.ts +3 -0
- package/dist/types/store/search.store.d.ts +11 -1
- package/dist/vviinn-widgets/{p-1e2f9b9f.entry.js → p-8dde73ee.entry.js} +1 -1
- package/dist/vviinn-widgets/p-905278b1.entry.js +1 -0
- package/dist/vviinn-widgets/{p-eb579723.entry.js → p-92eb8c8c.entry.js} +1 -1
- package/dist/vviinn-widgets/p-CICPwuU-.js +1 -0
- package/dist/vviinn-widgets/{p-CJAxBbhA.js → p-DOdiegD0.js} +1 -1
- package/dist/vviinn-widgets/p-b77cf635.entry.js +1 -0
- package/dist/vviinn-widgets/p-c54e5eae.entry.js +1 -0
- package/dist/vviinn-widgets/p-d5fa46c6.entry.js +1 -0
- package/dist/vviinn-widgets/vviinn-widgets.esm.js +1 -1
- package/package.json +12 -8
- package/www/build/{p-1e2f9b9f.entry.js → p-8dde73ee.entry.js} +1 -1
- package/www/build/p-905278b1.entry.js +1 -0
- package/www/build/{p-eb579723.entry.js → p-92eb8c8c.entry.js} +1 -1
- package/www/build/p-CICPwuU-.js +1 -0
- package/www/build/{p-CJAxBbhA.js → p-DOdiegD0.js} +1 -1
- package/www/build/p-b77cf635.entry.js +1 -0
- package/www/build/{p-4f556dc3.js → p-c4df99b0.js} +1 -1
- package/www/build/p-c54e5eae.entry.js +1 -0
- package/www/build/p-d5fa46c6.entry.js +1 -0
- package/www/build/vviinn-widgets.esm.js +1 -1
- package/www/index.html +1 -1
- package/dist/vviinn-widgets/p-08d39cc9.entry.js +0 -1
- package/dist/vviinn-widgets/p-3daed25b.entry.js +0 -1
- package/dist/vviinn-widgets/p-7411202d.entry.js +0 -1
- package/dist/vviinn-widgets/p-DhCqK4d8.js +0 -1
- package/dist/vviinn-widgets/p-f9f4e909.entry.js +0 -1
- package/www/build/p-08d39cc9.entry.js +0 -1
- package/www/build/p-3daed25b.entry.js +0 -1
- package/www/build/p-7411202d.entry.js +0 -1
- package/www/build/p-DhCqK4d8.js +0 -1
- package/www/build/p-f9f4e909.entry.js +0 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var index = require('./index-BU8FMTXn.js');
|
|
4
|
-
var search_store = require('./search.store-
|
|
4
|
+
var search_store = require('./search.store-BOJh7lOl.js');
|
|
5
5
|
var store = require('./store-jPZ4ROqV.js');
|
|
6
6
|
|
|
7
7
|
const PlusIcon = () => (index.h("svg", { width: "32", height: "32", viewBox: "0 0 32 32", fill: "none", xmlns: "http://www.w3.org/2000/svg", class: "plus-icon", "aria-hidden": "true" },
|
|
@@ -100,6 +100,11 @@ const getIntervalLabel = (intervalFilter, fullInterval, currencySign, showColumn
|
|
|
100
100
|
}
|
|
101
101
|
};
|
|
102
102
|
|
|
103
|
+
const getSelectedInterval = (requestFilters, column) => {
|
|
104
|
+
const intervalFilter = requestFilters.find((filter) => filter.column === column);
|
|
105
|
+
return intervalFilter === null || intervalFilter === void 0 ? void 0 : intervalFilter.values[0];
|
|
106
|
+
};
|
|
107
|
+
|
|
103
108
|
const isSubFilterActive = (requestFilters, filterValue, selectedFilter) => {
|
|
104
109
|
if (!requestFilters || !selectedFilter)
|
|
105
110
|
return false;
|
|
@@ -132,18 +137,16 @@ const RenderFilterButton = ({ handleSubFilterSelection, value, label, active, se
|
|
|
132
137
|
};
|
|
133
138
|
|
|
134
139
|
/**
|
|
135
|
-
*
|
|
140
|
+
* Copies the store's requestFilters into local component state, empty updates included —
|
|
141
|
+
* a cleared store means nothing is selected, and the local copy has to say so too.
|
|
142
|
+
* Returns the store's dispose function; call it from disconnectedCallback.
|
|
136
143
|
*/
|
|
137
144
|
const syncRequestFilters = (state, onChange, setRequestFilters) => {
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
onChange("requestFilters",
|
|
143
|
-
if ((newValue === null || newValue === void 0 ? void 0 : newValue.length) > 0) {
|
|
144
|
-
setRequestFilters([...newValue]);
|
|
145
|
-
}
|
|
146
|
-
});
|
|
145
|
+
// Copy the array so subFilterSelection can swap entries without touching the store's own.
|
|
146
|
+
// The entries stay shared, so its in-place `values` edits do reach the store.
|
|
147
|
+
const applyCopy = (filters) => setRequestFilters([...filters]);
|
|
148
|
+
applyCopy(state.requestFilters);
|
|
149
|
+
return onChange("requestFilters", applyCopy);
|
|
147
150
|
};
|
|
148
151
|
|
|
149
152
|
const isFullRangeInterval = (selectedFilter, interval) => {
|
|
@@ -252,68 +255,60 @@ const triggerRemoveIntervalFilter = ({ column, requestFilters, el, isTriggeredBy
|
|
|
252
255
|
return updatedFilters;
|
|
253
256
|
};
|
|
254
257
|
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
var getRandomValues;
|
|
259
|
-
var rnds8 = new Uint8Array(16);
|
|
260
|
-
function rng() {
|
|
261
|
-
// lazy load so that environments that need to polyfill have a chance to do so
|
|
262
|
-
if (!getRandomValues) {
|
|
263
|
-
// getRandomValues needs to be invoked in a context where "this" is a Crypto implementation. Also,
|
|
264
|
-
// find the complete implementation of crypto (msCrypto) on IE11.
|
|
265
|
-
getRandomValues = typeof crypto !== 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto) || typeof msCrypto !== 'undefined' && typeof msCrypto.getRandomValues === 'function' && msCrypto.getRandomValues.bind(msCrypto);
|
|
266
|
-
|
|
267
|
-
if (!getRandomValues) {
|
|
268
|
-
throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');
|
|
269
|
-
}
|
|
270
|
-
}
|
|
271
|
-
|
|
272
|
-
return getRandomValues(rnds8);
|
|
258
|
+
const byteToHex = [];
|
|
259
|
+
for (let i = 0; i < 256; ++i) {
|
|
260
|
+
byteToHex.push((i + 0x100).toString(16).slice(1));
|
|
273
261
|
}
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
262
|
+
function unsafeStringify(arr, offset = 0) {
|
|
263
|
+
return (byteToHex[arr[offset + 0]] +
|
|
264
|
+
byteToHex[arr[offset + 1]] +
|
|
265
|
+
byteToHex[arr[offset + 2]] +
|
|
266
|
+
byteToHex[arr[offset + 3]] +
|
|
267
|
+
'-' +
|
|
268
|
+
byteToHex[arr[offset + 4]] +
|
|
269
|
+
byteToHex[arr[offset + 5]] +
|
|
270
|
+
'-' +
|
|
271
|
+
byteToHex[arr[offset + 6]] +
|
|
272
|
+
byteToHex[arr[offset + 7]] +
|
|
273
|
+
'-' +
|
|
274
|
+
byteToHex[arr[offset + 8]] +
|
|
275
|
+
byteToHex[arr[offset + 9]] +
|
|
276
|
+
'-' +
|
|
277
|
+
byteToHex[arr[offset + 10]] +
|
|
278
|
+
byteToHex[arr[offset + 11]] +
|
|
279
|
+
byteToHex[arr[offset + 12]] +
|
|
280
|
+
byteToHex[arr[offset + 13]] +
|
|
281
|
+
byteToHex[arr[offset + 14]] +
|
|
282
|
+
byteToHex[arr[offset + 15]]).toLowerCase();
|
|
279
283
|
}
|
|
280
284
|
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
285
|
+
let getRandomValues;
|
|
286
|
+
const rnds8 = new Uint8Array(16);
|
|
287
|
+
function rng() {
|
|
288
|
+
if (!getRandomValues) {
|
|
289
|
+
if (typeof crypto === 'undefined' || !crypto.getRandomValues) {
|
|
290
|
+
throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');
|
|
291
|
+
}
|
|
292
|
+
getRandomValues = crypto.getRandomValues.bind(crypto);
|
|
293
|
+
}
|
|
294
|
+
return getRandomValues(rnds8);
|
|
290
295
|
}
|
|
291
296
|
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
// Note: Be careful editing this code! It's been tuned for performance
|
|
295
|
-
// and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434
|
|
296
|
-
var uuid = (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase(); // Consistency check for valid UUID. If this throws, it's likely due to one
|
|
297
|
-
// of the following:
|
|
298
|
-
// - One or more input array values don't map to a hex octet (leading to
|
|
299
|
-
// "undefined" in the uuid)
|
|
300
|
-
// - Invalid input values for the RFC `version` or `variant` fields
|
|
301
|
-
|
|
302
|
-
if (!validate(uuid)) {
|
|
303
|
-
throw TypeError('Stringified UUID is invalid');
|
|
304
|
-
}
|
|
305
|
-
|
|
306
|
-
return uuid;
|
|
307
|
-
}
|
|
297
|
+
const randomUUID = typeof crypto !== 'undefined' && crypto.randomUUID && crypto.randomUUID.bind(crypto);
|
|
298
|
+
var native = { randomUUID };
|
|
308
299
|
|
|
309
300
|
function v4(options, buf, offset) {
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
301
|
+
if (native.randomUUID && true && !options) {
|
|
302
|
+
return native.randomUUID();
|
|
303
|
+
}
|
|
304
|
+
options = options || {};
|
|
305
|
+
const rnds = options.random ?? options.rng?.() ?? rng();
|
|
306
|
+
if (rnds.length < 16) {
|
|
307
|
+
throw new Error('Random bytes length must be >= 16');
|
|
308
|
+
}
|
|
309
|
+
rnds[6] = (rnds[6] & 0x0f) | 0x40;
|
|
310
|
+
rnds[8] = (rnds[8] & 0x3f) | 0x80;
|
|
311
|
+
return unsafeStringify(rnds);
|
|
317
312
|
}
|
|
318
313
|
|
|
319
314
|
const createTrackingEvent = (widget) => (eventData) => {
|
|
@@ -394,6 +389,7 @@ exports.getCustomLabels = getCustomLabels;
|
|
|
394
389
|
exports.getIntervalLabel = getIntervalLabel;
|
|
395
390
|
exports.getRecommendationsBody = getRecommendationsBody;
|
|
396
391
|
exports.getRemoveFilterAriaLabel = getRemoveFilterAriaLabel;
|
|
392
|
+
exports.getSelectedInterval = getSelectedInterval;
|
|
397
393
|
exports.isPriceFilter = isPriceFilter;
|
|
398
394
|
exports.isSubFilterActive = isSubFilterActive;
|
|
399
395
|
exports.syncRequestFilters = syncRequestFilters;
|
package/dist/cjs/loader.cjs.js
CHANGED
|
@@ -6,7 +6,7 @@ var appGlobals = require('./app-globals-DK9R4CCS.js');
|
|
|
6
6
|
const defineCustomElements = async (win, options) => {
|
|
7
7
|
if (typeof window === 'undefined') return undefined;
|
|
8
8
|
await appGlobals.globalScripts();
|
|
9
|
-
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);
|
|
9
|
+
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\"],\"aiSuggestionsShow\":[4,\"ai-suggestions-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\"],\"aiSuggestionsShow\":[4,\"ai-suggestions-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],\"textSearchCustomFilter\":[32],\"imageSrc\":[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);
|
|
10
10
|
};
|
|
11
11
|
|
|
12
12
|
exports.setNonce = index.setNonce;
|
|
@@ -8598,7 +8598,34 @@ const encodeToBase64UTF8 = (str) => {
|
|
|
8598
8598
|
return btoa(String.fromCharCode.apply(null, utf8Array));
|
|
8599
8599
|
};
|
|
8600
8600
|
|
|
8601
|
-
|
|
8601
|
+
/**
|
|
8602
|
+
* The response is the source of truth: a facet it stops offering stops being applied. Both
|
|
8603
|
+
* fields move together here, or a filter outlives the facet that could undo it.
|
|
8604
|
+
*
|
|
8605
|
+
* An absent field says nothing and leaves the pair alone; an empty one clears both halves.
|
|
8606
|
+
*/
|
|
8607
|
+
const applyResponseFilters = (state, responseFilters) => {
|
|
8608
|
+
if (!responseFilters)
|
|
8609
|
+
return;
|
|
8610
|
+
state.dynamicFilters = responseFilters;
|
|
8611
|
+
state.requestFilters = extractSelectedFilters(responseFilters);
|
|
8612
|
+
};
|
|
8613
|
+
|
|
8614
|
+
/**
|
|
8615
|
+
* Requests are never cancelled, so a slow response can land after a newer one and undo the
|
|
8616
|
+
* selection the user already sees. Both search kinds share a store's counter: they write the
|
|
8617
|
+
* same fields, so either supersedes what was pending.
|
|
8618
|
+
*/
|
|
8619
|
+
const latestSearch = new Map();
|
|
8620
|
+
/** Claims the store's newest slot and returns the predicate for its own response. */
|
|
8621
|
+
const startSearch = (store) => {
|
|
8622
|
+
var _a;
|
|
8623
|
+
const sequence = ((_a = latestSearch.get(store)) !== null && _a !== void 0 ? _a : 0) + 1;
|
|
8624
|
+
latestSearch.set(store, sequence);
|
|
8625
|
+
return () => latestSearch.get(store) !== sequence;
|
|
8626
|
+
};
|
|
8627
|
+
|
|
8628
|
+
const version = "2.224.1";
|
|
8602
8629
|
|
|
8603
8630
|
const appStateGlobalDefaults = {
|
|
8604
8631
|
excluded: null,
|
|
@@ -8691,7 +8718,7 @@ const emitSearchSuccess = (storeName, state, campaignTypeId) => {
|
|
|
8691
8718
|
}));
|
|
8692
8719
|
};
|
|
8693
8720
|
const updateVisualSearchState = (store, isHiResUpdate = false) => async (response) => {
|
|
8694
|
-
var _a
|
|
8721
|
+
var _a;
|
|
8695
8722
|
const state = useStore(store);
|
|
8696
8723
|
if (store === "shopTheLook") {
|
|
8697
8724
|
state.visualSearchId = response.requestId;
|
|
@@ -8700,17 +8727,12 @@ const updateVisualSearchState = (store, isHiResUpdate = false) => async (respons
|
|
|
8700
8727
|
const detectedObjects = response.interactions.suggestedSearchAreas.map(({ rectangle }) => rectangle);
|
|
8701
8728
|
if (detectedObjects.length > 0)
|
|
8702
8729
|
state.detectedObjects = detectedObjects;
|
|
8703
|
-
const dynamicFilters = (_a = response.interactions.dynamicFilters) !== null && _a !== void 0 ? _a : [];
|
|
8704
8730
|
state.visualSearchId = response.requestId;
|
|
8705
8731
|
state.results = response.data.products;
|
|
8706
|
-
state.dynamicFilters
|
|
8732
|
+
applyResponseFilters(state, response.interactions.dynamicFilters);
|
|
8707
8733
|
state.redirect = response.interactions.redirect
|
|
8708
8734
|
? Object.assign(Object.assign({}, response.interactions.redirect), { searchId: response.requestId }) : null;
|
|
8709
|
-
|
|
8710
|
-
if (state.requestFilters.length === 0 && extractedFilters.length > 0) {
|
|
8711
|
-
state.requestFilters = extractedFilters;
|
|
8712
|
-
}
|
|
8713
|
-
state.stream = (_b = response === null || response === void 0 ? void 0 : response.stream) !== null && _b !== void 0 ? _b : null;
|
|
8735
|
+
state.stream = (_a = response === null || response === void 0 ? void 0 : response.stream) !== null && _a !== void 0 ? _a : null;
|
|
8714
8736
|
state.searchStatus = "success";
|
|
8715
8737
|
if (!isHiResUpdate)
|
|
8716
8738
|
emitSearchSuccess(store, state, "VPS");
|
|
@@ -8720,17 +8742,25 @@ const updateImageState = (store) => (file) => Rectangle.pipe(Rectangle.fromTask(
|
|
|
8720
8742
|
state.image = image;
|
|
8721
8743
|
return image;
|
|
8722
8744
|
}), Rectangle.map(() => file));
|
|
8723
|
-
const handleSearchError = (store) => (error) => {
|
|
8724
|
-
|
|
8745
|
+
const handleSearchError = (store, isStale = () => false) => (error) => {
|
|
8746
|
+
// A stale failure would wipe the newer request's results and show an error over them.
|
|
8747
|
+
if (isStale())
|
|
8748
|
+
return error;
|
|
8749
|
+
// Keep dynamicFilters: they pair with requestFilters, which this reset leaves in place.
|
|
8750
|
+
// Dropping only the facets would leave a filter applied with no chip to undo it.
|
|
8751
|
+
resetStore(store, "receivedDataOnly", ["dynamicFilters"]);
|
|
8725
8752
|
const state = useStore(store);
|
|
8726
8753
|
state.searchStatus = "error";
|
|
8727
8754
|
return error;
|
|
8728
8755
|
};
|
|
8729
8756
|
const processVisualSearch = (store, body, token, apiPath, isHiResUpdate = false) => {
|
|
8757
|
+
const isStale = startSearch(store);
|
|
8730
8758
|
return Rectangle.pipe(getTokenWithBody(token, body), Rectangle.setBodyAndHeaders, Rectangle.fromEither, Rectangle.chain$1((request) => Rectangle.visualSearchSessionClient(request, apiPath)), Rectangle.map((sessionResponse) => {
|
|
8759
|
+
if (isStale())
|
|
8760
|
+
return sessionResponse;
|
|
8731
8761
|
updateVisualSearchState(store, isHiResUpdate)(sessionResponse);
|
|
8732
8762
|
return sessionResponse;
|
|
8733
|
-
}), Rectangle.mapLeft(handleSearchError(store)));
|
|
8763
|
+
}), Rectangle.mapLeft(handleSearchError(store, isStale)));
|
|
8734
8764
|
};
|
|
8735
8765
|
const uploadImageFile = (store, token, imageType = "image", searchId, apiPath, campaignId, isHiResUpdate = false) => (file) => {
|
|
8736
8766
|
const state = useStore(store);
|
|
@@ -8777,7 +8807,7 @@ const makeUploadFileRequest = (store, token, apiPath, campaignId) => async (file
|
|
|
8777
8807
|
}))();
|
|
8778
8808
|
return session;
|
|
8779
8809
|
};
|
|
8780
|
-
const makeVisualSearchRequest = async (store, searchId, token, apiPath, campaignId) => {
|
|
8810
|
+
const makeVisualSearchRequest = async (store, searchId, token, { apiPath, campaignId, dropAppliedFilters } = {}) => {
|
|
8781
8811
|
const state = useStore(store);
|
|
8782
8812
|
state.textSearchQuery = null;
|
|
8783
8813
|
state.searchType = "image";
|
|
@@ -8803,7 +8833,7 @@ const makeVisualSearchRequest = async (store, searchId, token, apiPath, campaign
|
|
|
8803
8833
|
searchRectangle = null;
|
|
8804
8834
|
fetchDetectedObjects = true;
|
|
8805
8835
|
}
|
|
8806
|
-
const body = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, addIfDefined("requestId", searchId !== null && searchId !== void 0 ? searchId : state.visualSearchId)), addIfNotEmpty("campaign", campaignId || state.campaignIdVisualSearch || state.campaignId)), addIfNotEmpty("dynamicFilters", state.requestFilters)), { query: Object.assign({}, addIfDefined("searchArea", searchRectangle)) }), addNestedIfNotEmpty("staticFilters", Object.assign({}, addIfNotEmpty("excluded", state.excluded)))), { objectDetection: {
|
|
8836
|
+
const body = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, addIfDefined("requestId", searchId !== null && searchId !== void 0 ? searchId : state.visualSearchId)), addIfNotEmpty("campaign", campaignId || state.campaignIdVisualSearch || state.campaignId)), addIfNotEmpty("dynamicFilters", dropAppliedFilters ? [] : state.requestFilters)), { query: Object.assign({}, addIfDefined("searchArea", searchRectangle)) }), addNestedIfNotEmpty("staticFilters", Object.assign({}, addIfNotEmpty("excluded", state.excluded)))), { objectDetection: {
|
|
8807
8837
|
include: fetchDetectedObjects,
|
|
8808
8838
|
} });
|
|
8809
8839
|
return processVisualSearch(store, body, token, apiPath)();
|
|
@@ -8818,21 +8848,19 @@ const makeTextSearchRequest = async (store, query, token, apiPath, requestId, re
|
|
|
8818
8848
|
state.searchType = "text";
|
|
8819
8849
|
state.searchStatus = "loading";
|
|
8820
8850
|
const body = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ query }, addIfDefined("requestId", requestId)), addIfDefined("resultsCount", resultsCount)), addIfNotEmpty("dynamicFilters", state.requestFilters)), addIfNotEmpty("campaign", state.campaignIdTextSearch)), addNestedIfNotEmpty("staticFilters", Object.assign({}, addIfNotEmpty("excluded", state.excluded))));
|
|
8851
|
+
const isStale = startSearch(store);
|
|
8821
8852
|
return Rectangle.pipe(getTokenWithBody(token, body), Rectangle.setBodyAndHeaders, Rectangle.fromEither, Rectangle.chain$1((request) => Rectangle.textSearchSessionClient(request, apiPath)), Rectangle.map((sessionResponse) => {
|
|
8822
|
-
var _a, _b, _c, _d
|
|
8853
|
+
var _a, _b, _c, _d;
|
|
8854
|
+
if (isStale())
|
|
8855
|
+
return sessionResponse;
|
|
8823
8856
|
state.results = (_b = (_a = sessionResponse === null || sessionResponse === void 0 ? void 0 : sessionResponse.data) === null || _a === void 0 ? void 0 : _a.products) !== null && _b !== void 0 ? _b : [];
|
|
8824
8857
|
state.textSearchId = sessionResponse.requestId;
|
|
8825
|
-
state.dynamicFilters
|
|
8826
|
-
|
|
8827
|
-
const extractedFilters = extractSelectedFilters((_f = (_e = sessionResponse === null || sessionResponse === void 0 ? void 0 : sessionResponse.interactions) === null || _e === void 0 ? void 0 : _e.dynamicFilters) !== null && _f !== void 0 ? _f : []);
|
|
8828
|
-
if (state.requestFilters.length === 0 && extractedFilters.length > 0) {
|
|
8829
|
-
state.requestFilters = extractedFilters;
|
|
8830
|
-
}
|
|
8831
|
-
state.stream = (_g = sessionResponse === null || sessionResponse === void 0 ? void 0 : sessionResponse.stream) !== null && _g !== void 0 ? _g : null;
|
|
8858
|
+
applyResponseFilters(state, (_c = sessionResponse === null || sessionResponse === void 0 ? void 0 : sessionResponse.interactions) === null || _c === void 0 ? void 0 : _c.dynamicFilters);
|
|
8859
|
+
state.stream = (_d = sessionResponse === null || sessionResponse === void 0 ? void 0 : sessionResponse.stream) !== null && _d !== void 0 ? _d : null;
|
|
8832
8860
|
state.searchStatus = "success";
|
|
8833
8861
|
emitSearchSuccess(store, state, "TPS");
|
|
8834
8862
|
return sessionResponse;
|
|
8835
|
-
}), Rectangle.mapLeft(handleSearchError(store)))();
|
|
8863
|
+
}), Rectangle.mapLeft(handleSearchError(store, isStale)))();
|
|
8836
8864
|
};
|
|
8837
8865
|
const makeProductListingPageRequest = async (column, value, token, apiPath, resultsCount, dynamicFilters, skipStateUpdate) => {
|
|
8838
8866
|
const state = useStore("components");
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var index = require('./index-BU8FMTXn.js');
|
|
4
4
|
var store = require('./store-jPZ4ROqV.js');
|
|
5
|
-
var search_store = require('./search.store-
|
|
5
|
+
var search_store = require('./search.store-BOJh7lOl.js');
|
|
6
6
|
var index$1 = require('./index-CP1QUrJT.js');
|
|
7
7
|
var SecondaryActionIcon = require('./SecondaryActionIcon-CuNEBTWD.js');
|
|
8
8
|
var index$2 = require('./index-BF9aENF8.js');
|