Sha256: 65b80cac926fc499649296e145d77e8cff2c04b31602545aa57917d7955e944d

Contents?: true

Size: 844 Bytes

Versions: 16

Compression:

Stored size: 844 Bytes

Contents

module GraphitiGql
  class Schema
    module Fields
      class Show
        def initialize(registered)
          @registered = registered
        end

        def apply(query)
          field = query.field name,
            @registered[:type],
            null: true,
            extras: [:lookahead]
          unless @registered[:resource].singular
            field.argument(:id, String, required: true)
          end
          _registered = @registered
          query.define_method name do |**arguments|
            params = Util.params_from_args(arguments)
            _registered[:resource].all(params).data[0]
          end
        end

        private

        def name
          @registered[:resource]
            .graphql_entrypoint.to_s
            .underscore
            .singularize.to_sym
        end
      end
    end
  end
end

Version data entries

16 entries across 16 versions & 1 rubygems

Version Path
graphiti_gql-0.2.29 lib/graphiti_gql/schema/fields/show.rb
graphiti_gql-0.2.28 lib/graphiti_gql/schema/fields/show.rb
graphiti_gql-0.2.27 lib/graphiti_gql/schema/fields/show.rb
graphiti_gql-0.2.26 lib/graphiti_gql/schema/fields/show.rb
graphiti_gql-0.2.25 lib/graphiti_gql/schema/fields/show.rb
graphiti_gql-0.2.24 lib/graphiti_gql/schema/fields/show.rb
graphiti_gql-0.2.23 lib/graphiti_gql/schema/fields/show.rb
graphiti_gql-0.2.22 lib/graphiti_gql/schema/fields/show.rb
graphiti_gql-0.2.21 lib/graphiti_gql/schema/fields/show.rb
graphiti_gql-0.2.20 lib/graphiti_gql/schema/fields/show.rb
graphiti_gql-0.2.19 lib/graphiti_gql/schema/fields/show.rb
graphiti_gql-0.2.18 lib/graphiti_gql/schema/fields/show.rb
graphiti_gql-0.2.17 lib/graphiti_gql/schema/fields/show.rb
graphiti_gql-0.2.16 lib/graphiti_gql/schema/fields/show.rb
graphiti_gql-0.2.15 lib/graphiti_gql/schema/fields/show.rb
graphiti_gql-0.2.14 lib/graphiti_gql/schema/fields/show.rb