@waveso/ui 0.5.0 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (102) hide show
  1. package/dist/accordion.js +2 -2
  2. package/dist/accordion.js.map +1 -1
  3. package/dist/action-bar.js +2 -2
  4. package/dist/action-bar.js.map +1 -1
  5. package/dist/alert-dialog.js +4 -4
  6. package/dist/alert-dialog.js.map +1 -1
  7. package/dist/alert.js +5 -5
  8. package/dist/alert.js.map +1 -1
  9. package/dist/animate.d.ts.map +1 -1
  10. package/dist/animate.js +1 -2
  11. package/dist/animate.js.map +1 -1
  12. package/dist/autocomplete.js +8 -8
  13. package/dist/autocomplete.js.map +1 -1
  14. package/dist/avatar.js +5 -5
  15. package/dist/avatar.js.map +1 -1
  16. package/dist/badge.d.ts +1 -1
  17. package/dist/badge.d.ts.map +1 -1
  18. package/dist/badge.js +5 -6
  19. package/dist/badge.js.map +1 -1
  20. package/dist/breadcrumb.js +3 -3
  21. package/dist/breadcrumb.js.map +1 -1
  22. package/dist/button-group.js +5 -5
  23. package/dist/button-group.js.map +1 -1
  24. package/dist/button.d.ts +1 -1
  25. package/dist/button.d.ts.map +1 -1
  26. package/dist/button.js +9 -10
  27. package/dist/button.js.map +1 -1
  28. package/dist/card.js +4 -4
  29. package/dist/card.js.map +1 -1
  30. package/dist/checkbox.js +1 -1
  31. package/dist/checkbox.js.map +1 -1
  32. package/dist/combobox.d.ts.map +1 -1
  33. package/dist/combobox.js +10 -10
  34. package/dist/combobox.js.map +1 -1
  35. package/dist/context-menu.js +9 -9
  36. package/dist/context-menu.js.map +1 -1
  37. package/dist/dialog.d.ts.map +1 -1
  38. package/dist/dialog.js +4 -4
  39. package/dist/dialog.js.map +1 -1
  40. package/dist/drawer.js +4 -4
  41. package/dist/drawer.js.map +1 -1
  42. package/dist/field.js +2 -2
  43. package/dist/field.js.map +1 -1
  44. package/dist/form.js +2 -2
  45. package/dist/form.js.map +1 -1
  46. package/dist/infinite-scroll.js +2 -2
  47. package/dist/infinite-scroll.js.map +1 -1
  48. package/dist/input-group.d.ts +1 -1
  49. package/dist/input-group.js +5 -5
  50. package/dist/input-group.js.map +1 -1
  51. package/dist/input-otp.js +3 -3
  52. package/dist/input-otp.js.map +1 -1
  53. package/dist/input.js +1 -1
  54. package/dist/input.js.map +1 -1
  55. package/dist/item.js +4 -4
  56. package/dist/item.js.map +1 -1
  57. package/dist/kbd.js +1 -1
  58. package/dist/kbd.js.map +1 -1
  59. package/dist/menu.js +9 -9
  60. package/dist/menu.js.map +1 -1
  61. package/dist/menubar.js +1 -1
  62. package/dist/menubar.js.map +1 -1
  63. package/dist/popover.js +2 -2
  64. package/dist/popover.js.map +1 -1
  65. package/dist/preview-card.js +1 -1
  66. package/dist/preview-card.js.map +1 -1
  67. package/dist/progress.js +2 -2
  68. package/dist/progress.js.map +1 -1
  69. package/dist/radio.js +2 -2
  70. package/dist/radio.js.map +1 -1
  71. package/dist/scroll-area.js +2 -2
  72. package/dist/scroll-area.js.map +1 -1
  73. package/dist/select.js +8 -8
  74. package/dist/select.js.map +1 -1
  75. package/dist/separator.js +1 -1
  76. package/dist/separator.js.map +1 -1
  77. package/dist/sidebar.js +19 -19
  78. package/dist/sidebar.js.map +1 -1
  79. package/dist/skeleton.js +1 -1
  80. package/dist/skeleton.js.map +1 -1
  81. package/dist/slider.js +2 -2
  82. package/dist/slider.js.map +1 -1
  83. package/dist/styles.css +405 -173
  84. package/dist/switch.js +2 -2
  85. package/dist/switch.js.map +1 -1
  86. package/dist/table.js +4 -4
  87. package/dist/table.js.map +1 -1
  88. package/dist/tabs.js +3 -3
  89. package/dist/tabs.js.map +1 -1
  90. package/dist/textarea.js +1 -1
  91. package/dist/textarea.js.map +1 -1
  92. package/dist/toast.d.ts +3 -3
  93. package/dist/toast.d.ts.map +1 -1
  94. package/dist/toast.js +37 -10
  95. package/dist/toast.js.map +1 -1
  96. package/dist/toggle-group.js +2 -2
  97. package/dist/toggle-group.js.map +1 -1
  98. package/dist/toggle.js +3 -3
  99. package/dist/toggle.js.map +1 -1
  100. package/dist/tooltip.js +1 -1
  101. package/dist/tooltip.js.map +1 -1
  102. package/package.json +2 -5
@@ -1 +1 @@
1
- {"version":3,"file":"input-otp.js","names":[],"sources":["../src/input-otp.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport { OTPInput, OTPInputContext } from \"input-otp\"\n\nimport { cn } from \"./lib/utils\"\nimport { MinusIcon } from \"./lib/internal-icons\"\n\ntype InputOTPProps = React.ComponentProps<typeof OTPInput> & {\n containerClassName?: string\n}\n\nfunction InputOTP({\n className,\n containerClassName,\n ...props\n}: InputOTPProps) {\n return (\n <OTPInput\n data-slot=\"input-otp\"\n containerClassName={cn(\n \"flex items-center has-disabled:opacity-50\",\n containerClassName,\n )}\n spellCheck={false}\n className={cn(\"disabled:cursor-not-allowed\", className)}\n {...props}\n />\n )\n}\n\ntype InputOTPGroupProps = React.ComponentProps<\"div\">\n\nfunction InputOTPGroup({ className, ...props }: InputOTPGroupProps) {\n return (\n <div\n data-slot=\"input-otp-group\"\n className={cn(\n \"flex items-center rounded-lg has-aria-invalid:border-destructive has-aria-invalid:ring-3 has-aria-invalid:ring-destructive/20 dark:has-aria-invalid:ring-destructive/40\",\n className,\n )}\n {...props}\n />\n )\n}\n\ntype InputOTPSlotProps = React.ComponentProps<\"div\"> & {\n index: number\n}\n\nfunction InputOTPSlot({ index, className, ...props }: InputOTPSlotProps) {\n const inputOTPContext = React.useContext(OTPInputContext)\n const { char, hasFakeCaret, isActive } = inputOTPContext?.slots[index] ?? {}\n\n return (\n <div\n data-slot=\"input-otp-slot\"\n data-active={isActive || undefined}\n className={cn(\n \"border-input dark:bg-input/30 relative flex size-9 items-center justify-center border-y border-r text-sm motion-color outline-none first:rounded-l-lg first:border-l last:rounded-r-lg\",\n \"data-active:border-ring data-active:ring-3 data-active:ring-ring/50 data-active:z-10\",\n \"aria-invalid:border-destructive data-active:aria-invalid:border-destructive data-active:aria-invalid:ring-destructive/20 dark:data-active:aria-invalid:ring-destructive/40\",\n className,\n )}\n {...props}\n >\n {char}\n {hasFakeCaret && (\n <div className=\"pointer-events-none absolute inset-0 flex items-center justify-center\">\n <div className=\"animate-caret-blink bg-foreground h-4 w-px duration-1000\" />\n </div>\n )}\n </div>\n )\n}\n\ntype InputOTPSeparatorProps = React.ComponentProps<\"div\">\n\nfunction InputOTPSeparator({ className, ...props }: InputOTPSeparatorProps) {\n return (\n <div\n data-slot=\"input-otp-separator\"\n className={cn(\n \"flex items-center [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n role=\"separator\"\n {...props}\n >\n <MinusIcon />\n </div>\n )\n}\n\nexport {\n InputOTP,\n InputOTPGroup,\n InputOTPSlot,\n InputOTPSeparator\n}\n"],"mappings":";;;;;;;AAYA,SAAS,SAAS,EAChB,WACA,oBACA,GAAG,SACa;AAChB,QACE,oBAAC,UAAD;EACE,aAAU;EACV,oBAAoB,GAClB,6CACA,mBACD;EACD,YAAY;EACZ,WAAW,GAAG,+BAA+B,UAAU;EACvD,GAAI;EACJ,CAAA;;AAMN,SAAS,cAAc,EAAE,WAAW,GAAG,SAA6B;AAClE,QACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GACT,2KACA,UACD;EACD,GAAI;EACJ,CAAA;;AAQN,SAAS,aAAa,EAAE,OAAO,WAAW,GAAG,SAA4B;CAEvE,MAAM,EAAE,MAAM,cAAc,aADJ,MAAM,WAAW,gBACe,EAAE,MAAM,UAAU,EAAE;AAE5E,QACE,qBAAC,OAAD;EACE,aAAU;EACV,eAAa,YAAY,KAAA;EACzB,WAAW,GACT,0LACA,wFACA,8KACA,UACD;EACD,GAAI;YATN,CAWG,MACA,gBACC,oBAAC,OAAD;GAAK,WAAU;aACb,oBAAC,OAAD,EAAK,WAAU,4DAA6D,CAAA;GACxE,CAAA,CAEJ;;;AAMV,SAAS,kBAAkB,EAAE,WAAW,GAAG,SAAiC;AAC1E,QACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GACT,0DACA,UACD;EACD,MAAK;EACL,GAAI;YAEJ,oBAAC,WAAD,EAAa,CAAA;EACT,CAAA"}
1
+ {"version":3,"file":"input-otp.js","names":[],"sources":["../src/input-otp.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport { OTPInput, OTPInputContext } from \"input-otp\"\n\nimport { cn } from \"./lib/utils\"\nimport { MinusIcon } from \"./lib/internal-icons\"\n\ntype InputOTPProps = React.ComponentProps<typeof OTPInput> & {\n containerClassName?: string\n}\n\nfunction InputOTP({\n className,\n containerClassName,\n ...props\n}: InputOTPProps) {\n return (\n <OTPInput\n data-slot=\"input-otp\"\n containerClassName={cn(\n \"flex items-center has-disabled:opacity-50\",\n containerClassName,\n )}\n spellCheck={false}\n className={cn(\"disabled:cursor-not-allowed\", className)}\n {...props}\n />\n )\n}\n\ntype InputOTPGroupProps = React.ComponentProps<\"div\">\n\nfunction InputOTPGroup({ className, ...props }: InputOTPGroupProps) {\n return (\n <div\n data-slot=\"input-otp-group\"\n className={cn(\n \"flex items-center rounded-md has-aria-invalid:border-destructive has-aria-invalid:ring-3 has-aria-invalid:ring-destructive/20 dark:has-aria-invalid:ring-destructive/40\",\n className,\n )}\n {...props}\n />\n )\n}\n\ntype InputOTPSlotProps = React.ComponentProps<\"div\"> & {\n index: number\n}\n\nfunction InputOTPSlot({ index, className, ...props }: InputOTPSlotProps) {\n const inputOTPContext = React.useContext(OTPInputContext)\n const { char, hasFakeCaret, isActive } = inputOTPContext?.slots[index] ?? {}\n\n return (\n <div\n data-slot=\"input-otp-slot\"\n data-active={isActive || undefined}\n className={cn(\n \"border-edge dark:bg-edge/30 relative flex size-9 items-center justify-center border-y border-r text-sm motion-color outline-none first:rounded-l-md first:border-l last:rounded-r-md\",\n \"data-active:border-focus data-active:ring-3 data-active:ring-focus/50 data-active:z-10\",\n \"aria-invalid:border-destructive data-active:aria-invalid:border-destructive data-active:aria-invalid:ring-destructive/20 dark:data-active:aria-invalid:ring-destructive/40\",\n className,\n )}\n {...props}\n >\n {char}\n {hasFakeCaret && (\n <div className=\"pointer-events-none absolute inset-0 flex items-center justify-center\">\n <div className=\"animate-caret-blink bg-contrast h-4 w-px duration-1000\" />\n </div>\n )}\n </div>\n )\n}\n\ntype InputOTPSeparatorProps = React.ComponentProps<\"div\">\n\nfunction InputOTPSeparator({ className, ...props }: InputOTPSeparatorProps) {\n return (\n <div\n data-slot=\"input-otp-separator\"\n className={cn(\n \"flex items-center [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n role=\"separator\"\n {...props}\n >\n <MinusIcon />\n </div>\n )\n}\n\nexport {\n InputOTP,\n InputOTPGroup,\n InputOTPSlot,\n InputOTPSeparator\n}\n"],"mappings":";;;;;;;AAYA,SAAS,SAAS,EAChB,WACA,oBACA,GAAG,SACa;AAChB,QACE,oBAAC,UAAD;EACE,aAAU;EACV,oBAAoB,GAClB,6CACA,mBACD;EACD,YAAY;EACZ,WAAW,GAAG,+BAA+B,UAAU;EACvD,GAAI;EACJ,CAAA;;AAMN,SAAS,cAAc,EAAE,WAAW,GAAG,SAA6B;AAClE,QACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GACT,2KACA,UACD;EACD,GAAI;EACJ,CAAA;;AAQN,SAAS,aAAa,EAAE,OAAO,WAAW,GAAG,SAA4B;CAEvE,MAAM,EAAE,MAAM,cAAc,aADJ,MAAM,WAAW,gBACe,EAAE,MAAM,UAAU,EAAE;AAE5E,QACE,qBAAC,OAAD;EACE,aAAU;EACV,eAAa,YAAY,KAAA;EACzB,WAAW,GACT,wLACA,0FACA,8KACA,UACD;EACD,GAAI;YATN,CAWG,MACA,gBACC,oBAAC,OAAD;GAAK,WAAU;aACb,oBAAC,OAAD,EAAK,WAAU,0DAA2D,CAAA;GACtE,CAAA,CAEJ;;;AAMV,SAAS,kBAAkB,EAAE,WAAW,GAAG,SAAiC;AAC1E,QACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GACT,0DACA,UACD;EACD,MAAK;EACL,GAAI;YAEJ,oBAAC,WAAD,EAAa,CAAA;EACT,CAAA"}
package/dist/input.js CHANGED
@@ -7,7 +7,7 @@ function Input({ className, type, ...props }) {
7
7
  return /* @__PURE__ */ jsx(Input$1, {
8
8
  type,
9
9
  "data-slot": "input",
10
- className: cn("dark:bg-input/30 border-input focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:aria-invalid:border-destructive/50 disabled:bg-input/50 dark:disabled:bg-input/80 file:text-foreground placeholder:text-muted-foreground h-8 w-full min-w-0 rounded-lg border bg-transparent px-2.5 py-1 text-base transition-colors outline-none file:inline-flex file:h-6 file:border-0 file:bg-transparent file:text-sm file:font-medium focus-visible:ring-3 disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:ring-3 md:text-sm", className),
10
+ className: cn("dark:bg-edge/30 border-edge focus-visible:border-focus focus-visible:ring-focus/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:aria-invalid:border-destructive/50 disabled:bg-edge/50 dark:disabled:bg-edge/80 file:text-contrast placeholder:text-soft h-8 w-full min-w-0 rounded-md border bg-transparent px-2.5 py-1 text-base transition-colors outline-none file:inline-flex file:h-6 file:border-0 file:bg-transparent file:text-sm file:font-medium focus-visible:ring-3 disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:ring-3 md:text-sm", className),
11
11
  ...props
12
12
  });
13
13
  }
package/dist/input.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"input.js","names":["InputPrimitive"],"sources":["../src/input.tsx"],"sourcesContent":["import * as React from \"react\"\nimport { Input as InputPrimitive } from \"@base-ui/react/input\"\n\nimport { cn } from \"./lib/utils\"\n\ntype InputProps = React.ComponentProps<\"input\">\n\nfunction Input({ className, type, ...props }: InputProps) {\n return (\n <InputPrimitive\n type={type}\n data-slot=\"input\"\n className={cn(\n \"dark:bg-input/30 border-input focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:aria-invalid:border-destructive/50 disabled:bg-input/50 dark:disabled:bg-input/80 file:text-foreground placeholder:text-muted-foreground h-8 w-full min-w-0 rounded-lg border bg-transparent px-2.5 py-1 text-base transition-colors outline-none file:inline-flex file:h-6 file:border-0 file:bg-transparent file:text-sm file:font-medium focus-visible:ring-3 disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:ring-3 md:text-sm\",\n className\n )}\n {...props}\n />\n )\n}\n\nexport { Input }\n"],"mappings":";;;;;AAOA,SAAS,MAAM,EAAE,WAAW,MAAM,GAAG,SAAqB;AACxD,QACE,oBAACA,SAAD;EACQ;EACN,aAAU;EACV,WAAW,GACT,+oBACA,UACD;EACD,GAAI;EACJ,CAAA"}
1
+ {"version":3,"file":"input.js","names":["InputPrimitive"],"sources":["../src/input.tsx"],"sourcesContent":["import * as React from \"react\"\nimport { Input as InputPrimitive } from \"@base-ui/react/input\"\n\nimport { cn } from \"./lib/utils\"\n\ntype InputProps = React.ComponentProps<\"input\">\n\nfunction Input({ className, type, ...props }: InputProps) {\n return (\n <InputPrimitive\n type={type}\n data-slot=\"input\"\n className={cn(\n \"dark:bg-edge/30 border-edge focus-visible:border-focus focus-visible:ring-focus/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:aria-invalid:border-destructive/50 disabled:bg-edge/50 dark:disabled:bg-edge/80 file:text-contrast placeholder:text-soft h-8 w-full min-w-0 rounded-md border bg-transparent px-2.5 py-1 text-base transition-colors outline-none file:inline-flex file:h-6 file:border-0 file:bg-transparent file:text-sm file:font-medium focus-visible:ring-3 disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:ring-3 md:text-sm\",\n className\n )}\n {...props}\n />\n )\n}\n\nexport { Input }\n"],"mappings":";;;;;AAOA,SAAS,MAAM,EAAE,WAAW,MAAM,GAAG,SAAqB;AACxD,QACE,oBAACA,SAAD;EACQ;EACN,aAAU;EACV,WAAW,GACT,+nBACA,UACD;EACD,GAAI;EACJ,CAAA"}
package/dist/item.js CHANGED
@@ -7,12 +7,12 @@ import { cva } from "class-variance-authority";
7
7
  import { mergeProps } from "@base-ui/react/merge-props";
8
8
  import { useRender } from "@base-ui/react/use-render";
9
9
  //#region src/item.tsx
10
- const itemVariants = cva("[a]:hover:bg-muted rounded-lg border text-sm w-full group/item focus-visible:border-ring focus-visible:ring-ring/50 flex items-center flex-wrap outline-none transition-colors duration-200 focus-visible:ring-3 [a]:transition-colors", {
10
+ const itemVariants = cva("[a]:hover:bg-secondary rounded-md border text-sm w-full group/item focus-visible:border-focus focus-visible:ring-focus/50 flex items-center flex-wrap outline-none transition-colors duration-200 focus-visible:ring-3 [a]:transition-colors", {
11
11
  variants: {
12
12
  variant: {
13
13
  default: "border-transparent",
14
- outline: "border-border",
15
- muted: "bg-muted/50 border-transparent"
14
+ outline: "border-line",
15
+ muted: "bg-secondary/50 border-transparent"
16
16
  },
17
17
  size: {
18
18
  default: "gap-2.5 px-3 py-2.5",
@@ -93,7 +93,7 @@ function ItemTitle({ className, ...props }) {
93
93
  function ItemDescription({ className, ...props }) {
94
94
  return /* @__PURE__ */ jsx("p", {
95
95
  "data-slot": "item-description",
96
- className: cn("text-muted-foreground [&>a:hover]:text-primary line-clamp-2 text-left text-sm leading-normal font-normal group-data-[size=xs]/item:text-xs [&>a]:underline [&>a]:underline-offset-4", className),
96
+ className: cn("text-muted [&>a:hover]:text-primary line-clamp-2 text-left text-sm leading-normal font-normal group-data-[size=xs]/item:text-xs [&>a]:underline [&>a]:underline-offset-4", className),
97
97
  ...props
98
98
  });
99
99
  }
package/dist/item.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"item.js","names":[],"sources":["../src/item.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport { mergeProps } from \"@base-ui/react/merge-props\"\nimport { useRender } from \"@base-ui/react/use-render\"\nimport { cva, type VariantProps } from \"class-variance-authority\"\n\nimport { cn } from \"./lib/utils\"\nimport { Separator } from \"./separator\"\n\nconst itemVariants = cva(\n \"[a]:hover:bg-muted rounded-lg border text-sm w-full group/item focus-visible:border-ring focus-visible:ring-ring/50 flex items-center flex-wrap outline-none transition-colors duration-200 focus-visible:ring-3 [a]:transition-colors\",\n {\n variants: {\n variant: {\n default: \"border-transparent\",\n outline: \"border-border\",\n muted: \"bg-muted/50 border-transparent\",\n },\n size: {\n default: \"gap-2.5 px-3 py-2.5\",\n sm: \"gap-2.5 px-3 py-2.5\",\n xs: \"gap-2 px-2.5 py-2 in-data-[slot=dropdown-menu-content]:p-0\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n }\n)\n\nconst itemMediaVariants = cva(\n \"gap-2 group-has-data-[slot=item-description]/item:translate-y-0.5 group-has-data-[slot=item-description]/item:self-start flex shrink-0 items-center justify-center [&_svg]:pointer-events-none\",\n {\n variants: {\n variant: {\n default: \"bg-transparent\",\n icon: \"[&_svg:not([class*='size-'])]:size-4\",\n image: \"size-10 overflow-hidden rounded-sm group-data-[size=sm]/item:size-8 group-data-[size=xs]/item:size-6 [&_img]:size-full [&_img]:object-cover\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n }\n)\n\ntype ItemGroupProps = React.ComponentProps<\"div\">\ntype ItemSeparatorProps = React.ComponentProps<typeof Separator>\ntype ItemProps = useRender.ComponentProps<\"div\"> & VariantProps<typeof itemVariants>\ntype ItemMediaProps = React.ComponentProps<\"div\"> & VariantProps<typeof itemMediaVariants>\ntype ItemContentProps = React.ComponentProps<\"div\">\ntype ItemTitleProps = React.ComponentProps<\"div\">\ntype ItemDescriptionProps = React.ComponentProps<\"p\">\ntype ItemActionsProps = React.ComponentProps<\"div\">\ntype ItemHeaderProps = React.ComponentProps<\"div\">\ntype ItemFooterProps = React.ComponentProps<\"div\">\n\nfunction ItemGroup({ className, ...props }: ItemGroupProps) {\n return (\n <div\n role=\"list\"\n data-slot=\"item-group\"\n className={cn(\n \"group/item-group flex w-full flex-col gap-4 has-data-[size=sm]:gap-2.5 has-data-[size=xs]:gap-2\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction ItemSeparator({ className, ...props }: ItemSeparatorProps) {\n return (\n <Separator\n data-slot=\"item-separator\"\n orientation=\"horizontal\"\n className={cn(\"my-2\", className)}\n {...props}\n />\n )\n}\n\nfunction Item({\n className,\n variant = \"default\",\n size = \"default\",\n render,\n ...props\n}: ItemProps) {\n return useRender({\n defaultTagName: \"div\",\n props: mergeProps<\"div\">(\n {\n className: cn(itemVariants({ variant, size, className })),\n },\n props\n ),\n render,\n state: {\n slot: \"item\",\n variant,\n size,\n },\n })\n}\n\nfunction ItemMedia({ className, variant = \"default\", ...props }: ItemMediaProps) {\n return (\n <div\n data-slot=\"item-media\"\n data-variant={variant}\n className={cn(itemMediaVariants({ variant, className }))}\n {...props}\n />\n )\n}\n\nfunction ItemContent({ className, ...props }: ItemContentProps) {\n return (\n <div\n data-slot=\"item-content\"\n className={cn(\n \"flex flex-1 flex-col gap-1 group-data-[size=xs]/item:gap-0 [&+[data-slot=item-content]]:flex-none\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction ItemTitle({ className, ...props }: ItemTitleProps) {\n return (\n <div\n data-slot=\"item-title\"\n className={cn(\n \"line-clamp-1 flex w-fit items-center gap-2 text-sm leading-snug font-medium underline-offset-4\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction ItemDescription({ className, ...props }: ItemDescriptionProps) {\n return (\n <p\n data-slot=\"item-description\"\n className={cn(\n \"text-muted-foreground [&>a:hover]:text-primary line-clamp-2 text-left text-sm leading-normal font-normal group-data-[size=xs]/item:text-xs [&>a]:underline [&>a]:underline-offset-4\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction ItemActions({ className, ...props }: ItemActionsProps) {\n return (\n <div\n data-slot=\"item-actions\"\n className={cn(\"flex items-center gap-2\", className)}\n {...props}\n />\n )\n}\n\nfunction ItemHeader({ className, ...props }: ItemHeaderProps) {\n return (\n <div\n data-slot=\"item-header\"\n className={cn(\n \"flex basis-full items-center justify-between gap-2\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction ItemFooter({ className, ...props }: ItemFooterProps) {\n return (\n <div\n data-slot=\"item-footer\"\n className={cn(\n \"flex basis-full items-center justify-between gap-2\",\n className\n )}\n {...props}\n />\n )\n}\n\nexport {\n Item,\n ItemMedia,\n ItemContent,\n ItemActions,\n ItemGroup,\n ItemSeparator,\n ItemTitle,\n ItemDescription,\n ItemHeader,\n ItemFooter,\n}\n"],"mappings":";;;;;;;;;AAUA,MAAM,eAAe,IACnB,0OACA;CACE,UAAU;EACR,SAAS;GACP,SAAS;GACT,SAAS;GACT,OAAO;GACR;EACD,MAAM;GACJ,SAAS;GACT,IAAI;GACJ,IAAI;GACL;EACF;CACD,iBAAiB;EACf,SAAS;EACT,MAAM;EACP;CACF,CACF;AAED,MAAM,oBAAoB,IACxB,kMACA;CACE,UAAU,EACR,SAAS;EACP,SAAS;EACT,MAAM;EACN,OAAO;EACR,EACF;CACD,iBAAiB,EACf,SAAS,WACV;CACF,CACF;AAaD,SAAS,UAAU,EAAE,WAAW,GAAG,SAAyB;AAC1D,QACE,oBAAC,OAAD;EACE,MAAK;EACL,aAAU;EACV,WAAW,GACT,mGACA,UACD;EACD,GAAI;EACJ,CAAA;;AAIN,SAAS,cAAc,EAAE,WAAW,GAAG,SAA6B;AAClE,QACE,oBAAC,WAAD;EACE,aAAU;EACV,aAAY;EACZ,WAAW,GAAG,QAAQ,UAAU;EAChC,GAAI;EACJ,CAAA;;AAIN,SAAS,KAAK,EACZ,WACA,UAAU,WACV,OAAO,WACP,QACA,GAAG,SACS;AACZ,QAAO,UAAU;EACf,gBAAgB;EAChB,OAAO,WACL,EACE,WAAW,GAAG,aAAa;GAAE;GAAS;GAAM;GAAW,CAAC,CAAC,EAC1D,EACD,MACD;EACD;EACA,OAAO;GACL,MAAM;GACN;GACA;GACD;EACF,CAAC;;AAGJ,SAAS,UAAU,EAAE,WAAW,UAAU,WAAW,GAAG,SAAyB;AAC/E,QACE,oBAAC,OAAD;EACE,aAAU;EACV,gBAAc;EACd,WAAW,GAAG,kBAAkB;GAAE;GAAS;GAAW,CAAC,CAAC;EACxD,GAAI;EACJ,CAAA;;AAIN,SAAS,YAAY,EAAE,WAAW,GAAG,SAA2B;AAC9D,QACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GACT,qGACA,UACD;EACD,GAAI;EACJ,CAAA;;AAIN,SAAS,UAAU,EAAE,WAAW,GAAG,SAAyB;AAC1D,QACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GACT,kGACA,UACD;EACD,GAAI;EACJ,CAAA;;AAIN,SAAS,gBAAgB,EAAE,WAAW,GAAG,SAA+B;AACtE,QACE,oBAAC,KAAD;EACE,aAAU;EACV,WAAW,GACT,uLACA,UACD;EACD,GAAI;EACJ,CAAA;;AAIN,SAAS,YAAY,EAAE,WAAW,GAAG,SAA2B;AAC9D,QACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GAAG,2BAA2B,UAAU;EACnD,GAAI;EACJ,CAAA;;AAIN,SAAS,WAAW,EAAE,WAAW,GAAG,SAA0B;AAC5D,QACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GACT,sDACA,UACD;EACD,GAAI;EACJ,CAAA;;AAIN,SAAS,WAAW,EAAE,WAAW,GAAG,SAA0B;AAC5D,QACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GACT,sDACA,UACD;EACD,GAAI;EACJ,CAAA"}
1
+ {"version":3,"file":"item.js","names":[],"sources":["../src/item.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport { mergeProps } from \"@base-ui/react/merge-props\"\nimport { useRender } from \"@base-ui/react/use-render\"\nimport { cva, type VariantProps } from \"class-variance-authority\"\n\nimport { cn } from \"./lib/utils\"\nimport { Separator } from \"./separator\"\n\nconst itemVariants = cva(\n \"[a]:hover:bg-secondary rounded-md border text-sm w-full group/item focus-visible:border-focus focus-visible:ring-focus/50 flex items-center flex-wrap outline-none transition-colors duration-200 focus-visible:ring-3 [a]:transition-colors\",\n {\n variants: {\n variant: {\n default: \"border-transparent\",\n outline: \"border-line\",\n muted: \"bg-secondary/50 border-transparent\",\n },\n size: {\n default: \"gap-2.5 px-3 py-2.5\",\n sm: \"gap-2.5 px-3 py-2.5\",\n xs: \"gap-2 px-2.5 py-2 in-data-[slot=dropdown-menu-content]:p-0\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n }\n)\n\nconst itemMediaVariants = cva(\n \"gap-2 group-has-data-[slot=item-description]/item:translate-y-0.5 group-has-data-[slot=item-description]/item:self-start flex shrink-0 items-center justify-center [&_svg]:pointer-events-none\",\n {\n variants: {\n variant: {\n default: \"bg-transparent\",\n icon: \"[&_svg:not([class*='size-'])]:size-4\",\n image: \"size-10 overflow-hidden rounded-sm group-data-[size=sm]/item:size-8 group-data-[size=xs]/item:size-6 [&_img]:size-full [&_img]:object-cover\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n }\n)\n\ntype ItemGroupProps = React.ComponentProps<\"div\">\ntype ItemSeparatorProps = React.ComponentProps<typeof Separator>\ntype ItemProps = useRender.ComponentProps<\"div\"> & VariantProps<typeof itemVariants>\ntype ItemMediaProps = React.ComponentProps<\"div\"> & VariantProps<typeof itemMediaVariants>\ntype ItemContentProps = React.ComponentProps<\"div\">\ntype ItemTitleProps = React.ComponentProps<\"div\">\ntype ItemDescriptionProps = React.ComponentProps<\"p\">\ntype ItemActionsProps = React.ComponentProps<\"div\">\ntype ItemHeaderProps = React.ComponentProps<\"div\">\ntype ItemFooterProps = React.ComponentProps<\"div\">\n\nfunction ItemGroup({ className, ...props }: ItemGroupProps) {\n return (\n <div\n role=\"list\"\n data-slot=\"item-group\"\n className={cn(\n \"group/item-group flex w-full flex-col gap-4 has-data-[size=sm]:gap-2.5 has-data-[size=xs]:gap-2\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction ItemSeparator({ className, ...props }: ItemSeparatorProps) {\n return (\n <Separator\n data-slot=\"item-separator\"\n orientation=\"horizontal\"\n className={cn(\"my-2\", className)}\n {...props}\n />\n )\n}\n\nfunction Item({\n className,\n variant = \"default\",\n size = \"default\",\n render,\n ...props\n}: ItemProps) {\n return useRender({\n defaultTagName: \"div\",\n props: mergeProps<\"div\">(\n {\n className: cn(itemVariants({ variant, size, className })),\n },\n props\n ),\n render,\n state: {\n slot: \"item\",\n variant,\n size,\n },\n })\n}\n\nfunction ItemMedia({ className, variant = \"default\", ...props }: ItemMediaProps) {\n return (\n <div\n data-slot=\"item-media\"\n data-variant={variant}\n className={cn(itemMediaVariants({ variant, className }))}\n {...props}\n />\n )\n}\n\nfunction ItemContent({ className, ...props }: ItemContentProps) {\n return (\n <div\n data-slot=\"item-content\"\n className={cn(\n \"flex flex-1 flex-col gap-1 group-data-[size=xs]/item:gap-0 [&+[data-slot=item-content]]:flex-none\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction ItemTitle({ className, ...props }: ItemTitleProps) {\n return (\n <div\n data-slot=\"item-title\"\n className={cn(\n \"line-clamp-1 flex w-fit items-center gap-2 text-sm leading-snug font-medium underline-offset-4\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction ItemDescription({ className, ...props }: ItemDescriptionProps) {\n return (\n <p\n data-slot=\"item-description\"\n className={cn(\n \"text-muted [&>a:hover]:text-primary line-clamp-2 text-left text-sm leading-normal font-normal group-data-[size=xs]/item:text-xs [&>a]:underline [&>a]:underline-offset-4\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction ItemActions({ className, ...props }: ItemActionsProps) {\n return (\n <div\n data-slot=\"item-actions\"\n className={cn(\"flex items-center gap-2\", className)}\n {...props}\n />\n )\n}\n\nfunction ItemHeader({ className, ...props }: ItemHeaderProps) {\n return (\n <div\n data-slot=\"item-header\"\n className={cn(\n \"flex basis-full items-center justify-between gap-2\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction ItemFooter({ className, ...props }: ItemFooterProps) {\n return (\n <div\n data-slot=\"item-footer\"\n className={cn(\n \"flex basis-full items-center justify-between gap-2\",\n className\n )}\n {...props}\n />\n )\n}\n\nexport {\n Item,\n ItemMedia,\n ItemContent,\n ItemActions,\n ItemGroup,\n ItemSeparator,\n ItemTitle,\n ItemDescription,\n ItemHeader,\n ItemFooter,\n}\n"],"mappings":";;;;;;;;;AAUA,MAAM,eAAe,IACnB,gPACA;CACE,UAAU;EACR,SAAS;GACP,SAAS;GACT,SAAS;GACT,OAAO;GACR;EACD,MAAM;GACJ,SAAS;GACT,IAAI;GACJ,IAAI;GACL;EACF;CACD,iBAAiB;EACf,SAAS;EACT,MAAM;EACP;CACF,CACF;AAED,MAAM,oBAAoB,IACxB,kMACA;CACE,UAAU,EACR,SAAS;EACP,SAAS;EACT,MAAM;EACN,OAAO;EACR,EACF;CACD,iBAAiB,EACf,SAAS,WACV;CACF,CACF;AAaD,SAAS,UAAU,EAAE,WAAW,GAAG,SAAyB;AAC1D,QACE,oBAAC,OAAD;EACE,MAAK;EACL,aAAU;EACV,WAAW,GACT,mGACA,UACD;EACD,GAAI;EACJ,CAAA;;AAIN,SAAS,cAAc,EAAE,WAAW,GAAG,SAA6B;AAClE,QACE,oBAAC,WAAD;EACE,aAAU;EACV,aAAY;EACZ,WAAW,GAAG,QAAQ,UAAU;EAChC,GAAI;EACJ,CAAA;;AAIN,SAAS,KAAK,EACZ,WACA,UAAU,WACV,OAAO,WACP,QACA,GAAG,SACS;AACZ,QAAO,UAAU;EACf,gBAAgB;EAChB,OAAO,WACL,EACE,WAAW,GAAG,aAAa;GAAE;GAAS;GAAM;GAAW,CAAC,CAAC,EAC1D,EACD,MACD;EACD;EACA,OAAO;GACL,MAAM;GACN;GACA;GACD;EACF,CAAC;;AAGJ,SAAS,UAAU,EAAE,WAAW,UAAU,WAAW,GAAG,SAAyB;AAC/E,QACE,oBAAC,OAAD;EACE,aAAU;EACV,gBAAc;EACd,WAAW,GAAG,kBAAkB;GAAE;GAAS;GAAW,CAAC,CAAC;EACxD,GAAI;EACJ,CAAA;;AAIN,SAAS,YAAY,EAAE,WAAW,GAAG,SAA2B;AAC9D,QACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GACT,qGACA,UACD;EACD,GAAI;EACJ,CAAA;;AAIN,SAAS,UAAU,EAAE,WAAW,GAAG,SAAyB;AAC1D,QACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GACT,kGACA,UACD;EACD,GAAI;EACJ,CAAA;;AAIN,SAAS,gBAAgB,EAAE,WAAW,GAAG,SAA+B;AACtE,QACE,oBAAC,KAAD;EACE,aAAU;EACV,WAAW,GACT,4KACA,UACD;EACD,GAAI;EACJ,CAAA;;AAIN,SAAS,YAAY,EAAE,WAAW,GAAG,SAA2B;AAC9D,QACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GAAG,2BAA2B,UAAU;EACnD,GAAI;EACJ,CAAA;;AAIN,SAAS,WAAW,EAAE,WAAW,GAAG,SAA0B;AAC5D,QACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GACT,sDACA,UACD;EACD,GAAI;EACJ,CAAA;;AAIN,SAAS,WAAW,EAAE,WAAW,GAAG,SAA0B;AAC5D,QACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GACT,sDACA,UACD;EACD,GAAI;EACJ,CAAA"}
package/dist/kbd.js CHANGED
@@ -4,7 +4,7 @@ import { jsx } from "react/jsx-runtime";
4
4
  function Kbd({ className, ...props }) {
5
5
  return /* @__PURE__ */ jsx("kbd", {
6
6
  "data-slot": "kbd",
7
- className: cn("bg-muted text-muted-foreground in-data-[slot=tooltip-content]:bg-background/20 in-data-[slot=tooltip-content]:text-background dark:in-data-[slot=tooltip-content]:bg-background/10 pointer-events-none inline-flex h-5 w-fit min-w-5 items-center justify-center gap-1 rounded-sm px-1 font-sans text-xs font-medium select-none [&_svg:not([class*='size-'])]:size-3", className),
7
+ className: cn("bg-secondary text-muted in-data-[slot=tooltip-content]:bg-foundation/20 in-data-[slot=tooltip-content]:text-foundation dark:in-data-[slot=tooltip-content]:bg-foundation/10 pointer-events-none inline-flex h-5 w-fit min-w-5 items-center justify-center gap-1 rounded-sm px-1 font-sans text-xs font-medium select-none [&_svg:not([class*='size-'])]:size-3", className),
8
8
  ...props
9
9
  });
10
10
  }
package/dist/kbd.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"kbd.js","names":[],"sources":["../src/kbd.tsx"],"sourcesContent":["import { cn } from \"./lib/utils\"\n\ntype KbdProps = React.ComponentProps<\"kbd\">\n\ntype KbdGroupProps = React.ComponentProps<\"div\">\n\nfunction Kbd({ className, ...props }: KbdProps) {\n return (\n <kbd\n data-slot=\"kbd\"\n className={cn(\n \"bg-muted text-muted-foreground in-data-[slot=tooltip-content]:bg-background/20 in-data-[slot=tooltip-content]:text-background dark:in-data-[slot=tooltip-content]:bg-background/10 pointer-events-none inline-flex h-5 w-fit min-w-5 items-center justify-center gap-1 rounded-sm px-1 font-sans text-xs font-medium select-none [&_svg:not([class*='size-'])]:size-3\",\n className,\n )}\n {...props}\n />\n )\n}\n\nfunction KbdGroup({ className, ...props }: KbdGroupProps) {\n return (\n <div\n data-slot=\"kbd-group\"\n className={cn(\"inline-flex items-center gap-1\", className)}\n {...props}\n />\n )\n}\n\nexport { Kbd, KbdGroup }\nexport type { KbdProps, KbdGroupProps }\n"],"mappings":";;;AAMA,SAAS,IAAI,EAAE,WAAW,GAAG,SAAmB;AAC9C,QACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GACT,yWACA,UACD;EACD,GAAI;EACJ,CAAA;;AAIN,SAAS,SAAS,EAAE,WAAW,GAAG,SAAwB;AACxD,QACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GAAG,kCAAkC,UAAU;EAC1D,GAAI;EACJ,CAAA"}
1
+ {"version":3,"file":"kbd.js","names":[],"sources":["../src/kbd.tsx"],"sourcesContent":["import { cn } from \"./lib/utils\"\n\ntype KbdProps = React.ComponentProps<\"kbd\">\n\ntype KbdGroupProps = React.ComponentProps<\"div\">\n\nfunction Kbd({ className, ...props }: KbdProps) {\n return (\n <kbd\n data-slot=\"kbd\"\n className={cn(\n \"bg-secondary text-muted in-data-[slot=tooltip-content]:bg-foundation/20 in-data-[slot=tooltip-content]:text-foundation dark:in-data-[slot=tooltip-content]:bg-foundation/10 pointer-events-none inline-flex h-5 w-fit min-w-5 items-center justify-center gap-1 rounded-sm px-1 font-sans text-xs font-medium select-none [&_svg:not([class*='size-'])]:size-3\",\n className,\n )}\n {...props}\n />\n )\n}\n\nfunction KbdGroup({ className, ...props }: KbdGroupProps) {\n return (\n <div\n data-slot=\"kbd-group\"\n className={cn(\"inline-flex items-center gap-1\", className)}\n {...props}\n />\n )\n}\n\nexport { Kbd, KbdGroup }\nexport type { KbdProps, KbdGroupProps }\n"],"mappings":";;;AAMA,SAAS,IAAI,EAAE,WAAW,GAAG,SAAmB;AAC9C,QACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GACT,kWACA,UACD;EACD,GAAI;EACJ,CAAA;;AAIN,SAAS,SAAS,EAAE,WAAW,GAAG,SAAwB;AACxD,QACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GAAG,kCAAkC,UAAU;EAC1D,GAAI;EACJ,CAAA"}
package/dist/menu.js CHANGED
@@ -34,7 +34,7 @@ function MenuContent({ align = "start", alignOffset = 0, side = "bottom", sideOf
34
34
  sideOffset,
35
35
  children: /* @__PURE__ */ jsx(Menu$1.Popup, {
36
36
  "data-slot": "menu-content",
37
- className: cn("motion-slide ring-foreground/10 bg-popover text-popover-foreground z-50 max-h-(--available-height) w-auto min-w-32 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-lg p-1 shadow-md ring-1 outline-none data-closed:overflow-hidden", className),
37
+ className: cn("motion-pop-md ring-contrast/10 bg-elevated text-contrast z-50 max-h-(--available-height) w-auto min-w-32 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-md p-1 shadow-md ring-1 outline-none data-closed:overflow-hidden", className),
38
38
  finalFocus: resolveFinalFocus(restoreFocusOnClose, finalFocus),
39
39
  ...props
40
40
  })
@@ -50,7 +50,7 @@ function MenuLabel({ className, inset, ...props }) {
50
50
  return /* @__PURE__ */ jsx(Menu$1.GroupLabel, {
51
51
  "data-slot": "menu-label",
52
52
  "data-inset": inset,
53
- className: cn("text-muted-foreground px-1.5 py-1 text-xs font-medium data-inset:pl-7", className),
53
+ className: cn("text-muted px-1.5 py-1 text-xs font-medium data-inset:pl-7", className),
54
54
  ...props
55
55
  });
56
56
  }
@@ -59,7 +59,7 @@ function MenuItem({ className, inset, variant = "default", ...props }) {
59
59
  "data-slot": "menu-item",
60
60
  "data-inset": inset,
61
61
  "data-variant": variant,
62
- className: cn("focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:text-destructive not-data-[variant=destructive]:focus:**:text-accent-foreground group/menu-item relative flex cursor-clickable items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-inset:pl-7 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
62
+ className: cn("focus:bg-primary focus:text-white data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:text-destructive not-data-[variant=destructive]:focus:**:text-white group/menu-item relative flex cursor-clickable items-center gap-1.5 rounded-sm px-1.5 py-1 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-inset:pl-7 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
63
63
  ...props
64
64
  });
65
65
  }
@@ -73,7 +73,7 @@ function MenuSubTrigger({ className, inset, children, ...props }) {
73
73
  return /* @__PURE__ */ jsxs(Menu$1.SubmenuTrigger, {
74
74
  "data-slot": "menu-sub-trigger",
75
75
  "data-inset": inset,
76
- className: cn("focus:bg-accent focus:text-accent-foreground data-open:bg-accent data-open:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-popup-open:bg-accent data-popup-open:text-accent-foreground flex cursor-clickable items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none data-inset:pl-7 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
76
+ className: cn("focus:bg-primary focus:text-white data-open:bg-primary data-open:text-white not-data-[variant=destructive]:focus:**:text-white data-popup-open:bg-primary data-popup-open:text-white flex cursor-clickable items-center gap-1.5 rounded-sm px-1.5 py-1 text-sm outline-hidden select-none data-inset:pl-7 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
77
77
  ...props,
78
78
  children: [children, /* @__PURE__ */ jsx(ChevronRightIcon, { className: "ml-auto" })]
79
79
  });
@@ -81,7 +81,7 @@ function MenuSubTrigger({ className, inset, children, ...props }) {
81
81
  function MenuSubContent({ align = "start", alignOffset = -4, side = "right", sideOffset = 0, className, ...props }) {
82
82
  return /* @__PURE__ */ jsx(MenuContent, {
83
83
  "data-slot": "menu-sub-content",
84
- className: cn("w-auto min-w-24 shadow-lg", className),
84
+ className: cn("w-auto min-w-24 shadow-md", className),
85
85
  align,
86
86
  alignOffset,
87
87
  side,
@@ -93,7 +93,7 @@ function MenuCheckboxItem({ className, children, checked, inset, ...props }) {
93
93
  return /* @__PURE__ */ jsxs(Menu$1.CheckboxItem, {
94
94
  "data-slot": "menu-checkbox-item",
95
95
  "data-inset": inset,
96
- className: cn("focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground relative flex cursor-clickable items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-inset:pl-7 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
96
+ className: cn("focus:bg-primary focus:text-white focus:**:text-white relative flex cursor-clickable items-center gap-1.5 rounded-sm py-1 pr-8 pl-1.5 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-inset:pl-7 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
97
97
  checked,
98
98
  ...props,
99
99
  children: [/* @__PURE__ */ jsx("span", {
@@ -113,7 +113,7 @@ function MenuRadioItem({ className, children, inset, ...props }) {
113
113
  return /* @__PURE__ */ jsxs(Menu$1.RadioItem, {
114
114
  "data-slot": "menu-radio-item",
115
115
  "data-inset": inset,
116
- className: cn("focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground relative flex cursor-clickable items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-inset:pl-7 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
116
+ className: cn("focus:bg-primary focus:text-white focus:**:text-white relative flex cursor-clickable items-center gap-1.5 rounded-sm py-1 pr-8 pl-1.5 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-inset:pl-7 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
117
117
  ...props,
118
118
  children: [/* @__PURE__ */ jsx("span", {
119
119
  "data-slot": "menu-radio-item-indicator",
@@ -125,14 +125,14 @@ function MenuRadioItem({ className, children, inset, ...props }) {
125
125
  function MenuSeparator({ className, ...props }) {
126
126
  return /* @__PURE__ */ jsx(Menu$1.Separator, {
127
127
  "data-slot": "menu-separator",
128
- className: cn("bg-border -mx-1 my-1 h-px", className),
128
+ className: cn("bg-line -mx-1 my-1 h-px", className),
129
129
  ...props
130
130
  });
131
131
  }
132
132
  function MenuShortcut({ className, ...props }) {
133
133
  return /* @__PURE__ */ jsx("span", {
134
134
  "data-slot": "menu-shortcut",
135
- className: cn("text-muted-foreground group-focus/menu-item:text-accent-foreground ml-auto text-xs tracking-widest", className),
135
+ className: cn("text-muted group-focus/menu-item:text-white ml-auto text-xs tracking-widest", className),
136
136
  ...props
137
137
  });
138
138
  }
package/dist/menu.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"menu.js","names":["MenuPrimitive"],"sources":["../src/menu.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport { Menu as MenuPrimitive } from \"@base-ui/react/menu\"\n\nimport { cn } from \"./lib/utils\"\nimport { resolveFinalFocus, type RestoreFocusOnClose } from \"./lib/focus\"\n\nimport { ChevronRightIcon, CheckIcon } from \"./lib/internal-icons\"\n\ntype MenuProps = React.ComponentProps<typeof MenuPrimitive.Root>\n\ntype MenuPortalProps = React.ComponentProps<typeof MenuPrimitive.Portal>\n\ntype MenuTriggerProps = React.ComponentProps<typeof MenuPrimitive.Trigger>\n\ntype MenuContentProps = React.ComponentProps<typeof MenuPrimitive.Popup> &\n Pick<\n React.ComponentProps<typeof MenuPrimitive.Positioner>,\n \"align\" | \"alignOffset\" | \"side\" | \"sideOffset\"\n > & {\n /**\n * Focus-restoration policy when the menu closes. Defaults to Base\n * UI's behaviour (restore to the trigger). Use `\"keyboard\"` when\n * the trigger is hover/focus-within–revealed so a pointer close\n * doesn't keep it pinned visible. See {@link RestoreFocusOnClose}.\n */\n restoreFocusOnClose?: RestoreFocusOnClose\n }\n\ntype MenuGroupProps = React.ComponentProps<typeof MenuPrimitive.Group>\n\ntype MenuLabelProps = React.ComponentProps<typeof MenuPrimitive.GroupLabel> & {\n inset?: boolean\n}\n\ntype MenuItemProps = React.ComponentProps<typeof MenuPrimitive.Item> & {\n inset?: boolean\n variant?: \"default\" | \"destructive\"\n}\n\ntype MenuSubProps = React.ComponentProps<typeof MenuPrimitive.SubmenuRoot>\n\ntype MenuSubTriggerProps = React.ComponentProps<typeof MenuPrimitive.SubmenuTrigger> & {\n inset?: boolean\n}\n\ntype MenuSubContentProps = MenuContentProps\n\ntype MenuCheckboxItemProps = React.ComponentProps<typeof MenuPrimitive.CheckboxItem> & {\n inset?: boolean\n}\n\ntype MenuRadioGroupProps = React.ComponentProps<typeof MenuPrimitive.RadioGroup>\n\ntype MenuRadioItemProps = React.ComponentProps<typeof MenuPrimitive.RadioItem> & {\n inset?: boolean\n}\n\ntype MenuSeparatorProps = React.ComponentProps<typeof MenuPrimitive.Separator>\n\ntype MenuShortcutProps = React.ComponentProps<\"span\">\n\nfunction Menu(props: MenuProps) {\n return <MenuPrimitive.Root data-slot=\"menu\" {...props} />\n}\n\nfunction MenuPortal(props: MenuPortalProps) {\n return <MenuPrimitive.Portal data-slot=\"menu-portal\" {...props} />\n}\n\nfunction MenuTrigger(props: MenuTriggerProps) {\n return <MenuPrimitive.Trigger data-slot=\"menu-trigger\" {...props} />\n}\n\nfunction MenuContent({\n align = \"start\",\n alignOffset = 0,\n side = \"bottom\",\n sideOffset = 4,\n className,\n restoreFocusOnClose,\n finalFocus,\n ...props\n}: MenuContentProps) {\n return (\n <MenuPortal>\n <MenuPrimitive.Positioner\n data-slot=\"menu-positioner\"\n className=\"isolate z-50 outline-none\"\n align={align}\n alignOffset={alignOffset}\n side={side}\n sideOffset={sideOffset}\n >\n <MenuPrimitive.Popup\n data-slot=\"menu-content\"\n className={cn(\n \"motion-slide ring-foreground/10 bg-popover text-popover-foreground z-50 max-h-(--available-height) w-auto min-w-32 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-lg p-1 shadow-md ring-1 outline-none data-closed:overflow-hidden\",\n className,\n )}\n finalFocus={resolveFinalFocus(restoreFocusOnClose, finalFocus)}\n {...props}\n />\n </MenuPrimitive.Positioner>\n </MenuPortal>\n )\n}\n\nfunction MenuGroup(props: MenuGroupProps) {\n return <MenuPrimitive.Group data-slot=\"menu-group\" {...props} />\n}\n\nfunction MenuLabel({\n className,\n inset,\n ...props\n}: MenuLabelProps) {\n return (\n <MenuPrimitive.GroupLabel\n data-slot=\"menu-label\"\n data-inset={inset}\n className={cn(\n \"text-muted-foreground px-1.5 py-1 text-xs font-medium data-inset:pl-7\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction MenuItem({\n className,\n inset,\n variant = \"default\",\n ...props\n}: MenuItemProps) {\n return (\n <MenuPrimitive.Item\n data-slot=\"menu-item\"\n data-inset={inset}\n data-variant={variant}\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:text-destructive not-data-[variant=destructive]:focus:**:text-accent-foreground group/menu-item relative flex cursor-clickable items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-inset:pl-7 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n />\n )\n}\n\nfunction MenuSub(props: MenuSubProps) {\n return <MenuPrimitive.SubmenuRoot data-slot=\"menu-sub\" {...props} />\n}\n\nfunction MenuSubTrigger({\n className,\n inset,\n children,\n ...props\n}: MenuSubTriggerProps) {\n return (\n <MenuPrimitive.SubmenuTrigger\n data-slot=\"menu-sub-trigger\"\n data-inset={inset}\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground data-open:bg-accent data-open:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-popup-open:bg-accent data-popup-open:text-accent-foreground flex cursor-clickable items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none data-inset:pl-7 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n {children}\n <ChevronRightIcon className=\"ml-auto\" />\n </MenuPrimitive.SubmenuTrigger>\n )\n}\n\nfunction MenuSubContent({\n align = \"start\",\n // -4 cancels the popup's p-1 (4px) top padding so the submenu's first\n // item lines up with the parent item row, not the popup container edge.\n alignOffset = -4,\n side = \"right\",\n sideOffset = 0,\n className,\n ...props\n}: MenuSubContentProps) {\n return (\n <MenuContent\n data-slot=\"menu-sub-content\"\n className={cn(\"w-auto min-w-24 shadow-lg\", className)}\n align={align}\n alignOffset={alignOffset}\n side={side}\n sideOffset={sideOffset}\n {...props}\n />\n )\n}\n\nfunction MenuCheckboxItem({\n className,\n children,\n checked,\n inset,\n ...props\n}: MenuCheckboxItemProps) {\n return (\n <MenuPrimitive.CheckboxItem\n data-slot=\"menu-checkbox-item\"\n data-inset={inset}\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground relative flex cursor-clickable items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-inset:pl-7 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n checked={checked}\n {...props}\n >\n <span\n data-slot=\"menu-checkbox-item-indicator\"\n className=\"pointer-events-none absolute right-2 flex items-center justify-center\"\n >\n <MenuPrimitive.CheckboxItemIndicator>\n <CheckIcon />\n </MenuPrimitive.CheckboxItemIndicator>\n </span>\n {children}\n </MenuPrimitive.CheckboxItem>\n )\n}\n\nfunction MenuRadioGroup(props: MenuRadioGroupProps) {\n return <MenuPrimitive.RadioGroup data-slot=\"menu-radio-group\" {...props} />\n}\n\nfunction MenuRadioItem({\n className,\n children,\n inset,\n ...props\n}: MenuRadioItemProps) {\n return (\n <MenuPrimitive.RadioItem\n data-slot=\"menu-radio-item\"\n data-inset={inset}\n className={cn(\n \"focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground relative flex cursor-clickable items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-inset:pl-7 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n <span\n data-slot=\"menu-radio-item-indicator\"\n className=\"pointer-events-none absolute right-2 flex items-center justify-center\"\n >\n <MenuPrimitive.RadioItemIndicator>\n <CheckIcon />\n </MenuPrimitive.RadioItemIndicator>\n </span>\n {children}\n </MenuPrimitive.RadioItem>\n )\n}\n\nfunction MenuSeparator({ className, ...props }: MenuSeparatorProps) {\n return (\n <MenuPrimitive.Separator\n data-slot=\"menu-separator\"\n className={cn(\n \"bg-border -mx-1 my-1 h-px\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction MenuShortcut({ className, ...props }: MenuShortcutProps) {\n return (\n <span\n data-slot=\"menu-shortcut\"\n className={cn(\n \"text-muted-foreground group-focus/menu-item:text-accent-foreground ml-auto text-xs tracking-widest\",\n className,\n )}\n {...props}\n />\n )\n}\n\nexport {\n Menu,\n MenuPortal,\n MenuTrigger,\n MenuContent,\n MenuGroup,\n MenuLabel,\n MenuItem,\n MenuCheckboxItem,\n MenuRadioGroup,\n MenuRadioItem,\n MenuSeparator,\n MenuShortcut,\n MenuSub,\n MenuSubTrigger,\n MenuSubContent,\n}\n"],"mappings":";;;;;;;;AA+DA,SAAS,KAAK,OAAkB;AAC9B,QAAO,oBAACA,OAAc,MAAf;EAAoB,aAAU;EAAO,GAAI;EAAS,CAAA;;AAG3D,SAAS,WAAW,OAAwB;AAC1C,QAAO,oBAACA,OAAc,QAAf;EAAsB,aAAU;EAAc,GAAI;EAAS,CAAA;;AAGpE,SAAS,YAAY,OAAyB;AAC5C,QAAO,oBAACA,OAAc,SAAf;EAAuB,aAAU;EAAe,GAAI;EAAS,CAAA;;AAGtE,SAAS,YAAY,EACnB,QAAQ,SACR,cAAc,GACd,OAAO,UACP,aAAa,GACb,WACA,qBACA,YACA,GAAG,SACgB;AACnB,QACE,oBAAC,YAAD,EAAA,UACE,oBAACA,OAAc,YAAf;EACE,aAAU;EACV,WAAU;EACH;EACM;EACP;EACM;YAEZ,oBAACA,OAAc,OAAf;GACE,aAAU;GACV,WAAW,GACT,6PACA,UACD;GACD,YAAY,kBAAkB,qBAAqB,WAAW;GAC9D,GAAI;GACJ,CAAA;EACuB,CAAA,EAChB,CAAA;;AAIjB,SAAS,UAAU,OAAuB;AACxC,QAAO,oBAACA,OAAc,OAAf;EAAqB,aAAU;EAAa,GAAI;EAAS,CAAA;;AAGlE,SAAS,UAAU,EACjB,WACA,OACA,GAAG,SACc;AACjB,QACE,oBAACA,OAAc,YAAf;EACE,aAAU;EACV,cAAY;EACZ,WAAW,GACT,yEACA,UACD;EACD,GAAI;EACJ,CAAA;;AAIN,SAAS,SAAS,EAChB,WACA,OACA,UAAU,WACV,GAAG,SACa;AAChB,QACE,oBAACA,OAAc,MAAf;EACE,aAAU;EACV,cAAY;EACZ,gBAAc;EACd,WAAW,GACT,uoBACA,UACD;EACD,GAAI;EACJ,CAAA;;AAIN,SAAS,QAAQ,OAAqB;AACpC,QAAO,oBAACA,OAAc,aAAf;EAA2B,aAAU;EAAW,GAAI;EAAS,CAAA;;AAGtE,SAAS,eAAe,EACtB,WACA,OACA,UACA,GAAG,SACmB;AACtB,QACE,qBAACA,OAAc,gBAAf;EACE,aAAU;EACV,cAAY;EACZ,WAAW,GACT,4aACA,UACD;EACD,GAAI;YAPN,CASG,UACD,oBAAC,kBAAD,EAAkB,WAAU,WAAY,CAAA,CACX;;;AAInC,SAAS,eAAe,EACtB,QAAQ,SAGR,cAAc,IACd,OAAO,SACP,aAAa,GACb,WACA,GAAG,SACmB;AACtB,QACE,oBAAC,aAAD;EACE,aAAU;EACV,WAAW,GAAG,6BAA6B,UAAU;EAC9C;EACM;EACP;EACM;EACZ,GAAI;EACJ,CAAA;;AAIN,SAAS,iBAAiB,EACxB,WACA,UACA,SACA,OACA,GAAG,SACqB;AACxB,QACE,qBAACA,OAAc,cAAf;EACE,aAAU;EACV,cAAY;EACZ,WAAW,GACT,gWACA,UACD;EACQ;EACT,GAAI;YARN,CAUE,oBAAC,QAAD;GACE,aAAU;GACV,WAAU;aAEV,oBAACA,OAAc,uBAAf,EAAA,UACE,oBAAC,WAAD,EAAa,CAAA,EACuB,CAAA;GACjC,CAAA,EACN,SAC0B;;;AAIjC,SAAS,eAAe,OAA4B;AAClD,QAAO,oBAACA,OAAc,YAAf;EAA0B,aAAU;EAAmB,GAAI;EAAS,CAAA;;AAG7E,SAAS,cAAc,EACrB,WACA,UACA,OACA,GAAG,SACkB;AACrB,QACE,qBAACA,OAAc,WAAf;EACE,aAAU;EACV,cAAY;EACZ,WAAW,GACT,gWACA,UACD;EACD,GAAI;YAPN,CASE,oBAAC,QAAD;GACE,aAAU;GACV,WAAU;aAEV,oBAACA,OAAc,oBAAf,EAAA,UACE,oBAAC,WAAD,EAAa,CAAA,EACoB,CAAA;GAC9B,CAAA,EACN,SACuB;;;AAI9B,SAAS,cAAc,EAAE,WAAW,GAAG,SAA6B;AAClE,QACE,oBAACA,OAAc,WAAf;EACE,aAAU;EACV,WAAW,GACT,6BACA,UACD;EACD,GAAI;EACJ,CAAA;;AAIN,SAAS,aAAa,EAAE,WAAW,GAAG,SAA4B;AAChE,QACE,oBAAC,QAAD;EACE,aAAU;EACV,WAAW,GACT,sGACA,UACD;EACD,GAAI;EACJ,CAAA"}
1
+ {"version":3,"file":"menu.js","names":["MenuPrimitive"],"sources":["../src/menu.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport { Menu as MenuPrimitive } from \"@base-ui/react/menu\"\n\nimport { cn } from \"./lib/utils\"\nimport { resolveFinalFocus, type RestoreFocusOnClose } from \"./lib/focus\"\n\nimport { ChevronRightIcon, CheckIcon } from \"./lib/internal-icons\"\n\ntype MenuProps = React.ComponentProps<typeof MenuPrimitive.Root>\n\ntype MenuPortalProps = React.ComponentProps<typeof MenuPrimitive.Portal>\n\ntype MenuTriggerProps = React.ComponentProps<typeof MenuPrimitive.Trigger>\n\ntype MenuContentProps = React.ComponentProps<typeof MenuPrimitive.Popup> &\n Pick<\n React.ComponentProps<typeof MenuPrimitive.Positioner>,\n \"align\" | \"alignOffset\" | \"side\" | \"sideOffset\"\n > & {\n /**\n * Focus-restoration policy when the menu closes. Defaults to Base\n * UI's behaviour (restore to the trigger). Use `\"keyboard\"` when\n * the trigger is hover/focus-within–revealed so a pointer close\n * doesn't keep it pinned visible. See {@link RestoreFocusOnClose}.\n */\n restoreFocusOnClose?: RestoreFocusOnClose\n }\n\ntype MenuGroupProps = React.ComponentProps<typeof MenuPrimitive.Group>\n\ntype MenuLabelProps = React.ComponentProps<typeof MenuPrimitive.GroupLabel> & {\n inset?: boolean\n}\n\ntype MenuItemProps = React.ComponentProps<typeof MenuPrimitive.Item> & {\n inset?: boolean\n variant?: \"default\" | \"destructive\"\n}\n\ntype MenuSubProps = React.ComponentProps<typeof MenuPrimitive.SubmenuRoot>\n\ntype MenuSubTriggerProps = React.ComponentProps<typeof MenuPrimitive.SubmenuTrigger> & {\n inset?: boolean\n}\n\ntype MenuSubContentProps = MenuContentProps\n\ntype MenuCheckboxItemProps = React.ComponentProps<typeof MenuPrimitive.CheckboxItem> & {\n inset?: boolean\n}\n\ntype MenuRadioGroupProps = React.ComponentProps<typeof MenuPrimitive.RadioGroup>\n\ntype MenuRadioItemProps = React.ComponentProps<typeof MenuPrimitive.RadioItem> & {\n inset?: boolean\n}\n\ntype MenuSeparatorProps = React.ComponentProps<typeof MenuPrimitive.Separator>\n\ntype MenuShortcutProps = React.ComponentProps<\"span\">\n\nfunction Menu(props: MenuProps) {\n return <MenuPrimitive.Root data-slot=\"menu\" {...props} />\n}\n\nfunction MenuPortal(props: MenuPortalProps) {\n return <MenuPrimitive.Portal data-slot=\"menu-portal\" {...props} />\n}\n\nfunction MenuTrigger(props: MenuTriggerProps) {\n return <MenuPrimitive.Trigger data-slot=\"menu-trigger\" {...props} />\n}\n\nfunction MenuContent({\n align = \"start\",\n alignOffset = 0,\n side = \"bottom\",\n sideOffset = 4,\n className,\n restoreFocusOnClose,\n finalFocus,\n ...props\n}: MenuContentProps) {\n return (\n <MenuPortal>\n <MenuPrimitive.Positioner\n data-slot=\"menu-positioner\"\n className=\"isolate z-50 outline-none\"\n align={align}\n alignOffset={alignOffset}\n side={side}\n sideOffset={sideOffset}\n >\n <MenuPrimitive.Popup\n data-slot=\"menu-content\"\n className={cn(\n \"motion-pop-md ring-contrast/10 bg-elevated text-contrast z-50 max-h-(--available-height) w-auto min-w-32 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-md p-1 shadow-md ring-1 outline-none data-closed:overflow-hidden\",\n className,\n )}\n finalFocus={resolveFinalFocus(restoreFocusOnClose, finalFocus)}\n {...props}\n />\n </MenuPrimitive.Positioner>\n </MenuPortal>\n )\n}\n\nfunction MenuGroup(props: MenuGroupProps) {\n return <MenuPrimitive.Group data-slot=\"menu-group\" {...props} />\n}\n\nfunction MenuLabel({\n className,\n inset,\n ...props\n}: MenuLabelProps) {\n return (\n <MenuPrimitive.GroupLabel\n data-slot=\"menu-label\"\n data-inset={inset}\n className={cn(\n \"text-muted px-1.5 py-1 text-xs font-medium data-inset:pl-7\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction MenuItem({\n className,\n inset,\n variant = \"default\",\n ...props\n}: MenuItemProps) {\n return (\n <MenuPrimitive.Item\n data-slot=\"menu-item\"\n data-inset={inset}\n data-variant={variant}\n className={cn(\n \"focus:bg-primary focus:text-white data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:text-destructive not-data-[variant=destructive]:focus:**:text-white group/menu-item relative flex cursor-clickable items-center gap-1.5 rounded-sm px-1.5 py-1 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-inset:pl-7 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n />\n )\n}\n\nfunction MenuSub(props: MenuSubProps) {\n return <MenuPrimitive.SubmenuRoot data-slot=\"menu-sub\" {...props} />\n}\n\nfunction MenuSubTrigger({\n className,\n inset,\n children,\n ...props\n}: MenuSubTriggerProps) {\n return (\n <MenuPrimitive.SubmenuTrigger\n data-slot=\"menu-sub-trigger\"\n data-inset={inset}\n className={cn(\n \"focus:bg-primary focus:text-white data-open:bg-primary data-open:text-white not-data-[variant=destructive]:focus:**:text-white data-popup-open:bg-primary data-popup-open:text-white flex cursor-clickable items-center gap-1.5 rounded-sm px-1.5 py-1 text-sm outline-hidden select-none data-inset:pl-7 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n {children}\n <ChevronRightIcon className=\"ml-auto\" />\n </MenuPrimitive.SubmenuTrigger>\n )\n}\n\nfunction MenuSubContent({\n align = \"start\",\n // -4 cancels the popup's p-1 (4px) top padding so the submenu's first\n // item lines up with the parent item row, not the popup container edge.\n alignOffset = -4,\n side = \"right\",\n sideOffset = 0,\n className,\n ...props\n}: MenuSubContentProps) {\n return (\n <MenuContent\n data-slot=\"menu-sub-content\"\n className={cn(\"w-auto min-w-24 shadow-md\", className)}\n align={align}\n alignOffset={alignOffset}\n side={side}\n sideOffset={sideOffset}\n {...props}\n />\n )\n}\n\nfunction MenuCheckboxItem({\n className,\n children,\n checked,\n inset,\n ...props\n}: MenuCheckboxItemProps) {\n return (\n <MenuPrimitive.CheckboxItem\n data-slot=\"menu-checkbox-item\"\n data-inset={inset}\n className={cn(\n \"focus:bg-primary focus:text-white focus:**:text-white relative flex cursor-clickable items-center gap-1.5 rounded-sm py-1 pr-8 pl-1.5 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-inset:pl-7 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n checked={checked}\n {...props}\n >\n <span\n data-slot=\"menu-checkbox-item-indicator\"\n className=\"pointer-events-none absolute right-2 flex items-center justify-center\"\n >\n <MenuPrimitive.CheckboxItemIndicator>\n <CheckIcon />\n </MenuPrimitive.CheckboxItemIndicator>\n </span>\n {children}\n </MenuPrimitive.CheckboxItem>\n )\n}\n\nfunction MenuRadioGroup(props: MenuRadioGroupProps) {\n return <MenuPrimitive.RadioGroup data-slot=\"menu-radio-group\" {...props} />\n}\n\nfunction MenuRadioItem({\n className,\n children,\n inset,\n ...props\n}: MenuRadioItemProps) {\n return (\n <MenuPrimitive.RadioItem\n data-slot=\"menu-radio-item\"\n data-inset={inset}\n className={cn(\n \"focus:bg-primary focus:text-white focus:**:text-white relative flex cursor-clickable items-center gap-1.5 rounded-sm py-1 pr-8 pl-1.5 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-inset:pl-7 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className,\n )}\n {...props}\n >\n <span\n data-slot=\"menu-radio-item-indicator\"\n className=\"pointer-events-none absolute right-2 flex items-center justify-center\"\n >\n <MenuPrimitive.RadioItemIndicator>\n <CheckIcon />\n </MenuPrimitive.RadioItemIndicator>\n </span>\n {children}\n </MenuPrimitive.RadioItem>\n )\n}\n\nfunction MenuSeparator({ className, ...props }: MenuSeparatorProps) {\n return (\n <MenuPrimitive.Separator\n data-slot=\"menu-separator\"\n className={cn(\n \"bg-line -mx-1 my-1 h-px\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction MenuShortcut({ className, ...props }: MenuShortcutProps) {\n return (\n <span\n data-slot=\"menu-shortcut\"\n className={cn(\n \"text-muted group-focus/menu-item:text-white ml-auto text-xs tracking-widest\",\n className,\n )}\n {...props}\n />\n )\n}\n\nexport {\n Menu,\n MenuPortal,\n MenuTrigger,\n MenuContent,\n MenuGroup,\n MenuLabel,\n MenuItem,\n MenuCheckboxItem,\n MenuRadioGroup,\n MenuRadioItem,\n MenuSeparator,\n MenuShortcut,\n MenuSub,\n MenuSubTrigger,\n MenuSubContent,\n}\n"],"mappings":";;;;;;;;AA+DA,SAAS,KAAK,OAAkB;AAC9B,QAAO,oBAACA,OAAc,MAAf;EAAoB,aAAU;EAAO,GAAI;EAAS,CAAA;;AAG3D,SAAS,WAAW,OAAwB;AAC1C,QAAO,oBAACA,OAAc,QAAf;EAAsB,aAAU;EAAc,GAAI;EAAS,CAAA;;AAGpE,SAAS,YAAY,OAAyB;AAC5C,QAAO,oBAACA,OAAc,SAAf;EAAuB,aAAU;EAAe,GAAI;EAAS,CAAA;;AAGtE,SAAS,YAAY,EACnB,QAAQ,SACR,cAAc,GACd,OAAO,UACP,aAAa,GACb,WACA,qBACA,YACA,GAAG,SACgB;AACnB,QACE,oBAAC,YAAD,EAAA,UACE,oBAACA,OAAc,YAAf;EACE,aAAU;EACV,WAAU;EACH;EACM;EACP;EACM;YAEZ,oBAACA,OAAc,OAAf;GACE,aAAU;GACV,WAAW,GACT,mPACA,UACD;GACD,YAAY,kBAAkB,qBAAqB,WAAW;GAC9D,GAAI;GACJ,CAAA;EACuB,CAAA,EAChB,CAAA;;AAIjB,SAAS,UAAU,OAAuB;AACxC,QAAO,oBAACA,OAAc,OAAf;EAAqB,aAAU;EAAa,GAAI;EAAS,CAAA;;AAGlE,SAAS,UAAU,EACjB,WACA,OACA,GAAG,SACc;AACjB,QACE,oBAACA,OAAc,YAAf;EACE,aAAU;EACV,cAAY;EACZ,WAAW,GACT,8DACA,UACD;EACD,GAAI;EACJ,CAAA;;AAIN,SAAS,SAAS,EAChB,WACA,OACA,UAAU,WACV,GAAG,SACa;AAChB,QACE,oBAACA,OAAc,MAAf;EACE,aAAU;EACV,cAAY;EACZ,gBAAc;EACd,WAAW,GACT,gnBACA,UACD;EACD,GAAI;EACJ,CAAA;;AAIN,SAAS,QAAQ,OAAqB;AACpC,QAAO,oBAACA,OAAc,aAAf;EAA2B,aAAU;EAAW,GAAI;EAAS,CAAA;;AAGtE,SAAS,eAAe,EACtB,WACA,OACA,UACA,GAAG,SACmB;AACtB,QACE,qBAACA,OAAc,gBAAf;EACE,aAAU;EACV,cAAY;EACZ,WAAW,GACT,+XACA,UACD;EACD,GAAI;YAPN,CASG,UACD,oBAAC,kBAAD,EAAkB,WAAU,WAAY,CAAA,CACX;;;AAInC,SAAS,eAAe,EACtB,QAAQ,SAGR,cAAc,IACd,OAAO,SACP,aAAa,GACb,WACA,GAAG,SACmB;AACtB,QACE,oBAAC,aAAD;EACE,aAAU;EACV,WAAW,GAAG,6BAA6B,UAAU;EAC9C;EACM;EACP;EACM;EACZ,GAAI;EACJ,CAAA;;AAIN,SAAS,iBAAiB,EACxB,WACA,UACA,SACA,OACA,GAAG,SACqB;AACxB,QACE,qBAACA,OAAc,cAAf;EACE,aAAU;EACV,cAAY;EACZ,WAAW,GACT,yUACA,UACD;EACQ;EACT,GAAI;YARN,CAUE,oBAAC,QAAD;GACE,aAAU;GACV,WAAU;aAEV,oBAACA,OAAc,uBAAf,EAAA,UACE,oBAAC,WAAD,EAAa,CAAA,EACuB,CAAA;GACjC,CAAA,EACN,SAC0B;;;AAIjC,SAAS,eAAe,OAA4B;AAClD,QAAO,oBAACA,OAAc,YAAf;EAA0B,aAAU;EAAmB,GAAI;EAAS,CAAA;;AAG7E,SAAS,cAAc,EACrB,WACA,UACA,OACA,GAAG,SACkB;AACrB,QACE,qBAACA,OAAc,WAAf;EACE,aAAU;EACV,cAAY;EACZ,WAAW,GACT,yUACA,UACD;EACD,GAAI;YAPN,CASE,oBAAC,QAAD;GACE,aAAU;GACV,WAAU;aAEV,oBAACA,OAAc,oBAAf,EAAA,UACE,oBAAC,WAAD,EAAa,CAAA,EACoB,CAAA;GAC9B,CAAA,EACN,SACuB;;;AAI9B,SAAS,cAAc,EAAE,WAAW,GAAG,SAA6B;AAClE,QACE,oBAACA,OAAc,WAAf;EACE,aAAU;EACV,WAAW,GACT,2BACA,UACD;EACD,GAAI;EACJ,CAAA;;AAIN,SAAS,aAAa,EAAE,WAAW,GAAG,SAA4B;AAChE,QACE,oBAAC,QAAD;EACE,aAAU;EACV,WAAW,GACT,+EACA,UACD;EACD,GAAI;EACJ,CAAA"}
package/dist/menubar.js CHANGED
@@ -8,7 +8,7 @@ import { Menubar as Menubar$1 } from "@base-ui/react/menubar";
8
8
  function Menubar({ className, ...props }) {
9
9
  return /* @__PURE__ */ jsx(Menubar$1, {
10
10
  "data-slot": "menubar",
11
- className: cn("bg-background flex h-8 items-center gap-0.5 rounded-lg border p-[3px]", className),
11
+ className: cn("bg-foundation flex h-8 items-center gap-0.5 rounded-md border border-edge p-[3px]", className),
12
12
  ...props
13
13
  });
14
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"menubar.js","names":["MenubarPrimitive"],"sources":["../src/menubar.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport { Menubar as MenubarPrimitive } from \"@base-ui/react/menubar\"\n\nimport {\n Menu,\n MenuContent,\n MenuGroup,\n MenuItem,\n MenuLabel,\n MenuPortal,\n MenuRadioGroup,\n MenuSeparator,\n MenuShortcut,\n MenuSub,\n MenuSubContent,\n MenuSubTrigger,\n MenuTrigger,\n MenuCheckboxItem,\n MenuRadioItem,\n} from \"./menu\"\n\nimport { cn } from \"./lib/utils\"\n\ntype MenubarProps = React.ComponentProps<typeof MenubarPrimitive>\ntype MenubarMenuProps = React.ComponentProps<typeof Menu>\ntype MenubarGroupProps = React.ComponentProps<typeof MenuGroup>\ntype MenubarPortalProps = React.ComponentProps<typeof MenuPortal>\ntype MenubarTriggerProps = React.ComponentProps<typeof MenuTrigger>\ntype MenubarContentProps = React.ComponentProps<typeof MenuContent>\ntype MenubarItemProps = React.ComponentProps<typeof MenuItem>\ntype MenubarCheckboxItemProps = React.ComponentProps<typeof MenuCheckboxItem>\ntype MenubarRadioGroupProps = React.ComponentProps<typeof MenuRadioGroup>\ntype MenubarRadioItemProps = React.ComponentProps<typeof MenuRadioItem>\ntype MenubarLabelProps = React.ComponentProps<typeof MenuLabel>\ntype MenubarSeparatorProps = React.ComponentProps<typeof MenuSeparator>\ntype MenubarShortcutProps = React.ComponentProps<typeof MenuShortcut>\ntype MenubarSubProps = React.ComponentProps<typeof MenuSub>\ntype MenubarSubTriggerProps = React.ComponentProps<typeof MenuSubTrigger>\ntype MenubarSubContentProps = React.ComponentProps<typeof MenuSubContent>\n\nfunction Menubar({ className, ...props }: MenubarProps) {\n return (\n <MenubarPrimitive\n data-slot=\"menubar\"\n className={cn(\n \"bg-background flex h-8 items-center gap-0.5 rounded-lg border p-[3px]\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction MenubarMenu({ ...props }: MenubarMenuProps) {\n return <Menu data-slot=\"menubar-menu\" {...props} />\n}\n\nfunction MenubarGroup({ ...props }: MenubarGroupProps) {\n return <MenuGroup data-slot=\"menubar-group\" {...props} />\n}\n\nfunction MenubarPortal({ ...props }: MenubarPortalProps) {\n return <MenuPortal data-slot=\"menubar-portal\" {...props} />\n}\n\nfunction MenubarTrigger({ ...props }: MenubarTriggerProps) {\n return <MenuTrigger data-slot=\"menubar-trigger\" {...props} />\n}\n\nfunction MenubarContent({\n align = \"start\",\n alignOffset = -4,\n sideOffset = 8,\n className,\n ...props\n}: MenubarContentProps) {\n return (\n <MenuContent\n data-slot=\"menubar-content\"\n className={cn(\"w-auto\", className)}\n align={align}\n alignOffset={alignOffset}\n sideOffset={sideOffset}\n {...props}\n />\n )\n}\n\nfunction MenubarItem({ ...props }: MenubarItemProps) {\n return <MenuItem data-slot=\"menubar-item\" {...props} />\n}\n\nfunction MenubarCheckboxItem({ ...props }: MenubarCheckboxItemProps) {\n return <MenuCheckboxItem data-slot=\"menubar-checkbox-item\" {...props} />\n}\n\nfunction MenubarRadioGroup({ ...props }: MenubarRadioGroupProps) {\n return <MenuRadioGroup data-slot=\"menubar-radio-group\" {...props} />\n}\n\nfunction MenubarRadioItem({ ...props }: MenubarRadioItemProps) {\n return <MenuRadioItem data-slot=\"menubar-radio-item\" {...props} />\n}\n\nfunction MenubarLabel({ ...props }: MenubarLabelProps) {\n return <MenuLabel data-slot=\"menubar-label\" {...props} />\n}\n\nfunction MenubarSeparator({ ...props }: MenubarSeparatorProps) {\n return <MenuSeparator data-slot=\"menubar-separator\" {...props} />\n}\n\nfunction MenubarShortcut({ ...props }: MenubarShortcutProps) {\n return <MenuShortcut data-slot=\"menubar-shortcut\" {...props} />\n}\n\nfunction MenubarSub({ ...props }: MenubarSubProps) {\n return <MenuSub data-slot=\"menubar-sub\" {...props} />\n}\n\nfunction MenubarSubTrigger({ ...props }: MenubarSubTriggerProps) {\n return <MenuSubTrigger data-slot=\"menubar-sub-trigger\" {...props} />\n}\n\nfunction MenubarSubContent({ ...props }: MenubarSubContentProps) {\n return <MenuSubContent data-slot=\"menubar-sub-content\" {...props} />\n}\n\nexport {\n Menubar,\n MenubarPortal,\n MenubarMenu,\n MenubarTrigger,\n MenubarContent,\n MenubarGroup,\n MenubarSeparator,\n MenubarLabel,\n MenubarItem,\n MenubarShortcut,\n MenubarCheckboxItem,\n MenubarRadioGroup,\n MenubarRadioItem,\n MenubarSub,\n MenubarSubTrigger,\n MenubarSubContent,\n}\n"],"mappings":";;;;;;;AA0CA,SAAS,QAAQ,EAAE,WAAW,GAAG,SAAuB;AACtD,QACE,oBAACA,WAAD;EACE,aAAU;EACV,WAAW,GACT,yEACA,UACD;EACD,GAAI;EACJ,CAAA;;AAIN,SAAS,YAAY,EAAE,GAAG,SAA2B;AACnD,QAAO,oBAAC,MAAD;EAAM,aAAU;EAAe,GAAI;EAAS,CAAA;;AAGrD,SAAS,aAAa,EAAE,GAAG,SAA4B;AACrD,QAAO,oBAAC,WAAD;EAAW,aAAU;EAAgB,GAAI;EAAS,CAAA;;AAG3D,SAAS,cAAc,EAAE,GAAG,SAA6B;AACvD,QAAO,oBAAC,YAAD;EAAY,aAAU;EAAiB,GAAI;EAAS,CAAA;;AAG7D,SAAS,eAAe,EAAE,GAAG,SAA8B;AACzD,QAAO,oBAAC,aAAD;EAAa,aAAU;EAAkB,GAAI;EAAS,CAAA;;AAG/D,SAAS,eAAe,EACtB,QAAQ,SACR,cAAc,IACd,aAAa,GACb,WACA,GAAG,SACmB;AACtB,QACE,oBAAC,aAAD;EACE,aAAU;EACV,WAAW,GAAG,UAAU,UAAU;EAC3B;EACM;EACD;EACZ,GAAI;EACJ,CAAA;;AAIN,SAAS,YAAY,EAAE,GAAG,SAA2B;AACnD,QAAO,oBAAC,UAAD;EAAU,aAAU;EAAe,GAAI;EAAS,CAAA;;AAGzD,SAAS,oBAAoB,EAAE,GAAG,SAAmC;AACnE,QAAO,oBAAC,kBAAD;EAAkB,aAAU;EAAwB,GAAI;EAAS,CAAA;;AAG1E,SAAS,kBAAkB,EAAE,GAAG,SAAiC;AAC/D,QAAO,oBAAC,gBAAD;EAAgB,aAAU;EAAsB,GAAI;EAAS,CAAA;;AAGtE,SAAS,iBAAiB,EAAE,GAAG,SAAgC;AAC7D,QAAO,oBAAC,eAAD;EAAe,aAAU;EAAqB,GAAI;EAAS,CAAA;;AAGpE,SAAS,aAAa,EAAE,GAAG,SAA4B;AACrD,QAAO,oBAAC,WAAD;EAAW,aAAU;EAAgB,GAAI;EAAS,CAAA;;AAG3D,SAAS,iBAAiB,EAAE,GAAG,SAAgC;AAC7D,QAAO,oBAAC,eAAD;EAAe,aAAU;EAAoB,GAAI;EAAS,CAAA;;AAGnE,SAAS,gBAAgB,EAAE,GAAG,SAA+B;AAC3D,QAAO,oBAAC,cAAD;EAAc,aAAU;EAAmB,GAAI;EAAS,CAAA;;AAGjE,SAAS,WAAW,EAAE,GAAG,SAA0B;AACjD,QAAO,oBAAC,SAAD;EAAS,aAAU;EAAc,GAAI;EAAS,CAAA;;AAGvD,SAAS,kBAAkB,EAAE,GAAG,SAAiC;AAC/D,QAAO,oBAAC,gBAAD;EAAgB,aAAU;EAAsB,GAAI;EAAS,CAAA;;AAGtE,SAAS,kBAAkB,EAAE,GAAG,SAAiC;AAC/D,QAAO,oBAAC,gBAAD;EAAgB,aAAU;EAAsB,GAAI;EAAS,CAAA"}
1
+ {"version":3,"file":"menubar.js","names":["MenubarPrimitive"],"sources":["../src/menubar.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport { Menubar as MenubarPrimitive } from \"@base-ui/react/menubar\"\n\nimport {\n Menu,\n MenuContent,\n MenuGroup,\n MenuItem,\n MenuLabel,\n MenuPortal,\n MenuRadioGroup,\n MenuSeparator,\n MenuShortcut,\n MenuSub,\n MenuSubContent,\n MenuSubTrigger,\n MenuTrigger,\n MenuCheckboxItem,\n MenuRadioItem,\n} from \"./menu\"\n\nimport { cn } from \"./lib/utils\"\n\ntype MenubarProps = React.ComponentProps<typeof MenubarPrimitive>\ntype MenubarMenuProps = React.ComponentProps<typeof Menu>\ntype MenubarGroupProps = React.ComponentProps<typeof MenuGroup>\ntype MenubarPortalProps = React.ComponentProps<typeof MenuPortal>\ntype MenubarTriggerProps = React.ComponentProps<typeof MenuTrigger>\ntype MenubarContentProps = React.ComponentProps<typeof MenuContent>\ntype MenubarItemProps = React.ComponentProps<typeof MenuItem>\ntype MenubarCheckboxItemProps = React.ComponentProps<typeof MenuCheckboxItem>\ntype MenubarRadioGroupProps = React.ComponentProps<typeof MenuRadioGroup>\ntype MenubarRadioItemProps = React.ComponentProps<typeof MenuRadioItem>\ntype MenubarLabelProps = React.ComponentProps<typeof MenuLabel>\ntype MenubarSeparatorProps = React.ComponentProps<typeof MenuSeparator>\ntype MenubarShortcutProps = React.ComponentProps<typeof MenuShortcut>\ntype MenubarSubProps = React.ComponentProps<typeof MenuSub>\ntype MenubarSubTriggerProps = React.ComponentProps<typeof MenuSubTrigger>\ntype MenubarSubContentProps = React.ComponentProps<typeof MenuSubContent>\n\nfunction Menubar({ className, ...props }: MenubarProps) {\n return (\n <MenubarPrimitive\n data-slot=\"menubar\"\n className={cn(\n \"bg-foundation flex h-8 items-center gap-0.5 rounded-md border border-edge p-[3px]\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction MenubarMenu({ ...props }: MenubarMenuProps) {\n return <Menu data-slot=\"menubar-menu\" {...props} />\n}\n\nfunction MenubarGroup({ ...props }: MenubarGroupProps) {\n return <MenuGroup data-slot=\"menubar-group\" {...props} />\n}\n\nfunction MenubarPortal({ ...props }: MenubarPortalProps) {\n return <MenuPortal data-slot=\"menubar-portal\" {...props} />\n}\n\nfunction MenubarTrigger({ ...props }: MenubarTriggerProps) {\n return <MenuTrigger data-slot=\"menubar-trigger\" {...props} />\n}\n\nfunction MenubarContent({\n align = \"start\",\n alignOffset = -4,\n sideOffset = 8,\n className,\n ...props\n}: MenubarContentProps) {\n return (\n <MenuContent\n data-slot=\"menubar-content\"\n className={cn(\"w-auto\", className)}\n align={align}\n alignOffset={alignOffset}\n sideOffset={sideOffset}\n {...props}\n />\n )\n}\n\nfunction MenubarItem({ ...props }: MenubarItemProps) {\n return <MenuItem data-slot=\"menubar-item\" {...props} />\n}\n\nfunction MenubarCheckboxItem({ ...props }: MenubarCheckboxItemProps) {\n return <MenuCheckboxItem data-slot=\"menubar-checkbox-item\" {...props} />\n}\n\nfunction MenubarRadioGroup({ ...props }: MenubarRadioGroupProps) {\n return <MenuRadioGroup data-slot=\"menubar-radio-group\" {...props} />\n}\n\nfunction MenubarRadioItem({ ...props }: MenubarRadioItemProps) {\n return <MenuRadioItem data-slot=\"menubar-radio-item\" {...props} />\n}\n\nfunction MenubarLabel({ ...props }: MenubarLabelProps) {\n return <MenuLabel data-slot=\"menubar-label\" {...props} />\n}\n\nfunction MenubarSeparator({ ...props }: MenubarSeparatorProps) {\n return <MenuSeparator data-slot=\"menubar-separator\" {...props} />\n}\n\nfunction MenubarShortcut({ ...props }: MenubarShortcutProps) {\n return <MenuShortcut data-slot=\"menubar-shortcut\" {...props} />\n}\n\nfunction MenubarSub({ ...props }: MenubarSubProps) {\n return <MenuSub data-slot=\"menubar-sub\" {...props} />\n}\n\nfunction MenubarSubTrigger({ ...props }: MenubarSubTriggerProps) {\n return <MenuSubTrigger data-slot=\"menubar-sub-trigger\" {...props} />\n}\n\nfunction MenubarSubContent({ ...props }: MenubarSubContentProps) {\n return <MenuSubContent data-slot=\"menubar-sub-content\" {...props} />\n}\n\nexport {\n Menubar,\n MenubarPortal,\n MenubarMenu,\n MenubarTrigger,\n MenubarContent,\n MenubarGroup,\n MenubarSeparator,\n MenubarLabel,\n MenubarItem,\n MenubarShortcut,\n MenubarCheckboxItem,\n MenubarRadioGroup,\n MenubarRadioItem,\n MenubarSub,\n MenubarSubTrigger,\n MenubarSubContent,\n}\n"],"mappings":";;;;;;;AA0CA,SAAS,QAAQ,EAAE,WAAW,GAAG,SAAuB;AACtD,QACE,oBAACA,WAAD;EACE,aAAU;EACV,WAAW,GACT,qFACA,UACD;EACD,GAAI;EACJ,CAAA;;AAIN,SAAS,YAAY,EAAE,GAAG,SAA2B;AACnD,QAAO,oBAAC,MAAD;EAAM,aAAU;EAAe,GAAI;EAAS,CAAA;;AAGrD,SAAS,aAAa,EAAE,GAAG,SAA4B;AACrD,QAAO,oBAAC,WAAD;EAAW,aAAU;EAAgB,GAAI;EAAS,CAAA;;AAG3D,SAAS,cAAc,EAAE,GAAG,SAA6B;AACvD,QAAO,oBAAC,YAAD;EAAY,aAAU;EAAiB,GAAI;EAAS,CAAA;;AAG7D,SAAS,eAAe,EAAE,GAAG,SAA8B;AACzD,QAAO,oBAAC,aAAD;EAAa,aAAU;EAAkB,GAAI;EAAS,CAAA;;AAG/D,SAAS,eAAe,EACtB,QAAQ,SACR,cAAc,IACd,aAAa,GACb,WACA,GAAG,SACmB;AACtB,QACE,oBAAC,aAAD;EACE,aAAU;EACV,WAAW,GAAG,UAAU,UAAU;EAC3B;EACM;EACD;EACZ,GAAI;EACJ,CAAA;;AAIN,SAAS,YAAY,EAAE,GAAG,SAA2B;AACnD,QAAO,oBAAC,UAAD;EAAU,aAAU;EAAe,GAAI;EAAS,CAAA;;AAGzD,SAAS,oBAAoB,EAAE,GAAG,SAAmC;AACnE,QAAO,oBAAC,kBAAD;EAAkB,aAAU;EAAwB,GAAI;EAAS,CAAA;;AAG1E,SAAS,kBAAkB,EAAE,GAAG,SAAiC;AAC/D,QAAO,oBAAC,gBAAD;EAAgB,aAAU;EAAsB,GAAI;EAAS,CAAA;;AAGtE,SAAS,iBAAiB,EAAE,GAAG,SAAgC;AAC7D,QAAO,oBAAC,eAAD;EAAe,aAAU;EAAqB,GAAI;EAAS,CAAA;;AAGpE,SAAS,aAAa,EAAE,GAAG,SAA4B;AACrD,QAAO,oBAAC,WAAD;EAAW,aAAU;EAAgB,GAAI;EAAS,CAAA;;AAG3D,SAAS,iBAAiB,EAAE,GAAG,SAAgC;AAC7D,QAAO,oBAAC,eAAD;EAAe,aAAU;EAAoB,GAAI;EAAS,CAAA;;AAGnE,SAAS,gBAAgB,EAAE,GAAG,SAA+B;AAC3D,QAAO,oBAAC,cAAD;EAAc,aAAU;EAAmB,GAAI;EAAS,CAAA;;AAGjE,SAAS,WAAW,EAAE,GAAG,SAA0B;AACjD,QAAO,oBAAC,SAAD;EAAS,aAAU;EAAc,GAAI;EAAS,CAAA;;AAGvD,SAAS,kBAAkB,EAAE,GAAG,SAAiC;AAC/D,QAAO,oBAAC,gBAAD;EAAgB,aAAU;EAAsB,GAAI;EAAS,CAAA;;AAGtE,SAAS,kBAAkB,EAAE,GAAG,SAAiC;AAC/D,QAAO,oBAAC,gBAAD;EAAgB,aAAU;EAAsB,GAAI;EAAS,CAAA"}
package/dist/popover.js CHANGED
@@ -47,7 +47,7 @@ function PopoverContent({ className, align = "center", alignOffset = 0, side = "
47
47
  className: "isolate z-50",
48
48
  children: /* @__PURE__ */ jsx(Popover$1.Popup, {
49
49
  "data-slot": "popover-content",
50
- className: cn("motion-slide bg-popover text-popover-foreground ring-foreground/10 z-50 flex w-72 origin-(--transform-origin) flex-col gap-2.5 rounded-lg p-2.5 text-sm shadow-md ring-1 outline-hidden", className),
50
+ className: cn("motion-pop-md bg-elevated text-contrast ring-contrast/10 z-50 flex w-72 origin-(--transform-origin) flex-col gap-2.5 rounded-md p-2.5 text-sm shadow-md ring-1 outline-hidden", className),
51
51
  finalFocus: resolveFinalFocus(restoreFocusOnClose, finalFocus),
52
52
  ...props
53
53
  })
@@ -70,7 +70,7 @@ function PopoverTitle({ className, ...props }) {
70
70
  function PopoverDescription({ className, ...props }) {
71
71
  return /* @__PURE__ */ jsx(Popover$1.Description, {
72
72
  "data-slot": "popover-description",
73
- className: cn("text-muted-foreground", className),
73
+ className: cn("text-muted", className),
74
74
  ...props
75
75
  });
76
76
  }
@@ -1 +1 @@
1
- {"version":3,"file":"popover.js","names":["PopoverPrimitive"],"sources":["../src/popover.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport { Popover as PopoverPrimitive } from \"@base-ui/react/popover\"\n\nimport { cn } from \"./lib/utils\"\nimport { resolveFinalFocus, type RestoreFocusOnClose } from \"./lib/focus\"\n\ntype PopoverProps = React.ComponentProps<typeof PopoverPrimitive.Root>\ntype PopoverTriggerProps = React.ComponentProps<typeof PopoverPrimitive.Trigger>\ntype PopoverPortalProps = React.ComponentProps<typeof PopoverPrimitive.Portal>\ntype PopoverPositionerProps = React.ComponentProps<typeof PopoverPrimitive.Positioner>\ntype PopoverTitleProps = React.ComponentProps<typeof PopoverPrimitive.Title>\ntype PopoverDescriptionProps = React.ComponentProps<typeof PopoverPrimitive.Description>\n\ntype PopoverBackdropProps = React.ComponentProps<typeof PopoverPrimitive.Backdrop>\n\ntype PopoverHeaderProps = React.ComponentProps<\"div\">\n\ntype PopoverContentProps = React.ComponentProps<typeof PopoverPrimitive.Popup> &\n Pick<\n React.ComponentProps<typeof PopoverPrimitive.Positioner>,\n \"align\" | \"alignOffset\" | \"side\" | \"sideOffset\" | \"anchor\"\n > & {\n /**\n * Focus-restoration policy when the popover closes. Defaults to\n * Base UI's behaviour (restore to the trigger). Use `\"keyboard\"`\n * when the trigger is hover/focus-within–revealed so a pointer\n * close doesn't keep it pinned visible. See {@link RestoreFocusOnClose}.\n */\n restoreFocusOnClose?: RestoreFocusOnClose\n }\n\nfunction Popover({ ...props }: PopoverProps) {\n return <PopoverPrimitive.Root data-slot=\"popover\" {...props} />\n}\n\nfunction PopoverTrigger({ ...props }: PopoverTriggerProps) {\n return <PopoverPrimitive.Trigger data-slot=\"popover-trigger\" {...props} />\n}\n\nfunction PopoverPortal({ ...props }: PopoverPortalProps) {\n return <PopoverPrimitive.Portal data-slot=\"popover-portal\" {...props} />\n}\n\nfunction PopoverPositioner({ className, ...props }: PopoverPositionerProps) {\n return (\n <PopoverPrimitive.Positioner\n data-slot=\"popover-positioner\"\n className={className}\n {...props}\n />\n )\n}\n\nfunction PopoverBackdrop({ className, ...props }: PopoverBackdropProps) {\n return (\n <PopoverPrimitive.Backdrop\n data-slot=\"popover-backdrop\"\n className={cn(\"fixed inset-0 z-40\", className)}\n {...props}\n />\n )\n}\n\nfunction PopoverContent({\n className,\n align = \"center\",\n alignOffset = 0,\n side = \"bottom\",\n sideOffset = 4,\n anchor,\n restoreFocusOnClose,\n finalFocus,\n ...props\n}: PopoverContentProps) {\n return (\n <PopoverPortal>\n <PopoverPositioner\n anchor={anchor}\n align={align}\n alignOffset={alignOffset}\n side={side}\n sideOffset={sideOffset}\n className=\"isolate z-50\"\n >\n <PopoverPrimitive.Popup\n data-slot=\"popover-content\"\n className={cn(\n \"motion-slide bg-popover text-popover-foreground ring-foreground/10 z-50 flex w-72 origin-(--transform-origin) flex-col gap-2.5 rounded-lg p-2.5 text-sm shadow-md ring-1 outline-hidden\",\n className\n )}\n finalFocus={resolveFinalFocus(restoreFocusOnClose, finalFocus)}\n {...props}\n />\n </PopoverPositioner>\n </PopoverPortal>\n )\n}\n\nfunction PopoverHeader({ className, ...props }: PopoverHeaderProps) {\n return (\n <div\n data-slot=\"popover-header\"\n className={cn(\n \"flex flex-col gap-0.5 text-sm\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction PopoverTitle({ className, ...props }: PopoverTitleProps) {\n return (\n <PopoverPrimitive.Title\n data-slot=\"popover-title\"\n className={cn(\"font-medium\", className)}\n {...props}\n />\n )\n}\n\nfunction PopoverDescription({\n className,\n ...props\n}: PopoverDescriptionProps) {\n return (\n <PopoverPrimitive.Description\n data-slot=\"popover-description\"\n className={cn(\"text-muted-foreground\", className)}\n {...props}\n />\n )\n}\n\nexport {\n Popover,\n PopoverBackdrop,\n PopoverContent,\n PopoverDescription,\n PopoverHeader,\n PopoverTitle,\n PopoverTrigger,\n PopoverPortal,\n PopoverPositioner,\n}\n"],"mappings":";;;;;;;AAiCA,SAAS,QAAQ,EAAE,GAAG,SAAuB;AAC3C,QAAO,oBAACA,UAAiB,MAAlB;EAAuB,aAAU;EAAU,GAAI;EAAS,CAAA;;AAGjE,SAAS,eAAe,EAAE,GAAG,SAA8B;AACzD,QAAO,oBAACA,UAAiB,SAAlB;EAA0B,aAAU;EAAkB,GAAI;EAAS,CAAA;;AAG5E,SAAS,cAAc,EAAE,GAAG,SAA6B;AACvD,QAAO,oBAACA,UAAiB,QAAlB;EAAyB,aAAU;EAAiB,GAAI;EAAS,CAAA;;AAG1E,SAAS,kBAAkB,EAAE,WAAW,GAAG,SAAiC;AAC1E,QACE,oBAACA,UAAiB,YAAlB;EACE,aAAU;EACC;EACX,GAAI;EACJ,CAAA;;AAIN,SAAS,gBAAgB,EAAE,WAAW,GAAG,SAA+B;AACtE,QACE,oBAACA,UAAiB,UAAlB;EACE,aAAU;EACV,WAAW,GAAG,sBAAsB,UAAU;EAC9C,GAAI;EACJ,CAAA;;AAIN,SAAS,eAAe,EACtB,WACA,QAAQ,UACR,cAAc,GACd,OAAO,UACP,aAAa,GACb,QACA,qBACA,YACA,GAAG,SACmB;AACtB,QACE,oBAAC,eAAD,EAAA,UACE,oBAAC,mBAAD;EACU;EACD;EACM;EACP;EACM;EACZ,WAAU;YAEV,oBAACA,UAAiB,OAAlB;GACE,aAAU;GACV,WAAW,GACT,2LACA,UACD;GACD,YAAY,kBAAkB,qBAAqB,WAAW;GAC9D,GAAI;GACJ,CAAA;EACgB,CAAA,EACN,CAAA;;AAIpB,SAAS,cAAc,EAAE,WAAW,GAAG,SAA6B;AAClE,QACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GACT,iCACA,UACD;EACD,GAAI;EACJ,CAAA;;AAIN,SAAS,aAAa,EAAE,WAAW,GAAG,SAA4B;AAChE,QACE,oBAACA,UAAiB,OAAlB;EACE,aAAU;EACV,WAAW,GAAG,eAAe,UAAU;EACvC,GAAI;EACJ,CAAA;;AAIN,SAAS,mBAAmB,EAC1B,WACA,GAAG,SACuB;AAC1B,QACE,oBAACA,UAAiB,aAAlB;EACE,aAAU;EACV,WAAW,GAAG,yBAAyB,UAAU;EACjD,GAAI;EACJ,CAAA"}
1
+ {"version":3,"file":"popover.js","names":["PopoverPrimitive"],"sources":["../src/popover.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport { Popover as PopoverPrimitive } from \"@base-ui/react/popover\"\n\nimport { cn } from \"./lib/utils\"\nimport { resolveFinalFocus, type RestoreFocusOnClose } from \"./lib/focus\"\n\ntype PopoverProps = React.ComponentProps<typeof PopoverPrimitive.Root>\ntype PopoverTriggerProps = React.ComponentProps<typeof PopoverPrimitive.Trigger>\ntype PopoverPortalProps = React.ComponentProps<typeof PopoverPrimitive.Portal>\ntype PopoverPositionerProps = React.ComponentProps<typeof PopoverPrimitive.Positioner>\ntype PopoverTitleProps = React.ComponentProps<typeof PopoverPrimitive.Title>\ntype PopoverDescriptionProps = React.ComponentProps<typeof PopoverPrimitive.Description>\n\ntype PopoverBackdropProps = React.ComponentProps<typeof PopoverPrimitive.Backdrop>\n\ntype PopoverHeaderProps = React.ComponentProps<\"div\">\n\ntype PopoverContentProps = React.ComponentProps<typeof PopoverPrimitive.Popup> &\n Pick<\n React.ComponentProps<typeof PopoverPrimitive.Positioner>,\n \"align\" | \"alignOffset\" | \"side\" | \"sideOffset\" | \"anchor\"\n > & {\n /**\n * Focus-restoration policy when the popover closes. Defaults to\n * Base UI's behaviour (restore to the trigger). Use `\"keyboard\"`\n * when the trigger is hover/focus-within–revealed so a pointer\n * close doesn't keep it pinned visible. See {@link RestoreFocusOnClose}.\n */\n restoreFocusOnClose?: RestoreFocusOnClose\n }\n\nfunction Popover({ ...props }: PopoverProps) {\n return <PopoverPrimitive.Root data-slot=\"popover\" {...props} />\n}\n\nfunction PopoverTrigger({ ...props }: PopoverTriggerProps) {\n return <PopoverPrimitive.Trigger data-slot=\"popover-trigger\" {...props} />\n}\n\nfunction PopoverPortal({ ...props }: PopoverPortalProps) {\n return <PopoverPrimitive.Portal data-slot=\"popover-portal\" {...props} />\n}\n\nfunction PopoverPositioner({ className, ...props }: PopoverPositionerProps) {\n return (\n <PopoverPrimitive.Positioner\n data-slot=\"popover-positioner\"\n className={className}\n {...props}\n />\n )\n}\n\nfunction PopoverBackdrop({ className, ...props }: PopoverBackdropProps) {\n return (\n <PopoverPrimitive.Backdrop\n data-slot=\"popover-backdrop\"\n className={cn(\"fixed inset-0 z-40\", className)}\n {...props}\n />\n )\n}\n\nfunction PopoverContent({\n className,\n align = \"center\",\n alignOffset = 0,\n side = \"bottom\",\n sideOffset = 4,\n anchor,\n restoreFocusOnClose,\n finalFocus,\n ...props\n}: PopoverContentProps) {\n return (\n <PopoverPortal>\n <PopoverPositioner\n anchor={anchor}\n align={align}\n alignOffset={alignOffset}\n side={side}\n sideOffset={sideOffset}\n className=\"isolate z-50\"\n >\n <PopoverPrimitive.Popup\n data-slot=\"popover-content\"\n className={cn(\n \"motion-pop-md bg-elevated text-contrast ring-contrast/10 z-50 flex w-72 origin-(--transform-origin) flex-col gap-2.5 rounded-md p-2.5 text-sm shadow-md ring-1 outline-hidden\",\n className\n )}\n finalFocus={resolveFinalFocus(restoreFocusOnClose, finalFocus)}\n {...props}\n />\n </PopoverPositioner>\n </PopoverPortal>\n )\n}\n\nfunction PopoverHeader({ className, ...props }: PopoverHeaderProps) {\n return (\n <div\n data-slot=\"popover-header\"\n className={cn(\n \"flex flex-col gap-0.5 text-sm\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction PopoverTitle({ className, ...props }: PopoverTitleProps) {\n return (\n <PopoverPrimitive.Title\n data-slot=\"popover-title\"\n className={cn(\"font-medium\", className)}\n {...props}\n />\n )\n}\n\nfunction PopoverDescription({\n className,\n ...props\n}: PopoverDescriptionProps) {\n return (\n <PopoverPrimitive.Description\n data-slot=\"popover-description\"\n className={cn(\"text-muted\", className)}\n {...props}\n />\n )\n}\n\nexport {\n Popover,\n PopoverBackdrop,\n PopoverContent,\n PopoverDescription,\n PopoverHeader,\n PopoverTitle,\n PopoverTrigger,\n PopoverPortal,\n PopoverPositioner,\n}\n"],"mappings":";;;;;;;AAiCA,SAAS,QAAQ,EAAE,GAAG,SAAuB;AAC3C,QAAO,oBAACA,UAAiB,MAAlB;EAAuB,aAAU;EAAU,GAAI;EAAS,CAAA;;AAGjE,SAAS,eAAe,EAAE,GAAG,SAA8B;AACzD,QAAO,oBAACA,UAAiB,SAAlB;EAA0B,aAAU;EAAkB,GAAI;EAAS,CAAA;;AAG5E,SAAS,cAAc,EAAE,GAAG,SAA6B;AACvD,QAAO,oBAACA,UAAiB,QAAlB;EAAyB,aAAU;EAAiB,GAAI;EAAS,CAAA;;AAG1E,SAAS,kBAAkB,EAAE,WAAW,GAAG,SAAiC;AAC1E,QACE,oBAACA,UAAiB,YAAlB;EACE,aAAU;EACC;EACX,GAAI;EACJ,CAAA;;AAIN,SAAS,gBAAgB,EAAE,WAAW,GAAG,SAA+B;AACtE,QACE,oBAACA,UAAiB,UAAlB;EACE,aAAU;EACV,WAAW,GAAG,sBAAsB,UAAU;EAC9C,GAAI;EACJ,CAAA;;AAIN,SAAS,eAAe,EACtB,WACA,QAAQ,UACR,cAAc,GACd,OAAO,UACP,aAAa,GACb,QACA,qBACA,YACA,GAAG,SACmB;AACtB,QACE,oBAAC,eAAD,EAAA,UACE,oBAAC,mBAAD;EACU;EACD;EACM;EACP;EACM;EACZ,WAAU;YAEV,oBAACA,UAAiB,OAAlB;GACE,aAAU;GACV,WAAW,GACT,iLACA,UACD;GACD,YAAY,kBAAkB,qBAAqB,WAAW;GAC9D,GAAI;GACJ,CAAA;EACgB,CAAA,EACN,CAAA;;AAIpB,SAAS,cAAc,EAAE,WAAW,GAAG,SAA6B;AAClE,QACE,oBAAC,OAAD;EACE,aAAU;EACV,WAAW,GACT,iCACA,UACD;EACD,GAAI;EACJ,CAAA;;AAIN,SAAS,aAAa,EAAE,WAAW,GAAG,SAA4B;AAChE,QACE,oBAACA,UAAiB,OAAlB;EACE,aAAU;EACV,WAAW,GAAG,eAAe,UAAU;EACvC,GAAI;EACJ,CAAA;;AAIN,SAAS,mBAAmB,EAC1B,WACA,GAAG,SACuB;AAC1B,QACE,oBAACA,UAAiB,aAAlB;EACE,aAAU;EACV,WAAW,GAAG,cAAc,UAAU;EACtC,GAAI;EACJ,CAAA"}
@@ -39,7 +39,7 @@ function PreviewCardContent({ className, side = "bottom", sideOffset = 4, align
39
39
  className: "isolate z-50",
40
40
  children: /* @__PURE__ */ jsx(PreviewCard$1.Popup, {
41
41
  "data-slot": "preview-card-content",
42
- className: cn("motion-slide bg-popover text-popover-foreground ring-foreground/10 z-50 w-64 origin-(--transform-origin) rounded-lg p-2.5 text-sm shadow-md ring-1 outline-hidden", className),
42
+ className: cn("motion-pop-md bg-elevated text-contrast ring-contrast/10 z-50 w-64 origin-(--transform-origin) rounded-md p-2.5 text-sm shadow-md ring-1 outline-hidden", className),
43
43
  ...props
44
44
  })
45
45
  }) });
@@ -1 +1 @@
1
- {"version":3,"file":"preview-card.js","names":["PreviewCardPrimitive"],"sources":["../src/preview-card.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport { PreviewCard as PreviewCardPrimitive } from \"@base-ui/react/preview-card\"\n\nimport { cn } from \"./lib/utils\"\n\ntype PreviewCardProps = React.ComponentProps<typeof PreviewCardPrimitive.Root>\ntype PreviewCardTriggerProps = React.ComponentProps<typeof PreviewCardPrimitive.Trigger>\ntype PreviewCardPortalProps = React.ComponentProps<typeof PreviewCardPrimitive.Portal>\ntype PreviewCardPositionerProps = React.ComponentProps<typeof PreviewCardPrimitive.Positioner>\ntype PreviewCardPopupProps = React.ComponentProps<typeof PreviewCardPrimitive.Popup>\n\ntype PreviewCardContentProps = PreviewCardPopupProps &\n Pick<\n PreviewCardPositionerProps,\n \"align\" | \"alignOffset\" | \"side\" | \"sideOffset\" | \"anchor\"\n >\n\nfunction PreviewCard({ ...props }: PreviewCardProps) {\n return <PreviewCardPrimitive.Root data-slot=\"preview-card\" {...props} />\n}\n\nfunction PreviewCardTrigger({ ...props }: PreviewCardTriggerProps) {\n return (\n <PreviewCardPrimitive.Trigger\n data-slot=\"preview-card-trigger\"\n {...props}\n />\n )\n}\n\nfunction PreviewCardPortal({ ...props }: PreviewCardPortalProps) {\n return <PreviewCardPrimitive.Portal data-slot=\"preview-card-portal\" {...props} />\n}\n\nfunction PreviewCardPositioner({\n className,\n ...props\n}: PreviewCardPositionerProps) {\n return (\n <PreviewCardPrimitive.Positioner\n data-slot=\"preview-card-positioner\"\n className={className}\n {...props}\n />\n )\n}\n\nfunction PreviewCardContent({\n className,\n side = \"bottom\",\n sideOffset = 4,\n align = \"center\",\n alignOffset = 0,\n anchor,\n ...props\n}: PreviewCardContentProps) {\n return (\n <PreviewCardPortal>\n <PreviewCardPositioner\n anchor={anchor}\n align={align}\n alignOffset={alignOffset}\n side={side}\n sideOffset={sideOffset}\n className=\"isolate z-50\"\n >\n <PreviewCardPrimitive.Popup\n data-slot=\"preview-card-content\"\n className={cn(\n \"motion-slide bg-popover text-popover-foreground ring-foreground/10 z-50 w-64 origin-(--transform-origin) rounded-lg p-2.5 text-sm shadow-md ring-1 outline-hidden\",\n className,\n )}\n {...props}\n />\n </PreviewCardPositioner>\n </PreviewCardPortal>\n )\n}\n\nexport {\n PreviewCard,\n PreviewCardTrigger,\n PreviewCardContent,\n PreviewCardPortal,\n PreviewCardPositioner,\n}\n"],"mappings":";;;;;;AAmBA,SAAS,YAAY,EAAE,GAAG,SAA2B;AACnD,QAAO,oBAACA,cAAqB,MAAtB;EAA2B,aAAU;EAAe,GAAI;EAAS,CAAA;;AAG1E,SAAS,mBAAmB,EAAE,GAAG,SAAkC;AACjE,QACE,oBAACA,cAAqB,SAAtB;EACE,aAAU;EACV,GAAI;EACJ,CAAA;;AAIN,SAAS,kBAAkB,EAAE,GAAG,SAAiC;AAC/D,QAAO,oBAACA,cAAqB,QAAtB;EAA6B,aAAU;EAAsB,GAAI;EAAS,CAAA;;AAGnF,SAAS,sBAAsB,EAC7B,WACA,GAAG,SAC0B;AAC7B,QACE,oBAACA,cAAqB,YAAtB;EACE,aAAU;EACC;EACX,GAAI;EACJ,CAAA;;AAIN,SAAS,mBAAmB,EAC1B,WACA,OAAO,UACP,aAAa,GACb,QAAQ,UACR,cAAc,GACd,QACA,GAAG,SACuB;AAC1B,QACE,oBAAC,mBAAD,EAAA,UACE,oBAAC,uBAAD;EACU;EACD;EACM;EACP;EACM;EACZ,WAAU;YAEV,oBAACA,cAAqB,OAAtB;GACE,aAAU;GACV,WAAW,GACT,qKACA,UACD;GACD,GAAI;GACJ,CAAA;EACoB,CAAA,EACN,CAAA"}
1
+ {"version":3,"file":"preview-card.js","names":["PreviewCardPrimitive"],"sources":["../src/preview-card.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport { PreviewCard as PreviewCardPrimitive } from \"@base-ui/react/preview-card\"\n\nimport { cn } from \"./lib/utils\"\n\ntype PreviewCardProps = React.ComponentProps<typeof PreviewCardPrimitive.Root>\ntype PreviewCardTriggerProps = React.ComponentProps<typeof PreviewCardPrimitive.Trigger>\ntype PreviewCardPortalProps = React.ComponentProps<typeof PreviewCardPrimitive.Portal>\ntype PreviewCardPositionerProps = React.ComponentProps<typeof PreviewCardPrimitive.Positioner>\ntype PreviewCardPopupProps = React.ComponentProps<typeof PreviewCardPrimitive.Popup>\n\ntype PreviewCardContentProps = PreviewCardPopupProps &\n Pick<\n PreviewCardPositionerProps,\n \"align\" | \"alignOffset\" | \"side\" | \"sideOffset\" | \"anchor\"\n >\n\nfunction PreviewCard({ ...props }: PreviewCardProps) {\n return <PreviewCardPrimitive.Root data-slot=\"preview-card\" {...props} />\n}\n\nfunction PreviewCardTrigger({ ...props }: PreviewCardTriggerProps) {\n return (\n <PreviewCardPrimitive.Trigger\n data-slot=\"preview-card-trigger\"\n {...props}\n />\n )\n}\n\nfunction PreviewCardPortal({ ...props }: PreviewCardPortalProps) {\n return <PreviewCardPrimitive.Portal data-slot=\"preview-card-portal\" {...props} />\n}\n\nfunction PreviewCardPositioner({\n className,\n ...props\n}: PreviewCardPositionerProps) {\n return (\n <PreviewCardPrimitive.Positioner\n data-slot=\"preview-card-positioner\"\n className={className}\n {...props}\n />\n )\n}\n\nfunction PreviewCardContent({\n className,\n side = \"bottom\",\n sideOffset = 4,\n align = \"center\",\n alignOffset = 0,\n anchor,\n ...props\n}: PreviewCardContentProps) {\n return (\n <PreviewCardPortal>\n <PreviewCardPositioner\n anchor={anchor}\n align={align}\n alignOffset={alignOffset}\n side={side}\n sideOffset={sideOffset}\n className=\"isolate z-50\"\n >\n <PreviewCardPrimitive.Popup\n data-slot=\"preview-card-content\"\n className={cn(\n \"motion-pop-md bg-elevated text-contrast ring-contrast/10 z-50 w-64 origin-(--transform-origin) rounded-md p-2.5 text-sm shadow-md ring-1 outline-hidden\",\n className,\n )}\n {...props}\n />\n </PreviewCardPositioner>\n </PreviewCardPortal>\n )\n}\n\nexport {\n PreviewCard,\n PreviewCardTrigger,\n PreviewCardContent,\n PreviewCardPortal,\n PreviewCardPositioner,\n}\n"],"mappings":";;;;;;AAmBA,SAAS,YAAY,EAAE,GAAG,SAA2B;AACnD,QAAO,oBAACA,cAAqB,MAAtB;EAA2B,aAAU;EAAe,GAAI;EAAS,CAAA;;AAG1E,SAAS,mBAAmB,EAAE,GAAG,SAAkC;AACjE,QACE,oBAACA,cAAqB,SAAtB;EACE,aAAU;EACV,GAAI;EACJ,CAAA;;AAIN,SAAS,kBAAkB,EAAE,GAAG,SAAiC;AAC/D,QAAO,oBAACA,cAAqB,QAAtB;EAA6B,aAAU;EAAsB,GAAI;EAAS,CAAA;;AAGnF,SAAS,sBAAsB,EAC7B,WACA,GAAG,SAC0B;AAC7B,QACE,oBAACA,cAAqB,YAAtB;EACE,aAAU;EACC;EACX,GAAI;EACJ,CAAA;;AAIN,SAAS,mBAAmB,EAC1B,WACA,OAAO,UACP,aAAa,GACb,QAAQ,UACR,cAAc,GACd,QACA,GAAG,SACuB;AAC1B,QACE,oBAAC,mBAAD,EAAA,UACE,oBAAC,uBAAD;EACU;EACD;EACM;EACP;EACM;EACZ,WAAU;YAEV,oBAACA,cAAqB,OAAtB;GACE,aAAU;GACV,WAAW,GACT,2JACA,UACD;GACD,GAAI;GACJ,CAAA;EACoB,CAAA,EACN,CAAA"}
package/dist/progress.js CHANGED
@@ -15,7 +15,7 @@ function Progress({ className, children, value, ...props }) {
15
15
  }
16
16
  function ProgressTrack({ className, ...props }) {
17
17
  return /* @__PURE__ */ jsx(Progress$1.Track, {
18
- className: cn("bg-muted relative flex h-1 w-full items-center overflow-x-hidden rounded-full", className),
18
+ className: cn("bg-secondary relative flex h-1 w-full items-center overflow-x-hidden rounded-full", className),
19
19
  "data-slot": "progress-track",
20
20
  ...props
21
21
  });
@@ -36,7 +36,7 @@ function ProgressLabel({ className, ...props }) {
36
36
  }
37
37
  function ProgressValue({ className, ...props }) {
38
38
  return /* @__PURE__ */ jsx(Progress$1.Value, {
39
- className: cn("text-muted-foreground ml-auto text-sm tabular-nums", className),
39
+ className: cn("text-muted ml-auto text-sm tabular-nums", className),
40
40
  "data-slot": "progress-value",
41
41
  ...props
42
42
  });
@@ -1 +1 @@
1
- {"version":3,"file":"progress.js","names":["ProgressPrimitive"],"sources":["../src/progress.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport { Progress as ProgressPrimitive } from \"@base-ui/react/progress\"\n\nimport { cn } from \"./lib/utils\"\n\ntype ProgressProps = React.ComponentProps<typeof ProgressPrimitive.Root>\ntype ProgressTrackProps = React.ComponentProps<typeof ProgressPrimitive.Track>\ntype ProgressIndicatorProps = React.ComponentProps<typeof ProgressPrimitive.Indicator>\ntype ProgressLabelProps = React.ComponentProps<typeof ProgressPrimitive.Label>\ntype ProgressValueProps = React.ComponentProps<typeof ProgressPrimitive.Value>\n\nfunction Progress({ className, children, value, ...props }: ProgressProps) {\n return (\n <ProgressPrimitive.Root\n value={value}\n data-slot=\"progress\"\n className={cn(\"flex flex-wrap gap-3\", className)}\n {...props}\n >\n {children}\n <ProgressTrack>\n <ProgressIndicator />\n </ProgressTrack>\n </ProgressPrimitive.Root>\n )\n}\n\nfunction ProgressTrack({ className, ...props }: ProgressTrackProps) {\n return (\n <ProgressPrimitive.Track\n className={cn(\n \"bg-muted relative flex h-1 w-full items-center overflow-x-hidden rounded-full\",\n className\n )}\n data-slot=\"progress-track\"\n {...props}\n />\n )\n}\n\nfunction ProgressIndicator({ className, ...props }: ProgressIndicatorProps) {\n return (\n <ProgressPrimitive.Indicator\n data-slot=\"progress-indicator\"\n className={cn(\n \"bg-primary h-full transition-[width]\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction ProgressLabel({ className, ...props }: ProgressLabelProps) {\n return (\n <ProgressPrimitive.Label\n className={cn(\"text-sm font-medium\", className)}\n data-slot=\"progress-label\"\n {...props}\n />\n )\n}\n\nfunction ProgressValue({ className, ...props }: ProgressValueProps) {\n return (\n <ProgressPrimitive.Value\n className={cn(\n \"text-muted-foreground ml-auto text-sm tabular-nums\",\n className\n )}\n data-slot=\"progress-value\"\n {...props}\n />\n )\n}\n\nexport {\n Progress,\n ProgressTrack,\n ProgressIndicator,\n ProgressLabel,\n ProgressValue,\n}\n"],"mappings":";;;;;;AAaA,SAAS,SAAS,EAAE,WAAW,UAAU,OAAO,GAAG,SAAwB;AACzE,QACE,qBAACA,WAAkB,MAAnB;EACS;EACP,aAAU;EACV,WAAW,GAAG,wBAAwB,UAAU;EAChD,GAAI;YAJN,CAMG,UACD,oBAAC,eAAD,EAAA,UACE,oBAAC,mBAAD,EAAqB,CAAA,EACP,CAAA,CACO;;;AAI7B,SAAS,cAAc,EAAE,WAAW,GAAG,SAA6B;AAClE,QACE,oBAACA,WAAkB,OAAnB;EACE,WAAW,GACT,iFACA,UACD;EACD,aAAU;EACV,GAAI;EACJ,CAAA;;AAIN,SAAS,kBAAkB,EAAE,WAAW,GAAG,SAAiC;AAC1E,QACE,oBAACA,WAAkB,WAAnB;EACE,aAAU;EACV,WAAW,GACT,wCACA,UACD;EACD,GAAI;EACJ,CAAA;;AAIN,SAAS,cAAc,EAAE,WAAW,GAAG,SAA6B;AAClE,QACE,oBAACA,WAAkB,OAAnB;EACE,WAAW,GAAG,uBAAuB,UAAU;EAC/C,aAAU;EACV,GAAI;EACJ,CAAA;;AAIN,SAAS,cAAc,EAAE,WAAW,GAAG,SAA6B;AAClE,QACE,oBAACA,WAAkB,OAAnB;EACE,WAAW,GACT,sDACA,UACD;EACD,aAAU;EACV,GAAI;EACJ,CAAA"}
1
+ {"version":3,"file":"progress.js","names":["ProgressPrimitive"],"sources":["../src/progress.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport { Progress as ProgressPrimitive } from \"@base-ui/react/progress\"\n\nimport { cn } from \"./lib/utils\"\n\ntype ProgressProps = React.ComponentProps<typeof ProgressPrimitive.Root>\ntype ProgressTrackProps = React.ComponentProps<typeof ProgressPrimitive.Track>\ntype ProgressIndicatorProps = React.ComponentProps<typeof ProgressPrimitive.Indicator>\ntype ProgressLabelProps = React.ComponentProps<typeof ProgressPrimitive.Label>\ntype ProgressValueProps = React.ComponentProps<typeof ProgressPrimitive.Value>\n\nfunction Progress({ className, children, value, ...props }: ProgressProps) {\n return (\n <ProgressPrimitive.Root\n value={value}\n data-slot=\"progress\"\n className={cn(\"flex flex-wrap gap-3\", className)}\n {...props}\n >\n {children}\n <ProgressTrack>\n <ProgressIndicator />\n </ProgressTrack>\n </ProgressPrimitive.Root>\n )\n}\n\nfunction ProgressTrack({ className, ...props }: ProgressTrackProps) {\n return (\n <ProgressPrimitive.Track\n className={cn(\n \"bg-secondary relative flex h-1 w-full items-center overflow-x-hidden rounded-full\",\n className\n )}\n data-slot=\"progress-track\"\n {...props}\n />\n )\n}\n\nfunction ProgressIndicator({ className, ...props }: ProgressIndicatorProps) {\n return (\n <ProgressPrimitive.Indicator\n data-slot=\"progress-indicator\"\n className={cn(\n \"bg-primary h-full transition-[width]\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction ProgressLabel({ className, ...props }: ProgressLabelProps) {\n return (\n <ProgressPrimitive.Label\n className={cn(\"text-sm font-medium\", className)}\n data-slot=\"progress-label\"\n {...props}\n />\n )\n}\n\nfunction ProgressValue({ className, ...props }: ProgressValueProps) {\n return (\n <ProgressPrimitive.Value\n className={cn(\n \"text-muted ml-auto text-sm tabular-nums\",\n className\n )}\n data-slot=\"progress-value\"\n {...props}\n />\n )\n}\n\nexport {\n Progress,\n ProgressTrack,\n ProgressIndicator,\n ProgressLabel,\n ProgressValue,\n}\n"],"mappings":";;;;;;AAaA,SAAS,SAAS,EAAE,WAAW,UAAU,OAAO,GAAG,SAAwB;AACzE,QACE,qBAACA,WAAkB,MAAnB;EACS;EACP,aAAU;EACV,WAAW,GAAG,wBAAwB,UAAU;EAChD,GAAI;YAJN,CAMG,UACD,oBAAC,eAAD,EAAA,UACE,oBAAC,mBAAD,EAAqB,CAAA,EACP,CAAA,CACO;;;AAI7B,SAAS,cAAc,EAAE,WAAW,GAAG,SAA6B;AAClE,QACE,oBAACA,WAAkB,OAAnB;EACE,WAAW,GACT,qFACA,UACD;EACD,aAAU;EACV,GAAI;EACJ,CAAA;;AAIN,SAAS,kBAAkB,EAAE,WAAW,GAAG,SAAiC;AAC1E,QACE,oBAACA,WAAkB,WAAnB;EACE,aAAU;EACV,WAAW,GACT,wCACA,UACD;EACD,GAAI;EACJ,CAAA;;AAIN,SAAS,cAAc,EAAE,WAAW,GAAG,SAA6B;AAClE,QACE,oBAACA,WAAkB,OAAnB;EACE,WAAW,GAAG,uBAAuB,UAAU;EAC/C,aAAU;EACV,GAAI;EACJ,CAAA;;AAIN,SAAS,cAAc,EAAE,WAAW,GAAG,SAA6B;AAClE,QACE,oBAACA,WAAkB,OAAnB;EACE,WAAW,GACT,2CACA,UACD;EACD,aAAU;EACV,GAAI;EACJ,CAAA"}
package/dist/radio.js CHANGED
@@ -7,7 +7,7 @@ import { Radio as Radio$1 } from "@base-ui/react/radio";
7
7
  function Radio({ className, ...props }) {
8
8
  return /* @__PURE__ */ jsx(Radio$1.Root, {
9
9
  "data-slot": "radio",
10
- className: cn("cursor-clickable border-input dark:bg-input/30 data-checked:bg-primary data-checked:text-primary-foreground dark:data-checked:bg-primary data-checked:border-primary aria-invalid:aria-checked:border-primary aria-invalid:border-destructive focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 dark:aria-invalid:border-destructive/50 group/radio peer relative flex aspect-square size-4 shrink-0 rounded-full border outline-none after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:ring-3 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:ring-3", className),
10
+ className: cn("cursor-clickable border-edge dark:bg-edge/30 data-checked:bg-primary data-checked:text-white dark:data-checked:bg-primary data-checked:border-primary aria-invalid:aria-checked:border-primary aria-invalid:border-destructive focus-visible:border-focus focus-visible:ring-focus/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 dark:aria-invalid:border-destructive/50 group/radio peer relative flex aspect-square size-4 shrink-0 rounded-full border outline-none after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:ring-3 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:ring-3", className),
11
11
  ...props,
12
12
  children: /* @__PURE__ */ jsx(RadioIndicator, {})
13
13
  });
@@ -15,7 +15,7 @@ function Radio({ className, ...props }) {
15
15
  function RadioIndicator({ className, ...props }) {
16
16
  return /* @__PURE__ */ jsx(Radio$1.Indicator, {
17
17
  "data-slot": "radio-indicator",
18
- className: cn("group-aria-invalid/radio:text-destructive text-primary-foreground absolute inset-0 flex items-center justify-center data-unchecked:opacity-0", "after:block after:size-2 after:rounded-full after:bg-current", className),
18
+ className: cn("group-aria-invalid/radio:text-destructive text-white absolute inset-0 flex items-center justify-center data-unchecked:opacity-0", "after:block after:size-2 after:rounded-full after:bg-current", className),
19
19
  ...props
20
20
  });
21
21
  }
package/dist/radio.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"radio.js","names":["RadioPrimitive"],"sources":["../src/radio.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\n\nimport { Radio as RadioPrimitive } from \"@base-ui/react/radio\"\n\nimport { cn } from \"./lib/utils\"\n\ntype RadioProps = React.ComponentProps<typeof RadioPrimitive.Root>\ntype RadioIndicatorProps = React.ComponentProps<typeof RadioPrimitive.Indicator>\n\nfunction Radio({ className, ...props }: RadioProps) {\n return (\n <RadioPrimitive.Root\n data-slot=\"radio\"\n className={cn(\n \"cursor-clickable border-input dark:bg-input/30 data-checked:bg-primary data-checked:text-primary-foreground dark:data-checked:bg-primary data-checked:border-primary aria-invalid:aria-checked:border-primary aria-invalid:border-destructive focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 dark:aria-invalid:border-destructive/50 group/radio peer relative flex aspect-square size-4 shrink-0 rounded-full border outline-none after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:ring-3 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:ring-3\",\n className,\n )}\n {...props}\n >\n <RadioIndicator />\n </RadioPrimitive.Root>\n )\n}\n\nfunction RadioIndicator({ className, ...props }: RadioIndicatorProps) {\n return (\n <RadioPrimitive.Indicator\n data-slot=\"radio-indicator\"\n className={cn(\n \"group-aria-invalid/radio:text-destructive text-primary-foreground absolute inset-0 flex items-center justify-center data-unchecked:opacity-0\",\n \"after:block after:size-2 after:rounded-full after:bg-current\",\n className,\n )}\n {...props}\n />\n )\n}\n\nexport { Radio, RadioIndicator }\n"],"mappings":";;;;;;AAWA,SAAS,MAAM,EAAE,WAAW,GAAG,SAAqB;AAClD,QACE,oBAACA,QAAe,MAAhB;EACE,aAAU;EACV,WAAW,GACT,6nBACA,UACD;EACD,GAAI;YAEJ,oBAAC,gBAAD,EAAkB,CAAA;EACE,CAAA;;AAI1B,SAAS,eAAe,EAAE,WAAW,GAAG,SAA8B;AACpE,QACE,oBAACA,QAAe,WAAhB;EACE,aAAU;EACV,WAAW,GACT,gJACA,gEACA,UACD;EACD,GAAI;EACJ,CAAA"}
1
+ {"version":3,"file":"radio.js","names":["RadioPrimitive"],"sources":["../src/radio.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\n\nimport { Radio as RadioPrimitive } from \"@base-ui/react/radio\"\n\nimport { cn } from \"./lib/utils\"\n\ntype RadioProps = React.ComponentProps<typeof RadioPrimitive.Root>\ntype RadioIndicatorProps = React.ComponentProps<typeof RadioPrimitive.Indicator>\n\nfunction Radio({ className, ...props }: RadioProps) {\n return (\n <RadioPrimitive.Root\n data-slot=\"radio\"\n className={cn(\n \"cursor-clickable border-edge dark:bg-edge/30 data-checked:bg-primary data-checked:text-white dark:data-checked:bg-primary data-checked:border-primary aria-invalid:aria-checked:border-primary aria-invalid:border-destructive focus-visible:border-focus focus-visible:ring-focus/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 dark:aria-invalid:border-destructive/50 group/radio peer relative flex aspect-square size-4 shrink-0 rounded-full border outline-none after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:ring-3 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:ring-3\",\n className,\n )}\n {...props}\n >\n <RadioIndicator />\n </RadioPrimitive.Root>\n )\n}\n\nfunction RadioIndicator({ className, ...props }: RadioIndicatorProps) {\n return (\n <RadioPrimitive.Indicator\n data-slot=\"radio-indicator\"\n className={cn(\n \"group-aria-invalid/radio:text-destructive text-white absolute inset-0 flex items-center justify-center data-unchecked:opacity-0\",\n \"after:block after:size-2 after:rounded-full after:bg-current\",\n className,\n )}\n {...props}\n />\n )\n}\n\nexport { Radio, RadioIndicator }\n"],"mappings":";;;;;;AAWA,SAAS,MAAM,EAAE,WAAW,GAAG,SAAqB;AAClD,QACE,oBAACA,QAAe,MAAhB;EACE,aAAU;EACV,WAAW,GACT,gnBACA,UACD;EACD,GAAI;YAEJ,oBAAC,gBAAD,EAAkB,CAAA;EACE,CAAA;;AAI1B,SAAS,eAAe,EAAE,WAAW,GAAG,SAA8B;AACpE,QACE,oBAACA,QAAe,WAAhB;EACE,aAAU;EACV,WAAW,GACT,mIACA,gEACA,UACD;EACD,GAAI;EACJ,CAAA"}
@@ -12,7 +12,7 @@ function ScrollArea({ className, children, ...props }) {
12
12
  children: [
13
13
  /* @__PURE__ */ jsx(ScrollArea$1.Viewport, {
14
14
  "data-slot": "scroll-area-viewport",
15
- className: "focus-visible:ring-ring/50 size-full rounded-[inherit] motion-color outline-none focus-visible:ring-3 focus-visible:outline-1",
15
+ className: "focus-visible:ring-focus/50 size-full rounded-[inherit] motion-color outline-none focus-visible:ring-3 focus-visible:outline-1",
16
16
  children
17
17
  }),
18
18
  /* @__PURE__ */ jsx(ScrollBar, {}),
@@ -28,7 +28,7 @@ function ScrollBar({ className, orientation = "vertical", ...props }) {
28
28
  ...props,
29
29
  children: /* @__PURE__ */ jsx(ScrollArea$1.Thumb, {
30
30
  "data-slot": "scroll-area-thumb",
31
- className: "bg-border relative flex-1 rounded-full"
31
+ className: "bg-line relative flex-1 rounded-full"
32
32
  })
33
33
  });
34
34
  }
@@ -1 +1 @@
1
- {"version":3,"file":"scroll-area.js","names":["ScrollAreaPrimitive"],"sources":["../src/scroll-area.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport { ScrollArea as ScrollAreaPrimitive } from \"@base-ui/react/scroll-area\";\n\nimport { cn } from \"./lib/utils\";\n\ntype ScrollAreaProps = React.ComponentProps<typeof ScrollAreaPrimitive.Root>;\n\nfunction ScrollArea({\n className,\n children,\n ...props\n}: ScrollAreaProps) {\n return (\n <ScrollAreaPrimitive.Root\n data-slot=\"scroll-area\"\n className={cn(\"relative\", className)}\n {...props}\n >\n <ScrollAreaPrimitive.Viewport\n data-slot=\"scroll-area-viewport\"\n className=\"focus-visible:ring-ring/50 size-full rounded-[inherit] motion-color outline-none focus-visible:ring-3 focus-visible:outline-1\"\n >\n {children}\n </ScrollAreaPrimitive.Viewport>\n <ScrollBar />\n <ScrollAreaPrimitive.Corner data-slot=\"scroll-area-corner\" />\n </ScrollAreaPrimitive.Root>\n );\n}\n\ntype ScrollBarProps = React.ComponentProps<typeof ScrollAreaPrimitive.Scrollbar>;\n\nfunction ScrollBar({\n className,\n orientation = \"vertical\",\n ...props\n}: ScrollBarProps) {\n return (\n <ScrollAreaPrimitive.Scrollbar\n data-slot=\"scroll-area-scrollbar\"\n orientation={orientation}\n className={cn(\n \"flex touch-none p-px transition-colors select-none data-[orientation=horizontal]:h-2.5 data-[orientation=horizontal]:flex-col data-[orientation=horizontal]:border-t data-[orientation=horizontal]:border-t-transparent data-[orientation=vertical]:h-full data-[orientation=vertical]:w-2.5 data-[orientation=vertical]:border-l data-[orientation=vertical]:border-l-transparent\",\n className\n )}\n {...props}\n >\n <ScrollAreaPrimitive.Thumb\n data-slot=\"scroll-area-thumb\"\n className=\"bg-border relative flex-1 rounded-full\"\n />\n </ScrollAreaPrimitive.Scrollbar>\n );\n}\n\nexport { ScrollArea, ScrollBar };\n"],"mappings":";;;;;;AASA,SAAS,WAAW,EAClB,WACA,UACA,GAAG,SACe;AAClB,QACE,qBAACA,aAAoB,MAArB;EACE,aAAU;EACV,WAAW,GAAG,YAAY,UAAU;EACpC,GAAI;YAHN;GAKE,oBAACA,aAAoB,UAArB;IACE,aAAU;IACV,WAAU;IAET;IAC4B,CAAA;GAC/B,oBAAC,WAAD,EAAa,CAAA;GACb,oBAACA,aAAoB,QAArB,EAA4B,aAAU,sBAAuB,CAAA;GACpC;;;AAM/B,SAAS,UAAU,EACjB,WACA,cAAc,YACd,GAAG,SACc;AACjB,QACE,oBAACA,aAAoB,WAArB;EACE,aAAU;EACG;EACb,WAAW,GACT,sXACA,UACD;EACD,GAAI;YAEJ,oBAACA,aAAoB,OAArB;GACE,aAAU;GACV,WAAU;GACV,CAAA;EAC4B,CAAA"}
1
+ {"version":3,"file":"scroll-area.js","names":["ScrollAreaPrimitive"],"sources":["../src/scroll-area.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport { ScrollArea as ScrollAreaPrimitive } from \"@base-ui/react/scroll-area\";\n\nimport { cn } from \"./lib/utils\";\n\ntype ScrollAreaProps = React.ComponentProps<typeof ScrollAreaPrimitive.Root>;\n\nfunction ScrollArea({\n className,\n children,\n ...props\n}: ScrollAreaProps) {\n return (\n <ScrollAreaPrimitive.Root\n data-slot=\"scroll-area\"\n className={cn(\"relative\", className)}\n {...props}\n >\n <ScrollAreaPrimitive.Viewport\n data-slot=\"scroll-area-viewport\"\n className=\"focus-visible:ring-focus/50 size-full rounded-[inherit] motion-color outline-none focus-visible:ring-3 focus-visible:outline-1\"\n >\n {children}\n </ScrollAreaPrimitive.Viewport>\n <ScrollBar />\n <ScrollAreaPrimitive.Corner data-slot=\"scroll-area-corner\" />\n </ScrollAreaPrimitive.Root>\n );\n}\n\ntype ScrollBarProps = React.ComponentProps<typeof ScrollAreaPrimitive.Scrollbar>;\n\nfunction ScrollBar({\n className,\n orientation = \"vertical\",\n ...props\n}: ScrollBarProps) {\n return (\n <ScrollAreaPrimitive.Scrollbar\n data-slot=\"scroll-area-scrollbar\"\n orientation={orientation}\n className={cn(\n \"flex touch-none p-px transition-colors select-none data-[orientation=horizontal]:h-2.5 data-[orientation=horizontal]:flex-col data-[orientation=horizontal]:border-t data-[orientation=horizontal]:border-t-transparent data-[orientation=vertical]:h-full data-[orientation=vertical]:w-2.5 data-[orientation=vertical]:border-l data-[orientation=vertical]:border-l-transparent\",\n className\n )}\n {...props}\n >\n <ScrollAreaPrimitive.Thumb\n data-slot=\"scroll-area-thumb\"\n className=\"bg-line relative flex-1 rounded-full\"\n />\n </ScrollAreaPrimitive.Scrollbar>\n );\n}\n\nexport { ScrollArea, ScrollBar };\n"],"mappings":";;;;;;AASA,SAAS,WAAW,EAClB,WACA,UACA,GAAG,SACe;AAClB,QACE,qBAACA,aAAoB,MAArB;EACE,aAAU;EACV,WAAW,GAAG,YAAY,UAAU;EACpC,GAAI;YAHN;GAKE,oBAACA,aAAoB,UAArB;IACE,aAAU;IACV,WAAU;IAET;IAC4B,CAAA;GAC/B,oBAAC,WAAD,EAAa,CAAA;GACb,oBAACA,aAAoB,QAArB,EAA4B,aAAU,sBAAuB,CAAA;GACpC;;;AAM/B,SAAS,UAAU,EACjB,WACA,cAAc,YACd,GAAG,SACc;AACjB,QACE,oBAACA,aAAoB,WAArB;EACE,aAAU;EACG;EACb,WAAW,GACT,sXACA,UACD;EACD,GAAI;YAEJ,oBAACA,aAAoB,OAArB;GACE,aAAU;GACV,WAAU;GACV,CAAA;EAC4B,CAAA"}
package/dist/select.js CHANGED
@@ -49,11 +49,11 @@ function SelectTrigger({ className, size = "default", children, ...props }) {
49
49
  return /* @__PURE__ */ jsxs(Select$1.Trigger, {
50
50
  "data-slot": "select-trigger",
51
51
  "data-size": size,
52
- className: cn("border-input data-placeholder:text-muted-foreground dark:bg-input/30 dark:hover:bg-input/50 focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:aria-invalid:border-destructive/50 flex w-fit items-center justify-between gap-1.5 rounded-lg border bg-transparent py-2 pr-2 pl-2.5 text-sm whitespace-nowrap transition-colors outline-none select-none focus-visible:ring-3 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:ring-3 data-[size=default]:h-8 data-[size=sm]:h-7 data-[size=sm]:rounded-[min(var(--radius-md),10px)] *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-1.5 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
52
+ className: cn("border-edge data-placeholder:text-soft dark:bg-edge/30 dark:hover:bg-edge/50 focus-visible:border-focus focus-visible:ring-focus/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:aria-invalid:border-destructive/50 flex w-fit items-center justify-between gap-1.5 rounded-md border bg-transparent py-2 pr-2 pl-2.5 text-sm whitespace-nowrap transition-colors outline-none select-none focus-visible:ring-3 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:ring-3 data-[size=default]:h-8 data-[size=sm]:h-7 data-[size=sm]:rounded-sm *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-1.5 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className),
53
53
  ...props,
54
54
  children: [children, /* @__PURE__ */ jsx(Select$1.Icon, {
55
55
  "data-slot": "select-icon",
56
- render: /* @__PURE__ */ jsx(ChevronsUpDownIcon, { className: "text-muted-foreground pointer-events-none size-4" })
56
+ render: /* @__PURE__ */ jsx(ChevronsUpDownIcon, { className: "text-muted pointer-events-none size-4" })
57
57
  })]
58
58
  });
59
59
  }
@@ -68,7 +68,7 @@ function SelectContent({ className, children, side = "bottom", sideOffset = 4, a
68
68
  children: /* @__PURE__ */ jsxs(Select$1.Popup, {
69
69
  "data-slot": "select-content",
70
70
  "data-align-trigger": alignItemWithTrigger,
71
- className: cn("motion-slide bg-popover text-popover-foreground ring-foreground/10 relative isolate z-50 max-h-(--available-height) min-w-(--anchor-width) max-w-(--available-width) origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-lg shadow-md ring-1", className),
71
+ className: cn("motion-pop-md bg-elevated text-contrast ring-contrast/10 relative isolate z-50 max-h-(--available-height) min-w-(--anchor-width) max-w-(--available-width) origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-md shadow-md ring-1", className),
72
72
  ...props,
73
73
  children: [
74
74
  /* @__PURE__ */ jsx(SelectScrollUpButton, {}),
@@ -81,14 +81,14 @@ function SelectContent({ className, children, side = "bottom", sideOffset = 4, a
81
81
  function SelectLabel({ className, ...props }) {
82
82
  return /* @__PURE__ */ jsx(Select$1.GroupLabel, {
83
83
  "data-slot": "select-label",
84
- className: cn("text-muted-foreground px-1.5 py-1 text-xs", className),
84
+ className: cn("text-muted px-1.5 py-1 text-xs", className),
85
85
  ...props
86
86
  });
87
87
  }
88
88
  function SelectItem({ className, children, ...props }) {
89
89
  return /* @__PURE__ */ jsxs(Select$1.Item, {
90
90
  "data-slot": "select-item",
91
- className: cn("data-highlighted:bg-accent data-highlighted:text-accent-foreground not-data-[variant=destructive]:data-highlighted:**:text-accent-foreground relative flex w-full cursor-clickable items-center gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2", className),
91
+ className: cn("data-highlighted:bg-primary data-highlighted:text-white not-data-[variant=destructive]:data-highlighted:**:text-white relative flex w-full cursor-clickable items-center gap-1.5 rounded-sm py-1 pr-8 pl-1.5 text-sm outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2", className),
92
92
  ...props,
93
93
  children: [/* @__PURE__ */ jsx(Select$1.ItemText, {
94
94
  "data-slot": "select-item-text",
@@ -106,14 +106,14 @@ function SelectItem({ className, children, ...props }) {
106
106
  function SelectSeparator({ className, ...props }) {
107
107
  return /* @__PURE__ */ jsx(Select$1.Separator, {
108
108
  "data-slot": "select-separator",
109
- className: cn("bg-border pointer-events-none -mx-1 my-1 h-px", className),
109
+ className: cn("bg-line pointer-events-none -mx-1 my-1 h-px", className),
110
110
  ...props
111
111
  });
112
112
  }
113
113
  function SelectScrollUpButton({ className, ...props }) {
114
114
  return /* @__PURE__ */ jsx(Select$1.ScrollUpArrow, {
115
115
  "data-slot": "select-scroll-up-button",
116
- className: cn("bg-popover top-0 z-10 flex w-full cursor-default items-center justify-center py-1 [&_svg:not([class*='size-'])]:size-4", className),
116
+ className: cn("bg-elevated top-0 z-10 flex w-full cursor-default items-center justify-center py-1 [&_svg:not([class*='size-'])]:size-4", className),
117
117
  ...props,
118
118
  children: /* @__PURE__ */ jsx(ChevronUpIcon, {})
119
119
  });
@@ -121,7 +121,7 @@ function SelectScrollUpButton({ className, ...props }) {
121
121
  function SelectScrollDownButton({ className, ...props }) {
122
122
  return /* @__PURE__ */ jsx(Select$1.ScrollDownArrow, {
123
123
  "data-slot": "select-scroll-down-button",
124
- className: cn("bg-popover bottom-0 z-10 flex w-full cursor-default items-center justify-center py-1 [&_svg:not([class*='size-'])]:size-4", className),
124
+ className: cn("bg-elevated bottom-0 z-10 flex w-full cursor-default items-center justify-center py-1 [&_svg:not([class*='size-'])]:size-4", className),
125
125
  ...props,
126
126
  children: /* @__PURE__ */ jsx(ChevronDownIcon, {})
127
127
  });