summaryrefslogtreecommitdiffstats
path: root/components/Signup.js
diff options
context:
space:
mode:
authorWes Bos <wesbos@gmail.com>2018-01-30 12:41:01 -0500
committerWes Bos <wesbos@gmail.com>2018-01-30 12:41:01 -0500
commitcd0b07b3adb36fb5ec098f9e511ab45d774fee7b (patch)
treea203e5010219ccea1acc6bbd2c0a4bcfa0a78615 /components/Signup.js
parent0a1648bf47490b312169c531aeb51ef4725e8d2e (diff)
Move to Prisma Backend
Diffstat (limited to 'components/Signup.js')
-rw-r--r--components/Signup.js94
1 files changed, 0 insertions, 94 deletions
diff --git a/components/Signup.js b/components/Signup.js
deleted file mode 100644
index 57e2569..0000000
--- a/components/Signup.js
+++ /dev/null
@@ -1,94 +0,0 @@
-import React, { Component } from 'react';
-import { graphql, gql } from 'react-apollo';
-import { CREATE_USER_MUTATION } from '../queries';
-
-class Signup extends Component {
- constructor() {
- super();
- const idToken = typeof window !== 'undefined' ? localStorage.getItem('auth0IdToken') || '' : '';
- this.state = {
- email: '',
- name: '',
- idToken,
- error: undefined,
- };
- }
-
- render() {
- return (
- <div>
- {this.state.loading ? 'LOADING...' : 'Ready!'}
-
- {this.state.error ? <p>{this.state.error.message}</p> : ''}
-
- <form onSubmit={this._createUser}>
- <p>
- Email
- <input
- value={this.state.email}
- onChange={e => this.setState({ email: e.target.value })}
- type="text"
- placeholder="email"
- />
- </p>
-
- <p>
- Name
- <input
- value={this.state.name}
- onChange={e => this.setState({ name: e.target.value })}
- type="text"
- placeholder="name"
- />
- </p>
-
- <p>
- idToken
- <input
- disabled
- value={this.state.idToken}
- onChange={e => this.setState({ idToken: e.target.value })}
- type="text"
- placeholder="name"
- />
- </p>
-
- <button type="submit">Submit</button>
- </form>
- </div>
- );
- }
-
- _createUser = async e => {
- e.preventDefault();
- // pull the values from state
- const { email, name, idToken } = this.state;
- // create a mutation
- // TODO: handle any errors
- // turn loading on
- this.setState({ loading: true });
- console.log(name, email, idToken);
- try {
- const res = await this.props.createUserMutation({
- // pass in those variables from state
- variables: { name, email, idToken },
- });
- } catch (error) {
- this.setState({ error });
- console.dir(error);
- }
- this.setState({ loading: false });
- };
-}
-// When we submit this mutation, we need to update our store - we have a few ways to do that:
-// One - we can go nucular and run refetchQueries() which will just go get everything - this is easy, but at the cost of efficiency.
-
-export default graphql(CREATE_USER_MUTATION, {
- name: 'createUserMutation',
- options: {
- // Easy, but slow
- // refetchQueries: ['AllLinksQuery']
- // This is much Better / efficient
- // Notice how the variable is called createItem - that is because createItem is the name of the query!
- },
-})(Signup);