@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 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--logos" width="31.88" height="32" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 257"><defs><linearGradient id="IconifyId1813088fe1fbc01fb466" x1="-.828%" x2="57.636%" y1="7.652%" y2="78.411%"><stop offset="0%" stop-color="#41D1FF"></stop><stop offset="100%" stop-color="#BD34FE"></stop></linearGradient><linearGradient id="IconifyId1813088fe1fbc01fb467" x1="43.376%" x2="50.316%" y1="2.242%" y2="89.03%"><stop offset="0%" stop-color="#FFEA83"></stop><stop offset="8.333%" stop-color="#FFDD35"></stop><stop offset="100%" stop-color="#FFA800"></stop></linearGradient></defs><path fill="url(#IconifyId1813088fe1fbc01fb466)" d="M255.153 37.938L134.897 252.976c-2.483 4.44-8.862 4.466-11.382.048L.875 37.958c-2.746-4.814 1.371-10.646 6.827-9.67l120.385 21.517a6.537 6.537 0 0 0 2.322-.004l117.867-21.483c5.438-.991 9.574 4.796 6.877 9.62Z"></path><path fill="url(#IconifyId1813088fe1fbc01fb467)" d="M185.432.063L96.44 17.501a3.268 3.268 0 0 0-2.634 3.014l-5.474 92.456a3.268 3.268 0 0 0 3.997 3.378l24.777-5.718c2.318-.535 4.413 1.507 3.936 3.838l-7.361 36.047c-.495 2.426 1.782 4.5 4.151 3.78l15.304-4.649c2.372-.72 4.652 1.36 4.15 3.788l-11.698 56.621c-.732 3.542 3.979 5.473 5.943 2.437l1.313-2.028l72.516-144.72c1.215-2.423-.88-5.186-3.54-4.672l-25.505 4.922c-2.396.462-4.435-1.77-3.759-4.114l16.646-57.705c.677-2.35-1.37-4.583-3.769-4.113Z"></path></svg>
@@ -0,0 +1,19 @@
1
+ import React from "react";
2
+
3
+ const ContextStore = React.createContext();
4
+ ContextStore.displayName = "ContextStore";
5
+
6
+ const useContext = () => React.useContext(ContextStore);
7
+
8
+ const ContextProvider = ({ children, state, reducer }) => {
9
+ const [contextState, contextDispatch] = React.useReducer(reducer, state);
10
+
11
+ return (
12
+ <ContextStore.Provider value={[contextState, contextDispatch]}>
13
+ {children}
14
+ </ContextStore.Provider>
15
+ );
16
+ };
17
+
18
+ export { useContext };
19
+ export default ContextProvider;
@@ -0,0 +1,45 @@
1
+ import MuiAlert from "@mui/material/Alert";
2
+ import React from "react";
3
+ import Snackbar from "@mui/material/Snackbar";
4
+
5
+ import { publish, useEvent } from "@nucleoidai/react-event";
6
+
7
+ const Alert = React.forwardRef(function Alert(props, ref) {
8
+ return <MuiAlert elevation={6} ref={ref} variant="filled" {...props} />;
9
+ });
10
+
11
+ export default function GlobalSnackMessage() {
12
+ const [globalMessage] = useEvent("GLOBAL_MESSAGE_POSTED", {
13
+ status: false,
14
+ message: "",
15
+ severity: "success",
16
+ });
17
+
18
+ const handleClose = () => {
19
+ publish("GLOBAL_MESSAGE_POSTED", {
20
+ status: false,
21
+ });
22
+ };
23
+
24
+ if (globalMessage.status) {
25
+ return (
26
+ <Snackbar
27
+ sx={{ zIndex: 999999999 }}
28
+ open={true}
29
+ autoHideDuration={6000}
30
+ anchorOrigin={{ vertical: "bottom", horizontal: "center" }}
31
+ onClose={handleClose}
32
+ >
33
+ <Alert
34
+ onClose={handleClose}
35
+ severity={globalMessage.severity}
36
+ sx={{ width: "100%" }}
37
+ >
38
+ {globalMessage.message}
39
+ </Alert>
40
+ </Snackbar>
41
+ );
42
+ } else {
43
+ return null;
44
+ }
45
+ }
@@ -0,0 +1 @@
1
+ export { default } from "./GlobalSnackMessage";
@@ -0,0 +1,3 @@
1
+ const styles = {};
2
+
3
+ export default styles;
@@ -0,0 +1,76 @@
1
+ import "./global.css";
2
+
3
+ import ContextProvider from "./ContextProvider/ContextProvider";
4
+ import GlobalSnackMessage from "./GlobalSnackMessage/GlobalSnackMessage";
5
+ import React from "react";
6
+ import RouteManager from "./RouteManager/RouteManager";
7
+ import { SettingsDrawer } from "./components/settings";
8
+ import { SettingsProvider } from "./components/settings";
9
+ import { SnackbarProvider } from "notistack";
10
+ import ThemeProvider from "./theme";
11
+ import config from "./config/config";
12
+ import http from "./http";
13
+ import { init } from "./config/config";
14
+ import oauth from "./http/oauth";
15
+
16
+ import { BrowserRouter, Navigate } from "react-router-dom";
17
+ import { initialState, reducer } from "./context/reducer";
18
+ import { publish, subscribe, useEvent } from "@nucleoidai/react-event";
19
+
20
+ init();
21
+
22
+ window["@nucleoidai"] = {
23
+ Event: { publish, subscribe, useEvent },
24
+ };
25
+
26
+ setTimeout(() => {
27
+ const { api } = config();
28
+
29
+ oauth.defaults.baseURL = api;
30
+ http.defaults.baseURL = api;
31
+ }, 0);
32
+
33
+ const Platform = ({ routes }) => {
34
+ const [configInitError] = useEvent("CONFIG_INITIALIZE_FAILED", {
35
+ error: "",
36
+ file: "",
37
+ });
38
+
39
+ const { base, template } = config();
40
+ return (
41
+ <>
42
+ <SettingsProvider
43
+ defaultSettings={{
44
+ themeMode: template.theme.mode || "dark",
45
+ themeDirection: "ltr",
46
+ themeContrast: "default",
47
+ themeLayout: "vertical",
48
+ themeColorPresets: template.theme.colorPresets || "default",
49
+ themeStretch: false,
50
+ }}
51
+ >
52
+ <ThemeProvider>
53
+ <BrowserRouter basename={base}>
54
+ {configInitError.error !== "" && (
55
+ <Navigate to="/config-error" state={configInitError} />
56
+ )}
57
+ <ContextProvider reducer={reducer} state={initialState}>
58
+ <SnackbarProvider
59
+ anchorOrigin={{
60
+ vertical: "top",
61
+ horizontal: "right",
62
+ }}
63
+ >
64
+ <SettingsDrawer />
65
+ <GlobalSnackMessage />
66
+ <RouteManager routes={routes} />
67
+ </SnackbarProvider>
68
+ </ContextProvider>
69
+ </BrowserRouter>
70
+ </ThemeProvider>
71
+ </SettingsProvider>
72
+ </>
73
+ );
74
+ };
75
+
76
+ export default Platform;
@@ -0,0 +1,56 @@
1
+ import { Route, Routes } from "react-router-dom";
2
+
3
+ import Callback from "../pages/Callback";
4
+ import CompactLayout from "../layouts/CompactLayout";
5
+ import ConfigError from "../pages/ConfigError";
6
+ import { HelmetProvider } from "react-helmet-async";
7
+ import LoginPage from "../pages/LoginPage";
8
+ import NotFoundPage from "../pages/404";
9
+ import React from "react";
10
+ import classicLoginLayout from "../layouts/auth/classic";
11
+ import config from "../config/config";
12
+ import modernLoginLayout from "../layouts/auth/modern";
13
+
14
+ export default function RouteManager({ routes }) {
15
+ const loginConfig = config().template?.login;
16
+
17
+ const isLoginConfigured = config().project && loginConfig;
18
+
19
+ const LoginLayout =
20
+ loginConfig?.variant === "classic" ? classicLoginLayout : modernLoginLayout;
21
+
22
+ return (
23
+ <HelmetProvider>
24
+ <Routes>
25
+ {isLoginConfigured && (
26
+ <>
27
+ <Route
28
+ path="/login"
29
+ element={<LoginLayout image={loginConfig.image} />}
30
+ >
31
+ <Route index element={<LoginPage />} />
32
+ </Route>
33
+ <Route path="/callback" element={<Callback />} />
34
+ </>
35
+ )}
36
+
37
+ {routes.map((route, i) => (
38
+ <Route key={i} path="/" element={route.container}>
39
+ {route.childs.map((child, j) => (
40
+ <Route key={j} path="/" element={child.layout}>
41
+ {child.pages.map((page, k) => (
42
+ <Route key={k} path={page.path} element={page.element} />
43
+ ))}
44
+ </Route>
45
+ ))}
46
+ </Route>
47
+ ))}
48
+
49
+ <Route path="*" element={<CompactLayout />}>
50
+ <Route path="*" element={<NotFoundPage />} />
51
+ </Route>
52
+ <Route path="/config-error" element={<ConfigError />} />
53
+ </Routes>
54
+ </HelmetProvider>
55
+ );
56
+ }
@@ -0,0 +1 @@
1
+ export { default } from "./RouteManager";
@@ -0,0 +1,31 @@
1
+ import Box from "@mui/material/Box";
2
+ import React from "react";
3
+ import { memo } from "react";
4
+
5
+ // ----------------------------------------------------------------------
6
+
7
+ function AvatarShape({ sx, ...other }) {
8
+ return (
9
+ <Box
10
+ component="svg"
11
+ width={144}
12
+ height={62}
13
+ fill="none"
14
+ viewBox="0 0 144 62"
15
+ xmlns="http://www.w3.org/2000/svg"
16
+ sx={{
17
+ color: "background.paper",
18
+ ...sx,
19
+ }}
20
+ {...other}
21
+ >
22
+ <path
23
+ d="m111.34 23.88c-10.62-10.46-18.5-23.88-38.74-23.88h-1.2c-20.24 0-28.12 13.42-38.74 23.88-7.72 9.64-19.44 11.74-32.66 12.12v26h144v-26c-13.22-.38-24.94-2.48-32.66-12.12z"
24
+ fill="currentColor"
25
+ fillRule="evenodd"
26
+ />
27
+ </Box>
28
+ );
29
+ }
30
+
31
+ export default memo(AvatarShape);
@@ -0,0 +1,37 @@
1
+ import React from "react";
2
+ import { memo } from "react";
3
+ import { useTheme } from "@mui/material/styles";
4
+
5
+ // ----------------------------------------------------------------------
6
+
7
+ function BackgroundShape() {
8
+ const theme = useTheme();
9
+
10
+ const PRIMARY_MAIN = theme.palette.primary.main;
11
+
12
+ return (
13
+ <>
14
+ <defs>
15
+ <linearGradient
16
+ id="BG"
17
+ x1="19.496%"
18
+ x2="77.479%"
19
+ y1="71.822%"
20
+ y2="16.69%"
21
+ >
22
+ <stop offset="0%" stopColor={PRIMARY_MAIN} />
23
+ <stop offset="100%" stopColor={PRIMARY_MAIN} stopOpacity="0" />
24
+ </linearGradient>
25
+ </defs>
26
+
27
+ <path
28
+ fill="url(#BG)"
29
+ fillRule="nonzero"
30
+ d="M0 198.78c0 41.458 14.945 79.236 39.539 107.786 28.214 32.765 69.128 53.365 114.734 53.434a148.44 148.44 0 0056.495-11.036c9.051-3.699 19.182-3.274 27.948 1.107a75.779 75.779 0 0033.957 8.01c5.023 0 9.942-.494 14.7-1.433 13.58-2.67 25.94-8.99 36.09-17.94 6.378-5.627 14.547-8.456 22.897-8.446h.142c27.589 0 53.215-8.732 74.492-23.696 19.021-13.36 34.554-31.696 44.904-53.224C474.92 234.58 480 213.388 480 190.958c0-76.93-59.774-139.305-133.498-139.305-7.516 0-14.88.663-22.063 1.899C305.418 21.42 271.355 0 232.499 0a103.651 103.651 0 00-45.88 10.661c-13.24 6.487-25.011 15.705-34.64 26.939-32.698.544-62.931 11.69-87.676 30.291C25.351 97.155 0 144.882 0 198.781z"
31
+ opacity="0.2"
32
+ />
33
+ </>
34
+ );
35
+ }
36
+
37
+ export default memo(BackgroundShape);
@@ -0,0 +1,335 @@
1
+ import Box from "@mui/material/Box";
2
+ import React from "react";
3
+ import { memo } from "react";
4
+ import { useTheme } from "@mui/material/styles";
5
+
6
+ // ----------------------------------------------------------------------
7
+
8
+ function BookingIllustration({ ...other }) {
9
+ const theme = useTheme();
10
+
11
+ const PRIMARY_LIGHTER = theme.palette.primary.lighter;
12
+
13
+ const PRIMARY_LIGHT = theme.palette.primary.light;
14
+
15
+ const PRIMARY_MAIN = theme.palette.primary.main;
16
+
17
+ const PRIMARY_DARK = theme.palette.primary.dark;
18
+
19
+ const PRIMARY_DARKER = theme.palette.primary.darker;
20
+
21
+ return (
22
+ <Box
23
+ component="svg"
24
+ width="100%"
25
+ height="100%"
26
+ viewBox="0 0 200 200"
27
+ xmlns="http://www.w3.org/2000/svg"
28
+ {...other}
29
+ >
30
+ <path
31
+ fill="#FFFFFF"
32
+ d="M141.968 167.139H48.764a11.932 11.932 0 01-11.921-11.921V45.758a11.935 11.935 0 0111.921-11.922h86.712l18.414 14.677v106.705a11.937 11.937 0 01-11.922 11.921z"
33
+ />
34
+
35
+ <path
36
+ fill="#C4CDD5"
37
+ d="M122.521 69.096h-62.5a1.986 1.986 0 110-3.97h62.5a1.984 1.984 0 110 3.97zM130.711 75.796h-70.69a1.985 1.985 0 010-3.97h70.69a1.98 1.98 0 011.404.581 1.992 1.992 0 01.581 1.404 1.98 1.98 0 01-1.226 1.834c-.24.1-.499.151-.759.151z"
38
+ />
39
+
40
+ <path
41
+ fill={PRIMARY_MAIN}
42
+ d="M122.521 99.123h-62.5a1.986 1.986 0 110-3.97h62.5a1.984 1.984 0 110 3.97zM130.711 105.823h-70.69a1.98 1.98 0 01-1.834-1.226 1.986 1.986 0 011.835-2.745h70.689a1.995 1.995 0 011.404.582 1.988 1.988 0 010 2.807 1.99 1.99 0 01-1.404.582z"
43
+ />
44
+
45
+ <path
46
+ fill="#DFE3E8"
47
+ d="M122.522 129.149h-62.5a1.986 1.986 0 110-3.97h62.5a1.985 1.985 0 010 3.97zM130.711 135.85h-70.69a1.985 1.985 0 110-3.971h70.69c.526 0 1.031.209 1.403.582a1.981 1.981 0 010 2.807 1.986 1.986 0 01-1.403.582zM153.531 48.986h-14.424a3.973 3.973 0 01-3.971-3.971V34.361a.246.246 0 01.14-.223.25.25 0 01.262.029l18.147 14.376a.25.25 0 01.081.276.249.249 0 01-.235.166z"
48
+ />
49
+
50
+ <path
51
+ fill="#919EAB"
52
+ fillOpacity="0.24"
53
+ d="M63.977 43.25A28.25 28.25 0 1135.727 15a28.26 28.26 0 0128.25 28.25z"
54
+ />
55
+
56
+ <path
57
+ fill={PRIMARY_LIGHTER}
58
+ d="M62.975 43.249A27.249 27.249 0 1135.726 16a27.258 27.258 0 0127.25 27.249z"
59
+ />
60
+
61
+ <mask
62
+ id="mask0"
63
+ width="55"
64
+ height="55"
65
+ x="8"
66
+ y="16"
67
+ maskUnits="userSpaceOnUse"
68
+ >
69
+ <path
70
+ fill="#fff"
71
+ d="M62.975 43.249A27.249 27.249 0 1135.726 16a27.258 27.258 0 0127.25 27.249z"
72
+ />
73
+ </mask>
74
+ <g mask="url(#mask0)">
75
+ <path
76
+ fill="#FBCDBE"
77
+ d="M36.143 29.428a9.6 9.6 0 019.6 9.6v1.057a2.058 2.058 0 011.714 2.029v2.4a2.058 2.058 0 01-1.767 2.037 9.606 9.606 0 01-5.433 7.668v3.152h.686c6.817 0 12.343 5.526 12.343 12.343v1.543H19v-1.543c0-6.817 5.526-12.343 12.343-12.343h.686V54.22a9.607 9.607 0 01-5.434-7.668 2.058 2.058 0 01-1.766-2.037v-2.4c0-1.02.74-1.866 1.714-2.029v-1.057a9.6 9.6 0 019.6-9.6z"
78
+ />
79
+
80
+ <path
81
+ fill={PRIMARY_DARK}
82
+ d="M27.743 58.63c0 2.792 3.799 5.054 8.486 5.054 4.686 0 8.485-2.262 8.485-5.053a3.08 3.08 0 00-.078-.689c5.013 1.57 8.65 6.25 8.65 11.78v1.535H19v-1.534c0-5.598 3.727-10.326 8.834-11.837-.06.243-.091.492-.091.745z"
83
+ />
84
+
85
+ <path
86
+ fill={PRIMARY_LIGHT}
87
+ d="M27.743 58.63c0 2.792 3.799 5.054 8.486 5.054 4.686 0 8.485-2.262 8.485-5.053a3.08 3.08 0 00-.078-.689c5.013 1.57 8.65 6.25 8.65 11.78v1.535H19v-1.534c0-5.598 3.727-10.326 8.834-11.837-.06.243-.091.492-.091.745z"
88
+ />
89
+
90
+ <path
91
+ fill={PRIMARY_DARK}
92
+ d="M31.857 48.904c.242 1.65 2.068 2.981 4.285 2.981 2.224 0 4.054-1.34 4.286-3.13.018-.069-.038-.298-.372-.298H32.23c-.307 0-.395.212-.373.447z"
93
+ opacity="0.24"
94
+ />
95
+
96
+ <path
97
+ fill={PRIMARY_DARK}
98
+ fillRule="evenodd"
99
+ d="M34.085 45.542c0 .758.922 1.372 2.058 1.372 1.136 0 2.057-.614 2.057-1.372"
100
+ clipRule="evenodd"
101
+ opacity="0.24"
102
+ />
103
+
104
+ <path
105
+ fill={PRIMARY_DARK}
106
+ d="M31.685 43.485a1.029 1.029 0 100-2.057 1.029 1.029 0 000 2.057zM40.6 43.485a1.029 1.029 0 100-2.057 1.029 1.029 0 000 2.057zM29.223 40.255c.67-.944 2.51-1.474 4.095-1.084a.343.343 0 00.164-.666c-1.84-.452-3.971.161-4.819 1.353a.343.343 0 10.56.397zM43.063 40.255c-.67-.944-2.51-1.474-4.096-1.084a.343.343 0 11-.163-.666c1.84-.452 3.97.161 4.818 1.353a.343.343 0 11-.559.397z"
107
+ />
108
+
109
+ <path
110
+ fill={PRIMARY_MAIN}
111
+ d="M36.143 26.857c6.438 0 11.657 5.219 11.657 11.657v5.272c.15 1.68.29 2.858.421 3.532.236 1.218.976.816.976 2.548 0 1.732-.742 2.314-.745 3.855-.003 1.54 2.64 2.765 2.64 4.72 0 1.956-1.213 11.183-13.307 11.183-2.584 0-4.784-.735-6.602-2.205.117 1.113.228 2.392.331 3.838h-8.057c.16-4.075-1.248-6.354-1.248-10.895 0-4.541 2.337-11.146 2.277-12.762l.01-.359c-.007-.165-.01-.331-.01-.498v-8.229c0-.68.058-1.348.17-1.997l.001-.06.007.013c.967-5.463 5.738-9.613 11.479-9.613zm.086 5.486h-.172a9.343 9.343 0 00-9.343 9.342v3.943a9.343 9.343 0 009.343 9.343h.172a9.343 9.343 0 009.343-9.343v-3.943a9.343 9.343 0 00-9.343-9.342z"
112
+ />
113
+
114
+ <path
115
+ fill={PRIMARY_DARK}
116
+ fillRule="evenodd"
117
+ d="M36.143 28.742c5.87 0 10.628 4.72 10.628 10.543 0 .671-.063 1.328-.184 1.964-.272-5.533-4.844-9.935-10.444-9.935-5.6 0-10.172 4.402-10.445 9.935a10.5 10.5 0 01-.184-1.964c0-5.822 4.759-10.543 10.629-10.543z"
118
+ clipRule="evenodd"
119
+ />
120
+
121
+ <path
122
+ fill={PRIMARY_DARK}
123
+ fillRule="evenodd"
124
+ d="M47.399 59.17c.024.054.047.11.067.167.776 2.132-1.384 4.876-4.826 6.128-3.44 1.253-6.86.54-7.636-1.592a2.559 2.559 0 01-.056-.173c1.405.97 4.181 1.016 7.04-.025 2.855-1.04 4.95-2.854 5.408-4.497l.003-.009zm-1.99-2.631l.029.131c.293 1.662-2.27 3.503-5.723 4.112s-6.49-.245-6.784-1.907a1.44 1.44 0 01-.017-.133c1.112.854 3.685 1.15 6.555.644 2.865-.505 5.179-1.66 5.935-2.841l.004-.006zm.334-13.482V47a9.343 9.343 0 01-9.343 9.342h-.515A9.343 9.343 0 0126.543 47v-3.943c0-.634.063-1.253.183-1.852-.008.16-.012.32-.012.48v3.943a9.343 9.343 0 009.343 9.343h.171a9.343 9.343 0 009.343-9.343v-3.943c0-.16-.004-.32-.012-.48a9.38 9.38 0 01.184 1.852z"
125
+ clipRule="evenodd"
126
+ opacity="0.9"
127
+ />
128
+ </g>
129
+ <path
130
+ fill="#919EAB"
131
+ fillOpacity="0.24"
132
+ d="M195.516 99.234a28.263 28.263 0 01-19.503 26.869c-.17.054-.339.108-.511.159a27.815 27.815 0 01-6.4 1.161 28.16 28.16 0 01-11.436-1.613 28.257 28.257 0 01-18.407-22.832 28.253 28.253 0 1156.257-3.744z"
133
+ />
134
+
135
+ <path
136
+ fill={PRIMARY_LIGHTER}
137
+ d="M194.514 99.233a27.256 27.256 0 01-18.812 25.917c-.164.052-.327.104-.493.153a26.765 26.765 0 01-6.173 1.12 27.206 27.206 0 01-22.99-10.083 27.258 27.258 0 01-3.745-28.04 27.255 27.255 0 0123.152-16.255 27.254 27.254 0 0129.061 27.188z"
138
+ />
139
+
140
+ <mask
141
+ id="mask1"
142
+ width="55"
143
+ height="56"
144
+ x="140"
145
+ y="71"
146
+ maskUnits="userSpaceOnUse"
147
+ >
148
+ <path
149
+ fill="#fff"
150
+ d="M194.514 99.233a27.256 27.256 0 01-18.812 25.917c-.164.052-.327.104-.493.153a26.765 26.765 0 01-6.173 1.12 27.206 27.206 0 01-22.99-10.083 27.258 27.258 0 01-3.745-28.04 27.255 27.255 0 0123.152-16.255 27.254 27.254 0 0129.061 27.188z"
151
+ />
152
+ </mask>
153
+
154
+ <g mask="url(#mask1)">
155
+ <path
156
+ fill="#FBCDBE"
157
+ d="M166.886 85.428c5.301 0 9.6 4.298 9.6 9.6v1.057a2.057 2.057 0 011.714 2.029v2.4a2.058 2.058 0 01-1.767 2.037 9.606 9.606 0 01-5.433 7.668v3.152h.686c6.816 0 12.342 5.526 12.342 12.343v1.543h-34.285v-1.543c0-6.817 5.526-12.343 12.343-12.343h.685v-3.152a9.606 9.606 0 01-5.433-7.668 2.058 2.058 0 01-1.767-2.037v-2.4c0-1.02.742-1.866 1.715-2.029v-1.057a9.6 9.6 0 019.6-9.6z"
158
+ />
159
+
160
+ <path
161
+ fill={PRIMARY_LIGHTER}
162
+ d="M171.686 113.38c6.816 0 12.342 5.526 12.342 12.343v1.534h-34.285v-1.534c0-6.817 5.526-12.343 12.343-12.343h.204c-.022.169-.033.34-.033.514 0 2.367 2.072 4.286 4.629 4.286 2.556 0 4.628-1.919 4.628-4.286 0-.174-.011-.345-.033-.514h.205z"
163
+ />
164
+
165
+ <path
166
+ fill={PRIMARY_MAIN}
167
+ fillRule="evenodd"
168
+ d="M160.714 120.143c0 2.607.336 5.043.919 7.114h-11.891v-1.534c0-6.632 5.231-12.043 11.792-12.331-.522 1.99-.82 4.294-.82 6.751zm23.314 5.58v1.534h-11.719c.583-2.071.919-4.507.919-7.114 0-2.453-.298-4.754-.818-6.742 6.479.375 11.618 5.748 11.618 12.322z"
169
+ clipRule="evenodd"
170
+ />
171
+
172
+ <path
173
+ fill={PRIMARY_LIGHTER}
174
+ fillRule="evenodd"
175
+ d="M175.285 123.143l1.638-1.229a.686.686 0 01.833.007l1.129.879-3.6.343z"
176
+ clipRule="evenodd"
177
+ />
178
+
179
+ <path
180
+ fill={PRIMARY_DARKER}
181
+ fillRule="evenodd"
182
+ d="M161.571 113.2c-.686 3.314-.4 8 .857 14.057h-2.743l-2.4-6.172 1.029-1.542-1.029-1.029 3.257-5.143a3.682 3.682 0 011.029-.171zM172.2 113.2c.685 3.314.4 8-.858 14.057h2.743l2.4-6.172-1.028-1.542 1.028-1.029-3.257-5.143a3.669 3.669 0 00-1.028-.171z"
183
+ clipRule="evenodd"
184
+ />
185
+
186
+ <path
187
+ fill={PRIMARY_LIGHT}
188
+ fillRule="evenodd"
189
+ d="M171 112.092c1.161.788 1.885 1.906 1.885 3.146 0 1.268-.759 2.409-1.968 3.2l-1.018-.802-.785.056.171-.54-.013-.01c1.046-.539 1.728-1.422 1.728-2.421v-2.629zm-6.501 5.05l-.014.01.172.54-.785-.056-1.019.802c-1.186-.776-1.939-1.889-1.967-3.129l-.001-.071c0-1.24.725-2.358 1.886-3.146v2.629c0 .999.682 1.882 1.728 2.421z"
190
+ clipRule="evenodd"
191
+ />
192
+
193
+ <path
194
+ fill={PRIMARY_DARKER}
195
+ fillRule="evenodd"
196
+ d="M164.485 104.8a2.4 2.4 0 004.8 0M164.828 101.542c0 .758.921 1.372 2.057 1.372s2.057-.614 2.057-1.372"
197
+ clipRule="evenodd"
198
+ opacity="0.24"
199
+ />
200
+
201
+ <path
202
+ fill={PRIMARY_DARKER}
203
+ fillRule="evenodd"
204
+ d="M160.055 99.409c.317.651 1.03 1.105 1.858 1.105.826 0 1.536-.451 1.855-1.098.094-.193-.04-.35-.176-.234-.42.362-1.017.587-1.679.587-.641 0-1.221-.211-1.639-.553-.152-.125-.311.002-.219.193zM169.998 99.409c.317.651 1.029 1.105 1.858 1.105.826 0 1.536-.451 1.854-1.098.095-.193-.04-.35-.175-.234-.42.362-1.017.587-1.679.587-.641 0-1.221-.211-1.639-.553-.153-.125-.311.002-.219.193z"
205
+ clipRule="evenodd"
206
+ />
207
+
208
+ <path
209
+ fill={PRIMARY_DARKER}
210
+ d="M159.965 96.255c.671-.944 2.511-1.474 4.096-1.084a.343.343 0 00.164-.666c-1.841-.452-3.972.161-4.819 1.353a.343.343 0 00.559.397zM173.806 96.255c-.671-.944-2.511-1.474-4.096-1.084a.343.343 0 01-.164-.666c1.841-.452 3.972.161 4.819 1.353a.343.343 0 11-.559.397z"
211
+ />
212
+
213
+ <path
214
+ fill={PRIMARY_DARKER}
215
+ d="M166.971 107.687c-1.95.064-2.82 1.008-3.475.049-.491-.72-.286-1.93.174-2.61.653-.969 1.54-.501 2.532-.611.269-.03.54-.106.769-.23.229.124.5.2.769.23.992.11 1.878-.358 2.532.611.46.68.665 1.89.174 2.61-.655.959-1.525-.114-3.475-.049zm9.466-11.63c-.58 2.412-.846 4.874-1.267 7.315a53.543 53.543 0 01-.285 1.522c-.022.106-.043.501-.146.551-.314.151-.953-.655-1.124-.837-.429-.457-.854-.918-1.377-1.276a7.342 7.342 0 00-3.579-1.255c-.538-.043-1.266.032-1.774.341-.507-.309-1.235-.384-1.773-.341a7.342 7.342 0 00-3.579 1.255c-.523.358-.948.819-1.377 1.276-.171.182-.81.988-1.124.837-.103-.05-.124-.445-.146-.551a53.543 53.543 0 01-.285-1.522c-.421-2.441-.687-4.903-1.267-7.315-.169 0-.317 3.214-.336 3.513-.077 1.216-.166 2.405-.052 3.623.197 2.099.403 4.732 1.984 6.336 1.428 1.449 3.502 1.752 5.291 2.666.231.118.536.263.866.382.347.268 1.035.451 1.828.451.832 0 1.548-.201 1.877-.491a7.76 7.76 0 00.758-.342c1.788-.915 3.863-1.217 5.291-2.666 1.581-1.604 1.787-4.237 1.984-6.336.114-1.218.025-2.407-.052-3.623-.019-.3-.167-3.513-.336-3.513z"
216
+ />
217
+
218
+ <path
219
+ fill={PRIMARY_DARK}
220
+ fillRule="evenodd"
221
+ d="M166.885 89.028c5.586 0 10.115 2.533 10.115 5.657 0 .442-.091.873-.263 1.286-1.041-2.505-5.057-4.371-9.852-4.371s-8.811 1.866-9.852 4.371a3.342 3.342 0 01-.262-1.286c0-3.124 4.528-5.657 10.114-5.657z"
222
+ clipRule="evenodd"
223
+ />
224
+
225
+ <path
226
+ fill={PRIMARY_DARKER}
227
+ d="M167.228 79.771c5.117 0 14.043 7.569 14.057 15.656.008 4.367-1.649 7.035-4.971 8.001 1.048-9.58-5.417-11.757-9.434-14.088-4.021 2.33-10.475 4.507-9.423 14.088-3.322-.857-4.979-3.524-4.972-8.001.014-8.088 8.927-15.656 14.058-15.656.114 0 .228.005.341.015a3.94 3.94 0 01.344-.015z"
228
+ />
229
+ </g>
230
+ <path
231
+ fill="#919EAB"
232
+ fillOpacity="0.24"
233
+ d="M5 156.457a28.162 28.162 0 008.98 20.659 28.239 28.239 0 0010.523 6.21 28.359 28.359 0 0018.088-.201l.32-.115a28.255 28.255 0 0016.203-37.926 28.251 28.251 0 00-38.905-13.686A28.248 28.248 0 005 156.457z"
234
+ />
235
+
236
+ <path
237
+ fill={PRIMARY_LIGHTER}
238
+ d="M6 156.456a27.163 27.163 0 008.663 19.927 27.204 27.204 0 0011.043 6.262 27.357 27.357 0 0016.553-.466l.31-.111a27.253 27.253 0 006.316-47.931A27.253 27.253 0 006 156.456z"
239
+ />
240
+
241
+ <mask
242
+ id="mask2"
243
+ width="55"
244
+ height="55"
245
+ x="6"
246
+ y="129"
247
+ maskUnits="userSpaceOnUse"
248
+ >
249
+ <path
250
+ fill="#fff"
251
+ d="M6 156.456a27.163 27.163 0 008.663 19.927 27.204 27.204 0 0011.043 6.262 27.357 27.357 0 0016.553-.466l.31-.111a27.253 27.253 0 006.316-47.931A27.253 27.253 0 006 156.456z"
252
+ />
253
+ </mask>
254
+ <g mask="url(#mask2)">
255
+ <path
256
+ fill="#FBCDBE"
257
+ d="M33.629 143.171a9.6 9.6 0 019.6 9.6v1.057a2.059 2.059 0 011.714 2.029v2.4a2.057 2.057 0 01-1.767 2.037 9.607 9.607 0 01-5.433 7.668v3.152h.686c6.816 0 12.343 5.526 12.343 12.343V185H16.486v-1.543c0-6.817 5.526-12.343 12.343-12.343h.685v-3.152a9.608 9.608 0 01-5.433-7.668 2.057 2.057 0 01-1.767-2.037v-2.4c0-1.019.742-1.865 1.715-2.029v-1.057a9.6 9.6 0 019.6-9.6z"
258
+ />
259
+
260
+ <path
261
+ fill={PRIMARY_LIGHT}
262
+ d="M25.229 172.374c0 2.791 3.799 5.054 8.485 5.054 4.687 0 8.486-2.263 8.486-5.054a3.08 3.08 0 00-.078-.689c5.013 1.57 8.65 6.251 8.65 11.781V185H16.486v-1.534c0-5.598 3.726-10.325 8.834-11.837-.06.243-.091.492-.091.745z"
263
+ />
264
+
265
+ <path
266
+ fill={PRIMARY_DARKER}
267
+ d="M30.392 162.565a3.257 3.257 0 006.475-.015c.014-.132-.133-.35-.317-.35h-5.821c-.185 0-.356.202-.337.365z"
268
+ opacity="0.24"
269
+ />
270
+
271
+ <path
272
+ fill={PRIMARY_DARKER}
273
+ fillRule="evenodd"
274
+ d="M31.571 159.286c0 .757.921 1.371 2.057 1.371 1.137 0 2.058-.614 2.058-1.371"
275
+ clipRule="evenodd"
276
+ opacity="0.24"
277
+ />
278
+
279
+ <path
280
+ fill={PRIMARY_DARKER}
281
+ d="M29.172 157.229a1.029 1.029 0 10-.001-2.058 1.029 1.029 0 000 2.058zM38.086 157.229a1.029 1.029 0 10-.001-2.058 1.029 1.029 0 000 2.058zM26.708 153.999c.671-.945 2.511-1.474 4.096-1.085a.343.343 0 10.164-.666c-1.84-.452-3.971.161-4.819 1.353a.343.343 0 00.56.398zM40.549 153.999c-.671-.945-2.511-1.474-4.096-1.085a.343.343 0 11-.163-.666c1.84-.452 3.97.161 4.818 1.353a.343.343 0 01-.559.398z"
282
+ />
283
+
284
+ <mask
285
+ id="mask3"
286
+ width="46"
287
+ height="48"
288
+ x="11"
289
+ y="137"
290
+ maskUnits="userSpaceOnUse"
291
+ >
292
+ <path
293
+ fill="#fff"
294
+ d="M56.257 137v48h-5.486v-1.543c0-6.817-5.526-12.343-12.342-12.343h-.686v-3.152a9.606 9.606 0 005.45-7.842 2.058 2.058 0 001.75-2.034v-2.229a2.059 2.059 0 00-1.714-2.029v-1.057a9.566 9.566 0 00-.796-3.831c-1.701-2.854-16.122-2.717-17.597-.028a9.567 9.567 0 00-.807 3.859v1.057a2.059 2.059 0 00-1.715 2.029v2.229c0 1.031.76 1.886 1.75 2.034a9.606 9.606 0 005.45 7.842v3.152h-.685c-6.749 0-12.233 5.416-12.342 12.139l-.001.204V185H11v-48h45.257z"
295
+ />
296
+ </mask>
297
+ <g mask="url(#mask3)">
298
+ <path
299
+ fill={PRIMARY_DARKER}
300
+ fillRule="evenodd"
301
+ d="M32.117 137.343h3.194a6.857 6.857 0 016.699 5.389l1.561 7.125H23.857l1.562-7.125a6.857 6.857 0 016.698-5.389z"
302
+ clipRule="evenodd"
303
+ />
304
+
305
+ <path
306
+ fill={PRIMARY_DARKER}
307
+ d="M33.629 161.857c11.55 0 20.914-4.413 20.914-9.857 0-5.444-9.364-9.857-20.914-9.857-11.551 0-20.915 4.413-20.915 9.857 0 5.444 9.364 9.857 20.915 9.857z"
308
+ />
309
+
310
+ <path
311
+ fill={PRIMARY_DARK}
312
+ d="M33.629 155.343c5.87 0 10.628-1.919 10.628-4.286 0-2.367-4.758-4.286-10.628-4.286S23 148.69 23 151.057c0 2.367 4.759 4.286 10.629 4.286z"
313
+ />
314
+ </g>
315
+ <path
316
+ fill={PRIMARY_DARKER}
317
+ d="M32.208 156.286c0 1.663-1.414 3.012-3.771 3.012h-.471c-2.357 0-3.3-1.35-3.3-3.012 0-1.664.22-3.013 3.52-3.013h.502c3.3 0 3.52 1.349 3.52 3.013zM42.763 156.286c0 1.663-1.414 3.012-3.771 3.012h-.472c-2.356 0-3.3-1.35-3.3-3.012 0-1.664.22-3.013 3.52-3.013h.503c3.299 0 3.52 1.349 3.52 3.013z"
318
+ opacity="0.7"
319
+ />
320
+
321
+ <path
322
+ fill={PRIMARY_DARKER}
323
+ d="M28.689 152.771c3.711 0 4.022 1.737 4.022 3.515 0 2.069-1.757 3.514-4.274 3.514h-.471c-2.381 0-3.802-1.314-3.802-3.514 0-1.778.31-3.515 4.022-3.515h.503zm0 1.004h-.503c-2.957 0-3.016 1.064-3.017 2.427v.084c0 1.145.485 2.51 2.797 2.51h.471c1.925 0 3.268-1.032 3.268-2.51v-.126-.123c-.01-1.283-.18-2.262-3.016-2.262zM39.243 152.771c3.711 0 4.022 1.737 4.022 3.515 0 2.069-1.757 3.514-4.274 3.514h-.471c-2.38 0-3.802-1.314-3.802-3.514 0-1.778.31-3.515 4.022-3.515h.503zm0 1.004h-.503c-2.957 0-3.016 1.064-3.017 2.427v.084c0 1.145.486 2.51 2.797 2.51h.471c1.925 0 3.269-1.032 3.269-2.51v-.126-.123c-.011-1.283-.181-2.262-3.017-2.262z"
324
+ />
325
+
326
+ <path
327
+ fill={PRIMARY_DARKER}
328
+ d="M23.16 153.776c.117-.118 1.404-1.005 5.026-1.005 3.037 0 3.68.323 4.652.81l.072.036c.067.024.413.144.818.158.368-.017.684-.119.776-.152 1.11-.552 2.198-.852 4.739-.852 3.622 0 4.908.887 5.026 1.005.278 0 .503.224.503.502v.502a.502.502 0 01-.503.502s-1.005 0-1.005.502-.503-.727-.503-1.004v-.489c-.613-.24-1.71-.515-3.518-.515-2.014 0-3.018.193-3.878.556l.01.024-.428.173.427.172-.377.931-.466-.188a2.235 2.235 0 00-.256-.079c-.347-.087-.704-.114-1.02-.048a1.368 1.368 0 00-.321.11l-.45.225-.45-.898.45-.225h.001l-.43-.174.014-.034c-.743-.354-1.427-.545-3.883-.545-1.808 0-2.905.275-3.518.515v.489c0 .277-.503 1.506-.503 1.004s-1.005-.502-1.005-.502a.503.503 0 01-.503-.502v-.502c0-.278.225-.502.503-.502z"
329
+ />
330
+ </g>
331
+ </Box>
332
+ );
333
+ }
334
+
335
+ export default memo(BookingIllustration);