@depict-ai/ui 4.7.24 → 4.7.25
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 +112 -33
- package/ES10/index.d.ts +5 -1
- package/ES10/index.js +330 -252
- package/latest/index.cjs +112 -33
- package/latest/index.d.ts +5 -1
- package/latest/index.js +330 -252
- package/package.json +1 -1
- package/server/ES10/index.cjs +83 -20
- package/server/ES10/index.d.ts +5 -1
- package/server/ES10/index.js +219 -157
- package/server/latest/index.cjs +83 -20
- package/server/latest/index.d.ts +5 -1
- package/server/latest/index.js +219 -157
package/latest/index.js
CHANGED
|
@@ -1,13 +1,74 @@
|
|
|
1
|
-
import { add_to_version_info as $9HbP8$add_to_version_info, slider_fading_factory as $9HbP8$slider_fading_factory, Amazing_Slider as $9HbP8$Amazing_Slider, slider_snap_css as $9HbP8$slider_snap_css, catchify as $9HbP8$
|
|
2
|
-
import {
|
|
1
|
+
import { add_to_version_info as $9HbP8$add_to_version_info, slider_fading_factory as $9HbP8$slider_fading_factory, Amazing_Slider as $9HbP8$Amazing_Slider, slider_snap_css as $9HbP8$slider_snap_css, catchify as $9HbP8$catchify1, dlog as $9HbP8$dlog1, camelCasifyObject as $9HbP8$camelCasifyObject, useExpandingContainer as $9HbP8$useExpandingContainer, fetch_retry as $9HbP8$fetch_retry, base_url as $9HbP8$base_url, dwarn as $9HbP8$dwarn, slider_fractional_factory as $9HbP8$slider_fractional_factory, make_random_classname as $9HbP8$make_random_classname, n_col_styling_with_dist as $9HbP8$n_col_styling_with_dist, layout_get_visible_recs_without_partial_rows as $9HbP8$layout_get_visible_recs_without_partial_rows, layout_get_total_rec_amount_for_row as $9HbP8$layout_get_total_rec_amount_for_row, layout_media_query_header as $9HbP8$layout_media_query_header, report as $9HbP8$report, observer as $9HbP8$observer, javascript_media_query as $9HbP8$javascript_media_query, queueMacroTask as $9HbP8$queueMacroTask, findMostFrequentItem as $9HbP8$findMostFrequentItem, standard_price_format as $9HbP8$standard_price_format, instant_exec_on_suspect_history_change as $9HbP8$instant_exec_on_suspect_history_change, deparallelize_no_drop as $9HbP8$deparallelize_no_drop, ContainedImage as $9HbP8$ContainedImage, buildThresholdList as $9HbP8$buildThresholdList, make_asyncIterable_exiter as $9HbP8$make_asyncIterable_exiter, href_change_ipns as $9HbP8$href_change_ipns, base64_encode_unicode as $9HbP8$base64_encode_unicode, base64_decode_unicode as $9HbP8$base64_decode_unicode, use_href_accessor as $9HbP8$use_href_accessor, get_session_id as $9HbP8$get_session_id, add_version_query_params as $9HbP8$add_version_query_params, hex_to_rgb as $9HbP8$hex_to_rgb, relative_luminance_from_rgb as $9HbP8$relative_luminance_from_rgb, snakeCasifyObject as $9HbP8$snakeCasifyObject, sort_obj as $9HbP8$sort_obj, make_url_with_query_params as $9HbP8$make_url_with_query_params, insert_surfaces as $9HbP8$insert_surfaces, is_debug as $9HbP8$is_debug } from "@depict-ai/utilishared/latest";
|
|
2
|
+
import { dlog as $9HbP8$dlog, catchify as $9HbP8$catchify, ListenableSet as $9HbP8$ListenableSet, use_href_accessor as $9HbP8$use_href_accessor1, queueMacroTask as $9HbP8$queueMacroTask1, report as $9HbP8$report1 } from "@depict-ai/utilishared/latest";
|
|
3
|
+
import { createRoot as $9HbP8$createRoot, createSignal as $9HbP8$createSignal, createEffect as $9HbP8$createEffect, onCleanup as $9HbP8$onCleanup, createContext as $9HbP8$createContext, Show as $9HbP8$Show, useContext as $9HbP8$useContext, createMemo as $9HbP8$createMemo, untrack as $9HbP8$untrack, For as $9HbP8$For, getOwner as $9HbP8$getOwner, createResource as $9HbP8$createResource, runWithOwner as $9HbP8$runWithOwner, mergeProps as $9HbP8$mergeProps1, Suspense as $9HbP8$Suspense, createRenderEffect as $9HbP8$createRenderEffect, Index as $9HbP8$Index, createUniqueId as $9HbP8$createUniqueId, createComputed as $9HbP8$createComputed, ErrorBoundary as $9HbP8$ErrorBoundary, splitProps as $9HbP8$splitProps, on as $9HbP8$on, batch as $9HbP8$batch, createSelector as $9HbP8$createSelector, children as $9HbP8$children, createReaction as $9HbP8$createReaction, mapArray as $9HbP8$mapArray } from "solid-js";
|
|
3
4
|
import { template as $9HbP8$template, getNextElement as $9HbP8$getNextElement, insert as $9HbP8$insert, createComponent as $9HbP8$createComponent, isServer as $9HbP8$isServer, effect as $9HbP8$effect, setAttribute as $9HbP8$setAttribute, mergeProps as $9HbP8$mergeProps, className as $9HbP8$className, spread as $9HbP8$spread, runHydrationEvents as $9HbP8$runHydrationEvents, addEventListener as $9HbP8$addEventListener, memo as $9HbP8$memo, delegateEvents as $9HbP8$delegateEvents, getNextMarker as $9HbP8$getNextMarker, classList as $9HbP8$classList, use as $9HbP8$use, style as $9HbP8$style, setProperty as $9HbP8$setProperty, Dynamic as $9HbP8$Dynamic } from "solid-js/web";
|
|
4
|
-
import { ListenableSet as $9HbP8$ListenableSet, catchify as $9HbP8$catchify1, use_href_accessor as $9HbP8$use_href_accessor1, queueMacroTask as $9HbP8$queueMacroTask1, report as $9HbP8$report1 } from "@depict-ai/utilishared/latest";
|
|
5
5
|
import { createStore as $9HbP8$createStore, reconcile as $9HbP8$reconcile } from "solid-js/store";
|
|
6
6
|
|
|
7
7
|
/*! Depict.ai search and product listing SDK */
|
|
8
8
|
import { register_es_version } from "../multi_import_deduplicator.mjs";
|
|
9
9
|
register_es_version("ui", "latest");
|
|
10
|
-
const $ec291e0010116877$export$83d89fbfd8236492 = "4.7.
|
|
10
|
+
const $ec291e0010116877$export$83d89fbfd8236492 = "4.7.25";
|
|
11
|
+
let $4eb0a704f8f30273$var$elementsHoveredSignal;
|
|
12
|
+
let $4eb0a704f8f30273$var$consumersSignal;
|
|
13
|
+
function $4eb0a704f8f30273$export$d4d96868197be50e() {
|
|
14
|
+
if (!$4eb0a704f8f30273$var$elementsHoveredSignal || !$4eb0a704f8f30273$var$consumersSignal) $9HbP8$createRoot(dispose => {
|
|
15
|
+
$4eb0a704f8f30273$var$elementsHoveredSignal = $9HbP8$createSignal(new Set());
|
|
16
|
+
$4eb0a704f8f30273$var$consumersSignal = $9HbP8$createSignal(0);
|
|
17
|
+
const [consumers] = $4eb0a704f8f30273$var$consumersSignal;
|
|
18
|
+
// No matter how often useMobileHover is called, only add one listener and get hovered elements once per touchmove event, for efficiency
|
|
19
|
+
$4eb0a704f8f30273$var$doHeavyCalculations();
|
|
20
|
+
$9HbP8$createEffect(() => {
|
|
21
|
+
// No-one needs information anymore, stop listening
|
|
22
|
+
const users = consumers();
|
|
23
|
+
if (users < 1) {
|
|
24
|
+
$9HbP8$dlog("Stopping to listen for mobile hover");
|
|
25
|
+
dispose();
|
|
26
|
+
$4eb0a704f8f30273$var$elementsHoveredSignal = undefined;
|
|
27
|
+
$4eb0a704f8f30273$var$consumersSignal = undefined;
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
});
|
|
31
|
+
const [elementsHovered] = $4eb0a704f8f30273$var$elementsHoveredSignal;
|
|
32
|
+
const [, setConsumers] = $4eb0a704f8f30273$var$consumersSignal;
|
|
33
|
+
setConsumers(prev => prev + 1);
|
|
34
|
+
$9HbP8$onCleanup(() => setConsumers(prev => prev - 1));
|
|
35
|
+
return elementsHovered;
|
|
36
|
+
}
|
|
37
|
+
function $4eb0a704f8f30273$var$doHeavyCalculations() {
|
|
38
|
+
$9HbP8$dlog("Starting to listen for mobile hover");
|
|
39
|
+
const [, setElementsHovered] = $4eb0a704f8f30273$var$elementsHoveredSignal;
|
|
40
|
+
const elementAtTouch = new Map();
|
|
41
|
+
const updateSet = () => setElementsHovered(new Set([...elementAtTouch.values()].filter(v => v)));
|
|
42
|
+
const setPositionHandler = $9HbP8$catchify(evt => {
|
|
43
|
+
for (const touch of evt.changedTouches) elementAtTouch.set(touch.identifier, $4eb0a704f8f30273$var$getElementAtTouch(touch));
|
|
44
|
+
updateSet();
|
|
45
|
+
});
|
|
46
|
+
const deleteTouchHandler = $9HbP8$catchify(evt => {
|
|
47
|
+
for (const touch of evt.changedTouches) elementAtTouch.delete(touch.identifier);
|
|
48
|
+
updateSet();
|
|
49
|
+
});
|
|
50
|
+
addEventListener("touchstart", setPositionHandler, {
|
|
51
|
+
passive: true
|
|
52
|
+
});
|
|
53
|
+
addEventListener("touchmove", setPositionHandler, {
|
|
54
|
+
passive: true
|
|
55
|
+
});
|
|
56
|
+
addEventListener("touchend", deleteTouchHandler, {
|
|
57
|
+
passive: true
|
|
58
|
+
});
|
|
59
|
+
addEventListener("touchcancel", deleteTouchHandler, {
|
|
60
|
+
passive: true
|
|
61
|
+
});
|
|
62
|
+
$9HbP8$onCleanup(() => {
|
|
63
|
+
removeEventListener("touchstart", setPositionHandler);
|
|
64
|
+
removeEventListener("touchmove", setPositionHandler);
|
|
65
|
+
removeEventListener("touchend", deleteTouchHandler);
|
|
66
|
+
removeEventListener("touchcancel", deleteTouchHandler);
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
function $4eb0a704f8f30273$var$getElementAtTouch(touch) {
|
|
70
|
+
return document.elementFromPoint(touch.clientX, touch.clientY);
|
|
71
|
+
}
|
|
11
72
|
function $5e3d278ef4c80cd7$export$54299a3c81f5425() {
|
|
12
73
|
const d = document;
|
|
13
74
|
const [isVisible, setIsVisible] = $9HbP8$createSignal(d.visibilityState !== "hidden");
|
|
@@ -277,7 +338,7 @@ function $29ec7cddbe1d3484$export$43f0fb951fcb0c54({
|
|
|
277
338
|
} catch (e) {
|
|
278
339
|
if (!$29ec7cddbe1d3484$var$printedCloneError) {
|
|
279
340
|
$29ec7cddbe1d3484$var$printedCloneError = true;
|
|
280
|
-
$9HbP8$
|
|
341
|
+
$9HbP8$dlog1("Can't clone display", display, " (uncloneable objects in it), make sure you don't mutate it in the template since we cache.", e);
|
|
281
342
|
}
|
|
282
343
|
}
|
|
283
344
|
let renderingResult;
|
|
@@ -376,7 +437,7 @@ function $f091294da861020c$export$4a14175d33d81a96({
|
|
|
376
437
|
};
|
|
377
438
|
// The following sets up an intersection observer to determine which results are in the viewport, used for the ScrollStatus indicator, knowing when to load more and any other consumer of the useProductCardIsVisible hook.
|
|
378
439
|
const shouldObserve = $9HbP8$createMemo(() => alwaysObserveCards_ || listenersForIntersecting() > 0);
|
|
379
|
-
const intersection_observer = new IntersectionObserver($9HbP8$
|
|
440
|
+
const intersection_observer = new IntersectionObserver($9HbP8$catchify1(records => {
|
|
380
441
|
const intersectingValue = currentlyIntersecting();
|
|
381
442
|
for (let i = 0; i < records.length; i++) {
|
|
382
443
|
const record = records[i];
|
|
@@ -719,7 +780,7 @@ function $c8d5ff4524619fcd$export$445d8d3f5f706a40(props, container_element, ins
|
|
|
719
780
|
const view_less_button_class = "l" + $9HbP8$createUniqueId(); // https://github.com/solidjs/solid-docs/issues/263#issuecomment-1622388079
|
|
720
781
|
const view_more_button_container = $9HbP8$createMemo(() => have_a_view_more_button() && (() => {
|
|
721
782
|
var _el$2 = $9HbP8$getNextElement($c8d5ff4524619fcd$var$_tmpl$);
|
|
722
|
-
$9HbP8$addEventListener(_el$2, "click", $9HbP8$
|
|
783
|
+
$9HbP8$addEventListener(_el$2, "click", $9HbP8$catchify1(() => set_rows_visible()(prev => prev + (rows_or_empty_object().rows_per_click ?? 1))), true);
|
|
723
784
|
$9HbP8$className(_el$2, `load-more-container ${view_more_button_class}`);
|
|
724
785
|
$9HbP8$insert(_el$2, () => rows_or_empty_object().button);
|
|
725
786
|
$9HbP8$runHydrationEvents();
|
|
@@ -728,7 +789,7 @@ function $c8d5ff4524619fcd$export$445d8d3f5f706a40(props, container_element, ins
|
|
|
728
789
|
// We need to have duplicate buttons because which ones is shown depends on the number of rows visible and therefore on the viewport size and therefore on the css media queries
|
|
729
790
|
const view_less_button_container = $9HbP8$createMemo(() => have_a_view_less_button() && (() => {
|
|
730
791
|
var _el$3 = $9HbP8$getNextElement($c8d5ff4524619fcd$var$_tmpl$);
|
|
731
|
-
$9HbP8$addEventListener(_el$3, "click", $9HbP8$
|
|
792
|
+
$9HbP8$addEventListener(_el$3, "click", $9HbP8$catchify1(() => set_rows_visible()(() => rows_or_empty_object().start_rows ?? 1)), true);
|
|
732
793
|
$9HbP8$className(_el$3, `load-less-container ${view_less_button_class}`);
|
|
733
794
|
$9HbP8$insert(_el$3, () => rows_or_empty_object().view_less_button);
|
|
734
795
|
$9HbP8$runHydrationEvents();
|
|
@@ -751,7 +812,7 @@ function $c8d5ff4524619fcd$export$445d8d3f5f706a40(props, container_element, ins
|
|
|
751
812
|
}
|
|
752
813
|
update_children_count();
|
|
753
814
|
if (!(0, $9HbP8$isServer)) {
|
|
754
|
-
const mutation_observer = new MutationObserver($9HbP8$
|
|
815
|
+
const mutation_observer = new MutationObserver($9HbP8$catchify1(update_children_count));
|
|
755
816
|
mutation_observer.observe(container_element, {
|
|
756
817
|
childList: true
|
|
757
818
|
});
|
|
@@ -1074,7 +1135,7 @@ function $4ea56971d92eb0cd$export$2972b890694ced75(callback, {
|
|
|
1074
1135
|
}
|
|
1075
1136
|
function $e8ffe11ed01df0fe$export$e6fffe67d4cdd848(whatToWatch) {
|
|
1076
1137
|
const [size, setSize] = $9HbP8$createSignal(0);
|
|
1077
|
-
const resizeObserver = new ResizeObserver($9HbP8$
|
|
1138
|
+
const resizeObserver = new ResizeObserver($9HbP8$catchify1(records => {
|
|
1078
1139
|
for (let j = 0; j < records.length; j++) {
|
|
1079
1140
|
const {
|
|
1080
1141
|
width: width
|
|
@@ -1087,7 +1148,7 @@ function $e8ffe11ed01df0fe$export$e6fffe67d4cdd848(whatToWatch) {
|
|
|
1087
1148
|
// It doesn't seem to work even when waiting for it to be in the DOM, also wait an animation frame
|
|
1088
1149
|
const disconnect = (0, $9HbP8$observer).onexists(whatToWatch, ({
|
|
1089
1150
|
element: element
|
|
1090
|
-
}) => requestAnimationFrame($9HbP8$
|
|
1151
|
+
}) => requestAnimationFrame($9HbP8$catchify1(() => resizeObserver.observe(element))));
|
|
1091
1152
|
$9HbP8$onCleanup(() => {
|
|
1092
1153
|
resizeObserver.disconnect();
|
|
1093
1154
|
disconnect();
|
|
@@ -1144,7 +1205,7 @@ function $e8ffe11ed01df0fe$export$6e5611bc7e57e477(props) {
|
|
|
1144
1205
|
if (existingStack) return existingStack.add(fn);
|
|
1145
1206
|
const newStack = new Set([fn]);
|
|
1146
1207
|
if (listingContext) listingContext[$e8ffe11ed01df0fe$var$onIdleFunctionsSymbol] = newStack;
|
|
1147
|
-
const processStackWhenIdle = () => $4ea56971d92eb0cd$export$2972b890694ced75($9HbP8$
|
|
1208
|
+
const processStackWhenIdle = () => $4ea56971d92eb0cd$export$2972b890694ced75($9HbP8$catchify1(deadline => {
|
|
1148
1209
|
const start = performance.now();
|
|
1149
1210
|
const thirdDeadlineTime = deadline.timeRemaining() / 3; // observers coming after this take up 2-3x the time so don't use all of it
|
|
1150
1211
|
for (const fn of newStack) {
|
|
@@ -1176,7 +1237,7 @@ function $e8ffe11ed01df0fe$export$6e5611bc7e57e477(props) {
|
|
|
1176
1237
|
let prevValue;
|
|
1177
1238
|
const aspectRatios = listingContext[$e8ffe11ed01df0fe$export$f8945274f08a3105] ||= new Set();
|
|
1178
1239
|
const [, setMostPrevalentAspectRatio] = listingContext[$e8ffe11ed01df0fe$export$6066eb417ed2e9f7] ||= $9HbP8$createSignal();
|
|
1179
|
-
img.addEventListener("load", $9HbP8$
|
|
1240
|
+
img.addEventListener("load", $9HbP8$catchify1(() => {
|
|
1180
1241
|
if (props.keyRatioUpdating) {
|
|
1181
1242
|
if (!srcJustChanged) return;
|
|
1182
1243
|
srcJustChanged = false;
|
|
@@ -1207,7 +1268,7 @@ function $e8ffe11ed01df0fe$export$6e5611bc7e57e477(props) {
|
|
|
1207
1268
|
$9HbP8$createEffect(() => {
|
|
1208
1269
|
if (!props.size()) return; // wait until we have a size, run every time the size changes
|
|
1209
1270
|
if (timeoutSet) return;
|
|
1210
|
-
const handler = $9HbP8$
|
|
1271
|
+
const handler = $9HbP8$catchify1(() => {
|
|
1211
1272
|
if (gotCleanedUp) return;
|
|
1212
1273
|
img.sizes = sizePX(); // use latest available value of props.size
|
|
1213
1274
|
if (!sizeSetFastPath) {
|
|
@@ -1341,11 +1402,11 @@ function $8c0f86cb3e266eeb$export$a71e92cfbb498adc(props) {
|
|
|
1341
1402
|
return $9HbP8$standard_price_format(props.price_, price_formatting.places_after_comma_, price_formatting.decimal_places_delimiter_, price_formatting.thousands_delimiter_);
|
|
1342
1403
|
});
|
|
1343
1404
|
}
|
|
1344
|
-
var $
|
|
1345
|
-
$
|
|
1346
|
-
$
|
|
1347
|
-
$
|
|
1348
|
-
function $
|
|
1405
|
+
var $08a49ecdcd5beaca$var$_tmpl$ = /*#__PURE__*/$9HbP8$template(`<div class=img-wrapper>`),
|
|
1406
|
+
$08a49ecdcd5beaca$var$_tmpl$2 = /*#__PURE__*/$9HbP8$template(`<span class="d-price original">`),
|
|
1407
|
+
$08a49ecdcd5beaca$var$_tmpl$3 = /*#__PURE__*/$9HbP8$template(`<div class=right-part><div class=text-container><span class="d-title line-clamp"></span><span class=d-price></span><!$><!/></div><!$><!/>`),
|
|
1408
|
+
$08a49ecdcd5beaca$var$_tmpl$4 = /*#__PURE__*/$9HbP8$template(`<a class=look-item><!$><!/><!$><!/>`);
|
|
1409
|
+
function $08a49ecdcd5beaca$export$b73ed90f0ee50dc3({
|
|
1349
1410
|
display_: display_,
|
|
1350
1411
|
FavoriteButton_: FavoriteButton_,
|
|
1351
1412
|
userWantsExpandedSignal_: [userWantsExpanded, setUserWantsExpanded],
|
|
@@ -1371,7 +1432,7 @@ function $5a6c386e1bde5665$export$b73ed90f0ee50dc3({
|
|
|
1371
1432
|
const FavoriteButton = FavoriteButton_; // Just to get rid of the type error - TS doesn't understand <Show>
|
|
1372
1433
|
const title = $9HbP8$createMemo(() => variantToUse()?.title);
|
|
1373
1434
|
return (() => {
|
|
1374
|
-
var _el$ = $9HbP8$getNextElement($
|
|
1435
|
+
var _el$ = $9HbP8$getNextElement($08a49ecdcd5beaca$var$_tmpl$4),
|
|
1375
1436
|
_el$12 = _el$.firstChild,
|
|
1376
1437
|
[_el$13, _co$3] = $9HbP8$getNextMarker(_el$12.nextSibling),
|
|
1377
1438
|
_el$14 = _el$13.nextSibling,
|
|
@@ -1382,7 +1443,7 @@ function $5a6c386e1bde5665$export$b73ed90f0ee50dc3({
|
|
|
1382
1443
|
href: href()
|
|
1383
1444
|
} : {}, {
|
|
1384
1445
|
get onClick() {
|
|
1385
|
-
return $9HbP8$
|
|
1446
|
+
return $9HbP8$catchify1(event_ => {
|
|
1386
1447
|
if (enableLink()) {
|
|
1387
1448
|
pseudoRouter_.navigate_.go_to_({
|
|
1388
1449
|
new_url_: href(),
|
|
@@ -1404,7 +1465,7 @@ function $5a6c386e1bde5665$export$b73ed90f0ee50dc3({
|
|
|
1404
1465
|
});
|
|
1405
1466
|
},
|
|
1406
1467
|
get children() {
|
|
1407
|
-
var _el$2 = $9HbP8$getNextElement($
|
|
1468
|
+
var _el$2 = $9HbP8$getNextElement($08a49ecdcd5beaca$var$_tmpl$);
|
|
1408
1469
|
$9HbP8$insert(_el$2, $9HbP8$createComponent((0, $9HbP8$Show), {
|
|
1409
1470
|
get when() {
|
|
1410
1471
|
return imageUrl();
|
|
@@ -1439,7 +1500,7 @@ function $5a6c386e1bde5665$export$b73ed90f0ee50dc3({
|
|
|
1439
1500
|
return (animationEffectExists() ? isExpandedThrottledByOurEffectRun() : userWantsExpanded()) || animationIsRunning();
|
|
1440
1501
|
},
|
|
1441
1502
|
get children() {
|
|
1442
|
-
var _el$3 = $9HbP8$getNextElement($
|
|
1503
|
+
var _el$3 = $9HbP8$getNextElement($08a49ecdcd5beaca$var$_tmpl$3),
|
|
1443
1504
|
_el$4 = _el$3.firstChild,
|
|
1444
1505
|
_el$5 = _el$4.firstChild,
|
|
1445
1506
|
_el$6 = _el$5.nextSibling,
|
|
@@ -1475,7 +1536,7 @@ function $5a6c386e1bde5665$export$b73ed90f0ee50dc3({
|
|
|
1475
1536
|
setAnimationEffectExists(true);
|
|
1476
1537
|
$9HbP8$onCleanup(() => setAnimationEffectExists(false));
|
|
1477
1538
|
});
|
|
1478
|
-
for (const ev of ["cancel", "finish"]) textContainerAnimation.addEventListener(ev, $9HbP8$
|
|
1539
|
+
for (const ev of ["cancel", "finish"]) textContainerAnimation.addEventListener(ev, $9HbP8$catchify1(() => setAnimationIsRunning(false)));
|
|
1479
1540
|
disconnector();
|
|
1480
1541
|
}));
|
|
1481
1542
|
}, _el$3);
|
|
@@ -1519,7 +1580,7 @@ function $5a6c386e1bde5665$export$b73ed90f0ee50dc3({
|
|
|
1519
1580
|
return isOnSale();
|
|
1520
1581
|
},
|
|
1521
1582
|
get children() {
|
|
1522
|
-
var _el$7 = $9HbP8$getNextElement($
|
|
1583
|
+
var _el$7 = $9HbP8$getNextElement($08a49ecdcd5beaca$var$_tmpl$2);
|
|
1523
1584
|
$9HbP8$insert(_el$7, $9HbP8$createComponent((0, $9HbP8$Show), {
|
|
1524
1585
|
get when() {
|
|
1525
1586
|
return variantToUse() && !originalPrice.loading;
|
|
@@ -1582,7 +1643,7 @@ async function $1f9a34ca8a87d49f$var$checkIfIsAffectedByChromeBug326498383() {
|
|
|
1582
1643
|
const waitAFrame = () => new Promise(r => requestAnimationFrame(() => requestAnimationFrame(r)));
|
|
1583
1644
|
const timeoutPromise = new Promise(r => {
|
|
1584
1645
|
resolveTimeoutPromise = r;
|
|
1585
|
-
setTimeout($9HbP8$
|
|
1646
|
+
setTimeout($9HbP8$catchify1(() => {
|
|
1586
1647
|
r();
|
|
1587
1648
|
div.remove();
|
|
1588
1649
|
}), 500);
|
|
@@ -1614,12 +1675,12 @@ async function $1f9a34ca8a87d49f$var$checkIfIsAffectedByChromeBug326498383() {
|
|
|
1614
1675
|
});
|
|
1615
1676
|
await timeoutPromise;
|
|
1616
1677
|
} catch (e) {
|
|
1617
|
-
$9HbP8$
|
|
1678
|
+
$9HbP8$dlog1("Failed to check if affected by chrome bug 326498383", e);
|
|
1618
1679
|
}
|
|
1619
1680
|
return isAffected;
|
|
1620
1681
|
}
|
|
1621
|
-
var $
|
|
1622
|
-
function $
|
|
1682
|
+
var $11fb4b33b36ecfac$var$_tmpl$ = /*#__PURE__*/$9HbP8$template(`<div class=scroll-padding><div class=look-overlay>`);
|
|
1683
|
+
function $11fb4b33b36ecfac$export$ebf0b1d4f90c09ae({
|
|
1623
1684
|
displays_: displays_,
|
|
1624
1685
|
FavoriteButton_: FavoriteButton_,
|
|
1625
1686
|
userWantsExpandedSignal_: userWantsExpandedSignal_,
|
|
@@ -1638,6 +1699,7 @@ function $7555dcad3b8a4632$export$ebf0b1d4f90c09ae({
|
|
|
1638
1699
|
const textFadeInAnimationRunning = $9HbP8$createSignal(false);
|
|
1639
1700
|
const [getSecondPartAnimationRunning] = textFadeInAnimationRunning;
|
|
1640
1701
|
const [userWantsExpanded, setUserWantsExpanded] = userWantsExpandedSignal_;
|
|
1702
|
+
//const elementsHovered = useMobileHover();
|
|
1641
1703
|
$1f9a34ca8a87d49f$export$7b9a0e99f0aeb2f3().then(is => isAffectedByChromeBug = is);
|
|
1642
1704
|
return $9HbP8$createComponent((0, $011607bdf658f807$export$e68cff63f76bd15b), {
|
|
1643
1705
|
get children() {
|
|
@@ -1646,21 +1708,37 @@ function $7555dcad3b8a4632$export$ebf0b1d4f90c09ae({
|
|
|
1646
1708
|
return containerWidth_() || !displays_();
|
|
1647
1709
|
},
|
|
1648
1710
|
get children() {
|
|
1649
|
-
var _el$ = $9HbP8$getNextElement($
|
|
1711
|
+
var _el$ = $9HbP8$getNextElement($11fb4b33b36ecfac$var$_tmpl$),
|
|
1650
1712
|
_el$2 = _el$.firstChild;
|
|
1651
|
-
$9HbP8$addEventListener(_el$2, "mouseleave", $9HbP8$
|
|
1652
|
-
$9HbP8$addEventListener(_el$2, "mouseenter", $9HbP8$
|
|
1653
|
-
$9HbP8$use(el =>
|
|
1654
|
-
|
|
1655
|
-
|
|
1656
|
-
|
|
1657
|
-
|
|
1658
|
-
|
|
1659
|
-
|
|
1660
|
-
|
|
1661
|
-
|
|
1713
|
+
$9HbP8$addEventListener(_el$2, "mouseleave", $9HbP8$catchify1(() => supportsHover_() && setUserWantsExpanded(false)));
|
|
1714
|
+
$9HbP8$addEventListener(_el$2, "mouseenter", $9HbP8$catchify1(() => supportsHover_() && setUserWantsExpanded(true)));
|
|
1715
|
+
$9HbP8$use(el => {
|
|
1716
|
+
$9HbP8$createEffect(() => {
|
|
1717
|
+
if (userWantsExpanded()) return;
|
|
1718
|
+
if (isAffectedByChromeBug) {
|
|
1719
|
+
$11fb4b33b36ecfac$var$scrollingFunctionForChrome(el, 0, animationDuration_);
|
|
1720
|
+
return;
|
|
1721
|
+
}
|
|
1722
|
+
el.scrollTo({
|
|
1723
|
+
top: 0,
|
|
1724
|
+
behavior: "smooth"
|
|
1725
|
+
});
|
|
1662
1726
|
});
|
|
1663
|
-
|
|
1727
|
+
// createEffect(wasOpenedByHover => {
|
|
1728
|
+
// if (supportsHover_()) return;
|
|
1729
|
+
// const hovered = elementsHovered();
|
|
1730
|
+
// checkHovered: {
|
|
1731
|
+
// if (hovered.has(el)) break checkHovered;
|
|
1732
|
+
// for (const element of hovered) {
|
|
1733
|
+
// if (el.contains(element)) break checkHovered;
|
|
1734
|
+
// }
|
|
1735
|
+
// if (wasOpenedByHover) setUserWantsExpanded(false);
|
|
1736
|
+
// return;
|
|
1737
|
+
// }
|
|
1738
|
+
// setUserWantsExpanded(true);
|
|
1739
|
+
// return true;
|
|
1740
|
+
// });
|
|
1741
|
+
}, _el$2);
|
|
1664
1742
|
$9HbP8$insert(_el$2, $9HbP8$createComponent((0, $9HbP8$Index), {
|
|
1665
1743
|
get each() {
|
|
1666
1744
|
return displays_() || Array.from({
|
|
@@ -1668,7 +1746,7 @@ function $7555dcad3b8a4632$export$ebf0b1d4f90c09ae({
|
|
|
1668
1746
|
});
|
|
1669
1747
|
},
|
|
1670
1748
|
children: (display, index) => {
|
|
1671
|
-
return $9HbP8$createComponent((0, $
|
|
1749
|
+
return $9HbP8$createComponent((0, $08a49ecdcd5beaca$export$b73ed90f0ee50dc3), {
|
|
1672
1750
|
pseudoRouter_: pseudoRouter_,
|
|
1673
1751
|
animationDuration_: animationDuration_,
|
|
1674
1752
|
display_: display,
|
|
@@ -1678,7 +1756,7 @@ function $7555dcad3b8a4632$export$ebf0b1d4f90c09ae({
|
|
|
1678
1756
|
priceFormatting_: priceFormatting_,
|
|
1679
1757
|
outerRef_: el => $9HbP8$createEffect(() => {
|
|
1680
1758
|
if (index !== 0) return;
|
|
1681
|
-
const resizeObserver = new ResizeObserver($9HbP8$
|
|
1759
|
+
const resizeObserver = new ResizeObserver($9HbP8$catchify1(records => setLookItemHeight(records.at(-1).contentRect.height)));
|
|
1682
1760
|
resizeObserver.observe(el);
|
|
1683
1761
|
$9HbP8$onCleanup(() => resizeObserver.disconnect());
|
|
1684
1762
|
})
|
|
@@ -1709,11 +1787,11 @@ function $7555dcad3b8a4632$export$ebf0b1d4f90c09ae({
|
|
|
1709
1787
|
/**
|
|
1710
1788
|
* Workaround for Chrome bug 326498383, adapted version of https://stackoverflow.com/a/39494245
|
|
1711
1789
|
*/
|
|
1712
|
-
function $
|
|
1790
|
+
function $11fb4b33b36ecfac$var$scrollingFunctionForChrome(element, targetScrollY, duration) {
|
|
1713
1791
|
let start;
|
|
1714
1792
|
const startingY = element.scrollTop;
|
|
1715
1793
|
const diff = targetScrollY - startingY;
|
|
1716
|
-
const step = $9HbP8$
|
|
1794
|
+
const step = $9HbP8$catchify1(timestamp => {
|
|
1717
1795
|
if (!start) start = timestamp;
|
|
1718
1796
|
// Elapsed milliseconds since start of scrolling.
|
|
1719
1797
|
const time = timestamp - start;
|
|
@@ -1726,8 +1804,8 @@ function $7555dcad3b8a4632$var$scrollingFunctionForChrome(element, targetScrollY
|
|
|
1726
1804
|
// Bootstrap our animation - it will get called right before next frame shall be rendered.
|
|
1727
1805
|
requestAnimationFrame(step);
|
|
1728
1806
|
}
|
|
1729
|
-
var $
|
|
1730
|
-
function $
|
|
1807
|
+
var $e9d1d09be9e6471e$var$_tmpl$ = /*#__PURE__*/$9HbP8$template(`<div class=look-card><!$><!/><!$><!/>`);
|
|
1808
|
+
function $e9d1d09be9e6471e$export$44809a8a3e867e30({
|
|
1731
1809
|
display_: display_,
|
|
1732
1810
|
expandedLooksSignal_: [expandedLooks_, setExpandedLooks],
|
|
1733
1811
|
FavoriteButton_: FavoriteButton_,
|
|
@@ -1744,7 +1822,7 @@ function $28ee4f7db3cc44b8$export$44809a8a3e867e30({
|
|
|
1744
1822
|
const index = $b6440e72ed83671a$export$e3faf4d95300054f();
|
|
1745
1823
|
const [containerWidth_, setContainerWidth] = $9HbP8$createSignal();
|
|
1746
1824
|
const [containerHeight_, setContainerHeight] = $9HbP8$createSignal();
|
|
1747
|
-
const clickHandler = $9HbP8$
|
|
1825
|
+
const clickHandler = $9HbP8$catchify1(({
|
|
1748
1826
|
target: target
|
|
1749
1827
|
}) => {
|
|
1750
1828
|
if (target !== container && !container.contains(target))
|
|
@@ -1784,15 +1862,15 @@ function $28ee4f7db3cc44b8$export$44809a8a3e867e30({
|
|
|
1784
1862
|
// Close us if another look expands
|
|
1785
1863
|
$9HbP8$createEffect(() => !expandedLooks_().has(us) && setUserWantsExpanded(false));
|
|
1786
1864
|
return (() => {
|
|
1787
|
-
var _el$ = $9HbP8$getNextElement($
|
|
1865
|
+
var _el$ = $9HbP8$getNextElement($e9d1d09be9e6471e$var$_tmpl$),
|
|
1788
1866
|
_el$2 = _el$.firstChild,
|
|
1789
1867
|
[_el$3, _co$] = $9HbP8$getNextMarker(_el$2.nextSibling),
|
|
1790
1868
|
_el$4 = _el$3.nextSibling,
|
|
1791
1869
|
[_el$5, _co$2] = $9HbP8$getNextMarker(_el$4.nextSibling);
|
|
1792
|
-
$9HbP8$addEventListener(_el$, "click", $9HbP8$
|
|
1870
|
+
$9HbP8$addEventListener(_el$, "click", $9HbP8$catchify1(() => setUserWantsExpanded(prev => !prev)), true);
|
|
1793
1871
|
$9HbP8$use(el => {
|
|
1794
1872
|
container = el;
|
|
1795
|
-
const ro = new ResizeObserver($9HbP8$
|
|
1873
|
+
const ro = new ResizeObserver($9HbP8$catchify1(records => {
|
|
1796
1874
|
const last = records.at(-1);
|
|
1797
1875
|
if (!last) return;
|
|
1798
1876
|
const {
|
|
@@ -1824,7 +1902,7 @@ function $28ee4f7db3cc44b8$export$44809a8a3e867e30({
|
|
|
1824
1902
|
});
|
|
1825
1903
|
}
|
|
1826
1904
|
}), _el$3, _co$);
|
|
1827
|
-
$9HbP8$insert(_el$, $9HbP8$createComponent((0, $
|
|
1905
|
+
$9HbP8$insert(_el$, $9HbP8$createComponent((0, $11fb4b33b36ecfac$export$ebf0b1d4f90c09ae), {
|
|
1828
1906
|
displays_: () => display_()?.displays,
|
|
1829
1907
|
userWantsExpandedSignal_: useWantsExpandedSignal_,
|
|
1830
1908
|
containerWidth_: containerWidth_,
|
|
@@ -1908,7 +1986,7 @@ class $4fd2ba03703a7d92$export$7e1297a3a19f10d8 {
|
|
|
1908
1986
|
* @param is_replace_ if you want to replace the current URL in history instead of pushing a new one
|
|
1909
1987
|
* @param listing_id_ If you are navigating to a category and know the listing_id of, please provide it. This is for making a better devEx in js-ui
|
|
1910
1988
|
*/
|
|
1911
|
-
go_to_: $9HbP8$
|
|
1989
|
+
go_to_: $9HbP8$catchify1(async ({
|
|
1912
1990
|
new_url_: raw_new_url,
|
|
1913
1991
|
event_: event_,
|
|
1914
1992
|
force_spa_navigation_: force_spa_navigation_,
|
|
@@ -2102,7 +2180,7 @@ function $07ef910e8ef6b783$export$2c9f9bf2092486aa(props) {
|
|
|
2102
2180
|
return $07ef910e8ef6b783$var$runDisplayTransformersForLooks(baseData, listings, props.displayTransformers_);
|
|
2103
2181
|
});
|
|
2104
2182
|
const sharedOptions = {
|
|
2105
|
-
product_card_template_: display => $
|
|
2183
|
+
product_card_template_: display => $e9d1d09be9e6471e$export$44809a8a3e867e30({
|
|
2106
2184
|
display_: () => display,
|
|
2107
2185
|
FavoriteButton_: props.FavoriteButton_,
|
|
2108
2186
|
placeholderImageAspectRatio_: props.imagePlaceholderAspectRatio_,
|
|
@@ -2372,9 +2450,9 @@ const $e003be2a50d9e5bc$export$b05c0ae390cf3e06 = ({
|
|
|
2372
2450
|
_el$28 = _el$27.nextSibling,
|
|
2373
2451
|
[_el$29, _co$10] = $9HbP8$getNextMarker(_el$28.nextSibling);
|
|
2374
2452
|
$9HbP8$use(element => $f4125ce4984deee6$export$12761f53d7ab7f27(element, () => selectedDueToKeyboardNavigation?.() ?? false), _el$4);
|
|
2375
|
-
$9HbP8$addEventListener(_el$4, "mouseleave", $9HbP8$
|
|
2376
|
-
$9HbP8$addEventListener(_el$4, "mouseenter", $9HbP8$
|
|
2377
|
-
$9HbP8$addEventListener(_el$4, "click", $9HbP8$
|
|
2453
|
+
$9HbP8$addEventListener(_el$4, "mouseleave", $9HbP8$catchify1(() => set_selected_index_?.()));
|
|
2454
|
+
$9HbP8$addEventListener(_el$4, "mouseenter", $9HbP8$catchify1(() => set_selected_index_?.([keyboardNavigationGroupIndex_(), index_()])));
|
|
2455
|
+
$9HbP8$addEventListener(_el$4, "click", $9HbP8$catchify1(event_ => router_.navigate_.go_to_({
|
|
2378
2456
|
new_url_: href(),
|
|
2379
2457
|
is_replace_: false,
|
|
2380
2458
|
event_: event_
|
|
@@ -2501,7 +2579,7 @@ function $eea41f703612261b$export$62f101a8aa597bf8({
|
|
|
2501
2579
|
// don't wait if it's the first request
|
|
2502
2580
|
write_current_instant_query(value);
|
|
2503
2581
|
clearTimeout(timeout);
|
|
2504
|
-
timeout = setTimeout($9HbP8$
|
|
2582
|
+
timeout = setTimeout($9HbP8$catchify1(() => write_current_instant_query(value)), 250);
|
|
2505
2583
|
});
|
|
2506
2584
|
const [search_results] = $9HbP8$createResource($9HbP8$createMemo(() => ({
|
|
2507
2585
|
// <-- key order important, see comment below
|
|
@@ -2509,7 +2587,7 @@ function $eea41f703612261b$export$62f101a8aa597bf8({
|
|
|
2509
2587
|
market: market_(),
|
|
2510
2588
|
locale: i18n_.backend_locale_(),
|
|
2511
2589
|
query: read_current_instant_query()
|
|
2512
|
-
})), $9HbP8$
|
|
2590
|
+
})), $9HbP8$catchify1(async variable_data => {
|
|
2513
2591
|
return depict_api_.query({
|
|
2514
2592
|
// here it is (unfortunately) important that the keys in the object are in the same order as in SearchPage.tsx, because when JSON-encoding them to compare for caching the strings will be different otherwise
|
|
2515
2593
|
limit: $9HbP8$untrack(has_sort_or_filters_) ? max_cards : min_products_to_fetch_,
|
|
@@ -2603,7 +2681,7 @@ function $d78eea1e8707dc2d$export$c7e181728ad525f(url) {
|
|
|
2603
2681
|
return;
|
|
2604
2682
|
$d78eea1e8707dc2d$var$last_sent_value = new_value;
|
|
2605
2683
|
const args = ["depict.send", "pageview", new_value];
|
|
2606
|
-
$9HbP8$
|
|
2684
|
+
$9HbP8$dlog1("Calling ga with args", ...args);
|
|
2607
2685
|
// @ts-ignore
|
|
2608
2686
|
ga(...args);
|
|
2609
2687
|
}
|
|
@@ -2617,7 +2695,7 @@ function $c64d28ca12452b21$export$3340fdd8259bd4fd({
|
|
|
2617
2695
|
if (process.env.GA === "false") return;
|
|
2618
2696
|
let debounce_timeout;
|
|
2619
2697
|
const stop_timeout = () => clearTimeout(debounce_timeout);
|
|
2620
|
-
const send_to_ga = $9HbP8$
|
|
2698
|
+
const send_to_ga = $9HbP8$catchify1(() => {
|
|
2621
2699
|
const fake_url = new URL(location.href);
|
|
2622
2700
|
const {
|
|
2623
2701
|
searchParams: searchParams
|
|
@@ -2630,12 +2708,12 @@ function $c64d28ca12452b21$export$3340fdd8259bd4fd({
|
|
|
2630
2708
|
$9HbP8$onCleanup(() => {
|
|
2631
2709
|
setTimeout(
|
|
2632
2710
|
// do it next event loop because search_field_value_ is wrong this one and search_query might be too because we want the old value to be put into the history entry and a framework like NextJS might take some time to navigate
|
|
2633
|
-
$9HbP8$
|
|
2711
|
+
$9HbP8$catchify1(() => {
|
|
2634
2712
|
if ($9HbP8$untrack(get_search_query_) === $9HbP8$untrack(get_search_field_value_)) stop_timeout();
|
|
2635
2713
|
}));
|
|
2636
2714
|
});
|
|
2637
2715
|
let first_call = true;
|
|
2638
|
-
$9HbP8$createEffect($9HbP8$
|
|
2716
|
+
$9HbP8$createEffect($9HbP8$catchify1(() => {
|
|
2639
2717
|
get_search_field_value_();
|
|
2640
2718
|
if (first_call) {
|
|
2641
2719
|
// we only want to do stuff when it changes
|
|
@@ -2662,7 +2740,7 @@ function $4ceabea39c9a56ac$export$50b90be27d8502d9(el, [get_style_props, set_sty
|
|
|
2662
2740
|
[key]: new_value
|
|
2663
2741
|
});
|
|
2664
2742
|
};
|
|
2665
|
-
const is = new IntersectionObserver($9HbP8$
|
|
2743
|
+
const is = new IntersectionObserver($9HbP8$catchify1(_records => {
|
|
2666
2744
|
do_positioning();
|
|
2667
2745
|
}), {
|
|
2668
2746
|
threshold: $9HbP8$buildThresholdList(100)
|
|
@@ -2683,7 +2761,7 @@ function $a36cbc4f68bfd590$export$91c3b6774e8be0f5({
|
|
|
2683
2761
|
const [get_current_href, set_current_href] = $9HbP8$createSignal(location.href);
|
|
2684
2762
|
const [exit_iterable, exitable_iterable] = $9HbP8$make_asyncIterable_exiter((0, $9HbP8$href_change_ipns));
|
|
2685
2763
|
$9HbP8$onCleanup(exit_iterable);
|
|
2686
|
-
$9HbP8$
|
|
2764
|
+
$9HbP8$catchify1(async () => {
|
|
2687
2765
|
for await (const href of exitable_iterable)
|
|
2688
2766
|
// use native links so ppl can cmdclick/right click and open in new tab and see target URL
|
|
2689
2767
|
set_current_href(href);
|
|
@@ -2753,18 +2831,18 @@ function $980239e081e89b62$export$a146ac6fa8346a25({
|
|
|
2753
2831
|
_el$9 = _el$5.nextSibling;
|
|
2754
2832
|
$9HbP8$use(element => element.addEventListener(
|
|
2755
2833
|
// Viskan's Oscar Jacobson site requires us to add the event listener normally here. They do too much when this element is clicked. We work around it by blocking the event and just dispatching it non-bubbling on this element.
|
|
2756
|
-
"click", $9HbP8$
|
|
2834
|
+
"click", $9HbP8$catchify1(ev => {
|
|
2757
2835
|
if ($a281666e5c15c2ec$export$29d28dadc2d6b631(ev))
|
|
2758
2836
|
// not button 0 or cmd/ctrl click
|
|
2759
2837
|
return;
|
|
2760
2838
|
ev.preventDefault();
|
|
2761
2839
|
submit_query_(item());
|
|
2762
2840
|
})), _el$4);
|
|
2763
|
-
$9HbP8$addEventListener(_el$4, "mouseleave", $9HbP8$
|
|
2764
|
-
$9HbP8$addEventListener(_el$4, "mouseenter", $9HbP8$
|
|
2841
|
+
$9HbP8$addEventListener(_el$4, "mouseleave", $9HbP8$catchify1(() => write_selected_index_()));
|
|
2842
|
+
$9HbP8$addEventListener(_el$4, "mouseenter", $9HbP8$catchify1(() => write_selected_index_([0, index])));
|
|
2765
2843
|
$9HbP8$insert(_el$5, $9HbP8$createComponent((0, $694b7f90501fea4c$export$5d2caaa6b530761c), {}), _el$8, _co$);
|
|
2766
2844
|
$9HbP8$insert(_el$6, item);
|
|
2767
|
-
$9HbP8$use(element => element.addEventListener("click", $9HbP8$
|
|
2845
|
+
$9HbP8$use(element => element.addEventListener("click", $9HbP8$catchify1(e => {
|
|
2768
2846
|
// Viskan's Oscar Jacobson site requires us to add the event listener normally here. They do too much when this element is clicked. We work around it by blocking the event and just dispatching it non-bubbling on this element.
|
|
2769
2847
|
set_unfiltered_previous_searches_(prev => {
|
|
2770
2848
|
const new_value = [...prev];
|
|
@@ -2945,7 +3023,7 @@ function $ab4b0679fa8bd1dc$export$e872e2339fb04a7f({
|
|
|
2945
3023
|
});
|
|
2946
3024
|
return (() => {
|
|
2947
3025
|
var _el$ = $9HbP8$getNextElement($ab4b0679fa8bd1dc$var$_tmpl$);
|
|
2948
|
-
$9HbP8$use(element => element.addEventListener("click", $9HbP8$
|
|
3026
|
+
$9HbP8$use(element => element.addEventListener("click", $9HbP8$catchify1(ev => {
|
|
2949
3027
|
// Viskan's Oscar Jacobson site requires us to add the event listener normally here. They do too much when this element is clicked. We work around it by blocking the event and just dispatching it non-bubbling on this element.
|
|
2950
3028
|
if (is_query()) {
|
|
2951
3029
|
if ($a281666e5c15c2ec$export$29d28dadc2d6b631(ev))
|
|
@@ -2962,8 +3040,8 @@ function $ab4b0679fa8bd1dc$export$e872e2339fb04a7f({
|
|
|
2962
3040
|
event_: ev
|
|
2963
3041
|
});
|
|
2964
3042
|
})), _el$);
|
|
2965
|
-
$9HbP8$addEventListener(_el$, "mouseleave", $9HbP8$
|
|
2966
|
-
$9HbP8$addEventListener(_el$, "mouseenter", $9HbP8$
|
|
3043
|
+
$9HbP8$addEventListener(_el$, "mouseleave", $9HbP8$catchify1(() => write_selected_index_(undefined)));
|
|
3044
|
+
$9HbP8$addEventListener(_el$, "mouseenter", $9HbP8$catchify1(() => write_selected_index_([autocomplete_data_index, index])));
|
|
2967
3045
|
$9HbP8$insert(_el$, (() => {
|
|
2968
3046
|
var _c$ = $9HbP8$memo(() => !!is_query());
|
|
2969
3047
|
return () => _c$() ? [$9HbP8$createComponent((0, $9HbP8$Show), {
|
|
@@ -3249,7 +3327,7 @@ function $6ef2e4ea23810f23$var$actual_navigation_working_on_fake_data({
|
|
|
3249
3327
|
if (!$9HbP8$untrack(() => read_updating_blocked())) previous_value = sfv;
|
|
3250
3328
|
});
|
|
3251
3329
|
const owner = $9HbP8$getOwner();
|
|
3252
|
-
const handler = $9HbP8$
|
|
3330
|
+
const handler = $9HbP8$catchify1(({
|
|
3253
3331
|
keyCode: keyCode
|
|
3254
3332
|
}) => $9HbP8$untrack(() => {
|
|
3255
3333
|
const up = keyCode === 38;
|
|
@@ -3313,7 +3391,7 @@ function $6ef2e4ea23810f23$var$actual_navigation_working_on_fake_data({
|
|
|
3313
3391
|
const el = element_();
|
|
3314
3392
|
if (!el) return;
|
|
3315
3393
|
el.addEventListener("keyup", handler);
|
|
3316
|
-
$9HbP8$onCleanup($9HbP8$
|
|
3394
|
+
$9HbP8$onCleanup($9HbP8$catchify1(() => el.removeEventListener("keyup", handler)));
|
|
3317
3395
|
});
|
|
3318
3396
|
}
|
|
3319
3397
|
function $1ae0eaca6ada9753$export$af0124069c150252({
|
|
@@ -3514,7 +3592,7 @@ let $f86ba724282f6690$export$44dad306455dddf;
|
|
|
3514
3592
|
|
|
3515
3593
|
function $2449872a62a75a20$export$ebdc3711f7e02ccd(what_to_watch) {
|
|
3516
3594
|
const [width, setWidth] = $9HbP8$createSignal();
|
|
3517
|
-
const resizeObserver = new ResizeObserver($9HbP8$
|
|
3595
|
+
const resizeObserver = new ResizeObserver($9HbP8$catchify1(records => {
|
|
3518
3596
|
for (let j = 0; j < records.length; j++) {
|
|
3519
3597
|
const width = records[j].borderBoxSize?.[0]?.inlineSize ?? what_to_watch.getBoundingClientRect().width;
|
|
3520
3598
|
setWidth(width);
|
|
@@ -3524,7 +3602,7 @@ function $2449872a62a75a20$export$ebdc3711f7e02ccd(what_to_watch) {
|
|
|
3524
3602
|
// It doesn't seem to work even when waiting for it to be in the DOM, also wait an animation frame
|
|
3525
3603
|
const disconnect = (0, $9HbP8$observer).onexists(what_to_watch, ({
|
|
3526
3604
|
element: element
|
|
3527
|
-
}) => requestAnimationFrame($9HbP8$
|
|
3605
|
+
}) => requestAnimationFrame($9HbP8$catchify1(() => {
|
|
3528
3606
|
const current_size = what_to_watch.getBoundingClientRect().width;
|
|
3529
3607
|
if (current_size)
|
|
3530
3608
|
// If element has size, set signal to that. ResizeObserver only triggers when the content is visible in some cases, but it might already have a size. This reduces size filter expanding animation jank in chrome.
|
|
@@ -3569,7 +3647,7 @@ function $5285d2814d0fac0c$export$b94867ecbd698f21({
|
|
|
3569
3647
|
let input_element;
|
|
3570
3648
|
// This is the div where we recommend (and ourselves do) attach the event listener to that opens the search modal.
|
|
3571
3649
|
let field_div;
|
|
3572
|
-
$9HbP8$createEffect($9HbP8$
|
|
3650
|
+
$9HbP8$createEffect($9HbP8$catchify1(async () => {
|
|
3573
3651
|
if (disabled_) return;
|
|
3574
3652
|
// we aren't in DOM yet unfortunately, wouldn't even be with onMount
|
|
3575
3653
|
await (0, $9HbP8$observer).wait_for_element(input_element);
|
|
@@ -3587,7 +3665,7 @@ function $5285d2814d0fac0c$export$b94867ecbd698f21({
|
|
|
3587
3665
|
var _el$ = $9HbP8$getNextElement($5285d2814d0fac0c$var$_tmpl$);
|
|
3588
3666
|
$9HbP8$spread(_el$, $9HbP8$mergeProps({
|
|
3589
3667
|
get onClick() {
|
|
3590
|
-
return $9HbP8$
|
|
3668
|
+
return $9HbP8$catchify1(on_back_);
|
|
3591
3669
|
},
|
|
3592
3670
|
get ["aria-label"]() {
|
|
3593
3671
|
return i18n_.back_();
|
|
@@ -3617,7 +3695,7 @@ function $5285d2814d0fac0c$export$b94867ecbd698f21({
|
|
|
3617
3695
|
return isNewModal || !searchFieldEmpty() ? "" : "display: none";
|
|
3618
3696
|
},
|
|
3619
3697
|
get onClick() {
|
|
3620
|
-
return $9HbP8$
|
|
3698
|
+
return $9HbP8$catchify1(() => {
|
|
3621
3699
|
if (isNewModal && searchFieldEmpty()) return;
|
|
3622
3700
|
setSearchFieldValue("");
|
|
3623
3701
|
clear_filters_(true);
|
|
@@ -3674,7 +3752,7 @@ function $5285d2814d0fac0c$export$b94867ecbd698f21({
|
|
|
3674
3752
|
field_div = el;
|
|
3675
3753
|
field_element_ref_?.(el);
|
|
3676
3754
|
}, _el$5);
|
|
3677
|
-
$9HbP8$addEventListener(_el$5, "click", $9HbP8$
|
|
3755
|
+
$9HbP8$addEventListener(_el$5, "click", $9HbP8$catchify1(({
|
|
3678
3756
|
target: target,
|
|
3679
3757
|
currentTarget: currentTarget,
|
|
3680
3758
|
detail: detail
|
|
@@ -3704,7 +3782,7 @@ function $5285d2814d0fac0c$export$b94867ecbd698f21({
|
|
|
3704
3782
|
}) => {
|
|
3705
3783
|
// When selecting text with a mouse we want a SearchField to be focussed even when releasing the mouse outside the .field element (we assume the event listener which opens the modal is attached to that).
|
|
3706
3784
|
if (pointerType === "mouse") {
|
|
3707
|
-
const handler = $9HbP8$
|
|
3785
|
+
const handler = $9HbP8$catchify1(({
|
|
3708
3786
|
pointerType: pointerType,
|
|
3709
3787
|
target: target
|
|
3710
3788
|
}) => {
|
|
@@ -3717,26 +3795,26 @@ function $5285d2814d0fac0c$export$b94867ecbd698f21({
|
|
|
3717
3795
|
$9HbP8$runWithOwner(owner_of_field_element, () => $9HbP8$onCleanup(() => window.removeEventListener("pointerup", handler)));
|
|
3718
3796
|
}
|
|
3719
3797
|
};
|
|
3720
|
-
$9HbP8$addEventListener(_el$6, "select", $9HbP8$
|
|
3798
|
+
$9HbP8$addEventListener(_el$6, "select", $9HbP8$catchify1(() => {
|
|
3721
3799
|
if (disabled_)
|
|
3722
3800
|
// just in case. The field not actually being disabled when being disabled_ is so that you can focus it and open the modal. We don't want any of the other input-field-interaction features to work
|
|
3723
3801
|
return;
|
|
3724
3802
|
if (input_element.selectionStart === 0 && input_element.selectionEnd === input_element.value.length)
|
|
3725
3803
|
// everything was selected, clear filters on next submit on next input
|
|
3726
|
-
input_element.addEventListener("input", $9HbP8$
|
|
3804
|
+
input_element.addEventListener("input", $9HbP8$catchify1(() => clear_filters_(false)),
|
|
3727
3805
|
// We don't count this as user triggered since it wasn't explicit
|
|
3728
3806
|
{
|
|
3729
3807
|
once: true
|
|
3730
3808
|
});
|
|
3731
3809
|
}));
|
|
3732
|
-
$9HbP8$addEventListener(_el$6, "input", $9HbP8$
|
|
3810
|
+
$9HbP8$addEventListener(_el$6, "input", $9HbP8$catchify1(() => {
|
|
3733
3811
|
const {
|
|
3734
3812
|
value: value
|
|
3735
3813
|
} = input_element;
|
|
3736
3814
|
if (!disabled_ && !value.length) clear_filters_(false); // if the user clears the whole field, reset filters on next submit
|
|
3737
3815
|
setSearchFieldValue(value);
|
|
3738
3816
|
}), true);
|
|
3739
|
-
$9HbP8$addEventListener(_el$6, "keydown", $9HbP8$
|
|
3817
|
+
$9HbP8$addEventListener(_el$6, "keydown", $9HbP8$catchify1(e => {
|
|
3740
3818
|
if (disabled_) {
|
|
3741
3819
|
if (e.key !== "Tab" && e.key !== "Shift")
|
|
3742
3820
|
// alow tab-selecting the input field and then open the modal when the user start writing but also to move past the field with tab
|
|
@@ -3746,7 +3824,7 @@ function $5285d2814d0fac0c$export$b94867ecbd698f21({
|
|
|
3746
3824
|
if (!dont_submit) submit_query_();
|
|
3747
3825
|
}
|
|
3748
3826
|
}), true);
|
|
3749
|
-
var _ref$2 = $9HbP8$
|
|
3827
|
+
var _ref$2 = $9HbP8$catchify1(el => {
|
|
3750
3828
|
input_element = el;
|
|
3751
3829
|
input_field_ref_?.(el);
|
|
3752
3830
|
});
|
|
@@ -3758,7 +3836,7 @@ function $5285d2814d0fac0c$export$b94867ecbd698f21({
|
|
|
3758
3836
|
when: !isNewModal,
|
|
3759
3837
|
get children() {
|
|
3760
3838
|
var _el$11 = $9HbP8$getNextElement($5285d2814d0fac0c$var$_tmpl$4);
|
|
3761
|
-
$9HbP8$addEventListener(_el$11, "click", $9HbP8$
|
|
3839
|
+
$9HbP8$addEventListener(_el$11, "click", $9HbP8$catchify1(() => submit_query_()), true);
|
|
3762
3840
|
$9HbP8$insert(_el$11, $9HbP8$createComponent((0, $16f0ed5ea30d8d9c$export$82eafebb825fc23f), {}));
|
|
3763
3841
|
$9HbP8$effect(() => $9HbP8$setAttribute(_el$11, "aria-label", i18n_.search_submit_button_aria_label_()));
|
|
3764
3842
|
$9HbP8$runHydrationEvents();
|
|
@@ -3795,18 +3873,18 @@ function $aea1edf92433e81e$export$fe334901e8bebd57() {
|
|
|
3795
3873
|
offset: 0
|
|
3796
3874
|
}, 1);
|
|
3797
3875
|
animation.pause();
|
|
3798
|
-
const fn = $9HbP8$
|
|
3876
|
+
const fn = $9HbP8$catchify1(animation.play.bind(animation));
|
|
3799
3877
|
cleanup_fns.push(fn);
|
|
3800
3878
|
$9HbP8$onCleanup(fn);
|
|
3801
3879
|
} catch (e) {
|
|
3802
|
-
$9HbP8$
|
|
3880
|
+
$9HbP8$dlog1("Probably partial keyframe error", e);
|
|
3803
3881
|
}
|
|
3804
3882
|
if (getComputedStyle(element).overflow !== "hidden") {
|
|
3805
3883
|
// safari gets special hacky treatment
|
|
3806
3884
|
const style = element.style;
|
|
3807
3885
|
const original_value = style.overflow;
|
|
3808
3886
|
style.overflow = "hidden";
|
|
3809
|
-
const fn = $9HbP8$
|
|
3887
|
+
const fn = $9HbP8$catchify1(() => style.overflow = original_value);
|
|
3810
3888
|
cleanup_fns.push(fn);
|
|
3811
3889
|
$9HbP8$onCleanup(fn);
|
|
3812
3890
|
}
|
|
@@ -3829,8 +3907,8 @@ function $512b994d501f412b$export$93d9bfd0c9c1a5b8(close_modal, search_query_url
|
|
|
3829
3907
|
let set_initial_values = false;
|
|
3830
3908
|
let old_pathname;
|
|
3831
3909
|
let old_param_value;
|
|
3832
|
-
$9HbP8$onCleanup($9HbP8$
|
|
3833
|
-
$9HbP8$
|
|
3910
|
+
$9HbP8$onCleanup($9HbP8$catchify1(exit_iterable));
|
|
3911
|
+
$9HbP8$catchify1(async () => {
|
|
3834
3912
|
for await (const href of exitable_iterable) {
|
|
3835
3913
|
const u_o = new URL(href);
|
|
3836
3914
|
const new_pathname = u_o.pathname;
|
|
@@ -3901,7 +3979,7 @@ function $42912431795f188e$var$RawClassicSearchModal({
|
|
|
3901
3979
|
} = alignmentSignals_ || {};
|
|
3902
3980
|
const [bodyAlignmentStyle] = bodyAlignmentSignal;
|
|
3903
3981
|
const [get_modal_search_results, set_modal_search_results_] = $9HbP8$createSignal();
|
|
3904
|
-
const close_on_escape_handler = $9HbP8$
|
|
3982
|
+
const close_on_escape_handler = $9HbP8$catchify1(({
|
|
3905
3983
|
key: key
|
|
3906
3984
|
}) => {
|
|
3907
3985
|
if (key === "Escape") close_modal_();
|
|
@@ -3925,7 +4003,7 @@ function $42912431795f188e$var$RawClassicSearchModal({
|
|
|
3925
4003
|
const DiscoverMoreSection = () => (() => {
|
|
3926
4004
|
var _el$ = $9HbP8$getNextElement($42912431795f188e$var$_tmpl$),
|
|
3927
4005
|
_el$2 = _el$.firstChild;
|
|
3928
|
-
$9HbP8$addEventListener(_el$2, "click", $9HbP8$
|
|
4006
|
+
$9HbP8$addEventListener(_el$2, "click", $9HbP8$catchify1(() => submit_query_()), true);
|
|
3929
4007
|
$9HbP8$insert(_el$2, (() => {
|
|
3930
4008
|
var _c$ = $9HbP8$memo(() => !!get_search_field_value_());
|
|
3931
4009
|
return () => _c$() ? i18n_.modal_view_all_results_()((() => {
|
|
@@ -3940,7 +4018,7 @@ function $42912431795f188e$var$RawClassicSearchModal({
|
|
|
3940
4018
|
if (disable_scrolling_) $aea1edf92433e81e$export$fe334901e8bebd57();
|
|
3941
4019
|
$512b994d501f412b$export$93d9bfd0c9c1a5b8(close_modal_, search_query_url_param_name_);
|
|
3942
4020
|
window.addEventListener("keydown", close_on_escape_handler);
|
|
3943
|
-
$9HbP8$onCleanup($9HbP8$
|
|
4021
|
+
$9HbP8$onCleanup($9HbP8$catchify1(() => window.removeEventListener("keydown", close_on_escape_handler)));
|
|
3944
4022
|
if (closing_animation_) register_closing_animation_(closing_animation_);
|
|
3945
4023
|
$c64d28ca12452b21$export$3340fdd8259bd4fd({
|
|
3946
4024
|
get_search_field_value_: get_search_field_value_,
|
|
@@ -3992,13 +4070,13 @@ function $42912431795f188e$var$RawClassicSearchModal({
|
|
|
3992
4070
|
[_el$16, _co$5] = $9HbP8$getNextMarker(_el$15.nextSibling),
|
|
3993
4071
|
_el$17 = _el$5.nextSibling,
|
|
3994
4072
|
[_el$18, _co$6] = $9HbP8$getNextMarker(_el$17.nextSibling);
|
|
3995
|
-
$9HbP8$addEventListener(_el$4, "click", $9HbP8$
|
|
4073
|
+
$9HbP8$addEventListener(_el$4, "click", $9HbP8$catchify1(({
|
|
3996
4074
|
target: target
|
|
3997
4075
|
}) => {
|
|
3998
4076
|
if (target === modal_element) close_modal_();
|
|
3999
4077
|
}), true);
|
|
4000
4078
|
$9HbP8$insert(_el$5, search_field, _el$14, _co$4);
|
|
4001
|
-
$9HbP8$use(el => $9HbP8$
|
|
4079
|
+
$9HbP8$use(el => $9HbP8$catchify1((0, $4ceabea39c9a56ac$export$50b90be27d8502d9))(el, bodyAlignmentSignal, bottom_distance_under_modal_), _el$6);
|
|
4002
4080
|
$9HbP8$insert(_el$6, $9HbP8$createComponent((0, $b7436a6d1fd64e3b$export$b69d0d92862de18b), {
|
|
4003
4081
|
severity_: "error",
|
|
4004
4082
|
message_: "Autocomplete/suggestions failed",
|
|
@@ -4203,7 +4281,7 @@ function $4147651646da990a$var$decode_filter_data(op, encoded_data) {
|
|
|
4203
4281
|
try {
|
|
4204
4282
|
return JSON.parse($9HbP8$base64_decode_unicode(encoded_data));
|
|
4205
4283
|
} catch (e) {
|
|
4206
|
-
$9HbP8$
|
|
4284
|
+
$9HbP8$dlog1("Failed to fallback parse filter data", op, encoded_data, e);
|
|
4207
4285
|
}
|
|
4208
4286
|
return null;
|
|
4209
4287
|
}
|
|
@@ -4261,7 +4339,7 @@ function $4147651646da990a$export$766e9676e74997d3(search_params, sorting_query_
|
|
|
4261
4339
|
field: encoded_sorting.slice(0, -$4147651646da990a$var$descending_token.length),
|
|
4262
4340
|
order: "desc"
|
|
4263
4341
|
};
|
|
4264
|
-
$9HbP8$
|
|
4342
|
+
$9HbP8$dlog1("Invalid sorting query param value", encoded_sorting);
|
|
4265
4343
|
return;
|
|
4266
4344
|
}
|
|
4267
4345
|
function $4147651646da990a$export$916e6850778505f6(search_params, filter_query_param_prefix, sorting_query_param) {
|
|
@@ -4334,7 +4412,7 @@ function $dfa5b6f7c5e421df$export$5646050d516e06bc({
|
|
|
4334
4412
|
},
|
|
4335
4413
|
get children() {
|
|
4336
4414
|
var _el$2 = $9HbP8$getNextElement($dfa5b6f7c5e421df$var$_tmpl$2);
|
|
4337
|
-
$9HbP8$addEventListener(_el$2, "click", $9HbP8$
|
|
4415
|
+
$9HbP8$addEventListener(_el$2, "click", $9HbP8$catchify1(ev => router_.navigate_.go_to_({
|
|
4338
4416
|
new_url_: href(),
|
|
4339
4417
|
is_replace_: false,
|
|
4340
4418
|
event_: ev,
|
|
@@ -4397,7 +4475,7 @@ function $4ce5b8892775b62d$export$67152d26d4f56ee8({
|
|
|
4397
4475
|
return href();
|
|
4398
4476
|
},
|
|
4399
4477
|
get onClick() {
|
|
4400
|
-
return $9HbP8$
|
|
4478
|
+
return $9HbP8$catchify1(ev => href() && router_.navigate_.go_to_({
|
|
4401
4479
|
new_url_: href(),
|
|
4402
4480
|
is_replace_: false,
|
|
4403
4481
|
event_: ev,
|
|
@@ -4422,8 +4500,8 @@ function $4ce5b8892775b62d$export$67152d26d4f56ee8({
|
|
|
4422
4500
|
[_el$8, _co$2] = $9HbP8$getNextMarker(_el$7.nextSibling),
|
|
4423
4501
|
_el$4 = _el$8.nextSibling;
|
|
4424
4502
|
$9HbP8$use(element => $f4125ce4984deee6$export$12761f53d7ab7f27(element, selectedDueToKeyboardNavigation), _el$2);
|
|
4425
|
-
$9HbP8$addEventListener(_el$2, "mouseleave", $9HbP8$
|
|
4426
|
-
$9HbP8$addEventListener(_el$2, "mouseover", $9HbP8$
|
|
4503
|
+
$9HbP8$addEventListener(_el$2, "mouseleave", $9HbP8$catchify1(() => write_selected_index_()));
|
|
4504
|
+
$9HbP8$addEventListener(_el$2, "mouseover", $9HbP8$catchify1(({
|
|
4427
4505
|
target: target
|
|
4428
4506
|
}) => {
|
|
4429
4507
|
// Using onMouseOver instead of onMouseEnter to also trigger when the hovered child changes
|
|
@@ -4670,7 +4748,7 @@ function $903297121898e5ff$export$d4994a86c6235f72({
|
|
|
4670
4748
|
var _el$7 = $9HbP8$getNextElement($903297121898e5ff$var$_tmpl$2);
|
|
4671
4749
|
$9HbP8$use(element => {
|
|
4672
4750
|
$f4125ce4984deee6$export$12761f53d7ab7f27(element, selectedDueToKeyboardNavigation);
|
|
4673
|
-
element.addEventListener("click", $9HbP8$
|
|
4751
|
+
element.addEventListener("click", $9HbP8$catchify1(ev => {
|
|
4674
4752
|
// Viskan's Oscar Jacobson site requires us to add the event listener normally here. They do too much when this element is clicked. We work around it by blocking the event and just dispatching it non-bubbling on this element.
|
|
4675
4753
|
const itemContents = item();
|
|
4676
4754
|
if ("page_url_" in itemContents) {
|
|
@@ -4686,8 +4764,8 @@ function $903297121898e5ff$export$d4994a86c6235f72({
|
|
|
4686
4764
|
submit_query_(itemContents.title_);
|
|
4687
4765
|
}));
|
|
4688
4766
|
}, _el$7);
|
|
4689
|
-
$9HbP8$addEventListener(_el$7, "mouseleave", $9HbP8$
|
|
4690
|
-
$9HbP8$addEventListener(_el$7, "mouseenter", $9HbP8$
|
|
4767
|
+
$9HbP8$addEventListener(_el$7, "mouseleave", $9HbP8$catchify1(() => write_selected_index_()));
|
|
4768
|
+
$9HbP8$addEventListener(_el$7, "mouseenter", $9HbP8$catchify1(() => write_selected_index_([itemIndex_(), index])));
|
|
4691
4769
|
$9HbP8$insert(_el$7, $9HbP8$createComponent((0, $f3213c0640246d58$export$ba17c5b7e6dda39f), {
|
|
4692
4770
|
class_: "title line-clamp",
|
|
4693
4771
|
get whole_text_to_display_() {
|
|
@@ -4807,7 +4885,7 @@ function $2f3171b02c8f4a5d$export$af1fb307bbba2417({
|
|
|
4807
4885
|
},
|
|
4808
4886
|
extraTitleRowElements_: () => (() => {
|
|
4809
4887
|
var _el$ = $9HbP8$getNextElement($2f3171b02c8f4a5d$var$_tmpl$);
|
|
4810
|
-
$9HbP8$addEventListener(_el$, "click", $9HbP8$
|
|
4888
|
+
$9HbP8$addEventListener(_el$, "click", $9HbP8$catchify1(() => set_unfiltered_previous_searches_([])), true);
|
|
4811
4889
|
$9HbP8$insert(_el$, () => i18n_.clear_all_from_filter_crumbs_());
|
|
4812
4890
|
$9HbP8$runHydrationEvents();
|
|
4813
4891
|
return _el$;
|
|
@@ -4956,7 +5034,7 @@ function $500a16dd18ee5a71$var$RawSearchModalV2({
|
|
|
4956
5034
|
const random_classname_body = $9HbP8$make_random_classname();
|
|
4957
5035
|
const backdropRandomClassname = $9HbP8$make_random_classname();
|
|
4958
5036
|
const [get_modal_search_results_, set_modal_search_results_] = $9HbP8$createSignal();
|
|
4959
|
-
const close_on_escape_handler = $9HbP8$
|
|
5037
|
+
const close_on_escape_handler = $9HbP8$catchify1(evt => {
|
|
4960
5038
|
if (evt.key === "Escape") {
|
|
4961
5039
|
evt.preventDefault(); // Prevent the browser from closing/cancelling the modal so our animations have time to run
|
|
4962
5040
|
close_modal_();
|
|
@@ -5052,7 +5130,7 @@ function $500a16dd18ee5a71$var$RawSearchModalV2({
|
|
|
5052
5130
|
$9HbP8$createEffect($9HbP8$on(get_search_field_value_, () => {
|
|
5053
5131
|
setShowStaleListingSuggestions(true);
|
|
5054
5132
|
clearTimeout(listingSuggestionsDebounceTimeout);
|
|
5055
|
-
listingSuggestionsDebounceTimeout = setTimeout($9HbP8$
|
|
5133
|
+
listingSuggestionsDebounceTimeout = setTimeout($9HbP8$catchify1(() => setShowStaleListingSuggestions(false)), 350);
|
|
5056
5134
|
}, {
|
|
5057
5135
|
defer: true
|
|
5058
5136
|
}));
|
|
@@ -5190,7 +5268,7 @@ function $500a16dd18ee5a71$var$RawSearchModalV2({
|
|
|
5190
5268
|
const discoverMoreSection = (() => {
|
|
5191
5269
|
var _el$7 = $9HbP8$getNextElement($500a16dd18ee5a71$var$_tmpl$4),
|
|
5192
5270
|
_el$8 = _el$7.firstChild;
|
|
5193
|
-
$9HbP8$addEventListener(_el$8, "click", $9HbP8$
|
|
5271
|
+
$9HbP8$addEventListener(_el$8, "click", $9HbP8$catchify1(() => submit_query_()), true);
|
|
5194
5272
|
$9HbP8$insert(_el$8, (() => {
|
|
5195
5273
|
var _c$ = $9HbP8$memo(() => !!get_search_field_value_());
|
|
5196
5274
|
return () => _c$() ? i18n_.modal_view_all_results_()((() => {
|
|
@@ -5220,7 +5298,7 @@ function $500a16dd18ee5a71$var$RawSearchModalV2({
|
|
|
5220
5298
|
}
|
|
5221
5299
|
});
|
|
5222
5300
|
if (setSearchFieldOuterWidth_) {
|
|
5223
|
-
const resizeObserver = new ResizeObserver($9HbP8$
|
|
5301
|
+
const resizeObserver = new ResizeObserver($9HbP8$catchify1(records => setSearchFieldOuterWidth_(records.at(-1).contentRect.width)));
|
|
5224
5302
|
resizeObserver.observe(search_field);
|
|
5225
5303
|
$9HbP8$onCleanup(() => resizeObserver.disconnect());
|
|
5226
5304
|
}
|
|
@@ -5261,7 +5339,7 @@ function $500a16dd18ee5a71$var$RawSearchModalV2({
|
|
|
5261
5339
|
_el$13 = _el$15.nextSibling,
|
|
5262
5340
|
_el$16 = _el$12.nextSibling,
|
|
5263
5341
|
[_el$17, _co$3] = $9HbP8$getNextMarker(_el$16.nextSibling);
|
|
5264
|
-
$9HbP8$addEventListener(_el$11, "click", $9HbP8$
|
|
5342
|
+
$9HbP8$addEventListener(_el$11, "click", $9HbP8$catchify1(({
|
|
5265
5343
|
target: target,
|
|
5266
5344
|
currentTarget: currentTarget
|
|
5267
5345
|
}) => {
|
|
@@ -5269,13 +5347,13 @@ function $500a16dd18ee5a71$var$RawSearchModalV2({
|
|
|
5269
5347
|
}), true);
|
|
5270
5348
|
$9HbP8$use(element => {
|
|
5271
5349
|
// We don't have contained queries in JS so use ResizeObserver instead. This is so that the modal automatically assumes a mobile layout when aligning with a short SearchField.
|
|
5272
|
-
const resizeObserver = new ResizeObserver($9HbP8$
|
|
5350
|
+
const resizeObserver = new ResizeObserver($9HbP8$catchify1(records => setModalBodyWidth(records.at(-1).contentRect.width)));
|
|
5273
5351
|
resizeObserver.observe(element);
|
|
5274
5352
|
$9HbP8$onCleanup(() => resizeObserver.disconnect());
|
|
5275
5353
|
}, _el$12);
|
|
5276
5354
|
$9HbP8$insert(_el$12, search_field, _el$15, _co$2);
|
|
5277
5355
|
$9HbP8$use(el => {
|
|
5278
|
-
$9HbP8$
|
|
5356
|
+
$9HbP8$catchify1((0, $4ceabea39c9a56ac$export$50b90be27d8502d9))(el, bodyAlignmentSignal, bottom_distance_under_modal_ || (() => 0.03 // 3% under SearchModalV2 by default
|
|
5279
5357
|
));
|
|
5280
5358
|
// Workaround part 2 of https://github.com/solidjs/solid/issues/2030
|
|
5281
5359
|
// We can't just re-render the components in the two different <Show> branches because <Show> would infinite loop because it depends on the resource created by the components
|
|
@@ -5353,7 +5431,7 @@ function $024fbc0a2d796fad$var$ActualTabs(props) {
|
|
|
5353
5431
|
});
|
|
5354
5432
|
const isSelected = $9HbP8$createSelector(currentlySelected);
|
|
5355
5433
|
const owner = $9HbP8$getOwner();
|
|
5356
|
-
const updateTabsSignal = $9HbP8$
|
|
5434
|
+
const updateTabsSignal = $9HbP8$catchify(() => $9HbP8$runWithOwner(owner, () => setTabsReactive([...ourTabsSet])));
|
|
5357
5435
|
const ourTabsSet = $024fbc0a2d796fad$var$useTabs();
|
|
5358
5436
|
const location = $9HbP8$use_href_accessor1();
|
|
5359
5437
|
const linkWithChangedHash = hash => {
|
|
@@ -5484,7 +5562,7 @@ function $024fbc0a2d796fad$export$3e41faf802a29e71(props) {
|
|
|
5484
5562
|
async function $194bd6b8e4c59830$export$79b1565500412d9b(search_modal, modal_fn_opts, parent) {
|
|
5485
5563
|
const body = parent || document.body || (await (0, $9HbP8$observer).wait_for_element("body"));
|
|
5486
5564
|
let dispose_and_remove;
|
|
5487
|
-
const open_modal_ = $9HbP8$
|
|
5565
|
+
const open_modal_ = $9HbP8$catchify1(async (extra_options_for_modal = {}, on_dispose) => {
|
|
5488
5566
|
// Below await is very intentional,
|
|
5489
5567
|
// The reason is that effects don't run in <Suspense> boundaries before they've resolved and this carries even through roots created, but if a modal is opened from a suspense boundary we still want the effects in it to run
|
|
5490
5568
|
// This is because the suspense is for the content in the page and not the modal (the modal goes above it)
|
|
@@ -5514,7 +5592,7 @@ async function $194bd6b8e4c59830$export$79b1565500412d9b(search_modal, modal_fn_
|
|
|
5514
5592
|
// Animation broke, close it this time
|
|
5515
5593
|
actually_close();else if (!animation_started && closing_animation) {
|
|
5516
5594
|
animation_started = +new Date();
|
|
5517
|
-
$9HbP8$
|
|
5595
|
+
$9HbP8$catchify1(closing_animation)()?.then($9HbP8$catchify1(actually_close));
|
|
5518
5596
|
} else actually_close();
|
|
5519
5597
|
};
|
|
5520
5598
|
return search_modal({
|
|
@@ -5527,7 +5605,7 @@ async function $194bd6b8e4c59830$export$79b1565500412d9b(search_modal, modal_fn_
|
|
|
5527
5605
|
});
|
|
5528
5606
|
body.append(...modal_els);
|
|
5529
5607
|
});
|
|
5530
|
-
const close_modal_ = $9HbP8$
|
|
5608
|
+
const close_modal_ = $9HbP8$catchify1(() => {
|
|
5531
5609
|
if (dispose_and_remove) {
|
|
5532
5610
|
// modal is open
|
|
5533
5611
|
const dispose_fn = dispose_and_remove;
|
|
@@ -5544,7 +5622,7 @@ async function $194bd6b8e4c59830$export$79b1565500412d9b(search_modal, modal_fn_
|
|
|
5544
5622
|
function $ca6f574bd8772184$export$e183a13865960371(params_to_default_value, router_) {
|
|
5545
5623
|
const signals = {};
|
|
5546
5624
|
const entries = Object.entries(params_to_default_value);
|
|
5547
|
-
const event_handler = $9HbP8$
|
|
5625
|
+
const event_handler = $9HbP8$catchify1((what_happened, args) => {
|
|
5548
5626
|
// Intentionally always update our signals to the history state to allow external control of SDK state for doing things like https://linear.app/depictai/issue/X-1432/is-this-possible-with-the-depict-sdk
|
|
5549
5627
|
if (what_happened !== "popstate") return;
|
|
5550
5628
|
// Had to undo the comment above,but leaving the history. Doing this because discovering why it doesn't work is a deja-vu and I don't want to have to discover it again.
|
|
@@ -5575,8 +5653,8 @@ function $ca6f574bd8772184$export$e183a13865960371(params_to_default_value, rout
|
|
|
5575
5653
|
});
|
|
5576
5654
|
// history_dot_state_to_state needs to update after its signals after url_state does BUT in the same task (might even have to be in the same tick in the microtask queue). If we'd use window.addEventListener("popstate") it would be guaranteed to be too late since each event listener has its own task
|
|
5577
5655
|
(0, $9HbP8$instant_exec_on_suspect_history_change).add(event_handler);
|
|
5578
|
-
$9HbP8$onCleanup($9HbP8$
|
|
5579
|
-
$9HbP8$createEffect($9HbP8$
|
|
5656
|
+
$9HbP8$onCleanup($9HbP8$catchify1(() => (0, $9HbP8$instant_exec_on_suspect_history_change).delete(event_handler)));
|
|
5657
|
+
$9HbP8$createEffect($9HbP8$catchify1(() => $9HbP8$untrack($9HbP8$catchify1(() => $ca6f574bd8772184$var$history_state_change(signals, entries, history.state))))); // we need this to run after reading the initial state from history.state to write the defaults to history.state
|
|
5580
5658
|
return signals;
|
|
5581
5659
|
}
|
|
5582
5660
|
function $ca6f574bd8772184$var$history_state_change(signals, entries, state) {
|
|
@@ -5730,7 +5808,7 @@ function $45d4ed34a22ab90c$export$6b35356958ae5587(props) {
|
|
|
5730
5808
|
// If someone clicks on a product card in the shop the look modal, close the modal the next time the href changes
|
|
5731
5809
|
for (const item of resolved()) {
|
|
5732
5810
|
if (!(item instanceof Element)) return;
|
|
5733
|
-
item.addEventListener("click", $9HbP8$
|
|
5811
|
+
item.addEventListener("click", $9HbP8$catchify1(() =>
|
|
5734
5812
|
// run with modal owner so we don't do stuff after the modal closes
|
|
5735
5813
|
// can't have the owner of the product card as that gets disposed if the productId changes which might be too early (before location.href has changed)
|
|
5736
5814
|
$9HbP8$runWithOwner(props.modalOwner_, () => $9HbP8$createEffect($9HbP8$on(hrefWithoutHash, props.actually_close_modal_, {
|
|
@@ -5853,7 +5931,7 @@ function $e64486f09b43651c$export$a3cbef418994a664(props) {
|
|
|
5853
5931
|
var _el$ = $9HbP8$getNextElement($e64486f09b43651c$var$_tmpl$3),
|
|
5854
5932
|
_el$2 = _el$.firstChild,
|
|
5855
5933
|
_el$3 = _el$2.nextSibling;
|
|
5856
|
-
var _ref$ = $9HbP8$
|
|
5934
|
+
var _ref$ = $9HbP8$catchify1(element => {
|
|
5857
5935
|
const disconnect = (0, $9HbP8$observer).onexists(element, ({
|
|
5858
5936
|
element: element
|
|
5859
5937
|
}) => {
|
|
@@ -6027,7 +6105,7 @@ function $8560c919ff763930$var$actualSetupModal() {
|
|
|
6027
6105
|
(0, $90980bd87c9960f9$export$3064e1e8c6513da3).add(history_key);
|
|
6028
6106
|
const actually_close_modal_ = () => set_history_value(false);
|
|
6029
6107
|
const owner = $9HbP8$getOwner();
|
|
6030
|
-
$9HbP8$
|
|
6108
|
+
$9HbP8$catchify1(async () => {
|
|
6031
6109
|
const {
|
|
6032
6110
|
open_modal_: open_modal_,
|
|
6033
6111
|
close_modal_: close_modal_
|
|
@@ -6105,15 +6183,15 @@ function $6bb0a0c563dff4bb$export$6c6d7a51fa9aa15d(props) {
|
|
|
6105
6183
|
$9HbP8$insert(details_, [summary_, $9HbP8$createComponent(ExpandingContainer, {
|
|
6106
6184
|
children: children
|
|
6107
6185
|
})], null);
|
|
6108
|
-
if (!$9HbP8$untrack(is_in_dom)) (0, $9HbP8$observer).wait_for_element(details_).then($9HbP8$
|
|
6109
|
-
$9HbP8$createEffect($9HbP8$
|
|
6186
|
+
if (!$9HbP8$untrack(is_in_dom)) (0, $9HbP8$observer).wait_for_element(details_).then($9HbP8$catchify1(() => set_is_in_dom(true)));
|
|
6187
|
+
$9HbP8$createEffect($9HbP8$catchify1(async () => {
|
|
6110
6188
|
const is_open = is_open_memo();
|
|
6111
6189
|
if (!is_in_dom())
|
|
6112
6190
|
// wait with setting state until we're in DOM, animation won't work otherwise
|
|
6113
6191
|
return;
|
|
6114
6192
|
if (dont_animate_if_instant_open_ && fresh_component && !timeout_started) {
|
|
6115
6193
|
timeout_started = true;
|
|
6116
|
-
setTimeout($9HbP8$
|
|
6194
|
+
setTimeout($9HbP8$catchify1(() => fresh_component = false));
|
|
6117
6195
|
}
|
|
6118
6196
|
if (is_open) {
|
|
6119
6197
|
details_.open = true; // open up the toggle so the animation can happen
|
|
@@ -6121,10 +6199,10 @@ function $6bb0a0c563dff4bb$export$6c6d7a51fa9aa15d(props) {
|
|
|
6121
6199
|
await expand(0, do_duration);
|
|
6122
6200
|
} else {
|
|
6123
6201
|
const animation = await collapse();
|
|
6124
|
-
animation?.addEventListener("finish", $9HbP8$
|
|
6202
|
+
animation?.addEventListener("finish", $9HbP8$catchify1(() => details_.open = false));
|
|
6125
6203
|
}
|
|
6126
6204
|
}));
|
|
6127
|
-
details_.addEventListener("toggle", $9HbP8$
|
|
6205
|
+
details_.addEventListener("toggle", $9HbP8$catchify1(() => {
|
|
6128
6206
|
const {
|
|
6129
6207
|
open: open
|
|
6130
6208
|
} = details_;
|
|
@@ -6134,11 +6212,11 @@ function $6bb0a0c563dff4bb$export$6c6d7a51fa9aa15d(props) {
|
|
|
6134
6212
|
}) // in case someone somehow toggles it without us intercepting it at least follow suit
|
|
6135
6213
|
);
|
|
6136
6214
|
|
|
6137
|
-
summary_.addEventListener("click", $9HbP8$
|
|
6215
|
+
summary_.addEventListener("click", $9HbP8$catchify1(ev => {
|
|
6138
6216
|
ev.preventDefault();
|
|
6139
6217
|
toggle();
|
|
6140
6218
|
}));
|
|
6141
|
-
summary_.addEventListener("keydown", $9HbP8$
|
|
6219
|
+
summary_.addEventListener("keydown", $9HbP8$catchify1(ev => {
|
|
6142
6220
|
const {
|
|
6143
6221
|
key: key
|
|
6144
6222
|
} = ev;
|
|
@@ -6177,7 +6255,7 @@ function $bf52d9f9eebd1938$export$5196e4c01fa56fcb({
|
|
|
6177
6255
|
}) {
|
|
6178
6256
|
let close_toast_;
|
|
6179
6257
|
const stay_open_promise = new Promise(r => close_toast_ = r);
|
|
6180
|
-
$9HbP8$
|
|
6258
|
+
$9HbP8$catchify1(async () => {
|
|
6181
6259
|
const closing_animation_duration = 300; // ms
|
|
6182
6260
|
const element = (() => {
|
|
6183
6261
|
var _el$ = $9HbP8$getNextElement($bf52d9f9eebd1938$var$_tmpl$);
|
|
@@ -6188,8 +6266,8 @@ function $bf52d9f9eebd1938$export$5196e4c01fa56fcb({
|
|
|
6188
6266
|
})();
|
|
6189
6267
|
const [, set_is_showing_toast] = $bf52d9f9eebd1938$export$22970a0140fc759c;
|
|
6190
6268
|
// if this is a memory leak the garbage collector is stupid - does someone know?
|
|
6191
|
-
for (const ev of ["pointerover", "focusin"]) element.addEventListener(ev, $9HbP8$
|
|
6192
|
-
for (const ev of ["pointerout", "focusout"]) element.addEventListener(ev, $9HbP8$
|
|
6269
|
+
for (const ev of ["pointerover", "focusin"]) element.addEventListener(ev, $9HbP8$catchify1(() => closing_animation.pause()));
|
|
6270
|
+
for (const ev of ["pointerout", "focusout"]) element.addEventListener(ev, $9HbP8$catchify1(() => closing_animation.play()));
|
|
6193
6271
|
const body = await (0, $9HbP8$observer).wait_for_element("body");
|
|
6194
6272
|
const x_translate = "translateX(-50%) ";
|
|
6195
6273
|
let remove_keyboard_listener;
|
|
@@ -6214,7 +6292,7 @@ function $bf52d9f9eebd1938$export$5196e4c01fa56fcb({
|
|
|
6214
6292
|
// let other toasts close us if they open while we're still here
|
|
6215
6293
|
$bf52d9f9eebd1938$var$closing_functions.add(close_toast_);
|
|
6216
6294
|
set_is_showing_toast(true);
|
|
6217
|
-
const handler = $9HbP8$
|
|
6295
|
+
const handler = $9HbP8$catchify1(({
|
|
6218
6296
|
key: key
|
|
6219
6297
|
}) => {
|
|
6220
6298
|
if (key === "Escape")
|
|
@@ -6326,7 +6404,7 @@ function $e9342fb3ac73a54a$export$8895d39404bd2bb1(props) {
|
|
|
6326
6404
|
var _el$2 = $9HbP8$getNextElement($e9342fb3ac73a54a$var$_tmpl$2),
|
|
6327
6405
|
_el$3 = _el$2.firstChild,
|
|
6328
6406
|
_el$4 = _el$3.nextSibling;
|
|
6329
|
-
$9HbP8$addEventListener(_el$3, "click", $9HbP8$
|
|
6407
|
+
$9HbP8$addEventListener(_el$3, "click", $9HbP8$catchify1(() => {
|
|
6330
6408
|
set_selected_filters(previous_selected_filters);
|
|
6331
6409
|
set_expanded_hierarchical_filters(previous_expanded_hierarchical_filters);
|
|
6332
6410
|
if (previousExpandedFilters) expanded_filters_?.[1](previousExpandedFilters);
|
|
@@ -6403,7 +6481,7 @@ function $1adfe60f3a14a1d7$export$fecbb157621501bd({
|
|
|
6403
6481
|
get children() {
|
|
6404
6482
|
return [(() => {
|
|
6405
6483
|
var _el$6 = $9HbP8$getNextElement($1adfe60f3a14a1d7$var$_tmpl$);
|
|
6406
|
-
$9HbP8$addEventListener(_el$6, "click", $9HbP8$
|
|
6484
|
+
$9HbP8$addEventListener(_el$6, "click", $9HbP8$catchify1(() =>
|
|
6407
6485
|
// click event handlers don't have an owner, carry it over
|
|
6408
6486
|
$9HbP8$runWithOwner(owner, () => $e9342fb3ac73a54a$export$8895d39404bd2bb1({
|
|
6409
6487
|
selected_filters_: selected_filters_,
|
|
@@ -6585,7 +6663,7 @@ function $1adfe60f3a14a1d7$export$fecbb157621501bd({
|
|
|
6585
6663
|
_el$28 = _el$26.firstChild,
|
|
6586
6664
|
[_el$29, _co$10] = $9HbP8$getNextMarker(_el$28.nextSibling),
|
|
6587
6665
|
_el$27 = _el$29.nextSibling;
|
|
6588
|
-
$9HbP8$addEventListener(_el$26, "click", $9HbP8$
|
|
6666
|
+
$9HbP8$addEventListener(_el$26, "click", $9HbP8$catchify1(() => {
|
|
6589
6667
|
const to_remove = selected_data();
|
|
6590
6668
|
const cloned_selected_filters = [...read_selected_filters()];
|
|
6591
6669
|
cloned_selected_filters.splice(index_in_selected_filters, 1);
|
|
@@ -6641,9 +6719,9 @@ function $1adfe60f3a14a1d7$export$fecbb157621501bd({
|
|
|
6641
6719
|
});
|
|
6642
6720
|
const [is_in_dom, set_is_in_dom] = $9HbP8$createSignal(document.documentElement.contains(outmost_element));
|
|
6643
6721
|
const hidden = $9HbP8$createMemo(() => get_search_filters_open_() || get_search_sorting_open_());
|
|
6644
|
-
if (!$9HbP8$untrack(is_in_dom)) (0, $9HbP8$observer).wait_for_element(outmost_element).then($9HbP8$
|
|
6722
|
+
if (!$9HbP8$untrack(is_in_dom)) (0, $9HbP8$observer).wait_for_element(outmost_element).then($9HbP8$catchify1(() => set_is_in_dom(true)));
|
|
6645
6723
|
outmost_element.classList.add("selected-filters");
|
|
6646
|
-
$9HbP8$createEffect($9HbP8$
|
|
6724
|
+
$9HbP8$createEffect($9HbP8$catchify1(async () => {
|
|
6647
6725
|
if (!is_in_dom())
|
|
6648
6726
|
// wait with setting state until we're in DOM, animation won't work otherwise
|
|
6649
6727
|
return;
|
|
@@ -6680,7 +6758,7 @@ const $49b79728e7d9e2a1$export$48513f6b9f8ce62d = props => {
|
|
|
6680
6758
|
// The reason for that being that we re-use the checkboxes. That means if one box was unchecked by the user and then removed, the "checked" value of "another" checkbox (that now had position 0) had changed to 0 (because the user unchecked the box with position 0) while solid js still believed that it was checked because it's checked signal hadn't changed.
|
|
6681
6759
|
// I've worked around this by restoring the state of the checkbox to what it is in solid js a bit after it was changed
|
|
6682
6760
|
// Why it can't be done instantaneously I don't know.
|
|
6683
|
-
input_el.addEventListener("change", $9HbP8$
|
|
6761
|
+
input_el.addEventListener("change", $9HbP8$catchify1(() => requestAnimationFrame($9HbP8$catchify1(() => {
|
|
6684
6762
|
if (input_el.checked !== checked()) input_el.checked = checked();
|
|
6685
6763
|
}))));
|
|
6686
6764
|
props.input_ref_?.(input_el);
|
|
@@ -6739,7 +6817,7 @@ function $67b173f9db427028$export$ca21a16d65b3dd8({
|
|
|
6739
6817
|
_el$3 = _el$.firstChild,
|
|
6740
6818
|
[_el$4, _co$] = $9HbP8$getNextMarker(_el$3.nextSibling),
|
|
6741
6819
|
_el$2 = _el$4.nextSibling;
|
|
6742
|
-
$9HbP8$addEventListener(_el$, "click", $9HbP8$
|
|
6820
|
+
$9HbP8$addEventListener(_el$, "click", $9HbP8$catchify1(() => set_show_extras(p => !p)), true);
|
|
6743
6821
|
$9HbP8$insert(_el$, $9HbP8$createComponent((0, $f8a56ba74eedd0c6$export$f21ab0717a89c77f), {}), _el$4, _co$);
|
|
6744
6822
|
$9HbP8$insert(_el$2, (() => {
|
|
6745
6823
|
var _c$ = $9HbP8$memo(() => !!get_show_extras());
|
|
@@ -6852,7 +6930,7 @@ function $a4601e6bea3ed1e6$export$dd948f91abc3a1c4({
|
|
|
6852
6930
|
}) : []);
|
|
6853
6931
|
});
|
|
6854
6932
|
$9HbP8$onCleanup(() => set_view_more_button_below_group_());
|
|
6855
|
-
$9HbP8$createEffect($9HbP8$
|
|
6933
|
+
$9HbP8$createEffect($9HbP8$catchify1(async () => {
|
|
6856
6934
|
if (!togglable_rest()) {
|
|
6857
6935
|
await collapse();
|
|
6858
6936
|
return;
|
|
@@ -6865,7 +6943,7 @@ function $a4601e6bea3ed1e6$export$dd948f91abc3a1c4({
|
|
|
6865
6943
|
[_el$3, _co$] = $9HbP8$getNextMarker(_el$2.nextSibling),
|
|
6866
6944
|
_el$4 = _el$3.nextSibling,
|
|
6867
6945
|
[_el$5, _co$2] = $9HbP8$getNextMarker(_el$4.nextSibling);
|
|
6868
|
-
$9HbP8$addEventListener(_el$, "change", $9HbP8$
|
|
6946
|
+
$9HbP8$addEventListener(_el$, "change", $9HbP8$catchify1(() => {
|
|
6869
6947
|
const set_filter = existing_filter();
|
|
6870
6948
|
const {
|
|
6871
6949
|
field: field,
|
|
@@ -6940,7 +7018,7 @@ function $eb8d9bf3b5700c26$export$430444115f70a734({
|
|
|
6940
7018
|
_el$9 = _el$3.nextSibling,
|
|
6941
7019
|
[_el$10, _co$2] = $9HbP8$getNextMarker(_el$9.nextSibling);
|
|
6942
7020
|
$9HbP8$setAttribute(_el$2, "for", random_selector);
|
|
6943
|
-
$9HbP8$addEventListener(_el$4, "change", $9HbP8$
|
|
7021
|
+
$9HbP8$addEventListener(_el$4, "change", $9HbP8$catchify1(() => {
|
|
6944
7022
|
const filter_object = {
|
|
6945
7023
|
op: filter_().op,
|
|
6946
7024
|
field: filter_().field,
|
|
@@ -7029,7 +7107,7 @@ function $a6b08770e164eced$export$e0d834a0ad870cda({
|
|
|
7029
7107
|
});
|
|
7030
7108
|
$9HbP8$createComputed(() => {
|
|
7031
7109
|
clearTimeout(debounce_timeout);
|
|
7032
|
-
debounce_timeout = setTimeout($9HbP8$
|
|
7110
|
+
debounce_timeout = setTimeout($9HbP8$catchify1(range => $9HbP8$untrack(() => {
|
|
7033
7111
|
const default_data = defaultRange();
|
|
7034
7112
|
const filter_object = {
|
|
7035
7113
|
op: filter_().op,
|
|
@@ -7107,20 +7185,20 @@ function $a6b08770e164eced$var$RangeSelector({
|
|
|
7107
7185
|
[_el$22, _co$6] = $9HbP8$getNextMarker(_el$21.nextSibling);
|
|
7108
7186
|
var _ref$ = price_input_1;
|
|
7109
7187
|
typeof _ref$ === "function" ? $9HbP8$use(_ref$, _el$4) : price_input_1 = _el$4;
|
|
7110
|
-
$9HbP8$addEventListener(_el$4, "keydown", $9HbP8$
|
|
7188
|
+
$9HbP8$addEventListener(_el$4, "keydown", $9HbP8$catchify1(({
|
|
7111
7189
|
key: key
|
|
7112
7190
|
}) => {
|
|
7113
7191
|
if (key === "Enter") $a6b08770e164eced$var$set_range_with_sanitation(min_, max_, current_range_, 0, price_input_1);
|
|
7114
7192
|
}), true);
|
|
7115
|
-
$9HbP8$addEventListener(_el$4, "blur", $9HbP8$
|
|
7193
|
+
$9HbP8$addEventListener(_el$4, "blur", $9HbP8$catchify1(() => $a6b08770e164eced$var$set_range_with_sanitation(min_, max_, current_range_, 0, price_input_1)));
|
|
7116
7194
|
var _ref$2 = price_input_2;
|
|
7117
7195
|
typeof _ref$2 === "function" ? $9HbP8$use(_ref$2, _el$7) : price_input_2 = _el$7;
|
|
7118
|
-
$9HbP8$addEventListener(_el$7, "keydown", $9HbP8$
|
|
7196
|
+
$9HbP8$addEventListener(_el$7, "keydown", $9HbP8$catchify1(({
|
|
7119
7197
|
key: key
|
|
7120
7198
|
}) => {
|
|
7121
7199
|
if (key === "Enter") $a6b08770e164eced$var$set_range_with_sanitation(min_, max_, current_range_, 1, price_input_2);
|
|
7122
7200
|
}), true);
|
|
7123
|
-
$9HbP8$addEventListener(_el$7, "blur", $9HbP8$
|
|
7201
|
+
$9HbP8$addEventListener(_el$7, "blur", $9HbP8$catchify1(() => $a6b08770e164eced$var$set_range_with_sanitation(min_, max_, current_range_, 1, price_input_2)));
|
|
7124
7202
|
$9HbP8$insert(_el$, $9HbP8$createComponent($a6b08770e164eced$var$ExponentialSlider, {
|
|
7125
7203
|
max_: max_,
|
|
7126
7204
|
min_: min_,
|
|
@@ -7260,7 +7338,7 @@ function $a6b08770e164eced$var$LinearSlider({
|
|
|
7260
7338
|
return [(() => {
|
|
7261
7339
|
var _el$25 = $9HbP8$getNextElement($a6b08770e164eced$var$_tmpl$2),
|
|
7262
7340
|
_el$26 = _el$25.firstChild;
|
|
7263
|
-
$9HbP8$addEventListener(_el$25, "click", $9HbP8$
|
|
7341
|
+
$9HbP8$addEventListener(_el$25, "click", $9HbP8$catchify1(e => {
|
|
7264
7342
|
const rect = clickable_slider.getBoundingClientRect();
|
|
7265
7343
|
const slider_beginning_left = rect.left;
|
|
7266
7344
|
const slider_width = rect.width;
|
|
@@ -7286,12 +7364,12 @@ function $a6b08770e164eced$var$LinearSlider({
|
|
|
7286
7364
|
range_input_1 = el;
|
|
7287
7365
|
set_value(range_input_1, 0);
|
|
7288
7366
|
}, _el$28);
|
|
7289
|
-
$9HbP8$addEventListener(_el$28, "input", $9HbP8$
|
|
7367
|
+
$9HbP8$addEventListener(_el$28, "input", $9HbP8$catchify1(() => $a6b08770e164eced$var$set_range_with_sanitation(min_, max_, current_range_, 0, range_input_1, offset_value_calculator_)), true);
|
|
7290
7368
|
$9HbP8$use(el => {
|
|
7291
7369
|
range_input_2 = el;
|
|
7292
7370
|
set_value(range_input_2, 1);
|
|
7293
7371
|
}, _el$29);
|
|
7294
|
-
$9HbP8$addEventListener(_el$29, "input", $9HbP8$
|
|
7372
|
+
$9HbP8$addEventListener(_el$29, "input", $9HbP8$catchify1(() => $a6b08770e164eced$var$set_range_with_sanitation(min_, max_, current_range_, 1, range_input_2, offset_value_calculator_)), true);
|
|
7295
7373
|
$9HbP8$effect(_p$ => {
|
|
7296
7374
|
var _v$10 = should_be_disabled_(),
|
|
7297
7375
|
_v$11 = i18n_.range_filter_low_point_aria_label_(),
|
|
@@ -7737,7 +7815,7 @@ function $1c8cac76cb67e9af$export$a32086fa6616eafd({
|
|
|
7737
7815
|
}
|
|
7738
7816
|
while (execute_when_structure_finished.length) execute_when_structure_finished.pop()();
|
|
7739
7817
|
$1c8cac76cb67e9af$var$expand_until_choice(data_structure);
|
|
7740
|
-
$9HbP8$
|
|
7818
|
+
$9HbP8$dlog1("CheckboxHierarchicalFilter: Recomputed structured_categories", data_structure);
|
|
7741
7819
|
return data_structure;
|
|
7742
7820
|
});
|
|
7743
7821
|
const some_top_level_are_hidden = $9HbP8$createMemo(() => Object.keys(structured_categories()).length > $1c8cac76cb67e9af$var$max_visible_without_collapsing);
|
|
@@ -7767,7 +7845,7 @@ function $1c8cac76cb67e9af$export$a32086fa6616eafd({
|
|
|
7767
7845
|
}) : []);
|
|
7768
7846
|
});
|
|
7769
7847
|
$9HbP8$onCleanup(() => set_view_more_button_below_group());
|
|
7770
|
-
$9HbP8$createEffect($9HbP8$
|
|
7848
|
+
$9HbP8$createEffect($9HbP8$catchify1(async () => {
|
|
7771
7849
|
if (!some_top_level_are_hidden()) {
|
|
7772
7850
|
await collapse();
|
|
7773
7851
|
return;
|
|
@@ -7845,7 +7923,7 @@ function $1c8cac76cb67e9af$var$render_stuff(data, existing_filter, i18n_, filter
|
|
|
7845
7923
|
return value()?.is_checked_?.[0]?.() ?? false;
|
|
7846
7924
|
},
|
|
7847
7925
|
input_ref_: input => {
|
|
7848
|
-
input.addEventListener("change", $9HbP8$
|
|
7926
|
+
input.addEventListener("change", $9HbP8$catchify1(() => $9HbP8$untrack(() => {
|
|
7849
7927
|
const {
|
|
7850
7928
|
checked: checked
|
|
7851
7929
|
} = input;
|
|
@@ -7934,7 +8012,7 @@ function $1c8cac76cb67e9af$var$batching_filter_state_syncer(props) {
|
|
|
7934
8012
|
existing_filter_: existing_filter_
|
|
7935
8013
|
} = props;
|
|
7936
8014
|
let sync_queued = false;
|
|
7937
|
-
const sync_fn = $9HbP8$
|
|
8015
|
+
const sync_fn = $9HbP8$catchify1(async () => {
|
|
7938
8016
|
sync_queued = false;
|
|
7939
8017
|
// if we change, update filter state - next microtask, so that "reactions" to the change can process before we send it off to the API
|
|
7940
8018
|
const set_filter = existing_filter_();
|
|
@@ -7958,7 +8036,7 @@ function $1c8cac76cb67e9af$var$batching_filter_state_syncer(props) {
|
|
|
7958
8036
|
...base_object,
|
|
7959
8037
|
data: data
|
|
7960
8038
|
};
|
|
7961
|
-
$9HbP8$
|
|
8039
|
+
$9HbP8$dlog1("CheckboxHierarchicalFilter: Updating API state", filter_object);
|
|
7962
8040
|
const selected_filters = [...selected_filters_[0]()];
|
|
7963
8041
|
if (set_filter) selected_filters.splice(selected_filters.indexOf(set_filter), 1);
|
|
7964
8042
|
if (filter_object.data.length) selected_filters.push(filter_object);
|
|
@@ -7991,13 +8069,13 @@ function $1c8cac76cb67e9af$var$create_updating_signal({
|
|
|
7991
8069
|
$9HbP8$createComputed($9HbP8$on(read_checked, trigger_sync_, {
|
|
7992
8070
|
defer: true
|
|
7993
8071
|
}));
|
|
7994
|
-
$9HbP8$createComputed($9HbP8$on(read_checked, $9HbP8$
|
|
8072
|
+
$9HbP8$createComputed($9HbP8$on(read_checked, $9HbP8$catchify1(new_value => {
|
|
7995
8073
|
if (updating_blocked) return;
|
|
7996
8074
|
for (const child of child_objects) child.is_checked_[1](new_value);
|
|
7997
8075
|
}), {
|
|
7998
8076
|
defer: true
|
|
7999
8077
|
}));
|
|
8000
|
-
$9HbP8$createEffect($9HbP8$on(get_child_object_values, $9HbP8$
|
|
8078
|
+
$9HbP8$createEffect($9HbP8$on(get_child_object_values, $9HbP8$catchify1(() => {
|
|
8001
8079
|
const all_kids_checked = get_child_object_values.every(accessor => accessor());
|
|
8002
8080
|
if (all_kids_checked === read_checked()) return;
|
|
8003
8081
|
updating_blocked = true;
|
|
@@ -8183,7 +8261,7 @@ const $93716a9ad0dea854$export$414f6a19d38e655c = ({
|
|
|
8183
8261
|
};
|
|
8184
8262
|
},
|
|
8185
8263
|
get onClick() {
|
|
8186
|
-
return $9HbP8$
|
|
8264
|
+
return $9HbP8$catchify1(() => {
|
|
8187
8265
|
const set_filter = existing_filter();
|
|
8188
8266
|
const {
|
|
8189
8267
|
field: field,
|
|
@@ -8466,7 +8544,7 @@ function $e731d52d97444b7c$export$82ed4b28ecb67608({
|
|
|
8466
8544
|
}) : []);
|
|
8467
8545
|
});
|
|
8468
8546
|
$9HbP8$onCleanup(() => set_view_more_button_below_group_());
|
|
8469
|
-
$9HbP8$createEffect($9HbP8$
|
|
8547
|
+
$9HbP8$createEffect($9HbP8$catchify1(async () => {
|
|
8470
8548
|
if (!togglable_rest()) {
|
|
8471
8549
|
await collapse();
|
|
8472
8550
|
set_having_expanding_in_dom(false); // Once animation has finished, remove expanding from DOM
|
|
@@ -8481,7 +8559,7 @@ function $e731d52d97444b7c$export$82ed4b28ecb67608({
|
|
|
8481
8559
|
[_el$3, _co$] = $9HbP8$getNextMarker(_el$2.nextSibling),
|
|
8482
8560
|
_el$4 = _el$3.nextSibling,
|
|
8483
8561
|
[_el$5, _co$2] = $9HbP8$getNextMarker(_el$4.nextSibling);
|
|
8484
|
-
$9HbP8$addEventListener(_el$, "change", $9HbP8$
|
|
8562
|
+
$9HbP8$addEventListener(_el$, "change", $9HbP8$catchify1(() => {
|
|
8485
8563
|
const set_filter = existing_filter();
|
|
8486
8564
|
const {
|
|
8487
8565
|
field: field,
|
|
@@ -8997,7 +9075,7 @@ function $fab07f52c9861732$var$ActualFilterBody(props) {
|
|
|
8997
9075
|
_el$11 = _el$9.firstChild,
|
|
8998
9076
|
[_el$12, _co$3] = $9HbP8$getNextMarker(_el$11.nextSibling),
|
|
8999
9077
|
_el$10 = _el$12.nextSibling;
|
|
9000
|
-
$9HbP8$addEventListener(_el$9, "click", $9HbP8$
|
|
9078
|
+
$9HbP8$addEventListener(_el$9, "click", $9HbP8$catchify1(() => {
|
|
9001
9079
|
const new_filter_obj = [...props.selected_filters_[0]()];
|
|
9002
9080
|
for (const filter of filter_array_()) {
|
|
9003
9081
|
const index = new_filter_obj.findIndex(({
|
|
@@ -9063,7 +9141,7 @@ function $fab07f52c9861732$var$ActualFilterBody(props) {
|
|
|
9063
9141
|
},
|
|
9064
9142
|
get children() {
|
|
9065
9143
|
var _el$29 = $9HbP8$getNextElement($fab07f52c9861732$var$_tmpl$8);
|
|
9066
|
-
$9HbP8$addEventListener(_el$29, "click", $9HbP8$
|
|
9144
|
+
$9HbP8$addEventListener(_el$29, "click", $9HbP8$catchify1(() => $e9342fb3ac73a54a$export$8895d39404bd2bb1({
|
|
9067
9145
|
user_triggered_: true,
|
|
9068
9146
|
selected_filters_: props.selected_filters_,
|
|
9069
9147
|
i18n_: props.i18n_,
|
|
@@ -9232,13 +9310,13 @@ async function $a0f0e923bad68a9b$export$58e808b1db15d3bc(options) {
|
|
|
9232
9310
|
headers: headers
|
|
9233
9311
|
} : {}),
|
|
9234
9312
|
method: "POST"
|
|
9235
|
-
}).catch(e => $9HbP8$
|
|
9313
|
+
}).catch(e => $9HbP8$dlog1("fetch_retry threw", e)).then(async maybe_response => {
|
|
9236
9314
|
if (!maybe_response) return [];
|
|
9237
9315
|
let decoded;
|
|
9238
9316
|
try {
|
|
9239
9317
|
decoded = await maybe_response.json();
|
|
9240
9318
|
} catch (e) {
|
|
9241
|
-
$9HbP8$
|
|
9319
|
+
$9HbP8$dlog1("Failed to decode JSON", e);
|
|
9242
9320
|
}
|
|
9243
9321
|
return decoded?.displays || [];
|
|
9244
9322
|
});
|
|
@@ -9296,7 +9374,7 @@ const $a6e23a834336fc19$export$824dde41348efed1 = /*@__PURE__*/(() => {
|
|
|
9296
9374
|
|
|
9297
9375
|
const observe_to_signal = (element, setter) => {
|
|
9298
9376
|
const computed_style = getComputedStyle(element);
|
|
9299
|
-
const resize_observer = new ResizeObserver($9HbP8$
|
|
9377
|
+
const resize_observer = new ResizeObserver($9HbP8$catchify1(() => {
|
|
9300
9378
|
setter(element.getBoundingClientRect().width + parseFloat(computed_style.marginLeft) + parseFloat(computed_style.marginRight) + parseFloat(computed_style.borderRightWidth) + parseFloat(computed_style.borderLeftWidth));
|
|
9301
9379
|
}));
|
|
9302
9380
|
resize_observer.observe(element);
|
|
@@ -9350,7 +9428,7 @@ async function $4b2134398dfa83fa$export$c1a6b039e689a58e(merchant, market, local
|
|
|
9350
9428
|
const in_ls = localStorage[localstorage_key];
|
|
9351
9429
|
if (in_ls) localstorage_value = JSON.parse(in_ls);
|
|
9352
9430
|
} catch (e) {
|
|
9353
|
-
$9HbP8$
|
|
9431
|
+
$9HbP8$dlog1("Failed parsing JSON from localStorage", e);
|
|
9354
9432
|
}
|
|
9355
9433
|
const updated = localstorage_value?.updated;
|
|
9356
9434
|
const now = +new Date();
|
|
@@ -9394,12 +9472,12 @@ async function $4b2134398dfa83fa$var$download_categories(merchant, market, local
|
|
|
9394
9472
|
if (!fetched) return [];
|
|
9395
9473
|
try {
|
|
9396
9474
|
if (fetched.status !== 200) {
|
|
9397
|
-
$9HbP8$
|
|
9475
|
+
$9HbP8$dlog1("failed to fetch queries, server responded with", fetched.status, fetched, await fetched.text());
|
|
9398
9476
|
return [];
|
|
9399
9477
|
}
|
|
9400
9478
|
return await fetched.json();
|
|
9401
9479
|
} catch (e) {
|
|
9402
|
-
$9HbP8$
|
|
9480
|
+
$9HbP8$dlog1("failed to decode queries json", fetched, e);
|
|
9403
9481
|
return [];
|
|
9404
9482
|
}
|
|
9405
9483
|
}
|
|
@@ -9529,9 +9607,9 @@ class $7fa23e2a0079eca4$export$e015ed2f2950f2e3 {
|
|
|
9529
9607
|
return this.#cache_objs[endpoint] ||= {
|
|
9530
9608
|
in_progress_: {},
|
|
9531
9609
|
cache_: {},
|
|
9532
|
-
finalization_registry_: this.#supports_finalization_registry ? new FinalizationRegistry($9HbP8$
|
|
9610
|
+
finalization_registry_: this.#supports_finalization_registry ? new FinalizationRegistry($9HbP8$catchify1(key => {
|
|
9533
9611
|
const our_cache = this.#cache_objs[endpoint].cache_;
|
|
9534
|
-
$9HbP8$
|
|
9612
|
+
$9HbP8$dlog1("[Search API]: removing", key, "from", our_cache);
|
|
9535
9613
|
delete our_cache[key];
|
|
9536
9614
|
})) : undefined
|
|
9537
9615
|
};
|
|
@@ -9677,11 +9755,11 @@ class $7fa23e2a0079eca4$export$e015ed2f2950f2e3 {
|
|
|
9677
9755
|
result = $e5014ccd0b76d9f4$export$967e966fca9515e(result);
|
|
9678
9756
|
cache_obj.cache_[body] = new WeakRef(result);
|
|
9679
9757
|
resolve_in_progress(result);
|
|
9680
|
-
setTimeout($9HbP8$
|
|
9758
|
+
setTimeout($9HbP8$catchify1(() => {
|
|
9681
9759
|
if (this.#supports_finalization_registry) cache_obj.finalization_registry_.register(result, body); // delete key from cache when value (WeakRefs) are collected
|
|
9682
9760
|
else
|
|
9683
9761
|
// delete things from cache after 5 minutes, so it doesn't get too heavy
|
|
9684
|
-
setTimeout($9HbP8$
|
|
9762
|
+
setTimeout($9HbP8$catchify1(() => delete cache_obj.cache_[body]), 300000);
|
|
9685
9763
|
}), 60000 // cache values for at least 60 seconds
|
|
9686
9764
|
);
|
|
9687
9765
|
|
|
@@ -9811,7 +9889,7 @@ function $ccd5db07a3a069c5$export$477caf01aecaeb2a(options) {
|
|
|
9811
9889
|
const [get_selected_filters_, set_selected_filters] = selected_filters_;
|
|
9812
9890
|
const [get_has_sideways_filter_clearing_flag_, set_has_sideways_filter_clearing_flag] = sideways_filter_clearing_flag_;
|
|
9813
9891
|
const [get_current_href, set_current_href] = $9HbP8$createSignal(globalThis?.location?.href ?? "https://example.com");
|
|
9814
|
-
const history_change_handler = $9HbP8$
|
|
9892
|
+
const history_change_handler = $9HbP8$catchify1(() => set_current_href(location.href));
|
|
9815
9893
|
const owner = $9HbP8$getOwner() || $9HbP8$createRoot(() => $9HbP8$getOwner());
|
|
9816
9894
|
const {
|
|
9817
9895
|
sorting_query_param_: sorting_query_param_,
|
|
@@ -9852,7 +9930,7 @@ function $ccd5db07a3a069c5$export$477caf01aecaeb2a(options) {
|
|
|
9852
9930
|
if (override_listing_id_query_param_names_) {
|
|
9853
9931
|
const found_override_listing_id = override_listing_id_query_param_names_.map(n => searchParams.get(n)).find(n => n);
|
|
9854
9932
|
set_override_listing_id(found_override_listing_id || null);
|
|
9855
|
-
if (found_override_listing_id) $9HbP8$
|
|
9933
|
+
if (found_override_listing_id) $9HbP8$dlog1("Found override query id:", found_override_listing_id); // This stuff might get confusing so better log it
|
|
9856
9934
|
}
|
|
9857
9935
|
|
|
9858
9936
|
if (hash === (0, $4147651646da990a$export$84daa4fa1471698b)) set_has_sideways_filter_clearing_flag(true);
|
|
@@ -10075,7 +10153,7 @@ function $897bd4a76f611b38$export$d757d54550ebfb3d({
|
|
|
10075
10153
|
_el$2 = _el$.firstChild,
|
|
10076
10154
|
_el$4 = _el$2.nextSibling,
|
|
10077
10155
|
[_el$5, _co$] = $9HbP8$getNextMarker(_el$4.nextSibling);
|
|
10078
|
-
$9HbP8$addEventListener(_el$, "click", $9HbP8$
|
|
10156
|
+
$9HbP8$addEventListener(_el$, "click", $9HbP8$catchify1(e => {
|
|
10079
10157
|
router_.navigate_.go_to_({
|
|
10080
10158
|
new_url_: category_suggestion_().page_url,
|
|
10081
10159
|
is_replace_: false,
|
|
@@ -10228,7 +10306,7 @@ function $48d7e4a9707315b6$export$e026af0c7b64ea5f({
|
|
|
10228
10306
|
}, {
|
|
10229
10307
|
defer: true
|
|
10230
10308
|
}));
|
|
10231
|
-
$9HbP8$createComputed($9HbP8$on(get_search_query_, $9HbP8$
|
|
10309
|
+
$9HbP8$createComputed($9HbP8$on(get_search_query_, $9HbP8$catchify1(() => {
|
|
10232
10310
|
// when a query was submitted, clear filters if clear was pressed before
|
|
10233
10311
|
const clear_value = $9HbP8$untrack(get_clear_filters_next_submit);
|
|
10234
10312
|
if (clear_value) {
|
|
@@ -10255,11 +10333,11 @@ function $21f51c14cb3f586f$export$84bba84a7b837187(read_search_query) {
|
|
|
10255
10333
|
const key = "depict_searches";
|
|
10256
10334
|
const previous_searches = $9HbP8$createSignal(JSON.parse(ls[key] || "[]"));
|
|
10257
10335
|
const [read_previous_searches, write_previous_searches] = previous_searches;
|
|
10258
|
-
$9HbP8$createEffect($9HbP8$
|
|
10336
|
+
$9HbP8$createEffect($9HbP8$catchify1(() => {
|
|
10259
10337
|
const json_encoded = JSON.stringify(read_previous_searches());
|
|
10260
10338
|
if (ls[key] !== json_encoded) ls[key] = json_encoded;
|
|
10261
10339
|
}));
|
|
10262
|
-
$9HbP8$createComputed($9HbP8$
|
|
10340
|
+
$9HbP8$createComputed($9HbP8$catchify1(() => {
|
|
10263
10341
|
const searches = $9HbP8$untrack(read_previous_searches);
|
|
10264
10342
|
const current_query = read_search_query();
|
|
10265
10343
|
if (!current_query)
|
|
@@ -10302,7 +10380,7 @@ async function $bfd908d13d90934c$export$e16630ecb9644a1c({
|
|
|
10302
10380
|
after_submit_?.();
|
|
10303
10381
|
}
|
|
10304
10382
|
function $8f9120a1ca151e6a$export$205efb947c7ffd78(handler, passive = true, override_element) {
|
|
10305
|
-
const catchified_handler = $9HbP8$
|
|
10383
|
+
const catchified_handler = $9HbP8$catchify1(handler);
|
|
10306
10384
|
const owner = $9HbP8$getOwner();
|
|
10307
10385
|
// Some customers (e.g. equestrian) have `height: 100%` and/or `overflow-x: hidden` on the body, which means that scroll events won't get dispatched on `window`. The pages who get it on <body> won't get it on `window` and vice-versa, so there shouldn't be a worry about duplicate calling of the handler.
|
|
10308
10386
|
// Use observer in case that this gets called before body exists
|
|
@@ -10344,7 +10422,7 @@ function $d68658730065de95$export$181cceed5c91919e(callback, alsoRaF, passiveLis
|
|
|
10344
10422
|
$9HbP8$createEffect(() => {
|
|
10345
10423
|
if (alsoRaF?.()) {
|
|
10346
10424
|
let disposed = false;
|
|
10347
|
-
const fn = $9HbP8$
|
|
10425
|
+
const fn = $9HbP8$catchify1(() => {
|
|
10348
10426
|
if (disposed) return;
|
|
10349
10427
|
probablyCallCallback();
|
|
10350
10428
|
requestAnimationFrame(fn);
|
|
@@ -10357,10 +10435,10 @@ function $d68658730065de95$export$181cceed5c91919e(callback, alsoRaF, passiveLis
|
|
|
10357
10435
|
// "resize" doesn't fire sometimes when it should, also it doesn't when showing/hiding scrollbars which disabling scrolling does
|
|
10358
10436
|
// this works
|
|
10359
10437
|
// keeping resize just in case
|
|
10360
|
-
const resize_resize_observer = new ResizeObserver($9HbP8$
|
|
10438
|
+
const resize_resize_observer = new ResizeObserver($9HbP8$catchify1(probablyCallCallback));
|
|
10361
10439
|
resize_resize_observer.observe(document.documentElement);
|
|
10362
10440
|
(0, $9HbP8$observer).wait_for_element("body").then(resize_resize_observer.observe.bind(resize_resize_observer));
|
|
10363
|
-
$9HbP8$onCleanup($9HbP8$
|
|
10441
|
+
$9HbP8$onCleanup($9HbP8$catchify1(() => resize_resize_observer.disconnect()));
|
|
10364
10442
|
return probablyCallCallback;
|
|
10365
10443
|
}
|
|
10366
10444
|
const $b6d5529b253681aa$export$3f238c96c45e6cc6 = 1;
|
|
@@ -10391,7 +10469,7 @@ function $b6d5529b253681aa$export$b3ad617e9036868({
|
|
|
10391
10469
|
}, pollAlignment);
|
|
10392
10470
|
let ro;
|
|
10393
10471
|
if (alignment & $b6d5529b253681aa$export$902f8b4a7dae5d78 || alignment & $b6d5529b253681aa$export$5097308c5200105a) {
|
|
10394
|
-
ro = new ResizeObserver($9HbP8$
|
|
10472
|
+
ro = new ResizeObserver($9HbP8$catchify1(records => {
|
|
10395
10473
|
records.forEach(({
|
|
10396
10474
|
contentRect: {
|
|
10397
10475
|
width: width
|
|
@@ -10414,7 +10492,7 @@ function $b6d5529b253681aa$export$b3ad617e9036868({
|
|
|
10414
10492
|
}));
|
|
10415
10493
|
ro.observe(input_field);
|
|
10416
10494
|
}
|
|
10417
|
-
$9HbP8$onCleanup($9HbP8$
|
|
10495
|
+
$9HbP8$onCleanup($9HbP8$catchify1(() => ro?.disconnect()));
|
|
10418
10496
|
return ensureAlignedPosition;
|
|
10419
10497
|
}
|
|
10420
10498
|
const $fc5a12f3a857ca30$var$get_available_range = (available_filters_, search_for_field) => {
|
|
@@ -10620,7 +10698,7 @@ function $6db49ca163afa2c3$export$83fd5de5504a7a67({
|
|
|
10620
10698
|
fill: "forwards",
|
|
10621
10699
|
easing: "ease-in-out"
|
|
10622
10700
|
});
|
|
10623
|
-
animation.addEventListener("finish", $9HbP8$
|
|
10701
|
+
animation.addEventListener("finish", $9HbP8$catchify1(() => {
|
|
10624
10702
|
if (unpermit_when_possible) set_permitted_to_show(false);
|
|
10625
10703
|
animation = undefined;
|
|
10626
10704
|
element.style.display = "none";
|
|
@@ -10681,7 +10759,7 @@ function $598245ecfe38f34b$export$ef6006467f04ee41({
|
|
|
10681
10759
|
},
|
|
10682
10760
|
get children() {
|
|
10683
10761
|
var _el$3 = $9HbP8$getNextElement($598245ecfe38f34b$var$_tmpl$);
|
|
10684
|
-
$9HbP8$addEventListener(_el$3, "click", $9HbP8$
|
|
10762
|
+
$9HbP8$addEventListener(_el$3, "click", $9HbP8$catchify1(() => $9HbP8$runWithOwner(root, () => $e9342fb3ac73a54a$export$8895d39404bd2bb1({
|
|
10685
10763
|
user_triggered_: true,
|
|
10686
10764
|
selected_filters_: selected_filters_,
|
|
10687
10765
|
also_clear_sorting_: false,
|
|
@@ -10723,7 +10801,7 @@ function $056f6ac0a6caa919$export$5e4aed86c12acdd9({
|
|
|
10723
10801
|
is_first_load = true;
|
|
10724
10802
|
});
|
|
10725
10803
|
// percentage_in_view_ has equals: false so it should update even when set to the same value. That is to make sure that if the user bounces around below the "viewport" of our product listing we still start fetching as soon as is_loading_more becomes false again and we get IntersectionObserverEntries
|
|
10726
|
-
$9HbP8$createEffect($9HbP8$
|
|
10804
|
+
$9HbP8$createEffect($9HbP8$catchify1(async () => {
|
|
10727
10805
|
const be_above_percentage = is_first_load ? 50 : 75; // if first load, load earlier
|
|
10728
10806
|
if (percentage_in_view_() < be_above_percentage || is_loading_more) return;
|
|
10729
10807
|
if (!get_last_cursor()) {
|
|
@@ -11451,7 +11529,7 @@ function $f8c929beb82c512b$export$9dd50d35b9d94fdf({
|
|
|
11451
11529
|
number_of_results_: number_of_results_,
|
|
11452
11530
|
type: type
|
|
11453
11531
|
}) {
|
|
11454
|
-
const contents = $9HbP8$createMemo($9HbP8$
|
|
11532
|
+
const contents = $9HbP8$createMemo($9HbP8$catchify1(() => {
|
|
11455
11533
|
const q = get_search_query_();
|
|
11456
11534
|
return i18n_[type === $f8c929beb82c512b$export$2452208c79fe93ea.content ? "get_showing_pages_for_" : "get_showing_results_for_"]()((() => {
|
|
11457
11535
|
var _el$ = $9HbP8$getNextElement($f8c929beb82c512b$var$_tmpl$);
|
|
@@ -11533,7 +11611,7 @@ function $68a258a92b88f02f$export$1f1775a58da589b5({
|
|
|
11533
11611
|
_el$13 = _el$12.nextSibling,
|
|
11534
11612
|
_el$14 = _el$13.nextSibling,
|
|
11535
11613
|
[_el$15, _co$2] = $9HbP8$getNextMarker(_el$14.nextSibling);
|
|
11536
|
-
$9HbP8$addEventListener(_el$12, "change", $9HbP8$
|
|
11614
|
+
$9HbP8$addEventListener(_el$12, "change", $9HbP8$catchify1(() => set_current_sorting(item())));
|
|
11537
11615
|
$9HbP8$setAttribute(_el$12, "name", title_radio_name);
|
|
11538
11616
|
$9HbP8$insert(_el$11, () => item().meta.title, _el$15, _co$2);
|
|
11539
11617
|
$9HbP8$effect(() => $9HbP8$setProperty(_el$12, "checked", is_checked()));
|
|
@@ -11562,7 +11640,7 @@ function $68a258a92b88f02f$export$1f1775a58da589b5({
|
|
|
11562
11640
|
_el$19 = _el$18.nextSibling,
|
|
11563
11641
|
_el$20 = _el$19.nextSibling,
|
|
11564
11642
|
[_el$21, _co$3] = $9HbP8$getNextMarker(_el$20.nextSibling);
|
|
11565
|
-
$9HbP8$addEventListener(_el$18, "change", $9HbP8$
|
|
11643
|
+
$9HbP8$addEventListener(_el$18, "change", $9HbP8$catchify1(() => set_current_sorting(c => c && {
|
|
11566
11644
|
...c,
|
|
11567
11645
|
order: order_value()
|
|
11568
11646
|
})));
|
|
@@ -11656,7 +11734,7 @@ function $757dac7f7c6c5241$export$9bf11afa910f536e({
|
|
|
11656
11734
|
set_search_sorting_open(true);
|
|
11657
11735
|
}
|
|
11658
11736
|
});
|
|
11659
|
-
$9HbP8$onCleanup($9HbP8$
|
|
11737
|
+
$9HbP8$onCleanup($9HbP8$catchify1(() => {
|
|
11660
11738
|
if (!sorting_expanded() && !filters_expanded()) {
|
|
11661
11739
|
set_search_filters_open(false);
|
|
11662
11740
|
set_search_sorting_open(false);
|
|
@@ -11688,16 +11766,16 @@ function $757dac7f7c6c5241$export$9bf11afa910f536e({
|
|
|
11688
11766
|
_el$12 = _el$14.nextSibling;
|
|
11689
11767
|
$9HbP8$use(el => {
|
|
11690
11768
|
background = el;
|
|
11691
|
-
(0, $9HbP8$observer).wait_for_element(el).then($9HbP8$
|
|
11769
|
+
(0, $9HbP8$observer).wait_for_element(el).then($9HbP8$catchify1(() => {
|
|
11692
11770
|
set_background_style("transition", "all 200ms ease-in");
|
|
11693
11771
|
// For some reason this needs a requestAnimationFrame but the other modal-opening animations don't
|
|
11694
|
-
requestAnimationFrame($9HbP8$
|
|
11772
|
+
requestAnimationFrame($9HbP8$catchify1(() => set_background_style("opacity", "1")));
|
|
11695
11773
|
}));
|
|
11696
11774
|
}, _el$2);
|
|
11697
11775
|
$9HbP8$addEventListener(_el$2, "click", dismiss_modal_, true);
|
|
11698
11776
|
$9HbP8$use(el => {
|
|
11699
11777
|
dismiss_button = el;
|
|
11700
|
-
(0, $9HbP8$observer).wait_for_element(el).then($9HbP8$
|
|
11778
|
+
(0, $9HbP8$observer).wait_for_element(el).then($9HbP8$catchify1(() => {
|
|
11701
11779
|
set_button_style("transition", "all 200ms ease-in");
|
|
11702
11780
|
set_button_fraction_in(1);
|
|
11703
11781
|
}));
|
|
@@ -11710,11 +11788,11 @@ function $757dac7f7c6c5241$export$9bf11afa910f536e({
|
|
|
11710
11788
|
}) => {
|
|
11711
11789
|
// touchstart should always only have one changed touch, track it here
|
|
11712
11790
|
if (touches >= 1) {
|
|
11713
|
-
$9HbP8$
|
|
11791
|
+
$9HbP8$dlog1("Got new touch", changedTouches, "ignoring"); // only support 1 touch for now
|
|
11714
11792
|
return;
|
|
11715
11793
|
}
|
|
11716
11794
|
if (target.closest($757dac7f7c6c5241$var$no_go_selector) || target.matches($757dac7f7c6c5241$var$no_go_selector)) {
|
|
11717
|
-
$9HbP8$
|
|
11795
|
+
$9HbP8$dlog1("Got touch on slider, ignoring for UX", target, changedTouches);
|
|
11718
11796
|
return;
|
|
11719
11797
|
}
|
|
11720
11798
|
set_modal_style("transition", "unset");
|
|
@@ -11730,7 +11808,7 @@ function $757dac7f7c6c5241$export$9bf11afa910f536e({
|
|
|
11730
11808
|
let last_move_page_y = start_page_y;
|
|
11731
11809
|
let first_move_was_downwards = false;
|
|
11732
11810
|
let distance_from_start_of_gesture = 0;
|
|
11733
|
-
const end_handler = $9HbP8$
|
|
11811
|
+
const end_handler = $9HbP8$catchify1(e => {
|
|
11734
11812
|
const changedTouches = e?.changedTouches;
|
|
11735
11813
|
if (changedTouches && changedTouches[0].identifier !== our_fingers_identifier)
|
|
11736
11814
|
// other finger stopped touch, ignore it
|
|
@@ -11754,7 +11832,7 @@ function $757dac7f7c6c5241$export$9bf11afa910f536e({
|
|
|
11754
11832
|
modal.removeEventListener("touchcancel", end_handler);
|
|
11755
11833
|
modal.removeEventListener("touchmove", move_handler);
|
|
11756
11834
|
});
|
|
11757
|
-
const move_handler = $9HbP8$
|
|
11835
|
+
const move_handler = $9HbP8$catchify1(e => {
|
|
11758
11836
|
const {
|
|
11759
11837
|
changedTouches: changedTouches
|
|
11760
11838
|
} = e;
|
|
@@ -11804,7 +11882,7 @@ function $757dac7f7c6c5241$export$9bf11afa910f536e({
|
|
|
11804
11882
|
};
|
|
11805
11883
|
$9HbP8$use(el => {
|
|
11806
11884
|
modal = el;
|
|
11807
|
-
(0, $9HbP8$observer).wait_for_element(el).then($9HbP8$
|
|
11885
|
+
(0, $9HbP8$observer).wait_for_element(el).then($9HbP8$catchify1(() => {
|
|
11808
11886
|
set_modal_style("transition", "all 200ms ease-in");
|
|
11809
11887
|
set_modal_style("transform", "translateY(0)");
|
|
11810
11888
|
}));
|
|
@@ -11893,7 +11971,7 @@ function $757dac7f7c6c5241$export$9bf11afa910f536e({
|
|
|
11893
11971
|
},
|
|
11894
11972
|
get children() {
|
|
11895
11973
|
var _el$11 = $9HbP8$getNextElement($757dac7f7c6c5241$var$_tmpl$);
|
|
11896
|
-
$9HbP8$addEventListener(_el$11, "click", $9HbP8$
|
|
11974
|
+
$9HbP8$addEventListener(_el$11, "click", $9HbP8$catchify1(() => {
|
|
11897
11975
|
const show_toast = $e9342fb3ac73a54a$export$8895d39404bd2bb1({
|
|
11898
11976
|
user_triggered_: true,
|
|
11899
11977
|
expanded_hierarchical_filters_: args_for_filtering_.expanded_hierarchical_filters_,
|
|
@@ -11903,7 +11981,7 @@ function $757dac7f7c6c5241$export$9bf11afa910f536e({
|
|
|
11903
11981
|
also_clear_sorting_: false,
|
|
11904
11982
|
delay_toast_: true
|
|
11905
11983
|
});
|
|
11906
|
-
cleanup_promise.then($9HbP8$
|
|
11984
|
+
cleanup_promise.then($9HbP8$catchify1(show_toast));
|
|
11907
11985
|
}), true);
|
|
11908
11986
|
$9HbP8$insert(_el$11, () => i18n_.clear_individual_filter_());
|
|
11909
11987
|
$9HbP8$runHydrationEvents();
|
|
@@ -11978,7 +12056,7 @@ function $cdea4cf8c5c071ef$export$d7841e452f2e59a8({
|
|
|
11978
12056
|
const [sorting_open, set_sorting_open] = search_sorting_open_;
|
|
11979
12057
|
const [get_current_sorting_] = current_sorting_;
|
|
11980
12058
|
const [is_small, set_is_small] = $9HbP8$createSignal(false);
|
|
11981
|
-
const dismiss_modal_ = $9HbP8$
|
|
12059
|
+
const dismiss_modal_ = $9HbP8$catchify1(() => {
|
|
11982
12060
|
set_filters_open(false);
|
|
11983
12061
|
set_sorting_open(false);
|
|
11984
12062
|
});
|
|
@@ -12072,7 +12150,7 @@ function $cdea4cf8c5c071ef$export$d7841e452f2e59a8({
|
|
|
12072
12150
|
})());
|
|
12073
12151
|
}
|
|
12074
12152
|
});
|
|
12075
|
-
$9HbP8$
|
|
12153
|
+
$9HbP8$catchify1(async () => {
|
|
12076
12154
|
({
|
|
12077
12155
|
open_modal_: open_modal_,
|
|
12078
12156
|
close_modal_: close_modal_
|
|
@@ -12162,7 +12240,7 @@ function $cdea4cf8c5c071ef$var$OpenFiltersButton({
|
|
|
12162
12240
|
return _el$15;
|
|
12163
12241
|
}
|
|
12164
12242
|
}), _el$21, _co$5);
|
|
12165
|
-
$9HbP8$addEventListener(_el$16, "click", $9HbP8$
|
|
12243
|
+
$9HbP8$addEventListener(_el$16, "click", $9HbP8$catchify1(() => $9HbP8$batch(() => {
|
|
12166
12244
|
if (search_filters_open_[0]()) {
|
|
12167
12245
|
search_filters_open_[1](false);
|
|
12168
12246
|
return;
|
|
@@ -12228,7 +12306,7 @@ function $cdea4cf8c5c071ef$var$OpenSortingButton({
|
|
|
12228
12306
|
_el$23 = _el$22.firstChild,
|
|
12229
12307
|
_el$24 = _el$23.nextSibling,
|
|
12230
12308
|
[_el$25, _co$6] = $9HbP8$getNextMarker(_el$24.nextSibling);
|
|
12231
|
-
$9HbP8$addEventListener(_el$22, "click", $9HbP8$
|
|
12309
|
+
$9HbP8$addEventListener(_el$22, "click", $9HbP8$catchify1(() => $9HbP8$batch(() => {
|
|
12232
12310
|
if (search_sorting_open_[0]()) {
|
|
12233
12311
|
search_sorting_open_[1](false);
|
|
12234
12312
|
return;
|
|
@@ -12335,7 +12413,7 @@ function $0b0380f75d729d63$var$ActualFloatingButtons({
|
|
|
12335
12413
|
}
|
|
12336
12414
|
old_pos = new_pos;
|
|
12337
12415
|
});
|
|
12338
|
-
const touchstart_handler = $9HbP8$
|
|
12416
|
+
const touchstart_handler = $9HbP8$catchify1(e => {
|
|
12339
12417
|
is_in_touch_scroll = true;
|
|
12340
12418
|
if (e.touches.length === 1) {
|
|
12341
12419
|
// we had no touches but then we got some. Adding a new touch cancels the inertia. We are in a new touch so do reset the diff
|
|
@@ -12343,12 +12421,12 @@ function $0b0380f75d729d63$var$ActualFloatingButtons({
|
|
|
12343
12421
|
diff_over_second_or_touch = 0;
|
|
12344
12422
|
}
|
|
12345
12423
|
});
|
|
12346
|
-
const touchend_handler = $9HbP8$
|
|
12424
|
+
const touchend_handler = $9HbP8$catchify1(e => {
|
|
12347
12425
|
if (e.touches.length === 0)
|
|
12348
12426
|
// scroll gesture of any type (pinch can also be used as scroll, etc.) ended
|
|
12349
12427
|
inertia_timeout = setTimeout(
|
|
12350
12428
|
// inertia ends after 500ms (educated guess)
|
|
12351
|
-
$9HbP8$
|
|
12429
|
+
$9HbP8$catchify1(() => {
|
|
12352
12430
|
is_in_touch_scroll = false;
|
|
12353
12431
|
diff_over_second_or_touch = 0;
|
|
12354
12432
|
}), 500);
|
|
@@ -12366,9 +12444,9 @@ function $0b0380f75d729d63$var$ActualFloatingButtons({
|
|
|
12366
12444
|
const everything_closed = !get_search_filters_open_() && !get_search_sorting_open_();
|
|
12367
12445
|
if (!$9HbP8$untrack(modal_is_closed) && everything_closed)
|
|
12368
12446
|
// I think the point of this is to delay the animation a bit IIRC
|
|
12369
|
-
timeout = setTimeout($9HbP8$
|
|
12447
|
+
timeout = setTimeout($9HbP8$catchify1(() => set_if_modal_is_closed(true)), 200);else set_if_modal_is_closed(everything_closed);
|
|
12370
12448
|
});
|
|
12371
|
-
$9HbP8$createComputed($9HbP8$
|
|
12449
|
+
$9HbP8$createComputed($9HbP8$catchify1(async () => {
|
|
12372
12450
|
const element = sort_and_filter_element_();
|
|
12373
12451
|
if (!element) return;
|
|
12374
12452
|
await (0, $9HbP8$observer).wait_for_element(element);
|
|
@@ -12387,12 +12465,12 @@ function $0b0380f75d729d63$var$ActualFloatingButtons({
|
|
|
12387
12465
|
_el$5 = _el$4.firstChild,
|
|
12388
12466
|
_el$6 = _el$4.nextSibling,
|
|
12389
12467
|
_el$7 = _el$6.firstChild;
|
|
12390
|
-
$9HbP8$addEventListener(_el$2, "click", $9HbP8$
|
|
12468
|
+
$9HbP8$addEventListener(_el$2, "click", $9HbP8$catchify1(() => {
|
|
12391
12469
|
set_search_filters_open_(true);
|
|
12392
12470
|
set_search_sorting_open_(false);
|
|
12393
12471
|
}), true);
|
|
12394
12472
|
$9HbP8$insert(_el$3, $9HbP8$createComponent((0, $b9bf7fce0ae60241$export$28f6150e232898de), {}));
|
|
12395
|
-
$9HbP8$addEventListener(_el$4, "click", $9HbP8$
|
|
12473
|
+
$9HbP8$addEventListener(_el$4, "click", $9HbP8$catchify1(() => {
|
|
12396
12474
|
set_search_filters_open_(false);
|
|
12397
12475
|
set_search_sorting_open_(true);
|
|
12398
12476
|
}), true);
|
|
@@ -12400,7 +12478,7 @@ function $0b0380f75d729d63$var$ActualFloatingButtons({
|
|
|
12400
12478
|
var _c$ = $9HbP8$memo(() => current_sorting_[0]()?.order === "asc");
|
|
12401
12479
|
return () => _c$() ? $9HbP8$createComponent((0, $e1bb71e65e01a3a0$export$da32f7add8a22e86), {}) : $9HbP8$createComponent((0, $05fbe84eb34564ec$export$d10e63059ddb9fd4), {});
|
|
12402
12480
|
})());
|
|
12403
|
-
$9HbP8$addEventListener(_el$6, "click", $9HbP8$
|
|
12481
|
+
$9HbP8$addEventListener(_el$6, "click", $9HbP8$catchify1(() => scrollTo({
|
|
12404
12482
|
top: 0,
|
|
12405
12483
|
behavior: "smooth"
|
|
12406
12484
|
})), true);
|
|
@@ -12432,7 +12510,7 @@ function $587cd61972788655$export$210f130a61ac1e8d(fn) {
|
|
|
12432
12510
|
let last_queued;
|
|
12433
12511
|
let last_value;
|
|
12434
12512
|
let initial_run = true;
|
|
12435
|
-
$9HbP8$createComputed($9HbP8$
|
|
12513
|
+
$9HbP8$createComputed($9HbP8$catchify1(async () => {
|
|
12436
12514
|
last_value = fn();
|
|
12437
12515
|
if (initial_run) {
|
|
12438
12516
|
initial_run = false;
|
|
@@ -12479,7 +12557,7 @@ function $641bba2917fe862b$export$6e49da55e449af7c({
|
|
|
12479
12557
|
}]); // get rid of old data the browser saves the old state and will restore it later on
|
|
12480
12558
|
};
|
|
12481
12559
|
|
|
12482
|
-
$9HbP8$createComputed($9HbP8$
|
|
12560
|
+
$9HbP8$createComputed($9HbP8$catchify1(() => {
|
|
12483
12561
|
const last_result = get_last_result_in_viewport_();
|
|
12484
12562
|
if (last_result == undefined || last_result <= 0 || last_result == Infinity) return;
|
|
12485
12563
|
if (isNaN(last_result)) {
|
|
@@ -12506,7 +12584,7 @@ function $641bba2917fe862b$export$6e49da55e449af7c({
|
|
|
12506
12584
|
set_to_later = last_result;
|
|
12507
12585
|
// If a delayed push timeout is already running, just changing the value that will be pushed is sufficient
|
|
12508
12586
|
if (timeout) return;
|
|
12509
|
-
timeout = setTimeout($9HbP8$
|
|
12587
|
+
timeout = setTimeout($9HbP8$catchify1(() => {
|
|
12510
12588
|
timeout = undefined;
|
|
12511
12589
|
last_time_history_changed = +new Date();
|
|
12512
12590
|
set_min_results_loaded(set_to_later);
|
|
@@ -12610,7 +12688,7 @@ function $b2bf2cdcff8142d8$export$f631859cab12b342({
|
|
|
12610
12688
|
if (!result) return;
|
|
12611
12689
|
return {
|
|
12612
12690
|
href: result.page_url,
|
|
12613
|
-
onClick: $9HbP8$
|
|
12691
|
+
onClick: $9HbP8$catchify1(ev => router_.navigate_.go_to_({
|
|
12614
12692
|
new_url_: result.page_url,
|
|
12615
12693
|
is_replace_: false,
|
|
12616
12694
|
event_: ev
|
|
@@ -13019,7 +13097,7 @@ function $0e562a5b247b1fc2$export$44f738469d5570cf({
|
|
|
13019
13097
|
// We might only have changed the left position which align_field doesn't know about, make it poll the position for a while
|
|
13020
13098
|
setPollAlignment_(true);
|
|
13021
13099
|
if (disableResizePollingTimeout) clearTimeout(disableResizePollingTimeout);
|
|
13022
|
-
disableResizePollingTimeout = setTimeout($9HbP8$
|
|
13100
|
+
disableResizePollingTimeout = setTimeout($9HbP8$catchify1(() => {
|
|
13023
13101
|
setPollAlignment_(false);
|
|
13024
13102
|
disableResizePollingTimeout = undefined;
|
|
13025
13103
|
}), 1000);
|
|
@@ -13151,7 +13229,7 @@ function $7097477c78a89208$export$a54ec244c8863715({
|
|
|
13151
13229
|
} : {})
|
|
13152
13230
|
};
|
|
13153
13231
|
});
|
|
13154
|
-
const [search_results_] = $9HbP8$createResource(search_query_base_, $9HbP8$
|
|
13232
|
+
const [search_results_] = $9HbP8$createResource(search_query_base_, $9HbP8$catchify1(async base_query => {
|
|
13155
13233
|
set_all_products_loaded(false);
|
|
13156
13234
|
// only first page of results
|
|
13157
13235
|
return await $641bba2917fe862b$export$cc42dd29bf655ab6({
|
|
@@ -13190,7 +13268,7 @@ function $7097477c78a89208$export$a54ec244c8863715({
|
|
|
13190
13268
|
const [, setModalFieldStyle] = modal_field_style;
|
|
13191
13269
|
const [, setModalBackdropStyle] = modal_backdrop_style;
|
|
13192
13270
|
const [get_search_field_elements, set_search_field_elements] = $9HbP8$createSignal();
|
|
13193
|
-
const SafeSearchField = $9HbP8$
|
|
13271
|
+
const SafeSearchField = $9HbP8$catchify1((0, $5285d2814d0fac0c$export$b94867ecbd698f21));
|
|
13194
13272
|
const [sort_or_filter_open_, set_sort_or_filter_open_] = $9HbP8$createSignal(false);
|
|
13195
13273
|
const [desktop_filter_elements_, set_desktop_filter_elements] = $9HbP8$createSignal();
|
|
13196
13274
|
const n_hits = $9HbP8$createMemo(() => search_results_()?.n_hits);
|
|
@@ -13249,7 +13327,7 @@ function $7097477c78a89208$export$a54ec244c8863715({
|
|
|
13249
13327
|
})()));
|
|
13250
13328
|
}).remove);
|
|
13251
13329
|
$2ab89d64b7f1d5ef$export$d31a1a1a83ad9413(search_results_, selected_filters_);
|
|
13252
|
-
$9HbP8$
|
|
13330
|
+
$9HbP8$catchify1((0, $641bba2917fe862b$export$6e49da55e449af7c))({
|
|
13253
13331
|
scroll_restoration_data_: scroll_restoration_data_,
|
|
13254
13332
|
last_result_in_viewport_: last_result_in_viewport_,
|
|
13255
13333
|
id_: get_search_query_,
|
|
@@ -13295,8 +13373,8 @@ function $7097477c78a89208$export$a54ec244c8863715({
|
|
|
13295
13373
|
setModalBodyStyle({});
|
|
13296
13374
|
modalAlignmentSignalsRef_?.(alignmentSignals_);
|
|
13297
13375
|
const [pollAlignment, setPollAlignment_] = $9HbP8$createSignal(false);
|
|
13298
|
-
const align_position = $9HbP8$
|
|
13299
|
-
div_with_field_class.addEventListener("click", $9HbP8$
|
|
13376
|
+
const align_position = $9HbP8$catchify1((0, $b6d5529b253681aa$export$b3ad617e9036868))(alignmentSignals_, search_field, (0, $b6d5529b253681aa$export$3f238c96c45e6cc6) | (0, $b6d5529b253681aa$export$7895aadd1956b1c7) | (modalVersionUsed_ === 1 ? (0, $b6d5529b253681aa$export$902f8b4a7dae5d78) : (0, $b6d5529b253681aa$export$6060bc6bee850eb6) | (0, $b6d5529b253681aa$export$5097308c5200105a)), true, pollAlignment);
|
|
13377
|
+
div_with_field_class.addEventListener("click", $9HbP8$catchify1(e => {
|
|
13300
13378
|
const target = e.target;
|
|
13301
13379
|
const sel = ".submit";
|
|
13302
13380
|
if (target?.matches?.(sel) || target?.closest?.(sel))
|
|
@@ -13674,7 +13752,7 @@ class $806c97b931758897$export$ac6237957a15b3f0 {
|
|
|
13674
13752
|
BackIcon_: BackIcon_
|
|
13675
13753
|
});
|
|
13676
13754
|
$90980bd87c9960f9$export$5162a71f252e6122();
|
|
13677
|
-
$9HbP8$
|
|
13755
|
+
$9HbP8$catchify1(async () => {
|
|
13678
13756
|
const {
|
|
13679
13757
|
open_modal_: open_modal_,
|
|
13680
13758
|
close_modal_: close_modal_
|
|
@@ -13915,7 +13993,7 @@ function $806c97b931758897$export$f2dc7e4e4aa11abb(props) {
|
|
|
13915
13993
|
function $4ca91518c9a35379$export$828dcdd425fd3231(aligner) {
|
|
13916
13994
|
const style_element = document.createElement("style");
|
|
13917
13995
|
document.head.append(style_element);
|
|
13918
|
-
const resize_observer = new ResizeObserver($9HbP8$
|
|
13996
|
+
const resize_observer = new ResizeObserver($9HbP8$catchify1(() => {
|
|
13919
13997
|
const styles = $926b1b5ba2239356$export$1233ca167bf71f9a({
|
|
13920
13998
|
".depict.plp .depict-search-modal .search-field": {
|
|
13921
13999
|
"height": `${aligner?.clientHeight}px`
|
|
@@ -13984,7 +14062,7 @@ const $6891c018a834cfdd$export$d86a33413558014e = openModalParams => {
|
|
|
13984
14062
|
}, dispose_aligner];
|
|
13985
14063
|
};
|
|
13986
14064
|
function $6e8944558258054f$export$d0596b5cae35ad4(open_search) {
|
|
13987
|
-
const handler = $9HbP8$
|
|
14065
|
+
const handler = $9HbP8$catchify1(e => {
|
|
13988
14066
|
const {
|
|
13989
14067
|
key: key,
|
|
13990
14068
|
target: target
|
|
@@ -14003,7 +14081,7 @@ function $6e8944558258054f$export$d0596b5cae35ad4(open_search) {
|
|
|
14003
14081
|
function $6936724b9e0b98d5$export$689e204eadb33baf(pr) {
|
|
14004
14082
|
let old_url;
|
|
14005
14083
|
let disconnect_link_observer;
|
|
14006
|
-
const link_handler = $9HbP8$
|
|
14084
|
+
const link_handler = $9HbP8$catchify1(e => {
|
|
14007
14085
|
const link = e.currentTarget || e.target;
|
|
14008
14086
|
if (link.href === old_url) {
|
|
14009
14087
|
history.pushState(history.state, "", link.href);
|
|
@@ -14012,7 +14090,7 @@ function $6936724b9e0b98d5$export$689e204eadb33baf(pr) {
|
|
|
14012
14090
|
});
|
|
14013
14091
|
let remove_added_listeners;
|
|
14014
14092
|
let resolve_remove_added_listeners;
|
|
14015
|
-
pr.addEventListener("open", $9HbP8$
|
|
14093
|
+
pr.addEventListener("open", $9HbP8$catchify1(() => {
|
|
14016
14094
|
remove_added_listeners = new Promise(r => resolve_remove_added_listeners = r);
|
|
14017
14095
|
disconnect_link_observer = (0, $9HbP8$observer).onexists("a", async ({
|
|
14018
14096
|
element: element
|
|
@@ -14022,11 +14100,11 @@ function $6936724b9e0b98d5$export$689e204eadb33baf(pr) {
|
|
|
14022
14100
|
element.removeEventListener("click", link_handler);
|
|
14023
14101
|
});
|
|
14024
14102
|
}));
|
|
14025
|
-
pr.addEventListener("close", $9HbP8$
|
|
14103
|
+
pr.addEventListener("close", $9HbP8$catchify1(() => {
|
|
14026
14104
|
disconnect_link_observer?.();
|
|
14027
14105
|
resolve_remove_added_listeners?.();
|
|
14028
14106
|
}));
|
|
14029
|
-
$9HbP8$
|
|
14107
|
+
$9HbP8$catchify1(async () => {
|
|
14030
14108
|
for await (const href of (0, $9HbP8$href_change_ipns)) if (!pr.is_page_(new URL(href))) old_url = href;
|
|
14031
14109
|
})();
|
|
14032
14110
|
}
|
|
@@ -14038,7 +14116,7 @@ class $753e9b2889a47c89$export$3ccaa27d81dd8556 extends EventTarget {
|
|
|
14038
14116
|
static #reverting_permitted = true;
|
|
14039
14117
|
static #visited_urls = /*@__PURE__*/(() => {
|
|
14040
14118
|
// Keep track of all URLs that have been visited since the document that was initially loaded (loaded means the process where the browser creates a new `document` and `window` object).
|
|
14041
|
-
$9HbP8$
|
|
14119
|
+
$9HbP8$catchify1(async () => {
|
|
14042
14120
|
// Static initialization blocks aren't supported in MobileSafari yet, otherwise this would be one.
|
|
14043
14121
|
// I don't think we want to ship a library that users are *forced* to transpile, it should run in the newest version of all major browsers. So we'll just use a function wrapper for now (adding "last 1 ios version" to the build target does a bunch of other unneeded transpilations).
|
|
14044
14122
|
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes/Static_initialization_blocks
|
|
@@ -14056,7 +14134,7 @@ class $753e9b2889a47c89$export$3ccaa27d81dd8556 extends EventTarget {
|
|
|
14056
14134
|
async #listen() {
|
|
14057
14135
|
const [exit_ipns, exitable_ipns] = $9HbP8$make_asyncIterable_exiter((0, $9HbP8$href_change_ipns));
|
|
14058
14136
|
this.#stop_listening = exit_ipns;
|
|
14059
|
-
const caught_page_check_fn = $9HbP8$
|
|
14137
|
+
const caught_page_check_fn = $9HbP8$catchify1(this.is_page_, "page check failed");
|
|
14060
14138
|
for await (const href of exitable_ipns) {
|
|
14061
14139
|
const url = new URL(href);
|
|
14062
14140
|
if (!caught_page_check_fn(url)) {
|
|
@@ -14074,17 +14152,17 @@ class $753e9b2889a47c89$export$3ccaa27d81dd8556 extends EventTarget {
|
|
|
14074
14152
|
this.addEventListener("close", dispose, {
|
|
14075
14153
|
once: true
|
|
14076
14154
|
});
|
|
14077
|
-
return $9HbP8$
|
|
14155
|
+
return $9HbP8$catchify1(this.render_, "rendering failed")() || [];
|
|
14078
14156
|
});
|
|
14079
14157
|
}
|
|
14080
|
-
#unload = /*@__PURE__*/$9HbP8$
|
|
14158
|
+
#unload = /*@__PURE__*/$9HbP8$catchify1(() => {
|
|
14081
14159
|
if (!this.#is_open) return;
|
|
14082
14160
|
this.#disconnect_observer?.();
|
|
14083
14161
|
if ($753e9b2889a47c89$export$3ccaa27d81dd8556.#reverting_permitted) while (this.#revert_fns.length) this.#revert_fns.pop()?.();
|
|
14084
14162
|
this.#is_open = false;
|
|
14085
14163
|
this.dispatchEvent(new CustomEvent("close"));
|
|
14086
14164
|
}, "failed to close page");
|
|
14087
|
-
#load = /*@__PURE__*/$9HbP8$
|
|
14165
|
+
#load = /*@__PURE__*/$9HbP8$catchify1(async els => {
|
|
14088
14166
|
this.#is_open = true;
|
|
14089
14167
|
// So that #load doesn't get called again
|
|
14090
14168
|
let set_should_stay_inserted;
|
|
@@ -14134,7 +14212,7 @@ class $753e9b2889a47c89$export$3ccaa27d81dd8556 extends EventTarget {
|
|
|
14134
14212
|
}, "failed to open page");
|
|
14135
14213
|
#empty_page_bugfix() {
|
|
14136
14214
|
// Called when a "page" is "opened" using PageReplacer
|
|
14137
|
-
const on_maybe_popstate = $9HbP8$
|
|
14215
|
+
const on_maybe_popstate = $9HbP8$catchify1(what_happened => {
|
|
14138
14216
|
if (what_happened !== "popstate") return;
|
|
14139
14217
|
const cleaned_current_url = $753e9b2889a47c89$var$clean_url(location.href);
|
|
14140
14218
|
if (!$753e9b2889a47c89$export$3ccaa27d81dd8556.#visited_urls.has(cleaned_current_url)) {
|
|
@@ -14158,7 +14236,7 @@ class $753e9b2889a47c89$export$3ccaa27d81dd8556 extends EventTarget {
|
|
|
14158
14236
|
PageReplacer unload itself and reveals the original document - it is expected to be the one under https://ehandel.spendrups.se/Product/1104201, but actually it is the one under /start/search - a white page.
|
|
14159
14237
|
The fix: is to remember all pages that we have visited since the creation of `window` (we do that by having a static property on PageReplacer since we assume the PageReplacer source code will only exist once on the page and will be loaded at page load, the latter assumption might be wrong, but I hope not). If we get a "popstate" event (meaning back or forwards button, not new page being pushed) to an unknown page we reload.
|
|
14160
14238
|
*/
|
|
14161
|
-
$9HbP8$
|
|
14239
|
+
$9HbP8$dlog1("PageReplacer: ", cleaned_current_url, " hasn't been visited since document was created, reloading since we won't be able to show this page otherwise");
|
|
14162
14240
|
location.reload();
|
|
14163
14241
|
$753e9b2889a47c89$export$3ccaa27d81dd8556.#reverting_permitted = false; // Disallow any reverting since we can't - it would flash a white page until the reload has finished.
|
|
14164
14242
|
this.#unload(); // Call unload to "kill" the solid-js stuff quicker so that it stops updating - the user is expecting the next thing that happens to be a navigation to the actual page the URL says they're on.
|
|
@@ -14236,7 +14314,7 @@ function $58b3487626e85ece$export$316f6f283ae64765(props) {
|
|
|
14236
14314
|
field_: $9HbP8$createSignal({}),
|
|
14237
14315
|
backdrop_: backdropAlignmentSignal_
|
|
14238
14316
|
};
|
|
14239
|
-
const defaultHandler = $9HbP8$
|
|
14317
|
+
const defaultHandler = $9HbP8$catchify1(e => {
|
|
14240
14318
|
const {
|
|
14241
14319
|
modalVersionUsed_: modalVersionUsed_
|
|
14242
14320
|
} = shared_properties;
|
|
@@ -14367,7 +14445,7 @@ function $06edf3aec9073663$export$466cdc317043f6cb({
|
|
|
14367
14445
|
}];
|
|
14368
14446
|
$9HbP8$createComputed(() => {
|
|
14369
14447
|
if (place_holdey_quicklinks_data()?.[0]?.listing_id) {
|
|
14370
|
-
if (last_was_placeholder) queueMicrotask($9HbP8$
|
|
14448
|
+
if (last_was_placeholder) queueMicrotask($9HbP8$catchify1(() => {
|
|
14371
14449
|
sliding_element?.scrollTo({
|
|
14372
14450
|
left: 0
|
|
14373
14451
|
}); // for some reason we land one element to the right after placeholder rendering otherwise
|
|
@@ -14434,7 +14512,7 @@ function $06edf3aec9073663$export$466cdc317043f6cb({
|
|
|
14434
14512
|
} else if (!(intersecting_items_object[selected_index()]?.intersectionRatio >= 0.95)) {
|
|
14435
14513
|
// negated larger than to handle left side of comparison being undefined
|
|
14436
14514
|
let done_work = false;
|
|
14437
|
-
$9HbP8$runWithOwner(owner, () => $9HbP8$createComputed($9HbP8$
|
|
14515
|
+
$9HbP8$runWithOwner(owner, () => $9HbP8$createComputed($9HbP8$catchify1(() => {
|
|
14438
14516
|
if (done_work || !Array.isArray(quicklinks_data_())) return;
|
|
14439
14517
|
const sel_index = selected_index();
|
|
14440
14518
|
const target_element = sel_index >= 0 ? sel_index : 0;
|
|
@@ -14481,7 +14559,7 @@ function $06edf3aec9073663$export$466cdc317043f6cb({
|
|
|
14481
14559
|
}));
|
|
14482
14560
|
return (() => {
|
|
14483
14561
|
var _el$3 = $9HbP8$getNextElement($06edf3aec9073663$var$_tmpl$3);
|
|
14484
|
-
$9HbP8$addEventListener(_el$3, "click", $9HbP8$
|
|
14562
|
+
$9HbP8$addEventListener(_el$3, "click", $9HbP8$catchify1(ev => {
|
|
14485
14563
|
const url = href();
|
|
14486
14564
|
if (is_selected() && !$a281666e5c15c2ec$export$29d28dadc2d6b631(ev) || !url)
|
|
14487
14565
|
// allow open currently selected one in new tab but otherwise prevent clicks
|
|
@@ -14617,7 +14695,7 @@ function $e7fce80abe608e01$export$3945d6db2dfd3d12({
|
|
|
14617
14695
|
const handler = () => allow_filter_clearing = false;
|
|
14618
14696
|
window.addEventListener("popstate", handler); // popstate only gets called when using back/forwards button of browser or the history navigate to achieve the same, but not on pushState or replaceState
|
|
14619
14697
|
$9HbP8$onCleanup(() => window.removeEventListener("popstate", handler));
|
|
14620
|
-
$9HbP8$createEffect($9HbP8$on(crumb_data_, $9HbP8$
|
|
14698
|
+
$9HbP8$createEffect($9HbP8$on(crumb_data_, $9HbP8$catchify1(new_crumb_data => {
|
|
14621
14699
|
const id_of_new_data = id_to_query_for_();
|
|
14622
14700
|
const type_of_id_of_new_data = id_type_();
|
|
14623
14701
|
if (allow_filter_clearing && previous_crumb_data && new_crumb_data && (id_of_new_data !== id_when_we_got_previous_data.id_ || type_of_id_of_new_data !== id_when_we_got_previous_data.type_)) {
|
|
@@ -14667,7 +14745,7 @@ function $e7fce80abe608e01$var$clear_if_opened_new_tab_with_sideways_url_params_
|
|
|
14667
14745
|
// On first rendering of the CategoryPage (after we have results), check if we got to this URL by going sideways in QuickLinks and clear filters with toast if so
|
|
14668
14746
|
if (!$9HbP8$untrack(get_sideways_filter_clearing_flag_)) return;
|
|
14669
14747
|
set_sideways_filter_clearing_flag_(false);
|
|
14670
|
-
$9HbP8$
|
|
14748
|
+
$9HbP8$dlog1("Flag to clear filters was set, clearing filters");
|
|
14671
14749
|
$9HbP8$queueMacroTask(() => {
|
|
14672
14750
|
// Do it next task so that all the filters have time to populate
|
|
14673
14751
|
$e9342fb3ac73a54a$export$8895d39404bd2bb1({
|
|
@@ -14792,7 +14870,7 @@ function $df5d81d0fe61ff21$export$f7d2f673fc2f091d({
|
|
|
14792
14870
|
// Make "Get products in listing" request to get products in listing
|
|
14793
14871
|
const [plp_products_] = $9HbP8$createResource(products_query_base_,
|
|
14794
14872
|
// only first page of results, unless the history state says we should load more (can't do that in load more thing, I tested, they need to be added at once for the browser to not give up scroll restoration)
|
|
14795
|
-
$9HbP8$
|
|
14873
|
+
$9HbP8$catchify(base_query => $641bba2917fe862b$export$cc42dd29bf655ab6({
|
|
14796
14874
|
id_: $9HbP8$untrack(id_to_query_for_),
|
|
14797
14875
|
scroll_restoration_data_: scroll_restoration_data_,
|
|
14798
14876
|
min_products_to_fetch_: min_products_to_fetch_,
|
|
@@ -14812,7 +14890,7 @@ function $df5d81d0fe61ff21$export$f7d2f673fc2f091d({
|
|
|
14812
14890
|
id_type_: id_type_()
|
|
14813
14891
|
}));
|
|
14814
14892
|
// Make "Get Listing" request to get quicklinks, breadcrumbs, title, etc
|
|
14815
|
-
const [plp_meta] = $9HbP8$createResource(meta_query_base, $9HbP8$
|
|
14893
|
+
const [plp_meta] = $9HbP8$createResource(meta_query_base, $9HbP8$catchify(query => depict_api_.get_listing(query)));
|
|
14816
14894
|
const available_sortings_ = $9HbP8$createMemo(() => plp_products_()?.sorts?.map(sort => ({
|
|
14817
14895
|
...sort,
|
|
14818
14896
|
order: sort.order ?? "desc"
|
|
@@ -14931,7 +15009,7 @@ function $df5d81d0fe61ff21$export$f7d2f673fc2f091d({
|
|
|
14931
15009
|
filterModalParent_: filterModalParent_,
|
|
14932
15010
|
...extra_sort_and_filter_args_
|
|
14933
15011
|
});
|
|
14934
|
-
$9HbP8$
|
|
15012
|
+
$9HbP8$catchify((0, $641bba2917fe862b$export$6e49da55e449af7c))({
|
|
14935
15013
|
scroll_restoration_data_: scroll_restoration_data_,
|
|
14936
15014
|
last_result_in_viewport_: last_result_in_viewport_,
|
|
14937
15015
|
id_: id_to_query_for_,
|
|
@@ -14944,7 +15022,7 @@ function $df5d81d0fe61ff21$export$f7d2f673fc2f091d({
|
|
|
14944
15022
|
$9HbP8$createComputed(() => {
|
|
14945
15023
|
if (plp_products_.loading) set_can_write_scroll_restoration(false);else if (plp_products_()) set_can_write_scroll_restoration(true);
|
|
14946
15024
|
});
|
|
14947
|
-
$9HbP8$createRenderEffect($9HbP8$
|
|
15025
|
+
$9HbP8$createRenderEffect($9HbP8$catchify(async () => {
|
|
14948
15026
|
const slim = is_slim_();
|
|
14949
15027
|
const only_show_filters_opener = only_show_filters_opener_?.();
|
|
14950
15028
|
const owner = $9HbP8$getOwner();
|
|
@@ -15225,4 +15303,4 @@ function $442f32a4d80abbde$export$e2bf8ce7779e827e(props) {
|
|
|
15225
15303
|
}, "Entire CategoryPage failed");
|
|
15226
15304
|
}
|
|
15227
15305
|
$9HbP8$add_to_version_info("ui", (0, $ec291e0010116877$export$83d89fbfd8236492));
|
|
15228
|
-
export { $5e3d278ef4c80cd7$export$54299a3c81f5425 as useVisibilityState, $f32e14878e75af51$export$eaa625fb39439e37 as useSlidableInformation, $f091294da861020c$export$80bb7300ce6a8be3 as useProductCardIsVisible, $f091294da861020c$export$f223d69ed12f5fb7 as CurrentlyIntersectingContext, $24e27fab9c821b86$export$5bad61ecde080b1f as useExpandingContainerReactive, $07ef910e8ef6b783$export$2c9f9bf2092486aa as LooksSliderOrGrid, $
|
|
15306
|
+
export { $4eb0a704f8f30273$export$d4d96868197be50e as useMobileHover, $5e3d278ef4c80cd7$export$54299a3c81f5425 as useVisibilityState, $f32e14878e75af51$export$eaa625fb39439e37 as useSlidableInformation, $f091294da861020c$export$80bb7300ce6a8be3 as useProductCardIsVisible, $f091294da861020c$export$f223d69ed12f5fb7 as CurrentlyIntersectingContext, $24e27fab9c821b86$export$5bad61ecde080b1f as useExpandingContainerReactive, $07ef910e8ef6b783$export$2c9f9bf2092486aa as LooksSliderOrGrid, $e9d1d09be9e6471e$export$44809a8a3e867e30 as LookCard, $4fd2ba03703a7d92$export$7e1297a3a19f10d8 as PseudoRouter, $de6ccd37192b5fc2$export$83bb9af5671e1dbe as promiseSafeStructuredClone, $90980bd87c9960f9$export$5162a71f252e6122 as preserve_items_in_history_dot_state, $90980bd87c9960f9$export$3064e1e8c6513da3 as prefixes_to_preserve_in_history_dot_state, $a281666e5c15c2ec$export$29d28dadc2d6b631 as allowNativeNavigation, $66db7a014e20802e$export$1ea76ea778b880dd as modalVersionSymbol, $136f1d4d6c7ba6ac$export$e417c49320921907 as createDeparallelizedNoDropResource, $d8dbf52fea1773e2$export$f50b88e2a00918b5 as throw_globally, $42912431795f188e$export$9265e66f26f8e383 as ClassicSearchModal, $500a16dd18ee5a71$export$b0c55aa2e87c4be7 as SearchModalV2, $70bb27cc6be01fc7$export$9d4a4b669b1929ab as ModernResponsiveContainedImage, $024fbc0a2d796fad$export$3e41faf802a29e71 as Tab, $024fbc0a2d796fad$export$b2539bed5023c21c as Tabs, $8560c919ff763930$export$d4973c31938cbfd1 as ShopTheLookButton, $ca6f574bd8772184$export$e183a13865960371 as history_dot_state_to_state, $4147651646da990a$export$916e6850778505f6 as strip_encoded_filter_and_sort, $4147651646da990a$export$58aa3f171519b6d7 as encode_filters, $4147651646da990a$export$f934fa24c3a86811 as decode_filters, $4147651646da990a$export$62acb285a7579555 as encode_sorting, $4147651646da990a$export$766e9676e74997d3 as decode_sorting, $660070e2a394b3c3$export$d7b7ab832c20e2f4 as shopifyContainedImageContextSymbol, $011607bdf658f807$export$e68cff63f76bd15b as ListingProvider, $011607bdf658f807$export$8d0c4fdbb05a2f2e as useListing, $b6440e72ed83671a$export$11354f017ddc9790 as ProductCardIndexProvider, $b6440e72ed83671a$export$e3faf4d95300054f as useProductCardIndex, $660070e2a394b3c3$export$e4b984597b71e989 as ShopifyContainedImage, $f32e14878e75af51$export$6649caad96ef8870 as SlidableItems, $2449872a62a75a20$export$ebdc3711f7e02ccd as make_accurate_width_accessor, $ee116da074deb002$export$9574e176201e5e8d as RecommendationSlider, $9ea5383493360761$export$9756467d34d91cdb as RecommendationGrid, $e8ffe11ed01df0fe$export$6e5611bc7e57e477 as ShopifyResponsiveImg, $e8ffe11ed01df0fe$export$e6fffe67d4cdd848 as makeSizeAccessor, $f18d425032111270$export$94026ee33dbabc26 as ImageContainer, $b7436a6d1fd64e3b$export$b69d0d92862de18b as SentryErrorBoundary, $b7436a6d1fd64e3b$export$240ecf5363d76c0f as ExtraSentryContextProvider, $6bb0a0c563dff4bb$export$6c6d7a51fa9aa15d as ExpandingDetails, $c16e74cfe125bb05$export$f091cbac892643a4 as accessor_of_object_to_object_with_accessor_values, $1adfe60f3a14a1d7$export$fecbb157621501bd as SelectedFilters, $fab07f52c9861732$export$3f1a388cc0d8fed7 as FilterBody, $5efb5894079b220e$export$b288c38ae3fddb56 as create_modified_filters, $c8d5ff4524619fcd$export$d21e32dfedac04be as SolidLayout, $c8d5ff4524619fcd$export$445d8d3f5f706a40 as SolidLayoutWithProvidedElement, $194bd6b8e4c59830$export$79b1565500412d9b as general_modal_abstraction, $19976a74d273070d$export$3b621d86b1566b2 as CrossIcon, $fbbadcb080ad1d4a$export$8be2714ec7f169ee as GenericSliderArrowButton, $a0f0e923bad68a9b$export$58e808b1db15d3bc as fetchDepictRecommendations, $e4615ecd1849548f$export$b91cec6bdc6b32a1 as CategoryTitle, $a6e23a834336fc19$export$824dde41348efed1 as embedded_num_products, $4b2134398dfa83fa$export$c1a6b039e689a58e as get_listings, $961b5c64bef4662f$export$f34314aa9505732e as DepictCategory, $806c97b931758897$export$ac6237957a15b3f0 as DepictSearch, $806c97b931758897$export$bde3eb976dfded9 as get_search_query_updating_blocked_signal, $806c97b931758897$export$f2dc7e4e4aa11abb as SearchPage, $4fd48cb976bf1789$export$aa14a9f43128f61f as ProductCardError, $6891c018a834cfdd$export$d86a33413558014e as open_modal_with_alignment, $bb15dfb548a7666e$export$ee1733d9a8495996 as DefaultInstantCardPlaceholder, $b6d5529b253681aa$export$b3ad617e9036868 as align_field, $b6d5529b253681aa$export$3f238c96c45e6cc6 as ALIGN_TOP, $b6d5529b253681aa$export$902f8b4a7dae5d78 as ALIGN_WIDTH_ON_MODAL, $b6d5529b253681aa$export$7895aadd1956b1c7 as ALIGN_LEFT, $b6d5529b253681aa$export$6060bc6bee850eb6 as SET_CENTERED_LEFT, $b5cccc8ee7d24677$export$6daf8749b65a1b77 as convert_sdk_cols_at_size_to_layout, $926b1b5ba2239356$export$1233ca167bf71f9a as styles_to_valid_css_string, $aea1edf92433e81e$export$fe334901e8bebd57 as disable_scrolling, $6e8944558258054f$export$d0596b5cae35ad4 as open_search_with_shift_slash, $7fa23e2a0079eca4$export$e015ed2f2950f2e3 as DepictAPI, $dc9262ef6f786812$export$d9f36cf74e24d595 as media_query_to_accessor, $6936724b9e0b98d5$export$689e204eadb33baf as setup_fast_leave, $bf52d9f9eebd1938$export$5196e4c01fa56fcb as show_toast, $8c0f86cb3e266eeb$export$a71e92cfbb498adc as SolidFormatPrice, $4ca91518c9a35379$export$828dcdd425fd3231 as connect_search_field_height_to_aligner_height, $d20eff0aadc28983$export$acb3eaade4b23afd as BasePlaceholder, $d134eae24341b4a1$export$89c6019e4baa40b1 as TextPlaceholder, $7f60f09116a3fe61$export$3f37af283f8fb843 as ImagePlaceholder, $753e9b2889a47c89$export$3ccaa27d81dd8556 as PageReplacer, $4690a06c8489dcd0$export$864d304a0bc46829 as defaultGridSpacing, $4690a06c8489dcd0$export$c3834fa86c616831 as defaultColsAtSize, $4690a06c8489dcd0$export$7bf543b9d9be2c22 as defaultCategoryTitlePlugin, $ec291e0010116877$export$83d89fbfd8236492 as version, $58b3487626e85ece$export$316f6f283ae64765 as SearchField, $feffae76d8dc0135$export$5b7c3ce0ebe51f86 as BreadCrumbs, $feffae76d8dc0135$export$de035477d6fef996 as QuickLinks, $442f32a4d80abbde$export$e2bf8ce7779e827e as CategoryPage };
|