class ActiveGraphql::Client::Actions::Action::FormatVariableInputs
converts ruby object in to varbiable stype grapqhl input
Attributes
initial_inputs[R]
Public Class Methods
new(inputs)
click to toggle source
# File lib/active_graphql/client/actions/action/format_variable_inputs.rb, line 11 def initialize(inputs) @initial_inputs = inputs end
Public Instance Methods
call()
click to toggle source
# File lib/active_graphql/client/actions/action/format_variable_inputs.rb, line 15 def call return '' if inputs.empty? formatted_attributes(inputs) end
Private Instance Methods
formatted_attributes(attributes)
click to toggle source
# File lib/active_graphql/client/actions/action/format_variable_inputs.rb, line 25 def formatted_attributes(attributes) attributes = attributes.dup formatted_attributes = attributes.map do |key, val| formatted_key_and_type(key, val) end formatted_attributes.join(', ') end
formatted_key_and_type(key, value)
click to toggle source
# File lib/active_graphql/client/actions/action/format_variable_inputs.rb, line 38 def formatted_key_and_type(key, value) "$#{key}: #{formatted_type(value)}" end
formatted_type(value)
click to toggle source
# File lib/active_graphql/client/actions/action/format_variable_inputs.rb, line 42 def formatted_type(value) if value.is_a?(Array) '[File!]!' else 'File!' end end
inputs()
click to toggle source
# File lib/active_graphql/client/actions/action/format_variable_inputs.rb, line 34 def inputs @inputs ||= variable_attributes(initial_inputs) end