@alfadocs/ui-kit 0.31.8 → 0.32.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (103) hide show
  1. package/dist/_chunks/{agenda-card-DtGlQde1.js → agenda-card-CFyWSX7Z.js} +2 -2
  2. package/dist/_chunks/{agenda-tray-CXmlwt2K.js → agenda-tray-By_asPN9.js} +2 -2
  3. package/dist/_chunks/{badge-B9Cr6iEB.js → badge-zsf5i5bH.js} +9 -2
  4. package/dist/_chunks/{benefit-card-B86DH-PE.js → benefit-card-_Sc-MGha.js} +18 -8
  5. package/dist/_chunks/{booking-A4o9xI2n.js → booking-h_kBZM6M.js} +24 -26
  6. package/dist/_chunks/{card-CNri9ssR.js → card-DPmk26CL.js} +2 -2
  7. package/dist/_chunks/{contact-card-Dos7Tley.js → contact-card-Cf8Ktyt3.js} +2 -2
  8. package/dist/_chunks/{practice-profile-card-CfAMeTxQ.js → contact-profile-card-Ce-LIDU8.js} +128 -125
  9. package/dist/_chunks/{editable-currency-cell-renderer-YvTwkFrD.js → editable-currency-cell-renderer-B9VRSV_S.js} +2 -2
  10. package/dist/_chunks/{key-value-pair-CYE7NSpM.js → key-value-pair-CkQIb9EG.js} +42 -32
  11. package/dist/_chunks/{map-view-WEWqXzof.js → map-view-knHSNLoe.js} +140 -128
  12. package/dist/_chunks/{operator-hero-BsjE-kJF.js → operator-hero-7LiiP7zi.js} +4 -4
  13. package/dist/_chunks/{patient-search-CSDru7QW.js → patient-search-CBq62kmL.js} +2 -2
  14. package/dist/_chunks/{practice-results-CIkAdwRm.js → practice-results-Bw5fJTYF.js} +4 -4
  15. package/dist/_chunks/{reviews-panel-Cjys8G8K.js → reviews-panel-B-18RBSn.js} +39 -36
  16. package/dist/_chunks/{stat-CYEx8sIR.js → stat-EC2Papj7.js} +14 -14
  17. package/dist/_chunks/{timeline-BZC7qGdy.js → timeline-DQa5Tyz4.js} +2 -2
  18. package/dist/_chunks/{workflow-map-DfpjDZHK.js → workflow-map-uSiHbOWQ.js} +4 -4
  19. package/dist/agent-catalog.json +28 -28
  20. package/dist/components/agenda-card/index.js +1 -1
  21. package/dist/components/agenda-tray/index.js +1 -1
  22. package/dist/components/badge/index.js +1 -1
  23. package/dist/components/benefit-card/index.js +1 -1
  24. package/dist/components/booking/index.js +1 -1
  25. package/dist/components/card/index.js +1 -1
  26. package/dist/components/contact-card/index.js +1 -1
  27. package/dist/components/contact-profile-card/contact-profile-card.agent.d.ts +4 -0
  28. package/dist/components/{practice-profile-card/practice-profile-card.d.ts → contact-profile-card/contact-profile-card.d.ts} +9 -9
  29. package/dist/components/contact-profile-card/index.d.ts +4 -0
  30. package/dist/components/contact-profile-card/index.js +8 -0
  31. package/dist/components/data-table/index.js +1 -1
  32. package/dist/components/index.d.ts +1 -1
  33. package/dist/components/key-value-pair/index.js +1 -1
  34. package/dist/components/map-view/index.js +1 -1
  35. package/dist/components/map-view/map-view.d.ts +1 -1
  36. package/dist/components/operator-hero/index.js +1 -1
  37. package/dist/components/operator-hero/operator-hero.d.ts +1 -1
  38. package/dist/components/patient-search/index.js +1 -1
  39. package/dist/components/practice-results/index.js +1 -1
  40. package/dist/components/reviews-panel/index.js +1 -1
  41. package/dist/components/stat/index.js +1 -1
  42. package/dist/components/timeline/index.js +1 -1
  43. package/dist/components/workflow/index.js +1 -1
  44. package/dist/i18n/locales/ar.d.ts +1 -1
  45. package/dist/i18n/locales/ar.js +2 -2
  46. package/dist/i18n/locales/de.d.ts +1 -1
  47. package/dist/i18n/locales/de.js +2 -2
  48. package/dist/i18n/locales/el.d.ts +1 -1
  49. package/dist/i18n/locales/el.js +2 -2
  50. package/dist/i18n/locales/en.d.ts +1 -1
  51. package/dist/i18n/locales/en.js +2 -2
  52. package/dist/i18n/locales/es.d.ts +1 -1
  53. package/dist/i18n/locales/es.js +2 -2
  54. package/dist/i18n/locales/fr.d.ts +1 -1
  55. package/dist/i18n/locales/fr.js +2 -2
  56. package/dist/i18n/locales/hi.d.ts +1 -1
  57. package/dist/i18n/locales/hi.js +2 -2
  58. package/dist/i18n/locales/it.d.ts +1 -1
  59. package/dist/i18n/locales/it.js +2 -2
  60. package/dist/i18n/locales/ja.d.ts +1 -1
  61. package/dist/i18n/locales/ja.js +2 -2
  62. package/dist/i18n/locales/nl.d.ts +1 -1
  63. package/dist/i18n/locales/nl.js +2 -2
  64. package/dist/i18n/locales/pl.d.ts +1 -1
  65. package/dist/i18n/locales/pl.js +2 -2
  66. package/dist/i18n/locales/pt.d.ts +1 -1
  67. package/dist/i18n/locales/pt.js +2 -2
  68. package/dist/i18n/locales/ro.d.ts +1 -1
  69. package/dist/i18n/locales/ro.js +2 -2
  70. package/dist/i18n/locales/ru.d.ts +1 -1
  71. package/dist/i18n/locales/ru.js +2 -2
  72. package/dist/i18n/locales/sq.d.ts +1 -1
  73. package/dist/i18n/locales/sq.js +2 -2
  74. package/dist/i18n/locales/sv.d.ts +1 -1
  75. package/dist/i18n/locales/sv.js +2 -2
  76. package/dist/i18n/locales/tr.d.ts +1 -1
  77. package/dist/i18n/locales/tr.js +2 -2
  78. package/dist/i18n/locales/zh.d.ts +1 -1
  79. package/dist/i18n/locales/zh.js +2 -2
  80. package/dist/index.js +113 -113
  81. package/dist/locales/ar.json +1 -1
  82. package/dist/locales/de.json +1 -1
  83. package/dist/locales/el.json +1 -1
  84. package/dist/locales/en.json +1 -1
  85. package/dist/locales/es.json +1 -1
  86. package/dist/locales/fr.json +1 -1
  87. package/dist/locales/hi.json +1 -1
  88. package/dist/locales/it.json +1 -1
  89. package/dist/locales/ja.json +1 -1
  90. package/dist/locales/nl.json +1 -1
  91. package/dist/locales/pl.json +1 -1
  92. package/dist/locales/pt.json +1 -1
  93. package/dist/locales/ro.json +1 -1
  94. package/dist/locales/ru.json +1 -1
  95. package/dist/locales/sq.json +1 -1
  96. package/dist/locales/sv.json +1 -1
  97. package/dist/locales/tr.json +1 -1
  98. package/dist/locales/zh.json +1 -1
  99. package/dist/tokens.css +1 -1
  100. package/package.json +4 -4
  101. package/dist/components/practice-profile-card/index.d.ts +0 -4
  102. package/dist/components/practice-profile-card/index.js +0 -8
  103. package/dist/components/practice-profile-card/practice-profile-card.agent.d.ts +0 -4
@@ -1,18 +1,18 @@
1
- import { jsxs as u, jsx as e, Fragment as _ } from "react/jsx-runtime";
2
- import { forwardRef as oe, useId as le, useMemo as ce } from "react";
1
+ import { jsxs as u, jsx as e, Fragment as R } from "react/jsx-runtime";
2
+ import { forwardRef as ie, useId as le, useMemo as ce } from "react";
3
3
  import { c as se } from "./index-D2ZczOXr.js";
4
4
  import { useTranslation as de } from "react-i18next";
5
- import { B as S } from "./badge-B9Cr6iEB.js";
6
- import { C as F } from "./card-CNri9ssR.js";
7
- import { K as pe, a as ue } from "./key-value-pair-CYE7NSpM.js";
5
+ import { B as S } from "./badge-zsf5i5bH.js";
6
+ import { C as F } from "./card-DPmk26CL.js";
7
+ import { K as pe, a as ue } from "./key-value-pair-CkQIb9EG.js";
8
8
  import { L as d } from "./link-DrD_cRUg.js";
9
9
  import { u as fe } from "./registry-nPAVE19X.js";
10
- import { S as H } from "./stethoscope-DT5qCW8Y.js";
11
- import { H as T, S as V, L as z } from "./shield-check-BhHyReu8.js";
12
- import { c as E } from "./createLucideIcon-CrFbzy84.js";
13
- import { G as K } from "./globe-BkEFMNSg.js";
14
- import { M as L } from "./mail-C8irm52s.js";
15
- import { M as O } from "./message-circle-C23eicgb.js";
10
+ import { S as T } from "./stethoscope-DT5qCW8Y.js";
11
+ import { H, S as V, L as z } from "./shield-check-BhHyReu8.js";
12
+ import { c as O } from "./createLucideIcon-CrFbzy84.js";
13
+ import { G as E } from "./globe-BkEFMNSg.js";
14
+ import { M as K } from "./mail-C8irm52s.js";
15
+ import { M as L } from "./message-circle-C23eicgb.js";
16
16
  import { M as U } from "./map-pin-B8STOPMJ.js";
17
17
  /**
18
18
  * @license lucide-react v1.8.0 - ISC
@@ -24,7 +24,7 @@ const me = [
24
24
  ["rect", { width: "20", height: "12", x: "2", y: "6", rx: "2", key: "9lu3g6" }],
25
25
  ["circle", { cx: "12", cy: "12", r: "2", key: "1c9p78" }],
26
26
  ["path", { d: "M6 12h.01M18 12h.01", key: "113zkx" }]
27
- ], j = E("banknote", me);
27
+ ], j = O("banknote", me);
28
28
  /**
29
29
  * @license lucide-react v1.8.0 - ISC
30
30
  *
@@ -39,23 +39,23 @@ const he = [
39
39
  key: "9njp5v"
40
40
  }
41
41
  ]
42
- ], B = E("phone", he), ge = {
43
- id: "practice-profile-card",
42
+ ], B = O("phone", he), ge = {
43
+ id: "contact-profile-card",
44
44
  capabilities: ["view_change"],
45
45
  state: {
46
46
  profession: {
47
47
  type: "string",
48
- descriptionKey: "ui.agent.practiceProfileCard.state.profession",
48
+ descriptionKey: "ui.agent.contactProfileCard.state.profession",
49
49
  description: "Profession string the card is currently rendering — undefined when the consumer omitted it.",
50
- read: (r) => r.getProfession()
50
+ read: (t) => t.getProfession()
51
51
  }
52
52
  },
53
53
  actions: {},
54
54
  domHooks: {
55
55
  root: {
56
56
  attr: "data-component",
57
- value: "practice-profile-card",
58
- description: "Marks the PracticeProfileCard root region."
57
+ value: "contact-profile-card",
58
+ description: "Marks the ContactProfileCard root region."
59
59
  },
60
60
  instanceId: {
61
61
  attr: "data-component-id",
@@ -63,46 +63,49 @@ const he = [
63
63
  description: "Sourced from the id prop."
64
64
  }
65
65
  }
66
- }, ve = se("ds:w-full ds:text-[color:var(--foreground)]", {
67
- variants: {
68
- // Matches the kit's other `surface` props (Booking, ReviewsPanel).
69
- // The card itself renders `<Card variant="elevated">` so the
70
- // `surface="flat"` opt-out is rare most consumers want the
71
- // boundary.
72
- surface: {
73
- flat: "",
74
- elevated: ""
75
- }
76
- },
77
- defaultVariants: { surface: "elevated" }
78
- });
79
- function xe(r) {
80
- return r.replace(/[^\d+]/g, "");
66
+ }, ve = se(
67
+ "ds:w-full ds:text-[color:var(--foreground)] ds:[--key-value-pair-icon-color:var(--accent)]",
68
+ {
69
+ variants: {
70
+ // Matches the kit's other `surface` props (Booking, ReviewsPanel).
71
+ // The card itself renders `<Card variant="elevated">` so the
72
+ // `surface="flat"` opt-out is rare — most consumers want the
73
+ // boundary.
74
+ surface: {
75
+ flat: "",
76
+ elevated: ""
77
+ }
78
+ },
79
+ defaultVariants: { surface: "elevated" }
80
+ }
81
+ );
82
+ function xe(t) {
83
+ return t.replace(/[^\d+]/g, "");
81
84
  }
82
- function Pe(r, t) {
83
- const a = `https://wa.me/${r}`;
84
- return t ? `${a}?text=${encodeURIComponent(t)}` : a;
85
+ function ye(t, r) {
86
+ const a = `https://wa.me/${t}`;
87
+ return r ? `${a}?text=${encodeURIComponent(r)}` : a;
85
88
  }
86
- function be(r) {
87
- return `https://www.google.com/maps/search/?api=1&query=${encodeURIComponent(r.line)}`;
89
+ function Ce(t) {
90
+ return `https://www.google.com/maps/search/?api=1&query=${encodeURIComponent(t.line)}`;
88
91
  }
89
- function ye(r, t, a) {
92
+ function be(t, r, a) {
90
93
  try {
91
94
  return new Intl.NumberFormat(a, {
92
95
  style: "currency",
93
- currency: t
94
- }).format(r / 100);
96
+ currency: r
97
+ }).format(t / 100);
95
98
  } catch {
96
- return (r / 100).toFixed(2);
99
+ return (t / 100).toFixed(2);
97
100
  }
98
101
  }
99
- function Ce() {
102
+ function Pe() {
100
103
  if (typeof document > "u") return "4945a3";
101
- const r = getComputedStyle(document.documentElement).getPropertyValue("--map-marker-color").trim(), t = /^#?([0-9a-fA-F]{6})$/.exec(r);
102
- return t ? t[1] : "4945a3";
104
+ const t = getComputedStyle(document.documentElement).getPropertyValue("--map-marker-color").trim(), r = /^#?([0-9a-fA-F]{6})$/.exec(t);
105
+ return r ? r[1] : "4945a3";
103
106
  }
104
- function ke({ apiKey: r, center: t, zoom: a, altText: c }) {
105
- const s = Ce(), f = `https://maps.googleapis.com/maps/api/staticmap?center=${t.lat},${t.lng}&zoom=${a}&size=640x192&scale=2&markers=color:0x${s}%7C${t.lat},${t.lng}&key=${encodeURIComponent(r)}`;
107
+ function ke({ apiKey: t, center: r, zoom: a, altText: c }) {
108
+ const s = Pe(), f = `https://maps.googleapis.com/maps/api/staticmap?center=${r.lat},${r.lng}&zoom=${a}&size=640x192&scale=2&markers=color:0x${s}%7C${r.lat},${r.lng}&key=${encodeURIComponent(t)}`;
106
109
  return /* @__PURE__ */ e(
107
110
  "img",
108
111
  {
@@ -116,10 +119,10 @@ function ke({ apiKey: r, center: t, zoom: a, altText: c }) {
116
119
  }
117
120
  );
118
121
  }
119
- const we = oe(
122
+ const we = ie(
120
123
  ({
121
- heading: r,
122
- description: t,
124
+ heading: t,
125
+ description: r,
123
126
  address: a,
124
127
  phone: c,
125
128
  whatsappNumber: s,
@@ -130,10 +133,10 @@ const we = oe(
130
133
  languageLabels: p,
131
134
  insurances: v,
132
135
  firstVisitPriceCents: x,
133
- currencyCode: y = "EUR",
134
- profession: P,
136
+ currencyCode: b = "EUR",
137
+ profession: y,
135
138
  specializedInFearPatients: G,
136
- googleMapsApiKey: C,
139
+ googleMapsApiKey: P,
137
140
  mapZoom: q = 14,
138
141
  onPhoneClick: W,
139
142
  onWhatsAppClick: D,
@@ -143,35 +146,35 @@ const we = oe(
143
146
  footerSlot: X,
144
147
  surface: k = "elevated",
145
148
  "aria-label": Z,
146
- id: b,
149
+ id: C,
147
150
  className: ee,
148
151
  ...ae
149
- }, re) => {
150
- const { t: i, i18n: w } = de(), M = le(), $ = w.language ?? "en", A = r ?? i("practiceProfileCard.heading"), te = Z ?? A, I = ce(() => {
152
+ }, te) => {
153
+ const { t: n, i18n: w } = de(), M = le(), $ = w.language ?? "en", N = t ?? n("contactProfileCard.heading"), re = Z ?? N, A = ce(() => {
151
154
  if (x != null)
152
- return ye(x, y, $);
153
- }, [x, y, $]), n = [];
154
- if (a && n.push({
155
+ return be(x, b, $);
156
+ }, [x, b, $]), o = [];
157
+ if (a && o.push({
155
158
  key: "address",
156
159
  icon: /* @__PURE__ */ e(U, { "aria-hidden": "true" }),
157
- label: i("practiceProfileCard.label.address"),
160
+ label: n("contactProfileCard.label.address"),
158
161
  value: /* @__PURE__ */ u("span", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-2xs)]", children: [
159
162
  /* @__PURE__ */ e("span", { children: a.line }),
160
163
  a.lat != null && a.lng != null ? /* @__PURE__ */ e(
161
164
  d,
162
165
  {
163
- href: be(a),
166
+ href: Ce(a),
164
167
  external: !0,
165
168
  intent: "default",
166
169
  onClick: Y,
167
- children: i("practiceProfileCard.openInGoogleMaps")
170
+ children: n("contactProfileCard.openInGoogleMaps")
168
171
  }
169
172
  ) : null
170
173
  ] })
171
- }), c && n.push({
174
+ }), c && o.push({
172
175
  key: "phone",
173
176
  icon: /* @__PURE__ */ e(B, { "aria-hidden": "true" }),
174
- label: i("practiceProfileCard.label.phone"),
177
+ label: n("contactProfileCard.label.phone"),
175
178
  value: /* @__PURE__ */ e(
176
179
  d,
177
180
  {
@@ -181,24 +184,24 @@ const we = oe(
181
184
  children: c
182
185
  }
183
186
  )
184
- }), s && n.push({
187
+ }), s && o.push({
185
188
  key: "whatsapp",
186
- icon: /* @__PURE__ */ e(O, { "aria-hidden": "true" }),
187
- label: i("practiceProfileCard.label.whatsapp"),
189
+ icon: /* @__PURE__ */ e(L, { "aria-hidden": "true" }),
190
+ label: n("contactProfileCard.label.whatsapp"),
188
191
  value: /* @__PURE__ */ e(
189
192
  d,
190
193
  {
191
- href: Pe(s, f),
194
+ href: ye(s, f),
192
195
  external: !0,
193
196
  intent: "default",
194
197
  onClick: D,
195
198
  children: s
196
199
  }
197
200
  )
198
- }), m && n.push({
201
+ }), m && o.push({
199
202
  key: "email",
200
- icon: /* @__PURE__ */ e(L, { "aria-hidden": "true" }),
201
- label: i("practiceProfileCard.label.email"),
203
+ icon: /* @__PURE__ */ e(K, { "aria-hidden": "true" }),
204
+ label: n("contactProfileCard.label.email"),
202
205
  value: /* @__PURE__ */ e(
203
206
  d,
204
207
  {
@@ -208,74 +211,74 @@ const we = oe(
208
211
  children: m
209
212
  }
210
213
  )
211
- }), h && n.push({
214
+ }), h && o.push({
212
215
  key: "website",
213
- icon: /* @__PURE__ */ e(K, { "aria-hidden": "true" }),
214
- label: i("practiceProfileCard.label.website"),
216
+ icon: /* @__PURE__ */ e(E, { "aria-hidden": "true" }),
217
+ label: n("contactProfileCard.label.website"),
215
218
  value: /* @__PURE__ */ e(d, { href: h, external: !0, intent: "default", children: h })
216
219
  }), g && g.length > 0) {
217
- const o = (l) => {
220
+ const i = (l) => {
218
221
  if (p != null && p[l]) return p[l];
219
- const N = `languages.${l}`;
220
- return w.exists(N) ? i(N) : l.toUpperCase();
222
+ const I = `languages.${l}`;
223
+ return w.exists(I) ? n(I) : l.toUpperCase();
221
224
  };
222
- n.push({
225
+ o.push({
223
226
  key: "languages",
224
227
  icon: /* @__PURE__ */ e(z, { "aria-hidden": "true" }),
225
- label: i("practiceProfileCard.label.languages"),
226
- value: /* @__PURE__ */ e("span", { className: "ds:flex ds:flex-wrap ds:gap-[var(--spacing-2xs)]", children: g.map((l) => /* @__PURE__ */ e(S, { variant: "neutral", children: o(l) }, l)) })
228
+ label: n("contactProfileCard.label.languages"),
229
+ value: /* @__PURE__ */ e("span", { className: "ds:flex ds:flex-wrap ds:gap-[var(--spacing-2xs)]", children: g.map((l) => /* @__PURE__ */ e(S, { variant: "neutral", children: i(l) }, l)) })
227
230
  });
228
231
  }
229
- v && v.length > 0 && n.push({
232
+ v && v.length > 0 && o.push({
230
233
  key: "insurances",
231
234
  icon: /* @__PURE__ */ e(V, { "aria-hidden": "true" }),
232
- label: i("practiceProfileCard.label.insurances"),
233
- value: /* @__PURE__ */ e("span", { className: "ds:flex ds:flex-wrap ds:gap-[var(--spacing-2xs)]", children: v.map((o) => /* @__PURE__ */ e(S, { variant: "info", children: o }, o)) })
234
- }), I && n.push({
235
+ label: n("contactProfileCard.label.insurances"),
236
+ value: /* @__PURE__ */ e("span", { className: "ds:flex ds:flex-wrap ds:gap-[var(--spacing-2xs)]", children: v.map((i) => /* @__PURE__ */ e(S, { variant: "info", children: i }, i)) })
237
+ }), A && o.push({
235
238
  key: "firstVisitPrice",
236
239
  icon: /* @__PURE__ */ e(j, { "aria-hidden": "true" }),
237
- label: i("practiceProfileCard.label.firstVisitPrice"),
238
- value: I
239
- }), G && n.push({
240
+ label: n("contactProfileCard.label.firstVisitPrice"),
241
+ value: A
242
+ }), G && o.push({
240
243
  key: "expertForAnxiousPatients",
241
- icon: /* @__PURE__ */ e(T, { "aria-hidden": "true" }),
242
- label: i("practiceProfileCard.label.expertForAnxiousPatients"),
243
- value: i("practiceProfileCard.value.yesShort")
244
- }), P && n.push({
245
- key: "profession",
246
244
  icon: /* @__PURE__ */ e(H, { "aria-hidden": "true" }),
247
- label: i("practiceProfileCard.label.profession"),
248
- value: P
245
+ label: n("contactProfileCard.label.expertForAnxiousPatients"),
246
+ value: n("contactProfileCard.value.yesShort")
247
+ }), y && o.push({
248
+ key: "profession",
249
+ icon: /* @__PURE__ */ e(T, { "aria-hidden": "true" }),
250
+ label: n("contactProfileCard.label.profession"),
251
+ value: y
249
252
  }), fe(
250
253
  ge,
251
- { getProfession: () => P },
252
- b
254
+ { getProfession: () => y },
255
+ C
253
256
  );
254
- const ie = /* @__PURE__ */ u(_, { children: [
255
- t ? /* @__PURE__ */ e("p", { className: "type-body-sm ds:m-0 ds:whitespace-pre-line", children: t }) : null,
256
- n.length > 0 ? /* @__PURE__ */ e(pe, { rowGap: "md", children: n.map((o) => /* @__PURE__ */ e(
257
+ const ne = /* @__PURE__ */ u(R, { children: [
258
+ r ? /* @__PURE__ */ e("p", { className: "type-body-sm ds:m-0 ds:whitespace-pre-line", children: r }) : null,
259
+ o.length > 0 ? /* @__PURE__ */ e(pe, { rowGap: "md", children: o.map((i) => /* @__PURE__ */ e(
257
260
  ue,
258
261
  {
259
- icon: o.icon,
260
- label: o.label,
261
- value: o.value
262
+ icon: i.icon,
263
+ label: i.label,
264
+ value: i.value
262
265
  },
263
- o.key
266
+ i.key
264
267
  )) }) : null,
265
268
  X
266
- ] }), ne = !!C && (a == null ? void 0 : a.lat) !== void 0 && (a == null ? void 0 : a.lng) !== void 0 ? /* @__PURE__ */ e(
269
+ ] }), oe = !!P && (a == null ? void 0 : a.lat) !== void 0 && (a == null ? void 0 : a.lng) !== void 0 ? /* @__PURE__ */ e(
267
270
  ke,
268
271
  {
269
- apiKey: C,
272
+ apiKey: P,
270
273
  center: { lat: a.lat, lng: a.lng },
271
274
  zoom: q,
272
- altText: i("practiceProfileCard.map.alt", {
275
+ altText: n("contactProfileCard.map.alt", {
273
276
  address: a.line,
274
277
  defaultValue: "Map showing {{address}}"
275
278
  })
276
279
  }
277
- ) : null, R = /* @__PURE__ */ u(_, { children: [
278
- ne,
280
+ ) : null, _ = /* @__PURE__ */ u(R, { children: [
281
+ oe,
279
282
  /* @__PURE__ */ u("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-sm)]", children: [
280
283
  Q,
281
284
  /* @__PURE__ */ e(
@@ -283,30 +286,30 @@ const we = oe(
283
286
  {
284
287
  id: M,
285
288
  className: "type-title-card ds:m-0 ds:text-[color:var(--foreground)]",
286
- children: A
289
+ children: N
287
290
  }
288
291
  )
289
292
  ] }),
290
- ie
293
+ ne
291
294
  ] });
292
295
  return /* @__PURE__ */ e(
293
296
  "div",
294
297
  {
295
- ref: re,
298
+ ref: te,
296
299
  role: "region",
297
- "aria-label": te,
300
+ "aria-label": re,
298
301
  "aria-labelledby": M,
299
- "data-component": "practice-profile-card",
300
- "data-component-id": b,
301
- id: b,
302
+ "data-component": "contact-profile-card",
303
+ "data-component-id": C,
304
+ id: C,
302
305
  className: ve({ surface: k, className: ee }),
303
306
  ...ae,
304
- children: k === "elevated" ? /* @__PURE__ */ e(F, { variant: "elevated", children: /* @__PURE__ */ e(F.Body, { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", children: R }) }) : /* @__PURE__ */ e("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", children: R })
307
+ children: k === "elevated" ? /* @__PURE__ */ e(F, { variant: "elevated", children: /* @__PURE__ */ e(F.Body, { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", children: _ }) }) : /* @__PURE__ */ e("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", children: _ })
305
308
  }
306
309
  );
307
310
  }
308
311
  );
309
- we.displayName = "PracticeProfileCard";
312
+ we.displayName = "ContactProfileCard";
310
313
  const Ue = [
311
314
  "address",
312
315
  "phone",
@@ -321,19 +324,19 @@ const Ue = [
321
324
  ], je = {
322
325
  address: U,
323
326
  phone: B,
324
- whatsapp: O,
325
- email: L,
326
- website: K,
327
+ whatsapp: L,
328
+ email: K,
329
+ website: E,
327
330
  languages: z,
328
331
  insurances: V,
329
332
  firstVisitPrice: j,
330
- expertForAnxiousPatients: T,
331
- profession: H
333
+ expertForAnxiousPatients: H,
334
+ profession: T
332
335
  };
333
336
  export {
334
- je as P,
337
+ je as C,
335
338
  Ue as a,
336
339
  we as b,
337
- ge as p
340
+ ge as c
338
341
  };
339
- //# sourceMappingURL=practice-profile-card-CfAMeTxQ.js.map
342
+ //# sourceMappingURL=contact-profile-card-Ce-LIDU8.js.map
@@ -30,7 +30,7 @@ import { D as ze } from "./date-range-picker-D4dgDlLU.js";
30
30
  import { M as Ot } from "./multi-select-DOLO3K_z.js";
31
31
  import { A as Ae } from "./autocomplete-DIgdhCGJ.js";
32
32
  import { N as ee } from "./number-input-Dj5L3pXK.js";
33
- import { B as Mt } from "./badge-B9Cr6iEB.js";
33
+ import { B as Mt } from "./badge-zsf5i5bH.js";
34
34
  import { A as Pe } from "./avatar-BNQNhoyL.js";
35
35
  import { T as jt } from "./tooltip-DvmfrNvB.js";
36
36
  import { T as he } from "./timestamp-BV2lC-wV.js";
@@ -2332,4 +2332,4 @@ export {
2332
2332
  Be as q,
2333
2333
  xn as u
2334
2334
  };
2335
- //# sourceMappingURL=editable-currency-cell-renderer-YvTwkFrD.js.map
2335
+ //# sourceMappingURL=editable-currency-cell-renderer-B9VRSV_S.js.map
@@ -26,65 +26,72 @@ const B = P("ds:flex", {
26
26
  }
27
27
  }), _ = g(
28
28
  ({
29
- label: t,
30
- value: s,
31
- layout: e = "horizontal",
29
+ label: o,
30
+ value: e,
31
+ layout: s = "horizontal",
32
32
  mono: r = !1,
33
33
  copyable: l = !1,
34
34
  copyText: v,
35
35
  icon: d,
36
36
  className: h,
37
- ...x
38
- }, k) => {
39
- const { t: o } = I(), [C, p] = y(!1), [N, n] = y(""), c = v ?? (typeof s == "string" ? s : void 0), w = z(async () => {
37
+ ...k
38
+ }, x) => {
39
+ const { t: n } = I(), [C, m] = y(!1), [N, t] = y(""), c = v ?? (typeof e == "string" ? e : void 0), V = z(async () => {
40
40
  if (c)
41
41
  try {
42
- await navigator.clipboard.writeText(c), p(!0), n(o("keyValuePair.copied")), setTimeout(() => {
43
- p(!1), n("");
42
+ await navigator.clipboard.writeText(c), m(!0), t(n("keyValuePair.copied")), setTimeout(() => {
43
+ m(!1), t("");
44
44
  }, 2e3);
45
45
  } catch {
46
- n(o("keyValuePair.notAvailable")), setTimeout(() => n(""), 3e3);
46
+ t(n("keyValuePair.notAvailable")), setTimeout(() => t(""), 3e3);
47
47
  }
48
- }, [c, o]), V = [
48
+ }, [c, n]), b = [
49
49
  "type-body ds:text-foreground ds:min-w-0 ds:shrink ds:[unicode-bidi:isolate]",
50
+ // `flex-1` lets the value absorb the remaining inline space
51
+ // when the KVP root flexes the icon / label / value as direct
52
+ // siblings (`hasIcon && layout === 'horizontal'`). Without it,
53
+ // the value would shrink to its content width and the row
54
+ // would leave inline-end whitespace. Vertical layout doesn't
55
+ // need it because the value is below the label, not beside it.
56
+ s === "horizontal" ? "ds:flex-1" : "",
50
57
  r ? "ds:font-[family-name:var(--font-mono)]" : ""
51
- ].filter(Boolean).join(" "), m = d != null, b = e === "horizontal" ? "ds:flex ds:flex-row ds:items-start ds:gap-[var(--spacing-sm)] ds:min-w-0 ds:flex-1" : "ds:flex ds:flex-col ds:gap-[var(--spacing-xs)] ds:min-w-0 ds:flex-1", u = /* @__PURE__ */ i(f, { children: [
58
+ ].filter(Boolean).join(" "), u = d != null, w = "ds:flex ds:flex-col ds:gap-[var(--spacing-xs)] ds:min-w-0 ds:flex-1", p = /* @__PURE__ */ i(f, { children: [
52
59
  /* @__PURE__ */ i("span", { className: "type-label ds:text-muted-foreground ds:shrink-0", children: [
53
- t,
60
+ o,
54
61
  /* @__PURE__ */ a("span", { className: "ds:sr-only", children: ": " })
55
62
  ] }),
56
- /* @__PURE__ */ a("span", { className: V, children: s }),
63
+ /* @__PURE__ */ a("span", { className: b, children: e }),
57
64
  l && /* @__PURE__ */ a(
58
65
  K,
59
66
  {
60
67
  icon: C ? /* @__PURE__ */ a(T, {}) : /* @__PURE__ */ a(j, {}),
61
68
  size: "sm",
62
- "aria-label": o("keyValuePair.copy", { label: t }),
63
- onClick: w,
69
+ "aria-label": n("keyValuePair.copy", { label: o }),
70
+ onClick: V,
64
71
  intent: "ghost",
65
- className: e === "horizontal" ? "ds:ms-auto ds:shrink-0" : "ds:self-start"
72
+ className: s === "horizontal" ? "ds:ms-auto ds:shrink-0" : "ds:self-start"
66
73
  }
67
74
  )
68
75
  ] });
69
76
  return /* @__PURE__ */ i(
70
77
  "div",
71
78
  {
72
- ref: k,
73
- className: B({ layout: e, hasIcon: m, className: h }),
79
+ ref: x,
80
+ className: B({ layout: s, hasIcon: u, className: h }),
74
81
  "data-component": "key-value-pair",
75
- ...x,
82
+ ...k,
76
83
  children: [
77
- m ? /* @__PURE__ */ i(f, { children: [
84
+ u ? /* @__PURE__ */ i(f, { children: [
78
85
  /* @__PURE__ */ a(
79
86
  "span",
80
87
  {
81
88
  "aria-hidden": "true",
82
- className: "ds:inline-flex ds:shrink-0 ds:mt-0.5 ds:text-[color:var(--key-value-pair-icon-color)] ds:[&_svg]:size-4",
89
+ className: "ds:inline-flex ds:shrink-0 ds:translate-y-0.5 ds:text-[color:var(--key-value-pair-icon-color)] ds:[&_svg]:size-4",
83
90
  children: d
84
91
  }
85
92
  ),
86
- /* @__PURE__ */ a("div", { className: b, children: u })
87
- ] }) : u,
93
+ s === "horizontal" ? p : /* @__PURE__ */ a("div", { className: w, children: p })
94
+ ] }) : p,
88
95
  /* @__PURE__ */ a("span", { role: "status", "aria-live": "polite", className: "ds:sr-only", children: N })
89
96
  ]
90
97
  }
@@ -97,7 +104,7 @@ const A = {
97
104
  md: "ds:gap-y-[var(--spacing-md)]",
98
105
  lg: "ds:gap-y-[var(--spacing-lg)]"
99
106
  }, L = g(
100
- ({ children: t, className: s, rowGap: e = "md", ...r }, l) => /* @__PURE__ */ a(
107
+ ({ children: o, className: e, rowGap: s = "md", ...r }, l) => /* @__PURE__ */ a(
101
108
  "div",
102
109
  {
103
110
  ref: l,
@@ -105,7 +112,7 @@ const A = {
105
112
  className: [
106
113
  "ds:grid ds:grid-cols-[auto_auto_minmax(0,1fr)]",
107
114
  "ds:gap-x-[var(--spacing-md)]",
108
- A[e],
115
+ A[s],
109
116
  // Each direct `data-component="key-value-pair"` child becomes
110
117
  // a subgrid row spanning all three columns. The KVP's own
111
118
  // flex layout still works inside the cell (icon shrinks-0,
@@ -115,14 +122,17 @@ const A = {
115
122
  'ds:[&>[data-component="key-value-pair"]]:grid-cols-subgrid',
116
123
  'ds:[&>[data-component="key-value-pair"]]:col-span-3',
117
124
  'ds:[&>[data-component="key-value-pair"]]:items-baseline',
118
- // Reset the per-row flex gap so the subgrid columns own the
119
- // spacing. Without this the KVP's intra-row `gap-sm` would
120
- // double the parent's `gap-x-md`.
121
- 'ds:[&>[data-component="key-value-pair"]]:gap-0',
122
- s
125
+ // Unset the KVP's intra-row `gap-sm` so the subgrid inherits
126
+ // the parent KeyValueList's `gap-x-md` for every track gap
127
+ // (icon→label and label→value). `gap-0` here would override
128
+ // the parent's gap and crowd the icon against the label;
129
+ // `[gap:normal]` is the subgrid-spec way to defer to the
130
+ // parent.
131
+ 'ds:[&>[data-component="key-value-pair"]]:[gap:normal]',
132
+ e
123
133
  ].filter(Boolean).join(" "),
124
134
  ...r,
125
- children: t
135
+ children: o
126
136
  }
127
137
  )
128
138
  );
@@ -131,4 +141,4 @@ export {
131
141
  L as K,
132
142
  _ as a
133
143
  };
134
- //# sourceMappingURL=key-value-pair-CYE7NSpM.js.map
144
+ //# sourceMappingURL=key-value-pair-CkQIb9EG.js.map