paramore 3.6.0 → 3.6.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0e3e663f7752add2ed7c167643bdc789c5aec5421455440f094942b06ca49c57
4
- data.tar.gz: 9ccdaec01fdd4e5ce1b337d3e8ca7a84c812acd38b817d015b980d279b0d43c9
3
+ metadata.gz: f25798a2596838cff8c3355c05286e6c8c6c0493226fed24f93d6d27271a10a5
4
+ data.tar.gz: 9a1bff5d5e92b3fab7045b2ad8904d97b7de7c814f37e9d0535028648db46bc1
5
5
  SHA512:
6
- metadata.gz: a571718b5125d6d7f6078b85cb0ef4d201c33731ad8a4eb4255550746562bdd6824a5207a11ec6a3a58a044e0cc5c5a78f0acd33246f7e419e1be1049f3c4eee
7
- data.tar.gz: 3966ac01cadb45e454b001fbd0044778794dc437af95a6c3faeefe0663a9412a910ffa4fdede25b7508c4f029185ace67af5975630bde5d970b55311df7e1a38
6
+ metadata.gz: 2a21bf0e45a727fa73473d6d011f6650e0894843962d0c9b493e01093792fd87add7ba1462e66440155b8269ff03d2d49780453f220d847ccafaf22e2a642a03
7
+ data.tar.gz: 9b6d06d90120343be0cd44665c4642c461f02e76a053e694f87e51447e0285eb741d32caa53d888d39ad4000e5fd9bc9e83400f9f07066f6fa78cc77ea8ccc1f
@@ -54,9 +54,11 @@ module Paramore
54
54
  def typecast_array(field, array, name)
55
55
  raise Paramore::ArrayExpected.new(name, array) unless array.is_a?(Array)
56
56
 
57
- array
57
+ result = array
58
58
  .reject { |unit| unit.to_s == '' && field.compact? }
59
59
  .map { |unit| cast(Paramore.field(field.type.first, null: true), unit) }
60
+
61
+ field.compact? ? result.compact : result
60
62
  end
61
63
 
62
64
  def typecast_value(type, value, name)
@@ -6,7 +6,7 @@ module Paramore
6
6
  null: false,
7
7
  compact: false,
8
8
  default: nil,
9
- empty: true,
9
+ empty: false,
10
10
  required: true,
11
11
  }.freeze
12
12
 
@@ -13,11 +13,15 @@ module Paramore
13
13
  parse_type(type.first)
14
14
  when Hash
15
15
  type.map do |name, field|
16
- case field.type
17
- when Array, Hash
18
- { name => parse_type(field.type) }
16
+ if field.wildly_keyed_hash?
17
+ { name => {} }
19
18
  else
20
- name
19
+ case field.type
20
+ when Array, Hash
21
+ { name => parse_type(field.type) }
22
+ else
23
+ name
24
+ end
21
25
  end
22
26
  end
23
27
  else
@@ -53,7 +53,7 @@ module Paramore
53
53
  module Date
54
54
  module_function
55
55
  def [](input)
56
- input.to_date
56
+ ::Date.parse(input)
57
57
  end
58
58
  end
59
59
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: paramore
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.6.0
4
+ version: 3.6.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lukas Kairevičius
@@ -115,7 +115,7 @@ licenses:
115
115
  - MIT
116
116
  metadata: {}
117
117
  post_install_message: |
118
- Thank you for installing Paramore 3.6.0 !
118
+ Thank you for installing Paramore 3.6.4 !
119
119
  From the command line you can run `paramore` to generate a configuration file
120
120
 
121
121
  More details here : https://github.com/lumzdas/paramore/blob/master/README.md
@@ -134,7 +134,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
134
134
  - !ruby/object:Gem::Version
135
135
  version: '0'
136
136
  requirements: []
137
- rubygems_version: 3.2.3
137
+ rubygems_version: 3.0.8
138
138
  signing_key:
139
139
  specification_version: 4
140
140
  summary: A declarative approach to Rails' strong parameter typing and sanitizing