@depict-ai/ui 3.0.0 → 3.0.2

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.
package/ES10/index.js CHANGED
@@ -10,7 +10,7 @@ import { createStore as $8tj43$createStore, reconcile as $8tj43$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.0";
13
+ const $8db9a15135765c11$export$83d89fbfd8236492 = "3.0.2";
14
14
  const $ca6ab5f08bd28bca$var$_tmpl$ = /*#__PURE__*/$8tj43$template(`<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>`);
15
15
  function $ca6ab5f08bd28bca$export$8be2714ec7f169ee() {
16
16
  let props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
@@ -5780,7 +5780,6 @@ var $284849364a6ef73a$var$_get_cache_obj_for_endpoint = /*#__PURE__*/new WeakSet
5780
5780
  var $284849364a6ef73a$var$_add_ids_to_request = /*#__PURE__*/new WeakMap();
5781
5781
  var $284849364a6ef73a$var$_get_metadata = /*#__PURE__*/new WeakMap();
5782
5782
  var $284849364a6ef73a$var$_get_session_id = /*#__PURE__*/new WeakMap();
5783
- var $284849364a6ef73a$var$_guard_url_creator_length = /*#__PURE__*/new WeakSet();
5784
5783
  var $284849364a6ef73a$var$_run_url_creator_for_suggest = /*#__PURE__*/new WeakSet();
5785
5784
  var $284849364a6ef73a$var$_run_display_transformers_for_rest = /*#__PURE__*/new WeakSet();
5786
5785
  var $284849364a6ef73a$var$_cached_request = /*#__PURE__*/new WeakSet();
@@ -5789,9 +5788,7 @@ class $284849364a6ef73a$export$e015ed2f2950f2e3 {
5789
5788
  $284849364a6ef73a$var$_classPrivateMethodInitSpec(this, $284849364a6ef73a$var$_cached_request);
5790
5789
  $284849364a6ef73a$var$_classPrivateMethodInitSpec(this, $284849364a6ef73a$var$_run_display_transformers_for_rest);
5791
5790
  $284849364a6ef73a$var$_classPrivateMethodInitSpec(this, $284849364a6ef73a$var$_run_url_creator_for_suggest);
5792
- $284849364a6ef73a$var$_classPrivateMethodInitSpec(this, $284849364a6ef73a$var$_guard_url_creator_length);
5793
5791
  $284849364a6ef73a$var$_classPrivateMethodInitSpec(this, $284849364a6ef73a$var$_get_cache_obj_for_endpoint);
5794
- $8tj43$babelruntimehelpersdefineProperty(this, "page_url_creator", void 0);
5795
5792
  $8tj43$babelruntimehelpersdefineProperty(this, "display_transformers", void 0);
5796
5793
  $284849364a6ef73a$var$_classPrivateFieldInitSpec(this, $284849364a6ef73a$var$_supports_finalization_registry, {
5797
5794
  writable: true,
@@ -5823,18 +5820,15 @@ class $284849364a6ef73a$export$e015ed2f2950f2e3 {
5823
5820
  const {
5824
5821
  get_metadata: get_metadata,
5825
5822
  get_session_id: _get_session_id2,
5826
- page_url_creator: _page_url_creator,
5827
5823
  display_transformers: _display_transformers
5828
5824
  } = options !== null && options !== void 0 ? options : {};
5829
5825
  $8tj43$babelruntimehelpersclassPrivateFieldSet(this, $284849364a6ef73a$var$_get_metadata, get_metadata);
5830
5826
  $8tj43$babelruntimehelpersclassPrivateFieldSet(this, $284849364a6ef73a$var$_get_session_id, _get_session_id2);
5831
- this.page_url_creator = _page_url_creator;
5832
5827
  this.display_transformers = _display_transformers;
5833
5828
  }
5834
5829
  async suggest(input_req) {
5835
5830
  var _classPrivateFieldGet3;
5836
5831
  const with_ids = $8tj43$babelruntimehelpersclassPrivateFieldGet(this, $284849364a6ef73a$var$_add_ids_to_request).call(this, input_req);
5837
- const owner = $8tj43$getOwner();
5838
5832
  const metaData = await ((_classPrivateFieldGet3 = $8tj43$babelruntimehelpersclassPrivateFieldGet(this, $284849364a6ef73a$var$_get_metadata)) === null || _classPrivateFieldGet3 === void 0 ? void 0 : _classPrivateFieldGet3.call(this));
5839
5833
  const request = metaData ? Object.assign(with_ids, {
5840
5834
  metadata: JSON.stringify(metaData)
@@ -5846,7 +5840,7 @@ class $284849364a6ef73a$export$e015ed2f2950f2e3 {
5846
5840
  const decoded_json = await results.json();
5847
5841
  if (!Array.isArray(decoded_json === null || decoded_json === void 0 ? void 0 : decoded_json.suggestions)) break attempt_to_return_api_response;
5848
5842
  try {
5849
- return await $8tj43$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));
5843
+ 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);
5850
5844
  } catch (e) {
5851
5845
  $8tj43$dwarn("displayTransformer failed", e);
5852
5846
  }
@@ -5933,101 +5927,55 @@ function $284849364a6ef73a$var$_get_cache_obj_for_endpoint2(endpoint) {
5933
5927
  })) : undefined
5934
5928
  });
5935
5929
  }
5936
- function $284849364a6ef73a$var$_guard_url_creator_length2(expected, received) {
5937
- if (expected.length !== received.length) {
5938
- const e = new Error("displayTransformer returned wrong number of page URLs, got " + received.length + ", expected " + expected.length);
5939
- queueMicrotask(() => {
5940
- throw e;
5941
- });
5942
- throw e;
5943
- }
5944
- }
5945
5930
  async function $284849364a6ef73a$var$_run_url_creator_for_suggest2(merchant, market, response) {
5946
5931
  var _this$display_transfo;
5947
- const page_url_creator = this.page_url_creator;
5948
5932
  const category_transformer = (_this$display_transfo = this.display_transformers) === null || _this$display_transfo === void 0 ? void 0 : _this$display_transfo.categories;
5949
- if (!page_url_creator && !category_transformer) return response;
5933
+ if (!category_transformer) return response;
5950
5934
  // find category suggestions, run thing with them, and then replace them
5951
5935
  const category_suggestions = response.suggestions.filter(suggestion => suggestion.type === "category");
5952
- const page_urls = await (page_url_creator || category_transformer)({
5936
+ const transformed_category_suggestions = await category_transformer({
5953
5937
  market: market,
5954
5938
  merchant: merchant,
5955
- data: [...category_suggestions],
5956
- ...(page_url_creator ? {
5957
- type: "categories"
5958
- } : {})
5939
+ data: [...category_suggestions]
5959
5940
  });
5960
- $284849364a6ef73a$var$_classPrivateMethodGet(this, $284849364a6ef73a$var$_guard_url_creator_length, $284849364a6ef73a$var$_guard_url_creator_length2).call(this, category_suggestions, page_urls);
5961
- while (page_urls.length)
5962
- // Copy over getters so we sneakily can make this reactive
5963
- Object.defineProperties(category_suggestions.pop(), Object.getOwnPropertyDescriptors(page_urls.pop()));
5941
+ response.suggestions = transformed_category_suggestions;
5964
5942
  return response;
5965
5943
  }
5966
5944
  async function $284849364a6ef73a$var$_run_display_transformers_for_rest2(merchant, market, input_data) {
5967
5945
  const {
5968
- page_url_creator: page_url_creator,
5969
5946
  display_transformers: display_transformers
5970
5947
  } = this;
5971
- if (!page_url_creator && !display_transformers) return input_data;
5948
+ if (!display_transformers) return input_data;
5972
5949
  const product_transformer = display_transformers === null || display_transformers === void 0 ? void 0 : display_transformers.products;
5973
5950
  const category_transformer = display_transformers === null || display_transformers === void 0 ? void 0 : display_transformers.categories;
5974
5951
  const content_result_transformer = display_transformers === null || display_transformers === void 0 ? void 0 : display_transformers.contentResults;
5975
5952
  const displays = input_data.displays;
5976
- const owner = $8tj43$getOwner();
5977
5953
  const {
5978
- breadcrumbs: breadcrumbs,
5979
- quick_links: quick_links,
5980
5954
  content_search_links: content_search_links
5981
5955
  } = input_data;
5982
- if (displays && (page_url_creator || product_transformer)) {
5983
- const page_urls = await (page_url_creator || product_transformer)({
5956
+ if (displays && product_transformer) {
5957
+ const transformed_displays = await product_transformer({
5984
5958
  merchant: merchant,
5985
5959
  market: market,
5986
- displays: [...input_data.displays],
5987
- ...(page_url_creator ? {
5988
- type: "products"
5989
- } : {})
5960
+ displays: [...displays]
5990
5961
  });
5991
- $284849364a6ef73a$var$_classPrivateMethodGet(this, $284849364a6ef73a$var$_guard_url_creator_length, $284849364a6ef73a$var$_guard_url_creator_length2).call(this, displays, page_urls);
5992
- for (let i = 0; i < displays.length; i++) {
5993
- const new_display_or_page_url = page_urls[i];
5994
- const old_display = displays[i];
5995
- if ("page_url" in new_display_or_page_url && Object.keys(new_display_or_page_url).length === 1) {
5996
- // they only returned page_url, let's put it into the display
5997
- const old_display_was_modern = ("variant_index" in old_display);
5998
- if (old_display_was_modern) {
5999
- const variant_displays = old_display.variant_displays;
6000
- for (let i = 0; i < variant_displays.length; i++) variant_displays[i].page_url = new_display_or_page_url.page_url;
6001
- } else old_display.page_url = new_display_or_page_url.page_url;
6002
- } else
6003
- // We got a whole new display, let's replace it
6004
- displays[i] = new_display_or_page_url;
6005
- }
5962
+ input_data.displays = transformed_displays;
6006
5963
  }
6007
- if (page_url_creator || category_transformer) for (const category_display_array of [breadcrumbs, quick_links]) {
5964
+ if (category_transformer) for (const key of ["breadcrumbs", "quick_links"]) {
5965
+ const category_display_array = input_data[key];
6008
5966
  if (!category_display_array) continue;
6009
- const page_urls = await (page_url_creator || category_transformer)({
5967
+ const transformed_category_displays = await category_transformer({
6010
5968
  merchant: merchant,
6011
5969
  market: market,
6012
- data: [...category_display_array],
6013
- ...(page_url_creator ? {
6014
- type: "categories"
6015
- } : {})
5970
+ data: [...category_display_array]
6016
5971
  });
6017
- $284849364a6ef73a$var$_classPrivateMethodGet(this, $284849364a6ef73a$var$_guard_url_creator_length, $284849364a6ef73a$var$_guard_url_creator_length2).call(this, category_display_array, page_urls);
6018
- for (let i = 0; i < category_display_array.length; i++)
6019
- // Copy over getters so we sneakily can make this reactive
6020
- Object.defineProperties(category_display_array[i], Object.getOwnPropertyDescriptors(page_urls[i]));
6021
- }
6022
- if (content_search_links !== null && content_search_links !== void 0 && content_search_links.length && content_result_transformer) {
6023
- const result = await $8tj43$runWithOwner(owner, () => content_result_transformer({
6024
- merchant: merchant,
6025
- market: market,
6026
- data: [...content_search_links]
6027
- }));
6028
- $284849364a6ef73a$var$_classPrivateMethodGet(this, $284849364a6ef73a$var$_guard_url_creator_length, $284849364a6ef73a$var$_guard_url_creator_length2).call(this, content_search_links, result);
6029
- input_data.content_search_links = result;
5972
+ input_data[key] = transformed_category_displays;
6030
5973
  }
5974
+ 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({
5975
+ merchant: merchant,
5976
+ market: market,
5977
+ data: [...content_search_links]
5978
+ });
6031
5979
  return input_data;
6032
5980
  }
6033
5981
  async function $284849364a6ef73a$var$_cached_request2(_ref) {
@@ -6041,7 +5989,6 @@ async function $284849364a6ef73a$var$_cached_request2(_ref) {
6041
5989
  } = _ref;
6042
5990
  const cache_obj = $284849364a6ef73a$var$_classPrivateMethodGet(this, $284849364a6ef73a$var$_get_cache_obj_for_endpoint, $284849364a6ef73a$var$_get_cache_obj_for_endpoint2).call(this, endpoint_);
6043
5991
  const with_ids = $8tj43$babelruntimehelpersclassPrivateFieldGet(this, $284849364a6ef73a$var$_add_ids_to_request).call(this, input_req_);
6044
- const owner = $8tj43$getOwner();
6045
5992
  const metaData = await ((_classPrivateFieldGet5 = $8tj43$babelruntimehelpersclassPrivateFieldGet(this, $284849364a6ef73a$var$_get_metadata)) === null || _classPrivateFieldGet5 === void 0 ? void 0 : _classPrivateFieldGet5.call(this));
6046
5993
  const request = metaData ? Object.assign(with_ids, {
6047
5994
  metadata: metaData
@@ -6069,7 +6016,7 @@ async function $284849364a6ef73a$var$_cached_request2(_ref) {
6069
6016
  let result;
6070
6017
  try {
6071
6018
  const unmodified_result = await api_response.json();
6072
- result = await $8tj43$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));
6019
+ 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);
6073
6020
  } catch (e) {
6074
6021
  $8tj43$dwarn("displayTransformer or json decoding failed", e);
6075
6022
  break return_successfully;
@@ -8146,7 +8093,9 @@ function $52efc9ae4382e25a$export$5646050d516e06bc(_ref) {
8146
8093
  var _display_accessor;
8147
8094
  return $2855bffe06ef7a03$export$43cd1e747fecd42e({
8148
8095
  to_url_: (_display_accessor = display_accessor()) === null || _display_accessor === void 0 ? void 0 : _display_accessor.page_url,
8149
- filter_query_param_prefix_: filter_query_param_prefix_,
8096
+ filter_query_param_prefix_:
8097
+ // page_url here can be a getter if that was added in the display transformers as a way of making this reactive
8098
+ filter_query_param_prefix_,
8150
8099
  sorting_query_param_: sorting_query_param_
8151
8100
  });
8152
8101
  });
@@ -8633,7 +8582,7 @@ function $a4777acaffa35a82$var$clear_if_opened_new_tab_with_sideways_url_params_
8633
8582
  });
8634
8583
  tracking_function_for_plp_results(plp_results_);
8635
8584
  }
8636
- const $1145661fd3ca5519$var$_tmpl$ = /*#__PURE__*/$8tj43$template(`<div class=statement style=white-space:pre-wrap>No category ID specified, this is probably unintentional. Make sure to create (and insert) the CategoryPage *after* you have specified a category ID in your Depict Provider.`),
8585
+ const $1145661fd3ca5519$var$_tmpl$ = /*#__PURE__*/$8tj43$template(`<div class=statement style=white-space:pre-wrap>No listingId specified, this is probably unintentional. Make sure to create (and insert) the CategoryPage *after* you have specified a listingId.`),
8637
8586
  $1145661fd3ca5519$var$_tmpl$2 = /*#__PURE__*/$8tj43$template(`<div class=buttons><button class="ok major">`);
8638
8587
  function $1145661fd3ca5519$export$7af06a63c5a976c9(el, listing_id, i18n_) {
8639
8588
  if (!(0, $8tj43$is_debug)) return; // Just to make sure we don't show this in production
@@ -8645,7 +8594,7 @@ function $1145661fd3ca5519$export$7af06a63c5a976c9(el, listing_id, i18n_) {
8645
8594
  return $8tj43$runWithOwner(owner, () => $8tj43$createEffect(() => {
8646
8595
  if (!document.documentElement.contains(element)) return;
8647
8596
  if (!listing_id()) {
8648
- const warning = "No category ID specified, this is probably unintentional. Make sure to create (and insert) the CategoryPage *after* you have specified a category ID in your Depict Provider.";
8597
+ const warning = "No listingId specified, this is probably unintentional. Make sure to create (and insert) the CategoryPage *after* you have specified a listingId.";
8649
8598
  $8tj43$dwarn(warning);
8650
8599
  const {
8651
8600
  close_toast_: close_toast_
@@ -9387,7 +9336,6 @@ class $f5f54892fd0c7d9f$export$f34314aa9505732e {
9387
9336
  let {
9388
9337
  api: api,
9389
9338
  on_navigation: on_navigation,
9390
- page_url_creator: page_url_creator,
9391
9339
  display_transformers: display_transformers,
9392
9340
  unique_instance_key_for_state = "",
9393
9341
  listing_id_state_key: listing_id_state_key,
@@ -9466,7 +9414,6 @@ class $f5f54892fd0c7d9f$export$f34314aa9505732e {
9466
9414
  reset_history_state_: reset_history_state_,
9467
9415
  // @ts-ignore
9468
9416
  depict_api_: api !== null && api !== void 0 ? api : new (0, $284849364a6ef73a$export$e015ed2f2950f2e3)({
9469
- page_url_creator: page_url_creator,
9470
9417
  display_transformers: display_transformers
9471
9418
  }),
9472
9419
  router_: $8tj43$babelruntimehelpersclassPrivateFieldGet(this, $f5f54892fd0c7d9f$var$_router),
@@ -12521,7 +12468,6 @@ class $eb064bc3350276c1$export$ac6237957a15b3f0 {
12521
12468
  url_transformer: url_transformer,
12522
12469
  on_navigation: on_navigation,
12523
12470
  enable_category_suggestions = true,
12524
- page_url_creator: page_url_creator,
12525
12471
  display_transformers: display_transformers,
12526
12472
  api: api,
12527
12473
  // Stuff needed for non-standard customer deployments that we shouldn't actually expose
@@ -12600,7 +12546,6 @@ class $eb064bc3350276c1$export$ac6237957a15b3f0 {
12600
12546
  });
12601
12547
  // @ts-ignore
12602
12548
  const depict_api_ = api !== null && api !== void 0 ? api : new (0, $284849364a6ef73a$export$e015ed2f2950f2e3)({
12603
- page_url_creator: page_url_creator,
12604
12549
  display_transformers: display_transformers
12605
12550
  });
12606
12551
  const previous_searches = $07d90b8270ece8de$export$84bba84a7b837187(get_search_query_);
package/latest/index.cjs CHANGED
@@ -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.0";
80
+ const $b757f75811f3261f$export$83d89fbfd8236492 = "3.0.2";
81
81
  const $0f313083912e447a$var$_tmpl$ = /*#__PURE__*/$gVhhF$solidjsweb.template(`<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>`);
82
82
  function $0f313083912e447a$export$8be2714ec7f169ee(props = {}) {
83
83
  return (() => {
@@ -5517,100 +5517,54 @@ class $e1d6c0f3d89d531c$export$e015ed2f2950f2e3 {
5517
5517
  };
5518
5518
  #get_metadata;
5519
5519
  #get_session_id;
5520
- #guard_url_creator_length(expected, received) {
5521
- if (expected.length !== received.length) {
5522
- const e = new Error("displayTransformer returned wrong number of page URLs, got " + received.length + ", expected " + expected.length);
5523
- queueMicrotask(() => {
5524
- throw e;
5525
- });
5526
- throw e;
5527
- }
5528
- }
5529
5520
  async #run_url_creator_for_suggest(merchant, market, response) {
5530
- const page_url_creator = this.page_url_creator;
5531
5521
  const category_transformer = this.display_transformers?.categories;
5532
- if (!page_url_creator && !category_transformer) return response;
5522
+ if (!category_transformer) return response;
5533
5523
  // find category suggestions, run thing with them, and then replace them
5534
5524
  const category_suggestions = response.suggestions.filter(suggestion => suggestion.type === "category");
5535
- const page_urls = await (page_url_creator || category_transformer)({
5525
+ const transformed_category_suggestions = await category_transformer({
5536
5526
  market: market,
5537
5527
  merchant: merchant,
5538
- data: [...category_suggestions],
5539
- ...(page_url_creator ? {
5540
- type: "categories"
5541
- } : {})
5528
+ data: [...category_suggestions]
5542
5529
  });
5543
- this.#guard_url_creator_length(category_suggestions, page_urls);
5544
- while (page_urls.length)
5545
- // Copy over getters so we sneakily can make this reactive
5546
- Object.defineProperties(category_suggestions.pop(), Object.getOwnPropertyDescriptors(page_urls.pop()));
5530
+ response.suggestions = transformed_category_suggestions;
5547
5531
  return response;
5548
5532
  }
5549
5533
  async #run_display_transformers_for_rest(merchant, market, input_data) {
5550
5534
  const {
5551
- page_url_creator: page_url_creator,
5552
5535
  display_transformers: display_transformers
5553
5536
  } = this;
5554
- if (!page_url_creator && !display_transformers) return input_data;
5537
+ if (!display_transformers) return input_data;
5555
5538
  const product_transformer = display_transformers?.products;
5556
5539
  const category_transformer = display_transformers?.categories;
5557
5540
  const content_result_transformer = display_transformers?.contentResults;
5558
5541
  const displays = input_data.displays;
5559
- const owner = $gVhhF$solidjs.getOwner();
5560
5542
  const {
5561
- breadcrumbs: breadcrumbs,
5562
- quick_links: quick_links,
5563
5543
  content_search_links: content_search_links
5564
5544
  } = input_data;
5565
- if (displays && (page_url_creator || product_transformer)) {
5566
- const page_urls = await (page_url_creator || product_transformer)({
5545
+ if (displays && product_transformer) {
5546
+ const transformed_displays = await product_transformer({
5567
5547
  merchant: merchant,
5568
5548
  market: market,
5569
- displays: [...input_data.displays],
5570
- ...(page_url_creator ? {
5571
- type: "products"
5572
- } : {})
5549
+ displays: [...displays]
5573
5550
  });
5574
- this.#guard_url_creator_length(displays, page_urls);
5575
- for (let i = 0; i < displays.length; i++) {
5576
- const new_display_or_page_url = page_urls[i];
5577
- const old_display = displays[i];
5578
- if ("page_url" in new_display_or_page_url && Object.keys(new_display_or_page_url).length === 1) {
5579
- // they only returned page_url, let's put it into the display
5580
- const old_display_was_modern = ("variant_index" in old_display);
5581
- if (old_display_was_modern) {
5582
- const variant_displays = old_display.variant_displays;
5583
- for (let i = 0; i < variant_displays.length; i++) variant_displays[i].page_url = new_display_or_page_url.page_url;
5584
- } else old_display.page_url = new_display_or_page_url.page_url;
5585
- } else
5586
- // We got a whole new display, let's replace it
5587
- displays[i] = new_display_or_page_url;
5588
- }
5551
+ input_data.displays = transformed_displays;
5589
5552
  }
5590
- if (page_url_creator || category_transformer) for (const category_display_array of [breadcrumbs, quick_links]) {
5553
+ if (category_transformer) for (const key of ["breadcrumbs", "quick_links"]) {
5554
+ const category_display_array = input_data[key];
5591
5555
  if (!category_display_array) continue;
5592
- const page_urls = await (page_url_creator || category_transformer)({
5556
+ const transformed_category_displays = await category_transformer({
5593
5557
  merchant: merchant,
5594
5558
  market: market,
5595
- data: [...category_display_array],
5596
- ...(page_url_creator ? {
5597
- type: "categories"
5598
- } : {})
5559
+ data: [...category_display_array]
5599
5560
  });
5600
- this.#guard_url_creator_length(category_display_array, page_urls);
5601
- for (let i = 0; i < category_display_array.length; i++)
5602
- // Copy over getters so we sneakily can make this reactive
5603
- Object.defineProperties(category_display_array[i], Object.getOwnPropertyDescriptors(page_urls[i]));
5604
- }
5605
- if (content_search_links?.length && content_result_transformer) {
5606
- const result = await $gVhhF$solidjs.runWithOwner(owner, () => content_result_transformer({
5607
- merchant: merchant,
5608
- market: market,
5609
- data: [...content_search_links]
5610
- }));
5611
- this.#guard_url_creator_length(content_search_links, result);
5612
- input_data.content_search_links = result;
5561
+ input_data[key] = transformed_category_displays;
5613
5562
  }
5563
+ if (content_search_links?.length && content_result_transformer) input_data.content_search_links = await content_result_transformer({
5564
+ merchant: merchant,
5565
+ market: market,
5566
+ data: [...content_search_links]
5567
+ });
5614
5568
  return input_data;
5615
5569
  }
5616
5570
  async #cached_request({
@@ -5622,7 +5576,6 @@ class $e1d6c0f3d89d531c$export$e015ed2f2950f2e3 {
5622
5576
  }) {
5623
5577
  const cache_obj = this.#get_cache_obj_for_endpoint(endpoint_);
5624
5578
  const with_ids = this.#add_ids_to_request(input_req_);
5625
- const owner = $gVhhF$solidjs.getOwner();
5626
5579
  const metaData = await this.#get_metadata?.();
5627
5580
  const request = metaData ? Object.assign(with_ids, {
5628
5581
  metadata: metaData
@@ -5650,7 +5603,7 @@ class $e1d6c0f3d89d531c$export$e015ed2f2950f2e3 {
5650
5603
  let result;
5651
5604
  try {
5652
5605
  const unmodified_result = await api_response.json();
5653
- result = await $gVhhF$solidjs.runWithOwner(owner, () => this.#run_display_transformers_for_rest(input_req_.merchant, input_req_.market, unmodified_result));
5606
+ result = await this.#run_display_transformers_for_rest(input_req_.merchant, input_req_.market, unmodified_result);
5654
5607
  } catch (e) {
5655
5608
  $gVhhF$depictaiutilishared.dwarn("displayTransformer or json decoding failed", e);
5656
5609
  break return_successfully;
@@ -5681,17 +5634,14 @@ class $e1d6c0f3d89d531c$export$e015ed2f2950f2e3 {
5681
5634
  const {
5682
5635
  get_metadata: get_metadata,
5683
5636
  get_session_id: get_session_id,
5684
- page_url_creator: page_url_creator,
5685
5637
  display_transformers: display_transformers
5686
5638
  } = options ?? {};
5687
5639
  this.#get_metadata = get_metadata;
5688
5640
  this.#get_session_id = get_session_id;
5689
- this.page_url_creator = page_url_creator;
5690
5641
  this.display_transformers = display_transformers;
5691
5642
  }
5692
5643
  async suggest(input_req) {
5693
5644
  const with_ids = this.#add_ids_to_request(input_req);
5694
- const owner = $gVhhF$solidjs.getOwner();
5695
5645
  const metaData = await this.#get_metadata?.();
5696
5646
  const request = metaData ? Object.assign(with_ids, {
5697
5647
  metadata: JSON.stringify(metaData)
@@ -5703,7 +5653,7 @@ class $e1d6c0f3d89d531c$export$e015ed2f2950f2e3 {
5703
5653
  const decoded_json = await results.json();
5704
5654
  if (!Array.isArray(decoded_json?.suggestions)) break attempt_to_return_api_response;
5705
5655
  try {
5706
- return await $gVhhF$solidjs.runWithOwner(owner, () => this.#run_url_creator_for_suggest(input_req.merchant, input_req.market, decoded_json));
5656
+ return await this.#run_url_creator_for_suggest(input_req.merchant, input_req.market, decoded_json);
5707
5657
  } catch (e) {
5708
5658
  $gVhhF$depictaiutilishared.dwarn("displayTransformer failed", e);
5709
5659
  }
@@ -7716,7 +7666,9 @@ function $e53b2e7e632ac4cb$export$5646050d516e06bc({
7716
7666
  children: (display_accessor, index) => {
7717
7667
  const href = $gVhhF$solidjs.createMemo(() => $1ab22f2cd39b3061$export$43cd1e747fecd42e({
7718
7668
  to_url_: display_accessor()?.page_url,
7719
- filter_query_param_prefix_: filter_query_param_prefix_,
7669
+ filter_query_param_prefix_:
7670
+ // page_url here can be a getter if that was added in the display transformers as a way of making this reactive
7671
+ filter_query_param_prefix_,
7720
7672
  sorting_query_param_: sorting_query_param_
7721
7673
  }));
7722
7674
  return [$gVhhF$solidjsweb.createComponent((0, $gVhhF$solidjs.Show), {
@@ -8166,7 +8118,7 @@ function $ef972f5c10b1c5b4$var$clear_if_opened_new_tab_with_sideways_url_params_
8166
8118
  });
8167
8119
  tracking_function_for_plp_results(plp_results_);
8168
8120
  }
8169
- const $bb9760b7a8acdc18$var$_tmpl$ = /*#__PURE__*/$gVhhF$solidjsweb.template(`<div class=statement style=white-space:pre-wrap>No category ID specified, this is probably unintentional. Make sure to create (and insert) the CategoryPage *after* you have specified a category ID in your Depict Provider.`),
8121
+ const $bb9760b7a8acdc18$var$_tmpl$ = /*#__PURE__*/$gVhhF$solidjsweb.template(`<div class=statement style=white-space:pre-wrap>No listingId specified, this is probably unintentional. Make sure to create (and insert) the CategoryPage *after* you have specified a listingId.`),
8170
8122
  $bb9760b7a8acdc18$var$_tmpl$2 = /*#__PURE__*/$gVhhF$solidjsweb.template(`<div class=buttons><button class="ok major">`);
8171
8123
  function $bb9760b7a8acdc18$export$7af06a63c5a976c9(el, listing_id, i18n_) {
8172
8124
  if (!(0, $gVhhF$depictaiutilishared.is_debug)) return; // Just to make sure we don't show this in production
@@ -8176,7 +8128,7 @@ function $bb9760b7a8acdc18$export$7af06a63c5a976c9(el, listing_id, i18n_) {
8176
8128
  }) => $gVhhF$solidjs.runWithOwner(owner, () => $gVhhF$solidjs.createEffect(() => {
8177
8129
  if (!document.documentElement.contains(element)) return;
8178
8130
  if (!listing_id()) {
8179
- const warning = "No category ID specified, this is probably unintentional. Make sure to create (and insert) the CategoryPage *after* you have specified a category ID in your Depict Provider.";
8131
+ const warning = "No listingId specified, this is probably unintentional. Make sure to create (and insert) the CategoryPage *after* you have specified a listingId.";
8180
8132
  $gVhhF$depictaiutilishared.dwarn(warning);
8181
8133
  const {
8182
8134
  close_toast_: close_toast_
@@ -8846,7 +8798,6 @@ class $48567ac5b39bac56$export$f34314aa9505732e {
8846
8798
  constructor({
8847
8799
  api: api,
8848
8800
  on_navigation: on_navigation,
8849
- page_url_creator: page_url_creator,
8850
8801
  display_transformers: display_transformers,
8851
8802
  unique_instance_key_for_state = "",
8852
8803
  listing_id_state_key: listing_id_state_key,
@@ -8897,7 +8848,6 @@ class $48567ac5b39bac56$export$f34314aa9505732e {
8897
8848
  reset_history_state_: reset_history_state_,
8898
8849
  // @ts-ignore
8899
8850
  depict_api_: api ?? new (0, $e1d6c0f3d89d531c$export$e015ed2f2950f2e3)({
8900
- page_url_creator: page_url_creator,
8901
8851
  display_transformers: display_transformers
8902
8852
  }),
8903
8853
  router_: this.#router,
@@ -11754,7 +11704,6 @@ class $2c61e4cd8229c49a$export$ac6237957a15b3f0 {
11754
11704
  url_transformer: url_transformer,
11755
11705
  on_navigation: on_navigation,
11756
11706
  enable_category_suggestions = true,
11757
- page_url_creator: page_url_creator,
11758
11707
  display_transformers: display_transformers,
11759
11708
  api: api,
11760
11709
  // Stuff needed for non-standard customer deployments that we shouldn't actually expose
@@ -11806,7 +11755,6 @@ class $2c61e4cd8229c49a$export$ac6237957a15b3f0 {
11806
11755
  });
11807
11756
  // @ts-ignore
11808
11757
  const depict_api_ = api ?? new (0, $e1d6c0f3d89d531c$export$e015ed2f2950f2e3)({
11809
- page_url_creator: page_url_creator,
11810
11758
  display_transformers: display_transformers
11811
11759
  });
11812
11760
  const previous_searches = $2b7a005a65221045$export$84bba84a7b837187(get_search_query_);