@akira-io/ui 1.1.0 → 1.2.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 (68) hide show
  1. package/dist/blocks.d.ts +27 -27
  2. package/dist/blocks.js +79 -66
  3. package/dist/blocks.js.map +1 -1
  4. package/dist/{chunk-SA5LM2GD.js → chunk-2HLBBU3O.js} +44 -20
  5. package/dist/chunk-2HLBBU3O.js.map +1 -0
  6. package/dist/{chunk-MNGNBEYN.js → chunk-3HKIYFWI.js} +263 -166
  7. package/dist/chunk-3HKIYFWI.js.map +1 -0
  8. package/dist/{chunk-UUTXPPRN.js → chunk-DW42Z75X.js} +147 -90
  9. package/dist/chunk-DW42Z75X.js.map +1 -0
  10. package/dist/{chunk-DSD7MVLL.js → chunk-I5UZAJB4.js} +13 -9
  11. package/dist/chunk-I5UZAJB4.js.map +1 -0
  12. package/dist/{chunk-JAHTUAQL.js → chunk-MCMBS2SB.js} +6 -5
  13. package/dist/chunk-MCMBS2SB.js.map +1 -0
  14. package/dist/{chunk-YOVY3KT6.js → chunk-NGMG2UWX.js} +3 -3
  15. package/dist/{chunk-YOVY3KT6.js.map → chunk-NGMG2UWX.js.map} +1 -1
  16. package/dist/{chunk-6QM5BA7B.js → chunk-O5DZTX7D.js} +40 -23
  17. package/dist/chunk-O5DZTX7D.js.map +1 -0
  18. package/dist/{chunk-5AJFQ6C4.js → chunk-QNF4LJVT.js} +2 -2
  19. package/dist/chunk-QNF4LJVT.js.map +1 -0
  20. package/dist/{chunk-LKSM3WLK.js → chunk-SBLZ6T3D.js} +6 -5
  21. package/dist/chunk-SBLZ6T3D.js.map +1 -0
  22. package/dist/{chunk-KYWA5UYN.js → chunk-SH5QZCOW.js} +46 -28
  23. package/dist/chunk-SH5QZCOW.js.map +1 -0
  24. package/dist/chunk-UTSTTTH5.js +48 -0
  25. package/dist/chunk-UTSTTTH5.js.map +1 -0
  26. package/dist/code.d.ts +5 -2
  27. package/dist/code.js +52 -53
  28. package/dist/code.js.map +1 -1
  29. package/dist/{context-VgHq4U98.d.ts → context-OwSoVEri.d.ts} +55 -27
  30. package/dist/editor.d.ts +8 -6
  31. package/dist/editor.js +31 -18
  32. package/dist/editor.js.map +1 -1
  33. package/dist/field-DWm5NXeV.d.ts +39 -0
  34. package/dist/index.d.ts +230 -238
  35. package/dist/index.js +451 -337
  36. package/dist/index.js.map +1 -1
  37. package/dist/inertia.d.ts +1 -1
  38. package/dist/inertia.js +6 -7
  39. package/dist/inertia.js.map +1 -1
  40. package/dist/{button-B6wQRe7p.d.ts → input-Dxnsxi-f.d.ts} +6 -2
  41. package/dist/{json-viewer-BTHBACj9.d.ts → json-viewer-BARA2RCW.d.ts} +3 -2
  42. package/dist/{language-Dgjr9bm3.d.ts → language-Cv_N_53L.d.ts} +5 -2
  43. package/dist/locales/pt.d.ts +9 -9
  44. package/dist/locales/pt.js +7 -1
  45. package/dist/locales/pt.js.map +1 -1
  46. package/dist/shells.d.ts +6 -7
  47. package/dist/shells.js +9 -9
  48. package/dist/shells.js.map +1 -1
  49. package/dist/sidebar-Bp6Q46j-.d.ts +80 -0
  50. package/dist/{types-CT0rBsFc.d.ts → types-B-eGPoFD.d.ts} +3 -2
  51. package/dist/{types-B4QS3h5p.d.ts → types-cmBL8zOc.d.ts} +4 -1
  52. package/package.json +3 -3
  53. package/dist/chunk-5AJFQ6C4.js.map +0 -1
  54. package/dist/chunk-6QM5BA7B.js.map +0 -1
  55. package/dist/chunk-6X4TKSF6.js +0 -21
  56. package/dist/chunk-6X4TKSF6.js.map +0 -1
  57. package/dist/chunk-DSD7MVLL.js.map +0 -1
  58. package/dist/chunk-JAHTUAQL.js.map +0 -1
  59. package/dist/chunk-KYWA5UYN.js.map +0 -1
  60. package/dist/chunk-LKSM3WLK.js.map +0 -1
  61. package/dist/chunk-MNGNBEYN.js.map +0 -1
  62. package/dist/chunk-SA5LM2GD.js.map +0 -1
  63. package/dist/chunk-UUEWFCKT.js +0 -28
  64. package/dist/chunk-UUEWFCKT.js.map +0 -1
  65. package/dist/chunk-UUTXPPRN.js.map +0 -1
  66. package/dist/input-4uxAHW6y.d.ts +0 -5
  67. package/dist/password-input-r39y2pCT.d.ts +0 -50
  68. package/dist/sidebar-BhOIlSjt.d.ts +0 -80
@@ -1,6 +1,5 @@
1
- import { Separator } from './chunk-UUEWFCKT.js';
2
- import { Input } from './chunk-6X4TKSF6.js';
3
- import { cn, menuSurface, focusRing, floatingSurface, Button } from './chunk-DSD7MVLL.js';
1
+ import { Input, Separator } from './chunk-UTSTTTH5.js';
2
+ import { cn, menuSurface, focusRing, floatingSurface, Button } from './chunk-I5UZAJB4.js';
4
3
  import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
5
4
  import { CheckIcon, CircleIcon, ChevronRightIcon, ChevronRight, MoreHorizontal, XIcon, PanelLeftIcon } from 'lucide-react';
6
5
  import { jsx, jsxs } from 'react/jsx-runtime';
@@ -15,85 +14,73 @@ import { cva } from 'class-variance-authority';
15
14
 
16
15
  function DropdownMenu({
17
16
  modal = false,
17
+ slotName = "dropdown-menu",
18
18
  ...props
19
19
  }) {
20
20
  return /* @__PURE__ */ jsx(
21
21
  DropdownMenuPrimitive.Root,
22
22
  {
23
- "data-slot": "dropdown-menu",
24
23
  modal,
25
- ...props
24
+ ...props,
25
+ "data-slot": slotName
26
26
  }
27
27
  );
28
28
  }
29
29
  function DropdownMenuPortal({
30
+ slotName = "dropdown-menu-portal",
30
31
  ...props
31
32
  }) {
32
- return /* @__PURE__ */ jsx(
33
- DropdownMenuPrimitive.Portal,
34
- {
35
- "data-slot": "dropdown-menu-portal",
36
- ...props
37
- }
38
- );
33
+ return /* @__PURE__ */ jsx(DropdownMenuPrimitive.Portal, { ...props, "data-slot": slotName });
39
34
  }
40
35
  function DropdownMenuTrigger({
36
+ slotName = "dropdown-menu-trigger",
41
37
  ...props
42
38
  }) {
43
- return /* @__PURE__ */ jsx(
44
- DropdownMenuPrimitive.Trigger,
45
- {
46
- "data-slot": "dropdown-menu-trigger",
47
- ...props
48
- }
49
- );
39
+ return /* @__PURE__ */ jsx(DropdownMenuPrimitive.Trigger, { ...props, "data-slot": slotName });
50
40
  }
51
41
  function DropdownMenuContent({
52
42
  className,
53
43
  sideOffset = 4,
44
+ slotName = "dropdown-menu-content",
54
45
  ...props
55
46
  }) {
56
47
  return /* @__PURE__ */ jsx(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx(
57
48
  DropdownMenuPrimitive.Content,
58
49
  {
59
- "data-slot": "dropdown-menu-content",
60
50
  sideOffset,
61
51
  className: cn(
62
52
  `${menuSurface} 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 p-1.5 z-50 min-w-[8rem] overflow-hidden`,
63
53
  className
64
54
  ),
65
- ...props
55
+ ...props,
56
+ "data-slot": slotName
66
57
  }
67
58
  ) });
68
59
  }
69
60
  function DropdownMenuGroup({
61
+ slotName = "dropdown-menu-group",
70
62
  ...props
71
63
  }) {
72
- return /* @__PURE__ */ jsx(
73
- DropdownMenuPrimitive.Group,
74
- {
75
- "data-slot": "dropdown-menu-group",
76
- ...props
77
- }
78
- );
64
+ return /* @__PURE__ */ jsx(DropdownMenuPrimitive.Group, { ...props, "data-slot": slotName });
79
65
  }
80
66
  function DropdownMenuItem({
81
67
  className,
82
68
  inset,
83
69
  variant = "default",
70
+ slotName = "dropdown-menu-item",
84
71
  ...props
85
72
  }) {
86
73
  return /* @__PURE__ */ jsx(
87
74
  DropdownMenuPrimitive.Item,
88
75
  {
89
- "data-slot": "dropdown-menu-item",
90
76
  "data-inset": inset,
91
77
  "data-variant": variant,
92
78
  className: cn(
93
79
  "font-medium gap-2 rounded-xl px-2 py-2 text-sm data-[inset]:pl-8 [&_svg:not([class*='size-'])]:size-5 focus:font-semibold relative flex cursor-default items-center outline-hidden transition-all select-none focus:bg-primary/10 focus:text-primary data-[disabled]:pointer-events-none data-[disabled]:opacity-50 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/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='text-'])]:text-muted-foreground data-[variant=destructive]:*:[svg]:!text-destructive",
94
80
  className
95
81
  ),
96
- ...props
82
+ ...props,
83
+ "data-slot": slotName
97
84
  }
98
85
  );
99
86
  }
@@ -101,18 +88,19 @@ function DropdownMenuCheckboxItem({
101
88
  className,
102
89
  children,
103
90
  checked,
91
+ slotName = "dropdown-menu-checkbox-item",
104
92
  ...props
105
93
  }) {
106
94
  return /* @__PURE__ */ jsxs(
107
95
  DropdownMenuPrimitive.CheckboxItem,
108
96
  {
109
- "data-slot": "dropdown-menu-checkbox-item",
110
97
  className: cn(
111
98
  "gap-2 py-1.5 pr-2 pl-8 text-sm [&_svg:not([class*='size-'])]:size-4 rounded-xl relative flex cursor-default items-center outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0",
112
99
  className
113
100
  ),
114
101
  checked,
115
102
  ...props,
103
+ "data-slot": slotName,
116
104
  children: [
117
105
  /* @__PURE__ */ jsx("span", { className: "left-2 size-3.5 pointer-events-none absolute flex items-center justify-center", children: /* @__PURE__ */ jsx(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx(CheckIcon, { className: "size-4" }) }) }),
118
106
  children
@@ -121,30 +109,26 @@ function DropdownMenuCheckboxItem({
121
109
  );
122
110
  }
123
111
  function DropdownMenuRadioGroup({
112
+ slotName = "dropdown-menu-radio-group",
124
113
  ...props
125
114
  }) {
126
- return /* @__PURE__ */ jsx(
127
- DropdownMenuPrimitive.RadioGroup,
128
- {
129
- "data-slot": "dropdown-menu-radio-group",
130
- ...props
131
- }
132
- );
115
+ return /* @__PURE__ */ jsx(DropdownMenuPrimitive.RadioGroup, { ...props, "data-slot": slotName });
133
116
  }
134
117
  function DropdownMenuRadioItem({
135
118
  className,
136
119
  children,
120
+ slotName = "dropdown-menu-radio-item",
137
121
  ...props
138
122
  }) {
139
123
  return /* @__PURE__ */ jsxs(
140
124
  DropdownMenuPrimitive.RadioItem,
141
125
  {
142
- "data-slot": "dropdown-menu-radio-item",
143
126
  className: cn(
144
127
  "gap-2 py-1.5 pr-2 pl-8 text-sm [&_svg:not([class*='size-'])]:size-4 rounded-xl relative flex cursor-default items-center outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0",
145
128
  className
146
129
  ),
147
130
  ...props,
131
+ "data-slot": slotName,
148
132
  children: [
149
133
  /* @__PURE__ */ jsx("span", { className: "left-2 size-3.5 pointer-events-none absolute flex items-center justify-center", children: /* @__PURE__ */ jsx(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx(CircleIcon, { className: "size-2 fill-current" }) }) }),
150
134
  children
@@ -155,71 +139,76 @@ function DropdownMenuRadioItem({
155
139
  function DropdownMenuLabel({
156
140
  className,
157
141
  inset,
142
+ slotName = "dropdown-menu-label",
158
143
  ...props
159
144
  }) {
160
145
  return /* @__PURE__ */ jsx(
161
146
  DropdownMenuPrimitive.Label,
162
147
  {
163
- "data-slot": "dropdown-menu-label",
164
148
  "data-inset": inset,
165
149
  className: cn(
166
150
  "px-2 py-2 text-xs font-medium tracking-wider data-[inset]:pl-8 text-muted-foreground uppercase",
167
151
  className
168
152
  ),
169
- ...props
153
+ ...props,
154
+ "data-slot": slotName
170
155
  }
171
156
  );
172
157
  }
173
158
  function DropdownMenuSeparator({
174
159
  className,
160
+ slotName = "dropdown-menu-separator",
175
161
  ...props
176
162
  }) {
177
163
  return /* @__PURE__ */ jsx(
178
164
  DropdownMenuPrimitive.Separator,
179
165
  {
180
- "data-slot": "dropdown-menu-separator",
181
166
  className: cn("-mx-1 my-1 h-px bg-border", className),
182
- ...props
167
+ ...props,
168
+ "data-slot": slotName
183
169
  }
184
170
  );
185
171
  }
186
172
  function DropdownMenuShortcut({
187
173
  className,
174
+ slotName = "dropdown-menu-shortcut",
188
175
  ...props
189
176
  }) {
190
177
  return /* @__PURE__ */ jsx(
191
178
  "span",
192
179
  {
193
- "data-slot": "dropdown-menu-shortcut",
194
180
  className: cn(
195
181
  "text-xs tracking-widest ml-auto text-muted-foreground",
196
182
  className
197
183
  ),
198
- ...props
184
+ ...props,
185
+ "data-slot": slotName
199
186
  }
200
187
  );
201
188
  }
202
189
  function DropdownMenuSub({
190
+ slotName = "dropdown-menu-sub",
203
191
  ...props
204
192
  }) {
205
- return /* @__PURE__ */ jsx(DropdownMenuPrimitive.Sub, { "data-slot": "dropdown-menu-sub", ...props });
193
+ return /* @__PURE__ */ jsx(DropdownMenuPrimitive.Sub, { ...props, "data-slot": slotName });
206
194
  }
207
195
  function DropdownMenuSubTrigger({
208
196
  className,
209
197
  inset,
210
198
  children,
199
+ slotName = "dropdown-menu-sub-trigger",
211
200
  ...props
212
201
  }) {
213
202
  return /* @__PURE__ */ jsxs(
214
203
  DropdownMenuPrimitive.SubTrigger,
215
204
  {
216
- "data-slot": "dropdown-menu-sub-trigger",
217
205
  "data-inset": inset,
218
206
  className: cn(
219
207
  "font-medium rounded-xl px-2 py-2 text-sm data-[inset]:pl-8 focus:font-semibold data-[state=open]:font-semibold flex cursor-default items-center outline-hidden transition-all select-none focus:bg-primary/10 focus:text-primary data-[state=open]:bg-primary/10 data-[state=open]:text-primary",
220
208
  className
221
209
  ),
222
210
  ...props,
211
+ "data-slot": slotName,
223
212
  children: [
224
213
  children,
225
214
  /* @__PURE__ */ jsx(ChevronRightIcon, { className: "size-4 ml-auto" })
@@ -229,144 +218,165 @@ function DropdownMenuSubTrigger({
229
218
  }
230
219
  function DropdownMenuSubContent({
231
220
  className,
221
+ slotName = "dropdown-menu-sub-content",
232
222
  ...props
233
223
  }) {
234
224
  return /* @__PURE__ */ jsx(
235
225
  DropdownMenuPrimitive.SubContent,
236
226
  {
237
- "data-slot": "dropdown-menu-sub-content",
238
227
  className: cn(
239
228
  `${menuSurface} 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 p-1.5 z-50 min-w-[8rem] overflow-hidden`,
240
229
  className
241
230
  ),
242
- ...props
231
+ ...props,
232
+ "data-slot": slotName
243
233
  }
244
234
  );
245
235
  }
246
236
  function Avatar({
247
237
  className,
238
+ slotName = "avatar",
248
239
  ...props
249
240
  }) {
250
241
  return /* @__PURE__ */ jsx(
251
242
  AvatarPrimitive.Root,
252
243
  {
253
- "data-slot": "avatar",
254
244
  className: cn(
255
245
  "size-8 relative flex shrink-0 overflow-hidden rounded-full",
256
246
  className
257
247
  ),
258
- ...props
248
+ ...props,
249
+ "data-slot": slotName
259
250
  }
260
251
  );
261
252
  }
262
253
  function AvatarImage({
263
254
  className,
255
+ slotName = "avatar-image",
264
256
  ...props
265
257
  }) {
266
258
  return /* @__PURE__ */ jsx(
267
259
  AvatarPrimitive.Image,
268
260
  {
269
- "data-slot": "avatar-image",
270
261
  className: cn("aspect-square size-full", className),
271
- ...props
262
+ ...props,
263
+ "data-slot": slotName
272
264
  }
273
265
  );
274
266
  }
275
267
  function AvatarFallback({
276
268
  className,
269
+ slotName = "avatar-fallback",
277
270
  ...props
278
271
  }) {
279
272
  return /* @__PURE__ */ jsx(
280
273
  AvatarPrimitive.Fallback,
281
274
  {
282
- "data-slot": "avatar-fallback",
283
275
  className: cn(
284
276
  "flex size-full items-center justify-center rounded-full bg-muted",
285
277
  className
286
278
  ),
287
- ...props
279
+ ...props,
280
+ "data-slot": slotName
288
281
  }
289
282
  );
290
283
  }
291
- function Breadcrumb({ ...props }) {
292
- return /* @__PURE__ */ jsx("nav", { "aria-label": "breadcrumb", "data-slot": "breadcrumb", ...props });
284
+ function Breadcrumb({
285
+ slotName = "breadcrumb",
286
+ ...props
287
+ }) {
288
+ return /* @__PURE__ */ jsx("nav", { "aria-label": "breadcrumb", ...props, "data-slot": slotName });
293
289
  }
294
- function BreadcrumbList({ className, ...props }) {
290
+ function BreadcrumbList({
291
+ className,
292
+ slotName = "breadcrumb-list",
293
+ ...props
294
+ }) {
295
295
  return /* @__PURE__ */ jsx(
296
296
  "ol",
297
297
  {
298
- "data-slot": "breadcrumb-list",
299
298
  className: cn(
300
299
  "gap-1.5 text-sm sm:gap-2.5 flex flex-wrap items-center break-words text-muted-foreground",
301
300
  className
302
301
  ),
303
- ...props
302
+ ...props,
303
+ "data-slot": slotName
304
304
  }
305
305
  );
306
306
  }
307
- function BreadcrumbItem({ className, ...props }) {
307
+ function BreadcrumbItem({
308
+ className,
309
+ slotName = "breadcrumb-item",
310
+ ...props
311
+ }) {
308
312
  return /* @__PURE__ */ jsx(
309
313
  "li",
310
314
  {
311
- "data-slot": "breadcrumb-item",
312
315
  className: cn("gap-1.5 inline-flex items-center", className),
313
- ...props
316
+ ...props,
317
+ "data-slot": slotName
314
318
  }
315
319
  );
316
320
  }
317
321
  function BreadcrumbLink({
318
322
  asChild,
319
323
  className,
324
+ slotName = "breadcrumb-link",
320
325
  ...props
321
326
  }) {
322
327
  const Comp = asChild ? Slot : "a";
323
328
  return /* @__PURE__ */ jsx(
324
329
  Comp,
325
330
  {
326
- "data-slot": "breadcrumb-link",
327
331
  className: cn("transition-colors hover:text-foreground", className),
328
- ...props
332
+ ...props,
333
+ "data-slot": slotName
329
334
  }
330
335
  );
331
336
  }
332
- function BreadcrumbPage({ className, ...props }) {
337
+ function BreadcrumbPage({
338
+ className,
339
+ slotName = "breadcrumb-page",
340
+ ...props
341
+ }) {
333
342
  return /* @__PURE__ */ jsx(
334
343
  "span",
335
344
  {
336
- "data-slot": "breadcrumb-page",
337
345
  role: "link",
338
346
  "aria-disabled": "true",
339
347
  "aria-current": "page",
340
348
  className: cn("font-semibold text-foreground", className),
341
- ...props
349
+ ...props,
350
+ "data-slot": slotName
342
351
  }
343
352
  );
344
353
  }
345
354
  function BreadcrumbSeparator({
346
355
  children,
347
356
  className,
357
+ slotName = "breadcrumb-separator",
348
358
  ...props
349
359
  }) {
350
360
  return /* @__PURE__ */ jsx(
351
361
  "li",
352
362
  {
353
- "data-slot": "breadcrumb-separator",
354
363
  role: "presentation",
355
364
  "aria-hidden": "true",
356
365
  className: cn("[&>svg]:size-3.5", className),
357
366
  ...props,
367
+ "data-slot": slotName,
358
368
  children: children ?? /* @__PURE__ */ jsx(ChevronRight, {})
359
369
  }
360
370
  );
361
371
  }
362
372
  function BreadcrumbEllipsis({
363
373
  className,
374
+ slotName = "breadcrumb-ellipsis",
364
375
  ...props
365
376
  }) {
366
377
  return /* @__PURE__ */ jsxs(
367
378
  "span",
368
379
  {
369
- "data-slot": "breadcrumb-ellipsis",
370
380
  role: "presentation",
371
381
  "aria-hidden": "true",
372
382
  className: cn(
@@ -374,6 +384,7 @@ function BreadcrumbEllipsis({
374
384
  className
375
385
  ),
376
386
  ...props,
387
+ "data-slot": slotName,
377
388
  children: [
378
389
  /* @__PURE__ */ jsx(MoreHorizontal, { className: "size-4" }),
379
390
  /* @__PURE__ */ jsx("span", { className: "sr-only", children: "More" })
@@ -382,29 +393,32 @@ function BreadcrumbEllipsis({
382
393
  );
383
394
  }
384
395
  function Collapsible({
396
+ slotName = "collapsible",
385
397
  ...props
386
398
  }) {
387
- return /* @__PURE__ */ jsx(CollapsiblePrimitive.Root, { "data-slot": "collapsible", ...props });
399
+ return /* @__PURE__ */ jsx(CollapsiblePrimitive.Root, { ...props, "data-slot": slotName });
388
400
  }
389
401
  function CollapsibleTrigger2({
402
+ slotName = "collapsible-trigger",
390
403
  ...props
391
404
  }) {
392
405
  return /* @__PURE__ */ jsx(
393
406
  CollapsiblePrimitive.CollapsibleTrigger,
394
407
  {
395
- "data-slot": "collapsible-trigger",
396
- ...props
408
+ ...props,
409
+ "data-slot": slotName
397
410
  }
398
411
  );
399
412
  }
400
413
  function CollapsibleContent2({
414
+ slotName = "collapsible-content",
401
415
  ...props
402
416
  }) {
403
417
  return /* @__PURE__ */ jsx(
404
418
  CollapsiblePrimitive.CollapsibleContent,
405
419
  {
406
- "data-slot": "collapsible-content",
407
- ...props
420
+ ...props,
421
+ "data-slot": slotName
408
422
  }
409
423
  );
410
424
  }
@@ -417,6 +431,7 @@ function Icon({ iconNode: IconComponent, className }) {
417
431
  function Sheet({
418
432
  preserveScroll = false,
419
433
  onOpenChange: onOpenChangeProp,
434
+ slotName = "sheet",
420
435
  ...props
421
436
  }) {
422
437
  const scrollPosition = React2.useRef(0);
@@ -435,40 +450,44 @@ function Sheet({
435
450
  return /* @__PURE__ */ jsx(
436
451
  SheetPrimitive.Root,
437
452
  {
438
- "data-slot": "sheet",
439
453
  ...props,
440
- onOpenChange
454
+ onOpenChange,
455
+ "data-slot": slotName
441
456
  }
442
457
  );
443
458
  }
444
459
  function SheetTrigger({
460
+ slotName = "sheet-trigger",
445
461
  ...props
446
462
  }) {
447
- return /* @__PURE__ */ jsx(SheetPrimitive.Trigger, { "data-slot": "sheet-trigger", ...props });
463
+ return /* @__PURE__ */ jsx(SheetPrimitive.Trigger, { ...props, "data-slot": slotName });
448
464
  }
449
465
  function SheetClose({
466
+ slotName = "sheet-close",
450
467
  ...props
451
468
  }) {
452
- return /* @__PURE__ */ jsx(SheetPrimitive.Close, { "data-slot": "sheet-close", ...props });
469
+ return /* @__PURE__ */ jsx(SheetPrimitive.Close, { ...props, "data-slot": slotName });
453
470
  }
454
471
  function SheetPortal({
472
+ slotName = "sheet-portal",
455
473
  ...props
456
474
  }) {
457
- return /* @__PURE__ */ jsx(SheetPrimitive.Portal, { "data-slot": "sheet-portal", ...props });
475
+ return /* @__PURE__ */ jsx(SheetPrimitive.Portal, { ...props, "data-slot": slotName });
458
476
  }
459
477
  function SheetOverlay({
460
478
  className,
479
+ slotName = "sheet-overlay",
461
480
  ...props
462
481
  }) {
463
482
  return /* @__PURE__ */ jsx(
464
483
  SheetPrimitive.Overlay,
465
484
  {
466
- "data-slot": "sheet-overlay",
467
485
  className: cn(
468
486
  "data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 inset-0 bg-black/60 backdrop-blur-sm fixed z-50",
469
487
  className
470
488
  ),
471
- ...props
489
+ ...props,
490
+ "data-slot": slotName
472
491
  }
473
492
  );
474
493
  }
@@ -476,6 +495,7 @@ function SheetContent({
476
495
  className,
477
496
  children,
478
497
  side = "right",
498
+ slotName = "sheet-content",
479
499
  ...props
480
500
  }) {
481
501
  return /* @__PURE__ */ jsxs(SheetPortal, { children: [
@@ -483,7 +503,6 @@ function SheetContent({
483
503
  /* @__PURE__ */ jsxs(
484
504
  SheetPrimitive.Content,
485
505
  {
486
- "data-slot": "sheet-content",
487
506
  className: cn(
488
507
  `${floatingSurface} data-[state=open]:animate-in data-[state=closed]:animate-out gap-4 ease-in-out fixed z-50 flex flex-col transition data-[state=closed]:duration-300 data-[state=open]:duration-500`,
489
508
  side === "right" && "data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right inset-y-0 right-0 sm:max-w-sm rounded-l-3xl h-full w-3/4 border-l border-border",
@@ -493,6 +512,7 @@ function SheetContent({
493
512
  className
494
513
  ),
495
514
  ...props,
515
+ "data-slot": slotName,
496
516
  children: [
497
517
  children,
498
518
  /* @__PURE__ */ jsxs(
@@ -513,101 +533,119 @@ function SheetContent({
513
533
  )
514
534
  ] });
515
535
  }
516
- function SheetHeader({ className, ...props }) {
536
+ function SheetHeader({
537
+ className,
538
+ slotName = "sheet-header",
539
+ ...props
540
+ }) {
517
541
  return /* @__PURE__ */ jsx(
518
542
  "div",
519
543
  {
520
- "data-slot": "sheet-header",
521
544
  className: cn("gap-1.5 p-4 flex flex-col", className),
522
- ...props
545
+ ...props,
546
+ "data-slot": slotName
523
547
  }
524
548
  );
525
549
  }
526
- function SheetFooter({ className, ...props }) {
550
+ function SheetFooter({
551
+ className,
552
+ slotName = "sheet-footer",
553
+ ...props
554
+ }) {
527
555
  return /* @__PURE__ */ jsx(
528
556
  "div",
529
557
  {
530
- "data-slot": "sheet-footer",
531
558
  className: cn("gap-2 p-4 mt-auto flex flex-col", className),
532
- ...props
559
+ ...props,
560
+ "data-slot": slotName
533
561
  }
534
562
  );
535
563
  }
536
564
  function SheetTitle({
537
565
  className,
566
+ slotName = "sheet-title",
538
567
  ...props
539
568
  }) {
540
569
  return /* @__PURE__ */ jsx(
541
570
  SheetPrimitive.Title,
542
571
  {
543
- "data-slot": "sheet-title",
544
572
  className: cn("font-semibold text-foreground", className),
545
- ...props
573
+ ...props,
574
+ "data-slot": slotName
546
575
  }
547
576
  );
548
577
  }
549
578
  function SheetDescription({
550
579
  className,
580
+ slotName = "sheet-description",
551
581
  ...props
552
582
  }) {
553
583
  return /* @__PURE__ */ jsx(
554
584
  SheetPrimitive.Description,
555
585
  {
556
- "data-slot": "sheet-description",
557
586
  className: cn("text-sm text-muted-foreground", className),
558
- ...props
587
+ ...props,
588
+ "data-slot": slotName
559
589
  }
560
590
  );
561
591
  }
562
- function Skeleton({ className, ...props }) {
592
+ function Skeleton({
593
+ className,
594
+ slotName = "skeleton",
595
+ ...props
596
+ }) {
563
597
  return /* @__PURE__ */ jsx(
564
598
  "div",
565
599
  {
566
- "data-slot": "skeleton",
567
600
  className: cn("animate-pulse rounded-xl bg-muted", className),
568
- ...props
601
+ ...props,
602
+ "data-slot": slotName
569
603
  }
570
604
  );
571
605
  }
572
606
  function TooltipProvider({
573
607
  delayDuration = 0,
608
+ slotName = "tooltip-provider",
574
609
  ...props
575
610
  }) {
576
611
  return /* @__PURE__ */ jsx(
577
612
  TooltipPrimitive.Provider,
578
613
  {
579
- "data-slot": "tooltip-provider",
580
614
  delayDuration,
581
- ...props
615
+ ...props,
616
+ "data-slot": slotName
582
617
  }
583
618
  );
584
619
  }
585
620
  function Tooltip({
621
+ slotName = "tooltip",
586
622
  ...props
587
623
  }) {
588
- return /* @__PURE__ */ jsx(TooltipProvider, { children: /* @__PURE__ */ jsx(TooltipPrimitive.Root, { "data-slot": "tooltip", ...props }) });
624
+ return /* @__PURE__ */ jsx(TooltipProvider, { children: /* @__PURE__ */ jsx(TooltipPrimitive.Root, { ...props, "data-slot": slotName }) });
589
625
  }
590
626
  function TooltipTrigger({
627
+ slotName = "tooltip-trigger",
591
628
  ...props
592
629
  }) {
593
- return /* @__PURE__ */ jsx(TooltipPrimitive.Trigger, { "data-slot": "tooltip-trigger", ...props });
630
+ return /* @__PURE__ */ jsx(TooltipPrimitive.Trigger, { ...props, "data-slot": slotName });
594
631
  }
595
632
  function TooltipContent({
596
633
  className,
597
634
  sideOffset = 4,
598
635
  children,
636
+ slotName = "tooltip-content",
599
637
  ...props
600
638
  }) {
601
639
  return /* @__PURE__ */ jsx(TooltipPrimitive.Portal, { children: /* @__PURE__ */ jsxs(
602
640
  TooltipPrimitive.Content,
603
641
  {
604
- "data-slot": "tooltip-content",
605
642
  sideOffset,
606
643
  className: cn(
607
644
  "animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-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 max-w-sm px-3 py-1.5 text-xs shadow-2xl rounded-xl z-50 bg-primary text-primary-foreground",
608
645
  className
609
646
  ),
610
647
  ...props,
648
+ "data-slot": slotName,
611
649
  children: [
612
650
  children,
613
651
  /* @__PURE__ */ jsx(TooltipPrimitive.Arrow, { className: "size-2.5 z-50 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px] bg-primary fill-primary" })
@@ -652,6 +690,7 @@ function SidebarProvider({
652
690
  className,
653
691
  style,
654
692
  children,
693
+ slotName = "sidebar-wrapper",
655
694
  ...props
656
695
  }) {
657
696
  const isMobile = useIsMobile();
@@ -707,7 +746,6 @@ function SidebarProvider({
707
746
  return /* @__PURE__ */ jsx(SidebarContext.Provider, { value: contextValue, children: /* @__PURE__ */ jsx(TooltipProvider, { delayDuration: 0, children: /* @__PURE__ */ jsx(
708
747
  "div",
709
748
  {
710
- "data-slot": "sidebar-wrapper",
711
749
  style: {
712
750
  "--sidebar-width": SIDEBAR_WIDTH,
713
751
  "--sidebar-width-icon": SIDEBAR_WIDTH_ICON,
@@ -718,6 +756,7 @@ function SidebarProvider({
718
756
  className
719
757
  ),
720
758
  ...props,
759
+ "data-slot": slotName,
721
760
  children
722
761
  }
723
762
  ) }) });
@@ -728,6 +767,7 @@ function Sidebar({
728
767
  collapsible = "offcanvas",
729
768
  className,
730
769
  children,
770
+ slotName = "sidebar",
731
771
  ...props
732
772
  }) {
733
773
  const { isMobile, state, openMobile, setOpenMobile } = useSidebar();
@@ -735,12 +775,12 @@ function Sidebar({
735
775
  return /* @__PURE__ */ jsx(
736
776
  "div",
737
777
  {
738
- "data-slot": "sidebar",
739
778
  className: cn(
740
779
  "flex h-full w-(--sidebar-width) flex-col bg-sidebar text-sidebar-foreground",
741
780
  className
742
781
  ),
743
782
  ...props,
783
+ "data-slot": slotName,
744
784
  children
745
785
  }
746
786
  );
@@ -762,13 +802,13 @@ function Sidebar({
762
802
  SheetContent,
763
803
  {
764
804
  "data-sidebar": "sidebar",
765
- "data-slot": "sidebar",
766
805
  "data-mobile": "true",
767
806
  className: "p-0 w-(--sidebar-width) bg-sidebar text-sidebar-foreground [&>button]:hidden",
768
807
  style: {
769
808
  "--sidebar-width": SIDEBAR_WIDTH_MOBILE
770
809
  },
771
810
  side,
811
+ slotName,
772
812
  children: /* @__PURE__ */ jsx("div", { className: "flex h-full w-full flex-col", children })
773
813
  }
774
814
  )
@@ -784,7 +824,7 @@ function Sidebar({
784
824
  "data-collapsible": state === "collapsed" ? collapsible : "",
785
825
  "data-variant": variant,
786
826
  "data-side": side,
787
- "data-slot": "sidebar",
827
+ "data-slot": slotName,
788
828
  children: [
789
829
  /* @__PURE__ */ jsx(
790
830
  "div",
@@ -825,6 +865,7 @@ function Sidebar({
825
865
  function SidebarTrigger({
826
866
  className,
827
867
  onClick,
868
+ slotName = "sidebar-trigger",
828
869
  ...props
829
870
  }) {
830
871
  const { toggleSidebar } = useSidebar();
@@ -832,7 +873,6 @@ function SidebarTrigger({
832
873
  Button,
833
874
  {
834
875
  "data-sidebar": "trigger",
835
- "data-slot": "sidebar-trigger",
836
876
  variant: "ghost",
837
877
  size: "icon",
838
878
  className: cn("h-7 w-7", className),
@@ -841,6 +881,7 @@ function SidebarTrigger({
841
881
  toggleSidebar();
842
882
  },
843
883
  ...props,
884
+ slotName,
844
885
  children: [
845
886
  /* @__PURE__ */ jsx(PanelLeftIcon, {}),
846
887
  /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Toggle Sidebar" })
@@ -848,13 +889,16 @@ function SidebarTrigger({
848
889
  }
849
890
  );
850
891
  }
851
- function SidebarRail({ className, ...props }) {
892
+ function SidebarRail({
893
+ className,
894
+ slotName = "sidebar-rail",
895
+ ...props
896
+ }) {
852
897
  const { toggleSidebar } = useSidebar();
853
898
  return /* @__PURE__ */ jsx(
854
899
  "button",
855
900
  {
856
901
  "data-sidebar": "rail",
857
- "data-slot": "sidebar-rail",
858
902
  "aria-label": "Toggle Sidebar",
859
903
  tabIndex: -1,
860
904
  onClick: toggleSidebar,
@@ -868,182 +912,225 @@ function SidebarRail({ className, ...props }) {
868
912
  "[[data-side=right][data-collapsible=offcanvas]_&]:-left-2",
869
913
  className
870
914
  ),
871
- ...props
915
+ ...props,
916
+ "data-slot": slotName
872
917
  }
873
918
  );
874
919
  }
875
- function SidebarInset({ className, ...props }) {
920
+ function SidebarInset({
921
+ className,
922
+ slotName = "sidebar-inset",
923
+ ...props
924
+ }) {
876
925
  return /* @__PURE__ */ jsx(
877
926
  "main",
878
927
  {
879
- "data-slot": "sidebar-inset",
880
928
  className: cn(
881
929
  "relative flex min-h-svh max-w-full flex-1 flex-col bg-background",
882
930
  "peer-data-[variant=inset]:min-h-[calc(100svh-(--spacing(4)))] md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-0",
883
931
  className
884
932
  ),
885
- ...props
933
+ ...props,
934
+ "data-slot": slotName
886
935
  }
887
936
  );
888
937
  }
889
938
  function SidebarInput({
890
939
  className,
940
+ slotName = "sidebar-input",
891
941
  ...props
892
942
  }) {
893
943
  return /* @__PURE__ */ jsx(
894
944
  Input,
895
945
  {
896
- "data-slot": "sidebar-input",
897
946
  "data-sidebar": "input",
898
947
  className: cn("h-11 w-full bg-background shadow-none", className),
899
- ...props
948
+ ...props,
949
+ slotName
900
950
  }
901
951
  );
902
952
  }
903
- function SidebarHeader({ className, ...props }) {
953
+ function SidebarHeader({
954
+ className,
955
+ slotName = "sidebar-header",
956
+ ...props
957
+ }) {
904
958
  return /* @__PURE__ */ jsx(
905
959
  "div",
906
960
  {
907
- "data-slot": "sidebar-header",
908
961
  "data-sidebar": "header",
909
- className: cn("gap-2 p-2 flex flex-col", className),
910
- ...props
962
+ className: cn(
963
+ "gap-2 p-2 group-data-[collapsible=icon]:px-0 flex flex-col",
964
+ className
965
+ ),
966
+ ...props,
967
+ "data-slot": slotName
911
968
  }
912
969
  );
913
970
  }
914
- function SidebarFooter({ className, ...props }) {
971
+ function SidebarFooter({
972
+ className,
973
+ slotName = "sidebar-footer",
974
+ ...props
975
+ }) {
915
976
  return /* @__PURE__ */ jsx(
916
977
  "div",
917
978
  {
918
- "data-slot": "sidebar-footer",
919
979
  "data-sidebar": "footer",
920
- className: cn("gap-2 p-2 flex flex-col", className),
921
- ...props
980
+ className: cn(
981
+ "gap-2 p-2 group-data-[collapsible=icon]:px-0 flex flex-col",
982
+ className
983
+ ),
984
+ ...props,
985
+ "data-slot": slotName
922
986
  }
923
987
  );
924
988
  }
925
989
  function SidebarSeparator({
926
990
  className,
991
+ slotName = "sidebar-separator",
927
992
  ...props
928
993
  }) {
929
994
  return /* @__PURE__ */ jsx(
930
995
  Separator,
931
996
  {
932
- "data-slot": "sidebar-separator",
933
997
  "data-sidebar": "separator",
934
998
  className: cn("mx-2 w-auto bg-sidebar-border", className),
935
- ...props
999
+ ...props,
1000
+ slotName
936
1001
  }
937
1002
  );
938
1003
  }
939
- function SidebarContent({ className, ...props }) {
1004
+ function SidebarContent({
1005
+ className,
1006
+ slotName = "sidebar-content",
1007
+ ...props
1008
+ }) {
940
1009
  return /* @__PURE__ */ jsx(
941
1010
  "div",
942
1011
  {
943
- "data-slot": "sidebar-content",
944
1012
  "data-sidebar": "content",
945
1013
  className: cn(
946
1014
  "min-h-0 gap-2 flex flex-1 flex-col overflow-auto group-data-[collapsible=icon]:overflow-hidden",
947
1015
  className
948
1016
  ),
949
- ...props
1017
+ ...props,
1018
+ "data-slot": slotName
950
1019
  }
951
1020
  );
952
1021
  }
953
- function SidebarGroup({ className, ...props }) {
1022
+ function SidebarGroup({
1023
+ className,
1024
+ slotName = "sidebar-group",
1025
+ ...props
1026
+ }) {
954
1027
  return /* @__PURE__ */ jsx(
955
1028
  "div",
956
1029
  {
957
- "data-slot": "sidebar-group",
958
1030
  "data-sidebar": "group",
959
1031
  className: cn(
960
- "min-w-0 p-2 relative flex w-full flex-col",
1032
+ "min-w-0 p-2 group-data-[collapsible=icon]:px-0 relative flex w-full flex-col",
961
1033
  className
962
1034
  ),
963
- ...props
1035
+ ...props,
1036
+ "data-slot": slotName
964
1037
  }
965
1038
  );
966
1039
  }
967
1040
  function SidebarGroupLabel({
968
1041
  className,
969
1042
  asChild = false,
1043
+ slotName = "sidebar-group-label",
970
1044
  ...props
971
1045
  }) {
972
1046
  const Comp = asChild ? Slot : "div";
973
1047
  return /* @__PURE__ */ jsx(
974
1048
  Comp,
975
1049
  {
976
- "data-slot": "sidebar-group-label",
977
1050
  "data-sidebar": "group-label",
978
1051
  className: cn(
979
- "h-8 rounded-xl px-2 text-xs font-medium tracking-wider [&>svg]:size-4 flex shrink-0 items-center text-sidebar-foreground/70 uppercase ring-sidebar-ring outline-hidden transition-[margin,opacity] duration-200 ease-linear focus-visible:ring-[3px] focus-visible:ring-ring/50 [&>svg]:shrink-0",
1052
+ "h-8 rounded-xl px-2 text-xs font-medium tracking-wider [&>svg]:size-4 flex shrink-0 items-center text-sidebar-foreground/70 uppercase ring-sidebar-ring outline-hidden transition-[margin,opacity] duration-200 ease-linear focus-visible:outline-1 focus-visible:outline-offset-0 focus-visible:outline-ring focus-visible:outline-solid [&>svg]:shrink-0",
980
1053
  "group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:pointer-events-none group-data-[collapsible=icon]:opacity-0 group-data-[collapsible=icon]:select-none",
981
1054
  className
982
1055
  ),
983
- ...props
1056
+ ...props,
1057
+ "data-slot": slotName
984
1058
  }
985
1059
  );
986
1060
  }
987
1061
  function SidebarGroupAction({
988
1062
  className,
989
1063
  asChild = false,
1064
+ slotName = "sidebar-group-action",
990
1065
  ...props
991
1066
  }) {
992
1067
  const Comp = asChild ? Slot : "button";
993
1068
  return /* @__PURE__ */ jsx(
994
1069
  Comp,
995
1070
  {
996
- "data-slot": "sidebar-group-action",
997
1071
  "data-sidebar": "group-action",
998
1072
  className: cn(
999
- "top-3.5 right-3 w-5 p-0 [&>svg]:size-4 rounded-xl absolute flex aspect-square items-center justify-center text-sidebar-foreground ring-sidebar-ring outline-hidden transition-transform hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-[3px] focus-visible:ring-ring/50 [&>svg]:shrink-0",
1073
+ "top-3.5 right-3 w-5 p-0 [&>svg]:size-4 rounded-xl absolute flex aspect-square items-center justify-center text-sidebar-foreground ring-sidebar-ring outline-hidden transition-transform hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:outline-1 focus-visible:outline-offset-0 focus-visible:outline-ring focus-visible:outline-solid [&>svg]:shrink-0",
1000
1074
  // Increases the hit area of the button on mobile.
1001
1075
  "after:-inset-2 md:after:hidden after:absolute",
1002
1076
  "group-data-[collapsible=icon]:hidden",
1003
1077
  className
1004
1078
  ),
1005
- ...props
1079
+ ...props,
1080
+ "data-slot": slotName
1006
1081
  }
1007
1082
  );
1008
1083
  }
1009
1084
  function SidebarGroupContent({
1010
1085
  className,
1086
+ slotName = "sidebar-group-content",
1011
1087
  ...props
1012
1088
  }) {
1013
1089
  return /* @__PURE__ */ jsx(
1014
1090
  "div",
1015
1091
  {
1016
- "data-slot": "sidebar-group-content",
1017
1092
  "data-sidebar": "group-content",
1018
1093
  className: cn("text-sm w-full", className),
1019
- ...props
1094
+ ...props,
1095
+ "data-slot": slotName
1020
1096
  }
1021
1097
  );
1022
1098
  }
1023
- function SidebarMenu({ className, ...props }) {
1099
+ function SidebarMenu({
1100
+ className,
1101
+ slotName = "sidebar-menu",
1102
+ ...props
1103
+ }) {
1024
1104
  return /* @__PURE__ */ jsx(
1025
1105
  "ul",
1026
1106
  {
1027
- "data-slot": "sidebar-menu",
1028
1107
  "data-sidebar": "menu",
1029
- className: cn("min-w-0 gap-1 flex w-full flex-col", className),
1030
- ...props
1108
+ className: cn(
1109
+ "min-w-0 gap-1 flex w-full flex-col group-data-[collapsible=icon]:items-center",
1110
+ className
1111
+ ),
1112
+ ...props,
1113
+ "data-slot": slotName
1031
1114
  }
1032
1115
  );
1033
1116
  }
1034
- function SidebarMenuItem({ className, ...props }) {
1117
+ function SidebarMenuItem({
1118
+ className,
1119
+ slotName = "sidebar-menu-item",
1120
+ ...props
1121
+ }) {
1035
1122
  return /* @__PURE__ */ jsx(
1036
1123
  "li",
1037
1124
  {
1038
- "data-slot": "sidebar-menu-item",
1039
1125
  "data-sidebar": "menu-item",
1040
1126
  className: cn("group/menu-item relative", className),
1041
- ...props
1127
+ ...props,
1128
+ "data-slot": slotName
1042
1129
  }
1043
1130
  );
1044
1131
  }
1045
1132
  var sidebarMenuButtonVariants = cva(
1046
- "peer/menu-button flex w-full items-center gap-3 overflow-hidden rounded-xl p-2.5 text-left text-sm font-medium outline-hidden ring-sidebar-ring transition-all hover:bg-accent hover:text-accent-foreground focus-visible:ring-[3px] focus-visible:ring-ring/50 active:scale-[0.98] disabled:pointer-events-none disabled:opacity-50 group-has-data-[sidebar=menu-action]/menu-item:pr-8 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:bg-primary/10 data-[active=true]:font-semibold data-[active=true]:text-primary group-data-[collapsible=icon]:size-10! group-data-[collapsible=icon]:p-3! [&>span:last-child]:truncate [&>svg]:size-5 [&>svg]:shrink-0",
1133
+ "peer/menu-button flex w-full items-center gap-3 overflow-hidden rounded-xl p-2.5 text-left text-sm font-medium outline-hidden ring-sidebar-ring transition-all hover:bg-accent hover:text-accent-foreground focus-visible:outline-solid focus-visible:outline-1 focus-visible:outline-offset-0 focus-visible:outline-ring active:scale-[0.98] disabled:pointer-events-none disabled:opacity-50 group-has-data-[sidebar=menu-action]/menu-item:pr-8 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:bg-primary/10 data-[active=true]:font-semibold data-[active=true]:text-primary group-data-[collapsible=icon]:size-10! group-data-[collapsible=icon]:justify-center group-data-[collapsible=icon]:gap-0 group-data-[collapsible=icon]:p-2.5! [&>span:last-child]:truncate group-data-[collapsible=icon]:[&>span:last-child]:hidden [&>svg]:size-5 [&>svg]:shrink-0",
1047
1134
  {
1048
1135
  variants: {
1049
1136
  variant: {
@@ -1053,7 +1140,7 @@ var sidebarMenuButtonVariants = cva(
1053
1140
  size: {
1054
1141
  default: "h-11 text-sm",
1055
1142
  sm: "h-9 text-sm",
1056
- lg: "h-14 text-sm group-data-[collapsible=icon]:p-0!"
1143
+ lg: "h-14 text-sm"
1057
1144
  }
1058
1145
  },
1059
1146
  defaultVariants: {
@@ -1069,6 +1156,7 @@ function SidebarMenuButton({
1069
1156
  size = "default",
1070
1157
  tooltip,
1071
1158
  className,
1159
+ slotName = "sidebar-menu-button",
1072
1160
  ...props
1073
1161
  }) {
1074
1162
  const Comp = asChild ? Slot : "button";
@@ -1076,7 +1164,6 @@ function SidebarMenuButton({
1076
1164
  const button = /* @__PURE__ */ jsx(
1077
1165
  Comp,
1078
1166
  {
1079
- "data-slot": "sidebar-menu-button",
1080
1167
  "data-sidebar": "menu-button",
1081
1168
  "data-size": size,
1082
1169
  "data-active": isActive,
@@ -1084,7 +1171,8 @@ function SidebarMenuButton({
1084
1171
  sidebarMenuButtonVariants({ variant, size }),
1085
1172
  className
1086
1173
  ),
1087
- ...props
1174
+ ...props,
1175
+ "data-slot": slotName
1088
1176
  }
1089
1177
  );
1090
1178
  if (!tooltip) {
@@ -1112,16 +1200,16 @@ function SidebarMenuAction({
1112
1200
  className,
1113
1201
  asChild = false,
1114
1202
  showOnHover = false,
1203
+ slotName = "sidebar-menu-action",
1115
1204
  ...props
1116
1205
  }) {
1117
1206
  const Comp = asChild ? Slot : "button";
1118
1207
  return /* @__PURE__ */ jsx(
1119
1208
  Comp,
1120
1209
  {
1121
- "data-slot": "sidebar-menu-action",
1122
1210
  "data-sidebar": "menu-action",
1123
1211
  className: cn(
1124
- "top-1.5 right-1 w-5 p-0 [&>svg]:size-4 rounded-xl absolute flex aspect-square items-center justify-center text-sidebar-foreground ring-sidebar-ring outline-hidden transition-transform peer-hover/menu-button:text-sidebar-accent-foreground hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-[3px] focus-visible:ring-ring/50 [&>svg]:shrink-0",
1212
+ "top-1.5 right-1 w-5 p-0 [&>svg]:size-4 rounded-xl absolute flex aspect-square items-center justify-center text-sidebar-foreground ring-sidebar-ring outline-hidden transition-transform peer-hover/menu-button:text-sidebar-accent-foreground hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:outline-1 focus-visible:outline-offset-0 focus-visible:outline-ring focus-visible:outline-solid [&>svg]:shrink-0",
1125
1213
  // Increases the hit area of the button on mobile.
1126
1214
  "after:-inset-2 md:after:hidden after:absolute",
1127
1215
  "peer-data-[size=sm]/menu-button:top-1",
@@ -1131,18 +1219,19 @@ function SidebarMenuAction({
1131
1219
  showOnHover && "md:opacity-0 group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 peer-data-[active=true]/menu-button:text-sidebar-accent-foreground data-[state=open]:opacity-100",
1132
1220
  className
1133
1221
  ),
1134
- ...props
1222
+ ...props,
1223
+ "data-slot": slotName
1135
1224
  }
1136
1225
  );
1137
1226
  }
1138
1227
  function SidebarMenuBadge({
1139
1228
  className,
1229
+ slotName = "sidebar-menu-badge",
1140
1230
  ...props
1141
1231
  }) {
1142
1232
  return /* @__PURE__ */ jsx(
1143
1233
  "div",
1144
1234
  {
1145
- "data-slot": "sidebar-menu-badge",
1146
1235
  "data-sidebar": "menu-badge",
1147
1236
  className: cn(
1148
1237
  "right-1 h-5 min-w-5 px-1 text-xs font-medium rounded-xl pointer-events-none absolute flex items-center justify-center text-sidebar-foreground tabular-nums select-none",
@@ -1153,13 +1242,15 @@ function SidebarMenuBadge({
1153
1242
  "group-data-[collapsible=icon]:hidden",
1154
1243
  className
1155
1244
  ),
1156
- ...props
1245
+ ...props,
1246
+ "data-slot": slotName
1157
1247
  }
1158
1248
  );
1159
1249
  }
1160
1250
  function SidebarMenuSkeleton({
1161
1251
  className,
1162
1252
  showIcon = false,
1253
+ slotName = "sidebar-menu-skeleton",
1163
1254
  ...props
1164
1255
  }) {
1165
1256
  const width = React2.useMemo(() => {
@@ -1168,13 +1259,13 @@ function SidebarMenuSkeleton({
1168
1259
  return /* @__PURE__ */ jsxs(
1169
1260
  "div",
1170
1261
  {
1171
- "data-slot": "sidebar-menu-skeleton",
1172
1262
  "data-sidebar": "menu-skeleton",
1173
1263
  className: cn(
1174
1264
  "h-8 gap-2 px-2 rounded-xl flex items-center",
1175
1265
  className
1176
1266
  ),
1177
1267
  ...props,
1268
+ "data-slot": slotName,
1178
1269
  children: [
1179
1270
  showIcon && /* @__PURE__ */ jsx(
1180
1271
  Skeleton,
@@ -1197,32 +1288,37 @@ function SidebarMenuSkeleton({
1197
1288
  }
1198
1289
  );
1199
1290
  }
1200
- function SidebarMenuSub({ className, ...props }) {
1291
+ function SidebarMenuSub({
1292
+ className,
1293
+ slotName = "sidebar-menu-sub",
1294
+ ...props
1295
+ }) {
1201
1296
  return /* @__PURE__ */ jsx(
1202
1297
  "ul",
1203
1298
  {
1204
- "data-slot": "sidebar-menu-sub",
1205
1299
  "data-sidebar": "menu-sub",
1206
1300
  className: cn(
1207
1301
  "mx-3.5 min-w-0 gap-1 px-2.5 py-0.5 flex translate-x-px flex-col border-l border-sidebar-border",
1208
1302
  "group-data-[collapsible=icon]:hidden",
1209
1303
  className
1210
1304
  ),
1211
- ...props
1305
+ ...props,
1306
+ "data-slot": slotName
1212
1307
  }
1213
1308
  );
1214
1309
  }
1215
1310
  function SidebarMenuSubItem({
1216
1311
  className,
1312
+ slotName = "sidebar-menu-sub-item",
1217
1313
  ...props
1218
1314
  }) {
1219
1315
  return /* @__PURE__ */ jsx(
1220
1316
  "li",
1221
1317
  {
1222
- "data-slot": "sidebar-menu-sub-item",
1223
1318
  "data-sidebar": "menu-sub-item",
1224
1319
  className: cn("group/menu-sub-item relative", className),
1225
- ...props
1320
+ ...props,
1321
+ "data-slot": slotName
1226
1322
  }
1227
1323
  );
1228
1324
  }
@@ -1231,29 +1327,30 @@ function SidebarMenuSubButton({
1231
1327
  size = "md",
1232
1328
  isActive = false,
1233
1329
  className,
1330
+ slotName = "sidebar-menu-sub-button",
1234
1331
  ...props
1235
1332
  }) {
1236
1333
  const Comp = asChild ? Slot : "a";
1237
1334
  return /* @__PURE__ */ jsx(
1238
1335
  Comp,
1239
1336
  {
1240
- "data-slot": "sidebar-menu-sub-button",
1241
1337
  "data-sidebar": "menu-sub-button",
1242
1338
  "data-size": size,
1243
1339
  "data-active": isActive,
1244
1340
  className: cn(
1245
- "h-9 min-w-0 gap-2 px-2 text-sm font-medium [&>svg]:size-4 rounded-xl flex -translate-x-px items-center overflow-hidden text-sidebar-foreground ring-sidebar-ring outline-hidden hover:bg-accent hover:text-accent-foreground focus-visible:ring-[3px] focus-visible:ring-ring/50 active:bg-accent disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&>span:last-child]:truncate [&>svg]:shrink-0 [&>svg]:text-current",
1341
+ "h-9 min-w-0 gap-2 px-2 text-sm font-medium [&>svg]:size-4 rounded-xl flex -translate-x-px items-center overflow-hidden text-sidebar-foreground ring-sidebar-ring outline-hidden hover:bg-accent hover:text-accent-foreground focus-visible:outline-1 focus-visible:outline-offset-0 focus-visible:outline-ring focus-visible:outline-solid active:bg-accent disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&>span:last-child]:truncate [&>svg]:shrink-0 [&>svg]:text-current",
1246
1342
  "data-[active=true]:font-semibold data-[active=true]:bg-primary/10 data-[active=true]:text-primary",
1247
1343
  size === "sm" && "h-9 text-sm",
1248
1344
  size === "md" && "h-9 text-sm",
1249
1345
  "group-data-[collapsible=icon]:hidden",
1250
1346
  className
1251
1347
  ),
1252
- ...props
1348
+ ...props,
1349
+ "data-slot": slotName
1253
1350
  }
1254
1351
  );
1255
1352
  }
1256
1353
 
1257
1354
  export { Avatar, AvatarFallback, AvatarImage, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, Collapsible, CollapsibleContent2 as CollapsibleContent, CollapsibleTrigger2 as CollapsibleTrigger, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, Icon, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Skeleton, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, useIsMobile, useSidebar };
1258
- //# sourceMappingURL=chunk-MNGNBEYN.js.map
1259
- //# sourceMappingURL=chunk-MNGNBEYN.js.map
1355
+ //# sourceMappingURL=chunk-3HKIYFWI.js.map
1356
+ //# sourceMappingURL=chunk-3HKIYFWI.js.map