@depict-ai/ui 3.0.1 → 3.0.3

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.
@@ -83,7 +83,7 @@ $parcel$export(module.exports, "defaultColsAtSize", () => $33eed84f447aa0c0$expo
83
83
  $parcel$export(module.exports, "defaultCategoryTitlePlugin", () => $33eed84f447aa0c0$export$7bf543b9d9be2c22);
84
84
  $parcel$export(module.exports, "version", () => $aa1938dec50d6c12$export$83d89fbfd8236492);
85
85
  /*! Depict.ai search and product listing SDK */
86
- const $aa1938dec50d6c12$export$83d89fbfd8236492 = "3.0.1";
86
+ const $aa1938dec50d6c12$export$83d89fbfd8236492 = "3.0.3";
87
87
  const $9d19451330d04c3c$var$_tmpl$ = ["<svg", ' xmlns="http://www.w3.org/2000/svg"', ' viewBox="0 0 14 26"><path d="M2 24.656c-.078 0-.156-.016-.234-.047s-.133-.066-.187-.129c-.117-.117-.176-.258-.176-.422s.059-.305.176-.422l10.371-10.371L1.578 2.883c-.117-.117-.176-.258-.176-.422s.059-.305.176-.422.258-.176.422-.176.305.059.422.176l10.805 10.793a.59.59 0 0 1 .176.434c0 .172-.059.305-.176.422L2.422 24.48a.42.42 0 0 1-.199.129.54.54 0 0 1-.223.047zm0 0" fill="#0f0f0f"></path></svg>'];
88
88
  function $9d19451330d04c3c$export$8be2714ec7f169ee() {
89
89
  var _$escape2, _$escape3;
@@ -4768,7 +4768,6 @@ var $e270e9f953fcbc58$var$_get_cache_obj_for_endpoint = /*#__PURE__*/new WeakSet
4768
4768
  var $e270e9f953fcbc58$var$_add_ids_to_request = /*#__PURE__*/new WeakMap();
4769
4769
  var $e270e9f953fcbc58$var$_get_metadata = /*#__PURE__*/new WeakMap();
4770
4770
  var $e270e9f953fcbc58$var$_get_session_id = /*#__PURE__*/new WeakMap();
4771
- var $e270e9f953fcbc58$var$_guard_url_creator_length = /*#__PURE__*/new WeakSet();
4772
4771
  var $e270e9f953fcbc58$var$_run_url_creator_for_suggest = /*#__PURE__*/new WeakSet();
4773
4772
  var $e270e9f953fcbc58$var$_run_display_transformers_for_rest = /*#__PURE__*/new WeakSet();
4774
4773
  var $e270e9f953fcbc58$var$_cached_request = /*#__PURE__*/new WeakSet();
@@ -4777,9 +4776,7 @@ class $e270e9f953fcbc58$export$e015ed2f2950f2e3 {
4777
4776
  $e270e9f953fcbc58$var$_classPrivateMethodInitSpec(this, $e270e9f953fcbc58$var$_cached_request);
4778
4777
  $e270e9f953fcbc58$var$_classPrivateMethodInitSpec(this, $e270e9f953fcbc58$var$_run_display_transformers_for_rest);
4779
4778
  $e270e9f953fcbc58$var$_classPrivateMethodInitSpec(this, $e270e9f953fcbc58$var$_run_url_creator_for_suggest);
4780
- $e270e9f953fcbc58$var$_classPrivateMethodInitSpec(this, $e270e9f953fcbc58$var$_guard_url_creator_length);
4781
4779
  $e270e9f953fcbc58$var$_classPrivateMethodInitSpec(this, $e270e9f953fcbc58$var$_get_cache_obj_for_endpoint);
4782
- $parcel$interopDefault($3hooq$babelruntimehelpersdefineProperty)(this, "page_url_creator", void 0);
4783
4780
  $parcel$interopDefault($3hooq$babelruntimehelpersdefineProperty)(this, "display_transformers", void 0);
4784
4781
  $e270e9f953fcbc58$var$_classPrivateFieldInitSpec(this, $e270e9f953fcbc58$var$_supports_finalization_registry, {
4785
4782
  writable: true,
@@ -4811,18 +4808,15 @@ class $e270e9f953fcbc58$export$e015ed2f2950f2e3 {
4811
4808
  const {
4812
4809
  get_metadata: get_metadata,
4813
4810
  get_session_id: _get_session_id2,
4814
- page_url_creator: _page_url_creator,
4815
4811
  display_transformers: _display_transformers
4816
4812
  } = options !== null && options !== void 0 ? options : {};
4817
4813
  $parcel$interopDefault($3hooq$babelruntimehelpersclassPrivateFieldSet)(this, $e270e9f953fcbc58$var$_get_metadata, get_metadata);
4818
4814
  $parcel$interopDefault($3hooq$babelruntimehelpersclassPrivateFieldSet)(this, $e270e9f953fcbc58$var$_get_session_id, _get_session_id2);
4819
- this.page_url_creator = _page_url_creator;
4820
4815
  this.display_transformers = _display_transformers;
4821
4816
  }
4822
4817
  async suggest(input_req) {
4823
4818
  var _classPrivateFieldGet3;
4824
4819
  const with_ids = $parcel$interopDefault($3hooq$babelruntimehelpersclassPrivateFieldGet)(this, $e270e9f953fcbc58$var$_add_ids_to_request).call(this, input_req);
4825
- const owner = $3hooq$solidjs.getOwner();
4826
4820
  const metaData = await ((_classPrivateFieldGet3 = $parcel$interopDefault($3hooq$babelruntimehelpersclassPrivateFieldGet)(this, $e270e9f953fcbc58$var$_get_metadata)) === null || _classPrivateFieldGet3 === void 0 ? void 0 : _classPrivateFieldGet3.call(this));
4827
4821
  const request = metaData ? Object.assign(with_ids, {
4828
4822
  metadata: JSON.stringify(metaData)
@@ -4834,7 +4828,7 @@ class $e270e9f953fcbc58$export$e015ed2f2950f2e3 {
4834
4828
  const decoded_json = await results.json();
4835
4829
  if (!Array.isArray(decoded_json === null || decoded_json === void 0 ? void 0 : decoded_json.suggestions)) break attempt_to_return_api_response;
4836
4830
  try {
4837
- return await $3hooq$solidjs.runWithOwner(owner, () => $e270e9f953fcbc58$var$_classPrivateMethodGet(this, $e270e9f953fcbc58$var$_run_url_creator_for_suggest, $e270e9f953fcbc58$var$_run_url_creator_for_suggest2).call(this, input_req.merchant, input_req.market, decoded_json));
4831
+ return await $e270e9f953fcbc58$var$_classPrivateMethodGet(this, $e270e9f953fcbc58$var$_run_url_creator_for_suggest, $e270e9f953fcbc58$var$_run_url_creator_for_suggest2).call(this, input_req.merchant, input_req.market, decoded_json);
4838
4832
  } catch (e) {
4839
4833
  $3hooq$depictaiutilishared.dwarn("displayTransformer failed", e);
4840
4834
  }
@@ -4921,101 +4915,55 @@ function $e270e9f953fcbc58$var$_get_cache_obj_for_endpoint2(endpoint) {
4921
4915
  })) : undefined
4922
4916
  });
4923
4917
  }
4924
- function $e270e9f953fcbc58$var$_guard_url_creator_length2(expected, received) {
4925
- if (expected.length !== received.length) {
4926
- const e = new Error("displayTransformer returned wrong number of page URLs, got " + received.length + ", expected " + expected.length);
4927
- queueMicrotask(() => {
4928
- throw e;
4929
- });
4930
- throw e;
4931
- }
4932
- }
4933
4918
  async function $e270e9f953fcbc58$var$_run_url_creator_for_suggest2(merchant, market, response) {
4934
4919
  var _this$display_transfo;
4935
- const page_url_creator = this.page_url_creator;
4936
4920
  const category_transformer = (_this$display_transfo = this.display_transformers) === null || _this$display_transfo === void 0 ? void 0 : _this$display_transfo.categories;
4937
- if (!page_url_creator && !category_transformer) return response;
4921
+ if (!category_transformer) return response;
4938
4922
  // find category suggestions, run thing with them, and then replace them
4939
4923
  const category_suggestions = response.suggestions.filter(suggestion => suggestion.type === "category");
4940
- const page_urls = await (page_url_creator || category_transformer)({
4924
+ const transformed_category_suggestions = await category_transformer({
4941
4925
  market: market,
4942
4926
  merchant: merchant,
4943
- data: [...category_suggestions],
4944
- ...(page_url_creator ? {
4945
- type: "categories"
4946
- } : {})
4927
+ data: [...category_suggestions]
4947
4928
  });
4948
- $e270e9f953fcbc58$var$_classPrivateMethodGet(this, $e270e9f953fcbc58$var$_guard_url_creator_length, $e270e9f953fcbc58$var$_guard_url_creator_length2).call(this, category_suggestions, page_urls);
4949
- while (page_urls.length)
4950
- // Copy over getters so we sneakily can make this reactive
4951
- Object.defineProperties(category_suggestions.pop(), Object.getOwnPropertyDescriptors(page_urls.pop()));
4929
+ response.suggestions = transformed_category_suggestions;
4952
4930
  return response;
4953
4931
  }
4954
4932
  async function $e270e9f953fcbc58$var$_run_display_transformers_for_rest2(merchant, market, input_data) {
4955
4933
  const {
4956
- page_url_creator: page_url_creator,
4957
4934
  display_transformers: display_transformers
4958
4935
  } = this;
4959
- if (!page_url_creator && !display_transformers) return input_data;
4936
+ if (!display_transformers) return input_data;
4960
4937
  const product_transformer = display_transformers === null || display_transformers === void 0 ? void 0 : display_transformers.products;
4961
4938
  const category_transformer = display_transformers === null || display_transformers === void 0 ? void 0 : display_transformers.categories;
4962
4939
  const content_result_transformer = display_transformers === null || display_transformers === void 0 ? void 0 : display_transformers.contentResults;
4963
4940
  const displays = input_data.displays;
4964
- const owner = $3hooq$solidjs.getOwner();
4965
4941
  const {
4966
- breadcrumbs: breadcrumbs,
4967
- quick_links: quick_links,
4968
4942
  content_search_links: content_search_links
4969
4943
  } = input_data;
4970
- if (displays && (page_url_creator || product_transformer)) {
4971
- const page_urls = await (page_url_creator || product_transformer)({
4944
+ if (displays && product_transformer) {
4945
+ const transformed_displays = await product_transformer({
4972
4946
  merchant: merchant,
4973
4947
  market: market,
4974
- displays: [...input_data.displays],
4975
- ...(page_url_creator ? {
4976
- type: "products"
4977
- } : {})
4948
+ displays: [...displays]
4978
4949
  });
4979
- $e270e9f953fcbc58$var$_classPrivateMethodGet(this, $e270e9f953fcbc58$var$_guard_url_creator_length, $e270e9f953fcbc58$var$_guard_url_creator_length2).call(this, displays, page_urls);
4980
- for (let i = 0; i < displays.length; i++) {
4981
- const new_display_or_page_url = page_urls[i];
4982
- const old_display = displays[i];
4983
- if ("page_url" in new_display_or_page_url && Object.keys(new_display_or_page_url).length === 1) {
4984
- // they only returned page_url, let's put it into the display
4985
- const old_display_was_modern = ("variant_index" in old_display);
4986
- if (old_display_was_modern) {
4987
- const variant_displays = old_display.variant_displays;
4988
- for (let i = 0; i < variant_displays.length; i++) variant_displays[i].page_url = new_display_or_page_url.page_url;
4989
- } else old_display.page_url = new_display_or_page_url.page_url;
4990
- } else
4991
- // We got a whole new display, let's replace it
4992
- displays[i] = new_display_or_page_url;
4993
- }
4950
+ input_data.displays = transformed_displays;
4994
4951
  }
4995
- if (page_url_creator || category_transformer) for (const category_display_array of [breadcrumbs, quick_links]) {
4952
+ if (category_transformer) for (const key of ["breadcrumbs", "quick_links"]) {
4953
+ const category_display_array = input_data[key];
4996
4954
  if (!category_display_array) continue;
4997
- const page_urls = await $3hooq$solidjs.runWithOwner(owner, () => (page_url_creator || category_transformer)({
4998
- merchant: merchant,
4999
- market: market,
5000
- data: [...category_display_array],
5001
- ...(page_url_creator ? {
5002
- type: "categories"
5003
- } : {})
5004
- }));
5005
- $e270e9f953fcbc58$var$_classPrivateMethodGet(this, $e270e9f953fcbc58$var$_guard_url_creator_length, $e270e9f953fcbc58$var$_guard_url_creator_length2).call(this, category_display_array, page_urls);
5006
- for (let i = 0; i < category_display_array.length; i++)
5007
- // Copy over getters so we sneakily can make this reactive
5008
- Object.defineProperties(category_display_array[i], Object.getOwnPropertyDescriptors(page_urls[i]));
5009
- }
5010
- if (content_search_links !== null && content_search_links !== void 0 && content_search_links.length && content_result_transformer) {
5011
- const result = await $3hooq$solidjs.runWithOwner(owner, () => content_result_transformer({
4955
+ const transformed_category_displays = await category_transformer({
5012
4956
  merchant: merchant,
5013
4957
  market: market,
5014
- data: [...content_search_links]
5015
- }));
5016
- $e270e9f953fcbc58$var$_classPrivateMethodGet(this, $e270e9f953fcbc58$var$_guard_url_creator_length, $e270e9f953fcbc58$var$_guard_url_creator_length2).call(this, content_search_links, result);
5017
- input_data.content_search_links = result;
4958
+ data: [...category_display_array]
4959
+ });
4960
+ input_data[key] = transformed_category_displays;
5018
4961
  }
4962
+ if (content_search_links !== null && content_search_links !== void 0 && content_search_links.length && content_result_transformer) input_data.content_search_links = await content_result_transformer({
4963
+ merchant: merchant,
4964
+ market: market,
4965
+ data: [...content_search_links]
4966
+ });
5019
4967
  return input_data;
5020
4968
  }
5021
4969
  async function $e270e9f953fcbc58$var$_cached_request2(_ref) {
@@ -5029,7 +4977,6 @@ async function $e270e9f953fcbc58$var$_cached_request2(_ref) {
5029
4977
  } = _ref;
5030
4978
  const cache_obj = $e270e9f953fcbc58$var$_classPrivateMethodGet(this, $e270e9f953fcbc58$var$_get_cache_obj_for_endpoint, $e270e9f953fcbc58$var$_get_cache_obj_for_endpoint2).call(this, endpoint_);
5031
4979
  const with_ids = $parcel$interopDefault($3hooq$babelruntimehelpersclassPrivateFieldGet)(this, $e270e9f953fcbc58$var$_add_ids_to_request).call(this, input_req_);
5032
- const owner = $3hooq$solidjs.getOwner();
5033
4980
  const metaData = await ((_classPrivateFieldGet5 = $parcel$interopDefault($3hooq$babelruntimehelpersclassPrivateFieldGet)(this, $e270e9f953fcbc58$var$_get_metadata)) === null || _classPrivateFieldGet5 === void 0 ? void 0 : _classPrivateFieldGet5.call(this));
5034
4981
  const request = metaData ? Object.assign(with_ids, {
5035
4982
  metadata: metaData
@@ -5057,7 +5004,7 @@ async function $e270e9f953fcbc58$var$_cached_request2(_ref) {
5057
5004
  let result;
5058
5005
  try {
5059
5006
  const unmodified_result = await api_response.json();
5060
- result = await $3hooq$solidjs.runWithOwner(owner, () => $e270e9f953fcbc58$var$_classPrivateMethodGet(this, $e270e9f953fcbc58$var$_run_display_transformers_for_rest, $e270e9f953fcbc58$var$_run_display_transformers_for_rest2).call(this, input_req_.merchant, input_req_.market, unmodified_result));
5007
+ result = await $e270e9f953fcbc58$var$_classPrivateMethodGet(this, $e270e9f953fcbc58$var$_run_display_transformers_for_rest, $e270e9f953fcbc58$var$_run_display_transformers_for_rest2).call(this, input_req_.merchant, input_req_.market, unmodified_result);
5061
5008
  } catch (e) {
5062
5009
  $3hooq$depictaiutilishared.dwarn("displayTransformer or json decoding failed", e);
5063
5010
  break return_successfully;
@@ -7878,7 +7825,6 @@ class $9cbefc32b9dab36d$export$f34314aa9505732e {
7878
7825
  let {
7879
7826
  api: api,
7880
7827
  on_navigation: on_navigation,
7881
- page_url_creator: page_url_creator,
7882
7828
  display_transformers: display_transformers,
7883
7829
  unique_instance_key_for_state = "",
7884
7830
  listing_id_state_key: listing_id_state_key,
@@ -7957,7 +7903,6 @@ class $9cbefc32b9dab36d$export$f34314aa9505732e {
7957
7903
  reset_history_state_: reset_history_state_,
7958
7904
  // @ts-ignore
7959
7905
  depict_api_: api !== null && api !== void 0 ? api : new (0, $e270e9f953fcbc58$export$e015ed2f2950f2e3)({
7960
- page_url_creator: page_url_creator,
7961
7906
  display_transformers: display_transformers
7962
7907
  }),
7963
7908
  router_: $parcel$interopDefault($3hooq$babelruntimehelpersclassPrivateFieldGet)(this, $9cbefc32b9dab36d$var$_router),
@@ -8289,12 +8234,16 @@ function $3001ad378baf39dc$export$d757d54550ebfb3d(_ref) {
8289
8234
  category_suggestion_: category_suggestion_,
8290
8235
  router_: router_
8291
8236
  } = _ref;
8237
+ const parentTitle = $3hooq$solidjs.createMemo(() => {
8238
+ var _category_suggestion_;
8239
+ return (_category_suggestion_ = category_suggestion_().breadcrumbs.at(-1)) === null || _category_suggestion_ === void 0 ? void 0 : _category_suggestion_.title;
8240
+ });
8292
8241
  return $3hooq$solidjsweb.ssr($3001ad378baf39dc$var$_tmpl$2, $3hooq$solidjsweb.ssrHydrationKey(), $3hooq$solidjsweb.ssrAttribute("href", $3hooq$solidjsweb.escape(category_suggestion_().page_url, true), false), $3hooq$solidjsweb.escape(category_suggestion_().title), $3hooq$solidjsweb.escape($3hooq$solidjsweb.createComponent((0, $3hooq$solidjs.Show), {
8293
8242
  get when() {
8294
- return typeof category_suggestion_().parent_title === "string";
8243
+ return parentTitle();
8295
8244
  },
8296
8245
  get children() {
8297
- return $3hooq$solidjsweb.ssr($3001ad378baf39dc$var$_tmpl$, $3hooq$solidjsweb.ssrHydrationKey(), $3hooq$solidjsweb.escape(category_suggestion_().parent_title));
8246
+ return $3hooq$solidjsweb.ssr($3001ad378baf39dc$var$_tmpl$, $3hooq$solidjsweb.ssrHydrationKey(), $3hooq$solidjsweb.escape(parentTitle()));
8298
8247
  }
8299
8248
  })));
8300
8249
  }
@@ -8881,6 +8830,12 @@ function $0677d509ad208e22$export$e872e2339fb04a7f(_ref) {
8881
8830
  var _read_selected_index_, _read_selected_index_2;
8882
8831
  return ((_read_selected_index_ = read_selected_index_()) === null || _read_selected_index_ === void 0 ? void 0 : _read_selected_index_[0]) === autocomplete_data_index && ((_read_selected_index_2 = read_selected_index_()) === null || _read_selected_index_2 === void 0 ? void 0 : _read_selected_index_2[1]) === index;
8883
8832
  });
8833
+ const parent_title_if_exists = $3hooq$solidjs.createMemo(() => {
8834
+ var _item$breadcrumbs$at;
8835
+ const item = input_obj();
8836
+ if (!("breadcrumbs" in item)) return;
8837
+ return (_item$breadcrumbs$at = item.breadcrumbs.at(-1)) === null || _item$breadcrumbs$at === void 0 ? void 0 : _item$breadcrumbs$at.title;
8838
+ });
8884
8839
  return $3hooq$solidjsweb.ssr($0677d509ad208e22$var$_tmpl$, $3hooq$solidjsweb.ssrHydrationKey(), "suggestion ".concat(is_selected() ? "selected" : "", " ").concat(is_history ? "history" : "", " ").concat($3hooq$solidjsweb.escape($3hooq$solidjsweb.escape("type-" + input_obj().type, true), true)), $3hooq$solidjsweb.ssrAttribute("href", $3hooq$solidjsweb.escape(href(), true), false), is_query() ? $3hooq$solidjsweb.escape([$3hooq$solidjsweb.createComponent((0, $3hooq$solidjs.Show), {
8885
8840
  when: is_history,
8886
8841
  get fallback() {
@@ -8895,13 +8850,13 @@ function $0677d509ad208e22$export$e872e2339fb04a7f(_ref) {
8895
8850
  return $3hooq$solidjs.createMemo(() => input_obj().title);
8896
8851
  },
8897
8852
  searching_for_value_: searching_for_value_
8898
- })]) : $3hooq$solidjsweb.escape([typeof input_obj() /* this is a harmless lie */.parent_title === "string" ? $3hooq$solidjsweb.ssr($0677d509ad208e22$var$_tmpl$4, $3hooq$solidjsweb.ssrHydrationKey(), $3hooq$solidjsweb.escape($3hooq$solidjsweb.createComponent((0, $23c3f390dee33ff8$export$ba17c5b7e6dda39f), {
8853
+ })]) : $3hooq$solidjsweb.escape([parent_title_if_exists() ? $3hooq$solidjsweb.ssr($0677d509ad208e22$var$_tmpl$4, $3hooq$solidjsweb.ssrHydrationKey(), $3hooq$solidjsweb.escape($3hooq$solidjsweb.createComponent((0, $23c3f390dee33ff8$export$ba17c5b7e6dda39f), {
8899
8854
  class_: "category line-clamp",
8900
8855
  get whole_text_to_display_() {
8901
8856
  return $3hooq$solidjs.createMemo(() => input_obj().title);
8902
8857
  },
8903
8858
  searching_for_value_: searching_for_value_
8904
- })), $3hooq$solidjsweb.escape(input_obj().parent_title)) : input_obj().type === "content" ? $3hooq$solidjsweb.ssr($0677d509ad208e22$var$_tmpl$5, $3hooq$solidjsweb.ssrHydrationKey(), $3hooq$solidjsweb.escape($3hooq$solidjsweb.createComponent((0, $3cf7b4db1e203c93$export$605674723bcc715c), {
8859
+ })), $3hooq$solidjsweb.escape(parent_title_if_exists())) : input_obj().type === "content" ? $3hooq$solidjsweb.ssr($0677d509ad208e22$var$_tmpl$5, $3hooq$solidjsweb.ssrHydrationKey(), $3hooq$solidjsweb.escape($3hooq$solidjsweb.createComponent((0, $3cf7b4db1e203c93$export$605674723bcc715c), {
8905
8860
  width: "16",
8906
8861
  height: "16"
8907
8862
  })), $3hooq$solidjsweb.escape($3hooq$solidjsweb.createComponent((0, $23c3f390dee33ff8$export$ba17c5b7e6dda39f), {
@@ -8918,7 +8873,7 @@ function $0677d509ad208e22$export$e872e2339fb04a7f(_ref) {
8918
8873
  searching_for_value_: searching_for_value_
8919
8874
  }), $3hooq$solidjsweb.ssr($0677d509ad208e22$var$_tmpl$3, $3hooq$solidjsweb.ssrHydrationKey(), $3hooq$solidjsweb.escape($3hooq$solidjs.createMemo(() => {
8920
8875
  if (input_obj().type === "content") return i18n_.content_();
8921
- if (input_obj().category_type === "BRAND") return i18n_.brand_();
8876
+ if (input_obj().category_type === "brand") return i18n_.brand_();
8922
8877
  return i18n_.category_();
8923
8878
  })()))]));
8924
8879
  };
@@ -10418,7 +10373,6 @@ class $ddd39c5f36f49703$export$ac6237957a15b3f0 {
10418
10373
  url_transformer: url_transformer,
10419
10374
  on_navigation: on_navigation,
10420
10375
  enable_category_suggestions = true,
10421
- page_url_creator: page_url_creator,
10422
10376
  display_transformers: display_transformers,
10423
10377
  api: api,
10424
10378
  // Stuff needed for non-standard customer deployments that we shouldn't actually expose
@@ -10497,7 +10451,6 @@ class $ddd39c5f36f49703$export$ac6237957a15b3f0 {
10497
10451
  });
10498
10452
  // @ts-ignore
10499
10453
  const depict_api_ = api !== null && api !== void 0 ? api : new (0, $e270e9f953fcbc58$export$e015ed2f2950f2e3)({
10500
- page_url_creator: page_url_creator,
10501
10454
  display_transformers: display_transformers
10502
10455
  });
10503
10456
  const previous_searches = $cfeb65948dbdcaab$export$84bba84a7b837187(get_search_query_);
@@ -2,16 +2,15 @@ import { JSX, Signal, Accessor, Setter } from "solid-js";
2
2
  import { Amazing_Slider, Node_Array, Display, report, ColsAtSize, Elem, ModernDisplay } from "@depict-ai/utilishared/ES10";
3
3
  import { SearchFilter, SortModel, SearchRequestV3 } from "@depict-ai/types/api/SearchRequestV3";
4
4
  import { SearchFilter as _SearchFilter1, ContentLink, SearchResponse } from "@depict-ai/types/api/SearchResponse";
5
- import { CategorySuggestion } from "@depict-ai/types/api/SearchSuggestionsResponseV3";
5
+ import { CategorySuggestion, SearchSuggestionsResponseV3 } from "@depict-ai/types/api/SearchSuggestionsResponseV3";
6
6
  import { Breadcrumb, Quicklink, GetListingResponse } from "@depict-ai/types/api/GetListingResponse";
7
- import { LegacyCategorySuggestion, SearchSuggestionsResponse } from "@depict-ai/types/api/SearchSuggestionsResponse";
8
7
  import { ProductListingResponseV3 } from "@depict-ai/types/api/ProductListingResponseV3";
9
8
  import { SearchSuggestionsRequestV3 } from "@depict-ai/types/api/SearchSuggestionsRequestV3";
10
9
  import { ProductListingRequestV3 } from "@depict-ai/types/api/ProductListingRequestV3";
11
10
  import { GetListingRequest } from "@depict-ai/types/api/GetListingRequest";
12
11
  import { BaseSearchRequestV3 } from "@depict-ai/types/api/BaseSearchRequestV3";
13
12
  import { SearchFilter as _SearchFilter2 } from "@depict-ai/types/api/SearchRequestV2";
14
- export const version = "3.0.1";
13
+ export const version = "3.0.3";
15
14
  /** @jsxImportSource solid-js */
16
15
  export function GenericSliderArrowButton(props?: {
17
16
  width_?: number;
@@ -603,56 +602,23 @@ export type DisplayTransformers<InputDisplay extends ModernDisplay, OutputDispla
603
602
  products?: (options: DisplayTransformerAlwaysThereData & {
604
603
  displays: InputDisplay[];
605
604
  }) => CanBePromiseWrapped<OutputDisplay extends ModernDisplay ? ModernDisplayWithPageUrl<OutputDisplay>[] : never>;
606
- categories?: (options: DisplayTransformerAlwaysThereData & {
607
- data: (Breadcrumb | Quicklink | CategorySuggestion)[];
608
- }) => CanBePromiseWrapped<{
605
+ categories?: <T extends Breadcrumb | Quicklink | CategorySuggestion>(options: DisplayTransformerAlwaysThereData & {
606
+ data: T[];
607
+ }) => CanBePromiseWrapped<(T & {
609
608
  page_url: string;
610
- }[]>;
609
+ })[]>;
611
610
  contentResults?: (options: DisplayTransformerAlwaysThereData & {
612
611
  data: ContentLink[];
613
612
  }) => CanBePromiseWrapped<ContentLink[]>;
614
613
  };
615
- export type SomethingTakingAPageURLCreatorOrDisplayTransformers<InputDisplay extends Display, OutputDisplay extends ModernDisplay | never> = InputDisplay extends ModernDisplay ? "page_url" extends keyof InputDisplay["variant_displays"][number] ? {
616
- page_url_creator?: PageURLCreator<InputDisplay, OutputDisplay>;
617
- display_transformers?: never;
618
- } | {
619
- page_url_creator?: never;
614
+ export type SomethingTakingADisplayTransformers<InputDisplay extends Display, OutputDisplay extends ModernDisplay | never> = InputDisplay extends ModernDisplay ? "page_url" extends keyof InputDisplay["variant_displays"][number] ? {
620
615
  display_transformers: DisplayTransformers<InputDisplay, OutputDisplay>;
621
616
  } : {
622
- page_url_creator: PageURLCreator<InputDisplay, OutputDisplay>;
623
- display_transformers?: never;
624
- } | {
625
617
  display_transformers: DisplayTransformers<InputDisplay, OutputDisplay>;
626
- page_url_creator?: never;
627
618
  } : {
628
619
  page_url_creator?: never;
629
620
  display_transformers?: never;
630
621
  };
631
- type PageURLCreatorAlwaysThereData = {
632
- merchant: string;
633
- market: string;
634
- };
635
- type PageURLCreatorCategoryData = {
636
- type: "categories";
637
- data: (Breadcrumb | Quicklink | CategorySuggestion)[];
638
- };
639
- type PageURLCreatorProductData<T extends ModernDisplay> = {
640
- displays: T[];
641
- type: "products";
642
- };
643
- type PageURLCreatorOptions<InputDisplay extends ModernDisplay> = PageURLCreatorAlwaysThereData & (PageURLCreatorCategoryData | PageURLCreatorProductData<InputDisplay>);
644
- /**
645
- * @deprecated use DisplayTransformers instead
646
- * PageUrlCreator is, in its most basic form, a function that takes in a list of categories or products and returns a list of page_urls for the provided categories or products.
647
- * It's main use case is to allow for the creation of links to the product or category pages on the merchant's site.
648
- * It can also be used for the depict customers which already have links to change those links (i.e. for staging sites).
649
- * Also, it can be used to enrich the data for each product card in a batched way, which is why it can be an async function and return a whole display in the case of products.
650
- */
651
- export type PageURLCreator<InputDisplay extends ModernDisplay, OutputDisplay extends ModernDisplay | never> = (options: PageURLCreatorOptions<InputDisplay>) => (typeof options)["type"] extends "categories" ? CanBePromiseWrapped<{
652
- page_url: string;
653
- }[]> : CanBePromiseWrapped<{
654
- page_url: string;
655
- }[]> | CanBePromiseWrapped<OutputDisplay extends ModernDisplay ? ModernDisplayWithPageUrl<OutputDisplay>[] : never>;
656
622
  export type ExclusiveId = {
657
623
  categoryId: string;
658
624
  productId?: undefined;
@@ -723,29 +689,29 @@ export type InstantCard<T extends Display> = (display: T, context: {
723
689
  merchant: string;
724
690
  market: string;
725
691
  }) => JSX.Element;
726
- type CategorySuggestionAfterURLCreator = LegacyCategorySuggestion & {
692
+ type CategorySuggestionAfterURLCreator = CategorySuggestion & {
727
693
  page_url: string;
728
694
  };
729
- type ReplaceCategorySuggestion<T> = T extends LegacyCategorySuggestion ? CategorySuggestionAfterURLCreator : T extends LegacyCategorySuggestion[] ? CategorySuggestionAfterURLCreator[] : T;
730
- type SearchSuggestionsResponseAfterURLCreator = { [K in keyof SearchSuggestionsResponse]: ReplaceCategorySuggestion<SearchSuggestionsResponse[K]> };
695
+ type ReplaceCategorySuggestion<T> = T extends CategorySuggestion ? CategorySuggestionAfterURLCreator : T extends CategorySuggestion[] ? CategorySuggestionAfterURLCreator[] : T;
696
+ type SearchSuggestionsResponseAfterURLCreator = { [K in keyof SearchSuggestionsResponseV3]: ReplaceCategorySuggestion<SearchSuggestionsResponseV3[K]> };
731
697
  type AddPageUrlToDisplay<T extends any[]> = (T[number] & {
732
698
  page_url: string;
733
699
  })[];
734
- type SearchResponseAfterURLCreator = { [K in keyof SearchResponse]: K extends "displays" ? AddPageUrlToDisplay<SearchResponse[K]> : K extends "filters" ? AddActualFieldToFilters<SearchResponse[K]> : SearchResponse[K] };
700
+ type SearchResponseAfterDisplayTransformer = { [K in keyof SearchResponse]: K extends "displays" ? AddPageUrlToDisplay<SearchResponse[K]> : K extends "filters" ? AddActualFieldToFilters<SearchResponse[K]> : SearchResponse[K] };
735
701
  type QuicklinksOrBreadCrumbsWithPageURL<T extends Breadcrumb | Quicklink> = T & {
736
702
  page_url: string;
737
703
  };
738
704
  type _AddPageUrlToDisplay1<T extends any[]> = (T[number] & {
739
705
  page_url: string;
740
706
  })[];
741
- type ProductListingResponseAfterURLCreator = { [K in keyof ProductListingResponseV3]: K extends "displays" ? _AddPageUrlToDisplay1<ProductListingResponseV3[K]> : K extends "filters" ? AddActualFieldToFilters<ProductListingResponseV3[K]> : ProductListingResponseV3[K] };
742
- type GetListingResponseAfterURLCreator = { [K in keyof GetListingResponse]: K extends "breadcrumbs" ? QuicklinksOrBreadCrumbsWithPageURL<Breadcrumb>[] : K extends "quick_links" ? QuicklinksOrBreadCrumbsWithPageURL<Quicklink>[] : GetListingResponse[K] };
707
+ type ProductListingResponseAfterDisplayTransformer = { [K in keyof ProductListingResponseV3]: K extends "displays" ? _AddPageUrlToDisplay1<ProductListingResponseV3[K]> : K extends "filters" ? AddActualFieldToFilters<ProductListingResponseV3[K]> : ProductListingResponseV3[K] };
708
+ type GetListingResponseAfterDisplayTransformer = { [K in keyof GetListingResponse]: K extends "breadcrumbs" ? QuicklinksOrBreadCrumbsWithPageURL<Breadcrumb>[] : K extends "quick_links" ? QuicklinksOrBreadCrumbsWithPageURL<Quicklink>[] : GetListingResponse[K] };
743
709
  type DepictAPIConstructorOptions<InputDisplay extends Display, OutputDisplay extends ModernDisplay | never> = {
744
710
  get_metadata?: () => Promise<{
745
711
  [k: string]: string;
746
712
  } | undefined>;
747
713
  get_session_id?: () => string | undefined;
748
- } & SomethingTakingAPageURLCreatorOrDisplayTransformers<InputDisplay, OutputDisplay>;
714
+ } & SomethingTakingADisplayTransformers<InputDisplay, OutputDisplay>;
749
715
  interface GetListingOptions extends GetListingRequest {
750
716
  listing_id: string;
751
717
  session_id?: string;
@@ -757,21 +723,20 @@ interface GetListingOptions extends GetListingRequest {
757
723
  */
758
724
  export class DepictAPI<InputDisplay extends Display, OutputDisplay extends ModernDisplay | never = InputDisplay extends ModernDisplay ? ModernDisplayWithPageUrl<InputDisplay> : never> {
759
725
  #private;
760
- page_url_creator: PageURLCreator<ModernDisplay, OutputDisplay> | undefined;
761
726
  display_transformers: DisplayTransformers<ModernDisplay, OutputDisplay> | undefined;
762
727
  constructor(options: DepictAPIConstructorOptions<InputDisplay, OutputDisplay>);
763
728
  suggest(input_req: SearchSuggestionsRequestV3): Promise<SearchSuggestionsResponseAfterURLCreator & {
764
729
  failed?: true;
765
730
  }>;
766
- query(input_req: SearchRequestV3): Promise<SearchResponseAfterURLCreator & {
731
+ query(input_req: SearchRequestV3): Promise<SearchResponseAfterDisplayTransformer & {
767
732
  failed?: true;
768
733
  }>;
769
- get_listing(input_req: GetListingOptions): Promise<GetListingResponseAfterURLCreator & {
734
+ get_listing(input_req: GetListingOptions): Promise<GetListingResponseAfterDisplayTransformer & {
770
735
  failed?: true;
771
736
  }>;
772
737
  get_listing_products(input_req: ProductListingRequestV3 & {
773
738
  listing_id: string;
774
- }): Promise<ProductListingResponseAfterURLCreator & {
739
+ }): Promise<ProductListingResponseAfterDisplayTransformer & {
775
740
  failed?: true;
776
741
  }>;
777
742
  get_recommended<T extends Display>(input_req: BaseSearchRequestV3): Promise<{
@@ -823,7 +788,7 @@ type CategoryConstructorOptionsWithApi<InputDisplay extends Display, OutputDispl
823
788
  };
824
789
  type CategoryConstructorOptionsWithoutApi<InputDisplay extends Display, OutputDisplay extends ModernDisplay | never> = GeneralCategoryListingOptions & {
825
790
  api?: never;
826
- } & SomethingTakingAPageURLCreatorOrDisplayTransformers<InputDisplay, OutputDisplay>;
791
+ } & SomethingTakingADisplayTransformers<InputDisplay, OutputDisplay>;
827
792
  type DepictCategoryConstructorOptions<InputDisplay extends Display, OutputDisplay extends ModernDisplay> = CategoryConstructorOptionsWithApi<InputDisplay, OutputDisplay> | CategoryConstructorOptionsWithoutApi<InputDisplay, OutputDisplay>;
828
793
  export class DepictCategory<InputDisplay extends Display, OutputDisplay extends ModernDisplay | never = InputDisplay extends ModernDisplay ? ModernDisplayWithPageUrl<InputDisplay> : never> {
829
794
  #private;
@@ -844,7 +809,6 @@ export class DepictCategory<InputDisplay extends Display, OutputDisplay extends
844
809
  constructor({
845
810
  api,
846
811
  on_navigation,
847
- page_url_creator,
848
812
  display_transformers,
849
813
  unique_instance_key_for_state,
850
814
  listing_id_state_key,
@@ -871,12 +835,12 @@ export function BreadCrumbs<T extends Display>({
871
835
  depict_category
872
836
  }: {
873
837
  depict_category: DepictCategory<T>;
874
- }): JSX.Element;
838
+ }): HTMLDivElement;
875
839
  export function QuickLinks<T extends Display>({
876
840
  depict_category
877
841
  }: {
878
842
  depict_category: DepictCategory<T>;
879
- }): JSX.Element;
843
+ }): HTMLDivElement;
880
844
  /**
881
845
  * Gets available listings for a given merchant, market and locale
882
846
  */
@@ -929,7 +893,7 @@ type ConstructorOptionsWithApi<InputDisplay extends Display, OutputDisplay exten
929
893
  };
930
894
  type ConstructorOptionsWithoutAPI<InputDisplay extends Display, OutputDisplay extends ModernDisplay | never> = GeneralConstructorOptions<InputDisplay, OutputDisplay> & {
931
895
  api?: never;
932
- } & SomethingTakingAPageURLCreatorOrDisplayTransformers<InputDisplay, OutputDisplay>;
896
+ } & SomethingTakingADisplayTransformers<InputDisplay, OutputDisplay>;
933
897
  type ConstructorOptions<InputDisplay extends Display, OutputDisplay extends ModernDisplay> = ConstructorOptionsWithApi<InputDisplay, OutputDisplay> | ConstructorOptionsWithoutAPI<InputDisplay, OutputDisplay>;
934
898
  export type OpenModalArguments = [options_for_modal?: {
935
899
  style_props_?: Signal<JSX.CSSProperties>;
@@ -947,7 +911,6 @@ export class DepictSearch<InputDisplay extends Display, OutputDisplay extends Mo
947
911
  url_transformer,
948
912
  on_navigation,
949
913
  enable_category_suggestions,
950
- page_url_creator,
951
914
  display_transformers,
952
915
  api,
953
916
  disable_scrolling_during_modal,
@@ -1024,46 +987,16 @@ export type BaseProviderConfig<InputDisplay extends Display, PossibleTransformed
1024
987
  */
1025
988
  uniqueInstanceKeyForState?: string;
1026
989
  } & (InputDisplay extends ModernDisplay ? "page_url" extends keyof InputDisplay["variant_displays"][number] ? {
1027
- /**
1028
- * @deprecated use displayTransformers instead
1029
- */
1030
- pageURLCreator?: PageURLCreator<InputDisplay, PossibleTransformedDisplay>;
1031
- /**
1032
- * Functions that take in a list of categories, content search results or products and then can transform or enrich the data for each category, content search result or product card in a batched way.
1033
- */
1034
- displayTransformers?: never;
1035
- } | {
1036
- /**
1037
- * @deprecated use displayTransformers instead
1038
- */
1039
- pageURLCreator?: never;
1040
990
  /**
1041
991
  * Functions that take in a list of categories, content search results or products and then can transform or enrich the data for each category, content search result or product card in a batched way.
1042
992
  */
1043
993
  displayTransformers: DisplayTransformers<InputDisplay, PossibleTransformedDisplay>;
1044
994
  } : {
1045
- /**
1046
- * @deprecated use displayTransformers instead
1047
- */
1048
- pageURLCreator: PageURLCreator<InputDisplay, PossibleTransformedDisplay>;
1049
- /**
1050
- * Functions that take in a list of categories, content search results or products and then can transform or enrich the data for each category, content search result or product card in a batched way.
1051
- */
1052
- displayTransformers?: never;
1053
- } | {
1054
995
  /**
1055
996
  * Functions that take in a list of categories, content search results or products and then can transform or enrich the data for each category, content search result or product card in a batched way.
1056
997
  */
1057
998
  displayTransformers: DisplayTransformers<InputDisplay, PossibleTransformedDisplay>;
1058
- /**
1059
- * @deprecated use displayTransformers instead
1060
- */
1061
- pageURLCreator?: never;
1062
999
  } : {
1063
- /**
1064
- * @deprecated use displayTransformers instead
1065
- */
1066
- pageURLCreator?: never;
1067
1000
  /**
1068
1001
  * Functions that take in a list of categories, content search results or products and then can transform or enrich the data for each category, content search result or product card in a batched way.
1069
1002
  */