vviinn-widgets 2.38.0 → 2.40.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. package/dist/cjs/{index-722ca75d.js → index-294899ca.js} +0 -3
  2. package/dist/cjs/{package-b8e981bc.js → package-4cb2606f.js} +1 -1
  3. package/dist/cjs/search-filters_15.cjs.entry.js +4 -4
  4. package/dist/cjs/vviinn-button.cjs.entry.js +1 -1
  5. package/dist/cjs/vviinn-carousel_4.cjs.entry.js +2 -2
  6. package/dist/cjs/vviinn-recommendations-sidebar.cjs.entry.js +1 -1
  7. package/dist/cjs/vviinn-vpr-button.cjs.entry.js +2 -2
  8. package/dist/cjs/vviinn-vps-button.cjs.entry.js +2 -2
  9. package/dist/cjs/vviinn-vps-widget.cjs.entry.js +17 -25
  10. package/dist/collection/components/vviinn-image-view/vviinn-detected-object/vviinn-detected-object.css +36 -31
  11. package/dist/collection/components/vviinn-modal/vviinn-modal.css +1 -2
  12. package/dist/collection/components/vviinn-slider/vviinn-slider.css +6 -0
  13. package/dist/collection/components/vviinn-vps-widget/vviinn-vps-widget.js +16 -24
  14. package/dist/esm/{index-f7515645.js → index-dac5d1c8.js} +1 -3
  15. package/dist/esm/{package-c32fa64c.js → package-c74df7b7.js} +1 -1
  16. package/dist/esm/search-filters_15.entry.js +4 -4
  17. package/dist/esm/vviinn-button.entry.js +1 -1
  18. package/dist/esm/vviinn-carousel_4.entry.js +2 -2
  19. package/dist/esm/vviinn-recommendations-sidebar.entry.js +1 -1
  20. package/dist/esm/vviinn-vpr-button.entry.js +2 -2
  21. package/dist/esm/vviinn-vps-button.entry.js +2 -2
  22. package/dist/esm/vviinn-vps-widget.entry.js +17 -25
  23. package/dist/types/components/vviinn-vps-widget/vviinn-vps-widget.d.ts +3 -2
  24. package/dist/vviinn-widgets/{p-f7398450.entry.js → p-06882ce4.entry.js} +1 -1
  25. package/dist/vviinn-widgets/p-0b8ca92d.entry.js +1 -0
  26. package/dist/vviinn-widgets/{p-718eb8bb.entry.js → p-0c455445.entry.js} +1 -1
  27. package/dist/vviinn-widgets/{p-34dc6ac2.js → p-74f46a18.js} +1 -1
  28. package/{www/build/p-b58fdaba.entry.js → dist/vviinn-widgets/p-d764970d.entry.js} +1 -1
  29. package/dist/vviinn-widgets/{p-c15119a2.entry.js → p-ec2dc286.entry.js} +2 -2
  30. package/dist/vviinn-widgets/{p-2c21ffb5.entry.js → p-f07349a5.entry.js} +1 -1
  31. package/dist/vviinn-widgets/p-f4e9f4cb.js +1 -0
  32. package/dist/vviinn-widgets/{p-96f10e9a.entry.js → p-fdf9df6f.entry.js} +1 -1
  33. package/dist/vviinn-widgets/vviinn-widgets.esm.js +1 -1
  34. package/package.json +1 -1
  35. package/www/build/{p-f7398450.entry.js → p-06882ce4.entry.js} +1 -1
  36. package/www/build/p-0b8ca92d.entry.js +1 -0
  37. package/www/build/{p-718eb8bb.entry.js → p-0c455445.entry.js} +1 -1
  38. package/www/build/{p-34dc6ac2.js → p-74f46a18.js} +1 -1
  39. package/{dist/vviinn-widgets/p-b58fdaba.entry.js → www/build/p-d764970d.entry.js} +1 -1
  40. package/www/build/{p-c15119a2.entry.js → p-ec2dc286.entry.js} +2 -2
  41. package/www/build/{p-2c21ffb5.entry.js → p-f07349a5.entry.js} +1 -1
  42. package/www/build/p-f4e9f4cb.js +1 -0
  43. package/www/build/{p-96f10e9a.entry.js → p-fdf9df6f.entry.js} +1 -1
  44. package/www/build/vviinn-widgets.esm.js +1 -1
  45. package/dist/vviinn-widgets/p-27877681.js +0 -1
  46. package/dist/vviinn-widgets/p-4b906ba4.entry.js +0 -1
  47. package/www/build/p-27877681.js +0 -1
  48. package/www/build/p-4b906ba4.entry.js +0 -1
@@ -19,8 +19,6 @@ const UploadActionIcon = () => (index.h("svg", { xmlns: "http://www.w3.org/2000/
19
19
  const UpdateIcon = () => (index.h("svg", { xmlns: "http://www.w3.org/2000/svg", width: "24", height: "24", viewBox: "0 0 24 24", fill: "none" },
20
20
  index.h("path", { "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M23.5998 4.57C20.3898 4.19 19.8798 3.68 19.4198 0.37C19.3798 0.15 19.2198 0 19.0098 0C18.7998 0 18.6298 0.15 18.5898 0.37C18.1198 3.66 17.6298 4.13 14.4098 4.57C14.1698 4.61 14.0098 4.77 14.0098 5C14.0098 5.23 14.1698 5.39 14.4098 5.42C17.6298 5.81 18.1398 6.31 18.5898 9.62C18.6298 9.84 18.7998 10 19.0098 10C19.2198 10 19.3898 9.84 19.4198 9.62C19.8898 6.31 20.3898 5.81 23.5998 5.42C23.8398 5.38 23.9998 5.22 23.9998 5C23.9998 4.78 23.8298 4.6 23.5998 4.57Z", fill: "currentColor" }),
21
21
  index.h("path", { "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M19.93 13C19.43 13 19.01 13.37 18.95 13.86C18.52 17.36 15.51 20.06 11.89 20C8.24 19.94 5.15 16.92 5.01 13.27C4.92 10.79 6.13 8.58 8.01 7.27V11C8.01 11.55 8.46 12 9.01 12C9.56 12 10.01 11.55 10.01 11V5C10.01 4.45 9.56 4 9.01 4H3C2.45 4 2 4.45 2 5C2 5.55 2.45 6 3 6H6.35C4.24 7.71 2.91 10.35 3 13.3C3.15 17.98 7.06 21.87 11.74 22C16.45 22.13 20.37 18.65 20.93 14.13C21 13.53 20.53 13.01 19.93 13.01V13Z", fill: "currentColor" })));
22
- const GalleryActionIcon = () => (index.h("svg", { xmlns: "http://www.w3.org/2000/svg", width: "25", height: "24", viewBox: "0 0 25 24", fill: "none" },
23
- index.h("path", { d: "M5.5 21H8.175V16.325H3.5V19C3.5 19.55 3.69583 20.0208 4.0875 20.4125C4.47917 20.8042 4.95 21 5.5 21ZM10.175 21H14.825V16.325H10.175V21ZM16.825 21H19.5C20.05 21 20.5208 20.8042 20.9125 20.4125C21.3042 20.0208 21.5 19.55 21.5 19V16.325H16.825V21ZM3.5 14.325H8.175V9.675H3.5V14.325ZM10.175 14.325H14.825V9.675H10.175V14.325ZM16.825 14.325H21.5V9.675H16.825V14.325ZM3.5 7.675H8.175V3H5.5C4.95 3 4.47917 3.19583 4.0875 3.5875C3.69583 3.97917 3.5 4.45 3.5 5V7.675ZM10.175 7.675H14.825V3H10.175V7.675ZM16.825 7.675H21.5V5C21.5 4.45 21.3042 3.97917 20.9125 3.5875C20.5208 3.19583 20.05 3 19.5 3H16.825V7.675Z", fill: "currentColor" })));
24
22
  const CameraActionIcon = () => (index.h("svg", { xmlns: "http://www.w3.org/2000/svg", width: "24", height: "24", viewBox: "0 0 24 24", fill: "none" },
25
23
  index.h("path", { d: "M12 17.5C13.25 17.5 14.3125 17.0625 15.1875 16.1875C16.0625 15.3125 16.5 14.25 16.5 13C16.5 11.75 16.0625 10.6875 15.1875 9.8125C14.3125 8.9375 13.25 8.5 12 8.5C10.75 8.5 9.6875 8.9375 8.8125 9.8125C7.9375 10.6875 7.5 11.75 7.5 13C7.5 14.25 7.9375 15.3125 8.8125 16.1875C9.6875 17.0625 10.75 17.5 12 17.5ZM12 15.5C11.3 15.5 10.7083 15.2583 10.225 14.775C9.74167 14.2917 9.5 13.7 9.5 13C9.5 12.3 9.74167 11.7083 10.225 11.225C10.7083 10.7417 11.3 10.5 12 10.5C12.7 10.5 13.2917 10.7417 13.775 11.225C14.2583 11.7083 14.5 12.3 14.5 13C14.5 13.7 14.2583 14.2917 13.775 14.775C13.2917 15.2583 12.7 15.5 12 15.5ZM4 21C3.45 21 2.97917 20.8042 2.5875 20.4125C2.19583 20.0208 2 19.55 2 19V7C2 6.45 2.19583 5.97917 2.5875 5.5875C2.97917 5.19583 3.45 5 4 5H7.15L8.4 3.65C8.58333 3.45 8.80417 3.29167 9.0625 3.175C9.32083 3.05833 9.59167 3 9.875 3H14.125C14.4083 3 14.6792 3.05833 14.9375 3.175C15.1958 3.29167 15.4167 3.45 15.6 3.65L16.85 5H20C20.55 5 21.0208 5.19583 21.4125 5.5875C21.8042 5.97917 22 6.45 22 7V19C22 19.55 21.8042 20.0208 21.4125 20.4125C21.0208 20.8042 20.55 21 20 21H4Z", fill: "currentColor" })));
26
24
  const RoundCameraIcon = () => (index.h("svg", { xmlns: "http://www.w3.org/2000/svg", width: "80", height: "80", viewBox: "0 0 80 80", fill: "none" },
@@ -36,7 +34,6 @@ exports.CameraActionIcon = CameraActionIcon;
36
34
  exports.CameraIcon = CameraIcon;
37
35
  exports.ChevronIcon = ChevronIcon;
38
36
  exports.CrossIcon = CrossIcon;
39
- exports.GalleryActionIcon = GalleryActionIcon;
40
37
  exports.RoundCameraIcon = RoundCameraIcon;
41
38
  exports.SecondaryActionIcon = SecondaryActionIcon;
42
39
  exports.UpdateIcon = UpdateIcon;
@@ -1,5 +1,5 @@
1
1
  'use strict';
2
2
 
3
- const version = "2.38.0";
3
+ const version = "2.40.0";
4
4
 
5
5
  exports.version = version;
@@ -5,7 +5,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  const index = require('./index-5619b5ec.js');
6
6
  const imageSearch_store = require('./imageSearch.store-dc4e98b3.js');
7
7
  const i18next = require('./i18next-74ff3413.js');
8
- const index$1 = require('./index-722ca75d.js');
8
+ const index$1 = require('./index-294899ca.js');
9
9
  const customizedSlots = require('./customized-slots-e6b1235d.js');
10
10
 
11
11
  // -------------------------------------------------------------------------------------
@@ -140,7 +140,7 @@ const SearchFilters = class {
140
140
  };
141
141
  SearchFilters.style = searchFiltersCss;
142
142
 
143
- const vviinnDetectedObjectCss = ":host{--color-primary-system:#0F62FE;--color-primary-hover-system:#014CDA;--color-icons-system:#2F8EDF;--spacer:8px}:host{--size:40px;--x-position:0;--y-position:0;background:rgba(0, 0, 0, 0.16);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:50%;cursor:pointer;display:block;position:absolute;transition:opacity 0.25s;width:var(--size);height:var(--size);z-index:2;transform:translate(calc(var(--x-position) - (var(--size) * 0.5)), calc(var(--y-position) - (var(--size) * 0.5)));transition:background 0.1 ease-in-out}:host(:hover){background:rgba(0, 0, 0, 0.32)}:host(.active){background:rgba(0, 0, 0, 0.4);width:calc(var(--size) * 0.80);height:calc(var(--size) * 0.80);transform:translate(calc(var(--x-position) - (var(--size) * 0.4)), calc(var(--y-position) - (var(--size) * 0.4)))}:host::after{--size:32px;border-radius:50%;content:\"\";cursor:pointer;display:block;height:calc(var(--size) * 0.5);transform:translate(calc(-25% + var(--size) * 0.5), calc(-25% + var(--size) * 0.5));width:calc(var(--size) * 0.5);background:white}:host(.active)::after{height:calc(var(--size) * 0.375);width:calc(var(--size) * 0.375);transform:translate(calc(-25% + var(--size) * 0.4), calc(-25% + var(--size) * 0.4))}";
143
+ const vviinnDetectedObjectCss = ":host{--color-primary-system:#0F62FE;--color-primary-hover-system:#014CDA;--color-icons-system:#2F8EDF;--spacer:8px}:host{display:block;position:absolute;left:calc(var(--x-position));top:calc(var(--y-position))}:host::before,:host::after{content:\"\";cursor:pointer;position:absolute;height:var(--size);width:var(--size);left:calc(-1 * var(--size) / 2);top:calc(-1 * var(--size) / 2)}:host::before{--size:36px;border-radius:50%;z-index:0;background:rgba(0, 0, 0, 0.16);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:transform 0.07s ease-in-out}:host::after{--size:13px;border-radius:50%;z-index:1;background:white;box-shadow:0px 2px 2px 0px rgba(0, 0, 0, 0.15);transition:transform 0.07s ease-in-out}:host(.active)::before{transform:scale(0.88);background:rgba(0, 0, 0, 0.4)}:host(.active)::after{transform:scale(0.67)}@media (min-width: 768px){:host(:not(.active):hover)::before{transform:scale(1.08);background:rgba(0, 0, 0, 0.32)}}";
144
144
 
145
145
  const VviinnDetectedObject = class {
146
146
  constructor(hostRef) {
@@ -3685,7 +3685,7 @@ const VviinnImageView = class {
3685
3685
  };
3686
3686
  VviinnImageView.style = vviinnImageViewCss;
3687
3687
 
3688
- const vviinnModalCss = ":host{background:white;border-radius:24px;box-sizing:border-box;display:grid;grid-template-rows:min-content auto;max-width:960px;overflow:auto;position:relative}.head{position:absolute;width:100%;box-sizing:border-box;display:flex;align-items:center;z-index:1;padding:16px}.title{display:flex;align-items:center;transform:translateX(-6px);font-weight:600;font-size:18px;line-height:24px;margin:0 auto}.title-image{border-radius:50%;border:1px solid rgb(244, 244, 244);-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;margin-right:8px}button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;cursor:pointer;display:grid;padding:6px;color:#8d8d8d}button:hover{color:#000}@media (max-width: 768px){:host{animation-name:fade-in;animation-duration:0.5s;animation-fill-mode:forwards;border-radius:24px 24px 0 0}:host(.closed){animation-name:fade-out;animation-fill-mode:none}.head{position:sticky;z-index:1}:host(:not(.first-screen)) .head{background:#ffffff}.body{overflow-y:auto}:host(.first-screen) .body{transform:translateY(-64px)}:host(:not(.first-screen)) .body{padding-bottom:64px}.title{color:#161616;display:flex;align-items:center;transform:translateX(-6px);font-weight:500;font-size:16px;line-height:24px;margin:0 auto}.title-image{border-radius:50%;border:1px solid rgb(244, 244, 244);-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;margin-right:8px}button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;cursor:pointer;display:grid;color:#6F6F6F;padding:0}button:hover{color:#000}:host(.first-screen) button,:host(.first-screen) button:hover{color:white}}@keyframes fade-in{from{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes fade-out{from{transform:translateY(0)}to{transform:translateY(100%)}}";
3688
+ const vviinnModalCss = ":host{background:white;border-radius:24px;box-sizing:border-box;display:grid;grid-template-rows:min-content auto;max-width:960px;overflow:auto;position:relative}.head{position:absolute;width:100%;box-sizing:border-box;display:flex;align-items:center;z-index:1;padding:16px}.title{display:flex;align-items:center;transform:translateX(-6px);font-weight:600;font-size:18px;line-height:24px;margin:0 auto}.title-image{border-radius:50%;border:1px solid rgb(244, 244, 244);-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;margin-right:8px}button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;cursor:pointer;display:grid;padding:6px;color:#8d8d8d}button:hover{color:#000}@media (max-width: 768px){:host{animation-name:fade-in;animation-duration:0.5s;animation-fill-mode:forwards;border-radius:24px 24px 0 0}:host(.closed){animation-name:fade-out;animation-fill-mode:none}.head{position:sticky;z-index:1}:host(:not(.first-screen)) .head{background:#ffffff}.body{overflow-y:auto}:host(.first-screen) .body{transform:translateY(-64px)}:host(:not(.first-screen)) .body{padding-bottom:64px}.title{color:#161616;display:flex;align-items:center;font-weight:500;font-size:16px;line-height:24px;margin:0 auto}.title-image{border-radius:50%;border:1px solid rgb(244, 244, 244);-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;margin-right:8px}button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;cursor:pointer;display:grid;color:#6f6f6f;padding:0}button:hover{color:#000}:host(.first-screen) button,:host(.first-screen) button:hover{color:white}}@keyframes fade-in{from{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes fade-out{from{transform:translateY(0)}to{transform:translateY(100%)}}";
3689
3689
 
3690
3690
  const VviinnModal = class {
3691
3691
  constructor(hostRef) {
@@ -3820,7 +3820,7 @@ const getStyleMap = (data) => {
3820
3820
  const Arrow = ({ kind, tabindex, disabled, onClick, onKeyDown, }) => (index.h("div", { class: getStyleMap({ kind, disabled }), onClick: onClick, tabindex: tabindex, onKeyDown: onKeyDown },
3821
3821
  index.h(index$1.ArrowIcon, null)));
3822
3822
 
3823
- const vviinnSliderCss = ":host{--color-primary-system:#0F62FE;--color-primary-hover-system:#014CDA;--color-icons-system:#2F8EDF;--spacer:8px}:host{--num-items:0;--position:0;display:grid;grid-gap:20px;justify-items:center;position:relative}.items-wrapper{overflow:hidden;width:100%}.items{box-sizing:border-box;display:grid;grid-auto-flow:column;grid-template-columns:repeat(var(--num-items), 100%);transform:translateX(calc(-100% * var(--position)));transition:transform 0.33s ease-in-out}.controls{display:grid;grid-gap:16px;grid-template-columns:repeat(var(--num-items), min-content)}.bullet{background:#e0e0e0;border-radius:50%;box-sizing:border-box;cursor:pointer;height:8px;width:8px;transition:background 0.1s ease-in-out}.bullet:hover{background:#c6c6c6}.bullet.active{background:var(--color-primary, var(--color-primary-system))}.bullet:active{background:transparent;border:2px solid var(--color-primary, var(--color-primary-system))}.arrow-wrapper{align-items:center;cursor:pointer;background:white;border:2px solid white;bottom:0;box-sizing:border-box;display:grid;height:calc(var(--spacer) * 6);justify-items:center;margin:auto;position:absolute;top:0;transform:translate3d(0, -50%, 0);transition:border 0.25ms ease-in-out;width:calc(var(--spacer) * 4)}.arrow-wrapper:active{border-color:var(--color-primary, var(--color-primary-system));opacity:0.75}.arrow-wrapper:focus{border-color:var(--color-primary, var(--color-primary-system));opacity:0.5;outline:none}.prev{left:0}.next{right:0}.next>svg{transform:rotate3d(0, 1, 0, 180deg)}.arrow-wrapper>svg{transition:fill 0.25ms ease-in-out;fill:#a8a8a8}.arrow-wrapper:hover>svg{fill:#8d8d8d}";
3823
+ const vviinnSliderCss = ":host{--color-primary-system:#0F62FE;--color-primary-hover-system:#014CDA;--color-icons-system:#2F8EDF;--spacer:8px}:host{--num-items:0;--position:0;display:grid;grid-gap:20px;justify-items:center;position:relative}.items-wrapper{overflow:hidden;width:100%}.items{box-sizing:border-box;display:grid;grid-auto-flow:column;grid-template-columns:repeat(var(--num-items), 100%);transform:translateX(calc(-100% * var(--position)));transition:transform 0.33s ease-in-out}.controls{display:grid;grid-gap:16px;grid-template-columns:repeat(var(--num-items), min-content)}.bullet{background:#e0e0e0;border-radius:50%;box-sizing:border-box;cursor:pointer;height:8px;width:8px;transition:background 0.1s ease-in-out}.bullet:hover{background:#c6c6c6}.bullet.active{background:var(--color-primary, var(--color-primary-system))}.bullet:active{background:transparent;border:2px solid var(--color-primary, var(--color-primary-system))}.arrow-wrapper{align-items:center;cursor:pointer;background:white;border:2px solid white;bottom:0;box-sizing:border-box;display:grid;height:calc(var(--spacer) * 6);justify-items:center;margin:auto;position:absolute;top:0;transform:translate3d(0, -50%, 0);transition:border 0.25ms ease-in-out;width:calc(var(--spacer) * 4)}.arrow-wrapper:active{border-color:var(--color-primary, var(--color-primary-system));opacity:0.75}.arrow-wrapper:focus{border-color:var(--color-primary, var(--color-primary-system));opacity:0.5;outline:none}.prev{left:0}.next{right:0}.next>svg{transform:rotate3d(0, 1, 0, 180deg)}.arrow-wrapper>svg{transition:fill 0.25ms ease-in-out;fill:#a8a8a8}.arrow-wrapper:hover>svg{fill:#8d8d8d}@media (max-width: 768px){:host{transform:translateY(8px)}}";
3824
3824
 
3825
3825
  const VviinnSlider = class {
3826
3826
  constructor(hostRef) {
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-5619b5ec.js');
6
- const index$1 = require('./index-722ca75d.js');
6
+ const index$1 = require('./index-294899ca.js');
7
7
 
8
8
  const vviinnButtonCss = ":host{display:block}.open-button{align-items:center;background:rgba(255, 255, 255, 0.8);border-radius:50%;border:none;box-shadow:0px 2px 6px rgba(0, 0, 0, 0.15);box-sizing:border-box;cursor:pointer;display:grid;height:40px;justify-items:center;padding:0;width:40px;transition:all 0.25s ease-in-out}.raw-open-button{background:none;border:none;cursor:pointer}.open-button:hover{box-shadow:0px 2px 6px rgba(0, 0, 0, 0.25)}.open-button:focus{border:2px solid rgba(15, 98, 254, 0.5);outline:none}.open-button:active{background:#f4f4f4;outline:none}";
9
9
 
@@ -4,10 +4,10 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-5619b5ec.js');
6
6
  const imageSearch_store = require('./imageSearch.store-dc4e98b3.js');
7
- const index$1 = require('./index-722ca75d.js');
7
+ const index$1 = require('./index-294899ca.js');
8
8
  const i18next = require('./i18next-74ff3413.js');
9
9
  const customizedSlots = require('./customized-slots-e6b1235d.js');
10
- const _package = require('./package-b8e981bc.js');
10
+ const _package = require('./package-4cb2606f.js');
11
11
  const index$2 = require('./index-7ff2ab5f.js');
12
12
 
13
13
  const vviinnCarouselCss = ":host{--vviinn-progressbar-width:0;--vviinn-carousel-item-width:150px;--vviinn-carousel-columns-internal:var(--vviinn-carousel-columns, 4);--vviinn-carousel-image-width-system:140px}.body{display:flex;position:relative;width:var(--vviinn-carousel-content-width);flex-direction:column}.content-wrapper *{box-sizing:border-box}.content-wrapper{overflow-y:hidden;overflow-x:auto;flex-grow:1}.bullets{margin-top:16px;display:flex;flex-direction:row;grid-gap:24px;justify-content:center}.bullet{width:10px;height:10px;background:#e0e0e0;border-radius:50%;cursor:pointer}.bullet.active{background:#161616}.content:not(.show-scrollbar),.content.grid{scrollbar-color:#fff0 #fff0}.content:not(.show-scrollbar)::-webkit-scrollbar,.content.grid::-webkit-scrollbar{opacity:0}.content{display:flex;flex-direction:row;grid-gap:8px;overflow-y:hidden;overflow-x:auto;flex-grow:1;padding-bottom:16px}.content.left>*{scroll-snap-align:start}.content.right>*{scroll-snap-align:end}:host(.continuity) .prev,:host(.continuity) .next{border-radius:2px}:host(.grid) .prev,:host(.grid) .next{border-radius:50%}.prev,.next{align-items:center;background-color:white;border:none;box-shadow:0px 2px 6px rgba(0, 0, 0, 0.15);fill:#525252;cursor:pointer;display:grid;height:40px;justify-items:center;position:absolute;top:calc(50% - 20px);width:40px;z-index:1;padding:0;margin:0}.next:disabled,.prev:disabled{display:none}.prev svg{transform:rotate(180deg);margin-left:-5px}.prev{left:0}.next{right:0}.items-group{display:grid;grid-gap:16px;grid-template-columns:repeat(var(--vviinn-carousel-columns-internal), 1fr);min-width:100%}vviinn-product-card::part(price-container){text-align:center}:host(.classic) vviinn-product-card::part(title),:host(.classic) vviinn-product-card::part(brand),:host(.classic) vviinn-product-card::part(type){text-align:center}@media (max-width: 480px){:host(.modern) button{display:none}.items-group{grid-template-columns:repeat(2, 1fr)}}";
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-5619b5ec.js');
6
- const index$1 = require('./index-722ca75d.js');
6
+ const index$1 = require('./index-294899ca.js');
7
7
 
8
8
  const recommendationsSidebarCss = ":host{--vviinn-carousel-columns:4;box-sizing:border-box;display:block;display:flex;height:100vh;left:0;position:fixed;top:0;transition:background 0.1s ease-in-out;width:100vw}:host(.open){background:rgba(0, 0, 0, 0.2)}:host(.bottom){flex-direction:column;justify-content:end}:host(.right){flex-direction:row;justify-content:flex-end}:host [slot]{visibility:hidden;position:absolute}header{position:relative;text-align:center;padding:32px}header.contains-source-img{display:grid;justify-items:center;grid-gap:12px}img.source-image{width:64px;height:64px;border-radius:50%;box-shadow:0px 2px 4px rgba(0, 0, 0, 0.15);padding:8px}:host(.right) header{box-shadow:0px 2px 6px rgba(0, 0, 0, 0.1)}main{padding:0 24px;min-height:100px}:host(.right) main{overflow:auto}.sidebar{background:white;box-sizing:border-box;display:flex;flex-direction:column;max-height:100vh;overflow-y:auto}:host(.bottom.idle) .sidebar,:host(.bottom.closed) .sidebar{transform:translateY(100%)}:host(.bottom.closed) .sidebar{animation-name:slideOutFromBottom;animation-duration:0.5s;animation-fill-mode:forwards}:host(.bottom.open) .sidebar{animation-name:slideInFromBottom;animation-duration:0.5s;animation-fill-mode:forwards}:host(.right.idle) .sidebar{transform:translateX(100%)}:host(.right.closed) .sidebar{animation-name:slideOutFromRight;animation-duration:0.5s;animation-fill-mode:forwards}:host(.right.open) .sidebar{animation-name:slideInFromRight;animation-duration:0.5s;animation-fill-mode:forwards}:host(.right) .sidebar{max-width:480px}:host(.right) vviinn-vpr-widget::part(recommendations-grid){display:grid;grid-template-columns:repeat(2, 1fr);grid-gap:24px}:host(.right) vviinn-vpr-widget{overflow:auto}:host(.right) vviinn-vpr-widget::part(image){border:none}.title{font-style:normal;font-weight:500;font-size:28px;line-height:40px;text-align:center;color:#000000}vviinn-vpr-widget::part(title),vviinn-vpr-widget::part(brand),vviinn-vpr-widget::part(type){text-align:left}vviinn-vpr-widget::part(price-container){align-self:start}.close-sidebar{background:transparent;border:none;cursor:pointer;margin:0;padding:0;position:absolute;right:24px;top:24px}@keyframes slideInFromBottom{from{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes slideOutFromBottom{from{transform:translateY(0)}to{transform:translateY(100%)}}@keyframes slideInFromRight{from{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes slideOutFromRight{from{transform:translateX(0)}to{transform:translateX(100%)}}@media (max-width: 768px){:host{--vviinn-carousel-columns:2}}";
9
9
 
@@ -3,8 +3,8 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-5619b5ec.js');
6
- const _package = require('./package-b8e981bc.js');
7
- const index$1 = require('./index-722ca75d.js');
6
+ const _package = require('./package-4cb2606f.js');
7
+ const index$1 = require('./index-294899ca.js');
8
8
 
9
9
  const vviinnVprButtonCss = ":host{display:block}";
10
10
 
@@ -3,8 +3,8 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-5619b5ec.js');
6
- const _package = require('./package-b8e981bc.js');
7
- const index$1 = require('./index-722ca75d.js');
6
+ const _package = require('./package-4cb2606f.js');
7
+ const index$1 = require('./index-294899ca.js');
8
8
  const customizedSlots = require('./customized-slots-e6b1235d.js');
9
9
  const constants = require('./constants-7684cbfc.js');
10
10
 
@@ -5,10 +5,10 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  const index = require('./index-5619b5ec.js');
6
6
  const imageSearch_store = require('./imageSearch.store-dc4e98b3.js');
7
7
  const i18next = require('./i18next-74ff3413.js');
8
- const _package = require('./package-b8e981bc.js');
8
+ const _package = require('./package-4cb2606f.js');
9
9
  const customizedSlots = require('./customized-slots-e6b1235d.js');
10
10
  const index$1 = require('./index-7ff2ab5f.js');
11
- const index$2 = require('./index-722ca75d.js');
11
+ const index$2 = require('./index-294899ca.js');
12
12
  const constants = require('./constants-7684cbfc.js');
13
13
 
14
14
  const resources = {
@@ -114,7 +114,7 @@ const VviinnVpsWidget = class {
114
114
  this.resultLoaded = false;
115
115
  this.resultViewed = false;
116
116
  this.cameraAvailable = false;
117
- this.isTabletOrMobile = false;
117
+ this.isDesktop = false;
118
118
  this.handleVviinnImageUpload = (uploadSource) => {
119
119
  this.trackInitialSearch();
120
120
  this.uploadSource = uploadSource;
@@ -315,7 +315,7 @@ const VviinnVpsWidget = class {
315
315
  this.trackingApi.trackEvent(searchEvent).then(this.setTrackingDeactivated);
316
316
  }
317
317
  connectedCallback() {
318
- this.isTabletOrMobile = checkDeviceType() !== "desktop";
318
+ this.isDesktop = checkDeviceType() === "desktop";
319
319
  imageSearch_store.state.apiPath = this.apiPath;
320
320
  imageSearch_store.state.currencySign = this.currencySign;
321
321
  imageSearch_store.state.locale = this.locale;
@@ -381,6 +381,18 @@ const VviinnVpsWidget = class {
381
381
  modalBody.scrollTop = 0;
382
382
  this.stopStreamTracks();
383
383
  }
384
+ renderButtons() {
385
+ const buttons = [
386
+ this.cameraAvailable && (index.h("button", { class: "action-button", part: "start-camera_button", onClick: () => {
387
+ this.handleStartCameraClick();
388
+ this.uploadSource = "startCamera";
389
+ } }, imageSearch_store.imageSearchState.loading && this.uploadSource === "startCamera" ? (index.h("vviinn-preloader", null)) : (index.h("span", { class: "action-button-content" }, index.h(index$2.CameraActionIcon, null), this.cameraEnabled ? (index.h("slot", { name: "vviinn-camera-button-text-stop" }, index.h("span", null, i18next.instance.t("cameraButtonTextStop")))) : (index.h("slot", { name: "vviinn-camera-button-text-start" }, index.h("span", null, i18next.instance.t("cameraButtonTextStart")))))))),
390
+ index.h("vviinn-image-selector", { class: "action-button", onClick: () => (this.uploadSource = "uploadPhoto"), onVviinnImageUploadFinished: this.handleVviinnImageUploadFinished, onVviinnImageUpload: () => {
391
+ this.handleVviinnImageUpload("uploadPhoto");
392
+ }, onVviinnNoResult: ({ detail }) => this.handleVviinnNoResult(detail), resetVpsButton: this.resetVpsButton, basicEventData: this.getBasicEventData(), part: "upload-photo_button", startUpload: this.buttonPressed && this.showingInButton && this.mode === "upload", loading: imageSearch_store.imageSearchState.loading && this.uploadSource === "uploadPhoto" }, index.h("span", { slot: "upload-button-text", class: "action-button-content" }, index.h(index$2.UploadActionIcon, null), index.h("slot", { name: "vviinn-image-upload-button-text" }, index.h("span", null, i18next.instance.t("imageUploadButtonText"))))),
393
+ ];
394
+ return this.isDesktop ? buttons.reverse() : buttons;
395
+ }
384
396
  renderResults() {
385
397
  if (imageSearch_store.imageSearchState.results.length === 0)
386
398
  return null;
@@ -444,27 +456,7 @@ const VviinnVpsWidget = class {
444
456
  }, id: "start-page_block" }, index.h("div", { class: "start-page_main-content" }, index.h("div", { class: {
445
457
  "start-page_errors-block": true,
446
458
  hidden: !this.wrongImageFormat && !imageSearch_store.imageSearchState.serverError,
447
- } }, index.h("vviinn-wrong-format", { class: { hidden: !this.wrongImageFormat }, handler: () => this.resetState() }), index.h("vviinn-server-error", { class: { hidden: !imageSearch_store.imageSearchState.serverError }, handler: () => this.resetState() })), !this.haveErrors() && index.h("vviinn-teaser", null), !this.haveErrors() && (index.h("div", { class: "buttons-group" }, this.cameraAvailable &&
448
- (this.isTabletOrMobile ? (index.h("vviinn-image-selector", { class: "action-button", part: "start-camera_button", accept: "image", capture: "environment", onVviinnNoResult: ({ detail }) => this.handleVviinnNoResult(detail), onVviinnImageUpload: () => {
449
- this.handleVviinnImageUpload("startCamera");
450
- }, onVviinnImageUploadFinished: this.handleVviinnImageUploadFinished, resetVpsButton: this.resetVpsButton, basicEventData: this.getBasicEventData(), startUpload: this.buttonPressed &&
451
- this.showingInButton &&
452
- this.mode === "upload", loading: imageSearch_store.imageSearchState.loading &&
453
- this.uploadSource === "startCamera" }, index.h("span", { slot: "upload-button-text", class: "action-button-content" }, index.h(index$2.CameraActionIcon, null), index.h("slot", { name: "vviinn-camera-button-text-start" }, index.h("span", null, i18next.instance.t("cameraButtonTextStart")))))) : (index.h("button", { class: "action-button", part: "start-camera_button", onClick: () => {
454
- this.handleStartCameraClick();
455
- this.uploadSource = "startCamera";
456
- } }, imageSearch_store.imageSearchState.loading &&
457
- this.uploadSource === "startCamera" ? (index.h("vviinn-preloader", null)) : (index.h("span", { class: "action-button-content" }, index.h(index$2.CameraActionIcon, null), this.cameraEnabled ? (index.h("slot", { name: "vviinn-camera-button-text-stop" }, index.h("span", null, i18next.instance.t("cameraButtonTextStop")))) : (index.h("slot", { name: "vviinn-camera-button-text-start" }, index.h("span", null, i18next.instance.t("cameraButtonTextStart"))))))))), this.isTabletOrMobile && (index.h("vviinn-image-selector", { class: "action-button", accept: "application-octet-stream", onClick: () => (this.uploadSource = "showFiles"), onVviinnImageUpload: () => {
458
- this.handleVviinnImageUpload("showFiles");
459
- }, onVviinnImageUploadFinished: this.handleVviinnImageUploadFinished, onVviinnNoResult: ({ detail }) => this.handleVviinnNoResult(detail), resetVpsButton: this.resetVpsButton, basicEventData: this.getBasicEventData(), part: "show-files_button", startUpload: this.buttonPressed &&
460
- this.showingInButton &&
461
- this.mode === "upload", loading: imageSearch_store.imageSearchState.loading &&
462
- this.uploadSource === "showFiles" }, index.h("span", { slot: "upload-button-text", class: "action-button-content" }, index.h(index$2.GalleryActionIcon, null), index.h("slot", { name: "vviinn-show-files-button-text" }, index.h("span", null, i18next.instance.t("showFilesButtonText")))))), index.h("vviinn-image-selector", { class: "action-button", onClick: () => (this.uploadSource = "uploadPhoto"), onVviinnImageUploadFinished: this.handleVviinnImageUploadFinished, onVviinnImageUpload: () => {
463
- this.handleVviinnImageUpload("uploadPhoto");
464
- }, onVviinnNoResult: ({ detail }) => this.handleVviinnNoResult(detail), resetVpsButton: this.resetVpsButton, basicEventData: this.getBasicEventData(), part: "upload-photo_button", startUpload: this.buttonPressed &&
465
- this.showingInButton &&
466
- this.mode === "upload", loading: imageSearch_store.imageSearchState.loading &&
467
- this.uploadSource === "uploadPhoto" }, index.h("span", { slot: "upload-button-text", class: "action-button-content" }, index.h(index$2.UploadActionIcon, null), index.h("slot", { name: "vviinn-image-upload-button-text" }, index.h("span", null, i18next.instance.t("imageUploadButtonText")))))))), index.h("vviinn-privacy-badge", { privacyBadgeText: i18next.instance.t("privacyBadgeText"), class: { invisible: this.haveErrors() } }))), index.h("vviinn-slide", { class: {
459
+ } }, index.h("vviinn-wrong-format", { class: { hidden: !this.wrongImageFormat }, handler: () => this.resetState() }), index.h("vviinn-server-error", { class: { hidden: !imageSearch_store.imageSearchState.serverError }, handler: () => this.resetState() })), !this.haveErrors() && index.h("vviinn-teaser", null), !this.haveErrors() && (index.h("div", { class: "buttons-group" }, this.renderButtons()))), index.h("vviinn-privacy-badge", { privacyBadgeText: i18next.instance.t("privacyBadgeText"), class: { invisible: this.haveErrors() } }))), index.h("vviinn-slide", { class: {
468
460
  "results-page": true,
469
461
  active: this.isResultSlide(),
470
462
  } }, index.h("div", { class: "image-wrapper" }, this.isResultSlide() && (index.h("vviinn-image-view", { basicEventData: this.getBasicEventData() })), index.h("div", { class: "filters-wrapper" }, index.h("div", { class: "filters" }, imageSearch_store.imageSearchState.filters.map((filter) => (index.h("search-filters", { filter: filter, basicEventData: this.getBasicEventData() })))))), index.h("div", { id: "results-block", class: "products-wrapper" }, index.h("div", { class: {
@@ -7,49 +7,54 @@
7
7
 
8
8
 
9
9
  :host {
10
- --size: 40px;
11
- --x-position: 0;
12
- --y-position: 0;
13
- background: rgba(0, 0, 0, 0.16);
14
- -webkit-backdrop-filter: blur(4px);
15
- backdrop-filter: blur(4px);
16
- border-radius: 50%;
17
- cursor: pointer;
18
10
  display: block;
19
11
  position: absolute;
20
- transition: opacity 0.25s;
21
- width: var(--size);
22
- height: var(--size);
23
- z-index: 2;
24
- transform: translate(calc(var(--x-position) - (var(--size) * 0.5)), calc(var(--y-position) - (var(--size) * 0.5)));
25
- transition: background 0.1 ease-in-out;
12
+ left: calc(var(--x-position));
13
+ top: calc(var(--y-position));
26
14
  }
27
15
 
28
- :host(:hover) {
29
- background: rgba(0, 0, 0, 0.32);
16
+ :host::before,
17
+ :host::after {
18
+ content: "";
19
+ cursor: pointer;
20
+ position: absolute;
21
+ height: var(--size);
22
+ width: var(--size);
23
+ left: calc(-1 * var(--size) / 2);
24
+ top: calc(-1 * var(--size) / 2);
30
25
  }
31
26
 
32
- :host(.active) {
33
- background: rgba(0, 0, 0, 0.4);
34
- width: calc(var(--size) * 0.80);
35
- height: calc(var(--size) * 0.80);
36
- transform: translate(calc(var(--x-position) - (var(--size) * 0.4)), calc(var(--y-position) - (var(--size) * 0.4)));
27
+ :host::before {
28
+ --size: 36px;
29
+ border-radius: 50%;
30
+ z-index: 0;
31
+ background: rgba(0, 0, 0, 0.16);
32
+ -webkit-backdrop-filter: blur(4px);
33
+ backdrop-filter: blur(4px);
34
+ transition: transform 0.07s ease-in-out;
37
35
  }
38
36
 
39
37
  :host::after {
40
- --size: 32px;
38
+ --size: 13px;
41
39
  border-radius: 50%;
42
- content: "";
43
- cursor: pointer;
44
- display: block;
45
- height: calc(var(--size) * 0.5);
46
- transform: translate(calc(-25% + var(--size) * 0.5), calc(-25% + var(--size) * 0.5));
47
- width: calc(var(--size) * 0.5);
40
+ z-index: 1;
48
41
  background: white;
42
+ box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.15);
43
+ transition: transform 0.07s ease-in-out;
44
+ }
45
+
46
+ :host(.active)::before {
47
+ transform: scale(0.88);
48
+ background: rgba(0, 0, 0, 0.4);
49
49
  }
50
50
 
51
51
  :host(.active)::after {
52
- height: calc(var(--size) * 0.375);
53
- width: calc(var(--size) * 0.375);
54
- transform: translate(calc(-25% + var(--size) * 0.4), calc(-25% + var(--size) * 0.4));
52
+ transform: scale(0.67);
53
+ }
54
+
55
+ @media (min-width: 768px) {
56
+ :host(:not(.active):hover)::before {
57
+ transform: scale(1.08);
58
+ background: rgba(0, 0, 0, 0.32);
59
+ }
55
60
  }
@@ -93,7 +93,6 @@ button:hover {
93
93
  color: #161616;
94
94
  display: flex;
95
95
  align-items: center;
96
- transform: translateX(-6px);
97
96
  font-weight: 500;
98
97
  font-size: 16px;
99
98
  line-height: 24px;
@@ -118,7 +117,7 @@ button:hover {
118
117
  border: none;
119
118
  cursor: pointer;
120
119
  display: grid;
121
- color: #6F6F6F;
120
+ color: #6f6f6f;
122
121
  padding: 0;
123
122
  }
124
123
 
@@ -107,3 +107,9 @@
107
107
  .arrow-wrapper:hover > svg {
108
108
  fill: #8d8d8d;
109
109
  }
110
+
111
+ @media (max-width: 768px) {
112
+ :host {
113
+ transform: translateY(8px);
114
+ }
115
+ }
@@ -26,7 +26,7 @@ import { SlotSkeleton } from "../customized-slots";
26
26
  import { campaignTypeNames } from "../../campaign/Campaign";
27
27
  import { parseExcluded } from "../../utils/collections/collectionsUtils";
28
28
  import { resources } from "../../locale/resources-vps";
29
- import { CameraActionIcon, UploadActionIcon, GalleryActionIcon, } from "../vviinn-icons";
29
+ import { CameraActionIcon, UploadActionIcon } from "../vviinn-icons";
30
30
  import { DEFAULT_EXAMPLE_IMAGE } from "../../assets/constants";
31
31
  const filterInt = (value) => /^[-+]?(\d+|Infinity)$/.test(value) ? Number(value) : NaN;
32
32
  const notEmptyString = (s) => !isEmpty(s);
@@ -86,7 +86,7 @@ export class VviinnVpsWidget {
86
86
  this.resultLoaded = false;
87
87
  this.resultViewed = false;
88
88
  this.cameraAvailable = false;
89
- this.isTabletOrMobile = false;
89
+ this.isDesktop = false;
90
90
  this.handleVviinnImageUpload = (uploadSource) => {
91
91
  this.trackInitialSearch();
92
92
  this.uploadSource = uploadSource;
@@ -287,7 +287,7 @@ export class VviinnVpsWidget {
287
287
  this.trackingApi.trackEvent(searchEvent).then(this.setTrackingDeactivated);
288
288
  }
289
289
  connectedCallback() {
290
- this.isTabletOrMobile = checkDeviceType() !== "desktop";
290
+ this.isDesktop = checkDeviceType() === "desktop";
291
291
  state.apiPath = this.apiPath;
292
292
  state.currencySign = this.currencySign;
293
293
  state.locale = this.locale;
@@ -353,6 +353,18 @@ export class VviinnVpsWidget {
353
353
  modalBody.scrollTop = 0;
354
354
  this.stopStreamTracks();
355
355
  }
356
+ renderButtons() {
357
+ const buttons = [
358
+ this.cameraAvailable && (h("button", { class: "action-button", part: "start-camera_button", onClick: () => {
359
+ this.handleStartCameraClick();
360
+ this.uploadSource = "startCamera";
361
+ } }, imageSearchState.loading && this.uploadSource === "startCamera" ? (h("vviinn-preloader", null)) : (h("span", { class: "action-button-content" }, h(CameraActionIcon, null), this.cameraEnabled ? (h("slot", { name: "vviinn-camera-button-text-stop" }, h("span", null, i18next.t("cameraButtonTextStop")))) : (h("slot", { name: "vviinn-camera-button-text-start" }, h("span", null, i18next.t("cameraButtonTextStart")))))))),
362
+ h("vviinn-image-selector", { class: "action-button", onClick: () => (this.uploadSource = "uploadPhoto"), onVviinnImageUploadFinished: this.handleVviinnImageUploadFinished, onVviinnImageUpload: () => {
363
+ this.handleVviinnImageUpload("uploadPhoto");
364
+ }, onVviinnNoResult: ({ detail }) => this.handleVviinnNoResult(detail), resetVpsButton: this.resetVpsButton, basicEventData: this.getBasicEventData(), part: "upload-photo_button", startUpload: this.buttonPressed && this.showingInButton && this.mode === "upload", loading: imageSearchState.loading && this.uploadSource === "uploadPhoto" }, h("span", { slot: "upload-button-text", class: "action-button-content" }, h(UploadActionIcon, null), h("slot", { name: "vviinn-image-upload-button-text" }, h("span", null, i18next.t("imageUploadButtonText"))))),
365
+ ];
366
+ return this.isDesktop ? buttons.reverse() : buttons;
367
+ }
356
368
  renderResults() {
357
369
  if (imageSearchState.results.length === 0)
358
370
  return null;
@@ -416,27 +428,7 @@ export class VviinnVpsWidget {
416
428
  }, id: "start-page_block" }, h("div", { class: "start-page_main-content" }, h("div", { class: {
417
429
  "start-page_errors-block": true,
418
430
  hidden: !this.wrongImageFormat && !imageSearchState.serverError,
419
- } }, h("vviinn-wrong-format", { class: { hidden: !this.wrongImageFormat }, handler: () => this.resetState() }), h("vviinn-server-error", { class: { hidden: !imageSearchState.serverError }, handler: () => this.resetState() })), !this.haveErrors() && h("vviinn-teaser", null), !this.haveErrors() && (h("div", { class: "buttons-group" }, this.cameraAvailable &&
420
- (this.isTabletOrMobile ? (h("vviinn-image-selector", { class: "action-button", part: "start-camera_button", accept: "image", capture: "environment", onVviinnNoResult: ({ detail }) => this.handleVviinnNoResult(detail), onVviinnImageUpload: () => {
421
- this.handleVviinnImageUpload("startCamera");
422
- }, onVviinnImageUploadFinished: this.handleVviinnImageUploadFinished, resetVpsButton: this.resetVpsButton, basicEventData: this.getBasicEventData(), startUpload: this.buttonPressed &&
423
- this.showingInButton &&
424
- this.mode === "upload", loading: imageSearchState.loading &&
425
- this.uploadSource === "startCamera" }, h("span", { slot: "upload-button-text", class: "action-button-content" }, h(CameraActionIcon, null), h("slot", { name: "vviinn-camera-button-text-start" }, h("span", null, i18next.t("cameraButtonTextStart")))))) : (h("button", { class: "action-button", part: "start-camera_button", onClick: () => {
426
- this.handleStartCameraClick();
427
- this.uploadSource = "startCamera";
428
- } }, imageSearchState.loading &&
429
- this.uploadSource === "startCamera" ? (h("vviinn-preloader", null)) : (h("span", { class: "action-button-content" }, h(CameraActionIcon, null), this.cameraEnabled ? (h("slot", { name: "vviinn-camera-button-text-stop" }, h("span", null, i18next.t("cameraButtonTextStop")))) : (h("slot", { name: "vviinn-camera-button-text-start" }, h("span", null, i18next.t("cameraButtonTextStart"))))))))), this.isTabletOrMobile && (h("vviinn-image-selector", { class: "action-button", accept: "application-octet-stream", onClick: () => (this.uploadSource = "showFiles"), onVviinnImageUpload: () => {
430
- this.handleVviinnImageUpload("showFiles");
431
- }, onVviinnImageUploadFinished: this.handleVviinnImageUploadFinished, onVviinnNoResult: ({ detail }) => this.handleVviinnNoResult(detail), resetVpsButton: this.resetVpsButton, basicEventData: this.getBasicEventData(), part: "show-files_button", startUpload: this.buttonPressed &&
432
- this.showingInButton &&
433
- this.mode === "upload", loading: imageSearchState.loading &&
434
- this.uploadSource === "showFiles" }, h("span", { slot: "upload-button-text", class: "action-button-content" }, h(GalleryActionIcon, null), h("slot", { name: "vviinn-show-files-button-text" }, h("span", null, i18next.t("showFilesButtonText")))))), h("vviinn-image-selector", { class: "action-button", onClick: () => (this.uploadSource = "uploadPhoto"), onVviinnImageUploadFinished: this.handleVviinnImageUploadFinished, onVviinnImageUpload: () => {
435
- this.handleVviinnImageUpload("uploadPhoto");
436
- }, onVviinnNoResult: ({ detail }) => this.handleVviinnNoResult(detail), resetVpsButton: this.resetVpsButton, basicEventData: this.getBasicEventData(), part: "upload-photo_button", startUpload: this.buttonPressed &&
437
- this.showingInButton &&
438
- this.mode === "upload", loading: imageSearchState.loading &&
439
- this.uploadSource === "uploadPhoto" }, h("span", { slot: "upload-button-text", class: "action-button-content" }, h(UploadActionIcon, null), h("slot", { name: "vviinn-image-upload-button-text" }, h("span", null, i18next.t("imageUploadButtonText")))))))), h("vviinn-privacy-badge", { privacyBadgeText: i18next.t("privacyBadgeText"), class: { invisible: this.haveErrors() } }))), h("vviinn-slide", { class: {
431
+ } }, h("vviinn-wrong-format", { class: { hidden: !this.wrongImageFormat }, handler: () => this.resetState() }), h("vviinn-server-error", { class: { hidden: !imageSearchState.serverError }, handler: () => this.resetState() })), !this.haveErrors() && h("vviinn-teaser", null), !this.haveErrors() && (h("div", { class: "buttons-group" }, this.renderButtons()))), h("vviinn-privacy-badge", { privacyBadgeText: i18next.t("privacyBadgeText"), class: { invisible: this.haveErrors() } }))), h("vviinn-slide", { class: {
440
432
  "results-page": true,
441
433
  active: this.isResultSlide(),
442
434
  } }, h("div", { class: "image-wrapper" }, this.isResultSlide() && (h("vviinn-image-view", { basicEventData: this.getBasicEventData() })), h("div", { class: "filters-wrapper" }, h("div", { class: "filters" }, imageSearchState.filters.map((filter) => (h("search-filters", { filter: filter, basicEventData: this.getBasicEventData() })))))), h("div", { id: "results-block", class: "products-wrapper" }, h("div", { class: {
@@ -17,8 +17,6 @@ const UploadActionIcon = () => (h("svg", { xmlns: "http://www.w3.org/2000/svg",
17
17
  const UpdateIcon = () => (h("svg", { xmlns: "http://www.w3.org/2000/svg", width: "24", height: "24", viewBox: "0 0 24 24", fill: "none" },
18
18
  h("path", { "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M23.5998 4.57C20.3898 4.19 19.8798 3.68 19.4198 0.37C19.3798 0.15 19.2198 0 19.0098 0C18.7998 0 18.6298 0.15 18.5898 0.37C18.1198 3.66 17.6298 4.13 14.4098 4.57C14.1698 4.61 14.0098 4.77 14.0098 5C14.0098 5.23 14.1698 5.39 14.4098 5.42C17.6298 5.81 18.1398 6.31 18.5898 9.62C18.6298 9.84 18.7998 10 19.0098 10C19.2198 10 19.3898 9.84 19.4198 9.62C19.8898 6.31 20.3898 5.81 23.5998 5.42C23.8398 5.38 23.9998 5.22 23.9998 5C23.9998 4.78 23.8298 4.6 23.5998 4.57Z", fill: "currentColor" }),
19
19
  h("path", { "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M19.93 13C19.43 13 19.01 13.37 18.95 13.86C18.52 17.36 15.51 20.06 11.89 20C8.24 19.94 5.15 16.92 5.01 13.27C4.92 10.79 6.13 8.58 8.01 7.27V11C8.01 11.55 8.46 12 9.01 12C9.56 12 10.01 11.55 10.01 11V5C10.01 4.45 9.56 4 9.01 4H3C2.45 4 2 4.45 2 5C2 5.55 2.45 6 3 6H6.35C4.24 7.71 2.91 10.35 3 13.3C3.15 17.98 7.06 21.87 11.74 22C16.45 22.13 20.37 18.65 20.93 14.13C21 13.53 20.53 13.01 19.93 13.01V13Z", fill: "currentColor" })));
20
- const GalleryActionIcon = () => (h("svg", { xmlns: "http://www.w3.org/2000/svg", width: "25", height: "24", viewBox: "0 0 25 24", fill: "none" },
21
- h("path", { d: "M5.5 21H8.175V16.325H3.5V19C3.5 19.55 3.69583 20.0208 4.0875 20.4125C4.47917 20.8042 4.95 21 5.5 21ZM10.175 21H14.825V16.325H10.175V21ZM16.825 21H19.5C20.05 21 20.5208 20.8042 20.9125 20.4125C21.3042 20.0208 21.5 19.55 21.5 19V16.325H16.825V21ZM3.5 14.325H8.175V9.675H3.5V14.325ZM10.175 14.325H14.825V9.675H10.175V14.325ZM16.825 14.325H21.5V9.675H16.825V14.325ZM3.5 7.675H8.175V3H5.5C4.95 3 4.47917 3.19583 4.0875 3.5875C3.69583 3.97917 3.5 4.45 3.5 5V7.675ZM10.175 7.675H14.825V3H10.175V7.675ZM16.825 7.675H21.5V5C21.5 4.45 21.3042 3.97917 20.9125 3.5875C20.5208 3.19583 20.05 3 19.5 3H16.825V7.675Z", fill: "currentColor" })));
22
20
  const CameraActionIcon = () => (h("svg", { xmlns: "http://www.w3.org/2000/svg", width: "24", height: "24", viewBox: "0 0 24 24", fill: "none" },
23
21
  h("path", { d: "M12 17.5C13.25 17.5 14.3125 17.0625 15.1875 16.1875C16.0625 15.3125 16.5 14.25 16.5 13C16.5 11.75 16.0625 10.6875 15.1875 9.8125C14.3125 8.9375 13.25 8.5 12 8.5C10.75 8.5 9.6875 8.9375 8.8125 9.8125C7.9375 10.6875 7.5 11.75 7.5 13C7.5 14.25 7.9375 15.3125 8.8125 16.1875C9.6875 17.0625 10.75 17.5 12 17.5ZM12 15.5C11.3 15.5 10.7083 15.2583 10.225 14.775C9.74167 14.2917 9.5 13.7 9.5 13C9.5 12.3 9.74167 11.7083 10.225 11.225C10.7083 10.7417 11.3 10.5 12 10.5C12.7 10.5 13.2917 10.7417 13.775 11.225C14.2583 11.7083 14.5 12.3 14.5 13C14.5 13.7 14.2583 14.2917 13.775 14.775C13.2917 15.2583 12.7 15.5 12 15.5ZM4 21C3.45 21 2.97917 20.8042 2.5875 20.4125C2.19583 20.0208 2 19.55 2 19V7C2 6.45 2.19583 5.97917 2.5875 5.5875C2.97917 5.19583 3.45 5 4 5H7.15L8.4 3.65C8.58333 3.45 8.80417 3.29167 9.0625 3.175C9.32083 3.05833 9.59167 3 9.875 3H14.125C14.4083 3 14.6792 3.05833 14.9375 3.175C15.1958 3.29167 15.4167 3.45 15.6 3.65L16.85 5H20C20.55 5 21.0208 5.19583 21.4125 5.5875C21.8042 5.97917 22 6.45 22 7V19C22 19.55 21.8042 20.0208 21.4125 20.4125C21.0208 20.8042 20.55 21 20 21H4Z", fill: "currentColor" })));
24
22
  const RoundCameraIcon = () => (h("svg", { xmlns: "http://www.w3.org/2000/svg", width: "80", height: "80", viewBox: "0 0 80 80", fill: "none" },
@@ -29,4 +27,4 @@ const WarningIcon = () => (h("svg", { slot: "icon", class: "icon", width: "32",
29
27
  h("path", { d: "M16 2a14 14 0 1 0 0 28 14 14 0 0 0 0-28Zm0 26a12 12 0 1 1 0-24 12 12 0 0 1 0 24Z", fill: "#525252" }),
30
28
  h("path", { d: "M17 8h-2v11h2V8Zm-1 14a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3Z", fill: "#525252" })));
31
29
 
32
- export { ArrowIcon as A, ChevronIcon as C, GalleryActionIcon as G, RoundCameraIcon as R, SecondaryActionIcon as S, UpdateIcon as U, VisualSearchIcon as V, WarningIcon as W, CameraIcon as a, CrossIcon as b, CameraActionIcon as c, UploadActionIcon as d };
30
+ export { ArrowIcon as A, ChevronIcon as C, RoundCameraIcon as R, SecondaryActionIcon as S, UpdateIcon as U, VisualSearchIcon as V, WarningIcon as W, CameraIcon as a, CrossIcon as b, CameraActionIcon as c, UploadActionIcon as d };
@@ -1,3 +1,3 @@
1
- const version = "2.38.0";
1
+ const version = "2.40.0";
2
2
 
3
3
  export { version as v };
@@ -1,7 +1,7 @@
1
1
  import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-1f3eaf12.js';
2
2
  import { i as imageSearchState, a as _function, O as Option, r as fromAlt, u as foldValueObject, v as scaleWithSized, w as center, x as makeRectangularSearchRequest, y as detectedObjectEq, z as toFile, B as processSelectedFile, E as Either, C as match, o as createCommonjsModule, n as commonjsGlobal, D as sequenceToOption, F as fromImage, G as dimensionsFromImage, H as scaleByLargestSide, N as NonEmptyArray } from './imageSearch.store-c0f2a178.js';
3
3
  import { i as instance } from './i18next-387f2b0a.js';
4
- import { W as WarningIcon, R as RoundCameraIcon, S as SecondaryActionIcon, A as ArrowIcon } from './index-f7515645.js';
4
+ import { W as WarningIcon, R as RoundCameraIcon, S as SecondaryActionIcon, A as ArrowIcon } from './index-dac5d1c8.js';
5
5
  import { s as slotChangeListener, c as campaignTypeNames } from './customized-slots-6b70a8f6.js';
6
6
 
7
7
  // -------------------------------------------------------------------------------------
@@ -136,7 +136,7 @@ const SearchFilters = class {
136
136
  };
137
137
  SearchFilters.style = searchFiltersCss;
138
138
 
139
- const vviinnDetectedObjectCss = ":host{--color-primary-system:#0F62FE;--color-primary-hover-system:#014CDA;--color-icons-system:#2F8EDF;--spacer:8px}:host{--size:40px;--x-position:0;--y-position:0;background:rgba(0, 0, 0, 0.16);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:50%;cursor:pointer;display:block;position:absolute;transition:opacity 0.25s;width:var(--size);height:var(--size);z-index:2;transform:translate(calc(var(--x-position) - (var(--size) * 0.5)), calc(var(--y-position) - (var(--size) * 0.5)));transition:background 0.1 ease-in-out}:host(:hover){background:rgba(0, 0, 0, 0.32)}:host(.active){background:rgba(0, 0, 0, 0.4);width:calc(var(--size) * 0.80);height:calc(var(--size) * 0.80);transform:translate(calc(var(--x-position) - (var(--size) * 0.4)), calc(var(--y-position) - (var(--size) * 0.4)))}:host::after{--size:32px;border-radius:50%;content:\"\";cursor:pointer;display:block;height:calc(var(--size) * 0.5);transform:translate(calc(-25% + var(--size) * 0.5), calc(-25% + var(--size) * 0.5));width:calc(var(--size) * 0.5);background:white}:host(.active)::after{height:calc(var(--size) * 0.375);width:calc(var(--size) * 0.375);transform:translate(calc(-25% + var(--size) * 0.4), calc(-25% + var(--size) * 0.4))}";
139
+ const vviinnDetectedObjectCss = ":host{--color-primary-system:#0F62FE;--color-primary-hover-system:#014CDA;--color-icons-system:#2F8EDF;--spacer:8px}:host{display:block;position:absolute;left:calc(var(--x-position));top:calc(var(--y-position))}:host::before,:host::after{content:\"\";cursor:pointer;position:absolute;height:var(--size);width:var(--size);left:calc(-1 * var(--size) / 2);top:calc(-1 * var(--size) / 2)}:host::before{--size:36px;border-radius:50%;z-index:0;background:rgba(0, 0, 0, 0.16);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:transform 0.07s ease-in-out}:host::after{--size:13px;border-radius:50%;z-index:1;background:white;box-shadow:0px 2px 2px 0px rgba(0, 0, 0, 0.15);transition:transform 0.07s ease-in-out}:host(.active)::before{transform:scale(0.88);background:rgba(0, 0, 0, 0.4)}:host(.active)::after{transform:scale(0.67)}@media (min-width: 768px){:host(:not(.active):hover)::before{transform:scale(1.08);background:rgba(0, 0, 0, 0.32)}}";
140
140
 
141
141
  const VviinnDetectedObject = class {
142
142
  constructor(hostRef) {
@@ -3681,7 +3681,7 @@ const VviinnImageView = class {
3681
3681
  };
3682
3682
  VviinnImageView.style = vviinnImageViewCss;
3683
3683
 
3684
- const vviinnModalCss = ":host{background:white;border-radius:24px;box-sizing:border-box;display:grid;grid-template-rows:min-content auto;max-width:960px;overflow:auto;position:relative}.head{position:absolute;width:100%;box-sizing:border-box;display:flex;align-items:center;z-index:1;padding:16px}.title{display:flex;align-items:center;transform:translateX(-6px);font-weight:600;font-size:18px;line-height:24px;margin:0 auto}.title-image{border-radius:50%;border:1px solid rgb(244, 244, 244);-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;margin-right:8px}button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;cursor:pointer;display:grid;padding:6px;color:#8d8d8d}button:hover{color:#000}@media (max-width: 768px){:host{animation-name:fade-in;animation-duration:0.5s;animation-fill-mode:forwards;border-radius:24px 24px 0 0}:host(.closed){animation-name:fade-out;animation-fill-mode:none}.head{position:sticky;z-index:1}:host(:not(.first-screen)) .head{background:#ffffff}.body{overflow-y:auto}:host(.first-screen) .body{transform:translateY(-64px)}:host(:not(.first-screen)) .body{padding-bottom:64px}.title{color:#161616;display:flex;align-items:center;transform:translateX(-6px);font-weight:500;font-size:16px;line-height:24px;margin:0 auto}.title-image{border-radius:50%;border:1px solid rgb(244, 244, 244);-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;margin-right:8px}button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;cursor:pointer;display:grid;color:#6F6F6F;padding:0}button:hover{color:#000}:host(.first-screen) button,:host(.first-screen) button:hover{color:white}}@keyframes fade-in{from{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes fade-out{from{transform:translateY(0)}to{transform:translateY(100%)}}";
3684
+ const vviinnModalCss = ":host{background:white;border-radius:24px;box-sizing:border-box;display:grid;grid-template-rows:min-content auto;max-width:960px;overflow:auto;position:relative}.head{position:absolute;width:100%;box-sizing:border-box;display:flex;align-items:center;z-index:1;padding:16px}.title{display:flex;align-items:center;transform:translateX(-6px);font-weight:600;font-size:18px;line-height:24px;margin:0 auto}.title-image{border-radius:50%;border:1px solid rgb(244, 244, 244);-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;margin-right:8px}button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;cursor:pointer;display:grid;padding:6px;color:#8d8d8d}button:hover{color:#000}@media (max-width: 768px){:host{animation-name:fade-in;animation-duration:0.5s;animation-fill-mode:forwards;border-radius:24px 24px 0 0}:host(.closed){animation-name:fade-out;animation-fill-mode:none}.head{position:sticky;z-index:1}:host(:not(.first-screen)) .head{background:#ffffff}.body{overflow-y:auto}:host(.first-screen) .body{transform:translateY(-64px)}:host(:not(.first-screen)) .body{padding-bottom:64px}.title{color:#161616;display:flex;align-items:center;font-weight:500;font-size:16px;line-height:24px;margin:0 auto}.title-image{border-radius:50%;border:1px solid rgb(244, 244, 244);-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;margin-right:8px}button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;cursor:pointer;display:grid;color:#6f6f6f;padding:0}button:hover{color:#000}:host(.first-screen) button,:host(.first-screen) button:hover{color:white}}@keyframes fade-in{from{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes fade-out{from{transform:translateY(0)}to{transform:translateY(100%)}}";
3685
3685
 
3686
3686
  const VviinnModal = class {
3687
3687
  constructor(hostRef) {
@@ -3816,7 +3816,7 @@ const getStyleMap = (data) => {
3816
3816
  const Arrow = ({ kind, tabindex, disabled, onClick, onKeyDown, }) => (h("div", { class: getStyleMap({ kind, disabled }), onClick: onClick, tabindex: tabindex, onKeyDown: onKeyDown },
3817
3817
  h(ArrowIcon, null)));
3818
3818
 
3819
- const vviinnSliderCss = ":host{--color-primary-system:#0F62FE;--color-primary-hover-system:#014CDA;--color-icons-system:#2F8EDF;--spacer:8px}:host{--num-items:0;--position:0;display:grid;grid-gap:20px;justify-items:center;position:relative}.items-wrapper{overflow:hidden;width:100%}.items{box-sizing:border-box;display:grid;grid-auto-flow:column;grid-template-columns:repeat(var(--num-items), 100%);transform:translateX(calc(-100% * var(--position)));transition:transform 0.33s ease-in-out}.controls{display:grid;grid-gap:16px;grid-template-columns:repeat(var(--num-items), min-content)}.bullet{background:#e0e0e0;border-radius:50%;box-sizing:border-box;cursor:pointer;height:8px;width:8px;transition:background 0.1s ease-in-out}.bullet:hover{background:#c6c6c6}.bullet.active{background:var(--color-primary, var(--color-primary-system))}.bullet:active{background:transparent;border:2px solid var(--color-primary, var(--color-primary-system))}.arrow-wrapper{align-items:center;cursor:pointer;background:white;border:2px solid white;bottom:0;box-sizing:border-box;display:grid;height:calc(var(--spacer) * 6);justify-items:center;margin:auto;position:absolute;top:0;transform:translate3d(0, -50%, 0);transition:border 0.25ms ease-in-out;width:calc(var(--spacer) * 4)}.arrow-wrapper:active{border-color:var(--color-primary, var(--color-primary-system));opacity:0.75}.arrow-wrapper:focus{border-color:var(--color-primary, var(--color-primary-system));opacity:0.5;outline:none}.prev{left:0}.next{right:0}.next>svg{transform:rotate3d(0, 1, 0, 180deg)}.arrow-wrapper>svg{transition:fill 0.25ms ease-in-out;fill:#a8a8a8}.arrow-wrapper:hover>svg{fill:#8d8d8d}";
3819
+ const vviinnSliderCss = ":host{--color-primary-system:#0F62FE;--color-primary-hover-system:#014CDA;--color-icons-system:#2F8EDF;--spacer:8px}:host{--num-items:0;--position:0;display:grid;grid-gap:20px;justify-items:center;position:relative}.items-wrapper{overflow:hidden;width:100%}.items{box-sizing:border-box;display:grid;grid-auto-flow:column;grid-template-columns:repeat(var(--num-items), 100%);transform:translateX(calc(-100% * var(--position)));transition:transform 0.33s ease-in-out}.controls{display:grid;grid-gap:16px;grid-template-columns:repeat(var(--num-items), min-content)}.bullet{background:#e0e0e0;border-radius:50%;box-sizing:border-box;cursor:pointer;height:8px;width:8px;transition:background 0.1s ease-in-out}.bullet:hover{background:#c6c6c6}.bullet.active{background:var(--color-primary, var(--color-primary-system))}.bullet:active{background:transparent;border:2px solid var(--color-primary, var(--color-primary-system))}.arrow-wrapper{align-items:center;cursor:pointer;background:white;border:2px solid white;bottom:0;box-sizing:border-box;display:grid;height:calc(var(--spacer) * 6);justify-items:center;margin:auto;position:absolute;top:0;transform:translate3d(0, -50%, 0);transition:border 0.25ms ease-in-out;width:calc(var(--spacer) * 4)}.arrow-wrapper:active{border-color:var(--color-primary, var(--color-primary-system));opacity:0.75}.arrow-wrapper:focus{border-color:var(--color-primary, var(--color-primary-system));opacity:0.5;outline:none}.prev{left:0}.next{right:0}.next>svg{transform:rotate3d(0, 1, 0, 180deg)}.arrow-wrapper>svg{transition:fill 0.25ms ease-in-out;fill:#a8a8a8}.arrow-wrapper:hover>svg{fill:#8d8d8d}@media (max-width: 768px){:host{transform:translateY(8px)}}";
3820
3820
 
3821
3821
  const VviinnSlider = class {
3822
3822
  constructor(hostRef) {
@@ -1,5 +1,5 @@
1
1
  import { r as registerInstance, h, H as Host } from './index-1f3eaf12.js';
2
- import { V as VisualSearchIcon } from './index-f7515645.js';
2
+ import { V as VisualSearchIcon } from './index-dac5d1c8.js';
3
3
 
4
4
  const vviinnButtonCss = ":host{display:block}.open-button{align-items:center;background:rgba(255, 255, 255, 0.8);border-radius:50%;border:none;box-shadow:0px 2px 6px rgba(0, 0, 0, 0.15);box-sizing:border-box;cursor:pointer;display:grid;height:40px;justify-items:center;padding:0;width:40px;transition:all 0.25s ease-in-out}.raw-open-button{background:none;border:none;cursor:pointer}.open-button:hover{box-shadow:0px 2px 6px rgba(0, 0, 0, 0.25)}.open-button:focus{border:2px solid rgba(15, 98, 254, 0.5);outline:none}.open-button:active{background:#f4f4f4;outline:none}";
5
5
 
@@ -1,9 +1,9 @@
1
1
  import { r as registerInstance, h, H as Host, g as getElement, c as createEvent, F as Fragment } from './index-1f3eaf12.js';
2
2
  import { _ as _Array, O as Option, S as Semigroup, a as _function, h as has, t as tuple, E as Either, i as imageSearchState, s as state, p as pipe, c as chainW, m as makeRequest, f as fromEither, g as getApiPath, b as createInitGetRequest, A as Apply, d as map, e as match, j as arrayToQueryString, k as parseExcluded, T as TaskEither, l as checkEmpryString } from './imageSearch.store-c0f2a178.js';
3
- import { C as ChevronIcon, U as UpdateIcon } from './index-f7515645.js';
3
+ import { C as ChevronIcon, U as UpdateIcon } from './index-dac5d1c8.js';
4
4
  import { i as instance } from './i18next-387f2b0a.js';
5
5
  import { s as slotChangeListener, c as campaignTypeNames, f as fromString, a as fold, S as SlotSkeleton } from './customized-slots-6b70a8f6.js';
6
- import { v as version } from './package-c32fa64c.js';
6
+ import { v as version } from './package-c74df7b7.js';
7
7
  import { v as v4, c as createTrackingApi, a as createAddToBasketVpcEvent, b as createAddToBasketVprEvent, d as createWidgetVpcEvent, e as createWidgetVprEvent, f as createResultVpcEventByType, g as createResultVprEventByType, h as createProductVpcEventByType, i as createProductVprEventByType } from './index-53105ad4.js';
8
8
 
9
9
  const vviinnCarouselCss = ":host{--vviinn-progressbar-width:0;--vviinn-carousel-item-width:150px;--vviinn-carousel-columns-internal:var(--vviinn-carousel-columns, 4);--vviinn-carousel-image-width-system:140px}.body{display:flex;position:relative;width:var(--vviinn-carousel-content-width);flex-direction:column}.content-wrapper *{box-sizing:border-box}.content-wrapper{overflow-y:hidden;overflow-x:auto;flex-grow:1}.bullets{margin-top:16px;display:flex;flex-direction:row;grid-gap:24px;justify-content:center}.bullet{width:10px;height:10px;background:#e0e0e0;border-radius:50%;cursor:pointer}.bullet.active{background:#161616}.content:not(.show-scrollbar),.content.grid{scrollbar-color:#fff0 #fff0}.content:not(.show-scrollbar)::-webkit-scrollbar,.content.grid::-webkit-scrollbar{opacity:0}.content{display:flex;flex-direction:row;grid-gap:8px;overflow-y:hidden;overflow-x:auto;flex-grow:1;padding-bottom:16px}.content.left>*{scroll-snap-align:start}.content.right>*{scroll-snap-align:end}:host(.continuity) .prev,:host(.continuity) .next{border-radius:2px}:host(.grid) .prev,:host(.grid) .next{border-radius:50%}.prev,.next{align-items:center;background-color:white;border:none;box-shadow:0px 2px 6px rgba(0, 0, 0, 0.15);fill:#525252;cursor:pointer;display:grid;height:40px;justify-items:center;position:absolute;top:calc(50% - 20px);width:40px;z-index:1;padding:0;margin:0}.next:disabled,.prev:disabled{display:none}.prev svg{transform:rotate(180deg);margin-left:-5px}.prev{left:0}.next{right:0}.items-group{display:grid;grid-gap:16px;grid-template-columns:repeat(var(--vviinn-carousel-columns-internal), 1fr);min-width:100%}vviinn-product-card::part(price-container){text-align:center}:host(.classic) vviinn-product-card::part(title),:host(.classic) vviinn-product-card::part(brand),:host(.classic) vviinn-product-card::part(type){text-align:center}@media (max-width: 480px){:host(.modern) button{display:none}.items-group{grid-template-columns:repeat(2, 1fr)}}";
@@ -1,5 +1,5 @@
1
1
  import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-1f3eaf12.js';
2
- import { b as CrossIcon } from './index-f7515645.js';
2
+ import { b as CrossIcon } from './index-dac5d1c8.js';
3
3
 
4
4
  const recommendationsSidebarCss = ":host{--vviinn-carousel-columns:4;box-sizing:border-box;display:block;display:flex;height:100vh;left:0;position:fixed;top:0;transition:background 0.1s ease-in-out;width:100vw}:host(.open){background:rgba(0, 0, 0, 0.2)}:host(.bottom){flex-direction:column;justify-content:end}:host(.right){flex-direction:row;justify-content:flex-end}:host [slot]{visibility:hidden;position:absolute}header{position:relative;text-align:center;padding:32px}header.contains-source-img{display:grid;justify-items:center;grid-gap:12px}img.source-image{width:64px;height:64px;border-radius:50%;box-shadow:0px 2px 4px rgba(0, 0, 0, 0.15);padding:8px}:host(.right) header{box-shadow:0px 2px 6px rgba(0, 0, 0, 0.1)}main{padding:0 24px;min-height:100px}:host(.right) main{overflow:auto}.sidebar{background:white;box-sizing:border-box;display:flex;flex-direction:column;max-height:100vh;overflow-y:auto}:host(.bottom.idle) .sidebar,:host(.bottom.closed) .sidebar{transform:translateY(100%)}:host(.bottom.closed) .sidebar{animation-name:slideOutFromBottom;animation-duration:0.5s;animation-fill-mode:forwards}:host(.bottom.open) .sidebar{animation-name:slideInFromBottom;animation-duration:0.5s;animation-fill-mode:forwards}:host(.right.idle) .sidebar{transform:translateX(100%)}:host(.right.closed) .sidebar{animation-name:slideOutFromRight;animation-duration:0.5s;animation-fill-mode:forwards}:host(.right.open) .sidebar{animation-name:slideInFromRight;animation-duration:0.5s;animation-fill-mode:forwards}:host(.right) .sidebar{max-width:480px}:host(.right) vviinn-vpr-widget::part(recommendations-grid){display:grid;grid-template-columns:repeat(2, 1fr);grid-gap:24px}:host(.right) vviinn-vpr-widget{overflow:auto}:host(.right) vviinn-vpr-widget::part(image){border:none}.title{font-style:normal;font-weight:500;font-size:28px;line-height:40px;text-align:center;color:#000000}vviinn-vpr-widget::part(title),vviinn-vpr-widget::part(brand),vviinn-vpr-widget::part(type){text-align:left}vviinn-vpr-widget::part(price-container){align-self:start}.close-sidebar{background:transparent;border:none;cursor:pointer;margin:0;padding:0;position:absolute;right:24px;top:24px}@keyframes slideInFromBottom{from{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes slideOutFromBottom{from{transform:translateY(0)}to{transform:translateY(100%)}}@keyframes slideInFromRight{from{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes slideOutFromRight{from{transform:translateX(0)}to{transform:translateX(100%)}}@media (max-width: 768px){:host{--vviinn-carousel-columns:2}}";
5
5
 
@@ -1,6 +1,6 @@
1
1
  import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-1f3eaf12.js';
2
- import { v as version } from './package-c32fa64c.js';
3
- import { V as VisualSearchIcon } from './index-f7515645.js';
2
+ import { v as version } from './package-c74df7b7.js';
3
+ import { V as VisualSearchIcon } from './index-dac5d1c8.js';
4
4
 
5
5
  const vviinnVprButtonCss = ":host{display:block}";
6
6
 
@@ -1,6 +1,6 @@
1
1
  import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-1f3eaf12.js';
2
- import { v as version } from './package-c32fa64c.js';
3
- import { a as CameraIcon } from './index-f7515645.js';
2
+ import { v as version } from './package-c74df7b7.js';
3
+ import { a as CameraIcon } from './index-dac5d1c8.js';
4
4
  import { c as campaignTypeNames, S as SlotSkeleton } from './customized-slots-6b70a8f6.js';
5
5
  import { D as DEFAULT_EXAMPLE_IMAGE } from './constants-8bf233a9.js';
6
6