handset_detection 0.1.4 → 0.1.5

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
  SHA1:
3
- metadata.gz: a26d008d0954859398b6e5ea94970a227459517f
4
- data.tar.gz: a1b18a80c2faf4e8fde830092e7fe3539194f167
3
+ metadata.gz: a122a4fea8be6e6413a46855c5b13f5362b12c7f
4
+ data.tar.gz: 24adc48e6fdd2b3a01fc6dd2a5ebe8b85f2cd7d1
5
5
  SHA512:
6
- metadata.gz: 91ca75e893b2cafcace42ce9068b2e4c6639b266c7e7545e46c87e2a06707ffdb3068131e0e23763be4346aeae11368df6106706045bc28eaa11862435f70abd
7
- data.tar.gz: d78d6ed1c7958d0642cd698340ce92a144992fbe0965b69db3315fe4fcd73174030327eddc0b79be47ac1c5b1d8a0664fc6b01153ff1966e3118d38a1e6e81bf
6
+ metadata.gz: 9c0bf561ace1d3e4a962c2e6e754c8ab011729f7634a60fbdc15de8c968ed5b01a3fc7a946de058e0492d3506d87cf66b0fc2be5515bf156479c96c69472e171
7
+ data.tar.gz: 664bc18997462faabdb4964b284b484239330da0023deee29b895ab14b6fa3ce4a6d3d00512560f45f04a25ab4388da7b1299a8d767e451bdf6a2ae362509697
@@ -24,7 +24,7 @@
24
24
  # DAMAGE.
25
25
  #++
26
26
 
27
- require 'active_support/core_ext/object/blank'
27
+ require 'handset_detection/vendor/blank'
28
28
  require 'json'
29
29
  require 'digest/md5'
30
30
  require 'tcp_timeout'
@@ -24,7 +24,7 @@
24
24
  # DAMAGE.
25
25
  #++
26
26
 
27
- require 'active_support/core_ext/object/blank'
27
+ require 'handset_detection/vendor/blank'
28
28
  require 'handset_detection/cache/filesystem'
29
29
  require 'handset_detection/cache/memcached'
30
30
  require 'handset_detection/cache/rails'
@@ -0,0 +1,131 @@
1
+ # encoding: utf-8
2
+
3
+ class Object
4
+ # An object is blank if it's false, empty, or a whitespace string.
5
+ # For example, +false+, '', ' ', +nil+, [], and {} are all blank.
6
+ #
7
+ # This simplifies
8
+ #
9
+ # !address || address.empty?
10
+ #
11
+ # to
12
+ #
13
+ # address.blank?
14
+ #
15
+ # @return [true, false]
16
+ def blank?
17
+ respond_to?(:empty?) ? !!empty? : !self
18
+ end
19
+
20
+ # An object is present if it's not blank.
21
+ #
22
+ # @return [true, false]
23
+ def present?
24
+ !blank?
25
+ end
26
+
27
+ # Returns the receiver if it's present otherwise returns +nil+.
28
+ # <tt>object.presence</tt> is equivalent to
29
+ #
30
+ # object.present? ? object : nil
31
+ #
32
+ # For example, something like
33
+ #
34
+ # state = params[:state] if params[:state].present?
35
+ # country = params[:country] if params[:country].present?
36
+ # region = state || country || 'US'
37
+ #
38
+ # becomes
39
+ #
40
+ # region = params[:state].presence || params[:country].presence || 'US'
41
+ #
42
+ # @return [Object]
43
+ def presence
44
+ self if present?
45
+ end
46
+ end
47
+
48
+ class NilClass
49
+ # +nil+ is blank:
50
+ #
51
+ # nil.blank? # => true
52
+ #
53
+ # @return [true]
54
+ def blank?
55
+ true
56
+ end
57
+ end
58
+
59
+ class FalseClass
60
+ # +false+ is blank:
61
+ #
62
+ # false.blank? # => true
63
+ #
64
+ # @return [true]
65
+ def blank?
66
+ true
67
+ end
68
+ end
69
+
70
+ class TrueClass
71
+ # +true+ is not blank:
72
+ #
73
+ # true.blank? # => false
74
+ #
75
+ # @return [false]
76
+ def blank?
77
+ false
78
+ end
79
+ end
80
+
81
+ class Array
82
+ # An array is blank if it's empty:
83
+ #
84
+ # [].blank? # => true
85
+ # [1,2,3].blank? # => false
86
+ #
87
+ # @return [true, false]
88
+ alias_method :blank?, :empty?
89
+ end
90
+
91
+ class Hash
92
+ # A hash is blank if it's empty:
93
+ #
94
+ # {}.blank? # => true
95
+ # { key: 'value' }.blank? # => false
96
+ #
97
+ # @return [true, false]
98
+ alias_method :blank?, :empty?
99
+ end
100
+
101
+ class String
102
+ BLANK_RE = /\A[[:space:]]*\z/
103
+
104
+ # A string is blank if it's empty or contains whitespaces only:
105
+ #
106
+ # ''.blank? # => true
107
+ # ' '.blank? # => true
108
+ # "\t\n\r".blank? # => true
109
+ # ' blah '.blank? # => false
110
+ #
111
+ # Unicode whitespace is supported:
112
+ #
113
+ # "\u00a0".blank? # => true
114
+ #
115
+ # @return [true, false]
116
+ def blank?
117
+ BLANK_RE === self
118
+ end
119
+ end
120
+
121
+ class Numeric #:nodoc:
122
+ # No number is blank:
123
+ #
124
+ # 1.blank? # => false
125
+ # 0.blank? # => false
126
+ #
127
+ # @return [false]
128
+ def blank?
129
+ false
130
+ end
131
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: handset_detection
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Handset Detection
@@ -10,20 +10,6 @@ bindir: bin
10
10
  cert_chain: []
11
11
  date: 2016-10-24 00:00:00.000000000 Z
12
12
  dependencies:
13
- - !ruby/object:Gem::Dependency
14
- requirement: !ruby/object:Gem::Requirement
15
- requirements:
16
- - - "~>"
17
- - !ruby/object:Gem::Version
18
- version: '4.2'
19
- name: activesupport
20
- prerelease: false
21
- type: :runtime
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - "~>"
25
- - !ruby/object:Gem::Version
26
- version: '4.2'
27
13
  - !ruby/object:Gem::Dependency
28
14
  requirement: !ruby/object:Gem::Requirement
29
15
  requirements:
@@ -117,6 +103,7 @@ files:
117
103
  - lib/handset_detection/extra.rb
118
104
  - lib/handset_detection/hd4.rb
119
105
  - lib/handset_detection/store.rb
106
+ - lib/handset_detection/vendor/blank.rb
120
107
  homepage: https://github.com/HandsetDetection/ruby-apikit/
121
108
  licenses:
122
109
  - MIT