49
50
51
52
53
54
55
56
57
58
59
60
61
62
|
# File 'lib/graphql/query/literal_input.rb', line 49
def self.coerce(value, type, variables)
hash = {}
value.pairs.each do |arg|
field_type = type.input_fields[arg.name].type
hash[arg.name] = LiteralInput.coerce(field_type, arg.value, variables)
end
type.input_fields.each do |arg_name, arg_defn|
if hash[arg_name].nil?
value = LiteralInput.coerce(arg_defn.type, arg_defn.default_value, variables)
hash[arg_name] = value unless value.nil?
end
end
Arguments.new(hash)
end
|