@inf-monkeys-tech/monkeys-design 1.0.103 → 1.0.104

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.
@@ -34,6 +34,9 @@ import * as ToggleGroupPrimitive from '@radix-ui/react-toggle-group';
34
34
  function cn(...parts) {
35
35
  return twMerge(parts.filter(Boolean).join(" "));
36
36
  }
37
+ function hasRenderableNode(node) {
38
+ return node !== void 0 && node !== null && typeof node !== "boolean";
39
+ }
37
40
  var Avatar = React15.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
38
41
  AvatarPrimitive.Root,
39
42
  {
@@ -285,6 +288,1591 @@ function ButtonGroupSeparator({
285
288
  }
286
289
  );
287
290
  }
291
+
292
+ // src/components/base/theme.ts
293
+ var emptyStyles = {};
294
+ var motionBase = "motion-safe:transition motion-safe:duration-300 motion-safe:ease-out";
295
+ var motionInteractive = "motion-safe:transition-all motion-safe:duration-300 motion-safe:ease-out";
296
+ var motionTransform = "motion-safe:transition-transform motion-safe:duration-300 motion-safe:ease-out";
297
+ var tableScrollbarChrome = cn(
298
+ "[scrollbar-width:thin]",
299
+ "[scrollbar-color:hsl(var(--muted-foreground)/0.45)_transparent]",
300
+ "[&::-webkit-scrollbar]:h-2 [&::-webkit-scrollbar]:w-2",
301
+ "[&::-webkit-scrollbar-button]:hidden [&::-webkit-scrollbar-button]:h-0 [&::-webkit-scrollbar-button]:w-0 [&::-webkit-scrollbar-button]:bg-transparent",
302
+ "[&::-webkit-scrollbar-button:single-button]:hidden [&::-webkit-scrollbar-button:single-button]:h-0 [&::-webkit-scrollbar-button:single-button]:w-0",
303
+ "[&::-webkit-scrollbar-button:double-button]:hidden [&::-webkit-scrollbar-button:double-button]:h-0 [&::-webkit-scrollbar-button:double-button]:w-0",
304
+ "[&::-webkit-scrollbar-corner]:bg-transparent",
305
+ "[&::-webkit-scrollbar-track]:bg-transparent",
306
+ "[&:has(thead.sticky)::-webkit-scrollbar-track]:mt-[var(--base-table-header-height)]",
307
+ "[&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar-thumb]:bg-muted-foreground/40",
308
+ "hover:[&::-webkit-scrollbar-thumb]:bg-muted-foreground/55"
309
+ );
310
+ var tableStickyHeaderCells = cn(
311
+ "[&.sticky_th]:sticky [&.sticky_th]:top-0 [&.sticky_th]:z-[2]",
312
+ "[&.sticky_th]:bg-[var(--base-table-sticky-header-bg)]",
313
+ "[&.sticky_th]:shadow-[inset_0_-1px_0_var(--base-table-header-separator)]"
314
+ );
315
+ var baseSlots = {
316
+ buttonBase: cn(
317
+ "group/button inline-flex min-w-0 items-center justify-center gap-2 rounded-md border px-3 text-sm font-medium focus-visible:outline-none",
318
+ "cursor-pointer disabled:!cursor-not-allowed",
319
+ motionInteractive
320
+ ),
321
+ buttonDefault: "border-border bg-background text-foreground hover:bg-accent/60",
322
+ buttonPrimary: "border-primary/20 bg-primary/10 text-primary hover:bg-primary/15",
323
+ buttonSuccess: "border-[hsl(var(--success,142_72%_29%)_/_0.30)] bg-[hsl(var(--success,142_72%_29%)_/_0.10)] text-[hsl(var(--success,142_72%_29%))] hover:bg-[hsl(var(--success,142_72%_29%)_/_0.15)]",
324
+ buttonWarning: "border-[hsl(var(--warning,45_93%_47%)_/_0.30)] bg-[hsl(var(--warning,45_93%_47%)_/_0.10)] text-[hsl(var(--warning-foreground,28_73%_26%))] hover:bg-[hsl(var(--warning,45_93%_47%)_/_0.15)]",
325
+ buttonDanger: "border-destructive/20 bg-destructive/10 text-destructive-text hover:bg-destructive/15",
326
+ buttonMuted: "border-border/60 bg-muted/45 text-muted-foreground hover:bg-muted/70 hover:text-foreground",
327
+ buttonActive: "border-primary/35 bg-primary/10 text-primary",
328
+ buttonDisabled: "!cursor-not-allowed opacity-60",
329
+ buttonIconOnly: "w-9 px-0",
330
+ buttonIcon: "inline-flex h-4 w-4 shrink-0 items-center justify-center",
331
+ buttonLabel: "min-w-0 truncate",
332
+ badgeBase: cn(
333
+ "inline-flex max-w-full items-center gap-1.5 rounded-full border px-2 py-0.5 text-xs font-medium",
334
+ motionBase
335
+ ),
336
+ badgeDefault: "border-border/60 bg-background text-foreground",
337
+ badgePrimary: "border-primary/30 bg-primary/10 text-primary",
338
+ badgeSuccess: "border-[hsl(var(--success,142_72%_29%)_/_0.30)] bg-[hsl(var(--success,142_72%_29%)_/_0.10)] text-[hsl(var(--success,142_72%_29%))]",
339
+ badgeWarning: "border-[hsl(var(--warning,45_93%_47%)_/_0.30)] bg-[hsl(var(--warning,45_93%_47%)_/_0.10)] text-[hsl(var(--warning-foreground,28_73%_26%))]",
340
+ badgeDanger: "border-destructive/30 bg-destructive/10 text-destructive-text",
341
+ badgeMuted: "border-border/60 bg-muted text-muted-foreground",
342
+ badgeIcon: "inline-flex h-3.5 w-3.5 shrink-0 items-center justify-center",
343
+ badgeLabel: "min-w-0 truncate",
344
+ textRoot: "min-w-0 break-words leading-6",
345
+ textSizeXs: "text-xs",
346
+ textSizeSm: "text-sm",
347
+ textSizeMd: "text-base",
348
+ textSizeLg: "text-lg",
349
+ textSizeXl: "text-xl",
350
+ typographyToneDefault: "text-foreground",
351
+ typographyToneMuted: "text-muted-foreground",
352
+ typographyTonePrimary: "text-primary",
353
+ typographyToneSuccess: "text-emerald-700 dark:text-emerald-400",
354
+ typographyToneWarning: "text-amber-700 dark:text-amber-400",
355
+ typographyToneDanger: "text-destructive-text",
356
+ typographyToneInherit: "text-inherit",
357
+ headingRoot: "min-w-0 break-words font-semibold tracking-tight",
358
+ headingSizeXs: "text-sm leading-5",
359
+ headingSizeSm: "text-base leading-6",
360
+ headingSizeMd: "text-lg leading-7",
361
+ headingSizeLg: "text-xl leading-7",
362
+ headingSizeXl: "text-2xl leading-8",
363
+ headingSize2xl: "text-3xl leading-9",
364
+ linkRoot: "inline break-words underline decoration-current/40 underline-offset-4 hover:decoration-current focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/30",
365
+ codeInline: "rounded border border-border/70 bg-muted/60 px-1.5 py-0.5 font-mono text-[0.875em] leading-[1.45] text-foreground",
366
+ codeBlock: "m-0 max-w-full overflow-x-auto rounded-md border border-border/70 bg-muted/60 p-4 text-foreground",
367
+ codeContent: "font-mono text-sm leading-6",
368
+ kbdRoot: "inline-flex min-h-5 items-center rounded border border-border bg-muted/70 px-1.5 font-mono text-[0.75em] font-medium leading-5 text-foreground shadow-[inset_0_-1px_0_hsl(var(--monkeys-color-border))]",
369
+ listRoot: "m-0 min-w-0 list-outside break-words ps-5 text-foreground",
370
+ listSpacingCompact: "[&>li+li]:mt-1",
371
+ listSpacingDefault: "[&>li+li]:mt-2",
372
+ listSpacingRelaxed: "[&>li+li]:mt-3",
373
+ listMarkerNone: "list-none ps-0",
374
+ listMarkerDisc: "list-disc",
375
+ listMarkerCircle: "list-[circle]",
376
+ listMarkerSquare: "list-[square]",
377
+ listMarkerDecimal: "list-decimal",
378
+ listMarkerLowerAlpha: "list-[lower-alpha]",
379
+ listMarkerUpperAlpha: "list-[upper-alpha]",
380
+ listItem: "min-w-0 ps-1 leading-6 marker:text-muted-foreground",
381
+ stackRoot: "flex min-w-0 flex-col",
382
+ inlineRoot: "flex min-w-0 flex-row",
383
+ gridRoot: "grid min-w-0",
384
+ containerRoot: "mx-auto w-full min-w-0",
385
+ aspectRatioRoot: "relative min-w-0 overflow-hidden [&>*]:h-full [&>*]:w-full",
386
+ spinnerRoot: "inline-flex shrink-0 items-center justify-center text-current align-middle",
387
+ spinnerIndicator: "h-5 w-5 rounded-full border-2 border-current border-r-transparent motion-safe:animate-spin motion-reduce:animate-none",
388
+ visuallyHiddenRoot: "sr-only",
389
+ visuallyHiddenFocusable: "focus:not-sr-only focus:fixed focus:left-4 focus:top-4 focus:z-[1000] focus:rounded-md focus:bg-background focus:px-4 focus:py-2 focus:text-foreground focus:shadow-lg focus:outline-none focus:ring-2 focus:ring-ring focus-within:not-sr-only focus-within:fixed focus-within:left-4 focus-within:top-4 focus-within:z-[1000] focus-within:rounded-md focus-within:bg-background focus-within:px-4 focus-within:py-2 focus-within:text-foreground focus-within:shadow-lg focus-within:ring-2 focus-within:ring-ring",
390
+ fieldsetRoot: "min-w-0 border-0 p-0 text-foreground",
391
+ fieldsetLegend: "min-w-0 text-sm font-semibold leading-6 text-foreground",
392
+ fieldsetDescription: "mt-1 text-sm leading-5 text-muted-foreground",
393
+ fieldsetError: "mt-1 text-sm leading-5 text-destructive-text",
394
+ fieldsetContent: "mt-3 grid min-w-0 gap-3",
395
+ stepsRoot: "m-0 min-w-0 list-none p-0 text-foreground",
396
+ stepsHorizontal: "flex w-full max-w-full items-start overflow-x-auto pb-2",
397
+ stepsVertical: "grid",
398
+ stepsItem: "relative min-w-0",
399
+ stepsItemHorizontal: "flex min-w-52 flex-1 items-start",
400
+ stepsItemVertical: "pb-6 last:pb-0",
401
+ stepsTrigger: "flex min-w-0 flex-1 items-start gap-3 rounded-md border-0 bg-transparent p-1 text-start text-inherit",
402
+ stepsTriggerInteractive: "cursor-pointer hover:bg-accent/50 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 motion-safe:transition motion-safe:duration-300 motion-safe:ease-out",
403
+ stepsTriggerDisabled: "!cursor-not-allowed opacity-60",
404
+ stepsIndicator: "relative z-[1] inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-full border text-xs font-semibold",
405
+ stepsIndicatorPending: "border-border bg-background text-muted-foreground",
406
+ stepsIndicatorCurrent: "border-primary/50 bg-primary/10 text-primary",
407
+ stepsIndicatorCompleted: "border-primary bg-primary text-primary-foreground",
408
+ stepsIndicatorError: "border-destructive bg-destructive text-destructive-foreground",
409
+ stepsContent: "grid min-w-0 gap-1 pt-0.5",
410
+ stepsLabel: "min-w-0 break-words text-sm font-medium leading-5",
411
+ stepsDescription: "min-w-0 break-words text-sm leading-5 text-muted-foreground",
412
+ stepsStatus: "sr-only",
413
+ stepsConnector: "shrink-0 bg-border",
414
+ stepsConnectorHorizontal: "mt-3.5 h-px w-8",
415
+ stepsConnectorVertical: "absolute bottom-0 top-8 start-3.5 w-px -translate-x-1/2",
416
+ stepsConnectorCompleted: "bg-primary/60",
417
+ stepsConnectorError: "bg-destructive/60",
418
+ scrollAreaViewport: "min-h-0 min-w-0",
419
+ numberInputControl: "tabular-nums",
420
+ numberInputStepControls: "me-1 flex shrink-0 self-stretch overflow-hidden border-s border-border",
421
+ numberInputStepButton: "flex min-h-6 w-7 cursor-pointer items-center justify-center border-0 bg-transparent px-1 text-xs leading-none text-muted-foreground hover:bg-accent hover:text-foreground focus-visible:z-[1] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring disabled:!cursor-not-allowed disabled:opacity-40",
422
+ passwordInputControl: "pe-2",
423
+ passwordInputToggle: "me-1 inline-flex min-h-7 shrink-0 cursor-pointer items-center justify-center rounded px-2 text-xs font-medium text-muted-foreground hover:bg-accent hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:!cursor-not-allowed disabled:opacity-40",
424
+ inputGroupRoot: cn(
425
+ "relative flex min-w-0 items-stretch overflow-hidden rounded-md border border-border bg-background text-foreground focus-within:border-primary/50 focus-within:ring-2 focus-within:ring-ring/30",
426
+ motionBase
427
+ ),
428
+ inputGroupInvalid: "border-destructive/55 focus-within:border-destructive/70 focus-within:ring-destructive/25",
429
+ inputGroupDisabled: "!cursor-not-allowed bg-muted/35",
430
+ inputGroupContent: "flex min-w-0 flex-1 items-stretch [&>*]:min-w-0",
431
+ inputGroupStartElement: "inline-flex shrink-0 items-center justify-center ps-3 pe-1 text-foreground/75",
432
+ inputGroupEndElement: "inline-flex shrink-0 items-center justify-center ps-1 pe-3 text-foreground/75",
433
+ inputGroupStartAddon: "inline-flex max-w-[min(40%,16rem)] shrink-0 items-center overflow-hidden border-e border-border bg-muted/60 px-3 text-sm text-foreground/75 text-ellipsis whitespace-nowrap [&>*]:min-w-0",
434
+ inputGroupEndAddon: "inline-flex max-w-[min(40%,16rem)] shrink-0 items-center overflow-hidden border-s border-border bg-muted/60 px-3 text-sm text-foreground/75 text-ellipsis whitespace-nowrap [&>*]:min-w-0",
435
+ panelRoot: cn(
436
+ "group relative flex min-w-0 flex-col overflow-hidden rounded-lg border border-border/70 bg-background",
437
+ motionInteractive
438
+ ),
439
+ panelInteractive: "cursor-pointer hover:shadow-md",
440
+ panelSelected: "border-primary/45 bg-primary/5",
441
+ panelDisabled: "!cursor-not-allowed opacity-60",
442
+ panelMedia: "shrink-0 overflow-hidden",
443
+ panelHeader: "min-w-0 p-4",
444
+ panelTitle: "min-w-0 truncate text-sm font-semibold leading-none text-foreground",
445
+ panelDescription: "mt-1 text-sm leading-5 text-foreground/75",
446
+ panelBody: "min-w-0 px-4 pb-4 text-sm text-foreground",
447
+ panelBodyStandalone: "pt-4",
448
+ panelFooter: "shrink-0 border-t border-border/60 px-4 py-3",
449
+ stateRoot: cn(
450
+ "flex min-h-48 flex-col items-center justify-center rounded-lg border border-border/70 bg-background px-6 py-10 text-center",
451
+ motionBase
452
+ ),
453
+ stateIcon: "mb-4 flex h-12 w-12 items-center justify-center rounded-full bg-muted text-muted-foreground motion-safe:animate-in motion-safe:fade-in",
454
+ stateTitle: "text-sm font-semibold text-foreground",
455
+ stateDescription: "mt-2 max-w-md text-sm leading-6 text-muted-foreground",
456
+ stateActions: "mt-5 flex flex-wrap items-center justify-center gap-2",
457
+ loadingSpinner: "h-5 w-5 motion-safe:animate-spin motion-reduce:animate-none",
458
+ fieldRoot: "grid min-w-0 gap-2",
459
+ fieldLabelRow: "flex min-w-0 items-center justify-between gap-3",
460
+ fieldLabel: "min-w-0 text-sm font-medium leading-none text-foreground",
461
+ fieldRequired: "text-destructive-text",
462
+ fieldDescription: "text-sm leading-5 text-muted-foreground",
463
+ fieldMessage: "text-sm leading-5 text-muted-foreground",
464
+ fieldControl: "min-w-0",
465
+ controlWrapper: cn(
466
+ "relative flex min-w-0 items-center rounded-md border border-border bg-background text-foreground focus-within:border-primary/35",
467
+ motionBase
468
+ ),
469
+ controlBase: "min-w-0 flex-1 bg-transparent px-3 text-sm text-foreground outline-none placeholder:text-muted-foreground disabled:!cursor-not-allowed",
470
+ controlInput: "h-9",
471
+ controlTextarea: "min-h-24 resize-y py-2 leading-6",
472
+ controlSelect: "h-9 cursor-pointer appearance-none pr-9 disabled:!cursor-not-allowed",
473
+ controlIcon: "pointer-events-none ml-3 inline-flex h-4 w-4 shrink-0 items-center justify-center text-muted-foreground",
474
+ controlTrailing: "mr-3 inline-flex shrink-0 items-center justify-center text-muted-foreground",
475
+ controlInvalid: "border-destructive/45 focus-within:border-destructive/60",
476
+ controlDisabled: "!cursor-not-allowed opacity-60",
477
+ controlReadOnly: "bg-muted/35",
478
+ selectChevron: cn(
479
+ "pointer-events-none absolute right-3 top-1/2 h-2 w-2 -translate-y-1/2 rotate-45 border-b border-r border-current text-muted-foreground",
480
+ motionTransform
481
+ ),
482
+ selectMenu: "absolute left-0 right-0 top-[calc(100%+0.375rem)] z-50 max-h-60 origin-top overflow-auto rounded-md border border-border bg-background p-1 text-sm text-foreground shadow-lg outline-none motion-safe:animate-in motion-safe:fade-in motion-safe:duration-300 motion-safe:ease-out",
483
+ selectOption: cn(
484
+ "flex min-h-8 w-full min-w-0 cursor-pointer items-center rounded-sm px-2.5 py-1.5 text-left text-sm text-foreground",
485
+ motionInteractive
486
+ ),
487
+ selectOptionActive: "bg-accent text-accent-foreground",
488
+ selectOptionSelected: "bg-primary/10 text-primary",
489
+ selectOptionDisabled: "!cursor-not-allowed opacity-50",
490
+ selectPlaceholder: "text-muted-foreground",
491
+ selectNative: "sr-only",
492
+ switchRoot: "inline-flex min-w-0 cursor-pointer items-start gap-3",
493
+ switchInput: "sr-only",
494
+ switchTrack: cn(
495
+ "relative mt-0.5 inline-flex h-6 w-10 shrink-0 items-center rounded-full border border-border bg-muted focus-within:border-primary/35",
496
+ motionBase
497
+ ),
498
+ switchThumb: cn(
499
+ "h-4 w-4 translate-x-1 rounded-full bg-background shadow-sm",
500
+ motionTransform
501
+ ),
502
+ switchChecked: "border-primary/40 bg-primary/80 text-primary-foreground",
503
+ switchDisabled: "!cursor-not-allowed opacity-60",
504
+ switchContent: "grid min-w-0 gap-1",
505
+ switchLabel: "text-sm font-medium leading-none text-foreground",
506
+ switchDescription: "text-sm leading-5 text-muted-foreground",
507
+ checkboxRoot: "inline-flex min-w-0 cursor-pointer items-start gap-3",
508
+ checkboxInput: "sr-only",
509
+ checkboxBox: cn(
510
+ "mt-0.5 inline-flex h-4 w-4 shrink-0 items-center justify-center rounded border border-border bg-background text-primary focus-within:border-primary/40",
511
+ motionBase
512
+ ),
513
+ checkboxBoxChecked: "border-primary/45 bg-primary text-primary-foreground",
514
+ checkboxBoxInvalid: "border-destructive/50",
515
+ checkboxIndicator: "text-[11px] font-bold leading-none",
516
+ checkboxDisabled: "!cursor-not-allowed opacity-60",
517
+ checkboxContent: "grid min-w-0 gap-1",
518
+ checkboxLabel: "text-sm font-medium leading-none text-foreground",
519
+ checkboxDescription: "text-sm leading-5 text-muted-foreground",
520
+ radioGroupRoot: "grid min-w-0 gap-2",
521
+ radioOption: cn(
522
+ "inline-flex min-w-0 cursor-pointer items-start gap-3 rounded-md border border-border/60 bg-background px-3 py-2 text-sm",
523
+ motionInteractive,
524
+ "hover:bg-muted/35"
525
+ ),
526
+ radioInput: "sr-only",
527
+ radioMarker: cn(
528
+ "mt-0.5 inline-flex h-4 w-4 shrink-0 items-center justify-center rounded-full border border-border bg-background text-primary focus-within:border-primary/40",
529
+ motionBase
530
+ ),
531
+ radioMarkerChecked: "border-primary/50 bg-primary/10",
532
+ radioIndicator: "h-2 w-2 rounded-full bg-primary",
533
+ radioOptionDisabled: "!cursor-not-allowed opacity-60 hover:bg-background",
534
+ radioContent: "grid min-w-0 gap-1",
535
+ radioLabel: "text-sm font-medium leading-none text-foreground",
536
+ radioDescription: "text-sm leading-5 text-muted-foreground",
537
+ dialogRoot: "relative",
538
+ dialogTrigger: "",
539
+ dialogTriggerDisabled: "!cursor-not-allowed opacity-60",
540
+ dialogOverlay: "fixed inset-0 z-50 bg-background/70 backdrop-blur-sm motion-safe:animate-in motion-safe:fade-in motion-safe:duration-300 motion-safe:ease-out",
541
+ dialogContent: "pointer-events-none fixed inset-0 z-50 flex min-h-0 items-center justify-center p-4",
542
+ dialogPanel: cn(
543
+ "pointer-events-auto relative flex max-h-[min(85vh,720px)] w-full max-w-lg min-w-0 flex-col overflow-hidden rounded-lg border border-border/70 bg-background text-foreground shadow-xl",
544
+ "motion-safe:animate-in motion-safe:fade-in motion-safe:zoom-in-95 motion-safe:duration-300 motion-safe:ease-out"
545
+ ),
546
+ dialogHeader: "grid min-w-0 gap-1 border-b border-border/60 px-5 py-4",
547
+ dialogTitle: "min-w-0 pr-8 text-base font-semibold leading-6 text-foreground",
548
+ dialogDescription: "text-sm leading-6 text-muted-foreground",
549
+ dialogBody: "min-h-0 min-w-0 overflow-auto px-5 py-4 text-sm text-foreground",
550
+ dialogFooter: "flex shrink-0 flex-wrap items-center justify-end gap-2 border-t border-border/60 px-5 py-4",
551
+ dialogClose: cn(
552
+ "absolute right-3 top-3 inline-flex h-8 w-8 cursor-pointer items-center justify-center rounded-md text-muted-foreground hover:bg-muted/60 hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/30",
553
+ motionInteractive
554
+ ),
555
+ dropdownRoot: "relative inline-flex min-w-0",
556
+ dropdownTrigger: "",
557
+ dropdownTriggerDisabled: "!cursor-not-allowed opacity-60",
558
+ dropdownMenu: "z-50 min-w-48 overflow-hidden rounded-md border border-border bg-background p-1 text-sm text-foreground shadow-lg motion-safe:animate-in motion-safe:fade-in motion-safe:duration-300 motion-safe:ease-out",
559
+ dropdownMenuTop: "bottom-[calc(100%+0.375rem)] top-auto",
560
+ dropdownMenuEnd: "left-auto right-0",
561
+ dropdownLabel: "px-2.5 py-1.5 text-xs font-semibold uppercase tracking-[0.12em] text-muted-foreground",
562
+ dropdownSeparator: "my-1 h-px bg-border/70",
563
+ dropdownItem: cn(
564
+ "flex min-w-0 cursor-pointer items-center gap-2 rounded-sm px-2.5 py-2 text-left text-sm text-foreground hover:bg-accent/60 focus:bg-accent/60 data-[highlighted]:bg-accent/60 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/30",
565
+ motionInteractive
566
+ ),
567
+ dropdownItemDanger: "text-destructive-text hover:bg-destructive/10 focus:bg-destructive/10 data-[highlighted]:bg-destructive/10",
568
+ dropdownItemDisabled: "!cursor-not-allowed opacity-50 hover:bg-transparent focus:bg-transparent data-[highlighted]:bg-transparent",
569
+ dropdownItemIcon: "inline-flex h-4 w-4 shrink-0 items-center justify-center",
570
+ dropdownItemContent: "grid min-w-0 flex-1 gap-0.5",
571
+ dropdownItemLabel: "min-w-0 truncate",
572
+ dropdownItemDescription: "min-w-0 truncate text-xs leading-4 text-muted-foreground",
573
+ dropdownItemShortcut: "ml-3 shrink-0 text-xs font-medium text-muted-foreground",
574
+ tooltipRoot: "relative inline-flex min-w-0",
575
+ tooltipTrigger: "inline-flex min-w-0",
576
+ tooltipContent: "pointer-events-none z-50 max-w-xs rounded-md border border-border bg-popover px-2.5 py-1.5 text-xs leading-5 text-popover-foreground shadow-lg motion-safe:animate-in motion-safe:fade-in motion-safe:duration-300 motion-safe:ease-out",
577
+ noticeBase: cn(
578
+ "flex min-w-0 gap-3 rounded-lg border px-4 py-3 text-sm",
579
+ motionBase,
580
+ "motion-safe:animate-in motion-safe:fade-in"
581
+ ),
582
+ noticeDefault: "border-border bg-background text-foreground",
583
+ noticePrimary: "border-primary/25 bg-primary/10 text-primary",
584
+ noticeSuccess: "border-[hsl(var(--success,142_72%_29%)_/_0.30)] bg-[hsl(var(--success,142_72%_29%)_/_0.10)] text-foreground",
585
+ noticeWarning: "border-[hsl(var(--warning,45_93%_47%)_/_0.30)] bg-[hsl(var(--warning,45_93%_47%)_/_0.10)] text-[hsl(var(--warning-foreground,28_73%_26%))]",
586
+ noticeDanger: "border-destructive/30 bg-destructive/10 text-destructive-text",
587
+ noticeMuted: "border-border/60 bg-muted/35 text-muted-foreground",
588
+ noticeIcon: "mt-0.5 inline-flex h-4 w-4 shrink-0 items-center justify-center motion-safe:animate-in motion-safe:fade-in",
589
+ noticeTitle: "font-semibold leading-5",
590
+ noticeDescription: "leading-6",
591
+ noticeActions: "mt-3 flex flex-wrap items-center gap-2",
592
+ dividerRoot: cn("shrink-0 border-border/70", motionBase),
593
+ dividerLabel: "mx-3 shrink-0 text-xs font-medium uppercase tracking-[0.12em] text-muted-foreground motion-safe:animate-in motion-safe:fade-in",
594
+ sectionHeaderRoot: "flex min-w-0 flex-wrap items-start justify-between gap-3 motion-safe:animate-in motion-safe:fade-in motion-safe:duration-300 motion-safe:ease-out",
595
+ sectionHeaderContent: "grid min-w-0 gap-1",
596
+ sectionHeaderEyebrow: "text-xs font-semibold uppercase tracking-[0.14em] text-muted-foreground",
597
+ sectionHeaderTitle: "text-base font-semibold leading-6 text-foreground",
598
+ sectionHeaderDescription: "max-w-2xl text-sm leading-6 text-muted-foreground",
599
+ sectionHeaderActions: "flex shrink-0 flex-wrap items-center gap-2",
600
+ tabsRoot: "grid min-w-0 gap-3",
601
+ tabsList: cn(
602
+ "inline-flex min-w-0 flex-wrap items-center gap-1 rounded-lg border border-border/70 bg-muted/30 p-1",
603
+ motionBase
604
+ ),
605
+ tabsTrigger: cn(
606
+ "inline-flex min-w-0 cursor-pointer items-center justify-center rounded-md px-3 py-1.5 text-sm font-medium text-muted-foreground hover:bg-background/70 hover:text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/30 focus-visible:ring-offset-1 motion-reduce:transition-none",
607
+ motionInteractive
608
+ ),
609
+ tabsTriggerActive: "bg-background text-foreground shadow-sm",
610
+ tabsTriggerDisabled: "!cursor-not-allowed opacity-50 hover:bg-transparent",
611
+ tabsPanel: "min-w-0 rounded-lg border border-border/70 bg-background p-4 text-sm text-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/30 motion-safe:animate-in motion-safe:fade-in motion-safe:duration-300 motion-safe:ease-out motion-reduce:transition-none",
612
+ segmentedRoot: cn(
613
+ "inline-flex min-w-0 items-center gap-1 rounded-lg border border-border/70 bg-muted/30 p-1",
614
+ motionBase
615
+ ),
616
+ segmentedItem: cn(
617
+ "inline-flex min-w-0 cursor-pointer items-center justify-center gap-1.5 rounded-md px-3 py-1.5 text-sm font-medium text-muted-foreground hover:bg-background/70 hover:text-foreground focus-visible:outline-none",
618
+ motionInteractive
619
+ ),
620
+ segmentedItemActive: "bg-background text-foreground shadow-sm",
621
+ segmentedItemDisabled: "!cursor-not-allowed opacity-50 hover:bg-transparent",
622
+ progressRoot: "grid min-w-0 gap-2",
623
+ progressTrack: "h-2 w-full overflow-hidden rounded-full bg-muted",
624
+ progressIndicator: "h-full rounded-full bg-primary motion-safe:transition-[width] motion-safe:duration-500 motion-safe:ease-out",
625
+ progressLabelRow: "flex min-w-0 items-center justify-between gap-3",
626
+ progressLabel: "min-w-0 truncate text-sm font-medium text-foreground",
627
+ progressValue: "shrink-0 text-xs font-medium text-muted-foreground",
628
+ skeletonRoot: "relative overflow-hidden rounded-md bg-muted/70",
629
+ avatarRoot: "relative inline-flex shrink-0 items-center justify-center overflow-hidden rounded-full border border-border bg-muted text-sm font-semibold text-muted-foreground motion-safe:transition motion-safe:duration-300 motion-safe:ease-out",
630
+ avatarImage: "h-full w-full object-cover",
631
+ avatarFallback: "flex h-full w-full items-center justify-center bg-muted text-foreground",
632
+ avatarStatus: "absolute bottom-0 right-0 h-2.5 w-2.5 rounded-full border-2 border-background bg-muted-foreground motion-safe:animate-pulse",
633
+ avatarText: "min-w-0 truncate text-sm font-medium text-foreground",
634
+ toolbarRoot: cn(
635
+ "flex min-w-0 flex-wrap items-center justify-between gap-3 rounded-lg border border-border/70 bg-background px-4 py-3",
636
+ motionBase
637
+ ),
638
+ toolbarLeading: "flex min-w-0 items-center gap-3",
639
+ toolbarTitle: "min-w-0 truncate text-sm font-semibold text-foreground",
640
+ toolbarDescription: "mt-0.5 text-sm leading-5 text-muted-foreground",
641
+ toolbarContent: "min-w-0 flex-1",
642
+ toolbarActions: "flex shrink-0 flex-wrap items-center gap-2",
643
+ breadcrumbRoot: "min-w-0 text-sm text-muted-foreground",
644
+ breadcrumbList: "flex min-w-0 flex-wrap items-center gap-1.5",
645
+ breadcrumbItem: "inline-flex min-w-0 items-center gap-1.5",
646
+ breadcrumbLink: "min-w-0 cursor-pointer truncate text-muted-foreground hover:text-foreground disabled:!cursor-not-allowed disabled:opacity-50 aria-disabled:!cursor-not-allowed aria-disabled:opacity-50 aria-disabled:hover:text-muted-foreground motion-safe:transition motion-safe:duration-300 motion-safe:ease-out",
647
+ breadcrumbCurrent: "min-w-0 truncate font-medium text-foreground",
648
+ breadcrumbSeparator: "shrink-0 text-muted-foreground/70",
649
+ paginationRoot: "flex min-w-0 flex-wrap items-center justify-between gap-3 text-sm",
650
+ paginationInfo: "min-w-0 text-muted-foreground",
651
+ paginationControls: "flex min-w-0 flex-wrap items-center justify-end gap-1.5",
652
+ paginationButton: "inline-flex h-8 min-w-8 cursor-pointer items-center justify-center whitespace-nowrap rounded-md border border-border bg-background px-2.5 text-sm font-medium text-foreground hover:bg-accent/60 disabled:!cursor-not-allowed disabled:opacity-50 motion-safe:transition motion-safe:duration-300 motion-safe:ease-out",
653
+ paginationButtonDisabled: "!cursor-not-allowed opacity-50",
654
+ paginationPage: "inline-flex h-8 min-w-8 cursor-default items-center justify-center rounded-md bg-muted/50 px-2.5 text-sm font-medium text-foreground hover:bg-muted/50",
655
+ paginationEllipsis: "inline-flex h-8 min-w-6 items-center justify-center px-1 text-sm text-muted-foreground",
656
+ descriptionListRoot: "grid min-w-0 gap-3 text-sm",
657
+ descriptionListItem: "grid min-w-0 gap-1 rounded-md border border-border/60 bg-background px-3 py-2 motion-safe:transition motion-safe:duration-300 motion-safe:ease-out hover:shadow-sm",
658
+ descriptionListTerm: "min-w-0 truncate text-xs font-medium uppercase tracking-[0.08em] text-muted-foreground",
659
+ descriptionListValue: "min-w-0 text-sm leading-6 text-foreground",
660
+ accordionRoot: "grid min-w-0 gap-2",
661
+ accordionItem: "overflow-hidden rounded-lg border border-border/70 bg-background motion-safe:transition motion-safe:duration-300 motion-safe:ease-out motion-reduce:transition-none",
662
+ accordionTrigger: "flex w-full min-w-0 cursor-pointer items-center justify-between gap-3 px-4 py-3 text-start text-sm font-medium text-foreground hover:bg-muted/40 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring disabled:!cursor-not-allowed disabled:opacity-50 motion-safe:transition motion-safe:duration-300 motion-safe:ease-out motion-reduce:transition-none",
663
+ accordionTriggerIcon: cn(
664
+ "h-2 w-2 shrink-0 rotate-45 border-b border-r border-current text-muted-foreground",
665
+ motionTransform,
666
+ "motion-reduce:transition-none"
667
+ ),
668
+ accordionPanel: "border-t border-border/60 px-4 py-3 text-sm leading-6 text-muted-foreground motion-safe:animate-in motion-safe:fade-in motion-safe:duration-300 motion-safe:ease-out motion-reduce:animate-none",
669
+ menuTrigger: "inline-flex min-w-0",
670
+ menuContent: "z-50 min-w-44 overflow-hidden rounded-md border border-border bg-background p-1 text-sm text-foreground shadow-lg outline-none motion-safe:animate-in motion-safe:fade-in motion-safe:zoom-in-95 motion-safe:duration-300 motion-safe:ease-out",
671
+ menuLabel: "px-2 py-1.5 text-xs font-medium text-muted-foreground",
672
+ menuSeparator: "-mx-1 my-1 h-px bg-border",
673
+ menuItem: cn(
674
+ "relative flex min-h-8 min-w-0 cursor-pointer select-none items-center gap-2 rounded-sm px-2.5 py-1.5 text-sm text-foreground outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:!cursor-not-allowed data-[highlighted]:bg-accent data-[highlighted]:text-accent-foreground",
675
+ motionInteractive
676
+ ),
677
+ menuItemDefault: "text-foreground",
678
+ menuItemPrimary: "text-primary focus:text-primary data-[highlighted]:text-primary",
679
+ menuItemSuccess: "text-[hsl(var(--success,142_72%_29%))] focus:text-[hsl(var(--success,142_72%_29%))] data-[highlighted]:text-[hsl(var(--success,142_72%_29%))]",
680
+ menuItemWarning: "text-[hsl(var(--warning-foreground,28_73%_26%))] focus:text-[hsl(var(--warning-foreground,28_73%_26%))] data-[highlighted]:text-[hsl(var(--warning-foreground,28_73%_26%))]",
681
+ menuItemDanger: "text-destructive-text focus:text-destructive-text data-[highlighted]:text-destructive-text",
682
+ menuItemMuted: "text-muted-foreground focus:text-foreground data-[highlighted]:text-foreground",
683
+ menuItemDisabled: "!cursor-not-allowed opacity-50 data-[disabled]:pointer-events-none",
684
+ menuItemIcon: "inline-flex h-4 w-4 shrink-0 items-center justify-center",
685
+ menuItemLabel: "min-w-0 flex-1 truncate",
686
+ menuItemShortcut: "ml-4 shrink-0 text-xs font-medium text-muted-foreground",
687
+ menuCheckboxIndicator: "absolute left-2 inline-flex h-4 w-4 items-center justify-center text-current",
688
+ menuRadioIndicator: "absolute left-2 inline-flex h-4 w-4 items-center justify-center text-current",
689
+ menuSubTrigger: cn(
690
+ "relative flex min-h-8 min-w-0 cursor-pointer select-none items-center gap-2 rounded-sm px-2.5 py-1.5 text-sm text-foreground outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:!cursor-not-allowed data-[highlighted]:bg-accent data-[highlighted]:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground",
691
+ motionInteractive
692
+ ),
693
+ menuSubTriggerIcon: "ml-auto inline-flex h-4 w-4 shrink-0 items-center justify-center text-muted-foreground",
694
+ menuSubContent: "z-50 min-w-40 overflow-hidden rounded-md border border-border bg-background p-1 text-sm text-foreground shadow-lg outline-none motion-safe:animate-in motion-safe:fade-in motion-safe:zoom-in-95 motion-safe:duration-300 motion-safe:ease-out",
695
+ tableContainer: cn(
696
+ "relative isolate min-w-0 overflow-auto rounded-lg border border-border/70 bg-background/95 bg-clip-padding [scrollbar-gutter:stable]",
697
+ "[--base-table-header-height:2.75rem] [--base-table-split-scrollbar-gutter:0.75rem]",
698
+ "[--base-table-sticky-header-bg:hsl(var(--background))] [--base-table-header-separator:hsl(var(--border)_/_0.7)]",
699
+ tableScrollbarChrome,
700
+ motionBase
701
+ ),
702
+ tableContainerFooterAttached: "!rounded-b-none !shadow-none",
703
+ tableRoot: "w-full caption-bottom border-separate border-spacing-0 text-sm text-foreground",
704
+ tableCaption: "mt-3 text-sm text-muted-foreground",
705
+ tableHeader: cn(
706
+ "relative z-[2] bg-transparent [&_tr]:bg-transparent",
707
+ tableStickyHeaderCells
708
+ ),
709
+ tableBody: "[&_tr:last-child>*]:border-b-0",
710
+ tableFooter: "bg-muted/30 font-medium [&_tr>*]:border-t [&_tr>*]:border-border/70",
711
+ tableFooterBar: cn(
712
+ "flex min-w-0 flex-wrap items-center justify-between gap-3 rounded-lg border border-border/70 bg-muted/20 px-4 py-3 text-sm text-foreground shadow-none",
713
+ motionBase
714
+ ),
715
+ tableFooterBarAttached: "-mt-px rounded-t-none border-t border-border/70 shadow-none",
716
+ tableFooterBarLeading: "flex min-w-0 items-center gap-2",
717
+ tableFooterBarContent: "min-w-0 flex-1",
718
+ tableFooterBarActions: "ms-auto flex shrink-0 flex-wrap items-center gap-2",
719
+ tableSplitRoot: "grid w-full min-w-0 grid-cols-[minmax(0,1fr)] grid-rows-[auto_minmax(0,1fr)_auto] caption-bottom border-separate border-spacing-0 text-sm text-foreground",
720
+ tableSplitHeader: "block w-full min-w-0 shrink-0 overflow-x-hidden overflow-y-hidden bg-transparent",
721
+ tableSplitBody: cn(
722
+ "block min-h-0 w-full min-w-0 max-w-full justify-self-stretch overflow-auto [scrollbar-gutter:stable]",
723
+ tableScrollbarChrome
724
+ ),
725
+ tableSplitFooter: "block w-full min-w-0 shrink-0 overflow-x-hidden overflow-y-hidden",
726
+ tableSplitRow: "grid w-max min-w-full [grid-template-columns:var(--base-table-column-template)]",
727
+ tableSplitHead: "flex min-w-0 overflow-hidden",
728
+ tableSplitCell: "block min-w-0 overflow-hidden [overflow-wrap:anywhere]",
729
+ tableRow: cn(
730
+ "[&>*]:border-b [&>*]:border-border/60 data-[state=selected]:bg-primary/5 data-[state=selected]:[&>*]:bg-primary/5",
731
+ motionBase
732
+ ),
733
+ tableRowInteractive: "cursor-pointer [--base-table-row-hover-bg:hsl(var(--muted)_/_0.35)] hover:bg-[var(--base-table-row-hover-bg)] hover:[&>*]:bg-[var(--base-table-row-hover-bg)]",
734
+ tableRowSelected: "bg-primary/5 [&>*]:bg-primary/5",
735
+ tableRowDisabled: "!cursor-not-allowed opacity-60",
736
+ tableHead: "relative h-11 whitespace-nowrap px-3 py-2 text-left align-middle text-xs font-semibold text-muted-foreground shadow-[inset_0_-1px_0_var(--base-table-header-separator)]",
737
+ tableHeadContent: "flex min-w-0 items-center justify-between gap-2",
738
+ tableHeadMain: "flex min-w-0 items-center gap-2",
739
+ tableHeadIcon: "inline-flex h-4 w-4 shrink-0 items-center justify-center text-muted-foreground",
740
+ tableHeadText: "grid min-w-0 gap-0.5",
741
+ tableHeadLabel: "min-w-0 truncate text-xs font-semibold leading-4 text-foreground",
742
+ tableHeadDescription: "min-w-0 truncate text-[11px] font-normal leading-4 text-muted-foreground",
743
+ tableHeadMeta: "shrink-0 text-[11px] font-medium text-muted-foreground",
744
+ tableHeadActions: "flex shrink-0 items-center gap-1",
745
+ tableHeadSortButton: cn(
746
+ "inline-flex min-w-0 cursor-pointer items-center gap-1 rounded-sm text-left focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/30 disabled:!cursor-not-allowed disabled:opacity-60",
747
+ motionBase
748
+ ),
749
+ tableHeadSortIcon: cn(
750
+ "inline-flex h-3 w-3 shrink-0 items-center justify-center text-muted-foreground",
751
+ motionTransform
752
+ ),
753
+ tableHeadDragHandle: cn(
754
+ "inline-flex h-5 w-4 shrink-0 cursor-grab items-center justify-center rounded-sm text-muted-foreground hover:bg-muted active:cursor-grabbing focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/30 disabled:!cursor-not-allowed disabled:opacity-50",
755
+ motionBase
756
+ ),
757
+ tableHeadResizeHandle: cn(
758
+ "absolute end-0 top-1/2 h-7 w-2 -translate-y-1/2 cursor-col-resize touch-none rounded-sm after:absolute after:start-1/2 after:top-1/2 after:h-5 after:w-px after:-translate-x-1/2 after:-translate-y-1/2 after:bg-border hover:after:bg-primary focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/30 disabled:!cursor-not-allowed disabled:opacity-50",
759
+ motionBase
760
+ ),
761
+ tableCell: "min-w-0 px-3 py-2 align-middle text-sm text-foreground [overflow-wrap:anywhere]",
762
+ tableCellAlignCenter: "text-center",
763
+ tableCellAlignRight: "text-right",
764
+ tableEmptyRow: "[&>*]:border-b [&>*]:border-border/60",
765
+ tableEmptyCell: "px-4 py-10 text-center",
766
+ tableEmptyContent: "mx-auto flex max-w-md flex-col items-center justify-center text-center",
767
+ tableEmptyIcon: "mb-3 flex h-10 w-10 items-center justify-center rounded-full bg-muted text-muted-foreground",
768
+ tableEmptyTitle: "text-sm font-semibold text-foreground",
769
+ tableEmptyDescription: "mt-1 text-sm leading-6 text-muted-foreground",
770
+ tableEmptyActions: "mt-4 flex flex-wrap items-center justify-center gap-2",
771
+ tableLoadingRow: "[&>*]:border-b [&>*]:border-border/60",
772
+ tableLoadingCell: "px-3 py-2",
773
+ tableLoadingSkeleton: "h-4 w-full rounded-md bg-muted/70",
774
+ layoutRoot: cn(
775
+ "grid min-w-0 overflow-hidden grid-rows-[auto_minmax(0,1fr)_auto] gap-3 rounded-lg border border-border/70 bg-background p-3 text-foreground",
776
+ motionBase
777
+ ),
778
+ layoutRootFull: "h-full min-h-0",
779
+ layoutHeader: "min-w-0",
780
+ layoutBody: "grid min-h-0 min-w-0 overflow-hidden gap-3",
781
+ layoutSidebar: "min-h-0 min-w-0 overflow-hidden",
782
+ layoutMain: "min-h-0 min-w-0 overflow-hidden",
783
+ layoutAside: "min-h-0 min-w-0 overflow-hidden",
784
+ layoutFooter: "min-w-0",
785
+ layoutPane: cn(
786
+ "h-full max-h-full min-h-0 min-w-0 overflow-hidden rounded-lg bg-background text-foreground",
787
+ motionBase
788
+ ),
789
+ layoutPaneScrollable: "overflow-auto",
790
+ layoutPaneBordered: "border border-border/70",
791
+ layoutPaneMuted: "bg-muted/25",
792
+ layoutPaneSoft: "bg-background/95 shadow-sm",
793
+ layoutPaneTransparent: "bg-transparent shadow-none",
794
+ layoutSplitRoot: "grid min-h-0 min-w-0 overflow-hidden",
795
+ layoutSplitHorizontal: "grid-flow-col",
796
+ layoutSplitVertical: "grid-flow-row",
797
+ layoutSplitPane: "min-h-0 min-w-0 overflow-hidden",
798
+ layoutSplitPrimary: "",
799
+ layoutSplitSecondary: "",
800
+ layoutResizeHandle: cn(
801
+ "group/resize relative z-10 flex shrink-0 items-center justify-center bg-transparent text-muted-foreground hover:bg-border/60 active:bg-border/70 focus-visible:bg-border/60 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/30",
802
+ motionInteractive
803
+ ),
804
+ layoutResizeHandleHorizontal: "w-2 cursor-col-resize",
805
+ layoutResizeHandleVertical: "h-2 cursor-row-resize",
806
+ layoutResizeHandleDisabled: "cursor-default opacity-60",
807
+ layoutResizeHandleIndicator: "rounded-full bg-muted-foreground/45 group-hover/resize:bg-primary/70"
808
+ };
809
+ var densitySlots = {
810
+ compact: {
811
+ buttonBase: "h-8 px-2.5 text-xs",
812
+ buttonIconOnly: "h-8 w-8 px-0",
813
+ badgeBase: "px-1.5 py-0 text-[11px]",
814
+ panelHeader: "p-3",
815
+ panelBody: "px-3 pb-3 text-xs",
816
+ panelBodyStandalone: "pt-3",
817
+ panelFooter: "px-3 py-2",
818
+ stateRoot: "min-h-36 px-4 py-7",
819
+ stateIcon: "mb-3 h-10 w-10",
820
+ fieldRoot: "gap-1.5",
821
+ fieldLabel: "text-xs",
822
+ fieldDescription: "text-xs leading-5",
823
+ fieldMessage: "text-xs leading-5",
824
+ controlInput: "h-8 text-xs",
825
+ controlTextarea: "min-h-20 text-xs",
826
+ controlSelect: "h-8 text-xs",
827
+ selectMenu: "text-xs",
828
+ selectOption: "min-h-7 px-2 py-1 text-xs",
829
+ switchTrack: "h-5 w-9",
830
+ switchThumb: "h-3.5 w-3.5",
831
+ checkboxBox: "h-3.5 w-3.5",
832
+ checkboxLabel: "text-xs",
833
+ checkboxDescription: "text-xs leading-5",
834
+ radioOption: "px-2 py-1.5 text-xs",
835
+ radioMarker: "h-3.5 w-3.5",
836
+ radioIndicator: "h-1.5 w-1.5",
837
+ radioLabel: "text-xs",
838
+ radioDescription: "text-xs leading-5",
839
+ dialogPanel: "max-w-md",
840
+ dialogHeader: "px-4 py-3",
841
+ dialogTitle: "text-sm leading-5",
842
+ dialogDescription: "text-xs leading-5",
843
+ dialogBody: "px-4 py-3 text-xs",
844
+ dialogFooter: "px-4 py-3",
845
+ dropdownMenu: "min-w-44 text-xs",
846
+ dropdownItem: "px-2 py-1.5 text-xs",
847
+ tooltipContent: "text-[11px] leading-4",
848
+ noticeBase: "px-3 py-2 text-xs",
849
+ dividerLabel: "text-[11px]",
850
+ sectionHeaderRoot: "gap-2",
851
+ sectionHeaderTitle: "text-sm leading-5",
852
+ sectionHeaderDescription: "text-xs leading-5",
853
+ tabsList: "gap-0.5 p-0.5",
854
+ tabsTrigger: "px-2 py-1 text-xs",
855
+ tabsPanel: "p-3 text-xs",
856
+ segmentedRoot: "gap-0.5 p-0.5",
857
+ segmentedItem: "px-2 py-1 text-xs",
858
+ progressTrack: "h-1.5",
859
+ avatarRoot: "text-xs",
860
+ toolbarRoot: "gap-2 px-3 py-2",
861
+ toolbarTitle: "text-xs",
862
+ toolbarDescription: "text-xs leading-5",
863
+ paginationButton: "h-7 min-w-7 px-2 text-xs",
864
+ paginationPage: "h-7 min-w-7 px-2 text-xs",
865
+ descriptionListRoot: "gap-2 text-xs",
866
+ descriptionListItem: "px-2 py-1.5",
867
+ descriptionListTerm: "text-[11px]",
868
+ descriptionListValue: "text-xs leading-5",
869
+ accordionTrigger: "px-3 py-2 text-xs",
870
+ accordionPanel: "px-3 py-2 text-xs leading-5",
871
+ menuContent: "min-w-40 p-0.5 text-xs",
872
+ menuSubContent: "min-w-36 p-0.5 text-xs",
873
+ menuLabel: "px-2 py-1 text-[11px]",
874
+ menuItem: "min-h-7 px-2 py-1 text-xs",
875
+ menuSubTrigger: "min-h-7 px-2 py-1 text-xs",
876
+ menuItemShortcut: "text-[11px]",
877
+ tableContainer: "[--base-table-header-height:2.25rem]",
878
+ tableHead: "h-9 px-2 py-1.5 text-[11px]",
879
+ tableCell: "px-2 py-1.5 text-xs",
880
+ tableHeadLabel: "text-[11px]",
881
+ tableHeadDescription: "text-[10px] leading-3",
882
+ tableLoadingCell: "px-2 py-1.5",
883
+ layoutRoot: "gap-2 p-2",
884
+ layoutBody: "gap-2",
885
+ layoutPane: "rounded-md text-xs",
886
+ layoutResizeHandleHorizontal: "w-1.5",
887
+ layoutResizeHandleVertical: "h-1.5"
888
+ },
889
+ default: {
890
+ buttonBase: "h-9"
891
+ },
892
+ comfortable: {
893
+ buttonBase: "h-10 px-3.5",
894
+ buttonIconOnly: "h-10 w-10 px-0",
895
+ badgeBase: "px-2.5 py-1",
896
+ panelHeader: "p-5",
897
+ panelBody: "px-5 pb-5",
898
+ panelBodyStandalone: "pt-5",
899
+ panelFooter: "px-5 py-3.5",
900
+ stateRoot: "min-h-56 px-8 py-12",
901
+ stateIcon: "mb-5 h-14 w-14",
902
+ fieldRoot: "gap-2.5",
903
+ controlInput: "h-10",
904
+ controlTextarea: "min-h-28",
905
+ controlSelect: "h-10",
906
+ selectMenu: "p-1.5",
907
+ selectOption: "min-h-9 px-3 py-2",
908
+ switchTrack: "h-7 w-12",
909
+ switchThumb: "h-5 w-5",
910
+ checkboxBox: "h-5 w-5",
911
+ radioOption: "px-4 py-3",
912
+ radioMarker: "h-5 w-5",
913
+ radioIndicator: "h-2.5 w-2.5",
914
+ dialogPanel: "max-w-xl",
915
+ dialogHeader: "px-6 py-5",
916
+ dialogBody: "px-6 py-5",
917
+ dialogFooter: "px-6 py-5",
918
+ dropdownMenu: "min-w-56",
919
+ dropdownItem: "px-3 py-2.5",
920
+ noticeBase: "px-5 py-4",
921
+ sectionHeaderTitle: "text-lg leading-7",
922
+ tabsTrigger: "px-3.5 py-2",
923
+ tabsPanel: "p-5",
924
+ segmentedItem: "px-3.5 py-2",
925
+ progressTrack: "h-2.5",
926
+ toolbarRoot: "px-5 py-4",
927
+ paginationButton: "h-9 min-w-9 px-3",
928
+ paginationPage: "h-9 min-w-9 px-3",
929
+ descriptionListItem: "px-4 py-3",
930
+ accordionTrigger: "px-5 py-4",
931
+ accordionPanel: "px-5 py-4",
932
+ menuContent: "min-w-48 p-1.5",
933
+ menuSubContent: "min-w-44 p-1.5",
934
+ menuItem: "min-h-9 px-3 py-2",
935
+ menuSubTrigger: "min-h-9 px-3 py-2",
936
+ tableContainer: "[--base-table-header-height:3rem]",
937
+ tableHead: "h-12 px-4 py-3",
938
+ tableCell: "px-4 py-3",
939
+ tableLoadingCell: "px-4 py-3",
940
+ layoutRoot: "gap-4 p-4",
941
+ layoutBody: "gap-4",
942
+ layoutPane: "rounded-xl",
943
+ layoutResizeHandleHorizontal: "w-2.5",
944
+ layoutResizeHandleVertical: "h-2.5"
945
+ }
946
+ };
947
+ var radiusSlots = {
948
+ none: {
949
+ buttonBase: "rounded-none",
950
+ badgeBase: "rounded-none",
951
+ panelRoot: "rounded-none",
952
+ stateRoot: "rounded-none",
953
+ stateIcon: "rounded-none",
954
+ controlWrapper: "rounded-none",
955
+ selectMenu: "rounded-none",
956
+ selectOption: "rounded-none",
957
+ switchTrack: "rounded-none",
958
+ switchThumb: "rounded-none",
959
+ checkboxBox: "rounded-none",
960
+ radioOption: "rounded-none",
961
+ dialogPanel: "rounded-none",
962
+ dialogClose: "rounded-none",
963
+ dropdownMenu: "rounded-none",
964
+ dropdownItem: "rounded-none",
965
+ tooltipContent: "rounded-none",
966
+ noticeBase: "rounded-none",
967
+ tabsList: "rounded-none",
968
+ tabsTrigger: "rounded-none",
969
+ tabsPanel: "rounded-none",
970
+ segmentedRoot: "rounded-none",
971
+ segmentedItem: "rounded-none",
972
+ progressTrack: "rounded-none",
973
+ progressIndicator: "rounded-none",
974
+ skeletonRoot: "rounded-none",
975
+ avatarRoot: "rounded-none",
976
+ avatarStatus: "rounded-none",
977
+ toolbarRoot: "rounded-none",
978
+ paginationButton: "rounded-none",
979
+ paginationPage: "rounded-none",
980
+ descriptionListItem: "rounded-none",
981
+ accordionItem: "rounded-none",
982
+ menuContent: "rounded-none",
983
+ menuItem: "rounded-none",
984
+ menuSubTrigger: "rounded-none",
985
+ menuSubContent: "rounded-none",
986
+ tableContainer: "rounded-none",
987
+ tableEmptyIcon: "rounded-none",
988
+ tableLoadingSkeleton: "rounded-none",
989
+ layoutRoot: "rounded-none",
990
+ layoutPane: "rounded-none"
991
+ },
992
+ sm: {
993
+ buttonBase: "rounded-sm",
994
+ badgeBase: "rounded-sm",
995
+ panelRoot: "rounded-sm",
996
+ stateRoot: "rounded-sm",
997
+ stateIcon: "rounded-sm",
998
+ controlWrapper: "rounded-sm",
999
+ selectMenu: "rounded-sm",
1000
+ selectOption: "rounded-sm",
1001
+ switchTrack: "rounded-sm",
1002
+ switchThumb: "rounded-sm",
1003
+ checkboxBox: "rounded-sm",
1004
+ radioOption: "rounded-sm",
1005
+ dialogPanel: "rounded-sm",
1006
+ dialogClose: "rounded-sm",
1007
+ dropdownMenu: "rounded-sm",
1008
+ dropdownItem: "rounded-sm",
1009
+ tooltipContent: "rounded-sm",
1010
+ noticeBase: "rounded-sm",
1011
+ tabsList: "rounded-sm",
1012
+ tabsTrigger: "rounded-sm",
1013
+ tabsPanel: "rounded-sm",
1014
+ segmentedRoot: "rounded-sm",
1015
+ segmentedItem: "rounded-sm",
1016
+ progressTrack: "rounded-sm",
1017
+ progressIndicator: "rounded-sm",
1018
+ skeletonRoot: "rounded-sm",
1019
+ avatarRoot: "rounded-sm",
1020
+ avatarStatus: "rounded-sm",
1021
+ toolbarRoot: "rounded-sm",
1022
+ paginationButton: "rounded-sm",
1023
+ paginationPage: "rounded-sm",
1024
+ descriptionListItem: "rounded-sm",
1025
+ accordionItem: "rounded-sm",
1026
+ menuContent: "rounded-sm",
1027
+ menuItem: "rounded-sm",
1028
+ menuSubTrigger: "rounded-sm",
1029
+ menuSubContent: "rounded-sm",
1030
+ tableContainer: "rounded-sm",
1031
+ tableEmptyIcon: "rounded-sm",
1032
+ tableLoadingSkeleton: "rounded-sm",
1033
+ layoutRoot: "rounded-sm",
1034
+ layoutPane: "rounded-sm"
1035
+ },
1036
+ md: {},
1037
+ lg: {
1038
+ buttonBase: "rounded-lg",
1039
+ badgeBase: "rounded-lg",
1040
+ panelRoot: "rounded-xl",
1041
+ stateRoot: "rounded-xl",
1042
+ stateIcon: "rounded-xl",
1043
+ controlWrapper: "rounded-lg",
1044
+ selectMenu: "rounded-lg",
1045
+ selectOption: "rounded-md",
1046
+ switchTrack: "rounded-full",
1047
+ switchThumb: "rounded-full",
1048
+ checkboxBox: "rounded-md",
1049
+ radioOption: "rounded-xl",
1050
+ dialogPanel: "rounded-xl",
1051
+ dialogClose: "rounded-lg",
1052
+ dropdownMenu: "rounded-lg",
1053
+ dropdownItem: "rounded-md",
1054
+ tooltipContent: "rounded-md",
1055
+ noticeBase: "rounded-xl",
1056
+ tabsList: "rounded-xl",
1057
+ tabsTrigger: "rounded-lg",
1058
+ tabsPanel: "rounded-xl",
1059
+ segmentedRoot: "rounded-xl",
1060
+ segmentedItem: "rounded-lg",
1061
+ skeletonRoot: "rounded-lg",
1062
+ toolbarRoot: "rounded-xl",
1063
+ descriptionListItem: "rounded-lg",
1064
+ accordionItem: "rounded-xl",
1065
+ menuContent: "rounded-lg",
1066
+ menuItem: "rounded-md",
1067
+ menuSubTrigger: "rounded-md",
1068
+ menuSubContent: "rounded-lg",
1069
+ tableContainer: "rounded-xl",
1070
+ tableEmptyIcon: "rounded-xl",
1071
+ tableLoadingSkeleton: "rounded-lg",
1072
+ layoutRoot: "rounded-xl",
1073
+ layoutPane: "rounded-xl"
1074
+ },
1075
+ xl: {
1076
+ buttonBase: "rounded-xl",
1077
+ badgeBase: "rounded-xl",
1078
+ panelRoot: "rounded-2xl",
1079
+ stateRoot: "rounded-2xl",
1080
+ stateIcon: "rounded-2xl",
1081
+ controlWrapper: "rounded-xl",
1082
+ selectMenu: "rounded-xl",
1083
+ selectOption: "rounded-lg",
1084
+ switchTrack: "rounded-full",
1085
+ switchThumb: "rounded-full",
1086
+ checkboxBox: "rounded-lg",
1087
+ radioOption: "rounded-2xl",
1088
+ dialogPanel: "rounded-2xl",
1089
+ dialogClose: "rounded-xl",
1090
+ dropdownMenu: "rounded-xl",
1091
+ dropdownItem: "rounded-lg",
1092
+ tooltipContent: "rounded-lg",
1093
+ noticeBase: "rounded-2xl",
1094
+ tabsList: "rounded-2xl",
1095
+ tabsTrigger: "rounded-xl",
1096
+ tabsPanel: "rounded-2xl",
1097
+ segmentedRoot: "rounded-2xl",
1098
+ segmentedItem: "rounded-xl",
1099
+ skeletonRoot: "rounded-xl",
1100
+ toolbarRoot: "rounded-2xl",
1101
+ paginationButton: "rounded-xl",
1102
+ paginationPage: "rounded-xl",
1103
+ descriptionListItem: "rounded-xl",
1104
+ accordionItem: "rounded-2xl",
1105
+ menuContent: "rounded-xl",
1106
+ menuItem: "rounded-lg",
1107
+ menuSubTrigger: "rounded-lg",
1108
+ menuSubContent: "rounded-xl",
1109
+ tableContainer: "rounded-2xl",
1110
+ tableEmptyIcon: "rounded-2xl",
1111
+ tableLoadingSkeleton: "rounded-xl",
1112
+ layoutRoot: "rounded-2xl",
1113
+ layoutPane: "rounded-2xl"
1114
+ },
1115
+ full: {
1116
+ buttonBase: "rounded-full",
1117
+ badgeBase: "rounded-full",
1118
+ panelRoot: "rounded-2xl",
1119
+ stateRoot: "rounded-2xl",
1120
+ stateIcon: "rounded-full",
1121
+ controlWrapper: "rounded-full",
1122
+ selectMenu: "rounded-2xl",
1123
+ selectOption: "rounded-full",
1124
+ switchTrack: "rounded-full",
1125
+ switchThumb: "rounded-full",
1126
+ checkboxBox: "rounded-full",
1127
+ radioOption: "rounded-2xl",
1128
+ dialogPanel: "rounded-2xl",
1129
+ dialogClose: "rounded-full",
1130
+ dropdownMenu: "rounded-2xl",
1131
+ dropdownItem: "rounded-full",
1132
+ tooltipContent: "rounded-full",
1133
+ noticeBase: "rounded-2xl",
1134
+ tabsList: "rounded-full",
1135
+ tabsTrigger: "rounded-full",
1136
+ tabsPanel: "rounded-2xl",
1137
+ segmentedRoot: "rounded-full",
1138
+ segmentedItem: "rounded-full",
1139
+ progressTrack: "rounded-full",
1140
+ progressIndicator: "rounded-full",
1141
+ skeletonRoot: "rounded-full",
1142
+ avatarRoot: "rounded-full",
1143
+ avatarStatus: "rounded-full",
1144
+ toolbarRoot: "rounded-2xl",
1145
+ paginationButton: "rounded-full",
1146
+ paginationPage: "rounded-full",
1147
+ descriptionListItem: "rounded-2xl",
1148
+ accordionItem: "rounded-2xl",
1149
+ menuContent: "rounded-2xl",
1150
+ menuItem: "rounded-full",
1151
+ menuSubTrigger: "rounded-full",
1152
+ menuSubContent: "rounded-2xl",
1153
+ tableContainer: "rounded-2xl",
1154
+ tableEmptyIcon: "rounded-full",
1155
+ tableLoadingSkeleton: "rounded-full",
1156
+ layoutRoot: "rounded-2xl",
1157
+ layoutPane: "rounded-2xl"
1158
+ }
1159
+ };
1160
+ var borderSlots = {
1161
+ none: {
1162
+ buttonBase: "border-transparent",
1163
+ badgeBase: "border-transparent",
1164
+ panelRoot: "border-transparent",
1165
+ panelFooter: "border-transparent",
1166
+ stateRoot: "border-transparent",
1167
+ controlWrapper: "border-transparent",
1168
+ selectMenu: "border-transparent",
1169
+ switchTrack: "border-transparent",
1170
+ checkboxBox: "border-transparent",
1171
+ radioOption: "border-transparent",
1172
+ radioMarker: "border-transparent",
1173
+ dialogPanel: "border-transparent",
1174
+ dialogHeader: "border-transparent",
1175
+ dialogFooter: "border-transparent",
1176
+ dropdownMenu: "border-transparent",
1177
+ tooltipContent: "border-transparent",
1178
+ noticeBase: "border-transparent",
1179
+ dividerRoot: "border-transparent",
1180
+ tabsList: "border-transparent",
1181
+ tabsPanel: "border-transparent",
1182
+ segmentedRoot: "border-transparent",
1183
+ avatarRoot: "border-transparent",
1184
+ toolbarRoot: "border-transparent",
1185
+ paginationButton: "border-transparent",
1186
+ descriptionListItem: "border-transparent",
1187
+ accordionItem: "border-transparent",
1188
+ accordionPanel: "border-transparent",
1189
+ menuContent: "border-transparent",
1190
+ menuSeparator: "bg-transparent",
1191
+ menuSubContent: "border-transparent",
1192
+ tableContainer: "border-transparent [--base-table-header-separator:transparent]",
1193
+ tableHeader: "border-transparent",
1194
+ tableFooter: "[&_tr>*]:border-transparent",
1195
+ tableFooterBar: "border-transparent",
1196
+ tableFooterBarAttached: "border-t border-transparent",
1197
+ tableRow: "[&>*]:border-transparent",
1198
+ tableEmptyRow: "[&>*]:border-transparent",
1199
+ tableLoadingRow: "[&>*]:border-transparent",
1200
+ layoutRoot: "border-transparent",
1201
+ layoutPaneBordered: "border-transparent",
1202
+ layoutResizeHandle: "bg-transparent hover:bg-transparent active:bg-transparent focus-visible:bg-transparent"
1203
+ },
1204
+ subtle: {
1205
+ buttonDefault: "border-border/60",
1206
+ badgeDefault: "border-border/60",
1207
+ panelRoot: "border-border/60",
1208
+ panelFooter: "border-border/60",
1209
+ stateRoot: "border-border/60",
1210
+ controlWrapper: "border-border/60",
1211
+ selectMenu: "border-border/60",
1212
+ switchTrack: "border-border/60",
1213
+ checkboxBox: "border-border/60",
1214
+ radioOption: "border-border/60",
1215
+ radioMarker: "border-border/60",
1216
+ dialogPanel: "border-border/60",
1217
+ dialogHeader: "border-border/60",
1218
+ dialogFooter: "border-border/60",
1219
+ dropdownMenu: "border-border/60",
1220
+ tooltipContent: "border-border/60",
1221
+ noticeDefault: "border-border/60",
1222
+ dividerRoot: "border-border/60",
1223
+ tabsList: "border-border/60",
1224
+ tabsPanel: "border-border/60",
1225
+ segmentedRoot: "border-border/60",
1226
+ avatarRoot: "border-border/60",
1227
+ toolbarRoot: "border-border/60",
1228
+ paginationButton: "border-border/60",
1229
+ descriptionListItem: "border-border/60",
1230
+ accordionItem: "border-border/60",
1231
+ accordionPanel: "border-border/60",
1232
+ menuContent: "border-border/60",
1233
+ menuSeparator: "bg-border/60",
1234
+ menuSubContent: "border-border/60",
1235
+ tableContainer: "border-border/60 [--base-table-header-separator:hsl(var(--border)_/_0.6)]",
1236
+ tableHeader: "border-border/60",
1237
+ tableFooter: "[&_tr>*]:border-border/60",
1238
+ tableFooterBar: "border-border/60",
1239
+ tableFooterBarAttached: "border-t border-border/60",
1240
+ tableRow: "[&>*]:border-border/50",
1241
+ tableEmptyRow: "[&>*]:border-border/50",
1242
+ tableLoadingRow: "[&>*]:border-border/50",
1243
+ layoutRoot: "border-border/60",
1244
+ layoutPaneBordered: "border-border/60"
1245
+ },
1246
+ solid: {},
1247
+ strong: {
1248
+ buttonDefault: "border-foreground/20",
1249
+ badgeDefault: "border-foreground/20",
1250
+ panelRoot: "border-foreground/20",
1251
+ panelFooter: "border-foreground/20",
1252
+ stateRoot: "border-foreground/20",
1253
+ controlWrapper: "border-foreground/20",
1254
+ selectMenu: "border-foreground/20",
1255
+ switchTrack: "border-foreground/20",
1256
+ checkboxBox: "border-foreground/20",
1257
+ radioOption: "border-foreground/20",
1258
+ radioMarker: "border-foreground/20",
1259
+ dialogPanel: "border-foreground/20",
1260
+ dialogHeader: "border-foreground/15",
1261
+ dialogFooter: "border-foreground/15",
1262
+ dropdownMenu: "border-foreground/20",
1263
+ tooltipContent: "border-foreground/20",
1264
+ noticeDefault: "border-foreground/20",
1265
+ dividerRoot: "border-foreground/20",
1266
+ tabsList: "border-foreground/20",
1267
+ tabsPanel: "border-foreground/20",
1268
+ segmentedRoot: "border-foreground/20",
1269
+ avatarRoot: "border-foreground/20",
1270
+ toolbarRoot: "border-foreground/20",
1271
+ paginationButton: "border-foreground/20",
1272
+ descriptionListItem: "border-foreground/20",
1273
+ accordionItem: "border-foreground/20",
1274
+ accordionPanel: "border-foreground/20",
1275
+ menuContent: "border-foreground/20",
1276
+ menuSeparator: "bg-foreground/15",
1277
+ menuSubContent: "border-foreground/20",
1278
+ tableContainer: "border-foreground/20 [--base-table-header-separator:hsl(var(--foreground)_/_0.15)]",
1279
+ tableHeader: "border-foreground/20",
1280
+ tableFooter: "[&_tr>*]:border-foreground/20",
1281
+ tableFooterBar: "border-foreground/20",
1282
+ tableFooterBarAttached: "border-t border-foreground/20",
1283
+ tableRow: "[&>*]:border-foreground/15",
1284
+ tableEmptyRow: "[&>*]:border-foreground/15",
1285
+ tableLoadingRow: "[&>*]:border-foreground/15",
1286
+ layoutRoot: "border-foreground/20",
1287
+ layoutPaneBordered: "border-foreground/20",
1288
+ layoutResizeHandle: "hover:bg-foreground/15 active:bg-foreground/20 focus-visible:bg-foreground/15"
1289
+ }
1290
+ };
1291
+ var backgroundSlots = {
1292
+ plain: {},
1293
+ muted: {
1294
+ buttonDefault: "bg-muted/20 hover:bg-muted/45",
1295
+ panelRoot: "bg-card",
1296
+ panelFooter: "bg-muted/20",
1297
+ stateRoot: "bg-muted/20",
1298
+ controlWrapper: "bg-background",
1299
+ selectMenu: "bg-background",
1300
+ selectOptionActive: "bg-muted/70 text-foreground",
1301
+ checkboxBox: "bg-background",
1302
+ radioOption: "bg-card hover:bg-muted/45",
1303
+ radioMarker: "bg-background",
1304
+ dialogPanel: "bg-card",
1305
+ dropdownMenu: "bg-background",
1306
+ dropdownItem: "hover:bg-muted/60",
1307
+ tooltipContent: "bg-popover",
1308
+ noticeDefault: "bg-muted/20",
1309
+ tabsList: "bg-muted/35",
1310
+ tabsTriggerActive: "bg-background",
1311
+ tabsPanel: "bg-card",
1312
+ segmentedRoot: "bg-muted/35",
1313
+ segmentedItemActive: "bg-background",
1314
+ progressTrack: "bg-muted/60",
1315
+ skeletonRoot: "bg-muted",
1316
+ toolbarRoot: "bg-card",
1317
+ paginationButton: "bg-background hover:bg-muted/60",
1318
+ paginationPage: "bg-muted/60",
1319
+ descriptionListItem: "bg-card",
1320
+ accordionItem: "bg-card",
1321
+ menuContent: "bg-background",
1322
+ menuItem: "focus:bg-muted/70 data-[highlighted]:bg-muted/70",
1323
+ menuSubTrigger: "focus:bg-muted/70 data-[highlighted]:bg-muted/70 data-[state=open]:bg-muted/70",
1324
+ menuSubContent: "bg-background",
1325
+ tableContainer: "bg-background/95 [scrollbar-gutter:stable]",
1326
+ tableFooter: "bg-muted/35",
1327
+ tableFooterBar: "bg-muted/30 shadow-none",
1328
+ tableRowInteractive: "cursor-pointer [--base-table-row-hover-bg:hsl(var(--muted)_/_0.45)]",
1329
+ tableLoadingSkeleton: "bg-muted",
1330
+ layoutRoot: "bg-card",
1331
+ layoutPane: "bg-card",
1332
+ layoutPaneMuted: "bg-muted/35",
1333
+ layoutResizeHandle: "hover:bg-border/70 active:bg-border/80 focus-visible:bg-border/70"
1334
+ },
1335
+ soft: {
1336
+ buttonDefault: "bg-muted/30 hover:bg-muted/55",
1337
+ panelRoot: "bg-background/95 shadow-sm",
1338
+ stateRoot: "bg-background/95 shadow-sm",
1339
+ controlWrapper: "bg-background/95",
1340
+ selectMenu: "bg-background/95 shadow-xl",
1341
+ selectOptionActive: "bg-muted/60 text-foreground",
1342
+ checkboxBox: "bg-background/95",
1343
+ radioOption: "bg-background/95 shadow-sm hover:bg-muted/35",
1344
+ radioMarker: "bg-background/95",
1345
+ dialogPanel: "bg-background/95 shadow-xl",
1346
+ dropdownMenu: "bg-background/95 shadow-xl",
1347
+ dropdownItem: "hover:bg-muted/55",
1348
+ tooltipContent: "bg-popover shadow-xl",
1349
+ noticeDefault: "bg-background/95 shadow-sm",
1350
+ tabsList: "bg-background/60 shadow-sm",
1351
+ tabsTriggerActive: "bg-background",
1352
+ tabsPanel: "bg-background/95 shadow-sm",
1353
+ segmentedRoot: "bg-background/60 shadow-sm",
1354
+ segmentedItemActive: "bg-background",
1355
+ skeletonRoot: "bg-background/80",
1356
+ toolbarRoot: "bg-background/95 shadow-sm",
1357
+ paginationButton: "bg-background/95 hover:bg-muted/55",
1358
+ descriptionListItem: "bg-background/95 shadow-sm",
1359
+ accordionItem: "bg-background/95 shadow-sm",
1360
+ menuContent: "bg-background/95 shadow-xl",
1361
+ menuItem: "focus:bg-muted/60 data-[highlighted]:bg-muted/60",
1362
+ menuSubTrigger: "focus:bg-muted/60 data-[highlighted]:bg-muted/60 data-[state=open]:bg-muted/60",
1363
+ menuSubContent: "bg-background/95 shadow-xl",
1364
+ tableContainer: "bg-background/95 shadow-sm [scrollbar-gutter:stable]",
1365
+ tableFooter: "bg-muted/25",
1366
+ tableFooterBar: "bg-muted/25 shadow-none",
1367
+ tableRowInteractive: "cursor-pointer [--base-table-row-hover-bg:hsl(var(--muted)_/_0.35)]",
1368
+ tableLoadingSkeleton: "bg-muted/65",
1369
+ layoutRoot: "bg-background/95 shadow-sm",
1370
+ layoutPane: "bg-background/95 shadow-sm",
1371
+ layoutPaneSoft: "bg-background/95 shadow-md"
1372
+ },
1373
+ glass: {
1374
+ buttonBase: "backdrop-blur-md",
1375
+ buttonDefault: "border-white/10 bg-white/[0.08] text-foreground hover:bg-white/[0.14]",
1376
+ badgeDefault: "border-white/10 bg-white/[0.08] text-foreground",
1377
+ panelRoot: "border-white/10 bg-white/[0.06] shadow-none backdrop-blur-md",
1378
+ panelFooter: "border-white/10 bg-white/[0.05]",
1379
+ stateRoot: "border-white/10 bg-white/[0.06] shadow-none backdrop-blur-md",
1380
+ stateIcon: "bg-white/10 text-foreground",
1381
+ controlWrapper: "border-white/10 bg-white/[0.08] text-foreground backdrop-blur-md",
1382
+ selectMenu: "border-foreground/10 bg-background/10 text-foreground shadow-[0_18px_60px_hsl(var(--foreground)/0.18)] backdrop-blur-md",
1383
+ selectOption: "text-foreground",
1384
+ selectOptionActive: "bg-white/[0.14] text-foreground",
1385
+ selectOptionSelected: "bg-white/[0.18] text-foreground",
1386
+ switchTrack: "border-white/10 bg-white/[0.12] backdrop-blur-md",
1387
+ checkboxBox: "border-white/10 bg-white/[0.08] backdrop-blur-md",
1388
+ checkboxBoxChecked: "border-white/20 bg-white/[0.22] text-foreground",
1389
+ radioOption: "border-white/10 bg-white/[0.06] backdrop-blur-md hover:bg-white/[0.10]",
1390
+ radioMarker: "border-white/10 bg-white/[0.08] backdrop-blur-md",
1391
+ radioMarkerChecked: "border-white/25 bg-white/[0.16]",
1392
+ dialogOverlay: "bg-background/45 backdrop-blur-md",
1393
+ dialogPanel: "border-white/10 bg-white/[0.08] shadow-2xl backdrop-blur-md",
1394
+ dialogHeader: "border-white/10",
1395
+ dialogFooter: "border-white/10",
1396
+ dropdownMenu: "border-foreground/10 bg-background/10 text-foreground shadow-[0_18px_60px_hsl(var(--foreground)/0.18)] backdrop-blur-md",
1397
+ dropdownItem: "text-foreground hover:bg-white/[0.14]",
1398
+ tooltipContent: "border-foreground/10 bg-background/15 text-foreground shadow-[0_18px_60px_hsl(var(--foreground)/0.18)] backdrop-blur-md",
1399
+ noticeDefault: "border-white/10 bg-white/[0.08] text-foreground backdrop-blur-md",
1400
+ dividerRoot: "border-white/15",
1401
+ tabsList: "border-white/10 bg-white/[0.08] backdrop-blur-md",
1402
+ tabsTrigger: "text-muted-foreground hover:bg-white/[0.12] hover:text-foreground",
1403
+ tabsTriggerActive: "bg-white/[0.16] text-foreground shadow-none",
1404
+ tabsPanel: "border-white/10 bg-white/[0.06] shadow-none backdrop-blur-md",
1405
+ segmentedRoot: "border-white/10 bg-white/[0.08] backdrop-blur-md",
1406
+ segmentedItem: "text-muted-foreground hover:bg-white/[0.12] hover:text-foreground",
1407
+ segmentedItemActive: "bg-white/[0.16] text-foreground shadow-none",
1408
+ progressTrack: "bg-white/[0.12]",
1409
+ skeletonRoot: "bg-white/[0.16]",
1410
+ avatarRoot: "border-white/10 bg-white/[0.12] text-foreground",
1411
+ avatarFallback: "bg-white/[0.12] text-foreground",
1412
+ avatarStatus: "border-background",
1413
+ toolbarRoot: "border-white/10 bg-white/[0.06] shadow-none backdrop-blur-md",
1414
+ paginationButton: "border-white/10 bg-white/[0.08] text-foreground hover:bg-white/[0.14]",
1415
+ paginationPage: "bg-white/[0.12] text-foreground",
1416
+ descriptionListItem: "border-white/10 bg-white/[0.06] shadow-none backdrop-blur-md",
1417
+ accordionItem: "border-white/10 bg-white/[0.06] shadow-none backdrop-blur-md",
1418
+ accordionPanel: "border-white/10",
1419
+ menuContent: "border-foreground/10 bg-background/10 text-foreground shadow-[0_18px_60px_hsl(var(--foreground)/0.18)] backdrop-blur-md",
1420
+ menuSeparator: "bg-white/10",
1421
+ menuItem: "text-foreground focus:bg-white/[0.14] focus:text-foreground data-[highlighted]:bg-white/[0.14] data-[highlighted]:text-foreground",
1422
+ menuSubTrigger: "text-foreground focus:bg-white/[0.14] focus:text-foreground data-[highlighted]:bg-white/[0.14] data-[highlighted]:text-foreground data-[state=open]:bg-white/[0.16]",
1423
+ menuSubContent: "border-foreground/10 bg-background/10 text-foreground shadow-[0_18px_60px_hsl(var(--foreground)/0.18)] backdrop-blur-md",
1424
+ tableContainer: "border-foreground/10 bg-background/[0.06] shadow-none backdrop-blur-md [scrollbar-gutter:stable] [--base-table-sticky-header-bg:hsl(var(--background)/0.94)] [--base-table-header-separator:hsl(var(--foreground)/0.24)]",
1425
+ tableHeader: "border-white/10",
1426
+ tableFooter: "bg-white/[0.05] [&_tr>*]:border-white/10",
1427
+ tableFooterBar: "border-white/10 bg-white/[0.05] shadow-none backdrop-blur-md",
1428
+ tableFooterBarAttached: "border-t border-white/10",
1429
+ tableRow: "[&>*]:border-white/10",
1430
+ tableRowInteractive: "cursor-pointer [--base-table-row-hover-bg:hsl(var(--foreground)/0.08)]",
1431
+ tableHeadLabel: "text-foreground",
1432
+ tableLoadingSkeleton: "bg-white/[0.16]",
1433
+ layoutRoot: "border-white/10 bg-white/[0.05] shadow-none backdrop-blur-md",
1434
+ layoutPane: "border-white/10 bg-white/[0.06] shadow-none backdrop-blur-md",
1435
+ layoutPaneMuted: "bg-white/[0.08]",
1436
+ layoutPaneSoft: "bg-white/[0.10] shadow-none backdrop-blur-md",
1437
+ layoutResizeHandle: "text-foreground/65 hover:bg-white/10 active:bg-white/15 focus-visible:bg-white/10",
1438
+ layoutResizeHandleIndicator: "bg-white/45 group-hover/resize:bg-white/75"
1439
+ },
1440
+ dark: {
1441
+ buttonBase: "border-white/15 text-white shadow-lg backdrop-blur",
1442
+ buttonDefault: "bg-black/30 hover:bg-black/[0.45]",
1443
+ buttonPrimary: "border-white/25 bg-white/20 text-white hover:bg-white/25",
1444
+ buttonMuted: "border-white/10 bg-black/20 text-white/70 hover:bg-black/[0.35] hover:text-white",
1445
+ badgeDefault: "border-white/10 bg-white/[0.08] text-white",
1446
+ badgeMuted: "border-white/10 bg-black/20 text-white/70",
1447
+ panelRoot: "border-white/10 bg-slate-950 text-white shadow-none",
1448
+ panelTitle: "text-white",
1449
+ panelDescription: "text-white/65",
1450
+ panelBody: "text-white/85",
1451
+ panelFooter: "border-white/10 bg-white/[0.04]",
1452
+ stateRoot: "border-white/10 bg-slate-950 text-white shadow-none",
1453
+ stateIcon: "bg-white/10 text-white/75",
1454
+ stateTitle: "text-white",
1455
+ stateDescription: "text-white/65",
1456
+ fieldLabel: "text-white",
1457
+ fieldDescription: "text-white/65",
1458
+ fieldMessage: "text-white/65",
1459
+ controlWrapper: "border-white/15 bg-black/30 text-white shadow-lg backdrop-blur focus-within:border-white/35",
1460
+ controlBase: "text-white placeholder:text-white/45",
1461
+ selectChevron: "text-white/65",
1462
+ selectMenu: "border-white/15 bg-slate-950 text-white shadow-2xl",
1463
+ selectOption: "text-white",
1464
+ selectOptionActive: "bg-white/[0.12] text-white",
1465
+ selectOptionSelected: "bg-white/[0.16] text-white",
1466
+ selectPlaceholder: "text-white/45",
1467
+ switchTrack: "border-white/15 bg-black/30 shadow-lg backdrop-blur",
1468
+ switchChecked: "border-white/25 bg-white/25 text-white",
1469
+ switchLabel: "text-white",
1470
+ switchDescription: "text-white/65",
1471
+ checkboxBox: "border-white/15 bg-black/30 text-white shadow-lg backdrop-blur",
1472
+ checkboxBoxChecked: "border-white/25 bg-white/25 text-white",
1473
+ checkboxLabel: "text-white",
1474
+ checkboxDescription: "text-white/65",
1475
+ radioOption: "border-white/10 bg-white/[0.06] text-white hover:bg-white/[0.08]",
1476
+ radioMarker: "border-white/15 bg-black/30 text-white shadow-lg backdrop-blur",
1477
+ radioMarkerChecked: "border-white/25 bg-white/25",
1478
+ radioIndicator: "bg-white",
1479
+ radioLabel: "text-white",
1480
+ radioDescription: "text-white/65",
1481
+ dialogOverlay: "bg-slate-950/75",
1482
+ dialogPanel: "border-white/10 bg-slate-950 text-white shadow-2xl",
1483
+ dialogHeader: "border-white/10",
1484
+ dialogTitle: "text-white",
1485
+ dialogDescription: "text-white/65",
1486
+ dialogBody: "text-white/85",
1487
+ dialogFooter: "border-white/10",
1488
+ dialogClose: "text-white/65 hover:bg-white/[0.08] hover:text-white",
1489
+ dropdownMenu: "border-white/15 bg-slate-950 text-white shadow-2xl",
1490
+ dropdownLabel: "text-white/55",
1491
+ dropdownSeparator: "bg-white/15",
1492
+ dropdownItem: "text-white hover:bg-white/[0.10]",
1493
+ dropdownItemDescription: "text-white/55",
1494
+ dropdownItemShortcut: "text-white/55",
1495
+ tooltipContent: "border-white/15 bg-slate-950 text-white shadow-2xl",
1496
+ noticeDefault: "border-white/10 bg-white/[0.08] text-white",
1497
+ noticeMuted: "border-white/10 bg-black/20 text-white/70",
1498
+ dividerRoot: "border-white/15",
1499
+ dividerLabel: "text-white/55",
1500
+ sectionHeaderEyebrow: "text-white/55",
1501
+ sectionHeaderTitle: "text-white",
1502
+ sectionHeaderDescription: "text-white/65",
1503
+ tabsList: "border-white/10 bg-white/[0.08]",
1504
+ tabsTrigger: "text-white/65 hover:bg-white/[0.12] hover:text-white",
1505
+ tabsTriggerActive: "bg-white/[0.16] text-white shadow-none",
1506
+ tabsPanel: "border-white/10 bg-white/[0.06] text-white",
1507
+ segmentedRoot: "border-white/10 bg-white/[0.08]",
1508
+ segmentedItem: "text-white/65 hover:bg-white/[0.12] hover:text-white",
1509
+ segmentedItemActive: "bg-white/[0.16] text-white shadow-none",
1510
+ progressTrack: "bg-white/[0.12]",
1511
+ progressLabel: "text-white",
1512
+ progressValue: "text-white/65",
1513
+ skeletonRoot: "bg-white/[0.14]",
1514
+ avatarRoot: "border-white/15 bg-white/[0.10] text-white",
1515
+ avatarFallback: "bg-white/[0.10] text-white/75",
1516
+ avatarText: "text-white",
1517
+ avatarStatus: "border-slate-950",
1518
+ toolbarRoot: "border-white/10 bg-white/[0.06] text-white",
1519
+ toolbarTitle: "text-white",
1520
+ toolbarDescription: "text-white/65",
1521
+ breadcrumbLink: "text-white/65 hover:text-white",
1522
+ breadcrumbCurrent: "text-white",
1523
+ breadcrumbSeparator: "text-white/45",
1524
+ paginationInfo: "text-white/65",
1525
+ paginationButton: "border-white/10 bg-white/[0.08] text-white hover:bg-white/[0.14]",
1526
+ paginationPage: "bg-white/[0.14] text-white",
1527
+ descriptionListItem: "border-white/10 bg-white/[0.06]",
1528
+ descriptionListTerm: "text-white/55",
1529
+ descriptionListValue: "text-white",
1530
+ accordionItem: "border-white/10 bg-white/[0.06]",
1531
+ accordionTrigger: "text-white hover:bg-white/[0.08]",
1532
+ accordionPanel: "border-white/10 text-white/70",
1533
+ tableContainer: "border-foreground/10 bg-background text-foreground shadow-none [scrollbar-gutter:stable] [--base-table-sticky-header-bg:hsl(var(--background)/0.98)] [--base-table-header-separator:hsl(var(--foreground)/0.16)]",
1534
+ tableRoot: "text-white",
1535
+ tableHeader: "border-white/10",
1536
+ tableFooter: "bg-white/[0.05] [&_tr>*]:border-white/10",
1537
+ tableFooterBar: "border-white/10 bg-white/[0.05] text-white/65",
1538
+ tableFooterBarAttached: "border-t border-white/10",
1539
+ tableRow: "[&>*]:border-white/10",
1540
+ tableRowInteractive: "cursor-pointer [--base-table-row-hover-bg:hsl(var(--foreground)/0.06)]",
1541
+ tableHead: "text-white/65",
1542
+ tableHeadLabel: "text-white",
1543
+ tableHeadDescription: "text-white/55",
1544
+ tableHeadMeta: "text-white/55",
1545
+ tableHeadIcon: "text-white/55",
1546
+ tableHeadSortIcon: "text-white/55",
1547
+ tableHeadDragHandle: "text-white/55 hover:bg-white/[0.08]",
1548
+ tableHeadResizeHandle: "after:bg-white/20 hover:after:bg-white/60",
1549
+ tableCell: "text-white/85",
1550
+ tableEmptyIcon: "bg-white/10 text-white/65",
1551
+ tableEmptyTitle: "text-white",
1552
+ tableEmptyDescription: "text-white/60",
1553
+ menuContent: "border-white/10 bg-slate-950 text-white shadow-2xl",
1554
+ menuLabel: "text-white/55",
1555
+ menuSeparator: "bg-white/10",
1556
+ menuItem: "text-white focus:bg-white/[0.10] focus:text-white data-[highlighted]:bg-white/[0.10] data-[highlighted]:text-white",
1557
+ menuItemDefault: "text-white",
1558
+ menuItemPrimary: "text-primary focus:text-primary data-[highlighted]:text-primary",
1559
+ menuItemSuccess: "text-[hsl(var(--success,142_69%_58%))] focus:text-[hsl(var(--success,142_69%_58%))] data-[highlighted]:text-[hsl(var(--success,142_69%_58%))]",
1560
+ menuItemWarning: "text-[hsl(var(--warning-foreground,53_98%_77%))] focus:text-[hsl(var(--warning-foreground,53_98%_77%))] data-[highlighted]:text-[hsl(var(--warning-foreground,53_98%_77%))]",
1561
+ menuItemDanger: "text-destructive-text focus:text-destructive-text data-[highlighted]:text-destructive-text",
1562
+ menuItemMuted: "text-white/65 focus:text-white data-[highlighted]:text-white",
1563
+ menuItemShortcut: "text-white/45",
1564
+ menuSubTrigger: "text-white focus:bg-white/[0.10] focus:text-white data-[highlighted]:bg-white/[0.10] data-[highlighted]:text-white data-[state=open]:bg-white/[0.12]",
1565
+ menuSubTriggerIcon: "text-white/55",
1566
+ menuSubContent: "border-white/10 bg-slate-950 text-white shadow-2xl",
1567
+ tableLoadingSkeleton: "bg-white/[0.14]",
1568
+ layoutRoot: "border-white/10 bg-slate-950 text-white shadow-none",
1569
+ layoutPane: "border-white/10 bg-slate-950 text-white shadow-none",
1570
+ layoutPaneMuted: "bg-white/[0.06]",
1571
+ layoutPaneSoft: "bg-white/[0.08] shadow-none",
1572
+ layoutResizeHandle: "text-white/65 hover:bg-white/10 active:bg-white/15 focus-visible:bg-white/10",
1573
+ layoutResizeHandleIndicator: "bg-white/45 group-hover/resize:bg-white/75"
1574
+ }
1575
+ };
1576
+ var presetDefaults = {
1577
+ default: {
1578
+ density: "default",
1579
+ radius: "md",
1580
+ border: "solid",
1581
+ background: "plain"
1582
+ },
1583
+ soft: {
1584
+ density: "default",
1585
+ radius: "lg",
1586
+ border: "subtle",
1587
+ background: "soft"
1588
+ },
1589
+ compact: {
1590
+ density: "compact",
1591
+ radius: "md",
1592
+ border: "subtle",
1593
+ background: "muted"
1594
+ },
1595
+ "tinted-glass": {
1596
+ density: "default",
1597
+ radius: "lg",
1598
+ border: "subtle",
1599
+ background: "glass"
1600
+ },
1601
+ glass: {
1602
+ density: "default",
1603
+ radius: "xl",
1604
+ border: "subtle",
1605
+ background: "glass"
1606
+ },
1607
+ "hard-edge": {
1608
+ density: "compact",
1609
+ radius: "none",
1610
+ border: "strong",
1611
+ background: "plain"
1612
+ }
1613
+ };
1614
+ var presetSlots = {
1615
+ soft: {
1616
+ buttonBase: "font-medium",
1617
+ panelRoot: "border-border/70",
1618
+ controlWrapper: "font-medium",
1619
+ tabsTrigger: "font-medium",
1620
+ segmentedItem: "font-medium",
1621
+ toolbarRoot: "border-border/70",
1622
+ tableContainer: "border-border/70",
1623
+ tableFooterBar: "border-border/70",
1624
+ tableHeadLabel: "font-semibold",
1625
+ menuItemLabel: "font-medium"
1626
+ },
1627
+ compact: {
1628
+ buttonBase: "text-xs",
1629
+ badgeBase: "text-[11px]",
1630
+ fieldLabel: "text-xs",
1631
+ controlBase: "text-xs",
1632
+ selectOption: "text-xs",
1633
+ menuItem: "text-xs",
1634
+ menuSubTrigger: "text-xs",
1635
+ noticeBase: "text-xs",
1636
+ sectionHeaderTitle: "text-sm",
1637
+ tabsTrigger: "text-xs",
1638
+ segmentedItem: "text-xs",
1639
+ toolbarTitle: "text-xs",
1640
+ paginationRoot: "text-xs"
1641
+ },
1642
+ "tinted-glass": {
1643
+ buttonPrimary: "border-primary/25 bg-primary/15 text-primary-foreground hover:bg-primary/20",
1644
+ badgePrimary: "border-primary/25 bg-primary/15 text-primary-foreground",
1645
+ noticePrimary: "border-primary/25 bg-primary/15 text-primary-foreground",
1646
+ progressIndicator: "bg-primary",
1647
+ avatarStatus: "border-background"
1648
+ },
1649
+ glass: {
1650
+ panelRoot: "shadow-[0_24px_80px_hsl(var(--foreground)/0.12)]",
1651
+ stateRoot: "shadow-[0_24px_80px_hsl(var(--foreground)/0.12)]",
1652
+ noticeBase: "shadow-[0_18px_60px_hsl(var(--foreground)/0.10)]",
1653
+ tabsPanel: "shadow-[0_18px_60px_hsl(var(--foreground)/0.10)]",
1654
+ toolbarRoot: "shadow-[0_18px_60px_hsl(var(--foreground)/0.10)]",
1655
+ descriptionListItem: "shadow-[0_12px_40px_hsl(var(--foreground)/0.08)]",
1656
+ accordionItem: "shadow-[0_12px_40px_hsl(var(--foreground)/0.08)]"
1657
+ },
1658
+ "hard-edge": {
1659
+ buttonBase: "shadow-none",
1660
+ panelRoot: "shadow-none",
1661
+ stateRoot: "shadow-none",
1662
+ controlWrapper: "shadow-none",
1663
+ selectMenu: "shadow-none",
1664
+ menuContent: "shadow-none",
1665
+ menuSubContent: "shadow-none",
1666
+ noticeBase: "shadow-none",
1667
+ tabsList: "shadow-none",
1668
+ tabsTriggerActive: "shadow-none",
1669
+ tabsPanel: "shadow-none",
1670
+ segmentedRoot: "shadow-none",
1671
+ segmentedItemActive: "shadow-none",
1672
+ toolbarRoot: "shadow-none",
1673
+ descriptionListItem: "shadow-none",
1674
+ accordionItem: "shadow-none"
1675
+ }
1676
+ };
1677
+ function getPresetDefaults(preset) {
1678
+ return presetDefaults[preset] ?? presetDefaults.default;
1679
+ }
1680
+ var slotKeys = Object.keys(baseSlots);
1681
+ function mergeSlots(...sources) {
1682
+ return slotKeys.reduce((resolved, key) => {
1683
+ resolved[key] = cn(...sources.map((source) => source?.[key]));
1684
+ return resolved;
1685
+ }, {});
1686
+ }
1687
+ function mergeStyles(...styleSets) {
1688
+ return Object.assign({}, ...styleSets.filter(Boolean));
1689
+ }
1690
+ function resolveBaseAppearance(appearance) {
1691
+ const preset = appearance?.preset ?? "default";
1692
+ const variant = appearance?.variant ?? "default";
1693
+ const defaults = getPresetDefaults(preset);
1694
+ const density = appearance?.density ?? defaults.density ?? "default";
1695
+ const state = appearance?.state ?? "idle";
1696
+ const radius = appearance?.radius ?? defaults.radius ?? "md";
1697
+ const border = appearance?.border ?? defaults.border ?? "solid";
1698
+ const background = appearance?.background ?? defaults.background ?? "plain";
1699
+ return {
1700
+ preset,
1701
+ variant,
1702
+ density,
1703
+ state,
1704
+ radius,
1705
+ border,
1706
+ background,
1707
+ styles: mergeStyles(emptyStyles, appearance?.styles),
1708
+ slots: mergeSlots(
1709
+ baseSlots,
1710
+ presetSlots[preset],
1711
+ densitySlots[density],
1712
+ radiusSlots[radius],
1713
+ borderSlots[border],
1714
+ backgroundSlots[background],
1715
+ appearance?.slots
1716
+ )
1717
+ };
1718
+ }
1719
+ function BasePanel({
1720
+ as = "article",
1721
+ title,
1722
+ description,
1723
+ media,
1724
+ header,
1725
+ footer,
1726
+ children,
1727
+ interactive,
1728
+ selected,
1729
+ disabled,
1730
+ appearance,
1731
+ variant,
1732
+ density,
1733
+ state,
1734
+ className,
1735
+ classNames,
1736
+ style,
1737
+ ...panelProps
1738
+ }) {
1739
+ const theme = resolveBaseAppearance({ ...appearance, variant, density, state });
1740
+ const Component = as;
1741
+ const hasHeader = header !== void 0 ? hasRenderableNode(header) : hasRenderableNode(title) || hasRenderableNode(description);
1742
+ const hasMedia = media !== void 0 && media !== null;
1743
+ const bodyIsStandalone = !hasHeader && !hasMedia;
1744
+ return /* @__PURE__ */ jsxs(
1745
+ Component,
1746
+ {
1747
+ ...panelProps,
1748
+ "aria-disabled": disabled || void 0,
1749
+ "data-variant": theme.variant,
1750
+ "data-density": theme.density,
1751
+ "data-state": state ?? (disabled ? "disabled" : selected ? "selected" : "idle"),
1752
+ "data-monkeys-component": "panel",
1753
+ "data-slot": "root",
1754
+ "data-interactive": interactive || void 0,
1755
+ "data-selected": selected || void 0,
1756
+ "data-disabled": disabled || void 0,
1757
+ className: cn(
1758
+ theme.slots.panelRoot,
1759
+ interactive && !disabled && theme.slots.panelInteractive,
1760
+ selected && theme.slots.panelSelected,
1761
+ disabled && theme.slots.panelDisabled,
1762
+ classNames?.root,
1763
+ className
1764
+ ),
1765
+ style: {
1766
+ ...theme.styles.panel,
1767
+ ...style
1768
+ },
1769
+ children: [
1770
+ hasMedia ? /* @__PURE__ */ jsx(
1771
+ "div",
1772
+ {
1773
+ "data-slot": "media",
1774
+ className: cn(theme.slots.panelMedia, classNames?.media),
1775
+ children: media
1776
+ }
1777
+ ) : null,
1778
+ hasHeader ? /* @__PURE__ */ jsx(
1779
+ "div",
1780
+ {
1781
+ "data-slot": "header",
1782
+ className: cn(theme.slots.panelHeader, classNames?.header),
1783
+ style: theme.styles.panelHeader,
1784
+ children: header !== void 0 ? header : /* @__PURE__ */ jsxs(Fragment, { children: [
1785
+ hasRenderableNode(title) ? /* @__PURE__ */ jsx(
1786
+ "div",
1787
+ {
1788
+ "data-slot": "title",
1789
+ className: cn(theme.slots.panelTitle, classNames?.title),
1790
+ children: title
1791
+ }
1792
+ ) : null,
1793
+ hasRenderableNode(description) ? /* @__PURE__ */ jsx(
1794
+ "div",
1795
+ {
1796
+ "data-slot": "description",
1797
+ className: cn(
1798
+ theme.slots.panelDescription,
1799
+ classNames?.description
1800
+ ),
1801
+ children: description
1802
+ }
1803
+ ) : null
1804
+ ] })
1805
+ }
1806
+ ) : null,
1807
+ children !== void 0 && children !== null ? /* @__PURE__ */ jsx(
1808
+ "div",
1809
+ {
1810
+ "data-slot": "body",
1811
+ className: cn(
1812
+ theme.slots.panelBody,
1813
+ bodyIsStandalone && theme.slots.panelBodyStandalone,
1814
+ classNames?.body
1815
+ ),
1816
+ style: theme.styles.panelBody,
1817
+ children
1818
+ }
1819
+ ) : null,
1820
+ footer !== void 0 && footer !== null ? /* @__PURE__ */ jsx(
1821
+ "div",
1822
+ {
1823
+ "data-slot": "footer",
1824
+ className: cn(theme.slots.panelFooter, classNames?.footer),
1825
+ style: theme.styles.panelFooter,
1826
+ children: footer
1827
+ }
1828
+ ) : null
1829
+ ]
1830
+ }
1831
+ );
1832
+ }
1833
+ var defaultAppearance = {
1834
+ preset: "soft",
1835
+ radius: "lg",
1836
+ border: "subtle",
1837
+ background: "muted"
1838
+ };
1839
+ function BentoPanel({
1840
+ children,
1841
+ className,
1842
+ contentClassName,
1843
+ title,
1844
+ titleIcon: TitleIcon,
1845
+ action,
1846
+ appearance,
1847
+ classNames,
1848
+ ...props
1849
+ }) {
1850
+ return /* @__PURE__ */ jsx(
1851
+ BasePanel,
1852
+ {
1853
+ as: "section",
1854
+ appearance: { ...defaultAppearance, ...appearance },
1855
+ classNames: {
1856
+ ...classNames,
1857
+ root: cn("min-h-0", classNames?.root, className),
1858
+ header: cn(
1859
+ "flex min-w-0 items-center gap-3 border-b border-border px-4 py-3",
1860
+ classNames?.header
1861
+ ),
1862
+ body: cn("min-h-0 p-0", classNames?.body, contentClassName)
1863
+ },
1864
+ header: title ? /* @__PURE__ */ jsxs("div", { className: "flex min-w-0 flex-1 items-center justify-between gap-3", children: [
1865
+ /* @__PURE__ */ jsxs("div", { className: "flex min-w-0 items-center gap-2.5", children: [
1866
+ TitleIcon ? /* @__PURE__ */ jsx("span", { className: "inline-flex size-8 shrink-0 items-center justify-center rounded-md border border-primary/30 bg-primary/10 text-primary", children: /* @__PURE__ */ jsx(TitleIcon, { className: "size-4 text-primary", color: "currentColor", stroke: "currentColor" }) }) : null,
1867
+ /* @__PURE__ */ jsx("h2", { className: "truncate text-[15px] font-semibold leading-5 text-foreground", children: title })
1868
+ ] }),
1869
+ action ? /* @__PURE__ */ jsx("div", { className: "shrink-0", children: action }) : null
1870
+ ] }) : void 0,
1871
+ ...props,
1872
+ children
1873
+ }
1874
+ );
1875
+ }
288
1876
  function Calendar({ className, classNames, components, showOutsideDays = true, ...props }) {
289
1877
  return /* @__PURE__ */ jsx(
290
1878
  DayPicker,
@@ -2262,6 +3850,6 @@ var Leaf = forwardRef(({ className, item, isSelected, Icon: Icon2, children, ...
2262
3850
  });
2263
3851
  Leaf.displayName = "Leaf";
2264
3852
 
2265
- export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, Alert, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDangerAction, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertTitle, AutosizeTextarea, Avatar, AvatarFallback, AvatarImage, Badge, Button, ButtonGroup, ButtonGroupSeparator, ButtonGroupText, Calendar, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Carousel, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious, Checkbox, Collapsible, CollapsibleContent2 as CollapsibleContent, CollapsibleTrigger2 as CollapsibleTrigger, Dialog, DialogClose, DialogContent, DialogContentNoAnimation, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, FloatingPopover, FloatingPopoverContent, FloatingPopoverTrigger, HoverCard, HoverCardContent, HoverCardPortal, HoverCardTrigger, Indicator2 as Indicator, InfiniteScroll, Input, InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, InputGroupTextarea, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, Label3 as Label, MEDIA_PREVIEW_ASPECT_RATIOS, MediaPreviewFrame, MediaPreviewImage, PillInput, PolymorphicSlot, Popover, PopoverAnchor, PopoverClose, PopoverContent, PopoverTrigger, Progress, ResizableHandle, ResizablePanel, ResizablePanelGroup, RoundedBadge, ScrollArea, ScrollBar, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupLabel, SidebarHeader, SidebarMenu, SidebarMenuButton, SidebarMenuItem, Skeleton, SkeletonAvatar, SkeletonButton, SkeletonCard, SkeletonForm, SkeletonFormField, SkeletonImage, SkeletonList, SkeletonTable, SkeletonText, Slider, StatusState, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, Textarea, Toggle, ToggleGroup, ToggleGroupItem, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, Tree, alertVariants, badgeVariants, buttonGroupVariants, buttonVariants, convertPillValue, formatSliderNumber, isValidPillValue, mediaPreviewFrameClassName, normalizeSliderNumber, resolveMediaPreviewAspectRatioValue, toggleClassName, toggleVariants, useAutosizeTextArea, useCarousel };
3853
+ export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, Alert, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDangerAction, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertTitle, AutosizeTextarea, Avatar, AvatarFallback, AvatarImage, Badge, BentoPanel, Button, ButtonGroup, ButtonGroupSeparator, ButtonGroupText, Calendar, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Carousel, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious, Checkbox, Collapsible, CollapsibleContent2 as CollapsibleContent, CollapsibleTrigger2 as CollapsibleTrigger, Dialog, DialogClose, DialogContent, DialogContentNoAnimation, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, FloatingPopover, FloatingPopoverContent, FloatingPopoverTrigger, HoverCard, HoverCardContent, HoverCardPortal, HoverCardTrigger, Indicator2 as Indicator, InfiniteScroll, Input, InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, InputGroupTextarea, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, Label3 as Label, MEDIA_PREVIEW_ASPECT_RATIOS, MediaPreviewFrame, MediaPreviewImage, PillInput, PolymorphicSlot, Popover, PopoverAnchor, PopoverClose, PopoverContent, PopoverTrigger, Progress, ResizableHandle, ResizablePanel, ResizablePanelGroup, RoundedBadge, ScrollArea, ScrollBar, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetPortal, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupLabel, SidebarHeader, SidebarMenu, SidebarMenuButton, SidebarMenuItem, Skeleton, SkeletonAvatar, SkeletonButton, SkeletonCard, SkeletonForm, SkeletonFormField, SkeletonImage, SkeletonList, SkeletonTable, SkeletonText, Slider, StatusState, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, TabsContent, TabsList, TabsTrigger, Textarea, Toggle, ToggleGroup, ToggleGroupItem, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, Tree, alertVariants, badgeVariants, buttonGroupVariants, buttonVariants, convertPillValue, formatSliderNumber, isValidPillValue, mediaPreviewFrameClassName, normalizeSliderNumber, resolveMediaPreviewAspectRatioValue, toggleClassName, toggleVariants, useAutosizeTextArea, useCarousel };
2266
3854
  //# sourceMappingURL=index.mjs.map
2267
3855
  //# sourceMappingURL=index.mjs.map