application_layout.tsx 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. import React from 'react';
  2. import PropTypes from 'prop-types';
  3. import {Navbar, Nav, Form, FormControl, Button} from 'react-bootstrap';
  4. import {LinkContainer} from 'react-router-bootstrap';
  5. import {Link} from 'react-router-dom';
  6. import './style';
  7. function ApplicationLayout({children}) {
  8. return (
  9. <div>
  10. <nav>
  11. <Navbar expand='md'>
  12. <LinkContainer to='/'>
  13. <Navbar.Brand>Pokemon.trade</Navbar.Brand>
  14. </LinkContainer>
  15. <Navbar.Toggle aria-controls='basic-navbar-nav' />
  16. <Navbar.Collapse id='basic-navbar-nav'>
  17. <Nav className='mr-auto'>
  18. <Nav.Link as={Link} to='/pokemon'>
  19. View Pokemon
  20. </Nav.Link>
  21. </Nav>
  22. <Form inline>
  23. <FormControl className='mr-sm-2' placeholder='Search' type='text' />
  24. <Button variant='primary'>Search</Button>
  25. </Form>
  26. </Navbar.Collapse>
  27. </Navbar>
  28. </nav>
  29. <div>{children}</div>
  30. </div>
  31. );
  32. }
  33. ApplicationLayout.defaultProps = {
  34. children: null,
  35. };
  36. ApplicationLayout.propTypes = {
  37. children: PropTypes.node,
  38. };
  39. export default ApplicationLayout;