@alfadocs/ui-kit-debug 1.91.0 → 1.92.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (118) hide show
  1. package/README.md +24 -0
  2. package/dist/_chunks/{practice-results-CQ_KvEXK.js → practice-results-Bls-mygM.js} +383 -361
  3. package/dist/_chunks/practice-results-Bls-mygM.js.map +1 -0
  4. package/dist/_chunks/{booking-opt_h7Uc.js → reserved.agent-C1gLyK2R.js} +1031 -1011
  5. package/dist/_chunks/reserved.agent-C1gLyK2R.js.map +1 -0
  6. package/dist/ag-grid.css +2746 -0
  7. package/dist/agent-catalog.json +15 -1
  8. package/dist/apexcharts.css +40 -0
  9. package/dist/components/booking/index.d.ts +3 -0
  10. package/dist/components/booking/index.d.ts.map +1 -1
  11. package/dist/components/booking/index.js +6 -4
  12. package/dist/components/booking/reserved.agent.d.ts +4 -0
  13. package/dist/components/booking/reserved.agent.d.ts.map +1 -0
  14. package/dist/components/booking/reserved.d.ts +9 -6
  15. package/dist/components/booking/reserved.d.ts.map +1 -1
  16. package/dist/components/practice-results/index.js +1 -1
  17. package/dist/components/practice-results/practice-results.d.ts +1 -1
  18. package/dist/components/practice-results/practice-results.d.ts.map +1 -1
  19. package/dist/core.css +2 -0
  20. package/dist/fullcalendar.css +56 -0
  21. package/dist/i18n/config.d.ts.map +1 -1
  22. package/dist/i18n/config.js +81 -81
  23. package/dist/i18n/config.js.map +1 -1
  24. package/dist/i18n/locales/ar.d.ts +1 -0
  25. package/dist/i18n/locales/ar.d.ts.map +1 -1
  26. package/dist/i18n/locales/ar.js +2 -1
  27. package/dist/i18n/locales/ar.js.map +1 -1
  28. package/dist/i18n/locales/de.d.ts +1 -0
  29. package/dist/i18n/locales/de.d.ts.map +1 -1
  30. package/dist/i18n/locales/de.js +2 -1
  31. package/dist/i18n/locales/de.js.map +1 -1
  32. package/dist/i18n/locales/el.d.ts +1 -0
  33. package/dist/i18n/locales/el.d.ts.map +1 -1
  34. package/dist/i18n/locales/el.js +2 -1
  35. package/dist/i18n/locales/el.js.map +1 -1
  36. package/dist/i18n/locales/en.d.ts +3 -2
  37. package/dist/i18n/locales/en.d.ts.map +1 -1
  38. package/dist/i18n/locales/en.js +2 -1
  39. package/dist/i18n/locales/en.js.map +1 -1
  40. package/dist/i18n/locales/es.d.ts +1 -0
  41. package/dist/i18n/locales/es.d.ts.map +1 -1
  42. package/dist/i18n/locales/es.js +2 -1
  43. package/dist/i18n/locales/es.js.map +1 -1
  44. package/dist/i18n/locales/fr.d.ts +1 -0
  45. package/dist/i18n/locales/fr.d.ts.map +1 -1
  46. package/dist/i18n/locales/fr.js +2 -1
  47. package/dist/i18n/locales/fr.js.map +1 -1
  48. package/dist/i18n/locales/hi.d.ts +1 -0
  49. package/dist/i18n/locales/hi.d.ts.map +1 -1
  50. package/dist/i18n/locales/hi.js +2 -1
  51. package/dist/i18n/locales/hi.js.map +1 -1
  52. package/dist/i18n/locales/it.d.ts +1 -0
  53. package/dist/i18n/locales/it.d.ts.map +1 -1
  54. package/dist/i18n/locales/it.js +2 -1
  55. package/dist/i18n/locales/it.js.map +1 -1
  56. package/dist/i18n/locales/ja.d.ts +1 -0
  57. package/dist/i18n/locales/ja.d.ts.map +1 -1
  58. package/dist/i18n/locales/ja.js +2 -1
  59. package/dist/i18n/locales/ja.js.map +1 -1
  60. package/dist/i18n/locales/nl.d.ts +1 -0
  61. package/dist/i18n/locales/nl.d.ts.map +1 -1
  62. package/dist/i18n/locales/nl.js +2 -1
  63. package/dist/i18n/locales/nl.js.map +1 -1
  64. package/dist/i18n/locales/pl.d.ts +1 -0
  65. package/dist/i18n/locales/pl.d.ts.map +1 -1
  66. package/dist/i18n/locales/pl.js +2 -1
  67. package/dist/i18n/locales/pl.js.map +1 -1
  68. package/dist/i18n/locales/pt.d.ts +1 -0
  69. package/dist/i18n/locales/pt.d.ts.map +1 -1
  70. package/dist/i18n/locales/pt.js +2 -1
  71. package/dist/i18n/locales/pt.js.map +1 -1
  72. package/dist/i18n/locales/ro.d.ts +1 -0
  73. package/dist/i18n/locales/ro.d.ts.map +1 -1
  74. package/dist/i18n/locales/ro.js +2 -1
  75. package/dist/i18n/locales/ro.js.map +1 -1
  76. package/dist/i18n/locales/ru.d.ts +1 -0
  77. package/dist/i18n/locales/ru.d.ts.map +1 -1
  78. package/dist/i18n/locales/ru.js +2 -1
  79. package/dist/i18n/locales/ru.js.map +1 -1
  80. package/dist/i18n/locales/sq.d.ts +1 -0
  81. package/dist/i18n/locales/sq.d.ts.map +1 -1
  82. package/dist/i18n/locales/sq.js +2 -1
  83. package/dist/i18n/locales/sq.js.map +1 -1
  84. package/dist/i18n/locales/sv.d.ts +1 -0
  85. package/dist/i18n/locales/sv.d.ts.map +1 -1
  86. package/dist/i18n/locales/sv.js +2 -1
  87. package/dist/i18n/locales/sv.js.map +1 -1
  88. package/dist/i18n/locales/tr.d.ts +1 -0
  89. package/dist/i18n/locales/tr.d.ts.map +1 -1
  90. package/dist/i18n/locales/tr.js +2 -1
  91. package/dist/i18n/locales/tr.js.map +1 -1
  92. package/dist/i18n/locales/zh.d.ts +1 -0
  93. package/dist/i18n/locales/zh.d.ts.map +1 -1
  94. package/dist/i18n/locales/zh.js +2 -1
  95. package/dist/i18n/locales/zh.js.map +1 -1
  96. package/dist/index.js +451 -449
  97. package/dist/locales/ar.json +2 -1
  98. package/dist/locales/de.json +2 -1
  99. package/dist/locales/el.json +2 -1
  100. package/dist/locales/en.json +2 -1
  101. package/dist/locales/es.json +2 -1
  102. package/dist/locales/fr.json +2 -1
  103. package/dist/locales/hi.json +2 -1
  104. package/dist/locales/it.json +2 -1
  105. package/dist/locales/ja.json +2 -1
  106. package/dist/locales/nl.json +2 -1
  107. package/dist/locales/pl.json +2 -1
  108. package/dist/locales/pt.json +2 -1
  109. package/dist/locales/ro.json +2 -1
  110. package/dist/locales/ru.json +2 -1
  111. package/dist/locales/sq.json +2 -1
  112. package/dist/locales/sv.json +2 -1
  113. package/dist/locales/tr.json +2 -1
  114. package/dist/locales/zh.json +2 -1
  115. package/dist/redactor.css +54 -0
  116. package/package.json +10 -3
  117. package/dist/_chunks/booking-opt_h7Uc.js.map +0 -1
  118. package/dist/_chunks/practice-results-CQ_KvEXK.js.map +0 -1
@@ -1,37 +1,37 @@
1
- import { jsx as t, jsxs as h, Fragment as at } from "react/jsx-runtime";
2
- import { forwardRef as it, useState as me, useRef as T, useMemo as M, useImperativeHandle as st, useCallback as O, useEffect as J } from "react";
3
- import { c as V } from "./index-D2ZczOXr.js";
1
+ import { jsx as t, jsxs as h, Fragment as it } from "react/jsx-runtime";
2
+ import { forwardRef as st, useState as me, useRef as F, useMemo as M, useImperativeHandle as rt, useCallback as B, useEffect as J } from "react";
3
+ import { c as O } from "./index-D2ZczOXr.js";
4
4
  import { useTranslation as C } from "react-i18next";
5
5
  import { A as Y } from "./alert-9kEwDza3.js";
6
- import { A as Se } from "./avatar-a6042Ox2.js";
6
+ import { A as Le } from "./avatar-a6042Ox2.js";
7
7
  import { B as ee } from "./button-DohK_Ak_.js";
8
8
  import { D } from "./dropdown-menu-D1we7oAY.js";
9
- import { E as rt } from "./empty-state-DwJ5YNzz.js";
10
- import { M as ot } from "./map-view-UrNgxBy3.js";
11
- import { R as Le } from "./rating-CGYpg5dj.js";
9
+ import { E as ot } from "./empty-state-DwJ5YNzz.js";
10
+ import { M as ct } from "./map-view-UrNgxBy3.js";
11
+ import { R as Pe } from "./rating-CGYpg5dj.js";
12
12
  import { S as I } from "./sheet-uZZXaO_S.js";
13
13
  import { S as lt } from "./skeleton-tTWJpvAq.js";
14
- import { S as ct } from "./spinner-CoflYlEx.js";
15
- import { B as $ } from "./badge-BUk4RjTS.js";
16
- import { u as dt } from "./use-media-query-CcAx5SMM.js";
17
- import { b as ut, a as Ce } from "./format-price-BcFBa-WP.js";
18
- import { u as mt } from "./registry-DvAUVLHh.js";
14
+ import { S as dt } from "./spinner-CoflYlEx.js";
15
+ import { B as z } from "./badge-BUk4RjTS.js";
16
+ import { u as ut } from "./use-media-query-CcAx5SMM.js";
17
+ import { b as mt, a as Ce } from "./format-price-BcFBa-WP.js";
18
+ import { u as ft } from "./registry-DvAUVLHh.js";
19
19
  import { c as pt } from "./createLucideIcon-DhHxpK9K.js";
20
- import { R as ft } from "./refresh-cw-DnI0cLFC.js";
21
- import { C as Pe } from "./chevron-down-DWE7GSq9.js";
22
- import { L as Ae } from "./languages-CGLX6Qpe.js";
23
- import { S as Me } from "./shield-check-DCJALLVh.js";
24
- import { H as Te } from "./heart--qCA4ffe.js";
25
- import { M as pe } from "./map-pin-BaY37-Km.js";
26
- import { C as ht } from "./calendar-clock-hbObjfGY.js";
27
- import { C as gt } from "./calendar-plus-BFrIRE4r.js";
20
+ import { R as ht } from "./refresh-cw-DnI0cLFC.js";
21
+ import { C as Ae } from "./chevron-down-DWE7GSq9.js";
22
+ import { L as Me } from "./languages-CGLX6Qpe.js";
23
+ import { S as Fe } from "./shield-check-DCJALLVh.js";
24
+ import { H as Ie } from "./heart--qCA4ffe.js";
25
+ import { M as fe } from "./map-pin-BaY37-Km.js";
26
+ import { C as gt } from "./calendar-clock-hbObjfGY.js";
27
+ import { C as vt } 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 vt = [
34
+ const bt = [
35
35
  [
36
36
  "path",
37
37
  {
@@ -41,7 +41,7 @@ const vt = [
41
41
  ],
42
42
  ["path", { d: "M15 5.764v15", key: "1pn4in" }],
43
43
  ["path", { d: "M9 3.236v15", key: "1uimfh" }]
44
- ], bt = pt("map", vt), xt = {
44
+ ], xt = pt("map", bt), yt = {
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,17 +120,18 @@ const vt = [
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: firstVisitPrice supports fixed, from and range amounts plus an optional practice-written label; it takes precedence over the older firstVisitPriceCents fixed-price field. Absent when neither price is set).'
121
121
  }
122
122
  }
123
- }, yt = 13, wt = [
123
+ }, wt = 13, kt = [
124
124
  "distance",
125
125
  "rating",
126
126
  "next-available",
127
+ "price",
127
128
  "relevance"
128
129
  ];
129
- function Ie(e, n, i) {
130
+ function Te(e, n, i) {
130
131
  const s = `languages.${e}`;
131
132
  return i.exists(s) ? n(s) : e.toUpperCase();
132
133
  }
133
- function B(e, n) {
134
+ function $(e, n) {
134
135
  if (typeof window > "u") return;
135
136
  const i = window.track;
136
137
  try {
@@ -139,27 +140,27 @@ function B(e, n) {
139
140
  }
140
141
  }
141
142
  function Z(e, n, i, s) {
142
- const r = e.findIndex((c) => c.id === n);
143
+ const r = e.findIndex((l) => l.id === n);
143
144
  if (r < 0) return;
144
145
  const a = e[r];
145
- a && (B("serp_result_clicked", { resultId: n, source: i, position: r }), s(a, i));
146
+ a && ($("serp_result_clicked", { resultId: n, source: i, position: r }), s(a, i));
146
147
  }
147
- function kt(e, n) {
148
- const s = (n.lat - e.lat) * Math.PI / 180, r = (n.lng - e.lng) * Math.PI / 180, a = e.lat * Math.PI / 180, c = n.lat * Math.PI / 180, u = Math.sin(s / 2), o = Math.sin(r / 2), f = u * u + Math.cos(a) * Math.cos(c) * o * o;
149
- return 2 * 6371 * Math.asin(Math.min(1, Math.sqrt(f)));
148
+ function Ct(e, n) {
149
+ const s = (n.lat - e.lat) * Math.PI / 180, r = (n.lng - e.lng) * Math.PI / 180, a = e.lat * Math.PI / 180, l = n.lat * Math.PI / 180, u = Math.sin(s / 2), o = Math.sin(r / 2), p = u * u + Math.cos(a) * Math.cos(l) * o * o;
150
+ return 2 * 6371 * Math.asin(Math.min(1, Math.sqrt(p)));
150
151
  }
151
- function Ct(e, n, i) {
152
+ function Rt(e, n, i) {
152
153
  var r;
153
154
  const s = [];
154
155
  for (const a of e) {
155
- const c = a.field ?? a.key, u = (((r = i == null ? void 0 : i[a.key]) == null ? void 0 : r.length) ?? 0) > 0, o = a.type === "boolean" || a.type !== "options" && a.options.length === 0 && (u || n.some(
156
- (f) => typeof f[c] == "boolean"
156
+ const l = a.field ?? a.key, u = (((r = i == null ? void 0 : i[a.key]) == null ? void 0 : r.length) ?? 0) > 0, o = a.type === "boolean" || a.type !== "options" && a.options.length === 0 && (u || n.some(
157
+ (p) => typeof p[l] == "boolean"
157
158
  ));
158
- !o && a.options.length === 0 || s.push({ ...a, boolean: o, booleanField: c });
159
+ !o && a.options.length === 0 || s.push({ ...a, boolean: o, booleanField: l });
159
160
  }
160
161
  return s;
161
162
  }
162
- function Rt(e, n, i) {
163
+ function Nt(e, n, i) {
163
164
  return !n || Object.keys(n).length === 0 ? e : e.filter((s) => {
164
165
  for (const r of i) {
165
166
  const a = n[r.key];
@@ -168,28 +169,47 @@ function Rt(e, n, i) {
168
169
  if (s[r.booleanField] !== !0) return !1;
169
170
  continue;
170
171
  }
171
- const c = r.key === "insurance" ? s.insurances : r.key === "language" ? s.languages : s[r.key];
172
- if (!Array.isArray(c) || !(r.multi ? a.some((o) => c.includes(o)) : c.includes(a[0]))) return !1;
172
+ const l = r.key === "insurance" ? s.insurances : r.key === "language" ? s.languages : s[r.key];
173
+ if (!Array.isArray(l) || !(r.multi ? a.some((o) => l.includes(o)) : l.includes(a[0]))) return !1;
173
174
  }
174
175
  return !0;
175
176
  });
176
177
  }
177
- function Nt(e, n, i) {
178
+ function St(e) {
179
+ const n = e.firstVisitPrice && Number.isFinite(e.firstVisitPrice.minCents) ? e.firstVisitPrice.minCents : e.firstVisitPriceCents;
180
+ return n != null && Number.isFinite(n) && n >= 0 ? n : 1 / 0;
181
+ }
182
+ function Lt(e) {
183
+ return e.firstVisitPrice && Number.isFinite(e.firstVisitPrice.minCents) ? e.firstVisitPrice.kind === "fixed" : !0;
184
+ }
185
+ function Re(e, n) {
186
+ return e == null && n == null ? 0 : e == null ? 1 : n == null ? -1 : e - n;
187
+ }
188
+ function Pt(e, n, i) {
178
189
  const s = e.map((a) => {
179
- const c = a.location ? a.location.distanceKm ?? (i ? kt(i, a.location) : void 0) : void 0;
180
- return { result: a, distanceKm: c };
181
- }), r = (a, c) => {
182
- var u, o, f, l;
190
+ const l = a.location ? a.location.distanceKm ?? (i ? Ct(i, a.location) : void 0) : void 0;
191
+ return {
192
+ result: a,
193
+ distanceKm: l,
194
+ price: n === "price" ? St(a) : void 0,
195
+ fixed: n === "price" ? Lt(a) : !1
196
+ };
197
+ }), r = (a, l) => {
198
+ var u, o, p, c;
183
199
  switch (n) {
184
200
  case "distance":
185
- return a.distanceKm == null && c.distanceKm == null ? 0 : a.distanceKm == null ? 1 : c.distanceKm == null ? -1 : a.distanceKm - c.distanceKm;
201
+ return Re(a.distanceKm, l.distanceKm);
202
+ case "price": {
203
+ const m = a.price ?? 1 / 0, f = l.price ?? 1 / 0;
204
+ return m !== f ? m - f : m !== 1 / 0 && a.fixed !== l.fixed ? a.fixed ? -1 : 1 : Re(a.distanceKm, l.distanceKm);
205
+ }
186
206
  case "rating": {
187
207
  const m = ((u = a.result.rating) == null ? void 0 : u.value) ?? -1;
188
- return (((o = c.result.rating) == null ? void 0 : o.value) ?? -1) - m;
208
+ return (((o = l.result.rating) == null ? void 0 : o.value) ?? -1) - m;
189
209
  }
190
210
  case "next-available": {
191
- const m = ((f = a.result.nextAvailableSlot) == null ? void 0 : f.dateTime) ?? "", p = ((l = c.result.nextAvailableSlot) == null ? void 0 : l.dateTime) ?? "";
192
- return !m && !p ? 0 : m ? p ? m.localeCompare(p) : -1 : 1;
211
+ const m = ((p = a.result.nextAvailableSlot) == null ? void 0 : p.dateTime) ?? "", f = ((c = l.result.nextAvailableSlot) == null ? void 0 : c.dateTime) ?? "";
212
+ return !m && !f ? 0 : m ? f ? m.localeCompare(f) : -1 : 1;
193
213
  }
194
214
  case "relevance":
195
215
  default:
@@ -197,24 +217,24 @@ function Nt(e, n, i) {
197
217
  }
198
218
  };
199
219
  return [...s].sort(r).map(
200
- ({ result: a, distanceKm: c }) => c != null && a.location ? {
220
+ ({ result: a, distanceKm: l }) => l != null && a.location ? {
201
221
  ...a,
202
- location: { ...a.location, distanceKm: c }
222
+ location: { ...a.location, distanceKm: l }
203
223
  } : a
204
224
  );
205
225
  }
206
- function Re(e) {
226
+ function Ne(e) {
207
227
  let n = -1 / 0, i = 1 / 0, s = -1 / 0, r = 1 / 0, a = !1;
208
- for (const c of e) {
209
- if (!c.location) continue;
228
+ for (const l of e) {
229
+ if (!l.location) continue;
210
230
  a = !0;
211
- const { lat: u, lng: o } = c.location;
231
+ const { lat: u, lng: o } = l.location;
212
232
  u > n && (n = u), u < i && (i = u), o > s && (s = o), o < r && (r = o);
213
233
  }
214
234
  if (a)
215
235
  return { north: n, south: i, east: s, west: r };
216
236
  }
217
- const St = V(
237
+ const At = O(
218
238
  "ds:flex ds:w-full ds:flex-col ds:text-[var(--foreground)] ds:gap-[var(--spacing-md)]",
219
239
  {
220
240
  variants: {
@@ -227,21 +247,21 @@ const St = V(
227
247
  defaultVariants: { variant: "split-list-map" }
228
248
  }
229
249
  );
230
- function Fe({
250
+ function _e({
231
251
  heading: e,
232
252
  headingLevel: n,
233
253
  intro: i,
234
254
  totalCount: s,
235
255
  searchCentreLabel: r
236
256
  }) {
237
- const { t: a } = C("ui"), c = `h${n}`;
257
+ const { t: a } = C("ui"), l = `h${n}`;
238
258
  if (!e && !i && s == null) return null;
239
259
  const u = s != null ? r ? a("practiceResults.results.heading", {
240
260
  count: s,
241
261
  place: r
242
262
  }) : a("practiceResults.results.summary", { count: s }) : void 0;
243
263
  return /* @__PURE__ */ h("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-xs)]", children: [
244
- e ? /* @__PURE__ */ t(c, { className: "type-title-section ds:m-0 ds:text-[var(--foreground)]", children: e }) : null,
264
+ e ? /* @__PURE__ */ t(l, { className: "type-title-section ds:m-0 ds:text-[var(--foreground)]", children: e }) : null,
245
265
  i ? /* @__PURE__ */ t("p", { className: "type-body ds:m-0 ds:text-[var(--muted-foreground)]", children: i }) : null,
246
266
  u ? /* @__PURE__ */ t(
247
267
  "p",
@@ -253,7 +273,7 @@ function Fe({
253
273
  ) : null
254
274
  ] });
255
275
  }
256
- const te = V(
276
+ const te = O(
257
277
  [
258
278
  "ds:inline-flex ds:items-center ds:gap-[var(--spacing-xs)]",
259
279
  "ds:min-h-[var(--min-target-size)]",
@@ -275,7 +295,7 @@ const te = V(
275
295
  },
276
296
  defaultVariants: { state: "idle" }
277
297
  }
278
- ), Lt = V(
298
+ ), Mt = O(
279
299
  "ds:flex ds:flex-wrap ds:items-center ds:gap-[var(--spacing-xs)]",
280
300
  {
281
301
  variants: {
@@ -294,7 +314,7 @@ const te = V(
294
314
  },
295
315
  defaultVariants: { placement: "inline" }
296
316
  }
297
- ), Pt = V(
317
+ ), Ft = O(
298
318
  [
299
319
  "ds:ms-[var(--spacing-xs)] ds:inline-flex ds:items-center ds:gap-[var(--spacing-xs)]",
300
320
  "ds:min-h-[var(--min-target-size)] ds:ps-[var(--spacing-xs)] ds:pe-[var(--spacing-xs)]",
@@ -305,26 +325,26 @@ const te = V(
305
325
  "ds:focus-visible:outline-[color:var(--ring)] ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)]"
306
326
  ].join(" ")
307
327
  );
308
- function _e({
328
+ function Ve({
309
329
  facets: e,
310
330
  value: n,
311
331
  onChange: i,
312
332
  floating: s
313
333
  }) {
314
- const { t: r } = C("ui"), a = M(() => n ?? {}, [n]), c = M(
315
- () => Object.values(a).some((l) => l && l.length > 0),
334
+ const { t: r } = C("ui"), a = M(() => n ?? {}, [n]), l = M(
335
+ () => Object.values(a).some((c) => c && c.length > 0),
316
336
  [a]
317
- ), u = (l, m) => {
318
- const p = { ...a };
319
- m.length === 0 ? delete p[l] : p[l] = m, i(p), B("serp_filter_changed", { key: l, values: m });
320
- }, o = (l) => {
321
- var p;
322
- const m = (((p = a[l]) == null ? void 0 : p.length) ?? 0) > 0;
323
- u(l, m ? [] : ["true"]);
324
- }, f = (l, m) => {
325
- const p = a[l.key] ?? [], b = p.includes(m);
337
+ ), u = (c, m) => {
338
+ const f = { ...a };
339
+ m.length === 0 ? delete f[c] : f[c] = m, i(f), $("serp_filter_changed", { key: c, values: m });
340
+ }, o = (c) => {
341
+ var f;
342
+ const m = (((f = a[c]) == null ? void 0 : f.length) ?? 0) > 0;
343
+ u(c, m ? [] : ["true"]);
344
+ }, p = (c, m) => {
345
+ const f = a[c.key] ?? [], b = f.includes(m);
326
346
  let g;
327
- l.multi ? g = b ? p.filter((x) => x !== m) : [...p, m] : g = b ? [] : [m], u(l.key, g);
347
+ c.multi ? g = b ? f.filter((x) => x !== m) : [...f, m] : g = b ? [] : [m], u(c.key, g);
328
348
  };
329
349
  return e.length === 0 ? null : /* @__PURE__ */ h(
330
350
  "div",
@@ -332,44 +352,44 @@ function _e({
332
352
  "data-component": "practice-results-filters",
333
353
  role: "group",
334
354
  "aria-label": r("practiceResults.filters.label"),
335
- className: Lt({
355
+ className: Mt({
336
356
  placement: s ? "floating" : "inline"
337
357
  }),
338
358
  children: [
339
- e.map((l) => {
340
- const m = l.boolean, p = a[l.key] ?? [], b = p.length > 0;
359
+ e.map((c) => {
360
+ const m = c.boolean, f = a[c.key] ?? [], b = f.length > 0;
341
361
  if (m)
342
362
  return /* @__PURE__ */ t(
343
363
  "button",
344
364
  {
345
365
  type: "button",
346
366
  "aria-pressed": b,
347
- "aria-label": l.label,
348
- onClick: () => o(l.key),
367
+ "aria-label": c.label,
368
+ onClick: () => o(c.key),
349
369
  className: te({
350
370
  state: b ? "active" : "idle"
351
371
  }),
352
- children: /* @__PURE__ */ t("span", { children: l.label })
372
+ children: /* @__PURE__ */ t("span", { children: c.label })
353
373
  },
354
- l.key
374
+ c.key
355
375
  );
356
- const g = b ? ` (${p.length})` : "";
376
+ const g = b ? ` (${f.length})` : "";
357
377
  return /* @__PURE__ */ h(D.Root, { children: [
358
378
  /* @__PURE__ */ t(D.Trigger, { asChild: !0, children: /* @__PURE__ */ h(
359
379
  "button",
360
380
  {
361
381
  type: "button",
362
- "aria-label": `${l.label}${g}`,
382
+ "aria-label": `${c.label}${g}`,
363
383
  className: te({
364
384
  state: b ? "active" : "idle"
365
385
  }),
366
386
  children: [
367
387
  /* @__PURE__ */ h("span", { children: [
368
- l.label,
388
+ c.label,
369
389
  g
370
390
  ] }),
371
391
  /* @__PURE__ */ t(
372
- Pe,
392
+ Ae,
373
393
  {
374
394
  "aria-hidden": "true",
375
395
  className: "ds:size-3.5 ds:shrink-0"
@@ -378,27 +398,27 @@ function _e({
378
398
  ]
379
399
  }
380
400
  ) }),
381
- /* @__PURE__ */ t(D.Content, { sideOffset: 8, align: "start", children: l.options.map((x) => /* @__PURE__ */ t(
401
+ /* @__PURE__ */ t(D.Content, { sideOffset: 8, align: "start", children: c.options.map((x) => /* @__PURE__ */ t(
382
402
  D.CheckboxItem,
383
403
  {
384
- checked: p.includes(x.value),
404
+ checked: f.includes(x.value),
385
405
  onSelect: (k) => {
386
- l.multi && k.preventDefault(), f(l, x.value);
406
+ c.multi && k.preventDefault(), p(c, x.value);
387
407
  },
388
408
  children: x.label
389
409
  },
390
410
  x.value
391
411
  )) })
392
- ] }, l.key);
412
+ ] }, c.key);
393
413
  }),
394
- c ? /* @__PURE__ */ t(
414
+ l ? /* @__PURE__ */ t(
395
415
  "button",
396
416
  {
397
417
  type: "button",
398
418
  onClick: () => {
399
- i({}), B("serp_filter_changed", { key: "*", values: [] });
419
+ i({}), $("serp_filter_changed", { key: "*", values: [] });
400
420
  },
401
- className: Pt(),
421
+ className: Ft(),
402
422
  children: r("practiceResults.filters.clear")
403
423
  }
404
424
  ) : null
@@ -415,6 +435,8 @@ function de({ value: e, onChange: n }) {
415
435
  return i("practiceResults.sort.rating");
416
436
  case "next-available":
417
437
  return i("practiceResults.sort.nextAvailable");
438
+ case "price":
439
+ return i("practiceResults.sort.price");
418
440
  case "relevance":
419
441
  default:
420
442
  return i("practiceResults.sort.relevance");
@@ -433,7 +455,7 @@ function de({ value: e, onChange: n }) {
433
455
  ": ",
434
456
  s(e)
435
457
  ] }),
436
- /* @__PURE__ */ t(Pe, { "aria-hidden": "true", className: "ds:size-3.5 ds:shrink-0" })
458
+ /* @__PURE__ */ t(Ae, { "aria-hidden": "true", className: "ds:size-3.5 ds:shrink-0" })
437
459
  ]
438
460
  }
439
461
  ) }),
@@ -443,14 +465,14 @@ function de({ value: e, onChange: n }) {
443
465
  value: e,
444
466
  onValueChange: (r) => {
445
467
  const a = r;
446
- a !== e && (n(a), B("serp_sort_changed", { sort: a }));
468
+ a !== e && (n(a), $("serp_sort_changed", { sort: a }));
447
469
  },
448
- children: wt.map((r) => /* @__PURE__ */ t(D.RadioItem, { value: r, children: s(r) }, r))
470
+ children: kt.map((r) => /* @__PURE__ */ t(D.RadioItem, { value: r, children: s(r) }, r))
449
471
  }
450
472
  ) })
451
473
  ] });
452
474
  }
453
- function At({ distanceKm: e }) {
475
+ function It({ distanceKm: e }) {
454
476
  const { t: n, i18n: i } = C("ui"), s = M(() => {
455
477
  if (e < 1) return n("practiceResults.distance.below");
456
478
  const r = new Intl.NumberFormat(i.language, {
@@ -458,9 +480,9 @@ function At({ distanceKm: e }) {
458
480
  }).format(e);
459
481
  return n("practiceResults.distance.km", { distance: r });
460
482
  }, [e, n, i.language]);
461
- return /* @__PURE__ */ t($, { variant: "neutral", leading: /* @__PURE__ */ t(pe, { "aria-hidden": "true" }), children: s });
483
+ return /* @__PURE__ */ t(z, { variant: "neutral", leading: /* @__PURE__ */ t(fe, { "aria-hidden": "true" }), children: s });
462
484
  }
463
- const Ne = V(
485
+ const Se = O(
464
486
  [
465
487
  "ds:inline-size-[12rem] ds:block-size-[8rem] ds:shrink-0",
466
488
  "ds:rounded-[var(--radius-md)] ds:overflow-hidden"
@@ -479,12 +501,12 @@ const Ne = V(
479
501
  defaultVariants: { state: "placeholder" }
480
502
  }
481
503
  );
482
- function Mt() {
504
+ function Tt() {
483
505
  if (typeof document > "u") return "4945a3";
484
506
  const e = getComputedStyle(document.documentElement).getPropertyValue("--map-marker-color").trim(), n = /^#?([0-9a-fA-F]{6})$/.exec(e);
485
507
  return n ? n[1] : "4945a3";
486
508
  }
487
- function Tt({
509
+ function _t({
488
510
  apiKey: e,
489
511
  center: n,
490
512
  zoom: i = 14,
@@ -496,28 +518,28 @@ function Tt({
496
518
  "div",
497
519
  {
498
520
  "aria-hidden": s ? void 0 : "true",
499
- className: Ne({ state: "placeholder" }),
521
+ className: Se({ state: "placeholder" }),
500
522
  children: [
501
- /* @__PURE__ */ t(pe, { "aria-hidden": "true", className: "ds:size-5 ds:shrink-0" }),
523
+ /* @__PURE__ */ t(fe, { "aria-hidden": "true", className: "ds:size-5 ds:shrink-0" }),
502
524
  s ? /* @__PURE__ */ t("span", { dir: "auto", className: "type-meta ds:[overflow-wrap:anywhere]", children: s }) : null
503
525
  ]
504
526
  }
505
527
  );
506
- const a = Mt(), c = `https://maps.googleapis.com/maps/api/staticmap?center=${n.lat},${n.lng}&zoom=${i}&size=240x160&scale=2&markers=color:0x${a}%7C${n.lat},${n.lng}&key=${encodeURIComponent(e)}`;
528
+ const a = Tt(), l = `https://maps.googleapis.com/maps/api/staticmap?center=${n.lat},${n.lng}&zoom=${i}&size=240x160&scale=2&markers=color:0x${a}%7C${n.lat},${n.lng}&key=${encodeURIComponent(e)}`;
507
529
  return /* @__PURE__ */ t(
508
530
  "img",
509
531
  {
510
- src: c,
532
+ src: l,
511
533
  alt: r("practiceResults.thumbnail.alt"),
512
534
  loading: "lazy",
513
535
  decoding: "async",
514
536
  width: 240,
515
537
  height: 160,
516
- className: Ne({ state: "image" })
538
+ className: Se({ state: "image" })
517
539
  }
518
540
  );
519
541
  }
520
- function It({ tagline: e }) {
542
+ function Vt({ tagline: e }) {
521
543
  return e ? /* @__PURE__ */ t(
522
544
  "span",
523
545
  {
@@ -528,7 +550,7 @@ function It({ tagline: e }) {
528
550
  }
529
551
  ) : null;
530
552
  }
531
- const Ft = V(
553
+ const Ht = O(
532
554
  "type-body-sm ds:m-0 ds:text-[var(--muted-foreground)] ds:whitespace-pre-line ds:break-words",
533
555
  {
534
556
  variants: {
@@ -549,14 +571,14 @@ function He({
549
571
  {
550
572
  "data-component": "practice-result-description",
551
573
  dir: "auto",
552
- className: Ft({ density: n }),
574
+ className: Ht({ density: n }),
553
575
  children: e
554
576
  }
555
577
  ) : null;
556
578
  }
557
- function _t(e, n, i, s) {
579
+ function zt(e, n, i, s) {
558
580
  if (e.kind === "fixed")
559
- return ut(
581
+ return mt(
560
582
  e.minCents,
561
583
  n,
562
584
  i,
@@ -568,7 +590,7 @@ function _t(e, n, i, s) {
568
590
  max: Ce(e.maxCents, n, i)
569
591
  }) : s("practiceResults.card.priceFrom", { price: r });
570
592
  }
571
- const Ht = V(
593
+ const $t = O(
572
594
  "ds:min-w-0 ds:max-w-full ds:[overflow-wrap:anywhere]",
573
595
  {
574
596
  variants: {
@@ -576,23 +598,23 @@ const Ht = V(
576
598
  }
577
599
  }
578
600
  );
579
- function zt({
601
+ function Bt({
580
602
  price: e,
581
603
  cents: n,
582
604
  currencyCode: i = "EUR"
583
605
  }) {
584
- var p;
585
- const { t: s, i18n: r } = C("ui"), a = e && Number.isFinite(e.minCents) ? e : void 0, c = (a == null ? void 0 : a.kind) ?? "fixed", u = (a == null ? void 0 : a.minCents) ?? n, o = a == null ? void 0 : a.maxCents, f = M(
586
- () => u == null ? void 0 : _t(
587
- { kind: c, minCents: u, maxCents: o },
606
+ var f;
607
+ const { t: s, i18n: r } = C("ui"), a = e && Number.isFinite(e.minCents) ? e : void 0, l = (a == null ? void 0 : a.kind) ?? "fixed", u = (a == null ? void 0 : a.minCents) ?? n, o = a == null ? void 0 : a.maxCents, p = M(
608
+ () => u == null ? void 0 : zt(
609
+ { kind: l, minCents: u, maxCents: o },
588
610
  i,
589
611
  r.language ?? "en",
590
612
  s
591
613
  ),
592
- [c, u, o, i, r.language, s]
614
+ [l, u, o, i, r.language, s]
593
615
  );
594
- if (f === void 0) return null;
595
- const l = (p = a == null ? void 0 : a.label) == null ? void 0 : p.trim().replace(/:$/, "").trim(), m = l || s("practiceResults.card.firstVisitPrice");
616
+ if (p === void 0) return null;
617
+ const c = (f = a == null ? void 0 : a.label) == null ? void 0 : f.trim().replace(/:$/, "").trim(), m = c || s("practiceResults.card.firstVisitPrice");
596
618
  return /* @__PURE__ */ h(
597
619
  "span",
598
620
  {
@@ -604,21 +626,21 @@ function zt({
604
626
  {
605
627
  dir: "auto",
606
628
  title: m,
607
- className: Ht({
608
- practiceWritten: !!l
629
+ className: $t({
630
+ practiceWritten: !!c
609
631
  }),
610
632
  children: m
611
633
  }
612
634
  ),
613
635
  /* @__PURE__ */ t("span", { className: "ds:sr-only", children: ": " }),
614
636
  /* @__PURE__ */ t(
615
- $,
637
+ z,
616
638
  {
617
639
  variant: "accentSoft",
618
640
  size: "lg",
619
641
  dir: "auto",
620
642
  className: "ds:h-auto ds:min-h-6 ds:min-w-0 ds:max-w-full ds:whitespace-normal ds:[overflow-wrap:anywhere]",
621
- children: f
643
+ children: p
622
644
  }
623
645
  )
624
646
  ]
@@ -629,7 +651,7 @@ function ze({ time: e }) {
629
651
  const { t: n } = C("ui");
630
652
  return /* @__PURE__ */ h("span", { className: "type-body-sm ds:text-[var(--muted-foreground)] ds:inline-flex ds:items-center ds:gap-[var(--spacing-xs)]", children: [
631
653
  /* @__PURE__ */ t(
632
- ht,
654
+ gt,
633
655
  {
634
656
  "aria-hidden": "true",
635
657
  className: "ds:size-4 ds:text-[var(--primary)]"
@@ -646,7 +668,7 @@ function $e({
646
668
  onOpenClick: r,
647
669
  onBookClick: a
648
670
  }) {
649
- const { t: c } = C("ui"), u = e.nextAvailableSlot, o = (u == null ? void 0 : u.bookingHref) ?? e.bookingHref ?? e.href, f = u && s ? c("practiceResults.nextSlot.cta", { time: s }) : i;
671
+ const { t: l } = C("ui"), u = e.nextAvailableSlot, o = (u == null ? void 0 : u.bookingHref) ?? e.bookingHref ?? e.href, p = u && s ? l("practiceResults.nextSlot.cta", { time: s }) : i;
650
672
  return /* @__PURE__ */ h("div", { className: "ds:mt-[var(--spacing-xs)] ds:flex ds:flex-wrap ds:items-center ds:justify-end ds:gap-[var(--spacing-xs)]", children: [
651
673
  n !== void 0 ? /* @__PURE__ */ t(ee, { intent: "secondary", size: "sm", asChild: !0, onClick: r, children: /* @__PURE__ */ h("a", { href: e.href, "data-component": "practice-result-open-cta", children: [
652
674
  n,
@@ -659,7 +681,7 @@ function $e({
659
681
  intent: "primary",
660
682
  size: "sm",
661
683
  asChild: !0,
662
- startIcon: /* @__PURE__ */ t(gt, { "aria-hidden": "true" }),
684
+ startIcon: /* @__PURE__ */ t(vt, { "aria-hidden": "true" }),
663
685
  onClick: a,
664
686
  children: /* @__PURE__ */ h(
665
687
  "a",
@@ -668,7 +690,7 @@ function $e({
668
690
  "data-component": "practice-result-book-cta",
669
691
  "data-slot-aware": u ? "true" : void 0,
670
692
  children: [
671
- f,
693
+ p,
672
694
  " ",
673
695
  /* @__PURE__ */ t("span", { className: "ds:sr-only", children: e.name })
674
696
  ]
@@ -678,7 +700,7 @@ function $e({
678
700
  )
679
701
  ] });
680
702
  }
681
- const Be = V(
703
+ const Be = O(
682
704
  [
683
705
  "ds:@container/result-card ds:relative ds:flex ds:w-full ds:cursor-pointer",
684
706
  "ds:rounded-[var(--radius-lg)]",
@@ -706,14 +728,14 @@ const Be = V(
706
728
  },
707
729
  defaultVariants: { density: "compact" }
708
730
  }
709
- ), $t = V([
731
+ ), Dt = O([
710
732
  "ds:text-[var(--foreground)] ds:no-underline ds:hover:underline",
711
733
  "ds:rounded-[var(--radius-xs)]",
712
734
  "ds:focus-visible:outline-[length:var(--focus-ring-width)] ds:focus-visible:outline-solid",
713
735
  "ds:focus-visible:outline-[color:var(--ring)] ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)]",
714
736
  "ds:forced-colors:focus-visible:outline-[CanvasText]"
715
737
  ]);
716
- function Bt({
738
+ function Ot({
717
739
  result: e,
718
740
  headingLevel: n
719
741
  }) {
@@ -730,14 +752,14 @@ function Bt({
730
752
  href: e.href,
731
753
  dir: "auto",
732
754
  "data-component": "practice-result-name-link",
733
- className: $t(),
755
+ className: Dt(),
734
756
  children: e.name
735
757
  }
736
758
  )
737
759
  }
738
760
  );
739
761
  }
740
- function Oe({
762
+ function De({
741
763
  result: e,
742
764
  headingLevel: n
743
765
  }) {
@@ -750,18 +772,18 @@ function Oe({
750
772
  children: /* @__PURE__ */ h("div", { className: "ds:flex ds:min-w-0 ds:flex-col ds:items-start ds:gap-[var(--spacing-xs)] ds:sm:@min-[280px]/result-heading:flex-row ds:sm:@min-[280px]/result-heading:gap-[var(--spacing-md)]", children: [
751
773
  /* @__PURE__ */ h("div", { className: "ds:flex ds:min-w-0 ds:w-full ds:flex-1 ds:flex-col ds:gap-[var(--spacing-2xs)]", children: [
752
774
  /* @__PURE__ */ h("div", { className: "ds:flex ds:flex-wrap ds:items-center ds:gap-[var(--spacing-xs)]", children: [
753
- /* @__PURE__ */ t(Bt, { result: e, headingLevel: n }),
754
- ((i = e.location) == null ? void 0 : i.distanceKm) != null ? /* @__PURE__ */ t(At, { distanceKm: e.location.distanceKm }) : null
775
+ /* @__PURE__ */ t(Ot, { result: e, headingLevel: n }),
776
+ ((i = e.location) == null ? void 0 : i.distanceKm) != null ? /* @__PURE__ */ t(It, { distanceKm: e.location.distanceKm }) : null
755
777
  ] }),
756
778
  e.subtitle ? /* @__PURE__ */ t("span", { className: "type-body-sm ds:text-[var(--muted-foreground)]", children: e.subtitle }) : null,
757
- /* @__PURE__ */ t(It, { tagline: e.tagline }),
779
+ /* @__PURE__ */ t(Vt, { tagline: e.tagline }),
758
780
  (s = e.location) != null && s.address ? /* @__PURE__ */ h(
759
781
  "span",
760
782
  {
761
783
  "data-component": "practice-result-address",
762
784
  className: "type-meta ds:text-[var(--muted-foreground)] ds:inline-flex ds:items-center ds:gap-[var(--spacing-2xs)]",
763
785
  children: [
764
- /* @__PURE__ */ t(pe, { "aria-hidden": "true", className: "ds:size-3.5 ds:shrink-0" }),
786
+ /* @__PURE__ */ t(fe, { "aria-hidden": "true", className: "ds:size-3.5 ds:shrink-0" }),
765
787
  /* @__PURE__ */ t(
766
788
  "span",
767
789
  {
@@ -775,7 +797,7 @@ function Oe({
775
797
  ) : null
776
798
  ] }),
777
799
  /* @__PURE__ */ t(
778
- zt,
800
+ Bt,
779
801
  {
780
802
  price: e.firstVisitPrice,
781
803
  cents: e.firstVisitPriceCents,
@@ -786,30 +808,30 @@ function Oe({
786
808
  }
787
809
  );
788
810
  }
789
- function De(e) {
811
+ function Oe(e) {
790
812
  const n = e.target.closest(
791
813
  'a, button, [role="button"], input, select, textarea, label'
792
814
  );
793
815
  return n !== null && n !== e.currentTarget && e.currentTarget.contains(n);
794
816
  }
795
- function Ot({
817
+ function Et({
796
818
  result: e,
797
819
  headingLevel: n,
798
820
  highlighted: i,
799
821
  onSelect: s,
800
822
  onOpenClick: r,
801
823
  onHover: a,
802
- density: c = "compact",
824
+ density: l = "compact",
803
825
  openLabel: u,
804
826
  bookLabel: o,
805
- onBookClick: f,
806
- nextSlotText: l,
827
+ onBookClick: p,
828
+ nextSlotText: c,
807
829
  maxInsuranceChips: m = 3,
808
- maxLanguageChips: p = 4,
830
+ maxLanguageChips: f = 4,
809
831
  children: b
810
832
  }) {
811
- var q, U, G, K;
812
- const { t: g, i18n: x } = C("ui"), k = e.rating, y = (((q = e.languages) == null ? void 0 : q.length) ?? 0) > 0, d = (((U = e.insurances) == null ? void 0 : U.length) ?? 0) > 0, w = e.specializedInFearPatients, P = y || d || w, S = (e.languages ?? []).slice(0, p), F = (((G = e.languages) == null ? void 0 : G.length) ?? 0) - S.length, _ = (e.insurances ?? []).slice(0, m), L = (((K = e.insurances) == null ? void 0 : K.length) ?? 0) - _.length;
833
+ var q, U, G, E;
834
+ const { t: g, i18n: x } = C("ui"), k = e.rating, y = (((q = e.languages) == null ? void 0 : q.length) ?? 0) > 0, d = (((U = e.insurances) == null ? void 0 : U.length) ?? 0) > 0, w = e.specializedInFearPatients, P = y || d || w, S = (e.languages ?? []).slice(0, f), T = (((G = e.languages) == null ? void 0 : G.length) ?? 0) - S.length, _ = (e.insurances ?? []).slice(0, m), L = (((E = e.insurances) == null ? void 0 : E.length) ?? 0) - _.length;
813
835
  return (
814
836
  // 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.
815
837
  /* @__PURE__ */ h(
@@ -821,14 +843,14 @@ function Ot({
821
843
  role: "group",
822
844
  "aria-labelledby": `practice-result-${e.id}-name`,
823
845
  onClick: (A) => {
824
- De(A) || s();
846
+ Oe(A) || s();
825
847
  },
826
848
  onMouseEnter: a,
827
849
  onFocus: a,
828
- className: Be({ density: c }),
850
+ className: Be({ density: l }),
829
851
  children: [
830
852
  /* @__PURE__ */ t(
831
- Se,
853
+ Le,
832
854
  {
833
855
  src: e.imageUrl,
834
856
  alt: e.imageAlt,
@@ -839,9 +861,9 @@ function Ot({
839
861
  }
840
862
  ),
841
863
  /* @__PURE__ */ h("div", { className: "ds:flex ds:min-w-0 ds:flex-1 ds:flex-col ds:gap-[var(--spacing-xs)]", children: [
842
- /* @__PURE__ */ t(Oe, { result: e, headingLevel: n }),
864
+ /* @__PURE__ */ t(De, { result: e, headingLevel: n }),
843
865
  k && k.count > 0 ? /* @__PURE__ */ t(
844
- Le,
866
+ Pe,
845
867
  {
846
868
  value: k.value,
847
869
  reviews: { count: k.count },
@@ -850,29 +872,29 @@ function Ot({
850
872
  ) : null,
851
873
  P ? /* @__PURE__ */ h("div", { className: "ds:flex ds:flex-wrap ds:items-center ds:gap-[var(--spacing-xs)]", children: [
852
874
  S.map((A) => /* @__PURE__ */ t(
853
- $,
875
+ z,
854
876
  {
855
877
  variant: "neutral",
856
- leading: /* @__PURE__ */ t(Ae, { "aria-hidden": "true" }),
857
- children: Ie(A, g, x)
878
+ leading: /* @__PURE__ */ t(Me, { "aria-hidden": "true" }),
879
+ children: Te(A, g, x)
858
880
  },
859
881
  `lang-${A}`
860
882
  )),
861
- F > 0 ? /* @__PURE__ */ t($, { variant: "neutral", children: `+${F}` }) : null,
883
+ T > 0 ? /* @__PURE__ */ t(z, { variant: "neutral", children: `+${T}` }) : null,
862
884
  _.map((A) => /* @__PURE__ */ t(
863
- $,
885
+ z,
864
886
  {
865
887
  variant: "info",
866
- leading: /* @__PURE__ */ t(Me, { "aria-hidden": "true" }),
888
+ leading: /* @__PURE__ */ t(Fe, { "aria-hidden": "true" }),
867
889
  children: A
868
890
  },
869
891
  `ins-${A}`
870
892
  )),
871
- L > 0 ? /* @__PURE__ */ t($, { variant: "neutral", children: `+${L}` }) : null,
872
- w ? /* @__PURE__ */ t($, { variant: "info", leading: /* @__PURE__ */ t(Te, { "aria-hidden": "true" }), children: g("practiceResults.fearPatient.label") }) : null
893
+ L > 0 ? /* @__PURE__ */ t(z, { variant: "neutral", children: `+${L}` }) : null,
894
+ w ? /* @__PURE__ */ t(z, { variant: "info", leading: /* @__PURE__ */ t(Ie, { "aria-hidden": "true" }), children: g("practiceResults.fearPatient.label") }) : null
873
895
  ] }) : null,
874
896
  /* @__PURE__ */ t(He, { description: e.description, density: "compact" }),
875
- e.nextAvailableSlot && l ? /* @__PURE__ */ t(ze, { time: l }) : null,
897
+ e.nextAvailableSlot && c ? /* @__PURE__ */ t(ze, { time: c }) : null,
876
898
  b,
877
899
  /* @__PURE__ */ t(
878
900
  $e,
@@ -880,9 +902,9 @@ function Ot({
880
902
  result: e,
881
903
  openLabel: u,
882
904
  bookLabel: o,
883
- nextSlotText: l,
905
+ nextSlotText: c,
884
906
  onOpenClick: r,
885
- onBookClick: f
907
+ onBookClick: p
886
908
  }
887
909
  )
888
910
  ] })
@@ -891,20 +913,20 @@ function Ot({
891
913
  )
892
914
  );
893
915
  }
894
- function Dt({
916
+ function jt({
895
917
  result: e,
896
918
  headingLevel: n,
897
919
  apiKey: i,
898
920
  highlighted: s,
899
921
  onSelect: r,
900
922
  onOpenClick: a,
901
- onBookClick: c,
923
+ onBookClick: l,
902
924
  onHover: u,
903
925
  openLabel: o,
904
- bookLabel: f
926
+ bookLabel: p
905
927
  }) {
906
928
  var y, d;
907
- const { t: l, i18n: m } = C("ui"), p = M(() => {
929
+ const { t: c, i18n: m } = C("ui"), f = M(() => {
908
930
  if (e.nextAvailableSlot)
909
931
  try {
910
932
  return new Intl.DateTimeFormat(m.language, {
@@ -928,14 +950,14 @@ function Dt({
928
950
  role: "group",
929
951
  "aria-labelledby": `practice-result-${e.id}-name`,
930
952
  onClick: (w) => {
931
- De(w) || r();
953
+ Oe(w) || r();
932
954
  },
933
955
  onMouseEnter: u,
934
956
  onFocus: u,
935
957
  className: Be({ density: "rich" }),
936
958
  children: [
937
959
  e.location ? /* @__PURE__ */ t("div", { className: "ds:hidden ds:@min-[640px]/result-card:block", children: /* @__PURE__ */ t(
938
- Tt,
960
+ _t,
939
961
  {
940
962
  apiKey: i,
941
963
  center: {
@@ -948,7 +970,7 @@ function Dt({
948
970
  /* @__PURE__ */ h("div", { className: "ds:flex ds:min-w-0 ds:flex-1 ds:flex-col ds:gap-[var(--spacing-sm)]", children: [
949
971
  /* @__PURE__ */ h("div", { className: "ds:flex ds:items-start ds:gap-[var(--spacing-md)]", children: [
950
972
  /* @__PURE__ */ t(
951
- Se,
973
+ Le,
952
974
  {
953
975
  src: e.imageUrl,
954
976
  alt: e.imageAlt,
@@ -958,10 +980,10 @@ function Dt({
958
980
  ratio: "4:3"
959
981
  }
960
982
  ),
961
- /* @__PURE__ */ t(Oe, { result: e, headingLevel: n })
983
+ /* @__PURE__ */ t(De, { result: e, headingLevel: n })
962
984
  ] }),
963
985
  e.rating && e.rating.count > 0 ? /* @__PURE__ */ t(
964
- Le,
986
+ Pe,
965
987
  {
966
988
  value: e.rating.value,
967
989
  reviews: { count: e.rating.count },
@@ -970,36 +992,36 @@ function Dt({
970
992
  ) : null,
971
993
  k ? /* @__PURE__ */ h("div", { className: "ds:flex ds:flex-wrap ds:items-center ds:gap-[var(--spacing-xs)]", children: [
972
994
  b ? (e.languages ?? []).map((w) => /* @__PURE__ */ t(
973
- $,
995
+ z,
974
996
  {
975
997
  variant: "neutral",
976
- leading: /* @__PURE__ */ t(Ae, { "aria-hidden": "true" }),
977
- children: Ie(w, l, m)
998
+ leading: /* @__PURE__ */ t(Me, { "aria-hidden": "true" }),
999
+ children: Te(w, c, m)
978
1000
  },
979
1001
  `lang-${w}`
980
1002
  )) : null,
981
1003
  g ? (e.insurances ?? []).map((w) => /* @__PURE__ */ t(
982
- $,
1004
+ z,
983
1005
  {
984
1006
  variant: "info",
985
- leading: /* @__PURE__ */ t(Me, { "aria-hidden": "true" }),
1007
+ leading: /* @__PURE__ */ t(Fe, { "aria-hidden": "true" }),
986
1008
  children: w
987
1009
  },
988
1010
  `ins-${w}`
989
1011
  )) : null,
990
- x ? /* @__PURE__ */ t($, { variant: "info", leading: /* @__PURE__ */ t(Te, { "aria-hidden": "true" }), children: l("practiceResults.fearPatient.label") }) : null
1012
+ x ? /* @__PURE__ */ t(z, { variant: "info", leading: /* @__PURE__ */ t(Ie, { "aria-hidden": "true" }), children: c("practiceResults.fearPatient.label") }) : null
991
1013
  ] }) : null,
992
1014
  /* @__PURE__ */ t(He, { description: e.description, density: "rich" }),
993
- e.nextAvailableSlot && p ? /* @__PURE__ */ t(ze, { time: p }) : null,
1015
+ e.nextAvailableSlot && f ? /* @__PURE__ */ t(ze, { time: f }) : null,
994
1016
  /* @__PURE__ */ t(
995
1017
  $e,
996
1018
  {
997
1019
  result: e,
998
1020
  openLabel: o,
999
- bookLabel: f,
1000
- nextSlotText: p,
1021
+ bookLabel: p,
1022
+ nextSlotText: f,
1001
1023
  onOpenClick: a,
1002
- onBookClick: c
1024
+ onBookClick: l
1003
1025
  }
1004
1026
  )
1005
1027
  ] })
@@ -1008,40 +1030,40 @@ function Dt({
1008
1030
  )
1009
1031
  );
1010
1032
  }
1011
- function fe({
1033
+ function pe({
1012
1034
  results: e,
1013
1035
  headingLevel: n,
1014
1036
  highlightedId: i,
1015
1037
  onCardHover: s,
1016
1038
  onCardSelect: r,
1017
1039
  onCardOpenClick: a,
1018
- onCardBookClick: c,
1040
+ onCardBookClick: l,
1019
1041
  openLabel: u,
1020
1042
  bookLabel: o,
1021
- formatNextSlot: f,
1022
- onLoadMore: l,
1043
+ formatNextSlot: p,
1044
+ onLoadMore: c,
1023
1045
  loadingMore: m,
1024
- loadingSkeletons: p,
1046
+ loadingSkeletons: f,
1025
1047
  density: b = "compact",
1026
1048
  apiKey: g,
1027
1049
  containerRef: x
1028
1050
  }) {
1029
- const { t: k } = C("ui"), y = T(null);
1051
+ const { t: k } = C("ui"), y = F(null);
1030
1052
  return J(() => {
1031
- if (!l) return;
1053
+ if (!c) return;
1032
1054
  const d = y.current;
1033
1055
  if (!d || typeof IntersectionObserver > "u") return;
1034
1056
  const w = new IntersectionObserver(
1035
1057
  (P) => {
1036
1058
  for (const S of P)
1037
- S.isIntersecting && (B("serp_load_more", {
1059
+ S.isIntersecting && ($("serp_load_more", {
1038
1060
  currentCount: e.length
1039
- }), l());
1061
+ }), c());
1040
1062
  },
1041
1063
  { root: null, rootMargin: "200px" }
1042
1064
  );
1043
1065
  return w.observe(d), () => w.disconnect();
1044
- }, [l, e.length]), p ? /* @__PURE__ */ t(
1066
+ }, [c, e.length]), f ? /* @__PURE__ */ t(
1045
1067
  "div",
1046
1068
  {
1047
1069
  role: "status",
@@ -1067,7 +1089,7 @@ function fe({
1067
1089
  className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)] ds:overflow-y-auto",
1068
1090
  children: [
1069
1091
  e.map((d) => /* @__PURE__ */ t("div", { role: "listitem", children: b === "rich" ? /* @__PURE__ */ t(
1070
- Dt,
1092
+ jt,
1071
1093
  {
1072
1094
  result: d,
1073
1095
  headingLevel: n,
@@ -1075,33 +1097,33 @@ function fe({
1075
1097
  highlighted: i === d.id,
1076
1098
  onSelect: () => r(d.id),
1077
1099
  onOpenClick: () => a(d.id),
1078
- onBookClick: () => c(d.id),
1100
+ onBookClick: () => l(d.id),
1079
1101
  onHover: () => s(d.id),
1080
1102
  openLabel: u,
1081
1103
  bookLabel: o
1082
1104
  }
1083
1105
  ) : /* @__PURE__ */ t(
1084
- Ot,
1106
+ Et,
1085
1107
  {
1086
1108
  result: d,
1087
1109
  headingLevel: n,
1088
1110
  highlighted: i === d.id,
1089
1111
  onSelect: () => r(d.id),
1090
1112
  onOpenClick: () => a(d.id),
1091
- onBookClick: () => c(d.id),
1113
+ onBookClick: () => l(d.id),
1092
1114
  onHover: () => s(d.id),
1093
1115
  openLabel: u,
1094
1116
  bookLabel: o,
1095
- nextSlotText: f(d)
1117
+ nextSlotText: p(d)
1096
1118
  }
1097
1119
  ) }, d.id)),
1098
- l ? /* @__PURE__ */ t(
1120
+ c ? /* @__PURE__ */ t(
1099
1121
  "div",
1100
1122
  {
1101
1123
  ref: y,
1102
1124
  "aria-hidden": "true",
1103
1125
  className: "ds:flex ds:items-center ds:justify-center ds:py-[var(--spacing-md)]",
1104
- children: m ? /* @__PURE__ */ t(ct, { size: "md", variant: "pulse" }) : /* @__PURE__ */ t("span", { className: "ds:size-1" })
1126
+ children: m ? /* @__PURE__ */ t(dt, { size: "md", variant: "pulse" }) : /* @__PURE__ */ t("span", { className: "ds:size-1" })
1105
1127
  }
1106
1128
  ) : null
1107
1129
  ]
@@ -1115,13 +1137,13 @@ function ue({
1115
1137
  apiKey: s,
1116
1138
  mapId: r,
1117
1139
  highlightedId: a,
1118
- onPinClick: c,
1140
+ onPinClick: l,
1119
1141
  onPinHover: u,
1120
1142
  onPinFirstInteract: o,
1121
- onBoundsChange: f,
1122
- consentGranted: l,
1143
+ onBoundsChange: p,
1144
+ consentGranted: c,
1123
1145
  onConsentRequest: m,
1124
- mapHandleRef: p
1146
+ mapHandleRef: f
1125
1147
  }) {
1126
1148
  const { t: b } = C("ui"), g = M(
1127
1149
  () => e.filter(
@@ -1143,25 +1165,25 @@ function ue({
1143
1165
  [g]
1144
1166
  ), y = M(() => {
1145
1167
  if (n) return n;
1146
- const d = Re(e);
1168
+ const d = Ne(e);
1147
1169
  return d ? {
1148
1170
  lat: (d.north + d.south) / 2,
1149
1171
  lng: (d.east + d.west) / 2
1150
1172
  } : { lat: 45.4642, lng: 9.19 };
1151
1173
  }, [e, n]);
1152
1174
  return J(() => {
1153
- if (!f) return;
1154
- const d = Re(e);
1155
- d && (f(d), B("serp_map_panned", { bounds: d }));
1156
- }, [e, f]), /* @__PURE__ */ t(
1175
+ if (!p) return;
1176
+ const d = Ne(e);
1177
+ d && (p(d), $("serp_map_panned", { bounds: d }));
1178
+ }, [e, p]), /* @__PURE__ */ t(
1157
1179
  "div",
1158
1180
  {
1159
1181
  "data-component": "practice-results-map-panel",
1160
1182
  className: "ds:relative ds:flex ds:size-full ds:min-h-[24rem] ds:flex-col",
1161
1183
  children: /* @__PURE__ */ t(
1162
- ot,
1184
+ ct,
1163
1185
  {
1164
- ref: p,
1186
+ ref: f,
1165
1187
  apiKey: s ?? "",
1166
1188
  mapId: r,
1167
1189
  center: y,
@@ -1170,10 +1192,10 @@ function ue({
1170
1192
  fitToPoints: x,
1171
1193
  fitKey: k,
1172
1194
  selectedMarkerId: a,
1173
- consentGranted: !!l,
1195
+ consentGranted: !!c,
1174
1196
  onConsentRequest: m,
1175
1197
  onMarkerClick: (d) => {
1176
- d != null && (u(d), o(d), c(d));
1198
+ d != null && (u(d), o(d), l(d));
1177
1199
  },
1178
1200
  ariaLabel: b("practiceResults.map.label"),
1179
1201
  size: "fill",
@@ -1187,21 +1209,21 @@ function ue({
1187
1209
  function he({
1188
1210
  variantBodyProps: e
1189
1211
  }) {
1190
- const { facets: n, value: i, onChange: s, heading: r, intro: a, totalCount: c, searchCentre: u } = e;
1212
+ const { facets: n, value: i, onChange: s, heading: r, intro: a, totalCount: l, searchCentre: u } = e;
1191
1213
  return /* @__PURE__ */ h("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]", children: [
1192
1214
  /* @__PURE__ */ t(
1193
- Fe,
1215
+ _e,
1194
1216
  {
1195
1217
  heading: r,
1196
1218
  headingLevel: e.headingLevel,
1197
1219
  intro: a,
1198
- totalCount: c,
1220
+ totalCount: l,
1199
1221
  searchCentreLabel: u == null ? void 0 : u.label
1200
1222
  }
1201
1223
  ),
1202
1224
  n.length > 0 ? /* @__PURE__ */ h("div", { className: "ds:flex ds:flex-wrap ds:items-center ds:justify-between ds:gap-[var(--spacing-sm)]", children: [
1203
1225
  /* @__PURE__ */ t(
1204
- _e,
1226
+ Ve,
1205
1227
  {
1206
1228
  facets: n,
1207
1229
  value: i.facets,
@@ -1232,7 +1254,7 @@ function ve({
1232
1254
  }) {
1233
1255
  const { t: n } = C("ui");
1234
1256
  return /* @__PURE__ */ t(
1235
- rt,
1257
+ ot,
1236
1258
  {
1237
1259
  variant: "no-results",
1238
1260
  headingLevel: ge(e),
@@ -1254,27 +1276,27 @@ function be({
1254
1276
  {
1255
1277
  intent: "secondary",
1256
1278
  size: "sm",
1257
- startIcon: /* @__PURE__ */ t(ft, { "aria-hidden": "true" }),
1279
+ startIcon: /* @__PURE__ */ t(ht, { "aria-hidden": "true" }),
1258
1280
  onClick: e,
1259
1281
  children: i("practiceResults.error.retry")
1260
1282
  }
1261
1283
  ) }) : null
1262
1284
  ] });
1263
1285
  }
1264
- function Vt(e) {
1286
+ function Kt(e) {
1265
1287
  const {
1266
1288
  results: n,
1267
1289
  apiKey: i,
1268
1290
  mapId: s,
1269
1291
  zoom: r,
1270
1292
  searchCentre: a,
1271
- onLoadMore: c,
1293
+ onLoadMore: l,
1272
1294
  loadingMore: u,
1273
1295
  loadingSkeletons: o,
1274
- emptyResultsSlot: f,
1275
- errorSlot: l,
1296
+ emptyResultsSlot: p,
1297
+ errorSlot: c,
1276
1298
  error: m,
1277
- onRetry: p,
1299
+ onRetry: f,
1278
1300
  highlightedId: b,
1279
1301
  onCardHover: g,
1280
1302
  onPinClick: x,
@@ -1282,8 +1304,8 @@ function Vt(e) {
1282
1304
  onConsentRequest: y,
1283
1305
  onBoundsChange: d,
1284
1306
  listContainerRef: w
1285
- } = e, { t: P } = C("ui"), [S, F] = me(!1), _ = m ? l ?? /* @__PURE__ */ t(be, { onRetry: p, headingLevel: e.headingLevel }) : n.length === 0 && !o ? f ?? /* @__PURE__ */ t(ve, { headingLevel: e.headingLevel }) : /* @__PURE__ */ t(
1286
- fe,
1307
+ } = e, { t: P } = C("ui"), [S, T] = me(!1), _ = m ? c ?? /* @__PURE__ */ t(be, { onRetry: f, headingLevel: e.headingLevel }) : n.length === 0 && !o ? p ?? /* @__PURE__ */ t(ve, { headingLevel: e.headingLevel }) : /* @__PURE__ */ t(
1308
+ pe,
1287
1309
  {
1288
1310
  results: n,
1289
1311
  headingLevel: e.headingLevel,
@@ -1295,7 +1317,7 @@ function Vt(e) {
1295
1317
  openLabel: e.openLabel,
1296
1318
  bookLabel: e.bookLabel,
1297
1319
  formatNextSlot: e.formatNextSlot,
1298
- onLoadMore: c,
1320
+ onLoadMore: l,
1299
1321
  loadingMore: u,
1300
1322
  loadingSkeletons: o,
1301
1323
  density: "compact",
@@ -1332,12 +1354,12 @@ function Vt(e) {
1332
1354
  {
1333
1355
  intent: "primary",
1334
1356
  size: "md",
1335
- startIcon: /* @__PURE__ */ t(bt, { "aria-hidden": "true" }),
1336
- onClick: () => F(!0),
1357
+ startIcon: /* @__PURE__ */ t(xt, { "aria-hidden": "true" }),
1358
+ onClick: () => T(!0),
1337
1359
  children: P("practiceResults.viewMap")
1338
1360
  }
1339
1361
  ) }),
1340
- /* @__PURE__ */ t(I.Root, { open: S, onOpenChange: F, children: /* @__PURE__ */ h(I.Content, { side: "bottom", size: "lg", children: [
1362
+ /* @__PURE__ */ t(I.Root, { open: S, onOpenChange: T, children: /* @__PURE__ */ h(I.Content, { side: "bottom", size: "lg", children: [
1341
1363
  /* @__PURE__ */ t(I.Header, { children: /* @__PURE__ */ t(I.Title, { children: P("practiceResults.map.label") }) }),
1342
1364
  /* @__PURE__ */ h(I.Body, { children: [
1343
1365
  /* @__PURE__ */ t(I.Description, { className: "ds:sr-only", children: P("practiceResults.sheet.description") }),
@@ -1368,46 +1390,46 @@ function Vt(e) {
1368
1390
  ] }) })
1369
1391
  ] });
1370
1392
  }
1371
- const Kt = {
1393
+ const qt = {
1372
1394
  peek: "sm",
1373
1395
  half: "md",
1374
1396
  full: "lg"
1375
- }, j = [
1397
+ }, K = [
1376
1398
  "peek",
1377
1399
  "half",
1378
1400
  "full"
1379
1401
  ];
1380
- function Et({ value: e, onChange: n }) {
1381
- const { t: i, i18n: s } = C("ui"), r = s.dir() === "rtl", a = T(
1402
+ function Ut({ value: e, onChange: n }) {
1403
+ const { t: i, i18n: s } = C("ui"), r = s.dir() === "rtl", a = F(
1382
1404
  /* @__PURE__ */ new Map()
1383
- ), c = O((o) => {
1384
- var f;
1385
- (f = a.current.get(o)) == null || f.focus();
1386
- }, []), u = O(
1387
- (o, f) => {
1388
- const l = j.indexOf(f), m = j.length, p = r ? "ArrowLeft" : "ArrowRight", b = r ? "ArrowRight" : "ArrowLeft";
1405
+ ), l = B((o) => {
1406
+ var p;
1407
+ (p = a.current.get(o)) == null || p.focus();
1408
+ }, []), u = B(
1409
+ (o, p) => {
1410
+ const c = K.indexOf(p), m = K.length, f = r ? "ArrowLeft" : "ArrowRight", b = r ? "ArrowRight" : "ArrowLeft";
1389
1411
  let g = null;
1390
1412
  switch (o.key) {
1391
- case p:
1413
+ case f:
1392
1414
  case "ArrowDown":
1393
- g = j[(l + 1) % m];
1415
+ g = K[(c + 1) % m];
1394
1416
  break;
1395
1417
  case b:
1396
1418
  case "ArrowUp":
1397
- g = j[(l - 1 + m) % m];
1419
+ g = K[(c - 1 + m) % m];
1398
1420
  break;
1399
1421
  case "Home":
1400
- g = j[0];
1422
+ g = K[0];
1401
1423
  break;
1402
1424
  case "End":
1403
- g = j[m - 1];
1425
+ g = K[m - 1];
1404
1426
  break;
1405
1427
  default:
1406
1428
  return;
1407
1429
  }
1408
- o.preventDefault(), g && g !== f && n(g), g && c(g);
1430
+ o.preventDefault(), g && g !== p && n(g), g && l(g);
1409
1431
  },
1410
- [c, r, n]
1432
+ [l, r, n]
1411
1433
  );
1412
1434
  return /* @__PURE__ */ t(
1413
1435
  "div",
@@ -1415,23 +1437,23 @@ function Et({ value: e, onChange: n }) {
1415
1437
  role: "radiogroup",
1416
1438
  "aria-label": i("practiceResults.sheet.snap.label"),
1417
1439
  className: "ds:inline-flex ds:items-center ds:gap-[var(--spacing-2xs)]",
1418
- children: j.map((o) => {
1419
- const f = e === o;
1440
+ children: K.map((o) => {
1441
+ const p = e === o;
1420
1442
  return /* @__PURE__ */ t(
1421
1443
  "button",
1422
1444
  {
1423
- ref: (l) => {
1424
- l ? a.current.set(o, l) : a.current.delete(o);
1445
+ ref: (c) => {
1446
+ c ? a.current.set(o, c) : a.current.delete(o);
1425
1447
  },
1426
1448
  type: "button",
1427
1449
  role: "radio",
1428
- "aria-checked": f,
1450
+ "aria-checked": p,
1429
1451
  "aria-label": i(`practiceResults.sheet.snap.${o}`),
1430
- tabIndex: f ? 0 : -1,
1452
+ tabIndex: p ? 0 : -1,
1431
1453
  onClick: () => n(o),
1432
- onKeyDown: (l) => u(l, o),
1454
+ onKeyDown: (c) => u(c, o),
1433
1455
  className: te({
1434
- state: f ? "active" : "idle"
1456
+ state: p ? "active" : "idle"
1435
1457
  }),
1436
1458
  children: i(`practiceResults.sheet.snap.${o}`)
1437
1459
  },
@@ -1441,20 +1463,20 @@ function Et({ value: e, onChange: n }) {
1441
1463
  }
1442
1464
  );
1443
1465
  }
1444
- function jt(e) {
1466
+ function Gt(e) {
1445
1467
  const {
1446
1468
  results: n,
1447
1469
  apiKey: i,
1448
1470
  mapId: s,
1449
1471
  zoom: r,
1450
1472
  searchCentre: a,
1451
- onLoadMore: c,
1473
+ onLoadMore: l,
1452
1474
  loadingMore: u,
1453
1475
  loadingSkeletons: o,
1454
- emptyResultsSlot: f,
1455
- errorSlot: l,
1476
+ emptyResultsSlot: p,
1477
+ errorSlot: c,
1456
1478
  error: m,
1457
- onRetry: p,
1479
+ onRetry: f,
1458
1480
  highlightedId: b,
1459
1481
  onCardHover: g,
1460
1482
  onPinClick: x,
@@ -1464,9 +1486,9 @@ function jt(e) {
1464
1486
  listContainerRef: w,
1465
1487
  facets: P,
1466
1488
  value: S,
1467
- onChange: F
1468
- } = e, { t: _ } = C("ui"), [L, q] = me("half"), U = Kt[L], G = dt("(min-width: 1024px)"), K = m ? l ?? /* @__PURE__ */ t(be, { onRetry: p, headingLevel: e.headingLevel }) : n.length === 0 && !o ? f ?? /* @__PURE__ */ t(ve, { headingLevel: e.headingLevel }) : /* @__PURE__ */ t(
1469
- fe,
1489
+ onChange: T
1490
+ } = e, { t: _ } = C("ui"), [L, q] = me("half"), U = qt[L], G = ut("(min-width: 1024px)"), E = m ? c ?? /* @__PURE__ */ t(be, { onRetry: f, headingLevel: e.headingLevel }) : n.length === 0 && !o ? p ?? /* @__PURE__ */ t(ve, { headingLevel: e.headingLevel }) : /* @__PURE__ */ t(
1491
+ pe,
1470
1492
  {
1471
1493
  results: n,
1472
1494
  headingLevel: e.headingLevel,
@@ -1478,7 +1500,7 @@ function jt(e) {
1478
1500
  openLabel: e.openLabel,
1479
1501
  bookLabel: e.bookLabel,
1480
1502
  formatNextSlot: e.formatNextSlot,
1481
- onLoadMore: c,
1503
+ onLoadMore: l,
1482
1504
  loadingMore: u,
1483
1505
  loadingSkeletons: o,
1484
1506
  density: "compact",
@@ -1505,11 +1527,11 @@ function jt(e) {
1505
1527
  mapHandleRef: e.mapHandleRef
1506
1528
  }
1507
1529
  ), W = P.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(
1508
- _e,
1530
+ Ve,
1509
1531
  {
1510
1532
  facets: P,
1511
1533
  value: S.facets,
1512
- onChange: (N) => F({ ...S, facets: N }),
1534
+ onChange: (N) => T({ ...S, facets: N }),
1513
1535
  floating: !0
1514
1536
  }
1515
1537
  ) }) : null;
@@ -1531,11 +1553,11 @@ function jt(e) {
1531
1553
  // the map column is `lg:sticky lg:h-[44rem]` (stays visible
1532
1554
  // as the patient scrolls cards) and the rail renders at
1533
1555
  // natural height. Single page scroll.
1534
- /* @__PURE__ */ h(at, { children: [
1556
+ /* @__PURE__ */ h(it, { children: [
1535
1557
  /* @__PURE__ */ t(he, { variantBodyProps: e }),
1536
1558
  /* @__PURE__ */ h("div", { className: "ds:grid ds:grid-cols-[65fr_35fr] ds:gap-[var(--spacing-lg)] ds:items-start", children: [
1537
1559
  /* @__PURE__ */ t("div", { className: "ds:sticky ds:top-[var(--spacing-md)] ds:h-[44rem]", children: A }),
1538
- /* @__PURE__ */ t("div", { className: "ds:min-w-0", children: K })
1560
+ /* @__PURE__ */ t("div", { className: "ds:min-w-0", children: E })
1539
1561
  ] })
1540
1562
  ] })
1541
1563
  ) : (
@@ -1547,7 +1569,7 @@ function jt(e) {
1547
1569
  // chrome, so floating chips are the only place for them.
1548
1570
  /* @__PURE__ */ h("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", children: [
1549
1571
  /* @__PURE__ */ t(
1550
- Fe,
1572
+ _e,
1551
1573
  {
1552
1574
  heading: e.heading,
1553
1575
  headingLevel: e.headingLevel,
@@ -1575,7 +1597,7 @@ function jt(e) {
1575
1597
  count: e.totalCount ?? n.length
1576
1598
  }) }),
1577
1599
  /* @__PURE__ */ t(
1578
- Et,
1600
+ Ut,
1579
1601
  {
1580
1602
  value: L,
1581
1603
  onChange: q
@@ -1586,36 +1608,36 @@ function jt(e) {
1586
1608
  de,
1587
1609
  {
1588
1610
  value: S.sort ?? "relevance",
1589
- onChange: (N) => F({ ...S, sort: N })
1611
+ onChange: (N) => T({ ...S, sort: N })
1590
1612
  }
1591
1613
  ) }),
1592
- K
1614
+ E
1593
1615
  ] })
1594
1616
  }
1595
1617
  ) })
1596
1618
  ] })
1597
1619
  ) });
1598
1620
  }
1599
- function qt(e) {
1621
+ function Zt(e) {
1600
1622
  const {
1601
1623
  results: n,
1602
1624
  apiKey: i,
1603
1625
  onLoadMore: s,
1604
1626
  loadingMore: r,
1605
1627
  loadingSkeletons: a,
1606
- emptyResultsSlot: c,
1628
+ emptyResultsSlot: l,
1607
1629
  errorSlot: u,
1608
1630
  error: o,
1609
- onRetry: f,
1610
- highlightedId: l,
1631
+ onRetry: p,
1632
+ highlightedId: c,
1611
1633
  onCardHover: m,
1612
- listContainerRef: p
1613
- } = e, b = o ? u ?? /* @__PURE__ */ t(be, { onRetry: f, headingLevel: e.headingLevel }) : n.length === 0 && !a ? c ?? /* @__PURE__ */ t(ve, { headingLevel: e.headingLevel }) : /* @__PURE__ */ t(
1614
- fe,
1634
+ listContainerRef: f
1635
+ } = e, b = o ? u ?? /* @__PURE__ */ t(be, { onRetry: p, headingLevel: e.headingLevel }) : n.length === 0 && !a ? l ?? /* @__PURE__ */ t(ve, { headingLevel: e.headingLevel }) : /* @__PURE__ */ t(
1636
+ pe,
1615
1637
  {
1616
1638
  results: n,
1617
1639
  headingLevel: e.headingLevel,
1618
- highlightedId: l,
1640
+ highlightedId: c,
1619
1641
  onCardHover: m,
1620
1642
  onCardSelect: e.onCardSelect,
1621
1643
  onCardOpenClick: e.onCardOpenClick,
@@ -1628,7 +1650,7 @@ function qt(e) {
1628
1650
  loadingSkeletons: a,
1629
1651
  density: "rich",
1630
1652
  apiKey: i,
1631
- containerRef: p
1653
+ containerRef: f
1632
1654
  }
1633
1655
  );
1634
1656
  return /* @__PURE__ */ h("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", children: [
@@ -1636,19 +1658,19 @@ function qt(e) {
1636
1658
  b
1637
1659
  ] });
1638
1660
  }
1639
- const Ut = it(function({
1661
+ const Wt = st(function({
1640
1662
  variant: n = "split-list-map",
1641
1663
  results: i,
1642
1664
  totalCount: s,
1643
1665
  searchCentre: r,
1644
1666
  facets: a,
1645
- googleMapsApiKey: c,
1667
+ googleMapsApiKey: l,
1646
1668
  mapId: u,
1647
- defaultZoom: o = yt,
1648
- onBoundsChange: f,
1649
- consentGranted: l,
1669
+ defaultZoom: o = wt,
1670
+ onBoundsChange: p,
1671
+ consentGranted: c,
1650
1672
  onConsentRequest: m,
1651
- skipConsentGate: p = !1,
1673
+ skipConsentGate: f = !1,
1652
1674
  onLoadMore: b,
1653
1675
  loadingMore: g,
1654
1676
  value: x,
@@ -1658,25 +1680,25 @@ const Ut = it(function({
1658
1680
  emptyResultsSlot: w,
1659
1681
  errorSlot: P,
1660
1682
  error: S,
1661
- onRetry: F,
1683
+ onRetry: T,
1662
1684
  heading: _,
1663
1685
  headingLevel: L = 2,
1664
1686
  intro: q,
1665
1687
  cardOpenButtonLabel: U,
1666
1688
  cardBookButtonLabel: G,
1667
- showCardOpenButton: K = !0,
1689
+ showCardOpenButton: E = !0,
1668
1690
  "aria-label": A,
1669
1691
  id: W,
1670
1692
  className: N,
1671
- ...Ve
1672
- }, Ke) {
1673
- const { t: ne, i18n: xe } = C("ui"), [Ee, Q] = me(null), X = T(/* @__PURE__ */ new Set()), ae = T(/* @__PURE__ */ new Set()), je = T(null), ie = T(null), se = M(
1693
+ ...Ee
1694
+ }, je) {
1695
+ const { t: ne, i18n: xe } = C("ui"), [Ke, Q] = me(null), X = F(/* @__PURE__ */ new Set()), ae = F(/* @__PURE__ */ new Set()), qe = F(null), ie = F(null), se = M(
1674
1696
  () => ({
1675
1697
  getVariant: () => n,
1676
1698
  scrollToResult: (v) => {
1677
- const z = ie.current;
1678
- if (!z) return;
1679
- const R = z.querySelector(
1699
+ const H = ie.current;
1700
+ if (!H) return;
1701
+ const R = H.querySelector(
1680
1702
  `[data-component="practice-result-card"][data-result-id="${CSS.escape(v)}"]`
1681
1703
  );
1682
1704
  R && (R.scrollIntoView({ behavior: "smooth", block: "nearest" }), Q(v));
@@ -1687,8 +1709,8 @@ const Ut = it(function({
1687
1709
  }),
1688
1710
  [n]
1689
1711
  );
1690
- st(Ke, () => se, [se]), mt(xt, se, W);
1691
- const qe = K ? U ?? ne("practiceResults.card.open") : void 0, Ue = G ?? ne("practiceResults.card.book"), Ge = O(
1712
+ rt(je, () => se, [se]), ft(yt, se, W);
1713
+ const Ue = E ? U ?? ne("practiceResults.card.open") : void 0, Ge = G ?? ne("practiceResults.card.book"), Ze = B(
1692
1714
  (v) => {
1693
1715
  if (v.nextAvailableSlot)
1694
1716
  try {
@@ -1702,94 +1724,94 @@ const Ut = it(function({
1702
1724
  }
1703
1725
  },
1704
1726
  [xe.language]
1705
- ), ye = T(null);
1727
+ ), ye = F(null);
1706
1728
  J(() => {
1707
- ye.current !== n && (ye.current = n, B("serp_variant_exposed", {
1729
+ ye.current !== n && (ye.current = n, $("serp_variant_exposed", {
1708
1730
  variant: n,
1709
1731
  totalCount: s ?? i.length
1710
1732
  }), X.current = /* @__PURE__ */ new Set(), ae.current = /* @__PURE__ */ new Set());
1711
1733
  }, [n]);
1712
- const re = T(!1), oe = M(
1713
- () => Ct(a ?? [], i, x.facets),
1734
+ const re = F(!1), oe = M(
1735
+ () => Rt(a ?? [], i, x.facets),
1714
1736
  [a, i, x.facets]
1715
- ), le = x.sort ?? (r ? "distance" : "relevance"), H = M(() => {
1716
- const v = Rt(i, x.facets, oe);
1717
- return Nt(v, le, r);
1718
- }, [i, x.facets, oe, le, r]);
1737
+ ), ce = x.sort ?? (r ? "distance" : "relevance"), V = M(() => {
1738
+ const v = Nt(i, x.facets, oe);
1739
+ return Pt(v, ce, r);
1740
+ }, [i, x.facets, oe, ce, r]);
1719
1741
  J(() => {
1720
- const v = H.length === 0;
1721
- v && !re.current ? (B("serp_empty_results", {
1742
+ const v = V.length === 0;
1743
+ v && !re.current ? ($("serp_empty_results", {
1722
1744
  appliedFacets: x.facets ?? {}
1723
1745
  }), re.current = !0) : v || (re.current = !1);
1724
- }, [H.length, x.facets]);
1725
- const E = T(null), we = T(null);
1746
+ }, [V.length, x.facets]);
1747
+ const j = F(null), we = F(null);
1726
1748
  J(
1727
1749
  () => () => {
1728
- E.current && clearTimeout(E.current);
1750
+ j.current && clearTimeout(j.current);
1729
1751
  },
1730
1752
  []
1731
1753
  );
1732
- const Ze = O((v) => {
1733
- Q(v), !X.current.has(v) && (we.current === v && E.current || (E.current && clearTimeout(E.current), we.current = v, E.current = setTimeout(() => {
1734
- X.current.has(v) || (X.current.add(v), B("serp_result_hovered_card", { resultId: v })), E.current = null;
1754
+ const We = B((v) => {
1755
+ Q(v), !X.current.has(v) && (we.current === v && j.current || (j.current && clearTimeout(j.current), we.current = v, j.current = setTimeout(() => {
1756
+ X.current.has(v) || (X.current.add(v), $("serp_result_hovered_card", { resultId: v })), j.current = null;
1735
1757
  }, 500)));
1736
- }, []), We = O((v) => {
1758
+ }, []), Qe = B((v) => {
1737
1759
  Q(v);
1738
- const z = ie.current;
1739
- if (!z) return;
1740
- const R = z.querySelector(
1760
+ const H = ie.current;
1761
+ if (!H) return;
1762
+ const R = H.querySelector(
1741
1763
  `[data-component="practice-result-card"][data-result-id="${CSS.escape(v)}"]`
1742
1764
  );
1743
1765
  R == null || R.scrollIntoView({ behavior: "smooth", block: "nearest" });
1744
- }, []), Qe = O((v) => {
1745
- ae.current.has(v) || (ae.current.add(v), B("serp_result_hovered_pin", { resultId: v }));
1746
- }, []), ke = T(null), Je = O(
1766
+ }, []), Je = B((v) => {
1767
+ ae.current.has(v) || (ae.current.add(v), $("serp_result_hovered_pin", { resultId: v }));
1768
+ }, []), ke = F(null), Xe = B(
1747
1769
  (v) => {
1748
1770
  Q(v);
1749
- const z = H.find((R) => R.id === v);
1750
- if (z) {
1751
- if (z.location) {
1771
+ const H = V.find((R) => R.id === v);
1772
+ if (H) {
1773
+ if (H.location) {
1752
1774
  const R = ke.current;
1753
1775
  R == null || R.panTo({
1754
- lat: z.location.lat,
1755
- lng: z.location.lng
1776
+ lat: H.location.lat,
1777
+ lng: H.location.lng
1756
1778
  }), R == null || R.setZoom(16);
1757
1779
  }
1758
- Z(H, v, "card", y);
1780
+ Z(V, v, "card", y);
1759
1781
  }
1760
1782
  },
1761
- [H, y]
1762
- ), Xe = O(
1783
+ [V, y]
1784
+ ), Ye = B(
1763
1785
  (v) => {
1764
1786
  Z(
1765
- H,
1787
+ V,
1766
1788
  v,
1767
1789
  "open-button",
1768
1790
  y
1769
1791
  );
1770
1792
  },
1771
- [H, y]
1772
- ), Ye = O(
1793
+ [V, y]
1794
+ ), et = B(
1773
1795
  (v) => {
1774
1796
  Z(
1775
- H,
1797
+ V,
1776
1798
  v,
1777
1799
  "book-button",
1778
1800
  y
1779
1801
  );
1780
1802
  },
1781
- [H, y]
1782
- ), et = !!d && i.length === 0, ce = {
1783
- results: H,
1803
+ [V, y]
1804
+ ), tt = !!d && i.length === 0, le = {
1805
+ results: V,
1784
1806
  totalCount: s,
1785
1807
  searchCentre: r,
1786
1808
  facets: oe,
1787
- value: { ...x, sort: le },
1809
+ value: { ...x, sort: ce },
1788
1810
  onChange: k,
1789
1811
  onResultSelect: y,
1790
1812
  onLoadMore: b,
1791
1813
  loadingMore: g,
1792
- apiKey: c,
1814
+ apiKey: l,
1793
1815
  mapId: u,
1794
1816
  zoom: o,
1795
1817
  // 0.31.4: when `skipConsentGate` is true the kit synthesises
@@ -1797,59 +1819,59 @@ const Ut = it(function({
1797
1819
  // CMP at the page level is responsible for whether the Google Maps
1798
1820
  // loader script is present at all. `onConsentRequest` is dropped
1799
1821
  // because no placeholder renders — nothing to fire it from.
1800
- consentGranted: p ? !0 : l,
1801
- onConsentRequest: p ? void 0 : m,
1802
- onBoundsChange: f,
1803
- loadingSkeletons: et,
1822
+ consentGranted: f ? !0 : c,
1823
+ onConsentRequest: f ? void 0 : m,
1824
+ onBoundsChange: p,
1825
+ loadingSkeletons: tt,
1804
1826
  emptyResultsSlot: w,
1805
1827
  errorSlot: P,
1806
1828
  error: S,
1807
- onRetry: F,
1829
+ onRetry: T,
1808
1830
  heading: _,
1809
1831
  headingLevel: L,
1810
1832
  intro: q,
1811
- highlightedId: Ee,
1812
- onCardHover: Ze,
1813
- onPinClick: We,
1814
- onPinFirstInteract: Qe,
1815
- onCardSelect: Je,
1816
- onCardOpenClick: Xe,
1817
- onCardBookClick: Ye,
1818
- openLabel: qe,
1819
- bookLabel: Ue,
1820
- formatNextSlot: Ge,
1821
- listContainerRef: je,
1833
+ highlightedId: Ke,
1834
+ onCardHover: We,
1835
+ onPinClick: Qe,
1836
+ onPinFirstInteract: Je,
1837
+ onCardSelect: Xe,
1838
+ onCardOpenClick: Ye,
1839
+ onCardBookClick: et,
1840
+ openLabel: Ue,
1841
+ bookLabel: Ge,
1842
+ formatNextSlot: Ze,
1843
+ listContainerRef: qe,
1822
1844
  mapHandleRef: ke
1823
- }, tt = (() => {
1845
+ }, nt = (() => {
1824
1846
  switch (n) {
1825
1847
  case "map-first":
1826
- return /* @__PURE__ */ t(jt, { ...ce });
1848
+ return /* @__PURE__ */ t(Gt, { ...le });
1827
1849
  case "rich-cards":
1828
- return /* @__PURE__ */ t(qt, { ...ce });
1850
+ return /* @__PURE__ */ t(Zt, { ...le });
1829
1851
  case "split-list-map":
1830
1852
  default:
1831
- return /* @__PURE__ */ t(Vt, { ...ce });
1853
+ return /* @__PURE__ */ t(Kt, { ...le });
1832
1854
  }
1833
- })(), nt = A ?? ne("practiceResults.regionLabel");
1855
+ })(), at = A ?? ne("practiceResults.regionLabel");
1834
1856
  return /* @__PURE__ */ t(
1835
1857
  "div",
1836
1858
  {
1837
1859
  ref: ie,
1838
1860
  role: "region",
1839
- "aria-label": nt,
1861
+ "aria-label": at,
1840
1862
  id: W,
1841
1863
  "data-component": "practice-results",
1842
1864
  "data-component-id": W,
1843
1865
  "data-variant": n,
1844
- className: St({ variant: n, className: N }),
1845
- ...Ve,
1846
- children: tt
1866
+ className: At({ variant: n, className: N }),
1867
+ ...Ee,
1868
+ children: nt
1847
1869
  }
1848
1870
  );
1849
1871
  });
1850
- Ut.displayName = "PracticeResults";
1872
+ Wt.displayName = "PracticeResults";
1851
1873
  export {
1852
- Ut as P,
1853
- xt as p
1874
+ Wt as P,
1875
+ yt as p
1854
1876
  };
1855
- //# sourceMappingURL=practice-results-CQ_KvEXK.js.map
1877
+ //# sourceMappingURL=practice-results-Bls-mygM.js.map