mini_defender 0.3.0 → 0.3.2

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: 7a99b54a0e9bfe214e233a5aea751b7b06a5ada678cc8fb3c105cf2d564ef141
4
- data.tar.gz: 1f4d4944d884b31a96cac3b715d91071a901afaef9c89cb7868a6bdf8ce6f4f1
3
+ metadata.gz: d4266ed9c9b60525dc1827d8a72e2c9ef2864e05fbe5357cd4f92ee5084b8e36
4
+ data.tar.gz: 61ec8c2c5a397766c435ca7cbccbe04d0b5d12f5476a7e0358b6f2a7f5b0e398
5
5
  SHA512:
6
- metadata.gz: 4a360a9274941bf94e29be3c9c5be597b3c1453cf7c31d50f8f54e435104c8570316e90de4459645f81a458e2f5957168806db5616d39fe2514e8d1ddc0d9aa5
7
- data.tar.gz: 861656fde0726eb29ea2484a156039ca728a1bf086e28c72e2e27b833f3f784f5a6b03ecda007003efc7fa0d4feacc9b4f498515cd2399855c17eedb2365b838
6
+ metadata.gz: 4c6329ba8253c026729ba1b1c25fb42cc89061c1d75486b4256cd15636c9707a4319e521324bba95bbdc1522d1e6306b225602baa7d1c1233d81e22224b36bad
7
+ data.tar.gz: 76dbac54f35486ecb7c331ec9aeb1434507b92ab9e5d0ba98a220a088c87a29e909a989467f13c04c2149a1321cc4e7432694077749044fb39fe6aa5cc98b83f
@@ -12,13 +12,20 @@ module MiniDefender::ValidatesInput
12
12
 
13
13
  private
14
14
 
15
- def cleanse_data(data)
16
- data = data.to_h do |k, v|
17
- v = v.strip
18
- v = nil if v.blank?
19
- [k, v]
20
- end
15
+ def cleanse_data(data, depth = 1)
16
+ return data if depth > 16
21
17
 
22
- data.compact
18
+ case data
19
+ when Array
20
+ data.map{ |v| cleanse_data(v, depth + 1) }.reject(&:nil?)
21
+ when Hash
22
+ data.to_h{ |k, v| [k, cleanse_data(v, depth + 1)] }.compact
23
+ when Numeric, TrueClass, FalseClass, NilClass
24
+ data
25
+ else
26
+ data = data.to_s.strip
27
+ data = nil if data == ''
28
+ data
29
+ end
23
30
  end
24
31
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module MiniDefender
4
- VERSION = "0.3.0"
4
+ VERSION = "0.3.2"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mini_defender
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.3.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ali Alhoshaiyan
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-04-05 00:00:00.000000000 Z
11
+ date: 2023-04-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport