Sha256: a77726a02bdee2bba7d1e31b0c81e8b90cad52cd46ee78c51f440fc60fe9e3a6

Contents?: true

Size: 716 Bytes

Versions: 4

Compression:

Stored size: 716 Bytes

Contents

module GraphitiGql
  class Schema
    class Query
      def initialize(resources, existing_query: nil)
        @resources = resources
        @query_class = Class.new(existing_query || Schema.base_object)
        @query_class.graphql_name "Query"
      end

      def build
        define_entrypoints
        @query_class
      end

      private

      def registry
        Registry.instance
      end

      def define_entrypoints
        registry.resource_types.each do |registered|
          if registered[:resource].graphql_entrypoint
            Fields::Index.new(registered).apply(@query_class)
            Fields::Show.new(registered).apply(@query_class)
          end
        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
graphiti_gql-0.2.38 lib/graphiti_gql/schema/query.rb
graphiti_gql-0.2.37 lib/graphiti_gql/schema/query.rb
graphiti_gql-0.2.36 lib/graphiti_gql/schema/query.rb
graphiti_gql-0.2.35 lib/graphiti_gql/schema/query.rb