graphql-compose-mongoose icon indicating copy to clipboard operation
graphql-compose-mongoose copied to clipboard

Use union types for indexed filter inputs with operators

Open murillo128 opened this issue 4 years ago • 0 comments

I have struggled for a couple of days in how to make the operators to work with input fields as the syntax is a bit awkward compared to the typical mongodb filters.

I was thinking if it could be possible to use instead of the scalar input type and the operator type an union of both types. That way instead of doing:

find(filter:{value:1})
find(filter:{_operators:{value:{gt:1}})

we could allow both type of queries:

find(filter:{value:1})
find(filter:{value:{gt:1}})

I am willing to work on a PR for this, but I would need some feedback/pointers/help.

Up to now, I have been able to create a UnionTypeComposer from both types, but I don't know how replace the original input filter type with the union one.

murillo128 avatar Oct 01 '21 08:10 murillo128