query_helper 0.2.30 → 0.3.4
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 +6 -5
- data/lib/query_helper/associations.rb +14 -2
- data/lib/query_helper/sql_manipulator.rb +2 -2
- data/lib/query_helper/sql_parser.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: b9626c22503b7f257a4276b969a498a017753e879e30b04b6643c618ae8f03d4
|
|
4
|
+
data.tar.gz: 825fdbf988d8a41abd89d250aa6d56f0add379fced68e630099ea688cde9b586
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 1ce4589b5783e435ec47b22b2e04b094d8f5da5703b439510b7a9570d8dc0d87d505d2e2fca6125b1c180707bcae9001af9d3f40003c2747966f09a420978237
|
|
7
|
+
data.tar.gz: 9c8188da6470cd4469a4825e21725cbc1d19b5fcd1f246eb0d86d2dddd589ddcb7be30c8a500a3650b1a61fb2d2a622f6ff41388a8193bacda3544ca3974d81c
|
data/Gemfile.lock
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
query_helper (0.
|
|
4
|
+
query_helper (0.3.4)
|
|
5
5
|
activerecord (> 5)
|
|
6
6
|
activesupport (> 5)
|
|
7
7
|
sqlite3
|
|
@@ -43,13 +43,13 @@ GEM
|
|
|
43
43
|
i18n (>= 0.7)
|
|
44
44
|
i18n (1.8.10)
|
|
45
45
|
concurrent-ruby (~> 1.0)
|
|
46
|
-
loofah (2.
|
|
46
|
+
loofah (2.18.0)
|
|
47
47
|
crass (~> 1.0.2)
|
|
48
48
|
nokogiri (>= 1.5.9)
|
|
49
49
|
method_source (1.0.0)
|
|
50
50
|
mini_portile2 (2.8.0)
|
|
51
51
|
minitest (5.14.4)
|
|
52
|
-
nokogiri (1.13.
|
|
52
|
+
nokogiri (1.13.8)
|
|
53
53
|
mini_portile2 (~> 2.8.0)
|
|
54
54
|
racc (~> 1.4)
|
|
55
55
|
racc (1.6.0)
|
|
@@ -59,7 +59,7 @@ GEM
|
|
|
59
59
|
rails-dom-testing (2.0.3)
|
|
60
60
|
activesupport (>= 4.2.0)
|
|
61
61
|
nokogiri (>= 1.6)
|
|
62
|
-
rails-html-sanitizer (1.4.
|
|
62
|
+
rails-html-sanitizer (1.4.3)
|
|
63
63
|
loofah (~> 2.3)
|
|
64
64
|
railties (6.1.4.1)
|
|
65
65
|
actionpack (= 6.1.4.1)
|
|
@@ -89,7 +89,8 @@ GEM
|
|
|
89
89
|
rspec-mocks (~> 3.10)
|
|
90
90
|
rspec-support (~> 3.10)
|
|
91
91
|
rspec-support (3.10.2)
|
|
92
|
-
sqlite3 (1.
|
|
92
|
+
sqlite3 (1.6.2)
|
|
93
|
+
mini_portile2 (~> 2.8.0)
|
|
93
94
|
thor (1.1.0)
|
|
94
95
|
tzinfo (2.0.4)
|
|
95
96
|
concurrent-ruby (~> 1.0)
|
|
@@ -8,12 +8,24 @@ class QueryHelper
|
|
|
8
8
|
def self.load_associations(payload:, associations: [], as_json_options: {})
|
|
9
9
|
as_json_options ||= {}
|
|
10
10
|
as_json_options[:include] = as_json_options[:include] || json_associations(associations)
|
|
11
|
-
|
|
11
|
+
begin
|
|
12
|
+
# Preloader have been changed in Rails 7, which is giving error on upgrade.
|
|
13
|
+
# This should be updated to latest API once all repos have been upgraded to Rails 7
|
|
14
|
+
ActiveRecord::Associations::Preloader.new.preload(payload, associations)
|
|
15
|
+
rescue
|
|
16
|
+
ActiveRecord::Associations::Preloader.new(records: payload, associations: associations).call
|
|
17
|
+
end
|
|
12
18
|
payload.as_json(as_json_options)
|
|
13
19
|
end
|
|
14
20
|
|
|
15
21
|
def self.preload_associations(payload:, preload: [])
|
|
16
|
-
|
|
22
|
+
begin
|
|
23
|
+
# Preloader have been changed in Rails 7, which is giving error on upgrade.
|
|
24
|
+
# This should be updated to latest API once all repos have been upgraded to Rails 7
|
|
25
|
+
ActiveRecord::Associations::Preloader.new.preload(payload, preload)
|
|
26
|
+
rescue
|
|
27
|
+
ActiveRecord::Associations::Preloader.new(records: payload, associations: preload).call
|
|
28
|
+
end
|
|
17
29
|
end
|
|
18
30
|
|
|
19
31
|
def self.json_associations(associations)
|
|
@@ -26,8 +26,8 @@ class QueryHelper
|
|
|
26
26
|
end
|
|
27
27
|
|
|
28
28
|
def build
|
|
29
|
-
insert_having_clauses()
|
|
30
29
|
insert_qualify_clauses()
|
|
30
|
+
insert_having_clauses()
|
|
31
31
|
insert_where_clauses()
|
|
32
32
|
insert_select_clauses()
|
|
33
33
|
insert_order_by_and_limit_clause()
|
|
@@ -49,7 +49,7 @@ class QueryHelper
|
|
|
49
49
|
|
|
50
50
|
def qualify_clauses(index)
|
|
51
51
|
if index == 0
|
|
52
|
-
"qualified_results AS ( "
|
|
52
|
+
"WITH qualified_results AS ( "
|
|
53
53
|
else
|
|
54
54
|
", qualified_results AS ( "
|
|
55
55
|
end
|
|
@@ -114,7 +114,7 @@ class QueryHelper
|
|
|
114
114
|
end
|
|
115
115
|
|
|
116
116
|
def insert_where_index
|
|
117
|
-
group_by_index() || order_by_index() || limit_index() || @sql.length
|
|
117
|
+
qualify_index() || group_by_index() || order_by_index() || limit_index() || @sql.length
|
|
118
118
|
end
|
|
119
119
|
|
|
120
120
|
def insert_qualify_index
|
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.
|
|
4
|
+
version: 0.3.4
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Patterninc
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2023-04-19 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bundler
|