From 8a5825d52271d712ec7c8348447d433067e13ef2 Mon Sep 17 00:00:00 2001 From: Wes Bos Date: Thu, 13 Sep 2018 14:18:56 -0400 Subject: DONE --- .../FINISHED/frontend/components/RequestReset.js | 60 ++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 stepped-solutions/FINISHED/frontend/components/RequestReset.js (limited to 'stepped-solutions/FINISHED/frontend/components/RequestReset.js') diff --git a/stepped-solutions/FINISHED/frontend/components/RequestReset.js b/stepped-solutions/FINISHED/frontend/components/RequestReset.js new file mode 100644 index 0000000..be21639 --- /dev/null +++ b/stepped-solutions/FINISHED/frontend/components/RequestReset.js @@ -0,0 +1,60 @@ +import React, { Component } from 'react'; +import { Mutation } from 'react-apollo'; +import gql from 'graphql-tag'; +import Form from './styles/Form'; +import Error from './ErrorMessage'; + +const REQUEST_RESET_MUTATION = gql` + mutation REQUEST_RESET_MUTATION($email: String!) { + requestReset(email: $email) { + message + } + } +`; + +class RequestReset extends Component { + state = { + email: '', + }; + saveToState = e => { + this.setState({ [e.target.name]: e.target.value }); + }; + render() { + return ( + + {(reset, { error, loading, called }) => ( +
{ + e.preventDefault(); + await reset(); + this.setState({ email: '' }); + }} + > +
+

Request a password reset

+ + {!error && !loading && called &&

Success! Check your email for a reset link!

} + + + +
+
+ )} +
+ ); + } +} + +export default RequestReset; +export { REQUEST_RESET_MUTATION }; -- cgit v1.3