Class: WebammToRails::Sources::Gemfile::Sets::Authentication
- Inherits:
-
Object
- Object
- WebammToRails::Sources::Gemfile::Sets::Authentication
- Defined in:
- lib/webamm_to_rails/sources/gemfile/sets/authentication.rb
Instance Method Summary collapse
- #collection ⇒ Object
-
#initialize(waml_definition:) ⇒ Authentication
constructor
A new instance of Authentication.
Constructor Details
#initialize(waml_definition:) ⇒ Authentication
Returns a new instance of Authentication.
6 7 8 |
# File 'lib/webamm_to_rails/sources/gemfile/sets/authentication.rb', line 6 def initialize(waml_definition:) @waml_definition = waml_definition end |
Instance Method Details
#collection ⇒ Object
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/webamm_to_rails/sources/gemfile/sets/authentication.rb', line 10 def collection return [] if @waml_definition.authentication.blank? base_collection = [ ::WebammToRails::Sources::Gemfile::Gem.new(name: "devise", version: "4.9.4", required: true, group: :default, platforms: []) ] return base_collection if @waml_definition.authentication.all? { |auth| auth.features.blank? } if @waml_definition.authentication.any? { |auth| auth.features.include?('invitations') } base_collection << ::WebammToRails::Sources::Gemfile::Gem.new(name: "devise_invitable", version: "2.0.9", required: true, group: :default, platforms: []) end if @waml_definition.authentication.any? { |auth| auth.features.include?('two_factor_authentication') } base_collection << ::WebammToRails::Sources::Gemfile::Gem.new(name: "devise-otp", version: "0.7.1", required: true, group: :default, platforms: []) base_collection << ::WebammToRails::Sources::Gemfile::Gem.new(name: "rqrcode", version: "2.2.0", required: true, group: :default, platforms: []) end base_collection end |