@zimyo/ui 1.1.8 → 1.1.9

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 (40) hide show
  1. package/dist/Accordion/index.d.ts +34 -0
  2. package/dist/Accordion/index.esm.js +239 -0
  3. package/dist/Accordion/index.js +247 -0
  4. package/dist/Button/index.d.ts +15 -0
  5. package/dist/Button/index.esm.js +13 -0
  6. package/dist/Button/index.js +18 -0
  7. package/dist/Card/index.d.ts +41 -0
  8. package/dist/Card/index.esm.js +36 -0
  9. package/dist/Card/index.js +38 -0
  10. package/dist/Modal/index.d.ts +17 -0
  11. package/dist/Modal/index.esm.js +144 -0
  12. package/dist/Modal/index.js +149 -0
  13. package/dist/Popover/index.d.ts +19 -0
  14. package/dist/Popover/index.esm.js +22 -0
  15. package/dist/Popover/index.js +27 -0
  16. package/dist/RadioGroup/index.d.ts +31 -0
  17. package/dist/RadioGroup/index.esm.js +91 -0
  18. package/dist/RadioGroup/index.js +96 -0
  19. package/dist/Select/index.d.ts +22 -0
  20. package/dist/Select/index.esm.js +195 -0
  21. package/dist/Select/index.js +200 -0
  22. package/dist/Switch/index.d.ts +14 -0
  23. package/dist/Switch/index.esm.js +9 -0
  24. package/dist/Switch/index.js +14 -0
  25. package/dist/Tabs/index.d.ts +36 -0
  26. package/dist/Tabs/index.esm.js +202 -0
  27. package/dist/Tabs/index.js +207 -0
  28. package/dist/TextInput/index.d.ts +18 -0
  29. package/dist/TextInput/index.esm.js +33 -0
  30. package/dist/TextInput/index.js +38 -0
  31. package/dist/Typography/index.d.ts +30 -0
  32. package/dist/Typography/index.esm.js +57 -0
  33. package/dist/Typography/index.js +66 -0
  34. package/dist/index.d.ts +222 -0
  35. package/dist/index.esm.js +750 -0
  36. package/dist/index.js +772 -0
  37. package/dist/theme/index.d.ts +91 -0
  38. package/dist/theme/index.esm.js +234 -0
  39. package/dist/theme/index.js +239 -0
  40. package/package.json +1 -1
@@ -0,0 +1,207 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+ var material = require('@mui/material');
7
+
8
+ // Custom Tab Component
9
+ const CustomTab = React.forwardRef(({ badge, sx, label, ...props }, ref) => {
10
+ const theme = material.useTheme();
11
+ const tabLabel = badge ? React.createElement(material.Box, { sx: { display: 'flex', alignItems: 'center', gap: 1 } }, label, React.createElement(material.Box, {
12
+ component: 'span',
13
+ sx: {
14
+ backgroundColor: theme.palette.error.main,
15
+ color: theme.palette.error.contrastText,
16
+ borderRadius: '10px',
17
+ padding: '2px 6px',
18
+ fontSize: '0.75rem',
19
+ fontWeight: 600,
20
+ minWidth: '18px',
21
+ height: '18px',
22
+ display: 'flex',
23
+ alignItems: 'center',
24
+ justifyContent: 'center',
25
+ lineHeight: 1,
26
+ }
27
+ }, badge)) : label;
28
+ return React.createElement(material.Tab, {
29
+ ref,
30
+ sx: {
31
+ position: 'relative',
32
+ ...sx,
33
+ },
34
+ label: tabLabel,
35
+ ...props
36
+ });
37
+ });
38
+ CustomTab.displayName = 'CustomTab';
39
+ // Main Tabs Component
40
+ const Tabs = React.forwardRef(({ items, value, onChange, variant = 'standard', orientation = 'horizontal', styleVariant = 'default', size = 'medium', centered = false, allowScrollButtonsMobile = false, scrollButtons = 'auto', sx = {}, tabSx = {}, iconPosition = 'start', indicatorColor = 'primary', textColor = 'primary', ...props }, ref) => {
41
+ const theme = material.useTheme();
42
+ // Get size-based styling
43
+ const getSizeStyles = () => {
44
+ switch (size) {
45
+ case 'small':
46
+ return {
47
+ minHeight: 36,
48
+ fontSize: '0.875rem',
49
+ padding: '6px 12px',
50
+ };
51
+ case 'large':
52
+ return {
53
+ minHeight: 56,
54
+ fontSize: '1rem',
55
+ padding: '12px 24px',
56
+ };
57
+ default:
58
+ return {
59
+ minHeight: 48,
60
+ fontSize: '0.9375rem',
61
+ padding: '8px 16px',
62
+ };
63
+ }
64
+ };
65
+ // Get style variant specific styling
66
+ const getStyleVariantStyles = () => {
67
+ const baseStyles = getSizeStyles();
68
+ switch (styleVariant) {
69
+ case 'filled':
70
+ return {
71
+ '& .MuiTab-root': {
72
+ ...baseStyles,
73
+ backgroundColor: material.alpha(theme.palette.action.hover, 0.08),
74
+ borderRadius: theme.shape.borderRadius,
75
+ margin: '0 4px',
76
+ border: 'none',
77
+ '&.Mui-selected': {
78
+ backgroundColor: theme.palette.primary.main,
79
+ color: theme.palette.primary.contrastText,
80
+ },
81
+ '&:hover': {
82
+ backgroundColor: material.alpha(theme.palette.action.hover, 0.12),
83
+ },
84
+ },
85
+ '& .MuiTabs-indicator': {
86
+ display: 'none',
87
+ },
88
+ };
89
+ case 'outlined':
90
+ return {
91
+ '& .MuiTab-root': {
92
+ ...baseStyles,
93
+ border: `1px solid ${material.alpha(theme.palette.divider, 0.5)}`,
94
+ borderRadius: theme.shape.borderRadius,
95
+ margin: '0 2px',
96
+ '&.Mui-selected': {
97
+ borderColor: theme.palette.primary.main,
98
+ backgroundColor: material.alpha(theme.palette.primary.main, 0.08),
99
+ color: theme.palette.primary.main,
100
+ },
101
+ '&:hover': {
102
+ borderColor: material.alpha(theme.palette.primary.main, 0.5),
103
+ },
104
+ },
105
+ '& .MuiTabs-indicator': {
106
+ display: 'none',
107
+ },
108
+ };
109
+ case 'pills':
110
+ return {
111
+ '& .MuiTab-root': {
112
+ ...baseStyles,
113
+ borderRadius: 25,
114
+ margin: '0 4px',
115
+ backgroundColor: 'transparent',
116
+ border: `1px solid transparent`,
117
+ '&.Mui-selected': {
118
+ backgroundColor: theme.palette.primary.main,
119
+ color: theme.palette.primary.contrastText,
120
+ },
121
+ '&:hover': {
122
+ backgroundColor: material.alpha(theme.palette.action.hover, 0.08),
123
+ },
124
+ },
125
+ '& .MuiTabs-indicator': {
126
+ display: 'none',
127
+ },
128
+ };
129
+ case 'underlined':
130
+ return {
131
+ '& .MuiTab-root': {
132
+ ...baseStyles,
133
+ borderBottom: `2px solid transparent`,
134
+ '&.Mui-selected': {
135
+ borderBottomColor: theme.palette.primary.main,
136
+ },
137
+ },
138
+ '& .MuiTabs-indicator': {
139
+ display: 'none',
140
+ },
141
+ };
142
+ default:
143
+ return {
144
+ '& .MuiTab-root': {
145
+ ...baseStyles,
146
+ },
147
+ };
148
+ }
149
+ };
150
+ return React.createElement(material.Box, { ref }, React.createElement(material.Tabs, {
151
+ value,
152
+ onChange,
153
+ variant,
154
+ orientation,
155
+ centered,
156
+ allowScrollButtonsMobile,
157
+ scrollButtons,
158
+ indicatorColor,
159
+ textColor,
160
+ sx: {
161
+ ...getStyleVariantStyles(),
162
+ '& .MuiTab-root': {
163
+ textTransform: 'none',
164
+ fontWeight: 500,
165
+ letterSpacing: '0.5px',
166
+ transition: 'all 0.2s ease-in-out',
167
+ ...getStyleVariantStyles()['& .MuiTab-root'],
168
+ ...tabSx,
169
+ },
170
+ ...sx,
171
+ },
172
+ ...props,
173
+ }, ...items.map((item) => {
174
+ // Create the label content based on icon position
175
+ let labelContent;
176
+ if (item.icon) {
177
+ switch (iconPosition) {
178
+ case 'end':
179
+ labelContent = React.createElement(material.Box, { sx: { display: 'flex', alignItems: 'center', gap: 1, flexDirection: 'row-reverse' } }, item.icon, item.label);
180
+ break;
181
+ case 'top':
182
+ labelContent = React.createElement(material.Box, { sx: { display: 'flex', alignItems: 'center', gap: 0.5, flexDirection: 'column' } }, item.icon, item.label);
183
+ break;
184
+ case 'bottom':
185
+ labelContent = React.createElement(material.Box, { sx: { display: 'flex', alignItems: 'center', gap: 0.5, flexDirection: 'column-reverse' } }, item.icon, item.label);
186
+ break;
187
+ default: // 'start'
188
+ labelContent = React.createElement(material.Box, { sx: { display: 'flex', alignItems: 'center', gap: 1 } }, item.icon, item.label);
189
+ break;
190
+ }
191
+ }
192
+ else {
193
+ labelContent = item.label;
194
+ }
195
+ return React.createElement(CustomTab, {
196
+ key: item.value,
197
+ value: item.value,
198
+ disabled: item.disabled,
199
+ badge: item.badge,
200
+ label: labelContent,
201
+ });
202
+ })));
203
+ });
204
+ Tabs.displayName = 'Tabs';
205
+
206
+ exports.Tabs = Tabs;
207
+ exports.default = Tabs;
@@ -0,0 +1,18 @@
1
+ import React from 'react';
2
+ import { TextFieldProps } from '@mui/material';
3
+
4
+ interface TextInputProps extends Omit<TextFieldProps, 'variant'> {
5
+ label?: string;
6
+ placeholder?: string;
7
+ IS_MANDATORY?: boolean | number | string;
8
+ startIcon?: React.ReactNode;
9
+ endIcon?: React.ReactNode;
10
+ error?: boolean;
11
+ variant?: 'outlined' | 'filled' | 'standard';
12
+ helperText?: string;
13
+ type?: 'text' | 'password' | 'email' | 'number' | 'tel' | 'search';
14
+ }
15
+ declare const TextInput: React.ForwardRefExoticComponent<Omit<TextInputProps, "ref"> & React.RefAttributes<HTMLInputElement>>;
16
+
17
+ export { TextInput, TextInput as default };
18
+ export type { TextInputProps };
@@ -0,0 +1,33 @@
1
+ import { jsx } from 'react/jsx-runtime';
2
+ import React from 'react';
3
+ import { TextField, InputAdornment } from '@mui/material';
4
+
5
+ const TextInput = React.forwardRef(({ label = '', placeholder, IS_MANDATORY = false,
6
+ // multiline = false,
7
+ startIcon, endIcon, error = false, helperText, type = 'text', variant = 'outlined', ...rest }, ref) => {
8
+ return (jsx(TextField, { fullWidth: true, inputRef: ref, type: type,
9
+ // multiline={multiline}
10
+ label: label, placeholder: placeholder, required: (IS_MANDATORY == 1 || IS_MANDATORY == true) ? true : false, error: error, InputLabelProps: !label ? { shrink: false } : undefined, sx: {
11
+ '& .MuiInputLabel-outlined': {
12
+ top: '-4px',
13
+ fontSize: '13px',
14
+ fontWeight: 500,
15
+ },
16
+ '& .MuiOutlinedInput-root': {
17
+ minHeight: '44px',
18
+ borderRadius: '10px',
19
+ },
20
+ '& input': {
21
+ padding: '10.5px 14px',
22
+ },
23
+ '& input::placeholder': {
24
+ fontSize: '13px',
25
+ opacity: 0.5,
26
+ },
27
+ }, helperText: helperText, InputProps: {
28
+ startAdornment: startIcon ? (jsx(InputAdornment, { position: "start", children: startIcon })) : undefined,
29
+ endAdornment: endIcon ? (jsx(InputAdornment, { position: "end", children: endIcon })) : undefined,
30
+ }, variant: variant, ...rest }));
31
+ });
32
+
33
+ export { TextInput, TextInput as default };
@@ -0,0 +1,38 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var jsxRuntime = require('react/jsx-runtime');
6
+ var React = require('react');
7
+ var material = require('@mui/material');
8
+
9
+ const TextInput = React.forwardRef(({ label = '', placeholder, IS_MANDATORY = false,
10
+ // multiline = false,
11
+ startIcon, endIcon, error = false, helperText, type = 'text', variant = 'outlined', ...rest }, ref) => {
12
+ return (jsxRuntime.jsx(material.TextField, { fullWidth: true, inputRef: ref, type: type,
13
+ // multiline={multiline}
14
+ label: label, placeholder: placeholder, required: (IS_MANDATORY == 1 || IS_MANDATORY == true) ? true : false, error: error, InputLabelProps: !label ? { shrink: false } : undefined, sx: {
15
+ '& .MuiInputLabel-outlined': {
16
+ top: '-4px',
17
+ fontSize: '13px',
18
+ fontWeight: 500,
19
+ },
20
+ '& .MuiOutlinedInput-root': {
21
+ minHeight: '44px',
22
+ borderRadius: '10px',
23
+ },
24
+ '& input': {
25
+ padding: '10.5px 14px',
26
+ },
27
+ '& input::placeholder': {
28
+ fontSize: '13px',
29
+ opacity: 0.5,
30
+ },
31
+ }, helperText: helperText, InputProps: {
32
+ startAdornment: startIcon ? (jsxRuntime.jsx(material.InputAdornment, { position: "start", children: startIcon })) : undefined,
33
+ endAdornment: endIcon ? (jsxRuntime.jsx(material.InputAdornment, { position: "end", children: endIcon })) : undefined,
34
+ }, variant: variant, ...rest }));
35
+ });
36
+
37
+ exports.TextInput = TextInput;
38
+ exports.default = TextInput;
@@ -0,0 +1,30 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { TypographyProps, SxProps } from '@mui/material';
3
+
4
+ interface HeadingProps extends TypographyProps {
5
+ level?: 1 | 2 | 3 | 4 | 5 | 6;
6
+ }
7
+ declare const Heading: ({ level, ...props }: HeadingProps) => react_jsx_runtime.JSX.Element;
8
+
9
+ interface TextProps extends TypographyProps {
10
+ size?: 'sm' | 'md' | 'lg';
11
+ }
12
+ declare const Text: ({ size, ...props }: TextProps) => react_jsx_runtime.JSX.Element;
13
+
14
+ declare const Lead: (props: TypographyProps) => react_jsx_runtime.JSX.Element;
15
+
16
+ declare const Muted: (props: TypographyProps) => react_jsx_runtime.JSX.Element;
17
+
18
+ declare const Strong: (props: TypographyProps) => react_jsx_runtime.JSX.Element;
19
+
20
+ declare const Caption: (props: TypographyProps) => react_jsx_runtime.JSX.Element;
21
+
22
+ declare const Blockquote: (props: TypographyProps) => react_jsx_runtime.JSX.Element;
23
+
24
+ interface CodeProps {
25
+ children: React.ReactNode;
26
+ sx?: SxProps;
27
+ }
28
+ declare const Code: ({ children, sx }: CodeProps) => react_jsx_runtime.JSX.Element;
29
+
30
+ export { Blockquote, Caption, Code, Heading, Lead, Muted, Strong, Text };
@@ -0,0 +1,57 @@
1
+ import { jsx } from 'react/jsx-runtime';
2
+ import { Typography, Box } from '@mui/material';
3
+
4
+ const Heading = ({ level = 1, ...props }) => {
5
+ const variant = `h${level}`;
6
+ return (jsx(Typography, { variant: variant, component: props.component || `h${level}`, fontWeight: 600, gutterBottom: true, ...props }));
7
+ };
8
+
9
+ const Text = ({ size = 'md', ...props }) => {
10
+ const variantMap = {
11
+ sm: 'body2',
12
+ md: 'body1',
13
+ lg: 'subtitle1',
14
+ };
15
+ return (jsx(Typography, { variant: variantMap[size], component: props.component || 'p', ...props }));
16
+ };
17
+
18
+ const Lead = (props) => {
19
+ return (jsx(Typography, { variant: "subtitle1", component: props.component || 'p', fontWeight: 400, color: "text.secondary", ...props }));
20
+ };
21
+
22
+ const Muted = (props) => {
23
+ return (jsx(Typography, { variant: "body2", component: props.component || 'span', color: "text.disabled", ...props }));
24
+ };
25
+
26
+ const Strong = (props) => {
27
+ return (jsx(Typography, { component: props.component || 'strong', fontWeight: 500, display: "inline", ...props }));
28
+ };
29
+
30
+ const Caption = (props) => {
31
+ return (jsx(Typography, { variant: "caption", color: "text.secondary", component: props.component || 'span', ...props }));
32
+ };
33
+
34
+ const Blockquote = (props) => {
35
+ return (jsx(Typography, { component: "blockquote", sx: {
36
+ borderLeft: '4px solid',
37
+ borderColor: 'divider',
38
+ pl: 2,
39
+ color: 'text.secondary',
40
+ fontStyle: 'italic',
41
+ }, ...props }));
42
+ };
43
+
44
+ const Code = ({ children, sx }) => {
45
+ return (jsx(Box, { component: "code", sx: {
46
+ fontFamily: 'monospace',
47
+ backgroundColor: 'grey.100',
48
+ color: 'primary.main',
49
+ px: 0.5,
50
+ py: 0.25,
51
+ borderRadius: 1,
52
+ fontSize: '0.875rem',
53
+ ...sx,
54
+ }, children: children }));
55
+ };
56
+
57
+ export { Blockquote, Caption, Code, Heading, Lead, Muted, Strong, Text };
@@ -0,0 +1,66 @@
1
+ 'use strict';
2
+
3
+ var jsxRuntime = require('react/jsx-runtime');
4
+ var material = require('@mui/material');
5
+
6
+ const Heading = ({ level = 1, ...props }) => {
7
+ const variant = `h${level}`;
8
+ return (jsxRuntime.jsx(material.Typography, { variant: variant, component: props.component || `h${level}`, fontWeight: 600, gutterBottom: true, ...props }));
9
+ };
10
+
11
+ const Text = ({ size = 'md', ...props }) => {
12
+ const variantMap = {
13
+ sm: 'body2',
14
+ md: 'body1',
15
+ lg: 'subtitle1',
16
+ };
17
+ return (jsxRuntime.jsx(material.Typography, { variant: variantMap[size], component: props.component || 'p', ...props }));
18
+ };
19
+
20
+ const Lead = (props) => {
21
+ return (jsxRuntime.jsx(material.Typography, { variant: "subtitle1", component: props.component || 'p', fontWeight: 400, color: "text.secondary", ...props }));
22
+ };
23
+
24
+ const Muted = (props) => {
25
+ return (jsxRuntime.jsx(material.Typography, { variant: "body2", component: props.component || 'span', color: "text.disabled", ...props }));
26
+ };
27
+
28
+ const Strong = (props) => {
29
+ return (jsxRuntime.jsx(material.Typography, { component: props.component || 'strong', fontWeight: 500, display: "inline", ...props }));
30
+ };
31
+
32
+ const Caption = (props) => {
33
+ return (jsxRuntime.jsx(material.Typography, { variant: "caption", color: "text.secondary", component: props.component || 'span', ...props }));
34
+ };
35
+
36
+ const Blockquote = (props) => {
37
+ return (jsxRuntime.jsx(material.Typography, { component: "blockquote", sx: {
38
+ borderLeft: '4px solid',
39
+ borderColor: 'divider',
40
+ pl: 2,
41
+ color: 'text.secondary',
42
+ fontStyle: 'italic',
43
+ }, ...props }));
44
+ };
45
+
46
+ const Code = ({ children, sx }) => {
47
+ return (jsxRuntime.jsx(material.Box, { component: "code", sx: {
48
+ fontFamily: 'monospace',
49
+ backgroundColor: 'grey.100',
50
+ color: 'primary.main',
51
+ px: 0.5,
52
+ py: 0.25,
53
+ borderRadius: 1,
54
+ fontSize: '0.875rem',
55
+ ...sx,
56
+ }, children: children }));
57
+ };
58
+
59
+ exports.Blockquote = Blockquote;
60
+ exports.Caption = Caption;
61
+ exports.Code = Code;
62
+ exports.Heading = Heading;
63
+ exports.Lead = Lead;
64
+ exports.Muted = Muted;
65
+ exports.Strong = Strong;
66
+ exports.Text = Text;
@@ -0,0 +1,222 @@
1
+ import React$1 from 'react';
2
+ import { ButtonProps as ButtonProps$1, SelectProps as SelectProps$1, SelectChangeEvent, AccordionProps as AccordionProps$1, AccordionSummaryProps, AccordionDetailsProps, SwitchProps as SwitchProps$1, TextFieldProps, TypographyProps, SxProps as SxProps$1 } from '@mui/material';
3
+ import { SxProps } from '@mui/system';
4
+ import * as react_jsx_runtime from 'react/jsx-runtime';
5
+ import { Theme } from '@mui/material/styles';
6
+
7
+ interface ButtonProps extends Omit<ButtonProps$1, 'sx'> {
8
+ loading?: boolean;
9
+ loadingText?: string;
10
+ sx?: SxProps;
11
+ loaderSize?: number;
12
+ loaderPosition?: 'start' | 'end' | 'center';
13
+ }
14
+ declare const Button: React$1.ForwardRefExoticComponent<Omit<ButtonProps, "ref"> & React$1.RefAttributes<HTMLButtonElement>>;
15
+
16
+ interface OptionType {
17
+ label: string;
18
+ value: string | number;
19
+ }
20
+ interface SelectProps extends Omit<SelectProps$1, 'value' | 'onChange'> {
21
+ label?: string;
22
+ options: OptionType[];
23
+ error?: boolean;
24
+ helperText?: string;
25
+ required?: boolean;
26
+ placeholder?: string;
27
+ value?: any;
28
+ onChange?: (event: SelectChangeEvent<any>) => void;
29
+ isMulti?: boolean;
30
+ }
31
+ declare const Select: React$1.ForwardRefExoticComponent<Omit<SelectProps, "ref"> & React$1.RefAttributes<any>>;
32
+
33
+ interface AccordionProps extends Omit<AccordionProps$1, 'sx' | 'onChange' | 'expanded'> {
34
+ type?: 'single' | 'multiple';
35
+ collapsible?: boolean;
36
+ value?: string | string[];
37
+ defaultValue?: string | string[];
38
+ onValueChange?: (value: string | string[]) => void;
39
+ children: React$1.ReactNode;
40
+ sx?: SxProps;
41
+ }
42
+ interface AccordionItemProps extends Omit<AccordionProps$1, 'sx'> {
43
+ value: string;
44
+ children: React$1.ReactNode;
45
+ sx?: SxProps;
46
+ }
47
+ interface AccordionTriggerProps extends Omit<AccordionSummaryProps, 'sx'> {
48
+ children: React$1.ReactNode;
49
+ sx?: SxProps;
50
+ expandIcon?: React$1.ReactNode;
51
+ }
52
+ interface AccordionContentProps extends Omit<AccordionDetailsProps, 'sx'> {
53
+ children: React$1.ReactNode;
54
+ sx?: SxProps;
55
+ }
56
+ declare const Accordion: React$1.ForwardRefExoticComponent<Omit<AccordionProps, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
57
+ declare const AccordionItem: React$1.ForwardRefExoticComponent<Omit<AccordionItemProps, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
58
+ declare const AccordionTrigger: React$1.ForwardRefExoticComponent<Omit<AccordionTriggerProps, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
59
+ declare const AccordionContent: React$1.ForwardRefExoticComponent<Omit<AccordionContentProps, "ref"> & React$1.RefAttributes<HTMLDivElement>>;
60
+
61
+ interface SwitchProps extends Omit<SwitchProps$1, 'onChange'> {
62
+ label?: string;
63
+ helperText?: string;
64
+ error?: boolean;
65
+ required?: boolean | number;
66
+ onChange?: (event: React$1.ChangeEvent<HTMLInputElement>, checked: boolean) => void;
67
+ }
68
+ declare const Switch: React$1.ForwardRefExoticComponent<Omit<SwitchProps, "ref"> & React$1.RefAttributes<HTMLButtonElement>>;
69
+
70
+ interface TextInputProps extends Omit<TextFieldProps, 'variant'> {
71
+ label?: string;
72
+ placeholder?: string;
73
+ IS_MANDATORY?: boolean | number | string;
74
+ startIcon?: React$1.ReactNode;
75
+ endIcon?: React$1.ReactNode;
76
+ error?: boolean;
77
+ variant?: 'outlined' | 'filled' | 'standard';
78
+ helperText?: string;
79
+ type?: 'text' | 'password' | 'email' | 'number' | 'tel' | 'search';
80
+ }
81
+ declare const TextInput: React$1.ForwardRefExoticComponent<Omit<TextInputProps, "ref"> & React$1.RefAttributes<HTMLInputElement>>;
82
+
83
+ interface RadioOption {
84
+ value: string;
85
+ label: string;
86
+ disabled?: boolean;
87
+ description?: string;
88
+ }
89
+ interface RadioGroupProps {
90
+ label?: string;
91
+ options: RadioOption[];
92
+ value?: string;
93
+ defaultValue?: string;
94
+ onChange?: (value: string) => void;
95
+ name?: string;
96
+ disabled?: boolean;
97
+ required?: boolean;
98
+ error?: boolean;
99
+ helperText?: string;
100
+ row?: boolean;
101
+ size?: 'small' | 'medium';
102
+ color?: 'primary' | 'secondary' | 'error' | 'info' | 'success' | 'warning';
103
+ sx?: SxProps;
104
+ radioSx?: SxProps;
105
+ labelSx?: SxProps;
106
+ }
107
+ declare const RadioGroup: React$1.ForwardRefExoticComponent<RadioGroupProps & React$1.RefAttributes<HTMLDivElement>>;
108
+
109
+ interface HeadingProps extends TypographyProps {
110
+ level?: 1 | 2 | 3 | 4 | 5 | 6;
111
+ }
112
+ declare const Heading: ({ level, ...props }: HeadingProps) => react_jsx_runtime.JSX.Element;
113
+
114
+ interface TextProps extends TypographyProps {
115
+ size?: 'sm' | 'md' | 'lg';
116
+ }
117
+ declare const Text: ({ size, ...props }: TextProps) => react_jsx_runtime.JSX.Element;
118
+
119
+ declare const Lead: (props: TypographyProps) => react_jsx_runtime.JSX.Element;
120
+
121
+ declare const Muted: (props: TypographyProps) => react_jsx_runtime.JSX.Element;
122
+
123
+ declare const Strong: (props: TypographyProps) => react_jsx_runtime.JSX.Element;
124
+
125
+ declare const Caption: (props: TypographyProps) => react_jsx_runtime.JSX.Element;
126
+
127
+ declare const Blockquote: (props: TypographyProps) => react_jsx_runtime.JSX.Element;
128
+
129
+ interface CodeProps {
130
+ children: React.ReactNode;
131
+ sx?: SxProps$1;
132
+ }
133
+ declare const Code: ({ children, sx }: CodeProps) => react_jsx_runtime.JSX.Element;
134
+
135
+ interface UILibraryThemeProviderProps {
136
+ children: React$1.ReactNode;
137
+ primaryColor?: string;
138
+ secondaryColor?: string;
139
+ enableCssBaseline?: boolean;
140
+ }
141
+ declare const UILibraryThemeProvider: React$1.FC<UILibraryThemeProviderProps>;
142
+
143
+ declare module '@mui/material/styles' {
144
+ interface Theme {
145
+ radius: {
146
+ xs: string;
147
+ sm: string;
148
+ md: string;
149
+ lg: string;
150
+ xl: string;
151
+ full: string;
152
+ };
153
+ }
154
+ interface ThemeOptions {
155
+ radius?: {
156
+ xs?: string;
157
+ sm?: string;
158
+ md?: string;
159
+ lg?: string;
160
+ xl?: string;
161
+ full?: string;
162
+ };
163
+ }
164
+ }
165
+ interface ThemeConfig {
166
+ primaryColor?: string;
167
+ secondaryColor?: string;
168
+ }
169
+ declare const createCustomTheme: (config?: ThemeConfig) => Theme;
170
+ declare const theme: Theme;
171
+
172
+ declare const designTokens: {
173
+ colors: {
174
+ primary: {
175
+ 50: string;
176
+ 100: string;
177
+ 500: string;
178
+ 900: string;
179
+ };
180
+ secondary: {
181
+ 50: string;
182
+ 100: string;
183
+ 500: string;
184
+ 900: string;
185
+ };
186
+ neutral: {
187
+ 50: string;
188
+ 100: string;
189
+ 200: string;
190
+ 500: string;
191
+ 900: string;
192
+ };
193
+ };
194
+ spacing: {
195
+ xs: string;
196
+ sm: string;
197
+ md: string;
198
+ lg: string;
199
+ xl: string;
200
+ };
201
+ radius: {
202
+ xs: string;
203
+ sm: string;
204
+ md: string;
205
+ lg: string;
206
+ xl: string;
207
+ full: string;
208
+ };
209
+ typography: {
210
+ fontFamily: string;
211
+ fontSize: {
212
+ xs: string;
213
+ sm: string;
214
+ md: string;
215
+ lg: string;
216
+ xl: string;
217
+ };
218
+ };
219
+ };
220
+
221
+ export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, Blockquote, Button, Caption, Code, Heading, Lead, Muted, RadioGroup, Select, Strong, Switch, Text, TextInput, UILibraryThemeProvider, createCustomTheme, designTokens, theme };
222
+ export type { AccordionContentProps, AccordionItemProps, AccordionProps, AccordionTriggerProps, ButtonProps, RadioGroupProps, RadioOption, SelectProps, SwitchProps, TextInputProps, ThemeConfig, UILibraryThemeProviderProps };