@depict-ai/ui 1.0.17 → 1.1.0
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/README.md +5 -1
- package/dist/client/main.js +453 -231
- package/dist/client/module.js +454 -234
- package/dist/index.d.ts +111 -103
- package/dist/main.js +108 -60
- package/dist/module.js +108 -60
- package/dist/server/main.js +397 -196
- package/dist/server/module.js +398 -199
- package/package.json +4 -4
package/dist/module.js
CHANGED
|
@@ -2,7 +2,7 @@ import {add_to_version_info as $kyEB6$add_to_version_info, fetch_recs as $kyEB6$
|
|
|
2
2
|
import {template as $kyEB6$template, insert as $kyEB6$insert, effect as $kyEB6$effect, setAttribute as $kyEB6$setAttribute, createComponent as $kyEB6$createComponent, use as $kyEB6$use, memo as $kyEB6$memo, addEventListener as $kyEB6$addEventListener, delegateEvents as $kyEB6$delegateEvents, spread as $kyEB6$spread, classList as $kyEB6$classList, style as $kyEB6$style, Dynamic as $kyEB6$Dynamic, mergeProps as $kyEB6$mergeProps, className as $kyEB6$className} from "solid-js/web";
|
|
3
3
|
import {createSignal as $kyEB6$createSignal, getOwner as $kyEB6$getOwner, createRoot as $kyEB6$createRoot, runWithOwner as $kyEB6$runWithOwner, onCleanup as $kyEB6$onCleanup, createComputed as $kyEB6$createComputed, createRenderEffect as $kyEB6$createRenderEffect, createEffect as $kyEB6$createEffect, untrack as $kyEB6$untrack, batch as $kyEB6$batch, createResource as $kyEB6$createResource, createMemo as $kyEB6$createMemo, Show as $kyEB6$Show, createReaction as $kyEB6$createReaction, Suspense as $kyEB6$Suspense, on as $kyEB6$on, ErrorBoundary as $kyEB6$ErrorBoundary, For as $kyEB6$For, Index as $kyEB6$Index} from "solid-js";
|
|
4
4
|
|
|
5
|
-
/*! Depict.ai search and product listing SDK */ const $ec291e0010116877$export$83d89fbfd8236492 = "1.0
|
|
5
|
+
/*! Depict.ai search and product listing SDK */ const $ec291e0010116877$export$83d89fbfd8236492 = "1.1.0";
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
|
|
@@ -144,10 +144,23 @@ class $7fa23e2a0079eca4$export$e015ed2f2950f2e3 {
|
|
|
144
144
|
let resolve_in_progress;
|
|
145
145
|
cache_obj.in_progress_[body] = new Promise((r)=>resolve_in_progress = r);
|
|
146
146
|
try {
|
|
147
|
-
|
|
147
|
+
let search_results = await (0, $kyEB6$fetch_retry)((0, $kyEB6$add_version_query_params)(endpoint1), {
|
|
148
148
|
method: "POST",
|
|
149
149
|
body: body
|
|
150
150
|
});
|
|
151
|
+
if ("query_id" in request && request.type === "collection") // FIXME: Remove. Backwards compatibility layer
|
|
152
|
+
// This will retry the request without the collection type if the first request fails
|
|
153
|
+
{
|
|
154
|
+
if (!search_results || search_results?.status === 404) {
|
|
155
|
+
(0, $kyEB6$dlog)("Fallback request for collections due to failure");
|
|
156
|
+
const fallback_body = JSON.parse(body);
|
|
157
|
+
delete fallback_body.type;
|
|
158
|
+
search_results = await (0, $kyEB6$fetch_retry)((0, $kyEB6$add_version_query_params)(endpoint1), {
|
|
159
|
+
method: "POST",
|
|
160
|
+
body: JSON.stringify(fallback_body)
|
|
161
|
+
});
|
|
162
|
+
}
|
|
163
|
+
}
|
|
151
164
|
if (!search_results || search_results.status !== 200) {
|
|
152
165
|
const retval = fallback_response(input_req);
|
|
153
166
|
resolve_in_progress(retval);
|
|
@@ -4971,7 +4984,7 @@ function $eb9ba2e49ab3dcc2$export$d4fc5c0e68a52116(el, query_id_, i18n_) {
|
|
|
4971
4984
|
|
|
4972
4985
|
|
|
4973
4986
|
const $df5d81d0fe61ff21$var$_tmpl$ = /*@__PURE__*/ (0, /*@__PURE__*/$kyEB6$template)(`<div class="product-count"> </div>`, 2), $df5d81d0fe61ff21$var$_tmpl$2 = /*@__PURE__*/ (0, /*@__PURE__*/$kyEB6$template)(`<div></div>`, 2), $df5d81d0fe61ff21$var$_tmpl$3 = /*@__PURE__*/ (0, /*@__PURE__*/$kyEB6$template)(`<div class="filter-results-for-one-row"></div>`, 2), $df5d81d0fe61ff21$var$_tmpl$4 = /*@__PURE__*/ (0, /*@__PURE__*/$kyEB6$template)(`<div class="depict plp category"><div class="listing-page"></div></div>`, 4);
|
|
4974
|
-
function $df5d81d0fe61ff21$export$f7d2f673fc2f091d({ depict_api_: depict_api_ , query_id_: query_id_ , current_sorting_: current_sorting_ , min_products_to_fetch_: min_products_to_fetch_ , category_filters_open_: category_filters_open_ , category_sorting_open_: category_sorting_open_ , expanded_filters_: expanded_filters_ , selected_filters_: selected_filters_ , get_quicklinks_accessor_: get_quicklinks_accessor_ , i18n_: incoming_i18n , get_breadcrumb_accessor_: get_breadcrumb_accessor_ , slider_arrow_button_: slider_arrow_button_ , expanded_hierarchical_filters_: expanded_hierarchical_filters_ , local_filter_cache_: local_filter_cache_ , tenant_: tenant_ , market_: market_ , router_: router_ , show_quicklinks_: show_quicklinks_ , category_title_: category_title_ , show_breadcrumbs_: show_breadcrumbs_ , layout_options_: layout_options_ , scroll_restoration_data_: scroll_restoration_data_ , product_card_template_: product_card_template_ , sideways_filter_clearing_flag_: sideways_filter_clearing_flag_ }) {
|
|
4987
|
+
function $df5d81d0fe61ff21$export$f7d2f673fc2f091d({ depict_api_: depict_api_ , query_id_: query_id_ , listing_type_: listing_type_ , current_sorting_: current_sorting_ , min_products_to_fetch_: min_products_to_fetch_ , category_filters_open_: category_filters_open_ , category_sorting_open_: category_sorting_open_ , expanded_filters_: expanded_filters_ , selected_filters_: selected_filters_ , get_quicklinks_accessor_: get_quicklinks_accessor_ , i18n_: incoming_i18n , get_breadcrumb_accessor_: get_breadcrumb_accessor_ , slider_arrow_button_: slider_arrow_button_ , expanded_hierarchical_filters_: expanded_hierarchical_filters_ , local_filter_cache_: local_filter_cache_ , tenant_: tenant_ , market_: market_ , router_: router_ , show_quicklinks_: show_quicklinks_ , category_title_: category_title_ , show_breadcrumbs_: show_breadcrumbs_ , layout_options_: layout_options_ , scroll_restoration_data_: scroll_restoration_data_ , product_card_template_: product_card_template_ , sideways_filter_clearing_flag_: sideways_filter_clearing_flag_ }) {
|
|
4975
4988
|
let results_for;
|
|
4976
4989
|
let only_show_filters_opener_;
|
|
4977
4990
|
let middle_elements_;
|
|
@@ -4996,6 +5009,7 @@ function $df5d81d0fe61ff21$export$f7d2f673fc2f091d({ depict_api_: depict_api_ ,
|
|
|
4996
5009
|
tenant: tenant_(),
|
|
4997
5010
|
market: market_(),
|
|
4998
5011
|
query_id: query_id_(),
|
|
5012
|
+
type: listing_type_(),
|
|
4999
5013
|
...f.length ? {
|
|
5000
5014
|
filters: f
|
|
5001
5015
|
} : {},
|
|
@@ -5497,7 +5511,8 @@ function $ccd5db07a3a069c5$export$477caf01aecaeb2a(options) {
|
|
|
5497
5511
|
router_.navigate_.go_to_({
|
|
5498
5512
|
is_replace_: true,
|
|
5499
5513
|
new_url_: url_object.href,
|
|
5500
|
-
force_spa_navigation_: true
|
|
5514
|
+
force_spa_navigation_: true,
|
|
5515
|
+
scroll: false
|
|
5501
5516
|
});
|
|
5502
5517
|
}, {
|
|
5503
5518
|
defer: true
|
|
@@ -5557,7 +5572,7 @@ class $4fd2ba03703a7d92$export$7e1297a3a19f10d8 {
|
|
|
5557
5572
|
* @param force_spa_navigation_ if you want to force SPA navigation even if on_navigation_ is set to "hard_navigation". You should only set this to true for inter-SDK-page navigations
|
|
5558
5573
|
* @param is_replace_ if you want to replace the current URL in history instead of pushing a new one
|
|
5559
5574
|
* @param category_query_id_ If you are navigating to a category and know the query_id of, please provide it. This is for making a better devEx in js-ui
|
|
5560
|
-
*/ go_to_: (0, $kyEB6$catchify)(async ({ new_url_: raw_new_url , event_: event_ , force_spa_navigation_: force_spa_navigation_ , is_replace_: is_replace_ , category_query_id_: category_query_id_ })=>{
|
|
5575
|
+
*/ go_to_: (0, $kyEB6$catchify)(async ({ new_url_: raw_new_url , event_: event_ , force_spa_navigation_: force_spa_navigation_ , is_replace_: is_replace_ , category_query_id_: category_query_id_ , scroll: scroll = true })=>{
|
|
5561
5576
|
const new_url_ = raw_new_url instanceof URL ? raw_new_url : new URL(raw_new_url, location.origin);
|
|
5562
5577
|
const wants_hard_navigation = this.on_navigation_ === "hard_navigation";
|
|
5563
5578
|
if (this.#dont_attempt_navigation(event_)) return;
|
|
@@ -5579,7 +5594,8 @@ class $4fd2ba03703a7d92$export$7e1297a3a19f10d8 {
|
|
|
5579
5594
|
history[is_replace_ ? "replaceState" : "pushState"](new_state, "", new_url_);
|
|
5580
5595
|
} else this.#throwing_on_navigation.call(this, {
|
|
5581
5596
|
is_replace: is_replace_,
|
|
5582
|
-
new_url: new_url_ instanceof URL ? new_url_ : new URL(new_url_, location.origin)
|
|
5597
|
+
new_url: new_url_ instanceof URL ? new_url_ : new URL(new_url_, location.origin),
|
|
5598
|
+
scroll: scroll
|
|
5583
5599
|
});
|
|
5584
5600
|
await promise;
|
|
5585
5601
|
})
|
|
@@ -5605,6 +5621,7 @@ class $961b5c64bef4662f$export$f34314aa9505732e {
|
|
|
5605
5621
|
#merchant_signal = (0, $kyEB6$createSignal)();
|
|
5606
5622
|
#market_signal = (0, $kyEB6$createSignal)();
|
|
5607
5623
|
#query_id_signal = (0, $kyEB6$createSignal)("");
|
|
5624
|
+
#listing_type_signal = (0, $kyEB6$createSignal)();
|
|
5608
5625
|
static #has_been_constructed = false;
|
|
5609
5626
|
get localization() {
|
|
5610
5627
|
// allow reactive access
|
|
@@ -5631,6 +5648,12 @@ class $961b5c64bef4662f$export$f34314aa9505732e {
|
|
|
5631
5648
|
set market(market) {
|
|
5632
5649
|
this.#market_signal[1](market);
|
|
5633
5650
|
}
|
|
5651
|
+
get listing_type() {
|
|
5652
|
+
return this.#listing_type_signal[0]();
|
|
5653
|
+
}
|
|
5654
|
+
set listing_type(listing_type) {
|
|
5655
|
+
this.#listing_type_signal[1](listing_type);
|
|
5656
|
+
}
|
|
5634
5657
|
get on_navigation() {
|
|
5635
5658
|
// The only non-reactive public property on the class (I don't see it making sense to have it reactive)
|
|
5636
5659
|
return this.#router.on_navigation_;
|
|
@@ -5696,6 +5719,7 @@ function $961b5c64bef4662f$export$e2bf8ce7779e827e({ depict_category: depict_cat
|
|
|
5696
5719
|
min_products_to_fetch_: $961b5c64bef4662f$var$min_products_to_fetch_,
|
|
5697
5720
|
local_filter_cache_: local_filter_cache_,
|
|
5698
5721
|
query_id_: ()=>depict_category.category_id,
|
|
5722
|
+
listing_type_: ()=>depict_category.listing_type,
|
|
5699
5723
|
i18n_: i18n_,
|
|
5700
5724
|
show_quicklinks_: show_quicklinks,
|
|
5701
5725
|
category_title_: category_title,
|
|
@@ -7595,9 +7619,28 @@ function $f8c929beb82c512b$export$9dd50d35b9d94fdf({ get_search_query_: get_sear
|
|
|
7595
7619
|
|
|
7596
7620
|
|
|
7597
7621
|
|
|
7622
|
+
|
|
7623
|
+
|
|
7624
|
+
function $1801dbce7adb3f19$export$41b4894022a3580f({ style_props_: style_props_ = (0, $kyEB6$createSignal)({}) } = {}) {
|
|
7625
|
+
const [, set_style_props] = style_props_;
|
|
7626
|
+
const supports_hover = (0, $dc9262ef6f786812$export$d9f36cf74e24d595)("(hover: hover) and (pointer: fine)");
|
|
7627
|
+
const desktop_short = (0, $dc9262ef6f786812$export$d9f36cf74e24d595)("(max-height: 790px)");
|
|
7628
|
+
const mobile_short = (0, $dc9262ef6f786812$export$d9f36cf74e24d595)("(max-height: 1000px)");
|
|
7629
|
+
const transform_y = (0, $kyEB6$createMemo)(()=>supports_hover() ? !desktop_short() : !mobile_short());
|
|
7630
|
+
set_style_props({
|
|
7631
|
+
position: "fixed",
|
|
7632
|
+
top: "50%"
|
|
7633
|
+
});
|
|
7634
|
+
(0, $kyEB6$createComputed)(()=>set_style_props((old_value)=>({
|
|
7635
|
+
...old_value,
|
|
7636
|
+
transform: transform_y() ? "translateY(-50%)" : "unset"
|
|
7637
|
+
})));
|
|
7638
|
+
return style_props_;
|
|
7639
|
+
}
|
|
7640
|
+
|
|
7641
|
+
|
|
7598
7642
|
const $7097477c78a89208$var$_tmpl$ = /*@__PURE__*/ (0, /*@__PURE__*/$kyEB6$template)(`<div class="filter-results-for-one-row"></div>`, 2), $7097477c78a89208$var$_tmpl$2 = /*@__PURE__*/ (0, /*@__PURE__*/$kyEB6$template)(`<div class="depict plp search"><div class="listing-page"></div></div>`, 4);
|
|
7599
|
-
function $7097477c78a89208$export$a54ec244c8863715(
|
|
7600
|
-
const { depict_api_: depict_api_ , search_field_value_: search_field_value_ , get_search_query_: get_search_query_ , open_modal_: open_modal_ , submit_query_: submit_query_ , current_sorting_: current_sorting_ , min_products_to_fetch_: min_products_to_fetch_ , search_filters_open_: search_filters_open_ , search_sorting_open_: search_sorting_open_ , expanded_filters_: expanded_filters_ , input_modal_open_: input_modal_open_ , selected_filters_: selected_filters_ , i18n_: i18n_ , slider_arrow_button_: slider_arrow_button_ , make_category_suggestion_card_: make_category_suggestion_card_ , expanded_hierarchical_filters_: expanded_hierarchical_filters_ , clear_filters_on_next_submit_: clear_filters_on_next_submit_ , local_filter_cache_: local_filter_cache_ , include_input_field_: include_input_field_ , tenant_: tenant_ , market_: market_ , showing_recommendation_rows_: showing_recommendation_rows_ , search_recs_view_more_: search_recs_view_more_ , disable_search_recommendations_: disable_search_recommendations_ , layout_options_: layout_options_ , recommendations_layout_options_: recommendations_layout_options_ = layout_options_ , scroll_restoration_data_: scroll_restoration_data_ , product_card_template_: product_card_template_ } = opts;
|
|
7643
|
+
function $7097477c78a89208$export$a54ec244c8863715({ depict_api_: depict_api_ , search_field_value_: search_field_value_ , get_search_query_: get_search_query_ , open_modal_: open_modal_ , submit_query_: submit_query_ , current_sorting_: current_sorting_ , min_products_to_fetch_: min_products_to_fetch_ , search_filters_open_: search_filters_open_ , search_sorting_open_: search_sorting_open_ , expanded_filters_: expanded_filters_ , input_modal_open_: input_modal_open_ , selected_filters_: selected_filters_ , i18n_: i18n_ , slider_arrow_button_: slider_arrow_button_ , make_category_suggestion_card_: make_category_suggestion_card_ , expanded_hierarchical_filters_: expanded_hierarchical_filters_ , clear_filters_on_next_submit_: clear_filters_on_next_submit_ , local_filter_cache_: local_filter_cache_ , include_input_field_: include_input_field_ , tenant_: tenant_ , market_: market_ , showing_recommendation_rows_: showing_recommendation_rows_ , search_recs_view_more_: search_recs_view_more_ , disable_search_recommendations_: disable_search_recommendations_ , layout_options_: layout_options_ , recommendations_layout_options_: recommendations_layout_options_ = layout_options_ , scroll_restoration_data_: scroll_restoration_data_ , product_card_template_: product_card_template_ , modal_body_style_ref_: modal_body_style_ref_ }) {
|
|
7601
7644
|
const [get_sorting] = current_sorting_;
|
|
7602
7645
|
const all_products_loaded_ = (0, $kyEB6$createSignal)(false);
|
|
7603
7646
|
const [get_all_products_loaded, set_all_products_loaded] = all_products_loaded_;
|
|
@@ -7650,42 +7693,8 @@ function $7097477c78a89208$export$a54ec244c8863715(opts) {
|
|
|
7650
7693
|
})));
|
|
7651
7694
|
const available_filters_ = (0, $kyEB6$createMemo)(()=>search_results_()?.filters);
|
|
7652
7695
|
const modal_body_style = (0, $kyEB6$createSignal)({});
|
|
7653
|
-
|
|
7654
|
-
|
|
7655
|
-
const SafeSearchField = (0, $kyEB6$catchify)((0, $5285d2814d0fac0c$export$b94867ecbd698f21));
|
|
7656
|
-
let input_element;
|
|
7657
|
-
let div_with_field_class;
|
|
7658
|
-
search_field = SafeSearchField({
|
|
7659
|
-
i18n_: i18n_,
|
|
7660
|
-
search_field_value_: search_field_value_,
|
|
7661
|
-
submit_query_: submit_query_,
|
|
7662
|
-
clear_filters_: clear_filters_on_next_submit_,
|
|
7663
|
-
input_field_ref_: (el)=>input_element = el,
|
|
7664
|
-
field_element_ref_: (el)=>div_with_field_class = el,
|
|
7665
|
-
disabled_: true
|
|
7666
|
-
});
|
|
7667
|
-
if (search_field) {
|
|
7668
|
-
opts?.modal_body_style_ref_?.(modal_body_style);
|
|
7669
|
-
const align_position = (0, $kyEB6$catchify)((0, $b6d5529b253681aa$export$b3ad617e9036868))(modal_body_style, search_field, undefined, true);
|
|
7670
|
-
div_with_field_class.addEventListener("click", (0, $kyEB6$catchify)((e)=>{
|
|
7671
|
-
const target = e.target;
|
|
7672
|
-
const sel = ".submit";
|
|
7673
|
-
if (target?.matches?.(sel) || target?.closest?.(sel)) // the search button is just decor, don't do anything when clicked
|
|
7674
|
-
return;
|
|
7675
|
-
// When selecting text in the SearchField that's in the page we want the same selection to persist. It doesn't by itself, since the SearchModal has an entirely different SearchField. Therefore, we manually copy the selection over.
|
|
7676
|
-
const selected_text_range_ = [
|
|
7677
|
-
input_element.selectionStart,
|
|
7678
|
-
input_element.selectionEnd
|
|
7679
|
-
];
|
|
7680
|
-
align_position?.();
|
|
7681
|
-
open_modal_({
|
|
7682
|
-
style_props_: modal_body_style,
|
|
7683
|
-
selected_text_range_: selected_text_range_
|
|
7684
|
-
}, ()=>include_input_field_?.on_close_?.());
|
|
7685
|
-
include_input_field_?.on_open_?.();
|
|
7686
|
-
}));
|
|
7687
|
-
}
|
|
7688
|
-
}
|
|
7696
|
+
const [get_search_field_elements, set_search_field_elements] = (0, $kyEB6$createSignal)();
|
|
7697
|
+
const SafeSearchField = (0, $kyEB6$catchify)((0, $5285d2814d0fac0c$export$b94867ecbd698f21));
|
|
7689
7698
|
const [sort_or_filter_open_, set_sort_or_filter_open_] = (0, $kyEB6$createSignal)(false);
|
|
7690
7699
|
const [desktop_filter_elements_, set_desktop_filter_elements] = (0, $kyEB6$createSignal)();
|
|
7691
7700
|
const formatted_number_of_results_ = (0, $511cc0abd9a64ce8$export$92f2da32c6e7e7ee)({
|
|
@@ -7749,11 +7758,60 @@ function $7097477c78a89208$export$a54ec244c8863715(opts) {
|
|
|
7749
7758
|
get_search_query_();
|
|
7750
7759
|
(0, $d78eea1e8707dc2d$export$c7e181728ad525f)(location);
|
|
7751
7760
|
});
|
|
7761
|
+
(0, $kyEB6$createEffect)(()=>{
|
|
7762
|
+
// reactive include_input_field
|
|
7763
|
+
// this uses ~7 variables from outer scope which is why I didn't refactor it into a function
|
|
7764
|
+
add_input_field: {
|
|
7765
|
+
const input_field_accessor_value = include_input_field_?.() ?? true; // default to showing input field
|
|
7766
|
+
if (!input_field_accessor_value) break add_input_field;
|
|
7767
|
+
let input_element;
|
|
7768
|
+
let div_with_field_class;
|
|
7769
|
+
const search_field = SafeSearchField({
|
|
7770
|
+
i18n_: i18n_,
|
|
7771
|
+
search_field_value_: search_field_value_,
|
|
7772
|
+
submit_query_: submit_query_,
|
|
7773
|
+
clear_filters_: clear_filters_on_next_submit_,
|
|
7774
|
+
input_field_ref_: (el)=>input_element = el,
|
|
7775
|
+
field_element_ref_: (el)=>div_with_field_class = el,
|
|
7776
|
+
disabled_: true
|
|
7777
|
+
});
|
|
7778
|
+
if (!search_field) break add_input_field;
|
|
7779
|
+
modal_body_style[1]({});
|
|
7780
|
+
modal_body_style_ref_?.(modal_body_style);
|
|
7781
|
+
const align_position = (0, $kyEB6$catchify)((0, $b6d5529b253681aa$export$b3ad617e9036868))(modal_body_style, search_field, undefined, true);
|
|
7782
|
+
div_with_field_class.addEventListener("click", (0, $kyEB6$catchify)((e)=>{
|
|
7783
|
+
const target = e.target;
|
|
7784
|
+
const sel = ".submit";
|
|
7785
|
+
if (target?.matches?.(sel) || target?.closest?.(sel)) // the search button is just decor, don't do anything when clicked
|
|
7786
|
+
return;
|
|
7787
|
+
// When selecting text in the SearchField that's in the page we want the same selection to persist. It doesn't by itself, since the SearchModal has an entirely different SearchField. Therefore, we manually copy the selection over.
|
|
7788
|
+
const selected_text_range_ = [
|
|
7789
|
+
input_element.selectionStart,
|
|
7790
|
+
input_element.selectionEnd
|
|
7791
|
+
];
|
|
7792
|
+
align_position?.();
|
|
7793
|
+
open_modal_({
|
|
7794
|
+
style_props_: modal_body_style,
|
|
7795
|
+
selected_text_range_: selected_text_range_
|
|
7796
|
+
}, ()=>input_field_accessor_value?.on_close_?.());
|
|
7797
|
+
input_field_accessor_value?.on_open_?.();
|
|
7798
|
+
}));
|
|
7799
|
+
set_search_field_elements(search_field);
|
|
7800
|
+
return;
|
|
7801
|
+
}
|
|
7802
|
+
// We bailed out of adding the input field
|
|
7803
|
+
set_search_field_elements();
|
|
7804
|
+
// There *might* still be a modal open, either from depict_search.modal_open = true or clicking the SearchField which existed here. Said modal now doesn't have anything to align to anymore - it will still try to align to the style_props_ which it got through the modal_body_style_ref_ which are now no longer updated.
|
|
7805
|
+
// In that case, we write what's needed to center the modal to the modal_body_style for the lifetime of this effect function call to make sure the modal is centered and the UI doesn't look "botched".
|
|
7806
|
+
(0, $1801dbce7adb3f19$export$41b4894022a3580f)({
|
|
7807
|
+
style_props_: modal_body_style
|
|
7808
|
+
});
|
|
7809
|
+
});
|
|
7752
7810
|
return [
|
|
7753
7811
|
document.createComment("Search page based on Depict SDK"),
|
|
7754
7812
|
(()=>{
|
|
7755
7813
|
const _el$2 = $7097477c78a89208$var$_tmpl$2.cloneNode(true), _el$3 = _el$2.firstChild;
|
|
7756
|
-
(0, $kyEB6$insert)(_el$3,
|
|
7814
|
+
(0, $kyEB6$insert)(_el$3, get_search_field_elements, null);
|
|
7757
7815
|
(0, $kyEB6$insert)(_el$3, make_category_suggestion_card_ ? (0, $kyEB6$createComponent)((0, $b7436a6d1fd64e3b$export$b69d0d92862de18b), {
|
|
7758
7816
|
severity_: "error",
|
|
7759
7817
|
message_: "Category suggestions failed",
|
|
@@ -7881,7 +7939,6 @@ function $7097477c78a89208$export$a54ec244c8863715(opts) {
|
|
|
7881
7939
|
|
|
7882
7940
|
|
|
7883
7941
|
|
|
7884
|
-
|
|
7885
7942
|
function $4ca91518c9a35379$export$828dcdd425fd3231(aligner) {
|
|
7886
7943
|
const style_element = document.createElement("style");
|
|
7887
7944
|
document.head.append(style_element);
|
|
@@ -7906,6 +7963,7 @@ function $4ca91518c9a35379$export$828dcdd425fd3231(aligner) {
|
|
|
7906
7963
|
|
|
7907
7964
|
|
|
7908
7965
|
|
|
7966
|
+
|
|
7909
7967
|
const $806c97b931758897$var$_tmpl$ = /*@__PURE__*/ (0, /*@__PURE__*/$kyEB6$template)(`<div class="depict plp search"></div>`, 2);
|
|
7910
7968
|
/**
|
|
7911
7969
|
* Type for the private properties that are shared between the different exported search SDK wrapper functions. SDK users are not allowed to change/access these, they're an internal implementation detail.
|
|
@@ -8048,18 +8106,7 @@ class $806c97b931758897$export$ac6237957a15b3f0 {
|
|
|
8048
8106
|
return;
|
|
8049
8107
|
}
|
|
8050
8108
|
// Open centered modal
|
|
8051
|
-
const
|
|
8052
|
-
const desktop_short = (0, $dc9262ef6f786812$export$d9f36cf74e24d595)("(max-height: 790px)");
|
|
8053
|
-
const mobile_short = (0, $dc9262ef6f786812$export$d9f36cf74e24d595)("(max-height: 1000px)");
|
|
8054
|
-
const transform_y = (0, $kyEB6$createMemo)(()=>supports_hover() ? !desktop_short() : !mobile_short());
|
|
8055
|
-
const style_props_ = (0, $kyEB6$createSignal)({
|
|
8056
|
-
position: "fixed",
|
|
8057
|
-
top: "50%"
|
|
8058
|
-
});
|
|
8059
|
-
(0, $kyEB6$createComputed)(()=>style_props_[1]((old_value)=>({
|
|
8060
|
-
...old_value,
|
|
8061
|
-
transform: transform_y() ? "translateY(-50%)" : "unset"
|
|
8062
|
-
})));
|
|
8109
|
+
const style_props_ = (0, $1801dbce7adb3f19$export$41b4894022a3580f)();
|
|
8063
8110
|
if (signal_value_is_options) {
|
|
8064
8111
|
const [options_arg, ...rest] = open_signal_value;
|
|
8065
8112
|
open_modal_({
|
|
@@ -8127,7 +8174,8 @@ function $806c97b931758897$var$get_shared_properties(depict_search) {
|
|
|
8127
8174
|
if (!shared_properties) throw new Error("Can't connect to provided DepictSearch instance");
|
|
8128
8175
|
return shared_properties;
|
|
8129
8176
|
}
|
|
8130
|
-
function $806c97b931758897$export$f2dc7e4e4aa11abb(
|
|
8177
|
+
function $806c97b931758897$export$f2dc7e4e4aa11abb(props) {
|
|
8178
|
+
const { depict_search: depict_search , grid_spacing: grid_spacing , cols_at_size: cols_at_size , product_card_template: product_card_template , extra_depict_options: extra_depict_options } = props;
|
|
8131
8179
|
const shared_properties = $806c97b931758897$var$get_shared_properties(depict_search);
|
|
8132
8180
|
const grid_spacing_override = typeof grid_spacing === "string" ? {
|
|
8133
8181
|
grid_spacing: grid_spacing
|
|
@@ -8181,7 +8229,7 @@ function $806c97b931758897$export$f2dc7e4e4aa11abb({ depict_search: depict_searc
|
|
|
8181
8229
|
selected_filters_: shared_properties.selected_filters_,
|
|
8182
8230
|
showing_recommendation_rows_: state_.search_showing_recommendation_rows,
|
|
8183
8231
|
scroll_restoration_data_: state_.search_scroll_restoration_data,
|
|
8184
|
-
include_input_field_: include_input_field,
|
|
8232
|
+
include_input_field_: ()=>props.include_input_field,
|
|
8185
8233
|
layout_options_: {
|
|
8186
8234
|
cols_at_size: (0, $b5cccc8ee7d24677$export$6daf8749b65a1b77)(cols_at_size),
|
|
8187
8235
|
...grid_spacing_override
|