@depict-ai/ui 4.3.3 → 4.3.4

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.
@@ -18,7 +18,7 @@ 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, "LooksSlider", () => $8446f782881fa12e$export$1935e6bdfc5ed8ce);
21
+ $parcel$export(module.exports, "LooksSlider", () => $e57cd46536ad992e$export$2c9f9bf2092486aa);
22
22
  $parcel$export(module.exports, "promiseSafeStructuredClone", () => $400d96565bbbfe07$export$83bb9af5671e1dbe);
23
23
  $parcel$export(module.exports, "preserve_items_in_history_dot_state", () => $cfcd56242923775d$export$5162a71f252e6122);
24
24
  $parcel$export(module.exports, "prefixes_to_preserve_in_history_dot_state", () => $cfcd56242923775d$export$3064e1e8c6513da3);
@@ -100,7 +100,7 @@ $parcel$export(module.exports, "BreadCrumbs", () => $335c02c1241a9ca8$export$5b7
100
100
  $parcel$export(module.exports, "QuickLinks", () => $335c02c1241a9ca8$export$de035477d6fef996);
101
101
  $parcel$export(module.exports, "CategoryPage", () => $c10e33c4681f8c9b$export$e2bf8ce7779e827e);
102
102
  /*! Depict.ai search and product listing SDK */
103
- const $aa1938dec50d6c12$export$83d89fbfd8236492 = "4.3.3";
103
+ const $aa1938dec50d6c12$export$83d89fbfd8236492 = "4.3.4";
104
104
  const $5401a6698b0c0658$var$transform_elements = sorted_cols_at_size => {
105
105
  const cols_at_size = [];
106
106
  for (let i = 0; i < sorted_cols_at_size.length; i++) {
@@ -1724,11 +1724,90 @@ function $73014ff36186a4dd$var$_get_navigation_happened_promise2(is_replace) {
1724
1724
  (0, $3hooq$depictaiutilishared.instant_exec_on_suspect_history_change).add(handler);
1725
1725
  });
1726
1726
  }
1727
- var $8446f782881fa12e$var$_tmpl$ = ["<div", ' class="depict recommendations looks" style="', '">', "</div>"];
1728
- let $8446f782881fa12e$var$expandedLooksSignal_;
1729
- function $8446f782881fa12e$export$1935e6bdfc5ed8ce(props) {
1727
+ var $2c920813c92d6987$var$_tmpl$ = ["<button", ' class="show-more major" type="button">', "</button>"],
1728
+ $2c920813c92d6987$var$_tmpl$2 = ["<h2", ' class="recs-title">', "</h2>"],
1729
+ $2c920813c92d6987$var$_tmpl$3 = ["<div", ' class="recommendation-grid"><!--$-->', "<!--/--><!--$-->", "<!--/--></div>"];
1730
+ function $2c920813c92d6987$export$7da560f849543dff(_ref) {
1731
+ let {
1732
+ recommendations_resource_: recommendations_resource_,
1733
+ product_card_template_: product_card_template_,
1734
+ layout_options_: layout_options_,
1735
+ title_: title_,
1736
+ max_rows_: max_rows_,
1737
+ view_more_button_: view_more_button_
1738
+ } = _ref;
1739
+ const rows_object_ = $3hooq$solidjs.createMemo(() => {
1740
+ var _view_more_button$row;
1741
+ const view_more_button = view_more_button_ === null || view_more_button_ === void 0 ? void 0 : view_more_button_();
1742
+ const max_rows = max_rows_ === null || max_rows_ === void 0 ? void 0 : max_rows_();
1743
+ if (!view_more_button) {
1744
+ if (max_rows) return {
1745
+ max_rows: max_rows
1746
+ };
1747
+ return "all";
1748
+ }
1749
+ return {
1750
+ max_rows: max_rows,
1751
+ start_rows: view_more_button.start_rows,
1752
+ rows_per_click: (_view_more_button$row = view_more_button.rows_per_click) !== null && _view_more_button$row !== void 0 ? _view_more_button$row : 2,
1753
+ button: $3hooq$solidjsweb.ssr($2c920813c92d6987$var$_tmpl$, $3hooq$solidjsweb.ssrHydrationKey(), $3hooq$solidjsweb.escape(view_more_button.text))
1754
+ };
1755
+ });
1756
+ const is_showing_something = $3hooq$solidjs.createMemo(() => {
1757
+ var _recommendations_reso;
1758
+ return recommendations_resource_.loading || ((_recommendations_reso = recommendations_resource_()) === null || _recommendations_reso === void 0 ? void 0 : _recommendations_reso.length);
1759
+ });
1760
+ const title = $3hooq$solidjs.createMemo(() => title_ === null || title_ === void 0 ? void 0 : title_()); // In case getter/accessor creates elements, don't create them twice
1761
+ const num_placeholders_ = () => 20;
1762
+ const elements = [$3hooq$solidjsweb.createComponent((0, $3hooq$solidjs.Show), {
1763
+ get when() {
1764
+ return title();
1765
+ },
1766
+ get children() {
1767
+ return $3hooq$solidjsweb.ssr($2c920813c92d6987$var$_tmpl$2, $3hooq$solidjsweb.ssrHydrationKey(), $3hooq$solidjsweb.escape(title()));
1768
+ }
1769
+ }), $3hooq$solidjsweb.ssr($2c920813c92d6987$var$_tmpl$3, $3hooq$solidjsweb.ssrHydrationKey(), $3hooq$solidjsweb.escape($8edd3cf30d1fd8b4$export$a2cc176055f8f08()), $3hooq$solidjsweb.escape($3hooq$solidjsweb.createComponent((0, $6c2c739b113a8ddf$export$d21e32dfedac04be), $3hooq$solidjsweb.mergeProps({
1770
+ get rows() {
1771
+ return rows_object_();
1772
+ },
1773
+ layout: "grid",
1774
+ element_attributes: {
1775
+ class: "cards"
1776
+ }
1777
+ }, layout_options_, {
1778
+ get children() {
1779
+ return $3hooq$solidjsweb.createComponent((0, $3hooq$solidjs.Suspense), {
1780
+ get fallback() {
1781
+ return $e3915574cfd3466c$export$f33414a4df0afd3f({
1782
+ num_placeholders_: num_placeholders_,
1783
+ product_card_template_: product_card_template_
1784
+ });
1785
+ },
1786
+ get children() {
1787
+ return (() => {
1788
+ // IIFE to make sure we access both the recommendations_resource and the resources containing the product card rendering results themselves within the Suspense boundary
1789
+ const displays_by_key_ = $76012c4468a53d1f$export$7f8bd308237ab5a5($3hooq$solidjs.createMemo(() => recommendations_resource_() || []));
1790
+ return $76012c4468a53d1f$export$43f0fb951fcb0c54({
1791
+ displays_by_key_: displays_by_key_,
1792
+ product_card_template_: product_card_template_
1793
+ });
1794
+ })();
1795
+ }
1796
+ });
1797
+ }
1798
+ }))))];
1799
+ return $3hooq$solidjsweb.createComponent((0, $3hooq$solidjs.Show), {
1800
+ get when() {
1801
+ return is_showing_something();
1802
+ },
1803
+ children: elements
1804
+ });
1805
+ }
1806
+ var $e57cd46536ad992e$var$_tmpl$ = ["<div", ' class="depict recommendations looks" style="', '">', "</div>"];
1807
+ let $e57cd46536ad992e$var$expandedLooksSignal_;
1808
+ function $e57cd46536ad992e$export$2c9f9bf2092486aa(props) {
1730
1809
  return $d05611ff6b8c8357$export$23fca46f3143581f(() => {
1731
- $8446f782881fa12e$var$expandedLooksSignal_ || ($8446f782881fa12e$var$expandedLooksSignal_ = $3hooq$solidjs.createSignal(new Set(), {
1810
+ $e57cd46536ad992e$var$expandedLooksSignal_ || ($e57cd46536ad992e$var$expandedLooksSignal_ = $3hooq$solidjs.createSignal(new Set(), {
1732
1811
  equals: false
1733
1812
  }));
1734
1813
  const expandingAnimationDuration = 240;
@@ -1770,38 +1849,49 @@ function $8446f782881fa12e$export$1935e6bdfc5ed8ce(props) {
1770
1849
  market: market,
1771
1850
  locale: locale
1772
1851
  };
1773
- return $8446f782881fa12e$var$runDisplayTransformersForLooks(baseData, listings, props.displayTransformers_);
1774
- });
1852
+ return $e57cd46536ad992e$var$runDisplayTransformersForLooks(baseData, listings, props.displayTransformers_);
1853
+ });
1854
+ const sharedOptions = {
1855
+ product_card_template_: display => $47e3c3102c78121b$export$44809a8a3e867e30({
1856
+ display_: display,
1857
+ FavoriteButton_: props.FavoriteButton_,
1858
+ placeholderImageAspectRatio_: props.imagePlaceholderAspectRatio_,
1859
+ animationDuration_: expandingAnimationDuration,
1860
+ expandedLooksSignal_: $e57cd46536ad992e$var$expandedLooksSignal_,
1861
+ priceFormatting_: () => props.priceFormatting_,
1862
+ pseudoRouter_: pseudoRouter
1863
+ }),
1864
+ recommendations_resource_: looksResource,
1865
+ title_: () => props.title_,
1866
+ layout_options_: $3hooq$solidjs.createMemo(() => ({
1867
+ cols_at_size: $5401a6698b0c0658$export$6daf8749b65a1b77(props.columnsAtSize_),
1868
+ ...grid_spacing_override()
1869
+ }))
1870
+ };
1775
1871
  $3hooq$solidjs.createEffect(() => {
1776
1872
  const {
1777
1873
  onNavigation_: onNavigation_
1778
1874
  } = props;
1779
1875
  if (onNavigation_) pseudoRouter.on_navigation_ = onNavigation_;
1780
1876
  });
1781
- return $3hooq$solidjsweb.ssr($8446f782881fa12e$var$_tmpl$, $3hooq$solidjsweb.ssrHydrationKey(), $3hooq$solidjsweb.ssrStyle("--animation-duration: ".concat(expandingAnimationDuration, "ms")), $3hooq$solidjsweb.escape($3hooq$solidjsweb.createComponent((0, $d067f3a30f047b41$export$e68cff63f76bd15b), {
1877
+ return $3hooq$solidjsweb.ssr($e57cd46536ad992e$var$_tmpl$, $3hooq$solidjsweb.ssrHydrationKey(), $3hooq$solidjsweb.ssrStyle("--animation-duration: ".concat(expandingAnimationDuration, "ms")), $3hooq$solidjsweb.escape($3hooq$solidjsweb.createComponent((0, $d067f3a30f047b41$export$e68cff63f76bd15b), {
1782
1878
  get children() {
1783
- return $236a257ee52e5414$export$d41d19e89346fa2({
1784
- product_card_template_: display => $47e3c3102c78121b$export$44809a8a3e867e30({
1785
- display_: display,
1786
- FavoriteButton_: props.FavoriteButton_,
1787
- placeholderImageAspectRatio_: props.imagePlaceholderAspectRatio_,
1788
- animationDuration_: expandingAnimationDuration,
1789
- expandedLooksSignal_: $8446f782881fa12e$var$expandedLooksSignal_,
1790
- priceFormatting_: () => props.priceFormatting_,
1791
- pseudoRouter_: pseudoRouter
1792
- }),
1793
- recommendations_resource_: looksResource,
1794
- title_: () => props.title_,
1795
- layout_options_: $3hooq$solidjs.createMemo(() => ({
1796
- cols_at_size: $5401a6698b0c0658$export$6daf8749b65a1b77(props.columnsAtSize_),
1797
- ...grid_spacing_override()
1798
- }))
1879
+ return $3hooq$solidjsweb.createComponent((0, $3hooq$solidjs.Show), {
1880
+ get when() {
1881
+ return props.gridOptions_;
1882
+ },
1883
+ get fallback() {
1884
+ return $3hooq$solidjsweb.createComponent((0, $236a257ee52e5414$export$d41d19e89346fa2), sharedOptions);
1885
+ },
1886
+ get children() {
1887
+ return $3hooq$solidjsweb.createComponent((0, $2c920813c92d6987$export$7da560f849543dff), $3hooq$solidjsweb.mergeProps(sharedOptions, () => props.gridOptions_));
1888
+ }
1799
1889
  });
1800
1890
  }
1801
1891
  })));
1802
1892
  }, "LookSlider failed");
1803
1893
  }
1804
- async function $8446f782881fa12e$var$runDisplayTransformersForLooks(baseData, listings, displayTransformers) {
1894
+ async function $e57cd46536ad992e$var$runDisplayTransformersForLooks(baseData, listings, displayTransformers) {
1805
1895
  try {
1806
1896
  const {
1807
1897
  products: productTransformer,
@@ -4559,89 +4649,9 @@ const $dc0bcefcc3486ebd$export$b91cec6bdc6b32a1 = /*@__PURE__*/(() => {
4559
4649
  const $33eed84f447aa0c0$export$c3834fa86c616831 = [[4], [3, 1024], [2, 901]];
4560
4650
  const $33eed84f447aa0c0$export$864d304a0bc46829 = "2%";
4561
4651
  const $33eed84f447aa0c0$export$7bf543b9d9be2c22 = (0, $dc0bcefcc3486ebd$export$b91cec6bdc6b32a1);
4562
- var $2c920813c92d6987$var$_tmpl$ = ["<h2", ' class="recs-title">', "</h2>"],
4563
- $2c920813c92d6987$var$_tmpl$2 = ["<div", ' class="recommendation-grid"><!--$-->', "<!--/--><!--$-->", "<!--/--></div>"];
4564
- function $2c920813c92d6987$export$7da560f849543dff(_ref) {
4565
- let {
4566
- recommendations_resource_: recommendations_resource_,
4567
- product_card_template_: product_card_template_,
4568
- layout_options_: layout_options_,
4569
- rows_object_: rows_object_,
4570
- title_: title_
4571
- } = _ref;
4572
- const is_showing_something = $3hooq$solidjs.createMemo(() => {
4573
- var _recommendations_reso;
4574
- return recommendations_resource_.loading || ((_recommendations_reso = recommendations_resource_()) === null || _recommendations_reso === void 0 ? void 0 : _recommendations_reso.length);
4575
- });
4576
- const title = $3hooq$solidjs.createMemo(() => title_ === null || title_ === void 0 ? void 0 : title_()); // In case getter/accessor creates elements, don't create them twice
4577
- const num_placeholders_ = () => 20;
4578
- const elements = [$3hooq$solidjsweb.createComponent((0, $3hooq$solidjs.Show), {
4579
- get when() {
4580
- return title();
4581
- },
4582
- get children() {
4583
- return $3hooq$solidjsweb.ssr($2c920813c92d6987$var$_tmpl$, $3hooq$solidjsweb.ssrHydrationKey(), $3hooq$solidjsweb.escape(title()));
4584
- }
4585
- }), $3hooq$solidjsweb.ssr($2c920813c92d6987$var$_tmpl$2, $3hooq$solidjsweb.ssrHydrationKey(), $3hooq$solidjsweb.escape($8edd3cf30d1fd8b4$export$a2cc176055f8f08()), $3hooq$solidjsweb.escape($3hooq$solidjsweb.createComponent((0, $6c2c739b113a8ddf$export$d21e32dfedac04be), $3hooq$solidjsweb.mergeProps({
4586
- get rows() {
4587
- return rows_object_();
4588
- },
4589
- layout: "grid",
4590
- element_attributes: {
4591
- class: "cards"
4592
- }
4593
- }, layout_options_, {
4594
- get children() {
4595
- return $3hooq$solidjsweb.createComponent((0, $3hooq$solidjs.Suspense), {
4596
- get fallback() {
4597
- return $e3915574cfd3466c$export$f33414a4df0afd3f({
4598
- num_placeholders_: num_placeholders_,
4599
- product_card_template_: product_card_template_
4600
- });
4601
- },
4602
- get children() {
4603
- return (() => {
4604
- // IIFE to make sure we access both the recommendations_resource and the resources containing the product card rendering results themselves within the Suspense boundary
4605
- const displays_by_key_ = $76012c4468a53d1f$export$7f8bd308237ab5a5($3hooq$solidjs.createMemo(() => recommendations_resource_() || []));
4606
- return $76012c4468a53d1f$export$43f0fb951fcb0c54({
4607
- displays_by_key_: displays_by_key_,
4608
- product_card_template_: product_card_template_
4609
- });
4610
- })();
4611
- }
4612
- });
4613
- }
4614
- }))))];
4615
- return $3hooq$solidjsweb.createComponent((0, $3hooq$solidjs.Show), {
4616
- get when() {
4617
- return is_showing_something();
4618
- },
4619
- children: elements
4620
- });
4621
- }
4622
- var $41227f10ad680afd$var$_tmpl$ = ["<button", ' class="show-more major" type="button">', "</button>"],
4623
- $41227f10ad680afd$var$_tmpl$2 = ["<div", ' class="depict plp recommendations">', "</div>"];
4652
+ var $41227f10ad680afd$var$_tmpl$ = ["<div", ' class="depict plp recommendations">', "</div>"];
4624
4653
  function $41227f10ad680afd$export$9756467d34d91cdb(props) {
4625
4654
  return $d05611ff6b8c8357$export$23fca46f3143581f(() => {
4626
- const rows_object_ = $3hooq$solidjs.createMemo(() => {
4627
- var _view_more_button$row;
4628
- const {
4629
- view_more_button: view_more_button,
4630
- max_rows: max_rows
4631
- } = props;
4632
- if (!view_more_button) {
4633
- if (max_rows) return {
4634
- max_rows: max_rows
4635
- };
4636
- return "all";
4637
- }
4638
- return {
4639
- max_rows: max_rows,
4640
- start_rows: view_more_button.start_rows,
4641
- rows_per_click: (_view_more_button$row = view_more_button.rows_per_click) !== null && _view_more_button$row !== void 0 ? _view_more_button$row : 2,
4642
- button: $3hooq$solidjsweb.ssr($41227f10ad680afd$var$_tmpl$, $3hooq$solidjsweb.ssrHydrationKey(), $3hooq$solidjsweb.escape(view_more_button.text))
4643
- };
4644
- });
4645
4655
  const grid_spacing_override = $3hooq$solidjs.createMemo(() => {
4646
4656
  const {
4647
4657
  grid_spacing: grid_spacing
@@ -4654,10 +4664,11 @@ function $41227f10ad680afd$export$9756467d34d91cdb(props) {
4654
4664
  };
4655
4665
  });
4656
4666
  const [recommendations_resource_] = $3hooq$solidjs.createResource(() => props.recommendations, recs => recs);
4657
- return $3hooq$solidjsweb.ssr($41227f10ad680afd$var$_tmpl$2, $3hooq$solidjsweb.ssrHydrationKey(), $3hooq$solidjsweb.escape($3hooq$solidjsweb.createComponent((0, $d067f3a30f047b41$export$e68cff63f76bd15b), {
4667
+ return $3hooq$solidjsweb.ssr($41227f10ad680afd$var$_tmpl$, $3hooq$solidjsweb.ssrHydrationKey(), $3hooq$solidjsweb.escape($3hooq$solidjsweb.createComponent((0, $d067f3a30f047b41$export$e68cff63f76bd15b), {
4658
4668
  get children() {
4659
4669
  return $2c920813c92d6987$export$7da560f849543dff({
4660
- rows_object_: rows_object_,
4670
+ max_rows_: () => props.max_rows,
4671
+ view_more_button_: () => props.view_more_button,
4661
4672
  product_card_template_: function () {
4662
4673
  return props.product_card_template(...arguments);
4663
4674
  },
@@ -10,7 +10,7 @@ import { ProductListingRequestV3 } from "@depict-ai/types/api/ProductListingRequ
10
10
  import { GetListingRequest } from "@depict-ai/types/api/GetListingRequest";
11
11
  import { BaseSearchRequestV3 } from "@depict-ai/types/api/BaseSearchRequestV3";
12
12
  import { SearchFilter as _SearchFilter3 } from "@depict-ai/types/api/SearchRequestV2";
13
- export const version = "4.3.3";
13
+ export const version = "4.3.4";
14
14
  declare const LISTING_ID = "listingId";
15
15
  declare const EXTERNAL_ID = "externalId";
16
16
  type ScrollRestorationData = {
@@ -877,6 +877,17 @@ export function LooksSlider(props: {
877
877
  display_: Accessor<ModernDisplay | null | undefined>;
878
878
  }) => JSX.Element;
879
879
  displayTransformers_?: DisplayTransformers<ModernDisplay, ModernDisplayWithPageUrl<ModernDisplay>>;
880
+ /**
881
+ * If provided, will render as grid instead of slider
882
+ */
883
+ gridOptions_?: {
884
+ view_more_button?: {
885
+ text: string;
886
+ start_rows?: number;
887
+ rows_per_click?: number;
888
+ };
889
+ max_rows?: number;
890
+ };
880
891
  onNavigation_?: OnNavigation;
881
892
  priceFormatting_: plp_shared_i18n["price_formatting_"];
882
893
  }): HTMLDivElement;