Sha256: e26ef46bff6b1dd52910b5eb39ca5fb9c1e7eb68cfe91b3f042ef42d00649d0c

Contents?: true

Size: 744 Bytes

Versions: 4

Compression:

Stored size: 744 Bytes

Contents

# frozen_string_literal: true

module Osso
  module GraphQL
    module Mutations
      class DeleteOauthClient < BaseMutation
        null false

        argument :id, ID, required: true

        field :oauth_client, Types::OauthClient, null: true
        field :errors, [String], null: false

        def resolve(id:)
          oauth_client = Osso::Models::OauthClient.find(id)

          if oauth_client.destroy
            Osso::Analytics.capture(email: context[:email], event: self.class.name.demodulize, properties: { id: id })
            return response_data(oauth_client: nil)
          end

          response_error(oauth_client.errors)
        end

        def ready?(*)
          admin_ready?
        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
osso-0.1.2 lib/osso/graphql/mutations/delete_oauth_client.rb
osso-0.1.1 lib/osso/graphql/mutations/delete_oauth_client.rb
osso-0.1.0 lib/osso/graphql/mutations/delete_oauth_client.rb
osso-0.0.11 lib/osso/graphql/mutations/delete_oauth_client.rb