summaryrefslogtreecommitdiffstats
path: root/frontend/components/SingleItem.js
diff options
context:
space:
mode:
Diffstat (limited to 'frontend/components/SingleItem.js')
-rw-r--r--frontend/components/SingleItem.js39
1 files changed, 34 insertions, 5 deletions
diff --git a/frontend/components/SingleItem.js b/frontend/components/SingleItem.js
index d4bec4f..53d5b9f 100644
--- a/frontend/components/SingleItem.js
+++ b/frontend/components/SingleItem.js
@@ -1,18 +1,47 @@
import { Query } from 'react-apollo';
import PropTypes from 'prop-types';
import { SINGLE_ITEM_QUERY } from '../queries/index';
+import Dump from './Dump';
+import styled from 'styled-components';
+import Link from 'next/link';
+import Error from './ErrorMessage';
+
+const SingleItemStyles = styled.div`
+ max-width: 1200px;
+ margin: 2rem auto;
+ box-shadow: ${props => props.theme.bs};
+ img {
+ width: 100%;
+ object-fit: cover;
+ }
+ .details {
+ margin: 3rem;
+ font-size: 3rem;
+ }
+`;
const SingleItem = props => (
<Query query={SINGLE_ITEM_QUERY} variables={{ id: props.id }}>
{({ data: { items }, loading, error }) => {
- if (loading || error) return null;
+ if (loading) return <p>Loading...</p>;
const [item] = items;
return (
- <div>
+ <SingleItemStyles>
+ <Error error={error} />
<img src={item.largeImage || item.image} alt={item.title} />
- <h2>Viewing {item.title}</h2>
- <p>{item.description}</p>
- </div>
+ <div className="details">
+ <h2>Viewing {item.title}</h2>
+ <p>{item.description}</p>
+ <Link
+ href={{
+ pathname: '/admin/update',
+ query: { id: item.id },
+ }}
+ >
+ <a>Edit ✏️</a>
+ </Link>
+ </div>
+ </SingleItemStyles>
);
}}
</Query>