rails_param 1.0.2 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3763dd1bf0631672dc1902a383664eeaa8cc1db28f7a8a6dfbb0dff8eec349e7
4
- data.tar.gz: 2eb1082a068416b65a7a79792a7e2092bc13b38840d810f4d89ae6e8b6e406fa
3
+ metadata.gz: e99b0ab6dac912811e4d43f26b9fae9d14363bbdf619fc72fc79f9b9eb9caf31
4
+ data.tar.gz: 0bce166f4e27fb282758307f6aa76a03959977ecc41c22a497fc6e02f663f9a1
5
5
  SHA512:
6
- metadata.gz: be99c81b569c9025bc357377770a16d8fd39061d32d7a56037b03f7859840935000d8efc145ee83651f4f6c3767ee33fadeda489eb2f5806defcb443ada055f0
7
- data.tar.gz: cd34341086c0f2e33a901dba755f9622a50b8218efdc461805d0dbf5108bc1fec83bd21a53ea0c38699c942db3d400cadd3005d6e0fa9543309a1c5931aa0bd3
6
+ metadata.gz: f2d475689feed854e28bc075527c5b8528de9f5215ae5e13ff95b0a7a740106e61c04da3f44be9ffa8a40d082f93cb2d6fb145fe5ee37694a14bf0a14181d4d0
7
+ data.tar.gz: cbda11bbce71ec5daeefc3fe9d2ba78ec3b3a652296efc57ac7cf8a5038ac45f9e8a99c4a7a4b1d5ce3f0a697136be177f1666095af1b4fafd3e501ee6486ff8
@@ -10,9 +10,7 @@ module RailsParam
10
10
  name = name.is_a?(Integer)? name : name.to_s
11
11
  return unless params.include?(name) || check_param_presence?(options[:default]) || options[:required]
12
12
 
13
- # coerce value (but only if a value was provided)
14
- coerced_value = params.include?(name) ?
15
- coerce(params[name], type, options) : nil
13
+ coerced_value = coerce(params[name], type, options)
16
14
 
17
15
  parameter = RailsParam::Parameter.new(
18
16
  name: name,
@@ -48,6 +46,8 @@ module RailsParam
48
46
  private
49
47
 
50
48
  def recurse_on_parameter(parameter, &block)
49
+ return if parameter.value.nil?
50
+
51
51
  if parameter.type == Array
52
52
  parameter.value.each_with_index do |element, i|
53
53
  if element.is_a?(Hash) || element.is_a?(ActionController::Parameters)
@@ -73,6 +73,7 @@ module RailsParam
73
73
 
74
74
  def coerce(param, type, options = {})
75
75
  begin
76
+ return nil if param.nil?
76
77
  return param if (param.is_a?(type) rescue false)
77
78
 
78
79
  Coercion.new(param, type, options).coerce
@@ -1,3 +1,3 @@
1
1
  module RailsParam #:nodoc
2
- VERSION = "1.0.2"
2
+ VERSION = "1.1.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails_param
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.2
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nicolas Blanco
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-10-26 00:00:00.000000000 Z
11
+ date: 2021-11-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec