AdminSideBar.tsx 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. import Link from 'next/link'
  2. import theme from '../../styles/theme'
  3. const AdminSideBar = () => {
  4. return (
  5. <nav className='admin-sidebar'>
  6. <h3>Admin Area</h3>
  7. <ul className='admin-menu'>
  8. <Link href='/admin/training'>
  9. <a>
  10. <li className='admin-item'>Trainings</li>
  11. </a>
  12. </Link>
  13. <Link href='/admin/block'>
  14. <a>
  15. <li className='admin-item'>Blocks</li>
  16. </a>
  17. </Link>
  18. <Link href='/admin/exercise'>
  19. <a>
  20. <li className='admin-item'>Exercises</li>
  21. </a>
  22. </Link>
  23. <Link href='/admin/file'>
  24. <a>
  25. <li className='admin-item'>Files</li>
  26. </a>
  27. </Link>
  28. <Link href='/admin/user'>
  29. <a>
  30. <li className='admin-item'>Users</li>
  31. </a>
  32. </Link>
  33. </ul>
  34. <style jsx>{`
  35. nav {
  36. margin: 0;
  37. padding: 0;
  38. color: ${theme.colors.presentation};
  39. background-color: ${theme.colors.presentationBackground};
  40. min-height: 100%;
  41. }
  42. nav h1,
  43. nav h2,
  44. nav h3,
  45. nav h4 {
  46. color: ${theme.colors.mobileNav};
  47. padding: 0.9em;
  48. }
  49. nav ul {
  50. list-style: none;
  51. margin: 0;
  52. padding: 0;
  53. }
  54. nav li {
  55. display: block;
  56. padding: 0.9em;
  57. border-top: 1px solid ${theme.colors.mobileNav}33;
  58. }
  59. nav a:last-child li {
  60. border-bottom: 1px solid ${theme.colors.mobileNav}33;
  61. }
  62. nav li:hover {
  63. box-shadow: ${theme.bsSmall};
  64. }
  65. nav a {
  66. color: ${theme.colors.mobileNav};
  67. text-decoration: none;
  68. }
  69. nav a:hover {
  70. color: ${theme.colors.mobileNav};
  71. }
  72. `}</style>
  73. </nav>
  74. )
  75. }
  76. export default AdminSideBar