graphql-decorate 1.0.1 → 1.0.2

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: 87a8fe01c943ec96814efe0e1eff084e8a1a06d07ddfb25bdc957b7b9d7e1359
4
- data.tar.gz: 834c64c23ce5db962159773e82f10ad7130322cffba0ef340a3dbd244b0ec8e4
3
+ metadata.gz: ac0949a542979b4218036dae55013d1b148cda15cfafdab0d741aa23d882d289
4
+ data.tar.gz: ac03a2c2c2d554fadd4a7b1ad489d572954c84d7efb77f8afe301c3e8f5909ab
5
5
  SHA512:
6
- metadata.gz: 536f14a8113cd9c166667260b743ef2443b1b845a2293d4fc1b006fd9818d819cd90439c6fd186d10c7ba0657eb6bd67840053160a65045edff94a69ace61db4
7
- data.tar.gz: a083fe5519d3d5c980e01e9aa72f8e9c4f18d05c0130032a617933aba15410a9b32d7ef0b29dae8445dec018b68fc963b1964bb2534f06481594ab7759587498
6
+ metadata.gz: 4646f9ea8f791e8ae56163ee8f1ff67849a697365eed6fc5ac9d3ef4327933d6d650cb2aef6cf8160ebea76826de0152d13c9c0b5719da5bdb02e012d9371587
7
+ data.tar.gz: 02e3384f30868f20d490db4dc3481c77bc94f1ce1e3ad446c15a9bb63a3825fd98d7712341452ed532e4a794379503a0e9d4db518080c521d980579337373fd3
data/README.md CHANGED
@@ -54,7 +54,7 @@ class RectangleDecorator < BaseDecorator
54
54
  end
55
55
  end
56
56
 
57
- class Rectangle < BaseObject
57
+ class RectangleType < BaseObject
58
58
  decorate_with RectangleDecorator
59
59
 
60
60
  field :area, Int, null: false
@@ -84,8 +84,7 @@ end
84
84
  ### Types
85
85
  Two methods are made available on your type classes: `decorate_with` and `decorate_metadata`.
86
86
  Every method that yields the underlying object will also yield the current GraphQL `context`.
87
- If decoration depends on some context in the current query then you can access it when the field
88
- is resolved.
87
+ If decoration depends on some context in the current query then you can access it when the field is resolved.
89
88
 
90
89
  #### decorate_with
91
90
  `decorate_with` accepts a decorator class that will decorate every instance of your type.
@@ -123,17 +122,17 @@ to return `Hash`s.
123
122
  ```ruby
124
123
  class Rectangle < GraphQL::Schema::Object
125
124
  decorate_metadata do |metadata|
126
- metadata.unscoped do |object, _graphql_context|
127
- {
128
- name: object.name
129
- }
130
- end
125
+ metadata.unscoped do |object, _graphql_context|
126
+ {
127
+ name: object.name
128
+ }
129
+ end
131
130
 
132
- metadata.scoped do |object, _graphql_context|
133
- {
134
- inside_rectangle: true
135
- }
136
- end
131
+ metadata.scoped do |object, _graphql_context|
132
+ {
133
+ inside_rectangle: true
134
+ }
135
+ end
137
136
  end
138
137
  end
139
138
  ```
@@ -148,7 +147,7 @@ You can mix and match these methods to suit your needs. Note that if `unscoped`
148
147
  class Rectangle < GraphQL::Schema::Object
149
148
  decorate_with RectangleDecorator
150
149
  decorate_metadata do |metadata|
151
- metadata.scoped do |object, _graphql_context|
150
+ metadata.scoped do |object, _graphql_context|
152
151
  {
153
152
  name: object.name
154
153
  }
@@ -4,20 +4,24 @@ lib = File.expand_path('lib', __dir__)
4
4
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
5
5
  require 'graphql/decorate/version'
6
6
 
7
+ # rubocop:disable Metrics/BlockLength
7
8
  Gem::Specification.new do |spec|
8
- spec.name = 'graphql-decorate'
9
- spec.version = GraphQL::Decorate::VERSION
10
- spec.authors = ['Ben Brook']
11
- spec.email = ['bbrook154@gmail.com']
9
+ spec.name = 'graphql-decorate'
10
+ spec.version = GraphQL::Decorate::VERSION
11
+ spec.authors = ['Ben Brook']
12
+ spec.email = ['bbrook154@gmail.com']
12
13
 
13
- spec.summary = 'A decorator integration for the GraphQL gem'
14
- spec.homepage = 'https://www.github.com/TrueCar/graphql-decorate'
15
- spec.license = 'MIT'
14
+ spec.summary = 'A decorator integration for the GraphQL gem'
15
+ spec.homepage = 'https://www.github.com/TrueCar/graphql-decorate'
16
+ spec.license = 'MIT'
17
+ spec.metadata = {
18
+ 'rubygems_mfa_required' => 'true'
19
+ }
16
20
 
17
21
  # Specify which files should be added to the gem when it is released.
18
22
  # The `git ls-files -z` loads the files in the RubyGem that have been added
19
23
  # into git.
20
- spec.files = Dir.chdir(File.expand_path(__dir__)) do
24
+ spec.files = Dir.chdir(File.expand_path(__dir__)) do
21
25
  `git ls-files -z`.split("\x0").reject do |f|
22
26
  f.match(%r{^(test|spec|features)/})
23
27
  end
@@ -38,3 +42,4 @@ Gem::Specification.new do |spec|
38
42
  spec.add_development_dependency 'simplecov', '~> 0.21.2'
39
43
  spec.add_development_dependency 'yard', '~> 0.9.26'
40
44
  end
45
+ # rubocop:enable Metrics/BlockLength
@@ -100,15 +100,14 @@ module GraphQL
100
100
  end
101
101
 
102
102
  def resolved_type_attributes
103
- @resolved_type_attributes ||= begin
104
- if type_attributes.unresolved_type?
105
- if type.respond_to?(:resolve_type)
106
- GraphQL::Decorate::TypeAttributes.new(type.resolve_type(value, graphql_context))
107
- else
108
- graphql_context.schema.resolve_type(type, value, graphql_context)
109
- end
110
- end
111
- end
103
+ @resolved_type_attributes ||= if type_attributes.unresolved_type?
104
+ if type.respond_to?(:resolve_type)
105
+ GraphQL::Decorate::TypeAttributes.new(type.resolve_type(value,
106
+ graphql_context))
107
+ else
108
+ graphql_context.schema.resolve_type(type, value, graphql_context)
109
+ end
110
+ end
112
111
  end
113
112
  end
114
113
  end
@@ -3,6 +3,6 @@
3
3
  module GraphQL
4
4
  module Decorate
5
5
  # Current version number
6
- VERSION = '1.0.1'
6
+ VERSION = '1.0.2'
7
7
  end
8
8
  end
@@ -35,7 +35,7 @@ module GraphQL
35
35
  # @param schema_defn [GraphQL::Schema] Current schema class
36
36
  # @return [nil]
37
37
  def self.use(schema_defn)
38
- schema_defn.to_graphql.types.each do |_name, type|
38
+ schema_defn.types.each do |_name, type|
39
39
  next unless type.respond_to?(:fields)
40
40
 
41
41
  type.fields.each do |_name, field|
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: graphql-decorate
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ben Brook
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-03-19 00:00:00.000000000 Z
11
+ date: 2022-04-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: graphql
@@ -159,7 +159,8 @@ files:
159
159
  homepage: https://www.github.com/TrueCar/graphql-decorate
160
160
  licenses:
161
161
  - MIT
162
- metadata: {}
162
+ metadata:
163
+ rubygems_mfa_required: 'true'
163
164
  post_install_message:
164
165
  rdoc_options: []
165
166
  require_paths:
@@ -175,7 +176,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
175
176
  - !ruby/object:Gem::Version
176
177
  version: '0'
177
178
  requirements: []
178
- rubygems_version: 3.0.3
179
+ rubygems_version: 3.0.3.1
179
180
  signing_key:
180
181
  specification_version: 4
181
182
  summary: A decorator integration for the GraphQL gem