activecube-graphql 0.1.7 → 0.1.8

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: 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