activecube-graphql 0.1.7 → 0.1.8

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b5907c942a7c6ff67df9c067b511f3fa12ecd28786501c171c254a8208fea8ae
4
- data.tar.gz: af6cf1ab5742653b86e3773b38524b67320de944f34eb1f5fce54eca209d02b7
3
+ metadata.gz: 42579bf672a307cc6a4c48285c98d07ada9aae3547300f00880d6444d6ae55d0
4
+ data.tar.gz: f7d5dc893fd074bc2f37b065b46e0113a3f0107a7dfe850f50e5b5967af70db0
5
5
  SHA512:
6
- metadata.gz: f6a8e54da43f0eef1f7c6c0ea75f726deeb2fa8f190ecda6d2aed61ceac6d8d42d9eb5641d60eae32ee5e993183c89cc0bc201af71800e498dccab00f1a68bf2
7
- data.tar.gz: b5aae1ee51c0964faaf8eed002d8906db458493270b692e396771560e3e54ea4f977c087a922eadcecc10e6b34d3602deccce2cde2588c920216d98014d8b4d1
6
+ metadata.gz: 5ec2fea9a92f5ae829e118965daf2e60a51041e7cb2eedb0a1e2634cc8ea6b37656c34399891d37cfc456ff938831ea5ad92ab3e7c650bd05e41eefd6f66064d
7
+ data.tar.gz: f86cd4c3bb22b28b6ec6298e1d5b0fbbb6c33712956aa8a8124784e74016ea84e65b36094375afeb842f935643dabe3db5260cf279005f4d34c311db219582ce
data/Gemfile.lock CHANGED
@@ -1,21 +1,21 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- activecube-graphql (0.1.6)
5
- activecube (~> 0.1.6)
6
- graphql (~> 1.9)
4
+ activecube-graphql (0.1.8)
5
+ activecube (~> 0.1.14)
6
+ graphql (~> 1.10)
7
7
 
8
8
  GEM
9
9
  remote: https://rubygems.org/
10
10
  specs:
11
- activecube (0.1.6)
11
+ activecube (0.1.14)
12
12
  activerecord (>= 5.2)
13
- activemodel (6.0.2.1)
14
- activesupport (= 6.0.2.1)
15
- activerecord (6.0.2.1)
16
- activemodel (= 6.0.2.1)
17
- activesupport (= 6.0.2.1)
18
- activesupport (6.0.2.1)
13
+ activemodel (6.0.2.2)
14
+ activesupport (= 6.0.2.2)
15
+ activerecord (6.0.2.2)
16
+ activemodel (= 6.0.2.2)
17
+ activesupport (= 6.0.2.2)
18
+ activesupport (6.0.2.2)
19
19
  concurrent-ruby (~> 1.0, >= 1.0.2)
20
20
  i18n (>= 0.7, < 2)
21
21
  minitest (~> 5.1)
@@ -23,7 +23,7 @@ GEM
23
23
  zeitwerk (~> 2.2)
24
24
  concurrent-ruby (1.1.6)
25
25
  diff-lcs (1.3)
26
- graphql (1.10.4)
26
+ graphql (1.10.6)
27
27
  i18n (1.8.2)
28
28
  concurrent-ruby (~> 1.0)
29
29
  minitest (5.14.0)
@@ -42,7 +42,7 @@ GEM
42
42
  rspec-support (~> 3.9.0)
43
43
  rspec-support (3.9.2)
44
44
  thread_safe (0.3.6)
45
- tzinfo (1.2.6)
45
+ tzinfo (1.2.7)
46
46
  thread_safe (~> 0.1)
47
47
  zeitwerk (2.3.0)
48
48
 
@@ -24,8 +24,8 @@ to query cubes}
24
24
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
25
25
  spec.require_paths = ["lib"]
26
26
 
27
- spec.add_runtime_dependency 'activecube', '~> 0.1.6'
28
- spec.add_runtime_dependency 'graphql', '~> 1.9'
27
+ spec.add_runtime_dependency 'activecube', '~> 0.1.14'
28
+ spec.add_runtime_dependency 'graphql', '~> 1.10'
29
29
 
30
30
  spec.add_development_dependency "bundler", "~> 1.17"
31
31
  spec.add_development_dependency "rake", ">= 13.0"
@@ -5,6 +5,7 @@ module Activecube
5
5
  class Element
6
6
 
7
7
  TYPENAME = '__typename'
8
+ KEY_FIELD_PREFIX = '_aq.'
8
9
 
9
10
  attr_reader :arguments, :ast_node, :cube, :parent, :name, :definition, :key,
10
11
  :children, :metric, :dimension, :field, :context_node
@@ -14,7 +15,7 @@ module Activecube
14
15
  @parent = parent
15
16
 
16
17
  @name = context_node.name
17
- @key = parent ? (parent.key ? "#{parent.key}.#{name}" : name ) : nil
18
+ @key = parent ? (parent.key ? "#{parent.key}.#{name}" : KEY_FIELD_PREFIX+name ) : nil
18
19
 
19
20
  @context_node = context_node
20
21
  @arguments = context_node.arguments.to_h
@@ -85,7 +86,7 @@ module Activecube
85
86
  element = element.when( selector.eq(value) )
86
87
  end
87
88
  elsif element.respond_to? k
88
- element = element.send(k, *value)
89
+ element = element.send(k, *converted_field_array(k, value))
89
90
  else
90
91
  raise Activecube::InputArgumentError, "Field #{k} is not implemented for #{element}"
91
92
  end
@@ -94,6 +95,14 @@ module Activecube
94
95
  element
95
96
  end
96
97
 
98
+ def converted_field_array method, values
99
+ if [:desc,:asc].include?(method)
100
+ values.collect{|v| KEY_FIELD_PREFIX + v}
101
+ else
102
+ values
103
+ end
104
+ end
105
+
97
106
  def apply_selector element, k, hash
98
107
  hash.each_pair do |operator, arg|
99
108
  selector = cube.selectors[k]
@@ -1,5 +1,5 @@
1
1
  module Activecube
2
2
  module Graphql
3
- VERSION = "0.1.7"
3
+ VERSION = "0.1.8"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: activecube-graphql
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.7
4
+ version: 0.1.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Aleksey Studnev
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-03-24 00:00:00.000000000 Z
11
+ date: 2020-04-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activecube
@@ -16,28 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 0.1.6
19
+ version: 0.1.14
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 0.1.6
26
+ version: 0.1.14
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: graphql
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '1.9'
33
+ version: '1.10'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '1.9'
40
+ version: '1.10'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: bundler
43
43
  requirement: !ruby/object:Gem::Requirement