@vendure/dashboard 3.3.6-master-202507030835 → 3.3.6-master-202507031127

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 (51) hide show
  1. package/package.json +27 -40
  2. package/src/app/routes/_authenticated/_collections/components/move-collections-dialog.tsx +7 -7
  3. package/src/app/routes/_authenticated/_customers/components/customer-address-card.tsx +3 -8
  4. package/src/lib/components/data-table/data-table-bulk-actions.tsx +9 -3
  5. package/src/lib/components/data-table/data-table.tsx +3 -2
  6. package/src/lib/components/ui/accordion.tsx +45 -50
  7. package/src/lib/components/ui/alert-dialog.tsx +93 -122
  8. package/src/lib/components/ui/alert.tsx +48 -54
  9. package/src/lib/components/ui/badge.tsx +29 -37
  10. package/src/lib/components/ui/breadcrumb.tsx +82 -89
  11. package/src/lib/components/ui/button.tsx +51 -52
  12. package/src/lib/components/ui/calendar.tsx +435 -196
  13. package/src/lib/components/ui/card.tsx +33 -78
  14. package/src/lib/components/ui/checkbox.tsx +23 -28
  15. package/src/lib/components/ui/collapsible.tsx +2 -0
  16. package/src/lib/components/ui/command.tsx +114 -159
  17. package/src/lib/components/ui/dialog.tsx +90 -115
  18. package/src/lib/components/ui/dropdown-menu.tsx +170 -207
  19. package/src/lib/components/ui/form.tsx +114 -138
  20. package/src/lib/components/ui/hover-card.tsx +26 -32
  21. package/src/lib/components/ui/input.tsx +15 -17
  22. package/src/lib/components/ui/label.tsx +16 -19
  23. package/src/lib/components/ui/pagination.tsx +87 -108
  24. package/src/lib/components/ui/popover.tsx +28 -36
  25. package/src/lib/components/ui/scroll-area.tsx +40 -48
  26. package/src/lib/components/ui/select.tsx +129 -151
  27. package/src/lib/components/ui/separator.tsx +20 -22
  28. package/src/lib/components/ui/sheet.tsx +91 -110
  29. package/src/lib/components/ui/sidebar.tsx +622 -652
  30. package/src/lib/components/ui/skeleton.tsx +10 -10
  31. package/src/lib/components/ui/sonner.tsx +11 -7
  32. package/src/lib/components/ui/switch.tsx +22 -27
  33. package/src/lib/components/ui/table.tsx +64 -96
  34. package/src/lib/components/ui/tabs.tsx +38 -56
  35. package/src/lib/components/ui/textarea.tsx +14 -14
  36. package/src/lib/components/ui/tooltip.tsx +37 -45
  37. package/src/lib/components/ui/aspect-ratio.tsx +0 -9
  38. package/src/lib/components/ui/avatar.tsx +0 -53
  39. package/src/lib/components/ui/carousel.tsx +0 -241
  40. package/src/lib/components/ui/chart.tsx +0 -351
  41. package/src/lib/components/ui/context-menu.tsx +0 -252
  42. package/src/lib/components/ui/drawer.tsx +0 -133
  43. package/src/lib/components/ui/input-otp.tsx +0 -77
  44. package/src/lib/components/ui/menubar.tsx +0 -274
  45. package/src/lib/components/ui/navigation-menu.tsx +0 -168
  46. package/src/lib/components/ui/progress.tsx +0 -29
  47. package/src/lib/components/ui/radio-group.tsx +0 -45
  48. package/src/lib/components/ui/resizable.tsx +0 -54
  49. package/src/lib/components/ui/slider.tsx +0 -63
  50. package/src/lib/components/ui/toggle-group.tsx +0 -73
  51. package/src/lib/components/ui/toggle.tsx +0 -45
@@ -1,257 +1,220 @@
1
- "use client"
1
+ import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
2
+ import { CheckIcon, ChevronRightIcon, CircleIcon } from 'lucide-react';
3
+ import * as React from 'react';
2
4
 
3
- import * as React from "react"
4
- import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu"
5
- import { CheckIcon, ChevronRightIcon, CircleIcon } from "lucide-react"
5
+ import { cn } from '@/vdb/lib/utils.js';
6
6
 
7
- import { cn } from "@/vdb/lib/utils"
8
-
9
- function DropdownMenu({
10
- ...props
11
- }: React.ComponentProps<typeof DropdownMenuPrimitive.Root>) {
12
- return <DropdownMenuPrimitive.Root data-slot="dropdown-menu" {...props} />
7
+ function DropdownMenu({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Root>) {
8
+ return <DropdownMenuPrimitive.Root data-slot="dropdown-menu" {...props} />;
13
9
  }
14
10
 
15
- function DropdownMenuPortal({
16
- ...props
17
- }: React.ComponentProps<typeof DropdownMenuPrimitive.Portal>) {
18
- return (
19
- <DropdownMenuPrimitive.Portal data-slot="dropdown-menu-portal" {...props} />
20
- )
11
+ function DropdownMenuPortal({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Portal>) {
12
+ return <DropdownMenuPrimitive.Portal data-slot="dropdown-menu-portal" {...props} />;
21
13
  }
22
14
 
23
- function DropdownMenuTrigger({
24
- ...props
25
- }: React.ComponentProps<typeof DropdownMenuPrimitive.Trigger>) {
26
- return (
27
- <DropdownMenuPrimitive.Trigger
28
- data-slot="dropdown-menu-trigger"
29
- {...props}
30
- />
31
- )
15
+ function DropdownMenuTrigger({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Trigger>) {
16
+ return <DropdownMenuPrimitive.Trigger data-slot="dropdown-menu-trigger" {...props} />;
32
17
  }
33
18
 
34
19
  function DropdownMenuContent({
35
- className,
36
- sideOffset = 4,
37
- ...props
20
+ className,
21
+ sideOffset = 4,
22
+ ...props
38
23
  }: React.ComponentProps<typeof DropdownMenuPrimitive.Content>) {
39
- return (
40
- <DropdownMenuPrimitive.Portal>
41
- <DropdownMenuPrimitive.Content
42
- data-slot="dropdown-menu-content"
43
- sideOffset={sideOffset}
44
- className={cn(
45
- "bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 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 z-50 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md",
46
- className
47
- )}
48
- {...props}
49
- />
50
- </DropdownMenuPrimitive.Portal>
51
- )
24
+ return (
25
+ <DropdownMenuPrimitive.Portal>
26
+ <DropdownMenuPrimitive.Content
27
+ data-slot="dropdown-menu-content"
28
+ sideOffset={sideOffset}
29
+ className={cn(
30
+ 'bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 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 z-50 min-w-[8rem] overflow-hidden rounded-md border p-1 shadow-md',
31
+ className,
32
+ )}
33
+ {...props}
34
+ />
35
+ </DropdownMenuPrimitive.Portal>
36
+ );
52
37
  }
53
38
 
54
- function DropdownMenuGroup({
55
- ...props
56
- }: React.ComponentProps<typeof DropdownMenuPrimitive.Group>) {
57
- return (
58
- <DropdownMenuPrimitive.Group data-slot="dropdown-menu-group" {...props} />
59
- )
39
+ function DropdownMenuGroup({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Group>) {
40
+ return <DropdownMenuPrimitive.Group data-slot="dropdown-menu-group" {...props} />;
60
41
  }
61
42
 
62
43
  function DropdownMenuItem({
63
- className,
64
- inset,
65
- variant = "default",
66
- ...props
44
+ className,
45
+ inset,
46
+ variant = 'default',
47
+ ...props
67
48
  }: React.ComponentProps<typeof DropdownMenuPrimitive.Item> & {
68
- inset?: boolean
69
- variant?: "default" | "destructive"
49
+ inset?: boolean;
50
+ variant?: 'default' | 'destructive';
70
51
  }) {
71
- return (
72
- <DropdownMenuPrimitive.Item
73
- data-slot="dropdown-menu-item"
74
- data-inset={inset}
75
- data-variant={variant}
76
- className={cn(
77
- "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 [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
78
- className
79
- )}
80
- {...props}
81
- />
82
- )
52
+ return (
53
+ <DropdownMenuPrimitive.Item
54
+ data-slot="dropdown-menu-item"
55
+ data-inset={inset}
56
+ data-variant={variant}
57
+ className={cn(
58
+ "focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
59
+ className,
60
+ )}
61
+ {...props}
62
+ />
63
+ );
83
64
  }
84
65
 
85
66
  function DropdownMenuCheckboxItem({
86
- className,
87
- children,
88
- checked,
89
- ...props
67
+ className,
68
+ children,
69
+ checked,
70
+ ...props
90
71
  }: React.ComponentProps<typeof DropdownMenuPrimitive.CheckboxItem>) {
91
- return (
92
- <DropdownMenuPrimitive.CheckboxItem
93
- data-slot="dropdown-menu-checkbox-item"
94
- className={cn(
95
- "focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 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",
96
- className
97
- )}
98
- checked={checked}
99
- {...props}
100
- >
101
- <span className="pointer-events-none absolute left-2 flex size-3.5 items-center justify-center">
102
- <DropdownMenuPrimitive.ItemIndicator>
103
- <CheckIcon className="size-4" />
104
- </DropdownMenuPrimitive.ItemIndicator>
105
- </span>
106
- {children}
107
- </DropdownMenuPrimitive.CheckboxItem>
108
- )
109
- }
110
-
111
- function DropdownMenuRadioGroup({
112
- ...props
113
- }: React.ComponentProps<typeof DropdownMenuPrimitive.RadioGroup>) {
114
- return (
115
- <DropdownMenuPrimitive.RadioGroup
116
- data-slot="dropdown-menu-radio-group"
117
- {...props}
118
- />
119
- )
72
+ return (
73
+ <DropdownMenuPrimitive.CheckboxItem
74
+ data-slot="dropdown-menu-checkbox-item"
75
+ className={cn(
76
+ "focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 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",
77
+ className,
78
+ )}
79
+ checked={checked}
80
+ {...props}
81
+ >
82
+ <span className="pointer-events-none absolute left-2 flex size-3.5 items-center justify-center">
83
+ <DropdownMenuPrimitive.ItemIndicator>
84
+ <CheckIcon className="size-4" />
85
+ </DropdownMenuPrimitive.ItemIndicator>
86
+ </span>
87
+ {children}
88
+ </DropdownMenuPrimitive.CheckboxItem>
89
+ );
90
+ }
91
+
92
+ function DropdownMenuRadioGroup({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.RadioGroup>) {
93
+ return <DropdownMenuPrimitive.RadioGroup data-slot="dropdown-menu-radio-group" {...props} />;
120
94
  }
121
95
 
122
96
  function DropdownMenuRadioItem({
123
- className,
124
- children,
125
- ...props
97
+ className,
98
+ children,
99
+ ...props
126
100
  }: React.ComponentProps<typeof DropdownMenuPrimitive.RadioItem>) {
127
- return (
128
- <DropdownMenuPrimitive.RadioItem
129
- data-slot="dropdown-menu-radio-item"
130
- className={cn(
131
- "focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 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",
132
- className
133
- )}
134
- {...props}
135
- >
136
- <span className="pointer-events-none absolute left-2 flex size-3.5 items-center justify-center">
137
- <DropdownMenuPrimitive.ItemIndicator>
138
- <CircleIcon className="size-2 fill-current" />
139
- </DropdownMenuPrimitive.ItemIndicator>
140
- </span>
141
- {children}
142
- </DropdownMenuPrimitive.RadioItem>
143
- )
101
+ return (
102
+ <DropdownMenuPrimitive.RadioItem
103
+ data-slot="dropdown-menu-radio-item"
104
+ className={cn(
105
+ "focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 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",
106
+ className,
107
+ )}
108
+ {...props}
109
+ >
110
+ <span className="pointer-events-none absolute left-2 flex size-3.5 items-center justify-center">
111
+ <DropdownMenuPrimitive.ItemIndicator>
112
+ <CircleIcon className="size-2 fill-current" />
113
+ </DropdownMenuPrimitive.ItemIndicator>
114
+ </span>
115
+ {children}
116
+ </DropdownMenuPrimitive.RadioItem>
117
+ );
144
118
  }
145
119
 
146
120
  function DropdownMenuLabel({
147
- className,
148
- inset,
149
- ...props
121
+ className,
122
+ inset,
123
+ ...props
150
124
  }: React.ComponentProps<typeof DropdownMenuPrimitive.Label> & {
151
- inset?: boolean
125
+ inset?: boolean;
152
126
  }) {
153
- return (
154
- <DropdownMenuPrimitive.Label
155
- data-slot="dropdown-menu-label"
156
- data-inset={inset}
157
- className={cn(
158
- "px-2 py-1.5 text-sm font-medium data-[inset]:pl-8",
159
- className
160
- )}
161
- {...props}
162
- />
163
- )
127
+ return (
128
+ <DropdownMenuPrimitive.Label
129
+ data-slot="dropdown-menu-label"
130
+ data-inset={inset}
131
+ className={cn('px-2 py-1.5 text-sm font-semibold data-[inset]:pl-8', className)}
132
+ {...props}
133
+ />
134
+ );
164
135
  }
165
136
 
166
137
  function DropdownMenuSeparator({
167
- className,
168
- ...props
138
+ className,
139
+ ...props
169
140
  }: React.ComponentProps<typeof DropdownMenuPrimitive.Separator>) {
170
- return (
171
- <DropdownMenuPrimitive.Separator
172
- data-slot="dropdown-menu-separator"
173
- className={cn("bg-border -mx-1 my-1 h-px", className)}
174
- {...props}
175
- />
176
- )
141
+ return (
142
+ <DropdownMenuPrimitive.Separator
143
+ data-slot="dropdown-menu-separator"
144
+ className={cn('bg-border -mx-1 my-1 h-px', className)}
145
+ {...props}
146
+ />
147
+ );
177
148
  }
178
149
 
179
- function DropdownMenuShortcut({
180
- className,
181
- ...props
182
- }: React.ComponentProps<"span">) {
183
- return (
184
- <span
185
- data-slot="dropdown-menu-shortcut"
186
- className={cn(
187
- "text-muted-foreground ml-auto text-xs tracking-widest",
188
- className
189
- )}
190
- {...props}
191
- />
192
- )
150
+ function DropdownMenuShortcut({ className, ...props }: React.ComponentProps<'span'>) {
151
+ return (
152
+ <span
153
+ data-slot="dropdown-menu-shortcut"
154
+ className={cn('text-muted-foreground ml-auto text-xs tracking-widest', className)}
155
+ {...props}
156
+ />
157
+ );
193
158
  }
194
159
 
195
- function DropdownMenuSub({
196
- ...props
197
- }: React.ComponentProps<typeof DropdownMenuPrimitive.Sub>) {
198
- return <DropdownMenuPrimitive.Sub data-slot="dropdown-menu-sub" {...props} />
160
+ function DropdownMenuSub({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Sub>) {
161
+ return <DropdownMenuPrimitive.Sub data-slot="dropdown-menu-sub" {...props} />;
199
162
  }
200
163
 
201
164
  function DropdownMenuSubTrigger({
202
- className,
203
- inset,
204
- children,
205
- ...props
165
+ className,
166
+ inset,
167
+ children,
168
+ ...props
206
169
  }: React.ComponentProps<typeof DropdownMenuPrimitive.SubTrigger> & {
207
- inset?: boolean
170
+ inset?: boolean;
208
171
  }) {
209
- return (
210
- <DropdownMenuPrimitive.SubTrigger
211
- data-slot="dropdown-menu-sub-trigger"
212
- data-inset={inset}
213
- className={cn(
214
- "focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[inset]:pl-8",
215
- className
216
- )}
217
- {...props}
218
- >
219
- {children}
220
- <ChevronRightIcon className="ml-auto size-4" />
221
- </DropdownMenuPrimitive.SubTrigger>
222
- )
172
+ return (
173
+ <DropdownMenuPrimitive.SubTrigger
174
+ data-slot="dropdown-menu-sub-trigger"
175
+ data-inset={inset}
176
+ className={cn(
177
+ 'focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[inset]:pl-8',
178
+ className,
179
+ )}
180
+ {...props}
181
+ >
182
+ {children}
183
+ <ChevronRightIcon className="ml-auto size-4" />
184
+ </DropdownMenuPrimitive.SubTrigger>
185
+ );
223
186
  }
224
187
 
225
188
  function DropdownMenuSubContent({
226
- className,
227
- ...props
189
+ className,
190
+ ...props
228
191
  }: React.ComponentProps<typeof DropdownMenuPrimitive.SubContent>) {
229
- return (
230
- <DropdownMenuPrimitive.SubContent
231
- data-slot="dropdown-menu-sub-content"
232
- className={cn(
233
- "bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 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 z-50 min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-lg",
234
- className
235
- )}
236
- {...props}
237
- />
238
- )
192
+ return (
193
+ <DropdownMenuPrimitive.SubContent
194
+ data-slot="dropdown-menu-sub-content"
195
+ className={cn(
196
+ 'bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 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 z-50 min-w-[8rem] overflow-hidden rounded-md border p-1 shadow-lg',
197
+ className,
198
+ )}
199
+ {...props}
200
+ />
201
+ );
239
202
  }
240
203
 
241
204
  export {
242
- DropdownMenu,
243
- DropdownMenuPortal,
244
- DropdownMenuTrigger,
245
- DropdownMenuContent,
246
- DropdownMenuGroup,
247
- DropdownMenuLabel,
248
- DropdownMenuItem,
249
- DropdownMenuCheckboxItem,
250
- DropdownMenuRadioGroup,
251
- DropdownMenuRadioItem,
252
- DropdownMenuSeparator,
253
- DropdownMenuShortcut,
254
- DropdownMenuSub,
255
- DropdownMenuSubTrigger,
256
- DropdownMenuSubContent,
257
- }
205
+ DropdownMenu,
206
+ DropdownMenuCheckboxItem,
207
+ DropdownMenuContent,
208
+ DropdownMenuGroup,
209
+ DropdownMenuItem,
210
+ DropdownMenuLabel,
211
+ DropdownMenuPortal,
212
+ DropdownMenuRadioGroup,
213
+ DropdownMenuRadioItem,
214
+ DropdownMenuSeparator,
215
+ DropdownMenuShortcut,
216
+ DropdownMenuSub,
217
+ DropdownMenuSubContent,
218
+ DropdownMenuSubTrigger,
219
+ DropdownMenuTrigger,
220
+ };