rails-graphql 1.0.0.beta → 1.0.0.rc2
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/ext/gql_parser.c +1 -16
- data/ext/gql_parser.h +21 -0
- data/ext/shared.c +0 -5
- data/ext/shared.h +6 -6
- data/lib/generators/graphql/channel_generator.rb +27 -0
- data/lib/generators/graphql/controller_generator.rb +9 -4
- data/lib/generators/graphql/install_generator.rb +49 -0
- data/lib/generators/graphql/schema_generator.rb +9 -4
- data/lib/generators/graphql/templates/channel.erb +7 -0
- data/lib/generators/graphql/templates/config.rb +97 -0
- data/lib/generators/graphql/templates/controller.erb +2 -0
- data/lib/generators/graphql/templates/schema.erb +5 -3
- data/lib/gql_parser.so +0 -0
- data/lib/rails/graphql/alternative/field_set.rb +12 -0
- data/lib/rails/graphql/alternative/query.rb +13 -8
- data/lib/rails/graphql/alternative/subscription.rb +2 -1
- data/lib/rails/graphql/alternative.rb +4 -0
- data/lib/rails/graphql/argument.rb +5 -3
- data/lib/rails/graphql/callback.rb +10 -8
- data/lib/rails/graphql/collectors/hash_collector.rb +12 -1
- data/lib/rails/graphql/collectors/json_collector.rb +21 -0
- data/lib/rails/graphql/config.rb +86 -59
- data/lib/rails/graphql/directive/include_directive.rb +0 -1
- data/lib/rails/graphql/directive/skip_directive.rb +0 -1
- data/lib/rails/graphql/directive/specified_by_directive.rb +24 -0
- data/lib/rails/graphql/directive.rb +31 -25
- data/lib/rails/graphql/event.rb +7 -6
- data/lib/rails/graphql/field/authorized_field.rb +0 -5
- data/lib/rails/graphql/field/input_field.rb +0 -5
- data/lib/rails/graphql/field/mutation_field.rb +5 -6
- data/lib/rails/graphql/field/output_field.rb +13 -2
- data/lib/rails/graphql/field/proxied_field.rb +6 -6
- data/lib/rails/graphql/field/resolved_field.rb +1 -1
- data/lib/rails/graphql/field/subscription_field.rb +35 -52
- data/lib/rails/graphql/field/typed_field.rb +26 -2
- data/lib/rails/graphql/field.rb +20 -19
- data/lib/rails/graphql/global_id.rb +5 -1
- data/lib/rails/graphql/helpers/inherited_collection/array.rb +1 -0
- data/lib/rails/graphql/helpers/inherited_collection/base.rb +3 -1
- data/lib/rails/graphql/helpers/inherited_collection/hash.rb +2 -1
- data/lib/rails/graphql/helpers/registerable.rb +1 -1
- data/lib/rails/graphql/helpers/with_arguments.rb +3 -2
- data/lib/rails/graphql/helpers/with_assignment.rb +5 -5
- data/lib/rails/graphql/helpers/with_callbacks.rb +3 -3
- data/lib/rails/graphql/helpers/with_description.rb +10 -8
- data/lib/rails/graphql/helpers/with_directives.rb +5 -1
- data/lib/rails/graphql/helpers/with_events.rb +1 -0
- data/lib/rails/graphql/helpers/with_fields.rb +30 -24
- data/lib/rails/graphql/helpers/with_name.rb +3 -2
- data/lib/rails/graphql/helpers/with_schema_fields.rb +75 -51
- data/lib/rails/graphql/introspection.rb +1 -1
- data/lib/rails/graphql/railtie.rb +3 -2
- data/lib/rails/graphql/railties/app/base_channel.rb +10 -0
- data/lib/rails/graphql/railties/app/base_controller.rb +12 -0
- data/lib/rails/graphql/railties/app/views/_cable.js.erb +56 -0
- data/lib/rails/graphql/railties/app/views/_fetch.js.erb +20 -0
- data/lib/rails/graphql/railties/app/views/graphiql.html.erb +101 -0
- data/lib/rails/graphql/railties/base_generator.rb +3 -9
- data/lib/rails/graphql/railties/channel.rb +8 -8
- data/lib/rails/graphql/railties/controller.rb +51 -26
- data/lib/rails/graphql/request/arguments.rb +2 -1
- data/lib/rails/graphql/request/backtrace.rb +31 -10
- data/lib/rails/graphql/request/component/field.rb +15 -8
- data/lib/rails/graphql/request/component/fragment.rb +13 -7
- data/lib/rails/graphql/request/component/operation/subscription.rb +4 -6
- data/lib/rails/graphql/request/component/operation.rb +12 -5
- data/lib/rails/graphql/request/component/spread.rb +13 -4
- data/lib/rails/graphql/request/component/typename.rb +1 -1
- data/lib/rails/graphql/request/component.rb +2 -0
- data/lib/rails/graphql/request/context.rb +1 -1
- data/lib/rails/graphql/request/event.rb +6 -2
- data/lib/rails/graphql/request/helpers/directives.rb +1 -0
- data/lib/rails/graphql/request/helpers/selection_set.rb +10 -4
- data/lib/rails/graphql/request/helpers/value_writers.rb +8 -5
- data/lib/rails/graphql/request/prepared_data.rb +3 -1
- data/lib/rails/graphql/request/steps/organizable.rb +1 -1
- data/lib/rails/graphql/request/steps/preparable.rb +1 -1
- data/lib/rails/graphql/request/steps/resolvable.rb +1 -1
- data/lib/rails/graphql/request/strategy/sequenced_strategy.rb +3 -3
- data/lib/rails/graphql/request/strategy.rb +18 -4
- data/lib/rails/graphql/request/subscription.rb +18 -16
- data/lib/rails/graphql/request.rb +71 -41
- data/lib/rails/graphql/schema.rb +39 -86
- data/lib/rails/graphql/shortcuts.rb +11 -5
- data/lib/rails/graphql/source/active_record/builders.rb +22 -24
- data/lib/rails/graphql/source/active_record_source.rb +96 -34
- data/lib/rails/graphql/source/base.rb +13 -40
- data/lib/rails/graphql/source/builder.rb +14 -22
- data/lib/rails/graphql/source/scoped_arguments.rb +10 -4
- data/lib/rails/graphql/source.rb +31 -38
- data/lib/rails/graphql/subscription/provider/action_cable.rb +10 -9
- data/lib/rails/graphql/subscription/provider/base.rb +6 -5
- data/lib/rails/graphql/subscription/store/base.rb +5 -9
- data/lib/rails/graphql/subscription/store/memory.rb +18 -9
- data/lib/rails/graphql/type/creator.rb +198 -0
- data/lib/rails/graphql/type/enum.rb +17 -9
- data/lib/rails/graphql/type/input.rb +30 -7
- data/lib/rails/graphql/type/interface.rb +15 -4
- data/lib/rails/graphql/type/object/directive_object.rb +6 -5
- data/lib/rails/graphql/type/object/input_value_object.rb +3 -4
- data/lib/rails/graphql/type/object/type_object.rb +40 -13
- data/lib/rails/graphql/type/object.rb +11 -6
- data/lib/rails/graphql/type/scalar/binary_scalar.rb +2 -0
- data/lib/rails/graphql/type/scalar/date_scalar.rb +2 -0
- data/lib/rails/graphql/type/scalar/date_time_scalar.rb +2 -0
- data/lib/rails/graphql/type/scalar/decimal_scalar.rb +2 -0
- data/lib/rails/graphql/type/scalar/json_scalar.rb +3 -1
- data/lib/rails/graphql/type/scalar/time_scalar.rb +3 -1
- data/lib/rails/graphql/type/scalar.rb +2 -2
- data/lib/rails/graphql/type/union.rb +7 -2
- data/lib/rails/graphql/type.rb +10 -2
- data/lib/rails/graphql/type_map.rb +20 -7
- data/lib/rails/graphql/uri.rb +5 -4
- data/lib/rails/graphql/version.rb +6 -2
- data/lib/rails/graphql.rb +11 -8
- data/test/assets/introspection-mem.txt +1 -1
- data/test/assets/introspection.gql +2 -0
- data/test/assets/mem.gql +74 -60
- data/test/assets/mysql.gql +69 -55
- data/test/assets/sqlite.gql +78 -64
- data/test/assets/translate.gql +50 -39
- data/test/config.rb +2 -1
- data/test/graphql/schema_test.rb +2 -31
- data/test/graphql/source_test.rb +1 -11
- data/test/graphql/type/interface_test.rb +8 -5
- data/test/graphql/type/object_test.rb +8 -2
- data/test/graphql/type_map_test.rb +13 -16
- data/test/integration/global_id_test.rb +4 -4
- data/test/integration/memory/star_wars_validation_test.rb +2 -2
- data/test/integration/mysql/star_wars_introspection_test.rb +1 -1
- data/test/integration/resolver_precedence_test.rb +1 -1
- data/test/integration/schemas/memory.rb +3 -4
- data/test/integration/sqlite/star_wars_global_id_test.rb +27 -21
- data/test/integration/sqlite/star_wars_introspection_test.rb +1 -1
- data/test/integration/translate_test.rb +26 -14
- metadata +22 -9
data/test/assets/mem.gql
CHANGED
@@ -128,14 +128,14 @@ interface Character {
|
|
128
128
|
"The id of the character"
|
129
129
|
id: ID!
|
130
130
|
|
131
|
-
"
|
132
|
-
|
131
|
+
"Which movies they appear in"
|
132
|
+
appearsIn: [Episode]
|
133
133
|
|
134
134
|
"The friends of the character, or an empty list if they have none"
|
135
135
|
friends: [Character]
|
136
136
|
|
137
|
-
"
|
138
|
-
|
137
|
+
"The name of the character"
|
138
|
+
name: String
|
139
139
|
|
140
140
|
"All secrets about their past"
|
141
141
|
secretBackstory: String
|
@@ -147,20 +147,20 @@ type Droid implements Character {
|
|
147
147
|
"The id of the droid"
|
148
148
|
id: ID!
|
149
149
|
|
150
|
-
"
|
151
|
-
|
150
|
+
"Which movies they appear in"
|
151
|
+
appearsIn: [Episode]
|
152
152
|
|
153
153
|
"The friends of the droid, or an empty list if they have none"
|
154
154
|
friends: [Character]
|
155
155
|
|
156
|
-
"
|
157
|
-
|
158
|
-
|
159
|
-
"Construction date and the name of the designer"
|
160
|
-
secretBackstory: String
|
156
|
+
"The name of the droid"
|
157
|
+
name: String
|
161
158
|
|
162
159
|
"The primary function of the droid"
|
163
160
|
primaryFunction: String
|
161
|
+
|
162
|
+
"Construction date and the name of the designer"
|
163
|
+
secretBackstory: String
|
164
164
|
}
|
165
165
|
|
166
166
|
"A humanoid creature in the Star Wars universe"
|
@@ -169,23 +169,23 @@ type Human implements Character {
|
|
169
169
|
"The id of the human"
|
170
170
|
id: ID!
|
171
171
|
|
172
|
-
"
|
173
|
-
|
172
|
+
"Which movies they appear in"
|
173
|
+
appearsIn: [Episode]
|
174
174
|
|
175
175
|
"The friends of the human, or an empty list if they have none"
|
176
176
|
friends: [Character]
|
177
177
|
|
178
|
-
"
|
179
|
-
|
180
|
-
|
181
|
-
"Where are they from and how they came to be who they are"
|
182
|
-
secretBackstory: String
|
178
|
+
"A greeting phrase from this person to someone"
|
179
|
+
greeting(name: String!): String
|
183
180
|
|
184
181
|
"The home planet of the human, or null if unknown"
|
185
182
|
homePlanet: String
|
186
183
|
|
187
|
-
"
|
188
|
-
|
184
|
+
"The name of the human"
|
185
|
+
name: String
|
186
|
+
|
187
|
+
"Where are they from and how they came to be who they are"
|
188
|
+
secretBackstory: String
|
189
189
|
}
|
190
190
|
|
191
191
|
type _Mutation {
|
@@ -204,6 +204,14 @@ type _Query {
|
|
204
204
|
|
205
205
|
__type(name: String!): __Type
|
206
206
|
|
207
|
+
"Find a droid character"
|
208
|
+
droid(
|
209
|
+
|
210
|
+
"ID of the droid"
|
211
|
+
id: ID!
|
212
|
+
|
213
|
+
): Droid
|
214
|
+
|
207
215
|
"Find the hero of the whole saga"
|
208
216
|
hero(
|
209
217
|
|
@@ -219,14 +227,6 @@ type _Query {
|
|
219
227
|
id: ID!
|
220
228
|
|
221
229
|
): Human
|
222
|
-
|
223
|
-
"Find a droid character"
|
224
|
-
droid(
|
225
|
-
|
226
|
-
"ID of the droid"
|
227
|
-
id: ID!
|
228
|
-
|
229
|
-
): Droid
|
230
230
|
}
|
231
231
|
|
232
232
|
"""
|
@@ -240,13 +240,15 @@ additional information to the executor.
|
|
240
240
|
"""
|
241
241
|
# Assigned to Rails::GraphQL::Directive class
|
242
242
|
type __Directive {
|
243
|
-
|
243
|
+
args: [__InputValue!]!
|
244
244
|
|
245
245
|
description: String
|
246
246
|
|
247
|
+
isRepeatable: Boolean!
|
248
|
+
|
247
249
|
locations: [__DirectiveLocation!]!
|
248
250
|
|
249
|
-
|
251
|
+
name: String!
|
250
252
|
}
|
251
253
|
|
252
254
|
"""
|
@@ -255,13 +257,13 @@ of values. It's a string representation, not a numeric representation,
|
|
255
257
|
of a value kept as all caps (ie. ONE_VALUE).
|
256
258
|
"""
|
257
259
|
type __EnumValue {
|
258
|
-
|
260
|
+
deprecationReason: String
|
259
261
|
|
260
262
|
description: String
|
261
263
|
|
262
264
|
isDeprecated: Boolean!
|
263
265
|
|
264
|
-
|
266
|
+
name: String!
|
265
267
|
}
|
266
268
|
|
267
269
|
"""
|
@@ -271,34 +273,33 @@ a value of a specific type.
|
|
271
273
|
"""
|
272
274
|
# Assigned to Rails::GraphQL::Field class
|
273
275
|
type __Field {
|
274
|
-
name: String!
|
275
|
-
|
276
|
-
description: String
|
277
|
-
|
278
276
|
args: [__InputValue!]!
|
279
277
|
|
280
|
-
|
278
|
+
deprecationReason: String
|
279
|
+
|
280
|
+
description: String
|
281
281
|
|
282
282
|
isDeprecated: Boolean!
|
283
283
|
|
284
|
-
|
284
|
+
name: String!
|
285
|
+
|
286
|
+
type: __Type!
|
285
287
|
}
|
286
288
|
|
287
289
|
"""
|
288
|
-
|
289
|
-
|
290
|
-
|
291
|
-
a single value.
|
290
|
+
Arguments provided to Fields or Directives and the input fields of an
|
291
|
+
InputObject are represented as Input Values which describe their type
|
292
|
+
and optionally a default value.
|
292
293
|
"""
|
293
294
|
# Assigned to Rails::GraphQL::Field::InputField class
|
294
295
|
type __InputValue {
|
295
|
-
|
296
|
+
defaultValue: String
|
296
297
|
|
297
298
|
description: String
|
298
299
|
|
299
|
-
|
300
|
+
name: String!
|
300
301
|
|
301
|
-
|
302
|
+
type: __Type!
|
302
303
|
}
|
303
304
|
|
304
305
|
"""
|
@@ -310,15 +311,15 @@ determines the place in the type system where those operations begin.
|
|
310
311
|
"""
|
311
312
|
# Assigned to Rails::GraphQL::Schema class
|
312
313
|
type __Schema {
|
313
|
-
|
314
|
-
|
315
|
-
queryType: __Type!
|
314
|
+
directives: [__Directive!]!
|
316
315
|
|
317
316
|
mutationType: __Type
|
318
317
|
|
318
|
+
queryType: __Type!
|
319
|
+
|
319
320
|
subscriptionType: __Type
|
320
321
|
|
321
|
-
|
322
|
+
types: [__Type!]!
|
322
323
|
}
|
323
324
|
|
324
325
|
"""
|
@@ -344,29 +345,31 @@ the schema to define exactly what data is expected.
|
|
344
345
|
"""
|
345
346
|
# Assigned to Rails::GraphQL::Type class
|
346
347
|
type __Type {
|
347
|
-
kind: __TypeKind!
|
348
|
-
|
349
|
-
name: String
|
350
|
-
|
351
348
|
description: String
|
352
349
|
|
350
|
+
"ENUM only"
|
351
|
+
enumValues(includeDeprecated: Boolean = false): [__EnumValue!]
|
352
|
+
|
353
353
|
"OBJECT and INTERFACE only"
|
354
354
|
fields(includeDeprecated: Boolean = false): [__Field!]
|
355
355
|
|
356
|
+
"INPUT_OBJECT only"
|
357
|
+
inputFields: [__InputValue!]
|
358
|
+
|
356
359
|
"OBJECT only"
|
357
360
|
interfaces: [__Type!]
|
358
361
|
|
359
|
-
|
360
|
-
possibleTypes: [__Type!]
|
361
|
-
|
362
|
-
"ENUM only"
|
363
|
-
enumValues(includeDeprecated: Boolean = false): [__EnumValue!]
|
362
|
+
kind: __TypeKind!
|
364
363
|
|
365
|
-
|
366
|
-
inputFields: [__InputValue!]
|
364
|
+
name: String
|
367
365
|
|
368
366
|
"NON_NULL and LIST only"
|
369
367
|
ofType: __Type
|
368
|
+
|
369
|
+
"INTERFACE and UNION only"
|
370
|
+
possibleTypes: [__Type!]
|
371
|
+
|
372
|
+
specifiedByURL: String
|
370
373
|
}
|
371
374
|
|
372
375
|
"""
|
@@ -399,3 +402,14 @@ directive @skip(
|
|
399
402
|
if: Boolean!
|
400
403
|
|
401
404
|
) on FIELD | FRAGMENT_SPREAD | INLINE_FRAGMENT
|
405
|
+
|
406
|
+
"""
|
407
|
+
A built-in directive used within the type system definition language to provide
|
408
|
+
a scalar specification URL for specifying the behavior of custom scalar types.
|
409
|
+
"""
|
410
|
+
directive @specifiedBy(
|
411
|
+
|
412
|
+
"Point to a human-readable specification of the data format."
|
413
|
+
url: String!
|
414
|
+
|
415
|
+
) on SCALAR
|
data/test/assets/mysql.gql
CHANGED
@@ -16,22 +16,22 @@ scalar Bigint
|
|
16
16
|
The Binary scalar type represents a Base64 string.
|
17
17
|
Normally used to share files and uploads.
|
18
18
|
"""
|
19
|
-
scalar Binary
|
19
|
+
scalar Binary @specifiedBy(url: "https://www.rfc-editor.org/rfc/rfc3548")
|
20
20
|
|
21
21
|
"The Boolean scalar type represents true or false."
|
22
22
|
scalar Boolean
|
23
23
|
|
24
24
|
"The Date scalar type represents a ISO 8601 string value."
|
25
|
-
scalar Date
|
25
|
+
scalar Date @specifiedBy(url: "https://en.wikipedia.org/wiki/ISO_8601")
|
26
26
|
|
27
27
|
"The DateTime scalar type represents a ISO 8601 string value."
|
28
|
-
scalar DateTime
|
28
|
+
scalar DateTime @specifiedBy(url: "https://en.wikipedia.org/wiki/ISO_8601")
|
29
29
|
|
30
30
|
"""
|
31
31
|
The Decimal scalar type represents signed fractional values with extra precision.
|
32
32
|
The values are exchange as string.
|
33
33
|
"""
|
34
|
-
scalar Decimal
|
34
|
+
scalar Decimal @specifiedBy(url: "https://en.wikipedia.org/wiki/IEEE_754-2008_revision")
|
35
35
|
|
36
36
|
"The Float scalar type represents signed double-precision fractional values."
|
37
37
|
scalar Float
|
@@ -47,9 +47,9 @@ scalar Int
|
|
47
47
|
|
48
48
|
"""
|
49
49
|
The JSON scalar type represents an unstructured JSON data
|
50
|
-
with all its available
|
50
|
+
with all its available keys and values.
|
51
51
|
"""
|
52
|
-
scalar JSON
|
52
|
+
scalar JSON @specifiedBy(url: "https://www.rfc-editor.org/rfc/rfc8259")
|
53
53
|
|
54
54
|
"""
|
55
55
|
The String scalar type represents textual data, represented as UTF-8 character
|
@@ -59,9 +59,9 @@ scalar String
|
|
59
59
|
|
60
60
|
"""
|
61
61
|
The Time scalar type that represents a distance in time using hours,
|
62
|
-
minutes, seconds, and
|
62
|
+
minutes, seconds, and milliseconds.
|
63
63
|
"""
|
64
|
-
scalar Time
|
64
|
+
scalar Time @specifiedBy(url: "https://en.wikipedia.org/wiki/ISO_8601")
|
65
65
|
|
66
66
|
"The valid locations that a directive may be placed."
|
67
67
|
enum __DirectiveLocation {
|
@@ -154,56 +154,56 @@ enum __TypeKind {
|
|
154
154
|
input JediInput {
|
155
155
|
id: ID
|
156
156
|
|
157
|
+
_delete: Boolean = false
|
158
|
+
|
157
159
|
jediTypeId: ID
|
158
160
|
|
159
161
|
name: String
|
160
|
-
|
161
|
-
_delete: Boolean = false
|
162
162
|
}
|
163
163
|
|
164
164
|
# Assigned to JediType class
|
165
165
|
input JediTypeInput {
|
166
166
|
id: ID
|
167
167
|
|
168
|
-
name: String
|
169
|
-
|
170
168
|
_delete: Boolean = false
|
171
169
|
|
172
170
|
jediAttributes: [JediInput!]
|
171
|
+
|
172
|
+
name: String
|
173
173
|
}
|
174
174
|
|
175
175
|
# Assigned to Jedi class
|
176
176
|
type Jedi {
|
177
177
|
id: ID!
|
178
178
|
|
179
|
+
jediType: JediType
|
180
|
+
|
179
181
|
jediTypeId: ID
|
180
182
|
|
181
183
|
name: String
|
182
|
-
|
183
|
-
jediType: JediType
|
184
184
|
}
|
185
185
|
|
186
186
|
# Assigned to JediType class
|
187
187
|
type JediType {
|
188
188
|
id: ID!
|
189
189
|
|
190
|
-
name: String
|
191
|
-
|
192
190
|
jedi: [Jedi!]!
|
191
|
+
|
192
|
+
name: String
|
193
193
|
}
|
194
194
|
|
195
195
|
type _Mutation {
|
196
|
+
createJedi(jedi: JediInput!): Jedi!
|
197
|
+
|
196
198
|
createJediType(jediType: JediTypeInput!): JediType!
|
197
199
|
|
198
|
-
|
200
|
+
deleteJedi(id: ID!): Boolean!
|
199
201
|
|
200
202
|
deleteJediType(id: ID!): Boolean!
|
201
203
|
|
202
|
-
createJedi(jedi: JediInput!): Jedi!
|
203
|
-
|
204
204
|
updateJedi(id: ID!, jedi: JediInput!): Jedi!
|
205
205
|
|
206
|
-
|
206
|
+
updateJediType(id: ID!, jediType: JediTypeInput!): JediType!
|
207
207
|
}
|
208
208
|
|
209
209
|
type _Query {
|
@@ -211,13 +211,13 @@ type _Query {
|
|
211
211
|
|
212
212
|
__type(name: String!): __Type
|
213
213
|
|
214
|
-
|
214
|
+
jedi(id: ID!): Jedi!
|
215
215
|
|
216
216
|
jediType(id: ID!): JediType!
|
217
217
|
|
218
|
-
|
218
|
+
jediTypes(order: String): [JediType!]!
|
219
219
|
|
220
|
-
|
220
|
+
jedis: [Jedi!]!
|
221
221
|
}
|
222
222
|
|
223
223
|
"""
|
@@ -231,13 +231,15 @@ additional information to the executor.
|
|
231
231
|
"""
|
232
232
|
# Assigned to Rails::GraphQL::Directive class
|
233
233
|
type __Directive {
|
234
|
-
|
234
|
+
args: [__InputValue!]!
|
235
235
|
|
236
236
|
description: String
|
237
237
|
|
238
|
+
isRepeatable: Boolean!
|
239
|
+
|
238
240
|
locations: [__DirectiveLocation!]!
|
239
241
|
|
240
|
-
|
242
|
+
name: String!
|
241
243
|
}
|
242
244
|
|
243
245
|
"""
|
@@ -246,13 +248,13 @@ of values. It's a string representation, not a numeric representation,
|
|
246
248
|
of a value kept as all caps (ie. ONE_VALUE).
|
247
249
|
"""
|
248
250
|
type __EnumValue {
|
249
|
-
|
251
|
+
deprecationReason: String
|
250
252
|
|
251
253
|
description: String
|
252
254
|
|
253
255
|
isDeprecated: Boolean!
|
254
256
|
|
255
|
-
|
257
|
+
name: String!
|
256
258
|
}
|
257
259
|
|
258
260
|
"""
|
@@ -262,34 +264,33 @@ a value of a specific type.
|
|
262
264
|
"""
|
263
265
|
# Assigned to Rails::GraphQL::Field class
|
264
266
|
type __Field {
|
265
|
-
name: String!
|
266
|
-
|
267
|
-
description: String
|
268
|
-
|
269
267
|
args: [__InputValue!]!
|
270
268
|
|
271
|
-
|
269
|
+
deprecationReason: String
|
270
|
+
|
271
|
+
description: String
|
272
272
|
|
273
273
|
isDeprecated: Boolean!
|
274
274
|
|
275
|
-
|
275
|
+
name: String!
|
276
|
+
|
277
|
+
type: __Type!
|
276
278
|
}
|
277
279
|
|
278
280
|
"""
|
279
|
-
|
280
|
-
|
281
|
-
|
282
|
-
a single value.
|
281
|
+
Arguments provided to Fields or Directives and the input fields of an
|
282
|
+
InputObject are represented as Input Values which describe their type
|
283
|
+
and optionally a default value.
|
283
284
|
"""
|
284
285
|
# Assigned to Rails::GraphQL::Field::InputField class
|
285
286
|
type __InputValue {
|
286
|
-
|
287
|
+
defaultValue: String
|
287
288
|
|
288
289
|
description: String
|
289
290
|
|
290
|
-
|
291
|
+
name: String!
|
291
292
|
|
292
|
-
|
293
|
+
type: __Type!
|
293
294
|
}
|
294
295
|
|
295
296
|
"""
|
@@ -301,15 +302,15 @@ determines the place in the type system where those operations begin.
|
|
301
302
|
"""
|
302
303
|
# Assigned to Rails::GraphQL::Schema class
|
303
304
|
type __Schema {
|
304
|
-
|
305
|
-
|
306
|
-
queryType: __Type!
|
305
|
+
directives: [__Directive!]!
|
307
306
|
|
308
307
|
mutationType: __Type
|
309
308
|
|
309
|
+
queryType: __Type!
|
310
|
+
|
310
311
|
subscriptionType: __Type
|
311
312
|
|
312
|
-
|
313
|
+
types: [__Type!]!
|
313
314
|
}
|
314
315
|
|
315
316
|
"""
|
@@ -335,29 +336,31 @@ the schema to define exactly what data is expected.
|
|
335
336
|
"""
|
336
337
|
# Assigned to Rails::GraphQL::Type class
|
337
338
|
type __Type {
|
338
|
-
kind: __TypeKind!
|
339
|
-
|
340
|
-
name: String
|
341
|
-
|
342
339
|
description: String
|
343
340
|
|
341
|
+
"ENUM only"
|
342
|
+
enumValues(includeDeprecated: Boolean = false): [__EnumValue!]
|
343
|
+
|
344
344
|
"OBJECT and INTERFACE only"
|
345
345
|
fields(includeDeprecated: Boolean = false): [__Field!]
|
346
346
|
|
347
|
+
"INPUT_OBJECT only"
|
348
|
+
inputFields: [__InputValue!]
|
349
|
+
|
347
350
|
"OBJECT only"
|
348
351
|
interfaces: [__Type!]
|
349
352
|
|
350
|
-
|
351
|
-
possibleTypes: [__Type!]
|
352
|
-
|
353
|
-
"ENUM only"
|
354
|
-
enumValues(includeDeprecated: Boolean = false): [__EnumValue!]
|
353
|
+
kind: __TypeKind!
|
355
354
|
|
356
|
-
|
357
|
-
inputFields: [__InputValue!]
|
355
|
+
name: String
|
358
356
|
|
359
357
|
"NON_NULL and LIST only"
|
360
358
|
ofType: __Type
|
359
|
+
|
360
|
+
"INTERFACE and UNION only"
|
361
|
+
possibleTypes: [__Type!]
|
362
|
+
|
363
|
+
specifiedByURL: String
|
361
364
|
}
|
362
365
|
|
363
366
|
"""
|
@@ -390,3 +393,14 @@ directive @skip(
|
|
390
393
|
if: Boolean!
|
391
394
|
|
392
395
|
) on FIELD | FRAGMENT_SPREAD | INLINE_FRAGMENT
|
396
|
+
|
397
|
+
"""
|
398
|
+
A built-in directive used within the type system definition language to provide
|
399
|
+
a scalar specification URL for specifying the behavior of custom scalar types.
|
400
|
+
"""
|
401
|
+
directive @specifiedBy(
|
402
|
+
|
403
|
+
"Point to a human-readable specification of the data format."
|
404
|
+
url: String!
|
405
|
+
|
406
|
+
) on SCALAR
|