@mlw-packages/react-components 1.3.0 → 1.3.2

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.
package/dist/index.css CHANGED
@@ -477,6 +477,9 @@ body {
477
477
  .top-\[50\%\] {
478
478
  top: 50%;
479
479
  }
480
+ .isolate {
481
+ isolation: isolate;
482
+ }
480
483
  .z-10 {
481
484
  z-index: 10;
482
485
  }
@@ -540,6 +543,9 @@ body {
540
543
  .-mt-4 {
541
544
  margin-top: -1rem;
542
545
  }
546
+ .mb-1 {
547
+ margin-bottom: 0.25rem;
548
+ }
543
549
  .mb-2 {
544
550
  margin-bottom: 0.5rem;
545
551
  }
@@ -594,6 +600,9 @@ body {
594
600
  .mt-5 {
595
601
  margin-top: 1.25rem;
596
602
  }
603
+ .mt-6 {
604
+ margin-top: 1.5rem;
605
+ }
597
606
  .mt-auto {
598
607
  margin-top: auto;
599
608
  }
@@ -669,6 +678,9 @@ body {
669
678
  .h-24 {
670
679
  height: 6rem;
671
680
  }
681
+ .h-28 {
682
+ height: 7rem;
683
+ }
672
684
  .h-3 {
673
685
  height: 0.75rem;
674
686
  }
@@ -774,6 +786,9 @@ body {
774
786
  .w-2\.5 {
775
787
  width: 0.625rem;
776
788
  }
789
+ .w-28 {
790
+ width: 7rem;
791
+ }
777
792
  .w-3\.5 {
778
793
  width: 0.875rem;
779
794
  }
@@ -867,6 +882,10 @@ body {
867
882
  .w-auto {
868
883
  width: auto;
869
884
  }
885
+ .w-fit {
886
+ width: -moz-fit-content;
887
+ width: fit-content;
888
+ }
870
889
  .w-full {
871
890
  width: 100%;
872
891
  }
@@ -886,6 +905,9 @@ body {
886
905
  .min-w-\[150px\] {
887
906
  min-width: 150px;
888
907
  }
908
+ .min-w-\[200px\] {
909
+ min-width: 200px;
910
+ }
889
911
  .min-w-\[8rem\] {
890
912
  min-width: 8rem;
891
913
  }
@@ -895,6 +917,9 @@ body {
895
917
  .min-w-\[var\(--radix-select-trigger-width\)\] {
896
918
  min-width: var(--radix-select-trigger-width);
897
919
  }
920
+ .max-w-2xl {
921
+ max-width: 42rem;
922
+ }
898
923
  .max-w-4xl {
899
924
  max-width: 56rem;
900
925
  }
@@ -1025,6 +1050,9 @@ body {
1025
1050
  .flex-wrap {
1026
1051
  flex-wrap: wrap;
1027
1052
  }
1053
+ .place-items-end {
1054
+ place-items: end;
1055
+ }
1028
1056
  .content-start {
1029
1057
  align-content: flex-start;
1030
1058
  }
@@ -1040,6 +1068,9 @@ body {
1040
1068
  .justify-start {
1041
1069
  justify-content: flex-start;
1042
1070
  }
1071
+ .justify-end {
1072
+ justify-content: flex-end;
1073
+ }
1043
1074
  .justify-center {
1044
1075
  justify-content: center;
1045
1076
  }
@@ -1061,6 +1092,9 @@ body {
1061
1092
  .gap-12 {
1062
1093
  gap: 3rem;
1063
1094
  }
1095
+ .gap-16 {
1096
+ gap: 4rem;
1097
+ }
1064
1098
  .gap-2 {
1065
1099
  gap: 0.5rem;
1066
1100
  }
@@ -1076,6 +1110,11 @@ body {
1076
1110
  .gap-6 {
1077
1111
  gap: 1.5rem;
1078
1112
  }
1113
+ .-space-x-2 > :not([hidden]) ~ :not([hidden]) {
1114
+ --tw-space-x-reverse: 0;
1115
+ margin-right: calc(-0.5rem * var(--tw-space-x-reverse));
1116
+ margin-left: calc(-0.5rem * calc(1 - var(--tw-space-x-reverse)));
1117
+ }
1079
1118
  .space-x-1 > :not([hidden]) ~ :not([hidden]) {
1080
1119
  --tw-space-x-reverse: 0;
1081
1120
  margin-right: calc(0.25rem * var(--tw-space-x-reverse));
@@ -1186,6 +1225,9 @@ body {
1186
1225
  .rounded-md {
1187
1226
  border-radius: calc(var(--radius) - 2px);
1188
1227
  }
1228
+ .rounded-none {
1229
+ border-radius: 0px;
1230
+ }
1189
1231
  .rounded-sm {
1190
1232
  border-radius: calc(var(--radius) - 4px);
1191
1233
  }
@@ -1196,10 +1238,26 @@ body {
1196
1238
  border-bottom-right-radius: var(--radius);
1197
1239
  border-bottom-left-radius: var(--radius);
1198
1240
  }
1241
+ .rounded-b-md {
1242
+ border-bottom-right-radius: calc(var(--radius) - 2px);
1243
+ border-bottom-left-radius: calc(var(--radius) - 2px);
1244
+ }
1199
1245
  .rounded-b-xl {
1200
1246
  border-bottom-right-radius: 0.75rem;
1201
1247
  border-bottom-left-radius: 0.75rem;
1202
1248
  }
1249
+ .rounded-l-md {
1250
+ border-top-left-radius: calc(var(--radius) - 2px);
1251
+ border-bottom-left-radius: calc(var(--radius) - 2px);
1252
+ }
1253
+ .rounded-r-md {
1254
+ border-top-right-radius: calc(var(--radius) - 2px);
1255
+ border-bottom-right-radius: calc(var(--radius) - 2px);
1256
+ }
1257
+ .rounded-t-md {
1258
+ border-top-left-radius: calc(var(--radius) - 2px);
1259
+ border-top-right-radius: calc(var(--radius) - 2px);
1260
+ }
1203
1261
  .rounded-t-none {
1204
1262
  border-top-left-radius: 0px;
1205
1263
  border-top-right-radius: 0px;
@@ -1211,6 +1269,9 @@ body {
1211
1269
  .border {
1212
1270
  border-width: 1px;
1213
1271
  }
1272
+ .border-0 {
1273
+ border-width: 0px;
1274
+ }
1214
1275
  .border-2 {
1215
1276
  border-width: 2px;
1216
1277
  }
@@ -1426,6 +1487,10 @@ body {
1426
1487
  padding-left: 2rem;
1427
1488
  padding-right: 2rem;
1428
1489
  }
1490
+ .px-96 {
1491
+ padding-left: 24rem;
1492
+ padding-right: 24rem;
1493
+ }
1429
1494
  .py-0\.5 {
1430
1495
  padding-top: 0.125rem;
1431
1496
  padding-bottom: 0.125rem;
@@ -1442,6 +1507,10 @@ body {
1442
1507
  padding-top: 2.5rem;
1443
1508
  padding-bottom: 2.5rem;
1444
1509
  }
1510
+ .py-16 {
1511
+ padding-top: 4rem;
1512
+ padding-bottom: 4rem;
1513
+ }
1445
1514
  .py-2 {
1446
1515
  padding-top: 0.5rem;
1447
1516
  padding-bottom: 0.5rem;
@@ -1578,6 +1647,9 @@ body {
1578
1647
  .leading-none {
1579
1648
  line-height: 1;
1580
1649
  }
1650
+ .leading-tight {
1651
+ line-height: 1.25;
1652
+ }
1581
1653
  .tracking-tight {
1582
1654
  letter-spacing: -0.025em;
1583
1655
  }
@@ -1617,6 +1689,14 @@ body {
1617
1689
  .text-muted-foreground {
1618
1690
  color: hsl(var(--muted-foreground));
1619
1691
  }
1692
+ .text-neutral-600 {
1693
+ --tw-text-opacity: 1;
1694
+ color: rgb(82 82 82 / var(--tw-text-opacity, 1));
1695
+ }
1696
+ .text-neutral-900 {
1697
+ --tw-text-opacity: 1;
1698
+ color: rgb(23 23 23 / var(--tw-text-opacity, 1));
1699
+ }
1620
1700
  .text-popover-foreground {
1621
1701
  color: hsl(var(--popover-foreground));
1622
1702
  }
@@ -2193,6 +2273,11 @@ body {
2193
2273
  .hover\:z-10:hover {
2194
2274
  z-index: 10;
2195
2275
  }
2276
+ .hover\:scale-105:hover {
2277
+ --tw-scale-x: 1.05;
2278
+ --tw-scale-y: 1.05;
2279
+ transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
2280
+ }
2196
2281
  .hover\:scale-125:hover {
2197
2282
  --tw-scale-x: 1.25;
2198
2283
  --tw-scale-y: 1.25;
@@ -2706,6 +2791,21 @@ body {
2706
2791
  .data-\[state\=open\]\:duration-500[data-state=open] {
2707
2792
  animation-duration: 500ms;
2708
2793
  }
2794
+ .\*\:data-\[slot\=avatar\]\:ring-2[data-slot=avatar] > * {
2795
+ --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
2796
+ --tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
2797
+ box-shadow:
2798
+ var(--tw-ring-offset-shadow),
2799
+ var(--tw-ring-shadow),
2800
+ var(--tw-shadow, 0 0 #0000);
2801
+ }
2802
+ .\*\:data-\[slot\=avatar\]\:ring-background[data-slot=avatar] > * {
2803
+ --tw-ring-color: hsl(var(--background));
2804
+ }
2805
+ .\*\:data-\[slot\=avatar\]\:grayscale[data-slot=avatar] > * {
2806
+ --tw-grayscale: grayscale(100%);
2807
+ filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
2808
+ }
2709
2809
  .data-\[state\=active\]\:after\:scale-x-100[data-state=active]::after {
2710
2810
  content: var(--tw-content);
2711
2811
  --tw-scale-x: 1;
@@ -2851,6 +2951,10 @@ body {
2851
2951
  --tw-text-opacity: 1;
2852
2952
  color: rgb(209 213 219 / var(--tw-text-opacity, 1));
2853
2953
  }
2954
+ .dark\:text-neutral-300:is(.dark *) {
2955
+ --tw-text-opacity: 1;
2956
+ color: rgb(212 212 212 / var(--tw-text-opacity, 1));
2957
+ }
2854
2958
  .dark\:text-slate-400:is(.dark *) {
2855
2959
  --tw-text-opacity: 1;
2856
2960
  color: rgb(148 163 184 / var(--tw-text-opacity, 1));
@@ -2971,6 +3075,9 @@ body {
2971
3075
  .md\:grid-cols-2 {
2972
3076
  grid-template-columns: repeat(2, minmax(0, 1fr));
2973
3077
  }
3078
+ .md\:grid-cols-4 {
3079
+ grid-template-columns: repeat(4, minmax(0, 1fr));
3080
+ }
2974
3081
  .md\:flex-row {
2975
3082
  flex-direction: row;
2976
3083
  }
@@ -2990,10 +3097,22 @@ body {
2990
3097
  .md\:text-left {
2991
3098
  text-align: left;
2992
3099
  }
3100
+ .md\:text-4xl {
3101
+ font-size: 2.25rem;
3102
+ line-height: 2.5rem;
3103
+ }
3104
+ .md\:text-5xl {
3105
+ font-size: 3rem;
3106
+ line-height: 1;
3107
+ }
2993
3108
  .md\:text-sm {
2994
3109
  font-size: 0.875rem;
2995
3110
  line-height: 1.25rem;
2996
3111
  }
3112
+ .md\:text-xl {
3113
+ font-size: 1.25rem;
3114
+ line-height: 1.75rem;
3115
+ }
2997
3116
  .md\:opacity-0 {
2998
3117
  opacity: 0;
2999
3118
  }
package/dist/index.d.mts CHANGED
@@ -55,6 +55,11 @@ interface ButtonProps extends React$1.ButtonHTMLAttributes<HTMLButtonElement>, V
55
55
  asChild?: boolean;
56
56
  }
57
57
  declare const ButtonBase: React$1.ForwardRefExoticComponent<ButtonProps & React$1.RefAttributes<HTMLButtonElement>>;
58
+ interface ButtonGroupProps extends React$1.HTMLAttributes<HTMLDivElement> {
59
+ children: React$1.ReactNode;
60
+ orientation?: "horizontal" | "vertical";
61
+ }
62
+ declare const ButtonGroupBase: React$1.ForwardRefExoticComponent<ButtonGroupProps & React$1.RefAttributes<HTMLDivElement>>;
58
63
 
59
64
  declare const CardBase: React$1.ForwardRefExoticComponent<React$1.HTMLAttributes<HTMLDivElement> & React$1.RefAttributes<HTMLDivElement>>;
60
65
  declare const CardHeaderBase: React$1.ForwardRefExoticComponent<React$1.HTMLAttributes<HTMLDivElement> & React$1.RefAttributes<HTMLDivElement>>;
@@ -536,4 +541,4 @@ declare const defaultStringConditions: AvailableFilterConditions[];
536
541
 
537
542
  declare function buildFilterSummary<T extends Record<string, unknown>>(filter: Filter<T>, availableFilters: AvailableFilter<T>[]): string | null;
538
543
 
539
- export { AlertDialogActionBase, AlertDialogBase, AlertDialogCancelBase, AlertDialogContentBase, AlertDialogDescriptionBase, AlertDialogFooterBase, AlertDialogHeaderBase, AlertDialogOverlayBase, AlertDialogPortalBase, AlertDialogTitleBase, AlertDialogTriggerBase, AvatarBase, AvatarFallbackBase, AvatarImageBase, ButtonBase, type ButtonProps, CalendarBase, type CalendarProps, CardBase, CardContentBase, CardDescriptionBase, CardFooterBase, CardHeaderBase, CardTitleBase, CheckboxBase, Combobox, type ComboboxItem, type ComboboxProps, CommandBase, CommandDialogBase, CommandEmptyBase, CommandGroupBase, CommandInputBase, CommandItemBase, CommandListBase, CommandSeparatorBase, CommandShortcutBase, DateTimePicker, DialogBase, DialogCloseBase, DialogContentBase, DialogDescriptionBase, DialogFooterBase, DialogHeaderBase, DialogOverlayBase, DialogPortalBase, DialogTitleBase, DialogTriggerBase, DropDownMenuBase, DropDownMenuCheckboxItemBase, DropDownMenuContentBase, DropDownMenuGroupBase, DropDownMenuItemBase, DropDownMenuLabelBase, DropDownMenuPortalBase, DropDownMenuRadioGroupBase, DropDownMenuRadioItemBase, DropDownMenuSeparatorBase, DropDownMenuShortcutBase, DropDownMenuSubBase, DropDownMenuSubContentBase, DropDownMenuSubTriggerBase, DropDownMenuTriggerBase, FormBase, FormControlBase, FormDescriptionBase, FormFieldBase, FormItemBase, FormLabelBase, FormMessageBase, InputBase, type InputBaseProps, LabelBase, type LabelBaseProps, ModeToggleBase, MultiCombobox, PopoverAnchorBase, PopoverBase, PopoverContentBase, PopoverTriggerBase, ProgressBase, type ProgressBaseProps, ProgressCirclesBase, type ProgressCirclesBaseProps, ProgressPanelsBase, type ProgressPanelsBaseProps, ProgressSegmentsBase, type ProgressSegmentsBaseProps, ScrollAreaBase, ScrollBarBase, Select, SelectBase, SelectContentBase, SelectGroupBase, type SelectItem$1 as SelectItem, SelectItemBase, SelectLabelBase, SelectScrollDownButtonBase, SelectScrollUpButtonBase, SelectSeparatorBase, SelectTriggerBase, SelectValueBase, SeparatorBase, SheetBase, SheetCloseBase, SheetContentBase, SheetDescriptionBase, SheetFooterBase, SheetHeaderBase, SheetOverlayBase, SheetPortalBase, SheetTitleBase, SheetTriggerBase, SidebarBase, SidebarContentBase, SidebarFooterBase, SidebarGroupActionBase, SidebarGroupBase, SidebarGroupContentBase, SidebarGroupLabelBase, SidebarHeaderBase, SidebarInputBase, SidebarInsetBase, SidebarMenuActionBase, SidebarMenuBadgeBase, SidebarMenuBase, SidebarMenuButtonBase, SidebarMenuItemBase, SidebarMenuSkeletonBase, SidebarMenuSubBase, SidebarMenuSubButtonBase, SidebarMenuSubItemBase, SidebarProviderBase, SidebarRailBase, SidebarSeparatorBase, SidebarTriggerBase, SkeletonBase, SlideBase, type SliderBaseProps, SwitchBase, TableBase, TableBodyBase, TableCaptionBase, TableCellBase, TableFooterBase, TableHeadBase, TableHeaderBase, TableRowBase, TabsBase, TabsContentBase, TabsListBase, TabsTriggerBase, TextAreaBase, type Theme, ThemeProviderBase, TimePicker, TimePickerInput, type TimePickerInputProps, Toaster, TooltipBase, TooltipContentBase, TooltipProviderBase, TooltipTriggerBase, UseSideBarBase, applyfilter, buildFilterSummary, buttonVariantsBase, defaultStringConditions, useFormFieldBase, useIsMobile, useTheme };
544
+ export { AlertDialogActionBase, AlertDialogBase, AlertDialogCancelBase, AlertDialogContentBase, AlertDialogDescriptionBase, AlertDialogFooterBase, AlertDialogHeaderBase, AlertDialogOverlayBase, AlertDialogPortalBase, AlertDialogTitleBase, AlertDialogTriggerBase, AvatarBase, AvatarFallbackBase, AvatarImageBase, ButtonBase, ButtonGroupBase, type ButtonProps, CalendarBase, type CalendarProps, CardBase, CardContentBase, CardDescriptionBase, CardFooterBase, CardHeaderBase, CardTitleBase, CheckboxBase, Combobox, type ComboboxItem, type ComboboxProps, CommandBase, CommandDialogBase, CommandEmptyBase, CommandGroupBase, CommandInputBase, CommandItemBase, CommandListBase, CommandSeparatorBase, CommandShortcutBase, DateTimePicker, DialogBase, DialogCloseBase, DialogContentBase, DialogDescriptionBase, DialogFooterBase, DialogHeaderBase, DialogOverlayBase, DialogPortalBase, DialogTitleBase, DialogTriggerBase, DropDownMenuBase, DropDownMenuCheckboxItemBase, DropDownMenuContentBase, DropDownMenuGroupBase, DropDownMenuItemBase, DropDownMenuLabelBase, DropDownMenuPortalBase, DropDownMenuRadioGroupBase, DropDownMenuRadioItemBase, DropDownMenuSeparatorBase, DropDownMenuShortcutBase, DropDownMenuSubBase, DropDownMenuSubContentBase, DropDownMenuSubTriggerBase, DropDownMenuTriggerBase, FormBase, FormControlBase, FormDescriptionBase, FormFieldBase, FormItemBase, FormLabelBase, FormMessageBase, InputBase, type InputBaseProps, LabelBase, type LabelBaseProps, ModeToggleBase, MultiCombobox, PopoverAnchorBase, PopoverBase, PopoverContentBase, PopoverTriggerBase, ProgressBase, type ProgressBaseProps, ProgressCirclesBase, type ProgressCirclesBaseProps, ProgressPanelsBase, type ProgressPanelsBaseProps, ProgressSegmentsBase, type ProgressSegmentsBaseProps, ScrollAreaBase, ScrollBarBase, Select, SelectBase, SelectContentBase, SelectGroupBase, type SelectItem$1 as SelectItem, SelectItemBase, SelectLabelBase, SelectScrollDownButtonBase, SelectScrollUpButtonBase, SelectSeparatorBase, SelectTriggerBase, SelectValueBase, SeparatorBase, SheetBase, SheetCloseBase, SheetContentBase, SheetDescriptionBase, SheetFooterBase, SheetHeaderBase, SheetOverlayBase, SheetPortalBase, SheetTitleBase, SheetTriggerBase, SidebarBase, SidebarContentBase, SidebarFooterBase, SidebarGroupActionBase, SidebarGroupBase, SidebarGroupContentBase, SidebarGroupLabelBase, SidebarHeaderBase, SidebarInputBase, SidebarInsetBase, SidebarMenuActionBase, SidebarMenuBadgeBase, SidebarMenuBase, SidebarMenuButtonBase, SidebarMenuItemBase, SidebarMenuSkeletonBase, SidebarMenuSubBase, SidebarMenuSubButtonBase, SidebarMenuSubItemBase, SidebarProviderBase, SidebarRailBase, SidebarSeparatorBase, SidebarTriggerBase, SkeletonBase, SlideBase, type SliderBaseProps, SwitchBase, TableBase, TableBodyBase, TableCaptionBase, TableCellBase, TableFooterBase, TableHeadBase, TableHeaderBase, TableRowBase, TabsBase, TabsContentBase, TabsListBase, TabsTriggerBase, TextAreaBase, type Theme, ThemeProviderBase, TimePicker, TimePickerInput, type TimePickerInputProps, Toaster, TooltipBase, TooltipContentBase, TooltipProviderBase, TooltipTriggerBase, UseSideBarBase, applyfilter, buildFilterSummary, buttonVariantsBase, defaultStringConditions, useFormFieldBase, useIsMobile, useTheme };
package/dist/index.d.ts CHANGED
@@ -55,6 +55,11 @@ interface ButtonProps extends React$1.ButtonHTMLAttributes<HTMLButtonElement>, V
55
55
  asChild?: boolean;
56
56
  }
57
57
  declare const ButtonBase: React$1.ForwardRefExoticComponent<ButtonProps & React$1.RefAttributes<HTMLButtonElement>>;
58
+ interface ButtonGroupProps extends React$1.HTMLAttributes<HTMLDivElement> {
59
+ children: React$1.ReactNode;
60
+ orientation?: "horizontal" | "vertical";
61
+ }
62
+ declare const ButtonGroupBase: React$1.ForwardRefExoticComponent<ButtonGroupProps & React$1.RefAttributes<HTMLDivElement>>;
58
63
 
59
64
  declare const CardBase: React$1.ForwardRefExoticComponent<React$1.HTMLAttributes<HTMLDivElement> & React$1.RefAttributes<HTMLDivElement>>;
60
65
  declare const CardHeaderBase: React$1.ForwardRefExoticComponent<React$1.HTMLAttributes<HTMLDivElement> & React$1.RefAttributes<HTMLDivElement>>;
@@ -536,4 +541,4 @@ declare const defaultStringConditions: AvailableFilterConditions[];
536
541
 
537
542
  declare function buildFilterSummary<T extends Record<string, unknown>>(filter: Filter<T>, availableFilters: AvailableFilter<T>[]): string | null;
538
543
 
539
- export { AlertDialogActionBase, AlertDialogBase, AlertDialogCancelBase, AlertDialogContentBase, AlertDialogDescriptionBase, AlertDialogFooterBase, AlertDialogHeaderBase, AlertDialogOverlayBase, AlertDialogPortalBase, AlertDialogTitleBase, AlertDialogTriggerBase, AvatarBase, AvatarFallbackBase, AvatarImageBase, ButtonBase, type ButtonProps, CalendarBase, type CalendarProps, CardBase, CardContentBase, CardDescriptionBase, CardFooterBase, CardHeaderBase, CardTitleBase, CheckboxBase, Combobox, type ComboboxItem, type ComboboxProps, CommandBase, CommandDialogBase, CommandEmptyBase, CommandGroupBase, CommandInputBase, CommandItemBase, CommandListBase, CommandSeparatorBase, CommandShortcutBase, DateTimePicker, DialogBase, DialogCloseBase, DialogContentBase, DialogDescriptionBase, DialogFooterBase, DialogHeaderBase, DialogOverlayBase, DialogPortalBase, DialogTitleBase, DialogTriggerBase, DropDownMenuBase, DropDownMenuCheckboxItemBase, DropDownMenuContentBase, DropDownMenuGroupBase, DropDownMenuItemBase, DropDownMenuLabelBase, DropDownMenuPortalBase, DropDownMenuRadioGroupBase, DropDownMenuRadioItemBase, DropDownMenuSeparatorBase, DropDownMenuShortcutBase, DropDownMenuSubBase, DropDownMenuSubContentBase, DropDownMenuSubTriggerBase, DropDownMenuTriggerBase, FormBase, FormControlBase, FormDescriptionBase, FormFieldBase, FormItemBase, FormLabelBase, FormMessageBase, InputBase, type InputBaseProps, LabelBase, type LabelBaseProps, ModeToggleBase, MultiCombobox, PopoverAnchorBase, PopoverBase, PopoverContentBase, PopoverTriggerBase, ProgressBase, type ProgressBaseProps, ProgressCirclesBase, type ProgressCirclesBaseProps, ProgressPanelsBase, type ProgressPanelsBaseProps, ProgressSegmentsBase, type ProgressSegmentsBaseProps, ScrollAreaBase, ScrollBarBase, Select, SelectBase, SelectContentBase, SelectGroupBase, type SelectItem$1 as SelectItem, SelectItemBase, SelectLabelBase, SelectScrollDownButtonBase, SelectScrollUpButtonBase, SelectSeparatorBase, SelectTriggerBase, SelectValueBase, SeparatorBase, SheetBase, SheetCloseBase, SheetContentBase, SheetDescriptionBase, SheetFooterBase, SheetHeaderBase, SheetOverlayBase, SheetPortalBase, SheetTitleBase, SheetTriggerBase, SidebarBase, SidebarContentBase, SidebarFooterBase, SidebarGroupActionBase, SidebarGroupBase, SidebarGroupContentBase, SidebarGroupLabelBase, SidebarHeaderBase, SidebarInputBase, SidebarInsetBase, SidebarMenuActionBase, SidebarMenuBadgeBase, SidebarMenuBase, SidebarMenuButtonBase, SidebarMenuItemBase, SidebarMenuSkeletonBase, SidebarMenuSubBase, SidebarMenuSubButtonBase, SidebarMenuSubItemBase, SidebarProviderBase, SidebarRailBase, SidebarSeparatorBase, SidebarTriggerBase, SkeletonBase, SlideBase, type SliderBaseProps, SwitchBase, TableBase, TableBodyBase, TableCaptionBase, TableCellBase, TableFooterBase, TableHeadBase, TableHeaderBase, TableRowBase, TabsBase, TabsContentBase, TabsListBase, TabsTriggerBase, TextAreaBase, type Theme, ThemeProviderBase, TimePicker, TimePickerInput, type TimePickerInputProps, Toaster, TooltipBase, TooltipContentBase, TooltipProviderBase, TooltipTriggerBase, UseSideBarBase, applyfilter, buildFilterSummary, buttonVariantsBase, defaultStringConditions, useFormFieldBase, useIsMobile, useTheme };
544
+ export { AlertDialogActionBase, AlertDialogBase, AlertDialogCancelBase, AlertDialogContentBase, AlertDialogDescriptionBase, AlertDialogFooterBase, AlertDialogHeaderBase, AlertDialogOverlayBase, AlertDialogPortalBase, AlertDialogTitleBase, AlertDialogTriggerBase, AvatarBase, AvatarFallbackBase, AvatarImageBase, ButtonBase, ButtonGroupBase, type ButtonProps, CalendarBase, type CalendarProps, CardBase, CardContentBase, CardDescriptionBase, CardFooterBase, CardHeaderBase, CardTitleBase, CheckboxBase, Combobox, type ComboboxItem, type ComboboxProps, CommandBase, CommandDialogBase, CommandEmptyBase, CommandGroupBase, CommandInputBase, CommandItemBase, CommandListBase, CommandSeparatorBase, CommandShortcutBase, DateTimePicker, DialogBase, DialogCloseBase, DialogContentBase, DialogDescriptionBase, DialogFooterBase, DialogHeaderBase, DialogOverlayBase, DialogPortalBase, DialogTitleBase, DialogTriggerBase, DropDownMenuBase, DropDownMenuCheckboxItemBase, DropDownMenuContentBase, DropDownMenuGroupBase, DropDownMenuItemBase, DropDownMenuLabelBase, DropDownMenuPortalBase, DropDownMenuRadioGroupBase, DropDownMenuRadioItemBase, DropDownMenuSeparatorBase, DropDownMenuShortcutBase, DropDownMenuSubBase, DropDownMenuSubContentBase, DropDownMenuSubTriggerBase, DropDownMenuTriggerBase, FormBase, FormControlBase, FormDescriptionBase, FormFieldBase, FormItemBase, FormLabelBase, FormMessageBase, InputBase, type InputBaseProps, LabelBase, type LabelBaseProps, ModeToggleBase, MultiCombobox, PopoverAnchorBase, PopoverBase, PopoverContentBase, PopoverTriggerBase, ProgressBase, type ProgressBaseProps, ProgressCirclesBase, type ProgressCirclesBaseProps, ProgressPanelsBase, type ProgressPanelsBaseProps, ProgressSegmentsBase, type ProgressSegmentsBaseProps, ScrollAreaBase, ScrollBarBase, Select, SelectBase, SelectContentBase, SelectGroupBase, type SelectItem$1 as SelectItem, SelectItemBase, SelectLabelBase, SelectScrollDownButtonBase, SelectScrollUpButtonBase, SelectSeparatorBase, SelectTriggerBase, SelectValueBase, SeparatorBase, SheetBase, SheetCloseBase, SheetContentBase, SheetDescriptionBase, SheetFooterBase, SheetHeaderBase, SheetOverlayBase, SheetPortalBase, SheetTitleBase, SheetTriggerBase, SidebarBase, SidebarContentBase, SidebarFooterBase, SidebarGroupActionBase, SidebarGroupBase, SidebarGroupContentBase, SidebarGroupLabelBase, SidebarHeaderBase, SidebarInputBase, SidebarInsetBase, SidebarMenuActionBase, SidebarMenuBadgeBase, SidebarMenuBase, SidebarMenuButtonBase, SidebarMenuItemBase, SidebarMenuSkeletonBase, SidebarMenuSubBase, SidebarMenuSubButtonBase, SidebarMenuSubItemBase, SidebarProviderBase, SidebarRailBase, SidebarSeparatorBase, SidebarTriggerBase, SkeletonBase, SlideBase, type SliderBaseProps, SwitchBase, TableBase, TableBodyBase, TableCaptionBase, TableCellBase, TableFooterBase, TableHeadBase, TableHeaderBase, TableRowBase, TabsBase, TabsContentBase, TabsListBase, TabsTriggerBase, TextAreaBase, type Theme, ThemeProviderBase, TimePicker, TimePickerInput, type TimePickerInputProps, Toaster, TooltipBase, TooltipContentBase, TooltipProviderBase, TooltipTriggerBase, UseSideBarBase, applyfilter, buildFilterSummary, buttonVariantsBase, defaultStringConditions, useFormFieldBase, useIsMobile, useTheme };
package/dist/index.js CHANGED
@@ -46,6 +46,7 @@ __export(index_exports, {
46
46
  AvatarFallbackBase: () => AvatarFallbackBase,
47
47
  AvatarImageBase: () => AvatarImageBase,
48
48
  ButtonBase: () => ButtonBase,
49
+ ButtonGroupBase: () => ButtonGroupBase,
49
50
  CalendarBase: () => CalendarBase2,
50
51
  CardBase: () => CardBase,
51
52
  CardContentBase: () => CardContentBase,
@@ -220,33 +221,15 @@ var buttonVariantsBase = (0, import_class_variance_authority.cva)(
220
221
  {
221
222
  variants: {
222
223
  variant: {
223
- default: `
224
- bg-primary text-primary-foreground shadow
225
- hover:opacity-90
226
- hover:shadow-md
227
- `,
228
- destructive: `
229
- bg-destructive text-destructive-foreground shadow-sm
230
- hover:bg-destructive/90 hover:shadow-md
231
- `,
232
- outline: `
233
- border border-input bg-background shadow-sm
234
- hover:bg-accent hover:text-accent-foreground hover:shadow-md
235
- `,
236
- secondary: `
237
- bg-secondary border border-transparent text-secondary-foreground shadow-sm
238
- hover:opacity-80 hover:shadow-md
239
- `,
240
- ghost: `
241
- hover:bg-accent hover:text-accent-foreground
242
- `,
243
- link: `
244
- text-primary underline-offset-4
245
- hover:underline
246
- `
224
+ default: "bg-primary text-primary-foreground shadow hover:opacity-90 hover:shadow-md",
225
+ destructive: "bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90 hover:shadow-md",
226
+ outline: "border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground hover:shadow-md",
227
+ secondary: "bg-secondary text-secondary-foreground shadow-sm border border-transparent hover:opacity-80 hover:shadow-md",
228
+ ghost: "hover:bg-accent hover:text-accent-foreground",
229
+ link: "text-primary underline-offset-4 hover:underline"
247
230
  },
248
231
  size: {
249
- default: "px-4 py-1.5",
232
+ default: "h-9 px-4 py-1.5",
250
233
  sm: "h-8 rounded-md px-3 text-xs",
251
234
  lg: "h-10 rounded-md px-8",
252
235
  icon: "h-9 w-9"
@@ -272,6 +255,38 @@ var ButtonBase = React.forwardRef(
272
255
  }
273
256
  );
274
257
  ButtonBase.displayName = "Button";
258
+ var ButtonGroupBase = React.forwardRef(
259
+ ({ className, children, orientation = "horizontal", ...props }, ref) => {
260
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
261
+ "div",
262
+ {
263
+ ref,
264
+ className: cn(
265
+ "inline-flex",
266
+ orientation === "vertical" ? "flex-col" : "flex-row",
267
+ "rounded-md overflow-hidden shadow-sm isolate",
268
+ className
269
+ ),
270
+ ...props,
271
+ children: React.Children.map(children, (child, index) => {
272
+ if (!React.isValidElement(child)) return child;
273
+ const typedChild = child;
274
+ return React.cloneElement(typedChild, {
275
+ className: cn(
276
+ typedChild.props.className,
277
+ "rounded-none border-0",
278
+ index === 0 && orientation === "horizontal" && "rounded-l-md",
279
+ index === 0 && orientation === "vertical" && "rounded-t-md",
280
+ index === React.Children.count(children) - 1 && orientation === "horizontal" && "rounded-r-md",
281
+ index === React.Children.count(children) - 1 && orientation === "vertical" && "rounded-b-md"
282
+ )
283
+ });
284
+ })
285
+ }
286
+ );
287
+ }
288
+ );
289
+ ButtonGroupBase.displayName = "ButtonGroup";
275
290
 
276
291
  // src/components/ui/AlertDialogBase.tsx
277
292
  var import_jsx_runtime2 = require("react/jsx-runtime");
@@ -609,24 +624,34 @@ var InputBase = React6.forwardRef(
609
624
  rightIcon,
610
625
  ...props
611
626
  }, ref) => {
612
- return /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { className: "flex flex-col gap-1 w-full min-w-[150px]", children: [
627
+ return /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { className: "flex flex-col w-full min-w-[150px]", children: [
613
628
  label && /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(LabelBase_default, { className: labelClassname, children: label }),
614
- /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)("div", { className: "flex items-center rounded-md border border-input transition focus-within:ring-1 focus-within:ring-ring focus-within:border-ring bg-white dark:bg-[hsl(231,15%,19%)]", children: [
615
- leftIcon && /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("div", { className: "flex items-center justify-center px-2 bg-white dark:bg-[hsl(231,15%,19%)]", children: leftIcon }),
616
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
617
- "input",
618
- {
619
- type,
620
- className: cn(
621
- "w-full overflow-hidden flex-1 bg-white dark:bg-[hsl(231,15%,19%)] px-3 py-1 text-base placeholder:text-muted-foreground focus:outline-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",
622
- className
629
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(
630
+ "div",
631
+ {
632
+ className: cn(
633
+ "flex items-center rounded-md transition focus-within:ring-1 focus-within:ring-ring focus-within:border-ring bg-white dark:bg-[hsl(231,15%,19%)] overflow-hidden",
634
+ type !== "number" && type !== "file" && "border border-input",
635
+ (type === "file" || type === "number") && "border-none"
636
+ ),
637
+ children: [
638
+ leftIcon && /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("div", { className: "flex items-center justify-center px-2", children: leftIcon }),
639
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
640
+ "input",
641
+ {
642
+ type,
643
+ className: cn(
644
+ "w-full flex-1 text-sm leading-tight py-2 px-3 focus:outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50 bg-white dark:bg-[hsl(231,15%,19%)]",
645
+ className
646
+ ),
647
+ ref,
648
+ ...props
649
+ }
623
650
  ),
624
- ref,
625
- ...props
626
- }
627
- ),
628
- rightIcon && /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("div", { className: "flex items-center justify-center px-2 bg-white dark:bg-[hsl(231,15%,19%)]", children: rightIcon })
629
- ] })
651
+ rightIcon && /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("div", { className: "flex items-center justify-center px-2", children: rightIcon })
652
+ ]
653
+ }
654
+ )
630
655
  ] });
631
656
  }
632
657
  );
@@ -3319,6 +3344,7 @@ function buildFilterSummary(filter, availableFilters) {
3319
3344
  AvatarFallbackBase,
3320
3345
  AvatarImageBase,
3321
3346
  ButtonBase,
3347
+ ButtonGroupBase,
3322
3348
  CalendarBase,
3323
3349
  CardBase,
3324
3350
  CardContentBase,
package/dist/index.mjs CHANGED
@@ -29,33 +29,15 @@ var buttonVariantsBase = cva(
29
29
  {
30
30
  variants: {
31
31
  variant: {
32
- default: `
33
- bg-primary text-primary-foreground shadow
34
- hover:opacity-90
35
- hover:shadow-md
36
- `,
37
- destructive: `
38
- bg-destructive text-destructive-foreground shadow-sm
39
- hover:bg-destructive/90 hover:shadow-md
40
- `,
41
- outline: `
42
- border border-input bg-background shadow-sm
43
- hover:bg-accent hover:text-accent-foreground hover:shadow-md
44
- `,
45
- secondary: `
46
- bg-secondary border border-transparent text-secondary-foreground shadow-sm
47
- hover:opacity-80 hover:shadow-md
48
- `,
49
- ghost: `
50
- hover:bg-accent hover:text-accent-foreground
51
- `,
52
- link: `
53
- text-primary underline-offset-4
54
- hover:underline
55
- `
32
+ default: "bg-primary text-primary-foreground shadow hover:opacity-90 hover:shadow-md",
33
+ destructive: "bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90 hover:shadow-md",
34
+ outline: "border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground hover:shadow-md",
35
+ secondary: "bg-secondary text-secondary-foreground shadow-sm border border-transparent hover:opacity-80 hover:shadow-md",
36
+ ghost: "hover:bg-accent hover:text-accent-foreground",
37
+ link: "text-primary underline-offset-4 hover:underline"
56
38
  },
57
39
  size: {
58
- default: "px-4 py-1.5",
40
+ default: "h-9 px-4 py-1.5",
59
41
  sm: "h-8 rounded-md px-3 text-xs",
60
42
  lg: "h-10 rounded-md px-8",
61
43
  icon: "h-9 w-9"
@@ -81,6 +63,38 @@ var ButtonBase = React.forwardRef(
81
63
  }
82
64
  );
83
65
  ButtonBase.displayName = "Button";
66
+ var ButtonGroupBase = React.forwardRef(
67
+ ({ className, children, orientation = "horizontal", ...props }, ref) => {
68
+ return /* @__PURE__ */ jsx(
69
+ "div",
70
+ {
71
+ ref,
72
+ className: cn(
73
+ "inline-flex",
74
+ orientation === "vertical" ? "flex-col" : "flex-row",
75
+ "rounded-md overflow-hidden shadow-sm isolate",
76
+ className
77
+ ),
78
+ ...props,
79
+ children: React.Children.map(children, (child, index) => {
80
+ if (!React.isValidElement(child)) return child;
81
+ const typedChild = child;
82
+ return React.cloneElement(typedChild, {
83
+ className: cn(
84
+ typedChild.props.className,
85
+ "rounded-none border-0",
86
+ index === 0 && orientation === "horizontal" && "rounded-l-md",
87
+ index === 0 && orientation === "vertical" && "rounded-t-md",
88
+ index === React.Children.count(children) - 1 && orientation === "horizontal" && "rounded-r-md",
89
+ index === React.Children.count(children) - 1 && orientation === "vertical" && "rounded-b-md"
90
+ )
91
+ });
92
+ })
93
+ }
94
+ );
95
+ }
96
+ );
97
+ ButtonGroupBase.displayName = "ButtonGroup";
84
98
 
85
99
  // src/components/ui/AlertDialogBase.tsx
86
100
  import { jsx as jsx2, jsxs } from "react/jsx-runtime";
@@ -418,24 +432,34 @@ var InputBase = React6.forwardRef(
418
432
  rightIcon,
419
433
  ...props
420
434
  }, ref) => {
421
- return /* @__PURE__ */ jsxs3("div", { className: "flex flex-col gap-1 w-full min-w-[150px]", children: [
435
+ return /* @__PURE__ */ jsxs3("div", { className: "flex flex-col w-full min-w-[150px]", children: [
422
436
  label && /* @__PURE__ */ jsx7(LabelBase_default, { className: labelClassname, children: label }),
423
- /* @__PURE__ */ jsxs3("div", { className: "flex items-center rounded-md border border-input transition focus-within:ring-1 focus-within:ring-ring focus-within:border-ring bg-white dark:bg-[hsl(231,15%,19%)]", children: [
424
- leftIcon && /* @__PURE__ */ jsx7("div", { className: "flex items-center justify-center px-2 bg-white dark:bg-[hsl(231,15%,19%)]", children: leftIcon }),
425
- /* @__PURE__ */ jsx7(
426
- "input",
427
- {
428
- type,
429
- className: cn(
430
- "w-full overflow-hidden flex-1 bg-white dark:bg-[hsl(231,15%,19%)] px-3 py-1 text-base placeholder:text-muted-foreground focus:outline-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",
431
- className
437
+ /* @__PURE__ */ jsxs3(
438
+ "div",
439
+ {
440
+ className: cn(
441
+ "flex items-center rounded-md transition focus-within:ring-1 focus-within:ring-ring focus-within:border-ring bg-white dark:bg-[hsl(231,15%,19%)] overflow-hidden",
442
+ type !== "number" && type !== "file" && "border border-input",
443
+ (type === "file" || type === "number") && "border-none"
444
+ ),
445
+ children: [
446
+ leftIcon && /* @__PURE__ */ jsx7("div", { className: "flex items-center justify-center px-2", children: leftIcon }),
447
+ /* @__PURE__ */ jsx7(
448
+ "input",
449
+ {
450
+ type,
451
+ className: cn(
452
+ "w-full flex-1 text-sm leading-tight py-2 px-3 focus:outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50 bg-white dark:bg-[hsl(231,15%,19%)]",
453
+ className
454
+ ),
455
+ ref,
456
+ ...props
457
+ }
432
458
  ),
433
- ref,
434
- ...props
435
- }
436
- ),
437
- rightIcon && /* @__PURE__ */ jsx7("div", { className: "flex items-center justify-center px-2 bg-white dark:bg-[hsl(231,15%,19%)]", children: rightIcon })
438
- ] })
459
+ rightIcon && /* @__PURE__ */ jsx7("div", { className: "flex items-center justify-center px-2", children: rightIcon })
460
+ ]
461
+ }
462
+ )
439
463
  ] });
440
464
  }
441
465
  );
@@ -3131,6 +3155,7 @@ export {
3131
3155
  AvatarFallbackBase,
3132
3156
  AvatarImageBase,
3133
3157
  ButtonBase,
3158
+ ButtonGroupBase,
3134
3159
  CalendarBase2 as CalendarBase,
3135
3160
  CardBase,
3136
3161
  CardContentBase,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mlw-packages/react-components",
3
- "version": "1.3.0",
3
+ "version": "1.3.2",
4
4
  "main": "dist/index.js",
5
5
  "module": "dist/index.mjs",
6
6
  "types": "dist/index.d.ts",