@depict-ai/ui 4.3.3 → 4.3.5

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.
@@ -12,7 +12,7 @@ function $parcel$export(e, n, v, s) {
12
12
  configurable: true
13
13
  });
14
14
  }
15
- $parcel$export(module.exports, "LooksSlider", () => $072863633018e322$export$1935e6bdfc5ed8ce);
15
+ $parcel$export(module.exports, "LooksSlider", () => $a3bbfa5fdaa39f3a$export$2c9f9bf2092486aa);
16
16
  $parcel$export(module.exports, "promiseSafeStructuredClone", () => $ac946c6b782bb900$export$83bb9af5671e1dbe);
17
17
  $parcel$export(module.exports, "preserve_items_in_history_dot_state", () => $d84fe647b84b5dc5$export$5162a71f252e6122);
18
18
  $parcel$export(module.exports, "prefixes_to_preserve_in_history_dot_state", () => $d84fe647b84b5dc5$export$3064e1e8c6513da3);
@@ -94,7 +94,7 @@ $parcel$export(module.exports, "BreadCrumbs", () => $1f4925833f07df29$export$5b7
94
94
  $parcel$export(module.exports, "QuickLinks", () => $1f4925833f07df29$export$de035477d6fef996);
95
95
  $parcel$export(module.exports, "CategoryPage", () => $14f289047713d67a$export$e2bf8ce7779e827e);
96
96
  /*! Depict.ai search and product listing SDK */
97
- const $b757f75811f3261f$export$83d89fbfd8236492 = "4.3.3";
97
+ const $b757f75811f3261f$export$83d89fbfd8236492 = "4.3.5";
98
98
  const $4e04be41243c3d80$var$transform_elements = sorted_cols_at_size => {
99
99
  const cols_at_size = [];
100
100
  for (let i = 0; i < sorted_cols_at_size.length; i++) {
@@ -1641,11 +1641,85 @@ class $e96dd13889871fc0$export$7e1297a3a19f10d8 {
1641
1641
  this.on_navigation_ = on_navigation;
1642
1642
  }
1643
1643
  }
1644
- var $072863633018e322$var$_tmpl$ = ["<div", ' class="depict recommendations looks" style="', '">', "</div>"];
1645
- let $072863633018e322$var$expandedLooksSignal_;
1646
- function $072863633018e322$export$1935e6bdfc5ed8ce(props) {
1644
+ var $b8e79813f4f7ebe4$var$_tmpl$ = ["<button", ' class="show-more major" type="button">', "</button>"],
1645
+ $b8e79813f4f7ebe4$var$_tmpl$2 = ["<h2", ' class="recs-title">', "</h2>"],
1646
+ $b8e79813f4f7ebe4$var$_tmpl$3 = ["<div", ' class="recommendation-grid"><!--$-->', "<!--/--><!--$-->", "<!--/--></div>"];
1647
+ function $b8e79813f4f7ebe4$export$7da560f849543dff({
1648
+ recommendations_resource_: recommendations_resource_,
1649
+ product_card_template_: product_card_template_,
1650
+ layout_options_: layout_options_,
1651
+ title_: title_,
1652
+ max_rows_: max_rows_,
1653
+ view_more_button_: view_more_button_
1654
+ }) {
1655
+ const rows_object_ = $5vyXB$solidjs.createMemo(() => {
1656
+ const view_more_button = view_more_button_?.();
1657
+ const max_rows = max_rows_?.();
1658
+ if (!view_more_button) {
1659
+ if (max_rows) return {
1660
+ max_rows: max_rows
1661
+ };
1662
+ return "all";
1663
+ }
1664
+ return {
1665
+ max_rows: max_rows,
1666
+ start_rows: view_more_button.start_rows,
1667
+ rows_per_click: view_more_button.rows_per_click ?? 2,
1668
+ button: $5vyXB$solidjsweb.ssr($b8e79813f4f7ebe4$var$_tmpl$, $5vyXB$solidjsweb.ssrHydrationKey(), $5vyXB$solidjsweb.escape(view_more_button.text))
1669
+ };
1670
+ });
1671
+ const is_showing_something = $5vyXB$solidjs.createMemo(() => recommendations_resource_.loading || recommendations_resource_()?.length);
1672
+ const title = $5vyXB$solidjs.createMemo(() => title_?.()); // In case getter/accessor creates elements, don't create them twice
1673
+ const num_placeholders_ = () => 20;
1674
+ const elements = [$5vyXB$solidjsweb.createComponent((0, $5vyXB$solidjs.Show), {
1675
+ get when() {
1676
+ return title();
1677
+ },
1678
+ get children() {
1679
+ return $5vyXB$solidjsweb.ssr($b8e79813f4f7ebe4$var$_tmpl$2, $5vyXB$solidjsweb.ssrHydrationKey(), $5vyXB$solidjsweb.escape(title()));
1680
+ }
1681
+ }), $5vyXB$solidjsweb.ssr($b8e79813f4f7ebe4$var$_tmpl$3, $5vyXB$solidjsweb.ssrHydrationKey(), $5vyXB$solidjsweb.escape($fc23d7668ae0011d$export$a2cc176055f8f08()), $5vyXB$solidjsweb.escape($5vyXB$solidjsweb.createComponent((0, $f48d0fbb00835aaa$export$d21e32dfedac04be), $5vyXB$solidjsweb.mergeProps({
1682
+ get rows() {
1683
+ return rows_object_();
1684
+ },
1685
+ layout: "grid",
1686
+ element_attributes: {
1687
+ class: "cards"
1688
+ }
1689
+ }, layout_options_, {
1690
+ get children() {
1691
+ return $5vyXB$solidjsweb.createComponent((0, $5vyXB$solidjs.Suspense), {
1692
+ get fallback() {
1693
+ return $0caf87eaa19079da$export$f33414a4df0afd3f({
1694
+ num_placeholders_: num_placeholders_,
1695
+ product_card_template_: product_card_template_
1696
+ });
1697
+ },
1698
+ get children() {
1699
+ return (() => {
1700
+ // IIFE to make sure we access both the recommendations_resource and the resources containing the product card rendering results themselves within the Suspense boundary
1701
+ const displays_by_key_ = $a73063cc642f3e5f$export$7f8bd308237ab5a5($5vyXB$solidjs.createMemo(() => recommendations_resource_() || []));
1702
+ return $a73063cc642f3e5f$export$43f0fb951fcb0c54({
1703
+ displays_by_key_: displays_by_key_,
1704
+ product_card_template_: product_card_template_
1705
+ });
1706
+ })();
1707
+ }
1708
+ });
1709
+ }
1710
+ }))))];
1711
+ return $5vyXB$solidjsweb.createComponent((0, $5vyXB$solidjs.Show), {
1712
+ get when() {
1713
+ return is_showing_something();
1714
+ },
1715
+ children: elements
1716
+ });
1717
+ }
1718
+ var $a3bbfa5fdaa39f3a$var$_tmpl$ = ["<div", ' class="depict recommendations looks" style="', '">', "</div>"];
1719
+ let $a3bbfa5fdaa39f3a$var$expandedLooksSignal_;
1720
+ function $a3bbfa5fdaa39f3a$export$2c9f9bf2092486aa(props) {
1647
1721
  return $95837413165cc2df$export$23fca46f3143581f(() => {
1648
- $072863633018e322$var$expandedLooksSignal_ ||= $5vyXB$solidjs.createSignal(new Set(), {
1722
+ $a3bbfa5fdaa39f3a$var$expandedLooksSignal_ ||= $5vyXB$solidjs.createSignal(new Set(), {
1649
1723
  equals: false
1650
1724
  });
1651
1725
  const expandingAnimationDuration = 240;
@@ -1685,38 +1759,49 @@ function $072863633018e322$export$1935e6bdfc5ed8ce(props) {
1685
1759
  market: market,
1686
1760
  locale: locale
1687
1761
  };
1688
- return $072863633018e322$var$runDisplayTransformersForLooks(baseData, listings, props.displayTransformers_);
1762
+ return $a3bbfa5fdaa39f3a$var$runDisplayTransformersForLooks(baseData, listings, props.displayTransformers_);
1689
1763
  });
1764
+ const sharedOptions = {
1765
+ product_card_template_: display => $ad882bbe664dbd53$export$44809a8a3e867e30({
1766
+ display_: display,
1767
+ FavoriteButton_: props.FavoriteButton_,
1768
+ placeholderImageAspectRatio_: props.imagePlaceholderAspectRatio_,
1769
+ animationDuration_: expandingAnimationDuration,
1770
+ expandedLooksSignal_: $a3bbfa5fdaa39f3a$var$expandedLooksSignal_,
1771
+ priceFormatting_: () => props.priceFormatting_,
1772
+ pseudoRouter_: pseudoRouter
1773
+ }),
1774
+ recommendations_resource_: looksResource,
1775
+ title_: () => props.title_,
1776
+ layout_options_: $5vyXB$solidjs.createMemo(() => ({
1777
+ cols_at_size: $4e04be41243c3d80$export$6daf8749b65a1b77(props.columnsAtSize_),
1778
+ ...grid_spacing_override()
1779
+ }))
1780
+ };
1690
1781
  $5vyXB$solidjs.createEffect(() => {
1691
1782
  const {
1692
1783
  onNavigation_: onNavigation_
1693
1784
  } = props;
1694
1785
  if (onNavigation_) pseudoRouter.on_navigation_ = onNavigation_;
1695
1786
  });
1696
- return $5vyXB$solidjsweb.ssr($072863633018e322$var$_tmpl$, $5vyXB$solidjsweb.ssrHydrationKey(), $5vyXB$solidjsweb.ssrStyle(`--animation-duration: ${expandingAnimationDuration}ms`), $5vyXB$solidjsweb.escape($5vyXB$solidjsweb.createComponent((0, $84798aaa863a4909$export$e68cff63f76bd15b), {
1787
+ return $5vyXB$solidjsweb.ssr($a3bbfa5fdaa39f3a$var$_tmpl$, $5vyXB$solidjsweb.ssrHydrationKey(), $5vyXB$solidjsweb.ssrStyle(`--animation-duration: ${expandingAnimationDuration}ms`), $5vyXB$solidjsweb.escape($5vyXB$solidjsweb.createComponent((0, $84798aaa863a4909$export$e68cff63f76bd15b), {
1697
1788
  get children() {
1698
- return $363ce4d1d71041aa$export$d41d19e89346fa2({
1699
- product_card_template_: display => $ad882bbe664dbd53$export$44809a8a3e867e30({
1700
- display_: display,
1701
- FavoriteButton_: props.FavoriteButton_,
1702
- placeholderImageAspectRatio_: props.imagePlaceholderAspectRatio_,
1703
- animationDuration_: expandingAnimationDuration,
1704
- expandedLooksSignal_: $072863633018e322$var$expandedLooksSignal_,
1705
- priceFormatting_: () => props.priceFormatting_,
1706
- pseudoRouter_: pseudoRouter
1707
- }),
1708
- recommendations_resource_: looksResource,
1709
- title_: () => props.title_,
1710
- layout_options_: $5vyXB$solidjs.createMemo(() => ({
1711
- cols_at_size: $4e04be41243c3d80$export$6daf8749b65a1b77(props.columnsAtSize_),
1712
- ...grid_spacing_override()
1713
- }))
1789
+ return $5vyXB$solidjsweb.createComponent((0, $5vyXB$solidjs.Show), {
1790
+ get when() {
1791
+ return props.gridOptions_;
1792
+ },
1793
+ get fallback() {
1794
+ return $5vyXB$solidjsweb.createComponent((0, $363ce4d1d71041aa$export$d41d19e89346fa2), sharedOptions);
1795
+ },
1796
+ get children() {
1797
+ return $5vyXB$solidjsweb.createComponent((0, $b8e79813f4f7ebe4$export$7da560f849543dff), $5vyXB$solidjsweb.mergeProps(sharedOptions, () => props.gridOptions_));
1798
+ }
1714
1799
  });
1715
1800
  }
1716
1801
  })));
1717
1802
  }, "LookSlider failed");
1718
1803
  }
1719
- async function $072863633018e322$var$runDisplayTransformersForLooks(baseData, listings, displayTransformers) {
1804
+ async function $a3bbfa5fdaa39f3a$var$runDisplayTransformersForLooks(baseData, listings, displayTransformers) {
1720
1805
  try {
1721
1806
  const {
1722
1807
  products: productTransformer,
@@ -4340,84 +4425,9 @@ const $0b23bfd073d9a4e8$export$b91cec6bdc6b32a1 = /*@__PURE__*/(() => {
4340
4425
  const $a3280f0aad997933$export$c3834fa86c616831 = [[4], [3, 1024], [2, 901]];
4341
4426
  const $a3280f0aad997933$export$864d304a0bc46829 = "2%";
4342
4427
  const $a3280f0aad997933$export$7bf543b9d9be2c22 = (0, $0b23bfd073d9a4e8$export$b91cec6bdc6b32a1);
4343
- var $b8e79813f4f7ebe4$var$_tmpl$ = ["<h2", ' class="recs-title">', "</h2>"],
4344
- $b8e79813f4f7ebe4$var$_tmpl$2 = ["<div", ' class="recommendation-grid"><!--$-->', "<!--/--><!--$-->", "<!--/--></div>"];
4345
- function $b8e79813f4f7ebe4$export$7da560f849543dff({
4346
- recommendations_resource_: recommendations_resource_,
4347
- product_card_template_: product_card_template_,
4348
- layout_options_: layout_options_,
4349
- rows_object_: rows_object_,
4350
- title_: title_
4351
- }) {
4352
- const is_showing_something = $5vyXB$solidjs.createMemo(() => recommendations_resource_.loading || recommendations_resource_()?.length);
4353
- const title = $5vyXB$solidjs.createMemo(() => title_?.()); // In case getter/accessor creates elements, don't create them twice
4354
- const num_placeholders_ = () => 20;
4355
- const elements = [$5vyXB$solidjsweb.createComponent((0, $5vyXB$solidjs.Show), {
4356
- get when() {
4357
- return title();
4358
- },
4359
- get children() {
4360
- return $5vyXB$solidjsweb.ssr($b8e79813f4f7ebe4$var$_tmpl$, $5vyXB$solidjsweb.ssrHydrationKey(), $5vyXB$solidjsweb.escape(title()));
4361
- }
4362
- }), $5vyXB$solidjsweb.ssr($b8e79813f4f7ebe4$var$_tmpl$2, $5vyXB$solidjsweb.ssrHydrationKey(), $5vyXB$solidjsweb.escape($fc23d7668ae0011d$export$a2cc176055f8f08()), $5vyXB$solidjsweb.escape($5vyXB$solidjsweb.createComponent((0, $f48d0fbb00835aaa$export$d21e32dfedac04be), $5vyXB$solidjsweb.mergeProps({
4363
- get rows() {
4364
- return rows_object_();
4365
- },
4366
- layout: "grid",
4367
- element_attributes: {
4368
- class: "cards"
4369
- }
4370
- }, layout_options_, {
4371
- get children() {
4372
- return $5vyXB$solidjsweb.createComponent((0, $5vyXB$solidjs.Suspense), {
4373
- get fallback() {
4374
- return $0caf87eaa19079da$export$f33414a4df0afd3f({
4375
- num_placeholders_: num_placeholders_,
4376
- product_card_template_: product_card_template_
4377
- });
4378
- },
4379
- get children() {
4380
- return (() => {
4381
- // IIFE to make sure we access both the recommendations_resource and the resources containing the product card rendering results themselves within the Suspense boundary
4382
- const displays_by_key_ = $a73063cc642f3e5f$export$7f8bd308237ab5a5($5vyXB$solidjs.createMemo(() => recommendations_resource_() || []));
4383
- return $a73063cc642f3e5f$export$43f0fb951fcb0c54({
4384
- displays_by_key_: displays_by_key_,
4385
- product_card_template_: product_card_template_
4386
- });
4387
- })();
4388
- }
4389
- });
4390
- }
4391
- }))))];
4392
- return $5vyXB$solidjsweb.createComponent((0, $5vyXB$solidjs.Show), {
4393
- get when() {
4394
- return is_showing_something();
4395
- },
4396
- children: elements
4397
- });
4398
- }
4399
- var $1f8dbf7e28b3eff2$var$_tmpl$ = ["<button", ' class="show-more major" type="button">', "</button>"],
4400
- $1f8dbf7e28b3eff2$var$_tmpl$2 = ["<div", ' class="depict plp recommendations">', "</div>"];
4428
+ var $1f8dbf7e28b3eff2$var$_tmpl$ = ["<div", ' class="', '">', "</div>"];
4401
4429
  function $1f8dbf7e28b3eff2$export$9756467d34d91cdb(props) {
4402
4430
  return $95837413165cc2df$export$23fca46f3143581f(() => {
4403
- const rows_object_ = $5vyXB$solidjs.createMemo(() => {
4404
- const {
4405
- view_more_button: view_more_button,
4406
- max_rows: max_rows
4407
- } = props;
4408
- if (!view_more_button) {
4409
- if (max_rows) return {
4410
- max_rows: max_rows
4411
- };
4412
- return "all";
4413
- }
4414
- return {
4415
- max_rows: max_rows,
4416
- start_rows: view_more_button.start_rows,
4417
- rows_per_click: view_more_button.rows_per_click ?? 2,
4418
- button: $5vyXB$solidjsweb.ssr($1f8dbf7e28b3eff2$var$_tmpl$, $5vyXB$solidjsweb.ssrHydrationKey(), $5vyXB$solidjsweb.escape(view_more_button.text))
4419
- };
4420
- });
4421
4431
  const grid_spacing_override = $5vyXB$solidjs.createMemo(() => {
4422
4432
  const {
4423
4433
  grid_spacing: grid_spacing
@@ -4430,10 +4440,11 @@ function $1f8dbf7e28b3eff2$export$9756467d34d91cdb(props) {
4430
4440
  };
4431
4441
  });
4432
4442
  const [recommendations_resource_] = $5vyXB$solidjs.createResource(() => props.recommendations, recs => recs);
4433
- return $5vyXB$solidjsweb.ssr($1f8dbf7e28b3eff2$var$_tmpl$2, $5vyXB$solidjsweb.ssrHydrationKey(), $5vyXB$solidjsweb.escape($5vyXB$solidjsweb.createComponent((0, $84798aaa863a4909$export$e68cff63f76bd15b), {
4443
+ return $5vyXB$solidjsweb.ssr($1f8dbf7e28b3eff2$var$_tmpl$, $5vyXB$solidjsweb.ssrHydrationKey(), `depict plp recommendations${props.class ? ` ${$5vyXB$solidjsweb.escape(props.class, true)}` : ""}`, $5vyXB$solidjsweb.escape($5vyXB$solidjsweb.createComponent((0, $84798aaa863a4909$export$e68cff63f76bd15b), {
4434
4444
  get children() {
4435
4445
  return $b8e79813f4f7ebe4$export$7da560f849543dff({
4436
- rows_object_: rows_object_,
4446
+ max_rows_: () => props.max_rows,
4447
+ view_more_button_: () => props.view_more_button,
4437
4448
  product_card_template_: (...args) => props.product_card_template(...args),
4438
4449
  recommendations_resource_: recommendations_resource_,
4439
4450
  title_: () => props.title,
@@ -4687,7 +4698,7 @@ function $a5f3eaa1a24bbc1e$var$actualSetupModal() {
4687
4698
  closeModal: actually_close_modal_
4688
4699
  };
4689
4700
  }
4690
- var $72f96c4782db0b1b$var$_tmpl$ = ["<div", ' class="depict recommendations">', "</div>"];
4701
+ var $72f96c4782db0b1b$var$_tmpl$ = ["<div", ' class="', '">', "</div>"];
4691
4702
  function $72f96c4782db0b1b$export$9574e176201e5e8d(props) {
4692
4703
  return $95837413165cc2df$export$23fca46f3143581f(() => {
4693
4704
  const grid_spacing_override = $5vyXB$solidjs.createMemo(() => {
@@ -4702,7 +4713,7 @@ function $72f96c4782db0b1b$export$9574e176201e5e8d(props) {
4702
4713
  };
4703
4714
  });
4704
4715
  const [recommendations_resource_] = $5vyXB$solidjs.createResource(() => props.recommendations, recs => recs);
4705
- return $5vyXB$solidjsweb.ssr($72f96c4782db0b1b$var$_tmpl$, $5vyXB$solidjsweb.ssrHydrationKey(), $5vyXB$solidjsweb.escape($5vyXB$solidjsweb.createComponent((0, $84798aaa863a4909$export$e68cff63f76bd15b), {
4716
+ return $5vyXB$solidjsweb.ssr($72f96c4782db0b1b$var$_tmpl$, $5vyXB$solidjsweb.ssrHydrationKey(), `depict recommendations${props.class ? ` ${$5vyXB$solidjsweb.escape(props.class, true)}` : ""}`, $5vyXB$solidjsweb.escape($5vyXB$solidjsweb.createComponent((0, $84798aaa863a4909$export$e68cff63f76bd15b), {
4706
4717
  get children() {
4707
4718
  return $363ce4d1d71041aa$export$d41d19e89346fa2({
4708
4719
  product_card_template_: (...args) => props.product_card_template(...args),
@@ -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.5";
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;
@@ -976,6 +987,7 @@ export function RecommendationGrid<T extends Display>(props: {
976
987
  };
977
988
  max_rows?: number;
978
989
  product_card_template: ProductCardTemplate<T>;
990
+ class?: string;
979
991
  }): HTMLDivElement;
980
992
  type ShopTheLookOpenModalOptions<T extends Display> = {
981
993
  onNavigation: OnNavigation;
@@ -1027,6 +1039,7 @@ export function RecommendationSlider<T extends Display>(props: {
1027
1039
  recommendations: Promise<T[]>;
1028
1040
  title?: JSX.Element;
1029
1041
  product_card_template: ProductCardTemplate<T>;
1042
+ class?: string;
1030
1043
  }): HTMLDivElement;
1031
1044
  export function ExpandingDetails(props: {
1032
1045
  details_: HTMLDetailsElement;
@@ -1384,7 +1397,7 @@ type OpenModalParams<OriginalDisplay extends Display, OutputDisplay extends Mode
1384
1397
  * Open the modal with support for alignment.
1385
1398
  * @returns {void}
1386
1399
  */
1387
- export const open_modal_with_alignment: <OriginalDisplay extends Display, OutputDisplay extends unknown>(openModalParams: OpenModalParams<OriginalDisplay, OutputDisplay>) => void;
1400
+ export const open_modal_with_alignment: <OriginalDisplay extends Display, OutputDisplay extends ModernDisplay>(openModalParams: OpenModalParams<OriginalDisplay, OutputDisplay>) => void;
1388
1401
  export function open_search_with_shift_slash(open_search: VoidFunction): () => void;
1389
1402
  export interface PageReplacer {
1390
1403
  readonly render_: () => Node_Array;
@@ -1462,5 +1475,5 @@ export function CategoryPage<OriginalDisplay extends Display, OutputDisplay exte
1462
1475
  content_blocks_by_row?: ContentBlocksByRow;
1463
1476
  layout?: PossibleLayout;
1464
1477
  filterModalParent_?: HTMLElement | ShadowRoot;
1465
- }): import("@depict-ai/utilishared").Node_Array;
1478
+ }): import("@depict-ai/utilishared/latest").Node_Array;
1466
1479
  export type { SearchFilter } from "@depict-ai/types/api/SearchRequestV3";