Artur Malak
01/05/2019, 3:36 PMschickling
01/07/2019, 1:26 PMBox
you’ve used in the return type?Artur Malak
01/07/2019, 3:03 PMArtur Malak
01/07/2019, 3:04 PMimport { ObjectType, Field, ID, Float } from 'type-graphql';
import { User } from '../User/type';
@ObjectType()
export class Box {
@Field(type => ID)
id: string
@Field(type => User)
owner: User
@Field({ nullable: true })
name?: string
@Field(type => Float, { nullable: true })
balance?: number
}
Artur Malak
01/07/2019, 3:12 PMArtur Malak
01/07/2019, 3:12 PMtype User {
id: ID! @id
email: String! @unique
password: String!
name: String
roles: [Role!]!
boxes: [Box!]! @relation(link: INLINE)
}
type Box {
id: ID! @id
owner: User!
name: String @default(value: "")
balance: Float @default(value: 0)
}
enum Role {
USER,
ADMIN
}
Artur Malak
01/07/2019, 3:13 PM# -----------------------------------------------
# !!! THIS FILE WAS GENERATED BY TYPE-GRAPHQL !!!
# !!! DO NOT MODIFY THIS FILE BY YOURSELF !!!
# -----------------------------------------------
type AuthPayload {
user: User!
token: String!
}
type Box {
id: ID!
owner: User!
name: String
balance: Float
}
type Mutation {
createBox(name: String!, balance: Float): Box!
deleteBox(id: ID!): Box!
signup(email: String!, password: String!, name: String): AuthPayload!
login(email: String!, password: String!): AuthPayload!
}
type Query {
boxes(orderBy: String): [Box!]!
user: User!
allUsers(filter: String): [User!]!
}
# The user's possible roles.
enum Role {
ADMIN
USER
}
type User {
id: ID!
email: String!
password: String!
name: String
roles: [Role!]!
boxes: [Box!]!
}
Artur Malak
01/07/2019, 3:15 PMArtur Malak
01/07/2019, 3:16 PMArtur Malak
01/07/2019, 3:16 PMimport { AuthUser } from './AuthUser';
import { Prisma } from './prisma';
export interface Context {
user?: AuthUser;
prisma: Prisma | any; // :(
}
Artur Malak
01/07/2019, 3:17 PMschickling
01/07/2019, 3:34 PMBox
type from the prisma-client definitions in your resolver return type? this should work.Artur Malak
01/07/2019, 4:18 PMArtur Malak
01/07/2019, 4:18 PMArtur Malak
01/07/2019, 4:18 PMschickling
01/07/2019, 4:19 PMArtur Malak
01/07/2019, 8:06 PMArtur Malak
01/08/2019, 2:14 PMschickling
01/08/2019, 3:30 PMArtur Malak
01/08/2019, 4:19 PMArtur Malak
01/08/2019, 4:19 PM