Sha256: 1bd021d9b139756125d3ddfdb6c58ded57f6f85ac3eba870ba3fcfad997fd1b3

Contents?: true

Size: 522 Bytes

Versions: 29

Compression:

Stored size: 522 Bytes

Contents

# frozen_string_literal: true

module Shimmer
  module Auth
    module User
      extend ActiveSupport::Concern

      included do
        def authenticate!(user_agent: nil, ip: nil)
          Provider.new(self.class).create_device(user: self, user_agent: user_agent, ip: ip)
        end
      end

      class_methods do
        def login!(provider:, **attributes)
          "Shimmer::Auth::#{provider.to_s.classify}Provider".constantize
            .new(self).login(**attributes)
        end
      end
    end
  end
end

Version data entries

29 entries across 29 versions & 1 rubygems

Version Path
shimmer-0.0.41 lib/shimmer/auth/user.rb
shimmer-0.0.40 lib/shimmer/auth/user.rb
shimmer-0.0.39 lib/shimmer/auth/user.rb
shimmer-0.0.38 lib/shimmer/auth/user.rb
shimmer-0.0.37 lib/shimmer/auth/user.rb
shimmer-0.0.36 lib/shimmer/auth/user.rb
shimmer-0.0.35 lib/shimmer/auth/user.rb
shimmer-0.0.34 lib/shimmer/auth/user.rb
shimmer-0.0.33 lib/shimmer/auth/user.rb
shimmer-0.0.32 lib/shimmer/auth/user.rb
shimmer-0.0.31 lib/shimmer/auth/user.rb
shimmer-0.0.30 lib/shimmer/auth/user.rb
shimmer-0.0.29 lib/shimmer/auth/user.rb
shimmer-0.0.28 lib/shimmer/auth/user.rb
shimmer-0.0.27 lib/shimmer/auth/user.rb
shimmer-0.0.26 lib/shimmer/auth/user.rb
shimmer-0.0.25 lib/shimmer/auth/user.rb
shimmer-0.0.24 lib/shimmer/auth/user.rb
shimmer-0.0.23 lib/shimmer/auth/user.rb
shimmer-0.0.22 lib/shimmer/auth/user.rb