aboutsummaryrefslogtreecommitdiffstats
path: root/mutations.js
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2018-03-19 20:45:26 -0700
committerAdam Soltys <[email protected]>2018-03-19 20:45:26 -0700
commit84485d68ce6b881eb251d3714addb6da65324a7a (patch)
tree4e51fc9fd9877894397582d7e487f892bab7ecdb /mutations.js
parent112e9ec9b71c1930ca51d52db58acc58ee36088c (diff)
downloadcoinos-server-84485d68ce6b881eb251d3714addb6da65324a7a.tar.gz
coinos-server-84485d68ce6b881eb251d3714addb6da65324a7a.zip
move register function out of graphql, fix socket cookies
Diffstat (limited to 'mutations.js')
-rw-r--r--mutations.js61
1 files changed, 0 insertions, 61 deletions
diff --git a/mutations.js b/mutations.js
deleted file mode 100644
index e8c26fb5..00000000
--- a/mutations.js
+++ /dev/null
@@ -1,61 +0,0 @@
-import bcrypt from 'bcrypt'
-import { resolver, defaultArgs, defaultListArgs, attributeFields } from 'graphql-sequelize'
-import {
- graphql,
- GraphQLSchema,
- GraphQLObjectType,
- GraphQLInputObjectType,
- GraphQLString,
- GraphQLInt,
- GraphQLNonNull,
- GraphQLList
-} from 'graphql'
-
-const l = console.log
-
-module.exports = (db, gqltypes, lnrpc) => {
- const UserInputType = new GraphQLInputObjectType({
- name: 'UserInput',
- desc: 'UserInput',
- fields: {
- ...attributeFields(db['User'], { exclude: ['id'] }),
- }
- })
-
- return new GraphQLObjectType({
- name: 'mutation',
- fields: {
- createUser: {
- type: gqltypes['users'],
- args: {
- user: {
- type: UserInputType
- }
- },
- resolve: async (root, { user }) => {
- if (!user.username) throw new Error('Username required')
- if (user.password.length < 2) throw new Error('Password too short')
-
- let exists = await db['User'].count({ where: { username: user.username } })
- if (exists) throw new Error('Username taken')
-
- user.address = (await lnrpc.newAddress({ type: 1 }, lnrpc.meta)).address
- user.password = await bcrypt.hash(user.password, 1)
- user.balance = 0
- return db['User'].create(user)
- }
- },
- updateUser: {
- type: gqltypes['users'],
- args: {
- user: {
- type: UserInputType
- }
- },
- resolve: async (root, { user }) => {
- await db['User'].update(user, { where: { username: user.username } })
- }
- },
- }
- })
-}