@campxdev/shared 1.8.14 → 1.8.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 (267) hide show
  1. package/antd.customize.less +73 -0
  2. package/exports.ts +19 -0
  3. package/package.json +4 -20
  4. package/src/assets/fonts/avenir/Avenir-Book.ttf +0 -0
  5. package/src/assets/fonts/avenir/Avenir-Heavy.ttf +0 -0
  6. package/src/assets/fonts/avenir/Avenir-HeavyOblique.ttf +0 -0
  7. package/src/assets/fonts/avenir/Avenir-Medium.ttf +0 -0
  8. package/src/assets/fonts/avenir/Avenir-MediumOblique.ttf +0 -0
  9. package/src/assets/fonts/avenir/index.ts +13 -0
  10. package/src/assets/fonts/poppins/Poppins-Bold.ttf +0 -0
  11. package/src/assets/fonts/poppins/Poppins-Italic.ttf +0 -0
  12. package/src/assets/fonts/poppins/Poppins-Light.ttf +0 -0
  13. package/src/assets/fonts/poppins/Poppins-LightItalic.ttf +0 -0
  14. package/src/assets/fonts/poppins/Poppins-Medium.ttf +0 -0
  15. package/src/assets/fonts/poppins/Poppins-MediumItalic.ttf +0 -0
  16. package/src/assets/fonts/poppins/Poppins-Regular.ttf +0 -0
  17. package/src/assets/fonts/poppins/Poppins-SemiBold.ttf +0 -0
  18. package/src/assets/fonts/poppins/Poppins-SemiBoldItalic.ttf +0 -0
  19. package/src/assets/fonts/poppins/index.ts +18 -0
  20. package/src/assets/images/401.png +0 -0
  21. package/src/assets/images/403.png +0 -0
  22. package/src/assets/images/404.png +0 -0
  23. package/src/assets/images/404notfound.svg +1 -0
  24. package/src/assets/images/500.png +0 -0
  25. package/src/assets/images/avatar.png +0 -0
  26. package/src/assets/images/campx_logo__full_primary.png +0 -0
  27. package/src/assets/images/index.ts +17 -0
  28. package/src/assets/images/internalservererror.svg +1 -0
  29. package/src/assets/images/noInternet.svg +1 -0
  30. package/src/assets/images/nointernet.png +0 -0
  31. package/src/assets/images/notfound.png +0 -0
  32. package/src/assets/images/pagenotfound.svg +1 -0
  33. package/src/assets/images/permissiondenied.svg +1 -0
  34. package/src/assets/images/unauth.svg +92 -0
  35. package/src/components/ActionButton.tsx +20 -0
  36. package/src/components/Attachment.tsx +26 -0
  37. package/src/components/AutocompleteSearch/AutocompleteSearch.tsx +57 -0
  38. package/src/components/AutocompleteSearch/index.tsx +1 -0
  39. package/src/components/Breadcrumbs.tsx +72 -0
  40. package/src/components/Card.tsx +98 -0
  41. package/src/components/CardsGrid.tsx +28 -0
  42. package/src/components/ChangePassword.tsx +123 -0
  43. package/src/components/Chips.tsx +81 -0
  44. package/src/components/Detail.tsx +15 -0
  45. package/src/components/DetailsGrid.tsx +52 -0
  46. package/src/components/DividerHeading.tsx +41 -0
  47. package/src/components/DrawerWrapper/DialogWrapper.tsx +67 -0
  48. package/src/components/DrawerWrapper/DrawerTemplate.tsx +53 -0
  49. package/src/components/DrawerWrapper/DrawerWrapper.tsx +53 -0
  50. package/src/components/DropDownButton/AnchorElement.tsx +44 -0
  51. package/src/components/DropDownButton/DropDownButton.tsx +184 -0
  52. package/src/components/DropDownButton/DropdownMenuItem.tsx +110 -0
  53. package/src/components/DropDownButton/index.tsx +1 -0
  54. package/src/components/DropDownButton/styles.tsx +59 -0
  55. package/src/components/ErrorBoundary/ErrorBoundary.tsx +33 -0
  56. package/src/components/ErrorBoundary/ErrorFallback.tsx +241 -0
  57. package/src/components/ErrorBoundary/GlobalNetworkLoadingIndicator.tsx +13 -0
  58. package/src/components/ErrorBoundary/index.tsx +1 -0
  59. package/src/components/ErrorBox.tsx +42 -0
  60. package/src/components/ExcelToJsonInput/ExcelJsonUpload.tsx +50 -0
  61. package/src/components/ExcelToJsonInput/ExcelToJsonInput.tsx +57 -0
  62. package/src/components/ExcelToJsonInput/index.tsx +1 -0
  63. package/src/components/FilterComponents/FilterButton.tsx +56 -0
  64. package/src/components/FilterComponents/SearchBar.tsx +45 -0
  65. package/src/components/FloatingContainer.tsx +33 -0
  66. package/src/components/Form/Form.tsx +147 -0
  67. package/src/components/Form/RenderForm.tsx +189 -0
  68. package/src/components/FullScreenLoader.tsx +19 -0
  69. package/src/components/HookForm/AutoCompleteSearch.tsx +113 -0
  70. package/src/components/HookForm/DatePicker.tsx +40 -0
  71. package/src/components/HookForm/DateTimePicker.tsx +47 -0
  72. package/src/components/HookForm/FormLabel.tsx +14 -0
  73. package/src/components/HookForm/MultiCheckbox.tsx +69 -0
  74. package/src/components/HookForm/MultiSelect.tsx +53 -0
  75. package/src/components/HookForm/RadioGroup.tsx +47 -0
  76. package/src/components/HookForm/SingleCheckbox.tsx +34 -0
  77. package/src/components/HookForm/SingleSelect.tsx +46 -0
  78. package/src/components/HookForm/TextField.tsx +40 -0
  79. package/src/components/HookForm/TimePicker.tsx +40 -0
  80. package/src/components/HookForm/index.ts +23 -0
  81. package/src/components/IconButtons/IconButtons.tsx +137 -0
  82. package/src/components/IconButtons/Icons.tsx +268 -0
  83. package/src/components/IconButtons/assets/edit.svg +4 -0
  84. package/src/components/IconButtons/assets/eye.svg +6 -0
  85. package/src/components/IconButtons/assets/trash.svg +7 -0
  86. package/src/components/IconButtons/index.tsx +8 -0
  87. package/src/components/IconLabel.tsx +37 -0
  88. package/src/components/Image/Image.tsx +45 -0
  89. package/src/components/Image/broken-image.png +0 -0
  90. package/src/components/Image/index.tsx +1 -0
  91. package/src/components/ImageUpload.tsx +98 -0
  92. package/src/components/Input/AsyncSearchSelect/AsyncSearchSelect.tsx +216 -0
  93. package/src/components/Input/AsyncSearchSelect/index.tsx +1 -0
  94. package/src/components/Input/AsyncSearchSelect/styles.tsx +105 -0
  95. package/src/components/Input/AutoCompleteSearch.tsx +121 -0
  96. package/src/components/Input/DatePicker.tsx +87 -0
  97. package/src/components/Input/DateRangePicker.tsx +105 -0
  98. package/src/components/Input/DateTimePicker.tsx +84 -0
  99. package/src/components/Input/FormLabel.tsx +21 -0
  100. package/src/components/Input/MultiCheckbox.tsx +64 -0
  101. package/src/components/Input/MultiSelect.tsx +150 -0
  102. package/src/components/Input/RadioGroup.tsx +104 -0
  103. package/src/components/Input/SingleCheckbox.tsx +78 -0
  104. package/src/components/Input/SingleSelect.tsx +104 -0
  105. package/src/components/Input/TextField.tsx +46 -0
  106. package/src/components/Input/TimePicker.tsx +77 -0
  107. package/src/components/Input/index.ts +26 -0
  108. package/src/components/Input/types.ts +3 -0
  109. package/src/components/JsonPreview.tsx +7 -0
  110. package/src/components/LabelValue.tsx +21 -0
  111. package/src/components/Layout/ChangePassword.tsx +49 -0
  112. package/src/components/Layout/Header/AppHeader.tsx +112 -0
  113. package/src/components/Layout/Header/AppsMenu.tsx +105 -0
  114. package/src/components/Layout/Header/HeaderActions/CogWheelMenu.tsx +33 -0
  115. package/src/components/Layout/Header/HeaderActions/FreshDeskHelpButton.tsx +24 -0
  116. package/src/components/Layout/Header/HeaderActions/HeaderActions.tsx +18 -0
  117. package/src/components/Layout/Header/HeaderActions/UserBox.tsx +56 -0
  118. package/src/components/Layout/Header/Notification.tsx +13 -0
  119. package/src/components/Layout/Header/applications.ts +103 -0
  120. package/src/components/Layout/Header/assets/background.png +0 -0
  121. package/src/components/Layout/Header/assets/campx.png +0 -0
  122. package/src/components/Layout/Header/assets/campx_square_small.svg +9 -0
  123. package/src/components/Layout/Header/assets/commuteX.png +0 -0
  124. package/src/components/Layout/Header/assets/commutex.png +0 -0
  125. package/src/components/Layout/Header/assets/commutex.svg +14 -0
  126. package/src/components/Layout/Header/assets/commutexSmall.svg +11 -0
  127. package/src/components/Layout/Header/assets/contactBg.png +0 -0
  128. package/src/components/Layout/Header/assets/enroll.svg +14 -0
  129. package/src/components/Layout/Header/assets/enroll_logo.svg +9 -0
  130. package/src/components/Layout/Header/assets/enrollx.svg +14 -0
  131. package/src/components/Layout/Header/assets/entrollx.png +0 -0
  132. package/src/components/Layout/Header/assets/exams_small.svg +12 -0
  133. package/src/components/Layout/Header/assets/examsx.svg +14 -0
  134. package/src/components/Layout/Header/assets/examx.png +0 -0
  135. package/src/components/Layout/Header/assets/hostel_small.svg +13 -0
  136. package/src/components/Layout/Header/assets/hostelx.png +0 -0
  137. package/src/components/Layout/Header/assets/hostelx.svg +13 -0
  138. package/src/components/Layout/Header/assets/index.ts +35 -0
  139. package/src/components/Layout/Header/assets/libraryx.svg +12 -0
  140. package/src/components/Layout/Header/assets/libreryx.png +0 -0
  141. package/src/components/Layout/Header/assets/pay_small.svg +16 -0
  142. package/src/components/Layout/Header/assets/payx.png +0 -0
  143. package/src/components/Layout/Header/assets/payx.svg +19 -0
  144. package/src/components/Layout/Header/assets/people_small.svg +9 -0
  145. package/src/components/Layout/Header/assets/peoplex.svg +12 -0
  146. package/src/components/Layout/Header/assets/pepolex.png +0 -0
  147. package/src/components/Layout/Header/assets/squarex.svg +12 -0
  148. package/src/components/Layout/Header/icons.tsx +57 -0
  149. package/src/components/Layout/Header/index.tsx +1 -0
  150. package/src/components/Layout/Header/styles.tsx +133 -0
  151. package/src/components/Layout/Helmet.tsx +49 -0
  152. package/src/components/Layout/LayoutWrapper.tsx +28 -0
  153. package/src/components/Layout/SideMenuHeader.tsx +29 -0
  154. package/src/components/Layout/SideNav.tsx +168 -0
  155. package/src/components/Layout/Tickets/HelpWidget/HelpWidget.tsx +273 -0
  156. package/src/components/Layout/Tickets/HelpWidget/styles.tsx +94 -0
  157. package/src/components/Layout/Tickets/MyTickets.tsx +72 -0
  158. package/src/components/Layout/Tickets/TicketDetails.tsx +65 -0
  159. package/src/components/Layout/Tickets/TimeLine.tsx +64 -0
  160. package/src/components/Layout/Tickets/index.tsx +1 -0
  161. package/src/components/Layout/Tickets/services.ts +11 -0
  162. package/src/components/Layout/Tickets/styles.tsx +136 -0
  163. package/src/components/LinearProgress.tsx +19 -0
  164. package/src/components/ListItemButton.tsx +95 -0
  165. package/src/components/LoginForm.tsx +279 -0
  166. package/src/components/MediaRow/MediaRow.tsx +67 -0
  167. package/src/components/MediaRow/index.tsx +1 -0
  168. package/src/components/ModalButtons/DialogButton.tsx +126 -0
  169. package/src/components/ModalButtons/DrawerButton.tsx +115 -0
  170. package/src/components/ModalButtons/index.tsx +4 -0
  171. package/src/components/NoDataIllustration.tsx +32 -0
  172. package/src/components/PageContent.tsx +12 -0
  173. package/src/components/PageHeader.tsx +55 -0
  174. package/src/components/PageNotFound.tsx +26 -0
  175. package/src/components/PopupConfirm/ConfirmContextProvider.tsx +40 -0
  176. package/src/components/PopupConfirm/PopupConfirm.tsx +67 -0
  177. package/src/components/PopupConfirm/animation.gif +0 -0
  178. package/src/components/PopupConfirm/index.tsx +1 -0
  179. package/src/components/PopupConfirm/useConfirm.ts +47 -0
  180. package/src/components/ResetPassword.tsx +107 -0
  181. package/src/components/Row.tsx +24 -0
  182. package/src/components/Spinner.tsx +18 -0
  183. package/src/components/StepsHeader/StepsHeader.tsx +115 -0
  184. package/src/components/StepsHeader/index.tsx +1 -0
  185. package/src/components/StyledTableContainer.tsx +33 -0
  186. package/src/components/SwitchButton.tsx +41 -0
  187. package/src/components/Table.tsx +42 -0
  188. package/src/components/Tables/BasicTable/Table.tsx +198 -0
  189. package/src/components/Tables/BasicTable/TableFooter.tsx +86 -0
  190. package/src/components/Tables/BasicTable/index.tsx +1 -0
  191. package/src/components/Tables/ReactTable/BatchActionsHeader.tsx +58 -0
  192. package/src/components/Tables/ReactTable/ReactTable.tsx +295 -0
  193. package/src/components/Tables/ReactTable/RenderTableBody.tsx +49 -0
  194. package/src/components/Tables/ReactTable/index.tsx +1 -0
  195. package/src/components/Tables/ReactTable/react-table-config.d.ts +128 -0
  196. package/src/components/Tables/common/NoRecordsFound.tsx +27 -0
  197. package/src/components/Tables/common/TableStats.tsx +22 -0
  198. package/src/components/Tables/common/icons.tsx +50 -0
  199. package/src/components/Tables/common/no-data-illu.svg +1 -0
  200. package/src/components/Tables/common/styles.tsx +170 -0
  201. package/src/components/Tables/common/types.ts +57 -0
  202. package/src/components/Tabs/NavigationTabs.tsx +80 -0
  203. package/src/components/Tabs/Tabs.tsx +53 -0
  204. package/src/components/Tabs/TabsContainer.tsx +53 -0
  205. package/src/components/Tabs/index.tsx +1 -0
  206. package/src/components/Tabs/styles.tsx +55 -0
  207. package/src/components/ToastContainer/ToastContainer.tsx +57 -0
  208. package/src/components/ToastContainer/index.tsx +1 -0
  209. package/src/components/UploadButton/UploadButton.tsx +126 -0
  210. package/src/components/UploadButton/index.tsx +1 -0
  211. package/src/components/UploadButton/types.ts +19 -0
  212. package/src/components/UploadDocument.tsx +108 -0
  213. package/src/components/UploadFileDialog/AnimatedUploadFile.gif +0 -0
  214. package/src/components/UploadFileDialog/UploadFileDialog.tsx +238 -0
  215. package/src/components/UploadFileDialog/index.tsx +1 -0
  216. package/src/components/index.ts +106 -0
  217. package/src/config/axios.ts +73 -0
  218. package/src/config/axiosEvaluator.ts +53 -0
  219. package/src/config/axiosXTenant.ts +57 -0
  220. package/src/constants/UIConstants.ts +97 -0
  221. package/src/constants/formValidations.ts +6 -0
  222. package/src/constants/index.ts +5 -0
  223. package/src/constants/isDevelopment.ts +4 -0
  224. package/src/constants/permissions.ts +67 -0
  225. package/src/constants/validateMessages.ts +12 -0
  226. package/src/contexts/LoginFormProvider.tsx +44 -0
  227. package/src/contexts/Providers.tsx +50 -0
  228. package/src/contexts/PublicProviders.tsx +30 -0
  229. package/src/contexts/QueryClientProvider.tsx +22 -0
  230. package/src/hooks/index.ts +5 -0
  231. package/src/hooks/useAuth.ts +96 -0
  232. package/src/hooks/useExternalScript.ts +37 -0
  233. package/src/hooks/useFetch.ts +53 -0
  234. package/src/hooks/useFilters.ts +83 -0
  235. package/src/hooks/useRouter.ts +31 -0
  236. package/src/layouts/Components/DashBoardMenu.tsx +232 -0
  237. package/src/layouts/Components/icons/index.tsx +403 -0
  238. package/src/layouts/Components/styles.tsx +74 -0
  239. package/src/layouts/ComponentsLayout.tsx +3 -0
  240. package/src/permissions/PageWithPermission.tsx +18 -0
  241. package/src/permissions/PermissionDeniedPage.tsx +16 -0
  242. package/src/permissions/ValidateAccess.tsx +18 -0
  243. package/src/permissions/index.ts +2 -0
  244. package/src/react-app-env.d.ts +1 -0
  245. package/src/shared-state/AssetsStore.ts +15 -0
  246. package/src/shared-state/PermissionsStore.ts +392 -0
  247. package/src/shared-state/UserStore.ts +13 -0
  248. package/src/shared-state/index.ts +4 -0
  249. package/src/theme/App.less +3 -0
  250. package/src/theme/MuiThemeProvider.tsx +18 -0
  251. package/src/theme/customCssBaseline.ts +135 -0
  252. package/src/theme/index.css +28 -0
  253. package/src/theme/muiTheme.ts +597 -0
  254. package/src/theme/theme.d.ts +77 -0
  255. package/src/utils/adminAxios.ts +15 -0
  256. package/src/utils/alphabet.ts +23 -0
  257. package/src/utils/arrayPadEnd.ts +3 -0
  258. package/src/utils/formatCurrency.ts +9 -0
  259. package/src/utils/getUrlParams.ts +5 -0
  260. package/src/utils/index.ts +7 -0
  261. package/src/utils/logout.ts +25 -0
  262. package/src/utils/ordinalSuffixOf.ts +14 -0
  263. package/src/utils/romanize.ts +40 -0
  264. package/src/utils/withRouteWrapper.tsx +25 -0
  265. package/src/utils/withSuspense.tsx +6 -0
  266. package/styled-components.tsx +60 -0
  267. package/tsconfig.json +21 -0
@@ -0,0 +1,14 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="164.636" height="30" viewBox="0 0 164.636 30">
2
+ <defs>
3
+ <linearGradient id="linear-gradient" x1="0.5" x2="0.5" y2="1" gradientUnits="objectBoundingBox">
4
+ <stop offset="0" stop-color="#6a2886"/>
5
+ <stop offset="1" stop-color="#8234a4"/>
6
+ </linearGradient>
7
+ </defs>
8
+ <g id="Group_4626" data-name="Group 4626" transform="translate(-154.491 -25)">
9
+ <text id="COMMUTEX" transform="translate(186.127 47.5)" font-size="22" font-family="Nexa-XBold, Nexa" font-weight="700"><tspan x="0" y="0">COMMUTEX</tspan></text>
10
+ <g id="Group_4542" data-name="Group 4542" transform="translate(1.791 -224.981)">
11
+ <path id="Union_49" data-name="Union 49" d="M14.451,30l-3.59-4.941L7.271,30H.073L0,29.947,10.177,15.939H.007V14.064H10.226L3.657,5.031v0L0,0V0H7.312L10.9,4.941,14.492,0h7.2l.073.053L11.584,14.064H21.757v1.875H11.54l6.566,9.03v0L21.763,30v0Z" transform="translate(152.7 249.981)" fill="url(#linear-gradient)"/>
12
+ </g>
13
+ </g>
14
+ </svg>
@@ -0,0 +1,11 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="25.391" height="35" viewBox="0 0 25.391 35">
2
+ <defs>
3
+ <linearGradient id="linear-gradient" x1="0.5" x2="0.5" y2="1" gradientUnits="objectBoundingBox">
4
+ <stop offset="0" stop-color="#6a2886"/>
5
+ <stop offset="1" stop-color="#8234a4"/>
6
+ </linearGradient>
7
+ </defs>
8
+ <g id="Group_4867" data-name="Group 4867" transform="translate(-152.7 -249.981)">
9
+ <path id="Union_49" data-name="Union 49" d="M16.86,35l-4.188-5.765L8.483,35H.085L0,34.938,11.873,18.6H.008V16.408H11.931L4.267,5.87l0,0L0,0,0,0H8.531l4.188,5.764L16.907,0h8.4l.086.062L13.514,16.408H25.383V18.6H13.463L21.124,29.13l0,0L25.391,35l0,0Z" transform="translate(152.7 249.981)" fill="url(#linear-gradient)"/>
10
+ </g>
11
+ </svg>
@@ -0,0 +1,14 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="144.563" height="30" viewBox="0 0 144.563 30">
2
+ <defs>
3
+ <linearGradient id="linear-gradient" x1="0.5" x2="0.5" y2="1" gradientUnits="objectBoundingBox">
4
+ <stop offset="0" stop-color="#007ab1"/>
5
+ <stop offset="1" stop-color="#149ecd"/>
6
+ </linearGradient>
7
+ </defs>
8
+ <g id="Group_4627" data-name="Group 4627" transform="translate(-142.219 -25)">
9
+ <g id="Group_4626" data-name="Group 4626" transform="translate(-6.346)">
10
+ <text id="ENROLLX" transform="translate(186.127 47.5)" font-size="22" font-family="Nexa-XBold, Nexa" font-weight="700"><tspan x="0" y="0">ENROLLX</tspan></text>
11
+ </g>
12
+ <path id="Union_6" data-name="Union 6" d="M-1754-2151h0v0l3.636-5v0l7.262-10h7.161l.073.053-10.86,14.947Zm13.437-6.012,6.53-8.988h7.161l.073.053-6.491,8.935Zm13.691-8.988Zm0,0h-7.161l-6.54-9h7.272l6.5,8.948Zm-16.228,0-7.262-10v0l-3.636-5v0h7.273l10.86,14.947-.073.053Zm5.443-15h0ZM-1737.657-2181Zm-7.275,0h0v0h7.273l0,0h-7.275Zm-9.068,0h0Z" transform="translate(1896.219 2206)" fill="url(#linear-gradient)"/>
13
+ </g>
14
+ </svg>
@@ -0,0 +1,9 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="177.011" height="195.229" viewBox="0 0 177.011 195.229">
2
+ <defs>
3
+ <linearGradient id="linear-gradient" x1="0.5" x2="0.5" y2="1" gradientUnits="objectBoundingBox">
4
+ <stop offset="0" stop-color="#007ab1"/>
5
+ <stop offset="1" stop-color="#149ecd"/>
6
+ </linearGradient>
7
+ </defs>
8
+ <path id="Union_61" data-name="Union 61" d="M0,195.229H.009L0,195.215l23.664-32.567.009.013L70.934,97.615h46.6l.474.344-70.671,97.27ZM87.442,156.1l42.5-58.487h46.6l.474.344L134.768,156.1Zm89.1-58.487h0Zm0,0h-46.6L87.381,39.042h47.325L177.011,97.27Zm-105.6,0L23.673,32.568l-.009.013L0,.013.009,0H47.337l70.671,97.27-.474.344ZM106.356.022h0ZM106.357.022Zm-47.346,0L59,.013,59.014,0h47.327l.016.021H59.011ZM0,0H.009Z" fill="url(#linear-gradient)"/>
9
+ </svg>
@@ -0,0 +1,14 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="144.563" height="30" viewBox="0 0 144.563 30">
2
+ <defs>
3
+ <linearGradient id="linear-gradient" x1="0.5" x2="0.5" y2="1" gradientUnits="objectBoundingBox">
4
+ <stop offset="0" stop-color="#007ab1"/>
5
+ <stop offset="1" stop-color="#149ecd"/>
6
+ </linearGradient>
7
+ </defs>
8
+ <g id="Group_4627" data-name="Group 4627" transform="translate(-142.219 -25)">
9
+ <g id="Group_4626" data-name="Group 4626" transform="translate(-6.346)">
10
+ <text id="ENROLLX" transform="translate(186.127 47.5)" font-size="22" font-family="Nexa-XBold, Nexa" font-weight="700"><tspan x="0" y="0">ENROLLX</tspan></text>
11
+ </g>
12
+ <path id="Union_6" data-name="Union 6" d="M-1754-2151h0v0l3.636-5v0l7.262-10h7.161l.073.053-10.86,14.947Zm13.437-6.012,6.53-8.988h7.161l.073.053-6.491,8.935Zm13.691-8.988Zm0,0h-7.161l-6.54-9h7.272l6.5,8.948Zm-16.228,0-7.262-10v0l-3.636-5v0h7.273l10.86,14.947-.073.053Zm5.443-15h0ZM-1737.657-2181Zm-7.275,0h0v0h7.273l0,0h-7.275Zm-9.068,0h0Z" transform="translate(1896.219 2206)" fill="url(#linear-gradient)"/>
13
+ </g>
14
+ </svg>
@@ -0,0 +1,12 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="33.975" height="35" viewBox="0 0 33.975 35">
2
+ <defs>
3
+ <linearGradient id="linear-gradient" x1="0.5" x2="0.5" y2="1" gradientUnits="objectBoundingBox">
4
+ <stop offset="0" stop-color="#d86b00"/>
5
+ <stop offset="1" stop-color="#ed9035"/>
6
+ </linearGradient>
7
+ </defs>
8
+ <g id="Group_4349" data-name="Group 4349" transform="translate(-342.295 -263.508)">
9
+ <path id="Subtraction_34" data-name="Subtraction 34" d="M33.973,35H25.488l0,0L0,35l0,0,4.242-5.838,0,0L12.717,17.5,4.244,5.839l0,0L0,0,0,0H33.973l0,0L29.732,5.841l0,0L21.257,17.5,29.73,29.161l0,0L33.975,35l0,0ZM16.987,23.3,13.43,28.2l7.11,0L16.987,23.3ZM13.43,6.8l3.557,4.9L20.539,6.8l-7.109,0Z" transform="translate(342.295 263.508)" fill="url(#linear-gradient)"/>
10
+ <rect id="Rectangle_4307" data-name="Rectangle 4307" width="0.404" height="14.649" transform="translate(359.08 273.686)" fill="#16161d"/>
11
+ </g>
12
+ </svg>
@@ -0,0 +1,14 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="121.121" height="30" viewBox="0 0 121.121 30">
2
+ <defs>
3
+ <linearGradient id="linear-gradient" x1="0.5" x2="0.5" y2="1" gradientUnits="objectBoundingBox">
4
+ <stop offset="0" stop-color="#d86b00"/>
5
+ <stop offset="1" stop-color="#ed9035"/>
6
+ </linearGradient>
7
+ </defs>
8
+ <g id="Group_4626" data-name="Group 4626" transform="translate(-145.007 -25)">
9
+ <text id="EXAMX" transform="translate(184.127 47.5)" font-size="22" font-family="Nexa-XBold, Nexa" font-weight="700"><tspan x="0" y="0">EXAMX</tspan></text>
10
+ <g id="Group_4477" data-name="Group 4477" transform="translate(-197.288 -238.509)">
11
+ <path id="Subtraction_66" data-name="Subtraction 66" d="M29.12,30H21.847l0,0L0,30v0l3.636-5v0L10.9,15,3.638,5v0L0,0V0H29.12V0l-3.636,5V5L18.221,15l7.263,10v0l3.636,5,0,0ZM11.511,5.827h0l2.876,3.96V20.208l-2.876,3.96,6.094,0-2.871-3.956V9.787l2.871-3.956-6.094,0Z" transform="translate(342.295 263.509)" fill="url(#linear-gradient)"/>
12
+ </g>
13
+ </g>
14
+ </svg>
@@ -0,0 +1,13 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="50.761" height="35" viewBox="0 0 50.761 35">
2
+ <defs>
3
+ <linearGradient id="linear-gradient" x1="0.5" x2="0.5" y2="1" gradientUnits="objectBoundingBox">
4
+ <stop offset="0" stop-color="#573dab"/>
5
+ <stop offset="1" stop-color="#7251dd"/>
6
+ </linearGradient>
7
+ </defs>
8
+ <g id="Group_4351" data-name="Group 4351" transform="translate(-270.758 -251.98)">
9
+ <path id="Subtraction_9" data-name="Subtraction 9" d="M8.724,17.99H0l0,0,4.361-6,0,0L12.981.127,17.251,6l0,0,.09.124L8.724,17.99ZM21.7.124h0L21.614,0h.047l.088.063L21.7.124Z" transform="translate(283.16 268.99)" fill="url(#linear-gradient)"/>
10
+ <path id="Union_40" data-name="Union 40" d="M8.724,35H0l0,0,4.362-6v0l8.618-11.861.02.028,3.762-5.179,0,0L25.383.127l.043.058.026-.036L38.368,17.927l-.008.006L46.4,29l0,0,4.361,6,0,0H42.037L33.418,23.136l0,0-4.363-6v0h0l-.044-.061,0,0-.858-1.18.011,0-2.759-3.8L21.126,17.99h-.041l-3.908,5.374L8.724,35h0Zm8-34.847L16.619,0l0,0h.218l-.111.152h0ZM34.107.124,34.016,0h.047l.087.064-.044.061Z" transform="translate(270.758 251.98)" fill="url(#linear-gradient)"/>
11
+ <path id="Subtraction_10" data-name="Subtraction 10" d="M21.661,17.99H13.073L4.472,6.152l4.361-6L21.749,17.927l-.087.063ZM.109.152h0L0,0,0,0H.219L.109.152Z" transform="translate(287.377 268.989)" fill="url(#linear-gradient)"/>
12
+ </g>
13
+ </svg>
@@ -0,0 +1,13 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="464.103" height="320" viewBox="0 0 464.103 320">
2
+ <defs>
3
+ <linearGradient id="linear-gradient" x1="0.5" x2="0.5" y2="1" gradientUnits="objectBoundingBox">
4
+ <stop offset="0" stop-color="#573dab"/>
5
+ <stop offset="1" stop-color="#7251dd"/>
6
+ </linearGradient>
7
+ </defs>
8
+ <g id="Group_4511" data-name="Group 4511" transform="translate(-270.758 -251.98)">
9
+ <path id="Subtraction_9" data-name="Subtraction 9" d="M79.763,164.484H.016L0,164.46l39.875-54.878.015.021L118.681,1.165,157.727,54.9l.015-.021.827,1.138L79.763,164.483ZM198.442,1.137h0L197.615,0h.431l.8.58-.4.555Z" transform="translate(384.15 407.496)" fill="url(#linear-gradient)"/>
10
+ <path id="Union_40" data-name="Union 40" d="M79.765,320H.017L0,319.974,39.878,265.1l.013.019,78.793-108.439.185.253,34.4-47.349.016.022,78.79-108.44.389.534.239-.333L350.791,163.9l-.077.058,73.5,101.155.016-.019L464.1,319.974l-.017.023H384.339L305.533,211.531l.031-.042L265.677,156.63l-.014.019,0,0v0l-.4-.554.02-.014-7.844-10.789.1.016-25.226-34.717-39.155,53.891h-.379l-35.728,49.138L79.765,320v0ZM152.94,1.392l-1-1.367L151.96,0h1.991L152.94,1.392v0Zm158.893-.256L311.008,0h.431l.8.583-.4.554Z" transform="translate(270.757 251.98)" fill="url(#linear-gradient)"/>
11
+ <path id="Subtraction_10" data-name="Subtraction 10" d="M198.046,164.484h-78.52L40.883,56.246,80.756,1.366,198.845,163.9l-.8.58ZM1,1.393h0L0,.024.015,0H2.006L1,1.392Z" transform="translate(422.701 407.495)" fill="url(#linear-gradient)"/>
12
+ </g>
13
+ </svg>
@@ -0,0 +1,35 @@
1
+ import collegex from './campx.png'
2
+ import enrollx from './entrollx.png'
3
+ import examx from './examx.png'
4
+ import payx from './payx.png'
5
+ import peoplex from './pepolex.png'
6
+ import campxSquareSmall from './campx_square_small.svg'
7
+ import examsSmall from './exams_small.svg'
8
+ import paySmall from './pay_small.svg'
9
+ import peopleSmall from './people_small.svg'
10
+ import hostelSmall from './hostel_small.svg'
11
+ import background from './background.png'
12
+ import contactBg from './contactBg.png'
13
+ import commuteSmall from './commutexSmall.svg'
14
+ import commutex from './commutex.png'
15
+ import hostelx from './hostelx.png'
16
+ import enrollSmall from './enroll_logo.svg'
17
+
18
+ export {
19
+ collegex,
20
+ enrollx,
21
+ examx,
22
+ payx,
23
+ hostelx,
24
+ peoplex,
25
+ campxSquareSmall,
26
+ examsSmall,
27
+ paySmall,
28
+ peopleSmall,
29
+ hostelSmall,
30
+ background,
31
+ contactBg,
32
+ commutex,
33
+ commuteSmall,
34
+ enrollSmall,
35
+ }
@@ -0,0 +1,12 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="145.621" height="30" viewBox="0 0 145.621 30">
2
+ <defs>
3
+ <linearGradient id="linear-gradient" x1="0.5" x2="0.5" y2="1" gradientUnits="objectBoundingBox">
4
+ <stop offset="0" stop-color="#cba100"/>
5
+ <stop offset="1" stop-color="#f8d759"/>
6
+ </linearGradient>
7
+ </defs>
8
+ <g id="Group_4626" data-name="Group 4626" transform="translate(-154.507 -25)">
9
+ <text id="LIBRARYX" transform="translate(186.127 47.5)" font-size="22" font-family="Nexa-XBold, Nexa" font-weight="700"><tspan x="0" y="0">LIBRARYX</tspan></text>
10
+ <path id="Union_4" data-name="Union 4" d="M-3281.868-5857h0Zm-7.273,0-.073-.1-.073.1h-7.273v0l2.106-2.9,1.53-2.106v0l.073-.1-7.15-9.842.073-.053h7.16l3.553,4.89,3.553-4.89-3.553-4.89-3.553,4.89h-7.16l-.073-.053,7.15-9.842-.073-.1v0l-3.636-5v0h7.272l.073.1.073-.1h7.273v0l-3.636,5v0l-.073.1,7.15,9.842-.073.053.073.053-7.15,9.842.073.1v0l3.636,5v0Zm-7.42-30h0Z" transform="translate(3454.507 5912)" fill="url(#linear-gradient)"/>
11
+ </g>
12
+ </svg>
@@ -0,0 +1,16 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="24.634" height="35" viewBox="0 0 24.634 35">
2
+ <defs>
3
+ <linearGradient id="linear-gradient" x1="0.222" y1="1" x2="0.787" gradientUnits="objectBoundingBox">
4
+ <stop offset="0" stop-color="#88b053"/>
5
+ <stop offset="1" stop-color="#50840b"/>
6
+ </linearGradient>
7
+ </defs>
8
+ <g id="Group_4350" data-name="Group 4350" transform="translate(-1597.6 -781.549)">
9
+ <g id="Group_4461" data-name="Group 4461" transform="translate(1597.6 781.55)">
10
+ <g id="Group_4460" data-name="Group 4460" transform="translate(0 0)">
11
+ <path id="Subtraction_8" data-name="Subtraction 8" d="M8.75,17.991,21.775.063,21.688,0H13.1L4.389,11.988l0,0-4.361,6,0,0H8.75Z" transform="translate(2.859 17.009)" fill="url(#linear-gradient)"/>
12
+ <path id="Subtraction_8-2" data-name="Subtraction 8" d="M13.051,0,.026,17.927l.087.063H8.7L17.412,6l0,0,4.361-6,0,0H13.051Z" transform="translate(-0.026 0)" fill="url(#linear-gradient)"/>
13
+ </g>
14
+ </g>
15
+ </g>
16
+ </svg>
@@ -0,0 +1,19 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="93.064" height="30" viewBox="0 0 93.064 30">
2
+ <defs>
3
+ <linearGradient id="linear-gradient" x1="0.222" y1="1" x2="0.787" gradientUnits="objectBoundingBox">
4
+ <stop offset="0" stop-color="#88b053"/>
5
+ <stop offset="1" stop-color="#50840b"/>
6
+ </linearGradient>
7
+ </defs>
8
+ <g id="Group_4626" data-name="Group 4626" transform="translate(-157.064 -25)">
9
+ <text id="PAYX" transform="translate(190.127 47.5)" font-size="22" font-family="Nexa-XBold, Nexa" font-weight="700"><tspan x="0" y="0">PAYX</tspan></text>
10
+ <g id="Group_4464" data-name="Group 4464" transform="translate(-1440.537 -756.55)">
11
+ <g id="Group_4461" data-name="Group 4461" transform="translate(1597.6 781.55)">
12
+ <g id="Group_4460" data-name="Group 4460" transform="translate(0 0)">
13
+ <path id="Subtraction_8" data-name="Subtraction 8" d="M7.5,15.42,18.668.054,18.593,0H11.232L3.766,10.275v0L.026,15.418v0H7.5Z" transform="translate(2.447 14.58)" fill="url(#linear-gradient)"/>
14
+ <path id="Subtraction_8-2" data-name="Subtraction 8" d="M11.19,0,.026,15.366.1,15.42H7.462L14.928,5.145v0L18.668,0V0H11.19Z" transform="translate(-0.026 0)" fill="url(#linear-gradient)"/>
15
+ </g>
16
+ </g>
17
+ </g>
18
+ </g>
19
+ </svg>
@@ -0,0 +1,9 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="46.624" height="35.002" viewBox="0 0 46.624 35.002">
2
+ <defs>
3
+ <linearGradient id="linear-gradient" x1="0.5" x2="0.5" y2="1" gradientUnits="objectBoundingBox">
4
+ <stop offset="0" stop-color="#d0002b"/>
5
+ <stop offset="1" stop-color="#ea4a6b"/>
6
+ </linearGradient>
7
+ </defs>
8
+ <path id="Union_1" data-name="Union 1" d="M-1718.525-7459l-5.5-7.575-1.032,1.42,4.429,6.071-.113.083h-20l0,0,4.479-6.165-1.023-1.408-5.5,7.574H-1754l0,0,5.6-7.715,0,0,11.076-15.242.085.116,6.578,9.018,6.616-9.017.065-.089,16.6,22.845-.111.083Zm-10.1-30.589a4.412,4.412,0,0,1,4.41-4.412,4.413,4.413,0,0,1,4.412,4.412,4.413,4.413,0,0,1-4.412,4.413A4.413,4.413,0,0,1-1728.62-7489.589Zm-13.114,0a4.412,4.412,0,0,1,4.412-4.412,4.412,4.412,0,0,1,4.41,4.412,4.412,4.412,0,0,1-4.41,4.413A4.413,4.413,0,0,1-1741.735-7489.589Z" transform="translate(1753.999 7494.002)" fill="url(#linear-gradient)"/>
9
+ </svg>
@@ -0,0 +1,12 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="155.964" height="30.002" viewBox="0 0 155.964 30.002">
2
+ <defs>
3
+ <linearGradient id="linear-gradient" x1="0.5" x2="0.5" y2="1" gradientUnits="objectBoundingBox">
4
+ <stop offset="0" stop-color="#d0002b"/>
5
+ <stop offset="1" stop-color="#ea4a6b"/>
6
+ </linearGradient>
7
+ </defs>
8
+ <g id="Group_4626" data-name="Group 4626" transform="translate(-136.164 -24.999)">
9
+ <text id="PEOPLEX" transform="translate(186.127 47.5)" font-size="22" font-family="Nexa-XBold, Nexa" font-weight="700"><tspan x="0" y="0">PEOPLEX</tspan></text>
10
+ <path id="Union_42" data-name="Union 42" d="M-1723.591-7464l-4.718-6.494-.884,1.217,3.8,5.2-.1.072h-17.139l0,0,3.84-5.284-.875-1.206-4.717,6.494H-1754l0,0,4.8-6.611,0,0,9.494-13.066.047.064h0l5.664,7.765,5.7-7.765h0l.029-.04,14.226,19.582-.1.072Zm-8.653-26.22a3.782,3.782,0,0,1,3.78-3.782,3.784,3.784,0,0,1,3.782,3.782,3.784,3.784,0,0,1-3.782,3.782A3.782,3.782,0,0,1-1732.245-7490.219Zm-11.241,0a3.782,3.782,0,0,1,3.78-3.782,3.783,3.783,0,0,1,3.782,3.782,3.783,3.783,0,0,1-3.782,3.782A3.782,3.782,0,0,1-1743.486-7490.219Z" transform="translate(1890.163 7519)" fill="url(#linear-gradient)"/>
11
+ </g>
12
+ </svg>
@@ -0,0 +1,12 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="226.128" height="30" viewBox="0 0 226.128 30">
2
+ <defs>
3
+ <linearGradient id="linear-gradient" x1="0.5" x2="0.5" y2="1" gradientUnits="objectBoundingBox">
4
+ <stop offset="0" stop-color="#596e79"/>
5
+ <stop offset="1" stop-color="#7c909b"/>
6
+ </linearGradient>
7
+ </defs>
8
+ <g id="Group_4626" data-name="Group 4626" transform="translate(-148 -25)">
9
+ <text id="CAMPX_SQUARE" data-name="CAMPX SQUARE" transform="translate(190.127 47.5)" font-size="22" font-family="Nexa-XBold, Nexa" font-weight="700"><tspan x="0" y="0">CAMPX SQUARE</tspan></text>
10
+ <path id="Subtraction_57" data-name="Subtraction 57" d="M-5680.2,8259.99h-11.3v-11.343h5.625v5.718h5.672v5.625Zm18.7,0h-11.3v-5.625h5.671v-5.718h5.625v11.343Zm0-18.749h-5.625v-5.626h-5.671v-5.625h11.3v11.251Zm-24.375,0h-5.625V8229.99h11.3v5.625h-5.672v5.626Z" transform="translate(5839.5 -8204.99)" fill="url(#linear-gradient)"/>
11
+ </g>
12
+ </svg>
@@ -0,0 +1,57 @@
1
+ export const AppsIcon = () => {
2
+ return (
3
+ <svg
4
+ id="apps"
5
+ xmlns="http://www.w3.org/2000/svg"
6
+ width="22"
7
+ height="22"
8
+ viewBox="0 0 24 24"
9
+ >
10
+ <path
11
+ id="Path_15109"
12
+ data-name="Path 15109"
13
+ 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"
14
+ fill="#d4483e"
15
+ />
16
+ <path
17
+ id="Path_15110"
18
+ data-name="Path 15110"
19
+ 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"
20
+ fill="#f8d759"
21
+ />
22
+ <path
23
+ id="Path_15111"
24
+ data-name="Path 15111"
25
+ 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"
26
+ fill="#88b053"
27
+ />
28
+ <path
29
+ id="Path_15112"
30
+ data-name="Path 15112"
31
+ 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"
32
+ fill="#4baabe"
33
+ />
34
+ </svg>
35
+ )
36
+ }
37
+
38
+ export const NotificationIcon = () => {
39
+ return (
40
+ <>
41
+ <svg
42
+ xmlns="http://www.w3.org/2000/svg"
43
+ width="18.125"
44
+ height="20"
45
+ viewBox="0 0 18.125 20"
46
+ >
47
+ <path
48
+ id="bell_10_"
49
+ data-name="bell (10)"
50
+ 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"
51
+ transform="translate(-0.986 -0.002)"
52
+ fill="#121212"
53
+ />
54
+ </svg>
55
+ </>
56
+ )
57
+ }
@@ -0,0 +1 @@
1
+ export { default } from './AppHeader'
@@ -0,0 +1,133 @@
1
+ import {
2
+ alpha,
3
+ AppBar,
4
+ Box,
5
+ IconButton,
6
+ ListItemText,
7
+ styled,
8
+ Typography,
9
+ Link,
10
+ Avatar,
11
+ } from '@mui/material'
12
+ import { Link as RouterLink } from 'react-router-dom'
13
+
14
+ export const StyledImageWrapper = styled('div')`
15
+ width: auto;
16
+ height: 24px;
17
+ & img {
18
+ width: 100%;
19
+ height: 100%;
20
+ object-fit: contain;
21
+ }
22
+ `
23
+
24
+ export const StyledItemText = styled(ListItemText)(({ theme }) => ({
25
+ color: theme.palette.text.primary,
26
+ transition: '0.2s ease',
27
+ }))
28
+
29
+ export const StyledAppBar = styled(AppBar)(({ theme }) => ({
30
+ backgroundColor: 'white',
31
+ boxShadow: '0px 8px 28px rgb(136,136,136, 0.3)',
32
+ }))
33
+
34
+ export const StyledHeader = styled(Box)(({ theme }) => ({
35
+ boxShadow: '0px 2px 10px #0000001a',
36
+ backgroundColor: 'white',
37
+ display: 'flex',
38
+ alignItems: 'center',
39
+ justifyContent: 'space-between',
40
+ '& .actions': {
41
+ marginRight: '20px',
42
+ display: 'flex',
43
+ alignItems: 'center',
44
+ gap: '14px',
45
+ },
46
+ }))
47
+
48
+ export const StyledUser = styled(Box)(({ theme }) => ({
49
+ cursor: 'pointer',
50
+ borderRadius: '5px',
51
+ transition: 'background 0.2s ease',
52
+ padding: '5px 16px',
53
+ display: 'flex',
54
+ alignItems: 'center',
55
+ gap: '8px',
56
+ '&:hover': {
57
+ background: theme.palette.secondary.light,
58
+ },
59
+ }))
60
+
61
+ export const StyledIconButton = styled(IconButton)({
62
+ padding: '20px',
63
+ backgroundColor: 'black',
64
+ display: 'flex',
65
+ alignItems: 'center',
66
+ justifyContent: 'center',
67
+ borderRadius: '0px',
68
+ border: '1px solid white',
69
+ })
70
+
71
+ export const StyledLink = styled(Link)({
72
+ textDecoration: 'none',
73
+ })
74
+
75
+ export const StyledDescription = styled(Typography)(({ theme }) => ({
76
+ fontSize: '12px',
77
+ fontWeight: 600,
78
+ color: alpha(theme?.palette?.secondary?.lighter, 0.5),
79
+ }))
80
+
81
+ export const StyledMenuItem = styled(Box)({
82
+ height: '68px',
83
+ width: '380px',
84
+ padding: '40px 20px',
85
+ transition: 'background ease 0.3s',
86
+ '&:hover': {
87
+ background: 'rgba(0, 0, 0, 0.03)',
88
+ },
89
+ display: 'flex',
90
+ alignItems: 'center',
91
+ gap: '20px',
92
+ })
93
+
94
+ export const StyledMenuItemContainer = styled(Box)(({ theme }) => ({
95
+ cursor: 'pointer',
96
+
97
+ padding: '8px 0px',
98
+
99
+ borderBottom: `1px solid ${theme?.palette?.secondary?.lighter}`,
100
+ }))
101
+
102
+ export const StyledAvatar = styled(Avatar)(({ theme }) => ({
103
+ background: theme.palette.secondary.main,
104
+ cursor: 'pointer',
105
+ height: '45px',
106
+ width: '45px',
107
+ }))
108
+
109
+ export const StyledLogosWrapper = styled(Box)(() => ({
110
+ display: 'flex',
111
+ alignItems: 'center',
112
+ gap: '10px',
113
+ padding: '10px',
114
+ transition: 'background ease 0.3s',
115
+ borderRadius: '5px',
116
+ '&:hover': {
117
+ background: 'rgba(0, 0, 0, 0.05)',
118
+ },
119
+ }))
120
+
121
+ export const StyledImageBox = styled(Box)(() => ({
122
+ height: '40px',
123
+ width: '40px',
124
+ boxShadow: '0px 5px 5px 0px rgba(48, 62, 99,0.1) ',
125
+ display: 'flex',
126
+ alignItems: 'center',
127
+ justifyContent: 'center',
128
+ borderRadius: '5px',
129
+ }))
130
+
131
+ export const StyledRouterLink = styled(RouterLink)(() => ({
132
+ textDecoration: 'none',
133
+ }))
@@ -0,0 +1,49 @@
1
+ import { Helmet as ReactHelmet } from 'react-helmet'
2
+
3
+ type MetaProps = JSX.IntrinsicElements['meta']
4
+ type LinkProps = JSX.IntrinsicElements['link']
5
+
6
+ interface IHelmetProps {
7
+ appTitle: string
8
+ favicon: string
9
+ description?: string
10
+ meta?: MetaProps[] | undefined
11
+ link?: LinkProps[] | undefined
12
+ }
13
+
14
+ export default function Helmet({
15
+ appTitle,
16
+ favicon,
17
+ description,
18
+ meta = [],
19
+ link = [],
20
+ }: IHelmetProps) {
21
+ return (
22
+ <ReactHelmet
23
+ htmlAttributes={{ lang: 'en' }}
24
+ title={appTitle}
25
+ meta={[
26
+ {
27
+ charSet: 'utf-8',
28
+ },
29
+ {
30
+ name: 'description',
31
+ content: description,
32
+ },
33
+ {
34
+ name: 'viewport',
35
+ content: 'width=device-width, initial-scale=1',
36
+ },
37
+ ...meta,
38
+ ]}
39
+ link={[
40
+ { rel: 'icon', href: favicon },
41
+ {
42
+ rel: 'apple-touch-icon',
43
+ href: favicon,
44
+ },
45
+ ...link,
46
+ ]}
47
+ />
48
+ )
49
+ }
@@ -0,0 +1,28 @@
1
+ import {
2
+ StyledLeftNavContainer,
3
+ StyledMainContentContainer,
4
+ } from '../../layouts/Components/styles'
5
+ import ErrorBoundary from '../ErrorBoundary'
6
+ import SideNav from './SideNav'
7
+ interface Props {
8
+ children?: React.ReactNode
9
+ menu: any[]
10
+ sideMenuHeader?: React.ReactNode
11
+ }
12
+
13
+ export default function LayoutWrapper({
14
+ children,
15
+ menu,
16
+ sideMenuHeader,
17
+ }: Props) {
18
+ return (
19
+ <ErrorBoundary>
20
+ <StyledLeftNavContainer>
21
+ <SideNav menuItems={menu as any[]} header={sideMenuHeader} />
22
+ </StyledLeftNavContainer>
23
+ <StyledMainContentContainer>
24
+ <ErrorBoundary>{children}</ErrorBoundary>
25
+ </StyledMainContentContainer>
26
+ </ErrorBoundary>
27
+ )
28
+ }
@@ -0,0 +1,29 @@
1
+ import { KeyboardBackspace } from '@mui/icons-material'
2
+ import { Box, styled as styledMui, Typography } from '@mui/material'
3
+ import { useNavigate } from 'react-router-dom'
4
+
5
+ const StyledSideMenuHeader = styledMui(Box)(({ theme }) => ({
6
+ height: '60px',
7
+ display: 'flex',
8
+ gap: '8px',
9
+ alignItems: 'center',
10
+ cursor: 'pointer',
11
+ background: '#1d1d1d',
12
+ }))
13
+
14
+ export const SideMenuHeader = ({ title, path }) => {
15
+ const navigate = useNavigate()
16
+
17
+ return (
18
+ <StyledSideMenuHeader
19
+ onClick={() => {
20
+ navigate(path)
21
+ }}
22
+ >
23
+ <KeyboardBackspace />
24
+ <Typography variant="h3" color={'white'}>
25
+ {title}
26
+ </Typography>
27
+ </StyledSideMenuHeader>
28
+ )
29
+ }