@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.
@@ -10,7 +10,7 @@ import { createStore as $b8hua$createStore, reconcile as $b8hua$reconcile } from
10
10
  /*! Depict.ai search and product listing SDK */
11
11
  import { register_es_version } from "../../multi_import_deduplicator.mjs";
12
12
  register_es_version("ui", "ES10");
13
- const $8db9a15135765c11$export$83d89fbfd8236492 = "3.0.1";
13
+ const $8db9a15135765c11$export$83d89fbfd8236492 = "3.0.3";
14
14
  const $ca6ab5f08bd28bca$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>'];
15
15
  function $ca6ab5f08bd28bca$export$8be2714ec7f169ee() {
16
16
  var _$escape2, _$escape3;
@@ -4695,7 +4695,6 @@ var $284849364a6ef73a$var$_get_cache_obj_for_endpoint = /*#__PURE__*/new WeakSet
4695
4695
  var $284849364a6ef73a$var$_add_ids_to_request = /*#__PURE__*/new WeakMap();
4696
4696
  var $284849364a6ef73a$var$_get_metadata = /*#__PURE__*/new WeakMap();
4697
4697
  var $284849364a6ef73a$var$_get_session_id = /*#__PURE__*/new WeakMap();
4698
- var $284849364a6ef73a$var$_guard_url_creator_length = /*#__PURE__*/new WeakSet();
4699
4698
  var $284849364a6ef73a$var$_run_url_creator_for_suggest = /*#__PURE__*/new WeakSet();
4700
4699
  var $284849364a6ef73a$var$_run_display_transformers_for_rest = /*#__PURE__*/new WeakSet();
4701
4700
  var $284849364a6ef73a$var$_cached_request = /*#__PURE__*/new WeakSet();
@@ -4704,9 +4703,7 @@ class $284849364a6ef73a$export$e015ed2f2950f2e3 {
4704
4703
  $284849364a6ef73a$var$_classPrivateMethodInitSpec(this, $284849364a6ef73a$var$_cached_request);
4705
4704
  $284849364a6ef73a$var$_classPrivateMethodInitSpec(this, $284849364a6ef73a$var$_run_display_transformers_for_rest);
4706
4705
  $284849364a6ef73a$var$_classPrivateMethodInitSpec(this, $284849364a6ef73a$var$_run_url_creator_for_suggest);
4707
- $284849364a6ef73a$var$_classPrivateMethodInitSpec(this, $284849364a6ef73a$var$_guard_url_creator_length);
4708
4706
  $284849364a6ef73a$var$_classPrivateMethodInitSpec(this, $284849364a6ef73a$var$_get_cache_obj_for_endpoint);
4709
- $b8hua$babelruntimehelpersdefineProperty(this, "page_url_creator", void 0);
4710
4707
  $b8hua$babelruntimehelpersdefineProperty(this, "display_transformers", void 0);
4711
4708
  $284849364a6ef73a$var$_classPrivateFieldInitSpec(this, $284849364a6ef73a$var$_supports_finalization_registry, {
4712
4709
  writable: true,
@@ -4738,18 +4735,15 @@ class $284849364a6ef73a$export$e015ed2f2950f2e3 {
4738
4735
  const {
4739
4736
  get_metadata: get_metadata,
4740
4737
  get_session_id: _get_session_id2,
4741
- page_url_creator: _page_url_creator,
4742
4738
  display_transformers: _display_transformers
4743
4739
  } = options !== null && options !== void 0 ? options : {};
4744
4740
  $b8hua$babelruntimehelpersclassPrivateFieldSet(this, $284849364a6ef73a$var$_get_metadata, get_metadata);
4745
4741
  $b8hua$babelruntimehelpersclassPrivateFieldSet(this, $284849364a6ef73a$var$_get_session_id, _get_session_id2);
4746
- this.page_url_creator = _page_url_creator;
4747
4742
  this.display_transformers = _display_transformers;
4748
4743
  }
4749
4744
  async suggest(input_req) {
4750
4745
  var _classPrivateFieldGet3;
4751
4746
  const with_ids = $b8hua$babelruntimehelpersclassPrivateFieldGet(this, $284849364a6ef73a$var$_add_ids_to_request).call(this, input_req);
4752
- const owner = $b8hua$getOwner();
4753
4747
  const metaData = await ((_classPrivateFieldGet3 = $b8hua$babelruntimehelpersclassPrivateFieldGet(this, $284849364a6ef73a$var$_get_metadata)) === null || _classPrivateFieldGet3 === void 0 ? void 0 : _classPrivateFieldGet3.call(this));
4754
4748
  const request = metaData ? Object.assign(with_ids, {
4755
4749
  metadata: JSON.stringify(metaData)
@@ -4761,7 +4755,7 @@ class $284849364a6ef73a$export$e015ed2f2950f2e3 {
4761
4755
  const decoded_json = await results.json();
4762
4756
  if (!Array.isArray(decoded_json === null || decoded_json === void 0 ? void 0 : decoded_json.suggestions)) break attempt_to_return_api_response;
4763
4757
  try {
4764
- return await $b8hua$runWithOwner(owner, () => $284849364a6ef73a$var$_classPrivateMethodGet(this, $284849364a6ef73a$var$_run_url_creator_for_suggest, $284849364a6ef73a$var$_run_url_creator_for_suggest2).call(this, input_req.merchant, input_req.market, decoded_json));
4758
+ return await $284849364a6ef73a$var$_classPrivateMethodGet(this, $284849364a6ef73a$var$_run_url_creator_for_suggest, $284849364a6ef73a$var$_run_url_creator_for_suggest2).call(this, input_req.merchant, input_req.market, decoded_json);
4765
4759
  } catch (e) {
4766
4760
  $b8hua$dwarn("displayTransformer failed", e);
4767
4761
  }
@@ -4848,101 +4842,55 @@ function $284849364a6ef73a$var$_get_cache_obj_for_endpoint2(endpoint) {
4848
4842
  })) : undefined
4849
4843
  });
4850
4844
  }
4851
- function $284849364a6ef73a$var$_guard_url_creator_length2(expected, received) {
4852
- if (expected.length !== received.length) {
4853
- const e = new Error("displayTransformer returned wrong number of page URLs, got " + received.length + ", expected " + expected.length);
4854
- queueMicrotask(() => {
4855
- throw e;
4856
- });
4857
- throw e;
4858
- }
4859
- }
4860
4845
  async function $284849364a6ef73a$var$_run_url_creator_for_suggest2(merchant, market, response) {
4861
4846
  var _this$display_transfo;
4862
- const page_url_creator = this.page_url_creator;
4863
4847
  const category_transformer = (_this$display_transfo = this.display_transformers) === null || _this$display_transfo === void 0 ? void 0 : _this$display_transfo.categories;
4864
- if (!page_url_creator && !category_transformer) return response;
4848
+ if (!category_transformer) return response;
4865
4849
  // find category suggestions, run thing with them, and then replace them
4866
4850
  const category_suggestions = response.suggestions.filter(suggestion => suggestion.type === "category");
4867
- const page_urls = await (page_url_creator || category_transformer)({
4851
+ const transformed_category_suggestions = await category_transformer({
4868
4852
  market: market,
4869
4853
  merchant: merchant,
4870
- data: [...category_suggestions],
4871
- ...(page_url_creator ? {
4872
- type: "categories"
4873
- } : {})
4854
+ data: [...category_suggestions]
4874
4855
  });
4875
- $284849364a6ef73a$var$_classPrivateMethodGet(this, $284849364a6ef73a$var$_guard_url_creator_length, $284849364a6ef73a$var$_guard_url_creator_length2).call(this, category_suggestions, page_urls);
4876
- while (page_urls.length)
4877
- // Copy over getters so we sneakily can make this reactive
4878
- Object.defineProperties(category_suggestions.pop(), Object.getOwnPropertyDescriptors(page_urls.pop()));
4856
+ response.suggestions = transformed_category_suggestions;
4879
4857
  return response;
4880
4858
  }
4881
4859
  async function $284849364a6ef73a$var$_run_display_transformers_for_rest2(merchant, market, input_data) {
4882
4860
  const {
4883
- page_url_creator: page_url_creator,
4884
4861
  display_transformers: display_transformers
4885
4862
  } = this;
4886
- if (!page_url_creator && !display_transformers) return input_data;
4863
+ if (!display_transformers) return input_data;
4887
4864
  const product_transformer = display_transformers === null || display_transformers === void 0 ? void 0 : display_transformers.products;
4888
4865
  const category_transformer = display_transformers === null || display_transformers === void 0 ? void 0 : display_transformers.categories;
4889
4866
  const content_result_transformer = display_transformers === null || display_transformers === void 0 ? void 0 : display_transformers.contentResults;
4890
4867
  const displays = input_data.displays;
4891
- const owner = $b8hua$getOwner();
4892
4868
  const {
4893
- breadcrumbs: breadcrumbs,
4894
- quick_links: quick_links,
4895
4869
  content_search_links: content_search_links
4896
4870
  } = input_data;
4897
- if (displays && (page_url_creator || product_transformer)) {
4898
- const page_urls = await (page_url_creator || product_transformer)({
4871
+ if (displays && product_transformer) {
4872
+ const transformed_displays = await product_transformer({
4899
4873
  merchant: merchant,
4900
4874
  market: market,
4901
- displays: [...input_data.displays],
4902
- ...(page_url_creator ? {
4903
- type: "products"
4904
- } : {})
4875
+ displays: [...displays]
4905
4876
  });
4906
- $284849364a6ef73a$var$_classPrivateMethodGet(this, $284849364a6ef73a$var$_guard_url_creator_length, $284849364a6ef73a$var$_guard_url_creator_length2).call(this, displays, page_urls);
4907
- for (let i = 0; i < displays.length; i++) {
4908
- const new_display_or_page_url = page_urls[i];
4909
- const old_display = displays[i];
4910
- if ("page_url" in new_display_or_page_url && Object.keys(new_display_or_page_url).length === 1) {
4911
- // they only returned page_url, let's put it into the display
4912
- const old_display_was_modern = ("variant_index" in old_display);
4913
- if (old_display_was_modern) {
4914
- const variant_displays = old_display.variant_displays;
4915
- for (let i = 0; i < variant_displays.length; i++) variant_displays[i].page_url = new_display_or_page_url.page_url;
4916
- } else old_display.page_url = new_display_or_page_url.page_url;
4917
- } else
4918
- // We got a whole new display, let's replace it
4919
- displays[i] = new_display_or_page_url;
4920
- }
4877
+ input_data.displays = transformed_displays;
4921
4878
  }
4922
- if (page_url_creator || category_transformer) for (const category_display_array of [breadcrumbs, quick_links]) {
4879
+ if (category_transformer) for (const key of ["breadcrumbs", "quick_links"]) {
4880
+ const category_display_array = input_data[key];
4923
4881
  if (!category_display_array) continue;
4924
- const page_urls = await $b8hua$runWithOwner(owner, () => (page_url_creator || category_transformer)({
4925
- merchant: merchant,
4926
- market: market,
4927
- data: [...category_display_array],
4928
- ...(page_url_creator ? {
4929
- type: "categories"
4930
- } : {})
4931
- }));
4932
- $284849364a6ef73a$var$_classPrivateMethodGet(this, $284849364a6ef73a$var$_guard_url_creator_length, $284849364a6ef73a$var$_guard_url_creator_length2).call(this, category_display_array, page_urls);
4933
- for (let i = 0; i < category_display_array.length; i++)
4934
- // Copy over getters so we sneakily can make this reactive
4935
- Object.defineProperties(category_display_array[i], Object.getOwnPropertyDescriptors(page_urls[i]));
4936
- }
4937
- if (content_search_links !== null && content_search_links !== void 0 && content_search_links.length && content_result_transformer) {
4938
- const result = await $b8hua$runWithOwner(owner, () => content_result_transformer({
4882
+ const transformed_category_displays = await category_transformer({
4939
4883
  merchant: merchant,
4940
4884
  market: market,
4941
- data: [...content_search_links]
4942
- }));
4943
- $284849364a6ef73a$var$_classPrivateMethodGet(this, $284849364a6ef73a$var$_guard_url_creator_length, $284849364a6ef73a$var$_guard_url_creator_length2).call(this, content_search_links, result);
4944
- input_data.content_search_links = result;
4885
+ data: [...category_display_array]
4886
+ });
4887
+ input_data[key] = transformed_category_displays;
4945
4888
  }
4889
+ 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({
4890
+ merchant: merchant,
4891
+ market: market,
4892
+ data: [...content_search_links]
4893
+ });
4946
4894
  return input_data;
4947
4895
  }
4948
4896
  async function $284849364a6ef73a$var$_cached_request2(_ref) {
@@ -4956,7 +4904,6 @@ async function $284849364a6ef73a$var$_cached_request2(_ref) {
4956
4904
  } = _ref;
4957
4905
  const cache_obj = $284849364a6ef73a$var$_classPrivateMethodGet(this, $284849364a6ef73a$var$_get_cache_obj_for_endpoint, $284849364a6ef73a$var$_get_cache_obj_for_endpoint2).call(this, endpoint_);
4958
4906
  const with_ids = $b8hua$babelruntimehelpersclassPrivateFieldGet(this, $284849364a6ef73a$var$_add_ids_to_request).call(this, input_req_);
4959
- const owner = $b8hua$getOwner();
4960
4907
  const metaData = await ((_classPrivateFieldGet5 = $b8hua$babelruntimehelpersclassPrivateFieldGet(this, $284849364a6ef73a$var$_get_metadata)) === null || _classPrivateFieldGet5 === void 0 ? void 0 : _classPrivateFieldGet5.call(this));
4961
4908
  const request = metaData ? Object.assign(with_ids, {
4962
4909
  metadata: metaData
@@ -4984,7 +4931,7 @@ async function $284849364a6ef73a$var$_cached_request2(_ref) {
4984
4931
  let result;
4985
4932
  try {
4986
4933
  const unmodified_result = await api_response.json();
4987
- result = await $b8hua$runWithOwner(owner, () => $284849364a6ef73a$var$_classPrivateMethodGet(this, $284849364a6ef73a$var$_run_display_transformers_for_rest, $284849364a6ef73a$var$_run_display_transformers_for_rest2).call(this, input_req_.merchant, input_req_.market, unmodified_result));
4934
+ result = await $284849364a6ef73a$var$_classPrivateMethodGet(this, $284849364a6ef73a$var$_run_display_transformers_for_rest, $284849364a6ef73a$var$_run_display_transformers_for_rest2).call(this, input_req_.merchant, input_req_.market, unmodified_result);
4988
4935
  } catch (e) {
4989
4936
  $b8hua$dwarn("displayTransformer or json decoding failed", e);
4990
4937
  break return_successfully;
@@ -7805,7 +7752,6 @@ class $f5f54892fd0c7d9f$export$f34314aa9505732e {
7805
7752
  let {
7806
7753
  api: api,
7807
7754
  on_navigation: on_navigation,
7808
- page_url_creator: page_url_creator,
7809
7755
  display_transformers: display_transformers,
7810
7756
  unique_instance_key_for_state = "",
7811
7757
  listing_id_state_key: listing_id_state_key,
@@ -7884,7 +7830,6 @@ class $f5f54892fd0c7d9f$export$f34314aa9505732e {
7884
7830
  reset_history_state_: reset_history_state_,
7885
7831
  // @ts-ignore
7886
7832
  depict_api_: api !== null && api !== void 0 ? api : new (0, $284849364a6ef73a$export$e015ed2f2950f2e3)({
7887
- page_url_creator: page_url_creator,
7888
7833
  display_transformers: display_transformers
7889
7834
  }),
7890
7835
  router_: $b8hua$babelruntimehelpersclassPrivateFieldGet(this, $f5f54892fd0c7d9f$var$_router),
@@ -8216,12 +8161,16 @@ function $dea31647b99a443b$export$d757d54550ebfb3d(_ref) {
8216
8161
  category_suggestion_: category_suggestion_,
8217
8162
  router_: router_
8218
8163
  } = _ref;
8164
+ const parentTitle = $b8hua$createMemo(() => {
8165
+ var _category_suggestion_;
8166
+ return (_category_suggestion_ = category_suggestion_().breadcrumbs.at(-1)) === null || _category_suggestion_ === void 0 ? void 0 : _category_suggestion_.title;
8167
+ });
8219
8168
  return $b8hua$ssr($dea31647b99a443b$var$_tmpl$2, $b8hua$ssrHydrationKey(), $b8hua$ssrAttribute("href", $b8hua$escape(category_suggestion_().page_url, true), false), $b8hua$escape(category_suggestion_().title), $b8hua$escape($b8hua$createComponent((0, $b8hua$Show), {
8220
8169
  get when() {
8221
- return typeof category_suggestion_().parent_title === "string";
8170
+ return parentTitle();
8222
8171
  },
8223
8172
  get children() {
8224
- return $b8hua$ssr($dea31647b99a443b$var$_tmpl$, $b8hua$ssrHydrationKey(), $b8hua$escape(category_suggestion_().parent_title));
8173
+ return $b8hua$ssr($dea31647b99a443b$var$_tmpl$, $b8hua$ssrHydrationKey(), $b8hua$escape(parentTitle()));
8225
8174
  }
8226
8175
  })));
8227
8176
  }
@@ -8808,6 +8757,12 @@ function $40dd3f46f55d62ba$export$e872e2339fb04a7f(_ref) {
8808
8757
  var _read_selected_index_, _read_selected_index_2;
8809
8758
  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;
8810
8759
  });
8760
+ const parent_title_if_exists = $b8hua$createMemo(() => {
8761
+ var _item$breadcrumbs$at;
8762
+ const item = input_obj();
8763
+ if (!("breadcrumbs" in item)) return;
8764
+ return (_item$breadcrumbs$at = item.breadcrumbs.at(-1)) === null || _item$breadcrumbs$at === void 0 ? void 0 : _item$breadcrumbs$at.title;
8765
+ });
8811
8766
  return $b8hua$ssr($40dd3f46f55d62ba$var$_tmpl$, $b8hua$ssrHydrationKey(), "suggestion ".concat(is_selected() ? "selected" : "", " ").concat(is_history ? "history" : "", " ").concat($b8hua$escape($b8hua$escape("type-" + input_obj().type, true), true)), $b8hua$ssrAttribute("href", $b8hua$escape(href(), true), false), is_query() ? $b8hua$escape([$b8hua$createComponent((0, $b8hua$Show), {
8812
8767
  when: is_history,
8813
8768
  get fallback() {
@@ -8822,13 +8777,13 @@ function $40dd3f46f55d62ba$export$e872e2339fb04a7f(_ref) {
8822
8777
  return $b8hua$createMemo(() => input_obj().title);
8823
8778
  },
8824
8779
  searching_for_value_: searching_for_value_
8825
- })]) : $b8hua$escape([typeof input_obj() /* this is a harmless lie */.parent_title === "string" ? $b8hua$ssr($40dd3f46f55d62ba$var$_tmpl$4, $b8hua$ssrHydrationKey(), $b8hua$escape($b8hua$createComponent((0, $02b6641aa50ce528$export$ba17c5b7e6dda39f), {
8780
+ })]) : $b8hua$escape([parent_title_if_exists() ? $b8hua$ssr($40dd3f46f55d62ba$var$_tmpl$4, $b8hua$ssrHydrationKey(), $b8hua$escape($b8hua$createComponent((0, $02b6641aa50ce528$export$ba17c5b7e6dda39f), {
8826
8781
  class_: "category line-clamp",
8827
8782
  get whole_text_to_display_() {
8828
8783
  return $b8hua$createMemo(() => input_obj().title);
8829
8784
  },
8830
8785
  searching_for_value_: searching_for_value_
8831
- })), $b8hua$escape(input_obj().parent_title)) : input_obj().type === "content" ? $b8hua$ssr($40dd3f46f55d62ba$var$_tmpl$5, $b8hua$ssrHydrationKey(), $b8hua$escape($b8hua$createComponent((0, $3c5e15c6ee4227a9$export$605674723bcc715c), {
8786
+ })), $b8hua$escape(parent_title_if_exists())) : input_obj().type === "content" ? $b8hua$ssr($40dd3f46f55d62ba$var$_tmpl$5, $b8hua$ssrHydrationKey(), $b8hua$escape($b8hua$createComponent((0, $3c5e15c6ee4227a9$export$605674723bcc715c), {
8832
8787
  width: "16",
8833
8788
  height: "16"
8834
8789
  })), $b8hua$escape($b8hua$createComponent((0, $02b6641aa50ce528$export$ba17c5b7e6dda39f), {
@@ -8845,7 +8800,7 @@ function $40dd3f46f55d62ba$export$e872e2339fb04a7f(_ref) {
8845
8800
  searching_for_value_: searching_for_value_
8846
8801
  }), $b8hua$ssr($40dd3f46f55d62ba$var$_tmpl$3, $b8hua$ssrHydrationKey(), $b8hua$escape($b8hua$createMemo(() => {
8847
8802
  if (input_obj().type === "content") return i18n_.content_();
8848
- if (input_obj().category_type === "BRAND") return i18n_.brand_();
8803
+ if (input_obj().category_type === "brand") return i18n_.brand_();
8849
8804
  return i18n_.category_();
8850
8805
  })()))]));
8851
8806
  };
@@ -10345,7 +10300,6 @@ class $eb064bc3350276c1$export$ac6237957a15b3f0 {
10345
10300
  url_transformer: url_transformer,
10346
10301
  on_navigation: on_navigation,
10347
10302
  enable_category_suggestions = true,
10348
- page_url_creator: page_url_creator,
10349
10303
  display_transformers: display_transformers,
10350
10304
  api: api,
10351
10305
  // Stuff needed for non-standard customer deployments that we shouldn't actually expose
@@ -10424,7 +10378,6 @@ class $eb064bc3350276c1$export$ac6237957a15b3f0 {
10424
10378
  });
10425
10379
  // @ts-ignore
10426
10380
  const depict_api_ = api !== null && api !== void 0 ? api : new (0, $284849364a6ef73a$export$e015ed2f2950f2e3)({
10427
- page_url_creator: page_url_creator,
10428
10381
  display_transformers: display_transformers
10429
10382
  });
10430
10383
  const previous_searches = $07d90b8270ece8de$export$84bba84a7b837187(get_search_query_);
@@ -77,7 +77,7 @@ $parcel$export(module.exports, "defaultColsAtSize", () => $a3280f0aad997933$expo
77
77
  $parcel$export(module.exports, "defaultCategoryTitlePlugin", () => $a3280f0aad997933$export$7bf543b9d9be2c22);
78
78
  $parcel$export(module.exports, "version", () => $b757f75811f3261f$export$83d89fbfd8236492);
79
79
  /*! Depict.ai search and product listing SDK */
80
- const $b757f75811f3261f$export$83d89fbfd8236492 = "3.0.1";
80
+ const $b757f75811f3261f$export$83d89fbfd8236492 = "3.0.3";
81
81
  const $0f313083912e447a$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>'];
82
82
  function $0f313083912e447a$export$8be2714ec7f169ee(props = {}) {
83
83
  return $5vyXB$solidjsweb.ssr($0f313083912e447a$var$_tmpl$, $5vyXB$solidjsweb.ssrHydrationKey(), $5vyXB$solidjsweb.ssrAttribute("width", $5vyXB$solidjsweb.escape(props.width_, true) ?? 14, false) + $5vyXB$solidjsweb.ssrAttribute("height", $5vyXB$solidjsweb.escape(props.height_, true) ?? 26, false));
@@ -4475,100 +4475,54 @@ class $e1d6c0f3d89d531c$export$e015ed2f2950f2e3 {
4475
4475
  };
4476
4476
  #get_metadata;
4477
4477
  #get_session_id;
4478
- #guard_url_creator_length(expected, received) {
4479
- if (expected.length !== received.length) {
4480
- const e = new Error("displayTransformer returned wrong number of page URLs, got " + received.length + ", expected " + expected.length);
4481
- queueMicrotask(() => {
4482
- throw e;
4483
- });
4484
- throw e;
4485
- }
4486
- }
4487
4478
  async #run_url_creator_for_suggest(merchant, market, response) {
4488
- const page_url_creator = this.page_url_creator;
4489
4479
  const category_transformer = this.display_transformers?.categories;
4490
- if (!page_url_creator && !category_transformer) return response;
4480
+ if (!category_transformer) return response;
4491
4481
  // find category suggestions, run thing with them, and then replace them
4492
4482
  const category_suggestions = response.suggestions.filter(suggestion => suggestion.type === "category");
4493
- const page_urls = await (page_url_creator || category_transformer)({
4483
+ const transformed_category_suggestions = await category_transformer({
4494
4484
  market: market,
4495
4485
  merchant: merchant,
4496
- data: [...category_suggestions],
4497
- ...(page_url_creator ? {
4498
- type: "categories"
4499
- } : {})
4486
+ data: [...category_suggestions]
4500
4487
  });
4501
- this.#guard_url_creator_length(category_suggestions, page_urls);
4502
- while (page_urls.length)
4503
- // Copy over getters so we sneakily can make this reactive
4504
- Object.defineProperties(category_suggestions.pop(), Object.getOwnPropertyDescriptors(page_urls.pop()));
4488
+ response.suggestions = transformed_category_suggestions;
4505
4489
  return response;
4506
4490
  }
4507
4491
  async #run_display_transformers_for_rest(merchant, market, input_data) {
4508
4492
  const {
4509
- page_url_creator: page_url_creator,
4510
4493
  display_transformers: display_transformers
4511
4494
  } = this;
4512
- if (!page_url_creator && !display_transformers) return input_data;
4495
+ if (!display_transformers) return input_data;
4513
4496
  const product_transformer = display_transformers?.products;
4514
4497
  const category_transformer = display_transformers?.categories;
4515
4498
  const content_result_transformer = display_transformers?.contentResults;
4516
4499
  const displays = input_data.displays;
4517
- const owner = $5vyXB$solidjs.getOwner();
4518
4500
  const {
4519
- breadcrumbs: breadcrumbs,
4520
- quick_links: quick_links,
4521
4501
  content_search_links: content_search_links
4522
4502
  } = input_data;
4523
- if (displays && (page_url_creator || product_transformer)) {
4524
- const page_urls = await (page_url_creator || product_transformer)({
4503
+ if (displays && product_transformer) {
4504
+ const transformed_displays = await product_transformer({
4525
4505
  merchant: merchant,
4526
4506
  market: market,
4527
- displays: [...input_data.displays],
4528
- ...(page_url_creator ? {
4529
- type: "products"
4530
- } : {})
4507
+ displays: [...displays]
4531
4508
  });
4532
- this.#guard_url_creator_length(displays, page_urls);
4533
- for (let i = 0; i < displays.length; i++) {
4534
- const new_display_or_page_url = page_urls[i];
4535
- const old_display = displays[i];
4536
- if ("page_url" in new_display_or_page_url && Object.keys(new_display_or_page_url).length === 1) {
4537
- // they only returned page_url, let's put it into the display
4538
- const old_display_was_modern = ("variant_index" in old_display);
4539
- if (old_display_was_modern) {
4540
- const variant_displays = old_display.variant_displays;
4541
- for (let i = 0; i < variant_displays.length; i++) variant_displays[i].page_url = new_display_or_page_url.page_url;
4542
- } else old_display.page_url = new_display_or_page_url.page_url;
4543
- } else
4544
- // We got a whole new display, let's replace it
4545
- displays[i] = new_display_or_page_url;
4546
- }
4509
+ input_data.displays = transformed_displays;
4547
4510
  }
4548
- if (page_url_creator || category_transformer) for (const category_display_array of [breadcrumbs, quick_links]) {
4511
+ if (category_transformer) for (const key of ["breadcrumbs", "quick_links"]) {
4512
+ const category_display_array = input_data[key];
4549
4513
  if (!category_display_array) continue;
4550
- const page_urls = await $5vyXB$solidjs.runWithOwner(owner, () => (page_url_creator || category_transformer)({
4551
- merchant: merchant,
4552
- market: market,
4553
- data: [...category_display_array],
4554
- ...(page_url_creator ? {
4555
- type: "categories"
4556
- } : {})
4557
- }));
4558
- this.#guard_url_creator_length(category_display_array, page_urls);
4559
- for (let i = 0; i < category_display_array.length; i++)
4560
- // Copy over getters so we sneakily can make this reactive
4561
- Object.defineProperties(category_display_array[i], Object.getOwnPropertyDescriptors(page_urls[i]));
4562
- }
4563
- if (content_search_links?.length && content_result_transformer) {
4564
- const result = await $5vyXB$solidjs.runWithOwner(owner, () => content_result_transformer({
4514
+ const transformed_category_displays = await category_transformer({
4565
4515
  merchant: merchant,
4566
4516
  market: market,
4567
- data: [...content_search_links]
4568
- }));
4569
- this.#guard_url_creator_length(content_search_links, result);
4570
- input_data.content_search_links = result;
4517
+ data: [...category_display_array]
4518
+ });
4519
+ input_data[key] = transformed_category_displays;
4571
4520
  }
4521
+ if (content_search_links?.length && content_result_transformer) input_data.content_search_links = await content_result_transformer({
4522
+ merchant: merchant,
4523
+ market: market,
4524
+ data: [...content_search_links]
4525
+ });
4572
4526
  return input_data;
4573
4527
  }
4574
4528
  async #cached_request({
@@ -4580,7 +4534,6 @@ class $e1d6c0f3d89d531c$export$e015ed2f2950f2e3 {
4580
4534
  }) {
4581
4535
  const cache_obj = this.#get_cache_obj_for_endpoint(endpoint_);
4582
4536
  const with_ids = this.#add_ids_to_request(input_req_);
4583
- const owner = $5vyXB$solidjs.getOwner();
4584
4537
  const metaData = await this.#get_metadata?.();
4585
4538
  const request = metaData ? Object.assign(with_ids, {
4586
4539
  metadata: metaData
@@ -4608,7 +4561,7 @@ class $e1d6c0f3d89d531c$export$e015ed2f2950f2e3 {
4608
4561
  let result;
4609
4562
  try {
4610
4563
  const unmodified_result = await api_response.json();
4611
- result = await $5vyXB$solidjs.runWithOwner(owner, () => this.#run_display_transformers_for_rest(input_req_.merchant, input_req_.market, unmodified_result));
4564
+ result = await this.#run_display_transformers_for_rest(input_req_.merchant, input_req_.market, unmodified_result);
4612
4565
  } catch (e) {
4613
4566
  $5vyXB$depictaiutilishared.dwarn("displayTransformer or json decoding failed", e);
4614
4567
  break return_successfully;
@@ -4639,17 +4592,14 @@ class $e1d6c0f3d89d531c$export$e015ed2f2950f2e3 {
4639
4592
  const {
4640
4593
  get_metadata: get_metadata,
4641
4594
  get_session_id: get_session_id,
4642
- page_url_creator: page_url_creator,
4643
4595
  display_transformers: display_transformers
4644
4596
  } = options ?? {};
4645
4597
  this.#get_metadata = get_metadata;
4646
4598
  this.#get_session_id = get_session_id;
4647
- this.page_url_creator = page_url_creator;
4648
4599
  this.display_transformers = display_transformers;
4649
4600
  }
4650
4601
  async suggest(input_req) {
4651
4602
  const with_ids = this.#add_ids_to_request(input_req);
4652
- const owner = $5vyXB$solidjs.getOwner();
4653
4603
  const metaData = await this.#get_metadata?.();
4654
4604
  const request = metaData ? Object.assign(with_ids, {
4655
4605
  metadata: JSON.stringify(metaData)
@@ -4661,7 +4611,7 @@ class $e1d6c0f3d89d531c$export$e015ed2f2950f2e3 {
4661
4611
  const decoded_json = await results.json();
4662
4612
  if (!Array.isArray(decoded_json?.suggestions)) break attempt_to_return_api_response;
4663
4613
  try {
4664
- return await $5vyXB$solidjs.runWithOwner(owner, () => this.#run_url_creator_for_suggest(input_req.merchant, input_req.market, decoded_json));
4614
+ return await this.#run_url_creator_for_suggest(input_req.merchant, input_req.market, decoded_json);
4665
4615
  } catch (e) {
4666
4616
  $5vyXB$depictaiutilishared.dwarn("displayTransformer failed", e);
4667
4617
  }
@@ -7328,7 +7278,6 @@ class $48567ac5b39bac56$export$f34314aa9505732e {
7328
7278
  constructor({
7329
7279
  api: api,
7330
7280
  on_navigation: on_navigation,
7331
- page_url_creator: page_url_creator,
7332
7281
  display_transformers: display_transformers,
7333
7282
  unique_instance_key_for_state = "",
7334
7283
  listing_id_state_key: listing_id_state_key,
@@ -7379,7 +7328,6 @@ class $48567ac5b39bac56$export$f34314aa9505732e {
7379
7328
  reset_history_state_: reset_history_state_,
7380
7329
  // @ts-ignore
7381
7330
  depict_api_: api ?? new (0, $e1d6c0f3d89d531c$export$e015ed2f2950f2e3)({
7382
- page_url_creator: page_url_creator,
7383
7331
  display_transformers: display_transformers
7384
7332
  }),
7385
7333
  router_: this.#router,
@@ -7691,12 +7639,13 @@ function $dae23104ba8bb78c$export$d757d54550ebfb3d({
7691
7639
  category_suggestion_: category_suggestion_,
7692
7640
  router_: router_
7693
7641
  }) {
7642
+ const parentTitle = $5vyXB$solidjs.createMemo(() => category_suggestion_().breadcrumbs.at(-1)?.title);
7694
7643
  return $5vyXB$solidjsweb.ssr($dae23104ba8bb78c$var$_tmpl$2, $5vyXB$solidjsweb.ssrHydrationKey(), $5vyXB$solidjsweb.ssrAttribute("href", $5vyXB$solidjsweb.escape(category_suggestion_().page_url, true), false), $5vyXB$solidjsweb.escape(category_suggestion_().title), $5vyXB$solidjsweb.escape($5vyXB$solidjsweb.createComponent((0, $5vyXB$solidjs.Show), {
7695
7644
  get when() {
7696
- return typeof category_suggestion_().parent_title === "string";
7645
+ return parentTitle();
7697
7646
  },
7698
7647
  get children() {
7699
- return $5vyXB$solidjsweb.ssr($dae23104ba8bb78c$var$_tmpl$, $5vyXB$solidjsweb.ssrHydrationKey(), $5vyXB$solidjsweb.escape(category_suggestion_().parent_title));
7648
+ return $5vyXB$solidjsweb.ssr($dae23104ba8bb78c$var$_tmpl$, $5vyXB$solidjsweb.ssrHydrationKey(), $5vyXB$solidjsweb.escape(parentTitle()));
7700
7649
  }
7701
7650
  })));
7702
7651
  }
@@ -8240,6 +8189,11 @@ function $6b65ba8af12c5a26$export$e872e2339fb04a7f({
8240
8189
  }) : undefined);
8241
8190
  const href = $5vyXB$solidjs.createMemo(() => is_query() ? href_with_changed_params_accessor()() : input_obj().page_url);
8242
8191
  const is_selected = $5vyXB$solidjs.createMemo(() => read_selected_index_()?.[0] === autocomplete_data_index && read_selected_index_()?.[1] === index);
8192
+ const parent_title_if_exists = $5vyXB$solidjs.createMemo(() => {
8193
+ const item = input_obj();
8194
+ if (!("breadcrumbs" in item)) return;
8195
+ return item.breadcrumbs.at(-1)?.title;
8196
+ });
8243
8197
  return $5vyXB$solidjsweb.ssr($6b65ba8af12c5a26$var$_tmpl$, $5vyXB$solidjsweb.ssrHydrationKey(), `suggestion ${is_selected() ? "selected" : ""} ${is_history ? "history" : ""} ${$5vyXB$solidjsweb.escape($5vyXB$solidjsweb.escape("type-" + input_obj().type, true), true)}`, $5vyXB$solidjsweb.ssrAttribute("href", $5vyXB$solidjsweb.escape(href(), true), false), is_query() ? $5vyXB$solidjsweb.escape([$5vyXB$solidjsweb.createComponent((0, $5vyXB$solidjs.Show), {
8244
8198
  when: is_history,
8245
8199
  get fallback() {
@@ -8254,13 +8208,13 @@ function $6b65ba8af12c5a26$export$e872e2339fb04a7f({
8254
8208
  return $5vyXB$solidjs.createMemo(() => input_obj().title);
8255
8209
  },
8256
8210
  searching_for_value_: searching_for_value_
8257
- })]) : $5vyXB$solidjsweb.escape([typeof input_obj() /* this is a harmless lie */.parent_title === "string" ? $5vyXB$solidjsweb.ssr($6b65ba8af12c5a26$var$_tmpl$4, $5vyXB$solidjsweb.ssrHydrationKey(), $5vyXB$solidjsweb.escape($5vyXB$solidjsweb.createComponent((0, $d023ed916c84e75d$export$ba17c5b7e6dda39f), {
8211
+ })]) : $5vyXB$solidjsweb.escape([parent_title_if_exists() ? $5vyXB$solidjsweb.ssr($6b65ba8af12c5a26$var$_tmpl$4, $5vyXB$solidjsweb.ssrHydrationKey(), $5vyXB$solidjsweb.escape($5vyXB$solidjsweb.createComponent((0, $d023ed916c84e75d$export$ba17c5b7e6dda39f), {
8258
8212
  class_: "category line-clamp",
8259
8213
  get whole_text_to_display_() {
8260
8214
  return $5vyXB$solidjs.createMemo(() => input_obj().title);
8261
8215
  },
8262
8216
  searching_for_value_: searching_for_value_
8263
- })), $5vyXB$solidjsweb.escape(input_obj().parent_title)) : input_obj().type === "content" ? $5vyXB$solidjsweb.ssr($6b65ba8af12c5a26$var$_tmpl$5, $5vyXB$solidjsweb.ssrHydrationKey(), $5vyXB$solidjsweb.escape($5vyXB$solidjsweb.createComponent((0, $c0125412b4ea0c93$export$605674723bcc715c), {
8217
+ })), $5vyXB$solidjsweb.escape(parent_title_if_exists())) : input_obj().type === "content" ? $5vyXB$solidjsweb.ssr($6b65ba8af12c5a26$var$_tmpl$5, $5vyXB$solidjsweb.ssrHydrationKey(), $5vyXB$solidjsweb.escape($5vyXB$solidjsweb.createComponent((0, $c0125412b4ea0c93$export$605674723bcc715c), {
8264
8218
  width: "16",
8265
8219
  height: "16"
8266
8220
  })), $5vyXB$solidjsweb.escape($5vyXB$solidjsweb.createComponent((0, $d023ed916c84e75d$export$ba17c5b7e6dda39f), {
@@ -8277,7 +8231,7 @@ function $6b65ba8af12c5a26$export$e872e2339fb04a7f({
8277
8231
  searching_for_value_: searching_for_value_
8278
8232
  }), $5vyXB$solidjsweb.ssr($6b65ba8af12c5a26$var$_tmpl$3, $5vyXB$solidjsweb.ssrHydrationKey(), $5vyXB$solidjsweb.escape($5vyXB$solidjs.createMemo(() => {
8279
8233
  if (input_obj().type === "content") return i18n_.content_();
8280
- if (input_obj().category_type === "BRAND") return i18n_.brand_();
8234
+ if (input_obj().category_type === "brand") return i18n_.brand_();
8281
8235
  return i18n_.category_();
8282
8236
  })()))]));
8283
8237
  };
@@ -9649,7 +9603,6 @@ class $2c61e4cd8229c49a$export$ac6237957a15b3f0 {
9649
9603
  url_transformer: url_transformer,
9650
9604
  on_navigation: on_navigation,
9651
9605
  enable_category_suggestions = true,
9652
- page_url_creator: page_url_creator,
9653
9606
  display_transformers: display_transformers,
9654
9607
  api: api,
9655
9608
  // Stuff needed for non-standard customer deployments that we shouldn't actually expose
@@ -9701,7 +9654,6 @@ class $2c61e4cd8229c49a$export$ac6237957a15b3f0 {
9701
9654
  });
9702
9655
  // @ts-ignore
9703
9656
  const depict_api_ = api ?? new (0, $e1d6c0f3d89d531c$export$e015ed2f2950f2e3)({
9704
- page_url_creator: page_url_creator,
9705
9657
  display_transformers: display_transformers
9706
9658
  });
9707
9659
  const previous_searches = $2b7a005a65221045$export$84bba84a7b837187(get_search_query_);