ruby-rails-extensions 2.1.0.pre.rc.7 → 2.1.0.pre.rc.9

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: 3a0b09313bc2ef11d6fffe25059c8aad5af55e57b6b92911af1c32e45868f124
4
- data.tar.gz: 8574ef5aac7018f3401fed43e640dc86272ac03ffd9c4a5a80b29fbf18d4e086
3
+ metadata.gz: a2f8208756fad0f3e2d3467fe56d7f299ee20d04db7290e6079e2b5f60b9fb2f
4
+ data.tar.gz: 62d873c62e3d3cfcba37d70c63565d83bf84887d30285f23cf25ca62912cfdb9
5
5
  SHA512:
6
- metadata.gz: f74d924b7e2a3d21d60b41325e464e6da4adcb0435c553c09032847bc1bb7869e731c8f630889d6422ff2800f9d4611357663ecf7af94a4b5ba76657fcd34711
7
- data.tar.gz: 81e0170ab8c7627a1505721ac4fd8d06f40c67a813afc770d1f59319f517b031f1fa7e01946fa27cc39ad20c8f4c196fcac36f504890cc0dd8d7540da4177282
6
+ metadata.gz: fc3318c549ddeb4cdaa3f7d393dfa26a0d1ff6ad41c0f375fc282e97d5fadfa0d8d82b7518b5ec1624e7272c51a95f536e79d142d1042745ef5bc8e7edae5c04
7
+ data.tar.gz: 7d1fd81b3578daf91c6e8ca7a495d386773ba2904b6b9b01ecac955ffa10ffbce48338adf589ef3c0f78e9a4ffb0009e886333c7fd8dbe858eb0f33baa52ad24
data/CHANGELOG.md CHANGED
@@ -9,6 +9,7 @@ Unreleased Changes
9
9
  * `Hash#left_deep_merge` and `Hash#left_deep_merge!`
10
10
  * `Hash#invert_with_dups`
11
11
  * `FalseClass#to_d` and `TrueClass#to_d`
12
+ * `Range#>`, `Range#<`, `Range#<=`, `Range#>=`
12
13
 
13
14
  2.0.1 (2024-07-29)
14
15
  ------------------
@@ -12,7 +12,7 @@ Hash.class_eval do
12
12
  if block_given?
13
13
  yield(key, this_val, other_val)
14
14
  else
15
- other_val.presence || this_val
15
+ RubyRailsExtensions.presence(other_val) || this_val
16
16
  end
17
17
  end
18
18
  end
@@ -0,0 +1,43 @@
1
+ # frozen_string_literal: true
2
+
3
+ Range.class_eval do
4
+ # Greater than check.
5
+ #
6
+ # @param other [Numeric]
7
+ #
8
+ # @return [Boolean]
9
+ #
10
+ def >(other)
11
+ self.end > other
12
+ end
13
+
14
+ # Greater than or equal to check.
15
+ #
16
+ # @param other [Numeric]
17
+ #
18
+ # @return [Boolean]
19
+ #
20
+ def >=(other)
21
+ self.end >= other
22
+ end
23
+
24
+ # Less than to check.
25
+ #
26
+ # @param other [Numeric]
27
+ #
28
+ # @return [Boolean]
29
+ #
30
+ def <(other)
31
+ self.begin < other
32
+ end
33
+
34
+ # Less than or equal to check.
35
+ #
36
+ # @param other [Numeric]
37
+ #
38
+ # @return [Boolean]
39
+ #
40
+ def <=(other)
41
+ self.begin <= other
42
+ end
43
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module RubyRailsExtensions
4
- VERSION = '2.1.0-rc.7'
4
+ VERSION = '2.1.0-rc.9'
5
5
  end
@@ -43,6 +43,7 @@ module RubyRailsExtensions
43
43
  presence_bang
44
44
  quarter_dates
45
45
  range_add
46
+ range_comparisons
46
47
  range_multiply
47
48
  remove_reserved_keywords
48
49
  safe_parse
@@ -110,13 +111,15 @@ module RubyRailsExtensions
110
111
  end
111
112
  end
112
113
 
114
+ module_function
115
+
113
116
  # @return [Configuration]
114
- def self.configuration
117
+ def configuration
115
118
  @configuration ||= Configuration.new
116
119
  end
117
120
 
118
121
  # @yield [Configuration]
119
- def self.configure
122
+ def configure
120
123
  yield(configuration)
121
124
 
122
125
  Configuration::BOOLEAN_GEMS.each do |extension|
@@ -131,5 +134,30 @@ module RubyRailsExtensions
131
134
  configuration.flags
132
135
  end
133
136
 
134
- module_function :configuration_flags
137
+ # @see Object#presence from active_support/core_ext/object/blank.rb
138
+ def presence(*items)
139
+ items.each do |item|
140
+ return item if present?(item)
141
+ end
142
+
143
+ nil
144
+ end
145
+
146
+ # @see Object#blank? from active_support/core_ext/object/blank.rb
147
+ def blank?(item)
148
+ if item.respond_to?(:blank?)
149
+ return item.blank?
150
+ end
151
+
152
+ item.respond_to?(:empty?) ? !!item.empty? : !item
153
+ end
154
+
155
+ # @see Object#present? from active_support/core_ext/object/blank.rb
156
+ def present?(item)
157
+ if item.respond_to?(:present?)
158
+ return item.present?
159
+ end
160
+
161
+ !blank?(item)
162
+ end
135
163
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby-rails-extensions
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.1.0.pre.rc.7
4
+ version: 2.1.0.pre.rc.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brands Insurance
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-10-01 00:00:00.000000000 Z
11
+ date: 2024-10-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: benchmark-ips
@@ -91,6 +91,7 @@ files:
91
91
  - lib/ruby-rails-extensions/extensions/presence_bang.rb
92
92
  - lib/ruby-rails-extensions/extensions/quarter_dates.rb
93
93
  - lib/ruby-rails-extensions/extensions/range_add.rb
94
+ - lib/ruby-rails-extensions/extensions/range_comparisons.rb
94
95
  - lib/ruby-rails-extensions/extensions/range_multiply.rb
95
96
  - lib/ruby-rails-extensions/extensions/remove_reserved_keywords.rb
96
97
  - lib/ruby-rails-extensions/extensions/safe_parse.rb