@rovula/ui 0.0.76 → 0.0.78

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 (56) hide show
  1. package/dist/cjs/bundle.css +40 -0
  2. package/dist/cjs/bundle.js +3 -3
  3. package/dist/cjs/bundle.js.map +1 -1
  4. package/dist/cjs/types/components/Dropdown/Dropdown.stories.d.ts +7 -0
  5. package/dist/cjs/types/components/InputFilter/InputFilter.stories.d.ts +7 -0
  6. package/dist/cjs/types/components/MaskedTextInput/MaskedTextInput.d.ts +75 -0
  7. package/dist/cjs/types/components/MaskedTextInput/MaskedTextInput.stories.d.ts +491 -0
  8. package/dist/cjs/types/components/MaskedTextInput/index.d.ts +3 -0
  9. package/dist/cjs/types/components/NumberInput/NumberInput.d.ts +39 -0
  10. package/dist/cjs/types/components/NumberInput/NumberInput.stories.d.ts +18 -0
  11. package/dist/cjs/types/components/NumberInput/index.d.ts +2 -0
  12. package/dist/cjs/types/components/RadioGroup/RadioGroup.stories.d.ts +1 -1
  13. package/dist/cjs/types/components/Search/Search.stories.d.ts +7 -0
  14. package/dist/cjs/types/components/Slider/Slider.stories.d.ts +1 -1
  15. package/dist/cjs/types/components/TextInput/TextInput.d.ts +14 -0
  16. package/dist/cjs/types/components/TextInput/TextInput.stories.d.ts +14 -0
  17. package/dist/cjs/types/index.d.ts +4 -0
  18. package/dist/components/MaskedTextInput/MaskedTextInput.js +267 -0
  19. package/dist/components/MaskedTextInput/MaskedTextInput.stories.js +167 -0
  20. package/dist/components/MaskedTextInput/index.js +2 -0
  21. package/dist/components/NumberInput/NumberInput.js +254 -0
  22. package/dist/components/NumberInput/NumberInput.stories.js +212 -0
  23. package/dist/components/NumberInput/index.js +1 -0
  24. package/dist/components/TextInput/TextInput.js +13 -11
  25. package/dist/components/Toast/Toast.styles.js +1 -1
  26. package/dist/esm/bundle.css +40 -0
  27. package/dist/esm/bundle.js +3 -3
  28. package/dist/esm/bundle.js.map +1 -1
  29. package/dist/esm/types/components/Dropdown/Dropdown.stories.d.ts +7 -0
  30. package/dist/esm/types/components/InputFilter/InputFilter.stories.d.ts +7 -0
  31. package/dist/esm/types/components/MaskedTextInput/MaskedTextInput.d.ts +75 -0
  32. package/dist/esm/types/components/MaskedTextInput/MaskedTextInput.stories.d.ts +491 -0
  33. package/dist/esm/types/components/MaskedTextInput/index.d.ts +3 -0
  34. package/dist/esm/types/components/NumberInput/NumberInput.d.ts +39 -0
  35. package/dist/esm/types/components/NumberInput/NumberInput.stories.d.ts +18 -0
  36. package/dist/esm/types/components/NumberInput/index.d.ts +2 -0
  37. package/dist/esm/types/components/RadioGroup/RadioGroup.stories.d.ts +1 -1
  38. package/dist/esm/types/components/Search/Search.stories.d.ts +7 -0
  39. package/dist/esm/types/components/Slider/Slider.stories.d.ts +1 -1
  40. package/dist/esm/types/components/TextInput/TextInput.d.ts +14 -0
  41. package/dist/esm/types/components/TextInput/TextInput.stories.d.ts +14 -0
  42. package/dist/esm/types/index.d.ts +4 -0
  43. package/dist/index.d.ts +110 -1
  44. package/dist/index.js +2 -0
  45. package/dist/src/theme/global.css +51 -0
  46. package/package.json +1 -1
  47. package/src/components/MaskedTextInput/MaskedTextInput.stories.tsx +414 -0
  48. package/src/components/MaskedTextInput/MaskedTextInput.tsx +391 -0
  49. package/src/components/MaskedTextInput/README.md +202 -0
  50. package/src/components/MaskedTextInput/index.ts +3 -0
  51. package/src/components/NumberInput/NumberInput.stories.tsx +350 -0
  52. package/src/components/NumberInput/NumberInput.tsx +428 -0
  53. package/src/components/NumberInput/index.ts +2 -0
  54. package/src/components/TextInput/TextInput.tsx +54 -12
  55. package/src/components/Toast/Toast.styles.tsx +1 -1
  56. package/src/index.ts +7 -0
@@ -279,9 +279,9 @@ declare const meta: {
279
279
  inputMode?: "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | "search" | undefined | undefined;
280
280
  is?: string | undefined | undefined;
281
281
  required?: boolean | undefined;
282
+ onValueChange?: ((value: string) => void) | undefined;
282
283
  loop?: boolean | undefined;
283
284
  asChild?: boolean | undefined;
284
- onValueChange?: ((value: string) => void) | undefined;
285
285
  ref?: React.LegacyRef<HTMLDivElement> | undefined;
286
286
  }>) => import("react/jsx-runtime").JSX.Element)[];
287
287
  };
@@ -314,6 +314,13 @@ declare const meta: {
314
314
  helperText?: string | undefined;
315
315
  errorMessage?: string | undefined;
316
316
  labelClassName?: string | undefined;
317
+ classes?: {
318
+ iconWrapper?: string;
319
+ iconSearchWrapper?: string;
320
+ icon?: string;
321
+ startIconWrapper?: string;
322
+ endIconWrapper?: string;
323
+ } | undefined;
317
324
  onClickStartIcon?: (() => void) | undefined;
318
325
  onClickEndIcon?: (() => void) | undefined;
319
326
  renderStartIcon?: (() => React.ReactNode) | undefined;
@@ -289,10 +289,10 @@ declare const meta: {
289
289
  unselectable?: "on" | "off" | undefined | undefined;
290
290
  inputMode?: "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | "search" | undefined | undefined;
291
291
  is?: string | undefined | undefined;
292
+ onValueChange?: ((value: number[]) => void) | undefined;
292
293
  asChild?: boolean | undefined;
293
294
  inverted?: boolean | undefined;
294
295
  minStepsBetweenThumbs?: number | undefined;
295
- onValueChange?: ((value: number[]) => void) | undefined;
296
296
  onValueCommit?: ((value: number[]) => void) | undefined;
297
297
  ref?: React.LegacyRef<HTMLSpanElement> | undefined;
298
298
  }>) => import("react/jsx-runtime").JSX.Element)[];
@@ -21,6 +21,13 @@ export type InputProps = {
21
21
  endIcon?: ReactNode;
22
22
  className?: string;
23
23
  labelClassName?: string;
24
+ classes?: {
25
+ iconWrapper?: string;
26
+ iconSearchWrapper?: string;
27
+ icon?: string;
28
+ startIconWrapper?: string;
29
+ endIconWrapper?: string;
30
+ };
24
31
  onClickStartIcon?: () => void;
25
32
  onClickEndIcon?: () => void;
26
33
  renderStartIcon?: () => ReactNode;
@@ -48,6 +55,13 @@ export declare const TextInput: React.ForwardRefExoticComponent<{
48
55
  endIcon?: ReactNode;
49
56
  className?: string;
50
57
  labelClassName?: string;
58
+ classes?: {
59
+ iconWrapper?: string;
60
+ iconSearchWrapper?: string;
61
+ icon?: string;
62
+ startIconWrapper?: string;
63
+ endIconWrapper?: string;
64
+ };
51
65
  onClickStartIcon?: () => void;
52
66
  onClickEndIcon?: () => void;
53
67
  renderStartIcon?: () => ReactNode;
@@ -23,6 +23,13 @@ declare const meta: {
23
23
  endIcon?: React.ReactNode;
24
24
  className?: string;
25
25
  labelClassName?: string;
26
+ classes?: {
27
+ iconWrapper?: string;
28
+ iconSearchWrapper?: string;
29
+ icon?: string;
30
+ startIconWrapper?: string;
31
+ endIconWrapper?: string;
32
+ };
26
33
  onClickStartIcon?: () => void;
27
34
  onClickEndIcon?: () => void;
28
35
  renderStartIcon?: () => React.ReactNode;
@@ -54,6 +61,13 @@ declare const meta: {
54
61
  endIcon?: React.ReactNode;
55
62
  className?: string | undefined;
56
63
  labelClassName?: string | undefined;
64
+ classes?: {
65
+ iconWrapper?: string;
66
+ iconSearchWrapper?: string;
67
+ icon?: string;
68
+ startIconWrapper?: string;
69
+ endIconWrapper?: string;
70
+ } | undefined;
57
71
  onClickStartIcon?: (() => void) | undefined;
58
72
  onClickEndIcon?: (() => void) | undefined;
59
73
  renderStartIcon?: (() => React.ReactNode) | undefined;
@@ -2,6 +2,8 @@ import "./theme/global.css";
2
2
  import "./icons/iconConfig";
3
3
  export { default as Button } from "./components/Button/Button";
4
4
  export { default as TextInput } from "./components/TextInput/TextInput";
5
+ export { default as MaskedTextInput } from "./components/MaskedTextInput";
6
+ export { NumberInput } from "./components/NumberInput/NumberInput";
5
7
  export { default as TextArea } from "./components/TextArea/TextArea";
6
8
  export { default as Text } from "./components/Text/Text";
7
9
  export { default as Tabs } from "./components/Tabs/Tabs";
@@ -38,6 +40,8 @@ export * from "./components/FocusedScrollView/FocusedScrollView";
38
40
  export * from "./components/RadioGroup/RadioGroup";
39
41
  export type { ButtonProps } from "./components/Button/Button";
40
42
  export type { InputProps } from "./components/TextInput/TextInput";
43
+ export type { MaskedTextInputProps, MaskRule, } from "./components/MaskedTextInput";
44
+ export type { NumberInputProps } from "./components/NumberInput/NumberInput";
41
45
  export type { TextAreaProps } from "./components/TextArea/TextArea";
42
46
  export type { DropdownProps, Options } from "./components/Dropdown/Dropdown";
43
47
  export type { NavbarProps } from "./components/Navbar/Navbar";
package/dist/index.d.ts CHANGED
@@ -66,6 +66,13 @@ type InputProps = {
66
66
  endIcon?: ReactNode;
67
67
  className?: string;
68
68
  labelClassName?: string;
69
+ classes?: {
70
+ iconWrapper?: string;
71
+ iconSearchWrapper?: string;
72
+ icon?: string;
73
+ startIconWrapper?: string;
74
+ endIconWrapper?: string;
75
+ };
69
76
  onClickStartIcon?: () => void;
70
77
  onClickEndIcon?: () => void;
71
78
  renderStartIcon?: () => ReactNode;
@@ -93,12 +100,114 @@ declare const TextInput: React__default.ForwardRefExoticComponent<{
93
100
  endIcon?: ReactNode;
94
101
  className?: string;
95
102
  labelClassName?: string;
103
+ classes?: {
104
+ iconWrapper?: string;
105
+ iconSearchWrapper?: string;
106
+ icon?: string;
107
+ startIconWrapper?: string;
108
+ endIconWrapper?: string;
109
+ };
96
110
  onClickStartIcon?: () => void;
97
111
  onClickEndIcon?: () => void;
98
112
  renderStartIcon?: () => ReactNode;
99
113
  renderEndIcon?: () => ReactNode;
100
114
  } & Omit<React__default.InputHTMLAttributes<HTMLInputElement>, "size"> & React__default.RefAttributes<HTMLInputElement>>;
101
115
 
116
+ type MaskRule = {
117
+ pattern: RegExp;
118
+ placeholder: string;
119
+ isLiteral?: boolean;
120
+ validator?: (char: string) => boolean;
121
+ };
122
+ type MaskedTextInputProps = InputProps & {
123
+ mask?: string;
124
+ maskChar?: string;
125
+ showMask?: boolean;
126
+ guide?: boolean;
127
+ keepCharPositions?: boolean;
128
+ rules?: Record<string, RegExp | ((char: string) => boolean)>;
129
+ onMaskedChange?: (value: string, rawValue: string) => void;
130
+ };
131
+ declare const MaskedTextInput: React__default.ForwardRefExoticComponent<{
132
+ id?: string;
133
+ label?: string;
134
+ size?: "sm" | "md" | "lg";
135
+ rounded?: "none" | "normal" | "full";
136
+ variant?: "flat" | "outline" | "underline";
137
+ iconMode?: "flat" | "solid";
138
+ type?: React__default.HTMLInputTypeAttribute;
139
+ helperText?: string;
140
+ errorMessage?: string;
141
+ fullwidth?: boolean;
142
+ disabled?: boolean;
143
+ error?: boolean;
144
+ required?: boolean;
145
+ isFloatingLabel?: boolean;
146
+ keepCloseIconOnValue?: boolean;
147
+ hasClearIcon?: boolean;
148
+ hasSearchIcon?: boolean;
149
+ startIcon?: React__default.ReactNode;
150
+ endIcon?: React__default.ReactNode;
151
+ className?: string;
152
+ labelClassName?: string;
153
+ classes?: {
154
+ iconWrapper?: string;
155
+ iconSearchWrapper?: string;
156
+ icon?: string;
157
+ startIconWrapper?: string;
158
+ endIconWrapper?: string;
159
+ };
160
+ onClickStartIcon?: () => void;
161
+ onClickEndIcon?: () => void;
162
+ renderStartIcon?: () => React__default.ReactNode;
163
+ renderEndIcon?: () => React__default.ReactNode;
164
+ } & Omit<React__default.InputHTMLAttributes<HTMLInputElement>, "size"> & {
165
+ mask?: string;
166
+ maskChar?: string;
167
+ showMask?: boolean;
168
+ guide?: boolean;
169
+ keepCharPositions?: boolean;
170
+ rules?: Record<string, RegExp | ((char: string) => boolean)>;
171
+ onMaskedChange?: (value: string, rawValue: string) => void;
172
+ } & React__default.RefAttributes<HTMLInputElement>>;
173
+
174
+ type NumberInputProps = Omit<InputProps, "type" | "value" | "defaultValue" | "onChange"> & {
175
+ value?: number | string;
176
+ defaultValue?: number | string;
177
+ min?: number;
178
+ max?: number;
179
+ step?: number;
180
+ precision?: number;
181
+ hideControls?: boolean;
182
+ allowDecimal?: boolean;
183
+ allowNegative?: boolean;
184
+ formatDisplay?: boolean;
185
+ thousandSeparator?: string;
186
+ decimalSeparator?: string;
187
+ prefix?: string;
188
+ suffix?: string;
189
+ onChange?: (value: number | undefined) => void;
190
+ onValueChange?: (value: string) => void;
191
+ };
192
+ declare const NumberInput: React__default.ForwardRefExoticComponent<Omit<InputProps, "type" | "onChange" | "value" | "defaultValue"> & {
193
+ value?: number | string;
194
+ defaultValue?: number | string;
195
+ min?: number;
196
+ max?: number;
197
+ step?: number;
198
+ precision?: number;
199
+ hideControls?: boolean;
200
+ allowDecimal?: boolean;
201
+ allowNegative?: boolean;
202
+ formatDisplay?: boolean;
203
+ thousandSeparator?: string;
204
+ decimalSeparator?: string;
205
+ prefix?: string;
206
+ suffix?: string;
207
+ onChange?: (value: number | undefined) => void;
208
+ onValueChange?: (value: string) => void;
209
+ } & React__default.RefAttributes<HTMLInputElement>>;
210
+
102
211
  type TextAreaProps = {
103
212
  id?: string;
104
213
  label?: string;
@@ -809,4 +918,4 @@ declare function usePrevious<T>(value: T): T | undefined;
809
918
 
810
919
  declare function cn(...inputs: ClassValue[]): string;
811
920
 
812
- export { ActionButton, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, Avatar, AvatarGroup, type AvatarGroupProps, type AvatarProps, Button, type ButtonProps, Calendar, Checkbox, Collapsible, type CustomSliderProps, DataTable, type DataTableProps, DatePicker, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, Dropdown, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, type DropdownProps, FocusedScrollView, Icon, Input, InputFilter, type InputFilterProps, type InputProps, Label, Loading, Navbar, type NavbarProps, type Options$1 as Options, Popover, PopoverContent, PopoverTrigger, ProgressBar, RadioGroup, RadioGroupItem, Search, type SearchProps, Slider, type SliderProps, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, Text, TextArea, type TextAreaProps, TextInput, Toast$1 as Toast, ToastAction, type ToastActionElement, ToastClose, ToastDescription, type ToastProps, ToastProvider, ToastTitle, ToastViewport, Toaster, Tooltip, TooltipArrow, TooltipContent, TooltipProvider, TooltipSimple, TooltipTrigger, Tree, type TreeData, TreeItem, type TreeItemProps, type TreeProps, cn, getEndDateOfDay, getStartDateOfDay, getStartEndTimestampOfDay, getTimestampUTC, reducer, resloveTimestamp, toast, usePrevious, useToast };
921
+ export { ActionButton, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, Avatar, AvatarGroup, type AvatarGroupProps, type AvatarProps, Button, type ButtonProps, Calendar, Checkbox, Collapsible, type CustomSliderProps, DataTable, type DataTableProps, DatePicker, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, Dropdown, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, type DropdownProps, FocusedScrollView, Icon, Input, InputFilter, type InputFilterProps, type InputProps, Label, Loading, type MaskRule, MaskedTextInput, type MaskedTextInputProps, Navbar, type NavbarProps, NumberInput, type NumberInputProps, type Options$1 as Options, Popover, PopoverContent, PopoverTrigger, ProgressBar, RadioGroup, RadioGroupItem, Search, type SearchProps, Slider, type SliderProps, Switch, Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow, Tabs, Text, TextArea, type TextAreaProps, TextInput, Toast$1 as Toast, ToastAction, type ToastActionElement, ToastClose, ToastDescription, type ToastProps, ToastProvider, ToastTitle, ToastViewport, Toaster, Tooltip, TooltipArrow, TooltipContent, TooltipProvider, TooltipSimple, TooltipTrigger, Tree, type TreeData, TreeItem, type TreeItemProps, type TreeProps, cn, getEndDateOfDay, getStartDateOfDay, getStartEndTimestampOfDay, getTimestampUTC, reducer, resloveTimestamp, toast, usePrevious, useToast };
package/dist/index.js CHANGED
@@ -4,6 +4,8 @@ import "./theme/global.css";
4
4
  import "./icons/iconConfig";
5
5
  export { default as Button } from "./components/Button/Button";
6
6
  export { default as TextInput } from "./components/TextInput/TextInput";
7
+ export { default as MaskedTextInput } from "./components/MaskedTextInput";
8
+ export { NumberInput } from "./components/NumberInput/NumberInput";
7
9
  export { default as TextArea } from "./components/TextArea/TextArea";
8
10
  export { default as Text } from "./components/Text/Text";
9
11
  export { default as Tabs } from "./components/Tabs/Tabs";
@@ -2312,6 +2312,14 @@ input[type=number] {
2312
2312
  top: 0px;
2313
2313
  }
2314
2314
 
2315
+ .top-0\.5 {
2316
+ top: 0.125rem;
2317
+ }
2318
+
2319
+ .top-1 {
2320
+ top: 0.25rem;
2321
+ }
2322
+
2315
2323
  .top-4 {
2316
2324
  top: 1rem;
2317
2325
  }
@@ -2340,6 +2348,10 @@ input[type=number] {
2340
2348
  z-index: 50;
2341
2349
  }
2342
2350
 
2351
+ .z-\[1000\] {
2352
+ z-index: 1000;
2353
+ }
2354
+
2343
2355
  .z-\[100\] {
2344
2356
  z-index: 100;
2345
2357
  }
@@ -2770,6 +2782,10 @@ input[type=number] {
2770
2782
  min-width: fit-content;
2771
2783
  }
2772
2784
 
2785
+ .max-w-2xl {
2786
+ max-width: 42rem;
2787
+ }
2788
+
2773
2789
  .max-w-\[300px\] {
2774
2790
  max-width: 300px;
2775
2791
  }
@@ -2782,6 +2798,10 @@ input[type=number] {
2782
2798
  max-width: 32rem;
2783
2799
  }
2784
2800
 
2801
+ .max-w-md {
2802
+ max-width: 28rem;
2803
+ }
2804
+
2785
2805
  .flex-1 {
2786
2806
  flex: 1 1 0%;
2787
2807
  }
@@ -3883,6 +3903,11 @@ input[type=number] {
3883
3903
  background-color: color-mix(in srgb, var(--function-default-stroke) calc(100% * var(--tw-bg-opacity, 1)), transparent);
3884
3904
  }
3885
3905
 
3906
+ .bg-gray-100 {
3907
+ --tw-bg-opacity: 1;
3908
+ background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
3909
+ }
3910
+
3886
3911
  .bg-gray-200 {
3887
3912
  --tw-bg-opacity: 1;
3888
3913
  background-color: rgb(229 231 235 / var(--tw-bg-opacity, 1));
@@ -5519,6 +5544,11 @@ input[type=number] {
5519
5544
  font-weight: var(--label-label2-weight, 400);
5520
5545
  }
5521
5546
 
5547
+ .text-lg {
5548
+ font-size: 1.125rem;
5549
+ line-height: 1.75rem;
5550
+ }
5551
+
5522
5552
  .text-sm {
5523
5553
  font-size: 0.875rem;
5524
5554
  line-height: 1.25rem;
@@ -5632,6 +5662,10 @@ input[type=number] {
5632
5662
  font-weight: 500;
5633
5663
  }
5634
5664
 
5665
+ .font-semibold {
5666
+ font-weight: 600;
5667
+ }
5668
+
5635
5669
  .uppercase {
5636
5670
  text-transform: uppercase;
5637
5671
  }
@@ -5885,6 +5919,11 @@ input[type=number] {
5885
5919
  color: rgb(107 114 128 / var(--tw-text-opacity, 1));
5886
5920
  }
5887
5921
 
5922
+ .text-gray-700 {
5923
+ --tw-text-opacity: 1;
5924
+ color: rgb(55 65 81 / var(--tw-text-opacity, 1));
5925
+ }
5926
+
5888
5927
  .text-green-500 {
5889
5928
  --tw-text-opacity: 1;
5890
5929
  color: rgb(34 197 94 / var(--tw-text-opacity, 1));
@@ -6671,6 +6710,10 @@ input[type=number] {
6671
6710
  background-color: rgb(243 244 246 / var(--tw-bg-opacity, 1));
6672
6711
  }
6673
6712
 
6713
+ .hover\:bg-input-active-stroke\/10:hover {
6714
+ background-color: color-mix(in srgb, var(--input-color-active-stroke) calc(100% * 0.1), transparent);
6715
+ }
6716
+
6674
6717
  .hover\:bg-input-disable-bg:hover {
6675
6718
  --tw-bg-opacity: 1;
6676
6719
  background-color: color-mix(in srgb, var(--input-color-disable-bg) calc(100% * var(--tw-bg-opacity, 1)), transparent);
@@ -8041,6 +8084,10 @@ input[type=number] {
8041
8084
  color: color-mix(in srgb, var(--state-color-disable-outline) calc(100% * var(--tw-text-opacity, 1)), transparent);
8042
8085
  }
8043
8086
 
8087
+ .disabled\:opacity-30:disabled {
8088
+ opacity: 0.3;
8089
+ }
8090
+
8044
8091
  .disabled\:opacity-50:disabled {
8045
8092
  opacity: 0.5;
8046
8093
  }
@@ -8854,6 +8901,10 @@ input[type=number] {
8854
8901
  .md\:right-\[40px\] {
8855
8902
  right: 40px;
8856
8903
  }
8904
+
8905
+ .md\:grid-cols-2 {
8906
+ grid-template-columns: repeat(2, minmax(0, 1fr));
8907
+ }
8857
8908
  }
8858
8909
 
8859
8910
  .\[\&\:has\(\[role\=checkbox\]\)\]\:w-4:has([role=checkbox]) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rovula/ui",
3
- "version": "0.0.76",
3
+ "version": "0.0.78",
4
4
  "main": "dist/cjs/bundle.js",
5
5
  "module": "dist/esm/bundle.js",
6
6
  "types": "dist/index.d.ts",