You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
| EndsWith fname, StringValue value -> Ok (ObjectListFilter.EndsWith { FieldName = fname; Value = value })
102
-
| StartsWith fname, StringValue value -> Ok (ObjectListFilter.StartsWith { FieldName = fname; Value = value })
103
-
| Contains fname, StringValue value -> Ok (ObjectListFilter.Contains { FieldName = fname; Value = value })
97
+
| Ok ValueNone-> Ok ValueNone
98
+
| Ok (ValueSome filter)-> Ok (ValueSome (Not filter))
99
+
| EndsWith fname, StringValue value -> Ok (ValueSome (ObjectListFilter.EndsWith { FieldName = fname; Value = value }))
100
+
| StartsWith fname, StringValue value -> Ok (ValueSome (ObjectListFilter.StartsWith { FieldName = fname; Value = value }))
101
+
| Contains fname, StringValue value -> Ok (ValueSome (ObjectListFilter.Contains { FieldName = fname; Value = value }))
104
102
| Equals fname, ObjectValue value ->
105
103
match mapInput value with
106
104
| Error errs -> Error errs
107
-
| Ok NoFilter-> Ok NoFilter
108
-
| Ok filter -> Ok (FilterField { FieldName = fname; Value = filter })
109
-
| Equals fname, EquatableValue value -> Ok (ObjectListFilter.Equals { FieldName = fname; Value = value })
110
-
| GreaterThan fname, ComparableValue value -> Ok (ObjectListFilter.GreaterThan { FieldName = fname; Value = value })
111
-
| GreaterThanOrEqual fname, ComparableValue value -> Ok (ObjectListFilter.GreaterThanOrEqual { FieldName = fname; Value = value })
112
-
| LessThan fname, ComparableValue value -> Ok (ObjectListFilter.LessThan { FieldName = fname; Value = value })
113
-
| LessThanOrEqual fname, ComparableValue value -> Ok (ObjectListFilter.LessThanOrEqual { FieldName = fname; Value = value })
114
-
|_-> Ok NoFilter
105
+
| Ok ValueNone-> Ok ValueNone
106
+
| Ok (ValueSome filter)-> Ok (ValueSome (FilterField { FieldName = fname; Value = filter }))
107
+
| Equals fname, EquatableValue value -> Ok (ValueSome (ObjectListFilter.Equals { FieldName = fname; Value = value }))
108
+
| GreaterThan fname, ComparableValue value -> Ok (ValueSome (ObjectListFilter.GreaterThan { FieldName = fname; Value = value }))
109
+
| GreaterThanOrEqual fname, ComparableValue value -> Ok (ValueSome (ObjectListFilter.GreaterThanOrEqual { FieldName = fname; Value = value }))
110
+
| LessThan fname, ComparableValue value -> Ok (ValueSome (ObjectListFilter.LessThan { FieldName = fname; Value = value }))
111
+
| LessThanOrEqual fname, ComparableValue value -> Ok (ValueSome (ObjectListFilter.LessThanOrEqual { FieldName = fname; Value = value }))
112
+
|_-> Ok ValueNone
115
113
116
114
andmapInput value =
117
115
letfilterResults=
@@ -122,10 +120,11 @@ let rec private coerceObjectListFilterInput x : Result<ObjectListFilter, IGQLErr
122
120
|> splitSeqErrorsList
123
121
match filterResults with
124
122
| Error errs -> Error errs
125
-
| Ok filters -> filters |> removeNoFilter |> List.ofSeq |> buildAnd |> Ok
123
+
| Ok filters -> filters |> Seq.vchoose id |> List.ofSeq |> buildAnd |> Ok
124
+
126
125
match x with
127
126
| ObjectValue x -> mapInput x
128
-
| NullValue ->NoFilter|> Ok
127
+
| NullValue ->ValueNone|> Ok
129
128
// TODO: Get union case
130
129
|_->
131
130
Error [
@@ -173,7 +172,7 @@ let ObjectListFilterType : ScalarDefinition<ObjectListFilter> = {
173
172
"The `Filter` scalar type represents a filter on one or more fields of an object in an object list. The filter is represented by a JSON object where the fields are the complemented by specific suffixes to represent a query."
174
173
CoerceInput =
175
174
(function
176
-
| InlineConstant c -> coerceObjectListFilterInput c
0 commit comments