module GraphQL::Schema::Directive::Flagged::VisibleByFlag

Public Class Methods

included(schema_class) click to toggle source
# File lib/graphql/schema/directive/flagged.rb, line 41
def self.included(schema_class)
  schema_class.extend(self)
end

Public Instance Methods

visible?(context) click to toggle source
Calls superclass method
# File lib/graphql/schema/directive/flagged.rb, line 45
def visible?(context)
  if dir = self.directives.find { |d| d.is_a?(Flagged) }
    relevant_flags = (f = context[:flags]) && dir.arguments[:by] & f # rubocop:disable Development/ContextIsPassedCop -- definition-related
    relevant_flags && relevant_flags.any? && super
  else
    super
  end
end