Open xperiandri opened 8 months ago
I'm afraid this one may be beyond my skill to review. I'm not sure what the long-term consequences of changing Object
to ObjectRec
would be.
Anyway we do breaking changes in v2.0
So the main difference is that you need to call Define.ObjectRec
to define recursive GraphQL type definitions.
Also there is a question if need to rename Define.InputObject
override to Define.InputObjectRec
to be consistent or leave it as is to be simple?
In order to call
Define.Field<'Val>(....).WithAuthorizationPolicy("policy")
I need to know not only'Res
which is an object on whichFieldDef<'Res>
is defined but also a'Val
which is a field type. However when I introducedFieldDef<'Val, 'Res>
F# cannot determine the override betweenDefine.Object
that gets a list of field and a labmda that return a list of fields. So I had to renameDefine.Object
overrie toDefine.ObjectRec
andDefine.Interface
override toDefine.ObjectRec
. I have not renamedDefine.InputObject
as it accepts a parameter of list of another interface