lib/graphiti_gql/schema.rb in graphiti_gql-0.2.23 vs lib/graphiti_gql/schema.rb in graphiti_gql-0.2.24
- old
+ new
@@ -2,10 +2,35 @@
class Schema
class PreciseDatetime < GraphQL::Types::ISO8601DateTime
self.time_precision = 6
end
+ class DatetimeRange < GraphQL::Schema::Object
+ field :from, GraphQL::Types::ISO8601DateTime
+ field :to, GraphQL::Types::ISO8601DateTime
+ end
+
+ class PreciseDatetimeRange < GraphQL::Schema::Object
+ field :from, PreciseDatetime
+ field :to, PreciseDatetime
+ end
+
+ class StringRange < GraphQL::Schema::Object
+ field :from, String
+ field :to, String
+ end
+
+ class IntegerRange < GraphQL::Schema::Object
+ field :from, Integer
+ field :to, Integer
+ end
+
+ class FloatRange < GraphQL::Schema::Object
+ field :from, Float
+ field :to, Float
+ end
+
GQL_TYPE_MAP = {
integer_id: String,
string: String,
uuid: String,
integer: Integer,
@@ -14,16 +39,26 @@
boolean: GraphQL::Schema::Member::GraphQLTypeNames::Boolean,
date: GraphQL::Types::ISO8601Date,
datetime: GraphQL::Types::ISO8601DateTime,
precise_datetime: PreciseDatetime,
hash: GraphQL::Types::JSON,
+ string_range: StringRange,
+ integer_range: IntegerRange,
+ float_range: FloatRange,
+ datetime_range: DatetimeRange,
+ precise_datetime_range: PreciseDatetimeRange,
array: [GraphQL::Types::JSON],
array_of_strings: [String],
array_of_integers: [Integer],
array_of_floats: [Float],
array_of_dates: [GraphQL::Types::ISO8601Date],
array_of_datetimes: [GraphQL::Types::ISO8601DateTime],
- array_of_precise_datetimes: [PreciseDatetime]
+ array_of_precise_datetimes: [PreciseDatetime],
+ array_of_string_ranges: [StringRange],
+ array_of_integer_ranges: [IntegerRange],
+ array_of_float_ranges: [FloatRange],
+ array_of_datetime_ranges: [DatetimeRange],
+ array_of_precise_datetime_ranges: [PreciseDatetimeRange]
}
class RelayConnectionExtension < GraphQL::Schema::Field::ConnectionExtension
def resolve(object:, arguments:, context:)
next_args = arguments.dup