@ai-matrx/design-system 0.13.0 → 0.14.1
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 +68 -0
- package/dist/index.cjs +169 -118
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +96 -1
- package/dist/index.d.ts +96 -1
- package/dist/index.js +169 -118
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
package/dist/index.cjs
CHANGED
|
@@ -34,6 +34,7 @@ __export(src_exports, {
|
|
|
34
34
|
ALL_MOTION_CLASSES: () => ALL_MOTION_CLASSES,
|
|
35
35
|
ARCHIVE_FILTER_LABELS: () => ARCHIVE_FILTER_LABELS,
|
|
36
36
|
ARCHIVE_FILTER_VALUES: () => ARCHIVE_FILTER_VALUES,
|
|
37
|
+
ARCHIVE_LABEL: () => ARCHIVE_LABEL,
|
|
37
38
|
Accordion: () => Accordion,
|
|
38
39
|
AccordionContent: () => AccordionContent,
|
|
39
40
|
AccordionItem: () => AccordionItem,
|
|
@@ -54,6 +55,7 @@ __export(src_exports, {
|
|
|
54
55
|
AlertDialogTrigger: () => AlertDialogTrigger,
|
|
55
56
|
AlertTitle: () => AlertTitle,
|
|
56
57
|
ArchiveFilter: () => ArchiveFilter,
|
|
58
|
+
ArchivedDisclosure: () => ArchivedDisclosure,
|
|
57
59
|
Avatar: () => Avatar,
|
|
58
60
|
AvatarFallback: () => AvatarFallback,
|
|
59
61
|
AvatarImage: () => AvatarImage,
|
|
@@ -229,6 +231,7 @@ __export(src_exports, {
|
|
|
229
231
|
TooltipProvider: () => TooltipProvider,
|
|
230
232
|
TooltipTrigger: () => TooltipTrigger,
|
|
231
233
|
alertVariants: () => alertVariants,
|
|
234
|
+
archiveFilterFromDisclosure: () => archiveFilterFromDisclosure,
|
|
232
235
|
badgeVariants: () => badgeVariants,
|
|
233
236
|
buttonVariants: () => buttonVariants,
|
|
234
237
|
cn: () => cn,
|
|
@@ -285,6 +288,16 @@ function ChevronLeftIcon(props) {
|
|
|
285
288
|
function ChevronRightIcon(props) {
|
|
286
289
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("svg", { ...lucideProps(props), children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "m9 18 6-6-6-6" }) });
|
|
287
290
|
}
|
|
291
|
+
function ChevronDownIcon(props) {
|
|
292
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("svg", { ...lucideProps(props), children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "m6 9 6 6 6-6" }) });
|
|
293
|
+
}
|
|
294
|
+
function ArchiveIcon(props) {
|
|
295
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("svg", { ...lucideProps(props), children: [
|
|
296
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("rect", { width: "20", height: "5", x: "2", y: "3", rx: "1" }),
|
|
297
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8" }),
|
|
298
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "M10 12h4" })
|
|
299
|
+
] });
|
|
300
|
+
}
|
|
288
301
|
function MoreHorizontalIcon(props) {
|
|
289
302
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("svg", { ...lucideProps(props), children: [
|
|
290
303
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)("circle", { cx: "12", cy: "12", r: "1" }),
|
|
@@ -3159,11 +3172,15 @@ var React24 = __toESM(require("react"), 1);
|
|
|
3159
3172
|
var import_jsx_runtime31 = require("react/jsx-runtime");
|
|
3160
3173
|
var ARCHIVE_FILTER_VALUES = ["active", "archived", "all"];
|
|
3161
3174
|
var DEFAULT_ARCHIVE_FILTER = "active";
|
|
3175
|
+
var ARCHIVE_LABEL = "Archived";
|
|
3162
3176
|
var ARCHIVE_FILTER_LABELS = {
|
|
3163
3177
|
active: "Active only",
|
|
3164
|
-
archived:
|
|
3178
|
+
archived: `${ARCHIVE_LABEL} only`,
|
|
3165
3179
|
all: "Active + archived"
|
|
3166
3180
|
};
|
|
3181
|
+
function archiveFilterFromDisclosure(open) {
|
|
3182
|
+
return open ? "all" : DEFAULT_ARCHIVE_FILTER;
|
|
3183
|
+
}
|
|
3167
3184
|
function toArchiveFilter(value, fallback = DEFAULT_ARCHIVE_FILTER) {
|
|
3168
3185
|
return ARCHIVE_FILTER_VALUES.includes(value) ? value : fallback;
|
|
3169
3186
|
}
|
|
@@ -3203,11 +3220,45 @@ function ArchiveFilter({
|
|
|
3203
3220
|
) });
|
|
3204
3221
|
}
|
|
3205
3222
|
|
|
3223
|
+
// src/archived-disclosure.tsx
|
|
3224
|
+
var import_jsx_runtime32 = require("react/jsx-runtime");
|
|
3225
|
+
function ArchivedDisclosure({
|
|
3226
|
+
count,
|
|
3227
|
+
open,
|
|
3228
|
+
onOpenChange,
|
|
3229
|
+
children,
|
|
3230
|
+
label = ARCHIVE_LABEL,
|
|
3231
|
+
countLabel,
|
|
3232
|
+
keepWhileOpen = false,
|
|
3233
|
+
className,
|
|
3234
|
+
contentClassName
|
|
3235
|
+
}) {
|
|
3236
|
+
if (count <= 0 && !(open && keepWhileOpen)) return null;
|
|
3237
|
+
const parenthetical = countLabel === void 0 ? String(count) : countLabel;
|
|
3238
|
+
return /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)("div", { className: cn("min-w-0", className), children: [
|
|
3239
|
+
/* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(
|
|
3240
|
+
"button",
|
|
3241
|
+
{
|
|
3242
|
+
type: "button",
|
|
3243
|
+
onClick: () => onOpenChange(!open),
|
|
3244
|
+
"aria-expanded": open,
|
|
3245
|
+
className: "flex w-full items-center gap-2 rounded-lg px-2 py-2 text-sm text-muted-foreground hover:bg-accent active:bg-accent",
|
|
3246
|
+
children: [
|
|
3247
|
+
open ? /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(ChevronDownIcon, { className: "h-4 w-4 shrink-0" }) : /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(ChevronRightIcon, { className: "h-4 w-4 shrink-0" }),
|
|
3248
|
+
/* @__PURE__ */ (0, import_jsx_runtime32.jsx)(ArchiveIcon, { className: "h-4 w-4 shrink-0" }),
|
|
3249
|
+
/* @__PURE__ */ (0, import_jsx_runtime32.jsx)("span", { className: "truncate", children: parenthetical === null ? label : `${label} (${parenthetical})` })
|
|
3250
|
+
]
|
|
3251
|
+
}
|
|
3252
|
+
),
|
|
3253
|
+
open && children ? /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("div", { className: cn("mt-1", contentClassName), children }) : null
|
|
3254
|
+
] });
|
|
3255
|
+
}
|
|
3256
|
+
|
|
3206
3257
|
// src/select.tsx
|
|
3207
3258
|
var SelectPrimitive = __toESM(require("@radix-ui/react-select"), 1);
|
|
3208
3259
|
var import_class_variance_authority4 = require("class-variance-authority");
|
|
3209
3260
|
var React25 = __toESM(require("react"), 1);
|
|
3210
|
-
var
|
|
3261
|
+
var import_jsx_runtime33 = require("react/jsx-runtime");
|
|
3211
3262
|
var Select = SelectPrimitive.Root;
|
|
3212
3263
|
var SelectGroup = SelectPrimitive.Group;
|
|
3213
3264
|
var SelectValue = SelectPrimitive.Value;
|
|
@@ -3226,7 +3277,7 @@ var selectTriggerVariants = (0, import_class_variance_authority4.cva)(
|
|
|
3226
3277
|
}
|
|
3227
3278
|
}
|
|
3228
3279
|
);
|
|
3229
|
-
var SelectTrigger = React25.forwardRef(({ className, children, hideArrow = false, size, ...props }, ref) => /* @__PURE__ */ (0,
|
|
3280
|
+
var SelectTrigger = React25.forwardRef(({ className, children, hideArrow = false, size, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(
|
|
3230
3281
|
SelectPrimitive.Trigger,
|
|
3231
3282
|
{
|
|
3232
3283
|
ref,
|
|
@@ -3234,12 +3285,12 @@ var SelectTrigger = React25.forwardRef(({ className, children, hideArrow = false
|
|
|
3234
3285
|
...props,
|
|
3235
3286
|
children: [
|
|
3236
3287
|
children,
|
|
3237
|
-
!hideArrow && /* @__PURE__ */ (0,
|
|
3288
|
+
!hideArrow && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(SelectPrimitive.Icon, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(RadixChevronDownIcon, { className: "h-4 w-4 opacity-50" }) })
|
|
3238
3289
|
]
|
|
3239
3290
|
}
|
|
3240
3291
|
));
|
|
3241
3292
|
SelectTrigger.displayName = SelectPrimitive.Trigger.displayName;
|
|
3242
|
-
var SelectScrollUpButton = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0,
|
|
3293
|
+
var SelectScrollUpButton = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
|
3243
3294
|
SelectPrimitive.ScrollUpButton,
|
|
3244
3295
|
{
|
|
3245
3296
|
ref,
|
|
@@ -3248,11 +3299,11 @@ var SelectScrollUpButton = React25.forwardRef(({ className, ...props }, ref) =>
|
|
|
3248
3299
|
className
|
|
3249
3300
|
),
|
|
3250
3301
|
...props,
|
|
3251
|
-
children: /* @__PURE__ */ (0,
|
|
3302
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(RadixChevronUpIcon, {})
|
|
3252
3303
|
}
|
|
3253
3304
|
));
|
|
3254
3305
|
SelectScrollUpButton.displayName = SelectPrimitive.ScrollUpButton.displayName;
|
|
3255
|
-
var SelectScrollDownButton = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0,
|
|
3306
|
+
var SelectScrollDownButton = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
|
3256
3307
|
SelectPrimitive.ScrollDownButton,
|
|
3257
3308
|
{
|
|
3258
3309
|
ref,
|
|
@@ -3261,7 +3312,7 @@ var SelectScrollDownButton = React25.forwardRef(({ className, ...props }, ref) =
|
|
|
3261
3312
|
className
|
|
3262
3313
|
),
|
|
3263
3314
|
...props,
|
|
3264
|
-
children: /* @__PURE__ */ (0,
|
|
3315
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(RadixChevronDownIcon, {})
|
|
3265
3316
|
}
|
|
3266
3317
|
));
|
|
3267
3318
|
SelectScrollDownButton.displayName = SelectPrimitive.ScrollDownButton.displayName;
|
|
@@ -3275,7 +3326,7 @@ var SelectContent = React25.forwardRef(
|
|
|
3275
3326
|
...props
|
|
3276
3327
|
}, ref) => {
|
|
3277
3328
|
const portalContainer = usePortalContainer(container);
|
|
3278
|
-
return /* @__PURE__ */ (0,
|
|
3329
|
+
return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(SelectPrimitive.Portal, { container: portalContainer, children: /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(
|
|
3279
3330
|
SelectPrimitive.Content,
|
|
3280
3331
|
{
|
|
3281
3332
|
ref,
|
|
@@ -3293,8 +3344,8 @@ var SelectContent = React25.forwardRef(
|
|
|
3293
3344
|
position,
|
|
3294
3345
|
...props,
|
|
3295
3346
|
children: [
|
|
3296
|
-
/* @__PURE__ */ (0,
|
|
3297
|
-
/* @__PURE__ */ (0,
|
|
3347
|
+
/* @__PURE__ */ (0, import_jsx_runtime33.jsx)(SelectScrollUpButton, {}),
|
|
3348
|
+
/* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
|
3298
3349
|
SelectPrimitive.Viewport,
|
|
3299
3350
|
{
|
|
3300
3351
|
className: cn(
|
|
@@ -3304,14 +3355,14 @@ var SelectContent = React25.forwardRef(
|
|
|
3304
3355
|
children
|
|
3305
3356
|
}
|
|
3306
3357
|
),
|
|
3307
|
-
/* @__PURE__ */ (0,
|
|
3358
|
+
/* @__PURE__ */ (0, import_jsx_runtime33.jsx)(SelectScrollDownButton, {})
|
|
3308
3359
|
]
|
|
3309
3360
|
}
|
|
3310
3361
|
) });
|
|
3311
3362
|
}
|
|
3312
3363
|
);
|
|
3313
3364
|
SelectContent.displayName = SelectPrimitive.Content.displayName;
|
|
3314
|
-
var SelectLabel = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0,
|
|
3365
|
+
var SelectLabel = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
|
3315
3366
|
SelectPrimitive.Label,
|
|
3316
3367
|
{
|
|
3317
3368
|
ref,
|
|
@@ -3320,7 +3371,7 @@ var SelectLabel = React25.forwardRef(({ className, ...props }, ref) => /* @__PUR
|
|
|
3320
3371
|
}
|
|
3321
3372
|
));
|
|
3322
3373
|
SelectLabel.displayName = SelectPrimitive.Label.displayName;
|
|
3323
|
-
var SelectItem = React25.forwardRef(({ className, children, description, ...props }, ref) => /* @__PURE__ */ (0,
|
|
3374
|
+
var SelectItem = React25.forwardRef(({ className, children, description, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(
|
|
3324
3375
|
SelectPrimitive.Item,
|
|
3325
3376
|
{
|
|
3326
3377
|
ref,
|
|
@@ -3331,14 +3382,14 @@ var SelectItem = React25.forwardRef(({ className, children, description, ...prop
|
|
|
3331
3382
|
),
|
|
3332
3383
|
...props,
|
|
3333
3384
|
children: [
|
|
3334
|
-
/* @__PURE__ */ (0,
|
|
3335
|
-
/* @__PURE__ */ (0,
|
|
3336
|
-
description ? /* @__PURE__ */ (0,
|
|
3385
|
+
/* @__PURE__ */ (0, import_jsx_runtime33.jsx)("span", { className: "absolute right-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(SelectPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(CheckIcon, { className: "h-4 w-4" }) }) }),
|
|
3386
|
+
/* @__PURE__ */ (0, import_jsx_runtime33.jsx)(SelectPrimitive.ItemText, { children }),
|
|
3387
|
+
description ? /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("span", { className: "block text-xs leading-snug text-muted-foreground", children: description }) : null
|
|
3337
3388
|
]
|
|
3338
3389
|
}
|
|
3339
3390
|
));
|
|
3340
3391
|
SelectItem.displayName = SelectPrimitive.Item.displayName;
|
|
3341
|
-
var SelectSeparator = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0,
|
|
3392
|
+
var SelectSeparator = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
|
3342
3393
|
SelectPrimitive.Separator,
|
|
3343
3394
|
{
|
|
3344
3395
|
ref,
|
|
@@ -3351,8 +3402,8 @@ SelectSeparator.displayName = SelectPrimitive.Separator.displayName;
|
|
|
3351
3402
|
// src/separator.tsx
|
|
3352
3403
|
var SeparatorPrimitive = __toESM(require("@radix-ui/react-separator"), 1);
|
|
3353
3404
|
var React26 = __toESM(require("react"), 1);
|
|
3354
|
-
var
|
|
3355
|
-
var Separator4 = React26.forwardRef(({ className, orientation = "horizontal", decorative = true, ...props }, ref) => /* @__PURE__ */ (0,
|
|
3405
|
+
var import_jsx_runtime34 = require("react/jsx-runtime");
|
|
3406
|
+
var Separator4 = React26.forwardRef(({ className, orientation = "horizontal", decorative = true, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
|
|
3356
3407
|
SeparatorPrimitive.Root,
|
|
3357
3408
|
{
|
|
3358
3409
|
ref,
|
|
@@ -3373,10 +3424,10 @@ var SheetPrimitive = __toESM(require("@radix-ui/react-dialog"), 1);
|
|
|
3373
3424
|
var import_react_tree4 = require("@ai-matrx/kit/react-tree");
|
|
3374
3425
|
var import_class_variance_authority5 = require("class-variance-authority");
|
|
3375
3426
|
var React27 = __toESM(require("react"), 1);
|
|
3376
|
-
var
|
|
3427
|
+
var import_jsx_runtime35 = require("react/jsx-runtime");
|
|
3377
3428
|
var SheetContentBase = React27.forwardRef(({ ...props }, ref) => {
|
|
3378
3429
|
const isModal = useRadixDialogModal();
|
|
3379
|
-
return /* @__PURE__ */ (0,
|
|
3430
|
+
return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
|
3380
3431
|
SheetPrimitive.Content,
|
|
3381
3432
|
{
|
|
3382
3433
|
...props,
|
|
@@ -3388,13 +3439,13 @@ var SheetContentBase = React27.forwardRef(({ ...props }, ref) => {
|
|
|
3388
3439
|
SheetContentBase.displayName = "SheetContentBase";
|
|
3389
3440
|
var Sheet = React27.forwardRef(({ children, ...props }, _ref) => {
|
|
3390
3441
|
const modal = props.modal ?? true;
|
|
3391
|
-
return /* @__PURE__ */ (0,
|
|
3442
|
+
return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(RadixDialogModalProvider, { modal, children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(SheetPrimitive.Root, { ...props, modal, children }) });
|
|
3392
3443
|
});
|
|
3393
3444
|
Sheet.displayName = "Sheet";
|
|
3394
3445
|
var SheetTrigger = SheetPrimitive.Trigger;
|
|
3395
3446
|
var SheetClose = SheetPrimitive.Close;
|
|
3396
3447
|
var SheetPortal = SheetPrimitive.Portal;
|
|
3397
|
-
var SheetOverlay = React27.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0,
|
|
3448
|
+
var SheetOverlay = React27.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
|
3398
3449
|
SheetPrimitive.Overlay,
|
|
3399
3450
|
{
|
|
3400
3451
|
className: cn(
|
|
@@ -3431,7 +3482,7 @@ var sheetVariants = (0, import_class_variance_authority5.cva)(
|
|
|
3431
3482
|
}
|
|
3432
3483
|
}
|
|
3433
3484
|
);
|
|
3434
|
-
var SheetDescription = React27.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0,
|
|
3485
|
+
var SheetDescription = React27.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
|
3435
3486
|
SheetPrimitive.Description,
|
|
3436
3487
|
{
|
|
3437
3488
|
ref,
|
|
@@ -3452,9 +3503,9 @@ var SheetContent = React27.forwardRef(
|
|
|
3452
3503
|
...props
|
|
3453
3504
|
}, ref) => {
|
|
3454
3505
|
const hasDescription = (0, import_react_tree4.treeContainsComponent)(children, SheetDescription) || (0, import_react_tree4.treeContainsComponent)(children, SheetPrimitive.Description);
|
|
3455
|
-
return /* @__PURE__ */ (0,
|
|
3456
|
-
!hideOverlay && /* @__PURE__ */ (0,
|
|
3457
|
-
/* @__PURE__ */ (0,
|
|
3506
|
+
return /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(SheetPortal, { children: [
|
|
3507
|
+
!hideOverlay && /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(SheetOverlay, { className: overlayClassName }),
|
|
3508
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(
|
|
3458
3509
|
SheetContentBase,
|
|
3459
3510
|
{
|
|
3460
3511
|
ref,
|
|
@@ -3466,9 +3517,9 @@ var SheetContent = React27.forwardRef(
|
|
|
3466
3517
|
...hasDescription ? {} : { "aria-describedby": void 0 },
|
|
3467
3518
|
...props,
|
|
3468
3519
|
children: [
|
|
3469
|
-
!hideCloseButton && /* @__PURE__ */ (0,
|
|
3470
|
-
/* @__PURE__ */ (0,
|
|
3471
|
-
/* @__PURE__ */ (0,
|
|
3520
|
+
!hideCloseButton && /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(SheetPrimitive.Close, { className: "absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-secondary", children: [
|
|
3521
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsx)(Cross2Icon, { className: "h-4 w-4" }),
|
|
3522
|
+
/* @__PURE__ */ (0, import_jsx_runtime35.jsx)("span", { className: "sr-only", children: "Close" })
|
|
3472
3523
|
] }),
|
|
3473
3524
|
children
|
|
3474
3525
|
]
|
|
@@ -3481,7 +3532,7 @@ SheetContent.displayName = SheetPrimitive.Content.displayName;
|
|
|
3481
3532
|
var SheetHeader = ({
|
|
3482
3533
|
className,
|
|
3483
3534
|
...props
|
|
3484
|
-
}) => /* @__PURE__ */ (0,
|
|
3535
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
|
3485
3536
|
"div",
|
|
3486
3537
|
{
|
|
3487
3538
|
className: cn(
|
|
@@ -3495,7 +3546,7 @@ SheetHeader.displayName = "SheetHeader";
|
|
|
3495
3546
|
var SheetFooter = ({
|
|
3496
3547
|
className,
|
|
3497
3548
|
...props
|
|
3498
|
-
}) => /* @__PURE__ */ (0,
|
|
3549
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
|
3499
3550
|
"div",
|
|
3500
3551
|
{
|
|
3501
3552
|
"data-slot": "sheet-footer",
|
|
@@ -3507,7 +3558,7 @@ var SheetFooter = ({
|
|
|
3507
3558
|
}
|
|
3508
3559
|
);
|
|
3509
3560
|
SheetFooter.displayName = "SheetFooter";
|
|
3510
|
-
var SheetTitle = React27.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0,
|
|
3561
|
+
var SheetTitle = React27.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
|
3511
3562
|
SheetPrimitive.Title,
|
|
3512
3563
|
{
|
|
3513
3564
|
ref,
|
|
@@ -3518,9 +3569,9 @@ var SheetTitle = React27.forwardRef(({ className, ...props }, ref) => /* @__PURE
|
|
|
3518
3569
|
SheetTitle.displayName = SheetPrimitive.Title.displayName;
|
|
3519
3570
|
|
|
3520
3571
|
// src/skeleton.tsx
|
|
3521
|
-
var
|
|
3572
|
+
var import_jsx_runtime36 = require("react/jsx-runtime");
|
|
3522
3573
|
function Skeleton({ className, animated = true, ...props }) {
|
|
3523
|
-
return /* @__PURE__ */ (0,
|
|
3574
|
+
return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
|
|
3524
3575
|
"div",
|
|
3525
3576
|
{
|
|
3526
3577
|
"data-slot": "skeleton",
|
|
@@ -3537,7 +3588,7 @@ function Skeleton({ className, animated = true, ...props }) {
|
|
|
3537
3588
|
// src/switch.tsx
|
|
3538
3589
|
var SwitchPrimitives = __toESM(require("@radix-ui/react-switch"), 1);
|
|
3539
3590
|
var React28 = __toESM(require("react"), 1);
|
|
3540
|
-
var
|
|
3591
|
+
var import_jsx_runtime37 = require("react/jsx-runtime");
|
|
3541
3592
|
var SWITCH_SIZES = {
|
|
3542
3593
|
sm: {
|
|
3543
3594
|
root: "h-4 w-9 border-border data-[state=unchecked]:bg-input",
|
|
@@ -3548,7 +3599,7 @@ var SWITCH_SIZES = {
|
|
|
3548
3599
|
thumb: "h-4 w-4 data-[state=checked]:translate-x-4 data-[state=unchecked]:translate-x-0"
|
|
3549
3600
|
}
|
|
3550
3601
|
};
|
|
3551
|
-
var Switch = React28.forwardRef(({ className, size = "md", ...props }, ref) => /* @__PURE__ */ (0,
|
|
3602
|
+
var Switch = React28.forwardRef(({ className, size = "md", ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
3552
3603
|
SwitchPrimitives.Root,
|
|
3553
3604
|
{
|
|
3554
3605
|
ref,
|
|
@@ -3559,7 +3610,7 @@ var Switch = React28.forwardRef(({ className, size = "md", ...props }, ref) => /
|
|
|
3559
3610
|
className
|
|
3560
3611
|
),
|
|
3561
3612
|
...props,
|
|
3562
|
-
children: /* @__PURE__ */ (0,
|
|
3613
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
3563
3614
|
SwitchPrimitives.Thumb,
|
|
3564
3615
|
{
|
|
3565
3616
|
"data-slot": "switch-thumb",
|
|
@@ -3574,14 +3625,14 @@ var Switch = React28.forwardRef(({ className, size = "md", ...props }, ref) => /
|
|
|
3574
3625
|
Switch.displayName = SwitchPrimitives.Root.displayName;
|
|
3575
3626
|
|
|
3576
3627
|
// src/organization-picker.tsx
|
|
3577
|
-
var
|
|
3628
|
+
var import_jsx_runtime38 = require("react/jsx-runtime");
|
|
3578
3629
|
function OrganizationAbbreviation({
|
|
3579
3630
|
abbreviation,
|
|
3580
3631
|
name,
|
|
3581
3632
|
className
|
|
3582
3633
|
}) {
|
|
3583
3634
|
const mark = abbreviation && abbreviation.trim() || name.trim().slice(0, 1) || "?";
|
|
3584
|
-
return /* @__PURE__ */ (0,
|
|
3635
|
+
return /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
|
3585
3636
|
"span",
|
|
3586
3637
|
{
|
|
3587
3638
|
className: cn(
|
|
@@ -3608,20 +3659,20 @@ function OrganizationPicker({
|
|
|
3608
3659
|
}) {
|
|
3609
3660
|
const active = organizations.find((o) => o.id === activeOrganizationId) ?? null;
|
|
3610
3661
|
const isDefault = (id) => !!defaultOrganizationId && id === defaultOrganizationId;
|
|
3611
|
-
return /* @__PURE__ */ (0,
|
|
3612
|
-
!hideHeading && /* @__PURE__ */ (0,
|
|
3613
|
-
loading ? /* @__PURE__ */ (0,
|
|
3614
|
-
/* @__PURE__ */ (0,
|
|
3615
|
-
/* @__PURE__ */ (0,
|
|
3616
|
-
] }) : loadFailed ? /* @__PURE__ */ (0,
|
|
3617
|
-
active ? /* @__PURE__ */ (0,
|
|
3662
|
+
return /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: cn("flex flex-col", className), "data-slot": "organization-picker", children: [
|
|
3663
|
+
!hideHeading && /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("p", { className: "px-2 py-1.5 text-[11px] font-semibold uppercase tracking-wide text-muted-foreground", children: "Organization" }),
|
|
3664
|
+
loading ? /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: "space-y-1 px-1 py-1", "aria-busy": "true", "aria-label": "Loading organizations", children: [
|
|
3665
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsx)(Skeleton, { className: "h-7 rounded-md" }),
|
|
3666
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsx)(Skeleton, { className: "h-7 rounded-md" })
|
|
3667
|
+
] }) : loadFailed ? /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("p", { className: "px-2 py-2 text-xs text-destructive", role: "alert", children: "Could not load organizations." }) : organizations.length === 0 ? /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("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__ */ (0, import_jsx_runtime38.jsxs)(import_jsx_runtime38.Fragment, { children: [
|
|
3668
|
+
active ? /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("p", { className: "px-2 pb-1 text-[11px] text-muted-foreground", "data-slot": "organization-picker-status", children: [
|
|
3618
3669
|
"Working in",
|
|
3619
3670
|
" ",
|
|
3620
|
-
/* @__PURE__ */ (0,
|
|
3621
|
-
] }) : /* @__PURE__ */ (0,
|
|
3622
|
-
/* @__PURE__ */ (0,
|
|
3671
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsx)("span", { className: "font-medium text-foreground", children: active.name })
|
|
3672
|
+
] }) : /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("p", { className: "px-2 pb-1 text-[11px] text-destructive", "data-slot": "organization-picker-status", children: "No organization selected \u2014 pick one below." }),
|
|
3673
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsx)("ul", { className: "max-h-72 overflow-y-auto", role: "listbox", "aria-label": "Organizations", children: organizations.map((org) => {
|
|
3623
3674
|
const isActive = org.id === activeOrganizationId;
|
|
3624
|
-
return /* @__PURE__ */ (0,
|
|
3675
|
+
return /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("li", { role: "none", children: /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)(
|
|
3625
3676
|
"button",
|
|
3626
3677
|
{
|
|
3627
3678
|
type: "button",
|
|
@@ -3638,7 +3689,7 @@ function OrganizationPicker({
|
|
|
3638
3689
|
itemClassName
|
|
3639
3690
|
),
|
|
3640
3691
|
children: [
|
|
3641
|
-
/* @__PURE__ */ (0,
|
|
3692
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
|
3642
3693
|
OrganizationAbbreviation,
|
|
3643
3694
|
{
|
|
3644
3695
|
abbreviation: org.abbreviation,
|
|
@@ -3649,9 +3700,9 @@ function OrganizationPicker({
|
|
|
3649
3700
|
)
|
|
3650
3701
|
}
|
|
3651
3702
|
),
|
|
3652
|
-
/* @__PURE__ */ (0,
|
|
3653
|
-
org.isPersonal && /* @__PURE__ */ (0,
|
|
3654
|
-
isDefault(org.id) && /* @__PURE__ */ (0,
|
|
3703
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsx)("span", { className: "min-w-0 flex-1 truncate", children: org.name }),
|
|
3704
|
+
org.isPersonal && /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("span", { className: "shrink-0 rounded-full bg-muted px-1.5 py-0.5 text-[10px] font-medium text-muted-foreground", children: "Personal" }),
|
|
3705
|
+
isDefault(org.id) && /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
|
3655
3706
|
StarIcon,
|
|
3656
3707
|
{
|
|
3657
3708
|
className: "h-[13px] w-[13px] shrink-0 fill-warning text-warning",
|
|
@@ -3660,14 +3711,14 @@ function OrganizationPicker({
|
|
|
3660
3711
|
role: "img"
|
|
3661
3712
|
}
|
|
3662
3713
|
),
|
|
3663
|
-
isActive && /* @__PURE__ */ (0,
|
|
3714
|
+
isActive && /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(LucideCheckIcon, { className: "h-[15px] w-[15px] shrink-0 text-primary" })
|
|
3664
3715
|
]
|
|
3665
3716
|
}
|
|
3666
3717
|
) }, org.id);
|
|
3667
3718
|
}) }),
|
|
3668
|
-
onSetDefault && /* @__PURE__ */ (0,
|
|
3669
|
-
/* @__PURE__ */ (0,
|
|
3670
|
-
/* @__PURE__ */ (0,
|
|
3719
|
+
onSetDefault && /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)(import_jsx_runtime38.Fragment, { children: [
|
|
3720
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: "my-1 border-t border-border" }),
|
|
3721
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
|
3671
3722
|
DefaultOrganizationSwitch,
|
|
3672
3723
|
{
|
|
3673
3724
|
active,
|
|
@@ -3685,17 +3736,17 @@ function DefaultOrganizationSwitch({
|
|
|
3685
3736
|
onChange
|
|
3686
3737
|
}) {
|
|
3687
3738
|
const disabled = !active;
|
|
3688
|
-
return /* @__PURE__ */ (0,
|
|
3739
|
+
return /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)(
|
|
3689
3740
|
"div",
|
|
3690
3741
|
{
|
|
3691
3742
|
className: "flex items-center justify-between gap-3 rounded-md px-2 py-1.5",
|
|
3692
3743
|
"data-slot": "organization-picker-default",
|
|
3693
3744
|
children: [
|
|
3694
|
-
/* @__PURE__ */ (0,
|
|
3695
|
-
/* @__PURE__ */ (0,
|
|
3696
|
-
/* @__PURE__ */ (0,
|
|
3745
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsxs)("div", { className: "min-w-0", children: [
|
|
3746
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsx)("p", { className: "text-xs font-medium text-foreground", children: "Set as my default" }),
|
|
3747
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsx)("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" })
|
|
3697
3748
|
] }),
|
|
3698
|
-
/* @__PURE__ */ (0,
|
|
3749
|
+
/* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
|
3699
3750
|
Switch,
|
|
3700
3751
|
{
|
|
3701
3752
|
checked,
|
|
@@ -3711,7 +3762,7 @@ function DefaultOrganizationSwitch({
|
|
|
3711
3762
|
|
|
3712
3763
|
// src/tabbed-bottom-sheet.tsx
|
|
3713
3764
|
var import_react4 = require("react");
|
|
3714
|
-
var
|
|
3765
|
+
var import_jsx_runtime39 = require("react/jsx-runtime");
|
|
3715
3766
|
function TabbedBottomSheet({
|
|
3716
3767
|
open,
|
|
3717
3768
|
onOpenChange,
|
|
@@ -3725,15 +3776,15 @@ function TabbedBottomSheet({
|
|
|
3725
3776
|
if (open) setSelectedTabId(null);
|
|
3726
3777
|
}
|
|
3727
3778
|
const selectedTab = selectedTabId ? tabs.find((tab) => tab.id === selectedTabId) : null;
|
|
3728
|
-
return /* @__PURE__ */ (0,
|
|
3779
|
+
return /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
|
|
3729
3780
|
BottomSheet,
|
|
3730
3781
|
{
|
|
3731
3782
|
open,
|
|
3732
3783
|
onOpenChange,
|
|
3733
3784
|
title,
|
|
3734
3785
|
size: "full",
|
|
3735
|
-
children: /* @__PURE__ */ (0,
|
|
3736
|
-
/* @__PURE__ */ (0,
|
|
3786
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)("div", { className: "matrx-mobile-sheet flex min-h-0 flex-1 flex-col", children: [
|
|
3787
|
+
/* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
|
|
3737
3788
|
BottomSheetHeader,
|
|
3738
3789
|
{
|
|
3739
3790
|
title: selectedTab ? selectedTab.label : title,
|
|
@@ -3741,19 +3792,19 @@ function TabbedBottomSheet({
|
|
|
3741
3792
|
onBack: () => setSelectedTabId(null)
|
|
3742
3793
|
}
|
|
3743
3794
|
),
|
|
3744
|
-
selectedTab ? /* @__PURE__ */ (0,
|
|
3795
|
+
selectedTab ? /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("div", { className: "flex min-h-0 flex-1 flex-col overflow-hidden pb-safe", children: selectedTab.content }) : /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(BottomSheetBody, { children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("ul", { className: "divide-y divide-border", children: tabs.map((tab) => {
|
|
3745
3796
|
const Icon2 = tab.icon;
|
|
3746
|
-
return /* @__PURE__ */ (0,
|
|
3797
|
+
return /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)(
|
|
3747
3798
|
"button",
|
|
3748
3799
|
{
|
|
3749
3800
|
type: "button",
|
|
3750
3801
|
onClick: () => setSelectedTabId(tab.id),
|
|
3751
3802
|
className: "flex w-full items-center gap-3 px-4 py-3.5 text-left transition-colors hover:bg-muted/60 active:bg-muted",
|
|
3752
3803
|
children: [
|
|
3753
|
-
Icon2 ? /* @__PURE__ */ (0,
|
|
3754
|
-
/* @__PURE__ */ (0,
|
|
3804
|
+
Icon2 ? /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(Icon2, { className: "h-5 w-5 shrink-0 text-muted-foreground" }) : null,
|
|
3805
|
+
/* @__PURE__ */ (0, import_jsx_runtime39.jsx)("span", { className: "min-w-0 flex-1 text-base text-foreground", children: tab.label }),
|
|
3755
3806
|
tab.trailing,
|
|
3756
|
-
/* @__PURE__ */ (0,
|
|
3807
|
+
/* @__PURE__ */ (0, import_jsx_runtime39.jsx)(ChevronRightIcon, { className: "h-5 w-5 shrink-0 text-muted-foreground" })
|
|
3757
3808
|
]
|
|
3758
3809
|
}
|
|
3759
3810
|
) }, tab.id);
|
|
@@ -3765,7 +3816,7 @@ function TabbedBottomSheet({
|
|
|
3765
3816
|
|
|
3766
3817
|
// src/table.tsx
|
|
3767
3818
|
var React29 = __toESM(require("react"), 1);
|
|
3768
|
-
var
|
|
3819
|
+
var import_jsx_runtime40 = require("react/jsx-runtime");
|
|
3769
3820
|
var TABLE_SIZES = {
|
|
3770
3821
|
sm: { head: "px-2", cell: "p-2" },
|
|
3771
3822
|
md: { head: "px-3", cell: "p-3" }
|
|
@@ -3776,7 +3827,7 @@ function useTableSize() {
|
|
|
3776
3827
|
}
|
|
3777
3828
|
var Table = React29.forwardRef(
|
|
3778
3829
|
({ className, size = "md", wrap = true, wrapperClassName, ...props }, ref) => {
|
|
3779
|
-
const table = /* @__PURE__ */ (0,
|
|
3830
|
+
const table = /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
|
|
3780
3831
|
"table",
|
|
3781
3832
|
{
|
|
3782
3833
|
ref,
|
|
@@ -3786,7 +3837,7 @@ var Table = React29.forwardRef(
|
|
|
3786
3837
|
...props
|
|
3787
3838
|
}
|
|
3788
3839
|
);
|
|
3789
|
-
return /* @__PURE__ */ (0,
|
|
3840
|
+
return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(TableSizeContext.Provider, { value: size, children: wrap ? /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
|
|
3790
3841
|
"div",
|
|
3791
3842
|
{
|
|
3792
3843
|
"data-slot": "table-wrapper",
|
|
@@ -3797,7 +3848,7 @@ var Table = React29.forwardRef(
|
|
|
3797
3848
|
}
|
|
3798
3849
|
);
|
|
3799
3850
|
Table.displayName = "Table";
|
|
3800
|
-
var TableHeader = React29.forwardRef(({ className, sticky = false, ...props }, ref) => /* @__PURE__ */ (0,
|
|
3851
|
+
var TableHeader = React29.forwardRef(({ className, sticky = false, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
|
|
3801
3852
|
"thead",
|
|
3802
3853
|
{
|
|
3803
3854
|
ref,
|
|
@@ -3811,7 +3862,7 @@ var TableHeader = React29.forwardRef(({ className, sticky = false, ...props }, r
|
|
|
3811
3862
|
}
|
|
3812
3863
|
));
|
|
3813
3864
|
TableHeader.displayName = "TableHeader";
|
|
3814
|
-
var TableBody = React29.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0,
|
|
3865
|
+
var TableBody = React29.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
|
|
3815
3866
|
"tbody",
|
|
3816
3867
|
{
|
|
3817
3868
|
ref,
|
|
@@ -3821,7 +3872,7 @@ var TableBody = React29.forwardRef(({ className, ...props }, ref) => /* @__PURE_
|
|
|
3821
3872
|
}
|
|
3822
3873
|
));
|
|
3823
3874
|
TableBody.displayName = "TableBody";
|
|
3824
|
-
var TableFooter = React29.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0,
|
|
3875
|
+
var TableFooter = React29.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
|
|
3825
3876
|
"tfoot",
|
|
3826
3877
|
{
|
|
3827
3878
|
ref,
|
|
@@ -3834,7 +3885,7 @@ var TableFooter = React29.forwardRef(({ className, ...props }, ref) => /* @__PUR
|
|
|
3834
3885
|
}
|
|
3835
3886
|
));
|
|
3836
3887
|
TableFooter.displayName = "TableFooter";
|
|
3837
|
-
var TableRow = React29.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0,
|
|
3888
|
+
var TableRow = React29.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
|
|
3838
3889
|
"tr",
|
|
3839
3890
|
{
|
|
3840
3891
|
ref,
|
|
@@ -3849,7 +3900,7 @@ var TableRow = React29.forwardRef(({ className, ...props }, ref) => /* @__PURE__
|
|
|
3849
3900
|
TableRow.displayName = "TableRow";
|
|
3850
3901
|
var TableHead = React29.forwardRef(({ className, ...props }, ref) => {
|
|
3851
3902
|
const size = useTableSize();
|
|
3852
|
-
return /* @__PURE__ */ (0,
|
|
3903
|
+
return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
|
|
3853
3904
|
"th",
|
|
3854
3905
|
{
|
|
3855
3906
|
ref,
|
|
@@ -3866,7 +3917,7 @@ var TableHead = React29.forwardRef(({ className, ...props }, ref) => {
|
|
|
3866
3917
|
TableHead.displayName = "TableHead";
|
|
3867
3918
|
var TableCell = React29.forwardRef(({ className, ...props }, ref) => {
|
|
3868
3919
|
const size = useTableSize();
|
|
3869
|
-
return /* @__PURE__ */ (0,
|
|
3920
|
+
return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
|
|
3870
3921
|
"td",
|
|
3871
3922
|
{
|
|
3872
3923
|
ref,
|
|
@@ -3881,7 +3932,7 @@ var TableCell = React29.forwardRef(({ className, ...props }, ref) => {
|
|
|
3881
3932
|
);
|
|
3882
3933
|
});
|
|
3883
3934
|
TableCell.displayName = "TableCell";
|
|
3884
|
-
var TableCaption = React29.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0,
|
|
3935
|
+
var TableCaption = React29.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
|
|
3885
3936
|
"caption",
|
|
3886
3937
|
{
|
|
3887
3938
|
ref,
|
|
@@ -3895,10 +3946,10 @@ TableCaption.displayName = "TableCaption";
|
|
|
3895
3946
|
// src/tabs.tsx
|
|
3896
3947
|
var TabsPrimitive = __toESM(require("@radix-ui/react-tabs"), 1);
|
|
3897
3948
|
var React30 = __toESM(require("react"), 1);
|
|
3898
|
-
var
|
|
3949
|
+
var import_jsx_runtime41 = require("react/jsx-runtime");
|
|
3899
3950
|
var Tabs = TabsPrimitive.Root;
|
|
3900
3951
|
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";
|
|
3901
|
-
var TabsList = React30.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0,
|
|
3952
|
+
var TabsList = React30.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
|
|
3902
3953
|
TabsPrimitive.List,
|
|
3903
3954
|
{
|
|
3904
3955
|
ref,
|
|
@@ -3911,7 +3962,7 @@ var TabsList = React30.forwardRef(({ className, ...props }, ref) => /* @__PURE__
|
|
|
3911
3962
|
}
|
|
3912
3963
|
));
|
|
3913
3964
|
TabsList.displayName = TabsPrimitive.List.displayName;
|
|
3914
|
-
var TabsTrigger = React30.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0,
|
|
3965
|
+
var TabsTrigger = React30.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
|
|
3915
3966
|
TabsPrimitive.Trigger,
|
|
3916
3967
|
{
|
|
3917
3968
|
ref,
|
|
@@ -3925,7 +3976,7 @@ var TabsTrigger = React30.forwardRef(({ className, ...props }, ref) => /* @__PUR
|
|
|
3925
3976
|
}
|
|
3926
3977
|
));
|
|
3927
3978
|
TabsTrigger.displayName = TabsPrimitive.Trigger.displayName;
|
|
3928
|
-
var TabsTriggerCore = React30.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0,
|
|
3979
|
+
var TabsTriggerCore = React30.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
|
|
3929
3980
|
TabsPrimitive.Trigger,
|
|
3930
3981
|
{
|
|
3931
3982
|
ref,
|
|
@@ -3935,7 +3986,7 @@ var TabsTriggerCore = React30.forwardRef(({ className, ...props }, ref) => /* @_
|
|
|
3935
3986
|
}
|
|
3936
3987
|
));
|
|
3937
3988
|
TabsTriggerCore.displayName = TabsPrimitive.Trigger.displayName;
|
|
3938
|
-
var TabsContent = React30.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0,
|
|
3989
|
+
var TabsContent = React30.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
|
|
3939
3990
|
TabsPrimitive.Content,
|
|
3940
3991
|
{
|
|
3941
3992
|
ref,
|
|
@@ -3952,7 +4003,7 @@ TabsContent.displayName = TabsPrimitive.Content.displayName;
|
|
|
3952
4003
|
|
|
3953
4004
|
// src/textarea.tsx
|
|
3954
4005
|
var React31 = __toESM(require("react"), 1);
|
|
3955
|
-
var
|
|
4006
|
+
var import_jsx_runtime42 = require("react/jsx-runtime");
|
|
3956
4007
|
var FILL_HEIGHT_REGEX = /(?:^|\s)(h-full|h-dvh|flex-1|grow)(?:\s|$)/;
|
|
3957
4008
|
var FILL_WIDTH_REGEX = /(?:^|\s)(w-full|w-screen)(?:\s|$)/;
|
|
3958
4009
|
function getStretchClasses(className) {
|
|
@@ -4005,7 +4056,7 @@ var Textarea = React31.forwardRef(
|
|
|
4005
4056
|
const stretchClasses = getStretchClasses(className);
|
|
4006
4057
|
const needsWrapper = Boolean(wrapperClassName || stretchClasses);
|
|
4007
4058
|
useAutoGrow(ref, props.value, autoGrow, minHeight, maxHeight);
|
|
4008
|
-
const textarea = /* @__PURE__ */ (0,
|
|
4059
|
+
const textarea = /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
4009
4060
|
"textarea",
|
|
4010
4061
|
{
|
|
4011
4062
|
ref: callback,
|
|
@@ -4021,7 +4072,7 @@ var Textarea = React31.forwardRef(
|
|
|
4021
4072
|
}
|
|
4022
4073
|
);
|
|
4023
4074
|
if (!needsWrapper) return textarea;
|
|
4024
|
-
return /* @__PURE__ */ (0,
|
|
4075
|
+
return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("div", { className: cn(stretchClasses, wrapperClassName), children: textarea });
|
|
4025
4076
|
}
|
|
4026
4077
|
);
|
|
4027
4078
|
Textarea.displayName = "Textarea";
|
|
@@ -4029,7 +4080,7 @@ var BasicTextarea = React31.forwardRef(
|
|
|
4029
4080
|
({ className, autoGrow, minHeight, maxHeight, ...props }, forwarded) => {
|
|
4030
4081
|
const { ref, callback } = useMergedTextareaRef(forwarded);
|
|
4031
4082
|
useAutoGrow(ref, props.value, autoGrow, minHeight, maxHeight);
|
|
4032
|
-
return /* @__PURE__ */ (0,
|
|
4083
|
+
return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
4033
4084
|
"textarea",
|
|
4034
4085
|
{
|
|
4035
4086
|
ref: callback,
|
|
@@ -4059,13 +4110,13 @@ var TextareaWithPrefix = React31.forwardRef(
|
|
|
4059
4110
|
}, forwarded) => {
|
|
4060
4111
|
const { ref, callback } = useMergedTextareaRef(forwarded);
|
|
4061
4112
|
useAutoGrow(ref, props.value, autoGrow, minHeight, maxHeight);
|
|
4062
|
-
return /* @__PURE__ */ (0,
|
|
4113
|
+
return /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(
|
|
4063
4114
|
"div",
|
|
4064
4115
|
{
|
|
4065
4116
|
className: cn("relative", getStretchClasses(className), wrapperClassName),
|
|
4066
4117
|
children: [
|
|
4067
|
-
prefix ? /* @__PURE__ */ (0,
|
|
4068
|
-
/* @__PURE__ */ (0,
|
|
4118
|
+
prefix ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("div", { className: "pointer-events-none absolute left-3 top-3 z-10 text-muted-foreground", children: prefix }) : null,
|
|
4119
|
+
/* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
4069
4120
|
"textarea",
|
|
4070
4121
|
{
|
|
4071
4122
|
ref: callback,
|
|
@@ -4145,13 +4196,13 @@ function useScrollFade() {
|
|
|
4145
4196
|
// src/hover-card.tsx
|
|
4146
4197
|
var HoverCardPrimitive = __toESM(require("@radix-ui/react-hover-card"), 1);
|
|
4147
4198
|
var React32 = __toESM(require("react"), 1);
|
|
4148
|
-
var
|
|
4199
|
+
var import_jsx_runtime43 = require("react/jsx-runtime");
|
|
4149
4200
|
var HoverCard = HoverCardPrimitive.Root;
|
|
4150
4201
|
var HoverCardTrigger = HoverCardPrimitive.Trigger;
|
|
4151
4202
|
var HoverCardContent = React32.forwardRef(
|
|
4152
4203
|
({ className, align = "center", sideOffset = 4, container, animated = true, ...props }, ref) => {
|
|
4153
4204
|
const resolved = usePortalContainer(container);
|
|
4154
|
-
return /* @__PURE__ */ (0,
|
|
4205
|
+
return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(HoverCardPrimitive.Portal, { container: resolved ?? null, children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
|
|
4155
4206
|
HoverCardPrimitive.Content,
|
|
4156
4207
|
{
|
|
4157
4208
|
ref,
|
|
@@ -4173,7 +4224,7 @@ HoverCardContent.displayName = HoverCardPrimitive.Content.displayName;
|
|
|
4173
4224
|
// src/radio-group.tsx
|
|
4174
4225
|
var RadioGroupPrimitive = __toESM(require("@radix-ui/react-radio-group"), 1);
|
|
4175
4226
|
var React33 = __toESM(require("react"), 1);
|
|
4176
|
-
var
|
|
4227
|
+
var import_jsx_runtime44 = require("react/jsx-runtime");
|
|
4177
4228
|
var RadioGroupSizeContext = React33.createContext("md");
|
|
4178
4229
|
var CONTROL_CLASSES = {
|
|
4179
4230
|
sm: "h-3.5 w-3.5",
|
|
@@ -4185,7 +4236,7 @@ var DOT_CLASSES = {
|
|
|
4185
4236
|
md: "h-1.5 w-1.5",
|
|
4186
4237
|
lg: "h-2 w-2"
|
|
4187
4238
|
};
|
|
4188
|
-
var RadioGroup3 = React33.forwardRef(({ className, size = "md", ...props }, ref) => /* @__PURE__ */ (0,
|
|
4239
|
+
var RadioGroup3 = React33.forwardRef(({ className, size = "md", ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(RadioGroupSizeContext.Provider, { value: size, children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
|
|
4189
4240
|
RadioGroupPrimitive.Root,
|
|
4190
4241
|
{
|
|
4191
4242
|
ref,
|
|
@@ -4198,7 +4249,7 @@ RadioGroup3.displayName = RadioGroupPrimitive.Root.displayName;
|
|
|
4198
4249
|
var RadioGroupItem = React33.forwardRef(({ className, size, ...props }, ref) => {
|
|
4199
4250
|
const groupSize = React33.useContext(RadioGroupSizeContext);
|
|
4200
4251
|
const resolved = size ?? groupSize;
|
|
4201
|
-
return /* @__PURE__ */ (0,
|
|
4252
|
+
return /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
|
|
4202
4253
|
RadioGroupPrimitive.Item,
|
|
4203
4254
|
{
|
|
4204
4255
|
ref,
|
|
@@ -4215,7 +4266,7 @@ var RadioGroupItem = React33.forwardRef(({ className, size, ...props }, ref) =>
|
|
|
4215
4266
|
className
|
|
4216
4267
|
),
|
|
4217
4268
|
...props,
|
|
4218
|
-
children: /* @__PURE__ */ (0,
|
|
4269
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(RadioGroupPrimitive.Indicator, { className: "flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
|
|
4219
4270
|
"div",
|
|
4220
4271
|
{
|
|
4221
4272
|
className: cn("rounded-full bg-primary-foreground", DOT_CLASSES[resolved])
|
|
@@ -4228,7 +4279,7 @@ RadioGroupItem.displayName = RadioGroupPrimitive.Item.displayName;
|
|
|
4228
4279
|
|
|
4229
4280
|
// src/resizable.tsx
|
|
4230
4281
|
var import_react_resizable_panels = require("react-resizable-panels");
|
|
4231
|
-
var
|
|
4282
|
+
var import_jsx_runtime45 = require("react/jsx-runtime");
|
|
4232
4283
|
var HANDLE_SIZES = {
|
|
4233
4284
|
xs: "w-0.5 [&[aria-orientation=horizontal]]:h-0.5 [&[aria-orientation=horizontal]]:w-full",
|
|
4234
4285
|
sm: "w-1 [&[aria-orientation=horizontal]]:h-1 [&[aria-orientation=horizontal]]:w-full",
|
|
@@ -4242,7 +4293,7 @@ var HANDLE_SIZES = {
|
|
|
4242
4293
|
var ResizablePanelGroup = ({
|
|
4243
4294
|
className,
|
|
4244
4295
|
...props
|
|
4245
|
-
}) => /* @__PURE__ */ (0,
|
|
4296
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
|
|
4246
4297
|
import_react_resizable_panels.Group,
|
|
4247
4298
|
{
|
|
4248
4299
|
"data-slot": "resizable-group",
|
|
@@ -4257,7 +4308,7 @@ var ResizableHandle = ({
|
|
|
4257
4308
|
size = "xs",
|
|
4258
4309
|
className,
|
|
4259
4310
|
...props
|
|
4260
|
-
}) => /* @__PURE__ */ (0,
|
|
4311
|
+
}) => /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
|
|
4261
4312
|
import_react_resizable_panels.Separator,
|
|
4262
4313
|
{
|
|
4263
4314
|
"data-slot": "resizable-handle",
|
|
@@ -4277,7 +4328,7 @@ var ResizableHandle = ({
|
|
|
4277
4328
|
className
|
|
4278
4329
|
),
|
|
4279
4330
|
...props,
|
|
4280
|
-
children: withHandle ? /* @__PURE__ */ (0,
|
|
4331
|
+
children: withHandle ? /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("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__ */ (0, import_jsx_runtime45.jsx)(DragHandleDots2Icon, { className: "h-2.5 w-2.5 group-aria-[orientation=horizontal]/handle:rotate-90" }) }) : null
|
|
4281
4332
|
}
|
|
4282
4333
|
);
|
|
4283
4334
|
ResizableHandle.displayName = "ResizableHandle";
|
|
@@ -4285,7 +4336,7 @@ ResizableHandle.displayName = "ResizableHandle";
|
|
|
4285
4336
|
// src/slider.tsx
|
|
4286
4337
|
var SliderPrimitive = __toESM(require("@radix-ui/react-slider"), 1);
|
|
4287
4338
|
var React34 = __toESM(require("react"), 1);
|
|
4288
|
-
var
|
|
4339
|
+
var import_jsx_runtime46 = require("react/jsx-runtime");
|
|
4289
4340
|
var TRACK_CLASSES = {
|
|
4290
4341
|
sm: "h-1",
|
|
4291
4342
|
md: "h-1.5",
|
|
@@ -4301,7 +4352,7 @@ var Slider = React34.forwardRef(({ className, size = "md", ...props }, ref) => {
|
|
|
4301
4352
|
1,
|
|
4302
4353
|
(props.value ?? props.defaultValue ?? [0]).length
|
|
4303
4354
|
);
|
|
4304
|
-
return /* @__PURE__ */ (0,
|
|
4355
|
+
return /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)(
|
|
4305
4356
|
SliderPrimitive.Root,
|
|
4306
4357
|
{
|
|
4307
4358
|
ref,
|
|
@@ -4313,7 +4364,7 @@ var Slider = React34.forwardRef(({ className, size = "md", ...props }, ref) => {
|
|
|
4313
4364
|
),
|
|
4314
4365
|
...props,
|
|
4315
4366
|
children: [
|
|
4316
|
-
/* @__PURE__ */ (0,
|
|
4367
|
+
/* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
|
|
4317
4368
|
SliderPrimitive.Track,
|
|
4318
4369
|
{
|
|
4319
4370
|
"data-slot": "slider-track",
|
|
@@ -4322,7 +4373,7 @@ var Slider = React34.forwardRef(({ className, size = "md", ...props }, ref) => {
|
|
|
4322
4373
|
TRACK_CLASSES[size],
|
|
4323
4374
|
"data-[orientation=vertical]:h-full data-[orientation=vertical]:w-1.5"
|
|
4324
4375
|
),
|
|
4325
|
-
children: /* @__PURE__ */ (0,
|
|
4376
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
|
|
4326
4377
|
SliderPrimitive.Range,
|
|
4327
4378
|
{
|
|
4328
4379
|
"data-slot": "slider-range",
|
|
@@ -4331,7 +4382,7 @@ var Slider = React34.forwardRef(({ className, size = "md", ...props }, ref) => {
|
|
|
4331
4382
|
)
|
|
4332
4383
|
}
|
|
4333
4384
|
),
|
|
4334
|
-
Array.from({ length: thumbCount }, (_, index) => /* @__PURE__ */ (0,
|
|
4385
|
+
Array.from({ length: thumbCount }, (_, index) => /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
|
|
4335
4386
|
SliderPrimitive.Thumb,
|
|
4336
4387
|
{
|
|
4337
4388
|
"data-slot": "slider-thumb",
|
|
@@ -4359,7 +4410,7 @@ var ToggleGroupPrimitive = __toESM(require("@radix-ui/react-toggle-group"), 1);
|
|
|
4359
4410
|
var TogglePrimitive = __toESM(require("@radix-ui/react-toggle"), 1);
|
|
4360
4411
|
var import_class_variance_authority6 = require("class-variance-authority");
|
|
4361
4412
|
var React35 = __toESM(require("react"), 1);
|
|
4362
|
-
var
|
|
4413
|
+
var import_jsx_runtime47 = require("react/jsx-runtime");
|
|
4363
4414
|
var toggleVariants = (0, import_class_variance_authority6.cva)(
|
|
4364
4415
|
"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",
|
|
4365
4416
|
{
|
|
@@ -4380,7 +4431,7 @@ var toggleVariants = (0, import_class_variance_authority6.cva)(
|
|
|
4380
4431
|
}
|
|
4381
4432
|
}
|
|
4382
4433
|
);
|
|
4383
|
-
var Toggle = React35.forwardRef(({ className, variant, size, ...props }, ref) => /* @__PURE__ */ (0,
|
|
4434
|
+
var Toggle = React35.forwardRef(({ className, variant, size, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
|
|
4384
4435
|
TogglePrimitive.Root,
|
|
4385
4436
|
{
|
|
4386
4437
|
ref,
|
|
@@ -4391,20 +4442,20 @@ var Toggle = React35.forwardRef(({ className, variant, size, ...props }, ref) =>
|
|
|
4391
4442
|
));
|
|
4392
4443
|
Toggle.displayName = TogglePrimitive.Root.displayName;
|
|
4393
4444
|
var ToggleGroupContext = React35.createContext({ size: "default", variant: "default" });
|
|
4394
|
-
var ToggleGroup = React35.forwardRef(({ className, variant, size, children, ...props }, ref) => /* @__PURE__ */ (0,
|
|
4445
|
+
var ToggleGroup = React35.forwardRef(({ className, variant, size, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
|
|
4395
4446
|
ToggleGroupPrimitive.Root,
|
|
4396
4447
|
{
|
|
4397
4448
|
ref,
|
|
4398
4449
|
"data-slot": "toggle-group",
|
|
4399
4450
|
className: cn("flex items-center justify-center gap-1", className),
|
|
4400
4451
|
...props,
|
|
4401
|
-
children: /* @__PURE__ */ (0,
|
|
4452
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(ToggleGroupContext.Provider, { value: { variant, size }, children })
|
|
4402
4453
|
}
|
|
4403
4454
|
));
|
|
4404
4455
|
ToggleGroup.displayName = ToggleGroupPrimitive.Root.displayName;
|
|
4405
4456
|
var ToggleGroupItem = React35.forwardRef(({ className, children, variant, size, ...props }, ref) => {
|
|
4406
4457
|
const context = React35.useContext(ToggleGroupContext);
|
|
4407
|
-
return /* @__PURE__ */ (0,
|
|
4458
|
+
return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
|
|
4408
4459
|
ToggleGroupPrimitive.Item,
|
|
4409
4460
|
{
|
|
4410
4461
|
ref,
|
|
@@ -4426,13 +4477,13 @@ ToggleGroupItem.displayName = ToggleGroupPrimitive.Item.displayName;
|
|
|
4426
4477
|
// src/tooltip.tsx
|
|
4427
4478
|
var TooltipPrimitive = __toESM(require("@radix-ui/react-tooltip"), 1);
|
|
4428
4479
|
var React36 = __toESM(require("react"), 1);
|
|
4429
|
-
var
|
|
4480
|
+
var import_jsx_runtime48 = require("react/jsx-runtime");
|
|
4430
4481
|
var TooltipProvider = TooltipPrimitive.Provider;
|
|
4431
4482
|
var Tooltip = TooltipPrimitive.Root;
|
|
4432
4483
|
var TooltipTrigger = TooltipPrimitive.Trigger;
|
|
4433
4484
|
var TooltipContent = React36.forwardRef(({ className, sideOffset = 4, container, animated = true, ...props }, ref) => {
|
|
4434
4485
|
const resolved = usePortalContainer(container);
|
|
4435
|
-
return /* @__PURE__ */ (0,
|
|
4486
|
+
return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(TooltipPrimitive.Portal, { container: resolved ?? null, children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
4436
4487
|
TooltipPrimitive.Content,
|
|
4437
4488
|
{
|
|
4438
4489
|
ref,
|