mui-design-system 0.0.36 → 0.0.38

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/README.md CHANGED
@@ -15,7 +15,7 @@ npm install mui-design-system
15
15
  Install in your project if not already present:
16
16
 
17
17
  - `react` & `react-dom` (^18.2.0)
18
- - `@mui/material` (^6.1.9)
18
+ - `@mui/material` (^7.3.9)
19
19
  - `@emotion/react`, `@emotion/styled`
20
20
  - `styled-components` (^6.1.8)
21
21
  - `stylis-plugin-rtl` (for RTL)
@@ -1,22 +1,4 @@
1
- import { ReactElement, ReactNode } from 'react';
2
- import { TabProps, TabsProps } from '@mui/material';
3
- import { BoxProps } from '@mui/material/Box';
4
- interface ITabProps {
5
- label: ReactNode;
6
- icon?: string | ReactElement;
7
- disabled?: boolean;
8
- }
9
- export interface CustomTabsProps extends TabsProps {
10
- indicator?: 'line' | 'fullHeight' | 'none';
11
- tabs: ITabProps[];
12
- tabPanels?: {
13
- component: ReactNode;
14
- }[];
15
- color?: string;
16
- withoutDivider?: boolean;
17
- tabProps?: TabProps;
18
- wrapperProps?: BoxProps;
19
- tabOrientation?: 'horizontal' | 'vertical';
20
- }
21
- declare const CustomTabs: ({ tabs, tabPanels, indicator, orientation, color, withoutDivider, tabProps, wrapperProps, tabOrientation, ...props }: CustomTabsProps) => import("react/jsx-runtime").JSX.Element;
1
+ import type { CustomTabsProps } from './types';
2
+ export type { CustomTabsProps } from './types';
3
+ declare const CustomTabs: (props: CustomTabsProps) => import("react/jsx-runtime").JSX.Element;
22
4
  export default CustomTabs;
@@ -1,70 +1,8 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { useState } from 'react';
3
- import { Tab as MuiTab, Tabs as MuiTabs, useTheme, } from '@mui/material';
1
+ import { jsx as _jsx } from "react/jsx-runtime";
4
2
  import Box from '@mui/material/Box';
5
- const CustomTabs = ({ tabs, tabPanels, indicator = 'none', orientation = 'horizontal', color, withoutDivider, tabProps, wrapperProps, tabOrientation = 'horizontal', ...props }) => {
6
- const theme = useTheme();
7
- const [value, setValue] = useState(0);
8
- const handleChange = (event, newValue) => {
9
- setValue(newValue);
10
- };
11
- return (_jsxs(Box, { width: '100%', display: 'flex', height: '100%', flexDirection: orientation === 'vertical' ? 'row' : 'column', ...wrapperProps, children: [_jsx(MuiTabs, { centered: props?.centered, orientation: orientation, variant: props?.variant, value: value, onChange: handleChange, "aria-label": 'basic tabs', TabIndicatorProps: {
12
- style: {
13
- background: color || theme.palette.primary.main,
14
- ...(indicator === 'fullHeight'
15
- ? {
16
- ...(orientation === 'horizontal' && {
17
- height: 'calc(100% - 4px)',
18
- }),
19
- ...(orientation === 'vertical' && {
20
- width: 'calc(100% - 4px)',
21
- marginLeft: '4px',
22
- }),
23
- borderRadius: 8,
24
- marginBottom: '4px',
25
- }
26
- : {}),
27
- },
28
- hidden: indicator === 'none',
29
- }, style: { borderBottom: withoutDivider ? 'none' : '' }, ...props, children: tabs?.map(({ label, icon, disabled }, index) => (_jsx(MuiTab, { disabled: disabled, label: label, id: `tab-${index}`, "aria-controls": `tabPanel-${index}`, icon: icon ? icon : undefined, ...tabProps, sx: [
30
- {
31
- ...theme.typography.caption2,
32
- ...(tabOrientation === 'vertical'
33
- ? { writingMode: 'tb-rl' }
34
- : {}),
35
- '&.Mui-selected': {
36
- ...theme.typography['caption2.medium'],
37
- ...(indicator === 'fullHeight'
38
- ? {
39
- backgroundColor: 'transparent',
40
- zIndex: 10,
41
- color: (theme) => theme.palette.mode === 'light'
42
- ? theme.palette.text.secondary
43
- : theme.palette.text.primary,
44
- stroke: (theme) => theme.palette.mode === 'light'
45
- ? theme.palette.text.secondary
46
- : theme.palette.text.primary,
47
- }
48
- : indicator === 'line'
49
- ? {
50
- backgroundColor: 'transparent',
51
- color: (theme) => color || theme.palette.primary.main,
52
- stroke: (theme) => theme.palette.primary.main,
53
- }
54
- : {
55
- backgroundColor: 'transparent',
56
- ...(orientation === 'vertical' && {
57
- width: '100%',
58
- justifyContent: 'flex-start',
59
- }),
60
- }),
61
- },
62
- },
63
- ...(Array.isArray(tabProps?.sx) ? tabProps.sx : [tabProps?.sx]),
64
- ] }, index))) }), tabPanels?.map((children, index) => (_jsx(CustomTabPanel, { value: value, index: index, children: children.component }, index)))] }));
3
+ import { Tab, Tabs } from '@mui/material';
4
+ const CustomTabs = (props) => {
5
+ const { tabs, tabsProps, tabProps, wrapperProps, value, onChange, } = props;
6
+ return (_jsx(Box, { width: "100%", ...wrapperProps, children: _jsx(Tabs, { value: value, onChange: onChange, ...tabsProps, children: tabs.map(({ label, icon, disabled }, index) => (_jsx(Tab, { disabled: disabled, label: label, id: `tab-${index}`, icon: icon ? icon : undefined, iconPosition: 'start', ...tabProps }, index))) }) }));
65
7
  };
66
8
  export default CustomTabs;
67
- function CustomTabPanel(props) {
68
- const { children, value, index, ...other } = props;
69
- return (_jsx("div", { role: 'tabpanel', hidden: value !== index, id: `tabPanel-${index}`, "aria-labelledby": `tab-${index}`, ...other, children: value === index && children }));
70
- }
@@ -0,0 +1,9 @@
1
+ import type { ReactNode } from 'react';
2
+ export interface TabPanelProps {
3
+ children: ReactNode;
4
+ value: number;
5
+ index: number;
6
+ idPrefix?: string;
7
+ labelIdPrefix?: string;
8
+ }
9
+ export declare function TabPanel({ children, value, index, idPrefix, labelIdPrefix, }: TabPanelProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,6 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ export function TabPanel({ children, value, index, idPrefix = 'tabPanel-', labelIdPrefix = 'tab-', }) {
3
+ const panelId = `${idPrefix}${index}`;
4
+ const labelledById = `${labelIdPrefix}${index}`;
5
+ return (_jsx("div", { role: "tabpanel", hidden: value !== index, id: panelId, "aria-labelledby": labelledById, children: value === index ? children : null }));
6
+ }
@@ -0,0 +1,12 @@
1
+ import type { SyntheticEvent } from 'react';
2
+ type TabsOnChange = (event: SyntheticEvent, value: number) => void;
3
+ interface UseControllableTabsValueArgs {
4
+ value?: number;
5
+ defaultValue?: number;
6
+ onChange?: TabsOnChange;
7
+ }
8
+ export declare function useControllableTabsValue({ value, defaultValue, onChange, }: UseControllableTabsValueArgs): {
9
+ selectedValue: number;
10
+ handleChange: (event: SyntheticEvent, newValue: number) => void;
11
+ };
12
+ export {};
@@ -0,0 +1,13 @@
1
+ import { useCallback, useState } from 'react';
2
+ export function useControllableTabsValue({ value, defaultValue = 0, onChange, }) {
3
+ const isControlled = typeof value === 'number';
4
+ const [uncontrolledValue, setUncontrolledValue] = useState(defaultValue);
5
+ const selectedValue = isControlled ? value : uncontrolledValue;
6
+ const handleChange = useCallback((event, newValue) => {
7
+ if (!isControlled) {
8
+ setUncontrolledValue(newValue);
9
+ }
10
+ onChange?.(event, newValue);
11
+ }, [isControlled, onChange]);
12
+ return { selectedValue, handleChange };
13
+ }
@@ -0,0 +1,20 @@
1
+ import type { BoxProps } from '@mui/material/Box';
2
+ import type { TabProps, TabsProps } from '@mui/material';
3
+ import type { ReactElement, ReactNode } from 'react';
4
+ export type CustomTabsIndicator = 'line' | 'fullHeight' | 'none';
5
+ export type CustomTabsOrientation = 'horizontal' | 'vertical';
6
+ export interface CustomTabItem {
7
+ label: ReactNode;
8
+ icon?: string | ReactElement;
9
+ disabled?: boolean;
10
+ }
11
+ export interface CustomTabPanelConfig {
12
+ component: ReactNode;
13
+ }
14
+ export interface CustomTabsProps extends TabsProps {
15
+ tabs: CustomTabItem[];
16
+ tabPanels?: CustomTabPanelConfig[];
17
+ tabProps?: TabProps;
18
+ tabsProps?: TabsProps;
19
+ wrapperProps?: BoxProps;
20
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,11 @@
1
+ import type { TabsProps } from '@mui/material';
2
+ import type { Theme } from '@mui/material/styles';
3
+ import type { CustomTabsIndicator, CustomTabsOrientation } from '../types';
4
+ interface GetTabIndicatorPropsArgs {
5
+ indicator: CustomTabsIndicator;
6
+ color?: string;
7
+ orientation: CustomTabsOrientation;
8
+ theme: Theme;
9
+ }
10
+ export declare function getTabIndicatorProps({ indicator, color, orientation, theme, }: GetTabIndicatorPropsArgs): TabsProps['TabIndicatorProps'];
11
+ export {};
@@ -0,0 +1,21 @@
1
+ export function getTabIndicatorProps({ indicator, color, orientation, theme, }) {
2
+ const background = color || theme.palette.primary.main;
3
+ const style = {
4
+ background,
5
+ };
6
+ if (indicator === 'fullHeight') {
7
+ if (orientation === 'horizontal') {
8
+ style.height = 'calc(100% - 4px)';
9
+ }
10
+ else {
11
+ style.width = 'calc(100% - 4px)';
12
+ style.marginLeft = '4px';
13
+ }
14
+ style.borderRadius = 8;
15
+ style.marginBottom = '4px';
16
+ }
17
+ return {
18
+ style,
19
+ hidden: indicator === 'none',
20
+ };
21
+ }
@@ -0,0 +1,18 @@
1
+ import type { SxProps, Theme } from '@mui/material/styles';
2
+ import type { CustomTabsIndicator, CustomTabsOrientation } from '../types';
3
+ interface GetTabSxArgs {
4
+ theme: Theme;
5
+ indicator: CustomTabsIndicator;
6
+ color?: string;
7
+ /**
8
+ * Visual orientation for the Tab label (writing mode, alignment).
9
+ * Usually equals the MUI Tabs `orientation`.
10
+ */
11
+ tabOrientation: CustomTabsOrientation;
12
+ /**
13
+ * The actual MUI Tabs `orientation` (used for alignment differences).
14
+ */
15
+ orientation: CustomTabsOrientation;
16
+ }
17
+ export declare function getTabSx({ theme, indicator, color, tabOrientation, orientation, }: GetTabSxArgs): SxProps<Theme>;
18
+ export {};
@@ -0,0 +1,31 @@
1
+ export function getTabSx({ theme, indicator, color, tabOrientation, orientation, }) {
2
+ return [
3
+ {
4
+ ...theme.typography.caption2,
5
+ ...(tabOrientation === 'vertical' ? { writingMode: 'tb-rl' } : {}),
6
+ '&.Mui-selected': {
7
+ ...theme.typography['caption2.medium'],
8
+ ...(indicator === 'fullHeight'
9
+ ? {
10
+ backgroundColor: 'transparent',
11
+ zIndex: 10,
12
+ color: (t) => t.palette.mode === 'light' ? t.palette.text.secondary : t.palette.text.primary,
13
+ stroke: (t) => t.palette.mode === 'light' ? t.palette.text.secondary : t.palette.text.primary,
14
+ }
15
+ : indicator === 'line'
16
+ ? {
17
+ backgroundColor: 'transparent',
18
+ color: () => color || theme.palette.primary.main,
19
+ stroke: () => theme.palette.primary.main,
20
+ }
21
+ : {
22
+ backgroundColor: 'transparent',
23
+ ...(orientation === 'vertical' && {
24
+ width: '100%',
25
+ justifyContent: 'flex-start',
26
+ }),
27
+ }),
28
+ },
29
+ },
30
+ ];
31
+ }
@@ -1,131 +1,118 @@
1
1
  /// <reference types="react" />
2
2
  import useTable from './custom-table/components/useTable';
3
- declare const FormWithErrorBoundary: import("react").FC<import("./form/Form").FormProps & {
3
+ export { useTable };
4
+ export declare const Form: import("react").FC<import("./form/Form").FormProps & {
4
5
  skeletonWidth?: string | number | undefined;
5
6
  skeletonHeight?: string | number | undefined;
6
7
  }>;
7
- declare const CustomTableWithErrorBoundary: import("react").FC<import("./custom-table/types").ICustomTable & {
8
+ export declare const CustomTable: import("react").FC<import("./custom-table/types").ICustomTable & {
8
9
  skeletonWidth?: string | number | undefined;
9
10
  skeletonHeight?: string | number | undefined;
10
11
  }>;
11
- declare const UFAutoCompleteWithErrorBoundary: import("react").FC<import("./form/type").IAutoCompleteForm & {
12
+ export declare const UFAutoComplete: import("react").FC<import("./form/type").IAutoCompleteForm & {
12
13
  form: import("react-hook-form").UseFormReturn<any>;
13
14
  error: any;
14
15
  } & {
15
16
  skeletonWidth?: string | number | undefined;
16
17
  skeletonHeight?: string | number | undefined;
17
18
  }>;
18
- declare const UFCheckboxWithErrorBoundary: import("react").FC<import("./form/type").ICheckboxForm & {
19
+ export declare const UFCheckbox: import("react").FC<import("./form/type").ICheckboxForm & {
19
20
  form: import("react-hook-form").UseFormReturn<any>;
20
21
  error: any;
21
22
  } & {
22
23
  skeletonWidth?: string | number | undefined;
23
24
  skeletonHeight?: string | number | undefined;
24
25
  }>;
25
- declare const UFRadioWithErrorBoundary: import("react").FC<import("./form/type").IRadioForm & {
26
+ export declare const UFRadio: import("react").FC<import("./form/type").IRadioForm & {
26
27
  form: import("react-hook-form").UseFormReturn<any>;
27
28
  error: any;
28
29
  } & {
29
30
  skeletonWidth?: string | number | undefined;
30
31
  skeletonHeight?: string | number | undefined;
31
32
  }>;
32
- declare const UFCurrencyWithErrorBoundary: import("react").FC<import("./form/type").ICurrencyForm & {
33
+ export declare const UFCurrency: import("react").FC<import("./form/type").ICurrencyForm & {
33
34
  form: import("react-hook-form").UseFormReturn<any>;
34
35
  error: any;
35
36
  } & {
36
37
  skeletonWidth?: string | number | undefined;
37
38
  skeletonHeight?: string | number | undefined;
38
39
  }>;
39
- export declare const UFDatePickerWithErrorBoundary: import("react").FC<import("./form/type").IDatePickerForm & {
40
+ export declare const UFDatePicker: import("react").FC<import("./form/type").IDatePickerForm & {
40
41
  form: import("react-hook-form").UseFormReturn<any>;
41
42
  error: any;
42
43
  } & {
43
44
  skeletonWidth?: string | number | undefined;
44
45
  skeletonHeight?: string | number | undefined;
45
46
  }>;
46
- export declare const UFMultiSelectWithErrorBoundary: import("react").FC<import("./form/type").IMultiSelectForm & {
47
+ export declare const UFMultiSelect: import("react").FC<import("./form/type").IMultiSelectForm & {
47
48
  form: import("react-hook-form").UseFormReturn<any>;
48
49
  error: any;
49
50
  } & {
50
51
  skeletonWidth?: string | number | undefined;
51
52
  skeletonHeight?: string | number | undefined;
52
53
  }>;
53
- export declare const UFSelectWithErrorBoundary: import("react").FC<import("./form/type").ISelectForm & {
54
+ export declare const UFSelect: import("react").FC<import("./form/type").ISelectForm & {
54
55
  form: import("react-hook-form").UseFormReturn<any>;
55
56
  error: any;
56
57
  } & {
57
58
  skeletonWidth?: string | number | undefined;
58
59
  skeletonHeight?: string | number | undefined;
59
60
  }>;
60
- export declare const UFTextAreaWithErrorBoundary: import("react").FC<import("./form/type").ITextAreaForm & {
61
+ export declare const UFTextArea: import("react").FC<import("./form/type").ITextAreaForm & {
61
62
  form: import("react-hook-form").UseFormReturn<any>;
62
63
  error: any;
63
64
  } & {
64
65
  skeletonWidth?: string | number | undefined;
65
66
  skeletonHeight?: string | number | undefined;
66
67
  }>;
67
- export declare const UFTextFieldWithErrorBoundary: import("react").FC<import("./form/type").ITextFieldForm & {
68
+ export declare const UFTextField: import("react").FC<import("./form/type").ITextFieldForm & {
68
69
  form: import("react-hook-form").UseFormReturn<any>;
69
70
  error: any;
70
71
  } & {
71
72
  skeletonWidth?: string | number | undefined;
72
73
  skeletonHeight?: string | number | undefined;
73
74
  }>;
74
- export declare const UFMultiCheckboxWithErrorBoundary: import("react").FC<import("./form/type").IMultiCheckboxForm & {
75
+ export declare const UFMultiCheckbox: import("react").FC<import("./form/type").IMultiCheckboxForm & {
75
76
  form: import("react-hook-form").UseFormReturn<any>;
76
77
  error: any;
77
78
  } & {
78
79
  skeletonWidth?: string | number | undefined;
79
80
  skeletonHeight?: string | number | undefined;
80
81
  }>;
81
- export declare const CheckboxListWithErrorBoundary: import("react").FC<import("./form/checkbox-list/CheckboxList").CheckboxListProps & {
82
+ export declare const CheckboxList: import("react").FC<import("./form/checkbox-list/CheckboxList").CheckboxListProps & {
82
83
  skeletonWidth?: string | number | undefined;
83
84
  skeletonHeight?: string | number | undefined;
84
85
  }>;
85
- export declare const FormProviderWithErrorBoundary: import("react").FC<import("../context/FormContext").IFormProvider & {
86
+ export declare const FormProvider: import("react").FC<import("../context/FormContext").IFormProvider & {
86
87
  skeletonWidth?: string | number | undefined;
87
88
  skeletonHeight?: string | number | undefined;
88
89
  }>;
89
- export declare const UFSwitchWithErrorBoundary: import("react").FC<import("./form/type").ISwitchForm & {
90
+ export declare const UFSwitch: import("react").FC<import("./form/type").ISwitchForm & {
90
91
  form: import("react-hook-form").UseFormReturn<any>;
91
92
  error?: any;
92
93
  } & {
93
94
  skeletonWidth?: string | number | undefined;
94
95
  skeletonHeight?: string | number | undefined;
95
96
  }>;
96
- export declare const UFTimeWithErrorBoundary: import("react").FC<import("./form/type").ITimeForm & {
97
+ export declare const UFTime: import("react").FC<import("./form/type").ITimeForm & {
97
98
  form: import("react-hook-form").UseFormReturn<any>;
98
99
  error: any;
99
100
  } & {
100
101
  skeletonWidth?: string | number | undefined;
101
102
  skeletonHeight?: string | number | undefined;
102
103
  }>;
103
- export declare const UFUploaderWithErrorBoundary: import("react").FC<import("./form/type").IUploaderForm & {
104
+ export declare const UFUploader: import("react").FC<import("./form/type").IUploaderForm & {
104
105
  form: import("react-hook-form").UseFormReturn<any>;
105
106
  error: any;
106
107
  } & {
107
108
  skeletonWidth?: string | number | undefined;
108
109
  skeletonHeight?: string | number | undefined;
109
110
  }>;
110
- export { useTable };
111
- export { FormWithErrorBoundary as Form };
112
- export { CustomTableWithErrorBoundary as CustomTable };
113
- export { UFAutoCompleteWithErrorBoundary as UFAutoComplete };
114
- export { UFCheckboxWithErrorBoundary as UFCheckbox };
115
- export { UFRadioWithErrorBoundary as UFRadio };
116
- export { UFCurrencyWithErrorBoundary as UFCurrency };
117
- export { UFDatePickerWithErrorBoundary as UFDatePicker };
118
- export { UFMultiSelectWithErrorBoundary as UFMultiSelect };
119
- export { UFSelectWithErrorBoundary as UFSelect };
120
- export { UFTextAreaWithErrorBoundary as UFTextArea };
121
- export { UFTextFieldWithErrorBoundary as UFTextField };
122
- export { UFMultiCheckboxWithErrorBoundary as UFMultiCheckbox };
123
- export { UFSwitchWithErrorBoundary as UFSwitch };
124
- export { UFTimeWithErrorBoundary as UFTime };
125
- export { UFUploaderWithErrorBoundary as UFUploader };
126
- export { CheckboxListWithErrorBoundary as CheckboxList };
127
- export { FormProviderWithErrorBoundary as FormProvider };
128
111
  export declare const OTPInput: import("react").FC<import("./otp-input/OTPInput").OTPInputProps & {
129
112
  skeletonWidth?: string | number | undefined;
130
113
  skeletonHeight?: string | number | undefined;
131
114
  }>;
115
+ export declare const CustomTabs: import("react").FC<import("./custom-tabs/types").CustomTabsProps & {
116
+ skeletonWidth?: string | number | undefined;
117
+ skeletonHeight?: string | number | undefined;
118
+ }>;
@@ -1,58 +1,41 @@
1
1
  import withErrorBoundary from './error boundary/withErrorBoundary';
2
2
  import useTable from './custom-table/components/useTable';
3
- import Form from "./form/Form";
4
- import CustomTable from "./custom-table/CustomTable";
5
- import UFAutoComplete from "./form/components/UFAutoComplete";
6
- import UFCheckbox from "./form/components/UFCheckbox";
7
- import UFRadio from "./form/components/UFRadio";
8
- import UFCurrency from "./form/components/UFCurrency";
9
- import UFDatePicker from './form/components/UFDatePicker';
10
- import UFMultiSelect from './form/components/UFMultiSelect';
11
- import UFSelect from './form/components/UFSelect';
12
- import UFTextArea from './form/components/UFTextArea';
13
- import UFTextField from './form/components/UFTextField';
14
- import UFMultiCheckbox from './form/components/UFMultiCheckbox';
15
- import CheckboxList from './form/checkbox-list/CheckboxList';
16
- import FormProvider from '../context/FormContext';
17
- import UFSwitch from './form/components/UFSwitch';
18
- import UFTime from './form/components/UFTime';
19
- import UFUploader from './form/components/UFUploader';
20
- import OTPInputComponent from './otp-input/OTPInput';
21
- // Wrap components with the HOC
22
- const FormWithErrorBoundary = withErrorBoundary(Form);
23
- const CustomTableWithErrorBoundary = withErrorBoundary(CustomTable);
24
- const UFAutoCompleteWithErrorBoundary = withErrorBoundary(UFAutoComplete);
25
- const UFCheckboxWithErrorBoundary = withErrorBoundary(UFCheckbox);
26
- const UFRadioWithErrorBoundary = withErrorBoundary(UFRadio);
27
- const UFCurrencyWithErrorBoundary = withErrorBoundary(UFCurrency);
28
- export const UFDatePickerWithErrorBoundary = withErrorBoundary(UFDatePicker);
29
- export const UFMultiSelectWithErrorBoundary = withErrorBoundary(UFMultiSelect);
30
- export const UFSelectWithErrorBoundary = withErrorBoundary(UFSelect);
31
- export const UFTextAreaWithErrorBoundary = withErrorBoundary(UFTextArea);
32
- export const UFTextFieldWithErrorBoundary = withErrorBoundary(UFTextField);
33
- export const UFMultiCheckboxWithErrorBoundary = withErrorBoundary(UFMultiCheckbox);
34
- export const CheckboxListWithErrorBoundary = withErrorBoundary(CheckboxList);
35
- export const FormProviderWithErrorBoundary = withErrorBoundary(FormProvider);
36
- export const UFSwitchWithErrorBoundary = withErrorBoundary(UFSwitch);
37
- export const UFTimeWithErrorBoundary = withErrorBoundary(UFTime);
38
- export const UFUploaderWithErrorBoundary = withErrorBoundary(UFUploader);
39
- // Export wrapped components
3
+ import FormBase from './form/Form';
4
+ import CustomTableBase from './custom-table/CustomTable';
5
+ import UFAutoCompleteBase from './form/components/UFAutoComplete';
6
+ import UFCheckboxBase from './form/components/UFCheckbox';
7
+ import UFRadioBase from './form/components/UFRadio';
8
+ import UFCurrencyBase from './form/components/UFCurrency';
9
+ import UFDatePickerBase from './form/components/UFDatePicker';
10
+ import UFMultiSelectBase from './form/components/UFMultiSelect';
11
+ import UFSelectBase from './form/components/UFSelect';
12
+ import UFTextAreaBase from './form/components/UFTextArea';
13
+ import UFTextFieldBase from './form/components/UFTextField';
14
+ import UFMultiCheckboxBase from './form/components/UFMultiCheckbox';
15
+ import CheckboxListBase from './form/checkbox-list/CheckboxList';
16
+ import FormProviderBase from '../context/FormContext';
17
+ import UFSwitchBase from './form/components/UFSwitch';
18
+ import UFTimeBase from './form/components/UFTime';
19
+ import UFUploaderBase from './form/components/UFUploader';
20
+ import OTPInputBase from './otp-input/OTPInput';
21
+ import CustomTabsBase from './custom-tabs/CustomTabs';
40
22
  export { useTable };
41
- export { FormWithErrorBoundary as Form };
42
- export { CustomTableWithErrorBoundary as CustomTable };
43
- export { UFAutoCompleteWithErrorBoundary as UFAutoComplete };
44
- export { UFCheckboxWithErrorBoundary as UFCheckbox };
45
- export { UFRadioWithErrorBoundary as UFRadio };
46
- export { UFCurrencyWithErrorBoundary as UFCurrency };
47
- export { UFDatePickerWithErrorBoundary as UFDatePicker };
48
- export { UFMultiSelectWithErrorBoundary as UFMultiSelect };
49
- export { UFSelectWithErrorBoundary as UFSelect };
50
- export { UFTextAreaWithErrorBoundary as UFTextArea };
51
- export { UFTextFieldWithErrorBoundary as UFTextField };
52
- export { UFMultiCheckboxWithErrorBoundary as UFMultiCheckbox };
53
- export { UFSwitchWithErrorBoundary as UFSwitch };
54
- export { UFTimeWithErrorBoundary as UFTime };
55
- export { UFUploaderWithErrorBoundary as UFUploader };
56
- export { CheckboxListWithErrorBoundary as CheckboxList };
57
- export { FormProviderWithErrorBoundary as FormProvider };
58
- export const OTPInput = withErrorBoundary(OTPInputComponent);
23
+ export const Form = withErrorBoundary(FormBase);
24
+ export const CustomTable = withErrorBoundary(CustomTableBase);
25
+ export const UFAutoComplete = withErrorBoundary(UFAutoCompleteBase);
26
+ export const UFCheckbox = withErrorBoundary(UFCheckboxBase);
27
+ export const UFRadio = withErrorBoundary(UFRadioBase);
28
+ export const UFCurrency = withErrorBoundary(UFCurrencyBase);
29
+ export const UFDatePicker = withErrorBoundary(UFDatePickerBase);
30
+ export const UFMultiSelect = withErrorBoundary(UFMultiSelectBase);
31
+ export const UFSelect = withErrorBoundary(UFSelectBase);
32
+ export const UFTextArea = withErrorBoundary(UFTextAreaBase);
33
+ export const UFTextField = withErrorBoundary(UFTextFieldBase);
34
+ export const UFMultiCheckbox = withErrorBoundary(UFMultiCheckboxBase);
35
+ export const CheckboxList = withErrorBoundary(CheckboxListBase);
36
+ export const FormProvider = withErrorBoundary(FormProviderBase);
37
+ export const UFSwitch = withErrorBoundary(UFSwitchBase);
38
+ export const UFTime = withErrorBoundary(UFTimeBase);
39
+ export const UFUploader = withErrorBoundary(UFUploaderBase);
40
+ export const OTPInput = withErrorBoundary(OTPInputBase);
41
+ export const CustomTabs = withErrorBoundary(CustomTabsBase);
@@ -6,7 +6,6 @@ import { MuiTextField } from '../mui/TextField/TextField';
6
6
  import { MuiAlert } from '../mui/Alert/Alert';
7
7
  import { MuiButton } from '../mui/Button/MuiButton';
8
8
  import { MuiChip } from '../mui/Chip/MuiChip';
9
- import { MuiTab } from '../mui/Tabs/Tab/MuiTab';
10
9
  import { MuiPagination } from '../mui/Pagination/MuiPagination';
11
10
  import { MuiPaginationItem } from '../mui/Pagination/MuiPaginationItem';
12
11
  import { MuiCheckbox } from '../mui/Checkbox/Checkbox';
@@ -28,7 +27,6 @@ import { MuiAutoComplete as MuiAutocomplete } from '../mui/AutoComplete/MuiAutoC
28
27
  import { MuiBreadcrumbs } from '../mui/BreadCrumbs/MuiBreadCrumbs';
29
28
  import { MuiDialog } from '../mui/Dialog/MuiDialog';
30
29
  import { breakpoints } from '../mui/breakpoints';
31
- import { MuiTabs } from '../mui/Tabs/MuiTabs';
32
30
  import { MuiMenuItem } from '../mui/menu/MuiMenuItem';
33
31
  const getDesignTokens = (mode) => ({
34
32
  mode,
@@ -45,7 +43,6 @@ export const themeOptions = (mode, isRtl) => ({
45
43
  MuiAccordion,
46
44
  MuiAlert,
47
45
  MuiChip,
48
- MuiTab,
49
46
  MuiPagination,
50
47
  MuiPaginationItem,
51
48
  MuiSelect,
@@ -60,7 +57,6 @@ export const themeOptions = (mode, isRtl) => ({
60
57
  MuiAutocomplete,
61
58
  MuiBreadcrumbs,
62
59
  MuiDialog,
63
- MuiTabs,
64
60
  MuiMenuItem,
65
61
  MuiTextField,
66
62
  MuiOutlinedInput,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mui-design-system",
3
- "version": "0.0.36",
3
+ "version": "0.0.38",
4
4
  "description": "MUI-based design system with theme, form components, and utilities",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",