rails_guardian 0.1.2 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 99d94ac9a9d42fe8a759312ff02e9aab11897b1608401bab08ace09d06c3b3f2
4
- data.tar.gz: a71ef2751fc62b7788fd3f7fbd2a790d7b84017d470b11040fb9432607c018ef
3
+ metadata.gz: db8e4adc6aee33146a71c000b7b2c0ae250f52440e7a856bf2cf305e44e816be
4
+ data.tar.gz: 1b453a078ab82f0887aeb422ab95475c53b3de0c891643b3585a8ef834b7f5f8
5
5
  SHA512:
6
- metadata.gz: f6f660cbd1d122000b383577c532c4f517ea47e05add0f95131474d2de107f26acb686d50f8bfd4fa65f3c0cd215e321198aef238f64410dc8f3e306d10d1f67
7
- data.tar.gz: 1f77002e36da9dfd9b3ab4be7ccd27f49f90ddd7e88b15a014d00c542b2a6e9a659b50eac93a323282ccd0d7a8d1880f34d6ab222fcec80d2cd019b025c5368c
6
+ metadata.gz: ffc3fab14ce71138e2c5991a150a00076342bb2f6d1f680b9af751df2ddc4f04d2ac9b7df2a7f308713620fdb372f5c07d3c622f8788b3eb6f04808bae902f65
7
+ data.tar.gz: 35a5f80f2ccde9442b3f339a0fb139e7619df9637aee6beb840f0cd5d1552477fadab41f122507e3e1c254116e2d40be885922e00fdbc62a66ebaa7407f9c861
@@ -0,0 +1,13 @@
1
+ # lib/generators/rails_guardian/install/install_generator.rb
2
+ module RailsGuardian
3
+ module Generators
4
+ class InstallGenerator < Rails::Generators::Base
5
+ source_root File.expand_path('templates', __dir__)
6
+
7
+ def copy_initializer
8
+ template 'rails_guardian.rb', 'config/initializers/rails_guardian.rb'
9
+ end
10
+ end
11
+ end
12
+ end
13
+
@@ -0,0 +1,5 @@
1
+ # lib/generators/guardian/install/templates/guardian.rb
2
+ Guardian.setup do |config|
3
+ # Aquí puedes agregar la configuración inicial para tu gema
4
+ end
5
+
@@ -0,0 +1,13 @@
1
+ # lib/generators/rails_guardian/model/model_generator.rb
2
+ module RailsGuardian
3
+ module Generators
4
+ class ModelGenerator < Rails::Generators::NamedBase
5
+ source_root File.expand_path('templates', __dir__)
6
+
7
+ def create_model_file
8
+ template 'model.rb', File.join('app/models', class_path, "#{file_name}.rb")
9
+ end
10
+ end
11
+ end
12
+ end
13
+
@@ -0,0 +1,13 @@
1
+ # lib/generators/rails_guardian/views/views_generator.rb
2
+ module RailsGuardian
3
+ module Generators
4
+ class ViewsGenerator < Rails::Generators::Base
5
+ source_root File.expand_path('templates', __dir__)
6
+
7
+ def copy_views
8
+ directory 'views', 'app/views/users'
9
+ end
10
+ end
11
+ end
12
+ end
13
+
@@ -0,0 +1,17 @@
1
+ # lib/guardian/models/adicional.rb
2
+ module Guardian
3
+ module Models
4
+ module Adicional
5
+ extend ActiveSupport::Concern
6
+
7
+ included do
8
+ # Aquí puedes agregar cualquier lógica que necesites cuando se incluya este módulo
9
+ end
10
+
11
+ module ClassMethods
12
+ # Aquí puedes agregar métodos de clase que sean necesarios para este módulo
13
+ end
14
+ end
15
+ end
16
+ end
17
+
@@ -0,0 +1,28 @@
1
+ # lib/guardian/models/confirmable.rb
2
+ module Guardian
3
+ module Models
4
+ module Confirmable
5
+ extend ActiveSupport::Concern
6
+
7
+ included do
8
+ before_create :generate_confirmation_token
9
+ after_create :send_confirmation_instructions
10
+ end
11
+
12
+ def confirm!
13
+ # Implementa la lógica para confirmar la cuenta del usuario aquí
14
+ end
15
+
16
+ private
17
+
18
+ def generate_confirmation_token
19
+ # Genera un token de confirmación único aquí
20
+ end
21
+
22
+ def send_confirmation_instructions
23
+ # Envía las instrucciones de confirmación por correo electrónico aquí
24
+ end
25
+ end
26
+ end
27
+ end
28
+
@@ -0,0 +1,22 @@
1
+ module RailsGuardian
2
+ module Models
3
+ module DatabaseAuthenticatable
4
+ extend ActiveSupport::Concern
5
+
6
+
7
+ included do
8
+ before_save :encrypt_password
9
+ end
10
+
11
+ def valid_password?(password)
12
+ #Implementa la lógica para encriptar la contraseña aquí
13
+ end
14
+
15
+ private
16
+
17
+ def encrypt_password
18
+ #Implementa la lógica para encriptar la contraseña aquí
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,17 @@
1
+ # lib/guardian/models/lockable.rb
2
+ module Guardian
3
+ module Models
4
+ module Lockable
5
+ extend ActiveSupport::Concern
6
+
7
+ def lock_access!
8
+ # Implementa la lógica para bloquear el acceso del usuario aquí
9
+ end
10
+
11
+ def unlock_access!
12
+ # Implementa la lógica para desbloquear el acceso del usuario aquí
13
+ end
14
+ end
15
+ end
16
+ end
17
+
@@ -0,0 +1,21 @@
1
+ module RailsGuardian
2
+ module Models
3
+ module Omniauthable
4
+ extend ActiveSupport::Concern
5
+
6
+ included do
7
+ #Aquí puedes agregar cualquier lógica que necesites cuando se incluya este módulo
8
+ end
9
+
10
+ module ClassMethods
11
+ def from_omniauth(auth)
12
+ # Aquí es donde manejarías la respuesta de OmniAuth y encontrarías o crearías un usuario basado en los datos de autenticación.
13
+ end
14
+ end
15
+
16
+
17
+ end
18
+
19
+ end
20
+
21
+ end
@@ -0,0 +1,17 @@
1
+ # lib/guardian/models/recoverable.rb
2
+ module Guardian
3
+ module Models
4
+ module Recoverable
5
+ extend ActiveSupport::Concern
6
+
7
+ def reset_password!
8
+ # Implementa la lógica para restablecer la contraseña del usuario aquí
9
+ end
10
+
11
+ def send_reset_password_instructions
12
+ # Envía las instrucciones para restablecer la contraseña por correo electrónico aquí
13
+ end
14
+ end
15
+ end
16
+ end
17
+
@@ -0,0 +1,21 @@
1
+ # lib/guardian/models/registerable.rb
2
+ module Guardian
3
+ module Models
4
+ module Registerable
5
+ extend ActiveSupport::Concern
6
+
7
+ def register
8
+ # Implementa la lógica para registrar un nuevo usuario aquí
9
+ end
10
+
11
+ def update
12
+ # Implementa la lógica para actualizar la cuenta del usuario aquí
13
+ end
14
+
15
+ def destroy
16
+ # Implementa la lógica para eliminar la cuenta del usuario aquí
17
+ end
18
+ end
19
+ end
20
+ end
21
+
@@ -0,0 +1,17 @@
1
+ # lib/guardian/models/rememberable.rb
2
+ module Guardian
3
+ module Models
4
+ module Rememberable
5
+ extend ActiveSupport::Concern
6
+
7
+ def remember_me!
8
+ # Implementa la lógica para recordar al usuario aquí
9
+ end
10
+
11
+ def forget_me!
12
+ # Implementa la lógica para olvidar al usuario aquí
13
+ end
14
+ end
15
+ end
16
+ end
17
+
@@ -0,0 +1,13 @@
1
+ # lib/guardian/models/timeoutable.rb
2
+ module Guardian
3
+ module Models
4
+ module Timeoutable
5
+ extend ActiveSupport::Concern
6
+
7
+ def timedout?(last_access)
8
+ # Implementa la lógica para verificar si la sesión ha expirado aquí
9
+ end
10
+ end
11
+ end
12
+ end
13
+
@@ -0,0 +1,19 @@
1
+ # lib/guardian/models/trackable.rb
2
+ module Guardian
3
+ module Models
4
+ module Trackable
5
+ extend ActiveSupport::Concern
6
+
7
+ included do
8
+ before_save :update_tracked_fields
9
+ end
10
+
11
+ private
12
+
13
+ def update_tracked_fields
14
+ # Implementa la lógica para rastrear los campos relevantes aquí
15
+ end
16
+ end
17
+ end
18
+ end
19
+
@@ -0,0 +1,15 @@
1
+ module RailsGuardian
2
+ module Models
3
+ module Validatable
4
+ extend ActiveSupport::Concern
5
+
6
+ included do
7
+ validates_presence_of :email, message: 'El correo es obligatorio'
8
+ validates_uniqueness_of :email, message: 'Este correo electrónico ya está en uso'
9
+
10
+ #Agrega aquí más validaciones según sea necesario
11
+ end
12
+ end
13
+ end
14
+
15
+ end
@@ -1,3 +1,3 @@
1
1
  module RailsGuardian
2
- VERSION = "0.1.2"
2
+ VERSION = "0.1.3"
3
3
  end
@@ -2,13 +2,26 @@ require "rails_guardian/version"
2
2
  require "rails_guardian/railtie"
3
3
 
4
4
  module RailsGuardian
5
- require 'rails_guardian/engine' if defined?(Rails)
6
5
 
7
- mattr_accessor :model
8
- @@model = 'User'
6
+ require 'rails_guardian/engine' if defined?(Rails)
9
7
 
10
- def self.setup
11
- yield self
12
- end
13
-
8
+ mattr_accessor :model
9
+ @@model = 'User'
10
+
11
+ def self.setup
12
+ yield self
13
+ end
14
+
15
+ def self.included(base)
16
+ base.extend ClassMethods
17
+ end
18
+
19
+ module ClassMethods
20
+ def rails_guardian(*modules)
21
+ modules.each do |mod|
22
+ include "RailsGuardian::Models::#{mod.to_s.camelize}".constantize
23
+ end
24
+ end
25
+ end
26
+
14
27
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails_guardian
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - fabiantorresm
@@ -36,8 +36,23 @@ files:
36
36
  - MIT-LICENSE
37
37
  - README.md
38
38
  - Rakefile
39
+ - lib/lib/generators/rails_guardian/install/install_generator.rb
40
+ - lib/lib/generators/rails_guardian/install/templates/rails_guardian.rb
41
+ - lib/lib/generators/rails_guardian/model/model_generator.rb
42
+ - lib/lib/generators/rails_guardian/views/views_generator.rb
39
43
  - lib/rails_guardian.rb
40
44
  - lib/rails_guardian/engine.rb
45
+ - lib/rails_guardian/models/adicional.rb
46
+ - lib/rails_guardian/models/confirmable.rb
47
+ - lib/rails_guardian/models/database_authenticatable.rb
48
+ - lib/rails_guardian/models/lockable.rb
49
+ - lib/rails_guardian/models/omniauthable.rb
50
+ - lib/rails_guardian/models/recoverable.rb
51
+ - lib/rails_guardian/models/registerable.rb
52
+ - lib/rails_guardian/models/rememberable.rb
53
+ - lib/rails_guardian/models/timeoutable.rb
54
+ - lib/rails_guardian/models/trackable.rb
55
+ - lib/rails_guardian/models/validatable.rb
41
56
  - lib/rails_guardian/railtie.rb
42
57
  - lib/rails_guardian/version.rb
43
58
  - lib/tasks/guardian_tasks.rake