hq-graphql 2.0.9 → 2.0.10

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: bf94ca5592ce063239e928dbfb76d339c44762c3c89efe709cbbee157228a1d5
4
- data.tar.gz: 8a5b48518fd85b87917d81dc10b75be7031552b010216ff956e3d7e9fefada0c
3
+ metadata.gz: fbfd2d5dad56008b05618a89354c42ced0ddac3ee44d292b96773303488171d8
4
+ data.tar.gz: 862fee899d0964af9177327b73ad7befcc200985f4f6323272ebb9d9122f5a5a
5
5
  SHA512:
6
- metadata.gz: 2a742fb51ad7ac2c4fa2f44c02b144a97e7e87fb9bb93c58035a23420c89550bfc895f376d372b71ee1445fdf8db91bf38e16eae8d7cea3c91dfeda9e5a2f69d
7
- data.tar.gz: d17914db4d42d8b480917d3b720220cbdcad9d5d5a88f47d1e4b7c0b1f1d8db69138560e5838be40047f42a003bb82d56c07ede142da433b541048fba1d5dc56
6
+ metadata.gz: d58e0f041362550a8aea5d3a0f03ca1ba0be02ad034b8c3def9d807f3c7045913c900ee79f3058bdf2d9396388d22a236b3ff6e368fb9d4758fcde60abb92ae5
7
+ data.tar.gz: 305b4e50bbb1f025aa2a977e45eba2aa63091b322396ac0bcfb2ce3be3f9ba28dd166097fe594982bc705dc701220d4b5b924721eee1ed65bc18387a3c2529ac
@@ -2,10 +2,18 @@
2
2
 
3
3
  module HQ
4
4
  module GraphQL
5
- class Config < Struct.new(:authorize, :authorize_field, :default_scope, :resource_lookup, keyword_init: true)
5
+ class Config < Struct.new(
6
+ :authorize,
7
+ :authorize_field,
8
+ :default_scope,
9
+ :extract_class,
10
+ :resource_lookup,
11
+ keyword_init: true
12
+ )
6
13
  def initialize(
7
14
  default_scope: ->(scope, _context) { scope },
8
- resource_lookup: ->(klass) { "::Resources::#{klass}".safe_constantize },
15
+ extract_class: ->(klass) { klass.to_s.gsub(/^Resources|Resource$/, "") },
16
+ resource_lookup: ->(klass) { "::Resources::#{klass}Resource".safe_constantize || "::Resources::#{klass}".safe_constantize },
9
17
  **options
10
18
  )
11
19
  super
@@ -37,7 +37,7 @@ module HQ
37
37
  end
38
38
 
39
39
  def model_name
40
- @model_name || name.demodulize
40
+ @model_name || ::HQ::GraphQL.extract_class(self)
41
41
  end
42
42
 
43
43
  def model_klass
@@ -2,6 +2,6 @@
2
2
 
3
3
  module HQ
4
4
  module GraphQL
5
- VERSION = "2.0.9"
5
+ VERSION = "2.0.10"
6
6
  end
7
7
  end
data/lib/hq/graphql.rb CHANGED
@@ -28,6 +28,10 @@ module HQ
28
28
  config.default_scope.call(scope, context)
29
29
  end
30
30
 
31
+ def self.extract_class(klass)
32
+ config.extract_class.call(klass)
33
+ end
34
+
31
35
  def self.resource_lookup(klass)
32
36
  config.resource_lookup.call(klass)
33
37
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hq-graphql
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.9
4
+ version: 2.0.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Danny Jones