@depict-ai/ui 4.7.24 → 4.7.26
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 +105 -33
- package/ES10/index.d.ts +5 -1
- package/ES10/index.js +323 -252
- package/latest/index.cjs +105 -33
- package/latest/index.d.ts +5 -1
- package/latest/index.js +323 -252
- package/package.json +1 -1
- package/server/ES10/index.cjs +76 -20
- package/server/ES10/index.d.ts +5 -1
- package/server/ES10/index.js +212 -157
- package/server/latest/index.cjs +76 -20
- package/server/latest/index.d.ts +5 -1
- package/server/latest/index.js +212 -157
package/latest/index.js
CHANGED
|
@@ -1,13 +1,67 @@
|
|
|
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.26";
|
|
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, document.elementFromPoint(touch.clientX, touch.clientY));
|
|
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("touchend", deleteTouchHandler, {
|
|
54
|
+
passive: true
|
|
55
|
+
});
|
|
56
|
+
addEventListener("touchcancel", deleteTouchHandler, {
|
|
57
|
+
passive: true
|
|
58
|
+
});
|
|
59
|
+
$9HbP8$onCleanup(() => {
|
|
60
|
+
removeEventListener("touchstart", setPositionHandler);
|
|
61
|
+
removeEventListener("touchend", deleteTouchHandler);
|
|
62
|
+
removeEventListener("touchcancel", deleteTouchHandler);
|
|
63
|
+
});
|
|
64
|
+
}
|
|
11
65
|
function $5e3d278ef4c80cd7$export$54299a3c81f5425() {
|
|
12
66
|
const d = document;
|
|
13
67
|
const [isVisible, setIsVisible] = $9HbP8$createSignal(d.visibilityState !== "hidden");
|
|
@@ -277,7 +331,7 @@ function $29ec7cddbe1d3484$export$43f0fb951fcb0c54({
|
|
|
277
331
|
} catch (e) {
|
|
278
332
|
if (!$29ec7cddbe1d3484$var$printedCloneError) {
|
|
279
333
|
$29ec7cddbe1d3484$var$printedCloneError = true;
|
|
280
|
-
$9HbP8$
|
|
334
|
+
$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
335
|
}
|
|
282
336
|
}
|
|
283
337
|
let renderingResult;
|
|
@@ -376,7 +430,7 @@ function $f091294da861020c$export$4a14175d33d81a96({
|
|
|
376
430
|
};
|
|
377
431
|
// 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
432
|
const shouldObserve = $9HbP8$createMemo(() => alwaysObserveCards_ || listenersForIntersecting() > 0);
|
|
379
|
-
const intersection_observer = new IntersectionObserver($9HbP8$
|
|
433
|
+
const intersection_observer = new IntersectionObserver($9HbP8$catchify1(records => {
|
|
380
434
|
const intersectingValue = currentlyIntersecting();
|
|
381
435
|
for (let i = 0; i < records.length; i++) {
|
|
382
436
|
const record = records[i];
|
|
@@ -719,7 +773,7 @@ function $c8d5ff4524619fcd$export$445d8d3f5f706a40(props, container_element, ins
|
|
|
719
773
|
const view_less_button_class = "l" + $9HbP8$createUniqueId(); // https://github.com/solidjs/solid-docs/issues/263#issuecomment-1622388079
|
|
720
774
|
const view_more_button_container = $9HbP8$createMemo(() => have_a_view_more_button() && (() => {
|
|
721
775
|
var _el$2 = $9HbP8$getNextElement($c8d5ff4524619fcd$var$_tmpl$);
|
|
722
|
-
$9HbP8$addEventListener(_el$2, "click", $9HbP8$
|
|
776
|
+
$9HbP8$addEventListener(_el$2, "click", $9HbP8$catchify1(() => set_rows_visible()(prev => prev + (rows_or_empty_object().rows_per_click ?? 1))), true);
|
|
723
777
|
$9HbP8$className(_el$2, `load-more-container ${view_more_button_class}`);
|
|
724
778
|
$9HbP8$insert(_el$2, () => rows_or_empty_object().button);
|
|
725
779
|
$9HbP8$runHydrationEvents();
|
|
@@ -728,7 +782,7 @@ function $c8d5ff4524619fcd$export$445d8d3f5f706a40(props, container_element, ins
|
|
|
728
782
|
// 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
783
|
const view_less_button_container = $9HbP8$createMemo(() => have_a_view_less_button() && (() => {
|
|
730
784
|
var _el$3 = $9HbP8$getNextElement($c8d5ff4524619fcd$var$_tmpl$);
|
|
731
|
-
$9HbP8$addEventListener(_el$3, "click", $9HbP8$
|
|
785
|
+
$9HbP8$addEventListener(_el$3, "click", $9HbP8$catchify1(() => set_rows_visible()(() => rows_or_empty_object().start_rows ?? 1)), true);
|
|
732
786
|
$9HbP8$className(_el$3, `load-less-container ${view_less_button_class}`);
|
|
733
787
|
$9HbP8$insert(_el$3, () => rows_or_empty_object().view_less_button);
|
|
734
788
|
$9HbP8$runHydrationEvents();
|
|
@@ -751,7 +805,7 @@ function $c8d5ff4524619fcd$export$445d8d3f5f706a40(props, container_element, ins
|
|
|
751
805
|
}
|
|
752
806
|
update_children_count();
|
|
753
807
|
if (!(0, $9HbP8$isServer)) {
|
|
754
|
-
const mutation_observer = new MutationObserver($9HbP8$
|
|
808
|
+
const mutation_observer = new MutationObserver($9HbP8$catchify1(update_children_count));
|
|
755
809
|
mutation_observer.observe(container_element, {
|
|
756
810
|
childList: true
|
|
757
811
|
});
|
|
@@ -1074,7 +1128,7 @@ function $4ea56971d92eb0cd$export$2972b890694ced75(callback, {
|
|
|
1074
1128
|
}
|
|
1075
1129
|
function $e8ffe11ed01df0fe$export$e6fffe67d4cdd848(whatToWatch) {
|
|
1076
1130
|
const [size, setSize] = $9HbP8$createSignal(0);
|
|
1077
|
-
const resizeObserver = new ResizeObserver($9HbP8$
|
|
1131
|
+
const resizeObserver = new ResizeObserver($9HbP8$catchify1(records => {
|
|
1078
1132
|
for (let j = 0; j < records.length; j++) {
|
|
1079
1133
|
const {
|
|
1080
1134
|
width: width
|
|
@@ -1087,7 +1141,7 @@ function $e8ffe11ed01df0fe$export$e6fffe67d4cdd848(whatToWatch) {
|
|
|
1087
1141
|
// It doesn't seem to work even when waiting for it to be in the DOM, also wait an animation frame
|
|
1088
1142
|
const disconnect = (0, $9HbP8$observer).onexists(whatToWatch, ({
|
|
1089
1143
|
element: element
|
|
1090
|
-
}) => requestAnimationFrame($9HbP8$
|
|
1144
|
+
}) => requestAnimationFrame($9HbP8$catchify1(() => resizeObserver.observe(element))));
|
|
1091
1145
|
$9HbP8$onCleanup(() => {
|
|
1092
1146
|
resizeObserver.disconnect();
|
|
1093
1147
|
disconnect();
|
|
@@ -1144,7 +1198,7 @@ function $e8ffe11ed01df0fe$export$6e5611bc7e57e477(props) {
|
|
|
1144
1198
|
if (existingStack) return existingStack.add(fn);
|
|
1145
1199
|
const newStack = new Set([fn]);
|
|
1146
1200
|
if (listingContext) listingContext[$e8ffe11ed01df0fe$var$onIdleFunctionsSymbol] = newStack;
|
|
1147
|
-
const processStackWhenIdle = () => $4ea56971d92eb0cd$export$2972b890694ced75($9HbP8$
|
|
1201
|
+
const processStackWhenIdle = () => $4ea56971d92eb0cd$export$2972b890694ced75($9HbP8$catchify1(deadline => {
|
|
1148
1202
|
const start = performance.now();
|
|
1149
1203
|
const thirdDeadlineTime = deadline.timeRemaining() / 3; // observers coming after this take up 2-3x the time so don't use all of it
|
|
1150
1204
|
for (const fn of newStack) {
|
|
@@ -1176,7 +1230,7 @@ function $e8ffe11ed01df0fe$export$6e5611bc7e57e477(props) {
|
|
|
1176
1230
|
let prevValue;
|
|
1177
1231
|
const aspectRatios = listingContext[$e8ffe11ed01df0fe$export$f8945274f08a3105] ||= new Set();
|
|
1178
1232
|
const [, setMostPrevalentAspectRatio] = listingContext[$e8ffe11ed01df0fe$export$6066eb417ed2e9f7] ||= $9HbP8$createSignal();
|
|
1179
|
-
img.addEventListener("load", $9HbP8$
|
|
1233
|
+
img.addEventListener("load", $9HbP8$catchify1(() => {
|
|
1180
1234
|
if (props.keyRatioUpdating) {
|
|
1181
1235
|
if (!srcJustChanged) return;
|
|
1182
1236
|
srcJustChanged = false;
|
|
@@ -1207,7 +1261,7 @@ function $e8ffe11ed01df0fe$export$6e5611bc7e57e477(props) {
|
|
|
1207
1261
|
$9HbP8$createEffect(() => {
|
|
1208
1262
|
if (!props.size()) return; // wait until we have a size, run every time the size changes
|
|
1209
1263
|
if (timeoutSet) return;
|
|
1210
|
-
const handler = $9HbP8$
|
|
1264
|
+
const handler = $9HbP8$catchify1(() => {
|
|
1211
1265
|
if (gotCleanedUp) return;
|
|
1212
1266
|
img.sizes = sizePX(); // use latest available value of props.size
|
|
1213
1267
|
if (!sizeSetFastPath) {
|
|
@@ -1341,11 +1395,11 @@ function $8c0f86cb3e266eeb$export$a71e92cfbb498adc(props) {
|
|
|
1341
1395
|
return $9HbP8$standard_price_format(props.price_, price_formatting.places_after_comma_, price_formatting.decimal_places_delimiter_, price_formatting.thousands_delimiter_);
|
|
1342
1396
|
});
|
|
1343
1397
|
}
|
|
1344
|
-
var $
|
|
1345
|
-
$
|
|
1346
|
-
$
|
|
1347
|
-
$
|
|
1348
|
-
function $
|
|
1398
|
+
var $08a49ecdcd5beaca$var$_tmpl$ = /*#__PURE__*/$9HbP8$template(`<div class=img-wrapper>`),
|
|
1399
|
+
$08a49ecdcd5beaca$var$_tmpl$2 = /*#__PURE__*/$9HbP8$template(`<span class="d-price original">`),
|
|
1400
|
+
$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><!$><!/>`),
|
|
1401
|
+
$08a49ecdcd5beaca$var$_tmpl$4 = /*#__PURE__*/$9HbP8$template(`<a class=look-item><!$><!/><!$><!/>`);
|
|
1402
|
+
function $08a49ecdcd5beaca$export$b73ed90f0ee50dc3({
|
|
1349
1403
|
display_: display_,
|
|
1350
1404
|
FavoriteButton_: FavoriteButton_,
|
|
1351
1405
|
userWantsExpandedSignal_: [userWantsExpanded, setUserWantsExpanded],
|
|
@@ -1371,7 +1425,7 @@ function $5a6c386e1bde5665$export$b73ed90f0ee50dc3({
|
|
|
1371
1425
|
const FavoriteButton = FavoriteButton_; // Just to get rid of the type error - TS doesn't understand <Show>
|
|
1372
1426
|
const title = $9HbP8$createMemo(() => variantToUse()?.title);
|
|
1373
1427
|
return (() => {
|
|
1374
|
-
var _el$ = $9HbP8$getNextElement($
|
|
1428
|
+
var _el$ = $9HbP8$getNextElement($08a49ecdcd5beaca$var$_tmpl$4),
|
|
1375
1429
|
_el$12 = _el$.firstChild,
|
|
1376
1430
|
[_el$13, _co$3] = $9HbP8$getNextMarker(_el$12.nextSibling),
|
|
1377
1431
|
_el$14 = _el$13.nextSibling,
|
|
@@ -1382,7 +1436,7 @@ function $5a6c386e1bde5665$export$b73ed90f0ee50dc3({
|
|
|
1382
1436
|
href: href()
|
|
1383
1437
|
} : {}, {
|
|
1384
1438
|
get onClick() {
|
|
1385
|
-
return $9HbP8$
|
|
1439
|
+
return $9HbP8$catchify1(event_ => {
|
|
1386
1440
|
if (enableLink()) {
|
|
1387
1441
|
pseudoRouter_.navigate_.go_to_({
|
|
1388
1442
|
new_url_: href(),
|
|
@@ -1404,7 +1458,7 @@ function $5a6c386e1bde5665$export$b73ed90f0ee50dc3({
|
|
|
1404
1458
|
});
|
|
1405
1459
|
},
|
|
1406
1460
|
get children() {
|
|
1407
|
-
var _el$2 = $9HbP8$getNextElement($
|
|
1461
|
+
var _el$2 = $9HbP8$getNextElement($08a49ecdcd5beaca$var$_tmpl$);
|
|
1408
1462
|
$9HbP8$insert(_el$2, $9HbP8$createComponent((0, $9HbP8$Show), {
|
|
1409
1463
|
get when() {
|
|
1410
1464
|
return imageUrl();
|
|
@@ -1439,7 +1493,7 @@ function $5a6c386e1bde5665$export$b73ed90f0ee50dc3({
|
|
|
1439
1493
|
return (animationEffectExists() ? isExpandedThrottledByOurEffectRun() : userWantsExpanded()) || animationIsRunning();
|
|
1440
1494
|
},
|
|
1441
1495
|
get children() {
|
|
1442
|
-
var _el$3 = $9HbP8$getNextElement($
|
|
1496
|
+
var _el$3 = $9HbP8$getNextElement($08a49ecdcd5beaca$var$_tmpl$3),
|
|
1443
1497
|
_el$4 = _el$3.firstChild,
|
|
1444
1498
|
_el$5 = _el$4.firstChild,
|
|
1445
1499
|
_el$6 = _el$5.nextSibling,
|
|
@@ -1475,7 +1529,7 @@ function $5a6c386e1bde5665$export$b73ed90f0ee50dc3({
|
|
|
1475
1529
|
setAnimationEffectExists(true);
|
|
1476
1530
|
$9HbP8$onCleanup(() => setAnimationEffectExists(false));
|
|
1477
1531
|
});
|
|
1478
|
-
for (const ev of ["cancel", "finish"]) textContainerAnimation.addEventListener(ev, $9HbP8$
|
|
1532
|
+
for (const ev of ["cancel", "finish"]) textContainerAnimation.addEventListener(ev, $9HbP8$catchify1(() => setAnimationIsRunning(false)));
|
|
1479
1533
|
disconnector();
|
|
1480
1534
|
}));
|
|
1481
1535
|
}, _el$3);
|
|
@@ -1519,7 +1573,7 @@ function $5a6c386e1bde5665$export$b73ed90f0ee50dc3({
|
|
|
1519
1573
|
return isOnSale();
|
|
1520
1574
|
},
|
|
1521
1575
|
get children() {
|
|
1522
|
-
var _el$7 = $9HbP8$getNextElement($
|
|
1576
|
+
var _el$7 = $9HbP8$getNextElement($08a49ecdcd5beaca$var$_tmpl$2);
|
|
1523
1577
|
$9HbP8$insert(_el$7, $9HbP8$createComponent((0, $9HbP8$Show), {
|
|
1524
1578
|
get when() {
|
|
1525
1579
|
return variantToUse() && !originalPrice.loading;
|
|
@@ -1582,7 +1636,7 @@ async function $1f9a34ca8a87d49f$var$checkIfIsAffectedByChromeBug326498383() {
|
|
|
1582
1636
|
const waitAFrame = () => new Promise(r => requestAnimationFrame(() => requestAnimationFrame(r)));
|
|
1583
1637
|
const timeoutPromise = new Promise(r => {
|
|
1584
1638
|
resolveTimeoutPromise = r;
|
|
1585
|
-
setTimeout($9HbP8$
|
|
1639
|
+
setTimeout($9HbP8$catchify1(() => {
|
|
1586
1640
|
r();
|
|
1587
1641
|
div.remove();
|
|
1588
1642
|
}), 500);
|
|
@@ -1614,12 +1668,12 @@ async function $1f9a34ca8a87d49f$var$checkIfIsAffectedByChromeBug326498383() {
|
|
|
1614
1668
|
});
|
|
1615
1669
|
await timeoutPromise;
|
|
1616
1670
|
} catch (e) {
|
|
1617
|
-
$9HbP8$
|
|
1671
|
+
$9HbP8$dlog1("Failed to check if affected by chrome bug 326498383", e);
|
|
1618
1672
|
}
|
|
1619
1673
|
return isAffected;
|
|
1620
1674
|
}
|
|
1621
|
-
var $
|
|
1622
|
-
function $
|
|
1675
|
+
var $11fb4b33b36ecfac$var$_tmpl$ = /*#__PURE__*/$9HbP8$template(`<div class=scroll-padding><div class=look-overlay>`);
|
|
1676
|
+
function $11fb4b33b36ecfac$export$ebf0b1d4f90c09ae({
|
|
1623
1677
|
displays_: displays_,
|
|
1624
1678
|
FavoriteButton_: FavoriteButton_,
|
|
1625
1679
|
userWantsExpandedSignal_: userWantsExpandedSignal_,
|
|
@@ -1638,6 +1692,7 @@ function $7555dcad3b8a4632$export$ebf0b1d4f90c09ae({
|
|
|
1638
1692
|
const textFadeInAnimationRunning = $9HbP8$createSignal(false);
|
|
1639
1693
|
const [getSecondPartAnimationRunning] = textFadeInAnimationRunning;
|
|
1640
1694
|
const [userWantsExpanded, setUserWantsExpanded] = userWantsExpandedSignal_;
|
|
1695
|
+
//const elementsHovered = useMobileHover();
|
|
1641
1696
|
$1f9a34ca8a87d49f$export$7b9a0e99f0aeb2f3().then(is => isAffectedByChromeBug = is);
|
|
1642
1697
|
return $9HbP8$createComponent((0, $011607bdf658f807$export$e68cff63f76bd15b), {
|
|
1643
1698
|
get children() {
|
|
@@ -1646,21 +1701,37 @@ function $7555dcad3b8a4632$export$ebf0b1d4f90c09ae({
|
|
|
1646
1701
|
return containerWidth_() || !displays_();
|
|
1647
1702
|
},
|
|
1648
1703
|
get children() {
|
|
1649
|
-
var _el$ = $9HbP8$getNextElement($
|
|
1704
|
+
var _el$ = $9HbP8$getNextElement($11fb4b33b36ecfac$var$_tmpl$),
|
|
1650
1705
|
_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
|
-
|
|
1706
|
+
$9HbP8$addEventListener(_el$2, "mouseleave", $9HbP8$catchify1(() => supportsHover_() && setUserWantsExpanded(false)));
|
|
1707
|
+
$9HbP8$addEventListener(_el$2, "mouseenter", $9HbP8$catchify1(() => supportsHover_() && setUserWantsExpanded(true)));
|
|
1708
|
+
$9HbP8$use(el => {
|
|
1709
|
+
$9HbP8$createEffect(() => {
|
|
1710
|
+
if (userWantsExpanded()) return;
|
|
1711
|
+
if (isAffectedByChromeBug) {
|
|
1712
|
+
$11fb4b33b36ecfac$var$scrollingFunctionForChrome(el, 0, animationDuration_);
|
|
1713
|
+
return;
|
|
1714
|
+
}
|
|
1715
|
+
el.scrollTo({
|
|
1716
|
+
top: 0,
|
|
1717
|
+
behavior: "smooth"
|
|
1718
|
+
});
|
|
1662
1719
|
});
|
|
1663
|
-
|
|
1720
|
+
// createEffect(wasOpenedByHover => {
|
|
1721
|
+
// if (supportsHover_()) return;
|
|
1722
|
+
// const hovered = elementsHovered();
|
|
1723
|
+
// checkHovered: {
|
|
1724
|
+
// if (hovered.has(el)) break checkHovered;
|
|
1725
|
+
// for (const element of hovered) {
|
|
1726
|
+
// if (el.contains(element)) break checkHovered;
|
|
1727
|
+
// }
|
|
1728
|
+
// if (wasOpenedByHover) setUserWantsExpanded(false);
|
|
1729
|
+
// return;
|
|
1730
|
+
// }
|
|
1731
|
+
// setUserWantsExpanded(true);
|
|
1732
|
+
// return true;
|
|
1733
|
+
// });
|
|
1734
|
+
}, _el$2);
|
|
1664
1735
|
$9HbP8$insert(_el$2, $9HbP8$createComponent((0, $9HbP8$Index), {
|
|
1665
1736
|
get each() {
|
|
1666
1737
|
return displays_() || Array.from({
|
|
@@ -1668,7 +1739,7 @@ function $7555dcad3b8a4632$export$ebf0b1d4f90c09ae({
|
|
|
1668
1739
|
});
|
|
1669
1740
|
},
|
|
1670
1741
|
children: (display, index) => {
|
|
1671
|
-
return $9HbP8$createComponent((0, $
|
|
1742
|
+
return $9HbP8$createComponent((0, $08a49ecdcd5beaca$export$b73ed90f0ee50dc3), {
|
|
1672
1743
|
pseudoRouter_: pseudoRouter_,
|
|
1673
1744
|
animationDuration_: animationDuration_,
|
|
1674
1745
|
display_: display,
|
|
@@ -1678,7 +1749,7 @@ function $7555dcad3b8a4632$export$ebf0b1d4f90c09ae({
|
|
|
1678
1749
|
priceFormatting_: priceFormatting_,
|
|
1679
1750
|
outerRef_: el => $9HbP8$createEffect(() => {
|
|
1680
1751
|
if (index !== 0) return;
|
|
1681
|
-
const resizeObserver = new ResizeObserver($9HbP8$
|
|
1752
|
+
const resizeObserver = new ResizeObserver($9HbP8$catchify1(records => setLookItemHeight(records.at(-1).contentRect.height)));
|
|
1682
1753
|
resizeObserver.observe(el);
|
|
1683
1754
|
$9HbP8$onCleanup(() => resizeObserver.disconnect());
|
|
1684
1755
|
})
|
|
@@ -1709,11 +1780,11 @@ function $7555dcad3b8a4632$export$ebf0b1d4f90c09ae({
|
|
|
1709
1780
|
/**
|
|
1710
1781
|
* Workaround for Chrome bug 326498383, adapted version of https://stackoverflow.com/a/39494245
|
|
1711
1782
|
*/
|
|
1712
|
-
function $
|
|
1783
|
+
function $11fb4b33b36ecfac$var$scrollingFunctionForChrome(element, targetScrollY, duration) {
|
|
1713
1784
|
let start;
|
|
1714
1785
|
const startingY = element.scrollTop;
|
|
1715
1786
|
const diff = targetScrollY - startingY;
|
|
1716
|
-
const step = $9HbP8$
|
|
1787
|
+
const step = $9HbP8$catchify1(timestamp => {
|
|
1717
1788
|
if (!start) start = timestamp;
|
|
1718
1789
|
// Elapsed milliseconds since start of scrolling.
|
|
1719
1790
|
const time = timestamp - start;
|
|
@@ -1726,8 +1797,8 @@ function $7555dcad3b8a4632$var$scrollingFunctionForChrome(element, targetScrollY
|
|
|
1726
1797
|
// Bootstrap our animation - it will get called right before next frame shall be rendered.
|
|
1727
1798
|
requestAnimationFrame(step);
|
|
1728
1799
|
}
|
|
1729
|
-
var $
|
|
1730
|
-
function $
|
|
1800
|
+
var $e9d1d09be9e6471e$var$_tmpl$ = /*#__PURE__*/$9HbP8$template(`<div class=look-card><!$><!/><!$><!/>`);
|
|
1801
|
+
function $e9d1d09be9e6471e$export$44809a8a3e867e30({
|
|
1731
1802
|
display_: display_,
|
|
1732
1803
|
expandedLooksSignal_: [expandedLooks_, setExpandedLooks],
|
|
1733
1804
|
FavoriteButton_: FavoriteButton_,
|
|
@@ -1744,7 +1815,7 @@ function $28ee4f7db3cc44b8$export$44809a8a3e867e30({
|
|
|
1744
1815
|
const index = $b6440e72ed83671a$export$e3faf4d95300054f();
|
|
1745
1816
|
const [containerWidth_, setContainerWidth] = $9HbP8$createSignal();
|
|
1746
1817
|
const [containerHeight_, setContainerHeight] = $9HbP8$createSignal();
|
|
1747
|
-
const clickHandler = $9HbP8$
|
|
1818
|
+
const clickHandler = $9HbP8$catchify1(({
|
|
1748
1819
|
target: target
|
|
1749
1820
|
}) => {
|
|
1750
1821
|
if (target !== container && !container.contains(target))
|
|
@@ -1784,15 +1855,15 @@ function $28ee4f7db3cc44b8$export$44809a8a3e867e30({
|
|
|
1784
1855
|
// Close us if another look expands
|
|
1785
1856
|
$9HbP8$createEffect(() => !expandedLooks_().has(us) && setUserWantsExpanded(false));
|
|
1786
1857
|
return (() => {
|
|
1787
|
-
var _el$ = $9HbP8$getNextElement($
|
|
1858
|
+
var _el$ = $9HbP8$getNextElement($e9d1d09be9e6471e$var$_tmpl$),
|
|
1788
1859
|
_el$2 = _el$.firstChild,
|
|
1789
1860
|
[_el$3, _co$] = $9HbP8$getNextMarker(_el$2.nextSibling),
|
|
1790
1861
|
_el$4 = _el$3.nextSibling,
|
|
1791
1862
|
[_el$5, _co$2] = $9HbP8$getNextMarker(_el$4.nextSibling);
|
|
1792
|
-
$9HbP8$addEventListener(_el$, "click", $9HbP8$
|
|
1863
|
+
$9HbP8$addEventListener(_el$, "click", $9HbP8$catchify1(() => setUserWantsExpanded(prev => !prev)), true);
|
|
1793
1864
|
$9HbP8$use(el => {
|
|
1794
1865
|
container = el;
|
|
1795
|
-
const ro = new ResizeObserver($9HbP8$
|
|
1866
|
+
const ro = new ResizeObserver($9HbP8$catchify1(records => {
|
|
1796
1867
|
const last = records.at(-1);
|
|
1797
1868
|
if (!last) return;
|
|
1798
1869
|
const {
|
|
@@ -1824,7 +1895,7 @@ function $28ee4f7db3cc44b8$export$44809a8a3e867e30({
|
|
|
1824
1895
|
});
|
|
1825
1896
|
}
|
|
1826
1897
|
}), _el$3, _co$);
|
|
1827
|
-
$9HbP8$insert(_el$, $9HbP8$createComponent((0, $
|
|
1898
|
+
$9HbP8$insert(_el$, $9HbP8$createComponent((0, $11fb4b33b36ecfac$export$ebf0b1d4f90c09ae), {
|
|
1828
1899
|
displays_: () => display_()?.displays,
|
|
1829
1900
|
userWantsExpandedSignal_: useWantsExpandedSignal_,
|
|
1830
1901
|
containerWidth_: containerWidth_,
|
|
@@ -1908,7 +1979,7 @@ class $4fd2ba03703a7d92$export$7e1297a3a19f10d8 {
|
|
|
1908
1979
|
* @param is_replace_ if you want to replace the current URL in history instead of pushing a new one
|
|
1909
1980
|
* @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
1981
|
*/
|
|
1911
|
-
go_to_: $9HbP8$
|
|
1982
|
+
go_to_: $9HbP8$catchify1(async ({
|
|
1912
1983
|
new_url_: raw_new_url,
|
|
1913
1984
|
event_: event_,
|
|
1914
1985
|
force_spa_navigation_: force_spa_navigation_,
|
|
@@ -2102,7 +2173,7 @@ function $07ef910e8ef6b783$export$2c9f9bf2092486aa(props) {
|
|
|
2102
2173
|
return $07ef910e8ef6b783$var$runDisplayTransformersForLooks(baseData, listings, props.displayTransformers_);
|
|
2103
2174
|
});
|
|
2104
2175
|
const sharedOptions = {
|
|
2105
|
-
product_card_template_: display => $
|
|
2176
|
+
product_card_template_: display => $e9d1d09be9e6471e$export$44809a8a3e867e30({
|
|
2106
2177
|
display_: () => display,
|
|
2107
2178
|
FavoriteButton_: props.FavoriteButton_,
|
|
2108
2179
|
placeholderImageAspectRatio_: props.imagePlaceholderAspectRatio_,
|
|
@@ -2372,9 +2443,9 @@ const $e003be2a50d9e5bc$export$b05c0ae390cf3e06 = ({
|
|
|
2372
2443
|
_el$28 = _el$27.nextSibling,
|
|
2373
2444
|
[_el$29, _co$10] = $9HbP8$getNextMarker(_el$28.nextSibling);
|
|
2374
2445
|
$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$
|
|
2446
|
+
$9HbP8$addEventListener(_el$4, "mouseleave", $9HbP8$catchify1(() => set_selected_index_?.()));
|
|
2447
|
+
$9HbP8$addEventListener(_el$4, "mouseenter", $9HbP8$catchify1(() => set_selected_index_?.([keyboardNavigationGroupIndex_(), index_()])));
|
|
2448
|
+
$9HbP8$addEventListener(_el$4, "click", $9HbP8$catchify1(event_ => router_.navigate_.go_to_({
|
|
2378
2449
|
new_url_: href(),
|
|
2379
2450
|
is_replace_: false,
|
|
2380
2451
|
event_: event_
|
|
@@ -2501,7 +2572,7 @@ function $eea41f703612261b$export$62f101a8aa597bf8({
|
|
|
2501
2572
|
// don't wait if it's the first request
|
|
2502
2573
|
write_current_instant_query(value);
|
|
2503
2574
|
clearTimeout(timeout);
|
|
2504
|
-
timeout = setTimeout($9HbP8$
|
|
2575
|
+
timeout = setTimeout($9HbP8$catchify1(() => write_current_instant_query(value)), 250);
|
|
2505
2576
|
});
|
|
2506
2577
|
const [search_results] = $9HbP8$createResource($9HbP8$createMemo(() => ({
|
|
2507
2578
|
// <-- key order important, see comment below
|
|
@@ -2509,7 +2580,7 @@ function $eea41f703612261b$export$62f101a8aa597bf8({
|
|
|
2509
2580
|
market: market_(),
|
|
2510
2581
|
locale: i18n_.backend_locale_(),
|
|
2511
2582
|
query: read_current_instant_query()
|
|
2512
|
-
})), $9HbP8$
|
|
2583
|
+
})), $9HbP8$catchify1(async variable_data => {
|
|
2513
2584
|
return depict_api_.query({
|
|
2514
2585
|
// 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
2586
|
limit: $9HbP8$untrack(has_sort_or_filters_) ? max_cards : min_products_to_fetch_,
|
|
@@ -2603,7 +2674,7 @@ function $d78eea1e8707dc2d$export$c7e181728ad525f(url) {
|
|
|
2603
2674
|
return;
|
|
2604
2675
|
$d78eea1e8707dc2d$var$last_sent_value = new_value;
|
|
2605
2676
|
const args = ["depict.send", "pageview", new_value];
|
|
2606
|
-
$9HbP8$
|
|
2677
|
+
$9HbP8$dlog1("Calling ga with args", ...args);
|
|
2607
2678
|
// @ts-ignore
|
|
2608
2679
|
ga(...args);
|
|
2609
2680
|
}
|
|
@@ -2617,7 +2688,7 @@ function $c64d28ca12452b21$export$3340fdd8259bd4fd({
|
|
|
2617
2688
|
if (process.env.GA === "false") return;
|
|
2618
2689
|
let debounce_timeout;
|
|
2619
2690
|
const stop_timeout = () => clearTimeout(debounce_timeout);
|
|
2620
|
-
const send_to_ga = $9HbP8$
|
|
2691
|
+
const send_to_ga = $9HbP8$catchify1(() => {
|
|
2621
2692
|
const fake_url = new URL(location.href);
|
|
2622
2693
|
const {
|
|
2623
2694
|
searchParams: searchParams
|
|
@@ -2630,12 +2701,12 @@ function $c64d28ca12452b21$export$3340fdd8259bd4fd({
|
|
|
2630
2701
|
$9HbP8$onCleanup(() => {
|
|
2631
2702
|
setTimeout(
|
|
2632
2703
|
// 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$
|
|
2704
|
+
$9HbP8$catchify1(() => {
|
|
2634
2705
|
if ($9HbP8$untrack(get_search_query_) === $9HbP8$untrack(get_search_field_value_)) stop_timeout();
|
|
2635
2706
|
}));
|
|
2636
2707
|
});
|
|
2637
2708
|
let first_call = true;
|
|
2638
|
-
$9HbP8$createEffect($9HbP8$
|
|
2709
|
+
$9HbP8$createEffect($9HbP8$catchify1(() => {
|
|
2639
2710
|
get_search_field_value_();
|
|
2640
2711
|
if (first_call) {
|
|
2641
2712
|
// we only want to do stuff when it changes
|
|
@@ -2662,7 +2733,7 @@ function $4ceabea39c9a56ac$export$50b90be27d8502d9(el, [get_style_props, set_sty
|
|
|
2662
2733
|
[key]: new_value
|
|
2663
2734
|
});
|
|
2664
2735
|
};
|
|
2665
|
-
const is = new IntersectionObserver($9HbP8$
|
|
2736
|
+
const is = new IntersectionObserver($9HbP8$catchify1(_records => {
|
|
2666
2737
|
do_positioning();
|
|
2667
2738
|
}), {
|
|
2668
2739
|
threshold: $9HbP8$buildThresholdList(100)
|
|
@@ -2683,7 +2754,7 @@ function $a36cbc4f68bfd590$export$91c3b6774e8be0f5({
|
|
|
2683
2754
|
const [get_current_href, set_current_href] = $9HbP8$createSignal(location.href);
|
|
2684
2755
|
const [exit_iterable, exitable_iterable] = $9HbP8$make_asyncIterable_exiter((0, $9HbP8$href_change_ipns));
|
|
2685
2756
|
$9HbP8$onCleanup(exit_iterable);
|
|
2686
|
-
$9HbP8$
|
|
2757
|
+
$9HbP8$catchify1(async () => {
|
|
2687
2758
|
for await (const href of exitable_iterable)
|
|
2688
2759
|
// use native links so ppl can cmdclick/right click and open in new tab and see target URL
|
|
2689
2760
|
set_current_href(href);
|
|
@@ -2753,18 +2824,18 @@ function $980239e081e89b62$export$a146ac6fa8346a25({
|
|
|
2753
2824
|
_el$9 = _el$5.nextSibling;
|
|
2754
2825
|
$9HbP8$use(element => element.addEventListener(
|
|
2755
2826
|
// 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$
|
|
2827
|
+
"click", $9HbP8$catchify1(ev => {
|
|
2757
2828
|
if ($a281666e5c15c2ec$export$29d28dadc2d6b631(ev))
|
|
2758
2829
|
// not button 0 or cmd/ctrl click
|
|
2759
2830
|
return;
|
|
2760
2831
|
ev.preventDefault();
|
|
2761
2832
|
submit_query_(item());
|
|
2762
2833
|
})), _el$4);
|
|
2763
|
-
$9HbP8$addEventListener(_el$4, "mouseleave", $9HbP8$
|
|
2764
|
-
$9HbP8$addEventListener(_el$4, "mouseenter", $9HbP8$
|
|
2834
|
+
$9HbP8$addEventListener(_el$4, "mouseleave", $9HbP8$catchify1(() => write_selected_index_()));
|
|
2835
|
+
$9HbP8$addEventListener(_el$4, "mouseenter", $9HbP8$catchify1(() => write_selected_index_([0, index])));
|
|
2765
2836
|
$9HbP8$insert(_el$5, $9HbP8$createComponent((0, $694b7f90501fea4c$export$5d2caaa6b530761c), {}), _el$8, _co$);
|
|
2766
2837
|
$9HbP8$insert(_el$6, item);
|
|
2767
|
-
$9HbP8$use(element => element.addEventListener("click", $9HbP8$
|
|
2838
|
+
$9HbP8$use(element => element.addEventListener("click", $9HbP8$catchify1(e => {
|
|
2768
2839
|
// 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
2840
|
set_unfiltered_previous_searches_(prev => {
|
|
2770
2841
|
const new_value = [...prev];
|
|
@@ -2945,7 +3016,7 @@ function $ab4b0679fa8bd1dc$export$e872e2339fb04a7f({
|
|
|
2945
3016
|
});
|
|
2946
3017
|
return (() => {
|
|
2947
3018
|
var _el$ = $9HbP8$getNextElement($ab4b0679fa8bd1dc$var$_tmpl$);
|
|
2948
|
-
$9HbP8$use(element => element.addEventListener("click", $9HbP8$
|
|
3019
|
+
$9HbP8$use(element => element.addEventListener("click", $9HbP8$catchify1(ev => {
|
|
2949
3020
|
// 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
3021
|
if (is_query()) {
|
|
2951
3022
|
if ($a281666e5c15c2ec$export$29d28dadc2d6b631(ev))
|
|
@@ -2962,8 +3033,8 @@ function $ab4b0679fa8bd1dc$export$e872e2339fb04a7f({
|
|
|
2962
3033
|
event_: ev
|
|
2963
3034
|
});
|
|
2964
3035
|
})), _el$);
|
|
2965
|
-
$9HbP8$addEventListener(_el$, "mouseleave", $9HbP8$
|
|
2966
|
-
$9HbP8$addEventListener(_el$, "mouseenter", $9HbP8$
|
|
3036
|
+
$9HbP8$addEventListener(_el$, "mouseleave", $9HbP8$catchify1(() => write_selected_index_(undefined)));
|
|
3037
|
+
$9HbP8$addEventListener(_el$, "mouseenter", $9HbP8$catchify1(() => write_selected_index_([autocomplete_data_index, index])));
|
|
2967
3038
|
$9HbP8$insert(_el$, (() => {
|
|
2968
3039
|
var _c$ = $9HbP8$memo(() => !!is_query());
|
|
2969
3040
|
return () => _c$() ? [$9HbP8$createComponent((0, $9HbP8$Show), {
|
|
@@ -3249,7 +3320,7 @@ function $6ef2e4ea23810f23$var$actual_navigation_working_on_fake_data({
|
|
|
3249
3320
|
if (!$9HbP8$untrack(() => read_updating_blocked())) previous_value = sfv;
|
|
3250
3321
|
});
|
|
3251
3322
|
const owner = $9HbP8$getOwner();
|
|
3252
|
-
const handler = $9HbP8$
|
|
3323
|
+
const handler = $9HbP8$catchify1(({
|
|
3253
3324
|
keyCode: keyCode
|
|
3254
3325
|
}) => $9HbP8$untrack(() => {
|
|
3255
3326
|
const up = keyCode === 38;
|
|
@@ -3313,7 +3384,7 @@ function $6ef2e4ea23810f23$var$actual_navigation_working_on_fake_data({
|
|
|
3313
3384
|
const el = element_();
|
|
3314
3385
|
if (!el) return;
|
|
3315
3386
|
el.addEventListener("keyup", handler);
|
|
3316
|
-
$9HbP8$onCleanup($9HbP8$
|
|
3387
|
+
$9HbP8$onCleanup($9HbP8$catchify1(() => el.removeEventListener("keyup", handler)));
|
|
3317
3388
|
});
|
|
3318
3389
|
}
|
|
3319
3390
|
function $1ae0eaca6ada9753$export$af0124069c150252({
|
|
@@ -3514,7 +3585,7 @@ let $f86ba724282f6690$export$44dad306455dddf;
|
|
|
3514
3585
|
|
|
3515
3586
|
function $2449872a62a75a20$export$ebdc3711f7e02ccd(what_to_watch) {
|
|
3516
3587
|
const [width, setWidth] = $9HbP8$createSignal();
|
|
3517
|
-
const resizeObserver = new ResizeObserver($9HbP8$
|
|
3588
|
+
const resizeObserver = new ResizeObserver($9HbP8$catchify1(records => {
|
|
3518
3589
|
for (let j = 0; j < records.length; j++) {
|
|
3519
3590
|
const width = records[j].borderBoxSize?.[0]?.inlineSize ?? what_to_watch.getBoundingClientRect().width;
|
|
3520
3591
|
setWidth(width);
|
|
@@ -3524,7 +3595,7 @@ function $2449872a62a75a20$export$ebdc3711f7e02ccd(what_to_watch) {
|
|
|
3524
3595
|
// It doesn't seem to work even when waiting for it to be in the DOM, also wait an animation frame
|
|
3525
3596
|
const disconnect = (0, $9HbP8$observer).onexists(what_to_watch, ({
|
|
3526
3597
|
element: element
|
|
3527
|
-
}) => requestAnimationFrame($9HbP8$
|
|
3598
|
+
}) => requestAnimationFrame($9HbP8$catchify1(() => {
|
|
3528
3599
|
const current_size = what_to_watch.getBoundingClientRect().width;
|
|
3529
3600
|
if (current_size)
|
|
3530
3601
|
// 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 +3640,7 @@ function $5285d2814d0fac0c$export$b94867ecbd698f21({
|
|
|
3569
3640
|
let input_element;
|
|
3570
3641
|
// This is the div where we recommend (and ourselves do) attach the event listener to that opens the search modal.
|
|
3571
3642
|
let field_div;
|
|
3572
|
-
$9HbP8$createEffect($9HbP8$
|
|
3643
|
+
$9HbP8$createEffect($9HbP8$catchify1(async () => {
|
|
3573
3644
|
if (disabled_) return;
|
|
3574
3645
|
// we aren't in DOM yet unfortunately, wouldn't even be with onMount
|
|
3575
3646
|
await (0, $9HbP8$observer).wait_for_element(input_element);
|
|
@@ -3587,7 +3658,7 @@ function $5285d2814d0fac0c$export$b94867ecbd698f21({
|
|
|
3587
3658
|
var _el$ = $9HbP8$getNextElement($5285d2814d0fac0c$var$_tmpl$);
|
|
3588
3659
|
$9HbP8$spread(_el$, $9HbP8$mergeProps({
|
|
3589
3660
|
get onClick() {
|
|
3590
|
-
return $9HbP8$
|
|
3661
|
+
return $9HbP8$catchify1(on_back_);
|
|
3591
3662
|
},
|
|
3592
3663
|
get ["aria-label"]() {
|
|
3593
3664
|
return i18n_.back_();
|
|
@@ -3617,7 +3688,7 @@ function $5285d2814d0fac0c$export$b94867ecbd698f21({
|
|
|
3617
3688
|
return isNewModal || !searchFieldEmpty() ? "" : "display: none";
|
|
3618
3689
|
},
|
|
3619
3690
|
get onClick() {
|
|
3620
|
-
return $9HbP8$
|
|
3691
|
+
return $9HbP8$catchify1(() => {
|
|
3621
3692
|
if (isNewModal && searchFieldEmpty()) return;
|
|
3622
3693
|
setSearchFieldValue("");
|
|
3623
3694
|
clear_filters_(true);
|
|
@@ -3674,7 +3745,7 @@ function $5285d2814d0fac0c$export$b94867ecbd698f21({
|
|
|
3674
3745
|
field_div = el;
|
|
3675
3746
|
field_element_ref_?.(el);
|
|
3676
3747
|
}, _el$5);
|
|
3677
|
-
$9HbP8$addEventListener(_el$5, "click", $9HbP8$
|
|
3748
|
+
$9HbP8$addEventListener(_el$5, "click", $9HbP8$catchify1(({
|
|
3678
3749
|
target: target,
|
|
3679
3750
|
currentTarget: currentTarget,
|
|
3680
3751
|
detail: detail
|
|
@@ -3704,7 +3775,7 @@ function $5285d2814d0fac0c$export$b94867ecbd698f21({
|
|
|
3704
3775
|
}) => {
|
|
3705
3776
|
// 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
3777
|
if (pointerType === "mouse") {
|
|
3707
|
-
const handler = $9HbP8$
|
|
3778
|
+
const handler = $9HbP8$catchify1(({
|
|
3708
3779
|
pointerType: pointerType,
|
|
3709
3780
|
target: target
|
|
3710
3781
|
}) => {
|
|
@@ -3717,26 +3788,26 @@ function $5285d2814d0fac0c$export$b94867ecbd698f21({
|
|
|
3717
3788
|
$9HbP8$runWithOwner(owner_of_field_element, () => $9HbP8$onCleanup(() => window.removeEventListener("pointerup", handler)));
|
|
3718
3789
|
}
|
|
3719
3790
|
};
|
|
3720
|
-
$9HbP8$addEventListener(_el$6, "select", $9HbP8$
|
|
3791
|
+
$9HbP8$addEventListener(_el$6, "select", $9HbP8$catchify1(() => {
|
|
3721
3792
|
if (disabled_)
|
|
3722
3793
|
// 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
3794
|
return;
|
|
3724
3795
|
if (input_element.selectionStart === 0 && input_element.selectionEnd === input_element.value.length)
|
|
3725
3796
|
// everything was selected, clear filters on next submit on next input
|
|
3726
|
-
input_element.addEventListener("input", $9HbP8$
|
|
3797
|
+
input_element.addEventListener("input", $9HbP8$catchify1(() => clear_filters_(false)),
|
|
3727
3798
|
// We don't count this as user triggered since it wasn't explicit
|
|
3728
3799
|
{
|
|
3729
3800
|
once: true
|
|
3730
3801
|
});
|
|
3731
3802
|
}));
|
|
3732
|
-
$9HbP8$addEventListener(_el$6, "input", $9HbP8$
|
|
3803
|
+
$9HbP8$addEventListener(_el$6, "input", $9HbP8$catchify1(() => {
|
|
3733
3804
|
const {
|
|
3734
3805
|
value: value
|
|
3735
3806
|
} = input_element;
|
|
3736
3807
|
if (!disabled_ && !value.length) clear_filters_(false); // if the user clears the whole field, reset filters on next submit
|
|
3737
3808
|
setSearchFieldValue(value);
|
|
3738
3809
|
}), true);
|
|
3739
|
-
$9HbP8$addEventListener(_el$6, "keydown", $9HbP8$
|
|
3810
|
+
$9HbP8$addEventListener(_el$6, "keydown", $9HbP8$catchify1(e => {
|
|
3740
3811
|
if (disabled_) {
|
|
3741
3812
|
if (e.key !== "Tab" && e.key !== "Shift")
|
|
3742
3813
|
// 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 +3817,7 @@ function $5285d2814d0fac0c$export$b94867ecbd698f21({
|
|
|
3746
3817
|
if (!dont_submit) submit_query_();
|
|
3747
3818
|
}
|
|
3748
3819
|
}), true);
|
|
3749
|
-
var _ref$2 = $9HbP8$
|
|
3820
|
+
var _ref$2 = $9HbP8$catchify1(el => {
|
|
3750
3821
|
input_element = el;
|
|
3751
3822
|
input_field_ref_?.(el);
|
|
3752
3823
|
});
|
|
@@ -3758,7 +3829,7 @@ function $5285d2814d0fac0c$export$b94867ecbd698f21({
|
|
|
3758
3829
|
when: !isNewModal,
|
|
3759
3830
|
get children() {
|
|
3760
3831
|
var _el$11 = $9HbP8$getNextElement($5285d2814d0fac0c$var$_tmpl$4);
|
|
3761
|
-
$9HbP8$addEventListener(_el$11, "click", $9HbP8$
|
|
3832
|
+
$9HbP8$addEventListener(_el$11, "click", $9HbP8$catchify1(() => submit_query_()), true);
|
|
3762
3833
|
$9HbP8$insert(_el$11, $9HbP8$createComponent((0, $16f0ed5ea30d8d9c$export$82eafebb825fc23f), {}));
|
|
3763
3834
|
$9HbP8$effect(() => $9HbP8$setAttribute(_el$11, "aria-label", i18n_.search_submit_button_aria_label_()));
|
|
3764
3835
|
$9HbP8$runHydrationEvents();
|
|
@@ -3795,18 +3866,18 @@ function $aea1edf92433e81e$export$fe334901e8bebd57() {
|
|
|
3795
3866
|
offset: 0
|
|
3796
3867
|
}, 1);
|
|
3797
3868
|
animation.pause();
|
|
3798
|
-
const fn = $9HbP8$
|
|
3869
|
+
const fn = $9HbP8$catchify1(animation.play.bind(animation));
|
|
3799
3870
|
cleanup_fns.push(fn);
|
|
3800
3871
|
$9HbP8$onCleanup(fn);
|
|
3801
3872
|
} catch (e) {
|
|
3802
|
-
$9HbP8$
|
|
3873
|
+
$9HbP8$dlog1("Probably partial keyframe error", e);
|
|
3803
3874
|
}
|
|
3804
3875
|
if (getComputedStyle(element).overflow !== "hidden") {
|
|
3805
3876
|
// safari gets special hacky treatment
|
|
3806
3877
|
const style = element.style;
|
|
3807
3878
|
const original_value = style.overflow;
|
|
3808
3879
|
style.overflow = "hidden";
|
|
3809
|
-
const fn = $9HbP8$
|
|
3880
|
+
const fn = $9HbP8$catchify1(() => style.overflow = original_value);
|
|
3810
3881
|
cleanup_fns.push(fn);
|
|
3811
3882
|
$9HbP8$onCleanup(fn);
|
|
3812
3883
|
}
|
|
@@ -3829,8 +3900,8 @@ function $512b994d501f412b$export$93d9bfd0c9c1a5b8(close_modal, search_query_url
|
|
|
3829
3900
|
let set_initial_values = false;
|
|
3830
3901
|
let old_pathname;
|
|
3831
3902
|
let old_param_value;
|
|
3832
|
-
$9HbP8$onCleanup($9HbP8$
|
|
3833
|
-
$9HbP8$
|
|
3903
|
+
$9HbP8$onCleanup($9HbP8$catchify1(exit_iterable));
|
|
3904
|
+
$9HbP8$catchify1(async () => {
|
|
3834
3905
|
for await (const href of exitable_iterable) {
|
|
3835
3906
|
const u_o = new URL(href);
|
|
3836
3907
|
const new_pathname = u_o.pathname;
|
|
@@ -3901,7 +3972,7 @@ function $42912431795f188e$var$RawClassicSearchModal({
|
|
|
3901
3972
|
} = alignmentSignals_ || {};
|
|
3902
3973
|
const [bodyAlignmentStyle] = bodyAlignmentSignal;
|
|
3903
3974
|
const [get_modal_search_results, set_modal_search_results_] = $9HbP8$createSignal();
|
|
3904
|
-
const close_on_escape_handler = $9HbP8$
|
|
3975
|
+
const close_on_escape_handler = $9HbP8$catchify1(({
|
|
3905
3976
|
key: key
|
|
3906
3977
|
}) => {
|
|
3907
3978
|
if (key === "Escape") close_modal_();
|
|
@@ -3925,7 +3996,7 @@ function $42912431795f188e$var$RawClassicSearchModal({
|
|
|
3925
3996
|
const DiscoverMoreSection = () => (() => {
|
|
3926
3997
|
var _el$ = $9HbP8$getNextElement($42912431795f188e$var$_tmpl$),
|
|
3927
3998
|
_el$2 = _el$.firstChild;
|
|
3928
|
-
$9HbP8$addEventListener(_el$2, "click", $9HbP8$
|
|
3999
|
+
$9HbP8$addEventListener(_el$2, "click", $9HbP8$catchify1(() => submit_query_()), true);
|
|
3929
4000
|
$9HbP8$insert(_el$2, (() => {
|
|
3930
4001
|
var _c$ = $9HbP8$memo(() => !!get_search_field_value_());
|
|
3931
4002
|
return () => _c$() ? i18n_.modal_view_all_results_()((() => {
|
|
@@ -3940,7 +4011,7 @@ function $42912431795f188e$var$RawClassicSearchModal({
|
|
|
3940
4011
|
if (disable_scrolling_) $aea1edf92433e81e$export$fe334901e8bebd57();
|
|
3941
4012
|
$512b994d501f412b$export$93d9bfd0c9c1a5b8(close_modal_, search_query_url_param_name_);
|
|
3942
4013
|
window.addEventListener("keydown", close_on_escape_handler);
|
|
3943
|
-
$9HbP8$onCleanup($9HbP8$
|
|
4014
|
+
$9HbP8$onCleanup($9HbP8$catchify1(() => window.removeEventListener("keydown", close_on_escape_handler)));
|
|
3944
4015
|
if (closing_animation_) register_closing_animation_(closing_animation_);
|
|
3945
4016
|
$c64d28ca12452b21$export$3340fdd8259bd4fd({
|
|
3946
4017
|
get_search_field_value_: get_search_field_value_,
|
|
@@ -3992,13 +4063,13 @@ function $42912431795f188e$var$RawClassicSearchModal({
|
|
|
3992
4063
|
[_el$16, _co$5] = $9HbP8$getNextMarker(_el$15.nextSibling),
|
|
3993
4064
|
_el$17 = _el$5.nextSibling,
|
|
3994
4065
|
[_el$18, _co$6] = $9HbP8$getNextMarker(_el$17.nextSibling);
|
|
3995
|
-
$9HbP8$addEventListener(_el$4, "click", $9HbP8$
|
|
4066
|
+
$9HbP8$addEventListener(_el$4, "click", $9HbP8$catchify1(({
|
|
3996
4067
|
target: target
|
|
3997
4068
|
}) => {
|
|
3998
4069
|
if (target === modal_element) close_modal_();
|
|
3999
4070
|
}), true);
|
|
4000
4071
|
$9HbP8$insert(_el$5, search_field, _el$14, _co$4);
|
|
4001
|
-
$9HbP8$use(el => $9HbP8$
|
|
4072
|
+
$9HbP8$use(el => $9HbP8$catchify1((0, $4ceabea39c9a56ac$export$50b90be27d8502d9))(el, bodyAlignmentSignal, bottom_distance_under_modal_), _el$6);
|
|
4002
4073
|
$9HbP8$insert(_el$6, $9HbP8$createComponent((0, $b7436a6d1fd64e3b$export$b69d0d92862de18b), {
|
|
4003
4074
|
severity_: "error",
|
|
4004
4075
|
message_: "Autocomplete/suggestions failed",
|
|
@@ -4203,7 +4274,7 @@ function $4147651646da990a$var$decode_filter_data(op, encoded_data) {
|
|
|
4203
4274
|
try {
|
|
4204
4275
|
return JSON.parse($9HbP8$base64_decode_unicode(encoded_data));
|
|
4205
4276
|
} catch (e) {
|
|
4206
|
-
$9HbP8$
|
|
4277
|
+
$9HbP8$dlog1("Failed to fallback parse filter data", op, encoded_data, e);
|
|
4207
4278
|
}
|
|
4208
4279
|
return null;
|
|
4209
4280
|
}
|
|
@@ -4261,7 +4332,7 @@ function $4147651646da990a$export$766e9676e74997d3(search_params, sorting_query_
|
|
|
4261
4332
|
field: encoded_sorting.slice(0, -$4147651646da990a$var$descending_token.length),
|
|
4262
4333
|
order: "desc"
|
|
4263
4334
|
};
|
|
4264
|
-
$9HbP8$
|
|
4335
|
+
$9HbP8$dlog1("Invalid sorting query param value", encoded_sorting);
|
|
4265
4336
|
return;
|
|
4266
4337
|
}
|
|
4267
4338
|
function $4147651646da990a$export$916e6850778505f6(search_params, filter_query_param_prefix, sorting_query_param) {
|
|
@@ -4334,7 +4405,7 @@ function $dfa5b6f7c5e421df$export$5646050d516e06bc({
|
|
|
4334
4405
|
},
|
|
4335
4406
|
get children() {
|
|
4336
4407
|
var _el$2 = $9HbP8$getNextElement($dfa5b6f7c5e421df$var$_tmpl$2);
|
|
4337
|
-
$9HbP8$addEventListener(_el$2, "click", $9HbP8$
|
|
4408
|
+
$9HbP8$addEventListener(_el$2, "click", $9HbP8$catchify1(ev => router_.navigate_.go_to_({
|
|
4338
4409
|
new_url_: href(),
|
|
4339
4410
|
is_replace_: false,
|
|
4340
4411
|
event_: ev,
|
|
@@ -4397,7 +4468,7 @@ function $4ce5b8892775b62d$export$67152d26d4f56ee8({
|
|
|
4397
4468
|
return href();
|
|
4398
4469
|
},
|
|
4399
4470
|
get onClick() {
|
|
4400
|
-
return $9HbP8$
|
|
4471
|
+
return $9HbP8$catchify1(ev => href() && router_.navigate_.go_to_({
|
|
4401
4472
|
new_url_: href(),
|
|
4402
4473
|
is_replace_: false,
|
|
4403
4474
|
event_: ev,
|
|
@@ -4422,8 +4493,8 @@ function $4ce5b8892775b62d$export$67152d26d4f56ee8({
|
|
|
4422
4493
|
[_el$8, _co$2] = $9HbP8$getNextMarker(_el$7.nextSibling),
|
|
4423
4494
|
_el$4 = _el$8.nextSibling;
|
|
4424
4495
|
$9HbP8$use(element => $f4125ce4984deee6$export$12761f53d7ab7f27(element, selectedDueToKeyboardNavigation), _el$2);
|
|
4425
|
-
$9HbP8$addEventListener(_el$2, "mouseleave", $9HbP8$
|
|
4426
|
-
$9HbP8$addEventListener(_el$2, "mouseover", $9HbP8$
|
|
4496
|
+
$9HbP8$addEventListener(_el$2, "mouseleave", $9HbP8$catchify1(() => write_selected_index_()));
|
|
4497
|
+
$9HbP8$addEventListener(_el$2, "mouseover", $9HbP8$catchify1(({
|
|
4427
4498
|
target: target
|
|
4428
4499
|
}) => {
|
|
4429
4500
|
// Using onMouseOver instead of onMouseEnter to also trigger when the hovered child changes
|
|
@@ -4670,7 +4741,7 @@ function $903297121898e5ff$export$d4994a86c6235f72({
|
|
|
4670
4741
|
var _el$7 = $9HbP8$getNextElement($903297121898e5ff$var$_tmpl$2);
|
|
4671
4742
|
$9HbP8$use(element => {
|
|
4672
4743
|
$f4125ce4984deee6$export$12761f53d7ab7f27(element, selectedDueToKeyboardNavigation);
|
|
4673
|
-
element.addEventListener("click", $9HbP8$
|
|
4744
|
+
element.addEventListener("click", $9HbP8$catchify1(ev => {
|
|
4674
4745
|
// 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
4746
|
const itemContents = item();
|
|
4676
4747
|
if ("page_url_" in itemContents) {
|
|
@@ -4686,8 +4757,8 @@ function $903297121898e5ff$export$d4994a86c6235f72({
|
|
|
4686
4757
|
submit_query_(itemContents.title_);
|
|
4687
4758
|
}));
|
|
4688
4759
|
}, _el$7);
|
|
4689
|
-
$9HbP8$addEventListener(_el$7, "mouseleave", $9HbP8$
|
|
4690
|
-
$9HbP8$addEventListener(_el$7, "mouseenter", $9HbP8$
|
|
4760
|
+
$9HbP8$addEventListener(_el$7, "mouseleave", $9HbP8$catchify1(() => write_selected_index_()));
|
|
4761
|
+
$9HbP8$addEventListener(_el$7, "mouseenter", $9HbP8$catchify1(() => write_selected_index_([itemIndex_(), index])));
|
|
4691
4762
|
$9HbP8$insert(_el$7, $9HbP8$createComponent((0, $f3213c0640246d58$export$ba17c5b7e6dda39f), {
|
|
4692
4763
|
class_: "title line-clamp",
|
|
4693
4764
|
get whole_text_to_display_() {
|
|
@@ -4807,7 +4878,7 @@ function $2f3171b02c8f4a5d$export$af1fb307bbba2417({
|
|
|
4807
4878
|
},
|
|
4808
4879
|
extraTitleRowElements_: () => (() => {
|
|
4809
4880
|
var _el$ = $9HbP8$getNextElement($2f3171b02c8f4a5d$var$_tmpl$);
|
|
4810
|
-
$9HbP8$addEventListener(_el$, "click", $9HbP8$
|
|
4881
|
+
$9HbP8$addEventListener(_el$, "click", $9HbP8$catchify1(() => set_unfiltered_previous_searches_([])), true);
|
|
4811
4882
|
$9HbP8$insert(_el$, () => i18n_.clear_all_from_filter_crumbs_());
|
|
4812
4883
|
$9HbP8$runHydrationEvents();
|
|
4813
4884
|
return _el$;
|
|
@@ -4956,7 +5027,7 @@ function $500a16dd18ee5a71$var$RawSearchModalV2({
|
|
|
4956
5027
|
const random_classname_body = $9HbP8$make_random_classname();
|
|
4957
5028
|
const backdropRandomClassname = $9HbP8$make_random_classname();
|
|
4958
5029
|
const [get_modal_search_results_, set_modal_search_results_] = $9HbP8$createSignal();
|
|
4959
|
-
const close_on_escape_handler = $9HbP8$
|
|
5030
|
+
const close_on_escape_handler = $9HbP8$catchify1(evt => {
|
|
4960
5031
|
if (evt.key === "Escape") {
|
|
4961
5032
|
evt.preventDefault(); // Prevent the browser from closing/cancelling the modal so our animations have time to run
|
|
4962
5033
|
close_modal_();
|
|
@@ -5052,7 +5123,7 @@ function $500a16dd18ee5a71$var$RawSearchModalV2({
|
|
|
5052
5123
|
$9HbP8$createEffect($9HbP8$on(get_search_field_value_, () => {
|
|
5053
5124
|
setShowStaleListingSuggestions(true);
|
|
5054
5125
|
clearTimeout(listingSuggestionsDebounceTimeout);
|
|
5055
|
-
listingSuggestionsDebounceTimeout = setTimeout($9HbP8$
|
|
5126
|
+
listingSuggestionsDebounceTimeout = setTimeout($9HbP8$catchify1(() => setShowStaleListingSuggestions(false)), 350);
|
|
5056
5127
|
}, {
|
|
5057
5128
|
defer: true
|
|
5058
5129
|
}));
|
|
@@ -5190,7 +5261,7 @@ function $500a16dd18ee5a71$var$RawSearchModalV2({
|
|
|
5190
5261
|
const discoverMoreSection = (() => {
|
|
5191
5262
|
var _el$7 = $9HbP8$getNextElement($500a16dd18ee5a71$var$_tmpl$4),
|
|
5192
5263
|
_el$8 = _el$7.firstChild;
|
|
5193
|
-
$9HbP8$addEventListener(_el$8, "click", $9HbP8$
|
|
5264
|
+
$9HbP8$addEventListener(_el$8, "click", $9HbP8$catchify1(() => submit_query_()), true);
|
|
5194
5265
|
$9HbP8$insert(_el$8, (() => {
|
|
5195
5266
|
var _c$ = $9HbP8$memo(() => !!get_search_field_value_());
|
|
5196
5267
|
return () => _c$() ? i18n_.modal_view_all_results_()((() => {
|
|
@@ -5220,7 +5291,7 @@ function $500a16dd18ee5a71$var$RawSearchModalV2({
|
|
|
5220
5291
|
}
|
|
5221
5292
|
});
|
|
5222
5293
|
if (setSearchFieldOuterWidth_) {
|
|
5223
|
-
const resizeObserver = new ResizeObserver($9HbP8$
|
|
5294
|
+
const resizeObserver = new ResizeObserver($9HbP8$catchify1(records => setSearchFieldOuterWidth_(records.at(-1).contentRect.width)));
|
|
5224
5295
|
resizeObserver.observe(search_field);
|
|
5225
5296
|
$9HbP8$onCleanup(() => resizeObserver.disconnect());
|
|
5226
5297
|
}
|
|
@@ -5261,7 +5332,7 @@ function $500a16dd18ee5a71$var$RawSearchModalV2({
|
|
|
5261
5332
|
_el$13 = _el$15.nextSibling,
|
|
5262
5333
|
_el$16 = _el$12.nextSibling,
|
|
5263
5334
|
[_el$17, _co$3] = $9HbP8$getNextMarker(_el$16.nextSibling);
|
|
5264
|
-
$9HbP8$addEventListener(_el$11, "click", $9HbP8$
|
|
5335
|
+
$9HbP8$addEventListener(_el$11, "click", $9HbP8$catchify1(({
|
|
5265
5336
|
target: target,
|
|
5266
5337
|
currentTarget: currentTarget
|
|
5267
5338
|
}) => {
|
|
@@ -5269,13 +5340,13 @@ function $500a16dd18ee5a71$var$RawSearchModalV2({
|
|
|
5269
5340
|
}), true);
|
|
5270
5341
|
$9HbP8$use(element => {
|
|
5271
5342
|
// 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$
|
|
5343
|
+
const resizeObserver = new ResizeObserver($9HbP8$catchify1(records => setModalBodyWidth(records.at(-1).contentRect.width)));
|
|
5273
5344
|
resizeObserver.observe(element);
|
|
5274
5345
|
$9HbP8$onCleanup(() => resizeObserver.disconnect());
|
|
5275
5346
|
}, _el$12);
|
|
5276
5347
|
$9HbP8$insert(_el$12, search_field, _el$15, _co$2);
|
|
5277
5348
|
$9HbP8$use(el => {
|
|
5278
|
-
$9HbP8$
|
|
5349
|
+
$9HbP8$catchify1((0, $4ceabea39c9a56ac$export$50b90be27d8502d9))(el, bodyAlignmentSignal, bottom_distance_under_modal_ || (() => 0.03 // 3% under SearchModalV2 by default
|
|
5279
5350
|
));
|
|
5280
5351
|
// Workaround part 2 of https://github.com/solidjs/solid/issues/2030
|
|
5281
5352
|
// 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 +5424,7 @@ function $024fbc0a2d796fad$var$ActualTabs(props) {
|
|
|
5353
5424
|
});
|
|
5354
5425
|
const isSelected = $9HbP8$createSelector(currentlySelected);
|
|
5355
5426
|
const owner = $9HbP8$getOwner();
|
|
5356
|
-
const updateTabsSignal = $9HbP8$
|
|
5427
|
+
const updateTabsSignal = $9HbP8$catchify(() => $9HbP8$runWithOwner(owner, () => setTabsReactive([...ourTabsSet])));
|
|
5357
5428
|
const ourTabsSet = $024fbc0a2d796fad$var$useTabs();
|
|
5358
5429
|
const location = $9HbP8$use_href_accessor1();
|
|
5359
5430
|
const linkWithChangedHash = hash => {
|
|
@@ -5484,7 +5555,7 @@ function $024fbc0a2d796fad$export$3e41faf802a29e71(props) {
|
|
|
5484
5555
|
async function $194bd6b8e4c59830$export$79b1565500412d9b(search_modal, modal_fn_opts, parent) {
|
|
5485
5556
|
const body = parent || document.body || (await (0, $9HbP8$observer).wait_for_element("body"));
|
|
5486
5557
|
let dispose_and_remove;
|
|
5487
|
-
const open_modal_ = $9HbP8$
|
|
5558
|
+
const open_modal_ = $9HbP8$catchify1(async (extra_options_for_modal = {}, on_dispose) => {
|
|
5488
5559
|
// Below await is very intentional,
|
|
5489
5560
|
// 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
5561
|
// This is because the suspense is for the content in the page and not the modal (the modal goes above it)
|
|
@@ -5514,7 +5585,7 @@ async function $194bd6b8e4c59830$export$79b1565500412d9b(search_modal, modal_fn_
|
|
|
5514
5585
|
// Animation broke, close it this time
|
|
5515
5586
|
actually_close();else if (!animation_started && closing_animation) {
|
|
5516
5587
|
animation_started = +new Date();
|
|
5517
|
-
$9HbP8$
|
|
5588
|
+
$9HbP8$catchify1(closing_animation)()?.then($9HbP8$catchify1(actually_close));
|
|
5518
5589
|
} else actually_close();
|
|
5519
5590
|
};
|
|
5520
5591
|
return search_modal({
|
|
@@ -5527,7 +5598,7 @@ async function $194bd6b8e4c59830$export$79b1565500412d9b(search_modal, modal_fn_
|
|
|
5527
5598
|
});
|
|
5528
5599
|
body.append(...modal_els);
|
|
5529
5600
|
});
|
|
5530
|
-
const close_modal_ = $9HbP8$
|
|
5601
|
+
const close_modal_ = $9HbP8$catchify1(() => {
|
|
5531
5602
|
if (dispose_and_remove) {
|
|
5532
5603
|
// modal is open
|
|
5533
5604
|
const dispose_fn = dispose_and_remove;
|
|
@@ -5544,7 +5615,7 @@ async function $194bd6b8e4c59830$export$79b1565500412d9b(search_modal, modal_fn_
|
|
|
5544
5615
|
function $ca6f574bd8772184$export$e183a13865960371(params_to_default_value, router_) {
|
|
5545
5616
|
const signals = {};
|
|
5546
5617
|
const entries = Object.entries(params_to_default_value);
|
|
5547
|
-
const event_handler = $9HbP8$
|
|
5618
|
+
const event_handler = $9HbP8$catchify1((what_happened, args) => {
|
|
5548
5619
|
// 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
5620
|
if (what_happened !== "popstate") return;
|
|
5550
5621
|
// 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 +5646,8 @@ function $ca6f574bd8772184$export$e183a13865960371(params_to_default_value, rout
|
|
|
5575
5646
|
});
|
|
5576
5647
|
// 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
5648
|
(0, $9HbP8$instant_exec_on_suspect_history_change).add(event_handler);
|
|
5578
|
-
$9HbP8$onCleanup($9HbP8$
|
|
5579
|
-
$9HbP8$createEffect($9HbP8$
|
|
5649
|
+
$9HbP8$onCleanup($9HbP8$catchify1(() => (0, $9HbP8$instant_exec_on_suspect_history_change).delete(event_handler)));
|
|
5650
|
+
$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
5651
|
return signals;
|
|
5581
5652
|
}
|
|
5582
5653
|
function $ca6f574bd8772184$var$history_state_change(signals, entries, state) {
|
|
@@ -5730,7 +5801,7 @@ function $45d4ed34a22ab90c$export$6b35356958ae5587(props) {
|
|
|
5730
5801
|
// If someone clicks on a product card in the shop the look modal, close the modal the next time the href changes
|
|
5731
5802
|
for (const item of resolved()) {
|
|
5732
5803
|
if (!(item instanceof Element)) return;
|
|
5733
|
-
item.addEventListener("click", $9HbP8$
|
|
5804
|
+
item.addEventListener("click", $9HbP8$catchify1(() =>
|
|
5734
5805
|
// run with modal owner so we don't do stuff after the modal closes
|
|
5735
5806
|
// 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
5807
|
$9HbP8$runWithOwner(props.modalOwner_, () => $9HbP8$createEffect($9HbP8$on(hrefWithoutHash, props.actually_close_modal_, {
|
|
@@ -5853,7 +5924,7 @@ function $e64486f09b43651c$export$a3cbef418994a664(props) {
|
|
|
5853
5924
|
var _el$ = $9HbP8$getNextElement($e64486f09b43651c$var$_tmpl$3),
|
|
5854
5925
|
_el$2 = _el$.firstChild,
|
|
5855
5926
|
_el$3 = _el$2.nextSibling;
|
|
5856
|
-
var _ref$ = $9HbP8$
|
|
5927
|
+
var _ref$ = $9HbP8$catchify1(element => {
|
|
5857
5928
|
const disconnect = (0, $9HbP8$observer).onexists(element, ({
|
|
5858
5929
|
element: element
|
|
5859
5930
|
}) => {
|
|
@@ -6027,7 +6098,7 @@ function $8560c919ff763930$var$actualSetupModal() {
|
|
|
6027
6098
|
(0, $90980bd87c9960f9$export$3064e1e8c6513da3).add(history_key);
|
|
6028
6099
|
const actually_close_modal_ = () => set_history_value(false);
|
|
6029
6100
|
const owner = $9HbP8$getOwner();
|
|
6030
|
-
$9HbP8$
|
|
6101
|
+
$9HbP8$catchify1(async () => {
|
|
6031
6102
|
const {
|
|
6032
6103
|
open_modal_: open_modal_,
|
|
6033
6104
|
close_modal_: close_modal_
|
|
@@ -6105,15 +6176,15 @@ function $6bb0a0c563dff4bb$export$6c6d7a51fa9aa15d(props) {
|
|
|
6105
6176
|
$9HbP8$insert(details_, [summary_, $9HbP8$createComponent(ExpandingContainer, {
|
|
6106
6177
|
children: children
|
|
6107
6178
|
})], null);
|
|
6108
|
-
if (!$9HbP8$untrack(is_in_dom)) (0, $9HbP8$observer).wait_for_element(details_).then($9HbP8$
|
|
6109
|
-
$9HbP8$createEffect($9HbP8$
|
|
6179
|
+
if (!$9HbP8$untrack(is_in_dom)) (0, $9HbP8$observer).wait_for_element(details_).then($9HbP8$catchify1(() => set_is_in_dom(true)));
|
|
6180
|
+
$9HbP8$createEffect($9HbP8$catchify1(async () => {
|
|
6110
6181
|
const is_open = is_open_memo();
|
|
6111
6182
|
if (!is_in_dom())
|
|
6112
6183
|
// wait with setting state until we're in DOM, animation won't work otherwise
|
|
6113
6184
|
return;
|
|
6114
6185
|
if (dont_animate_if_instant_open_ && fresh_component && !timeout_started) {
|
|
6115
6186
|
timeout_started = true;
|
|
6116
|
-
setTimeout($9HbP8$
|
|
6187
|
+
setTimeout($9HbP8$catchify1(() => fresh_component = false));
|
|
6117
6188
|
}
|
|
6118
6189
|
if (is_open) {
|
|
6119
6190
|
details_.open = true; // open up the toggle so the animation can happen
|
|
@@ -6121,10 +6192,10 @@ function $6bb0a0c563dff4bb$export$6c6d7a51fa9aa15d(props) {
|
|
|
6121
6192
|
await expand(0, do_duration);
|
|
6122
6193
|
} else {
|
|
6123
6194
|
const animation = await collapse();
|
|
6124
|
-
animation?.addEventListener("finish", $9HbP8$
|
|
6195
|
+
animation?.addEventListener("finish", $9HbP8$catchify1(() => details_.open = false));
|
|
6125
6196
|
}
|
|
6126
6197
|
}));
|
|
6127
|
-
details_.addEventListener("toggle", $9HbP8$
|
|
6198
|
+
details_.addEventListener("toggle", $9HbP8$catchify1(() => {
|
|
6128
6199
|
const {
|
|
6129
6200
|
open: open
|
|
6130
6201
|
} = details_;
|
|
@@ -6134,11 +6205,11 @@ function $6bb0a0c563dff4bb$export$6c6d7a51fa9aa15d(props) {
|
|
|
6134
6205
|
}) // in case someone somehow toggles it without us intercepting it at least follow suit
|
|
6135
6206
|
);
|
|
6136
6207
|
|
|
6137
|
-
summary_.addEventListener("click", $9HbP8$
|
|
6208
|
+
summary_.addEventListener("click", $9HbP8$catchify1(ev => {
|
|
6138
6209
|
ev.preventDefault();
|
|
6139
6210
|
toggle();
|
|
6140
6211
|
}));
|
|
6141
|
-
summary_.addEventListener("keydown", $9HbP8$
|
|
6212
|
+
summary_.addEventListener("keydown", $9HbP8$catchify1(ev => {
|
|
6142
6213
|
const {
|
|
6143
6214
|
key: key
|
|
6144
6215
|
} = ev;
|
|
@@ -6177,7 +6248,7 @@ function $bf52d9f9eebd1938$export$5196e4c01fa56fcb({
|
|
|
6177
6248
|
}) {
|
|
6178
6249
|
let close_toast_;
|
|
6179
6250
|
const stay_open_promise = new Promise(r => close_toast_ = r);
|
|
6180
|
-
$9HbP8$
|
|
6251
|
+
$9HbP8$catchify1(async () => {
|
|
6181
6252
|
const closing_animation_duration = 300; // ms
|
|
6182
6253
|
const element = (() => {
|
|
6183
6254
|
var _el$ = $9HbP8$getNextElement($bf52d9f9eebd1938$var$_tmpl$);
|
|
@@ -6188,8 +6259,8 @@ function $bf52d9f9eebd1938$export$5196e4c01fa56fcb({
|
|
|
6188
6259
|
})();
|
|
6189
6260
|
const [, set_is_showing_toast] = $bf52d9f9eebd1938$export$22970a0140fc759c;
|
|
6190
6261
|
// 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$
|
|
6262
|
+
for (const ev of ["pointerover", "focusin"]) element.addEventListener(ev, $9HbP8$catchify1(() => closing_animation.pause()));
|
|
6263
|
+
for (const ev of ["pointerout", "focusout"]) element.addEventListener(ev, $9HbP8$catchify1(() => closing_animation.play()));
|
|
6193
6264
|
const body = await (0, $9HbP8$observer).wait_for_element("body");
|
|
6194
6265
|
const x_translate = "translateX(-50%) ";
|
|
6195
6266
|
let remove_keyboard_listener;
|
|
@@ -6214,7 +6285,7 @@ function $bf52d9f9eebd1938$export$5196e4c01fa56fcb({
|
|
|
6214
6285
|
// let other toasts close us if they open while we're still here
|
|
6215
6286
|
$bf52d9f9eebd1938$var$closing_functions.add(close_toast_);
|
|
6216
6287
|
set_is_showing_toast(true);
|
|
6217
|
-
const handler = $9HbP8$
|
|
6288
|
+
const handler = $9HbP8$catchify1(({
|
|
6218
6289
|
key: key
|
|
6219
6290
|
}) => {
|
|
6220
6291
|
if (key === "Escape")
|
|
@@ -6326,7 +6397,7 @@ function $e9342fb3ac73a54a$export$8895d39404bd2bb1(props) {
|
|
|
6326
6397
|
var _el$2 = $9HbP8$getNextElement($e9342fb3ac73a54a$var$_tmpl$2),
|
|
6327
6398
|
_el$3 = _el$2.firstChild,
|
|
6328
6399
|
_el$4 = _el$3.nextSibling;
|
|
6329
|
-
$9HbP8$addEventListener(_el$3, "click", $9HbP8$
|
|
6400
|
+
$9HbP8$addEventListener(_el$3, "click", $9HbP8$catchify1(() => {
|
|
6330
6401
|
set_selected_filters(previous_selected_filters);
|
|
6331
6402
|
set_expanded_hierarchical_filters(previous_expanded_hierarchical_filters);
|
|
6332
6403
|
if (previousExpandedFilters) expanded_filters_?.[1](previousExpandedFilters);
|
|
@@ -6403,7 +6474,7 @@ function $1adfe60f3a14a1d7$export$fecbb157621501bd({
|
|
|
6403
6474
|
get children() {
|
|
6404
6475
|
return [(() => {
|
|
6405
6476
|
var _el$6 = $9HbP8$getNextElement($1adfe60f3a14a1d7$var$_tmpl$);
|
|
6406
|
-
$9HbP8$addEventListener(_el$6, "click", $9HbP8$
|
|
6477
|
+
$9HbP8$addEventListener(_el$6, "click", $9HbP8$catchify1(() =>
|
|
6407
6478
|
// click event handlers don't have an owner, carry it over
|
|
6408
6479
|
$9HbP8$runWithOwner(owner, () => $e9342fb3ac73a54a$export$8895d39404bd2bb1({
|
|
6409
6480
|
selected_filters_: selected_filters_,
|
|
@@ -6585,7 +6656,7 @@ function $1adfe60f3a14a1d7$export$fecbb157621501bd({
|
|
|
6585
6656
|
_el$28 = _el$26.firstChild,
|
|
6586
6657
|
[_el$29, _co$10] = $9HbP8$getNextMarker(_el$28.nextSibling),
|
|
6587
6658
|
_el$27 = _el$29.nextSibling;
|
|
6588
|
-
$9HbP8$addEventListener(_el$26, "click", $9HbP8$
|
|
6659
|
+
$9HbP8$addEventListener(_el$26, "click", $9HbP8$catchify1(() => {
|
|
6589
6660
|
const to_remove = selected_data();
|
|
6590
6661
|
const cloned_selected_filters = [...read_selected_filters()];
|
|
6591
6662
|
cloned_selected_filters.splice(index_in_selected_filters, 1);
|
|
@@ -6641,9 +6712,9 @@ function $1adfe60f3a14a1d7$export$fecbb157621501bd({
|
|
|
6641
6712
|
});
|
|
6642
6713
|
const [is_in_dom, set_is_in_dom] = $9HbP8$createSignal(document.documentElement.contains(outmost_element));
|
|
6643
6714
|
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$
|
|
6715
|
+
if (!$9HbP8$untrack(is_in_dom)) (0, $9HbP8$observer).wait_for_element(outmost_element).then($9HbP8$catchify1(() => set_is_in_dom(true)));
|
|
6645
6716
|
outmost_element.classList.add("selected-filters");
|
|
6646
|
-
$9HbP8$createEffect($9HbP8$
|
|
6717
|
+
$9HbP8$createEffect($9HbP8$catchify1(async () => {
|
|
6647
6718
|
if (!is_in_dom())
|
|
6648
6719
|
// wait with setting state until we're in DOM, animation won't work otherwise
|
|
6649
6720
|
return;
|
|
@@ -6680,7 +6751,7 @@ const $49b79728e7d9e2a1$export$48513f6b9f8ce62d = props => {
|
|
|
6680
6751
|
// 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
6752
|
// 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
6753
|
// Why it can't be done instantaneously I don't know.
|
|
6683
|
-
input_el.addEventListener("change", $9HbP8$
|
|
6754
|
+
input_el.addEventListener("change", $9HbP8$catchify1(() => requestAnimationFrame($9HbP8$catchify1(() => {
|
|
6684
6755
|
if (input_el.checked !== checked()) input_el.checked = checked();
|
|
6685
6756
|
}))));
|
|
6686
6757
|
props.input_ref_?.(input_el);
|
|
@@ -6739,7 +6810,7 @@ function $67b173f9db427028$export$ca21a16d65b3dd8({
|
|
|
6739
6810
|
_el$3 = _el$.firstChild,
|
|
6740
6811
|
[_el$4, _co$] = $9HbP8$getNextMarker(_el$3.nextSibling),
|
|
6741
6812
|
_el$2 = _el$4.nextSibling;
|
|
6742
|
-
$9HbP8$addEventListener(_el$, "click", $9HbP8$
|
|
6813
|
+
$9HbP8$addEventListener(_el$, "click", $9HbP8$catchify1(() => set_show_extras(p => !p)), true);
|
|
6743
6814
|
$9HbP8$insert(_el$, $9HbP8$createComponent((0, $f8a56ba74eedd0c6$export$f21ab0717a89c77f), {}), _el$4, _co$);
|
|
6744
6815
|
$9HbP8$insert(_el$2, (() => {
|
|
6745
6816
|
var _c$ = $9HbP8$memo(() => !!get_show_extras());
|
|
@@ -6852,7 +6923,7 @@ function $a4601e6bea3ed1e6$export$dd948f91abc3a1c4({
|
|
|
6852
6923
|
}) : []);
|
|
6853
6924
|
});
|
|
6854
6925
|
$9HbP8$onCleanup(() => set_view_more_button_below_group_());
|
|
6855
|
-
$9HbP8$createEffect($9HbP8$
|
|
6926
|
+
$9HbP8$createEffect($9HbP8$catchify1(async () => {
|
|
6856
6927
|
if (!togglable_rest()) {
|
|
6857
6928
|
await collapse();
|
|
6858
6929
|
return;
|
|
@@ -6865,7 +6936,7 @@ function $a4601e6bea3ed1e6$export$dd948f91abc3a1c4({
|
|
|
6865
6936
|
[_el$3, _co$] = $9HbP8$getNextMarker(_el$2.nextSibling),
|
|
6866
6937
|
_el$4 = _el$3.nextSibling,
|
|
6867
6938
|
[_el$5, _co$2] = $9HbP8$getNextMarker(_el$4.nextSibling);
|
|
6868
|
-
$9HbP8$addEventListener(_el$, "change", $9HbP8$
|
|
6939
|
+
$9HbP8$addEventListener(_el$, "change", $9HbP8$catchify1(() => {
|
|
6869
6940
|
const set_filter = existing_filter();
|
|
6870
6941
|
const {
|
|
6871
6942
|
field: field,
|
|
@@ -6940,7 +7011,7 @@ function $eb8d9bf3b5700c26$export$430444115f70a734({
|
|
|
6940
7011
|
_el$9 = _el$3.nextSibling,
|
|
6941
7012
|
[_el$10, _co$2] = $9HbP8$getNextMarker(_el$9.nextSibling);
|
|
6942
7013
|
$9HbP8$setAttribute(_el$2, "for", random_selector);
|
|
6943
|
-
$9HbP8$addEventListener(_el$4, "change", $9HbP8$
|
|
7014
|
+
$9HbP8$addEventListener(_el$4, "change", $9HbP8$catchify1(() => {
|
|
6944
7015
|
const filter_object = {
|
|
6945
7016
|
op: filter_().op,
|
|
6946
7017
|
field: filter_().field,
|
|
@@ -7029,7 +7100,7 @@ function $a6b08770e164eced$export$e0d834a0ad870cda({
|
|
|
7029
7100
|
});
|
|
7030
7101
|
$9HbP8$createComputed(() => {
|
|
7031
7102
|
clearTimeout(debounce_timeout);
|
|
7032
|
-
debounce_timeout = setTimeout($9HbP8$
|
|
7103
|
+
debounce_timeout = setTimeout($9HbP8$catchify1(range => $9HbP8$untrack(() => {
|
|
7033
7104
|
const default_data = defaultRange();
|
|
7034
7105
|
const filter_object = {
|
|
7035
7106
|
op: filter_().op,
|
|
@@ -7107,20 +7178,20 @@ function $a6b08770e164eced$var$RangeSelector({
|
|
|
7107
7178
|
[_el$22, _co$6] = $9HbP8$getNextMarker(_el$21.nextSibling);
|
|
7108
7179
|
var _ref$ = price_input_1;
|
|
7109
7180
|
typeof _ref$ === "function" ? $9HbP8$use(_ref$, _el$4) : price_input_1 = _el$4;
|
|
7110
|
-
$9HbP8$addEventListener(_el$4, "keydown", $9HbP8$
|
|
7181
|
+
$9HbP8$addEventListener(_el$4, "keydown", $9HbP8$catchify1(({
|
|
7111
7182
|
key: key
|
|
7112
7183
|
}) => {
|
|
7113
7184
|
if (key === "Enter") $a6b08770e164eced$var$set_range_with_sanitation(min_, max_, current_range_, 0, price_input_1);
|
|
7114
7185
|
}), true);
|
|
7115
|
-
$9HbP8$addEventListener(_el$4, "blur", $9HbP8$
|
|
7186
|
+
$9HbP8$addEventListener(_el$4, "blur", $9HbP8$catchify1(() => $a6b08770e164eced$var$set_range_with_sanitation(min_, max_, current_range_, 0, price_input_1)));
|
|
7116
7187
|
var _ref$2 = price_input_2;
|
|
7117
7188
|
typeof _ref$2 === "function" ? $9HbP8$use(_ref$2, _el$7) : price_input_2 = _el$7;
|
|
7118
|
-
$9HbP8$addEventListener(_el$7, "keydown", $9HbP8$
|
|
7189
|
+
$9HbP8$addEventListener(_el$7, "keydown", $9HbP8$catchify1(({
|
|
7119
7190
|
key: key
|
|
7120
7191
|
}) => {
|
|
7121
7192
|
if (key === "Enter") $a6b08770e164eced$var$set_range_with_sanitation(min_, max_, current_range_, 1, price_input_2);
|
|
7122
7193
|
}), true);
|
|
7123
|
-
$9HbP8$addEventListener(_el$7, "blur", $9HbP8$
|
|
7194
|
+
$9HbP8$addEventListener(_el$7, "blur", $9HbP8$catchify1(() => $a6b08770e164eced$var$set_range_with_sanitation(min_, max_, current_range_, 1, price_input_2)));
|
|
7124
7195
|
$9HbP8$insert(_el$, $9HbP8$createComponent($a6b08770e164eced$var$ExponentialSlider, {
|
|
7125
7196
|
max_: max_,
|
|
7126
7197
|
min_: min_,
|
|
@@ -7260,7 +7331,7 @@ function $a6b08770e164eced$var$LinearSlider({
|
|
|
7260
7331
|
return [(() => {
|
|
7261
7332
|
var _el$25 = $9HbP8$getNextElement($a6b08770e164eced$var$_tmpl$2),
|
|
7262
7333
|
_el$26 = _el$25.firstChild;
|
|
7263
|
-
$9HbP8$addEventListener(_el$25, "click", $9HbP8$
|
|
7334
|
+
$9HbP8$addEventListener(_el$25, "click", $9HbP8$catchify1(e => {
|
|
7264
7335
|
const rect = clickable_slider.getBoundingClientRect();
|
|
7265
7336
|
const slider_beginning_left = rect.left;
|
|
7266
7337
|
const slider_width = rect.width;
|
|
@@ -7286,12 +7357,12 @@ function $a6b08770e164eced$var$LinearSlider({
|
|
|
7286
7357
|
range_input_1 = el;
|
|
7287
7358
|
set_value(range_input_1, 0);
|
|
7288
7359
|
}, _el$28);
|
|
7289
|
-
$9HbP8$addEventListener(_el$28, "input", $9HbP8$
|
|
7360
|
+
$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
7361
|
$9HbP8$use(el => {
|
|
7291
7362
|
range_input_2 = el;
|
|
7292
7363
|
set_value(range_input_2, 1);
|
|
7293
7364
|
}, _el$29);
|
|
7294
|
-
$9HbP8$addEventListener(_el$29, "input", $9HbP8$
|
|
7365
|
+
$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
7366
|
$9HbP8$effect(_p$ => {
|
|
7296
7367
|
var _v$10 = should_be_disabled_(),
|
|
7297
7368
|
_v$11 = i18n_.range_filter_low_point_aria_label_(),
|
|
@@ -7737,7 +7808,7 @@ function $1c8cac76cb67e9af$export$a32086fa6616eafd({
|
|
|
7737
7808
|
}
|
|
7738
7809
|
while (execute_when_structure_finished.length) execute_when_structure_finished.pop()();
|
|
7739
7810
|
$1c8cac76cb67e9af$var$expand_until_choice(data_structure);
|
|
7740
|
-
$9HbP8$
|
|
7811
|
+
$9HbP8$dlog1("CheckboxHierarchicalFilter: Recomputed structured_categories", data_structure);
|
|
7741
7812
|
return data_structure;
|
|
7742
7813
|
});
|
|
7743
7814
|
const some_top_level_are_hidden = $9HbP8$createMemo(() => Object.keys(structured_categories()).length > $1c8cac76cb67e9af$var$max_visible_without_collapsing);
|
|
@@ -7767,7 +7838,7 @@ function $1c8cac76cb67e9af$export$a32086fa6616eafd({
|
|
|
7767
7838
|
}) : []);
|
|
7768
7839
|
});
|
|
7769
7840
|
$9HbP8$onCleanup(() => set_view_more_button_below_group());
|
|
7770
|
-
$9HbP8$createEffect($9HbP8$
|
|
7841
|
+
$9HbP8$createEffect($9HbP8$catchify1(async () => {
|
|
7771
7842
|
if (!some_top_level_are_hidden()) {
|
|
7772
7843
|
await collapse();
|
|
7773
7844
|
return;
|
|
@@ -7845,7 +7916,7 @@ function $1c8cac76cb67e9af$var$render_stuff(data, existing_filter, i18n_, filter
|
|
|
7845
7916
|
return value()?.is_checked_?.[0]?.() ?? false;
|
|
7846
7917
|
},
|
|
7847
7918
|
input_ref_: input => {
|
|
7848
|
-
input.addEventListener("change", $9HbP8$
|
|
7919
|
+
input.addEventListener("change", $9HbP8$catchify1(() => $9HbP8$untrack(() => {
|
|
7849
7920
|
const {
|
|
7850
7921
|
checked: checked
|
|
7851
7922
|
} = input;
|
|
@@ -7934,7 +8005,7 @@ function $1c8cac76cb67e9af$var$batching_filter_state_syncer(props) {
|
|
|
7934
8005
|
existing_filter_: existing_filter_
|
|
7935
8006
|
} = props;
|
|
7936
8007
|
let sync_queued = false;
|
|
7937
|
-
const sync_fn = $9HbP8$
|
|
8008
|
+
const sync_fn = $9HbP8$catchify1(async () => {
|
|
7938
8009
|
sync_queued = false;
|
|
7939
8010
|
// 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
8011
|
const set_filter = existing_filter_();
|
|
@@ -7958,7 +8029,7 @@ function $1c8cac76cb67e9af$var$batching_filter_state_syncer(props) {
|
|
|
7958
8029
|
...base_object,
|
|
7959
8030
|
data: data
|
|
7960
8031
|
};
|
|
7961
|
-
$9HbP8$
|
|
8032
|
+
$9HbP8$dlog1("CheckboxHierarchicalFilter: Updating API state", filter_object);
|
|
7962
8033
|
const selected_filters = [...selected_filters_[0]()];
|
|
7963
8034
|
if (set_filter) selected_filters.splice(selected_filters.indexOf(set_filter), 1);
|
|
7964
8035
|
if (filter_object.data.length) selected_filters.push(filter_object);
|
|
@@ -7991,13 +8062,13 @@ function $1c8cac76cb67e9af$var$create_updating_signal({
|
|
|
7991
8062
|
$9HbP8$createComputed($9HbP8$on(read_checked, trigger_sync_, {
|
|
7992
8063
|
defer: true
|
|
7993
8064
|
}));
|
|
7994
|
-
$9HbP8$createComputed($9HbP8$on(read_checked, $9HbP8$
|
|
8065
|
+
$9HbP8$createComputed($9HbP8$on(read_checked, $9HbP8$catchify1(new_value => {
|
|
7995
8066
|
if (updating_blocked) return;
|
|
7996
8067
|
for (const child of child_objects) child.is_checked_[1](new_value);
|
|
7997
8068
|
}), {
|
|
7998
8069
|
defer: true
|
|
7999
8070
|
}));
|
|
8000
|
-
$9HbP8$createEffect($9HbP8$on(get_child_object_values, $9HbP8$
|
|
8071
|
+
$9HbP8$createEffect($9HbP8$on(get_child_object_values, $9HbP8$catchify1(() => {
|
|
8001
8072
|
const all_kids_checked = get_child_object_values.every(accessor => accessor());
|
|
8002
8073
|
if (all_kids_checked === read_checked()) return;
|
|
8003
8074
|
updating_blocked = true;
|
|
@@ -8183,7 +8254,7 @@ const $93716a9ad0dea854$export$414f6a19d38e655c = ({
|
|
|
8183
8254
|
};
|
|
8184
8255
|
},
|
|
8185
8256
|
get onClick() {
|
|
8186
|
-
return $9HbP8$
|
|
8257
|
+
return $9HbP8$catchify1(() => {
|
|
8187
8258
|
const set_filter = existing_filter();
|
|
8188
8259
|
const {
|
|
8189
8260
|
field: field,
|
|
@@ -8466,7 +8537,7 @@ function $e731d52d97444b7c$export$82ed4b28ecb67608({
|
|
|
8466
8537
|
}) : []);
|
|
8467
8538
|
});
|
|
8468
8539
|
$9HbP8$onCleanup(() => set_view_more_button_below_group_());
|
|
8469
|
-
$9HbP8$createEffect($9HbP8$
|
|
8540
|
+
$9HbP8$createEffect($9HbP8$catchify1(async () => {
|
|
8470
8541
|
if (!togglable_rest()) {
|
|
8471
8542
|
await collapse();
|
|
8472
8543
|
set_having_expanding_in_dom(false); // Once animation has finished, remove expanding from DOM
|
|
@@ -8481,7 +8552,7 @@ function $e731d52d97444b7c$export$82ed4b28ecb67608({
|
|
|
8481
8552
|
[_el$3, _co$] = $9HbP8$getNextMarker(_el$2.nextSibling),
|
|
8482
8553
|
_el$4 = _el$3.nextSibling,
|
|
8483
8554
|
[_el$5, _co$2] = $9HbP8$getNextMarker(_el$4.nextSibling);
|
|
8484
|
-
$9HbP8$addEventListener(_el$, "change", $9HbP8$
|
|
8555
|
+
$9HbP8$addEventListener(_el$, "change", $9HbP8$catchify1(() => {
|
|
8485
8556
|
const set_filter = existing_filter();
|
|
8486
8557
|
const {
|
|
8487
8558
|
field: field,
|
|
@@ -8997,7 +9068,7 @@ function $fab07f52c9861732$var$ActualFilterBody(props) {
|
|
|
8997
9068
|
_el$11 = _el$9.firstChild,
|
|
8998
9069
|
[_el$12, _co$3] = $9HbP8$getNextMarker(_el$11.nextSibling),
|
|
8999
9070
|
_el$10 = _el$12.nextSibling;
|
|
9000
|
-
$9HbP8$addEventListener(_el$9, "click", $9HbP8$
|
|
9071
|
+
$9HbP8$addEventListener(_el$9, "click", $9HbP8$catchify1(() => {
|
|
9001
9072
|
const new_filter_obj = [...props.selected_filters_[0]()];
|
|
9002
9073
|
for (const filter of filter_array_()) {
|
|
9003
9074
|
const index = new_filter_obj.findIndex(({
|
|
@@ -9063,7 +9134,7 @@ function $fab07f52c9861732$var$ActualFilterBody(props) {
|
|
|
9063
9134
|
},
|
|
9064
9135
|
get children() {
|
|
9065
9136
|
var _el$29 = $9HbP8$getNextElement($fab07f52c9861732$var$_tmpl$8);
|
|
9066
|
-
$9HbP8$addEventListener(_el$29, "click", $9HbP8$
|
|
9137
|
+
$9HbP8$addEventListener(_el$29, "click", $9HbP8$catchify1(() => $e9342fb3ac73a54a$export$8895d39404bd2bb1({
|
|
9067
9138
|
user_triggered_: true,
|
|
9068
9139
|
selected_filters_: props.selected_filters_,
|
|
9069
9140
|
i18n_: props.i18n_,
|
|
@@ -9232,13 +9303,13 @@ async function $a0f0e923bad68a9b$export$58e808b1db15d3bc(options) {
|
|
|
9232
9303
|
headers: headers
|
|
9233
9304
|
} : {}),
|
|
9234
9305
|
method: "POST"
|
|
9235
|
-
}).catch(e => $9HbP8$
|
|
9306
|
+
}).catch(e => $9HbP8$dlog1("fetch_retry threw", e)).then(async maybe_response => {
|
|
9236
9307
|
if (!maybe_response) return [];
|
|
9237
9308
|
let decoded;
|
|
9238
9309
|
try {
|
|
9239
9310
|
decoded = await maybe_response.json();
|
|
9240
9311
|
} catch (e) {
|
|
9241
|
-
$9HbP8$
|
|
9312
|
+
$9HbP8$dlog1("Failed to decode JSON", e);
|
|
9242
9313
|
}
|
|
9243
9314
|
return decoded?.displays || [];
|
|
9244
9315
|
});
|
|
@@ -9296,7 +9367,7 @@ const $a6e23a834336fc19$export$824dde41348efed1 = /*@__PURE__*/(() => {
|
|
|
9296
9367
|
|
|
9297
9368
|
const observe_to_signal = (element, setter) => {
|
|
9298
9369
|
const computed_style = getComputedStyle(element);
|
|
9299
|
-
const resize_observer = new ResizeObserver($9HbP8$
|
|
9370
|
+
const resize_observer = new ResizeObserver($9HbP8$catchify1(() => {
|
|
9300
9371
|
setter(element.getBoundingClientRect().width + parseFloat(computed_style.marginLeft) + parseFloat(computed_style.marginRight) + parseFloat(computed_style.borderRightWidth) + parseFloat(computed_style.borderLeftWidth));
|
|
9301
9372
|
}));
|
|
9302
9373
|
resize_observer.observe(element);
|
|
@@ -9350,7 +9421,7 @@ async function $4b2134398dfa83fa$export$c1a6b039e689a58e(merchant, market, local
|
|
|
9350
9421
|
const in_ls = localStorage[localstorage_key];
|
|
9351
9422
|
if (in_ls) localstorage_value = JSON.parse(in_ls);
|
|
9352
9423
|
} catch (e) {
|
|
9353
|
-
$9HbP8$
|
|
9424
|
+
$9HbP8$dlog1("Failed parsing JSON from localStorage", e);
|
|
9354
9425
|
}
|
|
9355
9426
|
const updated = localstorage_value?.updated;
|
|
9356
9427
|
const now = +new Date();
|
|
@@ -9394,12 +9465,12 @@ async function $4b2134398dfa83fa$var$download_categories(merchant, market, local
|
|
|
9394
9465
|
if (!fetched) return [];
|
|
9395
9466
|
try {
|
|
9396
9467
|
if (fetched.status !== 200) {
|
|
9397
|
-
$9HbP8$
|
|
9468
|
+
$9HbP8$dlog1("failed to fetch queries, server responded with", fetched.status, fetched, await fetched.text());
|
|
9398
9469
|
return [];
|
|
9399
9470
|
}
|
|
9400
9471
|
return await fetched.json();
|
|
9401
9472
|
} catch (e) {
|
|
9402
|
-
$9HbP8$
|
|
9473
|
+
$9HbP8$dlog1("failed to decode queries json", fetched, e);
|
|
9403
9474
|
return [];
|
|
9404
9475
|
}
|
|
9405
9476
|
}
|
|
@@ -9529,9 +9600,9 @@ class $7fa23e2a0079eca4$export$e015ed2f2950f2e3 {
|
|
|
9529
9600
|
return this.#cache_objs[endpoint] ||= {
|
|
9530
9601
|
in_progress_: {},
|
|
9531
9602
|
cache_: {},
|
|
9532
|
-
finalization_registry_: this.#supports_finalization_registry ? new FinalizationRegistry($9HbP8$
|
|
9603
|
+
finalization_registry_: this.#supports_finalization_registry ? new FinalizationRegistry($9HbP8$catchify1(key => {
|
|
9533
9604
|
const our_cache = this.#cache_objs[endpoint].cache_;
|
|
9534
|
-
$9HbP8$
|
|
9605
|
+
$9HbP8$dlog1("[Search API]: removing", key, "from", our_cache);
|
|
9535
9606
|
delete our_cache[key];
|
|
9536
9607
|
})) : undefined
|
|
9537
9608
|
};
|
|
@@ -9677,11 +9748,11 @@ class $7fa23e2a0079eca4$export$e015ed2f2950f2e3 {
|
|
|
9677
9748
|
result = $e5014ccd0b76d9f4$export$967e966fca9515e(result);
|
|
9678
9749
|
cache_obj.cache_[body] = new WeakRef(result);
|
|
9679
9750
|
resolve_in_progress(result);
|
|
9680
|
-
setTimeout($9HbP8$
|
|
9751
|
+
setTimeout($9HbP8$catchify1(() => {
|
|
9681
9752
|
if (this.#supports_finalization_registry) cache_obj.finalization_registry_.register(result, body); // delete key from cache when value (WeakRefs) are collected
|
|
9682
9753
|
else
|
|
9683
9754
|
// delete things from cache after 5 minutes, so it doesn't get too heavy
|
|
9684
|
-
setTimeout($9HbP8$
|
|
9755
|
+
setTimeout($9HbP8$catchify1(() => delete cache_obj.cache_[body]), 300000);
|
|
9685
9756
|
}), 60000 // cache values for at least 60 seconds
|
|
9686
9757
|
);
|
|
9687
9758
|
|
|
@@ -9811,7 +9882,7 @@ function $ccd5db07a3a069c5$export$477caf01aecaeb2a(options) {
|
|
|
9811
9882
|
const [get_selected_filters_, set_selected_filters] = selected_filters_;
|
|
9812
9883
|
const [get_has_sideways_filter_clearing_flag_, set_has_sideways_filter_clearing_flag] = sideways_filter_clearing_flag_;
|
|
9813
9884
|
const [get_current_href, set_current_href] = $9HbP8$createSignal(globalThis?.location?.href ?? "https://example.com");
|
|
9814
|
-
const history_change_handler = $9HbP8$
|
|
9885
|
+
const history_change_handler = $9HbP8$catchify1(() => set_current_href(location.href));
|
|
9815
9886
|
const owner = $9HbP8$getOwner() || $9HbP8$createRoot(() => $9HbP8$getOwner());
|
|
9816
9887
|
const {
|
|
9817
9888
|
sorting_query_param_: sorting_query_param_,
|
|
@@ -9852,7 +9923,7 @@ function $ccd5db07a3a069c5$export$477caf01aecaeb2a(options) {
|
|
|
9852
9923
|
if (override_listing_id_query_param_names_) {
|
|
9853
9924
|
const found_override_listing_id = override_listing_id_query_param_names_.map(n => searchParams.get(n)).find(n => n);
|
|
9854
9925
|
set_override_listing_id(found_override_listing_id || null);
|
|
9855
|
-
if (found_override_listing_id) $9HbP8$
|
|
9926
|
+
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
9927
|
}
|
|
9857
9928
|
|
|
9858
9929
|
if (hash === (0, $4147651646da990a$export$84daa4fa1471698b)) set_has_sideways_filter_clearing_flag(true);
|
|
@@ -10075,7 +10146,7 @@ function $897bd4a76f611b38$export$d757d54550ebfb3d({
|
|
|
10075
10146
|
_el$2 = _el$.firstChild,
|
|
10076
10147
|
_el$4 = _el$2.nextSibling,
|
|
10077
10148
|
[_el$5, _co$] = $9HbP8$getNextMarker(_el$4.nextSibling);
|
|
10078
|
-
$9HbP8$addEventListener(_el$, "click", $9HbP8$
|
|
10149
|
+
$9HbP8$addEventListener(_el$, "click", $9HbP8$catchify1(e => {
|
|
10079
10150
|
router_.navigate_.go_to_({
|
|
10080
10151
|
new_url_: category_suggestion_().page_url,
|
|
10081
10152
|
is_replace_: false,
|
|
@@ -10228,7 +10299,7 @@ function $48d7e4a9707315b6$export$e026af0c7b64ea5f({
|
|
|
10228
10299
|
}, {
|
|
10229
10300
|
defer: true
|
|
10230
10301
|
}));
|
|
10231
|
-
$9HbP8$createComputed($9HbP8$on(get_search_query_, $9HbP8$
|
|
10302
|
+
$9HbP8$createComputed($9HbP8$on(get_search_query_, $9HbP8$catchify1(() => {
|
|
10232
10303
|
// when a query was submitted, clear filters if clear was pressed before
|
|
10233
10304
|
const clear_value = $9HbP8$untrack(get_clear_filters_next_submit);
|
|
10234
10305
|
if (clear_value) {
|
|
@@ -10255,11 +10326,11 @@ function $21f51c14cb3f586f$export$84bba84a7b837187(read_search_query) {
|
|
|
10255
10326
|
const key = "depict_searches";
|
|
10256
10327
|
const previous_searches = $9HbP8$createSignal(JSON.parse(ls[key] || "[]"));
|
|
10257
10328
|
const [read_previous_searches, write_previous_searches] = previous_searches;
|
|
10258
|
-
$9HbP8$createEffect($9HbP8$
|
|
10329
|
+
$9HbP8$createEffect($9HbP8$catchify1(() => {
|
|
10259
10330
|
const json_encoded = JSON.stringify(read_previous_searches());
|
|
10260
10331
|
if (ls[key] !== json_encoded) ls[key] = json_encoded;
|
|
10261
10332
|
}));
|
|
10262
|
-
$9HbP8$createComputed($9HbP8$
|
|
10333
|
+
$9HbP8$createComputed($9HbP8$catchify1(() => {
|
|
10263
10334
|
const searches = $9HbP8$untrack(read_previous_searches);
|
|
10264
10335
|
const current_query = read_search_query();
|
|
10265
10336
|
if (!current_query)
|
|
@@ -10302,7 +10373,7 @@ async function $bfd908d13d90934c$export$e16630ecb9644a1c({
|
|
|
10302
10373
|
after_submit_?.();
|
|
10303
10374
|
}
|
|
10304
10375
|
function $8f9120a1ca151e6a$export$205efb947c7ffd78(handler, passive = true, override_element) {
|
|
10305
|
-
const catchified_handler = $9HbP8$
|
|
10376
|
+
const catchified_handler = $9HbP8$catchify1(handler);
|
|
10306
10377
|
const owner = $9HbP8$getOwner();
|
|
10307
10378
|
// 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
10379
|
// Use observer in case that this gets called before body exists
|
|
@@ -10344,7 +10415,7 @@ function $d68658730065de95$export$181cceed5c91919e(callback, alsoRaF, passiveLis
|
|
|
10344
10415
|
$9HbP8$createEffect(() => {
|
|
10345
10416
|
if (alsoRaF?.()) {
|
|
10346
10417
|
let disposed = false;
|
|
10347
|
-
const fn = $9HbP8$
|
|
10418
|
+
const fn = $9HbP8$catchify1(() => {
|
|
10348
10419
|
if (disposed) return;
|
|
10349
10420
|
probablyCallCallback();
|
|
10350
10421
|
requestAnimationFrame(fn);
|
|
@@ -10357,10 +10428,10 @@ function $d68658730065de95$export$181cceed5c91919e(callback, alsoRaF, passiveLis
|
|
|
10357
10428
|
// "resize" doesn't fire sometimes when it should, also it doesn't when showing/hiding scrollbars which disabling scrolling does
|
|
10358
10429
|
// this works
|
|
10359
10430
|
// keeping resize just in case
|
|
10360
|
-
const resize_resize_observer = new ResizeObserver($9HbP8$
|
|
10431
|
+
const resize_resize_observer = new ResizeObserver($9HbP8$catchify1(probablyCallCallback));
|
|
10361
10432
|
resize_resize_observer.observe(document.documentElement);
|
|
10362
10433
|
(0, $9HbP8$observer).wait_for_element("body").then(resize_resize_observer.observe.bind(resize_resize_observer));
|
|
10363
|
-
$9HbP8$onCleanup($9HbP8$
|
|
10434
|
+
$9HbP8$onCleanup($9HbP8$catchify1(() => resize_resize_observer.disconnect()));
|
|
10364
10435
|
return probablyCallCallback;
|
|
10365
10436
|
}
|
|
10366
10437
|
const $b6d5529b253681aa$export$3f238c96c45e6cc6 = 1;
|
|
@@ -10391,7 +10462,7 @@ function $b6d5529b253681aa$export$b3ad617e9036868({
|
|
|
10391
10462
|
}, pollAlignment);
|
|
10392
10463
|
let ro;
|
|
10393
10464
|
if (alignment & $b6d5529b253681aa$export$902f8b4a7dae5d78 || alignment & $b6d5529b253681aa$export$5097308c5200105a) {
|
|
10394
|
-
ro = new ResizeObserver($9HbP8$
|
|
10465
|
+
ro = new ResizeObserver($9HbP8$catchify1(records => {
|
|
10395
10466
|
records.forEach(({
|
|
10396
10467
|
contentRect: {
|
|
10397
10468
|
width: width
|
|
@@ -10414,7 +10485,7 @@ function $b6d5529b253681aa$export$b3ad617e9036868({
|
|
|
10414
10485
|
}));
|
|
10415
10486
|
ro.observe(input_field);
|
|
10416
10487
|
}
|
|
10417
|
-
$9HbP8$onCleanup($9HbP8$
|
|
10488
|
+
$9HbP8$onCleanup($9HbP8$catchify1(() => ro?.disconnect()));
|
|
10418
10489
|
return ensureAlignedPosition;
|
|
10419
10490
|
}
|
|
10420
10491
|
const $fc5a12f3a857ca30$var$get_available_range = (available_filters_, search_for_field) => {
|
|
@@ -10620,7 +10691,7 @@ function $6db49ca163afa2c3$export$83fd5de5504a7a67({
|
|
|
10620
10691
|
fill: "forwards",
|
|
10621
10692
|
easing: "ease-in-out"
|
|
10622
10693
|
});
|
|
10623
|
-
animation.addEventListener("finish", $9HbP8$
|
|
10694
|
+
animation.addEventListener("finish", $9HbP8$catchify1(() => {
|
|
10624
10695
|
if (unpermit_when_possible) set_permitted_to_show(false);
|
|
10625
10696
|
animation = undefined;
|
|
10626
10697
|
element.style.display = "none";
|
|
@@ -10681,7 +10752,7 @@ function $598245ecfe38f34b$export$ef6006467f04ee41({
|
|
|
10681
10752
|
},
|
|
10682
10753
|
get children() {
|
|
10683
10754
|
var _el$3 = $9HbP8$getNextElement($598245ecfe38f34b$var$_tmpl$);
|
|
10684
|
-
$9HbP8$addEventListener(_el$3, "click", $9HbP8$
|
|
10755
|
+
$9HbP8$addEventListener(_el$3, "click", $9HbP8$catchify1(() => $9HbP8$runWithOwner(root, () => $e9342fb3ac73a54a$export$8895d39404bd2bb1({
|
|
10685
10756
|
user_triggered_: true,
|
|
10686
10757
|
selected_filters_: selected_filters_,
|
|
10687
10758
|
also_clear_sorting_: false,
|
|
@@ -10723,7 +10794,7 @@ function $056f6ac0a6caa919$export$5e4aed86c12acdd9({
|
|
|
10723
10794
|
is_first_load = true;
|
|
10724
10795
|
});
|
|
10725
10796
|
// 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$
|
|
10797
|
+
$9HbP8$createEffect($9HbP8$catchify1(async () => {
|
|
10727
10798
|
const be_above_percentage = is_first_load ? 50 : 75; // if first load, load earlier
|
|
10728
10799
|
if (percentage_in_view_() < be_above_percentage || is_loading_more) return;
|
|
10729
10800
|
if (!get_last_cursor()) {
|
|
@@ -11451,7 +11522,7 @@ function $f8c929beb82c512b$export$9dd50d35b9d94fdf({
|
|
|
11451
11522
|
number_of_results_: number_of_results_,
|
|
11452
11523
|
type: type
|
|
11453
11524
|
}) {
|
|
11454
|
-
const contents = $9HbP8$createMemo($9HbP8$
|
|
11525
|
+
const contents = $9HbP8$createMemo($9HbP8$catchify1(() => {
|
|
11455
11526
|
const q = get_search_query_();
|
|
11456
11527
|
return i18n_[type === $f8c929beb82c512b$export$2452208c79fe93ea.content ? "get_showing_pages_for_" : "get_showing_results_for_"]()((() => {
|
|
11457
11528
|
var _el$ = $9HbP8$getNextElement($f8c929beb82c512b$var$_tmpl$);
|
|
@@ -11533,7 +11604,7 @@ function $68a258a92b88f02f$export$1f1775a58da589b5({
|
|
|
11533
11604
|
_el$13 = _el$12.nextSibling,
|
|
11534
11605
|
_el$14 = _el$13.nextSibling,
|
|
11535
11606
|
[_el$15, _co$2] = $9HbP8$getNextMarker(_el$14.nextSibling);
|
|
11536
|
-
$9HbP8$addEventListener(_el$12, "change", $9HbP8$
|
|
11607
|
+
$9HbP8$addEventListener(_el$12, "change", $9HbP8$catchify1(() => set_current_sorting(item())));
|
|
11537
11608
|
$9HbP8$setAttribute(_el$12, "name", title_radio_name);
|
|
11538
11609
|
$9HbP8$insert(_el$11, () => item().meta.title, _el$15, _co$2);
|
|
11539
11610
|
$9HbP8$effect(() => $9HbP8$setProperty(_el$12, "checked", is_checked()));
|
|
@@ -11562,7 +11633,7 @@ function $68a258a92b88f02f$export$1f1775a58da589b5({
|
|
|
11562
11633
|
_el$19 = _el$18.nextSibling,
|
|
11563
11634
|
_el$20 = _el$19.nextSibling,
|
|
11564
11635
|
[_el$21, _co$3] = $9HbP8$getNextMarker(_el$20.nextSibling);
|
|
11565
|
-
$9HbP8$addEventListener(_el$18, "change", $9HbP8$
|
|
11636
|
+
$9HbP8$addEventListener(_el$18, "change", $9HbP8$catchify1(() => set_current_sorting(c => c && {
|
|
11566
11637
|
...c,
|
|
11567
11638
|
order: order_value()
|
|
11568
11639
|
})));
|
|
@@ -11656,7 +11727,7 @@ function $757dac7f7c6c5241$export$9bf11afa910f536e({
|
|
|
11656
11727
|
set_search_sorting_open(true);
|
|
11657
11728
|
}
|
|
11658
11729
|
});
|
|
11659
|
-
$9HbP8$onCleanup($9HbP8$
|
|
11730
|
+
$9HbP8$onCleanup($9HbP8$catchify1(() => {
|
|
11660
11731
|
if (!sorting_expanded() && !filters_expanded()) {
|
|
11661
11732
|
set_search_filters_open(false);
|
|
11662
11733
|
set_search_sorting_open(false);
|
|
@@ -11688,16 +11759,16 @@ function $757dac7f7c6c5241$export$9bf11afa910f536e({
|
|
|
11688
11759
|
_el$12 = _el$14.nextSibling;
|
|
11689
11760
|
$9HbP8$use(el => {
|
|
11690
11761
|
background = el;
|
|
11691
|
-
(0, $9HbP8$observer).wait_for_element(el).then($9HbP8$
|
|
11762
|
+
(0, $9HbP8$observer).wait_for_element(el).then($9HbP8$catchify1(() => {
|
|
11692
11763
|
set_background_style("transition", "all 200ms ease-in");
|
|
11693
11764
|
// For some reason this needs a requestAnimationFrame but the other modal-opening animations don't
|
|
11694
|
-
requestAnimationFrame($9HbP8$
|
|
11765
|
+
requestAnimationFrame($9HbP8$catchify1(() => set_background_style("opacity", "1")));
|
|
11695
11766
|
}));
|
|
11696
11767
|
}, _el$2);
|
|
11697
11768
|
$9HbP8$addEventListener(_el$2, "click", dismiss_modal_, true);
|
|
11698
11769
|
$9HbP8$use(el => {
|
|
11699
11770
|
dismiss_button = el;
|
|
11700
|
-
(0, $9HbP8$observer).wait_for_element(el).then($9HbP8$
|
|
11771
|
+
(0, $9HbP8$observer).wait_for_element(el).then($9HbP8$catchify1(() => {
|
|
11701
11772
|
set_button_style("transition", "all 200ms ease-in");
|
|
11702
11773
|
set_button_fraction_in(1);
|
|
11703
11774
|
}));
|
|
@@ -11710,11 +11781,11 @@ function $757dac7f7c6c5241$export$9bf11afa910f536e({
|
|
|
11710
11781
|
}) => {
|
|
11711
11782
|
// touchstart should always only have one changed touch, track it here
|
|
11712
11783
|
if (touches >= 1) {
|
|
11713
|
-
$9HbP8$
|
|
11784
|
+
$9HbP8$dlog1("Got new touch", changedTouches, "ignoring"); // only support 1 touch for now
|
|
11714
11785
|
return;
|
|
11715
11786
|
}
|
|
11716
11787
|
if (target.closest($757dac7f7c6c5241$var$no_go_selector) || target.matches($757dac7f7c6c5241$var$no_go_selector)) {
|
|
11717
|
-
$9HbP8$
|
|
11788
|
+
$9HbP8$dlog1("Got touch on slider, ignoring for UX", target, changedTouches);
|
|
11718
11789
|
return;
|
|
11719
11790
|
}
|
|
11720
11791
|
set_modal_style("transition", "unset");
|
|
@@ -11730,7 +11801,7 @@ function $757dac7f7c6c5241$export$9bf11afa910f536e({
|
|
|
11730
11801
|
let last_move_page_y = start_page_y;
|
|
11731
11802
|
let first_move_was_downwards = false;
|
|
11732
11803
|
let distance_from_start_of_gesture = 0;
|
|
11733
|
-
const end_handler = $9HbP8$
|
|
11804
|
+
const end_handler = $9HbP8$catchify1(e => {
|
|
11734
11805
|
const changedTouches = e?.changedTouches;
|
|
11735
11806
|
if (changedTouches && changedTouches[0].identifier !== our_fingers_identifier)
|
|
11736
11807
|
// other finger stopped touch, ignore it
|
|
@@ -11754,7 +11825,7 @@ function $757dac7f7c6c5241$export$9bf11afa910f536e({
|
|
|
11754
11825
|
modal.removeEventListener("touchcancel", end_handler);
|
|
11755
11826
|
modal.removeEventListener("touchmove", move_handler);
|
|
11756
11827
|
});
|
|
11757
|
-
const move_handler = $9HbP8$
|
|
11828
|
+
const move_handler = $9HbP8$catchify1(e => {
|
|
11758
11829
|
const {
|
|
11759
11830
|
changedTouches: changedTouches
|
|
11760
11831
|
} = e;
|
|
@@ -11804,7 +11875,7 @@ function $757dac7f7c6c5241$export$9bf11afa910f536e({
|
|
|
11804
11875
|
};
|
|
11805
11876
|
$9HbP8$use(el => {
|
|
11806
11877
|
modal = el;
|
|
11807
|
-
(0, $9HbP8$observer).wait_for_element(el).then($9HbP8$
|
|
11878
|
+
(0, $9HbP8$observer).wait_for_element(el).then($9HbP8$catchify1(() => {
|
|
11808
11879
|
set_modal_style("transition", "all 200ms ease-in");
|
|
11809
11880
|
set_modal_style("transform", "translateY(0)");
|
|
11810
11881
|
}));
|
|
@@ -11893,7 +11964,7 @@ function $757dac7f7c6c5241$export$9bf11afa910f536e({
|
|
|
11893
11964
|
},
|
|
11894
11965
|
get children() {
|
|
11895
11966
|
var _el$11 = $9HbP8$getNextElement($757dac7f7c6c5241$var$_tmpl$);
|
|
11896
|
-
$9HbP8$addEventListener(_el$11, "click", $9HbP8$
|
|
11967
|
+
$9HbP8$addEventListener(_el$11, "click", $9HbP8$catchify1(() => {
|
|
11897
11968
|
const show_toast = $e9342fb3ac73a54a$export$8895d39404bd2bb1({
|
|
11898
11969
|
user_triggered_: true,
|
|
11899
11970
|
expanded_hierarchical_filters_: args_for_filtering_.expanded_hierarchical_filters_,
|
|
@@ -11903,7 +11974,7 @@ function $757dac7f7c6c5241$export$9bf11afa910f536e({
|
|
|
11903
11974
|
also_clear_sorting_: false,
|
|
11904
11975
|
delay_toast_: true
|
|
11905
11976
|
});
|
|
11906
|
-
cleanup_promise.then($9HbP8$
|
|
11977
|
+
cleanup_promise.then($9HbP8$catchify1(show_toast));
|
|
11907
11978
|
}), true);
|
|
11908
11979
|
$9HbP8$insert(_el$11, () => i18n_.clear_individual_filter_());
|
|
11909
11980
|
$9HbP8$runHydrationEvents();
|
|
@@ -11978,7 +12049,7 @@ function $cdea4cf8c5c071ef$export$d7841e452f2e59a8({
|
|
|
11978
12049
|
const [sorting_open, set_sorting_open] = search_sorting_open_;
|
|
11979
12050
|
const [get_current_sorting_] = current_sorting_;
|
|
11980
12051
|
const [is_small, set_is_small] = $9HbP8$createSignal(false);
|
|
11981
|
-
const dismiss_modal_ = $9HbP8$
|
|
12052
|
+
const dismiss_modal_ = $9HbP8$catchify1(() => {
|
|
11982
12053
|
set_filters_open(false);
|
|
11983
12054
|
set_sorting_open(false);
|
|
11984
12055
|
});
|
|
@@ -12072,7 +12143,7 @@ function $cdea4cf8c5c071ef$export$d7841e452f2e59a8({
|
|
|
12072
12143
|
})());
|
|
12073
12144
|
}
|
|
12074
12145
|
});
|
|
12075
|
-
$9HbP8$
|
|
12146
|
+
$9HbP8$catchify1(async () => {
|
|
12076
12147
|
({
|
|
12077
12148
|
open_modal_: open_modal_,
|
|
12078
12149
|
close_modal_: close_modal_
|
|
@@ -12162,7 +12233,7 @@ function $cdea4cf8c5c071ef$var$OpenFiltersButton({
|
|
|
12162
12233
|
return _el$15;
|
|
12163
12234
|
}
|
|
12164
12235
|
}), _el$21, _co$5);
|
|
12165
|
-
$9HbP8$addEventListener(_el$16, "click", $9HbP8$
|
|
12236
|
+
$9HbP8$addEventListener(_el$16, "click", $9HbP8$catchify1(() => $9HbP8$batch(() => {
|
|
12166
12237
|
if (search_filters_open_[0]()) {
|
|
12167
12238
|
search_filters_open_[1](false);
|
|
12168
12239
|
return;
|
|
@@ -12228,7 +12299,7 @@ function $cdea4cf8c5c071ef$var$OpenSortingButton({
|
|
|
12228
12299
|
_el$23 = _el$22.firstChild,
|
|
12229
12300
|
_el$24 = _el$23.nextSibling,
|
|
12230
12301
|
[_el$25, _co$6] = $9HbP8$getNextMarker(_el$24.nextSibling);
|
|
12231
|
-
$9HbP8$addEventListener(_el$22, "click", $9HbP8$
|
|
12302
|
+
$9HbP8$addEventListener(_el$22, "click", $9HbP8$catchify1(() => $9HbP8$batch(() => {
|
|
12232
12303
|
if (search_sorting_open_[0]()) {
|
|
12233
12304
|
search_sorting_open_[1](false);
|
|
12234
12305
|
return;
|
|
@@ -12335,7 +12406,7 @@ function $0b0380f75d729d63$var$ActualFloatingButtons({
|
|
|
12335
12406
|
}
|
|
12336
12407
|
old_pos = new_pos;
|
|
12337
12408
|
});
|
|
12338
|
-
const touchstart_handler = $9HbP8$
|
|
12409
|
+
const touchstart_handler = $9HbP8$catchify1(e => {
|
|
12339
12410
|
is_in_touch_scroll = true;
|
|
12340
12411
|
if (e.touches.length === 1) {
|
|
12341
12412
|
// 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 +12414,12 @@ function $0b0380f75d729d63$var$ActualFloatingButtons({
|
|
|
12343
12414
|
diff_over_second_or_touch = 0;
|
|
12344
12415
|
}
|
|
12345
12416
|
});
|
|
12346
|
-
const touchend_handler = $9HbP8$
|
|
12417
|
+
const touchend_handler = $9HbP8$catchify1(e => {
|
|
12347
12418
|
if (e.touches.length === 0)
|
|
12348
12419
|
// scroll gesture of any type (pinch can also be used as scroll, etc.) ended
|
|
12349
12420
|
inertia_timeout = setTimeout(
|
|
12350
12421
|
// inertia ends after 500ms (educated guess)
|
|
12351
|
-
$9HbP8$
|
|
12422
|
+
$9HbP8$catchify1(() => {
|
|
12352
12423
|
is_in_touch_scroll = false;
|
|
12353
12424
|
diff_over_second_or_touch = 0;
|
|
12354
12425
|
}), 500);
|
|
@@ -12366,9 +12437,9 @@ function $0b0380f75d729d63$var$ActualFloatingButtons({
|
|
|
12366
12437
|
const everything_closed = !get_search_filters_open_() && !get_search_sorting_open_();
|
|
12367
12438
|
if (!$9HbP8$untrack(modal_is_closed) && everything_closed)
|
|
12368
12439
|
// I think the point of this is to delay the animation a bit IIRC
|
|
12369
|
-
timeout = setTimeout($9HbP8$
|
|
12440
|
+
timeout = setTimeout($9HbP8$catchify1(() => set_if_modal_is_closed(true)), 200);else set_if_modal_is_closed(everything_closed);
|
|
12370
12441
|
});
|
|
12371
|
-
$9HbP8$createComputed($9HbP8$
|
|
12442
|
+
$9HbP8$createComputed($9HbP8$catchify1(async () => {
|
|
12372
12443
|
const element = sort_and_filter_element_();
|
|
12373
12444
|
if (!element) return;
|
|
12374
12445
|
await (0, $9HbP8$observer).wait_for_element(element);
|
|
@@ -12387,12 +12458,12 @@ function $0b0380f75d729d63$var$ActualFloatingButtons({
|
|
|
12387
12458
|
_el$5 = _el$4.firstChild,
|
|
12388
12459
|
_el$6 = _el$4.nextSibling,
|
|
12389
12460
|
_el$7 = _el$6.firstChild;
|
|
12390
|
-
$9HbP8$addEventListener(_el$2, "click", $9HbP8$
|
|
12461
|
+
$9HbP8$addEventListener(_el$2, "click", $9HbP8$catchify1(() => {
|
|
12391
12462
|
set_search_filters_open_(true);
|
|
12392
12463
|
set_search_sorting_open_(false);
|
|
12393
12464
|
}), true);
|
|
12394
12465
|
$9HbP8$insert(_el$3, $9HbP8$createComponent((0, $b9bf7fce0ae60241$export$28f6150e232898de), {}));
|
|
12395
|
-
$9HbP8$addEventListener(_el$4, "click", $9HbP8$
|
|
12466
|
+
$9HbP8$addEventListener(_el$4, "click", $9HbP8$catchify1(() => {
|
|
12396
12467
|
set_search_filters_open_(false);
|
|
12397
12468
|
set_search_sorting_open_(true);
|
|
12398
12469
|
}), true);
|
|
@@ -12400,7 +12471,7 @@ function $0b0380f75d729d63$var$ActualFloatingButtons({
|
|
|
12400
12471
|
var _c$ = $9HbP8$memo(() => current_sorting_[0]()?.order === "asc");
|
|
12401
12472
|
return () => _c$() ? $9HbP8$createComponent((0, $e1bb71e65e01a3a0$export$da32f7add8a22e86), {}) : $9HbP8$createComponent((0, $05fbe84eb34564ec$export$d10e63059ddb9fd4), {});
|
|
12402
12473
|
})());
|
|
12403
|
-
$9HbP8$addEventListener(_el$6, "click", $9HbP8$
|
|
12474
|
+
$9HbP8$addEventListener(_el$6, "click", $9HbP8$catchify1(() => scrollTo({
|
|
12404
12475
|
top: 0,
|
|
12405
12476
|
behavior: "smooth"
|
|
12406
12477
|
})), true);
|
|
@@ -12432,7 +12503,7 @@ function $587cd61972788655$export$210f130a61ac1e8d(fn) {
|
|
|
12432
12503
|
let last_queued;
|
|
12433
12504
|
let last_value;
|
|
12434
12505
|
let initial_run = true;
|
|
12435
|
-
$9HbP8$createComputed($9HbP8$
|
|
12506
|
+
$9HbP8$createComputed($9HbP8$catchify1(async () => {
|
|
12436
12507
|
last_value = fn();
|
|
12437
12508
|
if (initial_run) {
|
|
12438
12509
|
initial_run = false;
|
|
@@ -12479,7 +12550,7 @@ function $641bba2917fe862b$export$6e49da55e449af7c({
|
|
|
12479
12550
|
}]); // get rid of old data the browser saves the old state and will restore it later on
|
|
12480
12551
|
};
|
|
12481
12552
|
|
|
12482
|
-
$9HbP8$createComputed($9HbP8$
|
|
12553
|
+
$9HbP8$createComputed($9HbP8$catchify1(() => {
|
|
12483
12554
|
const last_result = get_last_result_in_viewport_();
|
|
12484
12555
|
if (last_result == undefined || last_result <= 0 || last_result == Infinity) return;
|
|
12485
12556
|
if (isNaN(last_result)) {
|
|
@@ -12506,7 +12577,7 @@ function $641bba2917fe862b$export$6e49da55e449af7c({
|
|
|
12506
12577
|
set_to_later = last_result;
|
|
12507
12578
|
// If a delayed push timeout is already running, just changing the value that will be pushed is sufficient
|
|
12508
12579
|
if (timeout) return;
|
|
12509
|
-
timeout = setTimeout($9HbP8$
|
|
12580
|
+
timeout = setTimeout($9HbP8$catchify1(() => {
|
|
12510
12581
|
timeout = undefined;
|
|
12511
12582
|
last_time_history_changed = +new Date();
|
|
12512
12583
|
set_min_results_loaded(set_to_later);
|
|
@@ -12610,7 +12681,7 @@ function $b2bf2cdcff8142d8$export$f631859cab12b342({
|
|
|
12610
12681
|
if (!result) return;
|
|
12611
12682
|
return {
|
|
12612
12683
|
href: result.page_url,
|
|
12613
|
-
onClick: $9HbP8$
|
|
12684
|
+
onClick: $9HbP8$catchify1(ev => router_.navigate_.go_to_({
|
|
12614
12685
|
new_url_: result.page_url,
|
|
12615
12686
|
is_replace_: false,
|
|
12616
12687
|
event_: ev
|
|
@@ -13019,7 +13090,7 @@ function $0e562a5b247b1fc2$export$44f738469d5570cf({
|
|
|
13019
13090
|
// We might only have changed the left position which align_field doesn't know about, make it poll the position for a while
|
|
13020
13091
|
setPollAlignment_(true);
|
|
13021
13092
|
if (disableResizePollingTimeout) clearTimeout(disableResizePollingTimeout);
|
|
13022
|
-
disableResizePollingTimeout = setTimeout($9HbP8$
|
|
13093
|
+
disableResizePollingTimeout = setTimeout($9HbP8$catchify1(() => {
|
|
13023
13094
|
setPollAlignment_(false);
|
|
13024
13095
|
disableResizePollingTimeout = undefined;
|
|
13025
13096
|
}), 1000);
|
|
@@ -13151,7 +13222,7 @@ function $7097477c78a89208$export$a54ec244c8863715({
|
|
|
13151
13222
|
} : {})
|
|
13152
13223
|
};
|
|
13153
13224
|
});
|
|
13154
|
-
const [search_results_] = $9HbP8$createResource(search_query_base_, $9HbP8$
|
|
13225
|
+
const [search_results_] = $9HbP8$createResource(search_query_base_, $9HbP8$catchify1(async base_query => {
|
|
13155
13226
|
set_all_products_loaded(false);
|
|
13156
13227
|
// only first page of results
|
|
13157
13228
|
return await $641bba2917fe862b$export$cc42dd29bf655ab6({
|
|
@@ -13190,7 +13261,7 @@ function $7097477c78a89208$export$a54ec244c8863715({
|
|
|
13190
13261
|
const [, setModalFieldStyle] = modal_field_style;
|
|
13191
13262
|
const [, setModalBackdropStyle] = modal_backdrop_style;
|
|
13192
13263
|
const [get_search_field_elements, set_search_field_elements] = $9HbP8$createSignal();
|
|
13193
|
-
const SafeSearchField = $9HbP8$
|
|
13264
|
+
const SafeSearchField = $9HbP8$catchify1((0, $5285d2814d0fac0c$export$b94867ecbd698f21));
|
|
13194
13265
|
const [sort_or_filter_open_, set_sort_or_filter_open_] = $9HbP8$createSignal(false);
|
|
13195
13266
|
const [desktop_filter_elements_, set_desktop_filter_elements] = $9HbP8$createSignal();
|
|
13196
13267
|
const n_hits = $9HbP8$createMemo(() => search_results_()?.n_hits);
|
|
@@ -13249,7 +13320,7 @@ function $7097477c78a89208$export$a54ec244c8863715({
|
|
|
13249
13320
|
})()));
|
|
13250
13321
|
}).remove);
|
|
13251
13322
|
$2ab89d64b7f1d5ef$export$d31a1a1a83ad9413(search_results_, selected_filters_);
|
|
13252
|
-
$9HbP8$
|
|
13323
|
+
$9HbP8$catchify1((0, $641bba2917fe862b$export$6e49da55e449af7c))({
|
|
13253
13324
|
scroll_restoration_data_: scroll_restoration_data_,
|
|
13254
13325
|
last_result_in_viewport_: last_result_in_viewport_,
|
|
13255
13326
|
id_: get_search_query_,
|
|
@@ -13295,8 +13366,8 @@ function $7097477c78a89208$export$a54ec244c8863715({
|
|
|
13295
13366
|
setModalBodyStyle({});
|
|
13296
13367
|
modalAlignmentSignalsRef_?.(alignmentSignals_);
|
|
13297
13368
|
const [pollAlignment, setPollAlignment_] = $9HbP8$createSignal(false);
|
|
13298
|
-
const align_position = $9HbP8$
|
|
13299
|
-
div_with_field_class.addEventListener("click", $9HbP8$
|
|
13369
|
+
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);
|
|
13370
|
+
div_with_field_class.addEventListener("click", $9HbP8$catchify1(e => {
|
|
13300
13371
|
const target = e.target;
|
|
13301
13372
|
const sel = ".submit";
|
|
13302
13373
|
if (target?.matches?.(sel) || target?.closest?.(sel))
|
|
@@ -13674,7 +13745,7 @@ class $806c97b931758897$export$ac6237957a15b3f0 {
|
|
|
13674
13745
|
BackIcon_: BackIcon_
|
|
13675
13746
|
});
|
|
13676
13747
|
$90980bd87c9960f9$export$5162a71f252e6122();
|
|
13677
|
-
$9HbP8$
|
|
13748
|
+
$9HbP8$catchify1(async () => {
|
|
13678
13749
|
const {
|
|
13679
13750
|
open_modal_: open_modal_,
|
|
13680
13751
|
close_modal_: close_modal_
|
|
@@ -13915,7 +13986,7 @@ function $806c97b931758897$export$f2dc7e4e4aa11abb(props) {
|
|
|
13915
13986
|
function $4ca91518c9a35379$export$828dcdd425fd3231(aligner) {
|
|
13916
13987
|
const style_element = document.createElement("style");
|
|
13917
13988
|
document.head.append(style_element);
|
|
13918
|
-
const resize_observer = new ResizeObserver($9HbP8$
|
|
13989
|
+
const resize_observer = new ResizeObserver($9HbP8$catchify1(() => {
|
|
13919
13990
|
const styles = $926b1b5ba2239356$export$1233ca167bf71f9a({
|
|
13920
13991
|
".depict.plp .depict-search-modal .search-field": {
|
|
13921
13992
|
"height": `${aligner?.clientHeight}px`
|
|
@@ -13984,7 +14055,7 @@ const $6891c018a834cfdd$export$d86a33413558014e = openModalParams => {
|
|
|
13984
14055
|
}, dispose_aligner];
|
|
13985
14056
|
};
|
|
13986
14057
|
function $6e8944558258054f$export$d0596b5cae35ad4(open_search) {
|
|
13987
|
-
const handler = $9HbP8$
|
|
14058
|
+
const handler = $9HbP8$catchify1(e => {
|
|
13988
14059
|
const {
|
|
13989
14060
|
key: key,
|
|
13990
14061
|
target: target
|
|
@@ -14003,7 +14074,7 @@ function $6e8944558258054f$export$d0596b5cae35ad4(open_search) {
|
|
|
14003
14074
|
function $6936724b9e0b98d5$export$689e204eadb33baf(pr) {
|
|
14004
14075
|
let old_url;
|
|
14005
14076
|
let disconnect_link_observer;
|
|
14006
|
-
const link_handler = $9HbP8$
|
|
14077
|
+
const link_handler = $9HbP8$catchify1(e => {
|
|
14007
14078
|
const link = e.currentTarget || e.target;
|
|
14008
14079
|
if (link.href === old_url) {
|
|
14009
14080
|
history.pushState(history.state, "", link.href);
|
|
@@ -14012,7 +14083,7 @@ function $6936724b9e0b98d5$export$689e204eadb33baf(pr) {
|
|
|
14012
14083
|
});
|
|
14013
14084
|
let remove_added_listeners;
|
|
14014
14085
|
let resolve_remove_added_listeners;
|
|
14015
|
-
pr.addEventListener("open", $9HbP8$
|
|
14086
|
+
pr.addEventListener("open", $9HbP8$catchify1(() => {
|
|
14016
14087
|
remove_added_listeners = new Promise(r => resolve_remove_added_listeners = r);
|
|
14017
14088
|
disconnect_link_observer = (0, $9HbP8$observer).onexists("a", async ({
|
|
14018
14089
|
element: element
|
|
@@ -14022,11 +14093,11 @@ function $6936724b9e0b98d5$export$689e204eadb33baf(pr) {
|
|
|
14022
14093
|
element.removeEventListener("click", link_handler);
|
|
14023
14094
|
});
|
|
14024
14095
|
}));
|
|
14025
|
-
pr.addEventListener("close", $9HbP8$
|
|
14096
|
+
pr.addEventListener("close", $9HbP8$catchify1(() => {
|
|
14026
14097
|
disconnect_link_observer?.();
|
|
14027
14098
|
resolve_remove_added_listeners?.();
|
|
14028
14099
|
}));
|
|
14029
|
-
$9HbP8$
|
|
14100
|
+
$9HbP8$catchify1(async () => {
|
|
14030
14101
|
for await (const href of (0, $9HbP8$href_change_ipns)) if (!pr.is_page_(new URL(href))) old_url = href;
|
|
14031
14102
|
})();
|
|
14032
14103
|
}
|
|
@@ -14038,7 +14109,7 @@ class $753e9b2889a47c89$export$3ccaa27d81dd8556 extends EventTarget {
|
|
|
14038
14109
|
static #reverting_permitted = true;
|
|
14039
14110
|
static #visited_urls = /*@__PURE__*/(() => {
|
|
14040
14111
|
// 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$
|
|
14112
|
+
$9HbP8$catchify1(async () => {
|
|
14042
14113
|
// Static initialization blocks aren't supported in MobileSafari yet, otherwise this would be one.
|
|
14043
14114
|
// 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
14115
|
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes/Static_initialization_blocks
|
|
@@ -14056,7 +14127,7 @@ class $753e9b2889a47c89$export$3ccaa27d81dd8556 extends EventTarget {
|
|
|
14056
14127
|
async #listen() {
|
|
14057
14128
|
const [exit_ipns, exitable_ipns] = $9HbP8$make_asyncIterable_exiter((0, $9HbP8$href_change_ipns));
|
|
14058
14129
|
this.#stop_listening = exit_ipns;
|
|
14059
|
-
const caught_page_check_fn = $9HbP8$
|
|
14130
|
+
const caught_page_check_fn = $9HbP8$catchify1(this.is_page_, "page check failed");
|
|
14060
14131
|
for await (const href of exitable_ipns) {
|
|
14061
14132
|
const url = new URL(href);
|
|
14062
14133
|
if (!caught_page_check_fn(url)) {
|
|
@@ -14074,17 +14145,17 @@ class $753e9b2889a47c89$export$3ccaa27d81dd8556 extends EventTarget {
|
|
|
14074
14145
|
this.addEventListener("close", dispose, {
|
|
14075
14146
|
once: true
|
|
14076
14147
|
});
|
|
14077
|
-
return $9HbP8$
|
|
14148
|
+
return $9HbP8$catchify1(this.render_, "rendering failed")() || [];
|
|
14078
14149
|
});
|
|
14079
14150
|
}
|
|
14080
|
-
#unload = /*@__PURE__*/$9HbP8$
|
|
14151
|
+
#unload = /*@__PURE__*/$9HbP8$catchify1(() => {
|
|
14081
14152
|
if (!this.#is_open) return;
|
|
14082
14153
|
this.#disconnect_observer?.();
|
|
14083
14154
|
if ($753e9b2889a47c89$export$3ccaa27d81dd8556.#reverting_permitted) while (this.#revert_fns.length) this.#revert_fns.pop()?.();
|
|
14084
14155
|
this.#is_open = false;
|
|
14085
14156
|
this.dispatchEvent(new CustomEvent("close"));
|
|
14086
14157
|
}, "failed to close page");
|
|
14087
|
-
#load = /*@__PURE__*/$9HbP8$
|
|
14158
|
+
#load = /*@__PURE__*/$9HbP8$catchify1(async els => {
|
|
14088
14159
|
this.#is_open = true;
|
|
14089
14160
|
// So that #load doesn't get called again
|
|
14090
14161
|
let set_should_stay_inserted;
|
|
@@ -14134,7 +14205,7 @@ class $753e9b2889a47c89$export$3ccaa27d81dd8556 extends EventTarget {
|
|
|
14134
14205
|
}, "failed to open page");
|
|
14135
14206
|
#empty_page_bugfix() {
|
|
14136
14207
|
// Called when a "page" is "opened" using PageReplacer
|
|
14137
|
-
const on_maybe_popstate = $9HbP8$
|
|
14208
|
+
const on_maybe_popstate = $9HbP8$catchify1(what_happened => {
|
|
14138
14209
|
if (what_happened !== "popstate") return;
|
|
14139
14210
|
const cleaned_current_url = $753e9b2889a47c89$var$clean_url(location.href);
|
|
14140
14211
|
if (!$753e9b2889a47c89$export$3ccaa27d81dd8556.#visited_urls.has(cleaned_current_url)) {
|
|
@@ -14158,7 +14229,7 @@ class $753e9b2889a47c89$export$3ccaa27d81dd8556 extends EventTarget {
|
|
|
14158
14229
|
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
14230
|
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
14231
|
*/
|
|
14161
|
-
$9HbP8$
|
|
14232
|
+
$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
14233
|
location.reload();
|
|
14163
14234
|
$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
14235
|
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 +14307,7 @@ function $58b3487626e85ece$export$316f6f283ae64765(props) {
|
|
|
14236
14307
|
field_: $9HbP8$createSignal({}),
|
|
14237
14308
|
backdrop_: backdropAlignmentSignal_
|
|
14238
14309
|
};
|
|
14239
|
-
const defaultHandler = $9HbP8$
|
|
14310
|
+
const defaultHandler = $9HbP8$catchify1(e => {
|
|
14240
14311
|
const {
|
|
14241
14312
|
modalVersionUsed_: modalVersionUsed_
|
|
14242
14313
|
} = shared_properties;
|
|
@@ -14367,7 +14438,7 @@ function $06edf3aec9073663$export$466cdc317043f6cb({
|
|
|
14367
14438
|
}];
|
|
14368
14439
|
$9HbP8$createComputed(() => {
|
|
14369
14440
|
if (place_holdey_quicklinks_data()?.[0]?.listing_id) {
|
|
14370
|
-
if (last_was_placeholder) queueMicrotask($9HbP8$
|
|
14441
|
+
if (last_was_placeholder) queueMicrotask($9HbP8$catchify1(() => {
|
|
14371
14442
|
sliding_element?.scrollTo({
|
|
14372
14443
|
left: 0
|
|
14373
14444
|
}); // for some reason we land one element to the right after placeholder rendering otherwise
|
|
@@ -14434,7 +14505,7 @@ function $06edf3aec9073663$export$466cdc317043f6cb({
|
|
|
14434
14505
|
} else if (!(intersecting_items_object[selected_index()]?.intersectionRatio >= 0.95)) {
|
|
14435
14506
|
// negated larger than to handle left side of comparison being undefined
|
|
14436
14507
|
let done_work = false;
|
|
14437
|
-
$9HbP8$runWithOwner(owner, () => $9HbP8$createComputed($9HbP8$
|
|
14508
|
+
$9HbP8$runWithOwner(owner, () => $9HbP8$createComputed($9HbP8$catchify1(() => {
|
|
14438
14509
|
if (done_work || !Array.isArray(quicklinks_data_())) return;
|
|
14439
14510
|
const sel_index = selected_index();
|
|
14440
14511
|
const target_element = sel_index >= 0 ? sel_index : 0;
|
|
@@ -14481,7 +14552,7 @@ function $06edf3aec9073663$export$466cdc317043f6cb({
|
|
|
14481
14552
|
}));
|
|
14482
14553
|
return (() => {
|
|
14483
14554
|
var _el$3 = $9HbP8$getNextElement($06edf3aec9073663$var$_tmpl$3);
|
|
14484
|
-
$9HbP8$addEventListener(_el$3, "click", $9HbP8$
|
|
14555
|
+
$9HbP8$addEventListener(_el$3, "click", $9HbP8$catchify1(ev => {
|
|
14485
14556
|
const url = href();
|
|
14486
14557
|
if (is_selected() && !$a281666e5c15c2ec$export$29d28dadc2d6b631(ev) || !url)
|
|
14487
14558
|
// allow open currently selected one in new tab but otherwise prevent clicks
|
|
@@ -14617,7 +14688,7 @@ function $e7fce80abe608e01$export$3945d6db2dfd3d12({
|
|
|
14617
14688
|
const handler = () => allow_filter_clearing = false;
|
|
14618
14689
|
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
14690
|
$9HbP8$onCleanup(() => window.removeEventListener("popstate", handler));
|
|
14620
|
-
$9HbP8$createEffect($9HbP8$on(crumb_data_, $9HbP8$
|
|
14691
|
+
$9HbP8$createEffect($9HbP8$on(crumb_data_, $9HbP8$catchify1(new_crumb_data => {
|
|
14621
14692
|
const id_of_new_data = id_to_query_for_();
|
|
14622
14693
|
const type_of_id_of_new_data = id_type_();
|
|
14623
14694
|
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 +14738,7 @@ function $e7fce80abe608e01$var$clear_if_opened_new_tab_with_sideways_url_params_
|
|
|
14667
14738
|
// 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
14739
|
if (!$9HbP8$untrack(get_sideways_filter_clearing_flag_)) return;
|
|
14669
14740
|
set_sideways_filter_clearing_flag_(false);
|
|
14670
|
-
$9HbP8$
|
|
14741
|
+
$9HbP8$dlog1("Flag to clear filters was set, clearing filters");
|
|
14671
14742
|
$9HbP8$queueMacroTask(() => {
|
|
14672
14743
|
// Do it next task so that all the filters have time to populate
|
|
14673
14744
|
$e9342fb3ac73a54a$export$8895d39404bd2bb1({
|
|
@@ -14792,7 +14863,7 @@ function $df5d81d0fe61ff21$export$f7d2f673fc2f091d({
|
|
|
14792
14863
|
// Make "Get products in listing" request to get products in listing
|
|
14793
14864
|
const [plp_products_] = $9HbP8$createResource(products_query_base_,
|
|
14794
14865
|
// 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$
|
|
14866
|
+
$9HbP8$catchify(base_query => $641bba2917fe862b$export$cc42dd29bf655ab6({
|
|
14796
14867
|
id_: $9HbP8$untrack(id_to_query_for_),
|
|
14797
14868
|
scroll_restoration_data_: scroll_restoration_data_,
|
|
14798
14869
|
min_products_to_fetch_: min_products_to_fetch_,
|
|
@@ -14812,7 +14883,7 @@ function $df5d81d0fe61ff21$export$f7d2f673fc2f091d({
|
|
|
14812
14883
|
id_type_: id_type_()
|
|
14813
14884
|
}));
|
|
14814
14885
|
// Make "Get Listing" request to get quicklinks, breadcrumbs, title, etc
|
|
14815
|
-
const [plp_meta] = $9HbP8$createResource(meta_query_base, $9HbP8$
|
|
14886
|
+
const [plp_meta] = $9HbP8$createResource(meta_query_base, $9HbP8$catchify(query => depict_api_.get_listing(query)));
|
|
14816
14887
|
const available_sortings_ = $9HbP8$createMemo(() => plp_products_()?.sorts?.map(sort => ({
|
|
14817
14888
|
...sort,
|
|
14818
14889
|
order: sort.order ?? "desc"
|
|
@@ -14931,7 +15002,7 @@ function $df5d81d0fe61ff21$export$f7d2f673fc2f091d({
|
|
|
14931
15002
|
filterModalParent_: filterModalParent_,
|
|
14932
15003
|
...extra_sort_and_filter_args_
|
|
14933
15004
|
});
|
|
14934
|
-
$9HbP8$
|
|
15005
|
+
$9HbP8$catchify((0, $641bba2917fe862b$export$6e49da55e449af7c))({
|
|
14935
15006
|
scroll_restoration_data_: scroll_restoration_data_,
|
|
14936
15007
|
last_result_in_viewport_: last_result_in_viewport_,
|
|
14937
15008
|
id_: id_to_query_for_,
|
|
@@ -14944,7 +15015,7 @@ function $df5d81d0fe61ff21$export$f7d2f673fc2f091d({
|
|
|
14944
15015
|
$9HbP8$createComputed(() => {
|
|
14945
15016
|
if (plp_products_.loading) set_can_write_scroll_restoration(false);else if (plp_products_()) set_can_write_scroll_restoration(true);
|
|
14946
15017
|
});
|
|
14947
|
-
$9HbP8$createRenderEffect($9HbP8$
|
|
15018
|
+
$9HbP8$createRenderEffect($9HbP8$catchify(async () => {
|
|
14948
15019
|
const slim = is_slim_();
|
|
14949
15020
|
const only_show_filters_opener = only_show_filters_opener_?.();
|
|
14950
15021
|
const owner = $9HbP8$getOwner();
|
|
@@ -15225,4 +15296,4 @@ function $442f32a4d80abbde$export$e2bf8ce7779e827e(props) {
|
|
|
15225
15296
|
}, "Entire CategoryPage failed");
|
|
15226
15297
|
}
|
|
15227
15298
|
$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, $
|
|
15299
|
+
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 };
|