Class: Osso::GraphQL::Mutations::ConfigureIdentityProvider

Inherits:
BaseMutation
  • Object
show all
Defined in:
lib/osso/graphql/mutations/configure_identity_provider.rb

Instance Method Summary collapse

Methods inherited from BaseMutation

#account_domain, #admin_ready?, #domain_ready?, #field_errors, #internal_ready?, #provider_domain, #ready?, #response_data, #response_error

Instance Method Details

#domain(**args) ⇒ Object



26
27
28
# File 'lib/osso/graphql/mutations/configure_identity_provider.rb', line 26

def domain(**args)
  identity_provider(**args)&.domain
end

#identity_provider(id:, **_args) ⇒ Object



30
31
32
# File 'lib/osso/graphql/mutations/configure_identity_provider.rb', line 30

def identity_provider(id:, **_args)
  @identity_provider ||= Osso::Models::IdentityProvider.find(id)
end

#resolve(**args) ⇒ Object



15
16
17
18
19
20
21
22
23
24
# File 'lib/osso/graphql/mutations/configure_identity_provider.rb', line 15

def resolve(**args)
  provider = identity_provider(**args)

  if provider.update(args)
    Osso::Analytics.capture(email: context[:email], event: self.class.name.demodulize, properties: args)
    return response_data(identity_provider: provider)
  end

  response_error(provider.errors)
end