└── admin-dashboard ├── src ├── index.css ├── components │ ├── Layout │ │ ├── index.jsx │ │ ├── SideBarContainer.jsx │ │ ├── Footer.jsx │ │ ├── Header.jsx │ │ └── SideBar.jsx │ └── Common │ │ ├── Breadcrumb.jsx │ │ └── TableContainer.jsx ├── assets │ ├── images │ │ └── 1876.jpg │ ├── scss │ │ ├── _variables.scss │ │ └── app.scss │ └── react.svg ├── main.jsx ├── App.css ├── pages │ ├── Dashboard │ │ ├── AdComp.jsx │ │ ├── ColumnChart.jsx │ │ ├── MetricsComp.jsx │ │ ├── CardComp.jsx │ │ ├── CityRankings.jsx │ │ ├── index.jsx │ │ └── ActivityComp.jsx │ └── Transactions │ │ ├── TransactionColumn.jsx │ │ └── index.jsx ├── App.jsx └── data.js ├── vite.config.js ├── .gitignore ├── index.html ├── package.json └── public └── vite.svg /admin-dashboard/src/index.css: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /admin-dashboard/src/components/Layout/index.jsx: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /admin-dashboard/src/assets/images/1876.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/judygab/web-dev-projects-2/HEAD/admin-dashboard/src/assets/images/1876.jpg -------------------------------------------------------------------------------- /admin-dashboard/vite.config.js: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'vite' 2 | import react from '@vitejs/plugin-react' 3 | 4 | // https://vitejs.dev/config/ 5 | export default defineConfig({ 6 | plugins: [react()] 7 | }) 8 | -------------------------------------------------------------------------------- /admin-dashboard/src/main.jsx: -------------------------------------------------------------------------------- 1 | import React from 'react' 2 | import ReactDOM from 'react-dom/client' 3 | import App from './App' 4 | import './index.css' 5 | 6 | ReactDOM.createRoot(document.getElementById('root')).render( 7 | 8 | 9 | 10 | ) 11 | -------------------------------------------------------------------------------- /admin-dashboard/.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | pnpm-debug.log* 8 | lerna-debug.log* 9 | 10 | node_modules 11 | dist 12 | dist-ssr 13 | *.local 14 | 15 | # Editor directories and files 16 | .vscode/* 17 | !.vscode/extensions.json 18 | .idea 19 | .DS_Store 20 | *.suo 21 | *.ntvs* 22 | *.njsproj 23 | *.sln 24 | *.sw? 25 | -------------------------------------------------------------------------------- /admin-dashboard/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | Vite + React 8 | 9 | 10 |
11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /admin-dashboard/src/components/Layout/SideBarContainer.jsx: -------------------------------------------------------------------------------- 1 | import { Link } from "react-router-dom"; 2 | import SideBar from "./SideBar"; 3 | 4 | const SideBarContainer = props => { 5 | return ( 6 |
7 |
8 | 9 | WEBDECODED 10 | 11 |
12 |
13 | 14 |
15 |
16 | ) 17 | } 18 | 19 | export default SideBarContainer; 20 | -------------------------------------------------------------------------------- /admin-dashboard/src/components/Layout/Footer.jsx: -------------------------------------------------------------------------------- 1 | import { Container, Row, Col } from "reactstrap" 2 | 3 | const Footer = () => { 4 | return ( 5 | 17 | ) 18 | } 19 | 20 | export default Footer 21 | -------------------------------------------------------------------------------- /admin-dashboard/src/App.css: -------------------------------------------------------------------------------- 1 | .logo { 2 | height: 6em; 3 | padding: 1.5em; 4 | will-change: filter; 5 | } 6 | .logo:hover { 7 | filter: drop-shadow(0 0 2em #646cffaa); 8 | } 9 | .logo.react:hover { 10 | filter: drop-shadow(0 0 2em #61dafbaa); 11 | } 12 | 13 | @keyframes logo-spin { 14 | from { 15 | transform: rotate(0deg); 16 | } 17 | to { 18 | transform: rotate(360deg); 19 | } 20 | } 21 | 22 | @media (prefers-reduced-motion: no-preference) { 23 | a:nth-of-type(2) .logo { 24 | animation: logo-spin infinite 20s linear; 25 | } 26 | } 27 | 28 | .card { 29 | padding: 2em; 30 | } 31 | 32 | .read-the-docs { 33 | color: #888; 34 | } 35 | -------------------------------------------------------------------------------- /admin-dashboard/src/pages/Dashboard/AdComp.jsx: -------------------------------------------------------------------------------- 1 | import { Card } from "reactstrap"; 2 | import { FontAwesomeIcon } from '@fortawesome/react-fontawesome' 3 | 4 | const AdComp = () => { 5 | return ( 6 | 7 |
8 | 9 |
10 |
Build Future with Us
11 |

12 | Don't miss the opportunity of working on the cutting-edge technology and the most futuristics projects 13 |

14 | 15 | Read More 16 | 17 | 18 |
19 |
20 |
21 | ) 22 | } 23 | 24 | export default AdComp; 25 | -------------------------------------------------------------------------------- /admin-dashboard/src/components/Common/Breadcrumb.jsx: -------------------------------------------------------------------------------- 1 | import React from "react" 2 | import { Link } from "react-router-dom" 3 | import { Row, Col, BreadcrumbItem } from "reactstrap" 4 | 5 | const Breadcrumb = props => { 6 | return ( 7 | 8 | 9 |
10 |

{props.breadcrumbItem}

11 |
12 |
    13 | 14 | {props.title} 15 | 16 | 17 | {props.breadcrumbItem} 18 | 19 |
20 |
21 |
22 | 23 |
24 | ) 25 | } 26 | 27 | export default Breadcrumb 28 | -------------------------------------------------------------------------------- /admin-dashboard/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "admin-dashboard", 3 | "private": true, 4 | "version": "0.0.0", 5 | "type": "module", 6 | "scripts": { 7 | "dev": "vite", 8 | "build": "vite build", 9 | "preview": "vite preview" 10 | }, 11 | "dependencies": { 12 | "@fortawesome/fontawesome-svg-core": "^6.2.0", 13 | "@fortawesome/free-regular-svg-icons": "^6.2.0", 14 | "@fortawesome/free-solid-svg-icons": "^6.2.0", 15 | "@fortawesome/react-fontawesome": "^0.2.0", 16 | "apexcharts": "^3.35.5", 17 | "babel-plugin-macros": "^3.1.0", 18 | "bootstrap": "^5.2.2", 19 | "node-sass": "^7.0.3", 20 | "react": "^18.2.0", 21 | "react-apexcharts": "^1.4.0", 22 | "react-dom": "^18.2.0", 23 | "react-router-dom": "^6.4.2", 24 | "react-table": "^7.8.0", 25 | "reactstrap": "^9.1.4", 26 | "sass": "^1.55.0" 27 | }, 28 | "devDependencies": { 29 | "@types/react": "^18.0.17", 30 | "@types/react-dom": "^18.0.6", 31 | "@vitejs/plugin-react": "^2.1.0", 32 | "vite": "^3.1.0" 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /admin-dashboard/src/pages/Transactions/TransactionColumn.jsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import { Link } from 'react-router-dom'; 3 | import { Badge } from 'reactstrap'; 4 | 5 | const toLowerCase1 = str => { 6 | return ( 7 | str === "" || str === undefined ? "" : str.toLowerCase() 8 | ); 9 | }; 10 | 11 | const OrderId = (cell) => { 12 | return ( 13 | {cell.value ? cell.value : ''} 14 | ); 15 | }; 16 | 17 | const BillingName = (cell) => { 18 | return cell.value ? cell.value : ''; 19 | }; 20 | 21 | const Date = (cell) => { 22 | return cell.value ? cell.value : ''; 23 | }; 24 | 25 | const Total = (cell) => { 26 | return cell.value ? cell.value : ''; 27 | }; 28 | 29 | const PaymentStatus = (cell) => { 30 | return ( 31 | {cell.value} 32 | ) 33 | }; 34 | 35 | export { 36 | OrderId, 37 | BillingName, 38 | Date, 39 | Total, 40 | PaymentStatus, 41 | }; 42 | -------------------------------------------------------------------------------- /admin-dashboard/src/components/Layout/Header.jsx: -------------------------------------------------------------------------------- 1 | import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; 2 | 3 | const Header = () => { 4 | return ( 5 |
6 |
7 |
8 |
9 | 19 |
20 |
21 | 22 | 23 | 24 |
25 |
26 |
27 |
28 | ) 29 | } 30 | 31 | export default Header; 32 | -------------------------------------------------------------------------------- /admin-dashboard/src/App.jsx: -------------------------------------------------------------------------------- 1 | import { useState } from 'react' 2 | import reactLogo from './assets/react.svg' 3 | import './App.css' 4 | // Import scss 5 | import "./assets/scss/app.scss" 6 | import Dashboard from "./pages/Dashboard" 7 | import { BrowserRouter as Router, Route, Link, Routes } from "react-router-dom" 8 | import { fas } from '@fortawesome/free-solid-svg-icons' 9 | import { library } from '@fortawesome/fontawesome-svg-core' 10 | import Header from "./components/Layout/Header" 11 | import Footer from "./components/Layout/Footer" 12 | import SideBarContainer from "./components/Layout/SideBarContainer" 13 | import Transactions from "./pages/Transactions"; 14 | 15 | function App() { 16 | library.add(fas) 17 | const [count, setCount] = useState(0) 18 | 19 | return ( 20 | <> 21 | 22 |
23 | 24 |
25 |
26 | 27 | }/> 28 | } /> 29 | 30 |
31 |
32 |