query_helper 0.2.12 → 0.2.17
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 +4 -4
- data/Gemfile.lock +30 -30
- data/lib/query_helper.rb +24 -24
- data/lib/query_helper/sql_manipulator.rb +1 -1
- data/lib/query_helper/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 761535bdbebea924ac3d4ab1ed900f50a047f2e79ed5c2121b5f0eecf0327388
|
4
|
+
data.tar.gz: bb55e4554e416e2729d35c2fc1091d65726bde73fc1db93e192baf1275237bb0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0ba6ddb3222dba240810b0df6e1bc1025a2510d4b00c06430fc91c8786dbacc3d06df83f7986766a1d0755988550fdc44396fa1357c7c1cd2accc54edc904345
|
7
|
+
data.tar.gz: 33c4194f5bd8da5abdf8e7f2e78f0fcd9d84e5184c89ac3e926b8435e2a125f8b0f4428532fbfe24f6288e20f4c8520731c88720f2261788738f16048d8f0a49
|
data/Gemfile.lock
CHANGED
@@ -1,56 +1,56 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
query_helper (0.2.
|
4
|
+
query_helper (0.2.17)
|
5
5
|
activerecord (> 5)
|
6
6
|
activesupport (> 5)
|
7
7
|
|
8
8
|
GEM
|
9
9
|
remote: https://rubygems.org/
|
10
10
|
specs:
|
11
|
-
actionpack (6.0.
|
12
|
-
actionview (= 6.0.
|
13
|
-
activesupport (= 6.0.
|
11
|
+
actionpack (6.0.3.2)
|
12
|
+
actionview (= 6.0.3.2)
|
13
|
+
activesupport (= 6.0.3.2)
|
14
14
|
rack (~> 2.0, >= 2.0.8)
|
15
15
|
rack-test (>= 0.6.3)
|
16
16
|
rails-dom-testing (~> 2.0)
|
17
17
|
rails-html-sanitizer (~> 1.0, >= 1.2.0)
|
18
|
-
actionview (6.0.
|
19
|
-
activesupport (= 6.0.
|
18
|
+
actionview (6.0.3.2)
|
19
|
+
activesupport (= 6.0.3.2)
|
20
20
|
builder (~> 3.1)
|
21
21
|
erubi (~> 1.4)
|
22
22
|
rails-dom-testing (~> 2.0)
|
23
23
|
rails-html-sanitizer (~> 1.1, >= 1.2.0)
|
24
|
-
activemodel (6.0.
|
25
|
-
activesupport (= 6.0.
|
26
|
-
activerecord (6.0.
|
27
|
-
activemodel (= 6.0.
|
28
|
-
activesupport (= 6.0.
|
29
|
-
activesupport (6.0.
|
24
|
+
activemodel (6.0.3.2)
|
25
|
+
activesupport (= 6.0.3.2)
|
26
|
+
activerecord (6.0.3.2)
|
27
|
+
activemodel (= 6.0.3.2)
|
28
|
+
activesupport (= 6.0.3.2)
|
29
|
+
activesupport (6.0.3.2)
|
30
30
|
concurrent-ruby (~> 1.0, >= 1.0.2)
|
31
31
|
i18n (>= 0.7, < 2)
|
32
32
|
minitest (~> 5.1)
|
33
33
|
tzinfo (~> 1.1)
|
34
|
-
zeitwerk (~> 2.2)
|
34
|
+
zeitwerk (~> 2.2, >= 2.2.2)
|
35
35
|
builder (3.2.4)
|
36
|
-
byebug (11.1.
|
36
|
+
byebug (11.1.3)
|
37
37
|
concurrent-ruby (1.1.6)
|
38
38
|
crass (1.0.6)
|
39
|
-
diff-lcs (1.
|
39
|
+
diff-lcs (1.4.4)
|
40
40
|
erubi (1.9.0)
|
41
41
|
faker (1.9.6)
|
42
42
|
i18n (>= 0.7)
|
43
|
-
i18n (1.8.
|
43
|
+
i18n (1.8.5)
|
44
44
|
concurrent-ruby (~> 1.0)
|
45
|
-
loofah (2.
|
45
|
+
loofah (2.6.0)
|
46
46
|
crass (~> 1.0.2)
|
47
47
|
nokogiri (>= 1.5.9)
|
48
48
|
method_source (1.0.0)
|
49
49
|
mini_portile2 (2.4.0)
|
50
|
-
minitest (5.14.
|
51
|
-
nokogiri (1.10.
|
50
|
+
minitest (5.14.1)
|
51
|
+
nokogiri (1.10.10)
|
52
52
|
mini_portile2 (~> 2.4.0)
|
53
|
-
rack (2.2.
|
53
|
+
rack (2.2.3)
|
54
54
|
rack-test (1.1.0)
|
55
55
|
rack (>= 1.0, < 3)
|
56
56
|
rails-dom-testing (2.0.3)
|
@@ -58,9 +58,9 @@ GEM
|
|
58
58
|
nokogiri (>= 1.6)
|
59
59
|
rails-html-sanitizer (1.3.0)
|
60
60
|
loofah (~> 2.3)
|
61
|
-
railties (6.0.
|
62
|
-
actionpack (= 6.0.
|
63
|
-
activesupport (= 6.0.
|
61
|
+
railties (6.0.3.2)
|
62
|
+
actionpack (= 6.0.3.2)
|
63
|
+
activesupport (= 6.0.3.2)
|
64
64
|
method_source
|
65
65
|
rake (>= 0.8.7)
|
66
66
|
thor (>= 0.20.3, < 2.0)
|
@@ -69,15 +69,15 @@ GEM
|
|
69
69
|
rspec-core (~> 3.9.0)
|
70
70
|
rspec-expectations (~> 3.9.0)
|
71
71
|
rspec-mocks (~> 3.9.0)
|
72
|
-
rspec-core (3.9.
|
73
|
-
rspec-support (~> 3.9.
|
74
|
-
rspec-expectations (3.9.
|
72
|
+
rspec-core (3.9.2)
|
73
|
+
rspec-support (~> 3.9.3)
|
74
|
+
rspec-expectations (3.9.2)
|
75
75
|
diff-lcs (>= 1.2.0, < 2.0)
|
76
76
|
rspec-support (~> 3.9.0)
|
77
77
|
rspec-mocks (3.9.1)
|
78
78
|
diff-lcs (>= 1.2.0, < 2.0)
|
79
79
|
rspec-support (~> 3.9.0)
|
80
|
-
rspec-rails (4.0.
|
80
|
+
rspec-rails (4.0.1)
|
81
81
|
actionpack (>= 4.2)
|
82
82
|
activesupport (>= 4.2)
|
83
83
|
railties (>= 4.2)
|
@@ -85,13 +85,13 @@ GEM
|
|
85
85
|
rspec-expectations (~> 3.9)
|
86
86
|
rspec-mocks (~> 3.9)
|
87
87
|
rspec-support (~> 3.9)
|
88
|
-
rspec-support (3.9.
|
88
|
+
rspec-support (3.9.3)
|
89
89
|
sqlite3 (1.3.13)
|
90
90
|
thor (1.0.1)
|
91
91
|
thread_safe (0.3.6)
|
92
|
-
tzinfo (1.2.
|
92
|
+
tzinfo (1.2.7)
|
93
93
|
thread_safe (~> 0.1)
|
94
|
-
zeitwerk (2.
|
94
|
+
zeitwerk (2.4.0)
|
95
95
|
|
96
96
|
PLATFORMS
|
97
97
|
ruby
|
data/lib/query_helper.rb
CHANGED
@@ -144,7 +144,7 @@ class QueryHelper
|
|
144
144
|
end
|
145
145
|
|
146
146
|
def to_json(args)
|
147
|
-
|
147
|
+
results.to_json
|
148
148
|
end
|
149
149
|
|
150
150
|
def to_sql
|
@@ -179,6 +179,29 @@ class QueryHelper
|
|
179
179
|
return @results
|
180
180
|
end
|
181
181
|
|
182
|
+
def pagination_results(count=@count)
|
183
|
+
# Set pagination params if they aren't provided
|
184
|
+
results_per_page = @per_page || count
|
185
|
+
results_page = @page || 1
|
186
|
+
|
187
|
+
total_pages = (count/(results_per_page.nonzero? || 1).to_f).ceil
|
188
|
+
next_page = results_page + 1 if results_page.between?(1, total_pages - 1)
|
189
|
+
previous_page = results_page - 1 if results_page.between?(2, total_pages)
|
190
|
+
first_page = results_page == 1
|
191
|
+
last_page = results_page >= total_pages
|
192
|
+
out_of_range = !results_page.between?(1,total_pages)
|
193
|
+
|
194
|
+
{ count: count,
|
195
|
+
current_page: results_page,
|
196
|
+
next_page: next_page,
|
197
|
+
previous_page: previous_page,
|
198
|
+
total_pages: total_pages,
|
199
|
+
per_page: results_per_page,
|
200
|
+
first_page: first_page,
|
201
|
+
last_page: last_page,
|
202
|
+
out_of_range: out_of_range }
|
203
|
+
end
|
204
|
+
|
182
205
|
private
|
183
206
|
|
184
207
|
def determine_page(page:, per_page:)
|
@@ -239,29 +262,6 @@ class QueryHelper
|
|
239
262
|
@results.map!{ |r| r.except("_query_full_count") } if @page && @per_page && !@single_record
|
240
263
|
end
|
241
264
|
|
242
|
-
def pagination_results
|
243
|
-
# Set pagination params if they aren't provided
|
244
|
-
results_per_page = @per_page || @count
|
245
|
-
results_page = @page || 1
|
246
|
-
|
247
|
-
total_pages = (@count/(results_per_page.nonzero? || 1).to_f).ceil
|
248
|
-
next_page = results_page + 1 if results_page.between?(1, total_pages - 1)
|
249
|
-
previous_page = results_page - 1 if results_page.between?(2, total_pages)
|
250
|
-
first_page = results_page == 1
|
251
|
-
last_page = results_page == total_pages
|
252
|
-
out_of_range = !results_page.between?(1,total_pages)
|
253
|
-
|
254
|
-
{ count: @count,
|
255
|
-
current_page: results_page,
|
256
|
-
next_page: next_page,
|
257
|
-
previous_page: previous_page,
|
258
|
-
total_pages: total_pages,
|
259
|
-
per_page: results_per_page,
|
260
|
-
first_page: first_page,
|
261
|
-
last_page: last_page,
|
262
|
-
out_of_range: out_of_range }
|
263
|
-
end
|
264
|
-
|
265
265
|
def create_column_maps
|
266
266
|
ColumnMap.create_column_mappings(
|
267
267
|
query: @query,
|
@@ -55,7 +55,7 @@ class QueryHelper
|
|
55
55
|
|
56
56
|
def insert_order_by_and_limit_clause
|
57
57
|
@sql.slice!(@parser.limit_clause) if @parser.limit_included? # remove existing limit clause
|
58
|
-
@sql.slice!(@parser.order_by_clause) if @parser.order_by_included? # remove existing order by clause
|
58
|
+
@sql.slice!(@parser.order_by_clause) if @parser.order_by_included? && @order_by_clauses.length > 0 # remove existing order by clause
|
59
59
|
@sql += " order by #{@order_by_clauses.join(", ")} " if @order_by_clauses.length > 0
|
60
60
|
@sql += " limit :limit offset :offset " if @include_limit_clause
|
61
61
|
end
|
data/lib/query_helper/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: query_helper
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.17
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Evan McDaniel
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-09-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|