yuri
03/18/2019, 3:53 PMtype Member {
id: ID! @unique
currentBalance: Float!
transactions: [Transaction!]
retailers: [Retailer!]
}
type Retailer {
id: ID! @unique
name: String!
}
type Transaction {
id: ID! @unique
purchaseDate: DateTime!
rewardedDate: DateTime!
}
typescript-client generates interface without relational fields.
export interface Member {
id: ID_Output;
currentBalance: Float;
}
So some of my resolvers don't have necessary types 😞 Anyone already faced this?
Thanks in advance!divyendu
03/18/2019, 4:03 PMyuri
03/18/2019, 4:20 PMPost relation
type User {
id: ID! @unique
email: String! @unique
name: String
posts: [Post!]!
}yuri
03/18/2019, 4:21 PMexport interface User {
id: ID_Output;
email: String;
name?: String;
}divyendu
03/18/2019, 4:22 PMprisma.user().posts({...relational filters are here})
They are not on the top level because:
prisma.users() or prisma.user() only resolves the scalar types!yuri
03/18/2019, 4:24 PMimport {
GraphQLFloat,
GraphQLID,
GraphQLList,
GraphQLObjectType,
} from 'graphql';
import { Member, Retailer, Transaction } from '../../generated/prisma-client';
import GraphQLRetailer from './Retailer';
import GraphQLTransaction from './Transaction';
export default new GraphQLObjectType({
name: 'Member',
fields: {
id: {
type: GraphQLID,
resolve: ({ id }: Member): string => id,
},
currentBalance: {
type: GraphQLFloat,
resolve: ({ currentBalance }: Member): number => currentBalance,
},
transactions: {
type: new GraphQLList(GraphQLTransaction),
resolve: ({ transactions }: Member): Transaction[] => transactions,
},
retailers: {
type: new GraphQLList(GraphQLRetailer),
resolve: ({ retailers }: Member): Retailer[] => retailers,
},
},
});yuri
03/18/2019, 4:24 PMtransactions: {
type: new GraphQLList(GraphQLTransaction),
resolve: ({ transactions }: Member): Transaction[] => transactions,
},
retailers: {
type: new GraphQLList(GraphQLRetailer),
resolve: ({ retailers }: Member): Retailer[] => retailers,
},yuri
03/18/2019, 4:25 PMdivyendu
03/18/2019, 5:19 PMyuri
03/18/2019, 8:27 PM