@wealthx/shadcn 1.5.9 → 1.5.11

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 (112) hide show
  1. package/.turbo/turbo-build.log +157 -157
  2. package/CHANGELOG.md +12 -0
  3. package/dist/{chunk-AANINK2B.mjs → chunk-2KNQZG5S.mjs} +1 -1
  4. package/dist/chunk-3KLJ4XRE.mjs +375 -0
  5. package/dist/{chunk-6U4NQGVM.mjs → chunk-4X4MGYHE.mjs} +2 -2
  6. package/dist/{chunk-CEEVYRQA.mjs → chunk-67DGIPQ4.mjs} +1 -1
  7. package/dist/{chunk-7UIL5UN3.mjs → chunk-7II6QRCZ.mjs} +1 -1
  8. package/dist/{chunk-W5QJ57PU.mjs → chunk-7LN5OGC2.mjs} +1 -1
  9. package/dist/{chunk-ZXEUBBHJ.mjs → chunk-7TMPOZDE.mjs} +1 -1
  10. package/dist/{chunk-AHSCWXYJ.mjs → chunk-AJUAJC5O.mjs} +1 -1
  11. package/dist/{chunk-3CGM3QXQ.mjs → chunk-AKWN5ZQG.mjs} +2 -2
  12. package/dist/{chunk-FRT3S72S.mjs → chunk-CQ7HKBEX.mjs} +1 -1
  13. package/dist/{chunk-E2BNCA6L.mjs → chunk-EHQL64B7.mjs} +1 -1
  14. package/dist/{chunk-2WCIORP7.mjs → chunk-EXI64H46.mjs} +1 -1
  15. package/dist/{chunk-BBXSNDS3.mjs → chunk-FQYFPHDO.mjs} +1 -1
  16. package/dist/{chunk-3VZ6CYY2.mjs → chunk-GAXNO4JB.mjs} +1 -1
  17. package/dist/{chunk-3WGFIFP6.mjs → chunk-I4P7RXAE.mjs} +1 -1
  18. package/dist/{chunk-TAFL4WDY.mjs → chunk-IODGRCQG.mjs} +17 -10
  19. package/dist/{chunk-GS47ZSSA.mjs → chunk-J7KQON2N.mjs} +20 -5
  20. package/dist/{chunk-IQGKOT7A.mjs → chunk-K35TFQUB.mjs} +1 -1
  21. package/dist/{chunk-4DO3WM7V.mjs → chunk-K4VWSDJJ.mjs} +1 -1
  22. package/dist/{chunk-KWD6GANL.mjs → chunk-MPA2HV5U.mjs} +1 -1
  23. package/dist/{chunk-5LZZYODG.mjs → chunk-QHAMVWDG.mjs} +19 -1
  24. package/dist/{chunk-XUCDPAVI.mjs → chunk-R6U246E4.mjs} +2 -2
  25. package/dist/{chunk-VCDGLN25.mjs → chunk-S6AYZJYO.mjs} +47 -21
  26. package/dist/{chunk-WL6WVV47.mjs → chunk-X6RC5UWB.mjs} +1 -1
  27. package/dist/{chunk-4BHDDLWK.mjs → chunk-XAS6KBIG.mjs} +2 -2
  28. package/dist/{chunk-VWZS32ZQ.mjs → chunk-XYWEGBAA.mjs} +1 -1
  29. package/dist/{chunk-54MTIKNC.mjs → chunk-YV7XF32X.mjs} +49 -24
  30. package/dist/{chunk-E5EDZQ5J.mjs → chunk-ZA44WICP.mjs} +1 -1
  31. package/dist/{chunk-54TRNCID.mjs → chunk-ZMTCMP2G.mjs} +8 -8
  32. package/dist/components/ui/advisor-card.js +144 -55
  33. package/dist/components/ui/advisor-card.mjs +5 -2
  34. package/dist/components/ui/agent-evaluation-toast.js +1 -1
  35. package/dist/components/ui/agent-evaluation-toast.mjs +2 -2
  36. package/dist/components/ui/ai-assistant-drawer.js +1 -1
  37. package/dist/components/ui/ai-assistant-drawer.mjs +2 -2
  38. package/dist/components/ui/ai-builder.js +1 -1
  39. package/dist/components/ui/ai-builder.mjs +2 -2
  40. package/dist/components/ui/ai-conversations.js +1 -1
  41. package/dist/components/ui/ai-conversations.mjs +3 -3
  42. package/dist/components/ui/appointment-action-dialogs.js +1 -1
  43. package/dist/components/ui/appointment-action-dialogs.mjs +3 -3
  44. package/dist/components/ui/appointment-book-dialog.js +19 -4
  45. package/dist/components/ui/appointment-book-dialog.mjs +3 -3
  46. package/dist/components/ui/appointment-calendar-view.js +17 -10
  47. package/dist/components/ui/appointment-calendar-view.mjs +2 -2
  48. package/dist/components/ui/appointment-detail-sheet.js +1 -1
  49. package/dist/components/ui/appointment-detail-sheet.mjs +4 -4
  50. package/dist/components/ui/appointment-gmail-connect.js +1 -1
  51. package/dist/components/ui/appointment-gmail-connect.mjs +2 -2
  52. package/dist/components/ui/appointment-time-slot-picker.js +1 -1
  53. package/dist/components/ui/appointment-time-slot-picker.mjs +2 -2
  54. package/dist/components/ui/appointment-upcoming-card.js +1 -1
  55. package/dist/components/ui/appointment-upcoming-card.mjs +3 -3
  56. package/dist/components/ui/badge.js +1 -1
  57. package/dist/components/ui/badge.mjs +1 -1
  58. package/dist/components/ui/chat-widget-primitives.js +1 -1
  59. package/dist/components/ui/chat-widget-primitives.mjs +2 -2
  60. package/dist/components/ui/chat-widget.js +1 -1
  61. package/dist/components/ui/chat-widget.mjs +3 -3
  62. package/dist/components/ui/chip.js +1 -1
  63. package/dist/components/ui/chip.mjs +2 -2
  64. package/dist/components/ui/contact-alert-dialog/index.js +19 -1
  65. package/dist/components/ui/contact-alert-dialog/index.mjs +1 -1
  66. package/dist/components/ui/dashboard-transactions-table.js +1 -1
  67. package/dist/components/ui/dashboard-transactions-table.mjs +2 -2
  68. package/dist/components/ui/financial-cards.js +1 -1
  69. package/dist/components/ui/financial-cards.mjs +2 -2
  70. package/dist/components/ui/financial-sections.js +1 -1
  71. package/dist/components/ui/financial-sections.mjs +3 -3
  72. package/dist/components/ui/income-summary-component.js +1 -1
  73. package/dist/components/ui/income-summary-component.mjs +1 -1
  74. package/dist/components/ui/integration-card.js +1 -1
  75. package/dist/components/ui/integration-card.mjs +2 -2
  76. package/dist/components/ui/kanban-column.js +46 -23
  77. package/dist/components/ui/kanban-column.mjs +4 -4
  78. package/dist/components/ui/loan-applicant-information.js +1 -1
  79. package/dist/components/ui/loan-applicant-information.mjs +1 -1
  80. package/dist/components/ui/loan-application-badge.js +1 -1
  81. package/dist/components/ui/loan-application-badge.mjs +2 -2
  82. package/dist/components/ui/opportunity-card.js +46 -23
  83. package/dist/components/ui/opportunity-card.mjs +3 -3
  84. package/dist/components/ui/opportunity-summary-tab.js +1 -1
  85. package/dist/components/ui/opportunity-summary-tab.mjs +3 -3
  86. package/dist/components/ui/pipeline-board.js +46 -23
  87. package/dist/components/ui/pipeline-board.mjs +5 -5
  88. package/dist/components/ui/pipeline-primitives.js +1 -1
  89. package/dist/components/ui/pipeline-primitives.mjs +2 -2
  90. package/dist/components/ui/property-asset-card.js +1 -1
  91. package/dist/components/ui/property-asset-card.mjs +1 -1
  92. package/dist/components/ui/resource-center.js +1 -1
  93. package/dist/components/ui/resource-center.mjs +2 -2
  94. package/dist/components/ui/share-details-dialog.js +326 -30
  95. package/dist/components/ui/share-details-dialog.mjs +4 -1
  96. package/dist/components/ui/stage-timeline.js +1 -1
  97. package/dist/components/ui/stage-timeline.mjs +3 -3
  98. package/dist/index.js +473 -197
  99. package/dist/index.mjs +44 -42
  100. package/dist/styles.css +1 -1
  101. package/package.json +1 -1
  102. package/src/components/index.tsx +4 -0
  103. package/src/components/ui/advisor-card.tsx +75 -25
  104. package/src/components/ui/appointment-book-dialog.tsx +26 -3
  105. package/src/components/ui/appointment-calendar-view.tsx +7 -6
  106. package/src/components/ui/appointment-time-slot-picker.tsx +1 -0
  107. package/src/components/ui/badge.tsx +1 -1
  108. package/src/components/ui/contact-alert-dialog/contact-alert-dialog.tsx +19 -1
  109. package/src/components/ui/opportunity-card.tsx +56 -20
  110. package/src/components/ui/share-details-dialog.tsx +251 -0
  111. package/src/styles/styles-css.ts +1 -1
  112. package/dist/chunk-OZ2R6ERP.mjs +0 -174
@@ -63,7 +63,7 @@ __export(advisor_card_exports, {
63
63
  AdvisorInviteCard: () => AdvisorInviteCard
64
64
  });
65
65
  module.exports = __toCommonJS(advisor_card_exports);
66
- var import_react2 = __toESM(require("react"));
66
+ var import_react3 = __toESM(require("react"));
67
67
 
68
68
  // src/components/ui/badge.tsx
69
69
  var import_class_variance_authority = require("class-variance-authority");
@@ -157,7 +157,7 @@ Slot.displayName = "Slot";
157
157
  // src/components/ui/badge.tsx
158
158
  var import_jsx_runtime = require("react/jsx-runtime");
159
159
  var badgeVariants = (0, import_class_variance_authority.cva)(
160
- "inline-flex w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-full border border-transparent px-2.5 py-0.5 text-xs font-medium font-sans whitespace-nowrap transition-[color,box-shadow] focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3",
160
+ "inline-flex w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-full border border-transparent px-2.5 py-0.5 text-caption whitespace-nowrap transition-[color,box-shadow] focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3",
161
161
  {
162
162
  variants: {
163
163
  variant: {
@@ -350,9 +350,78 @@ function Separator(_a) {
350
350
  );
351
351
  }
352
352
 
353
- // src/components/ui/advisor-card.tsx
353
+ // src/components/ui/dropdown-menu.tsx
354
354
  var import_lucide_react2 = require("lucide-react");
355
+ var import_menu = require("@base-ui/react/menu");
356
+
357
+ // src/lib/theme-provider.tsx
358
+ var import_react2 = require("react");
355
359
  var import_jsx_runtime5 = require("react/jsx-runtime");
360
+ var ThemeVarsContext = (0, import_react2.createContext)({});
361
+ function useThemeVars() {
362
+ return (0, import_react2.useContext)(ThemeVarsContext);
363
+ }
364
+
365
+ // src/components/ui/dropdown-menu.tsx
366
+ var import_jsx_runtime6 = require("react/jsx-runtime");
367
+ function DropdownMenu(_a) {
368
+ var props = __objRest(_a, []);
369
+ return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_menu.Menu.Root, __spreadValues({ "data-slot": "dropdown-menu" }, props));
370
+ }
371
+ function DropdownMenuTrigger(_a) {
372
+ var props = __objRest(_a, []);
373
+ return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_menu.Menu.Trigger, __spreadValues({ "data-slot": "dropdown-menu-trigger" }, props));
374
+ }
375
+ function DropdownMenuContent(_a) {
376
+ var _b = _a, {
377
+ className,
378
+ sideOffset = 4,
379
+ style
380
+ } = _b, props = __objRest(_b, [
381
+ "className",
382
+ "sideOffset",
383
+ "style"
384
+ ]);
385
+ const themeVars = useThemeVars();
386
+ return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_menu.Menu.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_menu.Menu.Positioner, { sideOffset, children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
387
+ import_menu.Menu.Popup,
388
+ __spreadValues({
389
+ className: cn(
390
+ "z-50 min-w-[8rem] overflow-x-hidden overflow-y-auto rounded-none border bg-popover p-1 text-popover-foreground shadow-md data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-ending-style:animate-out data-ending-style:fade-out-0 data-ending-style:zoom-out-95 data-ending-style:fill-mode-forwards data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95",
391
+ className
392
+ ),
393
+ "data-slot": "dropdown-menu-content",
394
+ style: __spreadValues(__spreadValues({}, themeVars), style)
395
+ }, props)
396
+ ) }) });
397
+ }
398
+ function DropdownMenuItem(_a) {
399
+ var _b = _a, {
400
+ className,
401
+ inset,
402
+ variant = "default"
403
+ } = _b, props = __objRest(_b, [
404
+ "className",
405
+ "inset",
406
+ "variant"
407
+ ]);
408
+ return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
409
+ import_menu.Menu.Item,
410
+ __spreadValues({
411
+ className: cn(
412
+ "relative flex cursor-default items-center gap-2 rounded-none px-2 py-1.5 text-body-small outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-disabled:pointer-events-none data-disabled:opacity-50 data-inset:pl-8 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground data-[variant=destructive]:*:[svg]:text-destructive!",
413
+ className
414
+ ),
415
+ "data-inset": inset,
416
+ "data-slot": "dropdown-menu-item",
417
+ "data-variant": variant
418
+ }, props)
419
+ );
420
+ }
421
+
422
+ // src/components/ui/advisor-card.tsx
423
+ var import_lucide_react3 = require("lucide-react");
424
+ var import_jsx_runtime7 = require("react/jsx-runtime");
356
425
  var STATUS_VARIANT = {
357
426
  pending: "warning",
358
427
  confirmed: "success",
@@ -382,35 +451,62 @@ function AdvisorCard({
382
451
  isPrimary = false,
383
452
  appointments,
384
453
  onRefer,
454
+ menuItems,
385
455
  onMoreOptions,
386
456
  onBookAppointment,
387
457
  onViewAppointment
388
458
  }) {
389
459
  const hasAppointments = appointments !== void 0;
390
460
  const appointmentList = appointments === null || Array.isArray(appointments) && appointments.length === 0 ? null : appointments;
391
- return /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { className: "flex flex-col border border-border bg-card", children: [
392
- /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { className: "flex items-start gap-4 p-4", children: [
393
- /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(Avatar, { className: "h-10 w-10 shrink-0", children: [
394
- companyLogoUrl && /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(AvatarImage, { src: companyLogoUrl, alt: `${name} company logo` }),
395
- /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(AvatarFallback, { className: "text-sm", children: avatarInitials != null ? avatarInitials : companyName ? companyName.split(" ").map((w) => w[0]).join("").slice(0, 2).toUpperCase() : name.slice(0, 2).toUpperCase() })
461
+ return /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { className: "flex flex-col border border-border bg-card", children: [
462
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { className: "flex items-start gap-4 p-4", children: [
463
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(Avatar, { className: "h-10 w-10 shrink-0", children: [
464
+ companyLogoUrl && /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(AvatarImage, { src: companyLogoUrl, alt: `${name} company logo` }),
465
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(AvatarFallback, { className: "text-caption", children: avatarInitials != null ? avatarInitials : companyName ? companyName.split(" ").map((w) => w[0]).join("").slice(0, 2).toUpperCase() : name.slice(0, 2).toUpperCase() })
396
466
  ] }),
397
- /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { className: "flex min-w-0 flex-1 flex-col gap-0.5", children: [
398
- /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("p", { className: "text-sm font-semibold leading-tight", children: name }),
399
- /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("p", { className: "text-sm text-muted-foreground", children: role }),
400
- /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { className: "mt-2 flex flex-col gap-1", children: [
401
- /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { className: "flex items-center gap-1.5 text-sm text-muted-foreground", children: [
402
- /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_lucide_react2.Phone, { className: "h-4 w-4 shrink-0" }),
403
- /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("span", { children: phone })
467
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { className: "flex min-w-0 flex-1 flex-col gap-0.5", children: [
468
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("p", { className: "text-label-large leading-tight", children: name }),
469
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("p", { className: "text-body-small text-muted-foreground", children: role }),
470
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { className: "mt-2 flex flex-col gap-1", children: [
471
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { className: "flex items-center gap-1.5 text-body-small text-muted-foreground", children: [
472
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_lucide_react3.Phone, { className: "h-4 w-4 shrink-0" }),
473
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("span", { children: phone })
404
474
  ] }),
405
- /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { className: "flex items-center gap-1.5 text-sm text-muted-foreground", children: [
406
- /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_lucide_react2.Mail, { className: "h-4 w-4 shrink-0" }),
407
- /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("span", { children: email })
475
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { className: "flex items-center gap-1.5 text-body-small text-muted-foreground", children: [
476
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_lucide_react3.Mail, { className: "h-4 w-4 shrink-0" }),
477
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("span", { children: email })
408
478
  ] })
409
479
  ] })
410
480
  ] }),
411
- /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { className: "flex shrink-0 items-center gap-1.5", children: [
412
- isPrimary && /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(Badge, { variant: "success", children: "Primary" }),
413
- /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
481
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { className: "flex shrink-0 items-center gap-1.5", children: [
482
+ isPrimary && /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(Badge, { variant: "success", children: "Primary" }),
483
+ menuItems && menuItems.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(DropdownMenu, { children: [
484
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
485
+ DropdownMenuTrigger,
486
+ {
487
+ render: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
488
+ Button,
489
+ {
490
+ variant: "ghost",
491
+ size: "icon",
492
+ className: "h-7 w-7",
493
+ "aria-label": "More options"
494
+ }
495
+ ),
496
+ children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_lucide_react3.MoreVertical, { className: "h-4 w-4" })
497
+ }
498
+ ),
499
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(DropdownMenuContent, { align: "end", children: menuItems.map((item, i) => /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
500
+ DropdownMenuItem,
501
+ {
502
+ variant: item.variant,
503
+ disabled: item.disabled,
504
+ onClick: item.onClick,
505
+ children: item.label
506
+ },
507
+ i
508
+ )) })
509
+ ] }) : /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
414
510
  Button,
415
511
  {
416
512
  variant: "ghost",
@@ -418,34 +514,27 @@ function AdvisorCard({
418
514
  className: "h-7 w-7",
419
515
  onClick: onMoreOptions,
420
516
  "aria-label": "More options",
421
- children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_lucide_react2.MoreVertical, { className: "h-4 w-4" })
517
+ children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_lucide_react3.MoreVertical, { className: "h-4 w-4" })
422
518
  }
423
519
  )
424
520
  ] })
425
521
  ] }),
426
- hasAppointments && /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(import_jsx_runtime5.Fragment, { children: [
427
- /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(Separator, {}),
428
- appointmentList ? appointmentList.map((appt, i) => /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(import_react2.default.Fragment, { children: [
429
- i > 0 && /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(Separator, {}),
430
- /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(
522
+ hasAppointments && /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(import_jsx_runtime7.Fragment, { children: [
523
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(Separator, {}),
524
+ appointmentList ? appointmentList.map((appt, i) => /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(import_react3.default.Fragment, { children: [
525
+ i > 0 && /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(Separator, {}),
526
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(
431
527
  "div",
432
528
  {
433
529
  className: `flex items-center gap-3 px-4 py-3 ${STRIP_BG[appt.status]}`,
434
530
  children: [
435
- /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_lucide_react2.CalendarCheck, { className: "h-4 w-4 shrink-0 text-muted-foreground" }),
436
- /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { className: "flex min-w-0 flex-1 flex-col gap-0.5", children: [
437
- /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { className: "flex items-center gap-2", children: [
438
- /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
439
- Badge,
440
- {
441
- variant: STATUS_VARIANT[appt.status],
442
- className: "text-[10px]",
443
- children: STATUS_LABEL[appt.status]
444
- }
445
- ),
446
- appt.appointmentType && /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("span", { className: "truncate text-sm font-semibold", children: appt.appointmentType })
531
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_lucide_react3.CalendarCheck, { className: "h-4 w-4 shrink-0 text-muted-foreground" }),
532
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { className: "flex min-w-0 flex-1 flex-col gap-0.5", children: [
533
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { className: "flex items-center gap-2", children: [
534
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(Badge, { variant: STATUS_VARIANT[appt.status], children: STATUS_LABEL[appt.status] }),
535
+ appt.appointmentType && /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("span", { className: "truncate text-h6", children: appt.appointmentType })
447
536
  ] }),
448
- /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("p", { className: "whitespace-nowrap text-sm text-muted-foreground", children: [
537
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("p", { className: "whitespace-nowrap text-body-small text-muted-foreground", children: [
449
538
  appt.date,
450
539
  " \xB7 ",
451
540
  appt.timeStart,
@@ -453,7 +542,7 @@ function AdvisorCard({
453
542
  appt.timeEnd
454
543
  ] })
455
544
  ] }),
456
- onViewAppointment && /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(
545
+ onViewAppointment && /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(
457
546
  Button,
458
547
  {
459
548
  variant: "ghost",
@@ -462,7 +551,7 @@ function AdvisorCard({
462
551
  onClick: () => onViewAppointment(i),
463
552
  children: [
464
553
  "View",
465
- /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_lucide_react2.ChevronRight, { className: "h-3 w-3" })
554
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_lucide_react3.ChevronRight, { className: "h-3 w-3" })
466
555
  ]
467
556
  }
468
557
  )
@@ -471,15 +560,15 @@ function AdvisorCard({
471
560
  )
472
561
  ] }, i)) : (
473
562
  /* Empty state */
474
- /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { className: "flex items-center gap-3 px-4 py-3", children: [
475
- /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_lucide_react2.Calendar, { className: "h-4 w-4 shrink-0 text-muted-foreground" }),
476
- /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("p", { className: "flex-1 text-xs text-muted-foreground", children: "No upcoming appointments" })
563
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { className: "flex items-center gap-3 px-4 py-3", children: [
564
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_lucide_react3.Calendar, { className: "h-4 w-4 shrink-0 text-muted-foreground" }),
565
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("p", { className: "flex-1 text-caption text-muted-foreground", children: "No upcoming appointments" })
477
566
  ] })
478
567
  )
479
568
  ] }),
480
- /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(Separator, {}),
481
- /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { className: "flex flex-col gap-2 px-4 py-3", children: [
482
- onBookAppointment && /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
569
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(Separator, {}),
570
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { className: "flex flex-col gap-2 px-4 py-3", children: [
571
+ onBookAppointment && /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
483
572
  Button,
484
573
  {
485
574
  variant: "outline-primary",
@@ -489,10 +578,10 @@ function AdvisorCard({
489
578
  children: "Book Appointment"
490
579
  }
491
580
  ),
492
- onRefer && /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(
581
+ onRefer && /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(
493
582
  Button,
494
583
  {
495
- variant: "outline",
584
+ variant: "default",
496
585
  size: "sm",
497
586
  className: "w-full",
498
587
  onClick: onRefer,
@@ -507,17 +596,17 @@ function AdvisorCard({
507
596
  ] });
508
597
  }
509
598
  function AdvisorInviteCard({ onInvite }) {
510
- return /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(
599
+ return /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(
511
600
  Button,
512
601
  {
513
602
  variant: "ghost",
514
603
  onClick: onInvite,
515
604
  className: "flex h-auto w-full flex-col items-center justify-center gap-3 border border-dashed border-border bg-card p-8 text-center transition-colors hover:bg-muted/40",
516
605
  children: [
517
- /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("div", { className: "flex h-10 w-10 items-center justify-center border border-dashed border-muted-foreground/40", children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_lucide_react2.Plus, { className: "h-5 w-5 text-muted-foreground" }) }),
518
- /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { className: "flex flex-col gap-1", children: [
519
- /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("p", { className: "text-sm font-medium", children: "Add Another Advisor" }),
520
- /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("p", { className: "text-xs text-muted-foreground", children: "Connect more advisors to your account" })
606
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("div", { className: "flex h-10 w-10 items-center justify-center border border-dashed border-muted-foreground/40", children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(import_lucide_react3.Plus, { className: "h-5 w-5 text-muted-foreground" }) }),
607
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { className: "flex flex-col gap-1", children: [
608
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("p", { className: "text-label-large", children: "Add Another Advisor" }),
609
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("p", { className: "text-caption text-muted-foreground", children: "Connect more advisors to your account" })
521
610
  ] })
522
611
  ]
523
612
  }
@@ -1,10 +1,13 @@
1
1
  import {
2
2
  AdvisorCard,
3
3
  AdvisorInviteCard
4
- } from "../../chunk-VCDGLN25.mjs";
4
+ } from "../../chunk-S6AYZJYO.mjs";
5
+ import "../../chunk-H5DTKPJ2.mjs";
5
6
  import "../../chunk-2GIYVERS.mjs";
6
7
  import "../../chunk-H6NQTIF4.mjs";
7
- import "../../chunk-WL6WVV47.mjs";
8
+ import "../../chunk-X6RC5UWB.mjs";
9
+ import "../../chunk-XYSRRDBH.mjs";
10
+ import "../../chunk-FRCTOAKZ.mjs";
8
11
  import "../../chunk-NOOEKOWY.mjs";
9
12
  import "../../chunk-R4HCRDU5.mjs";
10
13
  import "../../chunk-AFML43VJ.mjs";
@@ -155,7 +155,7 @@ Slot.displayName = "Slot";
155
155
  // src/components/ui/badge.tsx
156
156
  var import_jsx_runtime = require("react/jsx-runtime");
157
157
  var badgeVariants = (0, import_class_variance_authority.cva)(
158
- "inline-flex w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-full border border-transparent px-2.5 py-0.5 text-xs font-medium font-sans whitespace-nowrap transition-[color,box-shadow] focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3",
158
+ "inline-flex w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-full border border-transparent px-2.5 py-0.5 text-caption whitespace-nowrap transition-[color,box-shadow] focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3",
159
159
  {
160
160
  variants: {
161
161
  variant: {
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  AgentEvaluationCard,
3
3
  showAgentEvaluationToast
4
- } from "../../chunk-AHSCWXYJ.mjs";
5
- import "../../chunk-WL6WVV47.mjs";
4
+ } from "../../chunk-AJUAJC5O.mjs";
5
+ import "../../chunk-X6RC5UWB.mjs";
6
6
  import "../../chunk-R4HCRDU5.mjs";
7
7
  import "../../chunk-AFML43VJ.mjs";
8
8
  import "../../chunk-WNQUEZJF.mjs";
@@ -326,7 +326,7 @@ var Button = (0, import_react2.forwardRef)(function Button2(_a, ref) {
326
326
  var import_class_variance_authority2 = require("class-variance-authority");
327
327
  var import_jsx_runtime4 = require("react/jsx-runtime");
328
328
  var badgeVariants = (0, import_class_variance_authority2.cva)(
329
- "inline-flex w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-full border border-transparent px-2.5 py-0.5 text-xs font-medium font-sans whitespace-nowrap transition-[color,box-shadow] focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3",
329
+ "inline-flex w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-full border border-transparent px-2.5 py-0.5 text-caption whitespace-nowrap transition-[color,box-shadow] focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3",
330
330
  {
331
331
  variants: {
332
332
  variant: {
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  AiAssistantDrawer
3
- } from "../../chunk-7UIL5UN3.mjs";
3
+ } from "../../chunk-7II6QRCZ.mjs";
4
4
  import "../../chunk-NCMV3LTP.mjs";
5
5
  import "../../chunk-JVMXMFBB.mjs";
6
6
  import "../../chunk-BS75ICOO.mjs";
7
- import "../../chunk-WL6WVV47.mjs";
7
+ import "../../chunk-X6RC5UWB.mjs";
8
8
  import "../../chunk-XYSRRDBH.mjs";
9
9
  import "../../chunk-FRCTOAKZ.mjs";
10
10
  import "../../chunk-NOOEKOWY.mjs";
@@ -234,7 +234,7 @@ Slot.displayName = "Slot";
234
234
  // src/components/ui/badge.tsx
235
235
  var import_jsx_runtime2 = require("react/jsx-runtime");
236
236
  var badgeVariants = (0, import_class_variance_authority.cva)(
237
- "inline-flex w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-full border border-transparent px-2.5 py-0.5 text-xs font-medium font-sans whitespace-nowrap transition-[color,box-shadow] focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3",
237
+ "inline-flex w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-full border border-transparent px-2.5 py-0.5 text-caption whitespace-nowrap transition-[color,box-shadow] focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3",
238
238
  {
239
239
  variants: {
240
240
  variant: {
@@ -4,12 +4,12 @@ import {
4
4
  IntegrationInstructionCard,
5
5
  IntegrationServiceCard,
6
6
  ServiceConfigurationModal
7
- } from "../../chunk-3VZ6CYY2.mjs";
7
+ } from "../../chunk-GAXNO4JB.mjs";
8
8
  import "../../chunk-3VDET466.mjs";
9
9
  import "../../chunk-PNSYFE3K.mjs";
10
10
  import "../../chunk-LI2CTS5O.mjs";
11
11
  import "../../chunk-H6NQTIF4.mjs";
12
- import "../../chunk-WL6WVV47.mjs";
12
+ import "../../chunk-X6RC5UWB.mjs";
13
13
  import "../../chunk-XYSRRDBH.mjs";
14
14
  import "../../chunk-FRCTOAKZ.mjs";
15
15
  import "../../chunk-NOOEKOWY.mjs";
@@ -211,7 +211,7 @@ Slot.displayName = "Slot";
211
211
  // src/components/ui/badge.tsx
212
212
  var import_jsx_runtime2 = require("react/jsx-runtime");
213
213
  var badgeVariants = (0, import_class_variance_authority.cva)(
214
- "inline-flex w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-full border border-transparent px-2.5 py-0.5 text-xs font-medium font-sans whitespace-nowrap transition-[color,box-shadow] focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3",
214
+ "inline-flex w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-full border border-transparent px-2.5 py-0.5 text-caption whitespace-nowrap transition-[color,box-shadow] focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3",
215
215
  {
216
216
  variants: {
217
217
  variant: {
@@ -9,15 +9,15 @@ import {
9
9
  ConversationStatusChip,
10
10
  ConversationsPage,
11
11
  LeadInfoPanel
12
- } from "../../chunk-54TRNCID.mjs";
13
- import "../../chunk-H5DTKPJ2.mjs";
12
+ } from "../../chunk-ZMTCMP2G.mjs";
14
13
  import "../../chunk-3S6KVFF5.mjs";
15
14
  import "../../chunk-WE4YKBDE.mjs";
15
+ import "../../chunk-H5DTKPJ2.mjs";
16
16
  import "../../chunk-2GIYVERS.mjs";
17
17
  import "../../chunk-BS75ICOO.mjs";
18
18
  import "../../chunk-LI2CTS5O.mjs";
19
19
  import "../../chunk-H6NQTIF4.mjs";
20
- import "../../chunk-WL6WVV47.mjs";
20
+ import "../../chunk-X6RC5UWB.mjs";
21
21
  import "../../chunk-OWFQSXVD.mjs";
22
22
  import "../../chunk-6QAFGZC2.mjs";
23
23
  import "../../chunk-LBTHZSBT.mjs";
@@ -864,7 +864,7 @@ var import_lucide_react4 = require("lucide-react");
864
864
  var import_class_variance_authority2 = require("class-variance-authority");
865
865
  var import_jsx_runtime9 = require("react/jsx-runtime");
866
866
  var badgeVariants = (0, import_class_variance_authority2.cva)(
867
- "inline-flex w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-full border border-transparent px-2.5 py-0.5 text-xs font-medium font-sans whitespace-nowrap transition-[color,box-shadow] focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3",
867
+ "inline-flex w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-full border border-transparent px-2.5 py-0.5 text-caption whitespace-nowrap transition-[color,box-shadow] focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3",
868
868
  {
869
869
  variants: {
870
870
  variant: {
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  AppointmentConfirmDialog,
3
3
  AppointmentRescheduleDialog
4
- } from "../../chunk-AANINK2B.mjs";
5
- import "../../chunk-FRT3S72S.mjs";
4
+ } from "../../chunk-2KNQZG5S.mjs";
5
+ import "../../chunk-CQ7HKBEX.mjs";
6
6
  import "../../chunk-2GIYVERS.mjs";
7
7
  import "../../chunk-BS75ICOO.mjs";
8
8
  import "../../chunk-LI2CTS5O.mjs";
9
- import "../../chunk-WL6WVV47.mjs";
9
+ import "../../chunk-X6RC5UWB.mjs";
10
10
  import "../../chunk-CEYEK3TI.mjs";
11
11
  import "../../chunk-FBNEIYSE.mjs";
12
12
  import "../../chunk-LHWJQNLG.mjs";
@@ -1264,7 +1264,7 @@ function Textarea(_a) {
1264
1264
  var import_class_variance_authority3 = require("class-variance-authority");
1265
1265
  var import_jsx_runtime15 = require("react/jsx-runtime");
1266
1266
  var badgeVariants = (0, import_class_variance_authority3.cva)(
1267
- "inline-flex w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-full border border-transparent px-2.5 py-0.5 text-xs font-medium font-sans whitespace-nowrap transition-[color,box-shadow] focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3",
1267
+ "inline-flex w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-full border border-transparent px-2.5 py-0.5 text-caption whitespace-nowrap transition-[color,box-shadow] focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3",
1268
1268
  {
1269
1269
  variants: {
1270
1270
  variant: {
@@ -1448,6 +1448,19 @@ var FORMAT_OPTIONS = [
1448
1448
  icon: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_lucide_react7.MapPin, { className: "h-4 w-4" })
1449
1449
  }
1450
1450
  ];
1451
+ var CLIENT_FORMAT_OPTIONS = [
1452
+ { value: "call", label: "Call", icon: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_lucide_react7.Phone, { className: "h-4 w-4" }) },
1453
+ {
1454
+ value: "online",
1455
+ label: "Online Meeting",
1456
+ icon: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_lucide_react7.Video, { className: "h-4 w-4" })
1457
+ },
1458
+ {
1459
+ value: "offline",
1460
+ label: "Offline Meeting",
1461
+ icon: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_lucide_react7.MapPin, { className: "h-4 w-4" })
1462
+ }
1463
+ ];
1451
1464
  function MeetingFormatSection({
1452
1465
  format: format2,
1453
1466
  onFormatChange,
@@ -1457,10 +1470,11 @@ function MeetingFormatSection({
1457
1470
  onCustomAddressChange,
1458
1471
  advisorOfficeAddress,
1459
1472
  clientHomeAddress,
1460
- isClientMode
1473
+ isClientMode,
1474
+ formatOptions
1461
1475
  }) {
1462
1476
  return /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("div", { className: "flex flex-col gap-2", children: [
1463
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: "flex gap-2", children: FORMAT_OPTIONS.map((opt) => /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
1477
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: "flex gap-2", children: formatOptions.map((opt) => /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
1464
1478
  Toggle,
1465
1479
  {
1466
1480
  variant: "outline",
@@ -1753,7 +1767,8 @@ function AppointmentBookDialog({
1753
1767
  onCustomAddressChange: setCustomAddress,
1754
1768
  advisorOfficeAddress,
1755
1769
  clientHomeAddress,
1756
- isClientMode
1770
+ isClientMode,
1771
+ formatOptions: isClientMode ? CLIENT_FORMAT_OPTIONS : FORMAT_OPTIONS
1757
1772
  }
1758
1773
  )
1759
1774
  ] }),
@@ -1,16 +1,16 @@
1
1
  import {
2
2
  AppointmentBookDialog
3
- } from "../../chunk-GS47ZSSA.mjs";
3
+ } from "../../chunk-J7KQON2N.mjs";
4
4
  import "../../chunk-JTK6VJXY.mjs";
5
5
  import "../../chunk-MXP2RX2V.mjs";
6
6
  import "../../chunk-ISUA7DSB.mjs";
7
- import "../../chunk-FRT3S72S.mjs";
7
+ import "../../chunk-CQ7HKBEX.mjs";
8
8
  import "../../chunk-USOVLDGS.mjs";
9
9
  import "../../chunk-2GIYVERS.mjs";
10
10
  import "../../chunk-BS75ICOO.mjs";
11
11
  import "../../chunk-LI2CTS5O.mjs";
12
12
  import "../../chunk-H6NQTIF4.mjs";
13
- import "../../chunk-WL6WVV47.mjs";
13
+ import "../../chunk-X6RC5UWB.mjs";
14
14
  import "../../chunk-FBNEIYSE.mjs";
15
15
  import "../../chunk-LHWJQNLG.mjs";
16
16
  import "../../chunk-P7CEBZM6.mjs";
@@ -198,7 +198,7 @@ Slot.displayName = "Slot";
198
198
  // src/components/ui/badge.tsx
199
199
  var import_jsx_runtime2 = require("react/jsx-runtime");
200
200
  var badgeVariants = (0, import_class_variance_authority.cva)(
201
- "inline-flex w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-full border border-transparent px-2.5 py-0.5 text-xs font-medium font-sans whitespace-nowrap transition-[color,box-shadow] focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3",
201
+ "inline-flex w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-full border border-transparent px-2.5 py-0.5 text-caption whitespace-nowrap transition-[color,box-shadow] focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3",
202
202
  {
203
203
  variants: {
204
204
  variant: {
@@ -822,7 +822,7 @@ function AppointmentCalendarView({
822
822
  /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(TabsTrigger, { value: "week", children: "Week" }),
823
823
  /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(TabsTrigger, { value: "month", children: "Month" })
824
824
  ] }) }),
825
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(TabsContent, { value: "day", className: "mt-0", children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
825
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(TabsContent, { value: "day", className: "mt-0 max-h-[75vh] overflow-y-auto", children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
826
826
  DayView,
827
827
  {
828
828
  appointments,
@@ -832,7 +832,7 @@ function AppointmentCalendarView({
832
832
  onSelectAppointment
833
833
  }
834
834
  ) }),
835
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(TabsContent, { value: "week", className: "mt-0", children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
835
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(TabsContent, { value: "week", className: "mt-0 max-h-[75vh] overflow-y-auto", children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
836
836
  WeekView,
837
837
  {
838
838
  appointments,
@@ -842,15 +842,22 @@ function AppointmentCalendarView({
842
842
  onSelectAppointment
843
843
  }
844
844
  ) }),
845
- /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(TabsContent, { value: "month", className: "mt-0", children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
846
- MonthView,
845
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
846
+ TabsContent,
847
847
  {
848
- appointments,
849
- viewDate: effectiveViewDate,
850
- today,
851
- onSelectAppointment
848
+ value: "month",
849
+ className: "mt-0 max-h-[75vh] overflow-y-auto",
850
+ children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
851
+ MonthView,
852
+ {
853
+ appointments,
854
+ viewDate: effectiveViewDate,
855
+ today,
856
+ onSelectAppointment
857
+ }
858
+ )
852
859
  }
853
- ) })
860
+ )
854
861
  ]
855
862
  }
856
863
  )
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  AppointmentCalendarView
3
- } from "../../chunk-TAFL4WDY.mjs";
3
+ } from "../../chunk-IODGRCQG.mjs";
4
4
  import "../../chunk-WE4YKBDE.mjs";
5
5
  import "../../chunk-2GIYVERS.mjs";
6
6
  import "../../chunk-H6NQTIF4.mjs";
7
- import "../../chunk-WL6WVV47.mjs";
7
+ import "../../chunk-X6RC5UWB.mjs";
8
8
  import "../../chunk-LHWJQNLG.mjs";
9
9
  import "../../chunk-NOOEKOWY.mjs";
10
10
  import "../../chunk-R4HCRDU5.mjs";
@@ -199,7 +199,7 @@ Slot.displayName = "Slot";
199
199
  // src/components/ui/badge.tsx
200
200
  var import_jsx_runtime2 = require("react/jsx-runtime");
201
201
  var badgeVariants = (0, import_class_variance_authority.cva)(
202
- "inline-flex w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-full border border-transparent px-2.5 py-0.5 text-xs font-medium font-sans whitespace-nowrap transition-[color,box-shadow] focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3",
202
+ "inline-flex w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-full border border-transparent px-2.5 py-0.5 text-caption whitespace-nowrap transition-[color,box-shadow] focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3",
203
203
  {
204
204
  variants: {
205
205
  variant: {