@alfadocs/ui-kit 0.50.1 → 0.51.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 (139) hide show
  1. package/dist/_chunks/{agenda-card-BaSfVfrL.js → agenda-card-Bl-SBiCh.js} +55 -45
  2. package/dist/_chunks/agenda-tray-DA6qj8BL.js +203 -0
  3. package/dist/_chunks/{ai-consent-banner-F2md5JD3.js → ai-consent-banner-DBKV27je.js} +2 -2
  4. package/dist/_chunks/ai-tools-rail-7tC3GT4h.js +340 -0
  5. package/dist/_chunks/{alert-CUTxnym2.js → alert-_mUKLmwA.js} +54 -44
  6. package/dist/_chunks/{audio-recorder-DVJXV7_k.js → audio-recorder-D6OVfNiZ.js} +2 -2
  7. package/dist/_chunks/{booking-DljH0JkS.js → booking-BUV9fspj.js} +2 -2
  8. package/dist/_chunks/{document-scanner-Cxqvq7GR.js → document-scanner-biBS_f6c.js} +2 -2
  9. package/dist/_chunks/dropdown-menu-DwwPovMZ.js +354 -0
  10. package/dist/_chunks/{editable-currency-cell-renderer-Bh48OHRv.js → editable-currency-cell-renderer-D5C5tCfu.js} +3 -3
  11. package/dist/_chunks/{freemium-paywall-BWaLWje-.js → freemium-paywall-gHGA44dW.js} +2 -2
  12. package/dist/_chunks/{header-settings-Bx0Biimh.js → header-settings-D5Z2B_Yz.js} +3 -3
  13. package/dist/_chunks/{marketplace-app-shell-UKSLx9K_.js → marketplace-app-shell-Dmo1S9av.js} +6 -6
  14. package/dist/_chunks/{patient-search-BJOmTmDA.js → patient-search-CArmRKeg.js} +3 -3
  15. package/dist/_chunks/{patient-shell-DUmhXnFq.js → patient-shell-c2YixkQw.js} +4 -4
  16. package/dist/_chunks/{payment-form-xmeCkxas.js → payment-form-DJ9vnzrT.js} +2 -2
  17. package/dist/_chunks/{pdf-viewer-q1D3Uion.js → pdf-viewer-4odMFuFW.js} +2 -2
  18. package/dist/_chunks/{practice-results-Cq1y8JFD.js → practice-results-CtfciF2v.js} +3 -3
  19. package/dist/_chunks/{pregnancy-dating-DT_244bG.js → pregnancy-dating-BA37LSkF.js} +15 -15
  20. package/dist/_chunks/{recaptcha-widget-CFYyLSEX.js → recaptcha-widget-BCNHsgqt.js} +2 -2
  21. package/dist/_chunks/{sidebar-h78cTNLh.js → sidebar-DPEHzxLZ.js} +397 -346
  22. package/dist/_chunks/{sign-document-CZkAf28g.js → sign-document-Bzld9jVM.js} +2 -2
  23. package/dist/_chunks/{task-card-CPyQ5AXC.js → task-card-BwY9jaV1.js} +48 -42
  24. package/dist/_chunks/task-tray-Cb_hK4yb.js +234 -0
  25. package/dist/_chunks/{theme-toggle-ClATnY4Q.js → theme-toggle-DAW7uC0B.js} +3 -3
  26. package/dist/_chunks/use-edge-resize-ZnGG7gyO.js +139 -0
  27. package/dist/_chunks/use-theme-CAuo6EYT.js +159 -0
  28. package/dist/_chunks/{warning-stack-CXfoAT-_.js → warning-stack-Cv4fr5zo.js} +2 -2
  29. package/dist/_chunks/{workflow-map-DzX_LI4y.js → workflow-map-BJDUNYlX.js} +3 -3
  30. package/dist/agent-catalog.json +1 -1
  31. package/dist/components/agenda-card/agenda-card.d.ts +19 -2
  32. package/dist/components/agenda-card/index.js +1 -1
  33. package/dist/components/agenda-tray/agenda-tray.d.ts +24 -1
  34. package/dist/components/agenda-tray/index.js +1 -1
  35. package/dist/components/ai-consent-banner/index.js +1 -1
  36. package/dist/components/ai-tools-rail/ai-tools-rail.d.ts +8 -0
  37. package/dist/components/ai-tools-rail/index.js +1 -1
  38. package/dist/components/alert/index.js +1 -1
  39. package/dist/components/audio-recorder/index.js +1 -1
  40. package/dist/components/booking/index.js +1 -1
  41. package/dist/components/button-group/button-group.d.ts +1 -1
  42. package/dist/components/checkbox-group/checkbox-group.d.ts +1 -1
  43. package/dist/components/data-table/index.js +1 -1
  44. package/dist/components/document-scanner/index.js +1 -1
  45. package/dist/components/dropdown-menu/dropdown-menu.d.ts +2 -0
  46. package/dist/components/dropdown-menu/index.js +1 -1
  47. package/dist/components/form-field/form-field.d.ts +1 -1
  48. package/dist/components/freemium-paywall/index.js +1 -1
  49. package/dist/components/header-settings/index.js +1 -1
  50. package/dist/components/icon-button-group/icon-button-group.d.ts +15 -15
  51. package/dist/components/key-value-pair/key-value-pair.d.ts +1 -1
  52. package/dist/components/patient-search/index.js +1 -1
  53. package/dist/components/payment-form/index.js +1 -1
  54. package/dist/components/pdf-viewer/index.js +1 -1
  55. package/dist/components/practice-results/index.js +1 -1
  56. package/dist/components/pregnancy-dating/index.js +1 -1
  57. package/dist/components/radio-group/radio-group.d.ts +1 -1
  58. package/dist/components/recaptcha-widget/index.js +1 -1
  59. package/dist/components/separator/separator.d.ts +1 -1
  60. package/dist/components/sidebar/index.js +1 -1
  61. package/dist/components/sidebar/sidebar.d.ts +8 -0
  62. package/dist/components/sign-document/index.js +1 -1
  63. package/dist/components/tabs/tabs.d.ts +2 -2
  64. package/dist/components/task-card/index.js +1 -1
  65. package/dist/components/task-card/task-card.d.ts +15 -1
  66. package/dist/components/task-tray/index.js +1 -1
  67. package/dist/components/task-tray/task-tray.d.ts +24 -1
  68. package/dist/components/theme-toggle/index.js +1 -1
  69. package/dist/components/warning-stack/index.js +1 -1
  70. package/dist/components/workflow/index.js +1 -1
  71. package/dist/components/workflow/workflow-map.d.ts +1 -1
  72. package/dist/hooks/index.d.ts +1 -0
  73. package/dist/hooks/index.js +12 -10
  74. package/dist/hooks/use-edge-resize.d.ts +78 -0
  75. package/dist/i18n/locales/ar.d.ts +4 -0
  76. package/dist/i18n/locales/ar.js +7 -3
  77. package/dist/i18n/locales/de.d.ts +4 -0
  78. package/dist/i18n/locales/de.js +7 -3
  79. package/dist/i18n/locales/el.d.ts +4 -0
  80. package/dist/i18n/locales/el.js +7 -3
  81. package/dist/i18n/locales/en.d.ts +4 -0
  82. package/dist/i18n/locales/en.js +7 -3
  83. package/dist/i18n/locales/es.d.ts +4 -0
  84. package/dist/i18n/locales/es.js +7 -3
  85. package/dist/i18n/locales/fr.d.ts +4 -0
  86. package/dist/i18n/locales/fr.js +7 -3
  87. package/dist/i18n/locales/hi.d.ts +4 -0
  88. package/dist/i18n/locales/hi.js +7 -3
  89. package/dist/i18n/locales/it.d.ts +4 -0
  90. package/dist/i18n/locales/it.js +7 -3
  91. package/dist/i18n/locales/ja.d.ts +4 -0
  92. package/dist/i18n/locales/ja.js +7 -3
  93. package/dist/i18n/locales/nl.d.ts +4 -0
  94. package/dist/i18n/locales/nl.js +7 -3
  95. package/dist/i18n/locales/pl.d.ts +4 -0
  96. package/dist/i18n/locales/pl.js +7 -3
  97. package/dist/i18n/locales/pt.d.ts +4 -0
  98. package/dist/i18n/locales/pt.js +7 -3
  99. package/dist/i18n/locales/ro.d.ts +4 -0
  100. package/dist/i18n/locales/ro.js +7 -3
  101. package/dist/i18n/locales/ru.d.ts +4 -0
  102. package/dist/i18n/locales/ru.js +7 -3
  103. package/dist/i18n/locales/sq.d.ts +4 -0
  104. package/dist/i18n/locales/sq.js +7 -3
  105. package/dist/i18n/locales/sv.d.ts +4 -0
  106. package/dist/i18n/locales/sv.js +7 -3
  107. package/dist/i18n/locales/tr.d.ts +4 -0
  108. package/dist/i18n/locales/tr.js +7 -3
  109. package/dist/i18n/locales/zh.d.ts +4 -0
  110. package/dist/i18n/locales/zh.js +7 -3
  111. package/dist/index.js +27 -27
  112. package/dist/locales/ar.json +7 -3
  113. package/dist/locales/de.json +7 -3
  114. package/dist/locales/el.json +7 -3
  115. package/dist/locales/en.json +7 -3
  116. package/dist/locales/es.json +7 -3
  117. package/dist/locales/fr.json +7 -3
  118. package/dist/locales/hi.json +7 -3
  119. package/dist/locales/it.json +7 -3
  120. package/dist/locales/ja.json +7 -3
  121. package/dist/locales/nl.json +7 -3
  122. package/dist/locales/pl.json +7 -3
  123. package/dist/locales/pt.json +7 -3
  124. package/dist/locales/ro.json +7 -3
  125. package/dist/locales/ru.json +7 -3
  126. package/dist/locales/sq.json +7 -3
  127. package/dist/locales/sv.json +7 -3
  128. package/dist/locales/tr.json +7 -3
  129. package/dist/locales/zh.json +7 -3
  130. package/dist/patterns/marketplace-app-shell/index.js +1 -1
  131. package/dist/patterns/patient-shell/index.js +1 -1
  132. package/dist/tokens.css +1 -1
  133. package/package.json +1 -1
  134. package/dist/_chunks/agenda-tray-DQayYmQ0.js +0 -165
  135. package/dist/_chunks/ai-tools-rail-CYLWrRmm.js +0 -280
  136. package/dist/_chunks/circle-arrow-up-CC_85SuH.js +0 -16
  137. package/dist/_chunks/dropdown-menu-CUEXqKis.js +0 -299
  138. package/dist/_chunks/task-tray-B8jFv5FV.js +0 -196
  139. package/dist/_chunks/use-theme-C2dHKUAN.js +0 -145
@@ -0,0 +1,354 @@
1
+ import { jsx as e, jsxs as c } from "react/jsx-runtime";
2
+ import { forwardRef as n, useContext as O, useRef as G, useEffect as P, useMemo as _, createContext as L } from "react";
3
+ import * as o from "@radix-ui/react-dropdown-menu";
4
+ import { c as f } from "./index-D2ZczOXr.js";
5
+ import { S as A } from "./separator-CYU_bGFn.js";
6
+ import { K as b } from "./kbd-D855ZXIW.js";
7
+ import { u as E } from "./use-controllable-state-BiY4xTzM.js";
8
+ import { C as K } from "./chevron-right-BrpYejk0.js";
9
+ import { C as V } from "./check-DPdL_Sm7.js";
10
+ import { a as B } from "./use-direction-Dp8h70PP.js";
11
+ import { u as H } from "./registry-nPAVE19X.js";
12
+ const q = {
13
+ id: "dropdown-menu",
14
+ capabilities: ["open", "close", "pick"],
15
+ state: {
16
+ isOpen: {
17
+ type: "boolean",
18
+ description: "True when the menu is currently open.",
19
+ read: (s) => s.getIsOpen()
20
+ }
21
+ },
22
+ actions: {
23
+ open: {
24
+ safety: "read",
25
+ description: "Open the menu.",
26
+ invoke: (s) => {
27
+ s.open();
28
+ }
29
+ },
30
+ close: {
31
+ safety: "read",
32
+ description: "Close the menu.",
33
+ invoke: (s) => {
34
+ s.close();
35
+ }
36
+ }
37
+ },
38
+ domHooks: {
39
+ root: { attr: "data-component", value: "dropdown-menu" },
40
+ instanceId: {
41
+ attr: "data-component-id",
42
+ sourceProp: "id",
43
+ description: "Sourced from the id prop on DropdownMenu.Root."
44
+ },
45
+ item: {
46
+ attr: "data-item-id",
47
+ description: "Each menu item emits its value as data-item-id."
48
+ }
49
+ }
50
+ }, g = f(
51
+ [
52
+ "ds:z-[var(--z-dropdown)]",
53
+ // Roomier panel: wider floor, larger radius, deeper float and a
54
+ // breath more padding so menus read as elevated surfaces rather
55
+ // than flat lists hugging their trigger.
56
+ "ds:min-w-[14rem]",
57
+ "ds:rounded-[var(--radius-lg)]",
58
+ // Border kept (transparent) so the forced-colors override below can
59
+ // repaint a visible edge in HCM. In normal modes the soft drop-shadow
60
+ // carries the edge cue; the heavy `--border` (grey-800 since WCAG
61
+ // 1.4.11 bump in 67fef8c) made the menu read as a charcoal box.
62
+ "ds:border ds:border-transparent",
63
+ "ds:bg-[var(--popover)] ds:text-[color:var(--popover-foreground)]",
64
+ "ds:shadow-[var(--shadow-xl)]",
65
+ "ds:p-[var(--spacing-sm)]",
66
+ // Motion — gated on --animation-duration via Tailwind's animate-in
67
+ // preset. motion-reduce disables via the no-preference query.
68
+ "ds:data-[state=open]:animate-in ds:data-[state=closed]:animate-out",
69
+ "ds:data-[state=open]:fade-in ds:data-[state=closed]:fade-out",
70
+ "ds:data-[state=open]:zoom-in-95 ds:data-[state=closed]:zoom-out-95",
71
+ "ds:data-[state=open]:slide-in-from-top-1",
72
+ "ds:motion-reduce:animate-none",
73
+ "ds:forced-colors:border-[CanvasText]"
74
+ ].join(" ")
75
+ ), l = f(
76
+ [
77
+ "ds:relative ds:flex ds:items-center ds:gap-[var(--spacing-sm)]",
78
+ "ds:ps-[var(--spacing-sm)] ds:pe-[var(--spacing-sm)]",
79
+ "ds:pt-[var(--spacing-xs)] ds:pb-[var(--spacing-xs)]",
80
+ "ds:rounded-[var(--radius-md)]",
81
+ "ds:min-h-[var(--min-target-size)]",
82
+ "ds:text-[length:var(--font-size-sm)] ds:text-[color:var(--foreground)]",
83
+ "ds:cursor-pointer ds:select-none ds:outline-none",
84
+ // Highlighted + hover state
85
+ "ds:data-[highlighted]:bg-[color:var(--muted)]/40",
86
+ "ds:focus-visible:outline-[length:var(--focus-ring-width)]",
87
+ "ds:focus-visible:outline-solid ds:focus-visible:outline-[color:var(--ring)]",
88
+ "ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)]",
89
+ "ds:forced-colors:focus-visible:outline-[CanvasText]",
90
+ // Disabled
91
+ "ds:data-[disabled]:opacity-50 ds:data-[disabled]:cursor-not-allowed",
92
+ "ds:data-[disabled]:pointer-events-none"
93
+ ].join(" ")
94
+ ), F = f(
95
+ [
96
+ "ds:ps-[var(--spacing-sm)] ds:pe-[var(--spacing-sm)]",
97
+ "ds:pt-[var(--spacing-xs)] ds:pb-[var(--spacing-2xs)]",
98
+ // Quiet sentence-case caption — the shouty uppercase eyebrow made
99
+ // every menu read as a form. Groups should lean on separators first
100
+ // and reach for a Label only when the grouping is genuinely unclear.
101
+ "ds:text-[length:var(--font-size-xs)]",
102
+ "ds:font-[var(--font-weight-medium)]",
103
+ "ds:text-[color:var(--muted-foreground)]",
104
+ "ds:select-none"
105
+ ].join(" ")
106
+ ), x = "ds:inline-flex ds:items-center ds:justify-center ds:size-4 ds:shrink-0", w = L(void 0), N = ({
107
+ dir: s,
108
+ id: a,
109
+ open: d,
110
+ defaultOpen: r,
111
+ onOpenChange: t,
112
+ ...i
113
+ }) => {
114
+ const p = B(), [h, m] = E({
115
+ value: d,
116
+ defaultValue: r ?? !1,
117
+ onChange: t
118
+ }), u = h ?? !1, v = G(u);
119
+ P(() => {
120
+ v.current = u;
121
+ }, [u]);
122
+ const T = _(
123
+ () => ({
124
+ getIsOpen: () => v.current,
125
+ open: () => m(!0),
126
+ close: () => m(!1)
127
+ }),
128
+ [m]
129
+ );
130
+ return H(q, T, a), /* @__PURE__ */ e(w.Provider, { value: a, children: /* @__PURE__ */ e(
131
+ o.Root,
132
+ {
133
+ dir: s ?? p,
134
+ open: u,
135
+ onOpenChange: m,
136
+ ...i
137
+ }
138
+ ) });
139
+ };
140
+ N.displayName = "DropdownMenu.Root";
141
+ const J = o.Trigger, Q = o.Portal, U = o.Group, W = o.RadioGroup, C = n(({ className: s, sideOffset: a = 8, ...d }, r) => {
142
+ const t = O(w);
143
+ return /* @__PURE__ */ e(o.Portal, { children: /* @__PURE__ */ e(
144
+ o.Content,
145
+ {
146
+ ref: r,
147
+ sideOffset: a,
148
+ className: g({ className: s }),
149
+ "data-component": "dropdown-menu",
150
+ "data-component-id": t,
151
+ ...d
152
+ }
153
+ ) });
154
+ });
155
+ C.displayName = "DropdownMenu.Content";
156
+ const y = n(
157
+ ({
158
+ className: s,
159
+ startIcon: a,
160
+ endIcon: d,
161
+ description: r,
162
+ shortcut: t,
163
+ children: i,
164
+ ...p
165
+ }, h) => /* @__PURE__ */ c(
166
+ o.Item,
167
+ {
168
+ ref: h,
169
+ className: l({ className: s }),
170
+ ...p,
171
+ children: [
172
+ a ? /* @__PURE__ */ e(
173
+ "span",
174
+ {
175
+ "aria-hidden": "true",
176
+ className: "ds:inline-flex ds:size-4 ds:shrink-0 ds:items-center ds:justify-center",
177
+ children: a
178
+ }
179
+ ) : null,
180
+ /* @__PURE__ */ c("span", { className: "ds:flex-1 ds:flex ds:flex-col ds:min-w-0", children: [
181
+ /* @__PURE__ */ e("span", { className: "ds:truncate", children: i }),
182
+ r ? /* @__PURE__ */ e("span", { className: "type-meta ds:text-[color:var(--muted-foreground)] ds:truncate", children: r }) : null
183
+ ] }),
184
+ t ? /* @__PURE__ */ e("span", { className: "ds:ms-auto", children: /* @__PURE__ */ e(b, { keys: t, size: "sm" }) }) : d ? /* @__PURE__ */ e(
185
+ "span",
186
+ {
187
+ "aria-hidden": "true",
188
+ className: "ds:ms-auto ds:inline-flex ds:size-4 ds:shrink-0 ds:items-center ds:justify-center",
189
+ children: d
190
+ }
191
+ ) : null
192
+ ]
193
+ }
194
+ )
195
+ );
196
+ y.displayName = "DropdownMenu.Item";
197
+ const k = n(({ className: s, children: a, ...d }, r) => /* @__PURE__ */ c(
198
+ o.CheckboxItem,
199
+ {
200
+ ref: r,
201
+ className: l({ className: s }),
202
+ ...d,
203
+ children: [
204
+ /* @__PURE__ */ e("span", { className: x, children: /* @__PURE__ */ e(o.ItemIndicator, { children: /* @__PURE__ */ e(V, { "aria-hidden": !0, className: "ds:size-4" }) }) }),
205
+ /* @__PURE__ */ e("span", { className: "ds:flex-1 ds:truncate", children: a })
206
+ ]
207
+ }
208
+ ));
209
+ k.displayName = "DropdownMenu.CheckboxItem";
210
+ const X = [
211
+ "ds:ms-auto ds:inline-flex ds:items-center ds:shrink-0",
212
+ "ds:h-4 ds:w-7 ds:p-[2px]",
213
+ "ds:rounded-[var(--radius-full)]",
214
+ "ds:border ds:border-[length:var(--border-width-sm)] ds:border-[color:var(--muted-foreground)]",
215
+ "ds:bg-[color:var(--muted)]",
216
+ "ds:[[data-state=checked]_&]:bg-[color:var(--primary)]",
217
+ "ds:[[data-state=checked]_&]:border-[color:var(--primary)]",
218
+ // Thumb slides via justify swap — logical-direction safe, no
219
+ // transform to fight under prefers-reduced-motion.
220
+ "ds:justify-start ds:[[data-state=checked]_&]:justify-end",
221
+ "ds:forced-colors:border-[CanvasText]",
222
+ // HCM strips fills — paint the checked track with the system
223
+ // selection colour so state isn't conveyed by thumb position alone.
224
+ "ds:forced-colors:[[data-state=checked]_&]:bg-[SelectedItem]"
225
+ ].join(" "), Y = [
226
+ "ds:block ds:size-3",
227
+ "ds:rounded-[var(--radius-full)]",
228
+ "ds:bg-[color:var(--background)]",
229
+ "ds:border ds:border-[length:var(--border-width-sm)] ds:border-[color:var(--muted-foreground)]",
230
+ "ds:[[data-state=checked]_&]:border-transparent",
231
+ "ds:shadow-[var(--shadow-sm)]",
232
+ "ds:forced-colors:bg-[CanvasText]"
233
+ ].join(" "), D = n(({ className: s, children: a, onSelect: d, ...r }, t) => /* @__PURE__ */ c(
234
+ o.CheckboxItem,
235
+ {
236
+ ref: t,
237
+ className: l({ className: s }),
238
+ onSelect: (i) => {
239
+ i.preventDefault(), d == null || d(i);
240
+ },
241
+ ...r,
242
+ children: [
243
+ /* @__PURE__ */ e("span", { className: "ds:flex-1 ds:truncate", children: a }),
244
+ /* @__PURE__ */ e("span", { "aria-hidden": "true", className: X, children: /* @__PURE__ */ e("span", { className: Y }) })
245
+ ]
246
+ }
247
+ ));
248
+ D.displayName = "DropdownMenu.SwitchItem";
249
+ const Z = W, I = n(({ className: s, children: a, ...d }, r) => /* @__PURE__ */ c(
250
+ o.RadioItem,
251
+ {
252
+ ref: r,
253
+ className: l({ className: s }),
254
+ ...d,
255
+ children: [
256
+ /* @__PURE__ */ e("span", { className: x, "aria-hidden": "true", children: /* @__PURE__ */ e(
257
+ "span",
258
+ {
259
+ className: [
260
+ "ds:inline-flex ds:size-4 ds:items-center ds:justify-center ds:shrink-0",
261
+ "ds:rounded-[var(--radius-full)]",
262
+ "ds:border ds:border-[length:var(--border-width-sm)] ds:border-[color:var(--muted-foreground)]",
263
+ "ds:[[data-state=checked]_&]:border-[color:var(--accent)]",
264
+ "ds:forced-colors:border-[CanvasText]"
265
+ ].join(" "),
266
+ children: /* @__PURE__ */ e(o.ItemIndicator, { children: /* @__PURE__ */ e("span", { className: "ds:block ds:size-2 ds:rounded-[var(--radius-full)] ds:bg-[color:var(--accent)] ds:forced-colors:bg-[CanvasText]" }) })
267
+ }
268
+ ) }),
269
+ /* @__PURE__ */ e("span", { className: "ds:flex-1 ds:truncate", children: a })
270
+ ]
271
+ }
272
+ ));
273
+ I.displayName = "DropdownMenu.RadioItem";
274
+ const R = n(({ className: s, ...a }, d) => /* @__PURE__ */ e(
275
+ o.Label,
276
+ {
277
+ ref: d,
278
+ className: F({ className: s }),
279
+ ...a
280
+ }
281
+ ));
282
+ R.displayName = "DropdownMenu.Label";
283
+ const S = n(({ className: s, ...a }, d) => /* @__PURE__ */ e(o.Separator, { ref: d, asChild: !0, ...a, children: /* @__PURE__ */ e(
284
+ A,
285
+ {
286
+ className: ["ds:my-[calc(var(--spacing-xs)/2)]", s ?? ""].filter(Boolean).join(" ")
287
+ }
288
+ ) }));
289
+ S.displayName = "DropdownMenu.Separator";
290
+ const z = n(
291
+ ({ keys: s, separator: a = "none" }, d) => /* @__PURE__ */ e("span", { ref: d, className: "ds:ms-auto ds:ps-[var(--spacing-sm)]", children: /* @__PURE__ */ e(b, { keys: s, separator: a, size: "sm" }) })
292
+ );
293
+ z.displayName = "DropdownMenu.Shortcut";
294
+ const $ = o.Sub, M = n(({ className: s, startIcon: a, children: d, ...r }, t) => /* @__PURE__ */ c(
295
+ o.SubTrigger,
296
+ {
297
+ ref: t,
298
+ className: l({ className: s }),
299
+ ...r,
300
+ children: [
301
+ a ? /* @__PURE__ */ e(
302
+ "span",
303
+ {
304
+ "aria-hidden": "true",
305
+ className: "ds:inline-flex ds:size-4 ds:shrink-0 ds:items-center ds:justify-center",
306
+ children: a
307
+ }
308
+ ) : null,
309
+ /* @__PURE__ */ e("span", { className: "ds:flex-1 ds:truncate", children: d }),
310
+ /* @__PURE__ */ e(
311
+ K,
312
+ {
313
+ "aria-hidden": !0,
314
+ className: "ds:ms-auto ds:size-4 ds:shrink-0 ds:rtl:-scale-x-100"
315
+ }
316
+ )
317
+ ]
318
+ }
319
+ ));
320
+ M.displayName = "DropdownMenu.SubTrigger";
321
+ const j = n(({ className: s, ...a }, d) => /* @__PURE__ */ e(o.Portal, { children: /* @__PURE__ */ e(
322
+ o.SubContent,
323
+ {
324
+ ref: d,
325
+ sideOffset: 8,
326
+ "data-component": "dropdown-menu-sub-content",
327
+ className: g({ className: s }),
328
+ ...a
329
+ }
330
+ ) }));
331
+ j.displayName = "DropdownMenu.SubContent";
332
+ const le = {
333
+ Root: N,
334
+ Trigger: J,
335
+ Portal: Q,
336
+ Content: C,
337
+ Group: U,
338
+ Item: y,
339
+ CheckboxItem: k,
340
+ SwitchItem: D,
341
+ RadioGroup: Z,
342
+ RadioItem: I,
343
+ Label: R,
344
+ Separator: S,
345
+ Shortcut: z,
346
+ Sub: $,
347
+ SubTrigger: M,
348
+ SubContent: j
349
+ };
350
+ export {
351
+ le as D,
352
+ q as d
353
+ };
354
+ //# sourceMappingURL=dropdown-menu-DwwPovMZ.js.map
@@ -12,7 +12,7 @@ import { P as Z } from "./popover-Devce-tT.js";
12
12
  import { C as Re } from "./checkbox-DRcOdmXv.js";
13
13
  import { T as fe } from "./text-input-BaClJL8Y.js";
14
14
  import { T as ae } from "./tag-CdA0s_VV.js";
15
- import { D as Y } from "./dropdown-menu-CUEXqKis.js";
15
+ import { D as Y } from "./dropdown-menu-DwwPovMZ.js";
16
16
  import { X as De } from "./x-CCcI3eJp.js";
17
17
  import { R as Ft } from "./refresh-cw-CC8jSKMr.js";
18
18
  import { S as pe } from "./search-BonnQsHv.js";
@@ -25,7 +25,7 @@ import { F as Et } from "./file-spreadsheet-zUkY8rJ2.js";
25
25
  import It from "i18next";
26
26
  import { S as Ee } from "./select-hsCaJSX3.js";
27
27
  import { u as zt } from "./use-prefers-reduced-motion-BMwIQRjB.js";
28
- import { u as At } from "./use-theme-C2dHKUAN.js";
28
+ import { u as At } from "./use-theme-CAuo6EYT.js";
29
29
  import { u as Pt } from "./registry-nPAVE19X.js";
30
30
  import { D as Ie } from "./date-range-picker-hcAMs1wO.js";
31
31
  import { M as Ot } from "./multi-select-DOLO3K_z.js";
@@ -2322,4 +2322,4 @@ export {
2322
2322
  Be as q,
2323
2323
  Cn as u
2324
2324
  };
2325
- //# sourceMappingURL=editable-currency-cell-renderer-Bh48OHRv.js.map
2325
+ //# sourceMappingURL=editable-currency-cell-renderer-D5C5tCfu.js.map
@@ -8,7 +8,7 @@ import { u as X } from "./use-controllable-state-BiY4xTzM.js";
8
8
  import { u as Y } from "./registry-nPAVE19X.js";
9
9
  import { B as I } from "./button-DD_0Xdmr.js";
10
10
  import { P as Z } from "./progress-kzIRcdaq.js";
11
- import { f as $ } from "./payment-form-xmeCkxas.js";
11
+ import { f as $ } from "./payment-form-DJ9vnzrT.js";
12
12
  import { T as ee } from "./triangle-alert-CBPUIzQo.js";
13
13
  import { C as se } from "./check-DPdL_Sm7.js";
14
14
  const ae = {
@@ -265,4 +265,4 @@ export {
265
265
  te as F,
266
266
  ae as f
267
267
  };
268
- //# sourceMappingURL=freemium-paywall-BWaLWje-.js.map
268
+ //# sourceMappingURL=freemium-paywall-gHGA44dW.js.map
@@ -4,11 +4,11 @@ import { c as N } from "./index-D2ZczOXr.js";
4
4
  import { useTranslation as E } from "react-i18next";
5
5
  import { I as o } from "./icon-button-CKEOrN37.js";
6
6
  import { I as M } from "./icon-button-group-C48khLE0.js";
7
- import { D as r } from "./dropdown-menu-CUEXqKis.js";
7
+ import { D as r } from "./dropdown-menu-DwwPovMZ.js";
8
8
  import { S as R } from "./switch-BJ6HD3Mn.js";
9
9
  import { c as v, a as H, L as _ } from "./locale-picker-D99UyZVJ.js";
10
10
  import { u as O } from "./use-locale-BkCIHujH.js";
11
- import { u as P } from "./use-theme-C2dHKUAN.js";
11
+ import { u as P } from "./use-theme-CAuo6EYT.js";
12
12
  import { u as j } from "./registry-nPAVE19X.js";
13
13
  import { S as K } from "./settings-ca2Yi9R8.js";
14
14
  import { S as D, M as z } from "./sun-BuXE0xUS.js";
@@ -241,4 +241,4 @@ Y.displayName = "HeaderSettings";
241
241
  export {
242
242
  Y as H
243
243
  };
244
- //# sourceMappingURL=header-settings-Bx0Biimh.js.map
244
+ //# sourceMappingURL=header-settings-D5Z2B_Yz.js.map
@@ -4,17 +4,17 @@ import { useTranslation as M } from "react-i18next";
4
4
  import { c as p } from "./index-D2ZczOXr.js";
5
5
  import { A as E } from "./app-frame-BYx1gcV7.js";
6
6
  import { A as $ } from "./avatar-BNQNhoyL.js";
7
- import { A as D } from "./alert-CUTxnym2.js";
7
+ import { A as D } from "./alert-_mUKLmwA.js";
8
8
  import { C } from "./card-DPmk26CL.js";
9
- import { D as i } from "./dropdown-menu-CUEXqKis.js";
9
+ import { D as i } from "./dropdown-menu-DwwPovMZ.js";
10
10
  import { T as F } from "./tab-bar-Xetknddo.js";
11
11
  import { a as S, H as q, g as G, f as w, e as J, c as K, d as Q } from "./header-Ce1Br27u.js";
12
- import { H as U } from "./header-settings-Bx0Biimh.js";
12
+ import { H as U } from "./header-settings-D5Z2B_Yz.js";
13
13
  import { S as X } from "./sign-in-with-alfadocs-button-CuYn_kKP.js";
14
- import { S as Y, a as Z, j as _, k as ee, i as ae, h as A } from "./sidebar-h78cTNLh.js";
14
+ import { S as Y, a as Z, j as _, k as ee, i as ae, h as A } from "./sidebar-DPEHzxLZ.js";
15
15
  import { T as se } from "./theme-root-BOO73p5t.js";
16
16
  import { a as te } from "./tooltip-DvmfrNvB.js";
17
- import { u as re } from "./use-theme-C2dHKUAN.js";
17
+ import { u as re } from "./use-theme-CAuo6EYT.js";
18
18
  import { L as ne } from "./logo-yituK7sE.js";
19
19
  const de = p("ds:inline-flex ds:items-center ds:gap-[var(--spacing-xs)]"), le = p(
20
20
  [
@@ -425,4 +425,4 @@ export {
425
425
  pe as M,
426
426
  h as P
427
427
  };
428
- //# sourceMappingURL=marketplace-app-shell-UKSLx9K_.js.map
428
+ //# sourceMappingURL=marketplace-app-shell-Dmo1S9av.js.map
@@ -6,8 +6,8 @@ import { A as se } from "./autocomplete-CDqxB68B.js";
6
6
  import { B as ue } from "./button-DD_0Xdmr.js";
7
7
  import { C as M } from "./card-DPmk26CL.js";
8
8
  import { S as fe } from "./slider-BHWzXdjt.js";
9
- import { A as Z } from "./alert-CUTxnym2.js";
10
- import { D as F } from "./dropdown-menu-CUEXqKis.js";
9
+ import { A as Z } from "./alert-_mUKLmwA.js";
10
+ import { D as F } from "./dropdown-menu-DwwPovMZ.js";
11
11
  import { u as pe } from "./registry-nPAVE19X.js";
12
12
  import { S as re } from "./search-BonnQsHv.js";
13
13
  import { X as ne } from "./x-CCcI3eJp.js";
@@ -1155,4 +1155,4 @@ export {
1155
1155
  Oe as P,
1156
1156
  ye as p
1157
1157
  };
1158
- //# sourceMappingURL=patient-search-BJOmTmDA.js.map
1158
+ //# sourceMappingURL=patient-search-CArmRKeg.js.map
@@ -3,13 +3,13 @@ import { forwardRef as k, useState as w } from "react";
3
3
  import { useTranslation as m } from "react-i18next";
4
4
  import { A } from "./app-frame-BYx1gcV7.js";
5
5
  import { I as C } from "./icon-button-CKEOrN37.js";
6
- import { D as i } from "./dropdown-menu-CUEXqKis.js";
6
+ import { D as i } from "./dropdown-menu-DwwPovMZ.js";
7
7
  import { H, g as x, f as N, e as B, a as M, c as T, d as O } from "./header-Ce1Br27u.js";
8
8
  import { L as P } from "./logo-yituK7sE.js";
9
- import { S as W, a as j, h as R, j as _, k as z, i as D } from "./sidebar-h78cTNLh.js";
9
+ import { S as W, a as j, h as R, j as _, k as z, i as D } from "./sidebar-DPEHzxLZ.js";
10
10
  import { T as E } from "./theme-root-BOO73p5t.js";
11
11
  import { a as q } from "./tooltip-DvmfrNvB.js";
12
- import { u as F } from "./use-theme-C2dHKUAN.js";
12
+ import { u as F } from "./use-theme-CAuo6EYT.js";
13
13
  import { S as U } from "./settings-ca2Yi9R8.js";
14
14
  import { c as G } from "./createLucideIcon-CrFbzy84.js";
15
15
  import { L as J } from "./log-out-616hnn2-.js";
@@ -171,4 +171,4 @@ $.displayName = "PatientShell";
171
171
  export {
172
172
  $ as P
173
173
  };
174
- //# sourceMappingURL=patient-shell-DUmhXnFq.js.map
174
+ //# sourceMappingURL=patient-shell-c2YixkQw.js.map
@@ -3,7 +3,7 @@ import { forwardRef as de, useState as _, useEffect as D, useRef as G, useMemo a
3
3
  import { c as A } from "./index-D2ZczOXr.js";
4
4
  import { useTranslation as W } from "react-i18next";
5
5
  import { S as te } from "./spinner-OjQNn8oN.js";
6
- import { A as ee } from "./alert-CUTxnym2.js";
6
+ import { A as ee } from "./alert-_mUKLmwA.js";
7
7
  import { loadStripe as ue } from "@stripe/stripe-js";
8
8
  import { Elements as pe, useStripe as fe, useElements as be, PaymentElement as ye, AddressElement as ge } from "@stripe/react-stripe-js";
9
9
  import { u as ve } from "./registry-nPAVE19X.js";
@@ -668,4 +668,4 @@ export {
668
668
  we as p,
669
669
  se as s
670
670
  };
671
- //# sourceMappingURL=payment-form-xmeCkxas.js.map
671
+ //# sourceMappingURL=payment-form-DJ9vnzrT.js.map
@@ -6,7 +6,7 @@ import { useTranslation as pe } from "react-i18next";
6
6
  import * as ee from "@radix-ui/react-popover";
7
7
  import Ce from "pdfjs-dist/legacy/build/pdf.worker.min.mjs?url";
8
8
  import { S as Ze } from "./spinner-OjQNn8oN.js";
9
- import { A as we } from "./alert-CUTxnym2.js";
9
+ import { A as we } from "./alert-_mUKLmwA.js";
10
10
  import { u as Ke } from "./registry-nPAVE19X.js";
11
11
  import { X as Be } from "./x-CCcI3eJp.js";
12
12
  import { C as He } from "./chevron-left-CX1jqD2M.js";
@@ -957,4 +957,4 @@ export {
957
957
  at as P,
958
958
  Ge as p
959
959
  };
960
- //# sourceMappingURL=pdf-viewer-q1D3Uion.js.map
960
+ //# sourceMappingURL=pdf-viewer-4odMFuFW.js.map
@@ -2,10 +2,10 @@ import { jsx as t, jsxs as p, Fragment as Ge } from "react/jsx-runtime";
2
2
  import { forwardRef as Ze, useState as me, useRef as I, useMemo as D, useImperativeHandle as Qe, useCallback as B, useEffect as J } from "react";
3
3
  import { c as Z } from "./index-D2ZczOXr.js";
4
4
  import { useTranslation as C } from "react-i18next";
5
- import { A as Y } from "./alert-CUTxnym2.js";
5
+ import { A as Y } from "./alert-_mUKLmwA.js";
6
6
  import { A as ke } from "./avatar-BNQNhoyL.js";
7
7
  import { B as G } from "./button-DD_0Xdmr.js";
8
- import { D as H } from "./dropdown-menu-CUEXqKis.js";
8
+ import { D as H } from "./dropdown-menu-DwwPovMZ.js";
9
9
  import { E as Je } from "./empty-state-BLy7tigq.js";
10
10
  import { M as We } from "./map-view-Tb5VfK9Y.js";
11
11
  import { R as Ce } from "./rating-BRD7O74e.js";
@@ -1570,4 +1570,4 @@ export {
1570
1570
  Ct as P,
1571
1571
  rt as p
1572
1572
  };
1573
- //# sourceMappingURL=practice-results-Cq1y8JFD.js.map
1573
+ //# sourceMappingURL=practice-results-CtfciF2v.js.map
@@ -12,7 +12,7 @@ import { S as Ne } from "./switch-BJ6HD3Mn.js";
12
12
  import { C as M } from "./card-DPmk26CL.js";
13
13
  import { B as j } from "./badge-zsf5i5bH.js";
14
14
  import { I as Se } from "./insert-result-njqBthzT.js";
15
- import { D as k, r as Ae, c as Le, g as ke, e as Ce, f as Te, A as we, h as Ee, i as Re, j as P, G as Fe } from "./antenatal-schedule-timeline-CdiqkF05.js";
15
+ import { D as k, r as Ae, c as Le, g as ke, e as Ce, f as we, A as Te, h as Ee, i as Re, j as P, G as Fe } from "./antenatal-schedule-timeline-CdiqkF05.js";
16
16
  import { s as C } from "./subDays-Bs00akhK.js";
17
17
  import { i as Ie } from "./date-picker-variants-CXEAx3O_.js";
18
18
  const Oe = ve("ds:flex ds:flex-col ds:gap-[var(--spacing-lg)]", {
@@ -35,7 +35,7 @@ const Oe = ve("ds:flex ds:flex-col ds:gap-[var(--spacing-lg)]", {
35
35
  onCopy: K,
36
36
  onError: U,
37
37
  insertBrand: q,
38
- showSchedule: T = !1,
38
+ showSchedule: w = !1,
39
39
  defaultPlurality: J = "singleton",
40
40
  defaultChorionicity: Q = "unknown",
41
41
  defaultRhNegative: W = !1,
@@ -47,7 +47,7 @@ const Oe = ve("ds:flex ds:flex-col ds:gap-[var(--spacing-lg)]", {
47
47
  }, te) => {
48
48
  const { t: e, i18n: f } = be(), [s, ne] = i(z), [d, le] = i(
49
49
  Y
50
- ), [w, se] = i(
50
+ ), [T, se] = i(
51
51
  k
52
52
  ), [E, ie] = i(5), [D, re] = i(null), [v, de] = i(void 0), [b, ce] = i(
53
53
  null
@@ -56,7 +56,7 @@ const Oe = ve("ds:flex ds:flex-col ds:gap-[var(--spacing-lg)]", {
56
56
  ), G = o(() => /* @__PURE__ */ new Date(), []), c = o(() => s !== "lmp" || !d || D === null || !v ? null : Ae({ lmp: d, scanDate: v, crlMm: D }), [s, d, D, v]), p = o(() => {
57
57
  if (!d) return null;
58
58
  let t, u = k;
59
- s === "lmp" ? (t = d, u = w ?? k) : s === "conception" ? t = C(d, P) : s === "ivf" ? t = C(d, E + P) : t = C(d, Fe), s === "lmp" && (c != null && c.redated) ? (t = c.gestationalStart, u = k) : b && (t = C(t, b));
59
+ s === "lmp" ? (t = d, u = T ?? k) : s === "conception" ? t = C(d, P) : s === "ivf" ? t = C(d, E + P) : t = C(d, Fe), s === "lmp" && (c != null && c.redated) ? (t = c.gestationalStart, u = k) : b && (t = C(t, b));
60
60
  const h = Le(
61
61
  { method: "lmp", date: t, cycleLength: u },
62
62
  m
@@ -73,12 +73,12 @@ const Oe = ve("ds:flex ds:flex-col ds:gap-[var(--spacing-lg)]", {
73
73
  }, [
74
74
  s,
75
75
  d,
76
- w,
76
+ T,
77
77
  E,
78
78
  c,
79
79
  b,
80
80
  m
81
- ]), n = (p == null ? void 0 : p.result) ?? null, S = o(() => !T || !n ? null : Ce(n.gestationalStart, {
81
+ ]), n = (p == null ? void 0 : p.result) ?? null, S = o(() => !w || !n ? null : Ce(n.gestationalStart, {
82
82
  ...V,
83
83
  today: m,
84
84
  plurality: x,
@@ -86,7 +86,7 @@ const Oe = ve("ds:flex ds:flex-col ds:gap-[var(--spacing-lg)]", {
86
86
  rhNegative: F,
87
87
  gdmRisk: N === "none" ? void 0 : N
88
88
  }), [
89
- T,
89
+ w,
90
90
  n,
91
91
  m,
92
92
  V,
@@ -168,7 +168,7 @@ const Oe = ve("ds:flex ds:flex-col ds:gap-[var(--spacing-lg)]", {
168
168
  mode: "integer",
169
169
  min: 20,
170
170
  max: 45,
171
- value: w,
171
+ value: T,
172
172
  onChange: se
173
173
  }
174
174
  )
@@ -252,7 +252,7 @@ const Oe = ve("ds:flex ds:flex-col ds:gap-[var(--spacing-lg)]", {
252
252
  c.crlInRange ? null : /* @__PURE__ */ a("span", { className: "type-meta ds:text-muted-foreground", children: e("pregnancyDating.crlOutOfRange") })
253
253
  ] }) : null
254
254
  ] }) : null,
255
- T ? /* @__PURE__ */ l(ye, { children: [
255
+ w ? /* @__PURE__ */ l(ye, { children: [
256
256
  /* @__PURE__ */ l(
257
257
  L,
258
258
  {
@@ -328,8 +328,8 @@ const Oe = ve("ds:flex ds:flex-col ds:gap-[var(--spacing-lg)]", {
328
328
  n.gestationalAge
329
329
  )}.` : "" }),
330
330
  p && n ? /* @__PURE__ */ a(M, { variant: "elevated", children: /* @__PURE__ */ l(M.Body, { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-md)]", children: [
331
- /* @__PURE__ */ l("dl", { className: "ds:grid ds:grid-cols-1 ds:gap-[var(--spacing-md)] ds:sm:grid-cols-3", children: [
332
- /* @__PURE__ */ l("div", { className: "ds:flex ds:flex-col ds:items-start ds:gap-[var(--spacing-xs)]", children: [
331
+ /* @__PURE__ */ l("dl", { className: "ds:flex ds:flex-wrap ds:items-start ds:gap-x-[var(--spacing-xl)] ds:gap-y-[var(--spacing-md)]", children: [
332
+ /* @__PURE__ */ l("div", { className: "ds:basis-full ds:flex ds:flex-col ds:items-start ds:gap-[var(--spacing-xs)]", children: [
333
333
  /* @__PURE__ */ a("dt", { className: "type-label ds:text-muted-foreground", children: e("pregnancyDating.result.dueDateLabel") }),
334
334
  /* @__PURE__ */ a("dd", { className: "type-metric ds:text-foreground", children: A.format(n.dueDate) })
335
335
  ] }),
@@ -337,12 +337,12 @@ const Oe = ve("ds:flex ds:flex-col ds:gap-[var(--spacing-lg)]", {
337
337
  /* @__PURE__ */ a("dt", { className: "type-label ds:text-muted-foreground", children: e("pregnancyDating.result.gestationLabel") }),
338
338
  /* @__PURE__ */ a("dd", { className: "type-body ds:text-foreground", children: I(n.gestationalAge) })
339
339
  ] }),
340
- /* @__PURE__ */ l("div", { className: "ds:flex ds:flex-col ds:items-end ds:gap-[var(--spacing-xs)] ds:text-end", children: [
340
+ /* @__PURE__ */ l("div", { className: "ds:flex ds:flex-col ds:items-start ds:gap-[var(--spacing-xs)]", children: [
341
341
  /* @__PURE__ */ a("dt", { className: "type-label ds:text-muted-foreground", children: e("pregnancyDating.result.trimesterLabel") }),
342
342
  /* @__PURE__ */ a("dd", { children: /* @__PURE__ */ a(
343
343
  j,
344
344
  {
345
- variant: Te[n.trimester],
345
+ variant: we[n.trimester],
346
346
  size: "lg",
347
347
  children: e(`pregnancyDating.trimester.${n.trimester}`)
348
348
  }
@@ -370,7 +370,7 @@ const Oe = ve("ds:flex ds:flex-col ds:gap-[var(--spacing-lg)]", {
370
370
  }) })
371
371
  ] })
372
372
  ] }) }) : /* @__PURE__ */ a("p", { className: "type-body ds:text-muted-foreground", children: e("pregnancyDating.empty") }),
373
- S ? /* @__PURE__ */ a(we, { events: S }) : null,
373
+ S ? /* @__PURE__ */ a(Te, { events: S }) : null,
374
374
  n && (B === "copy" || $) ? /* @__PURE__ */ a(
375
375
  Se,
376
376
  {
@@ -418,4 +418,4 @@ je.displayName = "PregnancyDating";
418
418
  export {
419
419
  je as P
420
420
  };
421
- //# sourceMappingURL=pregnancy-dating-DT_244bG.js.map
421
+ //# sourceMappingURL=pregnancy-dating-BA37LSkF.js.map
@@ -2,7 +2,7 @@ import { jsxs as G, jsx as F } from "react/jsx-runtime";
2
2
  import { forwardRef as U, useRef as m, useState as q, useEffect as C, useMemo as J, useImperativeHandle as K } from "react";
3
3
  import { useTranslation as Q } from "react-i18next";
4
4
  import { u as X } from "./form-field-context-B3APVHKx.js";
5
- import { u as Y } from "./use-theme-C2dHKUAN.js";
5
+ import { u as Y } from "./use-theme-CAuo6EYT.js";
6
6
  import { u as Z } from "./registry-nPAVE19X.js";
7
7
  const z = {
8
8
  id: "recaptcha-widget",
@@ -218,4 +218,4 @@ export {
218
218
  ae as R,
219
219
  z as r
220
220
  };
221
- //# sourceMappingURL=recaptcha-widget-CFYyLSEX.js.map
221
+ //# sourceMappingURL=recaptcha-widget-BCNHsgqt.js.map