@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.
@@ -1,7 +1,7 @@
1
1
  var $5vyXB$depictaiutilishared = require("@depict-ai/utilishared/latest");
2
+ var $5vyXB$depictaiutilisharedlatest = require("@depict-ai/utilishared/latest");
2
3
  var $5vyXB$solidjs = require("solid-js");
3
4
  var $5vyXB$solidjsweb = require("solid-js/web");
4
- var $5vyXB$depictaiutilisharedlatest = require("@depict-ai/utilishared/latest");
5
5
  var $5vyXB$solidjsstore = require("solid-js/store");
6
6
  require("../../multi_import_deduplicator.cjs").register_es_version("ui", "latest");
7
7
  function $parcel$export(e, n, v, s) {
@@ -12,13 +12,14 @@ function $parcel$export(e, n, v, s) {
12
12
  configurable: true
13
13
  });
14
14
  }
15
+ $parcel$export(module.exports, "useMobileHover", () => $8bf678c45948a297$export$d4d96868197be50e);
15
16
  $parcel$export(module.exports, "useVisibilityState", () => $55cbacb79d3e0cea$export$54299a3c81f5425);
16
17
  $parcel$export(module.exports, "useSlidableInformation", () => $a0e53f99354809d9$export$eaa625fb39439e37);
17
18
  $parcel$export(module.exports, "useProductCardIsVisible", () => $67155e1aeb7073f6$export$80bb7300ce6a8be3);
18
19
  $parcel$export(module.exports, "CurrentlyIntersectingContext", () => $67155e1aeb7073f6$export$f223d69ed12f5fb7);
19
20
  $parcel$export(module.exports, "useExpandingContainerReactive", () => $4b455f60dadde8b8$export$5bad61ecde080b1f);
20
21
  $parcel$export(module.exports, "LooksSliderOrGrid", () => $a3bbfa5fdaa39f3a$export$2c9f9bf2092486aa);
21
- $parcel$export(module.exports, "LookCard", () => $ad882bbe664dbd53$export$44809a8a3e867e30);
22
+ $parcel$export(module.exports, "LookCard", () => $bda357ff87c46163$export$44809a8a3e867e30);
22
23
  $parcel$export(module.exports, "PseudoRouter", () => $e96dd13889871fc0$export$7e1297a3a19f10d8);
23
24
  $parcel$export(module.exports, "promiseSafeStructuredClone", () => $ac946c6b782bb900$export$83bb9af5671e1dbe);
24
25
  $parcel$export(module.exports, "preserve_items_in_history_dot_state", () => $d84fe647b84b5dc5$export$5162a71f252e6122);
@@ -103,7 +104,61 @@ $parcel$export(module.exports, "BreadCrumbs", () => $1f4925833f07df29$export$5b7
103
104
  $parcel$export(module.exports, "QuickLinks", () => $1f4925833f07df29$export$de035477d6fef996);
104
105
  $parcel$export(module.exports, "CategoryPage", () => $14f289047713d67a$export$e2bf8ce7779e827e);
105
106
  /*! Depict.ai search and product listing SDK */
106
- const $b757f75811f3261f$export$83d89fbfd8236492 = "4.7.24";
107
+ const $b757f75811f3261f$export$83d89fbfd8236492 = "4.7.26";
108
+ let $8bf678c45948a297$var$elementsHoveredSignal;
109
+ let $8bf678c45948a297$var$consumersSignal;
110
+ function $8bf678c45948a297$export$d4d96868197be50e() {
111
+ if (!$8bf678c45948a297$var$elementsHoveredSignal || !$8bf678c45948a297$var$consumersSignal) $5vyXB$solidjs.createRoot(dispose => {
112
+ $8bf678c45948a297$var$elementsHoveredSignal = $5vyXB$solidjs.createSignal(new Set());
113
+ $8bf678c45948a297$var$consumersSignal = $5vyXB$solidjs.createSignal(0);
114
+ const [consumers] = $8bf678c45948a297$var$consumersSignal;
115
+ // No matter how often useMobileHover is called, only add one listener and get hovered elements once per touchmove event, for efficiency
116
+ $8bf678c45948a297$var$doHeavyCalculations();
117
+ $5vyXB$solidjs.createEffect(() => {
118
+ // No-one needs information anymore, stop listening
119
+ const users = consumers();
120
+ if (users < 1) {
121
+ $5vyXB$depictaiutilisharedlatest.dlog("Stopping to listen for mobile hover");
122
+ dispose();
123
+ $8bf678c45948a297$var$elementsHoveredSignal = undefined;
124
+ $8bf678c45948a297$var$consumersSignal = undefined;
125
+ }
126
+ });
127
+ });
128
+ const [elementsHovered] = $8bf678c45948a297$var$elementsHoveredSignal;
129
+ const [, setConsumers] = $8bf678c45948a297$var$consumersSignal;
130
+ setConsumers(prev => prev + 1);
131
+ $5vyXB$solidjs.onCleanup(() => setConsumers(prev => prev - 1));
132
+ return elementsHovered;
133
+ }
134
+ function $8bf678c45948a297$var$doHeavyCalculations() {
135
+ $5vyXB$depictaiutilisharedlatest.dlog("Starting to listen for mobile hover");
136
+ const [, setElementsHovered] = $8bf678c45948a297$var$elementsHoveredSignal;
137
+ const elementAtTouch = new Map();
138
+ const updateSet = () => setElementsHovered(new Set([...elementAtTouch.values()].filter(v => v)));
139
+ const setPositionHandler = $5vyXB$depictaiutilisharedlatest.catchify(evt => {
140
+ for (const touch of evt.changedTouches) elementAtTouch.set(touch.identifier, document.elementFromPoint(touch.clientX, touch.clientY));
141
+ updateSet();
142
+ });
143
+ const deleteTouchHandler = $5vyXB$depictaiutilisharedlatest.catchify(evt => {
144
+ for (const touch of evt.changedTouches) elementAtTouch.delete(touch.identifier);
145
+ updateSet();
146
+ });
147
+ addEventListener("touchstart", setPositionHandler, {
148
+ passive: true
149
+ });
150
+ addEventListener("touchend", deleteTouchHandler, {
151
+ passive: true
152
+ });
153
+ addEventListener("touchcancel", deleteTouchHandler, {
154
+ passive: true
155
+ });
156
+ $5vyXB$solidjs.onCleanup(() => {
157
+ removeEventListener("touchstart", setPositionHandler);
158
+ removeEventListener("touchend", deleteTouchHandler);
159
+ removeEventListener("touchcancel", deleteTouchHandler);
160
+ });
161
+ }
107
162
  function $55cbacb79d3e0cea$export$54299a3c81f5425() {
108
163
  const d = document;
109
164
  const [isVisible, setIsVisible] = $5vyXB$solidjs.createSignal(d.visibilityState !== "hidden");
@@ -1336,10 +1391,10 @@ function $d659702496cb72ea$export$a71e92cfbb498adc(props) {
1336
1391
  return $5vyXB$depictaiutilishared.standard_price_format(props.price_, price_formatting.places_after_comma_, price_formatting.decimal_places_delimiter_, price_formatting.thousands_delimiter_);
1337
1392
  });
1338
1393
  }
1339
- var $1ae437d7d388a66e$var$_tmpl$ = ["<div", ' class="img-wrapper">', "</div>"],
1340
- $1ae437d7d388a66e$var$_tmpl$2 = ["<span", ' class="d-price original">', "</span>"],
1341
- $1ae437d7d388a66e$var$_tmpl$3 = ["<div", ' class="right-part"><div class="text-container">', '<span class="', '">', "</span><!--$-->", "<!--/--></div><!--$-->", "<!--/--></div>"];
1342
- function $1ae437d7d388a66e$export$b73ed90f0ee50dc3({
1394
+ var $0540c3739b32dc79$var$_tmpl$ = ["<div", ' class="img-wrapper">', "</div>"],
1395
+ $0540c3739b32dc79$var$_tmpl$2 = ["<span", ' class="d-price original">', "</span>"],
1396
+ $0540c3739b32dc79$var$_tmpl$3 = ["<div", ' class="right-part"><div class="text-container">', '<span class="', '">', "</span><!--$-->", "<!--/--></div><!--$-->", "<!--/--></div>"];
1397
+ function $0540c3739b32dc79$export$b73ed90f0ee50dc3({
1343
1398
  display_: display_,
1344
1399
  FavoriteButton_: FavoriteButton_,
1345
1400
  userWantsExpandedSignal_: [userWantsExpanded, setUserWantsExpanded],
@@ -1376,7 +1431,7 @@ function $1ae437d7d388a66e$export$b73ed90f0ee50dc3({
1376
1431
  });
1377
1432
  },
1378
1433
  get children() {
1379
- return $5vyXB$solidjsweb.ssr($1ae437d7d388a66e$var$_tmpl$, $5vyXB$solidjsweb.ssrHydrationKey(), $5vyXB$solidjsweb.escape($5vyXB$solidjsweb.createComponent((0, $5vyXB$solidjs.Show), {
1434
+ return $5vyXB$solidjsweb.ssr($0540c3739b32dc79$var$_tmpl$, $5vyXB$solidjsweb.ssrHydrationKey(), $5vyXB$solidjsweb.escape($5vyXB$solidjsweb.createComponent((0, $5vyXB$solidjs.Show), {
1380
1435
  get when() {
1381
1436
  return imageUrl();
1382
1437
  },
@@ -1408,7 +1463,7 @@ function $1ae437d7d388a66e$export$b73ed90f0ee50dc3({
1408
1463
  return (animationEffectExists() ? isExpandedThrottledByOurEffectRun() : userWantsExpanded()) || animationIsRunning();
1409
1464
  },
1410
1465
  get children() {
1411
- return $5vyXB$solidjsweb.ssr($1ae437d7d388a66e$var$_tmpl$3, $5vyXB$solidjsweb.ssrHydrationKey(), $5vyXB$solidjsweb.ssrElement("span", $5vyXB$solidjsweb.mergeProps({
1466
+ return $5vyXB$solidjsweb.ssr($0540c3739b32dc79$var$_tmpl$3, $5vyXB$solidjsweb.ssrHydrationKey(), $5vyXB$solidjsweb.ssrElement("span", $5vyXB$solidjsweb.mergeProps({
1412
1467
  "class": "d-title line-clamp"
1413
1468
  }, () => title() && {
1414
1469
  title: title()
@@ -1447,7 +1502,7 @@ function $1ae437d7d388a66e$export$b73ed90f0ee50dc3({
1447
1502
  return isOnSale();
1448
1503
  },
1449
1504
  get children() {
1450
- return $5vyXB$solidjsweb.ssr($1ae437d7d388a66e$var$_tmpl$2, $5vyXB$solidjsweb.ssrHydrationKey(), $5vyXB$solidjsweb.escape($5vyXB$solidjsweb.createComponent((0, $5vyXB$solidjs.Show), {
1505
+ return $5vyXB$solidjsweb.ssr($0540c3739b32dc79$var$_tmpl$2, $5vyXB$solidjsweb.ssrHydrationKey(), $5vyXB$solidjsweb.escape($5vyXB$solidjsweb.createComponent((0, $5vyXB$solidjs.Show), {
1451
1506
  get when() {
1452
1507
  return variantToUse() && !originalPrice.loading;
1453
1508
  },
@@ -1537,8 +1592,8 @@ async function $4f38102efa525ee0$var$checkIfIsAffectedByChromeBug326498383() {
1537
1592
  }
1538
1593
  return isAffected;
1539
1594
  }
1540
- var $905010a06f9aeae5$var$_tmpl$ = ["<div", ' class="scroll-padding"><div class="', '" style="', '">', "</div></div>"];
1541
- function $905010a06f9aeae5$export$ebf0b1d4f90c09ae({
1595
+ var $912d9a717ceee184$var$_tmpl$ = ["<div", ' class="scroll-padding"><div class="', '" style="', '">', "</div></div>"];
1596
+ function $912d9a717ceee184$export$ebf0b1d4f90c09ae({
1542
1597
  displays_: displays_,
1543
1598
  FavoriteButton_: FavoriteButton_,
1544
1599
  userWantsExpandedSignal_: userWantsExpandedSignal_,
@@ -1557,6 +1612,7 @@ function $905010a06f9aeae5$export$ebf0b1d4f90c09ae({
1557
1612
  const textFadeInAnimationRunning = $5vyXB$solidjs.createSignal(false);
1558
1613
  const [getSecondPartAnimationRunning] = textFadeInAnimationRunning;
1559
1614
  const [userWantsExpanded, setUserWantsExpanded] = userWantsExpandedSignal_;
1615
+ //const elementsHovered = useMobileHover();
1560
1616
  $4f38102efa525ee0$export$7b9a0e99f0aeb2f3().then(is => isAffectedByChromeBug = is);
1561
1617
  return $5vyXB$solidjsweb.createComponent((0, $84798aaa863a4909$export$e68cff63f76bd15b), {
1562
1618
  get children() {
@@ -1565,7 +1621,7 @@ function $905010a06f9aeae5$export$ebf0b1d4f90c09ae({
1565
1621
  return containerWidth_() || !displays_();
1566
1622
  },
1567
1623
  get children() {
1568
- return $5vyXB$solidjsweb.ssr($905010a06f9aeae5$var$_tmpl$, $5vyXB$solidjsweb.ssrHydrationKey(), `look-overlay ${userWantsExpanded() ? "expanded" : ""} ${!getSecondPartAnimationRunning() && userWantsExpanded() ? "resting-fully-expanded" : ""}`, $5vyXB$solidjsweb.ssrStyle(displays_() &&
1624
+ return $5vyXB$solidjsweb.ssr($912d9a717ceee184$var$_tmpl$, $5vyXB$solidjsweb.ssrHydrationKey(), `look-overlay ${userWantsExpanded() ? "expanded" : ""} ${!getSecondPartAnimationRunning() && userWantsExpanded() ? "resting-fully-expanded" : ""}`, $5vyXB$solidjsweb.ssrStyle(displays_() &&
1569
1625
  // The styling is written like this to eke out animation smoothness on low CPU devices, git blame for previous, more readable versions.
1570
1626
  `--look-card-width:${containerWidth_()}px;--look-card-height:${containerHeight_()}px;--look-item-height:${lookItemHeight() || 200}px`), $5vyXB$solidjsweb.escape($5vyXB$solidjsweb.createComponent((0, $5vyXB$solidjs.Index), {
1571
1627
  get each() {
@@ -1574,7 +1630,7 @@ function $905010a06f9aeae5$export$ebf0b1d4f90c09ae({
1574
1630
  });
1575
1631
  },
1576
1632
  children: (display, index) => {
1577
- return $5vyXB$solidjsweb.createComponent((0, $1ae437d7d388a66e$export$b73ed90f0ee50dc3), {
1633
+ return $5vyXB$solidjsweb.createComponent((0, $0540c3739b32dc79$export$b73ed90f0ee50dc3), {
1578
1634
  pseudoRouter_: pseudoRouter_,
1579
1635
  animationDuration_: animationDuration_,
1580
1636
  display_: display,
@@ -1599,7 +1655,7 @@ function $905010a06f9aeae5$export$ebf0b1d4f90c09ae({
1599
1655
  /**
1600
1656
  * Workaround for Chrome bug 326498383, adapted version of https://stackoverflow.com/a/39494245
1601
1657
  */
1602
- function $905010a06f9aeae5$var$scrollingFunctionForChrome(element, targetScrollY, duration) {
1658
+ function $912d9a717ceee184$var$scrollingFunctionForChrome(element, targetScrollY, duration) {
1603
1659
  let start;
1604
1660
  const startingY = element.scrollTop;
1605
1661
  const diff = targetScrollY - startingY;
@@ -1616,8 +1672,8 @@ function $905010a06f9aeae5$var$scrollingFunctionForChrome(element, targetScrollY
1616
1672
  // Bootstrap our animation - it will get called right before next frame shall be rendered.
1617
1673
  requestAnimationFrame(step);
1618
1674
  }
1619
- var $ad882bbe664dbd53$var$_tmpl$ = ["<div", ' class="', '"><!--$-->', "<!--/--><!--$-->", "<!--/--></div>"];
1620
- function $ad882bbe664dbd53$export$44809a8a3e867e30({
1675
+ var $bda357ff87c46163$var$_tmpl$ = ["<div", ' class="', '"><!--$-->', "<!--/--><!--$-->", "<!--/--></div>"];
1676
+ function $bda357ff87c46163$export$44809a8a3e867e30({
1621
1677
  display_: display_,
1622
1678
  expandedLooksSignal_: [expandedLooks_, setExpandedLooks],
1623
1679
  FavoriteButton_: FavoriteButton_,
@@ -1673,7 +1729,7 @@ function $ad882bbe664dbd53$export$44809a8a3e867e30({
1673
1729
  }
1674
1730
  // Close us if another look expands
1675
1731
  $5vyXB$solidjs.createEffect(() => !expandedLooks_().has(us) && setUserWantsExpanded(false));
1676
- return $5vyXB$solidjsweb.ssr($ad882bbe664dbd53$var$_tmpl$, $5vyXB$solidjsweb.ssrHydrationKey(), `look-card ${!display_() ? "placeholder" : ""}`, $5vyXB$solidjsweb.escape($5vyXB$solidjsweb.createComponent((0, $5vyXB$solidjs.Show), {
1732
+ return $5vyXB$solidjsweb.ssr($bda357ff87c46163$var$_tmpl$, $5vyXB$solidjsweb.ssrHydrationKey(), `look-card ${!display_() ? "placeholder" : ""}`, $5vyXB$solidjsweb.escape($5vyXB$solidjsweb.createComponent((0, $5vyXB$solidjs.Show), {
1677
1733
  get when() {
1678
1734
  return display_();
1679
1735
  },
@@ -1691,7 +1747,7 @@ function $ad882bbe664dbd53$export$44809a8a3e867e30({
1691
1747
  autoAdjustAspectRatio: true
1692
1748
  });
1693
1749
  }
1694
- })), $5vyXB$solidjsweb.escape($5vyXB$solidjsweb.createComponent((0, $905010a06f9aeae5$export$ebf0b1d4f90c09ae), {
1750
+ })), $5vyXB$solidjsweb.escape($5vyXB$solidjsweb.createComponent((0, $912d9a717ceee184$export$ebf0b1d4f90c09ae), {
1695
1751
  displays_: () => display_()?.displays,
1696
1752
  userWantsExpandedSignal_: useWantsExpandedSignal_,
1697
1753
  containerWidth_: containerWidth_,
@@ -1949,7 +2005,7 @@ function $a3bbfa5fdaa39f3a$export$2c9f9bf2092486aa(props) {
1949
2005
  return $a3bbfa5fdaa39f3a$var$runDisplayTransformersForLooks(baseData, listings, props.displayTransformers_);
1950
2006
  });
1951
2007
  const sharedOptions = {
1952
- product_card_template_: display => $ad882bbe664dbd53$export$44809a8a3e867e30({
2008
+ product_card_template_: display => $bda357ff87c46163$export$44809a8a3e867e30({
1953
2009
  display_: () => display,
1954
2010
  FavoriteButton_: props.FavoriteButton_,
1955
2011
  placeholderImageAspectRatio_: props.imagePlaceholderAspectRatio_,
@@ -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
  */