@campxdev/react-blueprint 0.1.14 → 0.1.16

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 (63) hide show
  1. package/.storybook/preview.tsx +3 -3
  2. package/package.json +15 -14
  3. package/src/components/DataDisplay/DataTable/DataTable.stories.tsx +34 -17
  4. package/src/components/DataDisplay/DataTable/DataTable.tsx +32 -7
  5. package/src/components/DataDisplay/DataTable/TablePagination.tsx +60 -6
  6. package/src/components/DataDisplay/styles.tsx +2 -0
  7. package/src/components/DropDownMenu/DropDownButton.tsx +3 -25
  8. package/src/components/DropDownMenu/DropDownMenu.stories.tsx +34 -31
  9. package/src/components/DropDownMenu/DropDownMenu.tsx +4 -4
  10. package/src/components/DropDownMenu/DropdownMenuItem.tsx +25 -0
  11. package/src/components/DropDownMenu/styles.tsx +1 -7
  12. package/src/components/Icons/IconComponents/AppsIcon.tsx +36 -0
  13. package/src/components/Icons/IconComponents/CareerIcon.tsx +24 -0
  14. package/src/components/Icons/IconComponents/ClogWheelIcon.tsx +38 -0
  15. package/src/components/Icons/IconComponents/DashBoardIcon.tsx +65 -0
  16. package/src/components/Icons/IconComponents/ExamResultIcon.tsx +26 -0
  17. package/src/components/Icons/IconComponents/HelpIcon.tsx +57 -0
  18. package/src/components/Icons/IconComponents/HomeIcon.tsx +52 -0
  19. package/src/components/Icons/IconComponents/LeftIcon.tsx +72 -0
  20. package/src/components/Icons/IconComponents/LogoutIcon.tsx +66 -0
  21. package/src/components/Icons/IconComponents/NotificationIcon.tsx +29 -0
  22. package/src/components/Icons/IconComponents/RightIcon.tsx +65 -0
  23. package/src/components/Icons/IconComponents/TicketsIcon.tsx +74 -0
  24. package/src/components/Icons/Icons.stories.tsx +21 -0
  25. package/src/components/Icons/Icons.tsx +14 -0
  26. package/src/components/Icons/export.ts +26 -0
  27. package/src/components/Input/Button/Button.tsx +10 -8
  28. package/src/components/Input/LabelWrapper/LabelWrapper.tsx +35 -0
  29. package/src/components/Input/SingleSelect/SingleSelect.stories.tsx +85 -36
  30. package/src/components/Input/SingleSelect/SingleSelect.tsx +17 -69
  31. package/src/components/Input/TextField/TextField.tsx +9 -5
  32. package/src/components/Input/components/FetchingOptionsLoader.tsx +16 -4
  33. package/src/components/Input/styles.tsx +9 -1
  34. package/src/components/Layout/Header/AppHeader.stories.tsx +5 -5
  35. package/src/components/Layout/Header/AppsMenu.tsx +2 -2
  36. package/src/components/Layout/Header/HeaderActions/CogWheelMenu.tsx +4 -4
  37. package/src/components/Layout/Header/HeaderActions/HeaderActions.tsx +2 -2
  38. package/src/components/Layout/Header/HeaderActions/UserBox.tsx +33 -18
  39. package/src/components/Layout/LayoutWrapper/LayoutWrapper.stories.tsx +55 -37
  40. package/src/components/Layout/LayoutWrapper/LayoutWrapper.tsx +49 -68
  41. package/src/components/Layout/LayoutWrapper/styles.tsx +52 -0
  42. package/src/components/Layout/PageContent/PageContent.stories.tsx +26 -0
  43. package/src/components/Layout/PageContent/PageContent.tsx +32 -0
  44. package/src/components/Layout/SideNavigation/SideNavigation.stories.tsx +57 -0
  45. package/src/components/Layout/SideNavigation/SideNavigation.tsx +29 -23
  46. package/src/components/Layout/SideNavigation/styles/styles.tsx +7 -59
  47. package/src/components/Layout/Spinner/Spinner.css +1 -1
  48. package/src/components/Layout/Spinner/Spinner.stories.tsx +1 -1
  49. package/src/components/Layout/Spinner/Spinner.tsx +1 -1
  50. package/src/components/Modals/DialogButton.tsx +1 -1
  51. package/src/components/TabsContainer/TabsContainer.stories.tsx +48 -0
  52. package/src/components/TabsContainer/TabsContainer.tsx +58 -0
  53. package/src/components/export.ts +3 -0
  54. package/src/store/activeStore.ts +1 -0
  55. package/src/themes/commonTheme.ts +60 -19
  56. package/src/themes/darkTheme.ts +2 -3
  57. package/src/themes/lightTheme.ts +2 -3
  58. package/src/utils/campxAxios.ts +1 -1
  59. package/tsconfig.json +1 -3
  60. package/types/theme.d.ts +38 -0
  61. package/src/assets/images/icons.tsx +0 -427
  62. package/src/components/DropDownMenu/MenuItemButton.tsx +0 -24
  63. package/src/components/Input/Label/Label.tsx +0 -11
@@ -3,14 +3,6 @@ import { TypographyOptions } from "@mui/material/styles/createTypography";
3
3
  import { DarkColorTokens, LightColorTokens } from "./colorTokens";
4
4
  import { customCssBaseline } from "./customCssBaseline";
5
5
 
6
- declare module "@mui/material/Typography" {
7
- interface TypographyPropsVariantOverrides {
8
- label1: true;
9
- label2: true;
10
- subtitle3: true;
11
- }
12
- }
13
-
14
6
  export enum Theme {
15
7
  LIGHT = "light",
16
8
  DARK = "dark",
@@ -73,13 +65,6 @@ export const getCommonTheme = (mode: Theme) => {
73
65
  list: {
74
66
  minWidth: "240px",
75
67
  padding: 0,
76
- "& li": {
77
- borderBottom: "1212121A",
78
- minHeight: "55px",
79
- // ":hover": {
80
- // backgroundColor: "rgba(0, 0, 0, 0.025)",
81
- // },
82
- },
83
68
  "& > :last-child": {
84
69
  borderBottom: "none",
85
70
  "& li": {
@@ -91,18 +76,40 @@ export const getCommonTheme = (mode: Theme) => {
91
76
  borderRadius: "5px",
92
77
  border: `1px solid ${ColorTokens.secondary.main}`,
93
78
  marginTop: "10px",
94
- boxShadow: "0px 5px 15px #0000001A",
79
+ boxShadow: `0px 5px 15px ${ColorTokens.secondary.main}`,
95
80
  "&::-webkit-scrollbar": {
96
81
  width: "0.5em",
97
82
  height: "0.5em",
98
83
  },
99
84
  "&::-webkit-scrollbar-thumb": {
100
- backgroundColor: "rgba(0, 0, 0, 0.15)",
85
+ backgroundColor: ColorTokens.background.paper,
101
86
  borderRadius: "3px",
102
87
  },
103
88
  },
104
89
  },
105
90
  },
91
+ MuiMenuItem: {
92
+ styleOverrides: {
93
+ root: {
94
+ minHeight: "50px !important",
95
+ padding: "10px 16px",
96
+ },
97
+ },
98
+ },
99
+ MuiPagination: {
100
+ styleOverrides: {},
101
+ },
102
+ MuiPaginationItem: {
103
+ styleOverrides: {
104
+ root: {
105
+ background: ColorTokens.background.default,
106
+ "&.Mui-selected": {
107
+ background: ColorTokens.background.paper,
108
+ border: `1px solid ${ColorTokens.highlight.main}`,
109
+ },
110
+ },
111
+ },
112
+ },
106
113
  MuiButton: {
107
114
  defaultProps: {},
108
115
  styleOverrides: {
@@ -110,6 +117,7 @@ export const getCommonTheme = (mode: Theme) => {
110
117
  textTransform: "none",
111
118
  padding: "5px 30px ",
112
119
  maxHeight: "40px ",
120
+ minWidth: "250px",
113
121
  borderRadius: "5px ",
114
122
  boxShadow: "none ",
115
123
  fontSize: "14px ",
@@ -208,6 +216,9 @@ export const getCommonTheme = (mode: Theme) => {
208
216
  maxWidth: "400px",
209
217
  },
210
218
  },
219
+ paper: {
220
+ borderRadius: "10px",
221
+ },
211
222
  },
212
223
  },
213
224
  MuiOutlinedInput: {
@@ -235,11 +246,41 @@ export const getCommonTheme = (mode: Theme) => {
235
246
  underline: "none",
236
247
  },
237
248
  },
238
- MuiFormLabel: {
249
+ MuiTabs: {
250
+ styleOverrides: {
251
+ root: {
252
+ "& .MuiTabs-flexContainer": {
253
+ borderBottom: `1px solid ${ColorTokens.grey.main}`,
254
+ },
255
+ },
256
+ indicator: {
257
+ display: "flex",
258
+ justifyContent: "center",
259
+ backgroundColor: "transparent",
260
+ height: "3px",
261
+ "& .MuiTabs-indicatorSpan": {
262
+ borderRadius: "30px",
263
+ width: "60%",
264
+ backgroundColor: ColorTokens.highlight.main,
265
+ },
266
+ },
267
+ },
268
+ },
269
+ MuiTab: {
270
+ defaultProps: {
271
+ disableRipple: true,
272
+ },
239
273
  styleOverrides: {
240
274
  root: {
275
+ color: ColorTokens.text.secondary,
241
276
  fontSize: "14px",
242
- color: "#959595",
277
+ fontWeight: "600",
278
+ textTransform: "initial",
279
+ minHeight: "50px",
280
+ paddingBottom: "0px",
281
+ "&.Mui-selected": {
282
+ color: ColorTokens.text.primary,
283
+ },
243
284
  },
244
285
  },
245
286
  },
@@ -9,9 +9,8 @@ export const darkTheme = createTheme({
9
9
  secondary: DarkColorTokens.secondary,
10
10
  background: DarkColorTokens.background,
11
11
  text: DarkColorTokens.text,
12
- // highlight: {
13
- // main: "#D4483E", // Highlight color for dark mode
14
- // },
12
+ highlight: DarkColorTokens.highlight,
13
+ grey: DarkColorTokens.grey,
15
14
  // defaultProfileIcon: {
16
15
  // main: "#293640", // Default profile images and icons color for dark mode
17
16
  // },
@@ -9,9 +9,8 @@ export const lightTheme = createTheme({
9
9
  secondary: LightColorTokens.secondary,
10
10
  background: LightColorTokens.background,
11
11
  text: LightColorTokens.text,
12
- // highlight: {
13
- // main: "#D4483E", // Highlight color
14
- // },
12
+ highlight: LightColorTokens.highlight,
13
+ grey: LightColorTokens.grey,
15
14
  // defaultProfileIcon: {
16
15
  // main: "#BDD6E8", // Default profile images and icons color
17
16
  // },
@@ -14,7 +14,7 @@ export const campxAxios = axios.create({
14
14
  headers: {
15
15
  "x-tenant-id": tenantCode,
16
16
  ...(!isProduction
17
- ? { campx_session_key: sessionKey || "6653ed32f34cbc245f22e7c8" }
17
+ ? { campx_session_key: sessionKey || "6658507d9912823dcae621cf" }
18
18
  : {}),
19
19
  "x-institution-id": institutionCode,
20
20
  },
package/tsconfig.json CHANGED
@@ -21,7 +21,5 @@
21
21
  "types": ["node"],
22
22
  "jsx": "react-jsx"
23
23
  },
24
- "include": [
25
- "src"
26
- ]
24
+ "include": ["src", "./types" ]
27
25
  }
@@ -0,0 +1,38 @@
1
+ import "@mui/material/styles";
2
+
3
+ declare module "@mui/material/styles" {
4
+ interface Theme {
5
+ palette: {
6
+ primary: {
7
+ dark: string;
8
+ main: string;
9
+ light: string;
10
+ };
11
+ secondary: {
12
+ main: string;
13
+ light: string;
14
+ dark: string;
15
+ };
16
+ text: {
17
+ primary: string;
18
+ secondary: string;
19
+ };
20
+ background: {
21
+ paper: string;
22
+ default: string;
23
+ };
24
+ highlight: {
25
+ main: string;
26
+ };
27
+ };
28
+ }
29
+ export function createTheme(options?: CustomThemeOptions): CustomTheme;
30
+ }
31
+
32
+ declare module "@mui/material/Typography" {
33
+ interface TypographyPropsVariantOverrides {
34
+ label1: true;
35
+ label2: true;
36
+ subtitle3: true;
37
+ }
38
+ }
@@ -1,427 +0,0 @@
1
- import { useTheme } from "@mui/material";
2
-
3
- export const AppsIcon = () => {
4
- return (
5
- <svg
6
- id="apps"
7
- xmlns="http://www.w3.org/2000/svg"
8
- width="24"
9
- height="24"
10
- viewBox="0 0 24 24"
11
- >
12
- <path
13
- id="Path_15109"
14
- data-name="Path 15109"
15
- d="M7,0H4A4,4,0,0,0,0,4V7a4,4,0,0,0,4,4H7a4,4,0,0,0,4-4V4A4,4,0,0,0,7,0ZM9,7A2,2,0,0,1,7,9H4A2,2,0,0,1,2,7V4A2,2,0,0,1,4,2H7A2,2,0,0,1,9,4Z"
16
- fill="#d4483e"
17
- />
18
- <path
19
- id="Path_15110"
20
- data-name="Path 15110"
21
- d="M20,0H17a4,4,0,0,0-4,4V7a4,4,0,0,0,4,4h3a4,4,0,0,0,4-4V4A4,4,0,0,0,20,0Zm2,7a2,2,0,0,1-2,2H17a2,2,0,0,1-2-2V4a2,2,0,0,1,2-2h3a2,2,0,0,1,2,2Z"
22
- fill="#f8d759"
23
- />
24
- <path
25
- id="Path_15111"
26
- data-name="Path 15111"
27
- d="M7,13H4a4,4,0,0,0-4,4v3a4,4,0,0,0,4,4H7a4,4,0,0,0,4-4V17A4,4,0,0,0,7,13Zm2,7a2,2,0,0,1-2,2H4a2,2,0,0,1-2-2V17a2,2,0,0,1,2-2H7a2,2,0,0,1,2,2Z"
28
- fill="#88b053"
29
- />
30
- <path
31
- id="Path_15112"
32
- data-name="Path 15112"
33
- d="M20,13H17a4,4,0,0,0-4,4v3a4,4,0,0,0,4,4h3a4,4,0,0,0,4-4V17A4,4,0,0,0,20,13Zm2,7a2,2,0,0,1-2,2H17a2,2,0,0,1-2-2V17a2,2,0,0,1,2-2h3a2,2,0,0,1,2,2Z"
34
- fill="#4baabe"
35
- />
36
- </svg>
37
- );
38
- };
39
-
40
- export const HelpIcon = () => {
41
- const theme = useTheme();
42
- const color = theme.palette.text.primary;
43
- return (
44
- <svg
45
- id="message-question"
46
- xmlns="http://www.w3.org/2000/svg"
47
- width="20"
48
- height="20"
49
- viewBox="0 0 20 20"
50
- >
51
- <g id="message-question-2" data-name="message-question">
52
- <path
53
- id="Vector"
54
- d="M12.5,16.667H4.1A3.877,3.877,0,0,1,0,12.593V4.074A3.893,3.893,0,0,1,4.167,0H12.5a3.893,3.893,0,0,1,4.167,4.074v8.52A3.893,3.893,0,0,1,12.5,16.667Z"
55
- transform="translate(1.667 2.025)"
56
- fill="none"
57
- stroke={color}
58
- stroke-linecap="round"
59
- stroke-linejoin="round"
60
- stroke-width="1.5"
61
- />
62
- <path
63
- id="Vector-2"
64
- data-name="Vector"
65
- d="M2.245,6.086V5.8A2.119,2.119,0,0,1,3.382,4,2.073,2.073,0,0,0,4.491,2.245,2.245,2.245,0,0,0,0,2.245"
66
- transform="translate(7.755 5.594)"
67
- fill="none"
68
- stroke={color}
69
- stroke-linecap="round"
70
- stroke-linejoin="round"
71
- stroke-width="1.5"
72
- />
73
- <path
74
- id="Vector-3"
75
- data-name="Vector"
76
- d="M0,0H20V20H0Z"
77
- fill="none"
78
- opacity="0"
79
- />
80
- <path
81
- id="Vector-4"
82
- data-name="Vector"
83
- d="M.5.5H.508"
84
- transform="translate(9.499 14.414)"
85
- fill="none"
86
- stroke={color}
87
- stroke-linecap="round"
88
- stroke-linejoin="round"
89
- stroke-width="1.5"
90
- />
91
- </g>
92
- </svg>
93
- );
94
- };
95
-
96
- export const NotificationIcon = () => {
97
- return (
98
- <>
99
- <svg
100
- xmlns="http://www.w3.org/2000/svg"
101
- width="18.125"
102
- height="20"
103
- viewBox="0 0 18.125 20"
104
- >
105
- <path
106
- id="bell_10_"
107
- data-name="bell (10)"
108
- d="M18.958,11.384l-1.583-5.7a7.767,7.767,0,0,0-15.064.395L1.085,11.595a4.166,4.166,0,0,0,4.067,5.07H6.08a4.166,4.166,0,0,0,8.166,0h.7a4.166,4.166,0,0,0,4.015-5.281Zm-8.795,6.948a2.5,2.5,0,0,1-2.346-1.666H12.51A2.5,2.5,0,0,1,10.163,18.332Zm6.771-4.32A2.481,2.481,0,0,1,14.944,15H5.152a2.5,2.5,0,0,1-2.44-3.042L3.937,6.444a6.1,6.1,0,0,1,11.832-.31l1.583,5.7a2.481,2.481,0,0,1-.418,2.181Z"
109
- transform="translate(-0.986 -0.002)"
110
- fill="#121212"
111
- />
112
- </svg>
113
- </>
114
- );
115
- };
116
-
117
- export const ExamResultIcon = () => {
118
- const theme = useTheme();
119
- const color = theme.palette.text.primary;
120
- return (
121
- <>
122
- <svg
123
- xmlns="http://www.w3.org/2000/svg"
124
- width="14.3"
125
- height="20.3"
126
- viewBox="0 0 15.3 20.3"
127
- >
128
- <path
129
- id="mobile"
130
- d="M13.833,0H7.167A4.172,4.172,0,0,0,3,4.167V15.833A4.172,4.172,0,0,0,7.167,20h6.667A4.172,4.172,0,0,0,18,15.833V4.167A4.172,4.172,0,0,0,13.833,0Zm2.5,15.833a2.5,2.5,0,0,1-2.5,2.5h-2.5V17.5a.833.833,0,1,0-1.667,0v.833h-2.5a2.5,2.5,0,0,1-2.5-2.5V4.167a2.5,2.5,0,0,1,2.5-2.5h6.667a2.5,2.5,0,0,1,2.5,2.5Zm-2.5-2.5a.833.833,0,0,1-.833.833H8A.833.833,0,1,1,8,12.5h5A.833.833,0,0,1,13.833,13.333Zm-5-2.5A.833.833,0,0,0,9.667,10V9.167h1.667V10A.833.833,0,0,0,13,10V6.667a2.5,2.5,0,1,0-5,0V10A.833.833,0,0,0,8.833,10.833Zm1.667-5a.833.833,0,0,1,.833.833V7.5H9.667V6.667A.833.833,0,0,1,10.5,5.833Z"
131
- transform="translate(-2.85 0.15)"
132
- stroke-width="0.3"
133
- fill={color}
134
- />
135
- </svg>
136
- </>
137
- );
138
- };
139
-
140
- export const CareerIcon = () => {
141
- const theme = useTheme();
142
- const color = theme.palette.text.primary;
143
- return (
144
- <svg
145
- xmlns="http://www.w3.org/2000/svg"
146
- width="18.3"
147
- height="20.3"
148
- viewBox="0 0 20.3 20.3"
149
- >
150
- <path
151
- id="briefcase"
152
- d="M15.833,3.333h-.917A4.174,4.174,0,0,0,10.833,0H9.167A4.174,4.174,0,0,0,5.083,3.333H4.167A4.172,4.172,0,0,0,0,7.5v8.333A4.172,4.172,0,0,0,4.167,20H15.833A4.172,4.172,0,0,0,20,15.833V7.5a4.172,4.172,0,0,0-4.167-4.167ZM9.167,1.667h1.667A2.5,2.5,0,0,1,13.18,3.333H6.82A2.5,2.5,0,0,1,9.167,1.667ZM4.167,5H15.833a2.5,2.5,0,0,1,2.5,2.5V10H1.667V7.5A2.5,2.5,0,0,1,4.167,5ZM15.833,18.333H4.167a2.5,2.5,0,0,1-2.5-2.5V11.667h7.5V12.5a.833.833,0,0,0,1.667,0v-.833h7.5v4.167A2.5,2.5,0,0,1,15.833,18.333Z"
153
- transform="translate(0.15 0.15)"
154
- fill={color}
155
- stroke-width="0.3"
156
- />
157
- </svg>
158
- );
159
- };
160
-
161
- export const ClogWheelIcon = () => {
162
- const theme = useTheme();
163
- const color = theme.palette.text.primary;
164
- return (
165
- <svg
166
- xmlns="http://www.w3.org/2000/svg"
167
- width="16.595"
168
- height="20"
169
- viewBox="0 0 17.995 20"
170
- >
171
- <g
172
- id="settings_11_"
173
- data-name="settings (11)"
174
- transform="translate(-1.203)"
175
- >
176
- <path
177
- id="Path_1375"
178
- data-name="Path 1375"
179
- d="M11.333,8a3.333,3.333,0,1,0,3.333,3.333A3.333,3.333,0,0,0,11.333,8Zm0,5A1.667,1.667,0,1,1,13,11.333,1.667,1.667,0,0,1,11.333,13Z"
180
- transform="translate(-1.133 -1.333)"
181
- fill={color}
182
- />
183
- <path
184
- id="Path_1376"
185
- data-name="Path 1376"
186
- d="M17.945,11.583l-.37-.213a7.583,7.583,0,0,0,0-2.742l.37-.213a2.5,2.5,0,1,0-2.5-4.333l-.371.214A7.481,7.481,0,0,0,12.7,2.927V2.5a2.5,2.5,0,1,0-5,0v.427A7.481,7.481,0,0,0,5.327,4.3l-.373-.216a2.5,2.5,0,1,0-2.5,4.333l.37.213a7.583,7.583,0,0,0,0,2.742l-.37.213a2.5,2.5,0,0,0,2.5,4.333l.371-.214A7.481,7.481,0,0,0,7.7,17.072V17.5a2.5,2.5,0,1,0,5,0v-.428A7.481,7.481,0,0,0,15.074,15.7l.373.215a2.5,2.5,0,1,0,2.5-4.333ZM15.822,8.437a5.873,5.873,0,0,1,0,3.125.833.833,0,0,0,.387.944l.9.522a.834.834,0,1,1-.833,1.444l-.9-.523a.833.833,0,0,0-1.012.138,5.82,5.82,0,0,1-2.7,1.563.833.833,0,0,0-.626.807V17.5a.833.833,0,0,1-1.667,0V16.457a.833.833,0,0,0-.626-.807,5.82,5.82,0,0,1-2.7-1.566.833.833,0,0,0-1.013-.138l-.9.523a.833.833,0,1,1-.833-1.443l.9-.522a.833.833,0,0,0,.387-.944,5.873,5.873,0,0,1,0-3.125.833.833,0,0,0-.388-.941l-.9-.522a.834.834,0,0,1,.833-1.444l.9.523a.833.833,0,0,0,1.012-.134,5.82,5.82,0,0,1,2.7-1.562.833.833,0,0,0,.626-.811V2.5a.833.833,0,1,1,1.667,0V3.543a.833.833,0,0,0,.626.808,5.82,5.82,0,0,1,2.7,1.566.833.833,0,0,0,1.012.137l.9-.522a.833.833,0,1,1,.833,1.443l-.9.522a.833.833,0,0,0-.386.941Z"
187
- transform="translate(0 0)"
188
- fill={color}
189
- />
190
- </g>
191
- </svg>
192
- );
193
- };
194
-
195
- export const RightIcon = () => (
196
- <svg
197
- xmlns="http://www.w3.org/2000/svg"
198
- id="vuesax_linear_logout"
199
- data-name="vuesax/linear/logout"
200
- width="24"
201
- height="24"
202
- viewBox="0 0 24 24"
203
- >
204
- <g id="logout">
205
- <g
206
- id="Group_5120"
207
- data-name="Group 5120"
208
- transform="translate(3.614 9.381)"
209
- >
210
- <path
211
- id="Vector"
212
- d="M0,5.363,2.682,2.682,0,0"
213
- transform="translate(8.045)"
214
- fill="none"
215
- stroke="#292d32"
216
- stroke-linecap="round"
217
- stroke-linejoin="round"
218
- stroke-width="1.5"
219
- />
220
- <path
221
- id="Vector-2"
222
- data-name="Vector"
223
- d="M0,0H10.653"
224
- transform="translate(0 2.682)"
225
- fill="none"
226
- stroke="#292d32"
227
- stroke-linecap="round"
228
- stroke-linejoin="round"
229
- stroke-width="1.5"
230
- />
231
- </g>
232
- <path
233
- id="Vector-3"
234
- data-name="Vector"
235
- d="M0,16.76A8.015,8.015,0,0,0,8.38,8.38,8.015,8.015,0,0,0,0,0"
236
- transform="translate(12.246 3.62)"
237
- fill="none"
238
- stroke="#292d32"
239
- stroke-linecap="round"
240
- stroke-linejoin="round"
241
- stroke-width="1.5"
242
- />
243
- <path
244
- id="Vector-4"
245
- data-name="Vector"
246
- d="M0,24H24V0H0Z"
247
- transform="translate(0 0)"
248
- fill="none"
249
- opacity="0"
250
- />
251
- </g>
252
- </svg>
253
- );
254
- export const LeftIcon = () => (
255
- <svg
256
- xmlns="http://www.w3.org/2000/svg"
257
- width="24"
258
- height="24"
259
- viewBox="0 0 24 24"
260
- >
261
- <g
262
- id="vuesax_linear_logout"
263
- data-name="vuesax/linear/logout"
264
- transform="translate(-364 -444)"
265
- >
266
- <g id="logout">
267
- <g
268
- id="Group_5120"
269
- data-name="Group 5120"
270
- transform="translate(373.659 453.381)"
271
- >
272
- <path
273
- id="Vector"
274
- d="M2.682,5.363,0,2.682,2.682,0"
275
- transform="translate(0)"
276
- fill="none"
277
- stroke="#292d32"
278
- stroke-linecap="round"
279
- stroke-linejoin="round"
280
- stroke-width="1.5"
281
- />
282
- <path
283
- id="Vector-2"
284
- data-name="Vector"
285
- d="M10.653,0H0"
286
- transform="translate(0.073 2.682)"
287
- fill="none"
288
- stroke="#292d32"
289
- stroke-linecap="round"
290
- stroke-linejoin="round"
291
- stroke-width="1.5"
292
- />
293
- </g>
294
- <path
295
- id="Vector-3"
296
- data-name="Vector"
297
- d="M8.38,16.76A8.015,8.015,0,0,1,0,8.38,8.015,8.015,0,0,1,8.38,0"
298
- transform="translate(367.374 447.62)"
299
- fill="none"
300
- stroke="#292d32"
301
- stroke-linecap="round"
302
- stroke-linejoin="round"
303
- stroke-width="1.5"
304
- />
305
- <path
306
- id="Vector-4"
307
- data-name="Vector"
308
- d="M0,0H24V24H0Z"
309
- transform="translate(388 468) rotate(180)"
310
- fill="none"
311
- opacity="0"
312
- />
313
- </g>
314
- </g>
315
- </svg>
316
- );
317
-
318
- export const DashBoardIcon = () => {
319
- const theme = useTheme();
320
- const color = theme.palette.text.primary;
321
- return (
322
- <svg
323
- xmlns="http://www.w3.org/2000/svg"
324
- width="16"
325
- height="16"
326
- viewBox="0 0 16 16"
327
- >
328
- <g
329
- id="vuesax_linear_chart-2"
330
- data-name="vuesax/linear/chart-2"
331
- transform="translate(-236 -188)"
332
- >
333
- <g id="chart-2" transform="translate(236 188)">
334
- <path
335
- id="Vector"
336
- d="M4.667,13.333h4c3.333,0,4.667-1.333,4.667-4.667v-4C13.333,1.333,12,0,8.667,0h-4C1.333,0,0,1.333,0,4.667v4C0,12,1.333,13.333,4.667,13.333Z"
337
- transform="translate(1.333 1.333)"
338
- fill="none"
339
- stroke={color}
340
- stroke-linecap="round"
341
- stroke-linejoin="round"
342
- stroke-width="1.2"
343
- />
344
- <path
345
- id="Vector-2"
346
- data-name="Vector"
347
- d="M1.333,8.667A1.337,1.337,0,0,0,2.667,7.333v-6A1.333,1.333,0,0,0,0,1.333v6A1.333,1.333,0,0,0,1.333,8.667Z"
348
- transform="translate(9 3.667)"
349
- fill="none"
350
- stroke={color}
351
- stroke-linecap="round"
352
- stroke-linejoin="round"
353
- stroke-width="1.2"
354
- />
355
- <path
356
- id="Vector-3"
357
- data-name="Vector"
358
- d="M1.333,5A1.337,1.337,0,0,0,2.667,3.667V1.333A1.333,1.333,0,0,0,0,1.333V3.667A1.333,1.333,0,0,0,1.333,5Z"
359
- transform="translate(4.333 7.333)"
360
- fill="none"
361
- stroke={color}
362
- stroke-linecap="round"
363
- stroke-linejoin="round"
364
- stroke-width="1.2"
365
- />
366
- <path
367
- id="Vector-4"
368
- data-name="Vector"
369
- d="M0,0H16V16H0Z"
370
- fill="none"
371
- opacity="0"
372
- />
373
- </g>
374
- </g>
375
- </svg>
376
- );
377
- };
378
-
379
- export const HomeIcon = () => {
380
- const theme = useTheme();
381
- const color = theme.palette.text.primary;
382
- return (
383
- <svg
384
- xmlns="http://www.w3.org/2000/svg"
385
- width="16"
386
- height="16"
387
- viewBox="0 0 16 16"
388
- >
389
- <g
390
- id="vuesax_linear_home-2"
391
- data-name="vuesax/linear/home-2"
392
- transform="translate(-620 -188)"
393
- >
394
- <g id="home-2" transform="translate(620 188)">
395
- <path
396
- id="Vector"
397
- d="M4.68.548l-3.593,2.8A3.172,3.172,0,0,0,0,5.562V10.5a2.817,2.817,0,0,0,2.807,2.813h7.72a2.815,2.815,0,0,0,2.807-2.807V5.655a3.149,3.149,0,0,0-1.2-2.3L8.013.468A2.991,2.991,0,0,0,4.68.548Z"
398
- transform="translate(1.333 1.345)"
399
- fill="none"
400
- stroke={color}
401
- stroke-linecap="round"
402
- stroke-linejoin="round"
403
- stroke-width="1.2"
404
- />
405
- <path
406
- id="Vector-2"
407
- data-name="Vector"
408
- d="M0,2V0"
409
- transform="translate(8 9.993)"
410
- fill="none"
411
- stroke={color}
412
- stroke-linecap="round"
413
- stroke-linejoin="round"
414
- stroke-width="1.2"
415
- />
416
- <path
417
- id="Vector-3"
418
- data-name="Vector"
419
- d="M0,0H16V16H0Z"
420
- fill="none"
421
- opacity="0"
422
- />
423
- </g>
424
- </g>
425
- </svg>
426
- );
427
- };
@@ -1,24 +0,0 @@
1
- import { ListItemIcon, Typography } from "@mui/material";
2
- import { ReactNode } from "react";
3
- import { StyledMenuItem } from "./styles";
4
-
5
- export type MenuItemButtonProps = {
6
- icon?: ReactNode;
7
- label: ReactNode;
8
- sx?: any;
9
- onClick: () => void;
10
- };
11
-
12
- export const MenuItemButton = ({
13
- icon,
14
- label,
15
- onClick,
16
- sx = {},
17
- }: MenuItemButtonProps) => {
18
- return (
19
- <StyledMenuItem sx={sx} onClick={onClick}>
20
- {icon && <ListItemIcon>{icon}</ListItemIcon>}
21
- <Typography variant="subtitle3">{label}</Typography>
22
- </StyledMenuItem>
23
- );
24
- };
@@ -1,11 +0,0 @@
1
- import { Typography } from "@mui/material";
2
-
3
- const Label = ({ label, required, name }: any) => {
4
- if (typeof label !== "string") return label;
5
- return (
6
- <Typography htmlFor={name} component="label" variant="label1">
7
- {label} {required && <span>{" *"}</span>}
8
- </Typography>
9
- );
10
- };
11
- export default Label;