@alfadocs/ui-kit-debug 1.89.0 → 1.90.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 (36) hide show
  1. package/dist/_chunks/{anamnesis-summary-rows-DjM_HkCS.js → anamnesis-summary-rows-DUMERHK3.js} +2 -2
  2. package/dist/_chunks/{anamnesis-summary-rows-DjM_HkCS.js.map → anamnesis-summary-rows-DUMERHK3.js.map} +1 -1
  3. package/dist/_chunks/{balance-badge-cell-BHXJS8Ga.js → balance-badge-cell-C9-hyfxy.js} +2 -2
  4. package/dist/_chunks/{balance-badge-cell-BHXJS8Ga.js.map → balance-badge-cell-C9-hyfxy.js.map} +1 -1
  5. package/dist/_chunks/{calendar-appointment-editor-dialog-BuumJbcv.js → calendar-appointment-editor-dialog-D8Wkbm8_.js} +2 -2
  6. package/dist/_chunks/{calendar-appointment-editor-dialog-BuumJbcv.js.map → calendar-appointment-editor-dialog-D8Wkbm8_.js.map} +1 -1
  7. package/dist/_chunks/{data-table-BlONA1rP.js → data-table-D7EGpqOn.js} +2 -2
  8. package/dist/_chunks/{data-table-BlONA1rP.js.map → data-table-D7EGpqOn.js.map} +1 -1
  9. package/dist/_chunks/{file-manager-C9iJjDZt.js → file-manager-DQbWBTfk.js} +2 -2
  10. package/dist/_chunks/{file-manager-C9iJjDZt.js.map → file-manager-DQbWBTfk.js.map} +1 -1
  11. package/dist/_chunks/{heatmap-C2Rg-SV_.js → heatmap-BJB6V9yJ.js} +2 -2
  12. package/dist/_chunks/{heatmap-C2Rg-SV_.js.map → heatmap-BJB6V9yJ.js.map} +1 -1
  13. package/dist/_chunks/{index.es-B8zMZ1wV.js → index.es-Bpb8_NrX.js} +2 -2
  14. package/dist/_chunks/{index.es-B8zMZ1wV.js.map → index.es-Bpb8_NrX.js.map} +1 -1
  15. package/dist/_chunks/{jspdf.es.min-DaapWjR1.js → jspdf.es.min-Cal6Nuw_.js} +3 -3
  16. package/dist/_chunks/{jspdf.es.min-DaapWjR1.js.map → jspdf.es.min-Cal6Nuw_.js.map} +1 -1
  17. package/dist/_chunks/{patient-search-BPjP2__L.js → patient-search-CCOUZABE.js} +415 -406
  18. package/dist/_chunks/patient-search-CCOUZABE.js.map +1 -0
  19. package/dist/_chunks/purify.es-Lo4sC_pz.js +1483 -0
  20. package/dist/_chunks/purify.es-Lo4sC_pz.js.map +1 -0
  21. package/dist/agent-catalog.json +1 -1
  22. package/dist/components/data-table/index.js +1 -1
  23. package/dist/components/file-manager/index.js +1 -1
  24. package/dist/components/heatmap/index.js +1 -1
  25. package/dist/components/patient-search/index.js +1 -1
  26. package/dist/components/patient-search/patient-search.d.ts +8 -0
  27. package/dist/components/patient-search/patient-search.d.ts.map +1 -1
  28. package/dist/components/patient-table/index.js +1 -1
  29. package/dist/index.js +7 -7
  30. package/dist/patterns/anamnesis/index.js +1 -1
  31. package/dist/patterns/calendar/index.js +1 -1
  32. package/dist/safe-html/index.js +6 -6
  33. package/package.json +8 -3
  34. package/dist/_chunks/patient-search-BPjP2__L.js.map +0 -1
  35. package/dist/_chunks/purify.es-Cm3utOpm.js +0 -561
  36. package/dist/_chunks/purify.es-Cm3utOpm.js.map +0 -1
@@ -1,16 +1,16 @@
1
1
  import { jsx as a, jsxs as w } from "react/jsx-runtime";
2
- import { forwardRef as ce, useRef as j, useEffect as K, useMemo as Y, useImperativeHandle as le, useState as W, useCallback as M, useId as ue } from "react";
2
+ import { forwardRef as ce, useRef as R, useEffect as B, useMemo as J, useImperativeHandle as le, useState as H, useCallback as $, useId as ue } from "react";
3
3
  import { c as L } from "./index-D2ZczOXr.js";
4
4
  import { useTranslation as C } from "react-i18next";
5
- import { A as re } from "./autocomplete-CnB1mHGc.js";
5
+ import { A as ne } from "./autocomplete-CnB1mHGc.js";
6
6
  import { B as fe } from "./button-DohK_Ak_.js";
7
- import { C as H } from "./card-BA4Ig_kn.js";
7
+ import { C as q } from "./card-BA4Ig_kn.js";
8
8
  import { S as pe } from "./slider-pZ95bEm7.js";
9
- import { A as ee } from "./alert-9kEwDza3.js";
10
- import { D as F } from "./dropdown-menu-D1we7oAY.js";
9
+ import { A as ae } from "./alert-9kEwDza3.js";
10
+ import { D as M } from "./dropdown-menu-D1we7oAY.js";
11
11
  import { u as me } from "./registry-DvAUVLHh.js";
12
- import { S as ne } from "./search-QbWPlY5f.js";
13
- import { X as ie } from "./x-B5YnXwCz.js";
12
+ import { S as ie } from "./search-QbWPlY5f.js";
13
+ import { X as oe } from "./x-B5YnXwCz.js";
14
14
  import { c as he } from "./createLucideIcon-DhHxpK9K.js";
15
15
  import { M as ve } from "./map-pin-BaY37-Km.js";
16
16
  import { S as ge } from "./stethoscope-sZXGC43m.js";
@@ -79,11 +79,11 @@ const ye = [
79
79
  }
80
80
  }
81
81
  };
82
- function _(e, s) {
82
+ function _(e, t) {
83
83
  if (typeof window > "u") return;
84
- const t = window.track;
84
+ const s = window.track;
85
85
  try {
86
- t == null || t(e, s);
86
+ s == null || s(e, t);
87
87
  } catch {
88
88
  }
89
89
  }
@@ -92,13 +92,13 @@ const T = [
92
92
  "tomorrow",
93
93
  "this_week",
94
94
  "anytime"
95
- ], B = [1, 5, 10, 25, 50], J = 5, oe = 200;
95
+ ], V = [1, 5, 10, 25, 50], Z = 5, de = 200;
96
96
  function _e(e) {
97
- let s = 0, t = Number.POSITIVE_INFINITY;
98
- return B.forEach((i, p) => {
99
- const v = Math.abs(i - e);
100
- v < t && (t = v, s = p);
101
- }), s;
97
+ let t = 0, s = Number.POSITIVE_INFINITY;
98
+ return V.forEach((d, i) => {
99
+ const v = Math.abs(d - e);
100
+ v < s && (s = v, t = i);
101
+ }), t;
102
102
  }
103
103
  const Se = L(
104
104
  "ds:flex ds:w-full ds:flex-col ds:text-[var(--foreground)]",
@@ -114,22 +114,22 @@ const Se = L(
114
114
  defaultVariants: { variant: "who-where" }
115
115
  }
116
116
  );
117
- function $({
117
+ function U({
118
118
  value: e,
119
- onChange: s,
120
- loadObjects: t,
121
- onObjectSelect: i,
122
- inputRef: p
119
+ onChange: t,
120
+ loadObjects: s,
121
+ onObjectSelect: d,
122
+ inputRef: i
123
123
  }) {
124
- var l, u, c, g;
125
- const { t: v } = C("ui"), [b, h] = W(((l = e.object) == null ? void 0 : l.label) ?? ""), d = j((u = e.object) == null ? void 0 : u.value);
126
- K(() => {
127
- var m, o, S;
128
- ((m = e.object) == null ? void 0 : m.value) !== d.current && (d.current = (o = e.object) == null ? void 0 : o.value, h(((S = e.object) == null ? void 0 : S.label) ?? ""));
129
- }, [(c = e.object) == null ? void 0 : c.value, (g = e.object) == null ? void 0 : g.label]);
130
- const n = M(
131
- async (m, { signal: o }) => await t(m, { signal: o }),
132
- [t]
124
+ var p, u, l, b;
125
+ const { t: v } = C("ui"), [g, h] = H(((p = e.object) == null ? void 0 : p.label) ?? ""), c = R((u = e.object) == null ? void 0 : u.value);
126
+ B(() => {
127
+ var m, o, k;
128
+ ((m = e.object) == null ? void 0 : m.value) !== c.current && (c.current = (o = e.object) == null ? void 0 : o.value, h(((k = e.object) == null ? void 0 : k.label) ?? ""));
129
+ }, [(l = e.object) == null ? void 0 : l.value, (b = e.object) == null ? void 0 : b.label]);
130
+ const n = $(
131
+ async (m, { signal: o }) => await s(m, { signal: o }),
132
+ [s]
133
133
  ), f = (m) => {
134
134
  const o = {
135
135
  value: m.value,
@@ -137,11 +137,11 @@ function $({
137
137
  description: m.description,
138
138
  __payload: m.__payload
139
139
  };
140
- h(o.label), d.current = o.value, s({ ...e, object: o }), _("patient_search_object_selected", {
140
+ h(o.label), c.current = o.value, t({ ...e, object: o }), _("patient_search_object_selected", {
141
141
  value: o.value,
142
142
  type: o.__payload && typeof o.__payload == "object" ? o.__payload.type : void 0
143
- }), i == null || i(o);
144
- }, r = j(!1);
143
+ }), d == null || d(o);
144
+ }, r = R(!1);
145
145
  return /* @__PURE__ */ a(
146
146
  "div",
147
147
  {
@@ -154,26 +154,26 @@ function $({
154
154
  m.currentTarget && !m.currentTarget.contains(m.relatedTarget) && (r.current = !1);
155
155
  },
156
156
  children: /* @__PURE__ */ a(
157
- re,
157
+ ne,
158
158
  {
159
- ref: p,
159
+ ref: i,
160
160
  size: "lg",
161
- value: b,
161
+ value: g,
162
162
  onChange: (m) => {
163
- h(m), e.object && m !== e.object.label && (d.current = void 0, s({ ...e, object: void 0 }));
163
+ h(m), e.object && m !== e.object.label && (c.current = void 0, t({ ...e, object: void 0 }));
164
164
  },
165
165
  onSelect: f,
166
166
  loadOptions: n,
167
- debounceMs: oe,
167
+ debounceMs: de,
168
168
  placeholder: v("patientSearch.who.placeholder"),
169
169
  "aria-label": v("patientSearch.who.label"),
170
- startAdornment: /* @__PURE__ */ a(ne, { "aria-hidden": "true" })
170
+ startAdornment: /* @__PURE__ */ a(ie, { "aria-hidden": "true" })
171
171
  }
172
172
  )
173
173
  }
174
174
  );
175
175
  }
176
- const ae = [
176
+ const te = [
177
177
  "ds:inline-flex ds:items-center ds:justify-center",
178
178
  "ds:size-8 ds:rounded-[var(--radius-sm)]",
179
179
  "ds:text-[color:var(--muted-foreground)] ds:hover:text-[color:var(--primary)]",
@@ -185,25 +185,25 @@ const ae = [
185
185
  "ds:focus-visible:outline-[color:var(--ring)] ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)]",
186
186
  "ds:forced-colors:focus-visible:outline-[CanvasText]"
187
187
  ].join(" ");
188
- function q({
188
+ function G({
189
189
  value: e,
190
- onChange: s,
191
- loadPlaces: t,
192
- onPlaceSelect: i,
193
- allowTypedPlace: p,
190
+ onChange: t,
191
+ loadPlaces: s,
192
+ onPlaceSelect: d,
193
+ allowTypedPlace: i,
194
194
  inputRef: v,
195
- defaultRadiusKm: b = J,
195
+ defaultRadiusKm: g = Z,
196
196
  reverseGeocode: h
197
197
  }) {
198
- var O, z, E, P;
199
- const { t: d } = C("ui"), [n, f] = W(((O = e.place) == null ? void 0 : O.label) ?? ""), r = j((z = e.place) == null ? void 0 : z.value), l = e.geo ? "granted" : "pristine", [u, c] = W(l);
200
- K(() => {
198
+ var K, O, z, E;
199
+ const { t: c } = C("ui"), [n, f] = H(((K = e.place) == null ? void 0 : K.label) ?? ""), r = R((O = e.place) == null ? void 0 : O.value), p = e.geo ? "granted" : "pristine", [u, l] = H(p);
200
+ B(() => {
201
201
  var y, x, N;
202
202
  ((y = e.place) == null ? void 0 : y.value) !== r.current && (r.current = (x = e.place) == null ? void 0 : x.value, f(((N = e.place) == null ? void 0 : N.label) ?? ""));
203
- }, [(E = e.place) == null ? void 0 : E.value, (P = e.place) == null ? void 0 : P.label]);
204
- const g = M(
205
- async (y, { signal: x }) => await t(y, { signal: x }),
206
- [t]
203
+ }, [(z = e.place) == null ? void 0 : z.value, (E = e.place) == null ? void 0 : E.label]);
204
+ const b = $(
205
+ async (y, { signal: x }) => await s(y, { signal: x }),
206
+ [s]
207
207
  ), m = (y) => {
208
208
  const x = {
209
209
  value: y.value,
@@ -211,65 +211,65 @@ function q({
211
211
  lat: y.lat,
212
212
  lng: y.lng
213
213
  };
214
- f(x.label), r.current = x.value, s({ ...e, place: x, geo: void 0 }), u === "granted" && c("pristine"), _("patient_search_place_selected", { value: x.value }), i == null || i(x);
214
+ f(x.label), r.current = x.value, t({ ...e, place: x, geo: void 0 }), u === "granted" && l("pristine"), _("patient_search_place_selected", { value: x.value }), d == null || d(x);
215
215
  }, o = () => {
216
216
  if (typeof window > "u" || !(navigator != null && navigator.geolocation)) {
217
- c("denied"), _("patient_search_geo_denied", { reason: "unsupported" });
217
+ l("denied"), _("patient_search_geo_denied", { reason: "unsupported" });
218
218
  return;
219
219
  }
220
- c("requesting"), _("patient_search_place_focused"), navigator.geolocation.getCurrentPosition(
220
+ l("requesting"), _("patient_search_place_focused"), navigator.geolocation.getCurrentPosition(
221
221
  async (y) => {
222
222
  const { latitude: x, longitude: N } = y.coords;
223
- let k;
223
+ let A;
224
224
  try {
225
- k = await (h == null ? void 0 : h(x, N));
225
+ A = await (h == null ? void 0 : h(x, N));
226
226
  } catch {
227
- k = void 0;
227
+ A = void 0;
228
228
  }
229
- const R = b, V = k ?? d("patientSearch.geo.fallbackLabel"), de = {
229
+ const S = g, F = A ?? c("patientSearch.geo.fallbackLabel"), W = {
230
230
  value: `geo:${x.toFixed(4)},${N.toFixed(4)}`,
231
- label: V,
231
+ label: F,
232
232
  lat: x,
233
233
  lng: N
234
234
  };
235
- s({
235
+ t({
236
236
  ...e,
237
- place: de,
237
+ place: W,
238
238
  geo: {
239
239
  lat: x,
240
240
  lng: N,
241
- radiusKm: R,
242
- label: V
241
+ radiusKm: S,
242
+ label: F
243
243
  }
244
- }), c("granted"), _("patient_search_geo_granted", { radiusKm: R });
244
+ }), l("granted"), _("patient_search_geo_granted", { radiusKm: S });
245
245
  },
246
246
  () => {
247
- c("denied"), _("patient_search_geo_denied", { reason: "user" });
247
+ l("denied"), _("patient_search_geo_denied", { reason: "user" });
248
248
  },
249
249
  { enableHighAccuracy: !1, maximumAge: 6e4, timeout: 1e4 }
250
250
  );
251
- }, S = () => {
252
- s({ ...e, geo: void 0, place: void 0 }), f(""), r.current = void 0, c("pristine");
253
- }, A = u === "granted" && !!e.geo, Q = u === "requesting", D = u === "denied", I = j(!1), X = D || !!!h ? null : /* @__PURE__ */ w("span", { className: "ds:absolute ds:end-[var(--spacing-xs)] ds:top-1/2 ds:-translate-y-1/2 ds:inline-flex ds:items-center ds:gap-[var(--spacing-xs)]", children: [
254
- A ? /* @__PURE__ */ a(
251
+ }, k = () => {
252
+ t({ ...e, geo: void 0, place: void 0 }), f(""), r.current = void 0, l("pristine");
253
+ }, j = u === "granted" && !!e.geo, P = u === "requesting", D = u === "denied", I = R(!1), Y = D || !!!h ? null : /* @__PURE__ */ w("span", { className: "ds:absolute ds:end-[var(--spacing-xs)] ds:top-1/2 ds:-translate-y-1/2 ds:inline-flex ds:items-center ds:gap-[var(--spacing-xs)]", children: [
254
+ j ? /* @__PURE__ */ a(
255
255
  "button",
256
256
  {
257
257
  type: "button",
258
- "aria-label": d("patientSearch.geo.clear"),
259
- onClick: S,
260
- className: ae,
261
- children: /* @__PURE__ */ a(ie, { "aria-hidden": "true", className: "ds:size-4" })
258
+ "aria-label": c("patientSearch.geo.clear"),
259
+ onClick: k,
260
+ className: te,
261
+ children: /* @__PURE__ */ a(oe, { "aria-hidden": "true", className: "ds:size-4" })
262
262
  }
263
263
  ) : null,
264
264
  /* @__PURE__ */ a(
265
265
  "button",
266
266
  {
267
267
  type: "button",
268
- "aria-label": d("patientSearch.geo.cta"),
269
- "aria-pressed": A || void 0,
270
- disabled: Q,
271
- onClick: A ? S : o,
272
- className: ae,
268
+ "aria-label": c("patientSearch.geo.cta"),
269
+ "aria-pressed": j || void 0,
270
+ disabled: P,
271
+ onClick: j ? k : o,
272
+ className: te,
273
273
  children: /* @__PURE__ */ a(xe, { "aria-hidden": "true", className: "ds:size-4" })
274
274
  }
275
275
  )
@@ -289,24 +289,24 @@ function q({
289
289
  children: [
290
290
  /* @__PURE__ */ w("div", { className: "ds:relative", children: [
291
291
  /* @__PURE__ */ a(
292
- re,
292
+ ne,
293
293
  {
294
294
  ref: v,
295
295
  size: "lg",
296
296
  value: n,
297
297
  onChange: (y) => {
298
298
  var x, N;
299
- if (f(y), (p || e.place) && y !== ((x = e.place) == null ? void 0 : x.label)) {
300
- const k = y.trim(), R = p && k ? { value: `text:${k}`, label: k } : void 0;
301
- if (r.current = R == null ? void 0 : R.value, (R == null ? void 0 : R.value) === ((N = e.place) == null ? void 0 : N.value) && !e.geo) return;
302
- s({ ...e, place: R, geo: void 0 }), u === "granted" && c("pristine");
299
+ if (f(y), (i || e.place) && y !== ((x = e.place) == null ? void 0 : x.label)) {
300
+ const A = y.trim(), S = i && A ? { value: `text:${A}`, label: A } : void 0;
301
+ if (r.current = S == null ? void 0 : S.value, (S == null ? void 0 : S.value) === ((N = e.place) == null ? void 0 : N.value) && !e.geo) return;
302
+ t({ ...e, place: S, geo: void 0 }), u === "granted" && l("pristine");
303
303
  }
304
304
  },
305
305
  onSelect: m,
306
- loadOptions: g,
307
- debounceMs: oe,
308
- placeholder: d("patientSearch.where.placeholder"),
309
- "aria-label": d("patientSearch.where.label"),
306
+ loadOptions: b,
307
+ debounceMs: de,
308
+ placeholder: c("patientSearch.where.placeholder"),
309
+ "aria-label": c("patientSearch.where.label"),
310
310
  startAdornment: /* @__PURE__ */ a(ve, { "aria-hidden": "true" }),
311
311
  endAdornment: D ? void 0 : (
312
312
  // Decorative spacer — reserves inline-end room so the typed
@@ -318,42 +318,42 @@ function q({
318
318
  "span",
319
319
  {
320
320
  "aria-hidden": "true",
321
- className: A ? "ds:inline-block ds:size-[4.5rem]" : "ds:inline-block ds:size-8"
321
+ className: j ? "ds:inline-block ds:size-[4.5rem]" : "ds:inline-block ds:size-8"
322
322
  }
323
323
  )
324
324
  )
325
325
  }
326
326
  ),
327
- X
327
+ Y
328
328
  ] }),
329
329
  D ? (
330
330
  // Alert defaults to `role="status"` + `aria-live="polite"` for the
331
331
  // `info` variant — the user hears why the field reverted to plain
332
332
  // text when their browser blocked the geolocation prompt.
333
- /* @__PURE__ */ a(ee, { variant: "info", children: /* @__PURE__ */ a(ee.Description, { children: d("patientSearch.geo.denied") }) })
333
+ /* @__PURE__ */ a(ae, { variant: "info", children: /* @__PURE__ */ a(ae.Description, { children: c("patientSearch.geo.denied") }) })
334
334
  ) : null
335
335
  ]
336
336
  }
337
337
  );
338
338
  }
339
- function U({
339
+ function Q({
340
340
  value: e,
341
- onChange: s,
342
- defaultRadiusKm: t = J
341
+ onChange: t,
342
+ defaultRadiusKm: s = Z
343
343
  }) {
344
- const { t: i } = C("ui"), [p, v] = W(
344
+ const { t: d } = C("ui"), [i, v] = H(
345
345
  () => {
346
- var d;
347
- return _e(((d = e.geo) == null ? void 0 : d.radiusKm) ?? t);
346
+ var c;
347
+ return _e(((c = e.geo) == null ? void 0 : c.radiusKm) ?? s);
348
348
  }
349
349
  );
350
350
  if (!e.geo) return null;
351
- const b = (d) => {
352
- const n = B[d] ?? t;
353
- s({ ...e, geo: { ...e.geo, radiusKm: n } }), _("patient_search_radius_changed", { radiusKm: n });
354
- }, h = (d) => {
355
- const n = B[Math.round(d)] ?? t;
356
- return i("patientSearch.geo.radiusFormat", { km: n });
351
+ const g = (c) => {
352
+ const n = V[c] ?? s;
353
+ t({ ...e, geo: { ...e.geo, radiusKm: n } }), _("patient_search_radius_changed", { radiusKm: n });
354
+ }, h = (c) => {
355
+ const n = V[Math.round(c)] ?? s;
356
+ return d("patientSearch.geo.radiusFormat", { km: n });
357
357
  };
358
358
  return /* @__PURE__ */ w(
359
359
  "div",
@@ -366,25 +366,25 @@ function U({
366
366
  {
367
367
  id: "patient-search-radius-label",
368
368
  className: "type-meta ds:text-[color:var(--muted-foreground)]",
369
- children: i("patientSearch.geo.radius")
369
+ children: d("patientSearch.geo.radius")
370
370
  }
371
371
  ),
372
372
  /* @__PURE__ */ a(
373
373
  pe,
374
374
  {
375
- value: [p],
375
+ value: [i],
376
376
  min: 0,
377
- max: B.length - 1,
377
+ max: V.length - 1,
378
378
  step: 1,
379
- marks: B.map((d, n) => ({
379
+ marks: V.map((c, n) => ({
380
380
  value: n,
381
- label: `${d}`
381
+ label: `${c}`
382
382
  })),
383
383
  formatValue: h,
384
384
  alwaysShowValue: !0,
385
385
  "aria-labelledby": "patient-search-radius-label",
386
- onValueChange: (d) => v(d[0] ?? 0),
387
- onValueCommit: (d) => b(d[0] ?? 0)
386
+ onValueChange: (c) => v(c[0] ?? 0),
387
+ onValueCommit: (c) => g(c[0] ?? 0)
388
388
  }
389
389
  )
390
390
  ]
@@ -414,43 +414,43 @@ const Ne = L(
414
414
  defaultVariants: { state: "idle" }
415
415
  }
416
416
  );
417
- function ke({ value: e, onChange: s }) {
418
- const { t, i18n: i } = C("ui"), p = ue(), v = i.dir() === "rtl", b = j(/* @__PURE__ */ new Map()), h = M((r) => {
419
- var l;
420
- (l = b.current.get(r)) == null || l.focus();
421
- }, []), d = M(
422
- (r, l) => {
423
- const u = T.indexOf(l), c = T.length, g = v ? "ArrowLeft" : "ArrowRight", m = v ? "ArrowRight" : "ArrowLeft";
417
+ function ke({ value: e, onChange: t }) {
418
+ const { t: s, i18n: d } = C("ui"), i = ue(), v = d.dir() === "rtl", g = R(/* @__PURE__ */ new Map()), h = $((r) => {
419
+ var p;
420
+ (p = g.current.get(r)) == null || p.focus();
421
+ }, []), c = $(
422
+ (r, p) => {
423
+ const u = T.indexOf(p), l = T.length, b = v ? "ArrowLeft" : "ArrowRight", m = v ? "ArrowRight" : "ArrowLeft";
424
424
  switch (r.key) {
425
- case g:
425
+ case b:
426
426
  case "ArrowDown": {
427
427
  r.preventDefault();
428
- const o = T[(u + 1) % c];
429
- s(o), _("patient_search_when_selected", { when: o }), h(o);
428
+ const o = T[(u + 1) % l];
429
+ t(o), _("patient_search_when_selected", { when: o }), h(o);
430
430
  break;
431
431
  }
432
432
  case m:
433
433
  case "ArrowUp": {
434
434
  r.preventDefault();
435
- const o = T[(u - 1 + c) % c];
436
- s(o), _("patient_search_when_selected", { when: o }), h(o);
435
+ const o = T[(u - 1 + l) % l];
436
+ t(o), _("patient_search_when_selected", { when: o }), h(o);
437
437
  break;
438
438
  }
439
439
  case "Home": {
440
440
  r.preventDefault();
441
441
  const o = T[0];
442
- s(o), _("patient_search_when_selected", { when: o }), h(o);
442
+ t(o), _("patient_search_when_selected", { when: o }), h(o);
443
443
  break;
444
444
  }
445
445
  case "End": {
446
446
  r.preventDefault();
447
- const o = T[c - 1];
448
- s(o), _("patient_search_when_selected", { when: o }), h(o);
447
+ const o = T[l - 1];
448
+ t(o), _("patient_search_when_selected", { when: o }), h(o);
449
449
  break;
450
450
  }
451
451
  }
452
452
  },
453
- [h, v, s]
453
+ [h, v, t]
454
454
  ), n = e ?? "anytime", f = {
455
455
  today: "patientSearch.when.today",
456
456
  tomorrow: "patientSearch.when.tomorrow",
@@ -461,30 +461,30 @@ function ke({ value: e, onChange: s }) {
461
461
  "div",
462
462
  {
463
463
  role: "radiogroup",
464
- "aria-label": t("patientSearch.when.label"),
465
- id: p,
464
+ "aria-label": s("patientSearch.when.label"),
465
+ id: i,
466
466
  className: "ds:flex ds:flex-wrap ds:items-center ds:gap-[var(--spacing-xs)]",
467
467
  children: T.map((r) => {
468
- const l = e === r, u = n === r, c = t(f[r]);
468
+ const p = e === r, u = n === r, l = s(f[r]);
469
469
  return /* @__PURE__ */ a(
470
470
  "button",
471
471
  {
472
472
  type: "button",
473
473
  role: "radio",
474
- "aria-checked": l,
475
- "aria-label": c,
474
+ "aria-checked": p,
475
+ "aria-label": l,
476
476
  tabIndex: u ? 0 : -1,
477
- ref: (g) => {
478
- g ? b.current.set(r, g) : b.current.delete(r);
477
+ ref: (b) => {
478
+ b ? g.current.set(r, b) : g.current.delete(r);
479
479
  },
480
480
  onClick: () => {
481
- s(r), _("patient_search_when_selected", { when: r });
481
+ t(r), _("patient_search_when_selected", { when: r });
482
482
  },
483
- onKeyDown: (g) => d(g, r),
483
+ onKeyDown: (b) => c(b, r),
484
484
  className: Ne({
485
- state: l ? "selected" : "idle"
485
+ state: p ? "selected" : "idle"
486
486
  }),
487
- children: c
487
+ children: l
488
488
  },
489
489
  r
490
490
  );
@@ -492,7 +492,7 @@ function ke({ value: e, onChange: s }) {
492
492
  }
493
493
  );
494
494
  }
495
- const te = L(
495
+ const se = L(
496
496
  [
497
497
  "ds:inline-flex ds:items-center ds:gap-[var(--spacing-xs)]",
498
498
  "ds:min-h-[var(--min-target-size)]",
@@ -522,55 +522,55 @@ const te = L(
522
522
  defaultVariants: { state: "idle" }
523
523
  }
524
524
  );
525
- function Re({ facets: e, value: s, onChange: t }) {
526
- const { t: i } = C("ui"), p = Y(() => s ?? {}, [s]), v = Y(
527
- () => Object.values(p).some((n) => n && n.length > 0),
528
- [p]
529
- ), b = (n, f) => {
530
- const r = { ...p };
531
- f.length === 0 ? delete r[n] : r[n] = f, t(r), _("patient_search_facet_changed", { key: n, values: f });
525
+ function Re({ facets: e, value: t, onChange: s }) {
526
+ const { t: d } = C("ui"), i = J(() => t ?? {}, [t]), v = J(
527
+ () => Object.values(i).some((n) => n && n.length > 0),
528
+ [i]
529
+ ), g = (n, f) => {
530
+ const r = { ...i };
531
+ f.length === 0 ? delete r[n] : r[n] = f, s(r), _("patient_search_facet_changed", { key: n, values: f });
532
532
  }, h = (n) => {
533
533
  var r;
534
- const f = (((r = p[n]) == null ? void 0 : r.length) ?? 0) > 0;
535
- b(n, f ? [] : ["true"]);
536
- }, d = (n, f) => {
537
- const r = p[n.key] ?? [], l = r.includes(f);
534
+ const f = (((r = i[n]) == null ? void 0 : r.length) ?? 0) > 0;
535
+ g(n, f ? [] : ["true"]);
536
+ }, c = (n, f) => {
537
+ const r = i[n.key] ?? [], p = r.includes(f);
538
538
  let u;
539
- n.multi ? u = l ? r.filter((c) => c !== f) : [...r, f] : u = l ? [] : [f], b(n.key, u);
539
+ n.multi ? u = p ? r.filter((l) => l !== f) : [...r, f] : u = p ? [] : [f], g(n.key, u);
540
540
  };
541
541
  return /* @__PURE__ */ w(
542
542
  "div",
543
543
  {
544
544
  role: "group",
545
- "aria-label": i("patientSearch.facets.label"),
545
+ "aria-label": d("patientSearch.facets.label"),
546
546
  className: "ds:flex ds:flex-wrap ds:items-center ds:gap-[var(--spacing-xs)]",
547
547
  children: [
548
548
  e.map((n) => {
549
- const f = n.options.length === 0, r = p[n.key] ?? [], l = r.length > 0;
549
+ const f = n.options.length === 0, r = i[n.key] ?? [], p = r.length > 0;
550
550
  if (f)
551
551
  return /* @__PURE__ */ a(
552
552
  "button",
553
553
  {
554
554
  type: "button",
555
- "aria-pressed": l,
555
+ "aria-pressed": p,
556
556
  "aria-label": n.label,
557
557
  onClick: () => h(n.key),
558
- className: te({
559
- state: l ? "active" : "idle"
558
+ className: se({
559
+ state: p ? "active" : "idle"
560
560
  }),
561
561
  children: /* @__PURE__ */ a("span", { children: n.label })
562
562
  },
563
563
  n.key
564
564
  );
565
- const u = l ? ` (${r.length})` : "";
566
- return /* @__PURE__ */ w(F.Root, { children: [
567
- /* @__PURE__ */ a(F.Trigger, { asChild: !0, children: /* @__PURE__ */ w(
565
+ const u = p ? ` (${r.length})` : "";
566
+ return /* @__PURE__ */ w(M.Root, { children: [
567
+ /* @__PURE__ */ a(M.Trigger, { asChild: !0, children: /* @__PURE__ */ w(
568
568
  "button",
569
569
  {
570
570
  type: "button",
571
571
  "aria-label": `${n.label}${u}`,
572
- className: te({
573
- state: l ? "active" : "idle"
572
+ className: se({
573
+ state: p ? "active" : "idle"
574
574
  }),
575
575
  children: [
576
576
  /* @__PURE__ */ w("span", { children: [
@@ -587,16 +587,16 @@ function Re({ facets: e, value: s, onChange: t }) {
587
587
  ]
588
588
  }
589
589
  ) }),
590
- /* @__PURE__ */ a(F.Content, { sideOffset: 8, align: "start", children: n.options.map((c) => /* @__PURE__ */ a(
591
- F.CheckboxItem,
590
+ /* @__PURE__ */ a(M.Content, { sideOffset: 8, align: "start", children: n.options.map((l) => /* @__PURE__ */ a(
591
+ M.CheckboxItem,
592
592
  {
593
- checked: r.includes(c.value),
594
- onSelect: (g) => {
595
- n.multi && g.preventDefault(), d(n, c.value);
593
+ checked: r.includes(l.value),
594
+ onSelect: (b) => {
595
+ n.multi && b.preventDefault(), c(n, l.value);
596
596
  },
597
- children: c.label
597
+ children: l.label
598
598
  },
599
- c.value
599
+ l.value
600
600
  )) })
601
601
  ] }, n.key);
602
602
  }),
@@ -605,7 +605,7 @@ function Re({ facets: e, value: s, onChange: t }) {
605
605
  {
606
606
  type: "button",
607
607
  onClick: () => {
608
- t({}), _("patient_search_facet_changed", { key: "*", values: [] });
608
+ s({}), _("patient_search_facet_changed", { key: "*", values: [] });
609
609
  },
610
610
  className: [
611
611
  "ds:ms-[var(--spacing-xs)] ds:inline-flex ds:items-center ds:gap-[var(--spacing-xs)]",
@@ -617,8 +617,8 @@ function Re({ facets: e, value: s, onChange: t }) {
617
617
  "ds:focus-visible:outline-[color:var(--ring)] ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)]"
618
618
  ].join(" "),
619
619
  children: [
620
- /* @__PURE__ */ a(ie, { "aria-hidden": "true", className: "ds:size-3.5" }),
621
- i("patientSearch.facets.clear")
620
+ /* @__PURE__ */ a(oe, { "aria-hidden": "true", className: "ds:size-3.5" }),
621
+ d("patientSearch.facets.clear")
622
622
  ]
623
623
  }
624
624
  ) : null
@@ -626,7 +626,7 @@ function Re({ facets: e, value: s, onChange: t }) {
626
626
  }
627
627
  );
628
628
  }
629
- const se = ["violet", "purple", "magenta", "blue"], je = L(
629
+ const re = ["violet", "purple", "magenta", "blue"], je = L(
630
630
  [
631
631
  "ds:relative ds:flex ds:h-full ds:flex-col ds:gap-[var(--spacing-sm)]",
632
632
  "ds:rounded-[var(--radius-lg)] ds:overflow-hidden",
@@ -671,13 +671,13 @@ const se = ["violet", "purple", "magenta", "blue"], je = L(
671
671
  defaultVariants: { accent: "violet" }
672
672
  }
673
673
  );
674
- function Te(e, s) {
675
- return e && e !== "auto" ? e : se[s % se.length];
674
+ function Te(e, t) {
675
+ return e && e !== "auto" ? e : re[t % re.length];
676
676
  }
677
- function Ee({ cards: e }) {
678
- const { t: s } = C("ui");
677
+ function Ee({ cards: e, headingLevel: t }) {
678
+ const { t: s } = C("ui"), d = `h${t}`;
679
679
  return e.length === 0 ? /* @__PURE__ */ a("p", { className: "type-body-sm ds:text-[color:var(--muted-foreground)] ds:m-0", children: s("patientSearch.discovery.empty") }) : /* @__PURE__ */ w("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", children: [
680
- /* @__PURE__ */ a("h3", { className: "type-title-card ds:text-[var(--foreground)] ds:m-0", children: s("patientSearch.discovery.heading") }),
680
+ /* @__PURE__ */ a(d, { className: "type-title-card ds:text-[var(--foreground)] ds:m-0", children: s("patientSearch.discovery.heading") }),
681
681
  /* @__PURE__ */ a(
682
682
  "ul",
683
683
  {
@@ -686,17 +686,17 @@ function Ee({ cards: e }) {
686
686
  "ds:md:grid-cols-2 ds:lg:grid-cols-3",
687
687
  "ds:m-0 ds:p-0 ds:list-none"
688
688
  ].join(" "),
689
- children: e.map((t, i) => {
690
- const p = Te(t.accent, i);
689
+ children: e.map((i, v) => {
690
+ const g = Te(i.accent, v);
691
691
  return /* @__PURE__ */ a("li", { children: /* @__PURE__ */ w(
692
692
  "a",
693
693
  {
694
- href: t.href,
694
+ href: i.href,
695
695
  "data-component": "patient-search-card",
696
- "data-card-id": t.id,
697
- "aria-label": t.description ? `${t.label} — ${t.description}` : t.label,
696
+ "data-card-id": i.id,
697
+ "aria-label": i.description ? `${i.label} — ${i.description}` : i.label,
698
698
  onClick: () => _("patient_search_discovery_card_clicked", {
699
- cardId: t.id
699
+ cardId: i.id
700
700
  }),
701
701
  className: je(),
702
702
  children: [
@@ -704,7 +704,7 @@ function Ee({ cards: e }) {
704
704
  "span",
705
705
  {
706
706
  "aria-hidden": "true",
707
- className: Ae({ accent: p })
707
+ className: Ae({ accent: g })
708
708
  }
709
709
  ),
710
710
  /* @__PURE__ */ w("span", { className: "ds:flex ds:items-center ds:gap-[var(--spacing-sm)]", children: [
@@ -712,11 +712,11 @@ function Ee({ cards: e }) {
712
712
  "span",
713
713
  {
714
714
  "aria-hidden": "true",
715
- className: Ce({ accent: p }),
716
- children: t.icon ?? /* @__PURE__ */ a(ge, { className: "ds:size-4", "aria-hidden": "true" })
715
+ className: Ce({ accent: g }),
716
+ children: i.icon ?? /* @__PURE__ */ a(ge, { className: "ds:size-4", "aria-hidden": "true" })
717
717
  }
718
718
  ),
719
- t.badge ? (
719
+ i.badge ? (
720
720
  // The badge sits inside a softly-tinted accent bubble
721
721
  // (15% accent + 85% background). The text colour must
722
722
  // contrast with that mix, not with the accent's canonical
@@ -724,48 +724,48 @@ function Ee({ cards: e }) {
724
724
  // the 100% accent surface and fails AA on the 15% tint.
725
725
  // Use `--foreground` which contrasts with the
726
726
  // mostly-background mix in both light and dark themes.
727
- /* @__PURE__ */ a("span", { className: "type-meta ds:ms-auto ds:inline-flex ds:items-center ds:rounded-[var(--radius-full)] ds:border ds:border-[color:var(--foreground)] ds:bg-[color-mix(in_srgb,var(--accent)_15%,var(--background))] ds:text-[color:var(--foreground)] ds:font-[var(--font-weight-semibold)] ds:ps-[var(--spacing-sm)] ds:pe-[var(--spacing-sm)] ds:pt-[var(--spacing-xs)] ds:pb-[var(--spacing-xs)]", children: t.badge })
727
+ /* @__PURE__ */ a("span", { className: "type-meta ds:ms-auto ds:inline-flex ds:items-center ds:rounded-[var(--radius-full)] ds:border ds:border-[color:var(--foreground)] ds:bg-[color-mix(in_srgb,var(--accent)_15%,var(--background))] ds:text-[color:var(--foreground)] ds:font-[var(--font-weight-semibold)] ds:ps-[var(--spacing-sm)] ds:pe-[var(--spacing-sm)] ds:pt-[var(--spacing-xs)] ds:pb-[var(--spacing-xs)]", children: i.badge })
728
728
  ) : null
729
729
  ] }),
730
- /* @__PURE__ */ a("span", { className: "type-label ds:font-[var(--font-weight-semibold)] ds:text-[var(--foreground)]", children: t.label }),
731
- t.description ? /* @__PURE__ */ a("span", { className: "type-body-sm ds:text-[color:var(--muted-foreground)]", children: t.description }) : null
730
+ /* @__PURE__ */ a("span", { className: "type-label ds:font-[var(--font-weight-semibold)] ds:text-[var(--foreground)]", children: i.label }),
731
+ i.description ? /* @__PURE__ */ a("span", { className: "type-body-sm ds:text-[color:var(--muted-foreground)]", children: i.description }) : null
732
732
  ]
733
733
  }
734
- ) }, t.id);
734
+ ) }, i.id);
735
735
  })
736
736
  }
737
737
  )
738
738
  ] });
739
739
  }
740
- function Pe(e) {
740
+ function Le(e) {
741
741
  if (e.object || e.place || e.geo || e.when && e.when !== "anytime") return !0;
742
742
  if (e.facets) {
743
- for (const s of Object.values(e.facets))
744
- if (s && s.length > 0) return !0;
743
+ for (const t of Object.values(e.facets))
744
+ if (t && t.length > 0) return !0;
745
745
  }
746
746
  return !1;
747
747
  }
748
- function G({
748
+ function X({
749
749
  value: e,
750
- variant: s,
751
- submitting: t,
752
- submitLabel: i,
753
- allowEmptySubmit: p,
750
+ variant: t,
751
+ submitting: s,
752
+ submitLabel: d,
753
+ allowEmptySubmit: i,
754
754
  onSubmit: v
755
755
  }) {
756
- const { t: b } = C("ui"), h = !t && !p && !Pe(e), d = i ?? b("patientSearch.submit.cta");
756
+ const { t: g } = C("ui"), h = !s && !i && !Le(e), c = d ?? g("patientSearch.submit.cta");
757
757
  return /* @__PURE__ */ a(
758
758
  fe,
759
759
  {
760
760
  type: "button",
761
761
  intent: "primary",
762
762
  size: "lg",
763
- startIcon: /* @__PURE__ */ a(ne, { "aria-hidden": "true" }),
764
- loading: t,
763
+ startIcon: /* @__PURE__ */ a(ie, { "aria-hidden": "true" }),
764
+ loading: s,
765
765
  disabled: h,
766
766
  onClick: () => {
767
767
  _("patient_search_submitted", {
768
- variant: s,
768
+ variant: t,
769
769
  hasObject: !!e.object,
770
770
  hasPlace: !!e.place,
771
771
  hasGeo: !!e.geo,
@@ -773,214 +773,214 @@ function G({
773
773
  facetKeys: e.facets ? Object.keys(e.facets) : []
774
774
  }), v(e);
775
775
  },
776
- children: d
776
+ children: c
777
777
  }
778
778
  );
779
779
  }
780
- function Le(e) {
780
+ function Pe(e) {
781
781
  const {
782
- variant: s,
783
- value: t,
784
- onChange: i,
785
- onSubmit: p,
782
+ variant: t,
783
+ value: s,
784
+ onChange: d,
785
+ onSubmit: i,
786
786
  loadObjects: v,
787
- loadPlaces: b,
787
+ loadPlaces: g,
788
788
  onObjectSelect: h,
789
- onPlaceSelect: d,
789
+ onPlaceSelect: c,
790
790
  allowTypedPlace: n,
791
791
  submitting: f,
792
792
  submitLabel: r,
793
- allowEmptySubmit: l,
793
+ allowEmptySubmit: p,
794
794
  whoRef: u,
795
- whereRef: c,
796
- defaultRadiusKm: g,
795
+ whereRef: l,
796
+ defaultRadiusKm: b,
797
797
  reverseGeocode: m,
798
798
  cardLabel: o
799
799
  } = e;
800
- return /* @__PURE__ */ a(H, { variant: "elevated", "aria-label": o, children: /* @__PURE__ */ w("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)] ds:p-[var(--spacing-md)]", children: [
800
+ return /* @__PURE__ */ a(q, { variant: "elevated", "aria-label": o, children: /* @__PURE__ */ w("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)] ds:p-[var(--spacing-md)]", children: [
801
801
  /* @__PURE__ */ w("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)] ds:md:flex-row ds:md:items-start", children: [
802
802
  /* @__PURE__ */ a("div", { className: "ds:flex-1 ds:min-w-0", children: /* @__PURE__ */ a(
803
- $,
803
+ U,
804
804
  {
805
- value: t,
806
- onChange: i,
805
+ value: s,
806
+ onChange: d,
807
807
  loadObjects: v,
808
808
  onObjectSelect: h,
809
809
  inputRef: u
810
810
  }
811
811
  ) }),
812
812
  /* @__PURE__ */ a("div", { className: "ds:flex-1 ds:min-w-0", children: /* @__PURE__ */ a(
813
- q,
813
+ G,
814
814
  {
815
- value: t,
816
- onChange: i,
817
- loadPlaces: b,
818
- onPlaceSelect: d,
815
+ value: s,
816
+ onChange: d,
817
+ loadPlaces: g,
818
+ onPlaceSelect: c,
819
819
  allowTypedPlace: n,
820
- defaultRadiusKm: g,
820
+ defaultRadiusKm: b,
821
821
  reverseGeocode: m,
822
- inputRef: c
822
+ inputRef: l
823
823
  }
824
824
  ) }),
825
825
  /* @__PURE__ */ a(
826
- G,
826
+ X,
827
827
  {
828
- value: t,
829
- variant: s,
828
+ value: s,
829
+ variant: t,
830
830
  submitting: f,
831
831
  submitLabel: r,
832
- allowEmptySubmit: l,
833
- onSubmit: p
832
+ allowEmptySubmit: p,
833
+ onSubmit: i
834
834
  }
835
835
  )
836
836
  ] }),
837
837
  /* @__PURE__ */ a(
838
- U,
838
+ Q,
839
839
  {
840
- value: t,
841
- onChange: i,
842
- defaultRadiusKm: g
840
+ value: s,
841
+ onChange: d,
842
+ defaultRadiusKm: b
843
843
  }
844
844
  )
845
845
  ] }) });
846
846
  }
847
847
  function De(e) {
848
848
  const {
849
- variant: s,
850
- value: t,
851
- onChange: i,
852
- onSubmit: p,
849
+ variant: t,
850
+ value: s,
851
+ onChange: d,
852
+ onSubmit: i,
853
853
  loadObjects: v,
854
- loadPlaces: b,
854
+ loadPlaces: g,
855
855
  onObjectSelect: h,
856
- onPlaceSelect: d,
856
+ onPlaceSelect: c,
857
857
  allowTypedPlace: n,
858
858
  submitting: f,
859
859
  submitLabel: r,
860
- allowEmptySubmit: l,
860
+ allowEmptySubmit: p,
861
861
  whoRef: u,
862
- whereRef: c,
863
- defaultRadiusKm: g,
862
+ whereRef: l,
863
+ defaultRadiusKm: b,
864
864
  reverseGeocode: m,
865
865
  cardLabel: o
866
866
  } = e;
867
- return /* @__PURE__ */ a(H, { variant: "elevated", "aria-label": o, children: /* @__PURE__ */ w("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)] ds:p-[var(--spacing-md)]", children: [
867
+ return /* @__PURE__ */ a(q, { variant: "elevated", "aria-label": o, children: /* @__PURE__ */ w("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)] ds:p-[var(--spacing-md)]", children: [
868
868
  /* @__PURE__ */ w("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)] ds:md:flex-row ds:md:items-start", children: [
869
869
  /* @__PURE__ */ a("div", { className: "ds:flex-1 ds:min-w-0", children: /* @__PURE__ */ a(
870
- $,
870
+ U,
871
871
  {
872
- value: t,
873
- onChange: i,
872
+ value: s,
873
+ onChange: d,
874
874
  loadObjects: v,
875
875
  onObjectSelect: h,
876
876
  inputRef: u
877
877
  }
878
878
  ) }),
879
879
  /* @__PURE__ */ a("div", { className: "ds:flex-1 ds:min-w-0", children: /* @__PURE__ */ a(
880
- q,
880
+ G,
881
881
  {
882
- value: t,
883
- onChange: i,
884
- loadPlaces: b,
885
- onPlaceSelect: d,
882
+ value: s,
883
+ onChange: d,
884
+ loadPlaces: g,
885
+ onPlaceSelect: c,
886
886
  allowTypedPlace: n,
887
- defaultRadiusKm: g,
887
+ defaultRadiusKm: b,
888
888
  reverseGeocode: m,
889
- inputRef: c
889
+ inputRef: l
890
890
  }
891
891
  ) }),
892
892
  /* @__PURE__ */ a(
893
- G,
893
+ X,
894
894
  {
895
- value: t,
896
- variant: s,
895
+ value: s,
896
+ variant: t,
897
897
  submitting: f,
898
898
  submitLabel: r,
899
- allowEmptySubmit: l,
900
- onSubmit: p
899
+ allowEmptySubmit: p,
900
+ onSubmit: i
901
901
  }
902
902
  )
903
903
  ] }),
904
904
  /* @__PURE__ */ a(
905
- U,
905
+ Q,
906
906
  {
907
- value: t,
908
- onChange: i,
909
- defaultRadiusKm: g
907
+ value: s,
908
+ onChange: d,
909
+ defaultRadiusKm: b
910
910
  }
911
911
  ),
912
912
  /* @__PURE__ */ a(
913
913
  ke,
914
914
  {
915
- value: t.when,
916
- onChange: (S) => i({ ...t, when: S })
915
+ value: s.when,
916
+ onChange: (k) => d({ ...s, when: k })
917
917
  }
918
918
  )
919
919
  ] }) });
920
920
  }
921
921
  function Ie(e) {
922
922
  const {
923
- variant: s,
924
- value: t,
925
- onChange: i,
926
- onSubmit: p,
923
+ variant: t,
924
+ value: s,
925
+ onChange: d,
926
+ onSubmit: i,
927
927
  loadObjects: v,
928
- loadPlaces: b,
928
+ loadPlaces: g,
929
929
  onObjectSelect: h,
930
- onPlaceSelect: d,
930
+ onPlaceSelect: c,
931
931
  allowTypedPlace: n,
932
932
  facets: f,
933
933
  submitting: r,
934
- submitLabel: l,
934
+ submitLabel: p,
935
935
  allowEmptySubmit: u,
936
- whoRef: c,
937
- whereRef: g,
936
+ whoRef: l,
937
+ whereRef: b,
938
938
  defaultRadiusKm: m,
939
939
  reverseGeocode: o,
940
- cardLabel: S
940
+ cardLabel: k
941
941
  } = e;
942
- return /* @__PURE__ */ a(H, { variant: "elevated", "aria-label": S, children: /* @__PURE__ */ w("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)] ds:p-[var(--spacing-md)]", children: [
942
+ return /* @__PURE__ */ a(q, { variant: "elevated", "aria-label": k, children: /* @__PURE__ */ w("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)] ds:p-[var(--spacing-md)]", children: [
943
943
  /* @__PURE__ */ w("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)] ds:md:flex-row ds:md:items-start", children: [
944
944
  /* @__PURE__ */ a("div", { className: "ds:flex-1 ds:min-w-0", children: /* @__PURE__ */ a(
945
- $,
945
+ U,
946
946
  {
947
- value: t,
948
- onChange: i,
947
+ value: s,
948
+ onChange: d,
949
949
  loadObjects: v,
950
950
  onObjectSelect: h,
951
- inputRef: c
951
+ inputRef: l
952
952
  }
953
953
  ) }),
954
954
  /* @__PURE__ */ a("div", { className: "ds:flex-1 ds:min-w-0", children: /* @__PURE__ */ a(
955
- q,
955
+ G,
956
956
  {
957
- value: t,
958
- onChange: i,
959
- loadPlaces: b,
960
- onPlaceSelect: d,
957
+ value: s,
958
+ onChange: d,
959
+ loadPlaces: g,
960
+ onPlaceSelect: c,
961
961
  allowTypedPlace: n,
962
962
  defaultRadiusKm: m,
963
963
  reverseGeocode: o,
964
- inputRef: g
964
+ inputRef: b
965
965
  }
966
966
  ) }),
967
967
  /* @__PURE__ */ a(
968
- G,
968
+ X,
969
969
  {
970
- value: t,
971
- variant: s,
970
+ value: s,
971
+ variant: t,
972
972
  submitting: r,
973
- submitLabel: l,
973
+ submitLabel: p,
974
974
  allowEmptySubmit: u,
975
- onSubmit: p
975
+ onSubmit: i
976
976
  }
977
977
  )
978
978
  ] }),
979
979
  /* @__PURE__ */ a(
980
- U,
980
+ Q,
981
981
  {
982
- value: t,
983
- onChange: i,
982
+ value: s,
983
+ onChange: d,
984
984
  defaultRadiusKm: m
985
985
  }
986
986
  ),
@@ -988,176 +988,185 @@ function Ie(e) {
988
988
  Re,
989
989
  {
990
990
  facets: f,
991
- value: t.facets,
992
- onChange: (A) => i({ ...t, facets: A })
991
+ value: s.facets,
992
+ onChange: (j) => d({ ...s, facets: j })
993
993
  }
994
994
  ) : null
995
995
  ] }) });
996
996
  }
997
997
  function Oe(e) {
998
998
  const {
999
- variant: s,
1000
- value: t,
1001
- onChange: i,
1002
- onSubmit: p,
999
+ variant: t,
1000
+ value: s,
1001
+ onChange: d,
1002
+ onSubmit: i,
1003
1003
  loadObjects: v,
1004
- loadPlaces: b,
1004
+ loadPlaces: g,
1005
1005
  onObjectSelect: h,
1006
- onPlaceSelect: d,
1006
+ onPlaceSelect: c,
1007
1007
  allowTypedPlace: n,
1008
1008
  discoveryCards: f,
1009
- submitting: r,
1010
- submitLabel: l,
1011
- allowEmptySubmit: u,
1012
- whoRef: c,
1013
- whereRef: g,
1014
- defaultRadiusKm: m,
1015
- reverseGeocode: o,
1016
- cardLabel: S
1009
+ discoveryHeadingLevel: r,
1010
+ submitting: p,
1011
+ submitLabel: u,
1012
+ allowEmptySubmit: l,
1013
+ whoRef: b,
1014
+ whereRef: m,
1015
+ defaultRadiusKm: o,
1016
+ reverseGeocode: k,
1017
+ cardLabel: j
1017
1018
  } = e;
1018
1019
  return /* @__PURE__ */ w("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-lg)]", children: [
1019
- /* @__PURE__ */ w(H, { variant: "elevated", "aria-label": S, children: [
1020
+ /* @__PURE__ */ w(q, { variant: "elevated", "aria-label": j, children: [
1020
1021
  /* @__PURE__ */ w("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)] ds:p-[var(--spacing-md)] ds:md:flex-row ds:md:items-stretch", children: [
1021
1022
  /* @__PURE__ */ a("div", { className: "ds:flex-1 ds:min-w-0", children: /* @__PURE__ */ a(
1022
- $,
1023
+ U,
1023
1024
  {
1024
- value: t,
1025
- onChange: i,
1025
+ value: s,
1026
+ onChange: d,
1026
1027
  loadObjects: v,
1027
1028
  onObjectSelect: h,
1028
- inputRef: c
1029
+ inputRef: b
1029
1030
  }
1030
1031
  ) }),
1031
1032
  /* @__PURE__ */ a("div", { className: "ds:flex-1 ds:min-w-0", children: /* @__PURE__ */ a(
1032
- q,
1033
+ G,
1033
1034
  {
1034
- value: t,
1035
- onChange: i,
1036
- loadPlaces: b,
1037
- onPlaceSelect: d,
1035
+ value: s,
1036
+ onChange: d,
1037
+ loadPlaces: g,
1038
+ onPlaceSelect: c,
1038
1039
  allowTypedPlace: n,
1039
- defaultRadiusKm: m,
1040
- reverseGeocode: o,
1041
- inputRef: g
1040
+ defaultRadiusKm: o,
1041
+ reverseGeocode: k,
1042
+ inputRef: m
1042
1043
  }
1043
1044
  ) }),
1044
1045
  /* @__PURE__ */ a(
1045
- G,
1046
+ X,
1046
1047
  {
1047
- value: t,
1048
- variant: s,
1049
- submitting: r,
1050
- submitLabel: l,
1051
- allowEmptySubmit: u,
1052
- onSubmit: p
1048
+ value: s,
1049
+ variant: t,
1050
+ submitting: p,
1051
+ submitLabel: u,
1052
+ allowEmptySubmit: l,
1053
+ onSubmit: i
1053
1054
  }
1054
1055
  )
1055
1056
  ] }),
1056
1057
  /* @__PURE__ */ a(
1057
- U,
1058
+ Q,
1058
1059
  {
1059
- value: t,
1060
- onChange: i,
1061
- defaultRadiusKm: m
1060
+ value: s,
1061
+ onChange: d,
1062
+ defaultRadiusKm: o
1062
1063
  }
1063
1064
  )
1064
1065
  ] }),
1065
- /* @__PURE__ */ a(Ee, { cards: f })
1066
+ /* @__PURE__ */ a(
1067
+ Ee,
1068
+ {
1069
+ cards: f,
1070
+ headingLevel: r
1071
+ }
1072
+ )
1066
1073
  ] });
1067
1074
  }
1068
1075
  const Ve = ce(function({
1069
- variant: s,
1070
- loadObjects: t,
1071
- loadPlaces: i,
1072
- onObjectSelect: p,
1076
+ variant: t,
1077
+ loadObjects: s,
1078
+ loadPlaces: d,
1079
+ onObjectSelect: i,
1073
1080
  onPlaceSelect: v,
1074
- allowTypedPlace: b = !1,
1081
+ allowTypedPlace: g = !1,
1075
1082
  facets: h,
1076
- defaultRadiusKm: d = J,
1083
+ defaultRadiusKm: c = Z,
1077
1084
  reverseGeocode: n,
1078
1085
  discoveryCards: f,
1079
- countryCode: r,
1080
- value: l,
1081
- onChange: u,
1082
- onSubmit: c,
1083
- submitting: g,
1084
- submitLabel: m,
1085
- allowEmptySubmit: o,
1086
- "aria-label": S,
1087
- id: A,
1088
- className: Q,
1089
- ...D
1090
- }, I) {
1091
- const { t: Z } = C("ui"), X = j(null), O = j(null), z = j(null), E = j(!1);
1092
- K(() => {
1093
- if (!E.current && s === "who-where-when") {
1094
- if (l.when !== void 0) {
1086
+ discoveryHeadingLevel: r = 3,
1087
+ countryCode: p,
1088
+ value: u,
1089
+ onChange: l,
1090
+ onSubmit: b,
1091
+ submitting: m,
1092
+ submitLabel: o,
1093
+ allowEmptySubmit: k,
1094
+ "aria-label": j,
1095
+ id: P,
1096
+ className: D,
1097
+ ...I
1098
+ }, ee) {
1099
+ const { t: Y } = C("ui"), K = R(null), O = R(null), z = R(null), E = R(!1);
1100
+ B(() => {
1101
+ if (!E.current && t === "who-where-when") {
1102
+ if (u.when !== void 0) {
1095
1103
  E.current = !0;
1096
1104
  return;
1097
1105
  }
1098
- E.current = !0, u({ ...l, when: "anytime" });
1106
+ E.current = !0, l({ ...u, when: "anytime" });
1099
1107
  }
1100
- }, [s]);
1101
- const P = j(!1);
1102
- K(() => {
1103
- if (!P.current && s === "faceted") {
1104
- if (l.facets !== void 0) {
1105
- P.current = !0;
1108
+ }, [t]);
1109
+ const y = R(!1);
1110
+ B(() => {
1111
+ if (!y.current && t === "faceted") {
1112
+ if (u.facets !== void 0) {
1113
+ y.current = !0;
1106
1114
  return;
1107
1115
  }
1108
- P.current = !0, u({ ...l, facets: {} });
1116
+ y.current = !0, l({ ...u, facets: {} });
1109
1117
  }
1110
- }, [s]);
1111
- const y = j(null);
1112
- K(() => {
1113
- y.current !== s && (y.current = s, _("patient_search_variant_exposed", { variant: s, country: r }));
1114
- }, [s, r]);
1115
- const x = Y(
1118
+ }, [t]);
1119
+ const x = R(null);
1120
+ B(() => {
1121
+ x.current !== t && (x.current = t, _("patient_search_variant_exposed", { variant: t, country: p }));
1122
+ }, [t, p]);
1123
+ const N = J(
1116
1124
  () => ({
1117
- getVariant: () => s,
1125
+ getVariant: () => t,
1118
1126
  reset: () => {
1119
- u({});
1127
+ l({});
1120
1128
  },
1121
1129
  focusPrimary: () => {
1122
1130
  requestAnimationFrame(() => {
1123
- var V;
1124
- (V = O.current) == null || V.focus();
1131
+ var W;
1132
+ (W = O.current) == null || W.focus();
1125
1133
  });
1126
1134
  }
1127
1135
  }),
1128
- [s, u]
1136
+ [t, l]
1129
1137
  );
1130
- le(I, () => x, [x]), me(we, x, A);
1131
- const N = S ?? Z("patientSearch.regionLabel"), k = {
1132
- variant: s,
1133
- value: l,
1134
- onChange: u,
1135
- onSubmit: c,
1136
- loadObjects: t,
1137
- loadPlaces: i,
1138
- onObjectSelect: p,
1138
+ le(ee, () => N, [N]), me(we, N, P);
1139
+ const A = j ?? Y("patientSearch.regionLabel"), S = {
1140
+ variant: t,
1141
+ value: u,
1142
+ onChange: l,
1143
+ onSubmit: b,
1144
+ loadObjects: s,
1145
+ loadPlaces: d,
1146
+ onObjectSelect: i,
1139
1147
  onPlaceSelect: v,
1140
- allowTypedPlace: b,
1148
+ allowTypedPlace: g,
1141
1149
  facets: h,
1142
- defaultRadiusKm: d,
1150
+ defaultRadiusKm: c,
1143
1151
  reverseGeocode: n,
1144
1152
  discoveryCards: f ?? [],
1145
- submitting: g,
1146
- submitLabel: m,
1147
- allowEmptySubmit: o,
1153
+ discoveryHeadingLevel: r,
1154
+ submitting: m,
1155
+ submitLabel: o,
1156
+ allowEmptySubmit: k,
1148
1157
  whoRef: O,
1149
1158
  whereRef: z,
1150
- cardLabel: N
1151
- }, R = (() => {
1152
- switch (s) {
1159
+ cardLabel: A
1160
+ }, F = (() => {
1161
+ switch (t) {
1153
1162
  case "who-where":
1154
- return /* @__PURE__ */ a(Le, { ...k });
1163
+ return /* @__PURE__ */ a(Pe, { ...S });
1155
1164
  case "who-where-when":
1156
- return /* @__PURE__ */ a(De, { ...k });
1165
+ return /* @__PURE__ */ a(De, { ...S });
1157
1166
  case "faceted":
1158
- return /* @__PURE__ */ a(Ie, { ...k });
1167
+ return /* @__PURE__ */ a(Ie, { ...S });
1159
1168
  case "discovery":
1160
- return /* @__PURE__ */ a(Oe, { ...k });
1169
+ return /* @__PURE__ */ a(Oe, { ...S });
1161
1170
  /* c8 ignore next 2 */
1162
1171
  default:
1163
1172
  return null;
@@ -1166,16 +1175,16 @@ const Ve = ce(function({
1166
1175
  return /* @__PURE__ */ a(
1167
1176
  "div",
1168
1177
  {
1169
- ref: X,
1178
+ ref: K,
1170
1179
  role: "region",
1171
- "aria-label": N,
1172
- id: A,
1180
+ "aria-label": A,
1181
+ id: P,
1173
1182
  "data-component": "patient-search",
1174
- "data-component-id": A,
1175
- "data-variant": s,
1176
- className: Se({ variant: s, className: Q }),
1177
- ...D,
1178
- children: R
1183
+ "data-component-id": P,
1184
+ "data-variant": t,
1185
+ className: Se({ variant: t, className: D }),
1186
+ ...I,
1187
+ children: F
1179
1188
  }
1180
1189
  );
1181
1190
  });
@@ -1184,4 +1193,4 @@ export {
1184
1193
  Ve as P,
1185
1194
  we as p
1186
1195
  };
1187
- //# sourceMappingURL=patient-search-BPjP2__L.js.map
1196
+ //# sourceMappingURL=patient-search-CCOUZABE.js.map