@depict-ai/ui 4.7.24 → 4.7.26

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/ES10/index.cjs CHANGED
@@ -1,8 +1,8 @@
1
1
  var $52FdA$depictaiutilishared = require("@depict-ai/utilishared/ES10");
2
+ var $52FdA$depictaiutilisharedlatest = require("@depict-ai/utilishared/ES10");
2
3
  var $52FdA$solidjs = require("solid-js");
3
4
  var $52FdA$solidjsweb = require("solid-js/web");
4
5
  var $52FdA$babelruntimehelpersdefineProperty = require("@babel/runtime/helpers/defineProperty");
5
- var $52FdA$depictaiutilisharedlatest = require("@depict-ai/utilishared/ES10");
6
6
  var $52FdA$babelruntimehelpersclassPrivateFieldSet = require("@babel/runtime/helpers/classPrivateFieldSet");
7
7
  var $52FdA$babelruntimehelpersclassPrivateFieldGet = require("@babel/runtime/helpers/classPrivateFieldGet");
8
8
  var $52FdA$solidjsstore = require("solid-js/store");
@@ -18,13 +18,14 @@ function $parcel$export(e, n, v, s) {
18
18
  function $parcel$interopDefault(a) {
19
19
  return a && a.__esModule ? a.default : a;
20
20
  }
21
+ $parcel$export(module.exports, "useMobileHover", () => $0deb6ff75e3d67c6$export$d4d96868197be50e);
21
22
  $parcel$export(module.exports, "useVisibilityState", () => $e7a7d2fe8a8217d8$export$54299a3c81f5425);
22
23
  $parcel$export(module.exports, "useSlidableInformation", () => $ad8ec7729fffeb9c$export$eaa625fb39439e37);
23
24
  $parcel$export(module.exports, "useProductCardIsVisible", () => $a52942afacbced93$export$80bb7300ce6a8be3);
24
25
  $parcel$export(module.exports, "CurrentlyIntersectingContext", () => $a52942afacbced93$export$f223d69ed12f5fb7);
25
26
  $parcel$export(module.exports, "useExpandingContainerReactive", () => $d6d51b09cb2116a6$export$5bad61ecde080b1f);
26
27
  $parcel$export(module.exports, "LooksSliderOrGrid", () => $e57cd46536ad992e$export$2c9f9bf2092486aa);
27
- $parcel$export(module.exports, "LookCard", () => $47e3c3102c78121b$export$44809a8a3e867e30);
28
+ $parcel$export(module.exports, "LookCard", () => $ae325261371de459$export$44809a8a3e867e30);
28
29
  $parcel$export(module.exports, "PseudoRouter", () => $73014ff36186a4dd$export$7e1297a3a19f10d8);
29
30
  $parcel$export(module.exports, "promiseSafeStructuredClone", () => $400d96565bbbfe07$export$83bb9af5671e1dbe);
30
31
  $parcel$export(module.exports, "preserve_items_in_history_dot_state", () => $cfcd56242923775d$export$5162a71f252e6122);
@@ -109,7 +110,61 @@ $parcel$export(module.exports, "BreadCrumbs", () => $335c02c1241a9ca8$export$5b7
109
110
  $parcel$export(module.exports, "QuickLinks", () => $335c02c1241a9ca8$export$de035477d6fef996);
110
111
  $parcel$export(module.exports, "CategoryPage", () => $c10e33c4681f8c9b$export$e2bf8ce7779e827e);
111
112
  /*! Depict.ai search and product listing SDK */
112
- const $aa1938dec50d6c12$export$83d89fbfd8236492 = "4.7.24";
113
+ const $aa1938dec50d6c12$export$83d89fbfd8236492 = "4.7.26";
114
+ let $0deb6ff75e3d67c6$var$elementsHoveredSignal;
115
+ let $0deb6ff75e3d67c6$var$consumersSignal;
116
+ function $0deb6ff75e3d67c6$export$d4d96868197be50e() {
117
+ if (!$0deb6ff75e3d67c6$var$elementsHoveredSignal || !$0deb6ff75e3d67c6$var$consumersSignal) $52FdA$solidjs.createRoot(dispose => {
118
+ $0deb6ff75e3d67c6$var$elementsHoveredSignal = $52FdA$solidjs.createSignal(new Set());
119
+ $0deb6ff75e3d67c6$var$consumersSignal = $52FdA$solidjs.createSignal(0);
120
+ const [consumers] = $0deb6ff75e3d67c6$var$consumersSignal;
121
+ // No matter how often useMobileHover is called, only add one listener and get hovered elements once per touchmove event, for efficiency
122
+ $0deb6ff75e3d67c6$var$doHeavyCalculations();
123
+ $52FdA$solidjs.createEffect(() => {
124
+ // No-one needs information anymore, stop listening
125
+ const users = consumers();
126
+ if (users < 1) {
127
+ $52FdA$depictaiutilisharedlatest.dlog("Stopping to listen for mobile hover");
128
+ dispose();
129
+ $0deb6ff75e3d67c6$var$elementsHoveredSignal = undefined;
130
+ $0deb6ff75e3d67c6$var$consumersSignal = undefined;
131
+ }
132
+ });
133
+ });
134
+ const [elementsHovered] = $0deb6ff75e3d67c6$var$elementsHoveredSignal;
135
+ const [, setConsumers] = $0deb6ff75e3d67c6$var$consumersSignal;
136
+ setConsumers(prev => prev + 1);
137
+ $52FdA$solidjs.onCleanup(() => setConsumers(prev => prev - 1));
138
+ return elementsHovered;
139
+ }
140
+ function $0deb6ff75e3d67c6$var$doHeavyCalculations() {
141
+ $52FdA$depictaiutilisharedlatest.dlog("Starting to listen for mobile hover");
142
+ const [, setElementsHovered] = $0deb6ff75e3d67c6$var$elementsHoveredSignal;
143
+ const elementAtTouch = new Map();
144
+ const updateSet = () => setElementsHovered(new Set([...elementAtTouch.values()].filter(v => v)));
145
+ const setPositionHandler = $52FdA$depictaiutilisharedlatest.catchify(evt => {
146
+ for (const touch of evt.changedTouches) elementAtTouch.set(touch.identifier, document.elementFromPoint(touch.clientX, touch.clientY));
147
+ updateSet();
148
+ });
149
+ const deleteTouchHandler = $52FdA$depictaiutilisharedlatest.catchify(evt => {
150
+ for (const touch of evt.changedTouches) elementAtTouch.delete(touch.identifier);
151
+ updateSet();
152
+ });
153
+ addEventListener("touchstart", setPositionHandler, {
154
+ passive: true
155
+ });
156
+ addEventListener("touchend", deleteTouchHandler, {
157
+ passive: true
158
+ });
159
+ addEventListener("touchcancel", deleteTouchHandler, {
160
+ passive: true
161
+ });
162
+ $52FdA$solidjs.onCleanup(() => {
163
+ removeEventListener("touchstart", setPositionHandler);
164
+ removeEventListener("touchend", deleteTouchHandler);
165
+ removeEventListener("touchcancel", deleteTouchHandler);
166
+ });
167
+ }
113
168
  function $e7a7d2fe8a8217d8$export$54299a3c81f5425() {
114
169
  const d = document;
115
170
  const [isVisible, setIsVisible] = $52FdA$solidjs.createSignal(d.visibilityState !== "hidden");
@@ -1500,11 +1555,11 @@ function $f38f2e64ebe2da86$export$a71e92cfbb498adc(props) {
1500
1555
  return $52FdA$depictaiutilishared.standard_price_format(props.price_, price_formatting.places_after_comma_, price_formatting.decimal_places_delimiter_, price_formatting.thousands_delimiter_);
1501
1556
  });
1502
1557
  }
1503
- var $d66c35b5a6d6d926$var$_tmpl$ = /*#__PURE__*/$52FdA$solidjsweb.template(`<div class=img-wrapper>`),
1504
- $d66c35b5a6d6d926$var$_tmpl$2 = /*#__PURE__*/$52FdA$solidjsweb.template(`<span class="d-price original">`),
1505
- $d66c35b5a6d6d926$var$_tmpl$3 = /*#__PURE__*/$52FdA$solidjsweb.template(`<div class=right-part><div class=text-container><span class="d-title line-clamp"></span><span class=d-price></span><!$><!/></div><!$><!/>`),
1506
- $d66c35b5a6d6d926$var$_tmpl$4 = /*#__PURE__*/$52FdA$solidjsweb.template(`<a class=look-item><!$><!/><!$><!/>`);
1507
- function $d66c35b5a6d6d926$export$b73ed90f0ee50dc3(_ref) {
1558
+ var $53dca9b7b01789b1$var$_tmpl$ = /*#__PURE__*/$52FdA$solidjsweb.template(`<div class=img-wrapper>`),
1559
+ $53dca9b7b01789b1$var$_tmpl$2 = /*#__PURE__*/$52FdA$solidjsweb.template(`<span class="d-price original">`),
1560
+ $53dca9b7b01789b1$var$_tmpl$3 = /*#__PURE__*/$52FdA$solidjsweb.template(`<div class=right-part><div class=text-container><span class="d-title line-clamp"></span><span class=d-price></span><!$><!/></div><!$><!/>`),
1561
+ $53dca9b7b01789b1$var$_tmpl$4 = /*#__PURE__*/$52FdA$solidjsweb.template(`<a class=look-item><!$><!/><!$><!/>`);
1562
+ function $53dca9b7b01789b1$export$b73ed90f0ee50dc3(_ref) {
1508
1563
  let {
1509
1564
  display_: display_,
1510
1565
  FavoriteButton_: FavoriteButton_,
@@ -1546,7 +1601,7 @@ function $d66c35b5a6d6d926$export$b73ed90f0ee50dc3(_ref) {
1546
1601
  return (_variantToUse5 = variantToUse()) === null || _variantToUse5 === void 0 ? void 0 : _variantToUse5.title;
1547
1602
  });
1548
1603
  return (() => {
1549
- var _el$ = $52FdA$solidjsweb.getNextElement($d66c35b5a6d6d926$var$_tmpl$4),
1604
+ var _el$ = $52FdA$solidjsweb.getNextElement($53dca9b7b01789b1$var$_tmpl$4),
1550
1605
  _el$12 = _el$.firstChild,
1551
1606
  [_el$13, _co$3] = $52FdA$solidjsweb.getNextMarker(_el$12.nextSibling),
1552
1607
  _el$14 = _el$13.nextSibling,
@@ -1579,7 +1634,7 @@ function $d66c35b5a6d6d926$export$b73ed90f0ee50dc3(_ref) {
1579
1634
  });
1580
1635
  },
1581
1636
  get children() {
1582
- var _el$2 = $52FdA$solidjsweb.getNextElement($d66c35b5a6d6d926$var$_tmpl$);
1637
+ var _el$2 = $52FdA$solidjsweb.getNextElement($53dca9b7b01789b1$var$_tmpl$);
1583
1638
  $52FdA$solidjsweb.insert(_el$2, $52FdA$solidjsweb.createComponent((0, $52FdA$solidjs.Show), {
1584
1639
  get when() {
1585
1640
  return imageUrl();
@@ -1614,7 +1669,7 @@ function $d66c35b5a6d6d926$export$b73ed90f0ee50dc3(_ref) {
1614
1669
  return (animationEffectExists() ? isExpandedThrottledByOurEffectRun() : userWantsExpanded()) || animationIsRunning();
1615
1670
  },
1616
1671
  get children() {
1617
- var _el$3 = $52FdA$solidjsweb.getNextElement($d66c35b5a6d6d926$var$_tmpl$3),
1672
+ var _el$3 = $52FdA$solidjsweb.getNextElement($53dca9b7b01789b1$var$_tmpl$3),
1618
1673
  _el$4 = _el$3.firstChild,
1619
1674
  _el$5 = _el$4.firstChild,
1620
1675
  _el$6 = _el$5.nextSibling,
@@ -1698,7 +1753,7 @@ function $d66c35b5a6d6d926$export$b73ed90f0ee50dc3(_ref) {
1698
1753
  return isOnSale();
1699
1754
  },
1700
1755
  get children() {
1701
- var _el$7 = $52FdA$solidjsweb.getNextElement($d66c35b5a6d6d926$var$_tmpl$2);
1756
+ var _el$7 = $52FdA$solidjsweb.getNextElement($53dca9b7b01789b1$var$_tmpl$2);
1702
1757
  $52FdA$solidjsweb.insert(_el$7, $52FdA$solidjsweb.createComponent((0, $52FdA$solidjs.Show), {
1703
1758
  get when() {
1704
1759
  return variantToUse() && !originalPrice.loading;
@@ -1797,8 +1852,8 @@ async function $b5e1e9638abb90ff$var$checkIfIsAffectedByChromeBug326498383() {
1797
1852
  }
1798
1853
  return isAffected;
1799
1854
  }
1800
- var $e0b3f1f332b6863b$var$_tmpl$ = /*#__PURE__*/$52FdA$solidjsweb.template(`<div class=scroll-padding><div class=look-overlay>`);
1801
- function $e0b3f1f332b6863b$export$ebf0b1d4f90c09ae(_ref) {
1855
+ var $1709366c442d8933$var$_tmpl$ = /*#__PURE__*/$52FdA$solidjsweb.template(`<div class=scroll-padding><div class=look-overlay>`);
1856
+ function $1709366c442d8933$export$ebf0b1d4f90c09ae(_ref) {
1802
1857
  let {
1803
1858
  displays_: displays_,
1804
1859
  FavoriteButton_: FavoriteButton_,
@@ -1818,6 +1873,7 @@ function $e0b3f1f332b6863b$export$ebf0b1d4f90c09ae(_ref) {
1818
1873
  const textFadeInAnimationRunning = $52FdA$solidjs.createSignal(false);
1819
1874
  const [getSecondPartAnimationRunning] = textFadeInAnimationRunning;
1820
1875
  const [userWantsExpanded, setUserWantsExpanded] = userWantsExpandedSignal_;
1876
+ //const elementsHovered = useMobileHover();
1821
1877
  $b5e1e9638abb90ff$export$7b9a0e99f0aeb2f3().then(is => isAffectedByChromeBug = is);
1822
1878
  return $52FdA$solidjsweb.createComponent((0, $d067f3a30f047b41$export$e68cff63f76bd15b), {
1823
1879
  get children() {
@@ -1826,21 +1882,37 @@ function $e0b3f1f332b6863b$export$ebf0b1d4f90c09ae(_ref) {
1826
1882
  return containerWidth_() || !displays_();
1827
1883
  },
1828
1884
  get children() {
1829
- var _el$ = $52FdA$solidjsweb.getNextElement($e0b3f1f332b6863b$var$_tmpl$),
1885
+ var _el$ = $52FdA$solidjsweb.getNextElement($1709366c442d8933$var$_tmpl$),
1830
1886
  _el$2 = _el$.firstChild;
1831
1887
  $52FdA$solidjsweb.addEventListener(_el$2, "mouseleave", $52FdA$depictaiutilishared.catchify(() => supportsHover_() && setUserWantsExpanded(false)));
1832
1888
  $52FdA$solidjsweb.addEventListener(_el$2, "mouseenter", $52FdA$depictaiutilishared.catchify(() => supportsHover_() && setUserWantsExpanded(true)));
1833
- $52FdA$solidjsweb.use(el => $52FdA$solidjs.createEffect(() => {
1834
- if (userWantsExpanded()) return;
1835
- if (isAffectedByChromeBug) {
1836
- $e0b3f1f332b6863b$var$scrollingFunctionForChrome(el, 0, animationDuration_);
1837
- return;
1838
- }
1839
- el.scrollTo({
1840
- top: 0,
1841
- behavior: "smooth"
1889
+ $52FdA$solidjsweb.use(el => {
1890
+ $52FdA$solidjs.createEffect(() => {
1891
+ if (userWantsExpanded()) return;
1892
+ if (isAffectedByChromeBug) {
1893
+ $1709366c442d8933$var$scrollingFunctionForChrome(el, 0, animationDuration_);
1894
+ return;
1895
+ }
1896
+ el.scrollTo({
1897
+ top: 0,
1898
+ behavior: "smooth"
1899
+ });
1842
1900
  });
1843
- }), _el$2);
1901
+ // createEffect(wasOpenedByHover => {
1902
+ // if (supportsHover_()) return;
1903
+ // const hovered = elementsHovered();
1904
+ // checkHovered: {
1905
+ // if (hovered.has(el)) break checkHovered;
1906
+ // for (const element of hovered) {
1907
+ // if (el.contains(element)) break checkHovered;
1908
+ // }
1909
+ // if (wasOpenedByHover) setUserWantsExpanded(false);
1910
+ // return;
1911
+ // }
1912
+ // setUserWantsExpanded(true);
1913
+ // return true;
1914
+ // });
1915
+ }, _el$2);
1844
1916
  $52FdA$solidjsweb.insert(_el$2, $52FdA$solidjsweb.createComponent((0, $52FdA$solidjs.Index), {
1845
1917
  get each() {
1846
1918
  return displays_() || Array.from({
@@ -1848,7 +1920,7 @@ function $e0b3f1f332b6863b$export$ebf0b1d4f90c09ae(_ref) {
1848
1920
  });
1849
1921
  },
1850
1922
  children: (display, index) => {
1851
- return $52FdA$solidjsweb.createComponent((0, $d66c35b5a6d6d926$export$b73ed90f0ee50dc3), {
1923
+ return $52FdA$solidjsweb.createComponent((0, $53dca9b7b01789b1$export$b73ed90f0ee50dc3), {
1852
1924
  pseudoRouter_: pseudoRouter_,
1853
1925
  animationDuration_: animationDuration_,
1854
1926
  display_: display,
@@ -1889,7 +1961,7 @@ function $e0b3f1f332b6863b$export$ebf0b1d4f90c09ae(_ref) {
1889
1961
  /**
1890
1962
  * Workaround for Chrome bug 326498383, adapted version of https://stackoverflow.com/a/39494245
1891
1963
  */
1892
- function $e0b3f1f332b6863b$var$scrollingFunctionForChrome(element, targetScrollY, duration) {
1964
+ function $1709366c442d8933$var$scrollingFunctionForChrome(element, targetScrollY, duration) {
1893
1965
  let start;
1894
1966
  const startingY = element.scrollTop;
1895
1967
  const diff = targetScrollY - startingY;
@@ -1906,8 +1978,8 @@ function $e0b3f1f332b6863b$var$scrollingFunctionForChrome(element, targetScrollY
1906
1978
  // Bootstrap our animation - it will get called right before next frame shall be rendered.
1907
1979
  requestAnimationFrame(step);
1908
1980
  }
1909
- var $47e3c3102c78121b$var$_tmpl$ = /*#__PURE__*/$52FdA$solidjsweb.template(`<div class=look-card><!$><!/><!$><!/>`);
1910
- function $47e3c3102c78121b$export$44809a8a3e867e30(_ref) {
1981
+ var $ae325261371de459$var$_tmpl$ = /*#__PURE__*/$52FdA$solidjsweb.template(`<div class=look-card><!$><!/><!$><!/>`);
1982
+ function $ae325261371de459$export$44809a8a3e867e30(_ref) {
1911
1983
  let {
1912
1984
  display_: display_,
1913
1985
  expandedLooksSignal_: [expandedLooks_, setExpandedLooks],
@@ -1967,7 +2039,7 @@ function $47e3c3102c78121b$export$44809a8a3e867e30(_ref) {
1967
2039
  // Close us if another look expands
1968
2040
  $52FdA$solidjs.createEffect(() => !expandedLooks_().has(us) && setUserWantsExpanded(false));
1969
2041
  return (() => {
1970
- var _el$ = $52FdA$solidjsweb.getNextElement($47e3c3102c78121b$var$_tmpl$),
2042
+ var _el$ = $52FdA$solidjsweb.getNextElement($ae325261371de459$var$_tmpl$),
1971
2043
  _el$2 = _el$.firstChild,
1972
2044
  [_el$3, _co$] = $52FdA$solidjsweb.getNextMarker(_el$2.nextSibling),
1973
2045
  _el$4 = _el$3.nextSibling,
@@ -2008,7 +2080,7 @@ function $47e3c3102c78121b$export$44809a8a3e867e30(_ref) {
2008
2080
  });
2009
2081
  }
2010
2082
  }), _el$3, _co$);
2011
- $52FdA$solidjsweb.insert(_el$, $52FdA$solidjsweb.createComponent((0, $e0b3f1f332b6863b$export$ebf0b1d4f90c09ae), {
2083
+ $52FdA$solidjsweb.insert(_el$, $52FdA$solidjsweb.createComponent((0, $1709366c442d8933$export$ebf0b1d4f90c09ae), {
2012
2084
  displays_: () => {
2013
2085
  var _display_2;
2014
2086
  return (_display_2 = display_()) === null || _display_2 === void 0 ? void 0 : _display_2.displays;
@@ -2308,7 +2380,7 @@ function $e57cd46536ad992e$export$2c9f9bf2092486aa(props) {
2308
2380
  return $e57cd46536ad992e$var$runDisplayTransformersForLooks(baseData, listings, props.displayTransformers_);
2309
2381
  });
2310
2382
  const sharedOptions = {
2311
- product_card_template_: display => $47e3c3102c78121b$export$44809a8a3e867e30({
2383
+ product_card_template_: display => $ae325261371de459$export$44809a8a3e867e30({
2312
2384
  display_: () => display,
2313
2385
  FavoriteButton_: props.FavoriteButton_,
2314
2386
  placeholderImageAspectRatio_: props.imagePlaceholderAspectRatio_,
@@ -3008,7 +3080,7 @@ function $ca262da429af47ea$export$a146ac6fa8346a25(_ref) {
3008
3080
  ev.preventDefault();
3009
3081
  submit_query_(item());
3010
3082
  })), _el$4);
3011
- $52FdA$solidjsweb.addEventListener(_el$4, "mouseleave", $52FdA$depictaiutilishared.catchify(() => write_selected_index_(undefined)));
3083
+ $52FdA$solidjsweb.addEventListener(_el$4, "mouseleave", $52FdA$depictaiutilishared.catchify(() => write_selected_index_()));
3012
3084
  $52FdA$solidjsweb.addEventListener(_el$4, "mouseenter", $52FdA$depictaiutilishared.catchify(() => write_selected_index_([0, index])));
3013
3085
  $52FdA$solidjsweb.insert(_el$5, $52FdA$solidjsweb.createComponent((0, $8767e7eba5066d2b$export$5d2caaa6b530761c), {}), _el$8, _co$);
3014
3086
  $52FdA$solidjsweb.insert(_el$6, item);
package/ES10/index.d.ts CHANGED
@@ -11,7 +11,11 @@ import { GetListingRequest } from "@depict-ai/types/api/GetListingRequest";
11
11
  import { BaseSearchRequestV3 } from "@depict-ai/types/api/BaseSearchRequestV3";
12
12
  import { FeaturedInDisplay } from "@depict-ai/types/api/FeaturedInResponseV3";
13
13
  import { SearchFilter as _SearchFilter3 } from "@depict-ai/types/api/SearchRequestV2";
14
- export const version = "4.7.24";
14
+ export const version = "4.7.26";
15
+ /**
16
+ * Returns a set containing the element where every element currently touching the screen started touching it.
17
+ */
18
+ export function useMobileHover(): import("solid-js").Accessor<Set<Element>>;
15
19
  /**
16
20
  * Returns if the current tab is visible
17
21
  */