21 lines
696 B
Ruby
21 lines
696 B
Ruby
# frozen_string_literal: true
|
|
|
|
module Gitlab
|
|
module Graphql
|
|
module CopyFieldDescription
|
|
extend ActiveSupport::Concern
|
|
|
|
class_methods do
|
|
# Returns the `description` for property of field `field_name` on type.
|
|
# This can be used to ensure, for example, that mutation argument descriptions
|
|
# are always identical to the corresponding query field descriptions.
|
|
#
|
|
# E.g.:
|
|
# argument :name, GraphQL::STRING_TYPE, description: copy_field_description(Types::UserType, :name)
|
|
def copy_field_description(type, field_name)
|
|
type.fields[field_name.to_s.camelize(:lower)].description
|
|
end
|
|
end
|
|
end
|
|
end
|
|
end
|