├── .env
├── .eslintrc
├── .gitignore
├── .prettierrc
├── README.md
├── ReadMe
├── jsconfig.json
├── package-lock.json
├── package.json
├── public
├── _redirects
├── favicon
│ ├── android-chrome-192x192.png
│ ├── android-chrome-512x512.png
│ ├── apple-touch-icon.png
│ ├── favicon-16x16.png
│ ├── favicon-32x32.png
│ └── favicon.ico
├── fonts
│ ├── CircularStd-Bold.otf
│ ├── CircularStd-Book.otf
│ ├── CircularStd-Medium.otf
│ ├── Font for H1 Header, Headline, Footer.ttf
│ ├── Font for H2 Main Slogans.ttf
│ ├── Font for normal Text on Website.ttf
│ ├── Roboto-Bold.ttf
│ ├── Roboto-Regular.ttf
│ └── index.css
├── index.html
├── manifest.json
├── robots.txt
└── static
│ ├── about
│ ├── avatar-1.jpg
│ ├── avatar-2.jpg
│ ├── avatar-3.jpg
│ ├── avatar-4.jpg
│ ├── avatar-5.jpg
│ ├── avatar-6.jpg
│ ├── hero.jpg
│ ├── logo_amazon.svg
│ ├── logo_hbo.svg
│ ├── logo_ibm.svg
│ ├── logo_lya.svg
│ ├── logo_netflix.svg
│ ├── logo_spotify.svg
│ ├── testimonials.jpg
│ ├── vision.jpg
│ ├── what-1.jpg
│ └── what-2.jpg
│ ├── auth
│ ├── ic_auth0.png
│ ├── ic_cognito.png
│ ├── ic_firebase.png
│ └── ic_jwt.png
│ ├── bg_card.png
│ ├── brand
│ ├── logo_full.jpg
│ ├── logo_full.svg
│ └── logo_single.svg
│ ├── components
│ ├── accordion.png
│ ├── alert.png
│ ├── animate.png
│ ├── autocomplete.png
│ ├── avatar.png
│ ├── badge.png
│ ├── breadcrumbs.png
│ ├── buttons.png
│ ├── carousel.png
│ ├── chart.png
│ ├── checkbox.png
│ ├── chip.png
│ ├── color.png
│ ├── copy-to-clipboard.png
│ ├── data-grid.png
│ ├── dialog.png
│ ├── editor.png
│ ├── form-validation.png
│ ├── grid.png
│ ├── icons.png
│ ├── label.png
│ ├── list.png
│ ├── map.png
│ ├── mega-menu.png
│ ├── menu.png
│ ├── multi-language.png
│ ├── pagination.png
│ ├── pickers.png
│ ├── popover.png
│ ├── progress.png
│ ├── radio-button.png
│ ├── rating.png
│ ├── shadows.png
│ ├── slider.png
│ ├── snackbar.png
│ ├── stepper.png
│ ├── switch.png
│ ├── table.png
│ ├── tabs.png
│ ├── text-field.png
│ ├── textfield.png
│ ├── timeline.png
│ ├── tooltip.png
│ ├── transfer-list.png
│ ├── tree-view.png
│ ├── typography.png
│ └── upload.png
│ ├── contact
│ └── hero.jpg
│ ├── faqs
│ ├── hero.jpg
│ ├── ic_account.svg
│ ├── ic_assurances.svg
│ ├── ic_delivery.svg
│ ├── ic_package.svg
│ ├── ic_payment.svg
│ └── ic_refund.svg
│ ├── home
│ ├── clean-1.png
│ ├── clean-10.png
│ ├── clean-2.png
│ ├── clean-3.png
│ ├── clean-4.png
│ ├── clean-5.png
│ ├── clean-6.png
│ ├── clean-7.png
│ ├── clean-8.png
│ ├── clean-9.png
│ ├── darkmode.png
│ ├── hero.png
│ ├── ic_figma.svg
│ ├── ic_js.svg
│ ├── ic_material.svg
│ ├── ic_react.svg
│ ├── ic_sketch.svg
│ ├── ic_sketch_small.svg
│ ├── ic_ts.svg
│ ├── lightmode.png
│ ├── rocket.png
│ ├── screen_dark_1.png
│ ├── screen_dark_2.png
│ ├── screen_dark_3.png
│ ├── screen_light_1.png
│ ├── screen_light_2.png
│ ├── screen_light_3.png
│ ├── shape.svg
│ └── theme-color
│ │ ├── block1-blue.png
│ │ ├── block1-cyan.png
│ │ ├── block1-default.png
│ │ ├── block1-orange.png
│ │ ├── block1-purple.png
│ │ ├── block1-red.png
│ │ ├── block2-blue.png
│ │ ├── block2-cyan.png
│ │ ├── block2-default.png
│ │ ├── block2-orange.png
│ │ ├── block2-purple.png
│ │ ├── block2-red.png
│ │ ├── grid.png
│ │ ├── screen-blue.png
│ │ ├── screen-cyan.png
│ │ ├── screen-default.png
│ │ ├── screen-orange.png
│ │ ├── screen-purple.png
│ │ ├── screen-red.png
│ │ ├── sidebar-blue.png
│ │ ├── sidebar-cyan.png
│ │ ├── sidebar-default.png
│ │ ├── sidebar-orange.png
│ │ ├── sidebar-purple.png
│ │ └── sidebar-red.png
│ ├── icons
│ ├── browser-edge.svg
│ ├── controls
│ │ ├── arrow-ios-back.svg
│ │ ├── arrow-ios-forward.svg
│ │ ├── close.svg
│ │ ├── maximize-outline.svg
│ │ └── minimize-outline.svg
│ ├── editor
│ │ ├── align_center.svg
│ │ ├── align_justify.svg
│ │ ├── align_left.svg
│ │ ├── align_right.svg
│ │ ├── colorpicker.svg
│ │ ├── embedded.svg
│ │ ├── emoji.svg
│ │ ├── history_redo.svg
│ │ ├── history_undo.svg
│ │ ├── image.svg
│ │ ├── inline_bold.svg
│ │ ├── inline_italic.svg
│ │ ├── inline_strikethrough.svg
│ │ ├── inline_underline.svg
│ │ ├── link.svg
│ │ ├── list_indent.svg
│ │ ├── list_ordered.svg
│ │ ├── list_outdent.svg
│ │ ├── list_unordered.svg
│ │ ├── monospace.svg
│ │ ├── remove.svg
│ │ ├── subscript.svg
│ │ ├── superscript.svg
│ │ └── unlink.svg
│ ├── elephant.svg
│ ├── file
│ │ ├── file_type_ai.svg
│ │ ├── file_type_excel.svg
│ │ ├── file_type_pdf.svg
│ │ ├── file_type_photoshop.svg
│ │ ├── file_type_powerpoint.svg
│ │ ├── file_type_video.svg
│ │ └── file_type_word.svg
│ ├── ic_chrome.svg
│ ├── ic_code.svg
│ ├── ic_design.svg
│ ├── ic_drive.svg
│ ├── ic_dropbox.svg
│ ├── ic_evernote.svg
│ ├── ic_flag_de.svg
│ ├── ic_flag_en.svg
│ ├── ic_flag_fr.svg
│ ├── ic_flag_kr.svg
│ ├── ic_flag_us.svg
│ ├── ic_github.svg
│ ├── ic_mastercard.svg
│ ├── ic_notification_chat.svg
│ ├── ic_notification_mail.svg
│ ├── ic_notification_package.svg
│ ├── ic_notification_shipping.svg
│ ├── ic_paypal.svg
│ ├── ic_visa.svg
│ ├── json-logo.svg
│ ├── love-camera.svg
│ ├── navbar
│ │ ├── ic_analytics.svg
│ │ ├── ic_banking.svg
│ │ ├── ic_blog.svg
│ │ ├── ic_booking.svg
│ │ ├── ic_calendar.svg
│ │ ├── ic_cart.svg
│ │ ├── ic_chat.svg
│ │ ├── ic_dashboard.svg
│ │ ├── ic_ecommerce.svg
│ │ ├── ic_kanban.svg
│ │ ├── ic_mail.svg
│ │ └── ic_user.svg
│ ├── shape-avatar.svg
│ └── shield.svg
│ ├── illustrations
│ ├── illustration_components.png
│ ├── illustration_dashboard.png
│ ├── illustration_empty_cart.svg
│ ├── illustration_empty_content.svg
│ ├── illustration_empty_mail.svg
│ ├── illustration_invite.png
│ ├── illustration_login.png
│ └── illustration_register.png
│ ├── mock-images
│ ├── avatars
│ │ ├── avatar_1.jpg
│ │ ├── avatar_10.jpg
│ │ ├── avatar_11.jpg
│ │ ├── avatar_12.jpg
│ │ ├── avatar_13.jpg
│ │ ├── avatar_14.jpg
│ │ ├── avatar_15.jpg
│ │ ├── avatar_16.jpg
│ │ ├── avatar_17.jpg
│ │ ├── avatar_18.jpg
│ │ ├── avatar_19.jpg
│ │ ├── avatar_2.jpg
│ │ ├── avatar_20.jpg
│ │ ├── avatar_21.jpg
│ │ ├── avatar_22.jpg
│ │ ├── avatar_23.jpg
│ │ ├── avatar_24.jpg
│ │ ├── avatar_3.jpg
│ │ ├── avatar_4.jpg
│ │ ├── avatar_5.jpg
│ │ ├── avatar_6.jpg
│ │ ├── avatar_7.jpg
│ │ ├── avatar_8.jpg
│ │ ├── avatar_9.jpg
│ │ └── avatar_default.jpg
│ ├── covers
│ │ ├── cover_1.jpg
│ │ ├── cover_10.jpg
│ │ ├── cover_11.jpg
│ │ ├── cover_12.jpg
│ │ ├── cover_13.jpg
│ │ ├── cover_14.jpg
│ │ ├── cover_15.jpg
│ │ ├── cover_16.jpg
│ │ ├── cover_17.jpg
│ │ ├── cover_18.jpg
│ │ ├── cover_19.jpg
│ │ ├── cover_2.jpg
│ │ ├── cover_20.jpg
│ │ ├── cover_21.jpg
│ │ ├── cover_22.jpg
│ │ ├── cover_23.jpg
│ │ ├── cover_24.jpg
│ │ ├── cover_3.jpg
│ │ ├── cover_4.jpg
│ │ ├── cover_5.jpg
│ │ ├── cover_6.jpg
│ │ ├── cover_7.jpg
│ │ ├── cover_8.jpg
│ │ └── cover_9.jpg
│ ├── feeds
│ │ ├── feed_1.jpg
│ │ ├── feed_10.jpg
│ │ ├── feed_11.jpg
│ │ ├── feed_12.jpg
│ │ ├── feed_2.jpg
│ │ ├── feed_3.jpg
│ │ ├── feed_4.jpg
│ │ ├── feed_5.jpg
│ │ ├── feed_6.jpg
│ │ ├── feed_7.jpg
│ │ ├── feed_8.jpg
│ │ └── feed_9.jpg
│ ├── products
│ │ ├── product_1.jpg
│ │ ├── product_10.jpg
│ │ ├── product_11.jpg
│ │ ├── product_12.jpg
│ │ ├── product_13.jpg
│ │ ├── product_14.jpg
│ │ ├── product_15.jpg
│ │ ├── product_16.jpg
│ │ ├── product_17.jpg
│ │ ├── product_18.jpg
│ │ ├── product_19.jpg
│ │ ├── product_2.jpg
│ │ ├── product_20.jpg
│ │ ├── product_21.jpg
│ │ ├── product_22.jpg
│ │ ├── product_23.jpg
│ │ ├── product_24.jpg
│ │ ├── product_3.jpg
│ │ ├── product_4.jpg
│ │ ├── product_5.jpg
│ │ ├── product_6.jpg
│ │ ├── product_7.jpg
│ │ ├── product_8.jpg
│ │ └── product_9.jpg
│ └── rooms
│ │ ├── room-1.jpg
│ │ ├── room-2.jpg
│ │ ├── room-3.jpg
│ │ ├── room-4.jpg
│ │ └── room-5.jpg
│ ├── overlay.svg
│ └── placeholder.svg
├── src
├── App.js
├── _apis_
│ ├── account.js
│ ├── blog.js
│ ├── calendar.js
│ ├── chat.js
│ ├── index.js
│ ├── kanban.js
│ ├── mail.js
│ ├── mock.js
│ ├── products.js
│ └── user.js
├── apis
│ └── payment.js
├── assets
│ ├── icon_plan_free.js
│ ├── icon_plan_premium.js
│ ├── icon_plan_starter.js
│ ├── icon_sent.js
│ ├── illustration_404.js
│ ├── illustration_500.js
│ ├── illustration_booking.js
│ ├── illustration_checkin.js
│ ├── illustration_checkout.js
│ ├── illustration_coming_soon.js
│ ├── illustration_doc.js
│ ├── illustration_maintenance.js
│ ├── illustration_motivation.js
│ ├── illustration_order_complete.js
│ ├── illustration_seo.js
│ ├── illustration_upload.js
│ └── index.js
├── aws-exports.js
├── components
│ ├── @material-extend
│ │ ├── MAvatar.js
│ │ ├── MBreadcrumbs.js
│ │ ├── MFab.js
│ │ ├── MHidden.js
│ │ ├── MIconButton.js
│ │ └── index.js
│ ├── BadgeStatus.js
│ ├── CodeSnippets.js
│ ├── ColorManyPicker.js
│ ├── ColorPreview.js
│ ├── ColorSinglePicker.js
│ ├── CopyClipboard.js
│ ├── CustomAccordion.js
│ ├── DatePicker.js
│ ├── EmojiPicker.js
│ ├── EmptyContent.js
│ ├── GoogleAnalytics.js
│ ├── HeaderBreadcrumbs.js
│ ├── Label.js
│ ├── LazySize.js
│ ├── LightboxModal.js
│ ├── LoadingScreen.js
│ ├── Logo.js
│ ├── Markdown.js
│ ├── MenuPopover.js
│ ├── MyAvatar.js
│ ├── NavSection.js
│ ├── NotistackProvider.js
│ ├── Page.js
│ ├── RtlLayout.js
│ ├── ScrollToTop.js
│ ├── Scrollbar.js
│ ├── SearchInput.js
│ ├── SearchNotFound.js
│ ├── SvgIconStyle.js
│ ├── ThemeLocalization.js
│ ├── ThemePrimaryColor.js
│ ├── _dashboard
│ │ ├── blog
│ │ │ ├── BlogNewPostForm.js
│ │ │ ├── BlogNewPostPreview.js
│ │ │ ├── BlogPostCard.js
│ │ │ ├── BlogPostCommentForm.js
│ │ │ ├── BlogPostCommentItem.js
│ │ │ ├── BlogPostCommentList.js
│ │ │ ├── BlogPostHero.js
│ │ │ ├── BlogPostRecent.js
│ │ │ ├── BlogPostTags.js
│ │ │ ├── BlogPostsSearch.js
│ │ │ ├── BlogPostsSort.js
│ │ │ └── index.js
│ │ ├── calendar
│ │ │ ├── CalendarForm.js
│ │ │ ├── CalendarStyle.js
│ │ │ ├── CalendarToolbar.js
│ │ │ └── index.js
│ │ ├── chat
│ │ │ ├── ChatAccount.js
│ │ │ ├── ChatContactSearch.js
│ │ │ ├── ChatConversationItem.js
│ │ │ ├── ChatConversationList.js
│ │ │ ├── ChatHeaderCompose.js
│ │ │ ├── ChatHeaderDetail.js
│ │ │ ├── ChatMessageInput.js
│ │ │ ├── ChatMessageItem.js
│ │ │ ├── ChatMessageList.js
│ │ │ ├── ChatRoom.js
│ │ │ ├── ChatRoomAttachment.js
│ │ │ ├── ChatRoomGroupParticipant.js
│ │ │ ├── ChatRoomOneParticipant.js
│ │ │ ├── ChatRoomPopup.js
│ │ │ ├── ChatSearchResults.js
│ │ │ ├── ChatSidebar.js
│ │ │ ├── ChatWindow.js
│ │ │ └── index.js
│ │ ├── e-commerce
│ │ │ ├── CartWidget.js
│ │ │ ├── ProductNewForm.js
│ │ │ ├── checkout
│ │ │ │ ├── CheckoutBillingAddress.js
│ │ │ │ ├── CheckoutBillingInfo.js
│ │ │ │ ├── CheckoutCart.js
│ │ │ │ ├── CheckoutDelivery.js
│ │ │ │ ├── CheckoutNewAddressForm.js
│ │ │ │ ├── CheckoutOrderComplete.js
│ │ │ │ ├── CheckoutPayment.js
│ │ │ │ ├── CheckoutPaymentMethods.js
│ │ │ │ ├── CheckoutProductList.js
│ │ │ │ ├── CheckoutSummary.js
│ │ │ │ ├── countries.js
│ │ │ │ └── index.js
│ │ │ ├── invoice
│ │ │ │ ├── InvoicePDF.js
│ │ │ │ ├── InvoiceToolbar.js
│ │ │ │ └── index.js
│ │ │ ├── product-details
│ │ │ │ ├── ProductDetailsCarousel.js
│ │ │ │ ├── ProductDetailsReview.js
│ │ │ │ ├── ProductDetailsReviewForm.js
│ │ │ │ ├── ProductDetailsReviewList.js
│ │ │ │ ├── ProductDetailsReviewOverview.js
│ │ │ │ ├── ProductDetailsSumary.js
│ │ │ │ └── index.js
│ │ │ ├── product-list
│ │ │ │ ├── ProductListHead.js
│ │ │ │ ├── ProductListToolbar.js
│ │ │ │ ├── ProductMoreMenu.js
│ │ │ │ └── index.js
│ │ │ └── shop
│ │ │ │ ├── ShopFilterSidebar.js
│ │ │ │ ├── ShopProductCard.js
│ │ │ │ ├── ShopProductList.js
│ │ │ │ ├── ShopProductSort.js
│ │ │ │ ├── ShopTagFiltered.js
│ │ │ │ └── index.js
│ │ ├── general-analytics
│ │ │ ├── AnalyticsBugReports.js
│ │ │ ├── AnalyticsConversionRates.js
│ │ │ ├── AnalyticsCurrentSubject.js
│ │ │ ├── AnalyticsCurrentVisits.js
│ │ │ ├── AnalyticsItemOrders.js
│ │ │ ├── AnalyticsNewUsers.js
│ │ │ ├── AnalyticsNewsUpdate.js
│ │ │ ├── AnalyticsOrderTimeline.js
│ │ │ ├── AnalyticsTasks.js
│ │ │ ├── AnalyticsTrafficBySite.js
│ │ │ ├── AnalyticsWebsiteVisits.js
│ │ │ ├── AnalyticsWeeklySales.js
│ │ │ └── index.js
│ │ ├── general-app
│ │ │ ├── AppAreaInstalled.js
│ │ │ ├── AppCurrentDownload.js
│ │ │ ├── AppFeatured.js
│ │ │ ├── AppNewInvoice.js
│ │ │ ├── AppTopAuthors.js
│ │ │ ├── AppTopInstalledCountries.js
│ │ │ ├── AppTopRelated.js
│ │ │ ├── AppTotalActiveUsers.js
│ │ │ ├── AppTotalDownloads.js
│ │ │ ├── AppTotalInstalled.js
│ │ │ ├── AppWelcome.js
│ │ │ ├── AppWidgets1.js
│ │ │ ├── AppWidgets2.js
│ │ │ └── index.js
│ │ ├── general-banking
│ │ │ ├── BankingBalanceStatistics.js
│ │ │ ├── BankingContacts.js
│ │ │ ├── BankingCurrentBalance.js
│ │ │ ├── BankingExpenses.js
│ │ │ ├── BankingExpensesCategories.js
│ │ │ ├── BankingIncome.js
│ │ │ ├── BankingInviteFriends.js
│ │ │ ├── BankingQuickTransfer.js
│ │ │ ├── BankingRecentTransitions.js
│ │ │ └── index.js
│ │ ├── general-booking
│ │ │ ├── BookingBookedRoom.js
│ │ │ ├── BookingCheckIn.js
│ │ │ ├── BookingCheckInWidgets.js
│ │ │ ├── BookingCheckOut.js
│ │ │ ├── BookingCustomerReviews.js
│ │ │ ├── BookingDetails.js
│ │ │ ├── BookingNewestBooking.js
│ │ │ ├── BookingReservationStats.js
│ │ │ ├── BookingRoomAvailable.js
│ │ │ ├── BookingTotal.js
│ │ │ ├── BookingTotalIncomes.js
│ │ │ └── index.js
│ │ ├── general-ecommerce
│ │ │ ├── EcommerceBestSalesman.js
│ │ │ ├── EcommerceCurrentBalance.js
│ │ │ ├── EcommerceLatestProducts.js
│ │ │ ├── EcommerceNewProducts.js
│ │ │ ├── EcommerceProductSold.js
│ │ │ ├── EcommerceSaleByGender.js
│ │ │ ├── EcommerceSalesOverview.js
│ │ │ ├── EcommerceSalesProfit.js
│ │ │ ├── EcommerceTotalBalance.js
│ │ │ ├── EcommerceWelcome.js
│ │ │ ├── EcommerceYearlySales.js
│ │ │ └── index.js
│ │ ├── home
│ │ │ ├── CollapseList.js
│ │ │ ├── ElementsList.js
│ │ │ ├── Workflow.js
│ │ │ ├── WorkflowDetails.js
│ │ │ ├── WorkflowHeader.js
│ │ │ ├── WorkflowPreviewAndLogs.js
│ │ │ └── index.js
│ │ ├── kanban
│ │ │ ├── KanbanColumn.js
│ │ │ ├── KanbanColumnAdd.js
│ │ │ ├── KanbanColumnToolBar.js
│ │ │ ├── KanbanTaskAdd.js
│ │ │ ├── KanbanTaskAttachments.js
│ │ │ ├── KanbanTaskCard.js
│ │ │ ├── KanbanTaskCommentInput.js
│ │ │ ├── KanbanTaskCommentList.js
│ │ │ ├── KanbanTaskDetails.js
│ │ │ └── index.js
│ │ ├── mail
│ │ │ ├── MailCompose.js
│ │ │ ├── MailDetails.js
│ │ │ ├── MailDetailsAttachments.js
│ │ │ ├── MailDetailsReplyInput.js
│ │ │ ├── MailDetailsToolbar.js
│ │ │ ├── MailItem.js
│ │ │ ├── MailItemAction.js
│ │ │ ├── MailList.js
│ │ │ ├── MailSidebar.js
│ │ │ ├── MailSidebarItem.js
│ │ │ ├── MailToolbar.js
│ │ │ └── index.js
│ │ ├── projects
│ │ │ ├── ProjectsFilter.js
│ │ │ ├── ProjectsView.js
│ │ │ ├── SortingTableHead.js
│ │ │ └── index.js
│ │ ├── user
│ │ │ ├── UserNewForm.js
│ │ │ ├── account
│ │ │ │ ├── AccountBilling.js
│ │ │ │ ├── AccountBillingAddressBook.js
│ │ │ │ ├── AccountBillingInvoiceHistory.js
│ │ │ │ ├── AccountBillingPaymentMethod.js
│ │ │ │ ├── AccountChangePassword.js
│ │ │ │ ├── AccountGeneral.js
│ │ │ │ ├── AccountNotifications.js
│ │ │ │ ├── AccountSocialLinks.js
│ │ │ │ └── index.js
│ │ │ ├── cards
│ │ │ │ ├── UserCard.js
│ │ │ │ └── index.js
│ │ │ ├── countries.js
│ │ │ ├── list
│ │ │ │ ├── UserListHead.js
│ │ │ │ ├── UserListToolbar.js
│ │ │ │ ├── UserMoreMenu.js
│ │ │ │ └── index.js
│ │ │ └── profile
│ │ │ │ ├── Profile.js
│ │ │ │ ├── ProfileAbout.js
│ │ │ │ ├── ProfileCover.js
│ │ │ │ ├── ProfileFollowInfo.js
│ │ │ │ ├── ProfileFollowers.js
│ │ │ │ ├── ProfileFriends.js
│ │ │ │ ├── ProfileGallery.js
│ │ │ │ ├── ProfilePostCard.js
│ │ │ │ ├── ProfilePostInput.js
│ │ │ │ ├── ProfileSocialInfo.js
│ │ │ │ └── index.js
│ │ └── workflow
│ │ │ ├── Details.js
│ │ │ ├── Footer.js
│ │ │ ├── InputElement.js
│ │ │ └── Tabs.js
│ ├── _external-pages
│ │ ├── about
│ │ │ ├── AboutHero.js
│ │ │ ├── AboutTeam.js
│ │ │ ├── AboutTestimonials.js
│ │ │ ├── AboutVision.js
│ │ │ ├── AboutWhat.js
│ │ │ └── index.js
│ │ ├── components-overview
│ │ │ ├── ComponentCard.js
│ │ │ ├── ComponentExtra.js
│ │ │ ├── ComponentFoundation.js
│ │ │ ├── ComponentHero.js
│ │ │ ├── ComponentMaterialUI.js
│ │ │ ├── PathConfig.js
│ │ │ └── index.js
│ │ ├── contact
│ │ │ ├── ContactForm.js
│ │ │ ├── ContactHero.js
│ │ │ ├── ContactMap.js
│ │ │ └── index.js
│ │ ├── faqs
│ │ │ ├── FaqsCategory.js
│ │ │ ├── FaqsForm.js
│ │ │ ├── FaqsHero.js
│ │ │ ├── FaqsList.js
│ │ │ └── index.js
│ │ ├── landing
│ │ │ ├── LandingAdvertisement.js
│ │ │ ├── LandingCleanInterfaces.js
│ │ │ ├── LandingDarkMode.js
│ │ │ ├── LandingHero.js
│ │ │ ├── LandingHugePackElements.js
│ │ │ ├── LandingMinimal.js
│ │ │ ├── LandingPricingPlans.js
│ │ │ ├── LandingThemeColor.js
│ │ │ └── index.js
│ │ ├── payment
│ │ │ ├── PaymentBillingAddress.js
│ │ │ ├── PaymentMethods.js
│ │ │ ├── PaymentNewCardForm.js
│ │ │ ├── PaymentSummary.js
│ │ │ ├── Stripe.js
│ │ │ └── index.js
│ │ └── pricing
│ │ │ ├── PricingPlanCard.js
│ │ │ └── index.js
│ ├── animate
│ │ ├── ButtonAnimate.js
│ │ ├── DialogAnimate.js
│ │ ├── MotionContainer.js
│ │ ├── MotionInView.js
│ │ ├── TextAnimate.js
│ │ ├── index.js
│ │ └── variants
│ │ │ ├── Actions.js
│ │ │ ├── Path.js
│ │ │ ├── Wrap.js
│ │ │ ├── background
│ │ │ ├── BackgroundColor.js
│ │ │ ├── BackgroundKenburns.js
│ │ │ ├── BackgroundPan.js
│ │ │ └── index.js
│ │ │ ├── bounce
│ │ │ ├── BounceIn.js
│ │ │ ├── BounceOut.js
│ │ │ └── index.js
│ │ │ ├── fade
│ │ │ ├── FadeIn.js
│ │ │ ├── FadeOut.js
│ │ │ └── index.js
│ │ │ ├── flip
│ │ │ ├── FlipIn.js
│ │ │ ├── FlipOut.js
│ │ │ └── index.js
│ │ │ ├── index.js
│ │ │ ├── rotate
│ │ │ ├── RotateIn.js
│ │ │ ├── RotateOut.js
│ │ │ └── index.js
│ │ │ ├── scale
│ │ │ ├── ScaleIn.js
│ │ │ ├── ScaleOut.js
│ │ │ └── index.js
│ │ │ ├── slide
│ │ │ ├── SlideIn.js
│ │ │ ├── SlideOut.js
│ │ │ └── index.js
│ │ │ └── zoom
│ │ │ ├── In.js
│ │ │ ├── Out.js
│ │ │ └── index.js
│ ├── authentication
│ │ ├── AuthFirebaseSocial.js
│ │ ├── login
│ │ │ ├── LoginForm.js
│ │ │ └── index.js
│ │ ├── register
│ │ │ ├── RegisterForm.js
│ │ │ └── index.js
│ │ ├── reset-password
│ │ │ ├── ResetPasswordForm.js
│ │ │ └── index.js
│ │ └── verify-code
│ │ │ ├── VerifyCodeForm.js
│ │ │ └── index.js
│ ├── carousel
│ │ ├── CarouselAnimation.js
│ │ ├── CarouselBasic1.js
│ │ ├── CarouselBasic2.js
│ │ ├── CarouselBasic3.js
│ │ ├── CarouselBasic4.js
│ │ ├── CarouselCenterMode.js
│ │ ├── CarouselThumbnail.js
│ │ ├── controls
│ │ │ ├── CarouselControlsArrowsBasic1.js
│ │ │ ├── CarouselControlsArrowsBasic2.js
│ │ │ ├── CarouselControlsArrowsIndex.js
│ │ │ ├── CarouselControlsPaging1.js
│ │ │ ├── CarouselControlsPaging2.js
│ │ │ └── index.js
│ │ └── index.js
│ ├── charts
│ │ ├── BaseOptionChart.js
│ │ ├── ChartArea.js
│ │ ├── ChartBar.js
│ │ ├── ChartColumnMultiple.js
│ │ ├── ChartColumnNegative.js
│ │ ├── ChartColumnSingle.js
│ │ ├── ChartColumnStacked.js
│ │ ├── ChartDonut.js
│ │ ├── ChartLine.js
│ │ ├── ChartMixed.js
│ │ ├── ChartPie.js
│ │ ├── ChartRadarBar.js
│ │ ├── ChartRadialBar.js
│ │ └── index.js
│ ├── editor
│ │ ├── draft
│ │ │ ├── DraftEditorStyle.js
│ │ │ ├── DraftEditorToolbar.js
│ │ │ └── index.js
│ │ ├── index.js
│ │ └── quill
│ │ │ ├── QuillEditorToolbar.js
│ │ │ ├── QuillEditorToolbarStyle.js
│ │ │ └── index.js
│ ├── map
│ │ ├── MapClusters.js
│ │ ├── MapDeckglOverlay.js
│ │ ├── MapGeoJSONAnimation.js
│ │ ├── MapHighlightByFilter.js
│ │ ├── MapMarkersPopups.js
│ │ ├── MapZoomToBounds.js
│ │ ├── assets
│ │ │ ├── cities.js
│ │ │ ├── countries.js
│ │ │ ├── map-style-basic-v8.json
│ │ │ └── stations.js
│ │ ├── controls
│ │ │ ├── MapControlFullscreen.js
│ │ │ ├── MapControlGeolocate.js
│ │ │ ├── MapControlMarker.js
│ │ │ ├── MapControlNavigation.js
│ │ │ ├── MapControlPopup.js
│ │ │ ├── MapControlScale.js
│ │ │ └── index.js
│ │ ├── index.js
│ │ ├── map-change-theme
│ │ │ ├── ControlPanel.js
│ │ │ └── index.js
│ │ ├── map-draggable-markers
│ │ │ ├── ControlPanel.js
│ │ │ └── index.js
│ │ ├── map-dynamic-styling
│ │ │ ├── ControlPanel.js
│ │ │ └── index.js
│ │ ├── map-geojson
│ │ │ ├── ControlPanel.js
│ │ │ └── index.js
│ │ ├── map-heatmap
│ │ │ ├── ControlPanel.js
│ │ │ └── index.js
│ │ ├── map-interaction
│ │ │ ├── ControlPanel.js
│ │ │ └── index.js
│ │ └── map-viewport-animation
│ │ │ ├── ControlPanel.js
│ │ │ └── index.js
│ ├── mega-menu
│ │ ├── MegaMenuCarousel.js
│ │ ├── MegaMenuDesktopHorizon.js
│ │ ├── MegaMenuDesktopVertical.js
│ │ ├── MegaMenuMobile.js
│ │ ├── MenuConfig.js
│ │ ├── MenuHotProducts.js
│ │ └── index.js
│ ├── settings
│ │ ├── SettingColor.js
│ │ ├── SettingDirection.js
│ │ ├── SettingFullscreen.js
│ │ ├── SettingMode.js
│ │ ├── SettingModeIconButton.js
│ │ ├── SettingStretch.js
│ │ └── index.js
│ └── upload
│ │ ├── UploadAvatar.js
│ │ ├── UploadMultiFile.js
│ │ ├── UploadSingleFile.js
│ │ └── index.js
├── config.js
├── contexts
│ ├── Auth0Context.js
│ ├── AwsCognitoContext.js
│ ├── CollapseDrawerContext.js
│ ├── FirebaseContext.js
│ ├── FlowsContext.js
│ ├── JWTContext.js
│ └── SettingsContext.js
├── graphql
│ ├── mutations.js
│ ├── queries.js
│ ├── schema.json
│ └── subscriptions.js
├── guards
│ ├── AuthGuard.js
│ ├── GuestGuard.js
│ └── RoleBasedGuard.js
├── hooks
│ ├── useAsync.js
│ ├── useAuth.js
│ ├── useCollapseDrawer.js
│ ├── useCountdown.js
│ ├── useFlows.js
│ ├── useIsMountedRef.js
│ ├── useLocalStorage.js
│ ├── useLocales.js
│ ├── useOffSetTop.js
│ └── useSettings.js
├── index.js
├── layouts
│ ├── AuthLayout.js
│ ├── LogoOnlyLayout.js
│ ├── dashboard
│ │ ├── AccountPopover.js
│ │ ├── ContactsPopover.js
│ │ ├── DashboardNavbar.js
│ │ ├── DashboardSidebar.js
│ │ ├── ElememtsBar.js
│ │ ├── ElementsConfig.js
│ │ ├── LanguagePopover.js
│ │ ├── ModeSetting.js
│ │ ├── NotificationsPopover.js
│ │ ├── ProjectsSideBar.js
│ │ ├── Searchbar.js
│ │ ├── SidebarConfig.js
│ │ ├── WorkflowFooter.js
│ │ ├── WorkflowRightSide.js
│ │ ├── WorkflowTabs.js
│ │ └── index.js
│ └── main
│ │ ├── MainFooter.js
│ │ ├── MainNavbar.js
│ │ ├── MenuConfig.js
│ │ ├── MenuDesktop.js
│ │ ├── MenuMobile.js
│ │ └── index.js
├── locales
│ ├── de.json
│ ├── en.json
│ ├── fr.json
│ └── i18n.js
├── pages
│ ├── About.js
│ ├── ComingSoon.js
│ ├── ComponentsOverview.js
│ ├── Contact.js
│ ├── Faqs.js
│ ├── LandingPage.js
│ ├── Maintenance.js
│ ├── Page404.js
│ ├── Page500.js
│ ├── Payment.js
│ ├── Pricing.js
│ ├── authentication
│ │ ├── Login.js
│ │ ├── Register.js
│ │ ├── ResetPassword.js
│ │ └── VerifyCode.js
│ ├── components-overview
│ │ ├── Block.js
│ │ ├── extra
│ │ │ ├── Carousel.js
│ │ │ ├── Charts.js
│ │ │ ├── CopyToClipboard.js
│ │ │ ├── Editor.js
│ │ │ ├── Map.js
│ │ │ ├── MegaMenu.js
│ │ │ ├── MultiLanguage.js
│ │ │ ├── Upload.js
│ │ │ ├── animate
│ │ │ │ ├── ControlPanel.js
│ │ │ │ ├── background
│ │ │ │ │ ├── ContainerView.js
│ │ │ │ │ ├── Toolbar.js
│ │ │ │ │ ├── index.js
│ │ │ │ │ └── types.js
│ │ │ │ ├── dialog
│ │ │ │ │ ├── ContainerView.js
│ │ │ │ │ ├── index.js
│ │ │ │ │ └── types.js
│ │ │ │ ├── getVariant.js
│ │ │ │ ├── index.js
│ │ │ │ ├── inview
│ │ │ │ │ ├── ContainerView.js
│ │ │ │ │ ├── Toolbar.js
│ │ │ │ │ ├── index.js
│ │ │ │ │ └── types.js
│ │ │ │ ├── other
│ │ │ │ │ ├── Logo.js
│ │ │ │ │ ├── MediumClick.js
│ │ │ │ │ ├── SmallClick.js
│ │ │ │ │ └── index.js
│ │ │ │ └── scroll
│ │ │ │ │ ├── ContainerView.js
│ │ │ │ │ ├── Toolbar.js
│ │ │ │ │ ├── index.js
│ │ │ │ │ └── types.js
│ │ │ └── form-validation
│ │ │ │ ├── FormikForm.js
│ │ │ │ ├── ReactHookForm.js
│ │ │ │ └── index.js
│ │ ├── foundations
│ │ │ ├── FoundationColors.js
│ │ │ ├── FoundationGrid.js
│ │ │ ├── FoundationIcons.js
│ │ │ ├── FoundationShadows.js
│ │ │ ├── FoundationTypography.js
│ │ │ └── data.js
│ │ └── material-ui
│ │ │ ├── Accordion.js
│ │ │ ├── Alert.js
│ │ │ ├── Autocomplete.js
│ │ │ ├── Avatar.js
│ │ │ ├── Badge.js
│ │ │ ├── Breadcrumb.js
│ │ │ ├── Checkboxes.js
│ │ │ ├── Label.js
│ │ │ ├── Lists.js
│ │ │ ├── Menus.js
│ │ │ ├── Pagination.js
│ │ │ ├── Popover.js
│ │ │ ├── RadioButtons.js
│ │ │ ├── Rating.js
│ │ │ ├── Slider.js
│ │ │ ├── Snackbar.js
│ │ │ ├── Switches.js
│ │ │ ├── Tabs.js
│ │ │ ├── Timeline.js
│ │ │ ├── Tooltip.js
│ │ │ ├── TreeView.js
│ │ │ ├── buttons
│ │ │ ├── ButtonGroups.js
│ │ │ ├── ContainedButtons.js
│ │ │ ├── FloatingActionButton.js
│ │ │ ├── IconButtons.js
│ │ │ ├── OutlinedButtons.js
│ │ │ ├── TextButtons.js
│ │ │ ├── ToggleButtons.js
│ │ │ └── index.js
│ │ │ ├── chips
│ │ │ ├── ChipFilled.js
│ │ │ ├── ChipOutlined.js
│ │ │ └── index.js
│ │ │ ├── data-grid
│ │ │ ├── DataGridBasic.js
│ │ │ ├── DataGridCustom.js
│ │ │ └── index.js
│ │ │ ├── dialog
│ │ │ ├── AlertDialog.js
│ │ │ ├── FormDialogs.js
│ │ │ ├── FullScreenDialogs.js
│ │ │ ├── MaxWidthDialog.js
│ │ │ ├── ScrollDialog.js
│ │ │ ├── SimpleDialogs.js
│ │ │ ├── TransitionsDialogs.js
│ │ │ └── index.js
│ │ │ ├── pickers
│ │ │ ├── PickerDate.js
│ │ │ ├── PickerDateRange.js
│ │ │ ├── PickerDateTime.js
│ │ │ ├── PickerTime.js
│ │ │ └── index.js
│ │ │ ├── progress
│ │ │ ├── ProgressCircular.js
│ │ │ ├── ProgressLinear.js
│ │ │ └── index.js
│ │ │ ├── stepper
│ │ │ ├── CustomizedStepper.js
│ │ │ ├── HorizontalLinearStepper.js
│ │ │ ├── LinearAlternativeLabel.js
│ │ │ ├── VerticalLinearStepper.js
│ │ │ └── index.js
│ │ │ ├── table
│ │ │ ├── BasicTable.js
│ │ │ ├── GroupingFixedHeader.js
│ │ │ ├── collapsible-table
│ │ │ │ ├── CollapsibleTableRow.js
│ │ │ │ └── index.js
│ │ │ ├── index.js
│ │ │ └── sorting-selecting
│ │ │ │ ├── SortingSelectingHead.js
│ │ │ │ ├── SortingSelectingToolbar.js
│ │ │ │ └── index.js
│ │ │ ├── textfield
│ │ │ ├── Filled.js
│ │ │ ├── Outlined.js
│ │ │ ├── Standard.js
│ │ │ └── index.js
│ │ │ └── transfer-list
│ │ │ ├── EnhancedTransferList.js
│ │ │ ├── SimpleTransferList.js
│ │ │ └── index.js
│ └── dashboard
│ │ ├── BlogNewPost.js
│ │ ├── BlogPost.js
│ │ ├── BlogPosts.js
│ │ ├── Calendar.js
│ │ ├── Chat.js
│ │ ├── EcommerceCheckout.js
│ │ ├── EcommerceInvoice.js
│ │ ├── EcommerceProductCreate.js
│ │ ├── EcommerceProductDetails.js
│ │ ├── EcommerceProductList.js
│ │ ├── EcommerceShop.js
│ │ ├── GeneralAnalytics.js
│ │ ├── GeneralApp.js
│ │ ├── GeneralBanking.js
│ │ ├── GeneralBooking.js
│ │ ├── GeneralEcommerce.js
│ │ ├── Home.js
│ │ ├── Kanban.js
│ │ ├── Mail.js
│ │ ├── ProjectsMenu.js
│ │ ├── UserAccount.js
│ │ ├── UserCards.js
│ │ ├── UserCreate.js
│ │ ├── UserList.js
│ │ ├── UserProfile.js
│ │ ├── WorkflowArea copy.js
│ │ └── WorkflowArea.js
├── redux
│ ├── rootReducer.js
│ ├── slices
│ │ ├── blog.js
│ │ ├── calendar.js
│ │ ├── chat.js
│ │ ├── kanban.js
│ │ ├── mail.js
│ │ ├── product.js
│ │ ├── project.js
│ │ └── user.js
│ └── store.js
├── reportWebVitals.js
├── routes
│ ├── index.js
│ └── paths.js
├── service-worker.js
├── serviceWorkerRegistration.js
├── setupTests.js
├── theme
│ ├── breakpoints.js
│ ├── globalStyles.js
│ ├── index.js
│ ├── overrides
│ │ ├── Accordion.js
│ │ ├── Alert.js
│ │ ├── Autocomplete.js
│ │ ├── Avatar.js
│ │ ├── Backdrop.js
│ │ ├── Badge.js
│ │ ├── Breadcrumbs.js
│ │ ├── Button.js
│ │ ├── ButtonGroup.js
│ │ ├── Card.js
│ │ ├── Checkbox.js
│ │ ├── Chip.js
│ │ ├── Container.js
│ │ ├── ControlLabel.js
│ │ ├── DataGrid.js
│ │ ├── Dialog.js
│ │ ├── Drawer.js
│ │ ├── Fab.js
│ │ ├── Grid.js
│ │ ├── IconButton.js
│ │ ├── Input.js
│ │ ├── Link.js
│ │ ├── Lists.js
│ │ ├── LoadingButton.js
│ │ ├── Menu.js
│ │ ├── Pagination.js
│ │ ├── Paper.js
│ │ ├── Pickers.js
│ │ ├── Popover.js
│ │ ├── Progress.js
│ │ ├── Radio.js
│ │ ├── Rating.js
│ │ ├── Select.js
│ │ ├── Skeleton.js
│ │ ├── Slider.js
│ │ ├── Snackbar.js
│ │ ├── Stepper.js
│ │ ├── SvgIcon.js
│ │ ├── Switch.js
│ │ ├── Table.js
│ │ ├── Tabs.js
│ │ ├── Timeline.js
│ │ ├── ToggleButton.js
│ │ ├── Tooltip.js
│ │ ├── TreeView.js
│ │ ├── Typography.js
│ │ └── index.js
│ ├── palette.js
│ ├── shadows.js
│ ├── shape.js
│ └── typography.js
└── utils
│ ├── analytics.js
│ ├── axios.js
│ ├── createAvatar.js
│ ├── elementsDetail.js
│ ├── fakeRequest.js
│ ├── formatNumber.js
│ ├── formatTime.js
│ ├── getColorName.js
│ ├── getFileFormat.js
│ ├── helperFormik.js
│ ├── highlight.js
│ ├── jwt.js
│ ├── mock-data
│ ├── address.js
│ ├── boolean.js
│ ├── company.js
│ ├── email.js
│ ├── index.js
│ ├── name.js
│ ├── number.js
│ ├── phoneNumber.js
│ ├── role.js
│ └── text.js
│ └── runFlow.js
└── yarn.lock
/.env:
--------------------------------------------------------------------------------
1 | # FIX REFRESH "react-scripts": "4.x"
2 | # https://github.com/facebook/create-react-app/issues/9984
3 | FAST_REFRESH=false
4 |
5 | # MAP
6 | REACT_APP_MAP_MAPBOX=
7 |
8 | # FIREBASE
9 | REACT_APP_FIREBASE_API_KEY=
10 | REACT_APP_FIREBASE_AUTH_DOMAIN=
11 | REACT_APP_FIREBASE_PROJECT_ID=
12 | REACT_APP_FIREBASE_STORAGE_BUCKET=
13 | REACT_APP_FIREBASE_MESSAGING_SENDER_ID=
14 | REACT_APP_FIREBASE_APPID=
15 | REACT_APP_FIREBASE_MEASUREMENT_ID=
16 |
17 | # AWS COGNITO
18 | REACT_APP_AWS_COGNITO_USER_POOL_ID=eu-central-1_kOWIAOo0l
19 | REACT_APP_AWS_COGNITO_CLIENT_ID=360tjc48fqupvresd0ltvs8stt
20 |
21 | # AUTH0
22 | REACT_APP_AUTH0_DOMAIN=
23 | REACT_APP_AUTH0_CLIENT_ID=
24 |
25 | # GOOGLE ANALYTICS
26 | REACT_APP_GA_MEASUREMENT_ID=
27 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 | /.pnp
6 | .pnp.js
7 |
8 | # testing
9 | /coverage
10 |
11 | # production
12 | /build
13 |
14 | # misc
15 | .DS_Store
16 | /.env.local
17 | /.env.development.local
18 | /.env.test.local
19 | /.env.production.local
20 |
21 | npm-debug.log*
22 | yarn-debug.log*
23 | yarn-error.log*
24 |
--------------------------------------------------------------------------------
/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "printWidth": 120,
3 | "singleQuote": true,
4 | "trailingComma": "none",
5 | "tabWidth": 2
6 | }
7 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | This project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app).
2 |
3 | ## 1.install
4 |
5 | ### npm
6 |
7 | ```
8 | npm i
9 | or
10 | npm i --legacy-peer-deps
11 | ```
12 |
13 | ### yarn
14 |
15 | ```
16 | yarn install
17 | ```
18 |
19 | ## 2.Start
20 |
21 | ```sh
22 | npm start
23 | or
24 | yarn start
25 | ```
26 |
27 | ## 3.Build
28 |
29 | ```sh
30 | npm run build or yarn build
31 | ```
32 |
33 | Builds the app for production to the `build` folder.
34 | It correctly bundles React in production mode and optimizes the build for the best performance.
35 |
36 | The build is minified and the filenames include the hashes.
37 |
38 | Your app is ready to be deployed.
39 |
40 | ## User Guide
41 |
42 | You can find detailed instructions on using Create React App and many tips in [its documentation](https://facebook.github.io/create-react-app/).
43 |
--------------------------------------------------------------------------------
/ReadMe:
--------------------------------------------------------------------------------
1 | React webflow
2 |
--------------------------------------------------------------------------------
/jsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "es6",
4 | "module": "commonjs",
5 | "baseUrl": "."
6 | },
7 | "include": [
8 | "src/**/*"
9 | ],
10 | "exclude": [
11 | "node_modules"
12 | ]
13 | }
14 |
--------------------------------------------------------------------------------
/public/_redirects:
--------------------------------------------------------------------------------
1 | /* /index.html 200
--------------------------------------------------------------------------------
/public/favicon/android-chrome-192x192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/favicon/android-chrome-192x192.png
--------------------------------------------------------------------------------
/public/favicon/android-chrome-512x512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/favicon/android-chrome-512x512.png
--------------------------------------------------------------------------------
/public/favicon/apple-touch-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/favicon/apple-touch-icon.png
--------------------------------------------------------------------------------
/public/favicon/favicon-16x16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/favicon/favicon-16x16.png
--------------------------------------------------------------------------------
/public/favicon/favicon-32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/favicon/favicon-32x32.png
--------------------------------------------------------------------------------
/public/favicon/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/favicon/favicon.ico
--------------------------------------------------------------------------------
/public/fonts/CircularStd-Bold.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/fonts/CircularStd-Bold.otf
--------------------------------------------------------------------------------
/public/fonts/CircularStd-Book.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/fonts/CircularStd-Book.otf
--------------------------------------------------------------------------------
/public/fonts/CircularStd-Medium.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/fonts/CircularStd-Medium.otf
--------------------------------------------------------------------------------
/public/fonts/Font for H1 Header, Headline, Footer.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/fonts/Font for H1 Header, Headline, Footer.ttf
--------------------------------------------------------------------------------
/public/fonts/Font for H2 Main Slogans.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/fonts/Font for H2 Main Slogans.ttf
--------------------------------------------------------------------------------
/public/fonts/Font for normal Text on Website.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/fonts/Font for normal Text on Website.ttf
--------------------------------------------------------------------------------
/public/fonts/Roboto-Bold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/fonts/Roboto-Bold.ttf
--------------------------------------------------------------------------------
/public/fonts/Roboto-Regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/fonts/Roboto-Regular.ttf
--------------------------------------------------------------------------------
/public/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "React Material Minimal UI",
3 | "short_name": "Minimal-UI",
4 | "display": "standalone",
5 | "start_url": "/",
6 | "theme_color": "#000000",
7 | "background_color": "#ffffff",
8 | "icons": [
9 | {
10 | "src": "favicon/android-chrome-192x192.png",
11 | "sizes": "192x192",
12 | "type": "image/png"
13 | },
14 | {
15 | "src": "favicon/android-chrome-512x512.png",
16 | "sizes": "512x512",
17 | "type": "image/png"
18 | }
19 | ]
20 | }
21 |
--------------------------------------------------------------------------------
/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/public/static/about/avatar-1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/about/avatar-1.jpg
--------------------------------------------------------------------------------
/public/static/about/avatar-2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/about/avatar-2.jpg
--------------------------------------------------------------------------------
/public/static/about/avatar-3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/about/avatar-3.jpg
--------------------------------------------------------------------------------
/public/static/about/avatar-4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/about/avatar-4.jpg
--------------------------------------------------------------------------------
/public/static/about/avatar-5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/about/avatar-5.jpg
--------------------------------------------------------------------------------
/public/static/about/avatar-6.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/about/avatar-6.jpg
--------------------------------------------------------------------------------
/public/static/about/hero.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/about/hero.jpg
--------------------------------------------------------------------------------
/public/static/about/testimonials.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/about/testimonials.jpg
--------------------------------------------------------------------------------
/public/static/about/vision.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/about/vision.jpg
--------------------------------------------------------------------------------
/public/static/about/what-1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/about/what-1.jpg
--------------------------------------------------------------------------------
/public/static/about/what-2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/about/what-2.jpg
--------------------------------------------------------------------------------
/public/static/auth/ic_auth0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/auth/ic_auth0.png
--------------------------------------------------------------------------------
/public/static/auth/ic_cognito.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/auth/ic_cognito.png
--------------------------------------------------------------------------------
/public/static/auth/ic_firebase.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/auth/ic_firebase.png
--------------------------------------------------------------------------------
/public/static/auth/ic_jwt.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/auth/ic_jwt.png
--------------------------------------------------------------------------------
/public/static/bg_card.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/bg_card.png
--------------------------------------------------------------------------------
/public/static/brand/logo_full.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/brand/logo_full.jpg
--------------------------------------------------------------------------------
/public/static/components/accordion.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/accordion.png
--------------------------------------------------------------------------------
/public/static/components/alert.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/alert.png
--------------------------------------------------------------------------------
/public/static/components/animate.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/animate.png
--------------------------------------------------------------------------------
/public/static/components/autocomplete.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/autocomplete.png
--------------------------------------------------------------------------------
/public/static/components/avatar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/avatar.png
--------------------------------------------------------------------------------
/public/static/components/badge.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/badge.png
--------------------------------------------------------------------------------
/public/static/components/breadcrumbs.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/breadcrumbs.png
--------------------------------------------------------------------------------
/public/static/components/buttons.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/buttons.png
--------------------------------------------------------------------------------
/public/static/components/carousel.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/carousel.png
--------------------------------------------------------------------------------
/public/static/components/chart.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/chart.png
--------------------------------------------------------------------------------
/public/static/components/checkbox.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/checkbox.png
--------------------------------------------------------------------------------
/public/static/components/chip.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/chip.png
--------------------------------------------------------------------------------
/public/static/components/color.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/color.png
--------------------------------------------------------------------------------
/public/static/components/copy-to-clipboard.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/copy-to-clipboard.png
--------------------------------------------------------------------------------
/public/static/components/data-grid.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/data-grid.png
--------------------------------------------------------------------------------
/public/static/components/dialog.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/dialog.png
--------------------------------------------------------------------------------
/public/static/components/editor.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/editor.png
--------------------------------------------------------------------------------
/public/static/components/form-validation.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/form-validation.png
--------------------------------------------------------------------------------
/public/static/components/grid.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/grid.png
--------------------------------------------------------------------------------
/public/static/components/icons.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/icons.png
--------------------------------------------------------------------------------
/public/static/components/label.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/label.png
--------------------------------------------------------------------------------
/public/static/components/list.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/list.png
--------------------------------------------------------------------------------
/public/static/components/map.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/map.png
--------------------------------------------------------------------------------
/public/static/components/mega-menu.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/mega-menu.png
--------------------------------------------------------------------------------
/public/static/components/menu.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/menu.png
--------------------------------------------------------------------------------
/public/static/components/multi-language.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/multi-language.png
--------------------------------------------------------------------------------
/public/static/components/pagination.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/pagination.png
--------------------------------------------------------------------------------
/public/static/components/pickers.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/pickers.png
--------------------------------------------------------------------------------
/public/static/components/popover.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/popover.png
--------------------------------------------------------------------------------
/public/static/components/progress.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/progress.png
--------------------------------------------------------------------------------
/public/static/components/radio-button.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/radio-button.png
--------------------------------------------------------------------------------
/public/static/components/rating.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/rating.png
--------------------------------------------------------------------------------
/public/static/components/shadows.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/shadows.png
--------------------------------------------------------------------------------
/public/static/components/slider.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/slider.png
--------------------------------------------------------------------------------
/public/static/components/snackbar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/snackbar.png
--------------------------------------------------------------------------------
/public/static/components/stepper.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/stepper.png
--------------------------------------------------------------------------------
/public/static/components/switch.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/switch.png
--------------------------------------------------------------------------------
/public/static/components/table.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/table.png
--------------------------------------------------------------------------------
/public/static/components/tabs.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/tabs.png
--------------------------------------------------------------------------------
/public/static/components/text-field.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/text-field.png
--------------------------------------------------------------------------------
/public/static/components/textfield.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/textfield.png
--------------------------------------------------------------------------------
/public/static/components/timeline.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/timeline.png
--------------------------------------------------------------------------------
/public/static/components/tooltip.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/tooltip.png
--------------------------------------------------------------------------------
/public/static/components/transfer-list.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/transfer-list.png
--------------------------------------------------------------------------------
/public/static/components/tree-view.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/tree-view.png
--------------------------------------------------------------------------------
/public/static/components/typography.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/typography.png
--------------------------------------------------------------------------------
/public/static/components/upload.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/components/upload.png
--------------------------------------------------------------------------------
/public/static/contact/hero.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/contact/hero.jpg
--------------------------------------------------------------------------------
/public/static/faqs/hero.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/faqs/hero.jpg
--------------------------------------------------------------------------------
/public/static/home/clean-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/clean-1.png
--------------------------------------------------------------------------------
/public/static/home/clean-10.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/clean-10.png
--------------------------------------------------------------------------------
/public/static/home/clean-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/clean-2.png
--------------------------------------------------------------------------------
/public/static/home/clean-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/clean-3.png
--------------------------------------------------------------------------------
/public/static/home/clean-4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/clean-4.png
--------------------------------------------------------------------------------
/public/static/home/clean-5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/clean-5.png
--------------------------------------------------------------------------------
/public/static/home/clean-6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/clean-6.png
--------------------------------------------------------------------------------
/public/static/home/clean-7.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/clean-7.png
--------------------------------------------------------------------------------
/public/static/home/clean-8.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/clean-8.png
--------------------------------------------------------------------------------
/public/static/home/clean-9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/clean-9.png
--------------------------------------------------------------------------------
/public/static/home/darkmode.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/darkmode.png
--------------------------------------------------------------------------------
/public/static/home/hero.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/hero.png
--------------------------------------------------------------------------------
/public/static/home/lightmode.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/lightmode.png
--------------------------------------------------------------------------------
/public/static/home/rocket.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/rocket.png
--------------------------------------------------------------------------------
/public/static/home/screen_dark_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/screen_dark_1.png
--------------------------------------------------------------------------------
/public/static/home/screen_dark_2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/screen_dark_2.png
--------------------------------------------------------------------------------
/public/static/home/screen_dark_3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/screen_dark_3.png
--------------------------------------------------------------------------------
/public/static/home/screen_light_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/screen_light_1.png
--------------------------------------------------------------------------------
/public/static/home/screen_light_2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/screen_light_2.png
--------------------------------------------------------------------------------
/public/static/home/screen_light_3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/screen_light_3.png
--------------------------------------------------------------------------------
/public/static/home/theme-color/block1-blue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/theme-color/block1-blue.png
--------------------------------------------------------------------------------
/public/static/home/theme-color/block1-cyan.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/theme-color/block1-cyan.png
--------------------------------------------------------------------------------
/public/static/home/theme-color/block1-default.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/theme-color/block1-default.png
--------------------------------------------------------------------------------
/public/static/home/theme-color/block1-orange.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/theme-color/block1-orange.png
--------------------------------------------------------------------------------
/public/static/home/theme-color/block1-purple.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/theme-color/block1-purple.png
--------------------------------------------------------------------------------
/public/static/home/theme-color/block1-red.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/theme-color/block1-red.png
--------------------------------------------------------------------------------
/public/static/home/theme-color/block2-blue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/theme-color/block2-blue.png
--------------------------------------------------------------------------------
/public/static/home/theme-color/block2-cyan.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/theme-color/block2-cyan.png
--------------------------------------------------------------------------------
/public/static/home/theme-color/block2-default.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/theme-color/block2-default.png
--------------------------------------------------------------------------------
/public/static/home/theme-color/block2-orange.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/theme-color/block2-orange.png
--------------------------------------------------------------------------------
/public/static/home/theme-color/block2-purple.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/theme-color/block2-purple.png
--------------------------------------------------------------------------------
/public/static/home/theme-color/block2-red.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/theme-color/block2-red.png
--------------------------------------------------------------------------------
/public/static/home/theme-color/grid.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/theme-color/grid.png
--------------------------------------------------------------------------------
/public/static/home/theme-color/screen-blue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/theme-color/screen-blue.png
--------------------------------------------------------------------------------
/public/static/home/theme-color/screen-cyan.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/theme-color/screen-cyan.png
--------------------------------------------------------------------------------
/public/static/home/theme-color/screen-default.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/theme-color/screen-default.png
--------------------------------------------------------------------------------
/public/static/home/theme-color/screen-orange.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/theme-color/screen-orange.png
--------------------------------------------------------------------------------
/public/static/home/theme-color/screen-purple.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/theme-color/screen-purple.png
--------------------------------------------------------------------------------
/public/static/home/theme-color/screen-red.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/theme-color/screen-red.png
--------------------------------------------------------------------------------
/public/static/home/theme-color/sidebar-blue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/theme-color/sidebar-blue.png
--------------------------------------------------------------------------------
/public/static/home/theme-color/sidebar-cyan.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/theme-color/sidebar-cyan.png
--------------------------------------------------------------------------------
/public/static/home/theme-color/sidebar-default.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/theme-color/sidebar-default.png
--------------------------------------------------------------------------------
/public/static/home/theme-color/sidebar-orange.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/theme-color/sidebar-orange.png
--------------------------------------------------------------------------------
/public/static/home/theme-color/sidebar-purple.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/theme-color/sidebar-purple.png
--------------------------------------------------------------------------------
/public/static/home/theme-color/sidebar-red.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/home/theme-color/sidebar-red.png
--------------------------------------------------------------------------------
/public/static/icons/controls/arrow-ios-back.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/static/icons/controls/arrow-ios-forward.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/static/icons/controls/close.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/static/icons/controls/maximize-outline.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/static/icons/controls/minimize-outline.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/static/icons/editor/align_center.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/static/icons/editor/align_justify.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/static/icons/editor/align_left.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/static/icons/editor/align_right.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/static/icons/editor/emoji.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/static/icons/editor/history_redo.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/static/icons/editor/history_undo.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/static/icons/editor/image.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/static/icons/editor/inline_underline.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/static/icons/editor/list_indent.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/static/icons/editor/list_ordered.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/static/icons/editor/list_outdent.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/static/icons/editor/list_unordered.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/static/icons/editor/remove.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/static/icons/ic_design.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/static/icons/ic_drive.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/static/icons/ic_dropbox.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/static/icons/ic_flag_fr.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/static/icons/ic_mastercard.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/static/icons/ic_visa.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/static/icons/json-logo.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/static/icons/love-camera.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/static/icons/navbar/ic_chat.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/static/icons/navbar/ic_dashboard.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/static/icons/navbar/ic_kanban.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/public/static/icons/navbar/ic_mail.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/static/icons/navbar/ic_user.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/static/icons/shape-avatar.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/static/icons/shield.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/static/illustrations/illustration_components.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/illustrations/illustration_components.png
--------------------------------------------------------------------------------
/public/static/illustrations/illustration_dashboard.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/illustrations/illustration_dashboard.png
--------------------------------------------------------------------------------
/public/static/illustrations/illustration_invite.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/illustrations/illustration_invite.png
--------------------------------------------------------------------------------
/public/static/illustrations/illustration_login.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/illustrations/illustration_login.png
--------------------------------------------------------------------------------
/public/static/illustrations/illustration_register.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/illustrations/illustration_register.png
--------------------------------------------------------------------------------
/public/static/mock-images/avatars/avatar_1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/avatars/avatar_1.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/avatars/avatar_10.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/avatars/avatar_10.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/avatars/avatar_11.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/avatars/avatar_11.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/avatars/avatar_12.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/avatars/avatar_12.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/avatars/avatar_13.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/avatars/avatar_13.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/avatars/avatar_14.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/avatars/avatar_14.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/avatars/avatar_15.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/avatars/avatar_15.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/avatars/avatar_16.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/avatars/avatar_16.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/avatars/avatar_17.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/avatars/avatar_17.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/avatars/avatar_18.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/avatars/avatar_18.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/avatars/avatar_19.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/avatars/avatar_19.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/avatars/avatar_2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/avatars/avatar_2.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/avatars/avatar_20.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/avatars/avatar_20.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/avatars/avatar_21.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/avatars/avatar_21.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/avatars/avatar_22.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/avatars/avatar_22.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/avatars/avatar_23.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/avatars/avatar_23.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/avatars/avatar_24.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/avatars/avatar_24.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/avatars/avatar_3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/avatars/avatar_3.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/avatars/avatar_4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/avatars/avatar_4.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/avatars/avatar_5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/avatars/avatar_5.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/avatars/avatar_6.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/avatars/avatar_6.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/avatars/avatar_7.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/avatars/avatar_7.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/avatars/avatar_8.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/avatars/avatar_8.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/avatars/avatar_9.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/avatars/avatar_9.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/avatars/avatar_default.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/avatars/avatar_default.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/covers/cover_1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/covers/cover_1.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/covers/cover_10.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/covers/cover_10.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/covers/cover_11.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/covers/cover_11.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/covers/cover_12.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/covers/cover_12.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/covers/cover_13.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/covers/cover_13.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/covers/cover_14.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/covers/cover_14.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/covers/cover_15.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/covers/cover_15.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/covers/cover_16.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/covers/cover_16.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/covers/cover_17.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/covers/cover_17.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/covers/cover_18.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/covers/cover_18.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/covers/cover_19.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/covers/cover_19.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/covers/cover_2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/covers/cover_2.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/covers/cover_20.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/covers/cover_20.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/covers/cover_21.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/covers/cover_21.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/covers/cover_22.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/covers/cover_22.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/covers/cover_23.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/covers/cover_23.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/covers/cover_24.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/covers/cover_24.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/covers/cover_3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/covers/cover_3.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/covers/cover_4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/covers/cover_4.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/covers/cover_5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/covers/cover_5.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/covers/cover_6.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/covers/cover_6.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/covers/cover_7.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/covers/cover_7.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/covers/cover_8.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/covers/cover_8.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/covers/cover_9.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/covers/cover_9.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/feeds/feed_1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/feeds/feed_1.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/feeds/feed_10.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/feeds/feed_10.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/feeds/feed_11.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/feeds/feed_11.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/feeds/feed_12.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/feeds/feed_12.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/feeds/feed_2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/feeds/feed_2.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/feeds/feed_3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/feeds/feed_3.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/feeds/feed_4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/feeds/feed_4.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/feeds/feed_5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/feeds/feed_5.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/feeds/feed_6.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/feeds/feed_6.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/feeds/feed_7.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/feeds/feed_7.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/feeds/feed_8.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/feeds/feed_8.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/feeds/feed_9.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/feeds/feed_9.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/products/product_1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/products/product_1.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/products/product_10.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/products/product_10.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/products/product_11.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/products/product_11.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/products/product_12.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/products/product_12.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/products/product_13.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/products/product_13.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/products/product_14.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/products/product_14.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/products/product_15.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/products/product_15.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/products/product_16.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/products/product_16.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/products/product_17.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/products/product_17.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/products/product_18.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/products/product_18.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/products/product_19.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/products/product_19.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/products/product_2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/products/product_2.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/products/product_20.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/products/product_20.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/products/product_21.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/products/product_21.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/products/product_22.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/products/product_22.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/products/product_23.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/products/product_23.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/products/product_24.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/products/product_24.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/products/product_3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/products/product_3.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/products/product_4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/products/product_4.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/products/product_5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/products/product_5.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/products/product_6.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/products/product_6.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/products/product_7.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/products/product_7.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/products/product_8.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/products/product_8.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/products/product_9.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/products/product_9.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/rooms/room-1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/rooms/room-1.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/rooms/room-2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/rooms/room-2.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/rooms/room-3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/rooms/room-3.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/rooms/room-4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/rooms/room-4.jpg
--------------------------------------------------------------------------------
/public/static/mock-images/rooms/room-5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/public/static/mock-images/rooms/room-5.jpg
--------------------------------------------------------------------------------
/public/static/overlay.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/static/placeholder.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/_apis_/index.js:
--------------------------------------------------------------------------------
1 | import './chat';
2 | import './mail';
3 | import './blog';
4 | import './user';
5 | import './account';
6 | import './calendar';
7 | import './products';
8 | import './kanban';
9 |
--------------------------------------------------------------------------------
/src/_apis_/mock.js:
--------------------------------------------------------------------------------
1 | import AxiosMockAdapter from 'axios-mock-adapter';
2 | // utils
3 | import axios from '../utils/axios';
4 |
5 | // ----------------------------------------------------------------------
6 |
7 | const axiosMockAdapter = new AxiosMockAdapter(axios, {
8 | delayResponse: 0
9 | });
10 |
11 | export default axiosMockAdapter;
12 |
--------------------------------------------------------------------------------
/src/apis/payment.js:
--------------------------------------------------------------------------------
1 | import Amplify, { API } from 'aws-amplify';
2 | import awsconfig from '../aws-exports';
3 |
4 | Amplify.configure(awsconfig);
5 |
6 | async function paymentIntent(data) {
7 | try {
8 | const apiName = 'stripeApi';
9 | const path = '/stripeIntent';
10 | const myInit = {
11 | body: { data },
12 | headers: {
13 | 'Content-Type': 'application/json'
14 | }
15 | };
16 | const result = await API.post(apiName, path, myInit);
17 | return Promise.resolve({ data: result });
18 | } catch (error) {
19 | return Promise.reject(error);
20 | }
21 | }
22 |
23 | export { paymentIntent };
24 |
--------------------------------------------------------------------------------
/src/components/@material-extend/MHidden.js:
--------------------------------------------------------------------------------
1 | import PropTypes from 'prop-types';
2 | // material
3 | import { useMediaQuery } from '@material-ui/core';
4 |
5 | // ----------------------------------------------------------------------
6 |
7 | MHidden.propTypes = {
8 | children: PropTypes.node,
9 | width: PropTypes.oneOf(['xsDown', 'smDown', 'mdDown', 'lgDown', 'xlDown', 'xsUp', 'smUp', 'mdUp', 'lgUp', 'xlUp'])
10 | .isRequired
11 | };
12 |
13 | export default function MHidden({ width, children }) {
14 | const breakpoint = width.substring(0, 2);
15 |
16 | const hiddenUp = useMediaQuery((theme) => theme.breakpoints.up(breakpoint));
17 | const hiddenDown = useMediaQuery((theme) => theme.breakpoints.down(breakpoint));
18 |
19 | if (width.includes('Down')) {
20 | return hiddenDown ? null : children;
21 | }
22 |
23 | if (width.includes('Up')) {
24 | return hiddenUp ? null : children;
25 | }
26 |
27 | return null;
28 | }
29 |
--------------------------------------------------------------------------------
/src/components/@material-extend/MIconButton.js:
--------------------------------------------------------------------------------
1 | import PropTypes from 'prop-types';
2 | import { forwardRef } from 'react';
3 | // material
4 | import { IconButton } from '@material-ui/core';
5 | //
6 | import { ButtonAnimate } from '../animate';
7 |
8 | // ----------------------------------------------------------------------
9 |
10 | const MIconButton = forwardRef(({ children, ...other }, ref) => (
11 |
12 |
13 | {children}
14 |
15 |
16 | ));
17 |
18 | MIconButton.propTypes = {
19 | children: PropTypes.node
20 | };
21 |
22 | export default MIconButton;
23 |
--------------------------------------------------------------------------------
/src/components/@material-extend/index.js:
--------------------------------------------------------------------------------
1 | export { default as MAvatar } from './MAvatar';
2 | export { default as MBreadcrumbs } from './MBreadcrumbs';
3 | export { default as MFab } from './MFab';
4 | export { default as MIconButton } from './MIconButton';
5 | export { default as MHidden } from './MHidden';
6 |
--------------------------------------------------------------------------------
/src/components/GoogleAnalytics.js:
--------------------------------------------------------------------------------
1 | import { Helmet } from 'react-helmet-async';
2 | import { googleAnalyticsConfig } from '../config';
3 |
4 | // ----------------------------------------------------------------------
5 |
6 | const GA_MEASUREMENT_ID = googleAnalyticsConfig;
7 |
8 | export default function GoogleAnalytics() {
9 | return (
10 |
11 |
12 |
24 |
25 | );
26 | }
27 |
--------------------------------------------------------------------------------
/src/components/MyAvatar.js:
--------------------------------------------------------------------------------
1 | // hooks
2 | import useAuth from '../hooks/useAuth';
3 | //
4 | import { MAvatar } from './@material-extend';
5 | import createAvatar from '../utils/createAvatar';
6 |
7 | // ----------------------------------------------------------------------
8 |
9 | export default function MyAvatar({ ...other }) {
10 | const { user } = useAuth();
11 |
12 | return (
13 |
19 | {createAvatar(user.displayName).name}
20 |
21 | );
22 | }
23 |
--------------------------------------------------------------------------------
/src/components/RtlLayout.js:
--------------------------------------------------------------------------------
1 | import PropTypes from 'prop-types';
2 | import { useEffect } from 'react';
3 | // rtl
4 | import rtlPlugin from 'stylis-plugin-rtl';
5 | // emotion
6 | import createCache from '@emotion/cache';
7 | import { CacheProvider } from '@emotion/react';
8 | // material
9 | import { useTheme } from '@material-ui/core/styles';
10 |
11 | // ----------------------------------------------------------------------
12 |
13 | RtlLayout.propTypes = {
14 | children: PropTypes.node
15 | };
16 |
17 | export default function RtlLayout({ children }) {
18 | const theme = useTheme();
19 |
20 | useEffect(() => {
21 | document.dir = theme.direction;
22 | }, [theme.direction]);
23 |
24 | const cacheRtl = createCache({
25 | key: theme.direction === 'rtl' ? 'rtl' : 'css',
26 | stylisPlugins: theme.direction === 'rtl' ? [rtlPlugin] : []
27 | });
28 |
29 | cacheRtl.compat = true;
30 |
31 | return {children};
32 | }
33 |
--------------------------------------------------------------------------------
/src/components/ScrollToTop.js:
--------------------------------------------------------------------------------
1 | import { useEffect } from 'react';
2 | import { useLocation } from 'react-router-dom';
3 |
4 | // ----------------------------------------------------------------------
5 |
6 | export default function ScrollToTop() {
7 | const { pathname } = useLocation();
8 |
9 | useEffect(() => {
10 | window.scrollTo(0, 0);
11 | }, [pathname]);
12 |
13 | return null;
14 | }
15 |
--------------------------------------------------------------------------------
/src/components/SearchNotFound.js:
--------------------------------------------------------------------------------
1 | import PropTypes from 'prop-types';
2 | // material
3 | import { Paper, Typography } from '@material-ui/core';
4 |
5 | // ----------------------------------------------------------------------
6 |
7 | SearchNotFound.propTypes = {
8 | searchQuery: PropTypes.string
9 | };
10 |
11 | export default function SearchNotFound({ searchQuery = '', ...other }) {
12 | return (
13 |
14 |
15 | Not found
16 |
17 |
18 | No results found for
19 | "{searchQuery}". Try checking for typos or using complete words.
20 |
21 |
22 | );
23 | }
24 |
--------------------------------------------------------------------------------
/src/components/SvgIconStyle.js:
--------------------------------------------------------------------------------
1 | import PropTypes from 'prop-types';
2 | import { Box } from '@material-ui/core';
3 |
4 | // ----------------------------------------------------------------------
5 |
6 | SvgIconStyle.propTypes = {
7 | src: PropTypes.string.isRequired,
8 | color: PropTypes.string,
9 | sx: PropTypes.object
10 | };
11 |
12 | export default function SvgIconStyle({ src, color = 'inherit', sx }) {
13 | return (
14 |
29 | );
30 | }
31 |
--------------------------------------------------------------------------------
/src/components/ThemeLocalization.js:
--------------------------------------------------------------------------------
1 | import PropTypes from 'prop-types';
2 | // material
3 | import { ThemeProvider, createTheme, useTheme } from '@material-ui/core/styles';
4 | // hooks
5 | import useLocales from '../hooks/useLocales';
6 |
7 | // ----------------------------------------------------------------------
8 |
9 | ThemeLocalization.propTypes = {
10 | children: PropTypes.node
11 | };
12 |
13 | export default function ThemeLocalization({ children }) {
14 | const defaultTheme = useTheme();
15 | const { currentLang } = useLocales();
16 |
17 | const theme = createTheme(defaultTheme, currentLang.systemValue);
18 |
19 | return {children};
20 | }
21 |
--------------------------------------------------------------------------------
/src/components/_dashboard/blog/BlogPostsSort.js:
--------------------------------------------------------------------------------
1 | import PropTypes from 'prop-types';
2 | // material
3 | import { MenuItem, TextField } from '@material-ui/core';
4 |
5 | // ----------------------------------------------------------------------
6 |
7 | BlogPostsSort.propTypes = {
8 | query: PropTypes.string,
9 | options: PropTypes.array,
10 | onSort: PropTypes.func
11 | };
12 |
13 | export default function BlogPostsSort({ query, options, onSort }) {
14 | return (
15 |
16 | {options.map((option) => (
17 |
20 | ))}
21 |
22 | );
23 | }
24 |
--------------------------------------------------------------------------------
/src/components/_dashboard/blog/index.js:
--------------------------------------------------------------------------------
1 | export { default as BlogNewPostForm } from './BlogNewPostForm';
2 | export { default as BlogNewPostPreview } from './BlogNewPostPreview';
3 | export { default as BlogPostCard } from './BlogPostCard';
4 | export { default as BlogPostCommentForm } from './BlogPostCommentForm';
5 | export { default as BlogPostCommentItem } from './BlogPostCommentItem';
6 | export { default as BlogPostCommentList } from './BlogPostCommentList';
7 | export { default as BlogPostHero } from './BlogPostHero';
8 | export { default as BlogPostRecent } from './BlogPostRecent';
9 | export { default as BlogPostsSearch } from './BlogPostsSearch';
10 | export { default as BlogPostsSort } from './BlogPostsSort';
11 | export { default as BlogPostTags } from './BlogPostTags';
12 |
--------------------------------------------------------------------------------
/src/components/_dashboard/calendar/index.js:
--------------------------------------------------------------------------------
1 | export { default as CalendarForm } from './CalendarForm';
2 | export { default as CalendarToolbar } from './CalendarToolbar';
3 | export { default as CalendarStyle } from './CalendarStyle';
4 |
--------------------------------------------------------------------------------
/src/components/_dashboard/e-commerce/checkout/index.js:
--------------------------------------------------------------------------------
1 | export { default as CheckoutBillingAddress } from './CheckoutBillingAddress';
2 | export { default as CheckoutBillingInfo } from './CheckoutBillingInfo';
3 | export { default as CheckoutCart } from './CheckoutCart';
4 | export { default as CheckoutDelivery } from './CheckoutDelivery';
5 | export { default as CheckoutNewAddressForm } from './CheckoutNewAddressForm';
6 | export { default as CheckoutOrderComplete } from './CheckoutOrderComplete';
7 | export { default as CheckoutPayment } from './CheckoutPayment';
8 | export { default as CheckoutPaymentMethods } from './CheckoutPaymentMethods';
9 | export { default as CheckoutProductList } from './CheckoutProductList';
10 | export { default as CheckoutSummary } from './CheckoutSummary';
11 |
--------------------------------------------------------------------------------
/src/components/_dashboard/e-commerce/invoice/index.js:
--------------------------------------------------------------------------------
1 | export { default as InvoicePDF } from './InvoicePDF';
2 | export { default as InvoiceToolbar } from './InvoiceToolbar';
3 |
--------------------------------------------------------------------------------
/src/components/_dashboard/e-commerce/product-details/index.js:
--------------------------------------------------------------------------------
1 | export { default as ProductDetailsCarousel } from './ProductDetailsCarousel';
2 | export { default as ProductDetailsReview } from './ProductDetailsReview';
3 | export { default as ProductDetailsReviewForm } from './ProductDetailsReview';
4 | export { default as ProductDetailsReviewList } from './ProductDetailsReviewList';
5 | export { default as ProductDetailsReviewOverview } from './ProductDetailsReviewOverview';
6 | export { default as ProductDetailsSumary } from './ProductDetailsSumary';
7 |
--------------------------------------------------------------------------------
/src/components/_dashboard/e-commerce/product-list/index.js:
--------------------------------------------------------------------------------
1 | export { default as ProductListHead } from './ProductListHead';
2 | export { default as ProductListToolbar } from './ProductListToolbar';
3 | export { default as ProductMoreMenu } from './ProductMoreMenu';
4 |
--------------------------------------------------------------------------------
/src/components/_dashboard/e-commerce/shop/index.js:
--------------------------------------------------------------------------------
1 | export { default as ShopTagFiltered } from './ShopTagFiltered';
2 | export { default as ShopFilterSidebar } from './ShopFilterSidebar';
3 | export { default as ShopProductCard } from './ShopProductCard';
4 | export { default as ShopProductList } from './ShopProductList';
5 | export { default as ShopProductSort } from './ShopProductSort';
6 |
--------------------------------------------------------------------------------
/src/components/_dashboard/general-analytics/index.js:
--------------------------------------------------------------------------------
1 | export { default as AnalyticsBugReports } from './AnalyticsBugReports';
2 | export { default as AnalyticsConversionRates } from './AnalyticsConversionRates';
3 | export { default as AnalyticsCurrentSubject } from './AnalyticsCurrentSubject';
4 | export { default as AnalyticsCurrentVisits } from './AnalyticsCurrentVisits';
5 | export { default as AnalyticsItemOrders } from './AnalyticsItemOrders';
6 | export { default as AnalyticsNewsUpdate } from './AnalyticsNewsUpdate';
7 | export { default as AnalyticsNewUsers } from './AnalyticsNewUsers';
8 | export { default as AnalyticsOrderTimeline } from './AnalyticsOrderTimeline';
9 | export { default as AnalyticsTasks } from './AnalyticsTasks';
10 | export { default as AnalyticsTrafficBySite } from './AnalyticsTrafficBySite';
11 | export { default as AnalyticsWebsiteVisits } from './AnalyticsWebsiteVisits';
12 | export { default as AnalyticsWeeklySales } from './AnalyticsWeeklySales';
13 |
--------------------------------------------------------------------------------
/src/components/_dashboard/general-app/index.js:
--------------------------------------------------------------------------------
1 | export { default as AppAreaInstalled } from './AppAreaInstalled';
2 | export { default as AppCurrentDownload } from './AppCurrentDownload';
3 | export { default as AppFeatured } from './AppFeatured';
4 | export { default as AppNewInvoice } from './AppNewInvoice';
5 | export { default as AppTopAuthors } from './AppTopAuthors';
6 | export { default as AppTopInstalledCountries } from './AppTopInstalledCountries';
7 | export { default as AppTopRelated } from './AppTopRelated';
8 | export { default as AppTotalActiveUsers } from './AppTotalActiveUsers';
9 | export { default as AppTotalDownloads } from './AppTotalDownloads';
10 | export { default as AppTotalInstalled } from './AppTotalInstalled';
11 | export { default as AppWelcome } from './AppWelcome';
12 | export { default as AppWidgets1 } from './AppWidgets1';
13 | export { default as AppWidgets2 } from './AppWidgets2';
14 |
--------------------------------------------------------------------------------
/src/components/_dashboard/general-banking/index.js:
--------------------------------------------------------------------------------
1 | export { default as BankingIncome } from './BankingIncome';
2 | export { default as BankingExpenses } from './BankingExpenses';
3 | export { default as BankingContacts } from './BankingContacts';
4 | export { default as BankingQuickTransfer } from './BankingQuickTransfer';
5 | export { default as BankingInviteFriends } from './BankingInviteFriends';
6 | export { default as BankingCurrentBalance } from './BankingCurrentBalance';
7 | export { default as BankingBalanceStatistics } from './BankingBalanceStatistics';
8 | export { default as BankingRecentTransitions } from './BankingRecentTransitions';
9 | export { default as BankingExpensesCategories } from './BankingExpensesCategories';
10 |
--------------------------------------------------------------------------------
/src/components/_dashboard/general-booking/index.js:
--------------------------------------------------------------------------------
1 | export { default as BookingTotal } from './BookingTotal';
2 | export { default as BookingCheckIn } from './BookingCheckIn';
3 | export { default as BookingDetails } from './BookingDetails';
4 | export { default as BookingCheckOut } from './BookingCheckOut';
5 | export { default as BookingBookedRoom } from './BookingBookedRoom';
6 | export { default as BookingTotalIncomes } from './BookingTotalIncomes';
7 | export { default as BookingRoomAvailable } from './BookingRoomAvailable';
8 | export { default as BookingNewestBooking } from './BookingNewestBooking';
9 | export { default as BookingCheckInWidgets } from './BookingCheckInWidgets';
10 | export { default as BookingCustomerReviews } from './BookingCustomerReviews';
11 | export { default as BookingReservationStats } from './BookingReservationStats';
12 |
--------------------------------------------------------------------------------
/src/components/_dashboard/general-ecommerce/index.js:
--------------------------------------------------------------------------------
1 | export { default as EcommerceWelcome } from './EcommerceWelcome';
2 | export { default as EcommerceNewProducts } from './EcommerceNewProducts';
3 | export { default as EcommerceProductSold } from './EcommerceProductSold';
4 | export { default as EcommerceSalesProfit } from './EcommerceSalesProfit';
5 | export { default as EcommerceYearlySales } from './EcommerceYearlySales';
6 | export { default as EcommerceBestSalesman } from './EcommerceBestSalesman';
7 | export { default as EcommerceTotalBalance } from './EcommerceTotalBalance';
8 | export { default as EcommerceSaleByGender } from './EcommerceSaleByGender';
9 | export { default as EcommerceSalesOverview } from './EcommerceSalesOverview';
10 | export { default as EcommerceLatestProducts } from './EcommerceLatestProducts';
11 | export { default as EcommerceCurrentBalance } from './EcommerceCurrentBalance';
12 |
--------------------------------------------------------------------------------
/src/components/_dashboard/home/WorkflowPreviewAndLogs.js:
--------------------------------------------------------------------------------
1 | import * as React from 'react';
2 | import { styled } from '@material-ui/styles';
3 |
4 | const RootDiv = styled('div')(({ theme }) => ({
5 | height: 100,
6 | width: '100%',
7 | border: '1px solid currentColor',
8 | display: 'flex'
9 | }));
10 |
11 | const Preview = styled('div')(({ theme }) => ({
12 | borderRight: '1px solid currentColor',
13 | width: '70%',
14 | padding: 5,
15 | fontSize: 14
16 | }));
17 |
18 | const Logs = styled('div')({
19 | display: 'flex',
20 | flexGrow: 1,
21 | padding: 5,
22 | fontSize: 14
23 | });
24 |
25 | export default function Details() {
26 | return (
27 |
28 | Preview
29 | Logs
30 |
31 | );
32 | }
33 |
--------------------------------------------------------------------------------
/src/components/_dashboard/home/index.js:
--------------------------------------------------------------------------------
1 | export { default as WorkflowHeader } from './WorkflowHeader';
2 | export { default as ElementsList } from './ElementsList';
3 | export { default as WorkflowDetails } from './WorkflowDetails';
4 | export { default as WorkflowPreviewAndLogs } from './WorkflowPreviewAndLogs';
5 |
--------------------------------------------------------------------------------
/src/components/_dashboard/kanban/index.js:
--------------------------------------------------------------------------------
1 | export { default as KanbanCard } from './KanbanTaskCard';
2 | export { default as KanbanColumn } from './KanbanColumn';
3 | export { default as KanbanColumnAdd } from './KanbanColumnAdd';
4 |
--------------------------------------------------------------------------------
/src/components/_dashboard/mail/index.js:
--------------------------------------------------------------------------------
1 | export { default as MailCompose } from './MailCompose';
2 | export { default as MailDetails } from './MailDetails';
3 | export { default as MailDetailsAttachments } from './MailDetailsAttachments';
4 | export { default as MailDetailsReplyInput } from './MailDetailsReplyInput';
5 | export { default as MailDetailsToolbar } from './MailDetailsToolbar';
6 | export { default as MailList } from './MailList';
7 | export { default as MailItem } from './MailItem';
8 | export { default as MailItemAction } from './MailItemAction';
9 | export { default as MailToolbar } from './MailToolbar';
10 | export { default as MailSidebar } from './MailSidebar';
11 | export { default as MailSidebarItem } from './MailSidebarItem';
12 |
--------------------------------------------------------------------------------
/src/components/_dashboard/projects/index.js:
--------------------------------------------------------------------------------
1 | export { default as ProjectsFilter } from './ProjectsFilter';
2 |
--------------------------------------------------------------------------------
/src/components/_dashboard/user/account/index.js:
--------------------------------------------------------------------------------
1 | export { default as AccountBilling } from './AccountBilling';
2 | export { default as AccountBillingAddressBook } from './AccountBillingAddressBook';
3 | export { default as AccountBillingInvoiceHistory } from './AccountBillingInvoiceHistory';
4 | export { default as AccountBillingPaymentMethod } from './AccountBillingPaymentMethod';
5 | export { default as AccountChangePassword } from './AccountChangePassword';
6 | export { default as AccountGeneral } from './AccountGeneral';
7 | export { default as AccountNotifications } from './AccountNotifications';
8 | export { default as AccountSocialLinks } from './AccountSocialLinks';
9 |
--------------------------------------------------------------------------------
/src/components/_dashboard/user/cards/index.js:
--------------------------------------------------------------------------------
1 | export { default as UserCard } from './UserCard';
2 |
--------------------------------------------------------------------------------
/src/components/_dashboard/user/list/index.js:
--------------------------------------------------------------------------------
1 | export { default as UserListHead } from './UserListHead';
2 | export { default as UserListToolbar } from './UserListToolbar';
3 | export { default as UserMoreMenu } from './UserMoreMenu';
4 |
--------------------------------------------------------------------------------
/src/components/_dashboard/user/profile/index.js:
--------------------------------------------------------------------------------
1 | export { default as Profile } from './Profile';
2 | export { default as ProfileCover } from './ProfileCover';
3 | export { default as ProfileFriends } from './ProfileFriends';
4 | export { default as ProfileGallery } from './ProfileGallery';
5 | export { default as ProfilePostCard } from './ProfilePostCard';
6 | export { default as ProfileAbout } from './ProfileAbout';
7 | export { default as ProfileFollowers } from './ProfileFollowers';
8 | export { default as ProfileFollowInfo } from './ProfileFollowInfo';
9 | export { default as ProfileSocialInfo } from './ProfileSocialInfo';
10 | export { default as ProfilePostProfileInput } from './ProfilePostInput';
11 |
--------------------------------------------------------------------------------
/src/components/_dashboard/workflow/Details.js:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/src/components/_dashboard/workflow/Details.js
--------------------------------------------------------------------------------
/src/components/_dashboard/workflow/Footer.js:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/src/components/_dashboard/workflow/Footer.js
--------------------------------------------------------------------------------
/src/components/_dashboard/workflow/InputElement.js:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/src/components/_dashboard/workflow/InputElement.js
--------------------------------------------------------------------------------
/src/components/_external-pages/about/index.js:
--------------------------------------------------------------------------------
1 | export { default as AboutHero } from './AboutHero';
2 | export { default as AboutWhat } from './AboutWhat';
3 | export { default as AboutTeam } from './AboutTeam';
4 | export { default as AboutVision } from './AboutVision';
5 | export { default as AboutTestimonials } from './AboutTestimonials';
6 |
--------------------------------------------------------------------------------
/src/components/_external-pages/components-overview/ComponentExtra.js:
--------------------------------------------------------------------------------
1 | // material
2 | import { Typography, Grid } from '@material-ui/core';
3 | //
4 | import ComponentCard from './ComponentCard';
5 | import { EXTRA_LIST } from './PathConfig';
6 |
7 | // ----------------------------------------------------------------------
8 |
9 | export default function ComponentExtra() {
10 | return (
11 |
12 |
13 |
14 | Extra Component
15 |
16 |
17 | Chart, Map, Editor…
18 |
19 |
20 |
21 |
22 |
23 | {EXTRA_LIST.map((item) => (
24 |
25 | ))}
26 |
27 |
28 |
29 | );
30 | }
31 |
--------------------------------------------------------------------------------
/src/components/_external-pages/components-overview/ComponentFoundation.js:
--------------------------------------------------------------------------------
1 | // material
2 | import { Typography, Grid } from '@material-ui/core';
3 | //
4 | import ComponentCard from './ComponentCard';
5 | import { FOUNDATION_LIST } from './PathConfig';
6 |
7 | // ----------------------------------------------------------------------
8 |
9 | export default function ComponentFoundation() {
10 | return (
11 |
12 |
13 |
14 | Foundation
15 |
16 |
17 | Colors, Typography, Shadows…
18 |
19 |
20 |
21 |
22 |
23 | {FOUNDATION_LIST.map((item) => (
24 |
25 | ))}
26 |
27 |
28 |
29 | );
30 | }
31 |
--------------------------------------------------------------------------------
/src/components/_external-pages/components-overview/ComponentMaterialUI.js:
--------------------------------------------------------------------------------
1 | // material
2 | import { Typography, Grid } from '@material-ui/core';
3 | //
4 | import ComponentCard from './ComponentCard';
5 | import { MATERIAL_LIST } from './PathConfig';
6 |
7 | // ----------------------------------------------------------------------
8 |
9 | export default function ComponentMaterialUI() {
10 | return (
11 |
12 |
13 |
14 | Material UI
15 |
16 |
17 | Components from Material-UI©
18 |
19 |
20 |
21 |
22 |
23 | {MATERIAL_LIST.map((item) => (
24 |
25 | ))}
26 |
27 |
28 |
29 | );
30 | }
31 |
--------------------------------------------------------------------------------
/src/components/_external-pages/components-overview/index.js:
--------------------------------------------------------------------------------
1 | export { default as ComponentHero } from './ComponentHero';
2 | export { default as ComponentFoundation } from './ComponentFoundation';
3 | export { default as ComponentMaterialUI } from './ComponentMaterialUI';
4 | export { default as ComponentOther } from './ComponentExtra';
5 |
--------------------------------------------------------------------------------
/src/components/_external-pages/contact/index.js:
--------------------------------------------------------------------------------
1 | export { default as ContactHero } from './ContactHero';
2 | export { default as ContactForm } from './ContactForm';
3 | export { default as ContactMap } from './ContactMap';
4 |
--------------------------------------------------------------------------------
/src/components/_external-pages/faqs/index.js:
--------------------------------------------------------------------------------
1 | export { default as FaqsHero } from './FaqsHero';
2 | export { default as FaqsList } from './FaqsList';
3 | export { default as FaqsForm } from './FaqsForm';
4 | export { default as FaqsCategory } from './FaqsCategory';
5 |
--------------------------------------------------------------------------------
/src/components/_external-pages/landing/index.js:
--------------------------------------------------------------------------------
1 | export { default as LandingHero } from './LandingHero';
2 | export { default as LandingMinimal } from './LandingMinimal';
3 | export { default as LandingDarkMode } from './LandingDarkMode';
4 | export { default as LandingThemeColor } from './LandingThemeColor';
5 | export { default as LandingPricingPlans } from './LandingPricingPlans';
6 | export { default as LandingAdvertisement } from './LandingAdvertisement';
7 | export { default as LandingCleanInterfaces } from './LandingCleanInterfaces';
8 | export { default as LandingHugePackElements } from './LandingHugePackElements';
9 |
--------------------------------------------------------------------------------
/src/components/_external-pages/payment/index.js:
--------------------------------------------------------------------------------
1 | export { default as PaymentBillingAddress } from './PaymentBillingAddress';
2 | export { default as PaymentMethods } from './PaymentMethods';
3 | export { default as PaymentNewCardForm } from './PaymentNewCardForm';
4 | export { default as PaymentSummary } from './PaymentSummary';
5 |
--------------------------------------------------------------------------------
/src/components/_external-pages/pricing/index.js:
--------------------------------------------------------------------------------
1 | export { default as PricingPlanCard } from './PricingPlanCard';
2 |
--------------------------------------------------------------------------------
/src/components/animate/ButtonAnimate.js:
--------------------------------------------------------------------------------
1 | import PropTypes from 'prop-types';
2 | import { motion } from 'framer-motion';
3 | // material
4 | import { Box } from '@material-ui/core';
5 | //
6 | import { varSmallClick, varMediumClick } from './variants';
7 |
8 | // ----------------------------------------------------------------------
9 |
10 | ButtonAnimate.propTypes = {
11 | mediumClick: PropTypes.bool,
12 | children: PropTypes.node,
13 | sx: PropTypes.object
14 | };
15 |
16 | export default function ButtonAnimate({ mediumClick = false, children, sx, ...other }) {
17 | return (
18 |
26 | {children}
27 |
28 | );
29 | }
30 |
--------------------------------------------------------------------------------
/src/components/animate/MotionContainer.js:
--------------------------------------------------------------------------------
1 | import PropTypes from 'prop-types';
2 | import { motion } from 'framer-motion';
3 | // material
4 | import { Box } from '@material-ui/core';
5 | //
6 | import { varWrapEnter } from './variants';
7 |
8 | // ----------------------------------------------------------------------
9 |
10 | MotionContainer.propTypes = {
11 | open: PropTypes.bool.isRequired,
12 | children: PropTypes.node
13 | };
14 |
15 | export default function MotionContainer({ open, children, ...other }) {
16 | return (
17 |
18 | {children}
19 |
20 | );
21 | }
22 |
--------------------------------------------------------------------------------
/src/components/animate/TextAnimate.js:
--------------------------------------------------------------------------------
1 | import { motion } from 'framer-motion';
2 | import PropTypes from 'prop-types';
3 | // material
4 | import { Typography } from '@material-ui/core';
5 | //
6 | import { varFadeInUp } from './variants';
7 |
8 | // ----------------------------------------------------------------------
9 |
10 | TextAnimate.propTypes = {
11 | text: PropTypes.string,
12 | variants: PropTypes.object,
13 | sx: PropTypes.object
14 | };
15 |
16 | export default function TextAnimate({ text, variants, sx, ...other }) {
17 | return (
18 |
28 | {text.split('').map((letter, index) => (
29 |
30 | {letter}
31 |
32 | ))}
33 |
34 | );
35 | }
36 |
--------------------------------------------------------------------------------
/src/components/animate/index.js:
--------------------------------------------------------------------------------
1 | export * from './variants';
2 | export { default as MotionInView } from './MotionInView';
3 | export { default as MotionContainer } from './MotionContainer';
4 | export { default as DialogAnimate } from './DialogAnimate';
5 | export { default as ButtonAnimate } from './ButtonAnimate';
6 | export { default as TextAnimate } from './TextAnimate';
7 |
--------------------------------------------------------------------------------
/src/components/animate/variants/Actions.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export const varHover = {
4 | hover: { scale: 1.1 }
5 | };
6 |
7 | export const varSmallClick = {
8 | hover: { scale: 1.04 },
9 | tap: { scale: 0.96 }
10 | };
11 |
12 | export const varMediumClick = {
13 | hover: { scale: 1.1 },
14 | tap: { scale: 0.9 }
15 | };
16 |
--------------------------------------------------------------------------------
/src/components/animate/variants/Path.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export const TRANSITION = {
4 | duration: 2,
5 | ease: [0.43, 0.13, 0.23, 0.96]
6 | };
7 |
8 | export const varPath = {
9 | animate: {
10 | fillOpacity: [0, 0, 1],
11 | pathLength: [1, 0.4, 0],
12 | transition: TRANSITION
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/components/animate/variants/Wrap.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export const varWrapEnter = {
4 | animate: {
5 | transition: { staggerChildren: 0.1 }
6 | }
7 | };
8 |
9 | export const varWrapExit = {
10 | exit: {
11 | transition: { staggerChildren: 0.1 }
12 | }
13 | };
14 |
15 | export const varWrapBoth = {
16 | animate: {
17 | transition: { staggerChildren: 0.07, delayChildren: 0.1 }
18 | },
19 | exit: {
20 | transition: { staggerChildren: 0.05, staggerDirection: -1 }
21 | }
22 | };
23 |
--------------------------------------------------------------------------------
/src/components/animate/variants/background/BackgroundColor.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | const TRANSITION = {
4 | duration: 5,
5 | ease: 'linear'
6 | };
7 |
8 | export const varColor2x = {
9 | animate: {
10 | background: ['#19dcea', '#b22cff'],
11 | transition: TRANSITION
12 | }
13 | };
14 |
15 | export const varColor3x = {
16 | animate: {
17 | background: ['#19dcea', '#b22cff', '#ea2222'],
18 | transition: TRANSITION
19 | }
20 | };
21 |
22 | export const varColor4x = {
23 | animate: {
24 | background: ['#19dcea', '#b22cff', '#ea2222', '#f5be10'],
25 | transition: TRANSITION
26 | }
27 | };
28 |
29 | export const varColor5x = {
30 | animate: {
31 | background: ['#19dcea', '#b22cff', '#ea2222', '#f5be10', '#3bd80d'],
32 | transition: TRANSITION
33 | }
34 | };
35 |
--------------------------------------------------------------------------------
/src/components/animate/variants/background/BackgroundKenburns.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | const TRANSITION = {
4 | duration: 5,
5 | ease: 'easeOut'
6 | };
7 |
8 | export const varKenburnsTop = {
9 | animate: {
10 | scale: [1, 1.25],
11 | y: [0, -15],
12 | transformOrigin: ['50% 16%', 'top'],
13 | transition: TRANSITION
14 | }
15 | };
16 |
17 | export const varKenburnsBottom = {
18 | animate: {
19 | scale: [1, 1.25],
20 | y: [0, 15],
21 | transformOrigin: ['50% 84%', 'bottom'],
22 | transition: TRANSITION
23 | }
24 | };
25 |
26 | export const varKenburnsLeft = {
27 | animate: {
28 | scale: [1, 1.25],
29 | x: [0, -20],
30 | y: [0, 15],
31 | transformOrigin: ['16% 50%', 'left'],
32 | transition: TRANSITION
33 | }
34 | };
35 |
36 | export const varKenburnsRight = {
37 | animate: {
38 | scale: [1, 1.25],
39 | x: [0, 20],
40 | y: [0, -15],
41 | transformOrigin: ['84% 50%', 'right'],
42 | transition: TRANSITION
43 | }
44 | };
45 |
--------------------------------------------------------------------------------
/src/components/animate/variants/background/index.js:
--------------------------------------------------------------------------------
1 | export * from './BackgroundKenburns';
2 | export * from './BackgroundPan';
3 | export * from './BackgroundColor';
4 |
--------------------------------------------------------------------------------
/src/components/animate/variants/bounce/BounceOut.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export const varBounceOut = {
4 | animate: {
5 | scale: [0.9, 1.1, 0.3],
6 | opacity: [1, 1, 0]
7 | }
8 | };
9 |
10 | export const varBounceOutUp = {
11 | animate: {
12 | y: [-12, 24, -720],
13 | scaleY: [0.985, 0.9, 3],
14 | opacity: [1, 1, 0]
15 | }
16 | };
17 |
18 | export const varBounceOutDown = {
19 | animate: {
20 | y: [12, -24, 720],
21 | scaleY: [0.985, 0.9, 3],
22 | opacity: [1, 1, 0]
23 | }
24 | };
25 |
26 | export const varBounceOutLeft = {
27 | animate: {
28 | x: [0, 24, -720],
29 | scaleX: [1, 0.9, 2],
30 | opacity: [1, 1, 0]
31 | }
32 | };
33 |
34 | export const varBounceOutRight = {
35 | animate: {
36 | x: [0, -24, 720],
37 | scaleX: [1, 0.9, 2],
38 | opacity: [1, 1, 0]
39 | }
40 | };
41 |
--------------------------------------------------------------------------------
/src/components/animate/variants/bounce/index.js:
--------------------------------------------------------------------------------
1 | export * from './BounceIn';
2 | export * from './BounceOut';
3 |
--------------------------------------------------------------------------------
/src/components/animate/variants/fade/index.js:
--------------------------------------------------------------------------------
1 | export * from './FadeIn';
2 | export * from './FadeOut';
3 |
--------------------------------------------------------------------------------
/src/components/animate/variants/flip/FlipIn.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | const TRANSITION_ENTER = {
4 | duration: 0.64,
5 | ease: [0.43, 0.13, 0.23, 0.96]
6 | };
7 | const TRANSITION_EXIT = {
8 | duration: 0.48,
9 | ease: [0.43, 0.13, 0.23, 0.96]
10 | };
11 |
12 | export const varFlipInX = {
13 | initial: { rotateX: -180, opacity: 0 },
14 | animate: { rotateX: 0, opacity: 1, transition: TRANSITION_ENTER },
15 | exit: { rotateX: -180, opacity: 0, transition: TRANSITION_EXIT }
16 | };
17 |
18 | export const varFlipInY = {
19 | initial: { rotateY: -180, opacity: 0 },
20 | animate: { rotateY: 0, opacity: 1, transition: TRANSITION_ENTER },
21 | exit: { rotateY: -180, opacity: 0, transition: TRANSITION_EXIT }
22 | };
23 |
--------------------------------------------------------------------------------
/src/components/animate/variants/flip/FlipOut.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | const TRANSITION_EXIT = {
4 | duration: 0.48,
5 | ease: [0.43, 0.13, 0.23, 0.96]
6 | };
7 |
8 | export const varFlipOutX = {
9 | initial: { rotateX: 0, opacity: 1 },
10 | animate: { rotateX: 70, opacity: 0, transition: TRANSITION_EXIT }
11 | };
12 |
13 | export const varFlipOutY = {
14 | initial: { rotateY: 0, opacity: 1 },
15 | animate: { rotateY: 70, opacity: 0, transition: TRANSITION_EXIT }
16 | };
17 |
--------------------------------------------------------------------------------
/src/components/animate/variants/flip/index.js:
--------------------------------------------------------------------------------
1 | export * from './FlipIn';
2 | export * from './FlipOut';
3 |
--------------------------------------------------------------------------------
/src/components/animate/variants/index.js:
--------------------------------------------------------------------------------
1 | export * from './Wrap';
2 | export * from './Path';
3 | export * from './Actions';
4 | export * from './background';
5 | export * from './slide';
6 | export * from './fade';
7 | export * from './zoom';
8 | export * from './bounce';
9 | export * from './flip';
10 | export * from './scale';
11 | export * from './rotate';
12 |
--------------------------------------------------------------------------------
/src/components/animate/variants/rotate/RotateIn.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | const TRANSITION_ENTER = {
4 | duration: 0.64,
5 | ease: [0.43, 0.13, 0.23, 0.96]
6 | };
7 | const TRANSITION_EXIT = {
8 | duration: 0.48,
9 | ease: [0.43, 0.13, 0.23, 0.96]
10 | };
11 |
12 | export const varRotateIn = {
13 | initial: { opacity: 0, rotate: -360 },
14 | animate: { opacity: 1, rotate: 0, transition: TRANSITION_ENTER },
15 | exit: { opacity: 0, rotate: -360, transition: TRANSITION_EXIT }
16 | };
17 |
--------------------------------------------------------------------------------
/src/components/animate/variants/rotate/RotateOut.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | const TRANSITION_EXIT = {
4 | duration: 0.48,
5 | ease: [0.43, 0.13, 0.23, 0.96]
6 | };
7 |
8 | export const varRotateOut = {
9 | initial: { opacity: 1, rotate: 0 },
10 | animate: { opacity: 0, rotate: -360, transition: TRANSITION_EXIT }
11 | };
12 |
--------------------------------------------------------------------------------
/src/components/animate/variants/rotate/index.js:
--------------------------------------------------------------------------------
1 | export * from './RotateIn';
2 | export * from './RotateOut';
3 |
--------------------------------------------------------------------------------
/src/components/animate/variants/scale/ScaleIn.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | const TRANSITION_ENTER = {
4 | duration: 0.64,
5 | ease: [0.43, 0.13, 0.23, 0.96]
6 | };
7 | const TRANSITION_EXIT = {
8 | duration: 0.48,
9 | ease: [0.43, 0.13, 0.23, 0.96]
10 | };
11 |
12 | export const varScaleInX = {
13 | initial: { scaleX: 0, opacity: 0 },
14 | animate: { scaleX: 1, opacity: 1, transition: TRANSITION_ENTER },
15 | exit: { scaleX: 0, opacity: 0, transition: TRANSITION_EXIT }
16 | };
17 |
18 | export const varScaleInY = {
19 | initial: { scaleY: 0, opacity: 0 },
20 | animate: { scaleY: 1, opacity: 1, transition: TRANSITION_ENTER },
21 | exit: { scaleY: 0, opacity: 0, transition: TRANSITION_EXIT }
22 | };
23 |
--------------------------------------------------------------------------------
/src/components/animate/variants/scale/ScaleOut.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | const TRANSITION_ENTER = {
4 | duration: 0.64,
5 | ease: [0.43, 0.13, 0.23, 0.96]
6 | };
7 |
8 | export const varScaleOutX = {
9 | initial: { scaleX: 1, opacity: 1 },
10 | animate: { scaleX: 0, opacity: 0, transition: TRANSITION_ENTER }
11 | };
12 |
13 | export const varScaleOutY = {
14 | initial: { scaleY: 1, opacity: 1 },
15 | animate: { scaleY: 0, opacity: 0, transition: TRANSITION_ENTER }
16 | };
17 |
--------------------------------------------------------------------------------
/src/components/animate/variants/scale/index.js:
--------------------------------------------------------------------------------
1 | export * from './ScaleIn';
2 | export * from './ScaleOut';
3 |
--------------------------------------------------------------------------------
/src/components/animate/variants/slide/index.js:
--------------------------------------------------------------------------------
1 | export * from './SlideIn';
2 | export * from './SlideOut';
3 |
--------------------------------------------------------------------------------
/src/components/animate/variants/zoom/Out.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | const DISTANCE = 720;
4 | const IN = { scale: 1, opacity: 1 };
5 | const OUT = { scale: 0, opacity: 0 };
6 |
7 | const TRANSITION_ENTER = {
8 | duration: 0.64,
9 | ease: [0.43, 0.13, 0.23, 0.96]
10 | };
11 |
12 | export const varZoomOut = {
13 | initial: { scale: 1 },
14 | animate: { scale: 0, transition: TRANSITION_ENTER }
15 | };
16 |
17 | export const varZoomOutUp = {
18 | initial: IN,
19 | animate: { ...OUT, translateY: -DISTANCE, transition: TRANSITION_ENTER }
20 | };
21 |
22 | export const varZoomOutDown = {
23 | initial: IN,
24 | animate: { ...OUT, translateY: DISTANCE, transition: TRANSITION_ENTER }
25 | };
26 |
27 | export const varZoomOutLeft = {
28 | initial: IN,
29 | animate: { ...OUT, translateX: -DISTANCE, transition: TRANSITION_ENTER }
30 | };
31 |
32 | export const varZoomOutRight = {
33 | initial: IN,
34 | animate: { ...OUT, translateX: DISTANCE, transition: TRANSITION_ENTER }
35 | };
36 |
--------------------------------------------------------------------------------
/src/components/animate/variants/zoom/index.js:
--------------------------------------------------------------------------------
1 | export * from './In';
2 | export * from './Out';
3 |
--------------------------------------------------------------------------------
/src/components/authentication/login/index.js:
--------------------------------------------------------------------------------
1 | export { default as LoginForm } from './LoginForm';
2 |
--------------------------------------------------------------------------------
/src/components/authentication/register/index.js:
--------------------------------------------------------------------------------
1 | export { default as RegisterForm } from './RegisterForm';
2 |
--------------------------------------------------------------------------------
/src/components/authentication/reset-password/index.js:
--------------------------------------------------------------------------------
1 | export { default as ResetPasswordForm } from './ResetPasswordForm';
2 |
--------------------------------------------------------------------------------
/src/components/authentication/verify-code/index.js:
--------------------------------------------------------------------------------
1 | export { default as VerifyCodeForm } from './VerifyCodeForm';
2 |
--------------------------------------------------------------------------------
/src/components/carousel/controls/index.js:
--------------------------------------------------------------------------------
1 | export { default as CarouselControlsPaging1 } from './CarouselControlsPaging1';
2 | export { default as CarouselControlsPaging2 } from './CarouselControlsPaging2';
3 | export { default as CarouselControlsArrowsBasic1 } from './CarouselControlsArrowsBasic1';
4 | export { default as CarouselControlsArrowsBasic2 } from './CarouselControlsArrowsBasic2';
5 | export { default as CarouselControlsArrowsIndex } from './CarouselControlsArrowsIndex';
6 |
--------------------------------------------------------------------------------
/src/components/carousel/index.js:
--------------------------------------------------------------------------------
1 | export * from './controls';
2 | export { default as CarouselAnimation } from './CarouselAnimation';
3 | export { default as CarouselBasic1 } from './CarouselBasic1';
4 | export { default as CarouselBasic2 } from './CarouselBasic2';
5 | export { default as CarouselBasic3 } from './CarouselBasic3';
6 | export { default as CarouselBasic4 } from './CarouselBasic4';
7 | export { default as CarouselCenterMode } from './CarouselCenterMode';
8 | export { default as CarouselThumbnail } from './CarouselThumbnail';
9 |
--------------------------------------------------------------------------------
/src/components/charts/ChartBar.js:
--------------------------------------------------------------------------------
1 | import { merge } from 'lodash';
2 | import ReactApexChart from 'react-apexcharts';
3 | //
4 | import BaseOptionChart from './BaseOptionChart';
5 |
6 | // ----------------------------------------------------------------------
7 |
8 | const CHART_DATA = [{ data: [400, 430, 448, 470, 540, 580, 690, 1100, 1200, 1380] }];
9 |
10 | export default function ChartBar() {
11 | const chartOptions = merge(BaseOptionChart(), {
12 | stroke: { show: false },
13 | plotOptions: {
14 | bar: { horizontal: true, barHeight: '30%' }
15 | },
16 | xaxis: {
17 | categories: [
18 | 'Italy',
19 | 'Japan',
20 | 'China',
21 | 'Canada',
22 | 'France',
23 | 'Germany',
24 | 'South Korea',
25 | 'Netherlands',
26 | 'United States',
27 | 'United Kingdom'
28 | ]
29 | }
30 | });
31 |
32 | return ;
33 | }
34 |
--------------------------------------------------------------------------------
/src/components/charts/ChartColumnMultiple.js:
--------------------------------------------------------------------------------
1 | import { merge } from 'lodash';
2 | import ReactApexChart from 'react-apexcharts';
3 | //
4 | import BaseOptionChart from './BaseOptionChart';
5 |
6 | // ----------------------------------------------------------------------
7 |
8 | const CHART_DATA = [
9 | { name: 'Net Profit', data: [44, 55, 57, 56, 61, 58, 63, 60, 66] },
10 | { name: 'Revenue', data: [76, 85, 101, 98, 87, 105, 91, 114, 94] }
11 | ];
12 |
13 | export default function ChartColumnMultiple() {
14 | const chartOptions = merge(BaseOptionChart(), {
15 | stroke: { show: true, width: 2, colors: ['transparent'] },
16 | xaxis: {
17 | categories: ['Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct']
18 | },
19 | tooltip: {
20 | y: {
21 | formatter(val) {
22 | return `$ ${val} thousands`;
23 | }
24 | }
25 | },
26 | plotOptions: { bar: { columnWidth: '36%' } }
27 | });
28 |
29 | return ;
30 | }
31 |
--------------------------------------------------------------------------------
/src/components/charts/ChartColumnSingle.js:
--------------------------------------------------------------------------------
1 | import { merge } from 'lodash';
2 | import ReactApexChart from 'react-apexcharts';
3 | //
4 | import BaseOptionChart from './BaseOptionChart';
5 |
6 | // ----------------------------------------------------------------------
7 |
8 | const CHART_DATA = [{ name: 'Net Profit', data: [44, 55, 57, 56, 61, 58, 63, 60, 66] }];
9 |
10 | export default function ChartColumnSingle() {
11 | const chartOptions = merge(BaseOptionChart(), {
12 | plotOptions: { bar: { columnWidth: '16%' } },
13 | stroke: { show: false },
14 | xaxis: {
15 | categories: ['Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct']
16 | },
17 | tooltip: {
18 | y: {
19 | formatter: (val) => `$ ${val} thousands`
20 | }
21 | }
22 | });
23 |
24 | return ;
25 | }
26 |
--------------------------------------------------------------------------------
/src/components/charts/ChartDonut.js:
--------------------------------------------------------------------------------
1 | import { merge } from 'lodash';
2 | import ReactApexChart from 'react-apexcharts';
3 | //
4 | import BaseOptionChart from './BaseOptionChart';
5 |
6 | // ----------------------------------------------------------------------
7 |
8 | const CHART_DATA = [44, 55, 13, 43];
9 |
10 | export default function ChartDonut() {
11 | const chartOptions = merge(BaseOptionChart(), {
12 | labels: ['Apple', 'Mango', 'Orange', 'Watermelon'],
13 | stroke: { show: false },
14 | legend: { horizontalAlign: 'center' },
15 | plotOptions: { pie: { donut: { size: '90%' } } }
16 | });
17 |
18 | return ;
19 | }
20 |
--------------------------------------------------------------------------------
/src/components/charts/ChartLine.js:
--------------------------------------------------------------------------------
1 | import { merge } from 'lodash';
2 | import ReactApexChart from 'react-apexcharts';
3 | //
4 | import BaseOptionChart from './BaseOptionChart';
5 |
6 | // ----------------------------------------------------------------------
7 |
8 | const CHART_DATA = [{ name: 'Desktops', data: [10, 41, 35, 51, 49, 62, 69, 91, 148] }];
9 |
10 | export default function ChartLine() {
11 | const chartOptions = merge(BaseOptionChart(), {
12 | xaxis: {
13 | categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep']
14 | },
15 | tooltip: { x: { show: false }, marker: { show: false } }
16 | });
17 |
18 | return ;
19 | }
20 |
--------------------------------------------------------------------------------
/src/components/charts/ChartPie.js:
--------------------------------------------------------------------------------
1 | import { merge } from 'lodash';
2 | import ReactApexChart from 'react-apexcharts';
3 | //
4 | import BaseOptionChart from './BaseOptionChart';
5 |
6 | // ----------------------------------------------------------------------
7 |
8 | const CHART_DATA = [44, 55, 13, 43];
9 |
10 | export default function ChartPie() {
11 | const chartOptions = merge(BaseOptionChart(), {
12 | labels: ['Team A', 'Team B', 'Team C', 'Team D'],
13 | legend: {
14 | position: 'right',
15 | offsetX: -20,
16 | offsetY: 64,
17 | itemMargin: { vertical: 8 }
18 | },
19 | stroke: { show: false },
20 | dataLabels: { enabled: true, dropShadow: { enabled: false } },
21 | plotOptions: {
22 | pie: { donut: { labels: { show: false } } }
23 | }
24 | });
25 |
26 | return ;
27 | }
28 |
--------------------------------------------------------------------------------
/src/components/charts/index.js:
--------------------------------------------------------------------------------
1 | export { default as BaseOptionChart } from './BaseOptionChart';
2 | export { default as ChartArea } from './ChartArea';
3 | export { default as ChartBar } from './ChartBar';
4 | export { default as ChartColumnMultiple } from './ChartColumnMultiple';
5 | export { default as ChartColumnNegative } from './ChartColumnNegative';
6 | export { default as ChartColumnSingle } from './ChartColumnSingle';
7 | export { default as ChartColumnStacked } from './ChartColumnStacked';
8 | export { default as ChartDonut } from './ChartDonut';
9 | export { default as ChartMixed } from './ChartMixed';
10 | export { default as ChartLine } from './ChartLine';
11 | export { default as ChartPie } from './ChartPie';
12 | export { default as ChartsRadarBar } from './ChartRadarBar';
13 | export { default as ChartRadialBar } from './ChartRadialBar';
14 |
--------------------------------------------------------------------------------
/src/components/editor/draft/index.js:
--------------------------------------------------------------------------------
1 | import PropTypes from 'prop-types';
2 | import { Editor } from 'react-draft-wysiwyg';
3 | //
4 | import { toolbarFull, toolbarSimple } from './DraftEditorToolbar';
5 | import DraftEditorStyle from './DraftEditorStyle';
6 |
7 | // ----------------------------------------------------------------------
8 |
9 | DraftEditor.propTypes = {
10 | simple: PropTypes.bool,
11 | error: PropTypes.bool,
12 | sx: PropTypes.object
13 | };
14 |
15 | export default function DraftEditor({ simple = false, error, sx, ...other }) {
16 | return (
17 | `solid 1px ${theme.palette.error.main}`
21 | }),
22 | ...sx
23 | }}
24 | >
25 |
26 |
27 | );
28 | }
29 |
--------------------------------------------------------------------------------
/src/components/editor/index.js:
--------------------------------------------------------------------------------
1 | export { default as QuillEditor } from './quill';
2 | export { default as DraftEditor } from './draft';
3 |
--------------------------------------------------------------------------------
/src/components/map/controls/MapControlFullscreen.js:
--------------------------------------------------------------------------------
1 | import { FullscreenControl } from 'react-map-gl';
2 | // material
3 | import { styled } from '@material-ui/core/styles';
4 |
5 | // ----------------------------------------------------------------------
6 |
7 | const FullscreenControlStyle = styled(FullscreenControl)(({ theme }) => ({
8 | zIndex: 99,
9 | borderRadius: 8,
10 | overflow: 'hidden',
11 | top: theme.spacing(1.5),
12 | left: theme.spacing(1.5),
13 | boxShadow: theme.customShadows.z8,
14 | '& span.mapboxgl-ctrl-icon': {
15 | transform: ' scale(0.75)'
16 | }
17 | }));
18 |
19 | // ----------------------------------------------------------------------
20 |
21 | export default function MapControlFullscreen({ ...other }) {
22 | return ;
23 | }
24 |
--------------------------------------------------------------------------------
/src/components/map/controls/MapControlGeolocate.js:
--------------------------------------------------------------------------------
1 | import { GeolocateControl } from 'react-map-gl';
2 | // material
3 | import { styled } from '@material-ui/core/styles';
4 |
5 | // ----------------------------------------------------------------------
6 |
7 | const GeolocateControlStyle = styled(GeolocateControl)(({ theme }) => ({
8 | zIndex: 99,
9 | borderRadius: 8,
10 | overflow: 'hidden',
11 | top: theme.spacing(6),
12 | left: theme.spacing(1.5),
13 | boxShadow: theme.customShadows.z8
14 | }));
15 |
16 | // ----------------------------------------------------------------------
17 |
18 | export default function MapControlGeolocate({ ...other }) {
19 | return ;
20 | }
21 |
--------------------------------------------------------------------------------
/src/components/map/controls/MapControlNavigation.js:
--------------------------------------------------------------------------------
1 | import { NavigationControl } from 'react-map-gl';
2 | // material
3 | import { styled } from '@material-ui/core/styles';
4 |
5 | // ----------------------------------------------------------------------
6 |
7 | const NavigationControlStyle = styled(NavigationControl)(({ theme }) => ({
8 | zIndex: 99,
9 | borderRadius: 8,
10 | overflow: 'hidden',
11 | bottom: theme.spacing(6),
12 | left: theme.spacing(1.5),
13 | boxShadow: theme.customShadows.z8,
14 | '& button+button': {
15 | borderTop: `1px solid ${theme.palette.divider}`
16 | }
17 | }));
18 |
19 | // ----------------------------------------------------------------------
20 |
21 | export default function MapControlNavigation({ ...other }) {
22 | return ;
23 | }
24 |
--------------------------------------------------------------------------------
/src/components/map/controls/index.js:
--------------------------------------------------------------------------------
1 | export { default as MapControlFullscreen } from './MapControlFullscreen';
2 | export { default as MapControlGeolocate } from './MapControlGeolocate';
3 | export { default as MapControlMarker } from './MapControlMarker';
4 | export { default as MapControlNavigation } from './MapControlNavigation';
5 | export { default as MapControlPopup } from './MapControlPopup';
6 | export { default as MapControlScale } from './MapControlScale';
7 |
--------------------------------------------------------------------------------
/src/components/map/index.js:
--------------------------------------------------------------------------------
1 | export * from './controls';
2 | export { default as MapChangeTheme } from './map-change-theme';
3 | export { default as MapDraggableMarkers } from './map-draggable-markers';
4 | export { default as MapDynamicStyling } from './map-dynamic-styling';
5 | export { default as MapGeojson } from './map-geojson';
6 | export { default as MapHeatmap } from './map-heatmap';
7 | export { default as MapInteraction } from './map-interaction';
8 | export { default as MapViewportAnimation } from './map-viewport-animation';
9 | export { default as MapDeckglOverlay } from './MapDeckglOverlay';
10 | export { default as MapGeoJSONAnimation } from './MapGeoJSONAnimation';
11 | export { default as MapHighlightByFilter } from './MapHighlightByFilter';
12 | export { default as MapClusters } from './MapClusters';
13 | export { default as MapMarkersPopups } from './MapMarkersPopups';
14 | export { default as MapZoomToBounds } from './MapZoomToBounds';
15 |
--------------------------------------------------------------------------------
/src/components/map/map-dynamic-styling/index.js:
--------------------------------------------------------------------------------
1 | import MapGL from 'react-map-gl';
2 | import { useState } from 'react';
3 | //
4 | import { MapControlScale, MapControlGeolocate, MapControlNavigation, MapControlFullscreen } from '../controls';
5 | import ControlPanel from './ControlPanel';
6 |
7 | // ----------------------------------------------------------------------
8 |
9 | export default function MapDynamicStyling({ ...other }) {
10 | const [mapStyle, setMapStyle] = useState('');
11 | const [viewport, setViewport] = useState({
12 | latitude: 37.805,
13 | longitude: -122.447,
14 | zoom: 15.5,
15 | bearing: 0,
16 | pitch: 0
17 | });
18 |
19 | return (
20 | <>
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 | >
30 | );
31 | }
32 |
--------------------------------------------------------------------------------
/src/components/mega-menu/index.js:
--------------------------------------------------------------------------------
1 | export { default as MegaMenuDesktopVertical } from './MegaMenuDesktopVertical';
2 | export { default as MegaMenuDesktopHorizon } from './MegaMenuDesktopHorizon';
3 | export { default as MegaMenuMobile } from './MegaMenuMobile';
4 | export { default as MenuConfig } from './MenuConfig';
5 |
--------------------------------------------------------------------------------
/src/components/upload/index.js:
--------------------------------------------------------------------------------
1 | export { default as UploadMultiFile } from './UploadMultiFile';
2 | export { default as UploadSingleFile } from './UploadSingleFile';
3 | export { default as UploadAvatar } from './UploadAvatar';
4 |
--------------------------------------------------------------------------------
/src/config.js:
--------------------------------------------------------------------------------
1 | export const firebaseConfig = {
2 | apiKey: process.env.REACT_APP_FIREBASE_API_KEY,
3 | authDomain: process.env.REACT_APP_FIREBASE_AUTH_DOMAIN,
4 | databaseURL: process.env.REACT_APP_FIREBASE_DATABASE_URL,
5 | projectId: process.env.REACT_APP_FIREBASE_PROJECT_ID,
6 | storageBucket: process.env.REACT_APP_FIREBASE_STORAGE_BUCKET,
7 | messagingSenderId: process.env.REACT_APP_FIREBASE_MESSAGING_SENDER_ID,
8 | appId: process.env.REACT_APP_FIREBASE_APPID,
9 | measurementId: process.env.REACT_APP_FIREBASE_MEASUREMENT_ID
10 | };
11 |
12 | export const cognitoConfig = {
13 | userPoolId: process.env.REACT_APP_AWS_COGNITO_USER_POOL_ID,
14 | clientId: process.env.REACT_APP_AWS_COGNITO_CLIENT_ID
15 | };
16 |
17 | export const auth0Config = {
18 | clientId: process.env.REACT_APP_AUTH0_CLIENT_ID,
19 | domain: process.env.REACT_APP_AUTH0_DOMAIN
20 | };
21 |
22 | export const mapConfig = process.env.REACT_APP_MAP_MAPBOX;
23 |
24 | export const googleAnalyticsConfig = process.env.REACT_APP_GA_MEASUREMENT_ID;
25 |
--------------------------------------------------------------------------------
/src/contexts/FlowsContext.js:
--------------------------------------------------------------------------------
1 | import { createContext } from 'react';
2 | import useFlows from '../hooks/useFlows';
3 | // ----------------------------------------------------------------------
4 |
5 | const FlowsContext = createContext();
6 |
7 | function FlowsProvider({ children }) {
8 | const { data, error, status, changeCurrentFlow, addNewFlow, deleteFlow, saveToFlash, loadFlow } = useFlows();
9 |
10 | return (
11 |
23 | {children}
24 |
25 | );
26 | }
27 |
28 | export { FlowsContext, FlowsProvider };
29 |
--------------------------------------------------------------------------------
/src/graphql/queries.js:
--------------------------------------------------------------------------------
1 | /* eslint-disable */
2 | // this is an auto generated file. This will be overwritten
3 |
4 | export const getProject = /* GraphQL */ `
5 | query GetProject($id: ID!) {
6 | getProject(id: $id) {
7 | id
8 | name
9 | elements
10 | description
11 | createdAt
12 | updatedAt
13 | }
14 | }
15 | `;
16 | export const listProjects = /* GraphQL */ `
17 | query ListProjects(
18 | $filter: ModelProjectFilterInput
19 | $limit: Int
20 | $nextToken: String
21 | ) {
22 | listProjects(filter: $filter, limit: $limit, nextToken: $nextToken) {
23 | items {
24 | id
25 | name
26 | elements
27 | description
28 | createdAt
29 | updatedAt
30 | }
31 | nextToken
32 | }
33 | }
34 | `;
35 |
--------------------------------------------------------------------------------
/src/graphql/subscriptions.js:
--------------------------------------------------------------------------------
1 | /* eslint-disable */
2 | // this is an auto generated file. This will be overwritten
3 |
4 | export const onCreateProject = /* GraphQL */ `
5 | subscription OnCreateProject {
6 | onCreateProject {
7 | id
8 | name
9 | elements
10 | description
11 | createdAt
12 | updatedAt
13 | }
14 | }
15 | `;
16 | export const onUpdateProject = /* GraphQL */ `
17 | subscription OnUpdateProject {
18 | onUpdateProject {
19 | id
20 | name
21 | elements
22 | description
23 | createdAt
24 | updatedAt
25 | }
26 | }
27 | `;
28 | export const onDeleteProject = /* GraphQL */ `
29 | subscription OnDeleteProject {
30 | onDeleteProject {
31 | id
32 | name
33 | elements
34 | description
35 | createdAt
36 | updatedAt
37 | }
38 | }
39 | `;
40 |
--------------------------------------------------------------------------------
/src/guards/AuthGuard.js:
--------------------------------------------------------------------------------
1 | import { useState } from 'react';
2 | import { Navigate, useLocation } from 'react-router-dom';
3 | import PropTypes from 'prop-types';
4 | // hooks
5 | import useAuth from '../hooks/useAuth';
6 | // pages
7 | import Login from '../pages/authentication/Login';
8 |
9 | // ----------------------------------------------------------------------
10 |
11 | AuthGuard.propTypes = {
12 | children: PropTypes.node
13 | };
14 |
15 | export default function AuthGuard({ children }) {
16 | const { isAuthenticated } = useAuth();
17 | const { pathname } = useLocation();
18 | const [requestedLocation, setRequestedLocation] = useState(null);
19 |
20 | if (!isAuthenticated) {
21 | if (pathname !== requestedLocation) {
22 | setRequestedLocation(pathname);
23 | }
24 | return ;
25 | }
26 |
27 | if (requestedLocation && pathname !== requestedLocation) {
28 | setRequestedLocation(null);
29 | return ;
30 | }
31 |
32 | return <>{children}>;
33 | }
34 |
--------------------------------------------------------------------------------
/src/guards/GuestGuard.js:
--------------------------------------------------------------------------------
1 | import PropTypes from 'prop-types';
2 | import { Navigate } from 'react-router-dom';
3 | // hooks
4 | import useAuth from '../hooks/useAuth';
5 | // routes
6 | import { PATH_DASHBOARD } from '../routes/paths';
7 |
8 | // ----------------------------------------------------------------------
9 |
10 | GuestGuard.propTypes = {
11 | children: PropTypes.node
12 | };
13 |
14 | export default function GuestGuard({ children }) {
15 | const { isAuthenticated } = useAuth();
16 |
17 | if (isAuthenticated) {
18 | return ;
19 | }
20 |
21 | return <>{children}>;
22 | }
23 |
--------------------------------------------------------------------------------
/src/guards/RoleBasedGuard.js:
--------------------------------------------------------------------------------
1 | import PropTypes from 'prop-types';
2 | import { Container, Alert, AlertTitle } from '@material-ui/core';
3 |
4 | // ----------------------------------------------------------------------
5 |
6 | RoleBasedGuard.propTypes = {
7 | accessibleRoles: PropTypes.array, // Example ['admin', 'leader']
8 | children: PropTypes.node
9 | };
10 |
11 | const useCurrentRole = () => {
12 | // Logic here to get current user role
13 | const role = 'admin';
14 | return role;
15 | };
16 |
17 | export default function RoleBasedGuard({ accessibleRoles, children }) {
18 | const currentRole = useCurrentRole();
19 |
20 | if (!accessibleRoles.includes(currentRole)) {
21 | return (
22 |
23 |
24 | Permission Denied
25 | You do not have permission to access this page
26 |
27 |
28 | );
29 | }
30 |
31 | return <>{children}>;
32 | }
33 |
--------------------------------------------------------------------------------
/src/hooks/useAuth.js:
--------------------------------------------------------------------------------
1 | import { useContext } from 'react';
2 | import { AuthContext } from '../contexts/JWTContext';
3 | // import { AuthContext } from '../contexts/FirebaseContext';
4 | // import { AuthContext } from '../contexts/AwsCognitoContext';
5 | // import { AuthContext } from '../contexts/Auth0Context';
6 |
7 | // ----------------------------------------------------------------------
8 |
9 | const useAuth = () => useContext(AuthContext);
10 |
11 | export default useAuth;
12 |
--------------------------------------------------------------------------------
/src/hooks/useCollapseDrawer.js:
--------------------------------------------------------------------------------
1 | import { useContext } from 'react';
2 | import { CollapseDrawerContext } from '../contexts/CollapseDrawerContext';
3 |
4 | // ----------------------------------------------------------------------
5 |
6 | const useCollapseDrawer = () => useContext(CollapseDrawerContext);
7 |
8 | export default useCollapseDrawer;
9 |
--------------------------------------------------------------------------------
/src/hooks/useIsMountedRef.js:
--------------------------------------------------------------------------------
1 | import { useRef, useEffect } from 'react';
2 |
3 | // ----------------------------------------------------------------------
4 |
5 | export default function useIsMountedRef() {
6 | const isMounted = useRef(true);
7 |
8 | useEffect(
9 | () => () => {
10 | isMounted.current = false;
11 | },
12 | []
13 | );
14 |
15 | return isMounted;
16 | }
17 |
--------------------------------------------------------------------------------
/src/hooks/useOffSetTop.js:
--------------------------------------------------------------------------------
1 | import { useState, useEffect } from 'react';
2 |
3 | // ----------------------------------------------------------------------
4 |
5 | export default function useOffSetTop(top) {
6 | const [offsetTop, setOffSetTop] = useState(false);
7 | const isTop = top || 100;
8 |
9 | useEffect(() => {
10 | window.onscroll = () => {
11 | if (window.pageYOffset > isTop) {
12 | setOffSetTop(true);
13 | } else {
14 | setOffSetTop(false);
15 | }
16 | };
17 | return () => {
18 | window.onscroll = null;
19 | };
20 | }, [isTop]);
21 |
22 | return offsetTop;
23 | }
24 |
25 | // Usage
26 | // const offset = useOffSetTop(100);
27 |
--------------------------------------------------------------------------------
/src/hooks/useSettings.js:
--------------------------------------------------------------------------------
1 | import { useContext } from 'react';
2 | import { SettingsContext } from '../contexts/SettingsContext';
3 |
4 | // ----------------------------------------------------------------------
5 |
6 | const useSettings = () => useContext(SettingsContext);
7 |
8 | export default useSettings;
9 |
--------------------------------------------------------------------------------
/src/layouts/LogoOnlyLayout.js:
--------------------------------------------------------------------------------
1 | import { Link as RouterLink, Outlet } from 'react-router-dom';
2 | // material
3 | import { styled } from '@material-ui/core/styles';
4 | // components
5 | import Logo from '../components/Logo';
6 |
7 | // ----------------------------------------------------------------------
8 |
9 | const HeaderStyle = styled('header')(({ theme }) => ({
10 | top: 0,
11 | left: 0,
12 | lineHeight: 0,
13 | width: '100%',
14 | position: 'absolute',
15 | padding: theme.spacing(3, 3, 0),
16 | [theme.breakpoints.up('sm')]: {
17 | padding: theme.spacing(5, 5, 0)
18 | }
19 | }));
20 |
21 | // ----------------------------------------------------------------------
22 |
23 | export default function LogoOnlyLayout() {
24 | return (
25 | <>
26 |
27 |
28 |
29 |
30 |
31 |
32 | >
33 | );
34 | }
35 |
--------------------------------------------------------------------------------
/src/layouts/dashboard/ModeSetting.js:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/whitehorse21/ReactFlow/6cdddb4057d2b8b4eb4332083bfa0f047a94596b/src/layouts/dashboard/ModeSetting.js
--------------------------------------------------------------------------------
/src/layouts/dashboard/ProjectsSideBar.js:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import PropTypes from 'prop-types';
3 | import { styled } from '@material-ui/styles';
4 | import Box from '../../components/Page';
5 | import { ProjectsFilter } from '../../components/_dashboard/projects';
6 |
7 | const StyledPage = styled(Box)({
8 | display: 'flex',
9 | flexDirection: 'row',
10 | height: '100%'
11 | });
12 |
13 | const GrowDiv = styled('div')({
14 | flexGrow: 1,
15 | height: '100%'
16 | });
17 |
18 | const ProjectsSidebar = ({ children }) => (
19 | :not(style)': {
23 | m: 1
24 | }
25 | }}
26 | >
27 |
28 | {children}
29 |
30 | );
31 |
32 | ProjectsSidebar.propTypes = {
33 | children: PropTypes.node
34 | };
35 |
36 | export default ProjectsSidebar;
37 |
--------------------------------------------------------------------------------
/src/layouts/dashboard/WorkflowFooter.js:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import PropTypes from 'prop-types';
3 | import { styled } from '@material-ui/core/styles';
4 | import Page from '../../components/Page';
5 | import { WorkflowPreviewAndLogs } from '../../components/_dashboard/home';
6 | import { MHidden } from '../../components/@material-extend';
7 |
8 | const FooterDiv = styled(Page)({
9 | display: 'flex',
10 | flexDirection: 'column',
11 | height: '100%'
12 | });
13 |
14 | const Children = styled('div')({
15 | flexGrow: 1
16 | });
17 |
18 | const WorkflowFooter = ({ children }) => (
19 |
20 | {children}
21 |
22 |
23 |
24 |
25 | );
26 |
27 | WorkflowFooter.propTypes = {
28 | children: PropTypes.node
29 | };
30 |
31 | export default WorkflowFooter;
32 |
--------------------------------------------------------------------------------
/src/layouts/dashboard/WorkflowRightSide.js:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import PropTypes from 'prop-types';
3 | import { styled } from '@material-ui/core/styles';
4 | import Page from '../../components/Page';
5 | import { WorkflowDetails } from '../../components/_dashboard/home';
6 | import { MHidden } from '../../components/@material-extend';
7 |
8 | const RightSide = styled(Page)({
9 | display: 'flex',
10 | flexDirection: 'row',
11 | height: '100%'
12 | });
13 |
14 | const Children = styled('div')({
15 | flexGrow: 1
16 | });
17 |
18 | const WorkflowRightSide = ({ children }) => (
19 |
20 | {children}
21 |
22 |
23 |
24 |
25 | );
26 |
27 | WorkflowRightSide.propTypes = {
28 | children: PropTypes.node
29 | };
30 |
31 | export default WorkflowRightSide;
32 |
--------------------------------------------------------------------------------
/src/locales/de.json:
--------------------------------------------------------------------------------
1 | {
2 | "demo": {
3 | "title": "German",
4 | "introduction": "Lorem Ipsum ist einfach Dummy-Text der Druck- und Satzindustrie. Lorem Ipsum ist seit dem 16. Jahrhundert der Standard-Dummy-Text der Branche, als ein unbekannter Drucker eine Galeere vom Typ nahm und sie zu einem Musterbuch verschlüsselte. Es hat nicht nur fünf Jahrhunderte überlebt, sondern auch den Sprung in den elektronischen Satz, der im Wesentlichen unverändert geblieben ist. Es wurde in den 1960er Jahren mit der Veröffentlichung von Letraset-Blättern mit Lorem Ipsum-Passagen und in jüngerer Zeit mit Desktop-Publishing-Software wie Aldus PageMaker einschließlich Versionen von Lorem Ipsum populär gemacht."
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/locales/en.json:
--------------------------------------------------------------------------------
1 | {
2 | "demo": {
3 | "title": "English",
4 | "introduction": "Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum."
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/locales/fr.json:
--------------------------------------------------------------------------------
1 | {
2 | "demo": {
3 | "title": "France",
4 | "introduction": "Le Lorem Ipsum est simplement du faux texte employé dans la composition et la mise en page avant impression. Le Lorem Ipsum est le faux texte standard de l'imprimerie depuis les années 1500, quand un imprimeur anonyme assembla ensemble des morceaux de texte pour réaliser un livre spécimen de polices de texte. Il n'a pas fait que survivre cinq siècles, mais s'est aussi adapté à la bureautique informatique, sans que son contenu n'en soit modifié. Il a été popularisé dans les années 1960 grâce à la vente de feuilles Letraset contenant des passages du Lorem Ipsum, et, plus récemment, par son inclusion dans des applications de mise en page de texte, comme Aldus PageMaker."
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/src/locales/i18n.js:
--------------------------------------------------------------------------------
1 | import i18n from 'i18next';
2 | import { initReactI18next } from 'react-i18next';
3 | import LanguageDetector from 'i18next-browser-languagedetector';
4 | //
5 | import enLocales from './en.json';
6 | import deLocales from './de.json';
7 | import frLocales from './fr.json';
8 |
9 | // ----------------------------------------------------------------------
10 |
11 | i18n
12 | .use(LanguageDetector)
13 | .use(initReactI18next)
14 | .init({
15 | resources: {
16 | en: { translations: enLocales },
17 | de: { translations: deLocales },
18 | fr: { translations: frLocales }
19 | },
20 | lng: localStorage.getItem('i18nextLng') || 'en',
21 | fallbackLng: 'en',
22 | debug: false,
23 | ns: ['translations'],
24 | defaultNS: 'translations',
25 | interpolation: {
26 | escapeValue: false
27 | }
28 | });
29 |
30 | export default i18n;
31 |
--------------------------------------------------------------------------------
/src/pages/About.js:
--------------------------------------------------------------------------------
1 | // material
2 | import { styled } from '@material-ui/core/styles';
3 | import { Divider } from '@material-ui/core';
4 | // components
5 | import Page from '../components/Page';
6 | import { AboutHero, AboutWhat, AboutTeam, AboutVision, AboutTestimonials } from '../components/_external-pages/about';
7 |
8 | // ----------------------------------------------------------------------
9 |
10 | const RootStyle = styled(Page)(({ theme }) => ({
11 | paddingTop: theme.spacing(8),
12 | [theme.breakpoints.up('md')]: {
13 | paddingTop: theme.spacing(11)
14 | }
15 | }));
16 |
17 | // ----------------------------------------------------------------------
18 |
19 | export default function About() {
20 | return (
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 | );
30 | }
31 |
--------------------------------------------------------------------------------
/src/pages/components-overview/extra/animate/background/Toolbar.js:
--------------------------------------------------------------------------------
1 | import PropTypes from 'prop-types';
2 | import { Icon } from '@iconify/react';
3 | import refreshFill from '@iconify/icons-eva/refresh-fill';
4 | // material
5 | import { Paper } from '@material-ui/core';
6 | // components
7 | import { MIconButton } from '../../../../../components/@material-extend';
8 |
9 | // ----------------------------------------------------------------------
10 |
11 | Toolbar.propTypes = {
12 | onRefresh: PropTypes.func
13 | };
14 |
15 | export default function Toolbar({ onRefresh, ...other }) {
16 | return (
17 |
18 |
19 |
20 |
21 |
22 | );
23 | }
24 |
--------------------------------------------------------------------------------
/src/pages/components-overview/extra/animate/background/types.js:
--------------------------------------------------------------------------------
1 | const variantTypes = [
2 | {
3 | type: 'kenburns',
4 | values: ['kenburnsTop', 'kenburnsBottom', 'kenburnsLeft', 'kenburnsRight']
5 | },
6 | {
7 | type: 'pan',
8 | values: ['panTop', 'panBottom', 'panLeft', 'panRight']
9 | },
10 | {
11 | type: 'color change',
12 | values: ['color2x', 'color3x', 'color4x', 'color5x']
13 | }
14 | ];
15 |
16 | export default variantTypes;
17 |
--------------------------------------------------------------------------------
/src/pages/components-overview/extra/animate/dialog/types.js:
--------------------------------------------------------------------------------
1 | const variantTypes = [
2 | {
3 | type: 'slide',
4 | values: ['slideInUp', 'slideInDown', 'slideInLeft', 'slideInRight']
5 | },
6 | {
7 | type: 'fade',
8 | values: ['fadeIn', 'fadeInUp', 'fadeInDown', 'fadeInLeft', 'fadeInRight']
9 | },
10 | {
11 | type: 'zoom',
12 | values: ['zoomIn', 'zoomInUp', 'zoomInDown', 'zoomInLeft', 'zoomInRight']
13 | },
14 | {
15 | type: 'bounce',
16 | values: ['bounceIn', 'bounceInUp', 'bounceInDown', 'bounceInLeft', 'bounceInRight']
17 | },
18 | {
19 | type: 'flip',
20 | values: ['flipInX', 'flipInY']
21 | },
22 | {
23 | type: 'scale',
24 | values: ['scaleInX', 'scaleInY']
25 | },
26 | {
27 | type: 'rotate',
28 | values: ['rotateIn']
29 | }
30 | ];
31 |
32 | export default variantTypes;
33 |
--------------------------------------------------------------------------------
/src/pages/components-overview/extra/animate/other/MediumClick.js:
--------------------------------------------------------------------------------
1 | import { Icon } from '@iconify/react';
2 | import plusFill from '@iconify/icons-eva/plus-fill';
3 | // material
4 | import { Fab, Button, IconButton } from '@material-ui/core';
5 | // components
6 | import { ButtonAnimate } from '../../../../../components/animate';
7 |
8 | // ----------------------------------------------------------------------
9 |
10 | export default function MediumClick() {
11 | return (
12 | <>
13 |
14 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 | >
29 | );
30 | }
31 |
--------------------------------------------------------------------------------
/src/pages/components-overview/extra/animate/other/SmallClick.js:
--------------------------------------------------------------------------------
1 | import { Icon } from '@iconify/react';
2 | import plusFill from '@iconify/icons-eva/plus-fill';
3 | // material
4 | import { Fab, Button, IconButton } from '@material-ui/core';
5 | // components
6 | import { ButtonAnimate } from '../../../../../components/animate';
7 |
8 | // ----------------------------------------------------------------------
9 |
10 | export default function SmallClick() {
11 | return (
12 | <>
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 | >
27 | );
28 | }
29 |
--------------------------------------------------------------------------------
/src/pages/components-overview/extra/animate/scroll/Toolbar.js:
--------------------------------------------------------------------------------
1 | import PropTypes from 'prop-types';
2 | import { Icon } from '@iconify/react';
3 | import refreshFill from '@iconify/icons-eva/refresh-fill';
4 | // material
5 | import { Paper } from '@material-ui/core';
6 | // components
7 | import { MIconButton } from '../../../../../components/@material-extend';
8 |
9 | // ----------------------------------------------------------------------
10 |
11 | Toolbar.propTypes = {
12 | onRefresh: PropTypes.func,
13 | sx: PropTypes.string
14 | };
15 |
16 | export default function Toolbar({ onRefresh, sx, ...other }) {
17 | return (
18 |
27 |
28 |
29 |
30 |
31 | );
32 | }
33 |
--------------------------------------------------------------------------------
/src/pages/components-overview/extra/animate/scroll/types.js:
--------------------------------------------------------------------------------
1 | const variantTypes = [
2 | {
3 | type: 'slide',
4 | values: ['slideInUp', 'slideInDown', 'slideInLeft', 'slideInRight']
5 | },
6 | {
7 | type: 'fade',
8 | values: ['fadeIn', 'fadeInUp', 'fadeInDown', 'fadeInLeft', 'fadeInRight']
9 | },
10 | {
11 | type: 'zoom',
12 | values: ['zoomIn', 'zoomInUp', 'zoomInDown', 'zoomInLeft', 'zoomInRight']
13 | },
14 | {
15 | type: 'bounce',
16 | values: ['bounceIn', 'bounceInUp', 'bounceInDown', 'bounceInLeft', 'bounceInRight']
17 | },
18 | {
19 | type: 'flip',
20 | values: ['flipInX', 'flipInY']
21 | },
22 | {
23 | type: 'scale',
24 | values: ['scaleInX', 'scaleInY']
25 | },
26 | {
27 | type: 'rotate',
28 | values: ['rotateIn']
29 | }
30 | ];
31 |
32 | export default variantTypes;
33 |
--------------------------------------------------------------------------------
/src/redux/store.js:
--------------------------------------------------------------------------------
1 | import { useDispatch as useReduxDispatch, useSelector as useReduxSelector } from 'react-redux';
2 | import { configureStore, getDefaultMiddleware } from '@reduxjs/toolkit';
3 | import { persistStore, persistReducer } from 'redux-persist';
4 | //
5 | import { rootPersistConfig, rootReducer } from './rootReducer';
6 |
7 | // ----------------------------------------------------------------------
8 |
9 | const store = configureStore({
10 | reducer: persistReducer(rootPersistConfig, rootReducer),
11 | middleware: getDefaultMiddleware({
12 | serializableCheck: false,
13 | immutableCheck: false
14 | })
15 | });
16 |
17 | const persistor = persistStore(store);
18 |
19 | const useSelector = useReduxSelector;
20 |
21 | const useDispatch = () => useReduxDispatch();
22 |
23 | export { store, persistor, useSelector, useDispatch };
24 |
--------------------------------------------------------------------------------
/src/reportWebVitals.js:
--------------------------------------------------------------------------------
1 | const reportWebVitals = (onPerfEntry) => {
2 | if (onPerfEntry && onPerfEntry instanceof Function) {
3 | import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => {
4 | getCLS(onPerfEntry);
5 | getFID(onPerfEntry);
6 | getFCP(onPerfEntry);
7 | getLCP(onPerfEntry);
8 | getTTFB(onPerfEntry);
9 | });
10 | }
11 | };
12 |
13 | export default reportWebVitals;
14 |
--------------------------------------------------------------------------------
/src/setupTests.js:
--------------------------------------------------------------------------------
1 | // jest-dom adds custom jest matchers for asserting on DOM nodes.
2 | // allows you to do things like:
3 | // expect(element).toHaveTextContent(/react/i)
4 | // learn more: https://github.com/testing-library/jest-dom
5 | import '@testing-library/jest-dom';
6 |
--------------------------------------------------------------------------------
/src/theme/breakpoints.js:
--------------------------------------------------------------------------------
1 | const breakpoints = {
2 | values: {
3 | xs: 0,
4 | sm: 600,
5 | md: 900, // OLD 960
6 | lg: 1200, // OLD 1280
7 | xl: 1536 // OLD 1920
8 | }
9 | };
10 |
11 | export default breakpoints;
12 |
--------------------------------------------------------------------------------
/src/theme/overrides/Autocomplete.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function Autocomplete(theme) {
4 | return {
5 | MuiAutocomplete: {
6 | styleOverrides: {
7 | paper: {
8 | boxShadow: theme.customShadows.z20
9 | }
10 | }
11 | }
12 | };
13 | }
14 |
--------------------------------------------------------------------------------
/src/theme/overrides/Avatar.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function Avatar(theme) {
4 | return {
5 | MuiAvatar: {
6 | styleOverrides: {
7 | colorDefault: {
8 | color: theme.palette.text.secondary,
9 | backgroundColor: theme.palette.grey[400]
10 | }
11 | }
12 | },
13 | MuiAvatarGroup: {
14 | styleOverrides: {
15 | avatar: {
16 | fontSize: 16,
17 | fontWeight: theme.typography.fontWeightMedium,
18 | '&:first-of-type': {
19 | fontSize: 14,
20 | color: theme.palette.primary.main,
21 | backgroundColor: theme.palette.primary.lighter
22 | }
23 | }
24 | }
25 | }
26 | };
27 | }
28 |
--------------------------------------------------------------------------------
/src/theme/overrides/Backdrop.js:
--------------------------------------------------------------------------------
1 | import { alpha } from '@material-ui/core/styles';
2 |
3 | // ----------------------------------------------------------------------
4 |
5 | export default function Backdrop(theme) {
6 | const varLow = alpha(theme.palette.grey[900], 0.48);
7 | const varHigh = alpha(theme.palette.grey[900], 1);
8 |
9 | return {
10 | MuiBackdrop: {
11 | styleOverrides: {
12 | root: {
13 | background: [
14 | `rgb(22,28,36)`,
15 | `-moz-linear-gradient(75deg, ${varLow} 0%, ${varHigh} 100%)`,
16 | `-webkit-linear-gradient(75deg, ${varLow} 0%, ${varHigh} 100%)`,
17 | `linear-gradient(75deg, ${varLow} 0%, ${varHigh} 100%)`
18 | ],
19 | '&.MuiBackdrop-invisible': {
20 | background: 'transparent'
21 | }
22 | }
23 | }
24 | }
25 | };
26 | }
27 |
--------------------------------------------------------------------------------
/src/theme/overrides/Badge.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function Badge() {
4 | return {
5 | MuiBadge: {
6 | styleOverrides: {
7 | dot: {
8 | width: 10,
9 | height: 10,
10 | borderRadius: '50%'
11 | }
12 | }
13 | }
14 | };
15 | }
16 |
--------------------------------------------------------------------------------
/src/theme/overrides/Breadcrumbs.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function Breadcrumbs(theme) {
4 | return {
5 | MuiBreadcrumbs: {
6 | styleOverrides: {
7 | separator: {
8 | marginLeft: theme.spacing(2),
9 | marginRight: theme.spacing(2)
10 | }
11 | }
12 | }
13 | };
14 | }
15 |
--------------------------------------------------------------------------------
/src/theme/overrides/Card.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function Card(theme) {
4 | return {
5 | MuiCard: {
6 | styleOverrides: {
7 | root: {
8 | boxShadow: theme.customShadows.z16,
9 | borderRadius: theme.shape.borderRadiusMd,
10 | position: 'relative',
11 | zIndex: 0 // Fix Safari overflow: hidden with border radius
12 | }
13 | }
14 | },
15 | MuiCardHeader: {
16 | defaultProps: {
17 | titleTypographyProps: { variant: 'h6' },
18 | subheaderTypographyProps: {
19 | variant: 'body2',
20 | marginTop: theme.spacing(0.5)
21 | }
22 | },
23 | styleOverrides: {
24 | root: {
25 | padding: theme.spacing(3, 3, 0)
26 | }
27 | }
28 | },
29 | MuiCardContent: {
30 | styleOverrides: {
31 | root: {
32 | padding: theme.spacing(3)
33 | }
34 | }
35 | }
36 | };
37 | }
38 |
--------------------------------------------------------------------------------
/src/theme/overrides/Container.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function Container() {
4 | return {
5 | MuiContainer: {
6 | styleOverrides: {
7 | root: {}
8 | }
9 | }
10 | };
11 | }
12 |
--------------------------------------------------------------------------------
/src/theme/overrides/ControlLabel.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function ControlLabel(theme) {
4 | return {
5 | MuiFormControlLabel: {
6 | styleOverrides: {
7 | label: {
8 | ...theme.typography.body2
9 | }
10 | }
11 | },
12 | MuiFormHelperText: {
13 | styleOverrides: {
14 | root: {
15 | marginTop: theme.spacing(1)
16 | }
17 | }
18 | },
19 | MuiFormLabel: {
20 | styleOverrides: {
21 | root: {
22 | color: theme.palette.text.disabled
23 | }
24 | }
25 | }
26 | };
27 | }
28 |
--------------------------------------------------------------------------------
/src/theme/overrides/Drawer.js:
--------------------------------------------------------------------------------
1 | import { alpha } from '@material-ui/core';
2 |
3 | // ----------------------------------------------------------------------
4 |
5 | export default function Drawer(theme) {
6 | const isLight = theme.palette.mode === 'light';
7 |
8 | return {
9 | MuiDrawer: {
10 | styleOverrides: {
11 | modal: {
12 | '&[role="presentation"]': {
13 | '& .MuiDrawer-paperAnchorLeft': {
14 | boxShadow: `8px 24px 24px 12px ${alpha(theme.palette.grey[900], isLight ? 0.16 : 0.48)}`
15 | },
16 | '& .MuiDrawer-paperAnchorRight': {
17 | boxShadow: `-8px 24px 24px 12px ${alpha(theme.palette.grey[900], isLight ? 0.16 : 0.48)}`
18 | }
19 | }
20 | }
21 | }
22 | }
23 | };
24 | }
25 |
--------------------------------------------------------------------------------
/src/theme/overrides/Fab.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function Fab(theme) {
4 | return {
5 | MuiFab: {
6 | defaultProps: {
7 | color: 'primary'
8 | },
9 |
10 | variants: [
11 | {
12 | props: { color: 'primary' },
13 | style: {
14 | boxShadow: theme.customShadows.primary,
15 | '&:hover': {
16 | backgroundColor: theme.palette.primary.dark
17 | }
18 | }
19 | }
20 | ],
21 |
22 | styleOverrides: {
23 | root: {
24 | boxShadow: theme.customShadows.z8,
25 | '&:hover': {
26 | boxShadow: 'none',
27 | backgroundColor: theme.palette.grey[400]
28 | }
29 | },
30 | primary: {},
31 | extended: {
32 | '& svg': {
33 | marginRight: theme.spacing(1)
34 | }
35 | }
36 | }
37 | }
38 | };
39 | }
40 |
--------------------------------------------------------------------------------
/src/theme/overrides/Grid.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function Grid() {
4 | return {
5 | MuiGrid: {
6 | styleOverrides: {}
7 | }
8 | };
9 | }
10 |
--------------------------------------------------------------------------------
/src/theme/overrides/IconButton.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function IconButton() {
4 | return {
5 | MuiIconButton: {
6 | styleOverrides: {
7 | root: {}
8 | }
9 | }
10 | };
11 | }
12 |
--------------------------------------------------------------------------------
/src/theme/overrides/Link.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function Link() {
4 | return {
5 | MuiLink: {
6 | defaultProps: {
7 | underline: 'hover'
8 | },
9 |
10 | styleOverrides: {
11 | root: {}
12 | }
13 | }
14 | };
15 | }
16 |
--------------------------------------------------------------------------------
/src/theme/overrides/Lists.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function Lists(theme) {
4 | return {
5 | MuiListItemIcon: {
6 | styleOverrides: {
7 | root: {
8 | color: 'inherit',
9 | minWidth: 'auto',
10 | marginRight: theme.spacing(2)
11 | }
12 | }
13 | },
14 | MuiListItemAvatar: {
15 | styleOverrides: {
16 | root: {
17 | minWidth: 'auto',
18 | marginRight: theme.spacing(2)
19 | }
20 | }
21 | },
22 | MuiListItemText: {
23 | styleOverrides: {
24 | root: {
25 | marginTop: 0,
26 | marginBottom: 0
27 | },
28 | multiline: {
29 | marginTop: 0,
30 | marginBottom: 0
31 | }
32 | }
33 | }
34 | };
35 | }
36 |
--------------------------------------------------------------------------------
/src/theme/overrides/LoadingButton.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function LoadingButton() {
4 | return {
5 | MuiLoadingButton: {
6 | styleOverrides: {
7 | root: {
8 | '&.MuiButton-text': {
9 | '& .MuiLoadingButton-startIconPendingStart': {
10 | marginLeft: 0
11 | },
12 | '& .MuiLoadingButton-endIconPendingEnd': {
13 | marginRight: 0
14 | }
15 | }
16 | }
17 | }
18 | }
19 | };
20 | }
21 |
--------------------------------------------------------------------------------
/src/theme/overrides/Menu.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function Menu(theme) {
4 | return {
5 | MuiMenuItem: {
6 | styleOverrides: {
7 | root: {
8 | '&.Mui-selected': {
9 | backgroundColor: theme.palette.action.selected,
10 | '&:hover': {
11 | backgroundColor: theme.palette.action.hover
12 | }
13 | }
14 | }
15 | }
16 | }
17 | };
18 | }
19 |
--------------------------------------------------------------------------------
/src/theme/overrides/Paper.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function Paper() {
4 | return {
5 | MuiPaper: {
6 | defaultProps: {
7 | elevation: 0
8 | },
9 |
10 | styleOverrides: {
11 | root: {
12 | backgroundImage: 'none'
13 | }
14 | }
15 | }
16 | };
17 | }
18 |
--------------------------------------------------------------------------------
/src/theme/overrides/Pickers.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function Pickers() {
4 | return {};
5 | }
6 |
--------------------------------------------------------------------------------
/src/theme/overrides/Popover.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function Popover(theme) {
4 | return {
5 | MuiPopover: {
6 | styleOverrides: {
7 | paper: {
8 | boxShadow: theme.customShadows.z12
9 | }
10 | }
11 | }
12 | };
13 | }
14 |
--------------------------------------------------------------------------------
/src/theme/overrides/Progress.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function Progress(theme) {
4 | const isLight = theme.palette.mode === 'light';
5 |
6 | return {
7 | MuiLinearProgress: {
8 | styleOverrides: {
9 | root: {
10 | borderRadius: 4,
11 | overflow: 'hidden'
12 | },
13 | bar: {
14 | borderRadius: 4
15 | },
16 | colorPrimary: {
17 | backgroundColor: theme.palette.primary[isLight ? 'lighter' : 'darker']
18 | },
19 | buffer: {
20 | backgroundColor: 'transparent'
21 | }
22 | }
23 | }
24 | };
25 | }
26 |
--------------------------------------------------------------------------------
/src/theme/overrides/Radio.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function Radio(theme) {
4 | return {
5 | MuiRadio: {
6 | styleOverrides: {
7 | root: {
8 | padding: theme.spacing(1),
9 | svg: {
10 | fontSize: 24,
11 | '&[font-size=small]': {
12 | fontSize: 20
13 | }
14 | }
15 | }
16 | }
17 | }
18 | };
19 | }
20 |
--------------------------------------------------------------------------------
/src/theme/overrides/Rating.js:
--------------------------------------------------------------------------------
1 | import { Icon } from '@iconify/react';
2 | import starFill from '@iconify/icons-eva/star-fill';
3 |
4 | import { SvgIcon } from '@material-ui/core';
5 |
6 | // ----------------------------------------------------------------------
7 |
8 | const ICON_SMALL = { width: 20, height: 20 };
9 | const ICON_LARGE = { width: 28, height: 28 };
10 |
11 | const ICON = (
12 |
13 |
14 |
15 | );
16 |
17 | export default function Rating(theme) {
18 | return {
19 | MuiRating: {
20 | defaultProps: {
21 | emptyIcon: ICON,
22 | icon: ICON
23 | },
24 |
25 | styleOverrides: {
26 | root: {
27 | '&.Mui-disabled': {
28 | opacity: 0.48
29 | }
30 | },
31 | iconEmpty: { color: theme.palette.grey[500_48] },
32 | sizeSmall: { '& svg': { ...ICON_SMALL } },
33 | sizeLarge: { '& svg': { ...ICON_LARGE } }
34 | }
35 | }
36 | };
37 | }
38 |
--------------------------------------------------------------------------------
/src/theme/overrides/Select.js:
--------------------------------------------------------------------------------
1 | import ExpandMoreRoundedIcon from '@material-ui/icons/ExpandMoreRounded';
2 |
3 | // ----------------------------------------------------------------------
4 |
5 | export default function Select() {
6 | return {
7 | MuiSelect: {
8 | defaultProps: {
9 | IconComponent: ExpandMoreRoundedIcon
10 | },
11 |
12 | styleOverrides: {
13 | root: {}
14 | }
15 | }
16 | };
17 | }
18 |
--------------------------------------------------------------------------------
/src/theme/overrides/Skeleton.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function Skeleton(theme) {
4 | return {
5 | MuiSkeleton: {
6 | defaultProps: {
7 | animation: 'wave'
8 | },
9 |
10 | styleOverrides: {
11 | root: {
12 | backgroundColor: theme.palette.background.neutral
13 | }
14 | }
15 | }
16 | };
17 | }
18 |
--------------------------------------------------------------------------------
/src/theme/overrides/Slider.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function Slider(theme) {
4 | const isLight = theme.palette.mode === 'light';
5 |
6 | return {
7 | MuiSlider: {
8 | defaultProps: {
9 | size: 'small'
10 | },
11 |
12 | styleOverrides: {
13 | root: {
14 | '&.Mui-disabled': {
15 | color: theme.palette.action.disabled
16 | }
17 | },
18 | markLabel: {
19 | fontSize: 13,
20 | color: theme.palette.text.disabled
21 | },
22 | valueLabel: {
23 | borderRadius: 8,
24 | backgroundColor: theme.palette.grey[isLight ? 800 : 700]
25 | }
26 | }
27 | }
28 | };
29 | }
30 |
--------------------------------------------------------------------------------
/src/theme/overrides/Snackbar.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function Snackbar() {
4 | return {
5 | MuiSnackbarContent: {
6 | styleOverrides: {
7 | root: {}
8 | }
9 | }
10 | };
11 | }
12 |
--------------------------------------------------------------------------------
/src/theme/overrides/Stepper.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function Stepper(theme) {
4 | return {
5 | MuiStepConnector: {
6 | styleOverrides: {
7 | line: {
8 | borderColor: theme.palette.divider
9 | }
10 | }
11 | }
12 | };
13 | }
14 |
--------------------------------------------------------------------------------
/src/theme/overrides/SvgIcon.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function SvgIcon() {
4 | return {
5 | MuiSvgIcon: {
6 | styleOverrides: {
7 | fontSizeSmall: {
8 | width: 20,
9 | height: 20,
10 | fontSize: 'inherit'
11 | },
12 | fontSizeLarge: {
13 | width: 32,
14 | height: 32,
15 | fontSize: 'inherit'
16 | }
17 | }
18 | }
19 | };
20 | }
21 |
--------------------------------------------------------------------------------
/src/theme/overrides/Switch.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function Switch(theme) {
4 | const isLight = theme.palette.mode === 'light';
5 |
6 | return {
7 | MuiSwitch: {
8 | styleOverrides: {
9 | thumb: {
10 | boxShadow: theme.customShadows.z1
11 | },
12 | track: {
13 | opacity: 1,
14 | backgroundColor: theme.palette.grey[500]
15 | },
16 | switchBase: {
17 | left: 0,
18 | right: 'auto',
19 | '&:not(:.Mui-checked)': {
20 | color: theme.palette.grey[isLight ? 100 : 300]
21 | },
22 | '&.Mui-checked.Mui-disabled, &.Mui-disabled': {
23 | color: theme.palette.grey[isLight ? 400 : 600]
24 | },
25 | '&.Mui-disabled+.MuiSwitch-track': {
26 | opacity: 1,
27 | backgroundColor: `${theme.palette.action.disabledBackground} !important`
28 | }
29 | }
30 | }
31 | }
32 | };
33 | }
34 |
--------------------------------------------------------------------------------
/src/theme/overrides/Timeline.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function Timeline(theme) {
4 | return {
5 | MuiTimelineDot: {
6 | styleOverrides: {
7 | root: {
8 | boxShadow: 'none'
9 | }
10 | }
11 | },
12 |
13 | MuiTimelineConnector: {
14 | styleOverrides: {
15 | root: {
16 | backgroundColor: theme.palette.divider
17 | }
18 | }
19 | }
20 | };
21 | }
22 |
--------------------------------------------------------------------------------
/src/theme/overrides/ToggleButton.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function ToggleButton(theme) {
4 | const isLight = theme.palette.mode === 'light';
5 |
6 | return {
7 | MuiToggleButton: {
8 | styleOverrides: {
9 | root: {
10 | color: theme.palette.grey[500],
11 | border: `solid 1px ${theme.palette.grey[500_32]}`,
12 | '&.Mui-selected': {
13 | color: theme.palette.grey[isLight ? 600 : 0],
14 | backgroundColor: theme.palette.action.selected
15 | },
16 | '&.Mui-disabled': {
17 | color: theme.palette.grey[500_48]
18 | }
19 | }
20 | }
21 | }
22 | };
23 | }
24 |
--------------------------------------------------------------------------------
/src/theme/overrides/Tooltip.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function Tooltip(theme) {
4 | const isLight = theme.palette.mode === 'light';
5 |
6 | return {
7 | MuiTooltip: {
8 | styleOverrides: {
9 | tooltip: {
10 | backgroundColor: theme.palette.grey[isLight ? 800 : 700]
11 | },
12 | arrow: {
13 | color: theme.palette.grey[isLight ? 800 : 700]
14 | }
15 | }
16 | }
17 | };
18 | }
19 |
--------------------------------------------------------------------------------
/src/theme/overrides/Typography.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function Typography(theme) {
4 | return {
5 | MuiTypography: {
6 | styleOverrides: {
7 | paragraph: {
8 | marginBottom: theme.spacing(2)
9 | },
10 | gutterBottom: {
11 | marginBottom: theme.spacing(1)
12 | }
13 | }
14 | }
15 | };
16 | }
17 |
--------------------------------------------------------------------------------
/src/theme/shape.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | const shape = {
4 | borderRadius: 8,
5 | borderRadiusSm: 12,
6 | borderRadiusMd: 16
7 | };
8 |
9 | export default shape;
10 |
--------------------------------------------------------------------------------
/src/utils/analytics.js:
--------------------------------------------------------------------------------
1 | import { googleAnalyticsConfig } from '../config';
2 |
3 | // ----------------------------------------------------------------------
4 |
5 | const setup = (...args) => {
6 | if (process.env.NODE_ENV !== 'production') {
7 | return;
8 | }
9 | if (!window.gtag) {
10 | return;
11 | }
12 | window.gtag(...args);
13 | };
14 |
15 | const track = {
16 | pageview: (props) => {
17 | setup('config', googleAnalyticsConfig, props);
18 | },
19 | event: (type, props) => {
20 | setup('event', type, props);
21 | }
22 | };
23 |
24 | export default track;
25 |
--------------------------------------------------------------------------------
/src/utils/axios.js:
--------------------------------------------------------------------------------
1 | import axios from 'axios';
2 |
3 | // ----------------------------------------------------------------------
4 |
5 | const axiosInstance = axios.create();
6 |
7 | axiosInstance.interceptors.response.use(
8 | (response) => response,
9 | (error) => Promise.reject((error.response && error.response.data) || 'Something went wrong')
10 | );
11 |
12 | export default axiosInstance;
13 |
--------------------------------------------------------------------------------
/src/utils/fakeRequest.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function fakeRequest(time) {
4 | return new Promise((res) => setTimeout(res, time));
5 | }
6 |
--------------------------------------------------------------------------------
/src/utils/formatNumber.js:
--------------------------------------------------------------------------------
1 | import { replace } from 'lodash';
2 | import numeral from 'numeral';
3 |
4 | // ----------------------------------------------------------------------
5 |
6 | export function fCurrency(number) {
7 | return numeral(number).format(Number.isInteger(number) ? '$0,0' : '$0,0.00');
8 | }
9 |
10 | export function fPercent(number) {
11 | return numeral(number / 100).format('0.0%');
12 | }
13 |
14 | export function fNumber(number) {
15 | return numeral(number).format();
16 | }
17 |
18 | export function fShortenNumber(number) {
19 | return replace(numeral(number).format('0.00a'), '.00', '');
20 | }
21 |
22 | export function fData(number) {
23 | return numeral(number).format('0.0 b');
24 | }
25 |
--------------------------------------------------------------------------------
/src/utils/formatTime.js:
--------------------------------------------------------------------------------
1 | import { format, getTime, formatDistanceToNow } from 'date-fns';
2 |
3 | // ----------------------------------------------------------------------
4 |
5 | export function fDate(date) {
6 | return format(new Date(date), 'dd MMMM yyyy');
7 | }
8 |
9 | export function fDateTime(date) {
10 | return format(new Date(date), 'dd MMM yyyy HH:mm');
11 | }
12 |
13 | export function fTimestamp(date) {
14 | return getTime(new Date(date));
15 | }
16 |
17 | export function fDateTimeSuffix(date) {
18 | return format(new Date(date), 'dd/MM/yyyy hh:mm p');
19 | }
20 |
21 | export function fToNow(date) {
22 | return formatDistanceToNow(new Date(date), {
23 | addSuffix: true
24 | });
25 | }
26 |
--------------------------------------------------------------------------------
/src/utils/getColorName.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export default function getColorName(hex) {
4 | let color;
5 |
6 | switch (hex) {
7 | case '#00AB55':
8 | color = 'Green';
9 | break;
10 | case '#000000':
11 | color = 'Black';
12 | break;
13 | case '#FFFFFF':
14 | color = 'White';
15 | break;
16 | case '#FFC0CB':
17 | color = 'Pink';
18 | break;
19 | case '#FF4842':
20 | color = 'Red';
21 | break;
22 | case '#1890FF':
23 | color = 'Blue';
24 | break;
25 | case '#94D82D':
26 | color = 'Greenyellow';
27 | break;
28 | case '#FFC107':
29 | color = 'Orange';
30 | break;
31 | default:
32 | color = hex;
33 | }
34 |
35 | return color;
36 | }
37 |
--------------------------------------------------------------------------------
/src/utils/highlight.js:
--------------------------------------------------------------------------------
1 | import hljs from 'highlight.js';
2 | import 'highlight.js/styles/atom-one-dark.css';
3 |
4 | // ----------------------------------------------------------------------
5 |
6 | hljs.configure({
7 | languages: ['javascript', 'jsx', 'sh', 'bash', 'html', 'scss', 'css', 'json']
8 | });
9 |
10 | window.hljs = hljs;
11 |
--------------------------------------------------------------------------------
/src/utils/jwt.js:
--------------------------------------------------------------------------------
1 | import jwtDecode from 'jwt-decode';
2 | import { verify, sign } from 'jsonwebtoken';
3 | //
4 | import axios from './axios';
5 |
6 | // ----------------------------------------------------------------------
7 |
8 | const isValidToken = (accessToken) => {
9 | if (!accessToken) {
10 | return false;
11 | }
12 |
13 | const decoded = jwtDecode(accessToken);
14 | const currentTime = Date.now() / 1000;
15 |
16 | return decoded.exp > currentTime;
17 | };
18 |
19 | const setSession = (accessToken) => {
20 | if (accessToken) {
21 | localStorage.setItem('accessToken', accessToken);
22 | axios.defaults.headers.common.Authorization = `Bearer ${accessToken}`;
23 | // This function below will handle when token is expired
24 | // const { exp } = jwtDecode(accessToken);
25 | // handleTokenExpired(exp);
26 | } else {
27 | localStorage.removeItem('accessToken');
28 | delete axios.defaults.headers.common.Authorization;
29 | }
30 | };
31 |
32 | export { isValidToken, setSession, verify, sign };
33 |
--------------------------------------------------------------------------------
/src/utils/mock-data/boolean.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export const boolean = [
4 | true,
5 | true,
6 | true,
7 | false,
8 | false,
9 | true,
10 | false,
11 | false,
12 | false,
13 | false,
14 | true,
15 | true,
16 | true,
17 | false,
18 | false,
19 | false,
20 | true,
21 | false,
22 | false,
23 | false,
24 | true,
25 | false,
26 | false,
27 | true,
28 | true,
29 | true,
30 | false,
31 | false,
32 | true,
33 | true,
34 | false,
35 | true,
36 | false,
37 | true,
38 | true,
39 | true,
40 | false,
41 | true,
42 | false,
43 | false
44 | ];
45 |
--------------------------------------------------------------------------------
/src/utils/mock-data/phoneNumber.js:
--------------------------------------------------------------------------------
1 | // ----------------------------------------------------------------------
2 |
3 | export const phoneNumber = [
4 | '365-374-4961',
5 | '904-966-2836',
6 | '399-757-9909',
7 | '692-767-2903',
8 | '990-588-5716',
9 | '955-439-2578',
10 | '226-924-4058',
11 | '552-917-1454',
12 | '285-840-9338',
13 | '306-269-2446',
14 | '883-373-6253',
15 | '476-509-8866',
16 | '201-465-1954',
17 | '538-295-9408',
18 | '531-492-6028',
19 | '981-699-7588',
20 | '500-268-4826',
21 | '205-952-3828',
22 | '222-255-5190',
23 | '408-439-8033',
24 | '272-940-8266',
25 | '812-685-8057',
26 | '353-801-5212',
27 | '606-285-8928',
28 | '202-767-8621',
29 | '222-830-0731',
30 | '964-940-3166',
31 | '262-702-2396',
32 | '886-261-9789',
33 | '352-390-5069',
34 | '343-907-8334',
35 | '575-347-2399',
36 | '749-228-5604',
37 | '774-452-2071',
38 | '607-841-0447',
39 | '395-619-2157',
40 | '233-834-0373',
41 | '586-880-2602',
42 | '746-772-0722',
43 | '638-615-3365,'
44 | ];
45 |
--------------------------------------------------------------------------------
/src/utils/runFlow.js:
--------------------------------------------------------------------------------
1 | import { elementsDetail } from './elementsDetail';
2 |
3 | const runFlow = (elements) => {
4 | const inputNodes = elements.filter(({ type }) => type === 'input');
5 | if (!inputNodes) return false;
6 |
7 | const excuteAndMove = async (element) => {
8 | const name = element?.data?.label;
9 | const type = element?.type;
10 | if (!name || !type) return;
11 | const method = elementsDetail?.get(name)?.method;
12 | if (method) await method();
13 | if (type === 'output') return;
14 | const edge = elements.find(({ source }) => source === element.id);
15 | if (edge) {
16 | const nextNode = elements.find(({ id }) => id === edge.target);
17 | if (nextNode) excuteAndMove(nextNode);
18 | }
19 | };
20 |
21 | inputNodes.forEach((inputNode) => {
22 | excuteAndMove(inputNode);
23 | });
24 | };
25 |
26 | export default runFlow;
27 |
--------------------------------------------------------------------------------