@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/CHANGELOG.md +23 -0
- package/dist/index.cjs +194 -53
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +43 -1
- package/dist/index.d.ts +43 -1
- package/dist/index.js +194 -53
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
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
|
|
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__ */
|
|
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__ */
|
|
3302
|
-
/* @__PURE__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
3320
|
-
/* @__PURE__ */
|
|
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__ */
|
|
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
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
3767
|
+
return /* @__PURE__ */ jsxs21(
|
|
3629
3768
|
"div",
|
|
3630
3769
|
{
|
|
3631
3770
|
className: cn("relative", getStretchClasses(className), wrapperClassName),
|
|
3632
3771
|
children: [
|
|
3633
|
-
prefix ? /* @__PURE__ */
|
|
3634
|
-
/* @__PURE__ */
|
|
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
|
|
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__ */
|
|
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
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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
|
|
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__ */
|
|
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,
|