title: GRAPHQL find items based on Enum
body: <p>I am trying to find the results that match a certain enum, this is my <code>type</code> :</p>
  
  <pre><code>type User {
    id: ID! @id
    fname:String!
    lname:String!
    email:String! @unique
    password: String
    school_ID: String #@relation(Link: INLINE)
    role: [Role] @scalarList(strategy: RELATION)
    resetToken: String
    resetTokenExpiry: String
  }
  </code></pre>
  
  <p>I can search for email because it has the <code>@unique</code> key to it, but <code>Role</code> is an enum and I can't add the <code>@unique</code> key to it and that makes sense, because the results are not going to be unique.</p>
  
  <p>However I keep getting this message:</p>
  
  <blockquote>
    <p>"Variable \"$_v0_where\" got invalid value {\"role\":\"TEACHER\"}; Field \"role\" is not defined by type UserWhereUniqueInput."</p>
  </blockquote>
  
  <p>Using email gives me the result I want if I want to use email to find the items.</p>
  
  <p>What I am after is to get an array return with all the objects matching the selected enum result.</p>
  
  <p>In my schema I have this:</p>
  
  <pre><code>users: [User]!
  user(where: UserWhereInput!): User
  findUser(role: Role, id: ID, email: String): User
  </code></pre>
  
  <p>In my query resolvers I have the following that I am playing with:</p>
  
  <pre><code>  users: forwardTo('db'),
    user: forwardTo('db'),
  
    async findUser(parent, args, ctx, info) {
      return ctx.db.query.user({
        where: {email: args.email, id: args.id, role: args.role}
      }, info)
    },
  </code></pre>
  
  <p>I am using prisma (1.17.1) to generate my schemas</p>
  
  <p>How do I alter my code, or the <code>findUser</code> function to give me the desired result?</p>