norma-library 0.6.3 → 0.6.5

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 (176) hide show
  1. package/.babelrc.json +18 -18
  2. package/.prettierignore +10 -10
  3. package/.prettierrc.json +20 -20
  4. package/.storybook/main.ts +20 -20
  5. package/.storybook/preview.ts +15 -15
  6. package/README.md +43 -43
  7. package/commitlint.config.js +1 -1
  8. package/dist/esm/components/UncontrolledTable/components/header/index.js +4 -2
  9. package/dist/esm/components/UncontrolledTable/components/header/index.js.map +1 -1
  10. package/dist/esm/components/UncontrolledTable/components/header/styles.js +1 -1
  11. package/dist/esm/components/UncontrolledTable/components/header/styles.js.map +1 -1
  12. package/dist/esm/components/UncontrolledTable/index.js +1 -1
  13. package/dist/esm/components/UncontrolledTable/index.js.map +1 -1
  14. package/dist/esm/components/UncontrolledTable/interface.d.ts +2 -0
  15. package/dist/esm/components/UncontrolledTabs/UncontrolledTabs.d.ts +2 -1
  16. package/dist/esm/components/UncontrolledTabs/UncontrolledTabs.js +5 -2
  17. package/dist/esm/components/UncontrolledTabs/UncontrolledTabs.js.map +1 -1
  18. package/dist/esm/components/UncontrolledTabs/UncontrolledTabsInfo.style.d.ts +2 -0
  19. package/dist/esm/components/UncontrolledTabs/UncontrolledTabsInfo.style.js +5 -0
  20. package/dist/esm/components/UncontrolledTabs/UncontrolledTabsInfo.style.js.map +1 -0
  21. package/docs/index.md +118 -118
  22. package/package.json +136 -136
  23. package/src/components/Accordion.tsx +39 -39
  24. package/src/components/Avatar.tsx +17 -17
  25. package/src/components/Badge.tsx +14 -14
  26. package/src/components/Box/index.tsx +12 -12
  27. package/src/components/Box/interfaces.ts +3 -3
  28. package/src/components/Box/styles.tsx +22 -22
  29. package/src/components/Breadcrumb/index.tsx +27 -27
  30. package/src/components/Breadcrumb/interface.ts +8 -8
  31. package/src/components/Breadcrumb/styles.tsx +32 -32
  32. package/src/components/Button.tsx +26 -26
  33. package/src/components/Card.tsx +37 -37
  34. package/src/components/ChatMessage.tsx +87 -87
  35. package/src/components/ChatMessageBalloon/ChatMessageBalloon.style.ts +56 -56
  36. package/src/components/ChatMessageBalloon/ChatMessageBalloon.tsx +55 -55
  37. package/src/components/CheckBox.tsx +21 -21
  38. package/src/components/DateInput/index.tsx +34 -34
  39. package/src/components/DateInput/interface.ts +13 -13
  40. package/src/components/DateInput/styles.tsx +27 -27
  41. package/src/components/DatePicker.tsx +67 -67
  42. package/src/components/DropDown.tsx +24 -24
  43. package/src/components/IconButton.tsx +37 -37
  44. package/src/components/Icons.tsx +82 -82
  45. package/src/components/Modal.tsx +103 -103
  46. package/src/components/MultiSelectInput/components/MultiValue/index.tsx +44 -44
  47. package/src/components/MultiSelectInput/components/Option/index.tsx +62 -62
  48. package/src/components/MultiSelectInput/components/Option/styles.tsx +8 -8
  49. package/src/components/MultiSelectInput/index.tsx +60 -60
  50. package/src/components/MultiSelectInput/interfaces.ts +15 -15
  51. package/src/components/MultiSelectInput/styles.tsx +43 -43
  52. package/src/components/Paper.tsx +12 -12
  53. package/src/components/ProgressBar.tsx +71 -71
  54. package/src/components/RadioGroup.tsx +43 -43
  55. package/src/components/RangerSlider.tsx +65 -65
  56. package/src/components/Select.tsx +74 -74
  57. package/src/components/SelectInput/components/Option/index.tsx +61 -61
  58. package/src/components/SelectInput/components/Option/styles.tsx +8 -8
  59. package/src/components/SelectInput/index.tsx +45 -45
  60. package/src/components/SelectInput/interfaces.ts +15 -15
  61. package/src/components/SelectInput/styles.tsx +31 -31
  62. package/src/components/StatusModal/StatusModal.style.tsx +75 -75
  63. package/src/components/StatusModal/StatusModal.tsx +58 -58
  64. package/src/components/Svgs.tsx +506 -506
  65. package/src/components/Table/components/header/index.tsx +86 -86
  66. package/src/components/Table/components/header/styles.tsx +59 -59
  67. package/src/components/Table/components/index.tsx +8 -8
  68. package/src/components/Table/components/pagination/index.tsx +39 -39
  69. package/src/components/Table/components/pagination/styles.tsx +28 -28
  70. package/src/components/Table/components/tbody/index.tsx +30 -30
  71. package/src/components/Table/components/tbody/styles.tsx +4 -4
  72. package/src/components/Table/index.tsx +317 -317
  73. package/src/components/Table/interface.ts +23 -23
  74. package/src/components/Table/styles.tsx +117 -117
  75. package/src/components/Tabs.tsx +105 -105
  76. package/src/components/Tag.tsx +33 -33
  77. package/src/components/TextField.tsx +19 -19
  78. package/src/components/TextInput/index.tsx +37 -37
  79. package/src/components/TextInput/interface.ts +9 -9
  80. package/src/components/TextInput/styles.tsx +23 -23
  81. package/src/components/TimeLine.tsx +89 -89
  82. package/src/components/TimePicker.tsx +78 -78
  83. package/src/components/Typography/Text/index.tsx +20 -20
  84. package/src/components/Typography/Text/interfaces.ts +5 -5
  85. package/src/components/Typography/Text/styles.tsx +40 -40
  86. package/src/components/Typography/Title/index.tsx +22 -22
  87. package/src/components/Typography/Title/interfaces.ts +6 -6
  88. package/src/components/Typography/Title/styles.tsx +40 -40
  89. package/src/components/Typography/index.tsx +6 -6
  90. package/src/components/UncontrolledTable/components/header/index.tsx +72 -65
  91. package/src/components/UncontrolledTable/components/header/styles.tsx +66 -63
  92. package/src/components/UncontrolledTable/components/index.tsx +8 -8
  93. package/src/components/UncontrolledTable/components/pagination/index.tsx +43 -43
  94. package/src/components/UncontrolledTable/components/pagination/styles.tsx +28 -28
  95. package/src/components/UncontrolledTable/components/tbody/index.tsx +33 -33
  96. package/src/components/UncontrolledTable/components/tbody/styles.tsx +32 -32
  97. package/src/components/UncontrolledTable/index.tsx +222 -221
  98. package/src/components/UncontrolledTable/interface.ts +44 -43
  99. package/src/components/UncontrolledTable/styles.tsx +123 -123
  100. package/src/components/UncontrolledTabs/UncontrolledTabs.style.tsx +58 -56
  101. package/src/components/UncontrolledTabs/UncontrolledTabs.tsx +71 -68
  102. package/src/components/UncontrolledTabs/UncontrolledTabsInfo.style.ts +8 -0
  103. package/src/components/index.ts +24 -24
  104. package/src/helpers/alignments.ts +14 -14
  105. package/src/helpers/borders.ts +18 -18
  106. package/src/helpers/colors.ts +258 -258
  107. package/src/helpers/index.ts +5 -5
  108. package/src/helpers/radios.ts +24 -24
  109. package/src/helpers/sizes.ts +72 -72
  110. package/src/hooks/useClickOutside.tsx +18 -18
  111. package/src/index.ts +70 -70
  112. package/src/interfaces/Accordion.ts +12 -12
  113. package/src/interfaces/Avatar.tsx +15 -15
  114. package/src/interfaces/Badge.ts +19 -19
  115. package/src/interfaces/Button.ts +22 -22
  116. package/src/interfaces/Card.ts +11 -11
  117. package/src/interfaces/ChatMessage.ts +12 -12
  118. package/src/interfaces/ChatMessageBalloon.ts +17 -17
  119. package/src/interfaces/CheckBox.ts +27 -27
  120. package/src/interfaces/DatePicker.ts +13 -13
  121. package/src/interfaces/DropDown.ts +14 -14
  122. package/src/interfaces/IconButton.ts +22 -22
  123. package/src/interfaces/Icons.ts +17 -17
  124. package/src/interfaces/Modal.ts +18 -18
  125. package/src/interfaces/Paper.ts +12 -12
  126. package/src/interfaces/ProgressBar.ts +29 -29
  127. package/src/interfaces/RadioGroup.ts +23 -23
  128. package/src/interfaces/RangerSlider.ts +21 -21
  129. package/src/interfaces/Select.ts +17 -17
  130. package/src/interfaces/Tabs.ts +19 -19
  131. package/src/interfaces/Tag.ts +17 -17
  132. package/src/interfaces/TextField.ts +44 -44
  133. package/src/interfaces/TimeLine.ts +11 -11
  134. package/src/interfaces/TimePicker.ts +13 -13
  135. package/src/interfaces/index.ts +23 -23
  136. package/src/providers/NormaProvider.tsx +13 -13
  137. package/src/sample-data-2.json +178 -178
  138. package/src/sample-data.json +177 -177
  139. package/src/stories/Accordion.stories.tsx +65 -65
  140. package/src/stories/Avatar.stories.tsx +123 -123
  141. package/src/stories/Badge.stories.tsx +39 -39
  142. package/src/stories/Box.stories.tsx +35 -35
  143. package/src/stories/Breadcrumb.stories.tsx +44 -44
  144. package/src/stories/Button.stories.tsx +93 -93
  145. package/src/stories/Card.stories.tsx +39 -39
  146. package/src/stories/ChatMessage.stories.tsx +84 -84
  147. package/src/stories/ChatMessageBalloon.stories.tsx +108 -108
  148. package/src/stories/CheckBox.stories.tsx +88 -88
  149. package/src/stories/DateInput.stories.tsx +51 -51
  150. package/src/stories/DatePicker.stories.tsx +50 -50
  151. package/src/stories/DropDown.stories.tsx +57 -57
  152. package/src/stories/IconButton.stories.tsx +78 -78
  153. package/src/stories/Modal.stories.tsx +246 -246
  154. package/src/stories/ModalStatus.stories.tsx +46 -46
  155. package/src/stories/MultiSelectInput.stories.tsx +90 -90
  156. package/src/stories/Paper.stories.tsx +53 -53
  157. package/src/stories/ProgressBar.stories.tsx +116 -116
  158. package/src/stories/RadioGroup.stories.tsx +87 -87
  159. package/src/stories/RangerSlider.stories.tsx +149 -149
  160. package/src/stories/Select.stories.tsx +100 -100
  161. package/src/stories/SelectInput.stories.tsx +78 -78
  162. package/src/stories/Table.stories.tsx +372 -372
  163. package/src/stories/Tabs.stories.tsx +61 -61
  164. package/src/stories/Tag.stories.tsx +56 -56
  165. package/src/stories/Text.stories.tsx +37 -37
  166. package/src/stories/TextField.stories.tsx +310 -310
  167. package/src/stories/TextInput.stories.tsx +52 -52
  168. package/src/stories/TimeLine.stories.tsx +35 -35
  169. package/src/stories/TimePicker.stories.tsx +87 -87
  170. package/src/stories/Title.stories.tsx +43 -43
  171. package/src/stories/UncontrolledTable.stories.tsx +315 -305
  172. package/src/stories/UncontrolledTabs.stories.tsx +74 -63
  173. package/src/styles/globals.scss +17 -17
  174. package/src/types/index.ts +207 -207
  175. package/src/utils/styledBreakpoints.ts +25 -25
  176. package/vite.config.ts +15 -15
@@ -1,63 +1,74 @@
1
- import React, { useState } from 'react';
2
-
3
- import type { Meta, StoryObj } from '@storybook/react';
4
- import UncontrolledTabs from '../components/UncontrolledTabs/UncontrolledTabs';
5
- import { DataTabs } from '../types';
6
- import { Typography } from '@mui/material';
7
-
8
- const data: DataTabs[] = [
9
- {
10
- label: 'Tab 1',
11
- id: 'panel-1',
12
- children: (
13
- <Typography>
14
- Tab 1 - Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet
15
- blandit leo lobortis eget.
16
- </Typography>
17
- ),
18
- },
19
- {
20
- label: 'Tab 2',
21
- id: 'panel-2',
22
- children: (
23
- <Typography>
24
- Tab 2 - Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet
25
- blandit leo lobortis eget.
26
- </Typography>
27
- ),
28
- },
29
- ];
30
-
31
- const meta = {
32
- title: 'Uncontrolled/Tabs',
33
- component: UncontrolledTabs,
34
- tags: ['autodocs'],
35
- parameters: {
36
- layout: 'centered',
37
- },
38
- argTypes: {
39
- tabs: data,
40
- },
41
- } satisfies Meta<typeof UncontrolledTabs>;
42
-
43
- export default meta;
44
-
45
- type Story = StoryObj<typeof meta>;
46
-
47
- export const Playground: Story = {
48
- args: {
49
- tab: 0,
50
- tabs: data,
51
- },
52
- };
53
-
54
- export const UncontrolledTabsBasic = () => {
55
- const [tab, setTab] = useState(0);
56
- return (
57
- <div style={{ width: '480px', marginBottom: 30 }}>
58
- <UncontrolledTabs tab={tab} tabs={data} onTabChange={(evt, tab) => setTab(tab)} />
59
- </div>
60
- );
61
- };
62
-
63
- UncontrolledTabsBasic.storyName = 'Uncontrolled Tabs';
1
+ import React, { useState } from 'react';
2
+
3
+ import type { Meta, StoryObj } from '@storybook/react';
4
+ import UncontrolledTabs from '../components/UncontrolledTabs/UncontrolledTabs';
5
+ import { DataTabs } from '../types';
6
+ import { Typography } from '@mui/material';
7
+
8
+ const data: DataTabs[] = [
9
+ {
10
+ label: 'Tab 1',
11
+ id: 'panel-1',
12
+ children: (
13
+ <Typography>
14
+ Tab 1 - Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet
15
+ blandit leo lobortis eget.
16
+ </Typography>
17
+ ),
18
+ },
19
+ {
20
+ label: 'Tab 2',
21
+ id: 'panel-2',
22
+ children: (
23
+ <Typography>
24
+ Tab 2 - Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus ex, sit amet
25
+ blandit leo lobortis eget.
26
+ </Typography>
27
+ ),
28
+ },
29
+ ];
30
+
31
+ const meta = {
32
+ title: 'Uncontrolled/Tabs',
33
+ component: UncontrolledTabs,
34
+ tags: ['autodocs'],
35
+ parameters: {
36
+ layout: 'centered',
37
+ },
38
+ argTypes: {
39
+ tabs: data,
40
+ },
41
+ } satisfies Meta<typeof UncontrolledTabs>;
42
+
43
+ export default meta;
44
+
45
+ type Story = StoryObj<typeof meta>;
46
+
47
+ export const Playground: Story = {
48
+ args: {
49
+ tab: 0,
50
+ tabs: data,
51
+ },
52
+ };
53
+
54
+ export const UncontrolledTabsBasic = () => {
55
+ const [tab, setTab] = useState(0);
56
+ return (
57
+ <div style={{ width: '480px', marginBottom: 30 }}>
58
+ <UncontrolledTabs tab={tab} tabs={data} onTabChange={(evt, tab) => setTab(tab)} />
59
+ </div>
60
+ );
61
+ };
62
+
63
+ UncontrolledTabsBasic.storyName = 'Uncontrolled Tabs';
64
+
65
+ export const UncontrolledTabsInfo = () => {
66
+ const [tab, setTab] = useState(0);
67
+ return (
68
+ <div style={{ width: '480px', marginBottom: 30 }}>
69
+ <UncontrolledTabs info={<div>Informação dentro da tab</div>} tab={tab} tabs={data} onTabChange={(evt, tab) => setTab(tab)} />
70
+ </div>
71
+ );
72
+ };
73
+
74
+ UncontrolledTabsInfo.storyName = 'Uncontrolled Tabs With Info';
@@ -1,18 +1,18 @@
1
-
2
- :root {
3
- --transparent: transparent;
4
- --current: currentColor;
5
- --primary: #fe761c;
6
- --secondary: #43bbf2;
7
- --error: #d63643;
8
- --warning: #ffc300;
9
- --info: #71d5f7;
10
- --success: #6bc235;
11
- --helper: #5a2a79;
12
- }
13
-
14
- .appearance-none {
15
- -webkit-appearance: none;
16
- -moz-appearance: none;
17
- appearance: none;
1
+
2
+ :root {
3
+ --transparent: transparent;
4
+ --current: currentColor;
5
+ --primary: #fe761c;
6
+ --secondary: #43bbf2;
7
+ --error: #d63643;
8
+ --warning: #ffc300;
9
+ --info: #71d5f7;
10
+ --success: #6bc235;
11
+ --helper: #5a2a79;
12
+ }
13
+
14
+ .appearance-none {
15
+ -webkit-appearance: none;
16
+ -moz-appearance: none;
17
+ appearance: none;
18
18
  }
@@ -1,207 +1,207 @@
1
- import {
2
- AvatarProps as MuiAvatarProps,
3
- ButtonProps as MuiButtonProps,
4
- BadgeProps as MuiBadgeProps,
5
- IconButtonProps as MuiIconButtonProps,
6
- TextFieldProps as MuiTextFieldProps,
7
- CheckboxProps as MuiCheckBoxProps,
8
- MenuProps as MuiDropDownProps,
9
- ChipProps as MuiChipProps,
10
- LinearProgressProps as MuiLinearProgressProps,
11
- SliderProps as MuiSliderProps,
12
- AccordionProps as MuiAccordionProps,
13
- TabsProps as MuiTabsProps,
14
- SelectProps as MuiSelectProps,
15
- PaperProps as MuiPaperProps,
16
- SvgIconProps,
17
- ModalProps,
18
- CardProps as MuiCardProps,
19
- TableProps as MuiTableProps,
20
- } from '@mui/material';
21
-
22
- import { TimelineProps as MuiTimeLineProps } from '@mui/lab';
23
-
24
- import { SwitchBaseProps as MuiSwitchBaseProps } from '@mui/material/internal/SwitchBase';
25
-
26
- import { iconsSVG } from '../components/Svgs';
27
-
28
- export type ColorVariant = 'inherit' | 'primary' | 'secondary' | 'success' | 'error' | 'info' | 'warning';
29
-
30
- export type DisabledVariant = 'true' | 'false';
31
-
32
- export type TextFieldColorVariant = 'primary' | 'secondary' | 'error' | 'info' | 'success' | 'warning';
33
-
34
- export type CheckBoxColorVariant = 'primary' | 'secondary' | 'error' | 'info' | 'success' | 'warning' | 'default';
35
-
36
- export type SizeVariant = 'small' | 'medium' | 'large';
37
- export type ButtonVariant = 'text' | 'outlined' | 'contained';
38
- export type DropVariant = 'menu' | 'selectedMenu';
39
- export type TagVariant = 'outlined' | 'contained';
40
- export type TabsVariant = 'standard' | 'scrollable' | 'fullWidth';
41
- export type DatePickVariant = 'responsive' | 'desktop' | 'mobile';
42
- export type ProgressVariant = 'determinate' | 'indeterminate' | 'buffer' | 'query';
43
-
44
- export type MuiButtonBaseProps = Omit<MuiButtonProps, 'sx' | 'color' | 'size' | 'variant'>;
45
-
46
- export type MuiIconButtonBaseProps = Omit<MuiIconButtonProps, 'sx' | 'color' | 'size' | 'variant'>;
47
-
48
- export type TextFieldValue = string | number;
49
- export type TextFieldVariant = 'standard' | 'outlined' | 'filled';
50
- export type TextFieldSizeVariant = 'small' | 'medium';
51
- export type DirectionVariant = 'vertical' | 'horizontal';
52
- export type PaperVariant = 'elevation' | 'outlined';
53
- export type PositionVariant = 'left' | 'right' | 'alternate' | 'alternate-reverse';
54
-
55
- export type MuiTextFieldBaseProps = Omit<
56
- MuiTextFieldProps,
57
- | 'onChange'
58
- | 'onBlur'
59
- | 'onFocus'
60
- | 'defaultValue'
61
- | 'size'
62
- | 'value'
63
- | 'id'
64
- | 'fullWidth'
65
- | 'helperText'
66
- | 'type'
67
- | 'InputProps'
68
- | 'InputLabelProps'
69
- | 'autoComplete'
70
- | 'label'
71
- | 'helperText'
72
- | 'InputLabelProps'
73
- | 'margin'
74
- | 'maxRows'
75
- | 'minRows'
76
- | 'multiline'
77
- | 'name'
78
- | 'placeholder'
79
- | 'rows'
80
- | 'select'
81
- | 'SelectProps'
82
- | 'sx'
83
- | 'autoFocus'
84
- | 'error'
85
- | 'classes'
86
- | 'children'
87
- | 'color'
88
- | 'variant'
89
- >;
90
-
91
- // eslint-disable-next-line @typescript-eslint/no-empty-interface
92
- export interface CheckboxPropsSizeOverrides {}
93
-
94
- // eslint-disable-next-line @typescript-eslint/no-empty-interface
95
- export interface CheckboxPropsColorOverrides {}
96
-
97
- export type MuiCheckBoxBaseProps = Omit<MuiCheckBoxProps, 'sx'>;
98
- export type MuiModalBaseProps = Omit<ModalProps, 'sx'>;
99
- export type MuiCardBaseProps = Omit<MuiCardProps, 'sx'>;
100
- export type MuiDropDownBaseProps = Omit<MuiDropDownProps, 'sx' | 'variant'>;
101
- export type MuiTagBaseProps = Omit<MuiChipProps, 'sx' | 'color'>;
102
- export type MuiRangerSliderBaseProps = Omit<MuiSliderProps, 'sx' | 'color'>;
103
- export type MuiProgressBarBaseProps = Omit<MuiLinearProgressProps, 'sx' | 'ref'>;
104
- export type MuiTabsBaseProps = Omit<MuiTabsProps, 'sx' | 'children' | 'onChange' | 'variant' | 'value'>;
105
- export type MuiAccordionBaseProps = Omit<MuiAccordionProps, 'sx' | 'children' | 'defaultExpanded' | 'onChange'>;
106
- export type MuiSelectBaseProps = Omit<MuiSelectProps, 'sx' | 'value' | 'onClose' | 'onOpen' | 'input' | 'label'>;
107
-
108
- export type MuiPaperBaseProps = Omit<MuiPaperProps, 'sx'>;
109
-
110
- export type MuiDatePickerBaseProps = Omit<MuiTextFieldProps, 'sx'>;
111
-
112
- export type MuiDataGridBaseProps = Omit<MuiTableProps, 'sx'>;
113
-
114
- export type MuiAvatarBaseProps = Omit<MuiAvatarProps, 'sx' | 'src' | 'children' | 'variant' | 'sizes'>;
115
-
116
- export type MuiTimeLineBaseProps = Omit<MuiTimeLineProps, 'sx' | 'position' | 'children' | 'ref'>;
117
-
118
- export type MuiBadgeBaseProps = Omit<
119
- MuiBadgeProps,
120
- 'sx' | 'color' | 'children' | 'invisible' | 'variant' | 'className' | 'badgeContent'
121
- >;
122
-
123
- export type IconScale = 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | '2xlarge' | '3xlarge';
124
-
125
- export type IconColors =
126
- | 'inherit'
127
- | 'primary'
128
- | 'secondary'
129
- | 'error'
130
- | 'info'
131
- | 'success'
132
- | 'warning'
133
- | 'white'
134
- | 'black';
135
-
136
- export const scaleSize: Record<IconScale, number> = {
137
- xsmall: 14,
138
- small: 20,
139
- medium: 24,
140
- large: 28,
141
- xlarge: 32,
142
- '2xlarge': 36,
143
- '3xlarge': 40,
144
- };
145
-
146
- export type SVGIconProps = {
147
- icon: React.ReactNode;
148
- } & SvgIconProps;
149
-
150
- export type IconType = keyof typeof iconsSVG;
151
- export type IconKey = keyof typeof iconsSVG;
152
-
153
- export type MuiRadioBaseProps = Omit<
154
- MuiSwitchBaseProps,
155
- 'checkedIcon' | 'color' | 'icon' | 'type' | 'checked' | 'size'
156
- >;
157
-
158
- export type OptionsRadios = {
159
- label: string | React.ReactNode;
160
- value: string;
161
- size?: TextFieldSizeVariant;
162
- };
163
-
164
- export type OnAction = {
165
- label: string;
166
- action: React.ReactEventHandler<{}>;
167
- color?: ColorVariant;
168
- size?: SizeVariant;
169
- variant?: ButtonVariant;
170
- disabled?: boolean;
171
- };
172
-
173
- export type DataAccordion = {
174
- label: string;
175
- id: string;
176
- children: NonNullable<React.ReactNode>;
177
- };
178
-
179
- export type DataTabs = {
180
- label: string;
181
- id: string;
182
- children: NonNullable<React.ReactNode>;
183
- tabPanel?: {
184
- props?: React.HTMLAttributes<HTMLDivElement>
185
- };
186
- };
187
-
188
- export type DataSelect = {
189
- label: string;
190
- value: string | number;
191
- };
192
-
193
- export type DataTimeLine = {
194
- id?: string;
195
- title: string;
196
- data: string;
197
- by: string;
198
- };
199
-
200
- export type RenderProps<E extends HTMLElement = HTMLElement> = {
201
- focusRef?: React.MutableRefObject<E | null>;
202
- id?: string;
203
- };
204
-
205
- export type StyledProgressBarProps = {
206
- colorCustom?: string;
207
- };
1
+ import {
2
+ AvatarProps as MuiAvatarProps,
3
+ ButtonProps as MuiButtonProps,
4
+ BadgeProps as MuiBadgeProps,
5
+ IconButtonProps as MuiIconButtonProps,
6
+ TextFieldProps as MuiTextFieldProps,
7
+ CheckboxProps as MuiCheckBoxProps,
8
+ MenuProps as MuiDropDownProps,
9
+ ChipProps as MuiChipProps,
10
+ LinearProgressProps as MuiLinearProgressProps,
11
+ SliderProps as MuiSliderProps,
12
+ AccordionProps as MuiAccordionProps,
13
+ TabsProps as MuiTabsProps,
14
+ SelectProps as MuiSelectProps,
15
+ PaperProps as MuiPaperProps,
16
+ SvgIconProps,
17
+ ModalProps,
18
+ CardProps as MuiCardProps,
19
+ TableProps as MuiTableProps,
20
+ } from '@mui/material';
21
+
22
+ import { TimelineProps as MuiTimeLineProps } from '@mui/lab';
23
+
24
+ import { SwitchBaseProps as MuiSwitchBaseProps } from '@mui/material/internal/SwitchBase';
25
+
26
+ import { iconsSVG } from '../components/Svgs';
27
+
28
+ export type ColorVariant = 'inherit' | 'primary' | 'secondary' | 'success' | 'error' | 'info' | 'warning';
29
+
30
+ export type DisabledVariant = 'true' | 'false';
31
+
32
+ export type TextFieldColorVariant = 'primary' | 'secondary' | 'error' | 'info' | 'success' | 'warning';
33
+
34
+ export type CheckBoxColorVariant = 'primary' | 'secondary' | 'error' | 'info' | 'success' | 'warning' | 'default';
35
+
36
+ export type SizeVariant = 'small' | 'medium' | 'large';
37
+ export type ButtonVariant = 'text' | 'outlined' | 'contained';
38
+ export type DropVariant = 'menu' | 'selectedMenu';
39
+ export type TagVariant = 'outlined' | 'contained';
40
+ export type TabsVariant = 'standard' | 'scrollable' | 'fullWidth';
41
+ export type DatePickVariant = 'responsive' | 'desktop' | 'mobile';
42
+ export type ProgressVariant = 'determinate' | 'indeterminate' | 'buffer' | 'query';
43
+
44
+ export type MuiButtonBaseProps = Omit<MuiButtonProps, 'sx' | 'color' | 'size' | 'variant'>;
45
+
46
+ export type MuiIconButtonBaseProps = Omit<MuiIconButtonProps, 'sx' | 'color' | 'size' | 'variant'>;
47
+
48
+ export type TextFieldValue = string | number;
49
+ export type TextFieldVariant = 'standard' | 'outlined' | 'filled';
50
+ export type TextFieldSizeVariant = 'small' | 'medium';
51
+ export type DirectionVariant = 'vertical' | 'horizontal';
52
+ export type PaperVariant = 'elevation' | 'outlined';
53
+ export type PositionVariant = 'left' | 'right' | 'alternate' | 'alternate-reverse';
54
+
55
+ export type MuiTextFieldBaseProps = Omit<
56
+ MuiTextFieldProps,
57
+ | 'onChange'
58
+ | 'onBlur'
59
+ | 'onFocus'
60
+ | 'defaultValue'
61
+ | 'size'
62
+ | 'value'
63
+ | 'id'
64
+ | 'fullWidth'
65
+ | 'helperText'
66
+ | 'type'
67
+ | 'InputProps'
68
+ | 'InputLabelProps'
69
+ | 'autoComplete'
70
+ | 'label'
71
+ | 'helperText'
72
+ | 'InputLabelProps'
73
+ | 'margin'
74
+ | 'maxRows'
75
+ | 'minRows'
76
+ | 'multiline'
77
+ | 'name'
78
+ | 'placeholder'
79
+ | 'rows'
80
+ | 'select'
81
+ | 'SelectProps'
82
+ | 'sx'
83
+ | 'autoFocus'
84
+ | 'error'
85
+ | 'classes'
86
+ | 'children'
87
+ | 'color'
88
+ | 'variant'
89
+ >;
90
+
91
+ // eslint-disable-next-line @typescript-eslint/no-empty-interface
92
+ export interface CheckboxPropsSizeOverrides {}
93
+
94
+ // eslint-disable-next-line @typescript-eslint/no-empty-interface
95
+ export interface CheckboxPropsColorOverrides {}
96
+
97
+ export type MuiCheckBoxBaseProps = Omit<MuiCheckBoxProps, 'sx'>;
98
+ export type MuiModalBaseProps = Omit<ModalProps, 'sx'>;
99
+ export type MuiCardBaseProps = Omit<MuiCardProps, 'sx'>;
100
+ export type MuiDropDownBaseProps = Omit<MuiDropDownProps, 'sx' | 'variant'>;
101
+ export type MuiTagBaseProps = Omit<MuiChipProps, 'sx' | 'color'>;
102
+ export type MuiRangerSliderBaseProps = Omit<MuiSliderProps, 'sx' | 'color'>;
103
+ export type MuiProgressBarBaseProps = Omit<MuiLinearProgressProps, 'sx' | 'ref'>;
104
+ export type MuiTabsBaseProps = Omit<MuiTabsProps, 'sx' | 'children' | 'onChange' | 'variant' | 'value'>;
105
+ export type MuiAccordionBaseProps = Omit<MuiAccordionProps, 'sx' | 'children' | 'defaultExpanded' | 'onChange'>;
106
+ export type MuiSelectBaseProps = Omit<MuiSelectProps, 'sx' | 'value' | 'onClose' | 'onOpen' | 'input' | 'label'>;
107
+
108
+ export type MuiPaperBaseProps = Omit<MuiPaperProps, 'sx'>;
109
+
110
+ export type MuiDatePickerBaseProps = Omit<MuiTextFieldProps, 'sx'>;
111
+
112
+ export type MuiDataGridBaseProps = Omit<MuiTableProps, 'sx'>;
113
+
114
+ export type MuiAvatarBaseProps = Omit<MuiAvatarProps, 'sx' | 'src' | 'children' | 'variant' | 'sizes'>;
115
+
116
+ export type MuiTimeLineBaseProps = Omit<MuiTimeLineProps, 'sx' | 'position' | 'children' | 'ref'>;
117
+
118
+ export type MuiBadgeBaseProps = Omit<
119
+ MuiBadgeProps,
120
+ 'sx' | 'color' | 'children' | 'invisible' | 'variant' | 'className' | 'badgeContent'
121
+ >;
122
+
123
+ export type IconScale = 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' | '2xlarge' | '3xlarge';
124
+
125
+ export type IconColors =
126
+ | 'inherit'
127
+ | 'primary'
128
+ | 'secondary'
129
+ | 'error'
130
+ | 'info'
131
+ | 'success'
132
+ | 'warning'
133
+ | 'white'
134
+ | 'black';
135
+
136
+ export const scaleSize: Record<IconScale, number> = {
137
+ xsmall: 14,
138
+ small: 20,
139
+ medium: 24,
140
+ large: 28,
141
+ xlarge: 32,
142
+ '2xlarge': 36,
143
+ '3xlarge': 40,
144
+ };
145
+
146
+ export type SVGIconProps = {
147
+ icon: React.ReactNode;
148
+ } & SvgIconProps;
149
+
150
+ export type IconType = keyof typeof iconsSVG;
151
+ export type IconKey = keyof typeof iconsSVG;
152
+
153
+ export type MuiRadioBaseProps = Omit<
154
+ MuiSwitchBaseProps,
155
+ 'checkedIcon' | 'color' | 'icon' | 'type' | 'checked' | 'size'
156
+ >;
157
+
158
+ export type OptionsRadios = {
159
+ label: string | React.ReactNode;
160
+ value: string;
161
+ size?: TextFieldSizeVariant;
162
+ };
163
+
164
+ export type OnAction = {
165
+ label: string;
166
+ action: React.ReactEventHandler<{}>;
167
+ color?: ColorVariant;
168
+ size?: SizeVariant;
169
+ variant?: ButtonVariant;
170
+ disabled?: boolean;
171
+ };
172
+
173
+ export type DataAccordion = {
174
+ label: string;
175
+ id: string;
176
+ children: NonNullable<React.ReactNode>;
177
+ };
178
+
179
+ export type DataTabs = {
180
+ label: string;
181
+ id: string;
182
+ children: NonNullable<React.ReactNode>;
183
+ tabPanel?: {
184
+ props?: React.HTMLAttributes<HTMLDivElement>
185
+ };
186
+ };
187
+
188
+ export type DataSelect = {
189
+ label: string;
190
+ value: string | number;
191
+ };
192
+
193
+ export type DataTimeLine = {
194
+ id?: string;
195
+ title: string;
196
+ data: string;
197
+ by: string;
198
+ };
199
+
200
+ export type RenderProps<E extends HTMLElement = HTMLElement> = {
201
+ focusRef?: React.MutableRefObject<E | null>;
202
+ id?: string;
203
+ };
204
+
205
+ export type StyledProgressBarProps = {
206
+ colorCustom?: string;
207
+ };
@@ -1,25 +1,25 @@
1
- import { css } from 'styled-components';
2
-
3
- type Breakpoint = {
4
- cssProp: string;
5
- cssPropUnits: string;
6
- values: { [key: number]: number }[];
7
- mediaQueryType: 'max-width' | 'min-width' | 'max-height' | 'min-height';
8
- };
9
-
10
- export const breakpoints = (breakpoints: Breakpoint) => {
11
- const { cssProp, cssPropUnits, values, mediaQueryType } = breakpoints;
12
-
13
- const breakpointProps = values.reduce((mediaQueries, value) => {
14
- const [screenBreakpoint, cssPropBreakpoint] = [Object.keys(value)[0], Object.values(value)[0]];
15
- return (mediaQueries += `
16
- @media screen and (${mediaQueryType}: ${screenBreakpoint}px) {
17
- ${cssProp}: ${cssPropBreakpoint}${cssPropUnits};
18
- }
19
- `);
20
- }, '');
21
-
22
- return css`
23
- ${breakpointProps}
24
- `;
25
- };
1
+ import { css } from 'styled-components';
2
+
3
+ type Breakpoint = {
4
+ cssProp: string;
5
+ cssPropUnits: string;
6
+ values: { [key: number]: number }[];
7
+ mediaQueryType: 'max-width' | 'min-width' | 'max-height' | 'min-height';
8
+ };
9
+
10
+ export const breakpoints = (breakpoints: Breakpoint) => {
11
+ const { cssProp, cssPropUnits, values, mediaQueryType } = breakpoints;
12
+
13
+ const breakpointProps = values.reduce((mediaQueries, value) => {
14
+ const [screenBreakpoint, cssPropBreakpoint] = [Object.keys(value)[0], Object.values(value)[0]];
15
+ return (mediaQueries += `
16
+ @media screen and (${mediaQueryType}: ${screenBreakpoint}px) {
17
+ ${cssProp}: ${cssPropBreakpoint}${cssPropUnits};
18
+ }
19
+ `);
20
+ }, '');
21
+
22
+ return css`
23
+ ${breakpointProps}
24
+ `;
25
+ };
package/vite.config.ts CHANGED
@@ -1,15 +1,15 @@
1
- import { defineConfig } from 'vite'
2
- import react from '@vitejs/plugin-react'
3
-
4
- // https://vitejs.dev/config/
5
- export default defineConfig({
6
- base: './',
7
- plugins: [react()],
8
- css: {
9
- preprocessorOptions: {
10
- scss: {
11
- additionalData: `@import "@/styles/global.scss";`
12
- },
13
- },
14
- },
15
- })
1
+ import { defineConfig } from 'vite'
2
+ import react from '@vitejs/plugin-react'
3
+
4
+ // https://vitejs.dev/config/
5
+ export default defineConfig({
6
+ base: './',
7
+ plugins: [react()],
8
+ css: {
9
+ preprocessorOptions: {
10
+ scss: {
11
+ additionalData: `@import "@/styles/global.scss";`
12
+ },
13
+ },
14
+ },
15
+ })