@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.cjs +27 -82
- package/ES10/index.d.ts +15 -81
- package/ES10/index.js +27 -82
- package/latest/index.cjs +27 -79
- package/latest/index.d.ts +15 -81
- package/latest/index.js +27 -79
- package/package.json +1 -1
- package/server/ES10/index.cjs +25 -80
- package/server/ES10/index.d.ts +15 -81
- package/server/ES10/index.js +25 -80
- package/server/latest/index.cjs +25 -77
- package/server/latest/index.d.ts +15 -81
- package/server/latest/index.js +25 -77
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.
|
|
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 $
|
|
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 (!
|
|
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
|
|
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
|
-
|
|
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 (!
|
|
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 &&
|
|
5983
|
-
const
|
|
5956
|
+
if (displays && product_transformer) {
|
|
5957
|
+
const transformed_displays = await product_transformer({
|
|
5984
5958
|
merchant: merchant,
|
|
5985
5959
|
market: market,
|
|
5986
|
-
displays: [...
|
|
5987
|
-
...(page_url_creator ? {
|
|
5988
|
-
type: "products"
|
|
5989
|
-
} : {})
|
|
5960
|
+
displays: [...displays]
|
|
5990
5961
|
});
|
|
5991
|
-
|
|
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 (
|
|
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
|
|
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
|
-
|
|
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 $
|
|
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_:
|
|
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
|
|
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
|
|
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.
|
|
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 (!
|
|
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
|
|
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
|
-
|
|
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 (!
|
|
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 &&
|
|
5566
|
-
const
|
|
5545
|
+
if (displays && product_transformer) {
|
|
5546
|
+
const transformed_displays = await product_transformer({
|
|
5567
5547
|
merchant: merchant,
|
|
5568
5548
|
market: market,
|
|
5569
|
-
displays: [...
|
|
5570
|
-
...(page_url_creator ? {
|
|
5571
|
-
type: "products"
|
|
5572
|
-
} : {})
|
|
5549
|
+
displays: [...displays]
|
|
5573
5550
|
});
|
|
5574
|
-
|
|
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 (
|
|
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
|
|
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
|
-
|
|
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
|
|
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
|
|
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_:
|
|
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
|
|
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
|
|
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_);
|