Class: ActionPolicy::GraphQL::AuthorizedField::AuthorizeFieldExtension
- Inherits:
-
Extension
- Object
- GraphQL::Schema::FieldExtension
- Extension
- ActionPolicy::GraphQL::AuthorizedField::AuthorizeFieldExtension
- Defined in:
- lib/action_policy/graphql/authorized_field.rb
Instance Method Summary collapse
Methods inherited from Extension
Instance Method Details
#apply ⇒ Object
95 96 97 98 |
# File 'lib/action_policy/graphql/authorized_field.rb', line 95 def apply @to = extract_option(:to) { underscored_field_name } @raise = extract_option(:raise) { ::ActionPolicy::GraphQL. } end |
#resolve(context:, object:, arguments:, **_rest) ⇒ Object
100 101 102 103 104 105 106 107 |
# File 'lib/action_policy/graphql/authorized_field.rb', line 100 def resolve(context:, object:, arguments:, **_rest) if @raise object. object.object, to: @to, ** yield object, arguments elsif object.allowed_to?(@to, object.object, **) yield object, arguments end end |