@ebubekirylmaz/link-test 1.0.0

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 (409) hide show
  1. package/.babelrc +3 -0
  2. package/.browserslistrc +1 -0
  3. package/.env +2 -0
  4. package/.eslintignore +3 -0
  5. package/.eslintrc.json +58 -0
  6. package/.gitattributes +1 -0
  7. package/.github/workflows/publish.yml +66 -0
  8. package/.prettierignore +1 -0
  9. package/.prettierrc +10 -0
  10. package/.storybook/main.js +15 -0
  11. package/.storybook/preview.js +17 -0
  12. package/.storybook/vitest.setup.js +6 -0
  13. package/README.md +1 -0
  14. package/cypress.config.js +11 -0
  15. package/index.js +1 -0
  16. package/package.json +111 -0
  17. package/project/.eslintrc.cjs +22 -0
  18. package/project/config.js +18 -0
  19. package/project/config.menu.js +39 -0
  20. package/project/config.template.js +31 -0
  21. package/project/cypress/e2e/layouts.cy.js +170 -0
  22. package/project/cypress/e2e/login.cy.js +35 -0
  23. package/project/cypress/e2e/selectbar.cy.js +80 -0
  24. package/project/cypress/fixtures/CONFIG/MENU_CONFIG.js +39 -0
  25. package/project/cypress/fixtures/EMPEROR/EMPERORS_GET.json +51 -0
  26. package/project/cypress/fixtures/EMPEROR/EMPERORS_POST.json +9 -0
  27. package/project/cypress/fixtures/OAUTH/GITHUB/user.json +46 -0
  28. package/project/cypress/fixtures/example.json +5 -0
  29. package/project/cypress/support/commands.js +104 -0
  30. package/project/cypress/support/e2e.js +1 -0
  31. package/project/cypress.config.js +10 -0
  32. package/project/index.html +12 -0
  33. package/project/media/ProjectIcons/3d.png +0 -0
  34. package/project/media/ProjectIcons/box.png +0 -0
  35. package/project/media/ProjectIcons/cafe.png +0 -0
  36. package/project/media/ProjectIcons/cargo.png +0 -0
  37. package/project/media/ProjectIcons/cloud.png +0 -0
  38. package/project/media/ProjectIcons/code.png +0 -0
  39. package/project/media/ProjectIcons/company.png +0 -0
  40. package/project/media/ProjectIcons/conversation.png +0 -0
  41. package/project/media/ProjectIcons/distributed.png +0 -0
  42. package/project/media/ProjectIcons/fingerprint.png +0 -0
  43. package/project/media/ProjectIcons/forest.png +0 -0
  44. package/project/media/ProjectIcons/headphones.png +0 -0
  45. package/project/media/ProjectIcons/office.png +0 -0
  46. package/project/media/ProjectIcons/path.png +0 -0
  47. package/project/media/ProjectIcons/printer.png +0 -0
  48. package/project/media/ProjectIcons/project.png +0 -0
  49. package/project/media/ProjectIcons/resume.png +0 -0
  50. package/project/media/ProjectIcons/rocket.png +0 -0
  51. package/project/media/ProjectIcons/rtruck.png +0 -0
  52. package/project/media/ProjectIcons/sign.png +0 -0
  53. package/project/media/ProjectIcons/site.png +0 -0
  54. package/project/media/ProjectIcons/truck.png +0 -0
  55. package/project/media/logo.png +0 -0
  56. package/project/package-lock.json +22434 -0
  57. package/project/package.json +42 -0
  58. package/project/public/assets/background/overlay_2.jpg +0 -0
  59. package/project/public/assets/illustrations/illustration_dashboard.png +0 -0
  60. package/project/public/media/largeLogo.png +0 -0
  61. package/project/public/media/logo.png +0 -0
  62. package/project/public/vite.svg +1 -0
  63. package/project/routes.jsx +47 -0
  64. package/project/server/mock.json +110 -0
  65. package/project/server/oauthMock.js +27 -0
  66. package/project/server/package-lock.json +1505 -0
  67. package/project/server/package.json +20 -0
  68. package/project/server/server.js +127 -0
  69. package/project/src/Container.jsx +7 -0
  70. package/project/src/components/ActionButton.jsx +18 -0
  71. package/project/src/hooks/useEmperor.jsx +21 -0
  72. package/project/src/http/index.js +39 -0
  73. package/project/src/main.jsx +10 -0
  74. package/project/src/pages/Battles.jsx +16 -0
  75. package/project/src/pages/Emperor.jsx +50 -0
  76. package/project/src/pages/index.jsx +33 -0
  77. package/project/src/theme.js +151 -0
  78. package/project/src/widgets/ActionButton.jsx +68 -0
  79. package/project/src/widgets/AddNewEmperor.jsx +120 -0
  80. package/project/src/widgets/ProjectContainer.jsx +27 -0
  81. package/project/vite.config.js +6 -0
  82. package/project/vite.config.js.timestamp-1709564450418-45fdd27900806.mjs +341 -0
  83. package/public/assets/background/overlay_2.jpg +0 -0
  84. package/public/assets/illustrations/illustration_dashboard.png +0 -0
  85. package/public/vite.svg +1 -0
  86. package/src/ContextProvider/ContextProvider.jsx +19 -0
  87. package/src/GlobalSnackMessage/GlobalSnackMessage.jsx +45 -0
  88. package/src/GlobalSnackMessage/index.js +1 -0
  89. package/src/GlobalSnackMessage/styles.js +3 -0
  90. package/src/Platform.jsx +76 -0
  91. package/src/RouteManager/RouteManager.jsx +56 -0
  92. package/src/RouteManager/index.js +1 -0
  93. package/src/assets/illustrations/avatar-shape.jsx +31 -0
  94. package/src/assets/illustrations/background-shape.jsx +37 -0
  95. package/src/assets/illustrations/booking-illustration.jsx +335 -0
  96. package/src/assets/illustrations/check-in-illustration.jsx +96 -0
  97. package/src/assets/illustrations/check-out-illustration.jsx +69 -0
  98. package/src/assets/illustrations/coming-soon-illustration.jsx +125 -0
  99. package/src/assets/illustrations/forbidden-illustration.jsx +95 -0
  100. package/src/assets/illustrations/index.js +2 -0
  101. package/src/assets/illustrations/maintenance-illustration.jsx +228 -0
  102. package/src/assets/illustrations/motivation-illustration.jsx +74 -0
  103. package/src/assets/illustrations/order-complete-illustration.jsx +126 -0
  104. package/src/assets/illustrations/page-not-found-illustration.jsx +81 -0
  105. package/src/assets/illustrations/seo-illustration.jsx +244 -0
  106. package/src/assets/illustrations/sever-error-illustration.jsx +152 -0
  107. package/src/assets/illustrations/upgrade-storage-illustration.jsx +161 -0
  108. package/src/assets/illustrations/upload-illustration.jsx +622 -0
  109. package/src/components/Iconify/Iconify.jsx +18 -0
  110. package/src/components/Iconify/index.js +1 -0
  111. package/src/components/MiniTopBar/MiniTopBar.jsx +25 -0
  112. package/src/components/MiniTopBar/index.js +1 -0
  113. package/src/components/MiniTopBar/styles.js +6 -0
  114. package/src/components/NucleoidLoginForm/NucleoidLoginForm.jsx +69 -0
  115. package/src/components/NucleoidLoginForm/index.js +1 -0
  116. package/src/components/NucleoidLoginForm/styles.js +3 -0
  117. package/src/components/Sidebar/Sidebar.jsx +76 -0
  118. package/src/components/Sidebar/index.js +1 -0
  119. package/src/components/Sidebar/styles.js +25 -0
  120. package/src/components/SocialLoginButtons/SocialLoginButtons.jsx +55 -0
  121. package/src/components/SocialLoginButtons/index.js +1 -0
  122. package/src/components/SocialLoginButtons/styles.js +3 -0
  123. package/src/components/TopNavBar/TopNavBar.jsx +186 -0
  124. package/src/components/TopNavBar/index.js +1 -0
  125. package/src/components/TopNavBar/styles.js +7 -0
  126. package/src/components/animate/index.js +4 -0
  127. package/src/components/animate/motion-container.jsx +38 -0
  128. package/src/components/animate/motion-lazy.jsx +11 -0
  129. package/src/components/animate/motion-viewport.jsx +30 -0
  130. package/src/components/animate/variants/actions.js +4 -0
  131. package/src/components/animate/variants/background.js +97 -0
  132. package/src/components/animate/variants/bounce.js +107 -0
  133. package/src/components/animate/variants/container.js +20 -0
  134. package/src/components/animate/variants/fade.js +127 -0
  135. package/src/components/animate/variants/flip.js +54 -0
  136. package/src/components/animate/variants/index.js +12 -0
  137. package/src/components/animate/variants/path.js +12 -0
  138. package/src/components/animate/variants/rotate.js +33 -0
  139. package/src/components/animate/variants/scale.js +54 -0
  140. package/src/components/animate/variants/slide.js +65 -0
  141. package/src/components/animate/variants/transition.js +20 -0
  142. package/src/components/animate/variants/zoom.js +130 -0
  143. package/src/components/chart/chart.js +69 -0
  144. package/src/components/chart/index.js +5 -0
  145. package/src/components/chart/use-chart.js +215 -0
  146. package/src/components/custom-popover/custom-popover.jsx +46 -0
  147. package/src/components/custom-popover/index.js +3 -0
  148. package/src/components/custom-popover/styles.js +84 -0
  149. package/src/components/custom-popover/use-popover.js +22 -0
  150. package/src/components/custom-popover/utils.js +100 -0
  151. package/src/components/file-thumbnail/download-button.jsx +39 -0
  152. package/src/components/file-thumbnail/file-thumbnail.jsx +72 -0
  153. package/src/components/file-thumbnail/index.js +5 -0
  154. package/src/components/file-thumbnail/utils.js +148 -0
  155. package/src/components/image/image.jsx +119 -0
  156. package/src/components/image/index.js +1 -0
  157. package/src/components/image/utils.js +15 -0
  158. package/src/components/label/index.js +1 -0
  159. package/src/components/label/label.jsx +51 -0
  160. package/src/components/label/styles.js +78 -0
  161. package/src/components/loading-screen/index.js +2 -0
  162. package/src/components/loading-screen/loading-screen.jsx +23 -0
  163. package/src/components/loading-screen/splash-screen.jsx +95 -0
  164. package/src/components/logo/index.js +1 -0
  165. package/src/components/logo/logo.jsx +61 -0
  166. package/src/components/logo/styles.js +17 -0
  167. package/src/components/nav-section/horizontal/index.js +1 -0
  168. package/src/components/nav-section/horizontal/nav-item.jsx +224 -0
  169. package/src/components/nav-section/horizontal/nav-list.jsx +113 -0
  170. package/src/components/nav-section/horizontal/nav-section-horizontal.jsx +41 -0
  171. package/src/components/nav-section/index.js +3 -0
  172. package/src/components/nav-section/mini/index.js +1 -0
  173. package/src/components/nav-section/mini/nav-item.jsx +242 -0
  174. package/src/components/nav-section/mini/nav-list.jsx +107 -0
  175. package/src/components/nav-section/mini/nav-section-mini.jsx +35 -0
  176. package/src/components/nav-section/vertical/index.js +1 -0
  177. package/src/components/nav-section/vertical/nav-item.jsx +294 -0
  178. package/src/components/nav-section/vertical/nav-list.jsx +66 -0
  179. package/src/components/nav-section/vertical/nav-section-vertical.jsx +74 -0
  180. package/src/components/scrollbar/index.js +1 -0
  181. package/src/components/scrollbar/scrollbar.jsx +39 -0
  182. package/src/components/scrollbar/styles.js +27 -0
  183. package/src/components/search-not-found/index.js +1 -0
  184. package/src/components/search-not-found/search-not-found.jsx +29 -0
  185. package/src/components/settings/context/index.js +2 -0
  186. package/src/components/settings/context/settings-context.js +14 -0
  187. package/src/components/settings/context/settings-provider.jsx +46 -0
  188. package/src/components/settings/drawer/base-option.jsx +52 -0
  189. package/src/components/settings/drawer/fullscreen-option.jsx +58 -0
  190. package/src/components/settings/drawer/index.js +1 -0
  191. package/src/components/settings/drawer/layout-options.jsx +144 -0
  192. package/src/components/settings/drawer/presets-options.jsx +53 -0
  193. package/src/components/settings/drawer/settings-drawer.jsx +189 -0
  194. package/src/components/settings/drawer/stretch-options.jsx +67 -0
  195. package/src/components/settings/index.js +3 -0
  196. package/src/components/svg-color/index.js +1 -0
  197. package/src/components/svg-color/svg-color.jsx +23 -0
  198. package/src/config/config.js +48 -0
  199. package/src/config/schemas.js +148 -0
  200. package/src/context/reducer.js +52 -0
  201. package/src/global.css +2 -0
  202. package/src/hooks/index.js +2 -0
  203. package/src/hooks/use-boolean.js +27 -0
  204. package/src/hooks/use-event-listener.js +34 -0
  205. package/src/hooks/use-local-storage.js +89 -0
  206. package/src/hooks/use-off-set-top.js +37 -0
  207. package/src/hooks/use-responsive.js +47 -0
  208. package/src/hooks/use-scroll-to-top.js +14 -0
  209. package/src/hooks/use-user.js +58 -0
  210. package/src/hooks/useApi.js +25 -0
  211. package/src/hooks/useItemsState.js +23 -0
  212. package/src/hooks/useProjects.js +24 -0
  213. package/src/hooks/useSettings.jsx +51 -0
  214. package/src/http/index.js +155 -0
  215. package/src/http/oauth.js +27 -0
  216. package/src/http/user.js +110 -0
  217. package/src/layouts/AppLayout.jsx +113 -0
  218. package/src/layouts/CompactLayout/CompactLayout.jsx +32 -0
  219. package/src/layouts/CompactLayout/index.js +1 -0
  220. package/src/layouts/DashboardLayout/DashboardLayout.jsx +87 -0
  221. package/src/layouts/DashboardLayout/config-navigation.jsx +0 -0
  222. package/src/layouts/DashboardLayout/header.jsx +104 -0
  223. package/src/layouts/DashboardLayout/index.js +2 -0
  224. package/src/layouts/DashboardLayout/main.jsx +64 -0
  225. package/src/layouts/DashboardLayout/nav-horizontal.jsx +62 -0
  226. package/src/layouts/DashboardLayout/nav-mini.jsx +99 -0
  227. package/src/layouts/DashboardLayout/nav-vertical.jsx +201 -0
  228. package/src/layouts/FullScreenLayout/FullScreenLayout.jsx +101 -0
  229. package/src/layouts/FullScreenLayout/index.js +1 -0
  230. package/src/layouts/FullScreenLayout/nav-horizontal.jsx +50 -0
  231. package/src/layouts/FullScreenLayout/nav-vertical.jsx +136 -0
  232. package/src/layouts/MainLayout/MainLayout.jsx +21 -0
  233. package/src/layouts/MainLayout/footer.jsx +153 -0
  234. package/src/layouts/MainLayout/header.jsx +81 -0
  235. package/src/layouts/MainLayout/index.js +1 -0
  236. package/src/layouts/MainLayout/nav/desktop/index.jsx +20 -0
  237. package/src/layouts/MainLayout/nav/desktop/nav-item.jsx +186 -0
  238. package/src/layouts/MainLayout/nav/desktop/nav-list.jsx +145 -0
  239. package/src/layouts/MainLayout/nav/mobile/index.jsx +60 -0
  240. package/src/layouts/MainLayout/nav/mobile/nav-item.jsx +90 -0
  241. package/src/layouts/MainLayout/nav/mobile/nav-list.jsx +72 -0
  242. package/src/layouts/Page.jsx +16 -0
  243. package/src/layouts/SimpleLayout/SimpleLayout.jsx +8 -0
  244. package/src/layouts/SimpleLayout/index.js +1 -0
  245. package/src/layouts/TwoSideLayout/TwoSideLayout.jsx +31 -0
  246. package/src/layouts/TwoSideLayout/index.js +1 -0
  247. package/src/layouts/auth/classic.jsx +95 -0
  248. package/src/layouts/auth/modern-compact.jsx +51 -0
  249. package/src/layouts/auth/modern.jsx +94 -0
  250. package/src/layouts/common/ProjectBar/index.jsx +325 -0
  251. package/src/layouts/common/ProjectBar/result-item.jsx +90 -0
  252. package/src/layouts/common/ProjectBar/utils.js +86 -0
  253. package/src/layouts/common/account-popover.jsx +116 -0
  254. package/src/layouts/common/header-shadow.jsx +26 -0
  255. package/src/layouts/common/header-sim.jsx +52 -0
  256. package/src/layouts/common/header-simple.jsx +76 -0
  257. package/src/layouts/common/nav-toggle-button.jsx +57 -0
  258. package/src/layouts/common/notifications-popover/index.jsx +177 -0
  259. package/src/layouts/common/notifications-popover/notification-item.jsx +252 -0
  260. package/src/layouts/common/settings-button.jsx +48 -0
  261. package/src/layouts/config-layout.js +12 -0
  262. package/src/layouts/index.js +7 -0
  263. package/src/lib/AddItemWizard/AddItemWizard.jsx +211 -0
  264. package/src/lib/AddItemWizard/index.js +1 -0
  265. package/src/lib/CustomBreadcrumbs/CustomBreadcrumbs.jsx +88 -0
  266. package/src/lib/CustomBreadcrumbs/index.js +1 -0
  267. package/src/lib/CustomBreadcrumbs/link-item.jsx +58 -0
  268. package/src/lib/CustomPopover/CustomPopover.jsx +46 -0
  269. package/src/lib/CustomPopover/index.js +3 -0
  270. package/src/lib/CustomPopover/styles.js +82 -0
  271. package/src/lib/CustomPopover/usePopover.js +20 -0
  272. package/src/lib/CustomPopover/utils.js +100 -0
  273. package/src/lib/Flow/connectors/DynamicConnector.jsx +247 -0
  274. package/src/lib/Flow/core/Flow.jsx +79 -0
  275. package/src/lib/Flow/core/FlowNode.jsx +68 -0
  276. package/src/lib/Flow/core/FlowViewport.jsx +259 -0
  277. package/src/lib/Flow/graph/FloatingGraph.jsx +44 -0
  278. package/src/lib/Flow/hooks/useGraphOperations.js +362 -0
  279. package/src/lib/Flow/hooks/useNodeStyle.js +56 -0
  280. package/src/lib/Flow/index.js +1 -0
  281. package/src/lib/Flow/layouts/ActionNode.jsx +78 -0
  282. package/src/lib/Flow/layouts/AnimatedNode.jsx +22 -0
  283. package/src/lib/Flow/layouts/CardLayout.jsx +397 -0
  284. package/src/lib/Flow/layouts/InfoNode.jsx +255 -0
  285. package/src/lib/Flow/layouts/LoadingNode.jsx +37 -0
  286. package/src/lib/Flow/nodes/DefaultCard.jsx +107 -0
  287. package/src/lib/Flow/nodes/DraggableNode.jsx +162 -0
  288. package/src/lib/Flow/nodes/FlowNodeView.jsx +214 -0
  289. package/src/lib/Flow/selection/SelectionContext.jsx +259 -0
  290. package/src/lib/Flow/selection/SelectionOverlay.jsx +31 -0
  291. package/src/lib/Flow/styles.js +154 -0
  292. package/src/lib/Flow/utils/flowUtils.js +268 -0
  293. package/src/lib/FormProvider/FormProvider.jsx +16 -0
  294. package/src/lib/FormProvider/index.js +1 -0
  295. package/src/lib/IconSelector/IconSelector.jsx +89 -0
  296. package/src/lib/Iconify/Iconify.jsx +17 -0
  297. package/src/lib/Iconify/index.js +1 -0
  298. package/src/lib/Image/Image.jsx +116 -0
  299. package/src/lib/Image/index.js +1 -0
  300. package/src/lib/Image/utils.js +15 -0
  301. package/src/lib/ItemSummary/ItemSummary.jsx +77 -0
  302. package/src/lib/ItemSummary/ItemsSummary.jsx +163 -0
  303. package/src/lib/Label/Label.jsx +51 -0
  304. package/src/lib/Label/index.js +1 -0
  305. package/src/lib/Label/styles.js +76 -0
  306. package/src/lib/ProjectWizard.jsx +137 -0
  307. package/src/lib/RHFTextfield/RHFTextfield.jsx +39 -0
  308. package/src/lib/RHFTextfield/index.js +1 -0
  309. package/src/lib/Scrollbar/Scrollbar.jsx +39 -0
  310. package/src/lib/Scrollbar/index.js +1 -0
  311. package/src/lib/Scrollbar/styles.js +27 -0
  312. package/src/lib/SearchNotFound/SearchNotFound.jsx +29 -0
  313. package/src/lib/SearchNotFound/index.js +1 -0
  314. package/src/lib/SparkleInput/SparkleInput.jsx +51 -0
  315. package/src/lib/StepComponent/StepComponent.jsx +98 -0
  316. package/src/lib/SvgColor/SvgColor.jsx +28 -0
  317. package/src/lib/SvgColor/index.js +1 -0
  318. package/src/lib/TableHeadCustom/TableHeadCustom.jsx +87 -0
  319. package/src/lib/TableHeadCustom/index.js +1 -0
  320. package/src/lib/TableSelectedAction/TableSelectedAction.jsx +72 -0
  321. package/src/lib/TableSelectedAction/index.js +1 -0
  322. package/src/lib/index.js +36 -0
  323. package/src/lib/lib/Icons.js +40 -0
  324. package/src/lib/lib/context.json +272 -0
  325. package/src/lib/useChart/useChart.js +179 -0
  326. package/src/lib/useTable/useTable.js +121 -0
  327. package/src/pages/404.jsx +17 -0
  328. package/src/pages/Callback.jsx +126 -0
  329. package/src/pages/ConfigError.jsx +49 -0
  330. package/src/pages/LoginPage.jsx +43 -0
  331. package/src/routes/components/index.js +1 -0
  332. package/src/routes/components/router-link.jsx +11 -0
  333. package/src/routes/hooks/index.js +4 -0
  334. package/src/routes/hooks/use-active-link.js +15 -0
  335. package/src/routes/hooks/use-pathname.js +10 -0
  336. package/src/routes/hooks/use-router.js +21 -0
  337. package/src/stories/FlowChart.stories.jsx +333 -0
  338. package/src/stories/Iconify.stories.jsx +183 -0
  339. package/src/stories/Label.stories.jsx +447 -0
  340. package/src/stories/Navbar.stories.jsx +588 -0
  341. package/src/theme/css.js +152 -0
  342. package/src/theme/custom-shadows.js +47 -0
  343. package/src/theme/index.jsx +100 -0
  344. package/src/theme/options/contrast.js +34 -0
  345. package/src/theme/options/presets.js +89 -0
  346. package/src/theme/options/right-to-left.jsx +26 -0
  347. package/src/theme/overrides/components/accordion.js +43 -0
  348. package/src/theme/overrides/components/alert.js +69 -0
  349. package/src/theme/overrides/components/appbar.js +13 -0
  350. package/src/theme/overrides/components/autocomplete.js +44 -0
  351. package/src/theme/overrides/components/avatar.js +111 -0
  352. package/src/theme/overrides/components/backdrop.js +18 -0
  353. package/src/theme/overrides/components/badge.js +90 -0
  354. package/src/theme/overrides/components/breadcrumbs.js +21 -0
  355. package/src/theme/overrides/components/button-group.js +90 -0
  356. package/src/theme/overrides/components/button.js +145 -0
  357. package/src/theme/overrides/components/card.js +30 -0
  358. package/src/theme/overrides/components/checkbox.js +13 -0
  359. package/src/theme/overrides/components/chip.js +129 -0
  360. package/src/theme/overrides/components/css-baseline.js +48 -0
  361. package/src/theme/overrides/components/data-grid.js +94 -0
  362. package/src/theme/overrides/components/date-picker.jsx +94 -0
  363. package/src/theme/overrides/components/dialog.js +49 -0
  364. package/src/theme/overrides/components/drawer.js +39 -0
  365. package/src/theme/overrides/components/fab.js +165 -0
  366. package/src/theme/overrides/components/list.js +33 -0
  367. package/src/theme/overrides/components/loading-button.js +30 -0
  368. package/src/theme/overrides/components/menu.js +15 -0
  369. package/src/theme/overrides/components/pagination.js +81 -0
  370. package/src/theme/overrides/components/paper.js +18 -0
  371. package/src/theme/overrides/components/popover.js +20 -0
  372. package/src/theme/overrides/components/progress.js +40 -0
  373. package/src/theme/overrides/components/radio.js +22 -0
  374. package/src/theme/overrides/components/rating.js +40 -0
  375. package/src/theme/overrides/components/select.js +26 -0
  376. package/src/theme/overrides/components/skeleton.js +16 -0
  377. package/src/theme/overrides/components/slider.js +30 -0
  378. package/src/theme/overrides/components/stepper.js +13 -0
  379. package/src/theme/overrides/components/svg-icon.js +15 -0
  380. package/src/theme/overrides/components/switch.js +66 -0
  381. package/src/theme/overrides/components/table.js +79 -0
  382. package/src/theme/overrides/components/tabs.js +39 -0
  383. package/src/theme/overrides/components/textfield.js +146 -0
  384. package/src/theme/overrides/components/timeline.js +20 -0
  385. package/src/theme/overrides/components/toggle-button.js +70 -0
  386. package/src/theme/overrides/components/tooltip.js +18 -0
  387. package/src/theme/overrides/components/tree-view.js +16 -0
  388. package/src/theme/overrides/components/typography.js +16 -0
  389. package/src/theme/overrides/default-props.jsx +238 -0
  390. package/src/theme/overrides/index.js +100 -0
  391. package/src/theme/palette.js +144 -0
  392. package/src/theme/shadows.js +41 -0
  393. package/src/theme/typography.js +107 -0
  394. package/src/utils/flatten-array.js +16 -0
  395. package/src/utils/format-number.js +37 -0
  396. package/src/utils/format-time.js +27 -0
  397. package/src/utils/storage-available.js +24 -0
  398. package/src/widgets/Login/CognitoLogin.jsx +43 -0
  399. package/src/widgets/Login/Login.jsx +58 -0
  400. package/src/widgets/Login/cognitoAuth.jsx +26 -0
  401. package/src/widgets/LoginForm/LoginForm.jsx +87 -0
  402. package/src/widgets/LoginForm/LoginFormStyles.js +43 -0
  403. package/src/widgets/LoginForm/index.js +1 -0
  404. package/src/widgets/SettingsDialog.jsx +308 -0
  405. package/src/widgets/error/index.js +1 -0
  406. package/src/widgets/error/not-found-view.jsx +42 -0
  407. package/vite/vite.js +77 -0
  408. package/vite.config.js +7 -0
  409. package/vitest.config.js +32 -0
@@ -0,0 +1,238 @@
1
+ import Iconify from "../../components/Iconify";
2
+ import React from "react";
3
+ import SvgIcon from "@mui/material/SvgIcon";
4
+ // ----------------------------------------------------------------------
5
+
6
+ const ArrowDownIcon = (props) => (
7
+ <SvgIcon {...props}>
8
+ <path d="M12,16 C11.7663478,16.0004565 11.5399121,15.9190812 11.36,15.77 L5.36,10.77 C4.93474074,10.4165378 4.87653776,9.78525926 5.23,9.36 C5.58346224,8.93474074 6.21474074,8.87653776 6.64,9.23 L12,13.71 L17.36,9.39 C17.5665934,9.2222295 17.8315409,9.14373108 18.0961825,9.17188444 C18.3608241,9.2000378 18.6033268,9.33252029 18.77,9.54 C18.9551341,9.74785947 19.0452548,10.0234772 19.0186853,10.3005589 C18.9921158,10.5776405 18.8512608,10.8311099 18.63,11 L12.63,15.83 C12.444916,15.955516 12.2231011,16.0153708 12,16 Z" />
9
+ </SvgIcon>
10
+ );
11
+
12
+ const CheckboxIcon = (props) => (
13
+ <SvgIcon {...props}>
14
+ <path d="M17.9 2.318A5 5 0 0 1 22.895 7.1l.005.217v10a5 5 0 0 1-4.783 4.995l-.217.005h-10a5 5 0 0 1-4.995-4.783l-.005-.217v-10a5 5 0 0 1 4.783-4.996l.217-.004h10Zm-.5 1.5h-9a4 4 0 0 0-4 4v9a4 4 0 0 0 4 4h9a4 4 0 0 0 4-4v-9a4 4 0 0 0-4-4Z" />
15
+ </SvgIcon>
16
+ );
17
+
18
+ const CheckboxCheckedIcon = (props) => (
19
+ <SvgIcon {...props}>
20
+ <path d="M17 2a5 5 0 0 1 5 5v10a5 5 0 0 1-5 5H7a5 5 0 0 1-5-5V7a5 5 0 0 1 5-5Zm-1.625 7.255-4.13 4.13-1.75-1.75a.881.881 0 0 0-1.24 0c-.34.34-.34.89 0 1.24l2.38 2.37c.17.17.39.25.61.25.23 0 .45-.08.62-.25l4.75-4.75c.34-.34.34-.89 0-1.24a.881.881 0 0 0-1.24 0Z" />
21
+ </SvgIcon>
22
+ );
23
+
24
+ const CheckboxIndeterminateIcon = (props) => (
25
+ <SvgIcon {...props}>
26
+ <path d="M17,2 C19.7614,2 22,4.23858 22,7 L22,7 L22,17 C22,19.7614 19.7614,22 17,22 L17,22 L7,22 C4.23858,22 2,19.7614 2,17 L2,17 L2,7 C2,4.23858 4.23858,2 7,2 L7,2 Z M15,11 L9,11 C8.44772,11 8,11.4477 8,12 C8,12.5523 8.44772,13 9,13 L15,13 C15.5523,13 16,12.5523 16,12 C16,11.4477 15.5523,11 15,11 Z" />
27
+ </SvgIcon>
28
+ );
29
+
30
+ const RadioIcon = (props) => (
31
+ <SvgIcon {...props}>
32
+ <path d="M12 2A10 10 0 1 1 2 12C2 6.477 6.477 2 12 2Zm0 1.5a8.5 8.5 0 1 0 0 17 8.5 8.5 0 0 0 0-17Z" />
33
+ </SvgIcon>
34
+ );
35
+
36
+ const RadioCheckedIcon = (props) => (
37
+ <SvgIcon {...props}>
38
+ <path d="M12 2A10 10 0 1 1 2 12C2 6.477 6.477 2 12 2Zm0 1.5a8.5 8.5 0 1 0 0 17 8.5 8.5 0 0 0 0-17ZM12 7a5 5 0 1 1 0 10 5 5 0 0 1 0-10Z" />
39
+ </SvgIcon>
40
+ );
41
+
42
+ const RatingIcon = (props) => (
43
+ <SvgIcon {...props}>
44
+ <path d="M17.56,21 C17.4000767,21.0006435 17.2423316,20.9629218 17.1,20.89 L12,18.22 L6.9,20.89 C6.56213339,21.067663 6.15259539,21.0374771 5.8444287,20.8121966 C5.53626201,20.5869161 5.38323252,20.2058459 5.45,19.83 L6.45,14.2 L2.33,10.2 C2.06805623,9.93860108 1.9718844,9.55391377 2.08,9.2 C2.19824414,8.83742187 2.51242293,8.57366684 2.89,8.52 L8.59,7.69 L11.1,2.56 C11.2670864,2.21500967 11.6166774,1.99588989 12,1.99588989 C12.3833226,1.99588989 12.7329136,2.21500967 12.9,2.56 L15.44,7.68 L21.14,8.51 C21.5175771,8.56366684 21.8317559,8.82742187 21.95,9.19 C22.0581156,9.54391377 21.9619438,9.92860108 21.7,10.19 L17.58,14.19 L18.58,19.82 C18.652893,20.2027971 18.4967826,20.5930731 18.18,20.82 C17.9989179,20.9468967 17.7808835,21.010197 17.56,21 L17.56,21 Z" />
45
+ </SvgIcon>
46
+ );
47
+
48
+ const TreeViewCollapseIcon = (props) => (
49
+ <SvgIcon {...props}>
50
+ <path d="M18,3 C19.6568542,3 21,4.34314575 21,6 L21,6 L21,18 C21,19.6568542 19.6568542,21 18,21 L18,21 L6,21 C4.34314575,21 3,19.6568542 3,18 L3,18 L3,6 C3,4.34314575 4.34314575,3 6,3 L6,3 Z M18,5 L6,5 C5.44771525,5 5,5.44771525 5,6 L5,6 L5,18 C5,18.5522847 5.44771525,19 6,19 L6,19 L18,19 C18.5522847,19 19,18.5522847 19,18 L19,18 L19,6 C19,5.44771525 18.5522847,5 18,5 L18,5 Z M12,8 C12.5522847,8 13,8.44771525 13,9 L13,9 L13,11 L15,11 C15.5522847,11 16,11.4477153 16,12 C16,12.5522847 15.5522847,13 15,13 L15,13 L13,13 L13,15 C13,15.5522847 12.5522847,16 12,16 C11.4477153,16 11,15.5522847 11,15 L11,15 L11,13 L9,13 C8.44771525,13 8,12.5522847 8,12 C8,11.4477153 8.44771525,11 9,11 L9,11 L11,11 L11,9 C11,8.44771525 11.4477153,8 12,8 Z" />
51
+ </SvgIcon>
52
+ );
53
+
54
+ const TreeViewExpandIcon = (props) => (
55
+ <SvgIcon {...props}>
56
+ <path d="M18,3 C19.6568542,3 21,4.34314575 21,6 L21,6 L21,18 C21,19.6568542 19.6568542,21 18,21 L18,21 L6,21 C4.34314575,21 3,19.6568542 3,18 L3,18 L3,6 C3,4.34314575 4.34314575,3 6,3 L6,3 Z M18,5 L6,5 C5.44771525,5 5,5.44771525 5,6 L5,6 L5,18 C5,18.5522847 5.44771525,19 6,19 L6,19 L18,19 C18.5522847,19 19,18.5522847 19,18 L19,18 L19,6 C19,5.44771525 18.5522847,5 18,5 L18,5 Z M15,11 C15.5522847,11 16,11.4477153 16,12 C16,12.5522847 15.5522847,13 15,13 L15,13 L9,13 C8.44771525,13 8,12.5522847 8,12 C8,11.4477153 8.44771525,11 9,11 L9,11 Z" />
57
+ </SvgIcon>
58
+ );
59
+
60
+ const TreeViewEndIcon = (props) => (
61
+ <SvgIcon {...props}>
62
+ <path d="M18,3 C19.6568542,3 21,4.34314575 21,6 L21,6 L21,18 C21,19.6568542 19.6568542,21 18,21 L18,21 L6,21 C4.34314575,21 3,19.6568542 3,18 L3,18 L3,6 C3,4.34314575 4.34314575,3 6,3 L6,3 Z M18,5 L6,5 C5.44771525,5 5,5.44771525 5,6 L5,6 L5,18 C5,18.5522847 5.44771525,19 6,19 L6,19 L18,19 C18.5522847,19 19,18.5522847 19,18 L19,18 L19,6 C19,5.44771525 18.5522847,5 18,5 L18,5 Z M14,8.99420168 C14.2666375,8.99420168 14.5222334,9.10068735 14.71,9.29 C14.8993127,9.4777666 15.0057983,9.73336246 15.0057983,10 C15.0057983,10.2666375 14.8993127,10.5222334 14.71,10.71 L14.71,10.71 L13.41,12 L14.71,13.29 C14.8993127,13.4777666 15.0057983,13.7333625 15.0057983,14 C15.0057983,14.2666375 14.8993127,14.5222334 14.71,14.71 C14.5222334,14.8993127 14.2666375,15.0057983 14,15.0057983 C13.7333625,15.0057983 13.4777666,14.8993127 13.29,14.71 L13.29,14.71 L12,13.41 L10.71,14.71 C10.5222334,14.8993127 10.2666375,15.0057983 10,15.0057983 C9.73336246,15.0057983 9.4777666,14.8993127 9.29,14.71 C9.10068735,14.5222334 8.99420168,14.2666375 8.99420168,14 C8.99420168,13.7333625 9.10068735,13.4777666 9.29,13.29 L9.29,13.29 L10.59,12 L9.29,10.71 C8.89787783,10.3178778 8.89787783,9.68212217 9.29,9.29 C9.68212217,8.89787783 10.3178778,8.89787783 10.71,9.29 L10.71,9.29 L12,10.59 L13.29,9.29 C13.4777666,9.10068735 13.7333625,8.99420168 14,8.99420168 Z" />
63
+ </SvgIcon>
64
+ );
65
+
66
+ // ----------------------------------------------------------------------
67
+
68
+ export function defaultProps(theme) {
69
+ return {
70
+ MuiAlert: {
71
+ defaultProps: {
72
+ iconMapping: {
73
+ error: <Iconify icon="solar:danger-bold" width={24} />,
74
+ info: <Iconify icon="eva:info-fill" width={24} />,
75
+ success: <Iconify icon="eva:checkmark-circle-2-fill" width={24} />,
76
+ warning: <Iconify icon="eva:alert-triangle-fill" width={24} />,
77
+ },
78
+ },
79
+ },
80
+ MuiStack: {
81
+ defaultProps: {
82
+ useFlexGap: true,
83
+ },
84
+ },
85
+ MuiAppBar: {
86
+ defaultProps: {
87
+ color: "transparent",
88
+ },
89
+ },
90
+ MuiAvatarGroup: {
91
+ defaultProps: {
92
+ max: 4,
93
+ },
94
+ },
95
+ MuiButtonGroup: {
96
+ defaultProps: {
97
+ disableElevation: true,
98
+ },
99
+ },
100
+ MuiButton: {
101
+ defaultProps: {
102
+ color: "inherit",
103
+ disableElevation: true,
104
+ },
105
+ },
106
+ MuiCardHeader: {
107
+ defaultProps: {
108
+ titleTypographyProps: { variant: "h6" },
109
+ subheaderTypographyProps: {
110
+ variant: "body2",
111
+ marginTop: theme.spacing(0.5),
112
+ },
113
+ },
114
+ },
115
+ MuiChip: {
116
+ defaultProps: {
117
+ deleteIcon: <Iconify icon="solar:close-circle-bold" />,
118
+ },
119
+ },
120
+ MuiDialogActions: {
121
+ defaultProps: {
122
+ disableSpacing: true,
123
+ },
124
+ },
125
+ MuiFab: {
126
+ defaultProps: {
127
+ color: "primary",
128
+ },
129
+ },
130
+ MuiLink: {
131
+ defaultProps: {
132
+ underline: "hover",
133
+ },
134
+ },
135
+ MuiListItemText: {
136
+ defaultProps: {
137
+ primaryTypographyProps: {
138
+ typography: "subtitle2",
139
+ },
140
+ secondaryTypographyProps: {
141
+ component: "span",
142
+ },
143
+ },
144
+ },
145
+ MuiPaper: {
146
+ defaultProps: {
147
+ elevation: 0,
148
+ },
149
+ },
150
+ MuiSkeleton: {
151
+ defaultProps: {
152
+ animation: "wave",
153
+ variant: "rounded",
154
+ },
155
+ },
156
+ MuiFilledInput: {
157
+ defaultProps: {
158
+ disableUnderline: true,
159
+ },
160
+ },
161
+ MuiFormHelperText: {
162
+ defaultProps: {
163
+ component: "div",
164
+ },
165
+ },
166
+ MuiTab: {
167
+ defaultProps: {
168
+ disableRipple: true,
169
+ iconPosition: "start",
170
+ },
171
+ },
172
+ MuiTabs: {
173
+ defaultProps: {
174
+ textColor: "inherit",
175
+ variant: "scrollable",
176
+ allowScrollButtonsMobile: true,
177
+ },
178
+ },
179
+ MuiTablePagination: {
180
+ defaultProps: {
181
+ backIconButtonProps: {
182
+ size: "small",
183
+ },
184
+ nextIconButtonProps: {
185
+ size: "small",
186
+ },
187
+ },
188
+ },
189
+ MuiSlider: {
190
+ defaultProps: {
191
+ size: "small",
192
+ },
193
+ },
194
+ MuiAutocomplete: {
195
+ defaultProps: {
196
+ popupIcon: <ArrowDownIcon />,
197
+ },
198
+ },
199
+ MuiSelect: {
200
+ defaultProps: {
201
+ IconComponent: ArrowDownIcon,
202
+ },
203
+ },
204
+ MuiNativeSelect: {
205
+ defaultProps: {
206
+ IconComponent: ArrowDownIcon,
207
+ },
208
+ },
209
+ MuiCheckbox: {
210
+ defaultProps: {
211
+ size: "small",
212
+ icon: <CheckboxIcon />,
213
+ checkedIcon: <CheckboxCheckedIcon />,
214
+ indeterminateIcon: <CheckboxIndeterminateIcon />,
215
+ },
216
+ },
217
+ MuiRadio: {
218
+ defaultProps: {
219
+ size: "small",
220
+ icon: <RadioIcon />,
221
+ checkedIcon: <RadioCheckedIcon />,
222
+ },
223
+ },
224
+ MuiRating: {
225
+ defaultProps: {
226
+ emptyIcon: <RatingIcon />,
227
+ icon: <RatingIcon />,
228
+ },
229
+ },
230
+ MuiTreeView: {
231
+ defaultProps: {
232
+ defaultCollapseIcon: <TreeViewCollapseIcon />,
233
+ defaultExpandIcon: <TreeViewExpandIcon />,
234
+ defaultEndIcon: <TreeViewEndIcon />,
235
+ },
236
+ },
237
+ };
238
+ }
@@ -0,0 +1,100 @@
1
+ import { accordion } from "./components/accordion";
2
+ import { alert } from "./components/alert";
3
+ import { appBar } from "./components/appbar";
4
+ import { autocomplete } from "./components/autocomplete";
5
+ import { avatar } from "./components/avatar";
6
+ import { backdrop } from "./components/backdrop";
7
+ import { badge } from "./components/badge";
8
+ import { breadcrumbs } from "./components/breadcrumbs";
9
+ import { button } from "./components/button";
10
+ import { buttonGroup } from "./components/button-group";
11
+ import { card } from "./components/card";
12
+ import { checkbox } from "./components/checkbox";
13
+ import { chip } from "./components/chip";
14
+ import config from "../../config/config";
15
+ import { cssBaseline } from "./components/css-baseline";
16
+ import { dataGrid } from "./components/data-grid";
17
+ import { datePicker } from "./components/date-picker";
18
+ import { defaultProps } from "./default-props";
19
+ import { dialog } from "./components/dialog";
20
+ import { drawer } from "./components/drawer";
21
+ import { fab } from "./components/fab";
22
+ import { list } from "./components/list";
23
+ import { loadingButton } from "./components/loading-button";
24
+ import { menu } from "./components/menu";
25
+ import merge from "lodash/merge";
26
+ import { pagination } from "./components/pagination";
27
+ import { paper } from "./components/paper";
28
+ import { popover } from "./components/popover";
29
+ import { progress } from "./components/progress";
30
+ import { radio } from "./components/radio";
31
+ import { rating } from "./components/rating";
32
+ import { select } from "./components/select";
33
+ import { skeleton } from "./components/skeleton";
34
+ import { slider } from "./components/slider";
35
+ import { stepper } from "./components/stepper";
36
+ import { svgIcon } from "./components/svg-icon";
37
+ import { switches } from "./components/switch";
38
+ import { table } from "./components/table";
39
+ import { tabs } from "./components/tabs";
40
+ import { textField } from "./components/textfield";
41
+ import { timeline } from "./components/timeline";
42
+ import { toggleButton } from "./components/toggle-button";
43
+ import { tooltip } from "./components/tooltip";
44
+ import { treeView } from "./components/tree-view";
45
+ import { typography } from "./components/typography";
46
+
47
+ export function componentsOverrides(theme) {
48
+ const { theme: configTheme } = config().template;
49
+
50
+ const components = merge(
51
+ defaultProps(theme),
52
+ //
53
+ configTheme?.variants && configTheme?.variants(theme),
54
+ //
55
+ fab(theme),
56
+ tabs(theme),
57
+ chip(theme),
58
+ card(theme),
59
+ menu(theme),
60
+ list(theme),
61
+ badge(theme),
62
+ table(theme),
63
+ paper(theme),
64
+ alert(theme),
65
+ radio(theme),
66
+ select(theme),
67
+ button(theme),
68
+ rating(theme),
69
+ dialog(theme),
70
+ appBar(theme),
71
+ avatar(theme),
72
+ slider(theme),
73
+ drawer(theme),
74
+ stepper(theme),
75
+ tooltip(theme),
76
+ popover(theme),
77
+ svgIcon(theme),
78
+ switches(theme),
79
+ checkbox(theme),
80
+ dataGrid(theme),
81
+ skeleton(theme),
82
+ timeline(theme),
83
+ treeView(theme),
84
+ backdrop(theme),
85
+ progress(theme),
86
+ textField(theme),
87
+ accordion(theme),
88
+ typography(theme),
89
+ pagination(theme),
90
+ datePicker(theme),
91
+ buttonGroup(theme),
92
+ breadcrumbs(theme),
93
+ cssBaseline(theme),
94
+ autocomplete(theme),
95
+ toggleButton(theme),
96
+ loadingButton(theme)
97
+ );
98
+
99
+ return components;
100
+ }
@@ -0,0 +1,144 @@
1
+ import { alpha } from "@mui/material/styles";
2
+
3
+ // ----------------------------------------------------------------------
4
+
5
+ // SETUP COLORS
6
+
7
+ export const grey = {
8
+ 0: "#FFFFFF",
9
+ 100: "#F9FAFB",
10
+ 200: "#F4F6F8",
11
+ 300: "#DFE3E8",
12
+ 400: "#C4CDD5",
13
+ 500: "#919EAB",
14
+ 600: "#637381",
15
+ 700: "#454F5B",
16
+ 800: "#212B36",
17
+ 900: "#161C24",
18
+ };
19
+
20
+ export const primary = {
21
+ lighter: "#C8FAD6",
22
+ light: "#5BE49B",
23
+ main: "#00A76F",
24
+ dark: "#007867",
25
+ darker: "#004B50",
26
+ contrastText: "#FFFFFF",
27
+ };
28
+
29
+ export const secondary = {
30
+ lighter: "#EFD6FF",
31
+ light: "#C684FF",
32
+ main: "#8E33FF",
33
+ dark: "#5119B7",
34
+ darker: "#27097A",
35
+ contrastText: "#FFFFFF",
36
+ };
37
+
38
+ export const info = {
39
+ lighter: "#CAFDF5",
40
+ light: "#61F3F3",
41
+ main: "#00B8D9",
42
+ dark: "#006C9C",
43
+ darker: "#003768",
44
+ contrastText: "#FFFFFF",
45
+ };
46
+
47
+ export const success = {
48
+ lighter: "#D3FCD2",
49
+ light: "#77ED8B",
50
+ main: "#22C55E",
51
+ dark: "#118D57",
52
+ darker: "#065E49",
53
+ contrastText: "#ffffff",
54
+ };
55
+
56
+ export const warning = {
57
+ lighter: "#FFF5CC",
58
+ light: "#FFD666",
59
+ main: "#FFAB00",
60
+ dark: "#B76E00",
61
+ darker: "#7A4100",
62
+ contrastText: grey[800],
63
+ };
64
+
65
+ export const error = {
66
+ lighter: "#FFE9D5",
67
+ light: "#FFAC82",
68
+ main: "#FF5630",
69
+ dark: "#B71D18",
70
+ darker: "#7A0916",
71
+ contrastText: "#FFFFFF",
72
+ };
73
+
74
+ export const common = {
75
+ black: "#000000",
76
+ white: "#FFFFFF",
77
+ };
78
+
79
+ export const action = {
80
+ hover: alpha(grey[500], 0.08),
81
+ selected: alpha(grey[500], 0.16),
82
+ disabled: alpha(grey[500], 0.8),
83
+ disabledBackground: alpha(grey[500], 0.24),
84
+ focus: alpha(grey[500], 0.24),
85
+ hoverOpacity: 0.08,
86
+ disabledOpacity: 0.48,
87
+ };
88
+
89
+ const base = {
90
+ primary,
91
+ secondary,
92
+ info,
93
+ success,
94
+ warning,
95
+ error,
96
+ grey,
97
+ common,
98
+ divider: alpha(grey[500], 0.2),
99
+ action,
100
+ };
101
+
102
+ // ----------------------------------------------------------------------
103
+
104
+ export function palette(mode) {
105
+ const light = {
106
+ ...base,
107
+ mode: "light",
108
+ text: {
109
+ primary: grey[800],
110
+ secondary: grey[600],
111
+ disabled: grey[500],
112
+ },
113
+ background: {
114
+ paper: "#FFFFFF",
115
+ default: "#FFFFFF",
116
+ neutral: grey[200],
117
+ },
118
+ action: {
119
+ ...base.action,
120
+ active: grey[600],
121
+ },
122
+ };
123
+
124
+ const dark = {
125
+ ...base,
126
+ mode: "dark",
127
+ text: {
128
+ primary: "#FFFFFF",
129
+ secondary: grey[500],
130
+ disabled: grey[600],
131
+ },
132
+ background: {
133
+ paper: grey[800],
134
+ default: grey[900],
135
+ neutral: alpha(grey[500], 0.12),
136
+ },
137
+ action: {
138
+ ...base.action,
139
+ active: grey[500],
140
+ },
141
+ };
142
+
143
+ return mode === "light" ? light : dark;
144
+ }
@@ -0,0 +1,41 @@
1
+ import { alpha } from "@mui/material/styles";
2
+
3
+ import { common, grey } from "./palette";
4
+
5
+ // ----------------------------------------------------------------------
6
+
7
+ export function shadows(mode) {
8
+ const color = mode === "light" ? grey[500] : common.black;
9
+
10
+ const transparent1 = alpha(color, 0.2);
11
+ const transparent2 = alpha(color, 0.14);
12
+ const transparent3 = alpha(color, 0.12);
13
+
14
+ return [
15
+ "none",
16
+ `0px 2px 1px -1px ${transparent1},0px 1px 1px 0px ${transparent2},0px 1px 3px 0px ${transparent3}`,
17
+ `0px 3px 1px -2px ${transparent1},0px 2px 2px 0px ${transparent2},0px 1px 5px 0px ${transparent3}`,
18
+ `0px 3px 3px -2px ${transparent1},0px 3px 4px 0px ${transparent2},0px 1px 8px 0px ${transparent3}`,
19
+ `0px 2px 4px -1px ${transparent1},0px 4px 5px 0px ${transparent2},0px 1px 10px 0px ${transparent3}`,
20
+ `0px 3px 5px -1px ${transparent1},0px 5px 8px 0px ${transparent2},0px 1px 14px 0px ${transparent3}`,
21
+ `0px 3px 5px -1px ${transparent1},0px 6px 10px 0px ${transparent2},0px 1px 18px 0px ${transparent3}`,
22
+ `0px 4px 5px -2px ${transparent1},0px 7px 10px 1px ${transparent2},0px 2px 16px 1px ${transparent3}`,
23
+ `0px 5px 5px -3px ${transparent1},0px 8px 10px 1px ${transparent2},0px 3px 14px 2px ${transparent3}`,
24
+ `0px 5px 6px -3px ${transparent1},0px 9px 12px 1px ${transparent2},0px 3px 16px 2px ${transparent3}`,
25
+ `0px 6px 6px -3px ${transparent1},0px 10px 14px 1px ${transparent2},0px 4px 18px 3px ${transparent3}`,
26
+ `0px 6px 7px -4px ${transparent1},0px 11px 15px 1px ${transparent2},0px 4px 20px 3px ${transparent3}`,
27
+ `0px 7px 8px -4px ${transparent1},0px 12px 17px 2px ${transparent2},0px 5px 22px 4px ${transparent3}`,
28
+ `0px 7px 8px -4px ${transparent1},0px 13px 19px 2px ${transparent2},0px 5px 24px 4px ${transparent3}`,
29
+ `0px 7px 9px -4px ${transparent1},0px 14px 21px 2px ${transparent2},0px 5px 26px 4px ${transparent3}`,
30
+ `0px 8px 9px -5px ${transparent1},0px 15px 22px 2px ${transparent2},0px 6px 28px 5px ${transparent3}`,
31
+ `0px 8px 10px -5px ${transparent1},0px 16px 24px 2px ${transparent2},0px 6px 30px 5px ${transparent3}`,
32
+ `0px 8px 11px -5px ${transparent1},0px 17px 26px 2px ${transparent2},0px 6px 32px 5px ${transparent3}`,
33
+ `0px 9px 11px -5px ${transparent1},0px 18px 28px 2px ${transparent2},0px 7px 34px 6px ${transparent3}`,
34
+ `0px 9px 12px -6px ${transparent1},0px 19px 29px 2px ${transparent2},0px 7px 36px 6px ${transparent3}`,
35
+ `0px 10px 13px -6px ${transparent1},0px 20px 31px 3px ${transparent2},0px 8px 38px 7px ${transparent3}`,
36
+ `0px 10px 13px -6px ${transparent1},0px 21px 33px 3px ${transparent2},0px 8px 40px 7px ${transparent3}`,
37
+ `0px 10px 14px -6px ${transparent1},0px 22px 35px 3px ${transparent2},0px 8px 42px 7px ${transparent3}`,
38
+ `0px 11px 14px -7px ${transparent1},0px 23px 36px 3px ${transparent2},0px 9px 44px 8px ${transparent3}`,
39
+ `0px 11px 15px -7px ${transparent1},0px 24px 38px 3px ${transparent2},0px 9px 46px 8px ${transparent3}`,
40
+ ];
41
+ }
@@ -0,0 +1,107 @@
1
+ // ----------------------------------------------------------------------
2
+
3
+ export function remToPx(value) {
4
+ return Math.round(parseFloat(value) * 16);
5
+ }
6
+
7
+ export function pxToRem(value) {
8
+ return `${value / 16}rem`;
9
+ }
10
+
11
+ export function responsiveFontSizes({ sm, md, lg }) {
12
+ return {
13
+ "@media (min-width:600px)": {
14
+ fontSize: pxToRem(sm),
15
+ },
16
+ "@media (min-width:900px)": {
17
+ fontSize: pxToRem(md),
18
+ },
19
+ "@media (min-width:1200px)": {
20
+ fontSize: pxToRem(lg),
21
+ },
22
+ };
23
+ }
24
+
25
+ export const primaryFont = "Public Sans, sans-serif";
26
+ export const secondaryFont = "Barlow, sans-serif";
27
+
28
+ // ----------------------------------------------------------------------
29
+
30
+ export const typography = {
31
+ fontFamily: primaryFont,
32
+ fontSecondaryFamily: secondaryFont,
33
+ fontWeightRegular: 400,
34
+ fontWeightMedium: 500,
35
+ fontWeightSemiBold: 600,
36
+ fontWeightBold: 700,
37
+ h1: {
38
+ fontWeight: 800,
39
+ lineHeight: 80 / 64,
40
+ fontSize: pxToRem(40),
41
+ ...responsiveFontSizes({ sm: 52, md: 58, lg: 64 }),
42
+ },
43
+ h2: {
44
+ fontWeight: 800,
45
+ lineHeight: 64 / 48,
46
+ fontSize: pxToRem(32),
47
+ ...responsiveFontSizes({ sm: 40, md: 44, lg: 48 }),
48
+ },
49
+ h3: {
50
+ fontWeight: 700,
51
+ lineHeight: 1.5,
52
+ fontSize: pxToRem(24),
53
+ ...responsiveFontSizes({ sm: 26, md: 30, lg: 32 }),
54
+ },
55
+ h4: {
56
+ fontWeight: 700,
57
+ lineHeight: 1.5,
58
+ fontSize: pxToRem(20),
59
+ ...responsiveFontSizes({ sm: 20, md: 24, lg: 24 }),
60
+ },
61
+ h5: {
62
+ fontWeight: 700,
63
+ lineHeight: 1.5,
64
+ fontSize: pxToRem(18),
65
+ ...responsiveFontSizes({ sm: 19, md: 20, lg: 20 }),
66
+ },
67
+ h6: {
68
+ fontWeight: 700,
69
+ lineHeight: 28 / 18,
70
+ fontSize: pxToRem(17),
71
+ ...responsiveFontSizes({ sm: 18, md: 18, lg: 18 }),
72
+ },
73
+ subtitle1: {
74
+ fontWeight: 600,
75
+ lineHeight: 1.5,
76
+ fontSize: pxToRem(16),
77
+ },
78
+ subtitle2: {
79
+ fontWeight: 600,
80
+ lineHeight: 22 / 14,
81
+ fontSize: pxToRem(14),
82
+ },
83
+ body1: {
84
+ lineHeight: 1.5,
85
+ fontSize: pxToRem(16),
86
+ },
87
+ body2: {
88
+ lineHeight: 22 / 14,
89
+ fontSize: pxToRem(14),
90
+ },
91
+ caption: {
92
+ lineHeight: 1.5,
93
+ fontSize: pxToRem(12),
94
+ },
95
+ overline: {
96
+ fontWeight: 700,
97
+ lineHeight: 1.5,
98
+ fontSize: pxToRem(12),
99
+ textTransform: "uppercase",
100
+ },
101
+ button: {
102
+ fontWeight: 700,
103
+ lineHeight: 24 / 14,
104
+ fontSize: pxToRem(14),
105
+ textTransform: "unset",
106
+ },
107
+ };
@@ -0,0 +1,16 @@
1
+ // ----------------------------------------------------------------------
2
+
3
+ export function flattenArray(list, key = "children") {
4
+ let children = [];
5
+
6
+ const flatten = list?.map((item) => {
7
+ if (item[key] && item[key].length) {
8
+ children = [...children, ...item[key]];
9
+ }
10
+ return item;
11
+ });
12
+
13
+ return flatten?.concat(
14
+ children.length ? flattenArray(children, key) : children
15
+ );
16
+ }
@@ -0,0 +1,37 @@
1
+ import numeral from "numeral";
2
+
3
+ // ----------------------------------------------------------------------
4
+
5
+ export function fNumber(number) {
6
+ return numeral(number).format();
7
+ }
8
+
9
+ export function fCurrency(number) {
10
+ const format = number ? numeral(number).format("$0,0.00") : "";
11
+
12
+ return result(format, ".00");
13
+ }
14
+
15
+ export function fPercent(number) {
16
+ const format = number ? numeral(Number(number) / 100).format("0.0%") : "";
17
+
18
+ return result(format, ".0");
19
+ }
20
+
21
+ export function fShortenNumber(number) {
22
+ const format = number ? numeral(number).format("0.00a") : "";
23
+
24
+ return result(format, ".00");
25
+ }
26
+
27
+ export function fData(number) {
28
+ const format = number ? numeral(number).format("0.0 b") : "";
29
+
30
+ return result(format, ".0");
31
+ }
32
+
33
+ function result(format, key = ".00") {
34
+ const isInteger = format.includes(key);
35
+
36
+ return isInteger ? format.replace(key, "") : format;
37
+ }