norma-library 0.4.2 → 0.4.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 (220) hide show
  1. package/.babelrc.json +18 -0
  2. package/buildcache/front-end +1 -0
  3. package/dist/esm/components/Accordion.d.ts +3 -0
  4. package/dist/esm/components/Accordion.js +24 -0
  5. package/dist/esm/components/Accordion.js.map +1 -0
  6. package/dist/esm/components/Button.d.ts +3 -0
  7. package/dist/esm/components/Button.js +22 -0
  8. package/dist/esm/components/Button.js.map +1 -0
  9. package/dist/esm/components/Card.d.ts +7 -0
  10. package/dist/esm/components/Card.js +31 -0
  11. package/dist/esm/components/Card.js.map +1 -0
  12. package/dist/esm/components/CheckBox.d.ts +3 -0
  13. package/dist/esm/components/CheckBox.js +13 -0
  14. package/dist/esm/components/CheckBox.js.map +1 -0
  15. package/dist/esm/components/DropDown.d.ts +3 -0
  16. package/dist/esm/components/DropDown.js +17 -0
  17. package/dist/esm/components/DropDown.js.map +1 -0
  18. package/dist/esm/components/IconButton.d.ts +3 -0
  19. package/dist/esm/components/IconButton.js +31 -0
  20. package/dist/esm/components/IconButton.js.map +1 -0
  21. package/dist/esm/components/Icons.d.ts +7 -0
  22. package/dist/esm/components/Icons.js +49 -0
  23. package/dist/esm/components/Icons.js.map +1 -0
  24. package/dist/esm/components/Modal.d.ts +4 -0
  25. package/dist/esm/components/Modal.js +32 -0
  26. package/dist/esm/components/Modal.js.map +1 -0
  27. package/dist/esm/components/Paper.d.ts +3 -0
  28. package/dist/esm/components/Paper.js +14 -0
  29. package/dist/esm/components/Paper.js.map +1 -0
  30. package/dist/esm/components/ProgressBar.d.ts +6 -0
  31. package/dist/esm/components/ProgressBar.js +31 -0
  32. package/dist/esm/components/ProgressBar.js.map +1 -0
  33. package/dist/esm/components/RadioGroup.d.ts +3 -0
  34. package/dist/esm/components/RadioGroup.js +18 -0
  35. package/dist/esm/components/RadioGroup.js.map +1 -0
  36. package/dist/esm/components/RangerSlider.d.ts +3 -0
  37. package/dist/esm/components/RangerSlider.js +64 -0
  38. package/dist/esm/components/RangerSlider.js.map +1 -0
  39. package/dist/esm/components/Select.d.ts +3 -0
  40. package/dist/esm/components/Select.js +45 -0
  41. package/dist/esm/components/Select.js.map +1 -0
  42. package/dist/esm/components/Svgs.d.ts +29 -0
  43. package/dist/esm/components/Svgs.js +102 -0
  44. package/dist/esm/components/Svgs.js.map +1 -0
  45. package/dist/esm/components/Tabs.d.ts +3 -0
  46. package/dist/esm/components/Tabs.js +78 -0
  47. package/dist/esm/components/Tabs.js.map +1 -0
  48. package/dist/esm/components/Tag.d.ts +3 -0
  49. package/dist/esm/components/Tag.js +27 -0
  50. package/dist/esm/components/Tag.js.map +1 -0
  51. package/dist/esm/components/TextField.d.ts +3 -0
  52. package/dist/esm/components/TextField.js +18 -0
  53. package/dist/esm/components/TextField.js.map +1 -0
  54. package/dist/esm/components/button/index.d.ts +3 -0
  55. package/dist/esm/components/button/index.js +22 -0
  56. package/dist/esm/components/button/index.js.map +1 -0
  57. package/dist/esm/components/checkbox/index.d.ts +3 -0
  58. package/dist/esm/components/checkbox/index.js +13 -0
  59. package/dist/esm/components/checkbox/index.js.map +1 -0
  60. package/dist/esm/components/icons/index.d.ts +7 -0
  61. package/dist/esm/components/icons/index.js +49 -0
  62. package/dist/esm/components/icons/index.js.map +1 -0
  63. package/dist/esm/components/icons/svgs.d.ts +29 -0
  64. package/dist/esm/components/icons/svgs.js +102 -0
  65. package/dist/esm/components/icons/svgs.js.map +1 -0
  66. package/dist/esm/components/index.d.ts +16 -0
  67. package/dist/esm/components/index.js +17 -0
  68. package/dist/esm/components/index.js.map +1 -0
  69. package/dist/esm/components/textfield/index.d.ts +3 -0
  70. package/dist/esm/components/textfield/index.js +18 -0
  71. package/dist/esm/components/textfield/index.js.map +1 -0
  72. package/dist/esm/helpers/alignments.d.ts +2 -0
  73. package/dist/esm/helpers/alignments.js +14 -0
  74. package/dist/esm/helpers/alignments.js.map +1 -0
  75. package/dist/esm/helpers/borders.d.ts +2 -0
  76. package/dist/esm/helpers/borders.js +18 -0
  77. package/dist/esm/helpers/borders.js.map +1 -0
  78. package/dist/esm/helpers/colors.d.ts +172 -0
  79. package/dist/esm/helpers/colors.js +156 -0
  80. package/dist/esm/helpers/colors.js.map +1 -0
  81. package/dist/esm/helpers/index.d.ts +5 -0
  82. package/dist/esm/helpers/index.js +6 -0
  83. package/dist/esm/helpers/index.js.map +1 -0
  84. package/dist/esm/helpers/radios.d.ts +2 -0
  85. package/dist/esm/helpers/radios.js +24 -0
  86. package/dist/esm/helpers/radios.js.map +1 -0
  87. package/dist/esm/helpers/sizes.d.ts +11 -0
  88. package/dist/esm/helpers/sizes.js +67 -0
  89. package/dist/esm/helpers/sizes.js.map +1 -0
  90. package/dist/esm/index.d.ts +17 -0
  91. package/dist/esm/index.js +18 -0
  92. package/dist/esm/index.js.map +1 -0
  93. package/dist/esm/interfaces/Accordion.d.ts +12 -0
  94. package/dist/esm/interfaces/Accordion.js +2 -0
  95. package/dist/esm/interfaces/Accordion.js.map +1 -0
  96. package/dist/esm/interfaces/Button.d.ts +14 -0
  97. package/dist/esm/interfaces/Button.js +2 -0
  98. package/dist/esm/interfaces/Button.js.map +1 -0
  99. package/dist/esm/interfaces/Card.d.ts +11 -0
  100. package/dist/esm/interfaces/Card.js +2 -0
  101. package/dist/esm/interfaces/Card.js.map +1 -0
  102. package/dist/esm/interfaces/CheckBox.d.ts +19 -0
  103. package/dist/esm/interfaces/CheckBox.js +2 -0
  104. package/dist/esm/interfaces/CheckBox.js.map +1 -0
  105. package/dist/esm/interfaces/DropDown.d.ts +11 -0
  106. package/dist/esm/interfaces/DropDown.js +2 -0
  107. package/dist/esm/interfaces/DropDown.js.map +1 -0
  108. package/dist/esm/interfaces/Icon.d.ts +15 -0
  109. package/dist/esm/interfaces/Icon.js +2 -0
  110. package/dist/esm/interfaces/Icon.js.map +1 -0
  111. package/dist/esm/interfaces/IconButton.d.ts +14 -0
  112. package/dist/esm/interfaces/IconButton.js +2 -0
  113. package/dist/esm/interfaces/IconButton.js.map +1 -0
  114. package/dist/esm/interfaces/Icons.d.ts +15 -0
  115. package/dist/esm/interfaces/Icons.js +2 -0
  116. package/dist/esm/interfaces/Icons.js.map +1 -0
  117. package/dist/esm/interfaces/Modal.d.ts +15 -0
  118. package/dist/esm/interfaces/Modal.js +2 -0
  119. package/dist/esm/interfaces/Modal.js.map +1 -0
  120. package/dist/esm/interfaces/Paper.d.ts +12 -0
  121. package/dist/esm/interfaces/Paper.js +2 -0
  122. package/dist/esm/interfaces/Paper.js.map +1 -0
  123. package/dist/esm/interfaces/ProgressBar.d.ts +17 -0
  124. package/dist/esm/interfaces/ProgressBar.js +2 -0
  125. package/dist/esm/interfaces/ProgressBar.js.map +1 -0
  126. package/dist/esm/interfaces/RadioGroup.d.ts +15 -0
  127. package/dist/esm/interfaces/RadioGroup.js +2 -0
  128. package/dist/esm/interfaces/RadioGroup.js.map +1 -0
  129. package/dist/esm/interfaces/RangerSlider.d.ts +18 -0
  130. package/dist/esm/interfaces/RangerSlider.js +2 -0
  131. package/dist/esm/interfaces/RangerSlider.js.map +1 -0
  132. package/dist/esm/interfaces/Select.d.ts +17 -0
  133. package/dist/esm/interfaces/Select.js +2 -0
  134. package/dist/esm/interfaces/Select.js.map +1 -0
  135. package/dist/esm/interfaces/Tabs.d.ts +18 -0
  136. package/dist/esm/interfaces/Tabs.js +2 -0
  137. package/dist/esm/interfaces/Tabs.js.map +1 -0
  138. package/dist/esm/interfaces/Tag.d.ts +18 -0
  139. package/dist/esm/interfaces/Tag.js +2 -0
  140. package/dist/esm/interfaces/Tag.js.map +1 -0
  141. package/dist/esm/interfaces/TextField.d.ts +40 -0
  142. package/dist/esm/interfaces/TextField.js +2 -0
  143. package/dist/esm/interfaces/TextField.js.map +1 -0
  144. package/dist/esm/interfaces/index.d.ts +17 -0
  145. package/dist/esm/interfaces/index.js +18 -0
  146. package/dist/esm/interfaces/index.js.map +1 -0
  147. package/dist/esm/types/index.d.ts +78 -0
  148. package/dist/esm/types/index.js +10 -0
  149. package/dist/esm/types/index.js.map +1 -0
  150. package/dist/index.css +8363 -0
  151. package/norma-library.tar +0 -0
  152. package/package.json +75 -90
  153. package/postcss.config.js +6 -0
  154. package/src/components/Accordion.tsx +64 -0
  155. package/src/components/Button.tsx +38 -0
  156. package/src/components/Card.tsx +47 -0
  157. package/src/components/CheckBox.tsx +35 -0
  158. package/src/components/DropDown.tsx +38 -0
  159. package/src/components/IconButton.tsx +58 -0
  160. package/src/components/Icons.tsx +87 -0
  161. package/src/components/Modal.tsx +123 -0
  162. package/src/components/Paper.tsx +22 -0
  163. package/src/components/ProgressBar.tsx +62 -0
  164. package/src/components/RadioGroup.tsx +55 -0
  165. package/src/components/RangerSlider.tsx +81 -0
  166. package/src/components/Select.tsx +98 -0
  167. package/src/components/Svgs.tsx +522 -0
  168. package/src/components/Tabs.tsx +140 -0
  169. package/src/components/Tag.tsx +45 -0
  170. package/src/components/TextField.tsx +35 -0
  171. package/src/components/index.ts +16 -0
  172. package/src/helpers/alignments.ts +14 -0
  173. package/src/helpers/borders.ts +18 -0
  174. package/src/helpers/colors.ts +173 -0
  175. package/src/helpers/index.ts +5 -0
  176. package/src/helpers/radios.ts +24 -0
  177. package/src/helpers/sizes.ts +79 -0
  178. package/src/index.css +2 -0
  179. package/src/index.ts +36 -0
  180. package/src/interfaces/Accordion.ts +12 -0
  181. package/src/interfaces/Button.ts +27 -0
  182. package/src/interfaces/Card.ts +11 -0
  183. package/src/interfaces/CheckBox.ts +33 -0
  184. package/src/interfaces/DropDown.ts +14 -0
  185. package/src/interfaces/IconButton.ts +27 -0
  186. package/src/interfaces/Icons.ts +17 -0
  187. package/src/interfaces/Modal.ts +15 -0
  188. package/src/interfaces/Paper.ts +12 -0
  189. package/src/interfaces/ProgressBar.ts +25 -0
  190. package/src/interfaces/RadioGroup.ts +28 -0
  191. package/src/interfaces/RangerSlider.ts +32 -0
  192. package/src/interfaces/Select.ts +17 -0
  193. package/src/interfaces/Tabs.ts +24 -0
  194. package/src/interfaces/Tag.ts +17 -0
  195. package/src/interfaces/TextField.ts +63 -0
  196. package/src/interfaces/index.ts +17 -0
  197. package/src/stories/Accordion.stories.tsx +65 -0
  198. package/src/stories/Button.stories.tsx +99 -0
  199. package/src/stories/Card.stories.tsx +55 -0
  200. package/src/stories/CheckBox.stories.tsx +94 -0
  201. package/src/stories/Colors.stories.mdx +127 -0
  202. package/src/stories/DropDown.stories.tsx +57 -0
  203. package/src/stories/IconButton.stories.tsx +114 -0
  204. package/src/stories/Icons.stories.mdx +27 -0
  205. package/src/stories/Modal.stories.tsx +190 -0
  206. package/src/stories/Paper.stories.tsx +53 -0
  207. package/src/stories/ProgressBar.stories.tsx +139 -0
  208. package/src/stories/RadioGroup.stories.tsx +94 -0
  209. package/src/stories/RangerSlider.stories.tsx +68 -0
  210. package/src/stories/Select.stories.tsx +128 -0
  211. package/src/stories/Tabs.stories.tsx +62 -0
  212. package/src/stories/Tag.stories.tsx +76 -0
  213. package/src/stories/TextField.stories.tsx +445 -0
  214. package/src/styles/custom.css +5 -0
  215. package/src/styles/globals.css +21 -0
  216. package/src/types/index.ts +220 -0
  217. package/tailwind.config.js +58 -0
  218. package/tsconfig.json +32 -0
  219. package/README.md +0 -160
  220. package/dist/index.js +0 -8
@@ -0,0 +1,22 @@
1
+ import React, { useMemo } from "react";
2
+ import { Paper as MuiPaper, ThemeProvider, useMediaQuery } from "@mui/material";
3
+ import { PaperBaseProps } from "../interfaces";
4
+ import { themes } from "../helpers";
5
+ import { styled } from "@mui/material/styles";
6
+
7
+ const PaperStyled = styled(MuiPaper)({});
8
+
9
+ export const Paper = ({ children, ...props }: PaperBaseProps & {}) => {
10
+ const prefersDarkMode = useMediaQuery("(prefers-color-scheme: dark)");
11
+
12
+ const theme = useMemo(
13
+ () => (prefersDarkMode ? themes.light : themes.dark),
14
+ [prefersDarkMode]
15
+ );
16
+
17
+ return (
18
+ <ThemeProvider theme={theme}>
19
+ <PaperStyled {...props}>{children}</PaperStyled>
20
+ </ThemeProvider>
21
+ );
22
+ };
@@ -0,0 +1,62 @@
1
+ import React, { useMemo } from "react";
2
+ import {
3
+ LinearProgress as MuiProgressBar,
4
+ linearProgressClasses,
5
+ ThemeProvider,
6
+ useMediaQuery,
7
+ Typography,
8
+ } from "@mui/material";
9
+ import { ProgressBarBaseProps } from "../interfaces";
10
+ import { themes } from "../helpers";
11
+ import { styled } from "@mui/material/styles";
12
+
13
+ const ProgressBarStyled = styled(MuiProgressBar)({
14
+ width: "100%",
15
+ height: "10px",
16
+ borderRadius: "10px",
17
+ position: "relative",
18
+ backgroundColor: `&.${linearProgressClasses.determinate} {
19
+ background-color: #e0e0e0,
20
+ }`,
21
+ });
22
+
23
+ export const ProgressBarLabelStyled = styled(Typography)`
24
+ display: flex;
25
+ justify-content: space-between;
26
+ align-items: center;
27
+ margin-bottom: 8px;
28
+ position: relative;
29
+ text-align: left;
30
+ font: normal normal normal 16px/20px Source Sans Pro;
31
+ `;
32
+
33
+ export const ProgressBar = ({
34
+ value = 0,
35
+ label,
36
+ variant = "determinate",
37
+ total,
38
+ ...props
39
+ }: ProgressBarBaseProps) => {
40
+ const prefersDarkMode = useMediaQuery("(prefers-color-scheme: dark)");
41
+ const percentage = value && total ? (value / total) * 100 : 0;
42
+ const theme = useMemo(
43
+ () => (prefersDarkMode ? themes.light : themes.dark),
44
+ [prefersDarkMode]
45
+ );
46
+
47
+ return (
48
+ <ThemeProvider theme={theme}>
49
+ <div style={{ minWidth: "100px" }}>
50
+ {label && (
51
+ <ProgressBarLabelStyled>
52
+ {label}
53
+ <span style={{ right: 0 }}>
54
+ {total} ({percentage.toFixed(2)}%)
55
+ </span>
56
+ </ProgressBarLabelStyled>
57
+ )}
58
+ <ProgressBarStyled value={value} variant={variant} {...props} />
59
+ </div>
60
+ </ThemeProvider>
61
+ );
62
+ };
@@ -0,0 +1,55 @@
1
+ import React, { useMemo } from "react";
2
+ import {
3
+ FormControl,
4
+ FormControlLabel,
5
+ FormLabel,
6
+ Radio as MuiRadio,
7
+ RadioGroup as MuiRadioGroup,
8
+ ThemeProvider,
9
+ useMediaQuery,
10
+ } from "@mui/material";
11
+
12
+ import { themes } from "../helpers";
13
+ import { styled } from "@mui/material/styles";
14
+ import { RadioBaseProps } from "../interfaces/RadioGroup";
15
+ import { TextFieldSizeVariant } from "../types";
16
+
17
+ const RadioStyled = styled(MuiRadio)({});
18
+ const sizes: TextFieldSizeVariant[] = ["small", "medium"];
19
+
20
+ export const RadioGroup = ({ ...props }: RadioBaseProps) => {
21
+ const prefersDarkMode = useMediaQuery("(prefers-color-scheme: dark)");
22
+ const theme = useMemo(
23
+ () => (prefersDarkMode ? themes.light : themes.dark),
24
+ [prefersDarkMode]
25
+ );
26
+
27
+ return (
28
+ <ThemeProvider theme={theme}>
29
+ <FormControl>
30
+ <FormLabel id={props.id}>{props.label}</FormLabel>
31
+ <MuiRadioGroup
32
+ aria-labelledby={props.id}
33
+ defaultValue={props.checked}
34
+ name="radio-buttons-group"
35
+ row={props.direction === "horizontal" ? true : false}
36
+ >
37
+ {props.options &&
38
+ props.options.map((item, key) => (
39
+ <FormControlLabel
40
+ value={item.value}
41
+ control={
42
+ <RadioStyled
43
+ color={props.color}
44
+ size={item.size ? item.size : sizes[1]}
45
+ />
46
+ }
47
+ label={item.label}
48
+ key={key}
49
+ />
50
+ ))}
51
+ </MuiRadioGroup>
52
+ </FormControl>
53
+ </ThemeProvider>
54
+ );
55
+ };
@@ -0,0 +1,81 @@
1
+ import React, { useMemo } from "react";
2
+ import {
3
+ Slider as MuiSlider,
4
+ ThemeProvider,
5
+ useMediaQuery,
6
+ } from "@mui/material";
7
+ import { palette, themes } from "../helpers";
8
+ import { styled } from "@mui/material/styles";
9
+ import { ColorVariant } from "@/types";
10
+ import { RangerSliderBaseProps } from "@/interfaces/RangerSlider";
11
+
12
+ const colorMap: Record<ColorVariant, string> = {
13
+ inherit: palette.inherit,
14
+ primary: palette.primary,
15
+ secondary: palette.secondary,
16
+ error: palette.error,
17
+ warning: palette.warning,
18
+ info: palette.info,
19
+ success: palette.success,
20
+ };
21
+
22
+ const RangerSliderStyled = styled(MuiSlider)(() => ({
23
+ height: 8,
24
+ "& .MuiSlider-track": {
25
+ border: "none",
26
+ },
27
+ "& .MuiSlider-thumb": {
28
+ height: 18,
29
+ width: 18,
30
+ backgroundColor: "#FFF",
31
+ border: `2px solid ${colorMap["primary"]}`,
32
+ "&:focus, &:hover, &.Mui-active, &.Mui-focusVisible": {
33
+ boxShadow: "inherit",
34
+ },
35
+ "&:before": {
36
+ width: "8px",
37
+ height: "8px",
38
+ position: "absolute",
39
+ display: "block",
40
+ background: colorMap["primary"],
41
+ },
42
+ },
43
+ "& .MuiSlider-valueLabel": {
44
+ fontSize: 12,
45
+ fontWeight: "normal",
46
+ top: 40,
47
+ position: "absolute",
48
+ backgroundColor: "unset",
49
+ color: colorMap["primary"],
50
+ "&:before": {
51
+ display: "none",
52
+ },
53
+ "& *": {
54
+ background: "transparent",
55
+ color: "#000",
56
+ },
57
+ },
58
+ "& .MuiSlider-rail": {
59
+ color: "#F0F2F8 ",
60
+ opacity: 1,
61
+ height: 10,
62
+ },
63
+ }));
64
+
65
+ export const RangerSlider = ({
66
+ defaultValue = 50,
67
+ color = "primary",
68
+ ...props
69
+ }: RangerSliderBaseProps) => {
70
+ const prefersDarkMode = useMediaQuery("(prefers-color-scheme: dark)");
71
+ const theme = useMemo(
72
+ () => (prefersDarkMode ? themes.light : themes.dark),
73
+ [prefersDarkMode]
74
+ );
75
+
76
+ return (
77
+ <ThemeProvider theme={theme}>
78
+ <RangerSliderStyled aria-label="Default" color={color} {...props} />
79
+ </ThemeProvider>
80
+ );
81
+ };
@@ -0,0 +1,98 @@
1
+ import React, { useMemo } from "react";
2
+ import {
3
+ FormControl,
4
+ InputLabel,
5
+ ListItemText,
6
+ MenuItem,
7
+ Select as MuiSelect,
8
+ OutlinedInput,
9
+ ThemeProvider,
10
+ useMediaQuery,
11
+ } from "@mui/material";
12
+ import { SelectBaseProps } from "../interfaces";
13
+ import { themes } from "../helpers";
14
+ import { styled } from "@mui/material/styles";
15
+ import { CheckBox } from "./CheckBox";
16
+
17
+ const ITEM_HEIGHT = 48;
18
+ const ITEM_PADDING_TOP = 8;
19
+ const MenuProps = {
20
+ PaperProps: {
21
+ style: {
22
+ maxHeight: ITEM_HEIGHT * 4.5 + ITEM_PADDING_TOP,
23
+ width: 250,
24
+ },
25
+ },
26
+ };
27
+
28
+ const SelectStyled = styled(MuiSelect)(({ multiple, variant }) => ({
29
+ "& .MuiOutlinedInput-notchedOutline": {
30
+ border: multiple === true ? "none" : "1px solid #666666 ",
31
+ borderRadius: multiple === true ? 0 : 4,
32
+ borderBottom: "1px solid #666666",
33
+ },
34
+ "& .MuiFormLabel-root": {
35
+ backgroundColor: variant === "standard" ? "#fff" : "inherit",
36
+ padding: variant === "standard" ? "0 5px" : 0,
37
+ },
38
+ }));
39
+
40
+ export const Select = ({
41
+ label,
42
+ onChange,
43
+ data = [],
44
+ value = "",
45
+ multiple = false,
46
+ ...props
47
+ }: SelectBaseProps) => {
48
+ const prefersDarkMode = useMediaQuery("(prefers-color-scheme: dark)");
49
+ const theme = useMemo(
50
+ () => (prefersDarkMode ? themes.light : themes.dark),
51
+ [prefersDarkMode]
52
+ );
53
+
54
+ return (
55
+ <ThemeProvider theme={theme}>
56
+ <FormControl fullWidth>
57
+ <InputLabel id={props.id}>{label}</InputLabel>
58
+
59
+ {multiple ? (
60
+ <SelectStyled
61
+ labelId={props.id}
62
+ id="demo-simple-select"
63
+ value={value}
64
+ MenuProps={MenuProps}
65
+ input={<OutlinedInput label="Tag" />}
66
+ renderValue={(selected: any) => selected.join(", ")}
67
+ onChange={onChange}
68
+ multiple
69
+ {...props}
70
+ >
71
+ {data &&
72
+ data.map((item, key) => (
73
+ <MenuItem value={item.value} key={key}>
74
+ <CheckBox checked={value.includes(String(item.value))} />
75
+ <ListItemText primary={String(item.label)} />
76
+ </MenuItem>
77
+ ))}
78
+ </SelectStyled>
79
+ ) : (
80
+ <SelectStyled
81
+ labelId={props.id}
82
+ id="demo-simple-select"
83
+ value={value}
84
+ onChange={onChange}
85
+ {...props}
86
+ >
87
+ {data &&
88
+ data.map((item, key) => (
89
+ <MenuItem value={item.value} key={key}>
90
+ <ListItemText primary={String(item.label)} />
91
+ </MenuItem>
92
+ ))}
93
+ </SelectStyled>
94
+ )}
95
+ </FormControl>
96
+ </ThemeProvider>
97
+ );
98
+ };