@alfadocs/ui-kit 0.51.0 → 0.52.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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alfadocs/ui-kit",
3
- "version": "0.51.0",
3
+ "version": "0.52.0",
4
4
  "type": "module",
5
5
  "description": "AlfaDocs shared design system — tokens, components, patterns, and translations for platform, booking, and alfascribe.",
6
6
  "license": "BUSL-1.1",
@@ -1,428 +0,0 @@
1
- import { jsxs as n, jsx as e, Fragment as T } from "react/jsx-runtime";
2
- import { forwardRef as b, useState as P } from "react";
3
- import { useTranslation as M } from "react-i18next";
4
- import { c as p } from "./index-D2ZczOXr.js";
5
- import { A as E } from "./app-frame-BYx1gcV7.js";
6
- import { A as $ } from "./avatar-BNQNhoyL.js";
7
- import { A as D } from "./alert-_mUKLmwA.js";
8
- import { C } from "./card-DPmk26CL.js";
9
- import { D as i } from "./dropdown-menu-DwwPovMZ.js";
10
- import { T as F } from "./tab-bar-Xetknddo.js";
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-D5Z2B_Yz.js";
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-DPEHzxLZ.js";
15
- import { T as se } from "./theme-root-BOO73p5t.js";
16
- import { a as te } from "./tooltip-DvmfrNvB.js";
17
- import { u as re } from "./use-theme-CAuo6EYT.js";
18
- import { L as ne } from "./logo-yituK7sE.js";
19
- const de = p("ds:inline-flex ds:items-center ds:gap-[var(--spacing-xs)]"), le = p(
20
- [
21
- "ds:[font-family:var(--font-serif)]",
22
- "ds:font-semibold",
23
- "ds:leading-none",
24
- "ds:tracking-[0.01em]",
25
- "ds:whitespace-nowrap",
26
- // Forced-colors: drop the transparent text-fill and paint the label
27
- // as solid CanvasText so it never disappears under Windows HCM —
28
- // a gradient/transparent fill has no meaning there.
29
- "ds:forced-colors:text-[CanvasText]",
30
- "ds:forced-colors:[-webkit-text-fill-color:CanvasText]"
31
- ],
32
- {
33
- variants: {
34
- size: {
35
- sm: "ds:text-[calc(var(--logo-size-sm)*0.95)]",
36
- md: "ds:text-[calc(var(--logo-size-md)*0.95)]",
37
- lg: "ds:text-[calc(var(--logo-size-lg)*0.95)]",
38
- xl: "ds:text-[calc(var(--logo-size-xl)*0.95)]"
39
- },
40
- tone: {
41
- // Brand gradient filled into the glyphs via background-clip:text.
42
- // `--gradient-wordmark` rides the theme aliases, so it stays
43
- // AA-safe and adapts per theme on its own (and flattens to a solid
44
- // ink in the accessible / forced-colors blocks — see tokens).
45
- gradient: [
46
- "ds:italic",
47
- "ds:bg-[image:var(--gradient-wordmark)]",
48
- "ds:bg-clip-text",
49
- "ds:text-transparent",
50
- "ds:[-webkit-text-fill-color:transparent]"
51
- ],
52
- // Monochrome: solid currentColor ink, upright, no gradient — for
53
- // print, single-colour work, and coloured chrome (e.g. app-shell
54
- // headers) where the lockup must ride the surrounding ink.
55
- solid: "ds:text-current"
56
- }
57
- },
58
- defaultVariants: { size: "md", tone: "gradient" }
59
- }
60
- ), h = b(
61
- ({
62
- name: s,
63
- monochrome: r = !1,
64
- tone: a = "auto",
65
- size: t = "md",
66
- className: d,
67
- ...l
68
- }, o) => /* @__PURE__ */ n(
69
- "span",
70
- {
71
- ref: o,
72
- role: "img",
73
- "aria-label": `Alfadocs ${s}`.trim(),
74
- className: de({ className: d }),
75
- "data-component": "product-lockup",
76
- ...l,
77
- children: [
78
- /* @__PURE__ */ e(
79
- ne,
80
- {
81
- variant: r ? "monochrome" : "wordmark",
82
- tone: a,
83
- size: t,
84
- decorative: !0
85
- }
86
- ),
87
- /* @__PURE__ */ e(
88
- "span",
89
- {
90
- "aria-hidden": !0,
91
- className: le({
92
- size: t,
93
- tone: r ? "solid" : "gradient"
94
- }),
95
- children: s
96
- }
97
- )
98
- ]
99
- }
100
- )
101
- );
102
- h.displayName = "ProductLockup";
103
- function ie(s) {
104
- return s > 99 ? "99+" : String(s);
105
- }
106
- function oe({
107
- user: s,
108
- labels: r,
109
- onSignOut: a,
110
- onToggleFullscreen: t
111
- }) {
112
- const { t: d } = M(), l = r.fullscreen ?? d("patientShell.settings.fullscreen");
113
- return (
114
- // Non-modal: an account menu shouldn't inert/aria-hide the whole shell
115
- // behind it (which leaves the still-focusable chrome inside an
116
- // aria-hidden region — an `aria-hidden-focus` violation).
117
- /* @__PURE__ */ n(i.Root, { modal: !1, children: [
118
- /* @__PURE__ */ e(i.Trigger, { asChild: !0, children: /* @__PURE__ */ n(
119
- "button",
120
- {
121
- type: "button",
122
- "aria-label": r.accountMenu,
123
- "data-testid": "marketplace-account-trigger",
124
- className: "ds:rounded-full ds:inline-flex ds:items-center ds:gap-[var(--spacing-sm)] ds:min-h-[var(--min-target-size)] ds:min-w-[var(--min-target-size)] ds:justify-center ds:focus-visible:outline-[length:var(--focus-ring-width)] ds:focus-visible:outline-solid ds:focus-visible:outline-[color:var(--ring)] ds:focus-visible:outline-offset-[length:var(--focus-ring-offset)] ds:forced-colors:focus-visible:outline-[CanvasText]",
125
- children: [
126
- /* @__PURE__ */ e($, { name: s.name, src: s.avatarSrc, size: "md" }),
127
- /* @__PURE__ */ e("span", { className: "ds:hidden ds:sm:inline", children: s.name })
128
- ]
129
- }
130
- ) }),
131
- /* @__PURE__ */ n(i.Content, { align: "end", children: [
132
- /* @__PURE__ */ e(i.Label, { children: /* @__PURE__ */ n("span", { className: "ds:flex ds:flex-col", children: [
133
- /* @__PURE__ */ e("span", { className: "ds:font-medium", children: s.name }),
134
- s.email ? /* @__PURE__ */ e("span", { className: "ds:text-[length:var(--font-size-sm)] ds:text-[color:var(--muted-foreground)]", children: s.email }) : null
135
- ] }) }),
136
- t ? /* @__PURE__ */ n(T, { children: [
137
- /* @__PURE__ */ e(i.Separator, {}),
138
- /* @__PURE__ */ e(
139
- i.Item,
140
- {
141
- onSelect: t,
142
- "data-testid": "marketplace-fullscreen",
143
- children: l
144
- }
145
- )
146
- ] }) : null,
147
- /* @__PURE__ */ e(i.Separator, {}),
148
- /* @__PURE__ */ e(
149
- i.Item,
150
- {
151
- onSelect: a,
152
- "data-testid": "marketplace-sign-out",
153
- children: r.signOut
154
- }
155
- )
156
- ] })
157
- ] })
158
- );
159
- }
160
- function ce({
161
- nav: s,
162
- renderLink: r
163
- }) {
164
- return /* @__PURE__ */ e(Z, { children: s.map((a) => {
165
- const t = typeof a.badgeCount == "number" && a.badgeCount > 0 ? a.badgeCount : void 0, d = /* @__PURE__ */ n(T, { children: [
166
- a.icon ? /* @__PURE__ */ e(_, { children: a.icon }) : null,
167
- /* @__PURE__ */ e(ee, { children: a.label }),
168
- t !== void 0 ? /* @__PURE__ */ e(ae, { children: ie(t) }) : null
169
- ] });
170
- return r ? /* @__PURE__ */ e(A, { asChild: !0, isActive: a.isActive, children: r({
171
- href: a.href,
172
- children: d,
173
- "aria-current": a.isActive ? "page" : void 0
174
- }) }, a.id) : /* @__PURE__ */ e(
175
- A,
176
- {
177
- href: a.href,
178
- "aria-label": a.label,
179
- isActive: a.isActive,
180
- ...a.onClick ? { onClick: a.onClick } : {},
181
- children: d
182
- },
183
- a.id
184
- );
185
- }) });
186
- }
187
- const z = p("ds:bg-[color:var(--app-shell-background)]", {
188
- variants: {
189
- variant: {
190
- standalone: "",
191
- embedded: [
192
- "ds:flex-1",
193
- "ds:ps-[var(--spacing-md)] ds:pe-[var(--spacing-md)]",
194
- "ds:pt-[var(--spacing-lg)] ds:pb-[var(--spacing-md)]"
195
- ].join(" ")
196
- }
197
- },
198
- defaultVariants: { variant: "standalone" }
199
- });
200
- function me({
201
- nav: s,
202
- ariaLabel: r,
203
- renderLink: a
204
- }) {
205
- const t = a ? ({
206
- href: d,
207
- className: l,
208
- children: o,
209
- "aria-current": m
210
- }) => a({ href: d, className: l, children: o, "aria-current": m }) : void 0;
211
- return /* @__PURE__ */ e(
212
- F,
213
- {
214
- items: s,
215
- ariaLabel: r,
216
- ...t ? { renderLink: t } : {}
217
- }
218
- );
219
- }
220
- const pe = b(
221
- ({
222
- productName: s,
223
- productHref: r = "/",
224
- nav: a,
225
- renderLink: t,
226
- user: d,
227
- labels: l,
228
- onSignOut: o,
229
- onToggleFullscreen: m,
230
- sidebarState: c,
231
- mainAriaLabel: f,
232
- variant: g = "standalone",
233
- children: u
234
- }, x) => {
235
- const { t: v } = M(), B = t ? /* @__PURE__ */ e(S, { asChild: !0, children: t({
236
- href: r,
237
- children: /* @__PURE__ */ e(h, { name: s, size: "md", monochrome: !0 })
238
- }) }) : /* @__PURE__ */ e(
239
- S,
240
- {
241
- href: r,
242
- logo: /* @__PURE__ */ e(h, { name: s, size: "md", monochrome: !0 })
243
- }
244
- ), { theme: H, accessibility: I, resolvedTheme: k } = re(), V = H !== "system" || I !== "system", j = k.startsWith("dark") ? "dark" : "light", L = k.endsWith("-accessible"), [O, N] = P(!1), W = /* @__PURE__ */ e(te, { children: /* @__PURE__ */ e(
245
- E,
246
- {
247
- mainAriaLabel: f,
248
- mainClassName: z({ variant: "standalone" }),
249
- header: /* @__PURE__ */ n(q, { children: [
250
- /* @__PURE__ */ n(G, { children: [
251
- /* @__PURE__ */ e(w, { href: "#main-content" }),
252
- /* @__PURE__ */ e(J, { onMenuOpen: () => N(!0) }),
253
- B
254
- ] }),
255
- /* @__PURE__ */ e(K, {}),
256
- /* @__PURE__ */ n(Q, { children: [
257
- /* @__PURE__ */ e(U, { size: "sm" }),
258
- /* @__PURE__ */ e(
259
- oe,
260
- {
261
- user: d,
262
- labels: l,
263
- onSignOut: o,
264
- onToggleFullscreen: m
265
- }
266
- )
267
- ] })
268
- ] }),
269
- sidebar: /* @__PURE__ */ e(
270
- Y,
271
- {
272
- ...c !== void 0 ? { state: c } : { defaultState: "expanded" },
273
- open: O,
274
- onOpenChange: N,
275
- "aria-label": v("navigation.sidebar.label"),
276
- "data-testid": "marketplace-app-shell-sidebar",
277
- children: /* @__PURE__ */ e(ce, { nav: a, renderLink: t })
278
- }
279
- ),
280
- children: u
281
- }
282
- ) }), R = (
283
- // The shell owns the warm-grey canvas; TabBar's strip is transparent and
284
- // floats its pill on it, and `<main>` continues the same surface.
285
- /* @__PURE__ */ n("div", { className: "ds:flex ds:min-h-dvh ds:flex-col ds:bg-[color:var(--app-shell-background)]", children: [
286
- /* @__PURE__ */ e(w, { href: "#main-content" }),
287
- /* @__PURE__ */ e(
288
- me,
289
- {
290
- nav: a,
291
- ariaLabel: v("navigation.sidebar.label"),
292
- renderLink: t
293
- }
294
- ),
295
- /* @__PURE__ */ e(
296
- "main",
297
- {
298
- id: "main-content",
299
- tabIndex: -1,
300
- "aria-label": f ?? v("navigation.main.label", "Main content"),
301
- className: z({ variant: "embedded" }),
302
- children: u
303
- }
304
- )
305
- ] })
306
- ), y = g === "embedded" ? R : W;
307
- return V ? /* @__PURE__ */ e(
308
- se,
309
- {
310
- ref: x,
311
- theme: j,
312
- accessible: L,
313
- className: "ds:contents",
314
- "data-component": "marketplace-app-shell",
315
- children: y
316
- }
317
- ) : /* @__PURE__ */ e(
318
- "div",
319
- {
320
- ref: x,
321
- className: "ds:contents",
322
- "data-component": "marketplace-app-shell",
323
- children: y
324
- }
325
- );
326
- }
327
- );
328
- pe.displayName = "MarketplaceAppShell";
329
- const fe = p(
330
- "ds:flex ds:min-h-dvh ds:bg-[color:var(--app-shell-background)]",
331
- {
332
- variants: {
333
- layout: {
334
- card: "",
335
- split: "ds:flex-col ds:lg:flex-row"
336
- }
337
- },
338
- defaultVariants: { layout: "card" }
339
- }
340
- ), he = p("ds:w-full", {
341
- variants: {
342
- layout: {
343
- card: "ds:max-w-[400px]",
344
- split: "ds:max-w-[400px] ds:lg:max-w-[480px]"
345
- }
346
- },
347
- defaultVariants: { layout: "card" }
348
- }), ue = p("", {
349
- variants: {
350
- layout: { card: "", split: "ds:lg:hidden" }
351
- },
352
- defaultVariants: { layout: "card" }
353
- }), ge = b(
354
- ({
355
- productName: s,
356
- title: r,
357
- description: a,
358
- connectLabel: t,
359
- status: d = "idle",
360
- error: l,
361
- onConnect: o,
362
- footer: m,
363
- layout: c = "card",
364
- brandPanel: f,
365
- className: g
366
- }, u) => /* @__PURE__ */ n(
367
- "div",
368
- {
369
- ref: u,
370
- "data-component": "connect-with-alfadocs",
371
- className: `${fe({ layout: c })} ${g ?? ""}`,
372
- children: [
373
- c === "split" ? (
374
- // Desktop brand panel (lg+ only): a bold `--primary` surface with the
375
- // monochrome lockup riding the `--primary-foreground` ink, plus an
376
- // optional `brandPanel` slot. Decorative — the card carries the real
377
- // heading + CTA, and shows its own lockup below `lg:`.
378
- /* @__PURE__ */ n("div", { className: "ds:hidden ds:lg:flex ds:lg:w-[55%] ds:flex-col ds:items-center ds:justify-center ds:gap-[var(--spacing-lg)] ds:bg-[color:var(--primary)] ds:text-[color:var(--primary-foreground)] ds:ps-[var(--spacing-2xl)] ds:pe-[var(--spacing-2xl)] ds:pt-[var(--spacing-2xl)] ds:pb-[var(--spacing-2xl)] ds:text-start", children: [
379
- /* @__PURE__ */ e(
380
- h,
381
- {
382
- name: s,
383
- size: "lg",
384
- monochrome: !0,
385
- tone: "inherit"
386
- }
387
- ),
388
- f ? /* @__PURE__ */ e("div", { className: "type-body ds:max-w-[28rem] ds:text-start", children: f }) : null
389
- ] })
390
- ) : null,
391
- /* @__PURE__ */ e("div", { className: "ds:flex ds:flex-1 ds:items-center ds:justify-center ds:p-[var(--spacing-lg)]", children: /* @__PURE__ */ e(C, { className: he({ layout: c }), children: /* @__PURE__ */ n(C.Body, { className: "ds:flex ds:flex-col ds:items-center ds:gap-[var(--spacing-lg)] ds:text-center", children: [
392
- /* @__PURE__ */ e(
393
- h,
394
- {
395
- name: s,
396
- size: "lg",
397
- className: ue({ layout: c })
398
- }
399
- ),
400
- /* @__PURE__ */ n("div", { className: "ds:flex ds:flex-col ds:gap-[var(--spacing-xs)]", children: [
401
- /* @__PURE__ */ e("h1", { className: "type-title-card", children: r }),
402
- /* @__PURE__ */ e("p", { className: "type-body-sm ds:text-[color:var(--muted-foreground)]", children: a })
403
- ] }),
404
- d === "error" && l ? /* @__PURE__ */ e(D, { variant: "error", className: "ds:w-full ds:text-start", children: l }) : null,
405
- /* @__PURE__ */ e(
406
- X,
407
- {
408
- intent: "primary",
409
- className: "ds:w-full",
410
- loading: d === "connecting",
411
- onClick: o,
412
- label: t,
413
- "data-testid": "connect-with-alfadocs-button"
414
- }
415
- ),
416
- m ? /* @__PURE__ */ e("div", { className: "type-meta ds:text-[color:var(--muted-foreground)]", children: m }) : null
417
- ] }) }) })
418
- ]
419
- }
420
- )
421
- );
422
- ge.displayName = "ConnectWithAlfadocs";
423
- export {
424
- ge as C,
425
- pe as M,
426
- h as P
427
- };
428
- //# sourceMappingURL=marketplace-app-shell-Dmo1S9av.js.map
@@ -1,174 +0,0 @@
1
- import { jsx as e, jsxs as n } from "react/jsx-runtime";
2
- import { forwardRef as k, useState as w } from "react";
3
- import { useTranslation as m } from "react-i18next";
4
- import { A } from "./app-frame-BYx1gcV7.js";
5
- import { I as C } from "./icon-button-CKEOrN37.js";
6
- import { D as i } from "./dropdown-menu-DwwPovMZ.js";
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
- 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-DPEHzxLZ.js";
10
- import { T as E } from "./theme-root-BOO73p5t.js";
11
- import { a as q } from "./tooltip-DvmfrNvB.js";
12
- import { u as F } from "./use-theme-CAuo6EYT.js";
13
- import { S as U } from "./settings-ca2Yi9R8.js";
14
- import { c as G } from "./createLucideIcon-CrFbzy84.js";
15
- import { L as J } from "./log-out-616hnn2-.js";
16
- /**
17
- * @license lucide-react v1.8.0 - ISC
18
- *
19
- * This source code is licensed under the ISC license.
20
- * See the LICENSE file in the root directory of this source tree.
21
- */
22
- const K = [
23
- ["path", { d: "M15 3h6v6", key: "1q9fwt" }],
24
- ["path", { d: "m21 3-7 7", key: "1l2asr" }],
25
- ["path", { d: "m3 21 7-7", key: "tjx5ai" }],
26
- ["path", { d: "M9 21H3v-6", key: "wtvkvv" }]
27
- ], Q = G("maximize-2", K);
28
- function V(a) {
29
- return a > 99 ? "99+" : String(a);
30
- }
31
- function X(a) {
32
- if (a.startsWith("/") || a.startsWith("#") || a.startsWith("?"))
33
- return !0;
34
- try {
35
- const t = new URL(a, window.location.origin);
36
- return t.protocol === "http:" || t.protocol === "https:";
37
- } catch {
38
- return !1;
39
- }
40
- }
41
- function Y({
42
- logoutHref: a,
43
- onToggleFullscreen: t
44
- }) {
45
- const { t: r } = m();
46
- return /* @__PURE__ */ n(i.Root, { children: [
47
- /* @__PURE__ */ e(i.Trigger, { asChild: !0, children: /* @__PURE__ */ e(
48
- C,
49
- {
50
- icon: /* @__PURE__ */ e(U, { "aria-hidden": "true" }),
51
- "aria-label": r("patientShell.settings.triggerAria"),
52
- tooltip: r("patientShell.settings.triggerAria"),
53
- "data-testid": "patient-shell-settings-trigger"
54
- }
55
- ) }),
56
- /* @__PURE__ */ n(i.Content, { align: "end", children: [
57
- /* @__PURE__ */ e(
58
- i.Item,
59
- {
60
- startIcon: /* @__PURE__ */ e(Q, { "aria-hidden": "true" }),
61
- onSelect: t,
62
- "data-testid": "patient-shell-fullscreen",
63
- children: r("patientShell.settings.fullscreen")
64
- }
65
- ),
66
- /* @__PURE__ */ e(i.Separator, {}),
67
- /* @__PURE__ */ e(
68
- i.Item,
69
- {
70
- startIcon: /* @__PURE__ */ e(J, { "aria-hidden": "true" }),
71
- onSelect: () => {
72
- typeof window > "u" || X(a) && window.location.assign(a);
73
- },
74
- "data-testid": "patient-shell-logout",
75
- children: r("patientShell.settings.logout")
76
- }
77
- )
78
- ] })
79
- ] });
80
- }
81
- function Z({ menuItems: a }) {
82
- return /* @__PURE__ */ e(j, { children: a.map((t) => {
83
- const r = typeof t.badgeCount == "number" && t.badgeCount > 0 ? t.badgeCount : void 0;
84
- return /* @__PURE__ */ n(
85
- R,
86
- {
87
- href: t.href,
88
- "aria-label": t.label,
89
- isActive: t.isActive,
90
- children: [
91
- t.icon ? /* @__PURE__ */ e(_, { children: t.icon }) : null,
92
- /* @__PURE__ */ e(z, { children: t.label }),
93
- r !== void 0 ? /* @__PURE__ */ e(D, { children: V(r) }) : null
94
- ]
95
- },
96
- t.id
97
- );
98
- }) });
99
- }
100
- const $ = k(
101
- ({
102
- menuItems: a,
103
- logoutHref: t,
104
- onToggleFullscreen: r,
105
- brandLogo: p,
106
- brandHref: u = "/",
107
- mainAriaLabel: f,
108
- sidebarState: o,
109
- children: g,
110
- // `userName` and `userAvatarSrc` are declared on the public API
111
- // for forward-compatibility (future profile-pill work) — they are
112
- // intentionally unused today because the legacy patient chrome
113
- // carries no profile pill.
114
- userName: ee,
115
- userAvatarSrc: te
116
- }, s) => {
117
- const { t: l } = m(), { theme: b, accessibility: S, resolvedTheme: d } = F(), v = b !== "system" || S !== "system", y = d.startsWith("dark") ? "dark" : "light", I = d.endsWith("-accessible"), [L, c] = w(!1), h = /* @__PURE__ */ e(q, { children: /* @__PURE__ */ e(
118
- A,
119
- {
120
- mainAriaLabel: f,
121
- mainClassName: "ds:bg-[color:var(--app-shell-background)]",
122
- header: /* @__PURE__ */ n(H, { children: [
123
- /* @__PURE__ */ n(x, { children: [
124
- /* @__PURE__ */ e(N, { href: "#main-content" }),
125
- /* @__PURE__ */ e(B, { onMenuOpen: () => c(!0) }),
126
- /* @__PURE__ */ e(
127
- M,
128
- {
129
- logo: p ?? /* @__PURE__ */ e(P, { variant: "monochrome", size: "md", decorative: !0 }),
130
- href: u,
131
- "aria-label": l("patientShell.brand.homeAria")
132
- }
133
- )
134
- ] }),
135
- /* @__PURE__ */ e(T, {}),
136
- /* @__PURE__ */ e(O, { children: /* @__PURE__ */ e(
137
- Y,
138
- {
139
- logoutHref: t,
140
- onToggleFullscreen: r
141
- }
142
- ) })
143
- ] }),
144
- sidebar: /* @__PURE__ */ e(
145
- W,
146
- {
147
- ...o !== void 0 ? { state: o } : { defaultState: "expanded" },
148
- open: L,
149
- onOpenChange: c,
150
- "aria-label": l("patientShell.sidebar.panelLabel"),
151
- "data-testid": "patient-shell-sidebar",
152
- children: /* @__PURE__ */ e(Z, { menuItems: a })
153
- }
154
- ),
155
- children: g
156
- }
157
- ) });
158
- return v ? /* @__PURE__ */ e(
159
- E,
160
- {
161
- ref: s,
162
- theme: y,
163
- accessible: I,
164
- className: "ds:contents",
165
- children: h
166
- }
167
- ) : /* @__PURE__ */ e("div", { ref: s, className: "ds:contents", children: h });
168
- }
169
- );
170
- $.displayName = "PatientShell";
171
- export {
172
- $ as P
173
- };
174
- //# sourceMappingURL=patient-shell-c2YixkQw.js.map