Class: Quail::Query
- Inherits:
-
GraphQL::Schema::Resolver
- Object
- GraphQL::Schema::Resolver
- Quail::Query
- Defined in:
- lib/quail.rb
Overview
Base resolver class for custom Quail queries with symbol-based type resolution.
Class Method Summary collapse
- .resolve_resource_type(name) ⇒ Object
-
.type(type_arg = nil, null: nil, connection: false) ⇒ Object
Allows symbol-based type references that resolve to resource graphql types.
Class Method Details
.resolve_resource_type(name) ⇒ Object
68 69 70 71 |
# File 'lib/quail.rb', line 68 def self.resolve_resource_type(name) klass = "#{name.to_s.camelize}Resource".constantize klass.graphql_type end |
.type(type_arg = nil, null: nil, connection: false) ⇒ Object
Allows symbol-based type references that resolve to resource graphql types.
type :user, null: true # resolves to UserResource.graphql_type type [:article], null: false # resolves to [ArticleResource.graphql_type] type :subscription, connection: true, null: false # resolves to SubscriptionType.connection_type type Types::SessionType, null: false # pass-through, works as normal
50 51 52 53 |
# File 'lib/quail.rb', line 50 def self.type(type_arg = nil, null: nil, connection: false) resolved = resolve_type_arg(type_arg, connection: connection) super(resolved, null: null) end |