betterstart-cli 0.0.22 → 0.0.23

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 (92) hide show
  1. package/dist/assets/adapters/next/templates/init/components/layouts/admin-sidebar-branding-skeleton.tsx +1 -1
  2. package/dist/assets/adapters/next/templates/init/components/layouts/admin-sidebar-user-menu-skeleton.tsx +1 -1
  3. package/dist/assets/adapters/next/templates/init/components/layouts/admin-sidebar-user-menu.tsx +1 -1
  4. package/dist/assets/adapters/next/templates/init/components/shared/dev-mode/lifecycle-hooks-tab.tsx +2 -2
  5. package/dist/assets/adapters/next/templates/init/components/shared/dev-mode/snippets-tab.tsx +1 -1
  6. package/dist/assets/adapters/next/templates/init/components/shared/entity-versions/entity-version-item.tsx +1 -1
  7. package/dist/assets/adapters/next/templates/init/components/shared/entity-versions/entity-versions-current-row.tsx +1 -1
  8. package/dist/assets/adapters/next/templates/init/components/shared/entity-versions/entity-versions-drawer.tsx +3 -3
  9. package/dist/assets/adapters/next/templates/init/components/shared/media/edit-media-dialog-content.tsx +2 -2
  10. package/dist/assets/adapters/next/templates/init/components/shared/media/media-delete-drawer.tsx +3 -3
  11. package/dist/assets/adapters/next/templates/init/components/shared/media/media-gallery-dialog.tsx +62 -64
  12. package/dist/assets/adapters/next/templates/init/components/shared/media/media-grid-item.tsx +1 -1
  13. package/dist/assets/adapters/next/templates/init/components/shared/media/media-url-importer.tsx +1 -1
  14. package/dist/assets/adapters/next/templates/init/data/navigation.ts +1 -3
  15. package/dist/assets/adapters/next/templates/init/lib/actions/auth/auth.ts +8 -0
  16. package/dist/assets/adapters/next/templates/init/lib/actions/profile/change-own-password.ts +59 -0
  17. package/dist/assets/adapters/next/templates/init/lib/actions/profile/index.ts +6 -1
  18. package/dist/assets/adapters/next/templates/init/lib/actions/profile/types.ts +10 -0
  19. package/dist/assets/adapters/next/templates/init/lib/actions/users/change-user-password.ts +77 -0
  20. package/dist/assets/adapters/next/templates/init/lib/actions/users/index.ts +3 -0
  21. package/dist/assets/adapters/next/templates/init/lib/actions/users/types.ts +10 -0
  22. package/dist/assets/adapters/next/templates/init/lib/db/core/schema.ts +4 -0
  23. package/dist/assets/adapters/next/templates/init/pages/dashboard-page.tsx +1 -1
  24. package/dist/assets/adapters/next/templates/init/pages/forgot-password-page-skeleton.tsx +1 -1
  25. package/dist/assets/adapters/next/templates/init/pages/login-page-skeleton.tsx +1 -1
  26. package/dist/assets/adapters/next/templates/init/pages/media/media-page-content.tsx +13 -18
  27. package/dist/assets/adapters/next/templates/init/pages/profile/profile-form.tsx +133 -1
  28. package/dist/assets/adapters/next/templates/init/pages/reset-password-page-skeleton.tsx +1 -1
  29. package/dist/assets/adapters/next/templates/init/pages/users/change-password-dialog.tsx +229 -0
  30. package/dist/assets/adapters/next/templates/init/pages/users/columns.tsx +22 -14
  31. package/dist/assets/adapters/next/templates/init/pages/users/create-user-dialog.tsx +99 -93
  32. package/dist/assets/adapters/next/templates/init/pages/users/delete-user-dialog.tsx +17 -25
  33. package/dist/assets/adapters/next/templates/init/pages/users/users-table.tsx +5 -4
  34. package/dist/assets/shared-assets/react-admin/custom/content-editor/math-bubble-menu.tsx +1 -1
  35. package/dist/assets/shared-assets/react-admin/custom/content-editor/remove-table-part-icon.tsx +1 -1
  36. package/dist/assets/shared-assets/react-admin/custom/content-editor/selection-bubble-menu.tsx +2 -2
  37. package/dist/assets/shared-assets/react-admin/custom/content-editor/table-bubble-menu.tsx +1 -1
  38. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-ui/color-highlight-button/color-highlight-button.tsx +2 -2
  39. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-ui/color-highlight-popover/color-highlight-popover-content.tsx +1 -1
  40. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-ui/color-highlight-popover/color-highlight-popover.tsx +1 -1
  41. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-ui/color-highlight-popover/highlight-color-button.tsx +2 -2
  42. package/dist/assets/shared-assets/react-admin/custom/content-editor/tiptap-ui/color-highlight-popover/source-color-highlight-popover.tsx +1 -1
  43. package/dist/assets/shared-assets/react-admin/custom/date-range-picker.tsx +1 -1
  44. package/dist/assets/shared-assets/react-admin/custom/media-field-empty-state.tsx +19 -12
  45. package/dist/assets/shared-assets/react-admin/custom/media-field.tsx +2 -2
  46. package/dist/assets/shared-assets/react-admin/custom/nested-object-list-field.tsx +1 -1
  47. package/dist/assets/shared-assets/react-admin/custom/placeholder-card.tsx +1 -1
  48. package/dist/assets/shared-assets/react-admin/custom/placeholder.tsx +1 -1
  49. package/dist/assets/shared-assets/react-admin/ui/accordion.tsx +1 -1
  50. package/dist/assets/shared-assets/react-admin/ui/alert-dialog.tsx +15 -4
  51. package/dist/assets/shared-assets/react-admin/ui/alert.tsx +1 -1
  52. package/dist/assets/shared-assets/react-admin/ui/avatar.tsx +5 -5
  53. package/dist/assets/shared-assets/react-admin/ui/badge.tsx +1 -1
  54. package/dist/assets/shared-assets/react-admin/ui/button-group.tsx +3 -3
  55. package/dist/assets/shared-assets/react-admin/ui/button.tsx +6 -6
  56. package/dist/assets/shared-assets/react-admin/ui/card.tsx +4 -4
  57. package/dist/assets/shared-assets/react-admin/ui/carousel.tsx +2 -2
  58. package/dist/assets/shared-assets/react-admin/ui/chart.tsx +1 -1
  59. package/dist/assets/shared-assets/react-admin/ui/combobox.tsx +4 -4
  60. package/dist/assets/shared-assets/react-admin/ui/command.tsx +3 -3
  61. package/dist/assets/shared-assets/react-admin/ui/context-menu.tsx +6 -6
  62. package/dist/assets/shared-assets/react-admin/ui/dialog.tsx +29 -6
  63. package/dist/assets/shared-assets/react-admin/ui/drawer.tsx +2 -2
  64. package/dist/assets/shared-assets/react-admin/ui/dropdown-menu.tsx +6 -6
  65. package/dist/assets/shared-assets/react-admin/ui/empty.tsx +2 -2
  66. package/dist/assets/shared-assets/react-admin/ui/field.tsx +1 -1
  67. package/dist/assets/shared-assets/react-admin/ui/hover-card.tsx +1 -1
  68. package/dist/assets/shared-assets/react-admin/ui/input-group.tsx +5 -6
  69. package/dist/assets/shared-assets/react-admin/ui/input-otp.tsx +2 -2
  70. package/dist/assets/shared-assets/react-admin/ui/input.tsx +1 -1
  71. package/dist/assets/shared-assets/react-admin/ui/item.tsx +2 -2
  72. package/dist/assets/shared-assets/react-admin/ui/menubar.tsx +8 -8
  73. package/dist/assets/shared-assets/react-admin/ui/native-select.tsx +1 -1
  74. package/dist/assets/shared-assets/react-admin/ui/navigation-menu.tsx +4 -4
  75. package/dist/assets/shared-assets/react-admin/ui/popover.tsx +1 -1
  76. package/dist/assets/shared-assets/react-admin/ui/progress.tsx +1 -1
  77. package/dist/assets/shared-assets/react-admin/ui/radio-group.tsx +2 -2
  78. package/dist/assets/shared-assets/react-admin/ui/resizable.tsx +1 -1
  79. package/dist/assets/shared-assets/react-admin/ui/scroll-area.tsx +1 -1
  80. package/dist/assets/shared-assets/react-admin/ui/select.tsx +3 -3
  81. package/dist/assets/shared-assets/react-admin/ui/sidebar.tsx +10 -10
  82. package/dist/assets/shared-assets/react-admin/ui/skeleton.tsx +1 -1
  83. package/dist/assets/shared-assets/react-admin/ui/slider.tsx +2 -2
  84. package/dist/assets/shared-assets/react-admin/ui/switch.tsx +2 -2
  85. package/dist/assets/shared-assets/react-admin/ui/tabs.tsx +3 -3
  86. package/dist/assets/shared-assets/react-admin/ui/textarea.tsx +1 -1
  87. package/dist/assets/shared-assets/react-admin/ui/toggle-group.tsx +2 -2
  88. package/dist/assets/shared-assets/react-admin/ui/toggle.tsx +1 -1
  89. package/dist/assets/shared-assets/react-admin/ui/tooltip.tsx +1 -1
  90. package/dist/cli.js +5372 -4243
  91. package/dist/cli.js.map +1 -1
  92. package/package.json +1 -1
@@ -16,7 +16,7 @@ function Avatar({
16
16
  data-slot="avatar"
17
17
  data-size={size}
18
18
  className={cn(
19
- 'group/avatar relative flex size-8 shrink-0 rounded-full select-none after:absolute after:inset-0 after:rounded-full after:border after:border-border after:mix-blend-darken data-[size=lg]:size-10 data-[size=sm]:size-6 dark:after:mix-blend-lighten',
19
+ 'group/avatar relative flex size-8 shrink-0 rounded-sm select-none after:absolute after:inset-0 after:rounded-sm after:border after:border-border after:mix-blend-darken data-[size=lg]:size-10 data-[size=sm]:size-6 dark:after:mix-blend-lighten',
20
20
  className
21
21
  )}
22
22
  {...props}
@@ -28,7 +28,7 @@ function AvatarImage({ className, ...props }: React.ComponentProps<typeof Avatar
28
28
  return (
29
29
  <AvatarPrimitive.Image
30
30
  data-slot="avatar-image"
31
- className={cn('aspect-square size-full rounded-full object-cover', className)}
31
+ className={cn('aspect-square size-full rounded-sm object-cover', className)}
32
32
  {...props}
33
33
  />
34
34
  )
@@ -42,7 +42,7 @@ function AvatarFallback({
42
42
  <AvatarPrimitive.Fallback
43
43
  data-slot="avatar-fallback"
44
44
  className={cn(
45
- 'flex size-full items-center justify-center rounded-full bg-muted text-sm text-muted-foreground group-data-[size=sm]/avatar:text-xs',
45
+ 'flex size-full items-center justify-center rounded-sm bg-muted text-sm text-muted-foreground group-data-[size=sm]/avatar:text-xs',
46
46
  className
47
47
  )}
48
48
  {...props}
@@ -55,7 +55,7 @@ function AvatarBadge({ className, ...props }: React.ComponentProps<'span'>) {
55
55
  <span
56
56
  data-slot="avatar-badge"
57
57
  className={cn(
58
- 'absolute right-0 bottom-0 z-10 inline-flex items-center justify-center rounded-full bg-primary text-primary-foreground bg-blend-color ring-2 ring-background select-none',
58
+ 'absolute right-0 bottom-0 z-10 inline-flex items-center justify-center rounded-sm bg-primary text-primary-foreground bg-blend-color ring-2 ring-background select-none',
59
59
  'group-data-[size=sm]/avatar:size-2 group-data-[size=sm]/avatar:[&>svg]:hidden',
60
60
  'group-data-[size=default]/avatar:size-2.5 group-data-[size=default]/avatar:[&>svg]:size-2',
61
61
  'group-data-[size=lg]/avatar:size-3 group-data-[size=lg]/avatar:[&>svg]:size-2',
@@ -84,7 +84,7 @@ function AvatarGroupCount({ className, ...props }: React.ComponentProps<'div'>)
84
84
  <div
85
85
  data-slot="avatar-group-count"
86
86
  className={cn(
87
- 'relative flex size-8 shrink-0 items-center justify-center rounded-full bg-muted text-sm text-muted-foreground ring-2 ring-background group-has-data-[size=lg]/avatar-group:size-10 group-has-data-[size=sm]/avatar-group:size-6 [&>svg]:size-4 group-has-data-[size=lg]/avatar-group:[&>svg]:size-5 group-has-data-[size=sm]/avatar-group:[&>svg]:size-3',
87
+ 'relative flex size-8 shrink-0 items-center justify-center rounded-sm bg-muted text-sm text-muted-foreground ring-2 ring-background group-has-data-[size=lg]/avatar-group:size-10 group-has-data-[size=sm]/avatar-group:size-6 [&>svg]:size-4 group-has-data-[size=lg]/avatar-group:[&>svg]:size-5 group-has-data-[size=sm]/avatar-group:[&>svg]:size-3',
88
88
  className
89
89
  )}
90
90
  {...props}
@@ -4,7 +4,7 @@ import { Slot } from 'radix-ui'
4
4
  import type * as React from 'react'
5
5
 
6
6
  const badgeVariants = cva(
7
- 'group/badge inline-flex h-6 w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-4xl border border-transparent px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-all focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3!',
7
+ 'group/badge inline-flex h-6 w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-sm border border-transparent px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-all focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3!',
8
8
  {
9
9
  variants: {
10
10
  variant: {
@@ -4,12 +4,12 @@ import { cva, type VariantProps } from 'class-variance-authority'
4
4
  import { Slot } from 'radix-ui'
5
5
 
6
6
  const buttonGroupVariants = cva(
7
- "group/button-group flex w-fit items-stretch *:focus-visible:relative *:focus-visible:z-10 has-[>[data-slot=button-group]]:gap-2 has-[select[aria-hidden=true]:last-child]:[&>[data-slot=select-trigger]:last-of-type]:rounded-r-4xl [&>[data-slot=select-trigger]:not([class*='w-'])]:w-fit [&>input]:flex-1",
7
+ "group/button-group flex w-fit items-stretch *:focus-visible:relative *:focus-visible:z-10 has-[>[data-slot=button-group]]:gap-2 has-[select[aria-hidden=true]:last-child]:[&>[data-slot=select-trigger]:last-of-type]:rounded-r-sm [&>[data-slot=select-trigger]:not([class*='w-'])]:w-fit [&>input]:flex-1 [&>button]:min-w-0 [&>button]:scale-100!",
8
8
  {
9
9
  variants: {
10
10
  orientation: {
11
11
  horizontal:
12
- '[&>*:not(:first-child)]:rounded-l-none [&>*:not(:first-child)]:border-l-0 [&>*:not(:last-child)]:rounded-r-none [&>[data-slot]:not(:has(~[data-slot]))]:rounded-r-4xl!',
12
+ '[&>*:not(:first-child)]:rounded-l-none [&>*:not(:first-child)]:border-l-0 [&>*:not(:last-child)]:rounded-r-none [&>[data-slot]:not(:has(~[data-slot]))]:rounded-r-sm!',
13
13
  vertical:
14
14
  'flex-col [&>*:not(:first-child)]:rounded-t-none [&>*:not(:first-child)]:border-t-0 [&>*:not(:last-child)]:rounded-b-none [&>[data-slot]:not(:has(~[data-slot]))]:rounded-b-4xl!'
15
15
  }
@@ -47,7 +47,7 @@ function ButtonGroupText({
47
47
  return (
48
48
  <Comp
49
49
  className={cn(
50
- "flex items-center gap-2 rounded-4xl border bg-muted px-2.5 text-sm font-medium [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4",
50
+ "flex items-center gap-2 rounded-sm border bg-muted px-2.5 text-sm font-medium [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4",
51
51
  className
52
52
  )}
53
53
  {...props}
@@ -4,29 +4,29 @@ import { Slot } from 'radix-ui'
4
4
  import * as React from 'react'
5
5
 
6
6
  const buttonVariants = cva(
7
- "group/button inline-flex shrink-0 items-center justify-center rounded-4xl border border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 active:not-aria-[haspopup]:scale-97 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg]:text-current [&_svg:not([class*='size-'])]:size-3.5 cursor-pointer [&_svg]:[stroke-width:1.5] min-w-0",
7
+ "group/button inline-flex shrink-0 items-center justify-center rounded-sm bg-clip-padding text-sm font-medium whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 active:not-aria-[haspopup]:scale-97 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg]:text-current [&_svg:not([class*='size-'])]:size-3.5 cursor-pointer [&_svg]:[stroke-width:1.5] min-w-0",
8
8
  {
9
9
  variants: {
10
10
  variant: {
11
11
  default: 'bg-primary border-primary text-primary-foreground hover:bg-primary/80',
12
12
  outline:
13
- 'border-border bg-card hover:bg-secondary hover:text-foreground aria-expanded:bg-secondary aria-expanded:text-foreground hover:border-primary/10',
13
+ 'border border-border bg-card hover:bg-secondary hover:text-foreground aria-expanded:bg-secondary aria-expanded:text-foreground hover:border-primary/10',
14
14
  secondary:
15
15
  'bg-secondary border border-primary/8 text-secondary-foreground hover:bg-secondary/80 aria-expanded:bg-secondary aria-expanded:text-secondary-foreground',
16
16
  ghost:
17
17
  'hover:bg-secondary hover:text-foreground aria-expanded:bg-secondary aria-expanded:text-foreground dark:hover:bg-secondary/50',
18
18
  destructive:
19
- 'bg-destructive/10 border-destructive/20 text-destructive hover:bg-destructive/15 focus-visible:border-destructive/40 focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:hover:bg-destructive/30 dark:focus-visible:ring-destructive/40 [&_svg]:text-destructive',
19
+ 'border bg-destructive/10 border-destructive/20 text-destructive hover:bg-destructive/15 focus-visible:border-destructive/40 focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:hover:bg-destructive/30 dark:focus-visible:ring-destructive/40 [&_svg]:text-destructive',
20
20
  warning:
21
- 'bg-warning/10 border-warning/20 text-warning hover:bg-warning/15 focus-visible:border-warning/40 focus-visible:ring-warning/15 dark:bg-warning/20 dark:hover:bg-warning/30 dark:focus-visible:ring-warning/40 [&_svg]:text-warning',
21
+ 'border bg-warning/10 border-warning/20 text-warning hover:bg-warning/15 focus-visible:border-warning/40 focus-visible:ring-warning/15 dark:bg-warning/20 dark:hover:bg-warning/30 dark:focus-visible:ring-warning/40 [&_svg]:text-warning',
22
22
  link: 'text-primary underline-offset-4 hover:underline'
23
23
  },
24
24
  size: {
25
- default: 'h-9 gap-1.5 px-3',
25
+ default: 'h-10 gap-1.5 px-3',
26
26
  xs: "h-6 gap-1 px-2.5 text-xs [&_svg:not([class*='size-'])]:size-3",
27
27
  sm: 'h-8 gap-1 px-3',
28
28
  lg: 'h-10 gap-1.5 px-4',
29
- icon: 'size-9',
29
+ icon: 'size-10',
30
30
  'icon-xs': "size-6 [&_svg:not([class*='size-'])]:size-3",
31
31
  'icon-sm': 'size-8',
32
32
  'icon-lg': 'size-10'
@@ -11,7 +11,7 @@ function Card({
11
11
  data-slot="card"
12
12
  data-size={size}
13
13
  className={cn(
14
- 'group/card flex flex-col rounded-lg has-[>[data-slot=card-header]]:bg-transparent has-[>[data-slot=card-header]]:border-none has-[>[data-slot=card-footer]]:border-none text-sm text-foreground has-[>img:first-child]:pt-0 data-[size=sm]:gap-4 data-[size=sm]:py-4 *:[img:first-child]:rounded-t-sm *:[img:last-child]:rounded-b-sm [&_[data-slot=card]:last-of-type:last-child]:rounded-b-sm [&_[data-slot=card]:first-of-type:first-child]:rounded-t-sm',
14
+ 'group/card flex flex-col rounded-sm has-[>[data-slot=card-header]]:bg-transparent has-[>[data-slot=card-header]]:border-none has-[>[data-slot=card-footer]]:border-none text-sm text-foreground has-[>img:first-child]:pt-0 data-[size=sm]:gap-4 data-[size=sm]:py-4 *:[img:first-child]:rounded-t-sm *:[img:last-child]:rounded-b-sm [&_[data-slot=card]:last-of-type:last-child]:rounded-b-sm [&_[data-slot=card]:first-of-type:first-child]:rounded-t-sm',
15
15
  className
16
16
  )}
17
17
  {...props}
@@ -24,7 +24,7 @@ function CardHeader({ className, ...props }: React.ComponentProps<'div'>) {
24
24
  <div
25
25
  data-slot="card-header"
26
26
  className={cn(
27
- 'group/card-header @container/card-header grid auto-rows-min items-start gap-2 rounded-t-xl px-3 has-data-[slot=card-action]:grid-cols-[1fr_auto] has-data-[slot=card-description]:grid-rows-[auto_auto] border-x border-t mx-0.5 [.border-b]:pb-6 border-border bg-muted pt-2.5 [text-box-trim:trim-both] -mb-1 pb-3',
27
+ 'group/card-header @container/card-header grid auto-rows-min items-start gap-2 rounded-t-sm px-3 has-data-[slot=card-action]:grid-cols-[1fr_auto] has-data-[slot=card-description]:grid-rows-[auto_auto] border-x border-t [.border-b]:pb-6 border-border bg-muted pt-2.5 [text-box-trim:trim-both] -mb-1 pb-3',
28
28
  className
29
29
  )}
30
30
  {...props}
@@ -70,7 +70,7 @@ function CardContent({ className, ...props }: React.ComponentProps<'div'>) {
70
70
  <div
71
71
  data-slot="card-content"
72
72
  className={cn(
73
- 'group-has-[>[data-slot=card-header]]/card:px-5 rounded-lg border border-border bg-card group-has-[>[data-slot=card-footer]]/card:bg-card p-8 flex flex-col overflow-hidden shadow-input relative',
73
+ 'group-has-[>[data-slot=card-header]]/card:px-5 rounded-sm border border-border bg-card group-has-[>[data-slot=card-footer]]/card:bg-card p-8 flex flex-col overflow-hidden shadow-input relative',
74
74
  className
75
75
  )}
76
76
  {...props}
@@ -83,7 +83,7 @@ function CardFooter({ className, ...props }: React.ComponentProps<'div'>) {
83
83
  <div
84
84
  data-slot="card-footer"
85
85
  className={cn(
86
- 'flex items-center border border-border bg-muted -mt-2 pt-3.5 pb-2 rounded-b-xl px-4',
86
+ 'flex items-center border border-border bg-muted -mt-2 pt-3.5 pb-2 rounded-b-sm px-4',
87
87
  className
88
88
  )}
89
89
  {...props}
@@ -180,7 +180,7 @@ function CarouselPrevious({
180
180
  variant={variant}
181
181
  size={size}
182
182
  className={cn(
183
- 'absolute touch-manipulation rounded-full',
183
+ 'absolute touch-manipulation rounded-sm',
184
184
  {
185
185
  'top-1/2 -left-12 -translate-y-1/2': orientation === 'horizontal',
186
186
  '-top-12 left-1/2 -translate-x-1/2 rotate-90': orientation !== 'horizontal'
@@ -211,7 +211,7 @@ function CarouselNext({
211
211
  variant={variant}
212
212
  size={size}
213
213
  className={cn(
214
- 'absolute touch-manipulation rounded-full',
214
+ 'absolute touch-manipulation rounded-sm',
215
215
  {
216
216
  'top-1/2 -right-12 -translate-y-1/2': orientation === 'horizontal',
217
217
  '-bottom-12 left-1/2 -translate-x-1/2 rotate-90': orientation !== 'horizontal'
@@ -163,7 +163,7 @@ function ChartTooltipContent({
163
163
  return (
164
164
  <div
165
165
  className={cn(
166
- 'grid min-w-32 items-start gap-1.5 rounded-lg border border-border/50 bg-background px-2.5 py-1.5 text-xs shadow-xl',
166
+ 'grid min-w-32 items-start gap-1.5 rounded-sm border border-border/50 bg-background px-2.5 py-1.5 text-xs shadow-xl',
167
167
  className
168
168
  )}
169
169
  >
@@ -121,7 +121,7 @@ function ComboboxContent({
121
121
  data-slot="combobox-content"
122
122
  data-chips={!!anchor}
123
123
  className={cn(
124
- 'group/combobox-content max-h-(--available-height) w-(--anchor-width) max-w-(--available-width) min-w-[calc(var(--anchor-width)+--spacing(7))] origin-(--transform-origin) overflow-hidden rounded-lg text-popover-foreground shadow-2xl ring-1 ring-foreground/5 duration-100 data-[chips=true]:min-w-(--anchor-width) data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 *:data-[slot=input-group]:m-1 *:data-[slot=input-group]:mb-0 *:data-[slot=input-group]:h-9 *:data-[slot=input-group]:border-none *:data-[slot=input-group]:bg-input/30 *:data-[slot=input-group]:shadow-none data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95 animate-none! relative bg-popover/70 before:pointer-events-none before:absolute before:inset-0 before:-z-1 before:rounded-[inherit] before:backdrop-blur-2xl before:backdrop-saturate-150 **:data-[slot$=-item]:focus:bg-foreground/10 **:data-[slot$=-item]:data-highlighted:bg-foreground/10 **:data-[slot$=-separator]:bg-foreground/5 **:data-[slot$=-trigger]:focus:bg-foreground/10 **:data-[slot$=-trigger]:aria-expanded:bg-foreground/10! **:data-[variant=destructive]:focus:bg-foreground/10! **:data-[variant=destructive]:text-accent-foreground! **:data-[variant=destructive]:**:text-accent-foreground!',
124
+ 'group/combobox-content max-h-(--available-height) w-(--anchor-width) max-w-(--available-width) min-w-[calc(var(--anchor-width)+--spacing(7))] origin-(--transform-origin) overflow-hidden rounded-sm text-popover-foreground shadow-2xl ring-1 ring-foreground/5 duration-100 data-[chips=true]:min-w-(--anchor-width) data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 *:data-[slot=input-group]:m-1 *:data-[slot=input-group]:mb-0 *:data-[slot=input-group]:h-9 *:data-[slot=input-group]:border-none *:data-[slot=input-group]:bg-input/30 *:data-[slot=input-group]:shadow-none data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95 animate-none! relative bg-popover/70 before:pointer-events-none before:absolute before:inset-0 before:-z-1 before:rounded-[inherit] before:backdrop-blur-2xl before:backdrop-saturate-150 **:data-[slot$=-item]:focus:bg-foreground/10 **:data-[slot$=-item]:data-highlighted:bg-foreground/10 **:data-[slot$=-separator]:bg-foreground/5 **:data-[slot$=-trigger]:focus:bg-foreground/10 **:data-[slot$=-trigger]:aria-expanded:bg-foreground/10! **:data-[variant=destructive]:focus:bg-foreground/10! **:data-[variant=destructive]:text-accent-foreground! **:data-[variant=destructive]:**:text-accent-foreground!',
125
125
  className
126
126
  )}
127
127
  {...props}
@@ -157,7 +157,7 @@ function ComboboxItem({
157
157
  ref={ref}
158
158
  data-slot="combobox-item"
159
159
  className={cn(
160
- "relative flex w-full cursor-default items-center gap-2.5 rounded-lg py-2 pr-8 pl-3 text-sm outline-hidden select-none data-highlighted:bg-accent data-highlighted:text-accent-foreground not-data-[variant=destructive]:data-highlighted:**:text-accent-foreground data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
160
+ "relative flex w-full cursor-default items-center gap-2.5 rounded-sm py-2 pr-8 pl-3 text-sm outline-hidden select-none data-highlighted:bg-accent data-highlighted:text-accent-foreground not-data-[variant=destructive]:data-highlighted:**:text-accent-foreground data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
161
161
  className
162
162
  )}
163
163
  {...props}
@@ -223,7 +223,7 @@ function ComboboxChips({
223
223
  <ComboboxPrimitive.Chips
224
224
  data-slot="combobox-chips"
225
225
  className={cn(
226
- 'flex min-h-9 flex-wrap items-center gap-1.5 rounded-4xl border border-input bg-input/30 bg-clip-padding px-2.5 py-1.5 text-sm transition-colors focus-within:border-ring focus-within:ring-[3px] focus-within:ring-ring/50 has-aria-invalid:border-destructive has-aria-invalid:ring-[3px] has-aria-invalid:ring-destructive/20 has-data-[slot=combobox-chip]:px-1.5 dark:has-aria-invalid:border-destructive/50 dark:has-aria-invalid:ring-destructive/40',
226
+ 'flex min-h-9 flex-wrap items-center gap-1.5 rounded-sm border border-input bg-input/30 bg-clip-padding px-2.5 py-1.5 text-sm transition-colors focus-within:border-ring focus-within:ring-[3px] focus-within:ring-ring/50 has-aria-invalid:border-destructive has-aria-invalid:ring-[3px] has-aria-invalid:ring-destructive/20 has-data-[slot=combobox-chip]:px-1.5 dark:has-aria-invalid:border-destructive/50 dark:has-aria-invalid:ring-destructive/40',
227
227
  className
228
228
  )}
229
229
  {...props}
@@ -243,7 +243,7 @@ function ComboboxChip({
243
243
  <ComboboxPrimitive.Chip
244
244
  data-slot="combobox-chip"
245
245
  className={cn(
246
- 'flex h-[calc(--spacing(5.5))] w-fit items-center justify-center gap-1 rounded-4xl bg-muted-foreground/10 px-2 text-xs font-medium whitespace-nowrap text-foreground has-disabled:pointer-events-none has-disabled:cursor-not-allowed has-disabled:opacity-50 has-data-[slot=combobox-chip-remove]:pr-0',
246
+ 'flex h-[calc(--spacing(5.5))] w-fit items-center justify-center gap-1 rounded-sm bg-muted-foreground/10 px-2 text-xs font-medium whitespace-nowrap text-foreground has-disabled:pointer-events-none has-disabled:cursor-not-allowed has-disabled:opacity-50 has-data-[slot=combobox-chip-remove]:pr-0',
247
247
  className
248
248
  )}
249
249
  {...props}
@@ -19,7 +19,7 @@ function Command({ className, ...props }: React.ComponentProps<typeof CommandPri
19
19
  <CommandPrimitive
20
20
  data-slot="command"
21
21
  className={cn(
22
- 'flex size-full flex-col overflow-hidden rounded-4xl bg-popover p-1 text-popover-foreground',
22
+ 'flex size-full flex-col overflow-hidden rounded-sm bg-popover p-1 text-popover-foreground',
23
23
  className
24
24
  )}
25
25
  {...props}
@@ -47,7 +47,7 @@ function CommandDialog({
47
47
  <DialogDescription>{description}</DialogDescription>
48
48
  </DialogHeader>
49
49
  <DialogContent
50
- className={cn('top-1/3 translate-y-0 overflow-hidden rounded-4xl! p-0', className)}
50
+ className={cn('top-1/3 translate-y-0 overflow-hidden rounded-sm! p-0', className)}
51
51
  showCloseButton={showCloseButton}
52
52
  >
53
53
  {children}
@@ -143,7 +143,7 @@ function CommandItem({
143
143
  <CommandPrimitive.Item
144
144
  data-slot="command-item"
145
145
  className={cn(
146
- "group/command-item relative flex cursor-default items-center gap-2 rounded-lg px-3 py-2 text-sm outline-hidden select-none in-data-[slot=dialog-content]:rounded-lg data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 data-[selected=true]:bg-muted data-[selected=true]:text-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&[data-selected=true]_svg]:text-foreground",
146
+ "group/command-item relative flex cursor-default items-center gap-2 rounded-sm px-3 py-2 text-sm outline-hidden select-none in-data-[slot=dialog-content]:rounded-sm data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 data-[selected=true]:bg-muted data-[selected=true]:text-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&[data-selected=true]_svg]:text-foreground",
147
147
  className
148
148
  )}
149
149
  {...props}
@@ -51,7 +51,7 @@ function ContextMenuContent({
51
51
  <ContextMenuPrimitive.Content
52
52
  data-slot="context-menu-content"
53
53
  className={cn(
54
- 'z-50 max-h-(--radix-context-menu-content-available-height) min-w-48 origin-(--radix-context-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-lg p-1 text-popover-foreground shadow-2xl ring-1 ring-foreground/5 duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95 animate-none! relative bg-popover/70 before:pointer-events-none before:absolute before:inset-0 before:-z-1 before:rounded-[inherit] before:backdrop-blur-2xl before:backdrop-saturate-150 **:data-[slot$=-item]:focus:bg-foreground/10 **:data-[slot$=-item]:data-highlighted:bg-foreground/10 **:data-[slot$=-separator]:bg-foreground/5 **:data-[slot$=-trigger]:focus:bg-foreground/10 **:data-[slot$=-trigger]:aria-expanded:bg-foreground/10! **:data-[variant=destructive]:focus:bg-foreground/10! **:data-[variant=destructive]:text-accent-foreground! **:data-[variant=destructive]:**:text-accent-foreground!',
54
+ 'z-50 max-h-(--radix-context-menu-content-available-height) min-w-48 origin-(--radix-context-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-sm p-1 text-popover-foreground shadow-2xl ring-1 ring-foreground/5 duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95 animate-none! relative bg-popover/70 before:pointer-events-none before:absolute before:inset-0 before:-z-1 before:rounded-[inherit] before:backdrop-blur-2xl before:backdrop-saturate-150 **:data-[slot$=-item]:focus:bg-foreground/10 **:data-[slot$=-item]:data-highlighted:bg-foreground/10 **:data-[slot$=-separator]:bg-foreground/5 **:data-[slot$=-trigger]:focus:bg-foreground/10 **:data-[slot$=-trigger]:aria-expanded:bg-foreground/10! **:data-[variant=destructive]:focus:bg-foreground/10! **:data-[variant=destructive]:text-accent-foreground! **:data-[variant=destructive]:**:text-accent-foreground!',
55
55
  className
56
56
  )}
57
57
  {...props}
@@ -75,7 +75,7 @@ function ContextMenuItem({
75
75
  data-inset={inset}
76
76
  data-variant={variant}
77
77
  className={cn(
78
- "group/context-menu-item relative flex cursor-default items-center gap-2.5 rounded-lg px-3 py-2 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-inset:pl-9.5 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 focus:*:[svg]:text-foreground data-[variant=destructive]:*:[svg]:text-foreground",
78
+ "group/context-menu-item relative flex cursor-default items-center gap-2.5 rounded-sm px-3 py-2 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-inset:pl-9.5 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 focus:*:[svg]:text-foreground data-[variant=destructive]:*:[svg]:text-foreground",
79
79
  className
80
80
  )}
81
81
  {...props}
@@ -96,7 +96,7 @@ function ContextMenuSubTrigger({
96
96
  data-slot="context-menu-sub-trigger"
97
97
  data-inset={inset}
98
98
  className={cn(
99
- "flex cursor-default items-center rounded-lg px-3 py-2 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-inset:pl-9.5 data-open:bg-accent data-open:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
99
+ "flex cursor-default items-center rounded-sm px-3 py-2 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-inset:pl-9.5 data-open:bg-accent data-open:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
100
100
  className
101
101
  )}
102
102
  {...props}
@@ -115,7 +115,7 @@ function ContextMenuSubContent({
115
115
  <ContextMenuPrimitive.SubContent
116
116
  data-slot="context-menu-sub-content"
117
117
  className={cn(
118
- 'z-50 min-w-32 origin-(--radix-context-menu-content-transform-origin) overflow-hidden rounded-lg border p-1 text-popover-foreground shadow-lg duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95 animate-none! relative bg-popover/70 before:pointer-events-none before:absolute before:inset-0 before:-z-1 before:rounded-[inherit] before:backdrop-blur-2xl before:backdrop-saturate-150 **:data-[slot$=-item]:focus:bg-foreground/10 **:data-[slot$=-item]:data-highlighted:bg-foreground/10 **:data-[slot$=-separator]:bg-foreground/5 **:data-[slot$=-trigger]:focus:bg-foreground/10 **:data-[slot$=-trigger]:aria-expanded:bg-foreground/10! **:data-[variant=destructive]:focus:bg-foreground/10! **:data-[variant=destructive]:text-accent-foreground! **:data-[variant=destructive]:**:text-accent-foreground!',
118
+ 'z-50 min-w-32 origin-(--radix-context-menu-content-transform-origin) overflow-hidden rounded-sm border p-1 text-popover-foreground shadow-lg duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95 animate-none! relative bg-popover/70 before:pointer-events-none before:absolute before:inset-0 before:-z-1 before:rounded-[inherit] before:backdrop-blur-2xl before:backdrop-saturate-150 **:data-[slot$=-item]:focus:bg-foreground/10 **:data-[slot$=-item]:data-highlighted:bg-foreground/10 **:data-[slot$=-separator]:bg-foreground/5 **:data-[slot$=-trigger]:focus:bg-foreground/10 **:data-[slot$=-trigger]:aria-expanded:bg-foreground/10! **:data-[variant=destructive]:focus:bg-foreground/10! **:data-[variant=destructive]:text-accent-foreground! **:data-[variant=destructive]:**:text-accent-foreground!',
119
119
  className
120
120
  )}
121
121
  {...props}
@@ -137,7 +137,7 @@ function ContextMenuCheckboxItem({
137
137
  data-slot="context-menu-checkbox-item"
138
138
  data-inset={inset}
139
139
  className={cn(
140
- "relative flex cursor-default items-center gap-2 rounded-lg py-2 pr-8 pl-3 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-inset:pl-9.5 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
140
+ "relative flex cursor-default items-center gap-2 rounded-sm py-2 pr-8 pl-3 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-inset:pl-9.5 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
141
141
  className
142
142
  )}
143
143
  checked={checked}
@@ -166,7 +166,7 @@ function ContextMenuRadioItem({
166
166
  data-slot="context-menu-radio-item"
167
167
  data-inset={inset}
168
168
  className={cn(
169
- "relative flex cursor-default items-center gap-2 rounded-lg py-2 pr-8 pl-3 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-inset:pl-9.5 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
169
+ "relative flex cursor-default items-center gap-2 rounded-sm py-2 pr-8 pl-3 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-inset:pl-9.5 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
170
170
  className
171
171
  )}
172
172
  {...props}
@@ -52,7 +52,7 @@ function DialogContent({
52
52
  <DialogPrimitive.Content
53
53
  data-slot="dialog-content"
54
54
  className={cn(
55
- 'fixed top-1/2 left-1/2 z-50 grid w-full max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 gap-6 rounded-4xl bg-popover p-6 text-sm text-popover-foreground ring-1 ring-foreground/5 duration-100 outline-none sm:max-w-md data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95',
55
+ 'fixed top-1/2 left-1/2 z-50 grid w-full max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 gap-0 rounded-sm text-sm text-popover-foreground ring-1 ring-foreground/5 duration-100 outline-none sm:max-w-md data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95 overflow-hidden bg-card',
56
56
  className
57
57
  )}
58
58
  {...props}
@@ -73,7 +73,24 @@ function DialogContent({
73
73
 
74
74
  function DialogHeader({ className, ...props }: React.ComponentProps<'div'>) {
75
75
  return (
76
- <div data-slot="dialog-header" className={cn('flex flex-col gap-2', className)} {...props} />
76
+ <div
77
+ data-slot="dialog-header"
78
+ className={cn('flex flex-col gap-1 px-6 pt-6 pb-4', className)}
79
+ {...props}
80
+ />
81
+ )
82
+ }
83
+
84
+ function DialogBody({ className, ...props }: React.ComponentProps<'div'>) {
85
+ return (
86
+ <div
87
+ data-slot="dialog-body"
88
+ className={cn(
89
+ 'flex shadow-input flex-col gap-1 p-6 rounded-sm bg-card border border-border',
90
+ className
91
+ )}
92
+ {...props}
93
+ />
77
94
  )
78
95
  }
79
96
 
@@ -88,15 +105,20 @@ function DialogFooter({
88
105
  return (
89
106
  <div
90
107
  data-slot="dialog-footer"
91
- className={cn('flex flex-col-reverse gap-2 sm:flex-row sm:justify-end', className)}
108
+ className={cn(
109
+ 'flex flex-col-reverse gap-1 px-6 pt-4 items-center pb-5 bg-muted sm:flex-row sm:justify-between',
110
+ className
111
+ )}
92
112
  {...props}
93
113
  >
94
- {children}
95
114
  {showCloseButton && (
96
115
  <DialogPrimitive.Close asChild>
97
- <Button variant="outline">Close</Button>
116
+ <Button variant="outline" size="lg">
117
+ Close
118
+ </Button>
98
119
  </DialogPrimitive.Close>
99
120
  )}
121
+ <div className="flex items-center gap-2">{children}</div>
100
122
  </div>
101
123
  )
102
124
  }
@@ -137,5 +159,6 @@ export {
137
159
  DialogOverlay,
138
160
  DialogPortal,
139
161
  DialogTitle,
140
- DialogTrigger
162
+ DialogTrigger,
163
+ DialogBody
141
164
  }
@@ -67,7 +67,7 @@ function DrawerContent({
67
67
  <DrawerPrimitive.Content
68
68
  data-slot="drawer-content"
69
69
  className={cn(
70
- 'group/drawer-content fixed z-50 flex h-auto flex-col bg-transparent p-2 text-sm text-popover-foreground before:absolute before:inset-2 before:-z-10 before:rounded-4xl before:border before:border-border before:bg-popover data-[vaul-drawer-direction=bottom]:inset-x-0 data-[vaul-drawer-direction=bottom]:bottom-0 data-[vaul-drawer-direction=bottom]:mt-24 data-[vaul-drawer-direction=bottom]:max-h-[80vh] data-[vaul-drawer-direction=left]:inset-y-0 data-[vaul-drawer-direction=left]:left-0 data-[vaul-drawer-direction=left]:w-3/4 data-[vaul-drawer-direction=right]:inset-y-0 data-[vaul-drawer-direction=right]:right-0 data-[vaul-drawer-direction=right]:w-3/4 data-[vaul-drawer-direction=top]:inset-x-0 data-[vaul-drawer-direction=top]:top-0 data-[vaul-drawer-direction=top]:mb-24 data-[vaul-drawer-direction=top]:max-h-[80vh] data-[vaul-drawer-direction=left]:sm:max-w-sm data-[vaul-drawer-direction=right]:sm:max-w-md space-y-4',
70
+ 'group/drawer-content fixed z-50 flex h-auto flex-col bg-transparent p-2 text-sm text-popover-foreground before:absolute before:inset-2 before:-z-10 before:rounded-sm before:border before:border-border before:bg-popover data-[vaul-drawer-direction=bottom]:inset-x-0 data-[vaul-drawer-direction=bottom]:bottom-0 data-[vaul-drawer-direction=bottom]:mt-24 data-[vaul-drawer-direction=bottom]:max-h-[80vh] data-[vaul-drawer-direction=left]:inset-y-0 data-[vaul-drawer-direction=left]:left-0 data-[vaul-drawer-direction=left]:w-3/4 data-[vaul-drawer-direction=right]:inset-y-0 data-[vaul-drawer-direction=right]:right-0 data-[vaul-drawer-direction=right]:w-3/4 data-[vaul-drawer-direction=top]:inset-x-0 data-[vaul-drawer-direction=top]:top-0 data-[vaul-drawer-direction=top]:mb-24 data-[vaul-drawer-direction=top]:max-h-[80vh] data-[vaul-drawer-direction=left]:sm:max-w-sm data-[vaul-drawer-direction=right]:sm:max-w-md space-y-4',
71
71
  className
72
72
  )}
73
73
  style={{ touchAction: 'auto', userSelect: 'text', ...style }}
@@ -96,7 +96,7 @@ function DrawerFooter({ className, ...props }: React.ComponentProps<'div'>) {
96
96
  return (
97
97
  <div
98
98
  data-slot="drawer-footer"
99
- className={cn('mt-auto flex flex-col gap-2 p-4', className)}
99
+ className={cn('mt-auto flex flex-col gap-2 px-6 py-6', className)}
100
100
  {...props}
101
101
  />
102
102
  )
@@ -47,7 +47,7 @@ function DropdownMenuContent({
47
47
  sideOffset={sideOffset}
48
48
  align={align}
49
49
  className={cn(
50
- 'z-50 max-h-(--radix-dropdown-menu-content-available-height) w-(--radix-dropdown-menu-trigger-width) min-w-35 origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-lg p-1 text-popover-foreground shadow-2xl/10 ring-1 ring-foreground/5 duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:overflow-hidden dark:ring-foreground/10 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95 relative bg-popover/70 before:pointer-events-none before:absolute before:inset-0 before:-z-1 before:rounded-[inherit] before:backdrop-blur-2xl before:backdrop-saturate-150 **:data-[slot$=-item]:focus:bg-foreground/10 **:data-[slot$=-item]:data-highlighted:bg-foreground/10 **:data-[slot$=-separator]:bg-foreground/5 **:data-[slot$=-trigger]:focus:bg-foreground/10 **:data-[slot$=-trigger]:aria-expanded:bg-foreground/10!',
50
+ 'z-50 max-h-(--radix-dropdown-menu-content-available-height) min-w-35 origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-sm p-1 text-popover-foreground shadow-2xl/10 ring-1 ring-foreground/5 duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:overflow-hidden dark:ring-foreground/10 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95 relative bg-popover/70 before:pointer-events-none before:absolute before:inset-0 before:-z-1 before:rounded-[inherit] before:backdrop-blur-2xl before:backdrop-saturate-150 **:data-[slot$=-item]:focus:bg-foreground/10 **:data-[slot$=-item]:data-highlighted:bg-foreground/10 **:data-[slot$=-separator]:bg-foreground/5 **:data-[slot$=-trigger]:focus:bg-foreground/10 **:data-[slot$=-trigger]:aria-expanded:bg-foreground/10!',
51
51
  className
52
52
  )}
53
53
  {...props}
@@ -84,7 +84,7 @@ function DropdownMenuItem({
84
84
  data-inset={inset}
85
85
  data-variant={variant}
86
86
  className={cn(
87
- "group/dropdown-menu-item relative flex cursor-default items-center gap-2.5 rounded-lg px-3 py-2 text-sm outline-hidden select-none focus:bg-accent focus:text-foreground not-data-[variant=destructive]:focus:**:text-foreground data-inset:pl-9.5 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 data-[variant=destructive]:*:[svg]:text-destructive",
87
+ "group/dropdown-menu-item relative flex cursor-default items-center gap-2.5 rounded-sm px-3 py-2 text-sm outline-hidden select-none focus:bg-accent focus:text-foreground not-data-[variant=destructive]:focus:**:text-foreground data-inset:pl-9.5 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 data-[variant=destructive]:*:[svg]:text-destructive",
88
88
  className
89
89
  )}
90
90
  {...props}
@@ -106,7 +106,7 @@ function DropdownMenuCheckboxItem({
106
106
  data-slot="dropdown-menu-checkbox-item"
107
107
  data-inset={inset}
108
108
  className={cn(
109
- "relative flex cursor-default items-center gap-2.5 rounded-lg py-2 pr-8 pl-3 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-inset:pl-9.5 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
109
+ "relative flex cursor-default items-center gap-2.5 rounded-sm py-2 pr-8 pl-3 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground data-inset:pl-9.5 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
110
110
  className
111
111
  )}
112
112
  checked={checked}
@@ -144,7 +144,7 @@ function DropdownMenuRadioItem({
144
144
  data-slot="dropdown-menu-radio-item"
145
145
  data-inset={inset}
146
146
  className={cn(
147
- "relative flex cursor-default items-center gap-2.5 rounded-lg py-2 pr-8 pl-3 text-sm outline-hidden select-none focus:bg-secondary hover:bg-secondary focus:text-foreground focus:**:text-foreground data-inset:pl-9.5 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
147
+ "relative flex cursor-default items-center gap-2.5 rounded-sm py-2 pr-8 pl-3 text-sm outline-hidden select-none focus:bg-secondary hover:bg-secondary focus:text-foreground focus:**:text-foreground data-inset:pl-9.5 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
148
148
  className
149
149
  )}
150
150
  {...props}
@@ -222,7 +222,7 @@ function DropdownMenuSubTrigger({
222
222
  data-slot="dropdown-menu-sub-trigger"
223
223
  data-inset={inset}
224
224
  className={cn(
225
- "flex cursor-default items-center gap-2 rounded-lg px-3 py-2 text-sm outline-hidden select-none focus:bg-secondary focus:text-foreground not-data-[variant=destructive]:focus:**:text-foreground data-inset:pl-9.5 data-open:bg-accent data-open:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
225
+ "flex cursor-default items-center gap-2 rounded-sm px-3 py-2 text-sm outline-hidden select-none focus:bg-secondary focus:text-foreground not-data-[variant=destructive]:focus:**:text-foreground data-inset:pl-9.5 data-open:bg-accent data-open:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
226
226
  className
227
227
  )}
228
228
  {...props}
@@ -241,7 +241,7 @@ function DropdownMenuSubContent({
241
241
  <DropdownMenuPrimitive.SubContent
242
242
  data-slot="dropdown-menu-sub-content"
243
243
  className={cn(
244
- 'z-50 min-w-36 origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-lg p-1 text-popover-foreground shadow-2xl ring-1 ring-foreground/5 duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95 relative bg-popover/70 before:pointer-events-none before:absolute before:inset-0 before:-z-1 before:rounded-[inherit] before:backdrop-blur-2xl before:backdrop-saturate-150 **:data-[slot$=-item]:focus:bg-foreground/10 **:data-[slot$=-item]:data-highlighted:bg-foreground/10 **:data-[slot$=-separator]:bg-foreground/5 **:data-[slot$=-trigger]:focus:bg-foreground/10 **:data-[slot$=-trigger]:aria-expanded:bg-foreground/10!',
244
+ 'z-50 min-w-36 origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-sm p-1 text-popover-foreground shadow-2xl ring-1 ring-foreground/5 duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95 relative bg-popover/70 before:pointer-events-none before:absolute before:inset-0 before:-z-1 before:rounded-[inherit] before:backdrop-blur-2xl before:backdrop-saturate-150 **:data-[slot$=-item]:focus:bg-foreground/10 **:data-[slot$=-item]:data-highlighted:bg-foreground/10 **:data-[slot$=-separator]:bg-foreground/5 **:data-[slot$=-trigger]:focus:bg-foreground/10 **:data-[slot$=-trigger]:aria-expanded:bg-foreground/10!',
245
245
  className
246
246
  )}
247
247
  {...props}
@@ -6,7 +6,7 @@ function Empty({ className, ...props }: React.ComponentProps<'div'>) {
6
6
  <div
7
7
  data-slot="empty"
8
8
  className={cn(
9
- 'flex w-full min-w-0 flex-1 flex-col items-center justify-center gap-4 rounded-lg border-dashed p-12 text-center text-balance',
9
+ 'flex w-full min-w-0 flex-1 flex-col items-center justify-center gap-4 rounded-sm border-dashed p-12 text-center text-balance',
10
10
  className
11
11
  )}
12
12
  {...props}
@@ -30,7 +30,7 @@ const emptyMediaVariants = cva(
30
30
  variants: {
31
31
  variant: {
32
32
  default: 'bg-transparent',
33
- icon: "flex size-10 shrink-0 items-center justify-center rounded-lg bg-muted text-foreground [&_svg:not([class*='size-'])]:size-6"
33
+ icon: "flex size-10 shrink-0 items-center justify-center rounded-sm bg-muted text-foreground [&_svg:not([class*='size-'])]:size-6"
34
34
  }
35
35
  },
36
36
  defaultVariants: {
@@ -99,7 +99,7 @@ function FieldLabel({ className, ...props }: React.ComponentProps<typeof Label>)
99
99
  <Label
100
100
  data-slot="field-label"
101
101
  className={cn(
102
- 'group/field-label peer/field-label flex w-fit gap-2 leading-snug group-data-[disabled=true]/field:opacity-50 has-data-checked:border-primary/30 has-data-checked:bg-primary/5 has-[>[data-slot=field]]:rounded-lg has-[>[data-slot=field]]:border *:data-[slot=field]:p-4 dark:has-data-checked:border-primary/20 dark:has-data-checked:bg-primary/10',
102
+ 'group/field-label peer/field-label flex w-fit gap-2 leading-snug group-data-[disabled=true]/field:opacity-50 has-data-checked:border-primary/30 has-data-checked:bg-primary/5 has-[>[data-slot=field]]:rounded-sm has-[>[data-slot=field]]:border *:data-[slot=field]:p-4 dark:has-data-checked:border-primary/20 dark:has-data-checked:bg-primary/10',
103
103
  'has-[>[data-slot=field]]:w-full has-[>[data-slot=field]]:flex-col',
104
104
  className
105
105
  )}
@@ -25,7 +25,7 @@ function HoverCardContent({
25
25
  align={align}
26
26
  sideOffset={sideOffset}
27
27
  className={cn(
28
- 'z-50 w-72 origin-(--radix-hover-card-content-transform-origin) rounded-lg bg-popover p-4 text-sm text-popover-foreground shadow-2xl ring-1 ring-foreground/5 outline-hidden duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95',
28
+ 'z-50 w-72 origin-(--radix-hover-card-content-transform-origin) rounded-sm bg-popover p-4 text-sm text-popover-foreground shadow-2xl ring-1 ring-foreground/5 outline-hidden duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95',
29
29
  className
30
30
  )}
31
31
  {...props}
@@ -12,7 +12,7 @@ function InputGroup({ className, ...props }: React.ComponentProps<'div'>) {
12
12
  <div
13
13
  data-slot="input-group"
14
14
  className={cn(
15
- 'group/input-group border border-border relative m-0 flex h-11 w-full min-w-0 items-stretch rounded-4xl bg-input p-0 transition-colors outline-none [min-inline-size:0] in-data-[slot=combobox-content]:focus-within:border-inherit in-data-[slot=combobox-content]:focus-within:ring-0 has-data-[align=block-end]:rounded-lg has-data-[align=block-start]:rounded-lg has-[[data-slot=input-group-control]:focus-visible]:border-ring has-[[data-slot=input-group-control]:focus-visible]:ring-[3px] has-[[data-slot=input-group-control]:focus-visible]:ring-ring/50 has-[[data-slot][aria-invalid=true]]:border-destructive has-[[data-slot][aria-invalid=true]]:ring-[3px] has-[[data-slot][aria-invalid=true]]:ring-destructive/20 has-[textarea]:rounded-lg has-[>[data-align=block-end]]:h-auto has-[>[data-align=block-end]]:flex-col has-[>[data-align=block-start]]:h-auto has-[>[data-align=block-start]]:flex-col has-[>textarea]:h-auto dark:has-[[data-slot][aria-invalid=true]]:ring-destructive/40 has-[>[data-align=block-start]]:[&>input]:pb-3 has-[>[data-align=inline-end]]:[&>input]:pr-1.5 has-[>[data-align=inline-start]]:[&>input]:pl-1.5',
15
+ 'group/input-group border border-border relative m-0 flex h-11 w-full min-w-0 items-stretch rounded-sm bg-input p-0 transition-colors outline-none [min-inline-size:0] in-data-[slot=combobox-content]:focus-within:border-inherit in-data-[slot=combobox-content]:focus-within:ring-0 has-data-[align=block-end]:rounded-sm has-data-[align=block-start]:rounded-sm has-[[data-slot=input-group-control]:focus-visible]:border-ring has-[[data-slot=input-group-control]:focus-visible]:ring-[3px] has-[[data-slot=input-group-control]:focus-visible]:ring-ring/50 has-[[data-slot][aria-invalid=true]]:border-destructive has-[[data-slot][aria-invalid=true]]:ring-[3px] has-[[data-slot][aria-invalid=true]]:ring-destructive/20 has-[textarea]:rounded-sm has-[>[data-align=block-end]]:h-auto has-[>[data-align=block-end]]:flex-col has-[>[data-align=block-start]]:h-auto has-[>[data-align=block-start]]:flex-col has-[>textarea]:h-auto dark:has-[[data-slot][aria-invalid=true]]:ring-destructive/40 has-[>[data-align=block-start]]:[&>input]:pb-3 has-[>[data-align=inline-end]]:[&>input]:pr-1.5 has-[>[data-align=inline-start]]:[&>input]:pl-1.5',
16
16
  className
17
17
  )}
18
18
  {...props}
@@ -21,13 +21,12 @@ function InputGroup({ className, ...props }: React.ComponentProps<'div'>) {
21
21
  }
22
22
 
23
23
  const inputGroupAddonVariants = cva(
24
- "flex h-auto cursor-text items-center justify-center gap-2 text-sm font-medium select-none group-data-[disabled=true]/input-group:opacity-50 **:data-[slot=kbd]:rounded-4xl **:data-[slot=kbd]:bg-muted-foreground/10 **:data-[slot=kbd]:px-1.5 [&>svg:not([class*='size-'])]:size-4",
24
+ "flex h-auto cursor-text items-center justify-center gap-2 text-sm font-medium select-none group-data-[disabled=true]/input-group:opacity-50 **:data-[slot=kbd]:rounded-sm **:data-[slot=kbd]:bg-muted-foreground/10 **:data-[slot=kbd]:px-1.5 [&>svg:not([class*='size-'])]:size-4",
25
25
  {
26
26
  variants: {
27
27
  align: {
28
- 'inline-start':
29
- 'order-first self-stretch pl-3 has-[>button]:-ml-1 has-[>kbd]:ml-[-0.15rem]',
30
- 'inline-end': 'order-last self-stretch pr-2 has-[>button]:-mr-1 has-[>kbd]:mr-[-0.15rem]',
28
+ 'inline-start': 'order-first self-stretch has-[>button]:-ml-1 has-[>kbd]:ml-[-0.15rem]',
29
+ 'inline-end': 'order-last self-stretch has-[>button]:-mr-1 has-[>kbd]:mr-[-0.15rem]',
31
30
  'block-start': 'order-first w-full justify-start px-3 [.border-b]:pb-3',
32
31
  'block-end': 'order-last w-full justify-start px-3 pb-3 group-has-[>input]/input-group:pb-3'
33
32
  }
@@ -53,7 +52,7 @@ function InputGroupAddon({
53
52
  )
54
53
  }
55
54
 
56
- const inputGroupButtonVariants = cva('flex items-center gap-2 rounded-4xl text-sm shadow-none', {
55
+ const inputGroupButtonVariants = cva('flex items-center gap-2 rounded-sm text-sm shadow-none', {
57
56
  variants: {
58
57
  size: {
59
58
  xs: "h-6 gap-1 px-1.5 [&>svg:not([class*='size-'])]:size-3.5",
@@ -31,7 +31,7 @@ function InputOTPGroup({ className, ...props }: React.ComponentProps<'div'>) {
31
31
  <div
32
32
  data-slot="input-otp-group"
33
33
  className={cn(
34
- 'flex items-center rounded-4xl has-aria-invalid:border-destructive has-aria-invalid:ring-[3px] has-aria-invalid:ring-destructive/20 dark:has-aria-invalid:ring-destructive/40',
34
+ 'flex items-center rounded-sm has-aria-invalid:border-destructive has-aria-invalid:ring-[3px] has-aria-invalid:ring-destructive/20 dark:has-aria-invalid:ring-destructive/40',
35
35
  className
36
36
  )}
37
37
  {...props}
@@ -54,7 +54,7 @@ function InputOTPSlot({
54
54
  data-slot="input-otp-slot"
55
55
  data-active={isActive}
56
56
  className={cn(
57
- 'relative flex size-9 items-center justify-center border-y border-r border-input bg-input/30 text-sm transition-all outline-none first:rounded-l-4xl first:border-l last:rounded-r-4xl aria-invalid:border-destructive data-[active=true]:z-10 data-[active=true]:border-ring data-[active=true]:ring-[3px] data-[active=true]:ring-ring/50 data-[active=true]:aria-invalid:border-destructive data-[active=true]:aria-invalid:ring-destructive/20 dark:data-[active=true]:aria-invalid:ring-destructive/40',
57
+ 'relative flex size-9 items-center justify-center border-y border-r border-input bg-input/30 text-sm transition-all outline-none first:rounded-l-sm first:border-l last:rounded-r-sm aria-invalid:border-destructive data-[active=true]:z-10 data-[active=true]:border-ring data-[active=true]:ring-[3px] data-[active=true]:ring-ring/50 data-[active=true]:aria-invalid:border-destructive data-[active=true]:aria-invalid:ring-destructive/20 dark:data-[active=true]:aria-invalid:ring-destructive/40',
58
58
  className
59
59
  )}
60
60
  {...props}
@@ -7,7 +7,7 @@ function Input({ className, type, ...props }: React.ComponentProps<'input'>) {
7
7
  type={type}
8
8
  data-slot="input"
9
9
  className={cn(
10
- 'h-9 w-full min-w-0 rounded-4xl border border-border bg-input px-4 py-1 text-base transition-colors outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-[3px] aria-invalid:ring-destructive/20 md:text-sm dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 hover:border-primary/13 shadow-input',
10
+ 'h-10 w-full min-w-0 rounded-sm border border-border bg-input px-4 py-1 text-base transition-colors outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-[3px] aria-invalid:ring-destructive/20 md:text-sm dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 hover:border-primary/13 shadow-input',
11
11
  className
12
12
  )}
13
13
  {...props}
@@ -29,7 +29,7 @@ function ItemSeparator({ className, ...props }: React.ComponentProps<typeof Sepa
29
29
  }
30
30
 
31
31
  const itemVariants = cva(
32
- 'group/item flex w-full flex-wrap items-center rounded-lg border text-sm transition-colors duration-100 outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 [a]:transition-colors [a]:hover:bg-muted',
32
+ 'group/item flex w-full flex-wrap items-center rounded-sm border text-sm transition-colors duration-100 outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 [a]:transition-colors [a]:hover:bg-muted',
33
33
  {
34
34
  variants: {
35
35
  variant: {
@@ -77,7 +77,7 @@ const itemMediaVariants = cva(
77
77
  default: 'bg-transparent',
78
78
  icon: "[&_svg:not([class*='size-'])]:size-4",
79
79
  image:
80
- 'size-10 overflow-hidden rounded-lg group-data-[size=sm]/item:size-8 group-data-[size=xs]/item:size-6 group-data-[size=xs]/item:rounded-md [&_img]:size-full [&_img]:object-cover'
80
+ 'size-10 overflow-hidden rounded-sm group-data-[size=sm]/item:size-8 group-data-[size=xs]/item:size-6 group-data-[size=xs]/item:rounded-md [&_img]:size-full [&_img]:object-cover'
81
81
  }
82
82
  },
83
83
  defaultVariants: {