search_rails 3.0.1 → 3.0.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: cfc525b4e7ba4fc5f46a463ae4a52ace227109537fcf8c980b68098f13f24d80
4
- data.tar.gz: b8620e4f3c0f73f7b177e6525a1a7e1f0205662cfc453ad1d3fd50f88e102246
3
+ metadata.gz: 80e4823de75622d8a297fd446e617007c1183d5a31c198641414c4d17519abc6
4
+ data.tar.gz: fb8176b9a5722042b75540d2643c9f56a3879b6ff4a0719f12cd04168769352e
5
5
  SHA512:
6
- metadata.gz: 6b8abfadfe3a557453cfcb50275e788d7191a606767be35dcd7c25e145434228f140d56a5ec309dc23b3cbe93b131f4ae6cd562c004f4ce989edadfd3f6c05f7
7
- data.tar.gz: 9bf8848acad5afe00b136239d6958675aba1c6b1a281f71392c713dcf5cf36b8999e0d2bbe1c21d7d8bf9f0cfaf7e0dc7995859a0e49904e170da7a588150496
6
+ metadata.gz: 2f9298032264309c70ed8d4bdd532f7c72ef46b2d73a046d7b8f6a3de7ab46490365d12d360fa6e3bf74b6a5e3011fd30f68acd63d8d21aaf6798c8c989c57f5
7
+ data.tar.gz: 7bbcdab55933794951437967b0b7116081668f0db97708850a6d46e8631309cb976f6b22b245a7fa860ae9d2aadb4f3ca3dda08615f274633aca2442d6d7b1ef
data/Gemfile.lock CHANGED
@@ -1,11 +1,11 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- search_rails (3.0.1)
5
- chronic
6
- query-ruby (>= 2.0.1, < 3)
7
- rails
8
- zeitwerk
4
+ search_rails (3.0.3)
5
+ chronic (>= 0.10.2, < 1)
6
+ query-ruby (>= 2.0.2, < 3)
7
+ rails (>= 8.1.3.1, < 9)
8
+ zeitwerk (>= 2.8.3, < 3)
9
9
 
10
10
  GEM
11
11
  remote: https://rubygems.org/
@@ -155,9 +155,9 @@ GEM
155
155
  rdoc (>= 4.0.0)
156
156
  reline (>= 0.4.2)
157
157
  json (2.21.2)
158
- language-ruby (2.0.1)
159
- dorian-arguments
160
- zeitwerk
158
+ language-ruby (2.0.2)
159
+ dorian-arguments (>= 2.0.1, < 3)
160
+ zeitwerk (>= 2.8.3, < 3)
161
161
  language_server-protocol (3.17.0.6)
162
162
  libv8-node (24.12.0.1-arm64-darwin)
163
163
  libv8-node (24.12.0.1-x86_64-linux)
@@ -206,13 +206,13 @@ GEM
206
206
  prettyprint (0.2.0)
207
207
  prism (1.9.0)
208
208
  public_suffix (7.0.5)
209
- query-ruby (2.0.1)
210
- activesupport
211
- bigdecimal
209
+ query-ruby (2.0.2)
210
+ activesupport (>= 8.1.3.1, < 9)
211
+ bigdecimal (>= 4.1.2, < 5)
212
212
  dorian-arguments (>= 2.0.1, < 3)
213
- json
214
- language-ruby (>= 2.0.1, < 3)
215
- zeitwerk
213
+ json (>= 2.21.2, < 3)
214
+ language-ruby (>= 2.0.2, < 3)
215
+ zeitwerk (>= 2.8.3, < 3)
216
216
  racc (1.8.1)
217
217
  rack (3.2.7)
218
218
  rack-protection (4.2.1)
data/VERSION CHANGED
@@ -1 +1 @@
1
- 3.0.1
1
+ 3.0.3
data/lib/search.rb CHANGED
@@ -100,6 +100,7 @@ module Search
100
100
 
101
101
  fields = fields.map(&:to_s)
102
102
  q = q.to_s
103
+ return all if q.blank?
103
104
 
104
105
  where(
105
106
  id:
@@ -213,6 +214,7 @@ module Search
213
214
 
214
215
  fields = fields.map(&:to_s)
215
216
  q = q.to_s
217
+ return all if q.blank?
216
218
 
217
219
  where(
218
220
  fields
@@ -234,6 +236,8 @@ module Search
234
236
  raise ArgumentError unless search_fields.is_an?(Hash)
235
237
  raise ArgumentError unless fields.is_an?(Array)
236
238
 
239
+ return all if value.blank?
240
+
237
241
  fields = fields.map(&:to_s)
238
242
  key = key.to_s.presence_in(fields)
239
243
 
@@ -631,7 +635,7 @@ module Search
631
635
  where(node.gteq(value.first).and(node.lteq(value.last)))
632
636
  end
633
637
  else
634
- where(node.matches("%#{value}%", nil, false))
638
+ value.present? ? where(node.matches("%#{value}%", nil, false)) : all
635
639
  end
636
640
  }
637
641
 
@@ -647,7 +651,7 @@ module Search
647
651
  where(node.gteq(value.first).and(node.lteq(value.last)))
648
652
  end
649
653
  else
650
- where(node.matches("%#{value}", nil, false))
654
+ value.present? ? where(node.matches("%#{value}", nil, false)) : all
651
655
  end
652
656
  }
653
657
 
@@ -663,7 +667,7 @@ module Search
663
667
  where(node.gteq(value.first).and(node.lteq(value.last)))
664
668
  end
665
669
  else
666
- where(node.matches("#{value}%", nil, false))
670
+ value.present? ? where(node.matches("#{value}%", nil, false)) : all
667
671
  end
668
672
  }
669
673
  end
data/search_rails.gemspec CHANGED
@@ -12,10 +12,10 @@ Gem::Specification.new do |s|
12
12
  s.homepage = "https://github.com/dorianmariecom/search_rails"
13
13
  s.license = "MIT"
14
14
 
15
- s.add_dependency "chronic"
16
- s.add_dependency "query-ruby", ">= 2.0.1", "< 3"
17
- s.add_dependency "rails"
18
- s.add_dependency "zeitwerk"
15
+ s.add_dependency "chronic", ">= 0.10.2", "< 1"
16
+ s.add_dependency "query-ruby", ">= 2.0.2", "< 3"
17
+ s.add_dependency "rails", ">= 8.1.3.1", "< 9"
18
+ s.add_dependency "zeitwerk", ">= 2.8.3", "< 3"
19
19
 
20
20
  s.metadata["rubygems_mfa_required"] = "true"
21
21
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: search_rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.1
4
+ version: 3.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dorian Marié
@@ -15,21 +15,27 @@ dependencies:
15
15
  requirements:
16
16
  - - ">="
17
17
  - !ruby/object:Gem::Version
18
- version: '0'
18
+ version: 0.10.2
19
+ - - "<"
20
+ - !ruby/object:Gem::Version
21
+ version: '1'
19
22
  type: :runtime
20
23
  prerelease: false
21
24
  version_requirements: !ruby/object:Gem::Requirement
22
25
  requirements:
23
26
  - - ">="
24
27
  - !ruby/object:Gem::Version
25
- version: '0'
28
+ version: 0.10.2
29
+ - - "<"
30
+ - !ruby/object:Gem::Version
31
+ version: '1'
26
32
  - !ruby/object:Gem::Dependency
27
33
  name: query-ruby
28
34
  requirement: !ruby/object:Gem::Requirement
29
35
  requirements:
30
36
  - - ">="
31
37
  - !ruby/object:Gem::Version
32
- version: 2.0.1
38
+ version: 2.0.2
33
39
  - - "<"
34
40
  - !ruby/object:Gem::Version
35
41
  version: '3'
@@ -39,7 +45,7 @@ dependencies:
39
45
  requirements:
40
46
  - - ">="
41
47
  - !ruby/object:Gem::Version
42
- version: 2.0.1
48
+ version: 2.0.2
43
49
  - - "<"
44
50
  - !ruby/object:Gem::Version
45
51
  version: '3'
@@ -49,28 +55,40 @@ dependencies:
49
55
  requirements:
50
56
  - - ">="
51
57
  - !ruby/object:Gem::Version
52
- version: '0'
58
+ version: 8.1.3.1
59
+ - - "<"
60
+ - !ruby/object:Gem::Version
61
+ version: '9'
53
62
  type: :runtime
54
63
  prerelease: false
55
64
  version_requirements: !ruby/object:Gem::Requirement
56
65
  requirements:
57
66
  - - ">="
58
67
  - !ruby/object:Gem::Version
59
- version: '0'
68
+ version: 8.1.3.1
69
+ - - "<"
70
+ - !ruby/object:Gem::Version
71
+ version: '9'
60
72
  - !ruby/object:Gem::Dependency
61
73
  name: zeitwerk
62
74
  requirement: !ruby/object:Gem::Requirement
63
75
  requirements:
64
76
  - - ">="
65
77
  - !ruby/object:Gem::Version
66
- version: '0'
78
+ version: 2.8.3
79
+ - - "<"
80
+ - !ruby/object:Gem::Version
81
+ version: '3'
67
82
  type: :runtime
68
83
  prerelease: false
69
84
  version_requirements: !ruby/object:Gem::Requirement
70
85
  requirements:
71
86
  - - ">="
72
87
  - !ruby/object:Gem::Version
73
- version: '0'
88
+ version: 2.8.3
89
+ - - "<"
90
+ - !ruby/object:Gem::Version
91
+ version: '3'
74
92
  description: a powerful search for rails
75
93
  email: dorian@dorianmarie.com
76
94
  executables: []