diff --git a/.eslintrc.json b/.eslintrc.json new file mode 100644 index 00000000..bffb357a --- /dev/null +++ b/.eslintrc.json @@ -0,0 +1,3 @@ +{ + "extends": "next/core-web-vitals" +} diff --git a/.gitignore b/.gitignore index 4b23fc32..c87c9b39 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,36 @@ -/build +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies /node_modules -package-lock.json +/.pnp +.pnp.js + +# testing +/coverage + +# next.js +/.next/ +/out/ + +# production /build -.vscode -.eslintcache + +# misc +.DS_Store +*.pem + +# debug +npm-debug.log* +yarn-debug.log* +yarn-error.log* +.pnpm-debug.log* + +# local env files +.env*.local + +# vercel +.vercel + +# typescript +*.tsbuildinfo +next-env.d.ts diff --git a/ISSUE_TEMPLATE.md b/ISSUE_TEMPLATE.md deleted file mode 100644 index fffc394e..00000000 --- a/ISSUE_TEMPLATE.md +++ /dev/null @@ -1,13 +0,0 @@ - - - diff --git a/README.md b/README.md index 4be5d883..0c2810be 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,12 @@ -# [Black Dashboard React](https://demos.creative-tim.com/black-dashboard-react/#/dashboard) [![Tweet](https://img.shields.io/twitter/url/http/shields.io.svg?style=social&logo=twitter)](https://twitter.com/intent/tweet?url=https%3A%2F%2Fdemos.creative-tim.com%2Fblack-dashboard-react%2F%23%2Fadmin%2Fdashboard&text=Black%20Dashboard%20React%20by%20Creative%20Tim%20%7C%20Free%20React%20Admin%20Template&original_referer=https%3A%2F%2Fdemos.creative-tim.com%2Fblack-dashboard-react%2F&via=creativetim&hashtags=react%2Ccreativetim%2Cdark%2Cdashboard%2Cbootstrap%2Creactstrap%2Creactjs) +# [Black Dashboard NextJS](https://demos.creative-tim.com/black-dashboard-react/#/dashboard) [![Tweet](https://img.shields.io/twitter/url/http/shields.io.svg?style=social&logo=twitter)](https://twitter.com/intent/tweet?url=https%3A%2F%2Fdemos.creative-tim.com%2Fblack-dashboard-react%2F%23%2Fadmin%2Fdashboard&text=Black%20Dashboard%20React%20by%20Creative%20Tim%20%7C%20Free%20React%20Admin%20Template&original_referer=https%3A%2F%2Fdemos.creative-tim.com%2Fblack-dashboard-react%2F&via=creativetim&hashtags=react%2Ccreativetim%2Cdark%2Cdashboard%2Cbootstrap%2Creactstrap%2Creactjs) ![version](https://img.shields.io/badge/version-1.2.1-blue.svg) ![license](https://img.shields.io/badge/license-MIT-blue.svg) [![GitHub issues open](https://img.shields.io/github/issues/creativetimofficial/black-dashboard-react.svg?maxAge=2592000)]() [![GitHub issues closed](https://img.shields.io/github/issues-closed-raw/creativetimofficial/black-dashboard-react.svg?maxAge=2592000)]() [![Chat](https://img.shields.io/badge/chat-on%20discord-7289da.svg)](https://discord.gg/E4aHAQy) ![Product Gif](./github-assets/black-dashboard-react.gif) +This project is Next.js version of the Black Dashboard React project which is originally made by creativetim. +It is developed by [Yousef Fatouraee](https://github.com/modulessoft/). -Black Dashboard React is a beautiful [Bootstrap 4](http://getbootstrap.com/), [Reacstrap](https://reactstrap.github.io/) and [React](https://reactjs.org/) ([create-react-app](https://github.com/facebook/create-react-app)) Admin Dashboard with a huge number of components built to fit together and look amazing. If you are looking for a tool to manage and visualize data about your business, this dashboard is the thing for you. It combines colors that are easy on the eye, spacious cards, beautiful typography, and graphics. +Black Dashboard NextJS is a beautiful [Bootstrap 4](http://getbootstrap.com/), [Reacstrap](https://reactstrap.github.io/) and [NextJS](https://nextjs.org/) ([create-next-app](https://nextjs.org/docs/api-reference/create-next-app)) coded in TypeScript Admin Dashboard with a huge number of components built to fit together and look amazing. If you are looking for a tool to manage and visualize data about your business, this dashboard is the thing for you. It combines colors that are easy on the eye, spacious cards, beautiful typography, and graphics. Black Dashboard React comes packed with all plugins that you might need inside a project and documentation on how to get started. It is light and easy to use, and also very powerful. Black Dashboard React features over 16 individual components, giving you the freedom of choosing and combining. This means that there are thousands of possible combinations. All components can take variations in color, that you can easily modify using SASS files. You will save a lot of time going from prototyping to full-functional code because all elements are implemented. @@ -45,9 +47,9 @@ We are very excited to share this dashboard with you and we look forward to hear ## Demo -| Dashboard | User Profile | Tables | Maps | Notification | -| --------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ | -| [![Start page](./github-assets/dashboard-page.png)](https://demos.creative-tim.com/black-dashboard-react/#/dashboard) | [![User profile page](./github-assets/user-page.png)](https://demos.creative-tim.com/black-dashboard-react/#/user-page) | [![Tables page ](./github-assets/table-page.png)](https://demos.creative-tim.com/black-dashboard-react/#/table-list) | [![Maps Page](./github-assets/maps-page.png)](https://demos.creative-tim.com/black-dashboard-react/#/maps) | [![Notification page](./github-assets/notifications-page.png)](https://demos.creative-tim.com/black-dashboard-react/#/notifications) | +| Dashboard | User Profile | Tables | Maps | Notification | +| ---------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- | +| [![Start page](./github-assets/dashboard-page.png)](https://demos.creative-tim.com/black-dashboard-nextjs/#/dashboard) | [![User profile page](./github-assets/user-page.png)](https://demos.creative-tim.com/black-dashboard-nextjs/#/user-page) | [![Tables page ](./github-assets/table-page.png)](https://demos.creative-tim.com/black-dashboard-nextjs/#/table-list) | [![Maps Page](./github-assets/maps-page.png)](https://demos.creative-tim.com/black-dashboard-nextjs/#/maps) | [![Notification page](./github-assets/notifications-page.png)](https://demos.creative-tim.com/black-dashboard-nextjs/#/notifications) | [View More](https://demos.creative-tim.com/black-dashboard-react/#/dashboard). @@ -55,9 +57,8 @@ We are very excited to share this dashboard with you and we look forward to hear Quick start options: -- Clone the repo: `git clone https://github.com/creativetimofficial/black-dashboard-react.git`. -- [Download from Github](https://github.com/creativetimofficial/black-dashboard-react/archive/master.zip). -- [Download from Creative Tim](https://www.creative-tim.com/product/black-dashboard-react). +- Clone the repo: `git clone https://github.com/majhoolsoft/black-dashboard-nextjs.git`. +- [Download from Github](https://github.com/majhoolsoft/black-dashboard-nextjs/archive/Next.js.zip). ## Documentation @@ -68,26 +69,15 @@ The documentation for the Black Dashboard React is hosted at our [website](https Within the download you'll find the following directories and files: ``` -black-dashboard-react +black-dashboard-nextjs . ├── package.json ├── CHANGELOG.md ├── ISSUE_TEMPLATE.md ├── LICENSE.md ├── README.md -├── Documentation -│   └── documentation.html -├── github-assets -│   └── react.svg -├── public -│   ├── index.html -│   └── manifest.json -└── src - ├── index.js - ├── logo-white.svg - ├── logo.svg - ├── routes.js - ├── assets +├── routes.js +├── assets │   ├── css │   ├── demo │   ├── fonts @@ -103,32 +93,42 @@ black-dashboard-react │   │   │   ├── utilities │   │   │   └── vendor │   └── black-dashboard.scss - ├── components - │   ├── FixedPlugin - │   │   └── FixedPlugin.js - │   ├── Footer - │   │   └── Footer.js - │   ├── Navbars - │   │   ├── AdminNavbar.js - │   │   └── RTLNavbar.js - │   └── Sidebar - │   └── Sidebar.js +├── Documentation +│   └── documentation.html +├── github-assets +│   └── react.svg +├── public +│   └── manifest.json +├── pages + ├── index.tsx + ├── _document.tsx + ├── _app.tsx + ├── admin + │ └── Dashboard.tsx + │ └── Icons.tsx + │ └── Map.tsx + │ └── Notifications.tsx + │ └── Rtl.tsx + │ └── TableList.tsx + │ └── Typography.tsx + │ └── UserProfile.tsx +├── components +    ├── FixedPlugin +    │   └── FixedPlugin.js +    ├── Footer +    │   └── Footer.js +    ├── Navbars +    │   ├── AdminNavbar.js +    │   └── RTLNavbar.js +    └── Sidebar +    └── Sidebar.js ├── layouts │   ├── Admin │   │   └── Admin.js │   └── RTL │   └── RTL.js - ├── variables - │   └── charts.js - └── views - ├── Dashboard.js - ├── Icons.js - ├── Map.js - ├── Notifications.js - ├── Rtl.js - ├── TableList.js - ├── Typography.js - └── UserProfile.js +└── variables +    └── charts.js ``` ## Browser Support @@ -139,9 +139,8 @@ At present, we officially aim to support the last two versions of the following ## Resources -- Demo: https://demos.creative-tim.com/black-dashboard-react/#/dashboard -- Download Page: https://www.creative-tim.com/product/black-dashboard-react -- Documentation: https://demos.creative-tim.com/black-dashboard-react/#/documentation/tutorial +- Demo: https://demos.creative-tim.com/black-dashboard-nextjs/#/dashboard +- Download Page: https://github.com/majhoolsoft/black-dashboard-nextjs - License Agreement: https://www.creative-tim.com/license - Support: https://www.creative-tim.com/contact-us - Issues: [Github Issues Page](https://github.com/creativetimofficial/black-dashboard-react/issues) diff --git a/src/assets/css/black-dashboard-react.css b/assets/css/black-dashboard-react.css similarity index 100% rename from src/assets/css/black-dashboard-react.css rename to assets/css/black-dashboard-react.css diff --git a/src/assets/css/black-dashboard-react.css.map b/assets/css/black-dashboard-react.css.map similarity index 100% rename from src/assets/css/black-dashboard-react.css.map rename to assets/css/black-dashboard-react.css.map diff --git a/src/assets/css/black-dashboard-react.min.css b/assets/css/black-dashboard-react.min.css similarity index 100% rename from src/assets/css/black-dashboard-react.min.css rename to assets/css/black-dashboard-react.min.css diff --git a/src/assets/css/nucleo-icons.css b/assets/css/nucleo-icons.css similarity index 100% rename from src/assets/css/nucleo-icons.css rename to assets/css/nucleo-icons.css diff --git a/src/assets/demo/demo.css b/assets/demo/demo.css similarity index 100% rename from src/assets/demo/demo.css rename to assets/demo/demo.css diff --git a/src/assets/fonts/nucleo.eot b/assets/fonts/nucleo.eot similarity index 100% rename from src/assets/fonts/nucleo.eot rename to assets/fonts/nucleo.eot diff --git a/src/assets/fonts/nucleo.ttf b/assets/fonts/nucleo.ttf similarity index 100% rename from src/assets/fonts/nucleo.ttf rename to assets/fonts/nucleo.ttf diff --git a/src/assets/fonts/nucleo.woff b/assets/fonts/nucleo.woff similarity index 100% rename from src/assets/fonts/nucleo.woff rename to assets/fonts/nucleo.woff diff --git a/src/assets/fonts/nucleo.woff2 b/assets/fonts/nucleo.woff2 similarity index 100% rename from src/assets/fonts/nucleo.woff2 rename to assets/fonts/nucleo.woff2 diff --git a/src/assets/scss/black-dashboard-react.scss b/assets/scss/black-dashboard-react.scss similarity index 100% rename from src/assets/scss/black-dashboard-react.scss rename to assets/scss/black-dashboard-react.scss diff --git a/src/assets/scss/black-dashboard-react/custom/_alerts.scss b/assets/scss/black-dashboard-react/custom/_alerts.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/_alerts.scss rename to assets/scss/black-dashboard-react/custom/_alerts.scss diff --git a/src/assets/scss/black-dashboard-react/custom/_badges.scss b/assets/scss/black-dashboard-react/custom/_badges.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/_badges.scss rename to assets/scss/black-dashboard-react/custom/_badges.scss diff --git a/src/assets/scss/black-dashboard-react/custom/_buttons.scss b/assets/scss/black-dashboard-react/custom/_buttons.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/_buttons.scss rename to assets/scss/black-dashboard-react/custom/_buttons.scss diff --git a/src/assets/scss/black-dashboard-react/custom/_card.scss b/assets/scss/black-dashboard-react/custom/_card.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/_card.scss rename to assets/scss/black-dashboard-react/custom/_card.scss diff --git a/src/assets/scss/black-dashboard-react/custom/_checkboxes-radio.scss b/assets/scss/black-dashboard-react/custom/_checkboxes-radio.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/_checkboxes-radio.scss rename to assets/scss/black-dashboard-react/custom/_checkboxes-radio.scss diff --git a/src/assets/scss/black-dashboard-react/custom/_dropdown.scss b/assets/scss/black-dashboard-react/custom/_dropdown.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/_dropdown.scss rename to assets/scss/black-dashboard-react/custom/_dropdown.scss diff --git a/src/assets/scss/black-dashboard-react/custom/_fixed-plugin.scss b/assets/scss/black-dashboard-react/custom/_fixed-plugin.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/_fixed-plugin.scss rename to assets/scss/black-dashboard-react/custom/_fixed-plugin.scss diff --git a/src/assets/scss/black-dashboard-react/custom/_footer.scss b/assets/scss/black-dashboard-react/custom/_footer.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/_footer.scss rename to assets/scss/black-dashboard-react/custom/_footer.scss diff --git a/src/assets/scss/black-dashboard-react/custom/_forms.scss b/assets/scss/black-dashboard-react/custom/_forms.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/_forms.scss rename to assets/scss/black-dashboard-react/custom/_forms.scss diff --git a/src/assets/scss/black-dashboard-react/custom/_functions.scss b/assets/scss/black-dashboard-react/custom/_functions.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/_functions.scss rename to assets/scss/black-dashboard-react/custom/_functions.scss diff --git a/src/assets/scss/black-dashboard-react/custom/_images.scss b/assets/scss/black-dashboard-react/custom/_images.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/_images.scss rename to assets/scss/black-dashboard-react/custom/_images.scss diff --git a/src/assets/scss/black-dashboard-react/custom/_input-group.scss b/assets/scss/black-dashboard-react/custom/_input-group.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/_input-group.scss rename to assets/scss/black-dashboard-react/custom/_input-group.scss diff --git a/src/assets/scss/black-dashboard-react/custom/_misc.scss b/assets/scss/black-dashboard-react/custom/_misc.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/_misc.scss rename to assets/scss/black-dashboard-react/custom/_misc.scss diff --git a/src/assets/scss/black-dashboard-react/custom/_mixins.scss b/assets/scss/black-dashboard-react/custom/_mixins.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/_mixins.scss rename to assets/scss/black-dashboard-react/custom/_mixins.scss diff --git a/src/assets/scss/black-dashboard-react/custom/_modal.scss b/assets/scss/black-dashboard-react/custom/_modal.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/_modal.scss rename to assets/scss/black-dashboard-react/custom/_modal.scss diff --git a/src/assets/scss/black-dashboard-react/custom/_navbar.scss b/assets/scss/black-dashboard-react/custom/_navbar.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/_navbar.scss rename to assets/scss/black-dashboard-react/custom/_navbar.scss diff --git a/src/assets/scss/black-dashboard-react/custom/_rtl.scss b/assets/scss/black-dashboard-react/custom/_rtl.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/_rtl.scss rename to assets/scss/black-dashboard-react/custom/_rtl.scss diff --git a/src/assets/scss/black-dashboard-react/custom/_sidebar-and-main-panel.scss b/assets/scss/black-dashboard-react/custom/_sidebar-and-main-panel.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/_sidebar-and-main-panel.scss rename to assets/scss/black-dashboard-react/custom/_sidebar-and-main-panel.scss diff --git a/src/assets/scss/black-dashboard-react/custom/_tables.scss b/assets/scss/black-dashboard-react/custom/_tables.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/_tables.scss rename to assets/scss/black-dashboard-react/custom/_tables.scss diff --git a/src/assets/scss/black-dashboard-react/custom/_type.scss b/assets/scss/black-dashboard-react/custom/_type.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/_type.scss rename to assets/scss/black-dashboard-react/custom/_type.scss diff --git a/src/assets/scss/black-dashboard-react/custom/_utilities.scss b/assets/scss/black-dashboard-react/custom/_utilities.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/_utilities.scss rename to assets/scss/black-dashboard-react/custom/_utilities.scss diff --git a/src/assets/scss/black-dashboard-react/custom/_variables.scss b/assets/scss/black-dashboard-react/custom/_variables.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/_variables.scss rename to assets/scss/black-dashboard-react/custom/_variables.scss diff --git a/src/assets/scss/black-dashboard-react/custom/_white-content.scss b/assets/scss/black-dashboard-react/custom/_white-content.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/_white-content.scss rename to assets/scss/black-dashboard-react/custom/_white-content.scss diff --git a/src/assets/scss/black-dashboard-react/custom/cards/_card-chart.scss b/assets/scss/black-dashboard-react/custom/cards/_card-chart.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/cards/_card-chart.scss rename to assets/scss/black-dashboard-react/custom/cards/_card-chart.scss diff --git a/src/assets/scss/black-dashboard-react/custom/cards/_card-map.scss b/assets/scss/black-dashboard-react/custom/cards/_card-map.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/cards/_card-map.scss rename to assets/scss/black-dashboard-react/custom/cards/_card-map.scss diff --git a/src/assets/scss/black-dashboard-react/custom/cards/_card-plain.scss b/assets/scss/black-dashboard-react/custom/cards/_card-plain.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/cards/_card-plain.scss rename to assets/scss/black-dashboard-react/custom/cards/_card-plain.scss diff --git a/src/assets/scss/black-dashboard-react/custom/cards/_card-task.scss b/assets/scss/black-dashboard-react/custom/cards/_card-task.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/cards/_card-task.scss rename to assets/scss/black-dashboard-react/custom/cards/_card-task.scss diff --git a/src/assets/scss/black-dashboard-react/custom/cards/_card-user.scss b/assets/scss/black-dashboard-react/custom/cards/_card-user.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/cards/_card-user.scss rename to assets/scss/black-dashboard-react/custom/cards/_card-user.scss diff --git a/src/assets/scss/black-dashboard-react/custom/mixins/_alert.scss b/assets/scss/black-dashboard-react/custom/mixins/_alert.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/mixins/_alert.scss rename to assets/scss/black-dashboard-react/custom/mixins/_alert.scss diff --git a/src/assets/scss/black-dashboard-react/custom/mixins/_background-variant.scss b/assets/scss/black-dashboard-react/custom/mixins/_background-variant.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/mixins/_background-variant.scss rename to assets/scss/black-dashboard-react/custom/mixins/_background-variant.scss diff --git a/src/assets/scss/black-dashboard-react/custom/mixins/_badges.scss b/assets/scss/black-dashboard-react/custom/mixins/_badges.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/mixins/_badges.scss rename to assets/scss/black-dashboard-react/custom/mixins/_badges.scss diff --git a/src/assets/scss/black-dashboard-react/custom/mixins/_buttons.scss b/assets/scss/black-dashboard-react/custom/mixins/_buttons.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/mixins/_buttons.scss rename to assets/scss/black-dashboard-react/custom/mixins/_buttons.scss diff --git a/src/assets/scss/black-dashboard-react/custom/mixins/_dropdown.scss b/assets/scss/black-dashboard-react/custom/mixins/_dropdown.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/mixins/_dropdown.scss rename to assets/scss/black-dashboard-react/custom/mixins/_dropdown.scss diff --git a/src/assets/scss/black-dashboard-react/custom/mixins/_forms.scss b/assets/scss/black-dashboard-react/custom/mixins/_forms.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/mixins/_forms.scss rename to assets/scss/black-dashboard-react/custom/mixins/_forms.scss diff --git a/src/assets/scss/black-dashboard-react/custom/mixins/_icon.scss b/assets/scss/black-dashboard-react/custom/mixins/_icon.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/mixins/_icon.scss rename to assets/scss/black-dashboard-react/custom/mixins/_icon.scss diff --git a/src/assets/scss/black-dashboard-react/custom/mixins/_inputs.scss b/assets/scss/black-dashboard-react/custom/mixins/_inputs.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/mixins/_inputs.scss rename to assets/scss/black-dashboard-react/custom/mixins/_inputs.scss diff --git a/src/assets/scss/black-dashboard-react/custom/mixins/_modals.scss b/assets/scss/black-dashboard-react/custom/mixins/_modals.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/mixins/_modals.scss rename to assets/scss/black-dashboard-react/custom/mixins/_modals.scss diff --git a/src/assets/scss/black-dashboard-react/custom/mixins/_page-header.scss b/assets/scss/black-dashboard-react/custom/mixins/_page-header.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/mixins/_page-header.scss rename to assets/scss/black-dashboard-react/custom/mixins/_page-header.scss diff --git a/src/assets/scss/black-dashboard-react/custom/mixins/_popovers.scss b/assets/scss/black-dashboard-react/custom/mixins/_popovers.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/mixins/_popovers.scss rename to assets/scss/black-dashboard-react/custom/mixins/_popovers.scss diff --git a/src/assets/scss/black-dashboard-react/custom/mixins/_vendor-prefixes.scss b/assets/scss/black-dashboard-react/custom/mixins/_vendor-prefixes.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/mixins/_vendor-prefixes.scss rename to assets/scss/black-dashboard-react/custom/mixins/_vendor-prefixes.scss diff --git a/src/assets/scss/black-dashboard-react/custom/mixins/_wizard.scss b/assets/scss/black-dashboard-react/custom/mixins/_wizard.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/mixins/_wizard.scss rename to assets/scss/black-dashboard-react/custom/mixins/_wizard.scss diff --git a/src/assets/scss/black-dashboard-react/custom/mixins/opacity.scss b/assets/scss/black-dashboard-react/custom/mixins/opacity.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/mixins/opacity.scss rename to assets/scss/black-dashboard-react/custom/mixins/opacity.scss diff --git a/src/assets/scss/black-dashboard-react/custom/utilities/_backgrounds.scss b/assets/scss/black-dashboard-react/custom/utilities/_backgrounds.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/utilities/_backgrounds.scss rename to assets/scss/black-dashboard-react/custom/utilities/_backgrounds.scss diff --git a/src/assets/scss/black-dashboard-react/custom/utilities/_floating.scss b/assets/scss/black-dashboard-react/custom/utilities/_floating.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/utilities/_floating.scss rename to assets/scss/black-dashboard-react/custom/utilities/_floating.scss diff --git a/src/assets/scss/black-dashboard-react/custom/utilities/_helper.scss b/assets/scss/black-dashboard-react/custom/utilities/_helper.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/utilities/_helper.scss rename to assets/scss/black-dashboard-react/custom/utilities/_helper.scss diff --git a/src/assets/scss/black-dashboard-react/custom/utilities/_position.scss b/assets/scss/black-dashboard-react/custom/utilities/_position.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/utilities/_position.scss rename to assets/scss/black-dashboard-react/custom/utilities/_position.scss diff --git a/src/assets/scss/black-dashboard-react/custom/utilities/_shadows.scss b/assets/scss/black-dashboard-react/custom/utilities/_shadows.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/utilities/_shadows.scss rename to assets/scss/black-dashboard-react/custom/utilities/_shadows.scss diff --git a/src/assets/scss/black-dashboard-react/custom/utilities/_sizing.scss b/assets/scss/black-dashboard-react/custom/utilities/_sizing.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/utilities/_sizing.scss rename to assets/scss/black-dashboard-react/custom/utilities/_sizing.scss diff --git a/src/assets/scss/black-dashboard-react/custom/utilities/_spacing.scss b/assets/scss/black-dashboard-react/custom/utilities/_spacing.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/utilities/_spacing.scss rename to assets/scss/black-dashboard-react/custom/utilities/_spacing.scss diff --git a/src/assets/scss/black-dashboard-react/custom/utilities/_text.scss b/assets/scss/black-dashboard-react/custom/utilities/_text.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/utilities/_text.scss rename to assets/scss/black-dashboard-react/custom/utilities/_text.scss diff --git a/src/assets/scss/black-dashboard-react/custom/utilities/_transform.scss b/assets/scss/black-dashboard-react/custom/utilities/_transform.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/utilities/_transform.scss rename to assets/scss/black-dashboard-react/custom/utilities/_transform.scss diff --git a/src/assets/scss/black-dashboard-react/custom/vendor/_plugin-perfect-scrollbar.scss b/assets/scss/black-dashboard-react/custom/vendor/_plugin-perfect-scrollbar.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/vendor/_plugin-perfect-scrollbar.scss rename to assets/scss/black-dashboard-react/custom/vendor/_plugin-perfect-scrollbar.scss diff --git a/src/assets/scss/black-dashboard-react/custom/vendor/_plugin-react-notification-alert.scss b/assets/scss/black-dashboard-react/custom/vendor/_plugin-react-notification-alert.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/custom/vendor/_plugin-react-notification-alert.scss rename to assets/scss/black-dashboard-react/custom/vendor/_plugin-react-notification-alert.scss diff --git a/src/assets/scss/black-dashboard-react/react-differences/_inputs.scss b/assets/scss/black-dashboard-react/react-differences/_inputs.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/react-differences/_inputs.scss rename to assets/scss/black-dashboard-react/react-differences/_inputs.scss diff --git a/src/assets/scss/black-dashboard-react/react-differences/react-differences.scss b/assets/scss/black-dashboard-react/react-differences/react-differences.scss similarity index 100% rename from src/assets/scss/black-dashboard-react/react-differences/react-differences.scss rename to assets/scss/black-dashboard-react/react-differences/react-differences.scss diff --git a/src/components/BackgroundColorWrapper/BackgroundColorWrapper.js b/components/BackgroundColorWrapper/BackgroundColorWrapper.js similarity index 100% rename from src/components/BackgroundColorWrapper/BackgroundColorWrapper.js rename to components/BackgroundColorWrapper/BackgroundColorWrapper.js diff --git a/src/components/FixedPlugin/FixedPlugin.js b/components/FixedPlugin/FixedPlugin.js similarity index 100% rename from src/components/FixedPlugin/FixedPlugin.js rename to components/FixedPlugin/FixedPlugin.js diff --git a/src/components/Footer/Footer.js b/components/Footer/Footer.js similarity index 100% rename from src/components/Footer/Footer.js rename to components/Footer/Footer.js diff --git a/src/components/Navbars/AdminNavbar.js b/components/Navbars/AdminNavbar.js similarity index 98% rename from src/components/Navbars/AdminNavbar.js rename to components/Navbars/AdminNavbar.js index f5a15677..2ed787d2 100755 --- a/src/components/Navbars/AdminNavbar.js +++ b/components/Navbars/AdminNavbar.js @@ -36,7 +36,7 @@ import { Container, Modal, NavbarToggler, - ModalHeader + ModalHeader, } from "reactstrap"; function AdminNavbar(props) { @@ -78,7 +78,7 @@ function AdminNavbar(props) {
@@ -151,7 +151,7 @@ function AdminNavbar(props) { onClick={(e) => e.preventDefault()} >
- ... + ...

Log out

diff --git a/src/components/Navbars/RTLNavbar.js b/components/Navbars/RTLNavbar.js similarity index 100% rename from src/components/Navbars/RTLNavbar.js rename to components/Navbars/RTLNavbar.js diff --git a/components/NotificationAlert/NotificationAlert.js b/components/NotificationAlert/NotificationAlert.js new file mode 100644 index 00000000..ea9ce12f --- /dev/null +++ b/components/NotificationAlert/NotificationAlert.js @@ -0,0 +1,207 @@ +import React from "react"; +import PropTypes from "prop-types"; +import { Alert, Col } from "reactstrap"; + +class NotificationAlert extends React.Component { + constructor(props) { + super(props); + this.state = { + notifyTL: [], + notifyTC: [], + notifyTR: [], + notifyBL: [], + notifyBC: [], + notifyBR: [], + notifyID: [], + }; + this.onDismiss = this.onDismiss.bind(this); + this.notificationAlert = this.notificationAlert.bind(this); + this.refNotification = React.createRef(); + } + // to stop the warning of calling setState of unmounted component + componentWillUnmount() { + for (let i = 0; i < this.state.notifyID.length; i++) { + window.clearTimeout(this.state.notifyID[i]); + } + } + onDismiss(nNumber, place, noAnimate) { + var notify = []; + var sNotify = this.state["notify" + place.toUpperCase()]; + var dNotify; + for (var i = 0; i < sNotify.length; i++) { + if (sNotify[i].key !== nNumber + "") { + if (sNotify[i].props.className.indexOf("fadeOutUp") !== -1) { + dNotify = React.cloneElement(sNotify[i]); + } else { + if (noAnimate === undefined) { + var animation; + if (place.indexOf("b") !== -1) { + animation = + sNotify[i].key > nNumber + "" ? " animated moveDown" : ""; + } else { + animation = + sNotify[i].key > nNumber + "" ? " animated moveUp" : ""; + } + dNotify = React.cloneElement(sNotify[i], { + className: "alert-with-icon" + animation, + }); + } else { + dNotify = React.cloneElement(sNotify[i], { + className: "alert-with-icon", + }); + } + } + notify.push(dNotify); + } else { + if (noAnimate === undefined) { + dNotify = React.cloneElement(sNotify[i], { + className: "alert-with-icon animated fadeOutUp", + }); + notify.push(dNotify); + } + } + } + if (noAnimate === undefined) { + let id = setTimeout( + function () { + this.onDismiss(nNumber, place, "noAnimate"); + }.bind(this), + 800 + ); + this.setState({ + notifyID: [id].concat(this.state.notifyID), + }); + } + sNotify = {}; + sNotify["notify" + place.toUpperCase()] = notify; + this.setState(sNotify); + } + notificationAlert(options) { + var notify = this.state["notify" + options.place.toUpperCase()]; + var nNumber = notify.length; + if (notify.length > 0) { + if (options.place.indexOf("b") !== -1) { + nNumber = parseInt(notify[0].key, 10) + 1; + } else { + nNumber = parseInt(notify[notify.length - 1].key, 10) + 1; + } + } + let toggle; + if (options.closeButton !== false) { + toggle = () => this.onDismiss(nNumber, options.place); + } + var notification = ( + + {options.icon !== undefined && ( + + )} + {options.message} + + ); + if (options.place.indexOf("b") !== -1) { + notify.unshift(notification); + } else { + notify.push(notification); + } + var sNotify = {}; + sNotify["notify" + options.place.toUpperCase()] = notify; + // aici pui notify[notify.length-1].key + if (options.autoDismiss > 0) { + let id = setTimeout( + function () { + this.onDismiss(nNumber, options.place); + }.bind(this), + options.autoDismiss * 1000 + (notify.length - 1) * 1000 + ); + this.setState({ + notifyID: [id].concat(this.state.notifyID), + }); + } + this.setState(sNotify); + } + showAllNotifications(place) { + if (this.state["notify" + place.toUpperCase()].length > 0) { + var style = { + display: "inline-block", + margin: "0px auto", + position: "fixed", + transition: "all 0.5s ease-in-out", + zIndex: this.props.zIndex, + }; + if (place.indexOf("t") !== -1) { + style["top"] = "20px"; + switch (place) { + case "tl": + style["left"] = "20px"; + break; + case "tc": + style["left"] = "0px"; + style["right"] = "0px"; + break; + case "tr": + style["right"] = "20px"; + break; + default: + break; + } + } else { + style["bottom"] = "20px"; + switch (place) { + case "bl": + style["left"] = "20px"; + break; + case "bc": + style["left"] = "0px"; + style["right"] = "0px"; + break; + case "br": + style["right"] = "20px"; + break; + default: + break; + } + } + return ( + <> + + {this.state["notify" + place.toUpperCase()].map((prop, key) => { + return prop; + })} + + + ); + } + } + render() { + return ( + <> +
+ {this.showAllNotifications("tl")} + {this.showAllNotifications("tc")} + {this.showAllNotifications("tr")} + {this.showAllNotifications("bl")} + {this.showAllNotifications("bc")} + {this.showAllNotifications("br")} +
+ + ); + } +} + +NotificationAlert.defaultProps = { + zIndex: 9999, + onClick: () => {}, +}; + +NotificationAlert.propTypes = { + zIndex: PropTypes.number, + onClick: PropTypes.func, +}; + +export default NotificationAlert; diff --git a/src/components/Sidebar/Sidebar.js b/components/Sidebar/Sidebar.js similarity index 83% rename from src/components/Sidebar/Sidebar.js rename to components/Sidebar/Sidebar.js index 6d978695..d45470ab 100755 --- a/src/components/Sidebar/Sidebar.js +++ b/components/Sidebar/Sidebar.js @@ -17,24 +17,26 @@ */ /*eslint-disable*/ import React from "react"; -import { NavLink, Link, useLocation } from "react-router-dom"; +// import { NavLink, Link, useLocation } from "react-router-dom"; // nodejs library to set properties for components +import { useRouter } from "next/router"; import { PropTypes } from "prop-types"; // javascript plugin used to create scrollbars on windows import PerfectScrollbar from "perfect-scrollbar"; // reactstrap components -import { Nav, NavLink as ReactstrapNavLink } from "reactstrap"; +import { Nav, NavLink } from "reactstrap"; import { BackgroundColorContext, - backgroundColors + backgroundColors, } from "contexts/BackgroundColorContext"; +import Link from "next/link"; var ps; function Sidebar(props) { - const location = useLocation(); + const location = useRouter(); const sidebarRef = React.useRef(null); // verifies if routeName is the one active (in browser input) const activeRoute = (routeName) => { @@ -44,7 +46,7 @@ function Sidebar(props) { if (navigator.platform.indexOf("Win") > -1) { ps = new PerfectScrollbar(sidebarRef.current, { suppressScrollX: true, - suppressScrollY: false + suppressScrollY: false, }); } // Specify how to clean up after this effect: @@ -86,24 +88,24 @@ function Sidebar(props) { ); } else { logoImg = ( -
react-logo
- + ); logoText = ( - {logo.text} - + ); } } @@ -128,23 +130,24 @@ function Sidebar(props) { } key={key} > - - -

{rtlActive ? prop.rtlName : prop.name}

-
+ + +

{rtlActive ? prop.rtlName : prop.name}

+
+ ); })}
  • - +

    Upgrade to PRO

    -
    +
  • @@ -169,8 +172,8 @@ Sidebar.propTypes = { // the text of the logo text: PropTypes.node, // the image src of the logo - imgSrc: PropTypes.string - }) + imgSrc: PropTypes.string, + }), }; export default Sidebar; diff --git a/src/components/ThemeWrapper/ThemeWrapper.js b/components/ThemeWrapper/ThemeWrapper.js similarity index 100% rename from src/components/ThemeWrapper/ThemeWrapper.js rename to components/ThemeWrapper/ThemeWrapper.js diff --git a/src/contexts/BackgroundColorContext.js b/contexts/BackgroundColorContext.js similarity index 100% rename from src/contexts/BackgroundColorContext.js rename to contexts/BackgroundColorContext.js diff --git a/src/contexts/ThemeContext.js b/contexts/ThemeContext.js similarity index 100% rename from src/contexts/ThemeContext.js rename to contexts/ThemeContext.js diff --git a/gulpfile.js b/gulpfile.js deleted file mode 100644 index 893c90b4..00000000 --- a/gulpfile.js +++ /dev/null @@ -1,77 +0,0 @@ -const gulp = require("gulp"); -const gap = require("gulp-append-prepend"); - -gulp.task("licenses", async function () { - // this is to add Creative Tim licenses in the production mode for the minified js - gulp - .src("build/static/js/*chunk.js", { base: "./" }) - .pipe( - gap.prependText(`/*! - -========================================================= -* Black Dashboard React - v1.2.0 -========================================================= - -* Product Page: https://www.creative-tim.com/product/black-dashboard-react -* Copyright 2020 Creative Tim (https://www.creative-tim.com) -* Licensed under MIT (https://github.com/creativetimofficial/black-dashboard-react/blob/master/LICENSE.md) - -* Coded by Creative Tim - -========================================================= - -* The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - -*/`) - ) - .pipe(gulp.dest("./", { overwrite: true })); - - // this is to add Creative Tim licenses in the production mode for the minified html - gulp - .src("build/index.html", { base: "./" }) - .pipe( - gap.prependText(``) - ) - .pipe(gulp.dest("./", { overwrite: true })); - - // this is to add Creative Tim licenses in the production mode for the minified css - gulp - .src("build/static/css/*chunk.css", { base: "./" }) - .pipe( - gap.prependText(`/*! - -========================================================= -* Black Dashboard React - v1.2.0 -========================================================= - -* Product Page: https://www.creative-tim.com/product/black-dashboard-react -* Copyright 2020 Creative Tim (https://www.creative-tim.com) -* Licensed under MIT (https://github.com/creativetimofficial/black-dashboard-react/blob/master/LICENSE.md) - -* Coded by Creative Tim - -========================================================= - -* The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - -*/`) - ) - .pipe(gulp.dest("./", { overwrite: true })); - return; -}); diff --git a/src/layouts/Admin/Admin.js b/layouts/Admin/Admin.js similarity index 73% rename from src/layouts/Admin/Admin.js rename to layouts/Admin/Admin.js index a1d7be3b..efdfe01c 100755 --- a/src/layouts/Admin/Admin.js +++ b/layouts/Admin/Admin.js @@ -16,35 +16,37 @@ */ import React from "react"; -import { Route, Switch, Redirect, useLocation } from "react-router-dom"; +// import { Route, Switch, Redirect, useLocation } from "react-router-dom"; +import { useRouter } from "next/router"; // javascript plugin used to create scrollbars on windows import PerfectScrollbar from "perfect-scrollbar"; // core components -import AdminNavbar from "components/Navbars/AdminNavbar.js"; -import Footer from "components/Footer/Footer.js"; -import Sidebar from "components/Sidebar/Sidebar.js"; -import FixedPlugin from "components/FixedPlugin/FixedPlugin.js"; +import AdminNavbar from "../../components/Navbars/AdminNavbar.js"; +import Footer from "../../components/Footer/Footer.js"; +import Sidebar from "../../components/Sidebar/Sidebar.js"; +import FixedPlugin from "../../components/FixedPlugin/FixedPlugin.js"; -import routes from "routes.js"; +import routes from "../../routes.js"; +const logo = "/img/react-logo.png"; -import logo from "assets/img/react-logo.png"; -import { BackgroundColorContext } from "contexts/BackgroundColorContext"; +import { BackgroundColorContext } from "../../contexts/BackgroundColorContext"; var ps; function Admin(props) { - const location = useLocation(); + const location = useRouter(); const mainPanelRef = React.useRef(null); const [sidebarOpened, setsidebarOpened] = React.useState( - document.documentElement.className.indexOf("nav-open") !== -1 + // document.documentElement.className.indexOf("nav-open") !== -1 + false ); React.useEffect(() => { if (navigator.platform.indexOf("Win") > -1) { document.documentElement.className += " perfect-scrollbar-on"; document.documentElement.classList.remove("perfect-scrollbar-off"); ps = new PerfectScrollbar(mainPanelRef.current, { - suppressScrollX: true + suppressScrollX: true, }); let tables = document.querySelectorAll(".table-responsive"); for (let i = 0; i < tables.length; i++) { @@ -78,21 +80,6 @@ function Admin(props) { document.documentElement.classList.toggle("nav-open"); setsidebarOpened(!sidebarOpened); }; - const getRoutes = (routes) => { - return routes.map((prop, key) => { - if (prop.layout === "/admin") { - return ( - - ); - } else { - return null; - } - }); - }; const getBrandText = (path) => { for (let i = 0; i < routes.length; i++) { if (location.pathname.indexOf(routes[i].layout + routes[i].path) !== -1) { @@ -111,7 +98,7 @@ function Admin(props) { logo={{ outterLink: "https://www.creative-tim.com/", text: "Creative Tim", - imgSrc: logo + imgSrc: logo, }} toggleSidebar={toggleSidebar} /> @@ -121,16 +108,10 @@ function Admin(props) { toggleSidebar={toggleSidebar} sidebarOpened={sidebarOpened} /> - - {getRoutes(routes)} - - - { - // we don't want the Footer to be rendered on map page - location.pathname === "/admin/maps" ? null :
    +