upload-apollo-client/app/components/single-uploader.js
Jayden Seric 2edbe7fcef Experimental dependency updates.
- React v16
- Apollo Client v2 beta
- Next.js v4 beta
2017-10-02 19:07:41 +11:00

34 lines
653 B
JavaScript

import { graphql } from 'react-apollo'
import gql from 'graphql-tag'
import FileInput from './file-input'
import uploadsQuery from '../queries/uploads'
const SingleUploader = ({ mutate }) => {
const handleChange = ({ target }) =>
target.validity.valid &&
mutate({
variables: {
file: target.files[0]
},
refetchQueries: [
{
query: uploadsQuery
}
]
})
return <FileInput required onChange={handleChange} />
}
export default graphql(gql`
mutation($file: Upload!) {
singleUpload(file: $file) {
id
name
type
size
path
}
}
`)(SingleUploader)