Class: Groovestack::Auth::GraphQL::VisibleField

Inherits:
Base::GraphQL::Base::Field
  • Object
show all
Defined in:
lib/groovestack/auth/graphql/visible_field.rb

Instance Method Summary collapse

Instance Method Details

#visible?(context) ⇒ Boolean

Returns:

  • (Boolean)


7
8
9
10
11
12
13
14
15
16
17
# File 'lib/groovestack/auth/graphql/visible_field.rb', line 7

def visible?(context)
  return super unless @visibility_permission

  # visibility profile are the visibility levels the
  # current user is authorized for
  visibility_profile = context.schema.visibility_profile_for_context(context).map(&:to_sym)

  return super unless visibility_profile

  super && visibility_profile.include?(@visibility_permission.to_sym)
end