Module: ParamsPurifier::Purification

Defined in:
lib/params_purifier/purification.rb

Class Method Summary collapse

Class Method Details

.execute(params) ⇒ Object



8
9
10
# File 'lib/params_purifier/purification.rb', line 8

def execute(params)      
  purify_params(params, {})
end

.purify_params(original_params, new_params) ⇒ Object



12
13
14
15
16
17
18
19
20
21
22
23
24
# File 'lib/params_purifier/purification.rb', line 12

def purify_params(original_params, new_params)
  original_params.each_with_object(new_params) do |(key, value), purified_params|
    case value
    when Array
      new_value = value.reject { |v| v.blank? } 
    when Hash
      new_value = purify_params(value, {})
    else
      new_value = value
    end
    purified_params[key] = new_value
  end
end