index.js 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. import React, { Component } from "react";
  2. import BasePage from "@/components/Layout/BasePage";
  3. import { Row, Col, Navbar, NavItem, NavLink, NavbarBrand, NavbarToggler, Nav, Collapse } from "reactstrap";
  4. import ContentWrapper from "@/components/Layout/ContentWrapper";
  5. import Link from "next/link";
  6. const menu = [
  7. {
  8. title: "Home",
  9. path: "/app",
  10. },
  11. {
  12. title: "Membuat Laporan",
  13. path: "/laporan/new",
  14. },
  15. {
  16. title: "Pemantauan",
  17. path: "/pemantauan",
  18. },
  19. {
  20. title: "Login",
  21. path: "/login",
  22. },
  23. ];
  24. class App extends Component {
  25. constructor(props) {
  26. super(props);
  27. this.state = {
  28. isOpen: false,
  29. };
  30. }
  31. static getInitialProps = ({ pathname }) => ({ pathname });
  32. toggleCollapse = () => {
  33. this.setState({
  34. isOpen: !this.state.isOpen,
  35. });
  36. };
  37. render() {
  38. return (
  39. <div>
  40. <Navbar color="info" expand="md" dark>
  41. <NavbarBrand href="/">
  42. <img className="img-fluid" src="/static/img/logo-single.png" alt="App Logo" /> Aldila Dikti
  43. </NavbarBrand>
  44. <NavbarToggler onClick={this.toggleCollapse} />
  45. <Collapse isOpen={this.state.isOpen} navbar>
  46. <Nav className="ml-auto" navbar>
  47. {menu.map((e) => (
  48. <NavItem active={e.path === this.props.pathname ? true : false}>
  49. <Link href={e.path}>
  50. <NavLink style={{ cursor: "pointer" }}>{e.title}</NavLink>
  51. </Link>
  52. </NavItem>
  53. ))}
  54. </Nav>
  55. </Collapse>
  56. </Navbar>
  57. <ContentWrapper>
  58. <Row>
  59. <Col lg={8} className="block-center d-block "></Col>
  60. </Row>
  61. </ContentWrapper>
  62. </div>
  63. );
  64. }
  65. }
  66. App.Layout = BasePage;
  67. export default App;