@alfadocs/ui-kit-debug 1.77.0 → 1.77.1
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/dist/_chunks/{practice-results-By2BZFCz.js → practice-results-BnY2EkzI.js} +380 -384
- package/dist/_chunks/{practice-results-By2BZFCz.js.map → practice-results-BnY2EkzI.js.map} +1 -1
- package/dist/agent-catalog.json +1 -1
- package/dist/components/practice-results/index.js +1 -1
- package/dist/components/practice-results/practice-results.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/package.json +1 -1
|
@@ -1,37 +1,37 @@
|
|
|
1
|
-
import { jsx as t, jsxs as m, Fragment as
|
|
2
|
-
import { forwardRef as
|
|
3
|
-
import { c as
|
|
4
|
-
import { useTranslation as
|
|
1
|
+
import { jsx as t, jsxs as m, Fragment as st } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef as rt, useState as fe, useRef as T, useMemo as M, useImperativeHandle as ot, useCallback as $, useEffect as X } from "react";
|
|
3
|
+
import { c as K } from "./index-D2ZczOXr.js";
|
|
4
|
+
import { useTranslation as w } from "react-i18next";
|
|
5
5
|
import { A as ee } from "./alert-9kEwDza3.js";
|
|
6
6
|
import { A as Se } from "./avatar-BPiPL7ND.js";
|
|
7
7
|
import { B as te } from "./button-DohK_Ak_.js";
|
|
8
|
-
import { D as
|
|
9
|
-
import { E as
|
|
10
|
-
import { M as
|
|
8
|
+
import { D as O } from "./dropdown-menu-D1we7oAY.js";
|
|
9
|
+
import { E as lt } from "./empty-state-DwJ5YNzz.js";
|
|
10
|
+
import { M as ct } from "./map-view-C6MIVaqn.js";
|
|
11
11
|
import { R as Le } from "./rating-CGYpg5dj.js";
|
|
12
12
|
import { S as I } from "./sheet-uZZXaO_S.js";
|
|
13
|
-
import { S as
|
|
14
|
-
import { S as
|
|
15
|
-
import { B as
|
|
16
|
-
import { u as
|
|
17
|
-
import { b as
|
|
18
|
-
import { u as
|
|
19
|
-
import { c as
|
|
20
|
-
import { R as
|
|
13
|
+
import { S as dt } from "./skeleton-tTWJpvAq.js";
|
|
14
|
+
import { S as ut } from "./spinner-CoflYlEx.js";
|
|
15
|
+
import { B as D } from "./badge-BUk4RjTS.js";
|
|
16
|
+
import { u as mt } from "./use-media-query-CcAx5SMM.js";
|
|
17
|
+
import { b as pt } from "./format-price-BcFBa-WP.js";
|
|
18
|
+
import { u as ft } from "./registry-DvAUVLHh.js";
|
|
19
|
+
import { c as ht } from "./createLucideIcon-DhHxpK9K.js";
|
|
20
|
+
import { R as gt } from "./refresh-cw-DnI0cLFC.js";
|
|
21
21
|
import { C as Pe } from "./chevron-down-DWE7GSq9.js";
|
|
22
22
|
import { M as ae } from "./map-pin-BaY37-Km.js";
|
|
23
|
-
import { L as Ae, B as
|
|
23
|
+
import { L as Ae, B as vt } from "./languages-CZqBaPwI.js";
|
|
24
24
|
import { S as Me } from "./shield-check-DCJALLVh.js";
|
|
25
25
|
import { H as Te } from "./heart--qCA4ffe.js";
|
|
26
|
-
import { C as
|
|
27
|
-
import { C as
|
|
26
|
+
import { C as bt } from "./calendar-clock-hbObjfGY.js";
|
|
27
|
+
import { C as yt } from "./calendar-plus-BFrIRE4r.js";
|
|
28
28
|
/**
|
|
29
29
|
* @license lucide-react v1.22.0 - ISC
|
|
30
30
|
*
|
|
31
31
|
* This source code is licensed under the ISC license.
|
|
32
32
|
* See the LICENSE file in the root directory of this source tree.
|
|
33
33
|
*/
|
|
34
|
-
const
|
|
34
|
+
const xt = [
|
|
35
35
|
[
|
|
36
36
|
"path",
|
|
37
37
|
{
|
|
@@ -41,7 +41,7 @@ const yt = [
|
|
|
41
41
|
],
|
|
42
42
|
["path", { d: "M15 5.764v15", key: "1pn4in" }],
|
|
43
43
|
["path", { d: "M9 3.236v15", key: "1uimfh" }]
|
|
44
|
-
],
|
|
44
|
+
], kt = ht("map", xt), Ct = {
|
|
45
45
|
id: "practice-results",
|
|
46
46
|
// `scroll` backs scroll_to_result; `pick` backs focus_pin (a non-persisting
|
|
47
47
|
// pin highlight). The active variant is consumer-owned via props, so there is
|
|
@@ -120,15 +120,15 @@ const yt = [
|
|
|
120
120
|
description: 'Stable result id emitted on each rendered result card. Used by scroll_to_result / focus_pin to address a single result. The non-focusable card group is labelled by the practice-result-{id}-name heading, which contains data-component="practice-result-name-link": a visible link to result.href that navigates without firing onResultSelect or click telemetry. Each card also carries up to two CTA anchors: data-component="practice-result-open-cta" (practice page; absent when the consumer sets showCardOpenButton=false) and data-component="practice-result-book-cta" (booking flow; data-slot-aware="true" when it deep-links to a next slot). Card content carries its own read-only hooks: data-component="practice-result-tagline", data-component="practice-result-description", and data-component="practice-result-price" (the kit-formatted first-visit cost, present only when the practice set one).'
|
|
121
121
|
}
|
|
122
122
|
}
|
|
123
|
-
},
|
|
123
|
+
}, wt = 13, Rt = [
|
|
124
124
|
"distance",
|
|
125
125
|
"rating",
|
|
126
126
|
"next-available",
|
|
127
127
|
"relevance"
|
|
128
128
|
];
|
|
129
129
|
function Ie(e, n, a) {
|
|
130
|
-
const
|
|
131
|
-
return a.exists(
|
|
130
|
+
const r = `languages.${e}`;
|
|
131
|
+
return a.exists(r) ? n(r) : e.toUpperCase();
|
|
132
132
|
}
|
|
133
133
|
function H(e, n) {
|
|
134
134
|
if (typeof window > "u") return;
|
|
@@ -138,57 +138,57 @@ function H(e, n) {
|
|
|
138
138
|
} catch {
|
|
139
139
|
}
|
|
140
140
|
}
|
|
141
|
-
function J(e, n, a,
|
|
142
|
-
const
|
|
143
|
-
if (
|
|
144
|
-
const i = e[
|
|
145
|
-
i && (H("serp_result_clicked", { resultId: n, source: a, position:
|
|
141
|
+
function J(e, n, a, r) {
|
|
142
|
+
const s = e.findIndex((d) => d.id === n);
|
|
143
|
+
if (s < 0) return;
|
|
144
|
+
const i = e[s];
|
|
145
|
+
i && (H("serp_result_clicked", { resultId: n, source: a, position: s }), r(i, a));
|
|
146
146
|
}
|
|
147
|
-
function
|
|
148
|
-
const
|
|
147
|
+
function Nt(e, n) {
|
|
148
|
+
const r = (n.lat - e.lat) * Math.PI / 180, s = (n.lng - e.lng) * Math.PI / 180, i = e.lat * Math.PI / 180, d = n.lat * Math.PI / 180, u = Math.sin(r / 2), o = Math.sin(s / 2), g = u * u + Math.cos(i) * Math.cos(d) * o * o;
|
|
149
149
|
return 2 * 6371 * Math.asin(Math.min(1, Math.sqrt(g)));
|
|
150
150
|
}
|
|
151
|
-
function
|
|
152
|
-
var
|
|
153
|
-
const
|
|
151
|
+
function St(e, n, a) {
|
|
152
|
+
var s;
|
|
153
|
+
const r = [];
|
|
154
154
|
for (const i of e) {
|
|
155
|
-
const d = i.field ?? i.key, u = (((
|
|
155
|
+
const d = i.field ?? i.key, u = (((s = a == null ? void 0 : a[i.key]) == null ? void 0 : s.length) ?? 0) > 0, o = i.type === "boolean" || i.type !== "options" && i.options.length === 0 && (u || n.some(
|
|
156
156
|
(g) => typeof g[d] == "boolean"
|
|
157
157
|
));
|
|
158
|
-
!
|
|
158
|
+
!o && i.options.length === 0 || r.push({ ...i, boolean: o, booleanField: d });
|
|
159
159
|
}
|
|
160
|
-
return
|
|
160
|
+
return r;
|
|
161
161
|
}
|
|
162
|
-
function
|
|
163
|
-
return !n || Object.keys(n).length === 0 ? e : e.filter((
|
|
164
|
-
for (const
|
|
165
|
-
const i = n[
|
|
162
|
+
function Lt(e, n, a) {
|
|
163
|
+
return !n || Object.keys(n).length === 0 ? e : e.filter((r) => {
|
|
164
|
+
for (const s of a) {
|
|
165
|
+
const i = n[s.key];
|
|
166
166
|
if (!i || i.length === 0) continue;
|
|
167
|
-
if (
|
|
168
|
-
if (s
|
|
167
|
+
if (s.boolean) {
|
|
168
|
+
if (r[s.booleanField] !== !0) return !1;
|
|
169
169
|
continue;
|
|
170
170
|
}
|
|
171
|
-
const d =
|
|
172
|
-
if (!Array.isArray(d) || !(
|
|
171
|
+
const d = s.key === "insurance" ? r.insurances : s.key === "language" ? r.languages : r[s.key];
|
|
172
|
+
if (!Array.isArray(d) || !(s.multi ? i.some((o) => d.includes(o)) : d.includes(i[0]))) return !1;
|
|
173
173
|
}
|
|
174
174
|
return !0;
|
|
175
175
|
});
|
|
176
176
|
}
|
|
177
|
-
function
|
|
178
|
-
const
|
|
179
|
-
const d = i.location ? i.location.distanceKm ?? (a ?
|
|
177
|
+
function Pt(e, n, a) {
|
|
178
|
+
const r = e.map((i) => {
|
|
179
|
+
const d = i.location ? i.location.distanceKm ?? (a ? Nt(a, i.location) : void 0) : void 0;
|
|
180
180
|
return { result: i, distanceKm: d };
|
|
181
|
-
}),
|
|
182
|
-
var u,
|
|
181
|
+
}), s = (i, d) => {
|
|
182
|
+
var u, o, g, l;
|
|
183
183
|
switch (n) {
|
|
184
184
|
case "distance":
|
|
185
185
|
return i.distanceKm == null && d.distanceKm == null ? 0 : i.distanceKm == null ? 1 : d.distanceKm == null ? -1 : i.distanceKm - d.distanceKm;
|
|
186
186
|
case "rating": {
|
|
187
187
|
const p = ((u = i.result.rating) == null ? void 0 : u.value) ?? -1;
|
|
188
|
-
return (((
|
|
188
|
+
return (((o = d.result.rating) == null ? void 0 : o.value) ?? -1) - p;
|
|
189
189
|
}
|
|
190
190
|
case "next-available": {
|
|
191
|
-
const p = ((g = i.result.nextAvailableSlot) == null ? void 0 : g.dateTime) ?? "", f = ((
|
|
191
|
+
const p = ((g = i.result.nextAvailableSlot) == null ? void 0 : g.dateTime) ?? "", f = ((l = d.result.nextAvailableSlot) == null ? void 0 : l.dateTime) ?? "";
|
|
192
192
|
return !p && !f ? 0 : p ? f ? p.localeCompare(f) : -1 : 1;
|
|
193
193
|
}
|
|
194
194
|
case "relevance":
|
|
@@ -196,7 +196,7 @@ function Lt(e, n, a) {
|
|
|
196
196
|
return 0;
|
|
197
197
|
}
|
|
198
198
|
};
|
|
199
|
-
return [...
|
|
199
|
+
return [...r].sort(s).map(
|
|
200
200
|
({ result: i, distanceKm: d }) => d != null && i.location ? {
|
|
201
201
|
...i,
|
|
202
202
|
location: { ...i.location, distanceKm: d }
|
|
@@ -204,17 +204,17 @@ function Lt(e, n, a) {
|
|
|
204
204
|
);
|
|
205
205
|
}
|
|
206
206
|
function Re(e) {
|
|
207
|
-
let n = -1 / 0, a = 1 / 0,
|
|
207
|
+
let n = -1 / 0, a = 1 / 0, r = -1 / 0, s = 1 / 0, i = !1;
|
|
208
208
|
for (const d of e) {
|
|
209
209
|
if (!d.location) continue;
|
|
210
210
|
i = !0;
|
|
211
|
-
const { lat: u, lng:
|
|
212
|
-
u > n && (n = u), u < a && (a = u),
|
|
211
|
+
const { lat: u, lng: o } = d.location;
|
|
212
|
+
u > n && (n = u), u < a && (a = u), o > r && (r = o), o < s && (s = o);
|
|
213
213
|
}
|
|
214
214
|
if (i)
|
|
215
|
-
return { north: n, south: a, east:
|
|
215
|
+
return { north: n, south: a, east: r, west: s };
|
|
216
216
|
}
|
|
217
|
-
const
|
|
217
|
+
const At = K(
|
|
218
218
|
"ds:flex ds:w-full ds:flex-col ds:text-[var(--foreground)] ds:gap-[var(--spacing-md)]",
|
|
219
219
|
{
|
|
220
220
|
variants: {
|
|
@@ -231,15 +231,15 @@ function _e({
|
|
|
231
231
|
heading: e,
|
|
232
232
|
headingLevel: n,
|
|
233
233
|
intro: a,
|
|
234
|
-
totalCount:
|
|
235
|
-
searchCentreLabel:
|
|
234
|
+
totalCount: r,
|
|
235
|
+
searchCentreLabel: s
|
|
236
236
|
}) {
|
|
237
|
-
const { t: i } =
|
|
238
|
-
if (!e && !a &&
|
|
239
|
-
const u =
|
|
240
|
-
count:
|
|
241
|
-
place:
|
|
242
|
-
}) : i("practiceResults.results.summary", { count:
|
|
237
|
+
const { t: i } = w("ui"), d = `h${n}`;
|
|
238
|
+
if (!e && !a && r == null) return null;
|
|
239
|
+
const u = r != null ? s ? i("practiceResults.results.heading", {
|
|
240
|
+
count: r,
|
|
241
|
+
place: s
|
|
242
|
+
}) : i("practiceResults.results.summary", { count: r }) : void 0;
|
|
243
243
|
return /* @__PURE__ */ m("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-xs)]", children: [
|
|
244
244
|
e ? /* @__PURE__ */ t(d, { className: "type-title-section ds:m-0 ds:text-[var(--foreground)]", children: e }) : null,
|
|
245
245
|
a ? /* @__PURE__ */ t("p", { className: "type-body ds:m-0 ds:text-[var(--muted-foreground)]", children: a }) : null,
|
|
@@ -253,7 +253,7 @@ function _e({
|
|
|
253
253
|
) : null
|
|
254
254
|
] });
|
|
255
255
|
}
|
|
256
|
-
const ne =
|
|
256
|
+
const ne = K(
|
|
257
257
|
[
|
|
258
258
|
"ds:inline-flex ds:items-center ds:gap-[var(--spacing-xs)]",
|
|
259
259
|
"ds:min-h-[var(--min-target-size)]",
|
|
@@ -275,7 +275,7 @@ const ne = V(
|
|
|
275
275
|
},
|
|
276
276
|
defaultVariants: { state: "idle" }
|
|
277
277
|
}
|
|
278
|
-
),
|
|
278
|
+
), Mt = K(
|
|
279
279
|
"ds:flex ds:flex-wrap ds:items-center ds:gap-[var(--spacing-xs)]",
|
|
280
280
|
{
|
|
281
281
|
variants: {
|
|
@@ -294,7 +294,7 @@ const ne = V(
|
|
|
294
294
|
},
|
|
295
295
|
defaultVariants: { placement: "inline" }
|
|
296
296
|
}
|
|
297
|
-
),
|
|
297
|
+
), Tt = K(
|
|
298
298
|
[
|
|
299
299
|
"ds:ms-[var(--spacing-xs)] ds:inline-flex ds:items-center ds:gap-[var(--spacing-xs)]",
|
|
300
300
|
"ds:min-h-[var(--min-target-size)] ds:ps-[var(--spacing-xs)] ds:pe-[var(--spacing-xs)]",
|
|
@@ -309,63 +309,63 @@ function ze({
|
|
|
309
309
|
facets: e,
|
|
310
310
|
value: n,
|
|
311
311
|
onChange: a,
|
|
312
|
-
floating:
|
|
312
|
+
floating: r
|
|
313
313
|
}) {
|
|
314
|
-
const { t:
|
|
315
|
-
() => Object.values(i).some((
|
|
314
|
+
const { t: s } = w("ui"), i = M(() => n ?? {}, [n]), d = M(
|
|
315
|
+
() => Object.values(i).some((l) => l && l.length > 0),
|
|
316
316
|
[i]
|
|
317
|
-
), u = (
|
|
317
|
+
), u = (l, p) => {
|
|
318
318
|
const f = { ...i };
|
|
319
|
-
p.length === 0 ? delete f[
|
|
320
|
-
},
|
|
319
|
+
p.length === 0 ? delete f[l] : f[l] = p, a(f), H("serp_filter_changed", { key: l, values: p });
|
|
320
|
+
}, o = (l) => {
|
|
321
321
|
var f;
|
|
322
|
-
const p = (((f = i[
|
|
323
|
-
u(
|
|
324
|
-
}, g = (
|
|
325
|
-
const f = i[
|
|
322
|
+
const p = (((f = i[l]) == null ? void 0 : f.length) ?? 0) > 0;
|
|
323
|
+
u(l, p ? [] : ["true"]);
|
|
324
|
+
}, g = (l, p) => {
|
|
325
|
+
const f = i[l.key] ?? [], b = f.includes(p);
|
|
326
326
|
let h;
|
|
327
|
-
|
|
327
|
+
l.multi ? h = b ? f.filter((y) => y !== p) : [...f, p] : h = b ? [] : [p], u(l.key, h);
|
|
328
328
|
};
|
|
329
329
|
return e.length === 0 ? null : /* @__PURE__ */ m(
|
|
330
330
|
"div",
|
|
331
331
|
{
|
|
332
332
|
"data-component": "practice-results-filters",
|
|
333
333
|
role: "group",
|
|
334
|
-
"aria-label":
|
|
335
|
-
className:
|
|
336
|
-
placement:
|
|
334
|
+
"aria-label": s("practiceResults.filters.label"),
|
|
335
|
+
className: Mt({
|
|
336
|
+
placement: r ? "floating" : "inline"
|
|
337
337
|
}),
|
|
338
338
|
children: [
|
|
339
|
-
e.map((
|
|
340
|
-
const p =
|
|
339
|
+
e.map((l) => {
|
|
340
|
+
const p = l.boolean, f = i[l.key] ?? [], b = f.length > 0;
|
|
341
341
|
if (p)
|
|
342
342
|
return /* @__PURE__ */ t(
|
|
343
343
|
"button",
|
|
344
344
|
{
|
|
345
345
|
type: "button",
|
|
346
346
|
"aria-pressed": b,
|
|
347
|
-
"aria-label":
|
|
348
|
-
onClick: () => l
|
|
347
|
+
"aria-label": l.label,
|
|
348
|
+
onClick: () => o(l.key),
|
|
349
349
|
className: ne({
|
|
350
350
|
state: b ? "active" : "idle"
|
|
351
351
|
}),
|
|
352
|
-
children: /* @__PURE__ */ t("span", { children:
|
|
352
|
+
children: /* @__PURE__ */ t("span", { children: l.label })
|
|
353
353
|
},
|
|
354
|
-
|
|
354
|
+
l.key
|
|
355
355
|
);
|
|
356
356
|
const h = b ? ` (${f.length})` : "";
|
|
357
|
-
return /* @__PURE__ */ m(
|
|
358
|
-
/* @__PURE__ */ t(
|
|
357
|
+
return /* @__PURE__ */ m(O.Root, { children: [
|
|
358
|
+
/* @__PURE__ */ t(O.Trigger, { asChild: !0, children: /* @__PURE__ */ m(
|
|
359
359
|
"button",
|
|
360
360
|
{
|
|
361
361
|
type: "button",
|
|
362
|
-
"aria-label": `${
|
|
362
|
+
"aria-label": `${l.label}${h}`,
|
|
363
363
|
className: ne({
|
|
364
364
|
state: b ? "active" : "idle"
|
|
365
365
|
}),
|
|
366
366
|
children: [
|
|
367
367
|
/* @__PURE__ */ m("span", { children: [
|
|
368
|
-
|
|
368
|
+
l.label,
|
|
369
369
|
h
|
|
370
370
|
] }),
|
|
371
371
|
/* @__PURE__ */ t(
|
|
@@ -378,18 +378,18 @@ function ze({
|
|
|
378
378
|
]
|
|
379
379
|
}
|
|
380
380
|
) }),
|
|
381
|
-
/* @__PURE__ */ t(
|
|
382
|
-
|
|
381
|
+
/* @__PURE__ */ t(O.Content, { sideOffset: 8, align: "start", children: l.options.map((y) => /* @__PURE__ */ t(
|
|
382
|
+
O.CheckboxItem,
|
|
383
383
|
{
|
|
384
384
|
checked: f.includes(y.value),
|
|
385
385
|
onSelect: (k) => {
|
|
386
|
-
|
|
386
|
+
l.multi && k.preventDefault(), g(l, y.value);
|
|
387
387
|
},
|
|
388
388
|
children: y.label
|
|
389
389
|
},
|
|
390
390
|
y.value
|
|
391
391
|
)) })
|
|
392
|
-
] },
|
|
392
|
+
] }, l.key);
|
|
393
393
|
}),
|
|
394
394
|
d ? /* @__PURE__ */ t(
|
|
395
395
|
"button",
|
|
@@ -398,8 +398,8 @@ function ze({
|
|
|
398
398
|
onClick: () => {
|
|
399
399
|
a({}), H("serp_filter_changed", { key: "*", values: [] });
|
|
400
400
|
},
|
|
401
|
-
className:
|
|
402
|
-
children:
|
|
401
|
+
className: Tt(),
|
|
402
|
+
children: s("practiceResults.filters.clear")
|
|
403
403
|
}
|
|
404
404
|
) : null
|
|
405
405
|
]
|
|
@@ -407,8 +407,8 @@ function ze({
|
|
|
407
407
|
);
|
|
408
408
|
}
|
|
409
409
|
function me({ value: e, onChange: n }) {
|
|
410
|
-
const { t: a } =
|
|
411
|
-
switch (
|
|
410
|
+
const { t: a } = w("ui"), r = (s) => {
|
|
411
|
+
switch (s) {
|
|
412
412
|
case "distance":
|
|
413
413
|
return a("practiceResults.sort.distance");
|
|
414
414
|
case "rating":
|
|
@@ -420,47 +420,47 @@ function me({ value: e, onChange: n }) {
|
|
|
420
420
|
return a("practiceResults.sort.relevance");
|
|
421
421
|
}
|
|
422
422
|
};
|
|
423
|
-
return /* @__PURE__ */ m(
|
|
424
|
-
/* @__PURE__ */ t(
|
|
423
|
+
return /* @__PURE__ */ m(O.Root, { children: [
|
|
424
|
+
/* @__PURE__ */ t(O.Trigger, { asChild: !0, children: /* @__PURE__ */ m(
|
|
425
425
|
"button",
|
|
426
426
|
{
|
|
427
427
|
type: "button",
|
|
428
|
-
"aria-label": `${a("practiceResults.sort.label")}: ${
|
|
428
|
+
"aria-label": `${a("practiceResults.sort.label")}: ${r(e)}`,
|
|
429
429
|
className: ne({ state: "idle" }),
|
|
430
430
|
children: [
|
|
431
431
|
/* @__PURE__ */ m("span", { children: [
|
|
432
432
|
a("practiceResults.sort.label"),
|
|
433
433
|
": ",
|
|
434
|
-
|
|
434
|
+
r(e)
|
|
435
435
|
] }),
|
|
436
436
|
/* @__PURE__ */ t(Pe, { "aria-hidden": "true", className: "ds:size-3.5 ds:shrink-0" })
|
|
437
437
|
]
|
|
438
438
|
}
|
|
439
439
|
) }),
|
|
440
|
-
/* @__PURE__ */ t(
|
|
441
|
-
|
|
440
|
+
/* @__PURE__ */ t(O.Content, { sideOffset: 8, align: "end", children: /* @__PURE__ */ t(
|
|
441
|
+
O.RadioGroup,
|
|
442
442
|
{
|
|
443
443
|
value: e,
|
|
444
|
-
onValueChange: (
|
|
445
|
-
const i =
|
|
444
|
+
onValueChange: (s) => {
|
|
445
|
+
const i = s;
|
|
446
446
|
i !== e && (n(i), H("serp_sort_changed", { sort: i }));
|
|
447
447
|
},
|
|
448
|
-
children:
|
|
448
|
+
children: Rt.map((s) => /* @__PURE__ */ t(O.RadioItem, { value: s, children: r(s) }, s))
|
|
449
449
|
}
|
|
450
450
|
) })
|
|
451
451
|
] });
|
|
452
452
|
}
|
|
453
453
|
function Fe({ distanceKm: e }) {
|
|
454
|
-
const { t: n, i18n: a } =
|
|
454
|
+
const { t: n, i18n: a } = w("ui"), r = M(() => {
|
|
455
455
|
if (e < 1) return n("practiceResults.distance.below");
|
|
456
|
-
const
|
|
456
|
+
const s = new Intl.NumberFormat(a.language, {
|
|
457
457
|
maximumFractionDigits: 1
|
|
458
458
|
}).format(e);
|
|
459
|
-
return n("practiceResults.distance.km", { distance:
|
|
459
|
+
return n("practiceResults.distance.km", { distance: s });
|
|
460
460
|
}, [e, n, a.language]);
|
|
461
|
-
return /* @__PURE__ */ t(
|
|
461
|
+
return /* @__PURE__ */ t(D, { variant: "neutral", leading: /* @__PURE__ */ t(ae, { "aria-hidden": "true" }), children: r });
|
|
462
462
|
}
|
|
463
|
-
const Ne =
|
|
463
|
+
const Ne = K(
|
|
464
464
|
[
|
|
465
465
|
"ds:inline-size-[12rem] ds:block-size-[8rem] ds:shrink-0",
|
|
466
466
|
"ds:rounded-[var(--radius-md)] ds:overflow-hidden"
|
|
@@ -479,36 +479,36 @@ const Ne = V(
|
|
|
479
479
|
defaultVariants: { state: "placeholder" }
|
|
480
480
|
}
|
|
481
481
|
);
|
|
482
|
-
function
|
|
482
|
+
function It() {
|
|
483
483
|
if (typeof document > "u") return "4945a3";
|
|
484
484
|
const e = getComputedStyle(document.documentElement).getPropertyValue("--map-marker-color").trim(), n = /^#?([0-9a-fA-F]{6})$/.exec(e);
|
|
485
485
|
return n ? n[1] : "4945a3";
|
|
486
486
|
}
|
|
487
|
-
function
|
|
487
|
+
function _t({
|
|
488
488
|
apiKey: e,
|
|
489
489
|
center: n,
|
|
490
490
|
zoom: a = 14,
|
|
491
|
-
address:
|
|
491
|
+
address: r
|
|
492
492
|
}) {
|
|
493
|
-
const { t:
|
|
493
|
+
const { t: s } = w("ui");
|
|
494
494
|
if (!e)
|
|
495
495
|
return /* @__PURE__ */ m(
|
|
496
496
|
"div",
|
|
497
497
|
{
|
|
498
|
-
"aria-hidden":
|
|
498
|
+
"aria-hidden": r ? void 0 : "true",
|
|
499
499
|
className: Ne({ state: "placeholder" }),
|
|
500
500
|
children: [
|
|
501
501
|
/* @__PURE__ */ t(ae, { "aria-hidden": "true", className: "ds:size-5 ds:shrink-0" }),
|
|
502
|
-
|
|
502
|
+
r ? /* @__PURE__ */ t("span", { dir: "auto", className: "type-meta ds:[overflow-wrap:anywhere]", children: r }) : null
|
|
503
503
|
]
|
|
504
504
|
}
|
|
505
505
|
);
|
|
506
|
-
const i =
|
|
506
|
+
const i = It(), d = `https://maps.googleapis.com/maps/api/staticmap?center=${n.lat},${n.lng}&zoom=${a}&size=240x160&scale=2&markers=color:0x${i}%7C${n.lat},${n.lng}&key=${encodeURIComponent(e)}`;
|
|
507
507
|
return /* @__PURE__ */ t(
|
|
508
508
|
"img",
|
|
509
509
|
{
|
|
510
510
|
src: d,
|
|
511
|
-
alt:
|
|
511
|
+
alt: s("practiceResults.thumbnail.alt"),
|
|
512
512
|
loading: "lazy",
|
|
513
513
|
decoding: "async",
|
|
514
514
|
width: 240,
|
|
@@ -528,7 +528,7 @@ function He({ tagline: e }) {
|
|
|
528
528
|
}
|
|
529
529
|
) : null;
|
|
530
530
|
}
|
|
531
|
-
const
|
|
531
|
+
const zt = K(
|
|
532
532
|
"type-body-sm ds:m-0 ds:text-[var(--muted-foreground)] ds:whitespace-pre-line ds:break-words",
|
|
533
533
|
{
|
|
534
534
|
variants: {
|
|
@@ -549,7 +549,7 @@ function Be({
|
|
|
549
549
|
{
|
|
550
550
|
"data-component": "practice-result-description",
|
|
551
551
|
dir: "auto",
|
|
552
|
-
className:
|
|
552
|
+
className: zt({ density: n }),
|
|
553
553
|
children: e
|
|
554
554
|
}
|
|
555
555
|
) : null;
|
|
@@ -558,23 +558,23 @@ function $e({
|
|
|
558
558
|
cents: e,
|
|
559
559
|
currencyCode: n = "EUR"
|
|
560
560
|
}) {
|
|
561
|
-
const { t: a, i18n:
|
|
562
|
-
() => e == null ? void 0 :
|
|
561
|
+
const { t: a, i18n: r } = w("ui"), s = M(
|
|
562
|
+
() => e == null ? void 0 : pt(
|
|
563
563
|
e,
|
|
564
564
|
n,
|
|
565
|
-
|
|
565
|
+
r.language ?? "en",
|
|
566
566
|
a("common.freeOfCharge")
|
|
567
567
|
),
|
|
568
|
-
[e, n,
|
|
568
|
+
[e, n, r.language, a]
|
|
569
569
|
);
|
|
570
|
-
return
|
|
570
|
+
return s === void 0 ? null : /* @__PURE__ */ m(
|
|
571
571
|
"span",
|
|
572
572
|
{
|
|
573
573
|
"data-component": "practice-result-price",
|
|
574
574
|
className: "type-body-sm ds:inline-flex ds:flex-wrap ds:items-center ds:gap-[var(--spacing-xs)] ds:text-[var(--muted-foreground)]",
|
|
575
575
|
children: [
|
|
576
576
|
/* @__PURE__ */ t(
|
|
577
|
-
|
|
577
|
+
vt,
|
|
578
578
|
{
|
|
579
579
|
"aria-hidden": "true",
|
|
580
580
|
className: "ds:size-4 ds:shrink-0 ds:text-[var(--primary)]"
|
|
@@ -582,16 +582,16 @@ function $e({
|
|
|
582
582
|
),
|
|
583
583
|
a("practiceResults.card.firstVisitPrice"),
|
|
584
584
|
/* @__PURE__ */ t("span", { className: "ds:sr-only", children: ": " }),
|
|
585
|
-
/* @__PURE__ */ t("span", { className: "ds:font-[var(--font-weight-medium)] ds:text-[var(--foreground)]", children:
|
|
585
|
+
/* @__PURE__ */ t("span", { className: "ds:font-[var(--font-weight-medium)] ds:text-[var(--foreground)]", children: s })
|
|
586
586
|
]
|
|
587
587
|
}
|
|
588
588
|
);
|
|
589
589
|
}
|
|
590
590
|
function Oe({ time: e }) {
|
|
591
|
-
const { t: n } =
|
|
591
|
+
const { t: n } = w("ui");
|
|
592
592
|
return /* @__PURE__ */ m("span", { className: "type-body-sm ds:text-[var(--muted-foreground)] ds:inline-flex ds:items-center ds:gap-[var(--spacing-xs)]", children: [
|
|
593
593
|
/* @__PURE__ */ t(
|
|
594
|
-
|
|
594
|
+
bt,
|
|
595
595
|
{
|
|
596
596
|
"aria-hidden": "true",
|
|
597
597
|
className: "ds:size-4 ds:text-[var(--primary)]"
|
|
@@ -604,42 +604,29 @@ function De({
|
|
|
604
604
|
result: e,
|
|
605
605
|
openLabel: n,
|
|
606
606
|
bookLabel: a,
|
|
607
|
-
nextSlotText:
|
|
608
|
-
onOpenClick:
|
|
607
|
+
nextSlotText: r,
|
|
608
|
+
onOpenClick: s,
|
|
609
609
|
onBookClick: i
|
|
610
610
|
}) {
|
|
611
|
-
const { t: d } =
|
|
611
|
+
const { t: d } = w("ui"), u = e.nextAvailableSlot, o = (u == null ? void 0 : u.bookingHref) ?? e.bookingHref ?? e.href, g = u && r ? d("practiceResults.nextSlot.cta", { time: r }) : a;
|
|
612
612
|
return /* @__PURE__ */ m("div", { className: "ds:mt-[var(--spacing-xs)] ds:flex ds:flex-wrap ds:items-center ds:justify-end ds:gap-[var(--spacing-xs)]", children: [
|
|
613
|
-
n !== void 0 ? /* @__PURE__ */ t(
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
asChild: !0,
|
|
619
|
-
onClick: (o) => {
|
|
620
|
-
o.stopPropagation(), r();
|
|
621
|
-
},
|
|
622
|
-
children: /* @__PURE__ */ m("a", { href: e.href, "data-component": "practice-result-open-cta", children: [
|
|
623
|
-
n,
|
|
624
|
-
" ",
|
|
625
|
-
/* @__PURE__ */ t("span", { className: "ds:sr-only", children: e.name })
|
|
626
|
-
] })
|
|
627
|
-
}
|
|
628
|
-
) : null,
|
|
613
|
+
n !== void 0 ? /* @__PURE__ */ t(te, { intent: "secondary", size: "sm", asChild: !0, onClick: s, children: /* @__PURE__ */ m("a", { href: e.href, "data-component": "practice-result-open-cta", children: [
|
|
614
|
+
n,
|
|
615
|
+
" ",
|
|
616
|
+
/* @__PURE__ */ t("span", { className: "ds:sr-only", children: e.name })
|
|
617
|
+
] }) }) : null,
|
|
629
618
|
/* @__PURE__ */ t(
|
|
630
619
|
te,
|
|
631
620
|
{
|
|
632
621
|
intent: "primary",
|
|
633
622
|
size: "sm",
|
|
634
623
|
asChild: !0,
|
|
635
|
-
startIcon: /* @__PURE__ */ t(
|
|
636
|
-
onClick:
|
|
637
|
-
o.stopPropagation(), i();
|
|
638
|
-
},
|
|
624
|
+
startIcon: /* @__PURE__ */ t(yt, { "aria-hidden": "true" }),
|
|
625
|
+
onClick: i,
|
|
639
626
|
children: /* @__PURE__ */ m(
|
|
640
627
|
"a",
|
|
641
628
|
{
|
|
642
|
-
href:
|
|
629
|
+
href: o,
|
|
643
630
|
"data-component": "practice-result-book-cta",
|
|
644
631
|
"data-slot-aware": u ? "true" : void 0,
|
|
645
632
|
children: [
|
|
@@ -653,7 +640,7 @@ function De({
|
|
|
653
640
|
)
|
|
654
641
|
] });
|
|
655
642
|
}
|
|
656
|
-
const Ve =
|
|
643
|
+
const Ve = K(
|
|
657
644
|
[
|
|
658
645
|
"ds:relative ds:flex ds:w-full ds:cursor-pointer",
|
|
659
646
|
"ds:rounded-[var(--radius-lg)]",
|
|
@@ -681,7 +668,7 @@ const Ve = V(
|
|
|
681
668
|
},
|
|
682
669
|
defaultVariants: { density: "compact" }
|
|
683
670
|
}
|
|
684
|
-
),
|
|
671
|
+
), Ft = K([
|
|
685
672
|
"ds:text-[var(--foreground)] ds:no-underline ds:hover:underline",
|
|
686
673
|
"ds:rounded-[var(--radius-xs)]",
|
|
687
674
|
"ds:focus-visible:outline-[length:var(--focus-ring-width)] ds:focus-visible:outline-solid",
|
|
@@ -705,32 +692,37 @@ function Ke({
|
|
|
705
692
|
href: e.href,
|
|
706
693
|
dir: "auto",
|
|
707
694
|
"data-component": "practice-result-name-link",
|
|
708
|
-
className:
|
|
709
|
-
onClick: (s) => s.stopPropagation(),
|
|
695
|
+
className: Ft(),
|
|
710
696
|
children: e.name
|
|
711
697
|
}
|
|
712
698
|
)
|
|
713
699
|
}
|
|
714
700
|
);
|
|
715
701
|
}
|
|
716
|
-
function
|
|
702
|
+
function Ee(e) {
|
|
703
|
+
const n = e.target.closest(
|
|
704
|
+
'a, button, [role="button"], input, select, textarea, label'
|
|
705
|
+
);
|
|
706
|
+
return n !== null && n !== e.currentTarget && e.currentTarget.contains(n);
|
|
707
|
+
}
|
|
708
|
+
function Ht({
|
|
717
709
|
result: e,
|
|
718
710
|
headingLevel: n,
|
|
719
711
|
highlighted: a,
|
|
720
|
-
onSelect:
|
|
721
|
-
onOpenClick:
|
|
712
|
+
onSelect: r,
|
|
713
|
+
onOpenClick: s,
|
|
722
714
|
onHover: i,
|
|
723
715
|
density: d = "compact",
|
|
724
716
|
openLabel: u,
|
|
725
|
-
bookLabel:
|
|
717
|
+
bookLabel: o,
|
|
726
718
|
onBookClick: g,
|
|
727
|
-
nextSlotText:
|
|
719
|
+
nextSlotText: l,
|
|
728
720
|
maxInsuranceChips: p = 3,
|
|
729
721
|
maxLanguageChips: f = 4,
|
|
730
722
|
children: b
|
|
731
723
|
}) {
|
|
732
|
-
var Z, Q,
|
|
733
|
-
const { t: h, i18n: y } =
|
|
724
|
+
var Z, Q, E, j, V, R;
|
|
725
|
+
const { t: h, i18n: y } = w("ui"), k = e.rating, x = (Z = e.location) == null ? void 0 : Z.distanceKm, c = (((Q = e.languages) == null ? void 0 : Q.length) ?? 0) > 0, S = (((E = e.insurances) == null ? void 0 : E.length) ?? 0) > 0, N = e.specializedInFearPatients, L = c || S || N, C = (e.languages ?? []).slice(0, f), _ = (((j = e.languages) == null ? void 0 : j.length) ?? 0) - C.length, A = (e.insurances ?? []).slice(0, p), G = (((V = e.insurances) == null ? void 0 : V.length) ?? 0) - A.length;
|
|
734
726
|
return (
|
|
735
727
|
// eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events -- card is role="group" by design (axe nested-interactive); click handler is mouse-only sync.
|
|
736
728
|
/* @__PURE__ */ m(
|
|
@@ -741,7 +733,9 @@ function Ft({
|
|
|
741
733
|
"data-highlighted": a ? "true" : "false",
|
|
742
734
|
role: "group",
|
|
743
735
|
"aria-labelledby": `practice-result-${e.id}-name`,
|
|
744
|
-
onClick:
|
|
736
|
+
onClick: (B) => {
|
|
737
|
+
Ee(B) || r();
|
|
738
|
+
},
|
|
745
739
|
onMouseEnter: i,
|
|
746
740
|
onFocus: i,
|
|
747
741
|
className: Ve({ density: d }),
|
|
@@ -764,7 +758,7 @@ function Ft({
|
|
|
764
758
|
] }),
|
|
765
759
|
e.subtitle ? /* @__PURE__ */ t("span", { className: "type-body-sm ds:text-[var(--muted-foreground)]", children: e.subtitle }) : null,
|
|
766
760
|
/* @__PURE__ */ t(He, { tagline: e.tagline }),
|
|
767
|
-
(
|
|
761
|
+
(R = e.location) != null && R.address ? /* @__PURE__ */ m("span", { className: "type-meta ds:text-[var(--muted-foreground)] ds:inline-flex ds:items-center ds:gap-[var(--spacing-2xs)]", children: [
|
|
768
762
|
/* @__PURE__ */ t(ae, { "aria-hidden": "true", className: "ds:size-3.5 ds:shrink-0" }),
|
|
769
763
|
/* @__PURE__ */ t("span", { dir: "auto", children: e.location.address })
|
|
770
764
|
] }) : null
|
|
@@ -778,27 +772,27 @@ function Ft({
|
|
|
778
772
|
}
|
|
779
773
|
) : null,
|
|
780
774
|
L ? /* @__PURE__ */ m("div", { className: "ds:flex ds:flex-wrap ds:items-center ds:gap-[var(--spacing-xs)]", children: [
|
|
781
|
-
|
|
782
|
-
|
|
775
|
+
C.map((B) => /* @__PURE__ */ t(
|
|
776
|
+
D,
|
|
783
777
|
{
|
|
784
778
|
variant: "neutral",
|
|
785
779
|
leading: /* @__PURE__ */ t(Ae, { "aria-hidden": "true" }),
|
|
786
|
-
children: Ie(
|
|
780
|
+
children: Ie(B, h, y)
|
|
787
781
|
},
|
|
788
|
-
`lang-${
|
|
782
|
+
`lang-${B}`
|
|
789
783
|
)),
|
|
790
|
-
_ > 0 ? /* @__PURE__ */ t(
|
|
791
|
-
A.map((
|
|
792
|
-
|
|
784
|
+
_ > 0 ? /* @__PURE__ */ t(D, { variant: "neutral", children: `+${_}` }) : null,
|
|
785
|
+
A.map((B) => /* @__PURE__ */ t(
|
|
786
|
+
D,
|
|
793
787
|
{
|
|
794
788
|
variant: "info",
|
|
795
789
|
leading: /* @__PURE__ */ t(Me, { "aria-hidden": "true" }),
|
|
796
|
-
children:
|
|
790
|
+
children: B
|
|
797
791
|
},
|
|
798
|
-
`ins-${
|
|
792
|
+
`ins-${B}`
|
|
799
793
|
)),
|
|
800
|
-
G > 0 ? /* @__PURE__ */ t(
|
|
801
|
-
|
|
794
|
+
G > 0 ? /* @__PURE__ */ t(D, { variant: "neutral", children: `+${G}` }) : null,
|
|
795
|
+
N ? /* @__PURE__ */ t(D, { variant: "info", leading: /* @__PURE__ */ t(Te, { "aria-hidden": "true" }), children: h("practiceResults.fearPatient.label") }) : null
|
|
802
796
|
] }) : null,
|
|
803
797
|
/* @__PURE__ */ t(Be, { description: e.description, density: "compact" }),
|
|
804
798
|
/* @__PURE__ */ t(
|
|
@@ -808,16 +802,16 @@ function Ft({
|
|
|
808
802
|
currencyCode: e.currencyCode
|
|
809
803
|
}
|
|
810
804
|
),
|
|
811
|
-
e.nextAvailableSlot &&
|
|
805
|
+
e.nextAvailableSlot && l ? /* @__PURE__ */ t(Oe, { time: l }) : null,
|
|
812
806
|
b,
|
|
813
807
|
/* @__PURE__ */ t(
|
|
814
808
|
De,
|
|
815
809
|
{
|
|
816
810
|
result: e,
|
|
817
811
|
openLabel: u,
|
|
818
|
-
bookLabel:
|
|
819
|
-
nextSlotText:
|
|
820
|
-
onOpenClick:
|
|
812
|
+
bookLabel: o,
|
|
813
|
+
nextSlotText: l,
|
|
814
|
+
onOpenClick: s,
|
|
821
815
|
onBookClick: g
|
|
822
816
|
}
|
|
823
817
|
)
|
|
@@ -827,20 +821,20 @@ function Ft({
|
|
|
827
821
|
)
|
|
828
822
|
);
|
|
829
823
|
}
|
|
830
|
-
function
|
|
824
|
+
function Bt({
|
|
831
825
|
result: e,
|
|
832
826
|
headingLevel: n,
|
|
833
827
|
apiKey: a,
|
|
834
|
-
highlighted:
|
|
835
|
-
onSelect:
|
|
828
|
+
highlighted: r,
|
|
829
|
+
onSelect: s,
|
|
836
830
|
onOpenClick: i,
|
|
837
831
|
onBookClick: d,
|
|
838
832
|
onHover: u,
|
|
839
|
-
openLabel:
|
|
833
|
+
openLabel: o,
|
|
840
834
|
bookLabel: g
|
|
841
835
|
}) {
|
|
842
|
-
var c, S,
|
|
843
|
-
const { t:
|
|
836
|
+
var c, S, N, L;
|
|
837
|
+
const { t: l, i18n: p } = w("ui"), f = M(() => {
|
|
844
838
|
if (e.nextAvailableSlot)
|
|
845
839
|
try {
|
|
846
840
|
return new Intl.DateTimeFormat(p.language, {
|
|
@@ -851,7 +845,7 @@ function Ht({
|
|
|
851
845
|
} catch {
|
|
852
846
|
return e.nextAvailableSlot.dateTime;
|
|
853
847
|
}
|
|
854
|
-
}, [e.nextAvailableSlot, p.language]), b = (((c = e.languages) == null ? void 0 : c.length) ?? 0) > 0, h = (((S = e.insurances) == null ? void 0 : S.length) ?? 0) > 0, y = e.specializedInFearPatients, k = b || h || y, x = (
|
|
848
|
+
}, [e.nextAvailableSlot, p.language]), b = (((c = e.languages) == null ? void 0 : c.length) ?? 0) > 0, h = (((S = e.insurances) == null ? void 0 : S.length) ?? 0) > 0, y = e.specializedInFearPatients, k = b || h || y, x = (N = e.location) == null ? void 0 : N.distanceKm;
|
|
855
849
|
return (
|
|
856
850
|
// eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions, jsx-a11y/click-events-have-key-events -- card is role="group" by design (axe nested-interactive); click handler is mouse-only sync.
|
|
857
851
|
/* @__PURE__ */ m(
|
|
@@ -860,16 +854,18 @@ function Ht({
|
|
|
860
854
|
"data-component": "practice-result-card",
|
|
861
855
|
"data-result-id": e.id,
|
|
862
856
|
"data-density": "rich",
|
|
863
|
-
"data-highlighted":
|
|
857
|
+
"data-highlighted": r ? "true" : "false",
|
|
864
858
|
role: "group",
|
|
865
859
|
"aria-labelledby": `practice-result-${e.id}-name`,
|
|
866
|
-
onClick:
|
|
860
|
+
onClick: (C) => {
|
|
861
|
+
Ee(C) || s();
|
|
862
|
+
},
|
|
867
863
|
onMouseEnter: u,
|
|
868
864
|
onFocus: u,
|
|
869
865
|
className: Ve({ density: "rich" }),
|
|
870
866
|
children: [
|
|
871
867
|
e.location ? /* @__PURE__ */ t(
|
|
872
|
-
|
|
868
|
+
_t,
|
|
873
869
|
{
|
|
874
870
|
apiKey: a,
|
|
875
871
|
center: {
|
|
@@ -919,25 +915,25 @@ function Ht({
|
|
|
919
915
|
) : null
|
|
920
916
|
] }),
|
|
921
917
|
k ? /* @__PURE__ */ m("div", { className: "ds:flex ds:flex-wrap ds:items-center ds:gap-[var(--spacing-xs)]", children: [
|
|
922
|
-
b ? (e.languages ?? []).map((
|
|
923
|
-
|
|
918
|
+
b ? (e.languages ?? []).map((C) => /* @__PURE__ */ t(
|
|
919
|
+
D,
|
|
924
920
|
{
|
|
925
921
|
variant: "neutral",
|
|
926
922
|
leading: /* @__PURE__ */ t(Ae, { "aria-hidden": "true" }),
|
|
927
|
-
children: Ie(
|
|
923
|
+
children: Ie(C, l, p)
|
|
928
924
|
},
|
|
929
|
-
`lang-${
|
|
925
|
+
`lang-${C}`
|
|
930
926
|
)) : null,
|
|
931
|
-
h ? (e.insurances ?? []).map((
|
|
932
|
-
|
|
927
|
+
h ? (e.insurances ?? []).map((C) => /* @__PURE__ */ t(
|
|
928
|
+
D,
|
|
933
929
|
{
|
|
934
930
|
variant: "info",
|
|
935
931
|
leading: /* @__PURE__ */ t(Me, { "aria-hidden": "true" }),
|
|
936
|
-
children:
|
|
932
|
+
children: C
|
|
937
933
|
},
|
|
938
|
-
`ins-${
|
|
934
|
+
`ins-${C}`
|
|
939
935
|
)) : null,
|
|
940
|
-
y ? /* @__PURE__ */ t(
|
|
936
|
+
y ? /* @__PURE__ */ t(D, { variant: "info", leading: /* @__PURE__ */ t(Te, { "aria-hidden": "true" }), children: l("practiceResults.fearPatient.label") }) : null
|
|
941
937
|
] }) : null,
|
|
942
938
|
/* @__PURE__ */ t(Be, { description: e.description, density: "rich" }),
|
|
943
939
|
/* @__PURE__ */ t(
|
|
@@ -952,7 +948,7 @@ function Ht({
|
|
|
952
948
|
De,
|
|
953
949
|
{
|
|
954
950
|
result: e,
|
|
955
|
-
openLabel:
|
|
951
|
+
openLabel: o,
|
|
956
952
|
bookLabel: g,
|
|
957
953
|
nextSlotText: f,
|
|
958
954
|
onOpenClick: i,
|
|
@@ -969,36 +965,36 @@ function he({
|
|
|
969
965
|
results: e,
|
|
970
966
|
headingLevel: n,
|
|
971
967
|
highlightedId: a,
|
|
972
|
-
onCardHover:
|
|
973
|
-
onCardSelect:
|
|
968
|
+
onCardHover: r,
|
|
969
|
+
onCardSelect: s,
|
|
974
970
|
onCardOpenClick: i,
|
|
975
971
|
onCardBookClick: d,
|
|
976
972
|
openLabel: u,
|
|
977
|
-
bookLabel:
|
|
973
|
+
bookLabel: o,
|
|
978
974
|
formatNextSlot: g,
|
|
979
|
-
onLoadMore:
|
|
975
|
+
onLoadMore: l,
|
|
980
976
|
loadingMore: p,
|
|
981
977
|
loadingSkeletons: f,
|
|
982
978
|
density: b = "compact",
|
|
983
979
|
apiKey: h,
|
|
984
980
|
containerRef: y
|
|
985
981
|
}) {
|
|
986
|
-
const { t: k } =
|
|
982
|
+
const { t: k } = w("ui"), x = T(null);
|
|
987
983
|
return X(() => {
|
|
988
|
-
if (!
|
|
984
|
+
if (!l) return;
|
|
989
985
|
const c = x.current;
|
|
990
986
|
if (!c || typeof IntersectionObserver > "u") return;
|
|
991
987
|
const S = new IntersectionObserver(
|
|
992
|
-
(
|
|
993
|
-
for (const L of
|
|
988
|
+
(N) => {
|
|
989
|
+
for (const L of N)
|
|
994
990
|
L.isIntersecting && (H("serp_load_more", {
|
|
995
991
|
currentCount: e.length
|
|
996
|
-
}),
|
|
992
|
+
}), l());
|
|
997
993
|
},
|
|
998
994
|
{ root: null, rootMargin: "200px" }
|
|
999
995
|
);
|
|
1000
996
|
return S.observe(c), () => S.disconnect();
|
|
1001
|
-
}, [
|
|
997
|
+
}, [l, e.length]), f ? /* @__PURE__ */ t(
|
|
1002
998
|
"div",
|
|
1003
999
|
{
|
|
1004
1000
|
role: "status",
|
|
@@ -1006,7 +1002,7 @@ function he({
|
|
|
1006
1002
|
"aria-label": k("practiceResults.loading"),
|
|
1007
1003
|
className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]",
|
|
1008
1004
|
children: Array.from({ length: 4 }).map((c, S) => /* @__PURE__ */ t(
|
|
1009
|
-
|
|
1005
|
+
dt,
|
|
1010
1006
|
{
|
|
1011
1007
|
variant: "rounded",
|
|
1012
1008
|
height: b === "rich" ? "11rem" : "7rem"
|
|
@@ -1024,41 +1020,41 @@ function he({
|
|
|
1024
1020
|
className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)] ds:overflow-y-auto",
|
|
1025
1021
|
children: [
|
|
1026
1022
|
e.map((c) => /* @__PURE__ */ t("div", { role: "listitem", children: b === "rich" ? /* @__PURE__ */ t(
|
|
1027
|
-
|
|
1023
|
+
Bt,
|
|
1028
1024
|
{
|
|
1029
1025
|
result: c,
|
|
1030
1026
|
headingLevel: n,
|
|
1031
1027
|
apiKey: h,
|
|
1032
1028
|
highlighted: a === c.id,
|
|
1033
|
-
onSelect: () =>
|
|
1029
|
+
onSelect: () => s(c.id),
|
|
1034
1030
|
onOpenClick: () => i(c.id),
|
|
1035
1031
|
onBookClick: () => d(c.id),
|
|
1036
|
-
onHover: () =>
|
|
1032
|
+
onHover: () => r(c.id),
|
|
1037
1033
|
openLabel: u,
|
|
1038
|
-
bookLabel:
|
|
1034
|
+
bookLabel: o
|
|
1039
1035
|
}
|
|
1040
1036
|
) : /* @__PURE__ */ t(
|
|
1041
|
-
|
|
1037
|
+
Ht,
|
|
1042
1038
|
{
|
|
1043
1039
|
result: c,
|
|
1044
1040
|
headingLevel: n,
|
|
1045
1041
|
highlighted: a === c.id,
|
|
1046
|
-
onSelect: () =>
|
|
1042
|
+
onSelect: () => s(c.id),
|
|
1047
1043
|
onOpenClick: () => i(c.id),
|
|
1048
1044
|
onBookClick: () => d(c.id),
|
|
1049
|
-
onHover: () =>
|
|
1045
|
+
onHover: () => r(c.id),
|
|
1050
1046
|
openLabel: u,
|
|
1051
|
-
bookLabel:
|
|
1047
|
+
bookLabel: o,
|
|
1052
1048
|
nextSlotText: g(c)
|
|
1053
1049
|
}
|
|
1054
1050
|
) }, c.id)),
|
|
1055
|
-
|
|
1051
|
+
l ? /* @__PURE__ */ t(
|
|
1056
1052
|
"div",
|
|
1057
1053
|
{
|
|
1058
1054
|
ref: x,
|
|
1059
1055
|
"aria-hidden": "true",
|
|
1060
1056
|
className: "ds:flex ds:items-center ds:justify-center ds:py-[var(--spacing-md)]",
|
|
1061
|
-
children: p ? /* @__PURE__ */ t(
|
|
1057
|
+
children: p ? /* @__PURE__ */ t(ut, { size: "md", variant: "pulse" }) : /* @__PURE__ */ t("span", { className: "ds:size-1" })
|
|
1062
1058
|
}
|
|
1063
1059
|
) : null
|
|
1064
1060
|
]
|
|
@@ -1069,18 +1065,18 @@ function pe({
|
|
|
1069
1065
|
results: e,
|
|
1070
1066
|
searchCentre: n,
|
|
1071
1067
|
zoom: a,
|
|
1072
|
-
apiKey:
|
|
1073
|
-
mapId:
|
|
1068
|
+
apiKey: r,
|
|
1069
|
+
mapId: s,
|
|
1074
1070
|
highlightedId: i,
|
|
1075
1071
|
onPinClick: d,
|
|
1076
1072
|
onPinHover: u,
|
|
1077
|
-
onPinFirstInteract:
|
|
1073
|
+
onPinFirstInteract: o,
|
|
1078
1074
|
onBoundsChange: g,
|
|
1079
|
-
consentGranted:
|
|
1075
|
+
consentGranted: l,
|
|
1080
1076
|
onConsentRequest: p,
|
|
1081
1077
|
mapHandleRef: f
|
|
1082
1078
|
}) {
|
|
1083
|
-
const { t: b } =
|
|
1079
|
+
const { t: b } = w("ui"), h = M(
|
|
1084
1080
|
() => e.filter(
|
|
1085
1081
|
(c) => !!c.location
|
|
1086
1082
|
).map((c) => ({
|
|
@@ -1116,21 +1112,21 @@ function pe({
|
|
|
1116
1112
|
"data-component": "practice-results-map-panel",
|
|
1117
1113
|
className: "ds:relative ds:flex ds:size-full ds:min-h-[24rem] ds:flex-col",
|
|
1118
1114
|
children: /* @__PURE__ */ t(
|
|
1119
|
-
|
|
1115
|
+
ct,
|
|
1120
1116
|
{
|
|
1121
1117
|
ref: f,
|
|
1122
|
-
apiKey:
|
|
1123
|
-
mapId:
|
|
1118
|
+
apiKey: r ?? "",
|
|
1119
|
+
mapId: s,
|
|
1124
1120
|
center: x,
|
|
1125
1121
|
zoom: a,
|
|
1126
1122
|
markers: h,
|
|
1127
1123
|
fitToPoints: y,
|
|
1128
1124
|
fitKey: k,
|
|
1129
1125
|
selectedMarkerId: i,
|
|
1130
|
-
consentGranted: !!
|
|
1126
|
+
consentGranted: !!l,
|
|
1131
1127
|
onConsentRequest: p,
|
|
1132
1128
|
onMarkerClick: (c) => {
|
|
1133
|
-
c != null && (u(c),
|
|
1129
|
+
c != null && (u(c), o(c), d(c));
|
|
1134
1130
|
},
|
|
1135
1131
|
ariaLabel: b("practiceResults.map.label"),
|
|
1136
1132
|
size: "fill",
|
|
@@ -1144,12 +1140,12 @@ function pe({
|
|
|
1144
1140
|
function ge({
|
|
1145
1141
|
variantBodyProps: e
|
|
1146
1142
|
}) {
|
|
1147
|
-
const { facets: n, value: a, onChange:
|
|
1143
|
+
const { facets: n, value: a, onChange: r, heading: s, intro: i, totalCount: d, searchCentre: u } = e;
|
|
1148
1144
|
return /* @__PURE__ */ m("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]", children: [
|
|
1149
1145
|
/* @__PURE__ */ t(
|
|
1150
1146
|
_e,
|
|
1151
1147
|
{
|
|
1152
|
-
heading:
|
|
1148
|
+
heading: s,
|
|
1153
1149
|
headingLevel: e.headingLevel,
|
|
1154
1150
|
intro: i,
|
|
1155
1151
|
totalCount: d,
|
|
@@ -1162,21 +1158,21 @@ function ge({
|
|
|
1162
1158
|
{
|
|
1163
1159
|
facets: n,
|
|
1164
1160
|
value: a.facets,
|
|
1165
|
-
onChange: (
|
|
1161
|
+
onChange: (o) => r({ ...a, facets: o })
|
|
1166
1162
|
}
|
|
1167
1163
|
),
|
|
1168
1164
|
/* @__PURE__ */ t(
|
|
1169
1165
|
me,
|
|
1170
1166
|
{
|
|
1171
1167
|
value: a.sort ?? "relevance",
|
|
1172
|
-
onChange: (
|
|
1168
|
+
onChange: (o) => r({ ...a, sort: o })
|
|
1173
1169
|
}
|
|
1174
1170
|
)
|
|
1175
1171
|
] }) : /* @__PURE__ */ t("div", { className: "ds:flex ds:justify-end", children: /* @__PURE__ */ t(
|
|
1176
1172
|
me,
|
|
1177
1173
|
{
|
|
1178
1174
|
value: a.sort ?? "relevance",
|
|
1179
|
-
onChange: (
|
|
1175
|
+
onChange: (o) => r({ ...a, sort: o })
|
|
1180
1176
|
}
|
|
1181
1177
|
) })
|
|
1182
1178
|
] });
|
|
@@ -1187,9 +1183,9 @@ function ve(e) {
|
|
|
1187
1183
|
function be({
|
|
1188
1184
|
headingLevel: e
|
|
1189
1185
|
}) {
|
|
1190
|
-
const { t: n } =
|
|
1186
|
+
const { t: n } = w("ui");
|
|
1191
1187
|
return /* @__PURE__ */ t(
|
|
1192
|
-
|
|
1188
|
+
lt,
|
|
1193
1189
|
{
|
|
1194
1190
|
variant: "no-results",
|
|
1195
1191
|
headingLevel: ve(e),
|
|
@@ -1202,34 +1198,34 @@ function ye({
|
|
|
1202
1198
|
onRetry: e,
|
|
1203
1199
|
headingLevel: n
|
|
1204
1200
|
}) {
|
|
1205
|
-
const { t: a } =
|
|
1201
|
+
const { t: a } = w("ui"), r = ve(n);
|
|
1206
1202
|
return /* @__PURE__ */ m(ee, { variant: "error", children: [
|
|
1207
|
-
/* @__PURE__ */ t(ee.Title, { as: `h${
|
|
1203
|
+
/* @__PURE__ */ t(ee.Title, { as: `h${r}`, children: a("practiceResults.error.title") }),
|
|
1208
1204
|
/* @__PURE__ */ t(ee.Description, { children: a("practiceResults.error.description") }),
|
|
1209
1205
|
e ? /* @__PURE__ */ t(ee.Action, { children: /* @__PURE__ */ t(
|
|
1210
1206
|
te,
|
|
1211
1207
|
{
|
|
1212
1208
|
intent: "secondary",
|
|
1213
1209
|
size: "sm",
|
|
1214
|
-
startIcon: /* @__PURE__ */ t(
|
|
1210
|
+
startIcon: /* @__PURE__ */ t(gt, { "aria-hidden": "true" }),
|
|
1215
1211
|
onClick: e,
|
|
1216
1212
|
children: a("practiceResults.error.retry")
|
|
1217
1213
|
}
|
|
1218
1214
|
) }) : null
|
|
1219
1215
|
] });
|
|
1220
1216
|
}
|
|
1221
|
-
function
|
|
1217
|
+
function $t(e) {
|
|
1222
1218
|
const {
|
|
1223
1219
|
results: n,
|
|
1224
1220
|
apiKey: a,
|
|
1225
|
-
mapId:
|
|
1226
|
-
zoom:
|
|
1221
|
+
mapId: r,
|
|
1222
|
+
zoom: s,
|
|
1227
1223
|
searchCentre: i,
|
|
1228
1224
|
onLoadMore: d,
|
|
1229
1225
|
loadingMore: u,
|
|
1230
|
-
loadingSkeletons:
|
|
1226
|
+
loadingSkeletons: o,
|
|
1231
1227
|
emptyResultsSlot: g,
|
|
1232
|
-
errorSlot:
|
|
1228
|
+
errorSlot: l,
|
|
1233
1229
|
error: p,
|
|
1234
1230
|
onRetry: f,
|
|
1235
1231
|
highlightedId: b,
|
|
@@ -1239,7 +1235,7 @@ function Bt(e) {
|
|
|
1239
1235
|
onConsentRequest: x,
|
|
1240
1236
|
onBoundsChange: c,
|
|
1241
1237
|
listContainerRef: S
|
|
1242
|
-
} = e, { t:
|
|
1238
|
+
} = e, { t: N } = w("ui"), [L, C] = fe(!1), _ = p ? l ?? /* @__PURE__ */ t(ye, { onRetry: f, headingLevel: e.headingLevel }) : n.length === 0 && !o ? g ?? /* @__PURE__ */ t(be, { headingLevel: e.headingLevel }) : /* @__PURE__ */ t(
|
|
1243
1239
|
he,
|
|
1244
1240
|
{
|
|
1245
1241
|
results: n,
|
|
@@ -1254,7 +1250,7 @@ function Bt(e) {
|
|
|
1254
1250
|
formatNextSlot: e.formatNextSlot,
|
|
1255
1251
|
onLoadMore: d,
|
|
1256
1252
|
loadingMore: u,
|
|
1257
|
-
loadingSkeletons:
|
|
1253
|
+
loadingSkeletons: o,
|
|
1258
1254
|
density: "compact",
|
|
1259
1255
|
containerRef: S
|
|
1260
1256
|
}
|
|
@@ -1268,9 +1264,9 @@ function Bt(e) {
|
|
|
1268
1264
|
{
|
|
1269
1265
|
results: n,
|
|
1270
1266
|
searchCentre: i,
|
|
1271
|
-
zoom:
|
|
1267
|
+
zoom: s,
|
|
1272
1268
|
apiKey: a,
|
|
1273
|
-
mapId:
|
|
1269
|
+
mapId: r,
|
|
1274
1270
|
highlightedId: b,
|
|
1275
1271
|
onPinClick: (A) => {
|
|
1276
1272
|
J(n, A, "pin", e.onResultSelect), y(A);
|
|
@@ -1289,24 +1285,24 @@ function Bt(e) {
|
|
|
1289
1285
|
{
|
|
1290
1286
|
intent: "primary",
|
|
1291
1287
|
size: "md",
|
|
1292
|
-
startIcon: /* @__PURE__ */ t(
|
|
1293
|
-
onClick: () =>
|
|
1294
|
-
children:
|
|
1288
|
+
startIcon: /* @__PURE__ */ t(kt, { "aria-hidden": "true" }),
|
|
1289
|
+
onClick: () => C(!0),
|
|
1290
|
+
children: N("practiceResults.viewMap")
|
|
1295
1291
|
}
|
|
1296
1292
|
) }),
|
|
1297
|
-
/* @__PURE__ */ t(I.Root, { open: L, onOpenChange:
|
|
1298
|
-
/* @__PURE__ */ t(I.Header, { children: /* @__PURE__ */ t(I.Title, { children:
|
|
1293
|
+
/* @__PURE__ */ t(I.Root, { open: L, onOpenChange: C, children: /* @__PURE__ */ m(I.Content, { side: "bottom", size: "lg", children: [
|
|
1294
|
+
/* @__PURE__ */ t(I.Header, { children: /* @__PURE__ */ t(I.Title, { children: N("practiceResults.map.label") }) }),
|
|
1299
1295
|
/* @__PURE__ */ m(I.Body, { children: [
|
|
1300
|
-
/* @__PURE__ */ t(I.Description, { className: "ds:sr-only", children:
|
|
1296
|
+
/* @__PURE__ */ t(I.Description, { className: "ds:sr-only", children: N("practiceResults.sheet.description") }),
|
|
1301
1297
|
/* @__PURE__ */ m("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", children: [
|
|
1302
1298
|
/* @__PURE__ */ t("div", { className: "ds:h-[20rem]", children: /* @__PURE__ */ t(
|
|
1303
1299
|
pe,
|
|
1304
1300
|
{
|
|
1305
1301
|
results: n,
|
|
1306
1302
|
searchCentre: i,
|
|
1307
|
-
zoom:
|
|
1303
|
+
zoom: s,
|
|
1308
1304
|
apiKey: a,
|
|
1309
|
-
mapId:
|
|
1305
|
+
mapId: r,
|
|
1310
1306
|
highlightedId: b,
|
|
1311
1307
|
onPinClick: (A) => {
|
|
1312
1308
|
J(n, A, "pin", e.onResultSelect), y(A);
|
|
@@ -1325,7 +1321,7 @@ function Bt(e) {
|
|
|
1325
1321
|
] }) })
|
|
1326
1322
|
] });
|
|
1327
1323
|
}
|
|
1328
|
-
const
|
|
1324
|
+
const Ot = {
|
|
1329
1325
|
peek: "sm",
|
|
1330
1326
|
half: "md",
|
|
1331
1327
|
full: "lg"
|
|
@@ -1334,24 +1330,24 @@ const $t = {
|
|
|
1334
1330
|
"half",
|
|
1335
1331
|
"full"
|
|
1336
1332
|
];
|
|
1337
|
-
function
|
|
1338
|
-
const { t: a, i18n:
|
|
1333
|
+
function Dt({ value: e, onChange: n }) {
|
|
1334
|
+
const { t: a, i18n: r } = w("ui"), s = r.dir() === "rtl", i = T(
|
|
1339
1335
|
/* @__PURE__ */ new Map()
|
|
1340
|
-
), d =
|
|
1336
|
+
), d = $((o) => {
|
|
1341
1337
|
var g;
|
|
1342
|
-
(g = i.current.get(
|
|
1343
|
-
}, []), u =
|
|
1344
|
-
(
|
|
1345
|
-
const
|
|
1338
|
+
(g = i.current.get(o)) == null || g.focus();
|
|
1339
|
+
}, []), u = $(
|
|
1340
|
+
(o, g) => {
|
|
1341
|
+
const l = U.indexOf(g), p = U.length, f = s ? "ArrowLeft" : "ArrowRight", b = s ? "ArrowRight" : "ArrowLeft";
|
|
1346
1342
|
let h = null;
|
|
1347
|
-
switch (
|
|
1343
|
+
switch (o.key) {
|
|
1348
1344
|
case f:
|
|
1349
1345
|
case "ArrowDown":
|
|
1350
|
-
h = U[(
|
|
1346
|
+
h = U[(l + 1) % p];
|
|
1351
1347
|
break;
|
|
1352
1348
|
case b:
|
|
1353
1349
|
case "ArrowUp":
|
|
1354
|
-
h = U[(
|
|
1350
|
+
h = U[(l - 1 + p) % p];
|
|
1355
1351
|
break;
|
|
1356
1352
|
case "Home":
|
|
1357
1353
|
h = U[0];
|
|
@@ -1362,9 +1358,9 @@ function Ot({ value: e, onChange: n }) {
|
|
|
1362
1358
|
default:
|
|
1363
1359
|
return;
|
|
1364
1360
|
}
|
|
1365
|
-
|
|
1361
|
+
o.preventDefault(), h && h !== g && n(h), h && d(h);
|
|
1366
1362
|
},
|
|
1367
|
-
[d,
|
|
1363
|
+
[d, s, n]
|
|
1368
1364
|
);
|
|
1369
1365
|
return /* @__PURE__ */ t(
|
|
1370
1366
|
"div",
|
|
@@ -1372,44 +1368,44 @@ function Ot({ value: e, onChange: n }) {
|
|
|
1372
1368
|
role: "radiogroup",
|
|
1373
1369
|
"aria-label": a("practiceResults.sheet.snap.label"),
|
|
1374
1370
|
className: "ds:inline-flex ds:items-center ds:gap-[var(--spacing-2xs)]",
|
|
1375
|
-
children: U.map((
|
|
1376
|
-
const g = e ===
|
|
1371
|
+
children: U.map((o) => {
|
|
1372
|
+
const g = e === o;
|
|
1377
1373
|
return /* @__PURE__ */ t(
|
|
1378
1374
|
"button",
|
|
1379
1375
|
{
|
|
1380
|
-
ref: (
|
|
1381
|
-
|
|
1376
|
+
ref: (l) => {
|
|
1377
|
+
l ? i.current.set(o, l) : i.current.delete(o);
|
|
1382
1378
|
},
|
|
1383
1379
|
type: "button",
|
|
1384
1380
|
role: "radio",
|
|
1385
1381
|
"aria-checked": g,
|
|
1386
|
-
"aria-label": a(`practiceResults.sheet.snap.${
|
|
1382
|
+
"aria-label": a(`practiceResults.sheet.snap.${o}`),
|
|
1387
1383
|
tabIndex: g ? 0 : -1,
|
|
1388
|
-
onClick: () => n(
|
|
1389
|
-
onKeyDown: (
|
|
1384
|
+
onClick: () => n(o),
|
|
1385
|
+
onKeyDown: (l) => u(l, o),
|
|
1390
1386
|
className: ne({
|
|
1391
1387
|
state: g ? "active" : "idle"
|
|
1392
1388
|
}),
|
|
1393
|
-
children: a(`practiceResults.sheet.snap.${
|
|
1389
|
+
children: a(`practiceResults.sheet.snap.${o}`)
|
|
1394
1390
|
},
|
|
1395
|
-
|
|
1391
|
+
o
|
|
1396
1392
|
);
|
|
1397
1393
|
})
|
|
1398
1394
|
}
|
|
1399
1395
|
);
|
|
1400
1396
|
}
|
|
1401
|
-
function
|
|
1397
|
+
function Vt(e) {
|
|
1402
1398
|
const {
|
|
1403
1399
|
results: n,
|
|
1404
1400
|
apiKey: a,
|
|
1405
|
-
mapId:
|
|
1406
|
-
zoom:
|
|
1401
|
+
mapId: r,
|
|
1402
|
+
zoom: s,
|
|
1407
1403
|
searchCentre: i,
|
|
1408
1404
|
onLoadMore: d,
|
|
1409
1405
|
loadingMore: u,
|
|
1410
|
-
loadingSkeletons:
|
|
1406
|
+
loadingSkeletons: o,
|
|
1411
1407
|
emptyResultsSlot: g,
|
|
1412
|
-
errorSlot:
|
|
1408
|
+
errorSlot: l,
|
|
1413
1409
|
error: p,
|
|
1414
1410
|
onRetry: f,
|
|
1415
1411
|
highlightedId: b,
|
|
@@ -1419,10 +1415,10 @@ function Dt(e) {
|
|
|
1419
1415
|
onConsentRequest: x,
|
|
1420
1416
|
onBoundsChange: c,
|
|
1421
1417
|
listContainerRef: S,
|
|
1422
|
-
facets:
|
|
1418
|
+
facets: N,
|
|
1423
1419
|
value: L,
|
|
1424
|
-
onChange:
|
|
1425
|
-
} = e, { t: _ } =
|
|
1420
|
+
onChange: C
|
|
1421
|
+
} = e, { t: _ } = w("ui"), [A, G] = fe("half"), Z = Ot[A], Q = mt("(min-width: 1024px)"), E = p ? l ?? /* @__PURE__ */ t(ye, { onRetry: f, headingLevel: e.headingLevel }) : n.length === 0 && !o ? g ?? /* @__PURE__ */ t(be, { headingLevel: e.headingLevel }) : /* @__PURE__ */ t(
|
|
1426
1422
|
he,
|
|
1427
1423
|
{
|
|
1428
1424
|
results: n,
|
|
@@ -1437,22 +1433,22 @@ function Dt(e) {
|
|
|
1437
1433
|
formatNextSlot: e.formatNextSlot,
|
|
1438
1434
|
onLoadMore: d,
|
|
1439
1435
|
loadingMore: u,
|
|
1440
|
-
loadingSkeletons:
|
|
1436
|
+
loadingSkeletons: o,
|
|
1441
1437
|
density: "compact",
|
|
1442
1438
|
apiKey: a,
|
|
1443
1439
|
containerRef: S
|
|
1444
1440
|
}
|
|
1445
|
-
),
|
|
1441
|
+
), j = /* @__PURE__ */ t(
|
|
1446
1442
|
pe,
|
|
1447
1443
|
{
|
|
1448
1444
|
results: n,
|
|
1449
1445
|
searchCentre: i,
|
|
1450
|
-
zoom:
|
|
1446
|
+
zoom: s,
|
|
1451
1447
|
apiKey: a,
|
|
1452
|
-
mapId:
|
|
1448
|
+
mapId: r,
|
|
1453
1449
|
highlightedId: b,
|
|
1454
|
-
onPinClick: (
|
|
1455
|
-
J(n,
|
|
1450
|
+
onPinClick: (R) => {
|
|
1451
|
+
J(n, R, "pin", e.onResultSelect), y(R);
|
|
1456
1452
|
},
|
|
1457
1453
|
onPinHover: h,
|
|
1458
1454
|
onPinFirstInteract: e.onPinFirstInteract,
|
|
@@ -1461,12 +1457,12 @@ function Dt(e) {
|
|
|
1461
1457
|
onConsentRequest: x,
|
|
1462
1458
|
mapHandleRef: e.mapHandleRef
|
|
1463
1459
|
}
|
|
1464
|
-
),
|
|
1460
|
+
), V = N.length > 0 ? /* @__PURE__ */ t("div", { className: "ds:absolute ds:start-[var(--spacing-md)] ds:top-[var(--spacing-md)] ds:max-w-[calc(100%-var(--spacing-lg))]", children: /* @__PURE__ */ t(
|
|
1465
1461
|
ze,
|
|
1466
1462
|
{
|
|
1467
|
-
facets:
|
|
1463
|
+
facets: N,
|
|
1468
1464
|
value: L.facets,
|
|
1469
|
-
onChange: (
|
|
1465
|
+
onChange: (R) => C({ ...L, facets: R }),
|
|
1470
1466
|
floating: !0
|
|
1471
1467
|
}
|
|
1472
1468
|
) }) : null;
|
|
@@ -1488,11 +1484,11 @@ function Dt(e) {
|
|
|
1488
1484
|
// the map column is `lg:sticky lg:h-[44rem]` (stays visible
|
|
1489
1485
|
// as the patient scrolls cards) and the rail renders at
|
|
1490
1486
|
// natural height. Single page scroll.
|
|
1491
|
-
/* @__PURE__ */ m(
|
|
1487
|
+
/* @__PURE__ */ m(st, { children: [
|
|
1492
1488
|
/* @__PURE__ */ t(ge, { variantBodyProps: e }),
|
|
1493
1489
|
/* @__PURE__ */ m("div", { className: "ds:grid ds:grid-cols-[65fr_35fr] ds:gap-[var(--spacing-lg)] ds:items-start", children: [
|
|
1494
|
-
/* @__PURE__ */ t("div", { className: "ds:sticky ds:top-[var(--spacing-md)] ds:h-[44rem]", children:
|
|
1495
|
-
/* @__PURE__ */ t("div", { className: "ds:min-w-0", children:
|
|
1490
|
+
/* @__PURE__ */ t("div", { className: "ds:sticky ds:top-[var(--spacing-md)] ds:h-[44rem]", children: j }),
|
|
1491
|
+
/* @__PURE__ */ t("div", { className: "ds:min-w-0", children: E })
|
|
1496
1492
|
] })
|
|
1497
1493
|
] })
|
|
1498
1494
|
) : (
|
|
@@ -1514,17 +1510,17 @@ function Dt(e) {
|
|
|
1514
1510
|
}
|
|
1515
1511
|
),
|
|
1516
1512
|
/* @__PURE__ */ m("div", { className: "ds:relative ds:h-[60vh] ds:min-h-[20rem]", children: [
|
|
1517
|
-
|
|
1518
|
-
|
|
1513
|
+
j,
|
|
1514
|
+
V
|
|
1519
1515
|
] }),
|
|
1520
1516
|
/* @__PURE__ */ t(I.Root, { open: !0, children: /* @__PURE__ */ t(
|
|
1521
1517
|
I.Content,
|
|
1522
1518
|
{
|
|
1523
1519
|
side: "bottom",
|
|
1524
1520
|
size: Z,
|
|
1525
|
-
onEscapeKeyDown: (
|
|
1526
|
-
onPointerDownOutside: (
|
|
1527
|
-
onInteractOutside: (
|
|
1521
|
+
onEscapeKeyDown: (R) => R.preventDefault(),
|
|
1522
|
+
onPointerDownOutside: (R) => R.preventDefault(),
|
|
1523
|
+
onInteractOutside: (R) => R.preventDefault(),
|
|
1528
1524
|
children: /* @__PURE__ */ m(I.Body, { children: [
|
|
1529
1525
|
/* @__PURE__ */ t(I.Description, { className: "ds:sr-only", children: _("practiceResults.sheet.descriptionMapFirst") }),
|
|
1530
1526
|
/* @__PURE__ */ m("div", { className: "ds:flex ds:items-start ds:justify-between ds:gap-[var(--spacing-sm)] ds:pb-[var(--spacing-sm)]", children: [
|
|
@@ -1532,7 +1528,7 @@ function Dt(e) {
|
|
|
1532
1528
|
count: e.totalCount ?? n.length
|
|
1533
1529
|
}) }),
|
|
1534
1530
|
/* @__PURE__ */ t(
|
|
1535
|
-
|
|
1531
|
+
Dt,
|
|
1536
1532
|
{
|
|
1537
1533
|
value: A,
|
|
1538
1534
|
onChange: G
|
|
@@ -1543,36 +1539,36 @@ function Dt(e) {
|
|
|
1543
1539
|
me,
|
|
1544
1540
|
{
|
|
1545
1541
|
value: L.sort ?? "relevance",
|
|
1546
|
-
onChange: (
|
|
1542
|
+
onChange: (R) => C({ ...L, sort: R })
|
|
1547
1543
|
}
|
|
1548
1544
|
) }),
|
|
1549
|
-
|
|
1545
|
+
E
|
|
1550
1546
|
] })
|
|
1551
1547
|
}
|
|
1552
1548
|
) })
|
|
1553
1549
|
] })
|
|
1554
1550
|
) });
|
|
1555
1551
|
}
|
|
1556
|
-
function
|
|
1552
|
+
function Kt(e) {
|
|
1557
1553
|
const {
|
|
1558
1554
|
results: n,
|
|
1559
1555
|
apiKey: a,
|
|
1560
|
-
onLoadMore:
|
|
1561
|
-
loadingMore:
|
|
1556
|
+
onLoadMore: r,
|
|
1557
|
+
loadingMore: s,
|
|
1562
1558
|
loadingSkeletons: i,
|
|
1563
1559
|
emptyResultsSlot: d,
|
|
1564
1560
|
errorSlot: u,
|
|
1565
|
-
error:
|
|
1561
|
+
error: o,
|
|
1566
1562
|
onRetry: g,
|
|
1567
|
-
highlightedId:
|
|
1563
|
+
highlightedId: l,
|
|
1568
1564
|
onCardHover: p,
|
|
1569
1565
|
listContainerRef: f
|
|
1570
|
-
} = e, b =
|
|
1566
|
+
} = e, b = o ? u ?? /* @__PURE__ */ t(ye, { onRetry: g, headingLevel: e.headingLevel }) : n.length === 0 && !i ? d ?? /* @__PURE__ */ t(be, { headingLevel: e.headingLevel }) : /* @__PURE__ */ t(
|
|
1571
1567
|
he,
|
|
1572
1568
|
{
|
|
1573
1569
|
results: n,
|
|
1574
1570
|
headingLevel: e.headingLevel,
|
|
1575
|
-
highlightedId:
|
|
1571
|
+
highlightedId: l,
|
|
1576
1572
|
onCardHover: p,
|
|
1577
1573
|
onCardSelect: e.onCardSelect,
|
|
1578
1574
|
onCardOpenClick: e.onCardOpenClick,
|
|
@@ -1580,8 +1576,8 @@ function Vt(e) {
|
|
|
1580
1576
|
openLabel: e.openLabel,
|
|
1581
1577
|
bookLabel: e.bookLabel,
|
|
1582
1578
|
formatNextSlot: e.formatNextSlot,
|
|
1583
|
-
onLoadMore:
|
|
1584
|
-
loadingMore:
|
|
1579
|
+
onLoadMore: r,
|
|
1580
|
+
loadingMore: s,
|
|
1585
1581
|
loadingSkeletons: i,
|
|
1586
1582
|
density: "rich",
|
|
1587
1583
|
apiKey: a,
|
|
@@ -1593,17 +1589,17 @@ function Vt(e) {
|
|
|
1593
1589
|
b
|
|
1594
1590
|
] });
|
|
1595
1591
|
}
|
|
1596
|
-
const
|
|
1592
|
+
const Et = rt(function({
|
|
1597
1593
|
variant: n = "split-list-map",
|
|
1598
1594
|
results: a,
|
|
1599
|
-
totalCount:
|
|
1600
|
-
searchCentre:
|
|
1595
|
+
totalCount: r,
|
|
1596
|
+
searchCentre: s,
|
|
1601
1597
|
facets: i,
|
|
1602
1598
|
googleMapsApiKey: d,
|
|
1603
1599
|
mapId: u,
|
|
1604
|
-
defaultZoom:
|
|
1600
|
+
defaultZoom: o = wt,
|
|
1605
1601
|
onBoundsChange: g,
|
|
1606
|
-
consentGranted:
|
|
1602
|
+
consentGranted: l,
|
|
1607
1603
|
onConsentRequest: p,
|
|
1608
1604
|
skipConsentGate: f = !1,
|
|
1609
1605
|
onLoadMore: b,
|
|
@@ -1613,21 +1609,21 @@ const Kt = st(function({
|
|
|
1613
1609
|
onResultSelect: x,
|
|
1614
1610
|
loading: c,
|
|
1615
1611
|
emptyResultsSlot: S,
|
|
1616
|
-
errorSlot:
|
|
1612
|
+
errorSlot: N,
|
|
1617
1613
|
error: L,
|
|
1618
|
-
onRetry:
|
|
1614
|
+
onRetry: C,
|
|
1619
1615
|
heading: _,
|
|
1620
1616
|
headingLevel: A = 2,
|
|
1621
1617
|
intro: G,
|
|
1622
1618
|
cardOpenButtonLabel: Z,
|
|
1623
1619
|
cardBookButtonLabel: Q,
|
|
1624
|
-
showCardOpenButton:
|
|
1625
|
-
"aria-label":
|
|
1626
|
-
id:
|
|
1627
|
-
className:
|
|
1628
|
-
...
|
|
1629
|
-
},
|
|
1630
|
-
const { t: ie, i18n: xe } =
|
|
1620
|
+
showCardOpenButton: E = !0,
|
|
1621
|
+
"aria-label": j,
|
|
1622
|
+
id: V,
|
|
1623
|
+
className: R,
|
|
1624
|
+
...B
|
|
1625
|
+
}, je) {
|
|
1626
|
+
const { t: ie, i18n: xe } = w("ui"), [qe, W] = fe(null), Y = T(/* @__PURE__ */ new Set()), se = T(/* @__PURE__ */ new Set()), Ue = T(null), re = T(null), oe = M(
|
|
1631
1627
|
() => ({
|
|
1632
1628
|
getVariant: () => n,
|
|
1633
1629
|
scrollToResult: (v) => {
|
|
@@ -1644,8 +1640,8 @@ const Kt = st(function({
|
|
|
1644
1640
|
}),
|
|
1645
1641
|
[n]
|
|
1646
1642
|
);
|
|
1647
|
-
|
|
1648
|
-
const
|
|
1643
|
+
ot(je, () => oe, [oe]), ft(Ct, oe, V);
|
|
1644
|
+
const Ge = E ? Z ?? ie("practiceResults.card.open") : void 0, Ze = Q ?? ie("practiceResults.card.book"), Qe = $(
|
|
1649
1645
|
(v) => {
|
|
1650
1646
|
if (v.nextAvailableSlot)
|
|
1651
1647
|
try {
|
|
@@ -1663,16 +1659,16 @@ const Kt = st(function({
|
|
|
1663
1659
|
X(() => {
|
|
1664
1660
|
ke.current !== n && (ke.current = n, H("serp_variant_exposed", {
|
|
1665
1661
|
variant: n,
|
|
1666
|
-
totalCount:
|
|
1662
|
+
totalCount: r ?? a.length
|
|
1667
1663
|
}), Y.current = /* @__PURE__ */ new Set(), se.current = /* @__PURE__ */ new Set());
|
|
1668
1664
|
}, [n]);
|
|
1669
1665
|
const le = T(!1), ce = M(
|
|
1670
|
-
() =>
|
|
1666
|
+
() => St(i ?? [], a, y.facets),
|
|
1671
1667
|
[i, a, y.facets]
|
|
1672
|
-
), de = y.sort ?? (
|
|
1673
|
-
const v =
|
|
1674
|
-
return
|
|
1675
|
-
}, [a, y.facets, ce, de,
|
|
1668
|
+
), de = y.sort ?? (s ? "distance" : "relevance"), z = M(() => {
|
|
1669
|
+
const v = Lt(a, y.facets, ce);
|
|
1670
|
+
return Pt(v, de, s);
|
|
1671
|
+
}, [a, y.facets, ce, de, s]);
|
|
1676
1672
|
X(() => {
|
|
1677
1673
|
const v = z.length === 0;
|
|
1678
1674
|
v && !le.current ? (H("serp_empty_results", {
|
|
@@ -1686,11 +1682,11 @@ const Kt = st(function({
|
|
|
1686
1682
|
},
|
|
1687
1683
|
[]
|
|
1688
1684
|
);
|
|
1689
|
-
const
|
|
1685
|
+
const Je = $((v) => {
|
|
1690
1686
|
W(v), !Y.current.has(v) && (Ce.current === v && q.current || (q.current && clearTimeout(q.current), Ce.current = v, q.current = setTimeout(() => {
|
|
1691
1687
|
Y.current.has(v) || (Y.current.add(v), H("serp_result_hovered_card", { resultId: v })), q.current = null;
|
|
1692
1688
|
}, 500)));
|
|
1693
|
-
}, []),
|
|
1689
|
+
}, []), We = $((v) => {
|
|
1694
1690
|
W(v);
|
|
1695
1691
|
const F = re.current;
|
|
1696
1692
|
if (!F) return;
|
|
@@ -1698,9 +1694,9 @@ const Kt = st(function({
|
|
|
1698
1694
|
`[data-component="practice-result-card"][data-result-id="${CSS.escape(v)}"]`
|
|
1699
1695
|
);
|
|
1700
1696
|
P == null || P.scrollIntoView({ behavior: "smooth", block: "nearest" });
|
|
1701
|
-
}, []),
|
|
1697
|
+
}, []), Xe = $((v) => {
|
|
1702
1698
|
se.current.has(v) || (se.current.add(v), H("serp_result_hovered_pin", { resultId: v }));
|
|
1703
|
-
}, []), we = T(null),
|
|
1699
|
+
}, []), we = T(null), Ye = $(
|
|
1704
1700
|
(v) => {
|
|
1705
1701
|
W(v);
|
|
1706
1702
|
const F = z.find((P) => P.id === v);
|
|
@@ -1716,7 +1712,7 @@ const Kt = st(function({
|
|
|
1716
1712
|
}
|
|
1717
1713
|
},
|
|
1718
1714
|
[z, x]
|
|
1719
|
-
),
|
|
1715
|
+
), et = $(
|
|
1720
1716
|
(v) => {
|
|
1721
1717
|
J(
|
|
1722
1718
|
z,
|
|
@@ -1726,7 +1722,7 @@ const Kt = st(function({
|
|
|
1726
1722
|
);
|
|
1727
1723
|
},
|
|
1728
1724
|
[z, x]
|
|
1729
|
-
),
|
|
1725
|
+
), tt = $(
|
|
1730
1726
|
(v) => {
|
|
1731
1727
|
J(
|
|
1732
1728
|
z,
|
|
@@ -1736,10 +1732,10 @@ const Kt = st(function({
|
|
|
1736
1732
|
);
|
|
1737
1733
|
},
|
|
1738
1734
|
[z, x]
|
|
1739
|
-
),
|
|
1735
|
+
), nt = !!c && a.length === 0, ue = {
|
|
1740
1736
|
results: z,
|
|
1741
|
-
totalCount:
|
|
1742
|
-
searchCentre:
|
|
1737
|
+
totalCount: r,
|
|
1738
|
+
searchCentre: s,
|
|
1743
1739
|
facets: ce,
|
|
1744
1740
|
value: { ...y, sort: de },
|
|
1745
1741
|
onChange: k,
|
|
@@ -1748,65 +1744,65 @@ const Kt = st(function({
|
|
|
1748
1744
|
loadingMore: h,
|
|
1749
1745
|
apiKey: d,
|
|
1750
1746
|
mapId: u,
|
|
1751
|
-
zoom:
|
|
1747
|
+
zoom: o,
|
|
1752
1748
|
// 0.31.4: when `skipConsentGate` is true the kit synthesises
|
|
1753
1749
|
// `consentGranted=true` for every internal MapView; the consumer's
|
|
1754
1750
|
// CMP at the page level is responsible for whether the Google Maps
|
|
1755
1751
|
// loader script is present at all. `onConsentRequest` is dropped
|
|
1756
1752
|
// because no placeholder renders — nothing to fire it from.
|
|
1757
|
-
consentGranted: f ? !0 :
|
|
1753
|
+
consentGranted: f ? !0 : l,
|
|
1758
1754
|
onConsentRequest: f ? void 0 : p,
|
|
1759
1755
|
onBoundsChange: g,
|
|
1760
|
-
loadingSkeletons:
|
|
1756
|
+
loadingSkeletons: nt,
|
|
1761
1757
|
emptyResultsSlot: S,
|
|
1762
|
-
errorSlot:
|
|
1758
|
+
errorSlot: N,
|
|
1763
1759
|
error: L,
|
|
1764
|
-
onRetry:
|
|
1760
|
+
onRetry: C,
|
|
1765
1761
|
heading: _,
|
|
1766
1762
|
headingLevel: A,
|
|
1767
1763
|
intro: G,
|
|
1768
|
-
highlightedId:
|
|
1769
|
-
onCardHover:
|
|
1770
|
-
onPinClick:
|
|
1771
|
-
onPinFirstInteract:
|
|
1772
|
-
onCardSelect:
|
|
1773
|
-
onCardOpenClick:
|
|
1774
|
-
onCardBookClick:
|
|
1775
|
-
openLabel:
|
|
1776
|
-
bookLabel:
|
|
1777
|
-
formatNextSlot:
|
|
1778
|
-
listContainerRef:
|
|
1764
|
+
highlightedId: qe,
|
|
1765
|
+
onCardHover: Je,
|
|
1766
|
+
onPinClick: We,
|
|
1767
|
+
onPinFirstInteract: Xe,
|
|
1768
|
+
onCardSelect: Ye,
|
|
1769
|
+
onCardOpenClick: et,
|
|
1770
|
+
onCardBookClick: tt,
|
|
1771
|
+
openLabel: Ge,
|
|
1772
|
+
bookLabel: Ze,
|
|
1773
|
+
formatNextSlot: Qe,
|
|
1774
|
+
listContainerRef: Ue,
|
|
1779
1775
|
mapHandleRef: we
|
|
1780
|
-
},
|
|
1776
|
+
}, at = (() => {
|
|
1781
1777
|
switch (n) {
|
|
1782
1778
|
case "map-first":
|
|
1783
|
-
return /* @__PURE__ */ t(Dt, { ...ue });
|
|
1784
|
-
case "rich-cards":
|
|
1785
1779
|
return /* @__PURE__ */ t(Vt, { ...ue });
|
|
1780
|
+
case "rich-cards":
|
|
1781
|
+
return /* @__PURE__ */ t(Kt, { ...ue });
|
|
1786
1782
|
case "split-list-map":
|
|
1787
1783
|
default:
|
|
1788
|
-
return /* @__PURE__ */ t(
|
|
1784
|
+
return /* @__PURE__ */ t($t, { ...ue });
|
|
1789
1785
|
}
|
|
1790
|
-
})(),
|
|
1786
|
+
})(), it = j ?? ie("practiceResults.regionLabel");
|
|
1791
1787
|
return /* @__PURE__ */ t(
|
|
1792
1788
|
"div",
|
|
1793
1789
|
{
|
|
1794
1790
|
ref: re,
|
|
1795
1791
|
role: "region",
|
|
1796
|
-
"aria-label":
|
|
1797
|
-
id:
|
|
1792
|
+
"aria-label": it,
|
|
1793
|
+
id: V,
|
|
1798
1794
|
"data-component": "practice-results",
|
|
1799
|
-
"data-component-id":
|
|
1795
|
+
"data-component-id": V,
|
|
1800
1796
|
"data-variant": n,
|
|
1801
|
-
className:
|
|
1802
|
-
...
|
|
1803
|
-
children:
|
|
1797
|
+
className: At({ variant: n, className: R }),
|
|
1798
|
+
...B,
|
|
1799
|
+
children: at
|
|
1804
1800
|
}
|
|
1805
1801
|
);
|
|
1806
1802
|
});
|
|
1807
|
-
|
|
1803
|
+
Et.displayName = "PracticeResults";
|
|
1808
1804
|
export {
|
|
1809
|
-
|
|
1810
|
-
|
|
1805
|
+
Et as P,
|
|
1806
|
+
Ct as p
|
|
1811
1807
|
};
|
|
1812
|
-
//# sourceMappingURL=practice-results-
|
|
1808
|
+
//# sourceMappingURL=practice-results-BnY2EkzI.js.map
|