@moduix/react-tailwind 1.0.0 → 1.1.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 (69) hide show
  1. package/dist/components/accordion/Accordion.js +13 -13
  2. package/dist/components/alert/Alert.js +12 -12
  3. package/dist/components/angle-slider/AngleSlider.js +16 -16
  4. package/dist/components/avatar/Avatar.js +7 -7
  5. package/dist/components/bleed/Bleed.js +1 -1
  6. package/dist/components/card/Card.js +33 -33
  7. package/dist/components/carousel/Carousel.d.ts +1 -1
  8. package/dist/components/carousel/Carousel.js +22 -22
  9. package/dist/components/chart/Chart.js +18 -18
  10. package/dist/components/checkbox/Checkbox.js +12 -12
  11. package/dist/components/clipboard/Clipboard.js +19 -18
  12. package/dist/components/collapsible/Collapsible.js +11 -11
  13. package/dist/components/color-picker/ColorPicker.js +47 -47
  14. package/dist/components/combobox/Combobox.js +31 -31
  15. package/dist/components/command-palette/CommandPalette.js +48 -48
  16. package/dist/components/container/Container.js +5 -5
  17. package/dist/components/date-input/DateInput.js +14 -14
  18. package/dist/components/date-picker/DatePicker.js +51 -51
  19. package/dist/components/dialog/Dialog.js +20 -20
  20. package/dist/components/drawer/Drawer.js +30 -30
  21. package/dist/components/editable/Editable.js +17 -17
  22. package/dist/components/empty/Empty.js +13 -13
  23. package/dist/components/field/Field.js +19 -19
  24. package/dist/components/file-upload/FileUpload.js +28 -28
  25. package/dist/components/floating-panel/FloatingPanel.d.ts +1 -1
  26. package/dist/components/floating-panel/FloatingPanel.js +22 -22
  27. package/dist/components/floating-panel/index.d.ts +1 -0
  28. package/dist/components/hover-card/HoverCard.d.ts +1 -1
  29. package/dist/components/hover-card/HoverCard.js +11 -11
  30. package/dist/components/image-cropper/ImageCropper.js +14 -14
  31. package/dist/components/input-group/InputGroup.js +1 -1
  32. package/dist/components/lightbox/Lightbox.js +25 -25
  33. package/dist/components/listbox/Listbox.js +31 -31
  34. package/dist/components/marquee/Marquee.js +12 -12
  35. package/dist/components/menu/Menu.js +42 -42
  36. package/dist/components/navigation-menu/NavigationMenu.js +24 -24
  37. package/dist/components/number-input/NumberInput.js +16 -16
  38. package/dist/components/pagination/Pagination.js +11 -11
  39. package/dist/components/password-input/PasswordInput.js +13 -13
  40. package/dist/components/pin-input/PinInput.js +11 -11
  41. package/dist/components/popover/Popover.js +25 -25
  42. package/dist/components/progress-circular/ProgressCircular.js +16 -16
  43. package/dist/components/progress-linear/ProgressLinear.js +14 -14
  44. package/dist/components/qr-code/QrCode.js +12 -12
  45. package/dist/components/radio-group/RadioGroup.js +14 -14
  46. package/dist/components/rating-group/RatingGroup.js +11 -11
  47. package/dist/components/segment-group/SegmentGroup.js +14 -14
  48. package/dist/components/select/Select.js +33 -33
  49. package/dist/components/sidebar/Sidebar.js +51 -44
  50. package/dist/components/signature-pad/SignaturePad.js +11 -11
  51. package/dist/components/slider/Slider.js +22 -22
  52. package/dist/components/split-button/SplitButton.d.ts +6 -6
  53. package/dist/components/split-button/SplitButton.js +17 -13
  54. package/dist/components/splitter/Splitter.js +9 -9
  55. package/dist/components/steps/Steps.js +23 -23
  56. package/dist/components/swap/Swap.js +6 -6
  57. package/dist/components/switch/Switch.js +9 -9
  58. package/dist/components/table/Table.js +23 -23
  59. package/dist/components/tabs/Tabs.js +12 -12
  60. package/dist/components/tags-input/TagsInput.js +20 -20
  61. package/dist/components/timer/Timer.js +14 -14
  62. package/dist/components/toast/Toast.js +8 -8
  63. package/dist/components/toc/Toc.js +19 -19
  64. package/dist/components/toggle/Toggle.js +4 -4
  65. package/dist/components/tooltip/Tooltip.js +11 -11
  66. package/dist/components/tour/Tour.js +26 -26
  67. package/dist/components/tree-view/TreeView.js +30 -30
  68. package/dist/styles/animations.css +8 -8
  69. package/package.json +1 -1
@@ -8,50 +8,50 @@ import { PlusIcon } from "../../internal/icons/ui/index.js";
8
8
  const Accordion_AccordionRoot = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
9
9
  return /*#__PURE__*/ jsx(Accordion.Root, {
10
10
  ref: ref,
11
- "data-slot": "accordion-root",
12
11
  className: cn('box-border flex w-full max-w-full min-w-0 flex-col text-foreground data-[orientation=horizontal]:h-80 data-[orientation=horizontal]:max-h-full data-[orientation=horizontal]:w-auto data-[orientation=horizontal]:flex-row', className),
13
- ...props
12
+ ...props,
13
+ "data-slot": "accordion-root"
14
14
  });
15
15
  });
16
16
  const Accordion_AccordionRootProvider = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
17
17
  return /*#__PURE__*/ jsx(Accordion.RootProvider, {
18
18
  ref: ref,
19
- "data-slot": "accordion-root-provider",
20
19
  className: cn('box-border flex w-full max-w-full min-w-0 flex-col text-foreground data-[orientation=horizontal]:h-80 data-[orientation=horizontal]:max-h-full data-[orientation=horizontal]:w-auto data-[orientation=horizontal]:flex-row', className),
21
- ...props
20
+ ...props,
21
+ "data-slot": "accordion-root-provider"
22
22
  });
23
23
  });
24
24
  const Accordion_AccordionItem = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
25
25
  return /*#__PURE__*/ jsx(Accordion.Item, {
26
26
  ref: ref,
27
- "data-slot": "accordion-item",
28
27
  className: cn("[overflow-anchor:none] data-[orientation=horizontal]:flex [&[data-orientation='horizontal']:not(:last-child)]:border-e [&[data-orientation='horizontal']:not(:last-child)]:border-border [&[data-orientation='vertical']:not(:last-child)]:border-b [&[data-orientation='vertical']:not(:last-child)]:border-border", className),
29
- ...props
28
+ ...props,
29
+ "data-slot": "accordion-item"
30
30
  });
31
31
  });
32
32
  const Accordion_AccordionItemTrigger = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
33
33
  return /*#__PURE__*/ jsx(Accordion.ItemTrigger, {
34
34
  ref: ref,
35
- "data-slot": "accordion-item-trigger",
36
35
  className: cn('flex w-full cursor-pointer items-center justify-between gap-4 bg-muted px-3 py-2 text-start text-md outline-0 transition-colors duration-200 select-none focus-visible:relative focus-visible:z-1 focus-visible:outline-2 focus-visible:-outline-offset-1 focus-visible:outline-ring data-disabled:cursor-default data-disabled:opacity-50 data-[orientation=horizontal]:h-full data-[orientation=horizontal]:w-10 data-[orientation=horizontal]:justify-center data-[orientation=horizontal]:[writing-mode:sideways-lr] motion-reduce:transition-none [&:not([data-disabled]):active]:bg-accent [&:not([data-disabled]):hover]:bg-accent', className),
37
- ...props
36
+ ...props,
37
+ "data-slot": "accordion-item-trigger"
38
38
  });
39
39
  });
40
40
  const Accordion_AccordionItemIndicator = /*#__PURE__*/ forwardRef(function({ className, children, ...props }, ref) {
41
41
  return /*#__PURE__*/ jsx(Accordion.ItemIndicator, {
42
42
  ref: ref,
43
- "data-slot": "accordion-item-indicator",
44
43
  className: cn('inline-flex size-3 shrink-0 items-center justify-center transition-transform duration-200 data-[state=open]:scale-110 data-[state=open]:rotate-45 motion-reduce:transition-none [&_svg]:size-full', className),
45
44
  ...props,
45
+ "data-slot": "accordion-item-indicator",
46
46
  children: children ?? /*#__PURE__*/ jsx(PlusIcon, {})
47
47
  });
48
48
  });
49
49
  const Accordion_AccordionItemContent = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
50
50
  return /*#__PURE__*/ jsx(Accordion.ItemContent, {
51
51
  ref: ref,
52
- "data-slot": "accordion-item-content",
53
52
  className: cn("overflow-hidden text-md text-muted-foreground data-[state=closed]:data-[orientation=horizontal]:animate-moduix-accordion-closed-horizontal data-[state=closed]:data-[orientation=vertical]:animate-moduix-accordion-closed data-[state=open]:data-[orientation=horizontal]:animate-moduix-accordion-open-horizontal data-[state=open]:data-[orientation=vertical]:animate-moduix-accordion-open motion-reduce:[animation-delay:0ms] motion-reduce:[animation-duration:1ms] data-[orientation=horizontal]:[&>*]:w-64 [&[hidden]:not([hidden='until-found'])]:hidden", className),
54
- ...props
53
+ ...props,
54
+ "data-slot": "accordion-item-content"
55
55
  });
56
56
  });
57
57
  const Accordion_AccordionItemBody = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
@@ -59,9 +59,9 @@ const Accordion_AccordionItemBody = /*#__PURE__*/ forwardRef(function({ classNam
59
59
  ref: ref,
60
60
  "data-scope": "accordion",
61
61
  "data-part": "item-body",
62
- "data-slot": "accordion-item-body",
63
62
  className: cn('grid min-w-0 gap-3 p-3', className),
64
- ...props
63
+ ...props,
64
+ "data-slot": "accordion-item-body"
65
65
  });
66
66
  });
67
67
  const Accordion_Accordion = Object.assign(Accordion_AccordionRoot, {
@@ -19,15 +19,15 @@ const alertVariants = cva('group/alert box-border flex w-full min-w-0 items-star
19
19
  const Alert_AlertRoot = /*#__PURE__*/ forwardRef(function({ children, className, role, status = 'info', ...props }, ref) {
20
20
  return /*#__PURE__*/ jsx(ark.div, {
21
21
  ref: ref,
22
- role: role ?? ('error' === status ? 'alert' : 'status'),
22
+ role: role,
23
23
  "data-scope": "alert",
24
24
  "data-part": "root",
25
- "data-slot": "alert-root",
26
25
  "data-status": status,
27
26
  className: cn(alertVariants({
28
27
  status
29
28
  }), className),
30
29
  ...props,
30
+ "data-slot": "alert-root",
31
31
  children: children
32
32
  });
33
33
  });
@@ -36,10 +36,10 @@ const Alert_AlertIndicator = /*#__PURE__*/ forwardRef(function({ className, ...p
36
36
  ref: ref,
37
37
  "data-scope": "alert",
38
38
  "data-part": "indicator",
39
- "data-slot": "alert-indicator",
40
39
  "aria-hidden": "true",
41
40
  className: cn('mt-0.5 inline-flex size-4 shrink-0 items-center justify-center text-muted-foreground group-data-[status=error]/alert:text-destructive group-data-[status=success]/alert:text-success group-data-[status=warning]/alert:text-warning [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0', className),
42
- ...props
41
+ ...props,
42
+ "data-slot": "alert-indicator"
43
43
  });
44
44
  });
45
45
  const Alert_AlertContent = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
@@ -47,9 +47,9 @@ const Alert_AlertContent = /*#__PURE__*/ forwardRef(function({ className, ...pro
47
47
  ref: ref,
48
48
  "data-scope": "alert",
49
49
  "data-part": "content",
50
- "data-slot": "alert-content",
51
50
  className: cn('grid min-w-0 flex-1 gap-1', className),
52
- ...props
51
+ ...props,
52
+ "data-slot": "alert-content"
53
53
  });
54
54
  });
55
55
  const Alert_AlertTitle = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
@@ -57,9 +57,9 @@ const Alert_AlertTitle = /*#__PURE__*/ forwardRef(function({ className, ...props
57
57
  ref: ref,
58
58
  "data-scope": "alert",
59
59
  "data-part": "title",
60
- "data-slot": "alert-title",
61
60
  className: cn('m-0 min-w-0 text-sm font-semibold [overflow-wrap:anywhere]', className),
62
- ...props
61
+ ...props,
62
+ "data-slot": "alert-title"
63
63
  });
64
64
  });
65
65
  const Alert_AlertDescription = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
@@ -67,9 +67,9 @@ const Alert_AlertDescription = /*#__PURE__*/ forwardRef(function({ className, ..
67
67
  ref: ref,
68
68
  "data-scope": "alert",
69
69
  "data-part": "description",
70
- "data-slot": "alert-description",
71
70
  className: cn('min-w-0 text-sm [overflow-wrap:anywhere] text-muted-foreground [&>:first-child]:mt-0 [&>:last-child]:mb-0', className),
72
- ...props
71
+ ...props,
72
+ "data-slot": "alert-description"
73
73
  });
74
74
  });
75
75
  const Alert_AlertActions = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
@@ -77,9 +77,9 @@ const Alert_AlertActions = /*#__PURE__*/ forwardRef(function({ className, ...pro
77
77
  ref: ref,
78
78
  "data-scope": "alert",
79
79
  "data-part": "actions",
80
- "data-slot": "alert-actions",
81
80
  className: cn('mt-2 flex flex-wrap gap-2', className),
82
- ...props
81
+ ...props,
82
+ "data-slot": "alert-actions"
83
83
  });
84
84
  });
85
85
  const Alert = Object.assign(Alert_AlertRoot, {
@@ -6,62 +6,62 @@ import { cn } from "../../internal/cn.js";
6
6
  const AngleSlider_AngleSliderRoot = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
7
7
  return /*#__PURE__*/ jsx(AngleSlider.Root, {
8
8
  ref: ref,
9
- "data-slot": "angle-slider-root",
10
9
  className: cn('box-border inline-flex min-w-0 flex-col items-center gap-3 text-foreground data-disabled:opacity-50', className),
11
- ...props
10
+ ...props,
11
+ "data-slot": "angle-slider-root"
12
12
  });
13
13
  });
14
14
  const AngleSlider_AngleSliderLabel = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
15
15
  return /*#__PURE__*/ jsx(AngleSlider.Label, {
16
16
  ref: ref,
17
- "data-slot": "angle-slider-label",
18
17
  className: cn('text-center text-sm font-medium text-foreground', className),
19
- ...props
18
+ ...props,
19
+ "data-slot": "angle-slider-label"
20
20
  });
21
21
  });
22
22
  const AngleSlider_AngleSliderRootProvider = /*#__PURE__*/ forwardRef(function({ className, value, ...props }, ref) {
23
23
  return /*#__PURE__*/ jsx(AngleSlider.RootProvider, {
24
24
  ref: ref,
25
- "data-slot": "angle-slider-root-provider",
26
25
  className: cn('box-border inline-flex min-w-0 flex-col items-center gap-3 text-foreground data-disabled:opacity-50', className),
27
26
  value: value,
28
- ...props
27
+ ...props,
28
+ "data-slot": "angle-slider-root-provider"
29
29
  });
30
30
  });
31
31
  const AngleSlider_AngleSliderControl = /*#__PURE__*/ forwardRef(function({ className, onPointerDown, ...props }, ref) {
32
32
  return /*#__PURE__*/ jsx(AngleSlider.Control, {
33
33
  ref: ref,
34
- "data-slot": "angle-slider-control",
35
34
  className: cn("relative box-border flex aspect-square w-32 min-w-0 cursor-pointer items-center justify-center rounded-full bg-muted shadow-[inset_0_0_0_1px_var(--color-border)] outline-0 transition-colors duration-200 select-none before:absolute before:z-1 before:size-1.5 before:rounded-[inherit] before:bg-foreground before:content-[''] after:absolute after:inset-3.5 after:z-1 after:rounded-[inherit] after:bg-background after:shadow-[inset_0_0_0_1px_var(--color-border)] after:content-[''] data-disabled:cursor-default data-invalid:shadow-[inset_0_0_0_1px_var(--color-destructive)] data-invalid:after:shadow-[inset_0_0_0_1px_var(--color-destructive)] data-readonly:cursor-default motion-reduce:transition-none [&:has([data-scope='angle-slider'][data-part='thumb']:focus-visible)]:shadow-[inset_0_0_0_1px_var(--color-border),0_0_0_3px_var(--color-ring)] [&:not([data-disabled]):not([data-readonly]):active]:bg-muted [@media(hover:hover)]:[&:not([data-disabled]):not([data-readonly]):hover]:bg-muted", className),
36
35
  onPointerDown: (event)=>{
37
36
  onPointerDown?.(event);
38
37
  event.currentTarget.querySelector('[data-scope="angle-slider"][data-part="thumb"]')?.blur();
39
38
  },
40
- ...props
39
+ ...props,
40
+ "data-slot": "angle-slider-control"
41
41
  });
42
42
  });
43
43
  const AngleSlider_AngleSliderThumb = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
44
44
  return /*#__PURE__*/ jsx(AngleSlider.Thumb, {
45
45
  ref: ref,
46
- "data-slot": "angle-slider-thumb",
47
46
  className: cn("absolute inset-y-0 left-[calc(50%-0.09375rem)] z-2 w-[0.1875rem] outline-0 before:absolute before:top-3.5 before:left-1/2 before:box-border before:size-4 before:-translate-x-1/2 before:rounded-full before:border before:border-border before:bg-primary before:shadow-sm before:transition-[border-color,box-shadow,background-color,scale] before:duration-200 before:content-[''] after:absolute after:top-[2.125rem] after:left-1/2 after:h-[calc(50%-2.25rem)] after:w-[0.1875rem] after:-translate-x-1/2 after:rounded-full after:bg-linear-to-b after:from-primary after:to-transparent after:content-[''] focus-visible:before:border-ring focus-visible:before:ring-1 focus-visible:before:ring-ring data-disabled:pointer-events-none data-invalid:before:border-destructive data-invalid:before:bg-destructive data-invalid:after:from-destructive motion-reduce:before:transition-none [&:active:not([data-disabled]):not([data-readonly])]:before:scale-[1.08]", className),
48
- ...props
47
+ ...props,
48
+ "data-slot": "angle-slider-thumb"
49
49
  });
50
50
  });
51
51
  const AngleSlider_AngleSliderMarkerGroup = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
52
52
  return /*#__PURE__*/ jsx(AngleSlider.MarkerGroup, {
53
53
  ref: ref,
54
- "data-slot": "angle-slider-marker-group",
55
54
  className: cn('pointer-events-none absolute inset-0 z-1', className),
56
- ...props
55
+ ...props,
56
+ "data-slot": "angle-slider-marker-group"
57
57
  });
58
58
  });
59
59
  const AngleSlider_AngleSliderMarker = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
60
60
  return /*#__PURE__*/ jsx(AngleSlider.Marker, {
61
61
  ref: ref,
62
- "data-slot": "angle-slider-marker",
63
62
  className: cn("absolute inset-0 before:absolute before:top-4 before:left-1/2 before:h-2.5 before:w-0.5 before:-translate-x-1/2 before:-translate-y-1/2 before:rounded-full before:bg-muted-foreground before:content-[''] data-[state=at-value]:before:bg-foreground data-[state=under-value]:before:bg-primary", className),
64
- ...props
63
+ ...props,
64
+ "data-slot": "angle-slider-marker"
65
65
  });
66
66
  });
67
67
  function AngleSliderMarks({ values, ...props }) {
@@ -84,9 +84,9 @@ function AngleSliderDial({ children, ...props }) {
84
84
  const AngleSlider_AngleSliderValueText = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
85
85
  return /*#__PURE__*/ jsx(AngleSlider.ValueText, {
86
86
  ref: ref,
87
- "data-slot": "angle-slider-value-text",
88
87
  className: cn('text-center text-sm font-medium text-foreground', className),
89
- ...props
88
+ ...props,
89
+ "data-slot": "angle-slider-value-text"
90
90
  });
91
91
  });
92
92
  const AngleSlider_AngleSlider = Object.assign(AngleSlider_AngleSliderRoot, {
@@ -20,39 +20,39 @@ const avatarVariants = cva('relative inline-flex shrink-0 items-center justify-c
20
20
  const Avatar_AvatarRoot = /*#__PURE__*/ forwardRef(function({ className, size, ...props }, ref) {
21
21
  return /*#__PURE__*/ jsx(Avatar.Root, {
22
22
  ref: ref,
23
- "data-slot": "avatar-root",
24
23
  "data-size": size,
25
24
  className: cn(avatarVariants({
26
25
  size
27
26
  }), className),
28
- ...props
27
+ ...props,
28
+ "data-slot": "avatar-root"
29
29
  });
30
30
  });
31
31
  const Avatar_AvatarRootProvider = /*#__PURE__*/ forwardRef(function({ className, size, ...props }, ref) {
32
32
  return /*#__PURE__*/ jsx(Avatar.RootProvider, {
33
33
  ref: ref,
34
- "data-slot": "avatar-root-provider",
35
34
  "data-size": size,
36
35
  className: cn(avatarVariants({
37
36
  size
38
37
  }), className),
39
- ...props
38
+ ...props,
39
+ "data-slot": "avatar-root-provider"
40
40
  });
41
41
  });
42
42
  const Avatar_AvatarImage = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
43
43
  return /*#__PURE__*/ jsx(Avatar.Image, {
44
44
  ref: ref,
45
- "data-slot": "avatar-image",
46
45
  className: cn('block size-full rounded-[inherit] object-cover object-center data-[state=hidden]:hidden', className),
47
- ...props
46
+ ...props,
47
+ "data-slot": "avatar-image"
48
48
  });
49
49
  });
50
50
  const Avatar_AvatarFallback = /*#__PURE__*/ forwardRef(function({ children, className, ...props }, ref) {
51
51
  return /*#__PURE__*/ jsx(Avatar.Fallback, {
52
52
  ref: ref,
53
- "data-slot": "avatar-fallback",
54
53
  className: cn('inline-flex size-full items-center justify-center rounded-[inherit] bg-[inherit] data-[state=hidden]:hidden', className),
55
54
  ...props,
55
+ "data-slot": "avatar-fallback",
56
56
  children: children
57
57
  });
58
58
  });
@@ -3,7 +3,7 @@ import { ark } from "@ark-ui/react/factory";
3
3
  import { cva } from "class-variance-authority";
4
4
  import { forwardRef } from "react";
5
5
  import { cn } from "../../internal/cn.js";
6
- const bleedVariants = cva('m-0 box-border', {
6
+ const bleedVariants = cva('', {
7
7
  variants: {
8
8
  inline: {
9
9
  none: null,
@@ -4,7 +4,7 @@ import { ark } from "@ark-ui/react/factory";
4
4
  import { cva } from "class-variance-authority";
5
5
  import { forwardRef } from "react";
6
6
  import { cn } from "../../internal/cn.js";
7
- const cardRootVariants = cva('group/card relative flex w-full min-w-0 flex-col rounded-lg text-card-foreground focus-visible:outline-2 focus-visible:outline-offset-1 focus-visible:outline-ring has-[>[data-slot=card-background]]:isolate [&:has(>[data-slot=card-background])>*:not([data-slot=card-background])]:z-1 [&:has([data-slot=card-link])_:is(a,button,input,select,textarea,[role=button],[role=checkbox],[role=menuitem],[role=switch],[tabindex]:not([tabindex=-1])):not([data-slot=card-link])]:relative [&:has([data-slot=card-link])_:is(a,button,input,select,textarea,[role=button],[role=checkbox],[role=menuitem],[role=switch],[tabindex]:not([tabindex=-1])):not([data-slot=card-link])]:z-1', {
7
+ const cardRootVariants = cva('group/card relative flex w-full min-w-0 flex-col rounded-lg text-card-foreground focus-visible:outline-2 focus-visible:outline-offset-1 focus-visible:outline-ring has-[>[data-slot=card-background]]:isolate [&:has(>[data-slot=card-background])>*:not([data-slot=card-background])]:z-1 [&:has([data-slot=card-link])_:is(a,button,input,select,textarea,summary,audio[controls],video[controls],iframe,[contenteditable=true],[role=button],[role=checkbox],[role=menuitem],[role=switch],[tabindex]:not([tabindex=-1])):not([data-slot=card-link])]:relative [&:has([data-slot=card-link])_:is(a,button,input,select,textarea,summary,audio[controls],video[controls],iframe,[contenteditable=true],[role=button],[role=checkbox],[role=menuitem],[role=switch],[tabindex]:not([tabindex=-1])):not([data-slot=card-link])]:z-1', {
8
8
  variants: {
9
9
  variant: {
10
10
  elevated: 'border-0 bg-card shadow-md',
@@ -19,105 +19,105 @@ const cardRootVariants = cva('group/card relative flex w-full min-w-0 flex-col r
19
19
  const Card_CardRoot = /*#__PURE__*/ forwardRef(function({ className, size, variant, ...props }, ref) {
20
20
  return /*#__PURE__*/ jsx(ark.div, {
21
21
  ref: ref,
22
+ className: cn(cardRootVariants({
23
+ variant
24
+ }), className),
25
+ ...props,
22
26
  "data-scope": "card",
23
27
  "data-part": "root",
24
- "data-slot": "card-root",
25
28
  "data-size": size ?? 'md',
26
29
  "data-variant": variant ?? 'outline',
27
- className: cn(cardRootVariants({
28
- variant
29
- }), className),
30
- ...props
30
+ "data-slot": "card-root"
31
31
  });
32
32
  });
33
33
  const Card_CardHeader = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
34
34
  return /*#__PURE__*/ jsx(ark.div, {
35
35
  ref: ref,
36
+ className: cn('grid min-w-0 grid-cols-[minmax(0,1fr)_auto] gap-x-2 gap-y-1 px-6 pt-6 group-data-[size=lg]/card:px-8 group-data-[size=lg]/card:pt-8 group-data-[size=sm]/card:px-4 group-data-[size=sm]/card:pt-4', className),
37
+ ...props,
36
38
  "data-scope": "card",
37
39
  "data-part": "header",
38
- "data-slot": "card-header",
39
- className: cn('grid min-w-0 grid-cols-[minmax(0,1fr)_auto] gap-x-2 gap-y-1 px-6 pt-6 group-data-[size=lg]/card:px-8 group-data-[size=lg]/card:pt-8 group-data-[size=sm]/card:px-4 group-data-[size=sm]/card:pt-4', className),
40
- ...props
40
+ "data-slot": "card-header"
41
41
  });
42
42
  });
43
43
  const Card_CardBody = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
44
44
  return /*#__PURE__*/ jsx(ark.div, {
45
45
  ref: ref,
46
+ className: cn('min-w-0 px-6 pt-4 pb-6 text-sm wrap-anywhere text-muted-foreground group-data-[size=lg]/card:px-8 group-data-[size=lg]/card:pb-8 group-data-[size=sm]/card:px-4 group-data-[size=sm]/card:pb-4 first:pt-6 group-data-[size=lg]/card:first:pt-8 group-data-[size=sm]/card:first:pt-4', className),
47
+ ...props,
46
48
  "data-scope": "card",
47
49
  "data-part": "body",
48
- "data-slot": "card-body",
49
- className: cn('min-w-0 px-6 pt-4 pb-6 text-sm wrap-anywhere text-muted-foreground group-data-[size=lg]/card:px-8 group-data-[size=lg]/card:pb-8 group-data-[size=sm]/card:px-4 group-data-[size=sm]/card:pb-4 first:pt-6 group-data-[size=lg]/card:first:pt-8 group-data-[size=sm]/card:first:pt-4', className),
50
- ...props
50
+ "data-slot": "card-body"
51
51
  });
52
52
  });
53
53
  const Card_CardMedia = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
54
54
  return /*#__PURE__*/ jsx(ark.div, {
55
55
  ref: ref,
56
+ className: cn('min-w-0 overflow-hidden rounded-ss-[inherit] rounded-se-[inherit] [&>:is(img,picture,video,canvas,svg,iframe)]:w-full [&>picture]:block [&>picture>img]:w-full', className),
57
+ ...props,
56
58
  "data-scope": "card",
57
59
  "data-part": "media",
58
- "data-slot": "card-media",
59
- className: cn('min-w-0 overflow-hidden rounded-ss-[inherit] rounded-se-[inherit] [&>:is(img,picture,video,canvas,svg,iframe)]:w-full [&>picture]:block [&>picture>img]:w-full', className),
60
- ...props
60
+ "data-slot": "card-media"
61
61
  });
62
62
  });
63
63
  const Card_CardBackground = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
64
64
  return /*#__PURE__*/ jsx(ark.div, {
65
65
  ref: ref,
66
+ className: cn('absolute inset-0 z-0 overflow-hidden rounded-[inherit] [&>:is(img,picture,video,canvas,svg,iframe)]:size-full [&>:is(img,picture,video,canvas,svg,iframe)]:object-cover [&>picture]:block [&>picture>img]:size-full [&>picture>img]:object-cover', className),
67
+ ...props,
66
68
  "data-scope": "card",
67
69
  "data-part": "background",
68
- "data-slot": "card-background",
69
- className: cn('absolute inset-0 z-0 overflow-hidden rounded-[inherit] [&>:is(img,picture,video,canvas,svg,iframe)]:size-full [&>:is(img,picture,video,canvas,svg,iframe)]:object-cover [&>picture]:block [&>picture>img]:size-full [&>picture>img]:object-cover', className),
70
- ...props
70
+ "data-slot": "card-background"
71
71
  });
72
72
  });
73
73
  const Card_CardFooter = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
74
74
  return /*#__PURE__*/ jsx(ark.div, {
75
75
  ref: ref,
76
+ className: cn('flex min-w-0 flex-wrap items-center gap-2 px-6 pb-6 group-data-[size=lg]/card:px-8 group-data-[size=lg]/card:pb-8 group-data-[size=sm]/card:px-4 group-data-[size=sm]/card:pb-4', className),
77
+ ...props,
76
78
  "data-scope": "card",
77
79
  "data-part": "footer",
78
- "data-slot": "card-footer",
79
- className: cn('flex min-w-0 flex-wrap items-center gap-2 px-6 pb-6 group-data-[size=lg]/card:px-8 group-data-[size=lg]/card:pb-8 group-data-[size=sm]/card:px-4 group-data-[size=sm]/card:pb-4', className),
80
- ...props
80
+ "data-slot": "card-footer"
81
81
  });
82
82
  });
83
83
  const Card_CardTitle = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
84
84
  return /*#__PURE__*/ jsx(ark.h3, {
85
85
  ref: ref,
86
+ className: cn('col-start-1 min-w-0 text-lg font-semibold wrap-anywhere group-data-[size=lg]/card:text-xl group-data-[size=sm]/card:text-md', className),
87
+ ...props,
86
88
  "data-scope": "card",
87
89
  "data-part": "title",
88
- "data-slot": "card-title",
89
- className: cn('col-start-1 min-w-0 text-lg font-semibold wrap-anywhere group-data-[size=lg]/card:text-xl group-data-[size=sm]/card:text-md', className),
90
- ...props
90
+ "data-slot": "card-title"
91
91
  });
92
92
  });
93
93
  const Card_CardDescription = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
94
94
  return /*#__PURE__*/ jsx(ark.p, {
95
95
  ref: ref,
96
+ className: cn('col-start-1 min-w-0 text-sm wrap-anywhere text-muted-foreground', className),
97
+ ...props,
96
98
  "data-scope": "card",
97
99
  "data-part": "description",
98
- "data-slot": "card-description",
99
- className: cn('col-start-1 min-w-0 text-sm wrap-anywhere text-muted-foreground', className),
100
- ...props
100
+ "data-slot": "card-description"
101
101
  });
102
102
  });
103
103
  const Card_CardAction = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
104
104
  return /*#__PURE__*/ jsx(ark.div, {
105
105
  ref: ref,
106
+ className: cn('relative z-1 col-start-2 row-span-2 row-start-1 inline-flex items-start justify-end gap-2 justify-self-end', className),
107
+ ...props,
106
108
  "data-scope": "card",
107
109
  "data-part": "action",
108
- "data-slot": "card-action",
109
- className: cn('relative z-1 col-start-2 row-span-2 row-start-1 inline-flex items-start justify-end gap-2 justify-self-end', className),
110
- ...props
110
+ "data-slot": "card-action"
111
111
  });
112
112
  });
113
113
  const Card_CardLink = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
114
114
  return /*#__PURE__*/ jsx(ark.a, {
115
115
  ref: ref,
116
+ className: cn('static text-inherit no-underline after:absolute after:inset-0 after:z-0 after:rounded-lg focus-visible:outline-0 focus-visible:after:outline-2 focus-visible:after:outline-offset-1 focus-visible:after:outline-ring', className),
117
+ ...props,
116
118
  "data-scope": "card",
117
119
  "data-part": "link",
118
- "data-slot": "card-link",
119
- className: cn('static text-inherit no-underline after:absolute after:inset-0 after:z-0 after:rounded-lg focus-visible:outline-0 focus-visible:after:outline-2 focus-visible:after:outline-offset-1 focus-visible:after:outline-ring', className),
120
- ...props
120
+ "data-slot": "card-link"
121
121
  });
122
122
  });
123
123
  const Card = Object.assign(Card_CardRoot, {
@@ -10,7 +10,7 @@ declare const Carousel: import("react").ForwardRefExoticComponent<Omit<CarouselP
10
10
  NextTrigger: import("react").ForwardRefExoticComponent<Omit<CarouselPrimitive.NextTriggerProps & import("react").RefAttributes<HTMLButtonElement>, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
11
11
  IndicatorGroup: import("react").ForwardRefExoticComponent<Omit<CarouselPrimitive.IndicatorGroupProps & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
12
12
  Indicator: import("react").ForwardRefExoticComponent<Omit<CarouselPrimitive.IndicatorProps & import("react").RefAttributes<HTMLButtonElement>, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
13
- Indicators: import("react").ForwardRefExoticComponent<Omit<CarouselPrimitive.IndicatorGroupProps & import("react").RefAttributes<HTMLDivElement> & {
13
+ Indicators: import("react").ForwardRefExoticComponent<Omit<Omit<CarouselPrimitive.IndicatorGroupProps & import("react").RefAttributes<HTMLDivElement>, "asChild" | "children"> & {
14
14
  indicatorClassName?: string;
15
15
  }, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
16
16
  AutoplayTrigger: import("react").ForwardRefExoticComponent<Omit<CarouselPrimitive.AutoplayTriggerProps & import("react").RefAttributes<HTMLButtonElement>, "ref"> & import("react").RefAttributes<HTMLButtonElement>>;
@@ -7,49 +7,49 @@ import { ChevronLeftIcon, ChevronRightIcon } from "../../internal/icons/ui/index
7
7
  const Carousel_CarouselRoot = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
8
8
  return /*#__PURE__*/ jsx(Carousel.Root, {
9
9
  ref: ref,
10
- "data-slot": "carousel-root",
11
10
  className: cn('group/carousel flex w-full min-w-0 flex-col gap-3 data-[orientation=vertical]:h-96 data-[orientation=vertical]:flex-row data-[orientation=vertical]:items-stretch', className),
12
- ...props
11
+ ...props,
12
+ "data-slot": "carousel-root"
13
13
  });
14
14
  });
15
15
  const Carousel_CarouselRootProvider = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
16
16
  return /*#__PURE__*/ jsx(Carousel.RootProvider, {
17
17
  ref: ref,
18
- "data-slot": "carousel-root-provider",
19
18
  className: cn('group/carousel flex w-full min-w-0 flex-col gap-3 data-[orientation=vertical]:h-96 data-[orientation=vertical]:flex-row data-[orientation=vertical]:items-stretch', className),
20
- ...props
19
+ ...props,
20
+ "data-slot": "carousel-root-provider"
21
21
  });
22
22
  });
23
23
  const Carousel_CarouselControl = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
24
24
  return /*#__PURE__*/ jsx(Carousel.Control, {
25
25
  ref: ref,
26
- "data-slot": "carousel-control",
27
26
  className: cn('flex min-w-0 items-center gap-3 data-[orientation=vertical]:flex-col data-[orientation=vertical]:justify-between', className),
28
- ...props
27
+ ...props,
28
+ "data-slot": "carousel-control"
29
29
  });
30
30
  });
31
31
  const Carousel_CarouselItemGroup = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
32
32
  return /*#__PURE__*/ jsx(Carousel.ItemGroup, {
33
33
  ref: ref,
34
- "data-slot": "carousel-item-group",
35
34
  className: cn('flex min-h-0 min-w-0 flex-1 [scrollbar-width:none] overscroll-x-contain overscroll-y-auto scroll-smooth rounded-xl outline-0 focus-visible:outline-1 focus-visible:-outline-offset-1 focus-visible:outline-ring data-dragging:cursor-grabbing data-dragging:select-none data-[orientation=vertical]:h-full data-[orientation=vertical]:overscroll-x-auto data-[orientation=vertical]:overscroll-y-contain motion-reduce:scroll-auto [&::-webkit-scrollbar]:hidden', className),
36
- ...props
35
+ ...props,
36
+ "data-slot": "carousel-item-group"
37
37
  });
38
38
  });
39
39
  const Carousel_CarouselItem = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
40
40
  return /*#__PURE__*/ jsx(Carousel.Item, {
41
41
  ref: ref,
42
- "data-slot": "carousel-item",
43
42
  className: cn('box-border min-h-0 min-w-0', className),
44
- ...props
43
+ ...props,
44
+ "data-slot": "carousel-item"
45
45
  });
46
46
  });
47
47
  const Carousel_CarouselPrevTrigger = /*#__PURE__*/ forwardRef(function({ className, children, ...props }, ref) {
48
48
  return /*#__PURE__*/ jsx(Carousel.PrevTrigger, {
49
49
  ref: ref,
50
- "data-slot": "carousel-prev-trigger",
51
50
  className: cn('focus-visible:outline-offset-0.5 inline-flex size-control-md shrink-0 cursor-pointer items-center justify-center rounded-full border border-border bg-card text-foreground shadow-sm outline-0 transition-[background-color,border-color,color,box-shadow,transform] duration-150 ease-in-out focus-visible:outline-2 focus-visible:outline-ring disabled:cursor-not-allowed disabled:opacity-50 data-disabled:cursor-not-allowed data-disabled:opacity-50 data-pressed:border-foreground data-pressed:bg-accent data-pressed:text-accent-foreground motion-reduce:transition-none [&_svg]:size-4 [&:not(:disabled):not([data-disabled]):hover]:border-foreground [&:not(:disabled):not([data-disabled]):hover]:bg-accent [&:not(:disabled):not([data-disabled]):hover]:text-accent-foreground [&:not(:disabled):not([data-disabled]):hover]:shadow-md', className),
52
51
  ...props,
52
+ "data-slot": "carousel-prev-trigger",
53
53
  children: children ?? /*#__PURE__*/ jsx("span", {
54
54
  className: "inline-flex items-center justify-center",
55
55
  children: /*#__PURE__*/ jsx(ChevronLeftIcon, {
@@ -61,9 +61,9 @@ const Carousel_CarouselPrevTrigger = /*#__PURE__*/ forwardRef(function({ classNa
61
61
  const Carousel_CarouselNextTrigger = /*#__PURE__*/ forwardRef(function({ className, children, ...props }, ref) {
62
62
  return /*#__PURE__*/ jsx(Carousel.NextTrigger, {
63
63
  ref: ref,
64
- "data-slot": "carousel-next-trigger",
65
64
  className: cn('focus-visible:outline-offset-0.5 inline-flex size-control-md shrink-0 cursor-pointer items-center justify-center rounded-full border border-border bg-card text-foreground shadow-sm outline-0 transition-[background-color,border-color,color,box-shadow,transform] duration-150 ease-in-out focus-visible:outline-2 focus-visible:outline-ring disabled:cursor-not-allowed disabled:opacity-50 data-disabled:cursor-not-allowed data-disabled:opacity-50 data-pressed:border-foreground data-pressed:bg-accent data-pressed:text-accent-foreground motion-reduce:transition-none [&_svg]:size-4 [&:not(:disabled):not([data-disabled]):hover]:border-foreground [&:not(:disabled):not([data-disabled]):hover]:bg-accent [&:not(:disabled):not([data-disabled]):hover]:text-accent-foreground [&:not(:disabled):not([data-disabled]):hover]:shadow-md', className),
66
65
  ...props,
66
+ "data-slot": "carousel-next-trigger",
67
67
  children: children ?? /*#__PURE__*/ jsx("span", {
68
68
  className: "inline-flex items-center justify-center",
69
69
  children: /*#__PURE__*/ jsx(ChevronRightIcon, {
@@ -75,17 +75,17 @@ const Carousel_CarouselNextTrigger = /*#__PURE__*/ forwardRef(function({ classNa
75
75
  const Carousel_CarouselIndicatorGroup = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
76
76
  return /*#__PURE__*/ jsx(Carousel.IndicatorGroup, {
77
77
  ref: ref,
78
- "data-slot": "carousel-indicator-group",
79
78
  className: cn('flex items-center justify-center gap-2 data-[orientation=vertical]:flex-col', className),
80
- ...props
79
+ ...props,
80
+ "data-slot": "carousel-indicator-group"
81
81
  });
82
82
  });
83
83
  const Carousel_CarouselIndicator = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
84
84
  return /*#__PURE__*/ jsx(Carousel.Indicator, {
85
85
  ref: ref,
86
- "data-slot": "carousel-indicator",
87
86
  className: cn('focus-visible:outline-offset-0.5 size-2 cursor-pointer rounded-full border-0 bg-muted p-0 opacity-90 transition-[width,height,background-color,opacity] duration-150 focus-visible:outline-2 focus-visible:outline-ring disabled:cursor-not-allowed disabled:opacity-50 data-current:w-6 data-current:bg-primary data-current:opacity-100 data-disabled:cursor-not-allowed data-disabled:opacity-50 data-readonly:cursor-not-allowed data-readonly:opacity-50 data-[orientation=vertical]:data-current:h-6 data-[orientation=vertical]:data-current:w-2 motion-reduce:transition-none forced-colors:bg-[ButtonText] forced-colors:data-current:bg-[Highlight] [&:not(:disabled):not([data-disabled]):not([data-readonly]):not([data-current]):hover]:bg-muted-foreground', className),
88
- ...props
87
+ ...props,
88
+ "data-slot": "carousel-indicator"
89
89
  });
90
90
  });
91
91
  const Carousel_CarouselIndicators = /*#__PURE__*/ forwardRef(function({ className, indicatorClassName, ...props }, ref) {
@@ -104,26 +104,26 @@ const Carousel_CarouselIndicators = /*#__PURE__*/ forwardRef(function({ classNam
104
104
  const Carousel_CarouselAutoplayTrigger = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
105
105
  return /*#__PURE__*/ jsx(Carousel.AutoplayTrigger, {
106
106
  ref: ref,
107
- "data-slot": "carousel-autoplay-trigger",
108
107
  className: cn('focus-visible:outline-offset-0.5 inline-flex size-control-md min-w-12 shrink-0 cursor-pointer items-center justify-center rounded-full border border-border bg-card text-foreground shadow-sm outline-0 transition-[background-color,border-color,color,box-shadow,transform] duration-150 ease-in-out focus-visible:outline-2 focus-visible:outline-ring disabled:cursor-not-allowed disabled:opacity-50 data-disabled:cursor-not-allowed data-disabled:opacity-50 data-pressed:border-foreground data-pressed:bg-accent data-pressed:text-accent-foreground motion-reduce:transition-none [&_svg]:size-4 [&:not(:disabled):not([data-disabled]):hover]:border-foreground [&:not(:disabled):not([data-disabled]):hover]:bg-accent [&:not(:disabled):not([data-disabled]):hover]:text-accent-foreground [&:not(:disabled):not([data-disabled]):hover]:shadow-md', className),
109
- ...props
108
+ ...props,
109
+ "data-slot": "carousel-autoplay-trigger"
110
110
  });
111
111
  });
112
112
  const Carousel_CarouselAutoplayIndicator = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
113
113
  return /*#__PURE__*/ jsx(Carousel.AutoplayIndicator, {
114
114
  ref: ref,
115
- "data-slot": "carousel-autoplay-indicator",
116
115
  className: cn('inline-flex min-w-4 items-center justify-center text-xs font-medium uppercase', className),
117
- ...props
116
+ ...props,
117
+ "data-slot": "carousel-autoplay-indicator"
118
118
  });
119
119
  });
120
120
  const Carousel_CarouselProgressText = /*#__PURE__*/ forwardRef(function({ className, ...props }, ref) {
121
121
  return /*#__PURE__*/ jsx(Carousel.ProgressText, {
122
122
  ref: ref,
123
- "data-slot": "carousel-progress-text",
124
123
  dir: "ltr",
125
124
  className: cn('text-sm text-muted-foreground tabular-nums [unicode-bidi:isolate]', className),
126
- ...props
125
+ ...props,
126
+ "data-slot": "carousel-progress-text"
127
127
  });
128
128
  });
129
129
  const Carousel_Carousel = Object.assign(Carousel_CarouselRoot, {