@ai-matrx/design-system 0.11.6 → 0.12.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/dist/index.js CHANGED
@@ -194,6 +194,9 @@ function DragHandleDots2Icon(props) {
194
194
  }
195
195
  ) });
196
196
  }
197
+ function StarIcon(props) {
198
+ return /* @__PURE__ */ jsx("svg", { ...lucideProps(props), children: /* @__PURE__ */ jsx("path", { d: "M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z" }) });
199
+ }
197
200
 
198
201
  // src/accordion.tsx
199
202
  import { jsx as jsx2, jsxs as jsxs2 } from "react/jsx-runtime";
@@ -3275,9 +3278,145 @@ var Switch = React27.forwardRef(({ className, size = "md", ...props }, ref) => /
3275
3278
  ));
3276
3279
  Switch.displayName = SwitchPrimitives.Root.displayName;
3277
3280
 
3281
+ // src/organization-picker.tsx
3282
+ import { Fragment as Fragment2, jsx as jsx36, jsxs as jsxs19 } from "react/jsx-runtime";
3283
+ function OrganizationAbbreviation({
3284
+ abbreviation,
3285
+ name,
3286
+ className
3287
+ }) {
3288
+ const mark = abbreviation && abbreviation.trim() || name.trim().slice(0, 1) || "?";
3289
+ return /* @__PURE__ */ jsx36(
3290
+ "span",
3291
+ {
3292
+ className: cn(
3293
+ "inline-flex shrink-0 items-center justify-center font-bold uppercase tracking-wide",
3294
+ className
3295
+ ),
3296
+ "aria-label": `Organization abbreviation ${mark}`,
3297
+ title: mark,
3298
+ children: mark
3299
+ }
3300
+ );
3301
+ }
3302
+ function OrganizationPicker({
3303
+ organizations,
3304
+ activeOrganizationId,
3305
+ defaultOrganizationId = null,
3306
+ loading = false,
3307
+ loadFailed = false,
3308
+ onSelect,
3309
+ onSetDefault,
3310
+ hideHeading = false,
3311
+ itemClassName,
3312
+ className
3313
+ }) {
3314
+ const active = organizations.find((o) => o.id === activeOrganizationId) ?? null;
3315
+ const isDefault = (id) => !!defaultOrganizationId && id === defaultOrganizationId;
3316
+ return /* @__PURE__ */ jsxs19("div", { className: cn("flex flex-col", className), "data-slot": "organization-picker", children: [
3317
+ !hideHeading && /* @__PURE__ */ jsx36("p", { className: "px-2 py-1.5 text-[11px] font-semibold uppercase tracking-wide text-muted-foreground", children: "Organization" }),
3318
+ loading ? /* @__PURE__ */ jsxs19("div", { className: "space-y-1 px-1 py-1", "aria-busy": "true", "aria-label": "Loading organizations", children: [
3319
+ /* @__PURE__ */ jsx36(Skeleton, { className: "h-7 rounded-md" }),
3320
+ /* @__PURE__ */ jsx36(Skeleton, { className: "h-7 rounded-md" })
3321
+ ] }) : loadFailed ? /* @__PURE__ */ jsx36("p", { className: "px-2 py-2 text-xs text-destructive", role: "alert", children: "Could not load organizations." }) : organizations.length === 0 ? /* @__PURE__ */ jsx36("p", { className: "px-2 py-2 text-xs text-muted-foreground", children: "Your account is not a member of any organization. Ask an administrator to add you to one." }) : /* @__PURE__ */ jsxs19(Fragment2, { children: [
3322
+ active ? /* @__PURE__ */ jsxs19("p", { className: "px-2 pb-1 text-[11px] text-muted-foreground", "data-slot": "organization-picker-status", children: [
3323
+ "Working in",
3324
+ " ",
3325
+ /* @__PURE__ */ jsx36("span", { className: "font-medium text-foreground", children: active.name })
3326
+ ] }) : /* @__PURE__ */ jsx36("p", { className: "px-2 pb-1 text-[11px] text-destructive", "data-slot": "organization-picker-status", children: "No organization selected \u2014 pick one below." }),
3327
+ /* @__PURE__ */ jsx36("ul", { className: "max-h-72 overflow-y-auto", role: "listbox", "aria-label": "Organizations", children: organizations.map((org) => {
3328
+ const isActive = org.id === activeOrganizationId;
3329
+ return /* @__PURE__ */ jsx36("li", { role: "none", children: /* @__PURE__ */ jsxs19(
3330
+ "button",
3331
+ {
3332
+ type: "button",
3333
+ role: "option",
3334
+ "aria-selected": isActive,
3335
+ "aria-pressed": isActive,
3336
+ onClick: (event) => {
3337
+ event.stopPropagation();
3338
+ onSelect(org);
3339
+ },
3340
+ className: cn(
3341
+ "flex w-full items-center gap-2 rounded-md px-2 py-1.5 text-left text-sm text-foreground transition-colors hover:bg-accent",
3342
+ isActive && "bg-primary/10 font-medium text-primary",
3343
+ itemClassName
3344
+ ),
3345
+ children: [
3346
+ /* @__PURE__ */ jsx36(
3347
+ OrganizationAbbreviation,
3348
+ {
3349
+ abbreviation: org.abbreviation,
3350
+ name: org.name,
3351
+ className: cn(
3352
+ "h-5 min-w-8 rounded border border-border bg-muted px-1 text-[9px]",
3353
+ isActive ? "text-primary" : "text-muted-foreground"
3354
+ )
3355
+ }
3356
+ ),
3357
+ /* @__PURE__ */ jsx36("span", { className: "min-w-0 flex-1 truncate", children: org.name }),
3358
+ org.isPersonal && /* @__PURE__ */ jsx36("span", { className: "shrink-0 rounded-full bg-muted px-1.5 py-0.5 text-[10px] font-medium text-muted-foreground", children: "Personal" }),
3359
+ isDefault(org.id) && /* @__PURE__ */ jsx36(
3360
+ StarIcon,
3361
+ {
3362
+ className: "h-[13px] w-[13px] shrink-0 fill-warning text-warning",
3363
+ "aria-hidden": false,
3364
+ "aria-label": "Default organization",
3365
+ role: "img"
3366
+ }
3367
+ ),
3368
+ isActive && /* @__PURE__ */ jsx36(LucideCheckIcon, { className: "h-[15px] w-[15px] shrink-0 text-primary" })
3369
+ ]
3370
+ }
3371
+ ) }, org.id);
3372
+ }) }),
3373
+ onSetDefault && /* @__PURE__ */ jsxs19(Fragment2, { children: [
3374
+ /* @__PURE__ */ jsx36("div", { className: "my-1 border-t border-border" }),
3375
+ /* @__PURE__ */ jsx36(
3376
+ DefaultOrganizationSwitch,
3377
+ {
3378
+ active,
3379
+ checked: !!active && isDefault(active.id),
3380
+ onChange: (on) => onSetDefault(on && active ? active.id : null)
3381
+ }
3382
+ )
3383
+ ] })
3384
+ ] })
3385
+ ] });
3386
+ }
3387
+ function DefaultOrganizationSwitch({
3388
+ active,
3389
+ checked,
3390
+ onChange
3391
+ }) {
3392
+ const disabled = !active;
3393
+ return /* @__PURE__ */ jsxs19(
3394
+ "div",
3395
+ {
3396
+ className: "flex items-center justify-between gap-3 rounded-md px-2 py-1.5",
3397
+ "data-slot": "organization-picker-default",
3398
+ children: [
3399
+ /* @__PURE__ */ jsxs19("div", { className: "min-w-0", children: [
3400
+ /* @__PURE__ */ jsx36("p", { className: "text-xs font-medium text-foreground", children: "Set as my default" }),
3401
+ /* @__PURE__ */ jsx36("p", { className: "truncate text-[11px] text-muted-foreground", children: disabled ? "Select an organization first" : checked ? `Next startup opens ${active.name}` : "Auto-select this at startup" })
3402
+ ] }),
3403
+ /* @__PURE__ */ jsx36(
3404
+ Switch,
3405
+ {
3406
+ checked,
3407
+ disabled,
3408
+ onCheckedChange: onChange,
3409
+ "aria-label": "Set this organization as my default"
3410
+ }
3411
+ )
3412
+ ]
3413
+ }
3414
+ );
3415
+ }
3416
+
3278
3417
  // src/tabbed-bottom-sheet.tsx
3279
3418
  import { useState as useState7 } from "react";
3280
- import { jsx as jsx36, jsxs as jsxs19 } from "react/jsx-runtime";
3419
+ import { jsx as jsx37, jsxs as jsxs20 } from "react/jsx-runtime";
3281
3420
  function TabbedBottomSheet({
3282
3421
  open,
3283
3422
  onOpenChange,
@@ -3291,15 +3430,15 @@ function TabbedBottomSheet({
3291
3430
  if (open) setSelectedTabId(null);
3292
3431
  }
3293
3432
  const selectedTab = selectedTabId ? tabs.find((tab) => tab.id === selectedTabId) : null;
3294
- return /* @__PURE__ */ jsx36(
3433
+ return /* @__PURE__ */ jsx37(
3295
3434
  BottomSheet,
3296
3435
  {
3297
3436
  open,
3298
3437
  onOpenChange,
3299
3438
  title,
3300
3439
  size: "full",
3301
- children: /* @__PURE__ */ jsxs19("div", { className: "matrx-mobile-sheet flex min-h-0 flex-1 flex-col", children: [
3302
- /* @__PURE__ */ jsx36(
3440
+ children: /* @__PURE__ */ jsxs20("div", { className: "matrx-mobile-sheet flex min-h-0 flex-1 flex-col", children: [
3441
+ /* @__PURE__ */ jsx37(
3303
3442
  BottomSheetHeader,
3304
3443
  {
3305
3444
  title: selectedTab ? selectedTab.label : title,
@@ -3307,19 +3446,19 @@ function TabbedBottomSheet({
3307
3446
  onBack: () => setSelectedTabId(null)
3308
3447
  }
3309
3448
  ),
3310
- selectedTab ? /* @__PURE__ */ jsx36("div", { className: "flex min-h-0 flex-1 flex-col overflow-hidden pb-safe", children: selectedTab.content }) : /* @__PURE__ */ jsx36(BottomSheetBody, { children: /* @__PURE__ */ jsx36("ul", { className: "divide-y divide-border", children: tabs.map((tab) => {
3449
+ selectedTab ? /* @__PURE__ */ jsx37("div", { className: "flex min-h-0 flex-1 flex-col overflow-hidden pb-safe", children: selectedTab.content }) : /* @__PURE__ */ jsx37(BottomSheetBody, { children: /* @__PURE__ */ jsx37("ul", { className: "divide-y divide-border", children: tabs.map((tab) => {
3311
3450
  const Icon2 = tab.icon;
3312
- return /* @__PURE__ */ jsx36("li", { children: /* @__PURE__ */ jsxs19(
3451
+ return /* @__PURE__ */ jsx37("li", { children: /* @__PURE__ */ jsxs20(
3313
3452
  "button",
3314
3453
  {
3315
3454
  type: "button",
3316
3455
  onClick: () => setSelectedTabId(tab.id),
3317
3456
  className: "flex w-full items-center gap-3 px-4 py-3.5 text-left transition-colors hover:bg-muted/60 active:bg-muted",
3318
3457
  children: [
3319
- Icon2 ? /* @__PURE__ */ jsx36(Icon2, { className: "h-5 w-5 shrink-0 text-muted-foreground" }) : null,
3320
- /* @__PURE__ */ jsx36("span", { className: "min-w-0 flex-1 text-base text-foreground", children: tab.label }),
3458
+ Icon2 ? /* @__PURE__ */ jsx37(Icon2, { className: "h-5 w-5 shrink-0 text-muted-foreground" }) : null,
3459
+ /* @__PURE__ */ jsx37("span", { className: "min-w-0 flex-1 text-base text-foreground", children: tab.label }),
3321
3460
  tab.trailing,
3322
- /* @__PURE__ */ jsx36(ChevronRightIcon, { className: "h-5 w-5 shrink-0 text-muted-foreground" })
3461
+ /* @__PURE__ */ jsx37(ChevronRightIcon, { className: "h-5 w-5 shrink-0 text-muted-foreground" })
3323
3462
  ]
3324
3463
  }
3325
3464
  ) }, tab.id);
@@ -3331,7 +3470,7 @@ function TabbedBottomSheet({
3331
3470
 
3332
3471
  // src/table.tsx
3333
3472
  import * as React28 from "react";
3334
- import { jsx as jsx37 } from "react/jsx-runtime";
3473
+ import { jsx as jsx38 } from "react/jsx-runtime";
3335
3474
  var TABLE_SIZES = {
3336
3475
  sm: { head: "px-2", cell: "p-2" },
3337
3476
  md: { head: "px-3", cell: "p-3" }
@@ -3342,7 +3481,7 @@ function useTableSize() {
3342
3481
  }
3343
3482
  var Table = React28.forwardRef(
3344
3483
  ({ className, size = "md", wrap = true, wrapperClassName, ...props }, ref) => {
3345
- const table = /* @__PURE__ */ jsx37(
3484
+ const table = /* @__PURE__ */ jsx38(
3346
3485
  "table",
3347
3486
  {
3348
3487
  ref,
@@ -3352,7 +3491,7 @@ var Table = React28.forwardRef(
3352
3491
  ...props
3353
3492
  }
3354
3493
  );
3355
- return /* @__PURE__ */ jsx37(TableSizeContext.Provider, { value: size, children: wrap ? /* @__PURE__ */ jsx37(
3494
+ return /* @__PURE__ */ jsx38(TableSizeContext.Provider, { value: size, children: wrap ? /* @__PURE__ */ jsx38(
3356
3495
  "div",
3357
3496
  {
3358
3497
  "data-slot": "table-wrapper",
@@ -3363,7 +3502,7 @@ var Table = React28.forwardRef(
3363
3502
  }
3364
3503
  );
3365
3504
  Table.displayName = "Table";
3366
- var TableHeader = React28.forwardRef(({ className, sticky = false, ...props }, ref) => /* @__PURE__ */ jsx37(
3505
+ var TableHeader = React28.forwardRef(({ className, sticky = false, ...props }, ref) => /* @__PURE__ */ jsx38(
3367
3506
  "thead",
3368
3507
  {
3369
3508
  ref,
@@ -3377,7 +3516,7 @@ var TableHeader = React28.forwardRef(({ className, sticky = false, ...props }, r
3377
3516
  }
3378
3517
  ));
3379
3518
  TableHeader.displayName = "TableHeader";
3380
- var TableBody = React28.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx37(
3519
+ var TableBody = React28.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx38(
3381
3520
  "tbody",
3382
3521
  {
3383
3522
  ref,
@@ -3387,7 +3526,7 @@ var TableBody = React28.forwardRef(({ className, ...props }, ref) => /* @__PURE_
3387
3526
  }
3388
3527
  ));
3389
3528
  TableBody.displayName = "TableBody";
3390
- var TableFooter = React28.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx37(
3529
+ var TableFooter = React28.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx38(
3391
3530
  "tfoot",
3392
3531
  {
3393
3532
  ref,
@@ -3400,7 +3539,7 @@ var TableFooter = React28.forwardRef(({ className, ...props }, ref) => /* @__PUR
3400
3539
  }
3401
3540
  ));
3402
3541
  TableFooter.displayName = "TableFooter";
3403
- var TableRow = React28.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx37(
3542
+ var TableRow = React28.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx38(
3404
3543
  "tr",
3405
3544
  {
3406
3545
  ref,
@@ -3415,7 +3554,7 @@ var TableRow = React28.forwardRef(({ className, ...props }, ref) => /* @__PURE__
3415
3554
  TableRow.displayName = "TableRow";
3416
3555
  var TableHead = React28.forwardRef(({ className, ...props }, ref) => {
3417
3556
  const size = useTableSize();
3418
- return /* @__PURE__ */ jsx37(
3557
+ return /* @__PURE__ */ jsx38(
3419
3558
  "th",
3420
3559
  {
3421
3560
  ref,
@@ -3432,7 +3571,7 @@ var TableHead = React28.forwardRef(({ className, ...props }, ref) => {
3432
3571
  TableHead.displayName = "TableHead";
3433
3572
  var TableCell = React28.forwardRef(({ className, ...props }, ref) => {
3434
3573
  const size = useTableSize();
3435
- return /* @__PURE__ */ jsx37(
3574
+ return /* @__PURE__ */ jsx38(
3436
3575
  "td",
3437
3576
  {
3438
3577
  ref,
@@ -3447,7 +3586,7 @@ var TableCell = React28.forwardRef(({ className, ...props }, ref) => {
3447
3586
  );
3448
3587
  });
3449
3588
  TableCell.displayName = "TableCell";
3450
- var TableCaption = React28.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx37(
3589
+ var TableCaption = React28.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx38(
3451
3590
  "caption",
3452
3591
  {
3453
3592
  ref,
@@ -3461,10 +3600,10 @@ TableCaption.displayName = "TableCaption";
3461
3600
  // src/tabs.tsx
3462
3601
  import * as TabsPrimitive from "@radix-ui/react-tabs";
3463
3602
  import * as React29 from "react";
3464
- import { jsx as jsx38 } from "react/jsx-runtime";
3603
+ import { jsx as jsx39 } from "react/jsx-runtime";
3465
3604
  var Tabs = TabsPrimitive.Root;
3466
3605
  var TABS_TRIGGER_BASE = "inline-flex items-center justify-center whitespace-nowrap rounded-md px-3 py-1 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow-sm";
3467
- var TabsList = React29.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx38(
3606
+ var TabsList = React29.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx39(
3468
3607
  TabsPrimitive.List,
3469
3608
  {
3470
3609
  ref,
@@ -3477,7 +3616,7 @@ var TabsList = React29.forwardRef(({ className, ...props }, ref) => /* @__PURE__
3477
3616
  }
3478
3617
  ));
3479
3618
  TabsList.displayName = TabsPrimitive.List.displayName;
3480
- var TabsTrigger = React29.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx38(
3619
+ var TabsTrigger = React29.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx39(
3481
3620
  TabsPrimitive.Trigger,
3482
3621
  {
3483
3622
  ref,
@@ -3491,7 +3630,7 @@ var TabsTrigger = React29.forwardRef(({ className, ...props }, ref) => /* @__PUR
3491
3630
  }
3492
3631
  ));
3493
3632
  TabsTrigger.displayName = TabsPrimitive.Trigger.displayName;
3494
- var TabsTriggerCore = React29.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx38(
3633
+ var TabsTriggerCore = React29.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx39(
3495
3634
  TabsPrimitive.Trigger,
3496
3635
  {
3497
3636
  ref,
@@ -3501,7 +3640,7 @@ var TabsTriggerCore = React29.forwardRef(({ className, ...props }, ref) => /* @_
3501
3640
  }
3502
3641
  ));
3503
3642
  TabsTriggerCore.displayName = TabsPrimitive.Trigger.displayName;
3504
- var TabsContent = React29.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx38(
3643
+ var TabsContent = React29.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx39(
3505
3644
  TabsPrimitive.Content,
3506
3645
  {
3507
3646
  ref,
@@ -3518,7 +3657,7 @@ TabsContent.displayName = TabsPrimitive.Content.displayName;
3518
3657
 
3519
3658
  // src/textarea.tsx
3520
3659
  import * as React30 from "react";
3521
- import { jsx as jsx39, jsxs as jsxs20 } from "react/jsx-runtime";
3660
+ import { jsx as jsx40, jsxs as jsxs21 } from "react/jsx-runtime";
3522
3661
  var FILL_HEIGHT_REGEX = /(?:^|\s)(h-full|h-dvh|flex-1|grow)(?:\s|$)/;
3523
3662
  var FILL_WIDTH_REGEX = /(?:^|\s)(w-full|w-screen)(?:\s|$)/;
3524
3663
  function getStretchClasses(className) {
@@ -3571,7 +3710,7 @@ var Textarea = React30.forwardRef(
3571
3710
  const stretchClasses = getStretchClasses(className);
3572
3711
  const needsWrapper = Boolean(wrapperClassName || stretchClasses);
3573
3712
  useAutoGrow(ref, props.value, autoGrow, minHeight, maxHeight);
3574
- const textarea = /* @__PURE__ */ jsx39(
3713
+ const textarea = /* @__PURE__ */ jsx40(
3575
3714
  "textarea",
3576
3715
  {
3577
3716
  ref: callback,
@@ -3587,7 +3726,7 @@ var Textarea = React30.forwardRef(
3587
3726
  }
3588
3727
  );
3589
3728
  if (!needsWrapper) return textarea;
3590
- return /* @__PURE__ */ jsx39("div", { className: cn(stretchClasses, wrapperClassName), children: textarea });
3729
+ return /* @__PURE__ */ jsx40("div", { className: cn(stretchClasses, wrapperClassName), children: textarea });
3591
3730
  }
3592
3731
  );
3593
3732
  Textarea.displayName = "Textarea";
@@ -3595,7 +3734,7 @@ var BasicTextarea = React30.forwardRef(
3595
3734
  ({ className, autoGrow, minHeight, maxHeight, ...props }, forwarded) => {
3596
3735
  const { ref, callback } = useMergedTextareaRef(forwarded);
3597
3736
  useAutoGrow(ref, props.value, autoGrow, minHeight, maxHeight);
3598
- return /* @__PURE__ */ jsx39(
3737
+ return /* @__PURE__ */ jsx40(
3599
3738
  "textarea",
3600
3739
  {
3601
3740
  ref: callback,
@@ -3625,13 +3764,13 @@ var TextareaWithPrefix = React30.forwardRef(
3625
3764
  }, forwarded) => {
3626
3765
  const { ref, callback } = useMergedTextareaRef(forwarded);
3627
3766
  useAutoGrow(ref, props.value, autoGrow, minHeight, maxHeight);
3628
- return /* @__PURE__ */ jsxs20(
3767
+ return /* @__PURE__ */ jsxs21(
3629
3768
  "div",
3630
3769
  {
3631
3770
  className: cn("relative", getStretchClasses(className), wrapperClassName),
3632
3771
  children: [
3633
- prefix ? /* @__PURE__ */ jsx39("div", { className: "pointer-events-none absolute left-3 top-3 z-10 text-muted-foreground", children: prefix }) : null,
3634
- /* @__PURE__ */ jsx39(
3772
+ prefix ? /* @__PURE__ */ jsx40("div", { className: "pointer-events-none absolute left-3 top-3 z-10 text-muted-foreground", children: prefix }) : null,
3773
+ /* @__PURE__ */ jsx40(
3635
3774
  "textarea",
3636
3775
  {
3637
3776
  ref: callback,
@@ -3711,13 +3850,13 @@ function useScrollFade() {
3711
3850
  // src/hover-card.tsx
3712
3851
  import * as HoverCardPrimitive from "@radix-ui/react-hover-card";
3713
3852
  import * as React31 from "react";
3714
- import { jsx as jsx40 } from "react/jsx-runtime";
3853
+ import { jsx as jsx41 } from "react/jsx-runtime";
3715
3854
  var HoverCard = HoverCardPrimitive.Root;
3716
3855
  var HoverCardTrigger = HoverCardPrimitive.Trigger;
3717
3856
  var HoverCardContent = React31.forwardRef(
3718
3857
  ({ className, align = "center", sideOffset = 4, container, animated = true, ...props }, ref) => {
3719
3858
  const resolved = usePortalContainer(container);
3720
- return /* @__PURE__ */ jsx40(HoverCardPrimitive.Portal, { container: resolved ?? null, children: /* @__PURE__ */ jsx40(
3859
+ return /* @__PURE__ */ jsx41(HoverCardPrimitive.Portal, { container: resolved ?? null, children: /* @__PURE__ */ jsx41(
3721
3860
  HoverCardPrimitive.Content,
3722
3861
  {
3723
3862
  ref,
@@ -3739,7 +3878,7 @@ HoverCardContent.displayName = HoverCardPrimitive.Content.displayName;
3739
3878
  // src/radio-group.tsx
3740
3879
  import * as RadioGroupPrimitive from "@radix-ui/react-radio-group";
3741
3880
  import * as React32 from "react";
3742
- import { jsx as jsx41 } from "react/jsx-runtime";
3881
+ import { jsx as jsx42 } from "react/jsx-runtime";
3743
3882
  var RadioGroupSizeContext = React32.createContext("md");
3744
3883
  var CONTROL_CLASSES = {
3745
3884
  sm: "h-3.5 w-3.5",
@@ -3751,7 +3890,7 @@ var DOT_CLASSES = {
3751
3890
  md: "h-1.5 w-1.5",
3752
3891
  lg: "h-2 w-2"
3753
3892
  };
3754
- var RadioGroup3 = React32.forwardRef(({ className, size = "md", ...props }, ref) => /* @__PURE__ */ jsx41(RadioGroupSizeContext.Provider, { value: size, children: /* @__PURE__ */ jsx41(
3893
+ var RadioGroup3 = React32.forwardRef(({ className, size = "md", ...props }, ref) => /* @__PURE__ */ jsx42(RadioGroupSizeContext.Provider, { value: size, children: /* @__PURE__ */ jsx42(
3755
3894
  RadioGroupPrimitive.Root,
3756
3895
  {
3757
3896
  ref,
@@ -3764,7 +3903,7 @@ RadioGroup3.displayName = RadioGroupPrimitive.Root.displayName;
3764
3903
  var RadioGroupItem = React32.forwardRef(({ className, size, ...props }, ref) => {
3765
3904
  const groupSize = React32.useContext(RadioGroupSizeContext);
3766
3905
  const resolved = size ?? groupSize;
3767
- return /* @__PURE__ */ jsx41(
3906
+ return /* @__PURE__ */ jsx42(
3768
3907
  RadioGroupPrimitive.Item,
3769
3908
  {
3770
3909
  ref,
@@ -3781,7 +3920,7 @@ var RadioGroupItem = React32.forwardRef(({ className, size, ...props }, ref) =>
3781
3920
  className
3782
3921
  ),
3783
3922
  ...props,
3784
- children: /* @__PURE__ */ jsx41(RadioGroupPrimitive.Indicator, { className: "flex items-center justify-center", children: /* @__PURE__ */ jsx41(
3923
+ children: /* @__PURE__ */ jsx42(RadioGroupPrimitive.Indicator, { className: "flex items-center justify-center", children: /* @__PURE__ */ jsx42(
3785
3924
  "div",
3786
3925
  {
3787
3926
  className: cn("rounded-full bg-primary-foreground", DOT_CLASSES[resolved])
@@ -3794,7 +3933,7 @@ RadioGroupItem.displayName = RadioGroupPrimitive.Item.displayName;
3794
3933
 
3795
3934
  // src/resizable.tsx
3796
3935
  import { Group as Group4, Panel, Separator as Separator5 } from "react-resizable-panels";
3797
- import { jsx as jsx42 } from "react/jsx-runtime";
3936
+ import { jsx as jsx43 } from "react/jsx-runtime";
3798
3937
  var HANDLE_SIZES = {
3799
3938
  xs: "w-0.5 [&[aria-orientation=horizontal]]:h-0.5 [&[aria-orientation=horizontal]]:w-full",
3800
3939
  sm: "w-1 [&[aria-orientation=horizontal]]:h-1 [&[aria-orientation=horizontal]]:w-full",
@@ -3808,7 +3947,7 @@ var HANDLE_SIZES = {
3808
3947
  var ResizablePanelGroup = ({
3809
3948
  className,
3810
3949
  ...props
3811
- }) => /* @__PURE__ */ jsx42(
3950
+ }) => /* @__PURE__ */ jsx43(
3812
3951
  Group4,
3813
3952
  {
3814
3953
  "data-slot": "resizable-group",
@@ -3823,7 +3962,7 @@ var ResizableHandle = ({
3823
3962
  size = "xs",
3824
3963
  className,
3825
3964
  ...props
3826
- }) => /* @__PURE__ */ jsx42(
3965
+ }) => /* @__PURE__ */ jsx43(
3827
3966
  Separator5,
3828
3967
  {
3829
3968
  "data-slot": "resizable-handle",
@@ -3843,7 +3982,7 @@ var ResizableHandle = ({
3843
3982
  className
3844
3983
  ),
3845
3984
  ...props,
3846
- children: withHandle ? /* @__PURE__ */ jsx42("div", { className: "z-10 flex h-8 w-4 items-center justify-center rounded-sm border bg-border group-aria-[orientation=horizontal]/handle:h-4 group-aria-[orientation=horizontal]/handle:w-8", children: /* @__PURE__ */ jsx42(DragHandleDots2Icon, { className: "h-2.5 w-2.5 group-aria-[orientation=horizontal]/handle:rotate-90" }) }) : null
3985
+ children: withHandle ? /* @__PURE__ */ jsx43("div", { className: "z-10 flex h-8 w-4 items-center justify-center rounded-sm border bg-border group-aria-[orientation=horizontal]/handle:h-4 group-aria-[orientation=horizontal]/handle:w-8", children: /* @__PURE__ */ jsx43(DragHandleDots2Icon, { className: "h-2.5 w-2.5 group-aria-[orientation=horizontal]/handle:rotate-90" }) }) : null
3847
3986
  }
3848
3987
  );
3849
3988
  ResizableHandle.displayName = "ResizableHandle";
@@ -3851,7 +3990,7 @@ ResizableHandle.displayName = "ResizableHandle";
3851
3990
  // src/slider.tsx
3852
3991
  import * as SliderPrimitive from "@radix-ui/react-slider";
3853
3992
  import * as React33 from "react";
3854
- import { jsx as jsx43, jsxs as jsxs21 } from "react/jsx-runtime";
3993
+ import { jsx as jsx44, jsxs as jsxs22 } from "react/jsx-runtime";
3855
3994
  var TRACK_CLASSES = {
3856
3995
  sm: "h-1",
3857
3996
  md: "h-1.5",
@@ -3867,7 +4006,7 @@ var Slider = React33.forwardRef(({ className, size = "md", ...props }, ref) => {
3867
4006
  1,
3868
4007
  (props.value ?? props.defaultValue ?? [0]).length
3869
4008
  );
3870
- return /* @__PURE__ */ jsxs21(
4009
+ return /* @__PURE__ */ jsxs22(
3871
4010
  SliderPrimitive.Root,
3872
4011
  {
3873
4012
  ref,
@@ -3879,7 +4018,7 @@ var Slider = React33.forwardRef(({ className, size = "md", ...props }, ref) => {
3879
4018
  ),
3880
4019
  ...props,
3881
4020
  children: [
3882
- /* @__PURE__ */ jsx43(
4021
+ /* @__PURE__ */ jsx44(
3883
4022
  SliderPrimitive.Track,
3884
4023
  {
3885
4024
  "data-slot": "slider-track",
@@ -3888,7 +4027,7 @@ var Slider = React33.forwardRef(({ className, size = "md", ...props }, ref) => {
3888
4027
  TRACK_CLASSES[size],
3889
4028
  "data-[orientation=vertical]:h-full data-[orientation=vertical]:w-1.5"
3890
4029
  ),
3891
- children: /* @__PURE__ */ jsx43(
4030
+ children: /* @__PURE__ */ jsx44(
3892
4031
  SliderPrimitive.Range,
3893
4032
  {
3894
4033
  "data-slot": "slider-range",
@@ -3897,7 +4036,7 @@ var Slider = React33.forwardRef(({ className, size = "md", ...props }, ref) => {
3897
4036
  )
3898
4037
  }
3899
4038
  ),
3900
- Array.from({ length: thumbCount }, (_, index) => /* @__PURE__ */ jsx43(
4039
+ Array.from({ length: thumbCount }, (_, index) => /* @__PURE__ */ jsx44(
3901
4040
  SliderPrimitive.Thumb,
3902
4041
  {
3903
4042
  "data-slot": "slider-thumb",
@@ -3925,7 +4064,7 @@ import * as ToggleGroupPrimitive from "@radix-ui/react-toggle-group";
3925
4064
  import * as TogglePrimitive from "@radix-ui/react-toggle";
3926
4065
  import { cva as cva6 } from "class-variance-authority";
3927
4066
  import * as React34 from "react";
3928
- import { jsx as jsx44 } from "react/jsx-runtime";
4067
+ import { jsx as jsx45 } from "react/jsx-runtime";
3929
4068
  var toggleVariants = cva6(
3930
4069
  "inline-flex cursor-pointer items-center justify-center gap-2 rounded-md text-sm font-medium transition-colors hover:bg-muted hover:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",
3931
4070
  {
@@ -3946,7 +4085,7 @@ var toggleVariants = cva6(
3946
4085
  }
3947
4086
  }
3948
4087
  );
3949
- var Toggle = React34.forwardRef(({ className, variant, size, ...props }, ref) => /* @__PURE__ */ jsx44(
4088
+ var Toggle = React34.forwardRef(({ className, variant, size, ...props }, ref) => /* @__PURE__ */ jsx45(
3950
4089
  TogglePrimitive.Root,
3951
4090
  {
3952
4091
  ref,
@@ -3957,20 +4096,20 @@ var Toggle = React34.forwardRef(({ className, variant, size, ...props }, ref) =>
3957
4096
  ));
3958
4097
  Toggle.displayName = TogglePrimitive.Root.displayName;
3959
4098
  var ToggleGroupContext = React34.createContext({ size: "default", variant: "default" });
3960
- var ToggleGroup = React34.forwardRef(({ className, variant, size, children, ...props }, ref) => /* @__PURE__ */ jsx44(
4099
+ var ToggleGroup = React34.forwardRef(({ className, variant, size, children, ...props }, ref) => /* @__PURE__ */ jsx45(
3961
4100
  ToggleGroupPrimitive.Root,
3962
4101
  {
3963
4102
  ref,
3964
4103
  "data-slot": "toggle-group",
3965
4104
  className: cn("flex items-center justify-center gap-1", className),
3966
4105
  ...props,
3967
- children: /* @__PURE__ */ jsx44(ToggleGroupContext.Provider, { value: { variant, size }, children })
4106
+ children: /* @__PURE__ */ jsx45(ToggleGroupContext.Provider, { value: { variant, size }, children })
3968
4107
  }
3969
4108
  ));
3970
4109
  ToggleGroup.displayName = ToggleGroupPrimitive.Root.displayName;
3971
4110
  var ToggleGroupItem = React34.forwardRef(({ className, children, variant, size, ...props }, ref) => {
3972
4111
  const context = React34.useContext(ToggleGroupContext);
3973
- return /* @__PURE__ */ jsx44(
4112
+ return /* @__PURE__ */ jsx45(
3974
4113
  ToggleGroupPrimitive.Item,
3975
4114
  {
3976
4115
  ref,
@@ -3992,13 +4131,13 @@ ToggleGroupItem.displayName = ToggleGroupPrimitive.Item.displayName;
3992
4131
  // src/tooltip.tsx
3993
4132
  import * as TooltipPrimitive from "@radix-ui/react-tooltip";
3994
4133
  import * as React35 from "react";
3995
- import { jsx as jsx45 } from "react/jsx-runtime";
4134
+ import { jsx as jsx46 } from "react/jsx-runtime";
3996
4135
  var TooltipProvider = TooltipPrimitive.Provider;
3997
4136
  var Tooltip = TooltipPrimitive.Root;
3998
4137
  var TooltipTrigger = TooltipPrimitive.Trigger;
3999
4138
  var TooltipContent = React35.forwardRef(({ className, sideOffset = 4, container, animated = true, ...props }, ref) => {
4000
4139
  const resolved = usePortalContainer(container);
4001
- return /* @__PURE__ */ jsx45(TooltipPrimitive.Portal, { container: resolved ?? null, children: /* @__PURE__ */ jsx45(
4140
+ return /* @__PURE__ */ jsx46(TooltipPrimitive.Portal, { container: resolved ?? null, children: /* @__PURE__ */ jsx46(
4002
4141
  TooltipPrimitive.Content,
4003
4142
  {
4004
4143
  ref,
@@ -4141,6 +4280,8 @@ export {
4141
4280
  MOTION_PULSE,
4142
4281
  MOTION_SHEET,
4143
4282
  MOTION_SPIN,
4283
+ OrganizationAbbreviation,
4284
+ OrganizationPicker,
4144
4285
  OverflowToolbar,
4145
4286
  POPPER_OFFSET,
4146
4287
  Popover,