banana_bits 0.2.2 → 0.2.3

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: e8d430be7742bf8613eba315462cef556fb147cf75083ec25058181784b3fc29
4
- data.tar.gz: 6ce154a4686a42643ca2b20e144cbb33f9eafcd544395823286ecad408df1401
3
+ metadata.gz: cc71db155307bdd34df6c653c4d4cf1afde066ee22164a4a1a0693662bbcdd34
4
+ data.tar.gz: 8be282193fe6888b946b75eef7c8ff53db0cac516048923798215be8246919bd
5
5
  SHA512:
6
- metadata.gz: ed2fc1b16c9bef052d11b8ab8e2b9718fd35bdd5aa39d7033076daa184124517f79a3c82eed8c22f6ebd3f5fcc0738fc78fef942751a169fe5130e30b630379c
7
- data.tar.gz: a98833e351e433d2fde659e45720d3ae7d362dc092e06e65418cc6263e4f9088f18b9adbed0a2729054f93c8643000b9d4d552e67fbd8423b4930fc0a4ad583e
6
+ metadata.gz: b62eabe3337c8dc81533d3bd6bca20100c8dcced20cbe2e0c5cd49546ec73096874e4c473aa4ac4ef1a3fb436ba2d9a9cc8c2ee2bbc839b5a3f82fbb80896079
7
+ data.tar.gz: 9ec91ad4262212b3073e56cb79b0710ee9b0273de1542f64c801d76475add70ec3b3a21925e1f5eed4c6db2f17febb697109395d6a51c2172f1e0acb195af0aa
@@ -1,2 +1,7 @@
1
1
  ## [0.2.0] - 2019-09-09
2
2
  ### Initial release
3
+
4
+ ## [0.2.3] - 2019-09-11
5
+ ### Fixed
6
+ - Prevent undefined method `empty?` errors when a value does not respond to the method.
7
+ - Add method `blank?` to be supported.
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- banana_bits (0.2.2)
4
+ banana_bits (0.2.3)
5
5
  gibbon (~> 3.2.0)
6
6
 
7
7
  GEM
@@ -21,3 +21,27 @@ module BananaBits
21
21
  end
22
22
  end
23
23
  end
24
+
25
+ class TrueClass
26
+ def blank?
27
+ false
28
+ end
29
+ end
30
+
31
+ class NilClass
32
+ def blank?
33
+ true
34
+ end
35
+ end
36
+
37
+ class String
38
+ def blank?
39
+ self.strip.empty?
40
+ end
41
+ end
42
+
43
+ class Object
44
+ def blank?
45
+ respond_to?(:empty?) ? empty? : !self
46
+ end
47
+ end
@@ -4,7 +4,7 @@ module BananaBits
4
4
  def remove_blank_values(collection)
5
5
  if collection.is_a?(Hash)
6
6
  collection.each_with_object({}) do |(k, v), new_hash|
7
- if v.empty? && v != false
7
+ if v.blank?
8
8
  new_hash.delete(k)
9
9
  else
10
10
  if v.is_a?(Hash)
@@ -12,7 +12,7 @@ module BananaBits
12
12
  elsif v.is_a?(Array)
13
13
  new_hash[k] = remove_blank_values_from_array!(v)
14
14
  else
15
- new_hash[k] = v unless collection.empty?
15
+ new_hash[k] = v unless collection.blank?
16
16
  end
17
17
  end
18
18
  end
@@ -24,11 +24,11 @@ module BananaBits
24
24
  def remove_blank_values!(collection)
25
25
  if collection.is_a?(Hash)
26
26
  collection.each_pair do |k, v|
27
- if (v.empty? && v != false)
27
+ if v.blank?
28
28
  collection.delete(k)
29
29
  elsif v.is_a?(Hash)
30
30
  remove_blank_values!(v)
31
- collection.delete(k) if collection[k].nil? || collection[k].empty?
31
+ collection.delete(k) if collection[k].blank?
32
32
  elsif v.is_a?(Array)
33
33
  remove_blank_values_from_array!(v)
34
34
  end
@@ -1,3 +1,3 @@
1
1
  module BananaBits
2
- VERSION = "0.2.2"
2
+ VERSION = "0.2.3"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: banana_bits
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Stubblefield
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-09-10 00:00:00.000000000 Z
11
+ date: 2019-09-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: gibbon