Sha256: 8c54a963bd65150764a82c78a99c04e013d20c5b106dcf2c936ff589f47a8186

Contents?: true

Size: 965 Bytes

Versions: 3

Compression:

Stored size: 965 Bytes

Contents

require 'omniauth/infinum_id'
require 'infinum_id/version'
require 'infinum_id/engine'
require 'dry-configurable'
require 'blueprinter'
require 'devise'
require 'http'

module InfinumId
  extend Dry::Configurable

  setting :service_name, reader: true
  setting :resource_name, 'User', reader: true
  setting :infinum_id_send_email, false, reader: true
  setting :send_invite_request, true, reader: true

  setting :resource_attributes,
          [:uid, :email, :first_name, :last_name, :deactivated_at, :employee],
          reader: true

  def self.resource_class
    resource_name.constantize
  end

  def self.url
    dig_secret(:url)
  end

  def self.client_id
    dig_secret(:client_id)
  end

  def self.client_secret
    dig_secret(:client_secret)
  end

  def self.dig_secret(key)
    if Rails::VERSION::MAJOR >= 5
      Rails.application.secrets.dig(:infinum_id, key)
    else
      Rails.application.secrets.dig(:infinum_id, key.to_s)
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
infinum_id-2.1.0 lib/infinum_id.rb
infinum_id-2.0.1 lib/infinum_id.rb
infinum_id-2.0.0 lib/infinum_id.rb