vviinn-widgets 2.196.0 → 2.197.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.
- package/dist/cjs/{index-CpJcNhVM.js → index-BrWTzRc7.js} +16 -14
- package/dist/cjs/index-ClWQDYyW.js +399 -0
- package/dist/{esm/index-CckoTlaC.js → cjs/index-DLEDOlRe.js} +25 -1
- package/dist/cjs/index-OrE9ITel.js +2 -6
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{package-Dp3CQTMp.js → package-BL578Fil.js} +1 -1
- package/dist/cjs/{search.store-B_KXvC4d.js → search.store-DHFf8KQS.js} +74 -3
- package/dist/cjs/vviinn-button_6.cjs.entry.js +20 -21
- package/dist/cjs/{vviinn-camera_11.cjs.entry.js → vviinn-camera_12.cjs.entry.js} +344 -72
- package/dist/cjs/vviinn-carousel_10.cjs.entry.js +77 -74
- package/dist/cjs/vviinn-detected-object_2.cjs.entry.js +1 -1
- package/dist/cjs/vviinn-shop-the-look.cjs.entry.js +2 -2
- package/dist/cjs/vviinn-text-search.cjs.entry.js +4 -4
- package/dist/cjs/vviinn-vps-button.cjs.entry.js +5 -6
- package/dist/cjs/vviinn-widgets.cjs.js +1 -1
- package/dist/collection/components/vviinn-error/vviinn-error.css +2 -0
- package/dist/collection/components/vviinn-filters/helpers/extractSelectedFilters.js +33 -0
- package/dist/collection/components/vviinn-filters/helpers/filterValueUtils.js +29 -0
- package/dist/collection/components/vviinn-filters/helpers/index.js +3 -0
- package/dist/collection/components/vviinn-filters/helpers/isSubFilterActive.js +2 -3
- package/dist/collection/components/vviinn-filters/helpers/subFilterSelection.js +18 -6
- package/dist/collection/components/vviinn-filters/helpers/syncRequestFilters.js +14 -0
- package/dist/collection/components/vviinn-filters/vviinn-extended-filters.js +12 -7
- package/dist/collection/components/vviinn-filters/vviinn-filters.css +21 -16
- package/dist/collection/components/vviinn-filters/vviinn-filters.js +8 -5
- package/dist/collection/components/vviinn-filters/vviinn-selected-filters.js +14 -6
- package/dist/collection/components/vviinn-image/vviinn-image.js +3 -3
- package/dist/collection/components/vviinn-image-selector/vviinn-image-selector.js +2 -2
- package/dist/collection/components/vviinn-modal/vviinn-modal.js +2 -2
- package/dist/collection/components/vviinn-overlay/vviinn-overlay.js +1 -1
- package/dist/collection/components/vviinn-overlayed-modal/vviinn-overlayed-modal.js +1 -1
- package/dist/collection/components/vviinn-preloader/vviinn-preloader.js +1 -1
- package/dist/collection/components/vviinn-privacy-badge/vviinn-privacy-badge.js +1 -1
- package/dist/collection/components/vviinn-product-card/vviinn-energy-label/vviinn-energy-label.js +2 -2
- package/dist/collection/components/vviinn-results/vviinn-results.js +3 -3
- package/dist/collection/components/vviinn-shop-the-look/vviinn-shop-the-look.js +1 -1
- package/dist/collection/components/vviinn-skeleton/vviinn-skeleton.js +1 -1
- package/dist/collection/components/vviinn-slider/vviinn-slide/vviinn-slide.js +1 -1
- package/dist/collection/components/vviinn-slider/vviinn-slider.js +1 -1
- package/dist/collection/components/vviinn-suggestions/vviinn-suggestions.css +6 -1
- package/dist/collection/components/vviinn-teaser/vviinn-teaser.js +1 -1
- package/dist/collection/components/vviinn-text-search/vviinn-text-search.js +2 -2
- package/dist/collection/components/vviinn-vpr-button/recommendations-sidebar/recommendations-sidebar.js +3 -3
- package/dist/collection/components/vviinn-vpr-button/vviinn-vpr-button.js +1 -1
- package/dist/collection/components/vviinn-vps-button/vviinn-vps-button.js +1 -1
- package/dist/collection/components/vviinn-vps-widget/vviinn-vps-widget.css +19 -42
- package/dist/collection/components/vviinn-vps-widget/vviinn-vps-widget.js +10 -10
- package/dist/collection/cssParts/index.js +2 -13
- package/dist/collection/cssParts/suggestions.js +12 -0
- package/dist/collection/store/search.store.js +8 -3
- package/dist/esm/index-C5qrIvmr.js +2 -6
- package/dist/esm/{index-g0rpLM84.js → index-CtuL3RiP.js} +16 -15
- package/dist/{cjs/index-tXcMfW9y.js → esm/index-DlCdKcyY.js} +10 -6
- package/dist/esm/index-E1xSXX9S.js +369 -0
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{package-DjzQfs4n.js → package-DZVuE7LY.js} +1 -1
- package/dist/esm/{search.store-LhkDttfN.js → search.store-BtRgJeHn.js} +71 -4
- package/dist/esm/vviinn-button_6.entry.js +12 -13
- package/dist/esm/{vviinn-camera_11.entry.js → vviinn-camera_12.entry.js} +307 -36
- package/dist/esm/vviinn-carousel_10.entry.js +28 -25
- package/dist/esm/vviinn-detected-object_2.entry.js +1 -1
- package/dist/esm/vviinn-shop-the-look.entry.js +2 -2
- package/dist/esm/vviinn-text-search.entry.js +4 -4
- package/dist/esm/vviinn-vps-button.entry.js +2 -3
- package/dist/esm/vviinn-widgets.js +1 -1
- package/dist/types/components/vviinn-filters/helpers/extractSelectedFilters.d.ts +6 -0
- package/dist/types/components/vviinn-filters/helpers/filterValueUtils.d.ts +8 -0
- package/dist/types/components/vviinn-filters/helpers/index.d.ts +3 -0
- package/dist/types/components/vviinn-filters/helpers/syncRequestFilters.d.ts +7 -0
- package/dist/types/components.d.ts +8 -2
- package/dist/types/cssParts/index.d.ts +0 -1
- package/dist/types/cssParts/suggestions.d.ts +1 -0
- package/dist/vviinn-widgets/p-2c7fc702.entry.js +1 -0
- package/dist/vviinn-widgets/{p-4bce3cbd.entry.js → p-60672b4b.entry.js} +1 -1
- package/dist/vviinn-widgets/p-6c573566.entry.js +1 -0
- package/dist/vviinn-widgets/p-9a96a901.entry.js +1 -0
- package/dist/vviinn-widgets/p-BvC9-bcY.js +1 -0
- package/dist/vviinn-widgets/p-CtuL3RiP.js +1 -0
- package/dist/vviinn-widgets/{p-DjzQfs4n.js → p-DZVuE7LY.js} +1 -1
- package/dist/vviinn-widgets/p-DlCdKcyY.js +1 -0
- package/dist/vviinn-widgets/p-OChFjzgO.js +1 -0
- package/{www/build/p-d5889e8d.entry.js → dist/vviinn-widgets/p-c6fad937.entry.js} +1 -1
- package/{www/build/p-2c1a8263.entry.js → dist/vviinn-widgets/p-ce7c3af0.entry.js} +1 -1
- package/dist/vviinn-widgets/p-f3b8af7d.entry.js +1 -0
- package/dist/vviinn-widgets/vviinn-widgets.esm.js +1 -1
- package/package.json +1 -1
- package/www/build/p-2c7fc702.entry.js +1 -0
- package/www/build/{p-4bce3cbd.entry.js → p-60672b4b.entry.js} +1 -1
- package/www/build/p-6c573566.entry.js +1 -0
- package/www/build/p-9a96a901.entry.js +1 -0
- package/www/build/p-BvC9-bcY.js +1 -0
- package/www/build/p-CtuL3RiP.js +1 -0
- package/www/build/{p-DjzQfs4n.js → p-DZVuE7LY.js} +1 -1
- package/www/build/p-DlCdKcyY.js +1 -0
- package/www/build/p-OChFjzgO.js +1 -0
- package/www/build/p-b4b6c1f6.js +1 -0
- package/{dist/vviinn-widgets/p-d5889e8d.entry.js → www/build/p-c6fad937.entry.js} +1 -1
- package/{dist/vviinn-widgets/p-2c1a8263.entry.js → www/build/p-ce7c3af0.entry.js} +1 -1
- package/www/build/p-f3b8af7d.entry.js +1 -0
- package/www/build/vviinn-widgets.esm.js +1 -1
- package/www/index.html +1 -1
- package/dist/cjs/RenderFilterButton-CSLqPags.js +0 -103
- package/dist/cjs/constants-BlwqMvns.js +0 -20
- package/dist/cjs/index-B-eF0nQu.js +0 -177
- package/dist/cjs/index-C3G9W48a.js +0 -24
- package/dist/cjs/triggerFilter-DFGg92Xh.js +0 -100
- package/dist/cjs/vviinn-selected-filters.cjs.entry.js +0 -262
- package/dist/esm/RenderFilterButton-DbAF7O7r.js +0 -95
- package/dist/esm/constants-rqiiCPBX.js +0 -11
- package/dist/esm/index-C5MrXMjM.js +0 -20
- package/dist/esm/index-lFn09yLT.js +0 -158
- package/dist/esm/triggerFilter-B4e4JwCJ.js +0 -96
- package/dist/esm/vviinn-selected-filters.entry.js +0 -260
- package/dist/vviinn-widgets/p-3be1bd0e.entry.js +0 -1
- package/dist/vviinn-widgets/p-5hlq91W8.js +0 -1
- package/dist/vviinn-widgets/p-7339b95e.entry.js +0 -1
- package/dist/vviinn-widgets/p-B4e4JwCJ.js +0 -1
- package/dist/vviinn-widgets/p-ByDRCwbj.js +0 -1
- package/dist/vviinn-widgets/p-C5MrXMjM.js +0 -1
- package/dist/vviinn-widgets/p-CckoTlaC.js +0 -1
- package/dist/vviinn-widgets/p-a2c30a99.entry.js +0 -1
- package/dist/vviinn-widgets/p-cdab8bc8.entry.js +0 -1
- package/dist/vviinn-widgets/p-e59e023d.entry.js +0 -1
- package/dist/vviinn-widgets/p-fgGsgrXc.js +0 -1
- package/dist/vviinn-widgets/p-g0rpLM84.js +0 -1
- package/dist/vviinn-widgets/p-rqiiCPBX.js +0 -1
- package/www/build/p-3be1bd0e.entry.js +0 -1
- package/www/build/p-4c361181.js +0 -1
- package/www/build/p-5hlq91W8.js +0 -1
- package/www/build/p-7339b95e.entry.js +0 -1
- package/www/build/p-B4e4JwCJ.js +0 -1
- package/www/build/p-ByDRCwbj.js +0 -1
- package/www/build/p-C5MrXMjM.js +0 -1
- package/www/build/p-CckoTlaC.js +0 -1
- package/www/build/p-a2c30a99.entry.js +0 -1
- package/www/build/p-cdab8bc8.entry.js +0 -1
- package/www/build/p-e59e023d.entry.js +0 -1
- package/www/build/p-fgGsgrXc.js +0 -1
- package/www/build/p-g0rpLM84.js +0 -1
- package/www/build/p-rqiiCPBX.js +0 -1
|
@@ -127,10 +127,23 @@ const listCardPartsList = [
|
|
|
127
127
|
"list-title",
|
|
128
128
|
];
|
|
129
129
|
|
|
130
|
+
const suggestionsPartsList = [
|
|
131
|
+
"suggestions-container",
|
|
132
|
+
"suggestions-header",
|
|
133
|
+
"suggestions-icon",
|
|
134
|
+
"suggestions-title",
|
|
135
|
+
"suggestions-description",
|
|
136
|
+
"suggestions-wrapper",
|
|
137
|
+
"suggestions-list",
|
|
138
|
+
"suggestion-item",
|
|
139
|
+
"suggestion-link",
|
|
140
|
+
"suggestion-filter-button",
|
|
141
|
+
];
|
|
142
|
+
|
|
130
143
|
const makeExportPartsString = (...args) => args.flat().join(", ");
|
|
131
144
|
const extendedFiltersParts = makeExportPartsString(extendedFiltersPartsList, histogramPartsList, generalFiltersPartsList, searchPartsList);
|
|
132
145
|
const filtersParts = makeExportPartsString(filtersPartsList, histogramPartsList, generalFiltersPartsList);
|
|
133
|
-
makeExportPartsString(selectedFiltersPartsList, generalFiltersPartsList);
|
|
146
|
+
const selectedFiltersParts = makeExportPartsString(selectedFiltersPartsList, generalFiltersPartsList);
|
|
134
147
|
const priceRangeParts = makeExportPartsString(histogramPartsList);
|
|
135
148
|
const energyLabelParts = makeExportPartsString(energyLabelPartsList);
|
|
136
149
|
const productCardsGridPart = "products";
|
|
@@ -138,7 +151,7 @@ const imageParts = makeExportPartsString(imagePartsList);
|
|
|
138
151
|
const productCardParts = makeExportPartsString(productCardGeneralPartsList, imagePartsList, pricePartsList, customLabelPartsList, energyLabelPartsList);
|
|
139
152
|
const contentCardParts = makeExportPartsString(contentCardPartsList, imagePartsList);
|
|
140
153
|
const listCardParts = makeExportPartsString(listCardPartsList, imagePartsList);
|
|
141
|
-
const searchWidgetFilterParts = makeExportPartsString(extendedFiltersPartsList, filtersPartsList, histogramPartsList, searchPartsList, generalFiltersPartsList);
|
|
154
|
+
const searchWidgetFilterParts = makeExportPartsString(extendedFiltersPartsList, filtersPartsList, histogramPartsList, searchPartsList, generalFiltersPartsList, selectedFiltersPartsList);
|
|
142
155
|
const searchWidgetButtonParts = makeExportPartsString([
|
|
143
156
|
"upload-photo_button",
|
|
144
157
|
"start-camera_button",
|
|
@@ -160,18 +173,6 @@ const modalParts = makeExportPartsString([
|
|
|
160
173
|
"close-button",
|
|
161
174
|
"secondary-action",
|
|
162
175
|
]);
|
|
163
|
-
const suggestionsPartsList = [
|
|
164
|
-
"suggestions-container",
|
|
165
|
-
"suggestions-header",
|
|
166
|
-
"suggestions-icon",
|
|
167
|
-
"suggestions-title",
|
|
168
|
-
"suggestions-description",
|
|
169
|
-
"suggestions-wrapper",
|
|
170
|
-
"suggestions-list",
|
|
171
|
-
"suggestion-item",
|
|
172
|
-
"suggestion-link",
|
|
173
|
-
"suggestion-filter-button",
|
|
174
|
-
];
|
|
175
176
|
const suggestionsParts = makeExportPartsString(suggestionsPartsList);
|
|
176
177
|
|
|
177
178
|
exports.carouselParts = carouselParts;
|
|
@@ -188,4 +189,5 @@ exports.productCardsGridPart = productCardsGridPart;
|
|
|
188
189
|
exports.searchBarParts = searchBarParts;
|
|
189
190
|
exports.searchWidgetButtonParts = searchWidgetButtonParts;
|
|
190
191
|
exports.searchWidgetFilterParts = searchWidgetFilterParts;
|
|
192
|
+
exports.selectedFiltersParts = selectedFiltersParts;
|
|
191
193
|
exports.suggestionsParts = suggestionsParts;
|
|
@@ -0,0 +1,399 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var index = require('./index-OrE9ITel.js');
|
|
4
|
+
var search_store = require('./search.store-DHFf8KQS.js');
|
|
5
|
+
var i18next = require('./i18next-DkN_8H9H.js');
|
|
6
|
+
|
|
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" },
|
|
8
|
+
index.h("path", { d: "M14.6667 17.3333H8.00001C7.62223 17.3333 7.30556 17.2056 7.05001 16.95C6.79445 16.6944 6.66667 16.3778 6.66667 16C6.66667 15.6222 6.79445 15.3056 7.05001 15.05C7.30556 14.7944 7.62223 14.6667 8.00001 14.6667H14.6667V8.00001C14.6667 7.62223 14.7944 7.30556 15.05 7.05001C15.3056 6.79445 15.6222 6.66667 16 6.66667C16.3778 6.66667 16.6944 6.79445 16.95 7.05001C17.2056 7.30556 17.3333 7.62223 17.3333 8.00001V14.6667H24C24.3778 14.6667 24.6944 14.7944 24.95 15.05C25.2056 15.3056 25.3333 15.6222 25.3333 16C25.3333 16.3778 25.2056 16.6944 24.95 16.95C24.6944 17.2056 24.3778 17.3333 24 17.3333H17.3333V24C17.3333 24.3778 17.2056 24.6944 16.95 24.95C16.6944 25.2056 16.3778 25.3333 16 25.3333C15.6222 25.3333 15.3056 25.2056 15.05 24.95C14.7944 24.6944 14.6667 24.3778 14.6667 24V17.3333Z", fill: "currentColor" })));
|
|
9
|
+
|
|
10
|
+
const FilterIconCheck = () => (index.h("svg", { width: "11", height: "8", viewBox: "0 0 11 8", fill: "none", xmlns: "http://www.w3.org/2000/svg" },
|
|
11
|
+
index.h("path", { d: "M3.87651 5.50607L9.19428 0.307692C9.40412 0.102564 9.65261 0 9.93976 0C10.2269 0 10.4754 0.102564 10.6852 0.307692C10.8951 0.512821 11 0.755736 11 1.03644C11 1.31714 10.8951 1.56005 10.6852 1.76518L4.62199 7.69231C4.41215 7.89744 4.16365 8 3.87651 8C3.58936 8 3.34086 7.89744 3.13102 7.69231L0.314759 4.93927C0.10492 4.73414 0 4.49123 0 4.21053C0 3.92982 0.10492 3.68691 0.314759 3.48178C0.524598 3.27665 0.773092 3.17409 1.06024 3.17409C1.34739 3.17409 1.59588 3.27665 1.80572 3.48178L3.87651 5.50607Z", fill: "currentColor" })));
|
|
12
|
+
|
|
13
|
+
const FilterIconClose = () => (index.h("svg", { xmlns: "http://www.w3.org/2000/svg", width: "24", height: "24", viewBox: "0 0 24 24", fill: "none", "aria-hidden": "true" },
|
|
14
|
+
index.h("path", { d: "M12 13.4L7.09999 18.3C6.91665 18.4834 6.68332 18.575 6.39999 18.575C6.11665 18.575 5.88332 18.4834 5.69999 18.3C5.51665 18.1167 5.42499 17.8834 5.42499 17.6C5.42499 17.3167 5.51665 17.0834 5.69999 16.9L10.6 12L5.69999 7.10005C5.51665 6.91672 5.42499 6.68338 5.42499 6.40005C5.42499 6.11672 5.51665 5.88338 5.69999 5.70005C5.88332 5.51672 6.11665 5.42505 6.39999 5.42505C6.68332 5.42505 6.91665 5.51672 7.09999 5.70005L12 10.6L16.9 5.70005C17.0833 5.51672 17.3167 5.42505 17.6 5.42505C17.8833 5.42505 18.1167 5.51672 18.3 5.70005C18.4833 5.88338 18.575 6.11672 18.575 6.40005C18.575 6.68338 18.4833 6.91672 18.3 7.10005L13.4 12L18.3 16.9C18.4833 17.0834 18.575 17.3167 18.575 17.6C18.575 17.8834 18.4833 18.1167 18.3 18.3C18.1167 18.4834 17.8833 18.575 17.6 18.575C17.3167 18.575 17.0833 18.4834 16.9 18.3L12 13.4Z", fill: "#8D8D8D" })));
|
|
15
|
+
|
|
16
|
+
const CAROUSEL_CONTENT_WIDTH_CSS_VAR = "--vviinn-carousel-content-width";
|
|
17
|
+
const CAROUSEL_IMAGE_WIDTH_CSS_VAR = "--vviinn-carousel-image-width";
|
|
18
|
+
const SET_MODE_IMAGE_WIDTH_CSS_VAR = "--vviinn-set-mode-image-width";
|
|
19
|
+
const RESULTS_CALCULATED_COLUMNS_CSS_VAR = "--vviinn-results-calculated-columns";
|
|
20
|
+
const CONTENT_GROUP_CSS_CLASS = "items-group";
|
|
21
|
+
const DEFAULT_COLUMNS_NUMBER = 4;
|
|
22
|
+
const SCROLL_POSITION_TOLERANCE = 2;
|
|
23
|
+
|
|
24
|
+
const parseCampaigns = (campaigns) => !campaigns.length
|
|
25
|
+
? []
|
|
26
|
+
: campaigns.split(",").map((value) => {
|
|
27
|
+
const trimmedValue = value.trim();
|
|
28
|
+
return !isNaN(parseInt(trimmedValue))
|
|
29
|
+
? parseInt(trimmedValue)
|
|
30
|
+
: trimmedValue;
|
|
31
|
+
});
|
|
32
|
+
const getRecommendationsBody = ({ productId, campaigns, color, excluded, dynamicFilters = [], }) => {
|
|
33
|
+
const staticFilters = Object.assign(Object.assign({}, search_store.addIfNotEmpty("color", color)), search_store.addIfNotEmpty("excluded", search_store.parseStringToExcluded(excluded)));
|
|
34
|
+
return Object.assign(Object.assign(Object.assign({ productId }, search_store.addIfNotEmpty("dynamicFilters", dynamicFilters)), search_store.addIfNotEmpty("campaigns", parseCampaigns(campaigns))), search_store.addIfNotEmpty("staticFilters", staticFilters));
|
|
35
|
+
};
|
|
36
|
+
const getCustomLabels = (recommendation) => {
|
|
37
|
+
const { custom_label_0, custom_label_1, custom_label_2, custom_label_3, custom_label_4, } = recommendation;
|
|
38
|
+
return [
|
|
39
|
+
custom_label_0,
|
|
40
|
+
custom_label_1,
|
|
41
|
+
custom_label_2,
|
|
42
|
+
custom_label_3,
|
|
43
|
+
custom_label_4,
|
|
44
|
+
]
|
|
45
|
+
.filter((label) => label)
|
|
46
|
+
.join(",");
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* Announces a message to screen readers via a live region
|
|
51
|
+
* @param element - The aria-live element reference
|
|
52
|
+
* @param message - The message to announce
|
|
53
|
+
*/
|
|
54
|
+
function announceToScreenReader(message, element) {
|
|
55
|
+
if (element) {
|
|
56
|
+
element.textContent = message;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
* Generates an appropriate aria-label for a filter remove button
|
|
62
|
+
* @param label - The filter label
|
|
63
|
+
* @returns The aria-label string
|
|
64
|
+
*/
|
|
65
|
+
function getRemoveFilterAriaLabel(label) {
|
|
66
|
+
return i18next.instance.t("a11y.removeFilterLabel", { label });
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Generates an aria-label for color option filters
|
|
70
|
+
* @param label - The color label
|
|
71
|
+
* @returns The aria-label string
|
|
72
|
+
*/
|
|
73
|
+
function getColorOptionAriaLabel(label) {
|
|
74
|
+
return i18next.instance.t("a11y.colorOption", { label });
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
const isPriceFilter = (column) => column === "price" || column === "minimum_price";
|
|
78
|
+
|
|
79
|
+
const getIntervalLabel = (intervalFilter, fullInterval, currencySign, showColumnLabel = false) => {
|
|
80
|
+
if (!fullInterval)
|
|
81
|
+
return null;
|
|
82
|
+
const { start, end } = fullInterval;
|
|
83
|
+
const { start: rangeStart, end: rangeEnd } = intervalFilter.full;
|
|
84
|
+
if (start !== rangeStart || end !== rangeEnd) {
|
|
85
|
+
const isPrice = isPriceFilter(intervalFilter.column);
|
|
86
|
+
if (isPrice && currencySign) {
|
|
87
|
+
return `${start} ${currencySign} – ${end} ${currencySign}`;
|
|
88
|
+
}
|
|
89
|
+
else {
|
|
90
|
+
const rangeValue = `${start} – ${end}`;
|
|
91
|
+
return isPrice
|
|
92
|
+
? rangeValue
|
|
93
|
+
: `${showColumnLabel ? `${intervalFilter.label}: ` : ""}${rangeValue}`;
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
else {
|
|
97
|
+
return null;
|
|
98
|
+
}
|
|
99
|
+
};
|
|
100
|
+
|
|
101
|
+
const isSubFilterActive = (requestFilters, filterValue, selectedFilter) => {
|
|
102
|
+
if (!requestFilters || !selectedFilter)
|
|
103
|
+
return false;
|
|
104
|
+
const mainFilter = requestFilters.find(({ column }) => column === selectedFilter.column);
|
|
105
|
+
if (!mainFilter)
|
|
106
|
+
return false;
|
|
107
|
+
return mainFilter.values.some((value) => search_store.isValueMatch(value, filterValue));
|
|
108
|
+
};
|
|
109
|
+
|
|
110
|
+
const RenderFilterButton = ({ handleSubFilterSelection, value, label, active, selectedFilter, isSelected = false, showClose = false, showColorLabel, }) => {
|
|
111
|
+
const hexCode = value === null || value === void 0 ? void 0 : value.hexCode;
|
|
112
|
+
const hasHexCodeLength = (hexCode === null || hexCode === void 0 ? void 0 : hexCode.length) > 0;
|
|
113
|
+
const isRemovable = isSelected && showClose;
|
|
114
|
+
const renderIcon = () => {
|
|
115
|
+
if (isRemovable) {
|
|
116
|
+
return index.h(FilterIconClose, null);
|
|
117
|
+
}
|
|
118
|
+
return (index.h("div", { part: "filters-option-icon-wrapper", class: "filters-option-icon-wrapper", "aria-hidden": "true" }, isSelected ? index.h(FilterIconCheck, null) : null));
|
|
119
|
+
};
|
|
120
|
+
const ariaLabel = isRemovable
|
|
121
|
+
? getRemoveFilterAriaLabel(label)
|
|
122
|
+
: hasHexCodeLength
|
|
123
|
+
? getColorOptionAriaLabel(label)
|
|
124
|
+
: undefined;
|
|
125
|
+
return (index.h("li", { part: "filters-sub-row" },
|
|
126
|
+
index.h("button", Object.assign({ onClick: () => handleSubFilterSelection(value, selectedFilter), class: `filters-more-modal-button ${hasHexCodeLength ? "filters-sub-button-color" : ""} ${isSelected ? "active" : ""}`, disabled: !active && !isSelected, part: "filters-option-button", "aria-pressed": !isRemovable && isSelected ? "true" : "false" }, (ariaLabel && { "aria-label": ariaLabel }), { type: "button" }),
|
|
127
|
+
hasHexCodeLength && (index.h("div", { class: "filters-sub-button-color-dot", style: { backgroundColor: hexCode }, part: "filters-option-color-dot", "aria-hidden": "true" })),
|
|
128
|
+
(showColorLabel || !hasHexCodeLength) && (index.h("span", { part: "filters-option-text" }, label)),
|
|
129
|
+
renderIcon())));
|
|
130
|
+
};
|
|
131
|
+
|
|
132
|
+
/**
|
|
133
|
+
* Syncs local component requestFilters state with the store's requestFilters in case there are response filters with selected: true.
|
|
134
|
+
*/
|
|
135
|
+
const syncRequestFilters = (state, onChange, setRequestFilters) => {
|
|
136
|
+
var _a;
|
|
137
|
+
if (((_a = state.requestFilters) === null || _a === void 0 ? void 0 : _a.length) > 0) {
|
|
138
|
+
setRequestFilters([...state.requestFilters]);
|
|
139
|
+
}
|
|
140
|
+
onChange("requestFilters", (newValue) => {
|
|
141
|
+
if ((newValue === null || newValue === void 0 ? void 0 : newValue.length) > 0) {
|
|
142
|
+
setRequestFilters([...newValue]);
|
|
143
|
+
}
|
|
144
|
+
});
|
|
145
|
+
};
|
|
146
|
+
|
|
147
|
+
const isFullRangeInterval = (selectedFilter, interval) => {
|
|
148
|
+
if (selectedFilter.type !== "interval")
|
|
149
|
+
return false;
|
|
150
|
+
const intervalFilter = selectedFilter;
|
|
151
|
+
const fullRange = intervalFilter.full;
|
|
152
|
+
return interval.start === fullRange.start && interval.end === fullRange.end;
|
|
153
|
+
};
|
|
154
|
+
const subFilterSelection = (filters, selectedFilter, filterValue) => {
|
|
155
|
+
var _a;
|
|
156
|
+
const selectedColumn = selectedFilter.column;
|
|
157
|
+
const rawValue = search_store.extractFilterValue(filterValue);
|
|
158
|
+
const index = filters.findIndex(({ column }) => column === selectedColumn);
|
|
159
|
+
if (selectedFilter.type === "interval" && filterValue.interval) {
|
|
160
|
+
const interval = filterValue.interval;
|
|
161
|
+
if (isFullRangeInterval(selectedFilter, interval)) {
|
|
162
|
+
if (index > -1) {
|
|
163
|
+
filters = [
|
|
164
|
+
...filters.filter((filter) => filter.column !== selectedColumn),
|
|
165
|
+
];
|
|
166
|
+
return { filters, action: "deselect" };
|
|
167
|
+
}
|
|
168
|
+
else {
|
|
169
|
+
return { filters: [...filters], action: "deselect" };
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
const valueIndex = (_a = filters[index]) === null || _a === void 0 ? void 0 : _a.values.findIndex((val) => typeof val === "string" ? val === rawValue : search_store.isIntervalMatch(val, rawValue));
|
|
174
|
+
const action = valueIndex == -1 || index == -1 ? "select" : "deselect";
|
|
175
|
+
const pushObject = index === -1 || (selectedFilter === null || selectedFilter === void 0 ? void 0 : selectedFilter.type) === "interval"
|
|
176
|
+
? { column: selectedColumn, values: [] }
|
|
177
|
+
: filters[index];
|
|
178
|
+
if (valueIndex > -1) {
|
|
179
|
+
pushObject.values.splice(valueIndex, 1);
|
|
180
|
+
}
|
|
181
|
+
else {
|
|
182
|
+
if (selectedFilter.type === "categorical") {
|
|
183
|
+
const stringValue = search_store.valueToString(rawValue);
|
|
184
|
+
if (stringValue === null) {
|
|
185
|
+
return { filters: [...filters], action: "deselect" };
|
|
186
|
+
}
|
|
187
|
+
pushObject.values.push(stringValue);
|
|
188
|
+
}
|
|
189
|
+
else {
|
|
190
|
+
pushObject.values.push(rawValue);
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
if (index === -1) {
|
|
194
|
+
filters = [...filters, pushObject];
|
|
195
|
+
if (document.getElementById("filters-footer"))
|
|
196
|
+
document.getElementById("filters-footer").scrollLeft = 0;
|
|
197
|
+
}
|
|
198
|
+
else {
|
|
199
|
+
filters[index] = pushObject;
|
|
200
|
+
if (filters[index].values.length === 0) {
|
|
201
|
+
filters = [...filters.filter((filter) => filters[index] !== filter)];
|
|
202
|
+
}
|
|
203
|
+
else {
|
|
204
|
+
filters = [...filters];
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
return { filters, action };
|
|
208
|
+
};
|
|
209
|
+
|
|
210
|
+
const triggerFilter = ({ filterValue, selectedFilter, requestFilters, vviinnFilterTriggered, vviinnFiltersChanged, el, isTriggeredByVpsWidget, }) => {
|
|
211
|
+
const { filters, action } = subFilterSelection(requestFilters, selectedFilter, filterValue);
|
|
212
|
+
vviinnFilterTriggered.emit({
|
|
213
|
+
kind: selectedFilter.column,
|
|
214
|
+
action,
|
|
215
|
+
isTriggeredByVpsWidget,
|
|
216
|
+
value: filterValue,
|
|
217
|
+
filter: selectedFilter,
|
|
218
|
+
});
|
|
219
|
+
vviinnFiltersChanged.emit({
|
|
220
|
+
filters,
|
|
221
|
+
el,
|
|
222
|
+
isTriggeredByVpsWidget,
|
|
223
|
+
});
|
|
224
|
+
return filters;
|
|
225
|
+
};
|
|
226
|
+
const triggerResetFilters = ({ vviinnFilterTriggered, vviinnFiltersChanged, el, isTriggeredByVpsWidget, }) => {
|
|
227
|
+
vviinnFilterTriggered.emit({
|
|
228
|
+
action: "reset",
|
|
229
|
+
isTriggeredByVpsWidget,
|
|
230
|
+
});
|
|
231
|
+
vviinnFiltersChanged &&
|
|
232
|
+
vviinnFiltersChanged.emit({
|
|
233
|
+
filters: [],
|
|
234
|
+
el,
|
|
235
|
+
isTriggeredByVpsWidget,
|
|
236
|
+
});
|
|
237
|
+
};
|
|
238
|
+
const triggerRemoveIntervalFilter = ({ column, requestFilters, el, isTriggeredByVpsWidget, vviinnFilterTriggered, vviinnFiltersChanged, }) => {
|
|
239
|
+
const updatedFilters = requestFilters.filter((filter) => filter.column !== column);
|
|
240
|
+
vviinnFilterTriggered.emit({
|
|
241
|
+
kind: column,
|
|
242
|
+
action: "deselect",
|
|
243
|
+
isTriggeredByVpsWidget,
|
|
244
|
+
});
|
|
245
|
+
vviinnFiltersChanged.emit({
|
|
246
|
+
filters: updatedFilters,
|
|
247
|
+
el,
|
|
248
|
+
isTriggeredByVpsWidget,
|
|
249
|
+
});
|
|
250
|
+
return updatedFilters;
|
|
251
|
+
};
|
|
252
|
+
|
|
253
|
+
// Unique ID creation requires a high quality random # generator. In the browser we therefore
|
|
254
|
+
// require the crypto API and do not support built-in fallback to lower quality random number
|
|
255
|
+
// generators (like Math.random()).
|
|
256
|
+
var getRandomValues;
|
|
257
|
+
var rnds8 = new Uint8Array(16);
|
|
258
|
+
function rng() {
|
|
259
|
+
// lazy load so that environments that need to polyfill have a chance to do so
|
|
260
|
+
if (!getRandomValues) {
|
|
261
|
+
// getRandomValues needs to be invoked in a context where "this" is a Crypto implementation. Also,
|
|
262
|
+
// find the complete implementation of crypto (msCrypto) on IE11.
|
|
263
|
+
getRandomValues = typeof crypto !== 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto) || typeof msCrypto !== 'undefined' && typeof msCrypto.getRandomValues === 'function' && msCrypto.getRandomValues.bind(msCrypto);
|
|
264
|
+
|
|
265
|
+
if (!getRandomValues) {
|
|
266
|
+
throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
|
|
270
|
+
return getRandomValues(rnds8);
|
|
271
|
+
}
|
|
272
|
+
|
|
273
|
+
var REGEX = /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;
|
|
274
|
+
|
|
275
|
+
function validate(uuid) {
|
|
276
|
+
return typeof uuid === 'string' && REGEX.test(uuid);
|
|
277
|
+
}
|
|
278
|
+
|
|
279
|
+
/**
|
|
280
|
+
* Convert array of 16 byte values to UUID string format of the form:
|
|
281
|
+
* XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
|
|
282
|
+
*/
|
|
283
|
+
|
|
284
|
+
var byteToHex = [];
|
|
285
|
+
|
|
286
|
+
for (var i = 0; i < 256; ++i) {
|
|
287
|
+
byteToHex.push((i + 0x100).toString(16).substr(1));
|
|
288
|
+
}
|
|
289
|
+
|
|
290
|
+
function stringify(arr) {
|
|
291
|
+
var offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
|
|
292
|
+
// Note: Be careful editing this code! It's been tuned for performance
|
|
293
|
+
// and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434
|
|
294
|
+
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
|
|
295
|
+
// of the following:
|
|
296
|
+
// - One or more input array values don't map to a hex octet (leading to
|
|
297
|
+
// "undefined" in the uuid)
|
|
298
|
+
// - Invalid input values for the RFC `version` or `variant` fields
|
|
299
|
+
|
|
300
|
+
if (!validate(uuid)) {
|
|
301
|
+
throw TypeError('Stringified UUID is invalid');
|
|
302
|
+
}
|
|
303
|
+
|
|
304
|
+
return uuid;
|
|
305
|
+
}
|
|
306
|
+
|
|
307
|
+
function v4(options, buf, offset) {
|
|
308
|
+
options = options || {};
|
|
309
|
+
var rnds = options.random || (options.rng || rng)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`
|
|
310
|
+
|
|
311
|
+
rnds[6] = rnds[6] & 0x0f | 0x40;
|
|
312
|
+
rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided
|
|
313
|
+
|
|
314
|
+
return stringify(rnds);
|
|
315
|
+
}
|
|
316
|
+
|
|
317
|
+
const createTrackingEvent = (widget) => (eventData) => {
|
|
318
|
+
return Object.assign(Object.assign({}, eventData), widget);
|
|
319
|
+
};
|
|
320
|
+
|
|
321
|
+
const PRODUCT_LOAD_EVENT_TYPE = "product_load_event";
|
|
322
|
+
const PRODUCT_VIEW_EVENT_TYPE = "product_view_event";
|
|
323
|
+
const PRODUCT_CLICK_EVENT_TYPE = "product_click_event";
|
|
324
|
+
const ADD_TO_BASKET_EVENT_TYPE = "add_to_basket_event";
|
|
325
|
+
const FILTER_EVENT_TYPE = "filter_event";
|
|
326
|
+
const SEARCH_EVENT_TYPE = "search_event";
|
|
327
|
+
const WIDGET_EVENT_TYPE = "widget_event";
|
|
328
|
+
const RESULT_LOAD_EVENT_TYPE = "result_load_event";
|
|
329
|
+
const RESULT_VIEW_EVENT_TYPE = "result_view_event";
|
|
330
|
+
const ADD_TO_WISHLIST_EVENT_TYPE = "add_to_wishlist_event";
|
|
331
|
+
|
|
332
|
+
const createResultEventByType = (type, widget) => {
|
|
333
|
+
const typ = type === "load" ? RESULT_LOAD_EVENT_TYPE : RESULT_VIEW_EVENT_TYPE;
|
|
334
|
+
return createTrackingEvent({
|
|
335
|
+
widget,
|
|
336
|
+
typ,
|
|
337
|
+
});
|
|
338
|
+
};
|
|
339
|
+
const createProductEventByType = (type, widget) => {
|
|
340
|
+
const typ = type === "load"
|
|
341
|
+
? PRODUCT_LOAD_EVENT_TYPE
|
|
342
|
+
: type === "view"
|
|
343
|
+
? PRODUCT_VIEW_EVENT_TYPE
|
|
344
|
+
: PRODUCT_CLICK_EVENT_TYPE;
|
|
345
|
+
return createTrackingEvent({
|
|
346
|
+
widget,
|
|
347
|
+
typ,
|
|
348
|
+
});
|
|
349
|
+
};
|
|
350
|
+
const createAddToBasketEvent = (widget) => createTrackingEvent({
|
|
351
|
+
widget,
|
|
352
|
+
typ: ADD_TO_BASKET_EVENT_TYPE,
|
|
353
|
+
});
|
|
354
|
+
const createAddToWishlistEvent = (widget) => createTrackingEvent({
|
|
355
|
+
widget,
|
|
356
|
+
typ: ADD_TO_WISHLIST_EVENT_TYPE,
|
|
357
|
+
});
|
|
358
|
+
const createFilterEvent = (widget) => createTrackingEvent({
|
|
359
|
+
widget,
|
|
360
|
+
typ: FILTER_EVENT_TYPE,
|
|
361
|
+
});
|
|
362
|
+
const createWidgetEvent = (widget) => createTrackingEvent({
|
|
363
|
+
widget,
|
|
364
|
+
typ: WIDGET_EVENT_TYPE,
|
|
365
|
+
});
|
|
366
|
+
const createImageSearchEvent = createTrackingEvent({
|
|
367
|
+
widget: "VPS",
|
|
368
|
+
typ: SEARCH_EVENT_TYPE,
|
|
369
|
+
});
|
|
370
|
+
|
|
371
|
+
exports.CAROUSEL_CONTENT_WIDTH_CSS_VAR = CAROUSEL_CONTENT_WIDTH_CSS_VAR;
|
|
372
|
+
exports.CAROUSEL_IMAGE_WIDTH_CSS_VAR = CAROUSEL_IMAGE_WIDTH_CSS_VAR;
|
|
373
|
+
exports.CONTENT_GROUP_CSS_CLASS = CONTENT_GROUP_CSS_CLASS;
|
|
374
|
+
exports.DEFAULT_COLUMNS_NUMBER = DEFAULT_COLUMNS_NUMBER;
|
|
375
|
+
exports.FilterIconClose = FilterIconClose;
|
|
376
|
+
exports.PlusIcon = PlusIcon;
|
|
377
|
+
exports.RESULTS_CALCULATED_COLUMNS_CSS_VAR = RESULTS_CALCULATED_COLUMNS_CSS_VAR;
|
|
378
|
+
exports.RenderFilterButton = RenderFilterButton;
|
|
379
|
+
exports.SCROLL_POSITION_TOLERANCE = SCROLL_POSITION_TOLERANCE;
|
|
380
|
+
exports.SET_MODE_IMAGE_WIDTH_CSS_VAR = SET_MODE_IMAGE_WIDTH_CSS_VAR;
|
|
381
|
+
exports.announceToScreenReader = announceToScreenReader;
|
|
382
|
+
exports.createAddToBasketEvent = createAddToBasketEvent;
|
|
383
|
+
exports.createAddToWishlistEvent = createAddToWishlistEvent;
|
|
384
|
+
exports.createFilterEvent = createFilterEvent;
|
|
385
|
+
exports.createImageSearchEvent = createImageSearchEvent;
|
|
386
|
+
exports.createProductEventByType = createProductEventByType;
|
|
387
|
+
exports.createResultEventByType = createResultEventByType;
|
|
388
|
+
exports.createWidgetEvent = createWidgetEvent;
|
|
389
|
+
exports.getCustomLabels = getCustomLabels;
|
|
390
|
+
exports.getIntervalLabel = getIntervalLabel;
|
|
391
|
+
exports.getRecommendationsBody = getRecommendationsBody;
|
|
392
|
+
exports.getRemoveFilterAriaLabel = getRemoveFilterAriaLabel;
|
|
393
|
+
exports.isPriceFilter = isPriceFilter;
|
|
394
|
+
exports.isSubFilterActive = isSubFilterActive;
|
|
395
|
+
exports.syncRequestFilters = syncRequestFilters;
|
|
396
|
+
exports.triggerFilter = triggerFilter;
|
|
397
|
+
exports.triggerRemoveIntervalFilter = triggerRemoveIntervalFilter;
|
|
398
|
+
exports.triggerResetFilters = triggerResetFilters;
|
|
399
|
+
exports.v4 = v4;
|
|
@@ -1,3 +1,15 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const SEARCH_WIDGET_IMAGE_RESOLUTION_WIDTH = 320;
|
|
4
|
+
const RESULTS_WIDGET_IMAGE_RESOLUTION_WIDTH = 500;
|
|
5
|
+
const DISCOVERY_WIDGET_IMAGE_RESOLUTION_WIDTH = 500;
|
|
6
|
+
const PRODUCT_CARD_IMAGE_RESOLUTION_WIDTH = 300;
|
|
7
|
+
const PRODUCT_CARD_IMAGE_WIDTH = 300;
|
|
8
|
+
const SIDEBAR_ANIMATION_DURATION = 500;
|
|
9
|
+
const LOADING_CLASS_DELAY = 500;
|
|
10
|
+
// Scroll animation constants
|
|
11
|
+
const SCROLL_TO_DISCOVERY_DELAY = 250;
|
|
12
|
+
|
|
1
13
|
// DOM manipulation utilities
|
|
2
14
|
const findSlotElements = (el) => Array.from(el.querySelectorAll("[slot]"));
|
|
3
15
|
const getSlotNames = (slotElements) => slotElements.map((el) => el.getAttribute("slot"));
|
|
@@ -61,4 +73,16 @@ function isElementInSelector(event, selector) {
|
|
|
61
73
|
composedPath.some((el) => { var _a; return (_a = el.matches) === null || _a === void 0 ? void 0 : _a.call(el, selector); }));
|
|
62
74
|
}
|
|
63
75
|
|
|
64
|
-
|
|
76
|
+
exports.DISCOVERY_WIDGET_IMAGE_RESOLUTION_WIDTH = DISCOVERY_WIDGET_IMAGE_RESOLUTION_WIDTH;
|
|
77
|
+
exports.LOADING_CLASS_DELAY = LOADING_CLASS_DELAY;
|
|
78
|
+
exports.PRODUCT_CARD_IMAGE_RESOLUTION_WIDTH = PRODUCT_CARD_IMAGE_RESOLUTION_WIDTH;
|
|
79
|
+
exports.PRODUCT_CARD_IMAGE_WIDTH = PRODUCT_CARD_IMAGE_WIDTH;
|
|
80
|
+
exports.RESULTS_WIDGET_IMAGE_RESOLUTION_WIDTH = RESULTS_WIDGET_IMAGE_RESOLUTION_WIDTH;
|
|
81
|
+
exports.SCROLL_TO_DISCOVERY_DELAY = SCROLL_TO_DISCOVERY_DELAY;
|
|
82
|
+
exports.SEARCH_WIDGET_IMAGE_RESOLUTION_WIDTH = SEARCH_WIDGET_IMAGE_RESOLUTION_WIDTH;
|
|
83
|
+
exports.SIDEBAR_ANIMATION_DURATION = SIDEBAR_ANIMATION_DURATION;
|
|
84
|
+
exports.addEventListenersWithSignal = addEventListenersWithSignal;
|
|
85
|
+
exports.findSlotElements = findSlotElements;
|
|
86
|
+
exports.getSlotNames = getSlotNames;
|
|
87
|
+
exports.isElementInSelector = isElementInSelector;
|
|
88
|
+
exports.setElementInteractivity = setElementInteractivity;
|
|
@@ -66,10 +66,6 @@ var loadModule = (cmpMeta, hostRef, hmrVersionId) => {
|
|
|
66
66
|
}
|
|
67
67
|
switch(bundleId) {
|
|
68
68
|
|
|
69
|
-
case 'vviinn-selected-filters.cjs':
|
|
70
|
-
return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
|
|
71
|
-
/* webpackMode: "lazy" */
|
|
72
|
-
'./vviinn-selected-filters.cjs.entry.js')); }).then(processMod, consoleError);
|
|
73
69
|
case 'vviinn-detected-object_2.cjs':
|
|
74
70
|
return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
|
|
75
71
|
/* webpackMode: "lazy" */
|
|
@@ -90,10 +86,10 @@ var loadModule = (cmpMeta, hostRef, hmrVersionId) => {
|
|
|
90
86
|
return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
|
|
91
87
|
/* webpackMode: "lazy" */
|
|
92
88
|
'./vviinn-shop-the-look.cjs.entry.js')); }).then(processMod, consoleError);
|
|
93
|
-
case 'vviinn-
|
|
89
|
+
case 'vviinn-camera_12.cjs':
|
|
94
90
|
return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
|
|
95
91
|
/* webpackMode: "lazy" */
|
|
96
|
-
'./vviinn-
|
|
92
|
+
'./vviinn-camera_12.cjs.entry.js')); }).then(processMod, consoleError);
|
|
97
93
|
case 'vviinn-carousel_10.cjs':
|
|
98
94
|
return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
|
|
99
95
|
/* webpackMode: "lazy" */
|