current_session 0.1.2 → 0.1.4

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: bc8d88a50edf84f089619f518ebcb2c0f35c1edbb12f05f346336315d4d644fc
4
- data.tar.gz: fab046b1e5004c9c535bacf964b1c8856e3638b51501e9790fcc450b7e9efa40
3
+ metadata.gz: bc53442f7b800e43a4da8cc2690d72ba5466be6afce2b6d28fed7e3e62de9fea
4
+ data.tar.gz: 46364f6ee395e2e2734cb0784cf700793dafb022963960d7478a5397feac8bd0
5
5
  SHA512:
6
- metadata.gz: 5497b4846b959a83e4cc4307ee5dec9fc543f2d250f734df83792cc02fa7290fa24897fae4bb8f50010bab1c8f5d110a5a4a4c1f60f839f20626b379ac1c53ff
7
- data.tar.gz: e1c9db3b0bbd17629e9d35f7d2c830f3fe31f7330b6114353ccbe9d58836b0c9e9e8e0d006c7e21bc8c349f36d220baa54e01b7baf80e02ecad79e4e521dedc5
6
+ metadata.gz: 95c0d5af5fd5a896d277ccbb5955675ddaa04ee2caf52b41918c1aa1eae6cf0ca15d3c0cf781eddba225b3eef613a377054309347ddb3f1ae3e45b1f2002562f
7
+ data.tar.gz: f8e4b72b8bab60b40af08cf0a7fedcb8cc9613e7aab7a73a8d5d97b4fb7732ccccbd59c8a76890daed5b6382efe9f6e6c9a894fc99db18a9c7a316b99d9ed7b3
data/Gemfile.lock CHANGED
@@ -1,18 +1,18 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- current_session (0.1.0)
5
- activesupport
4
+ current_session (0.1.4)
5
+ activesupport (>= 6.0.0)
6
6
 
7
7
  GEM
8
8
  remote: https://rubygems.org/
9
9
  specs:
10
- activemodel (7.0.3.1)
11
- activesupport (= 7.0.3.1)
12
- activerecord (7.0.3.1)
13
- activemodel (= 7.0.3.1)
14
- activesupport (= 7.0.3.1)
15
- activesupport (7.0.3.1)
10
+ activemodel (7.0.4)
11
+ activesupport (= 7.0.4)
12
+ activerecord (7.0.4)
13
+ activemodel (= 7.0.4)
14
+ activesupport (= 7.0.4)
15
+ activesupport (7.0.4)
16
16
  concurrent-ruby (~> 1.0, >= 1.0.2)
17
17
  i18n (>= 1.6, < 2)
18
18
  minitest (>= 5.1)
@@ -39,12 +39,12 @@ GEM
39
39
  pry (0.14.1)
40
40
  coderay (~> 1.1)
41
41
  method_source (~> 1.0)
42
- rack (2.2.4)
43
- rack-protection (2.2.2)
42
+ rack (3.0.0)
43
+ rack-protection (3.0.1)
44
44
  rack
45
45
  rainbow (3.1.1)
46
46
  rake (13.0.6)
47
- regexp_parser (2.5.0)
47
+ regexp_parser (2.6.0)
48
48
  rexml (3.2.5)
49
49
  rspec (3.11.0)
50
50
  rspec-core (~> 3.11.0)
@@ -52,14 +52,14 @@ GEM
52
52
  rspec-mocks (~> 3.11.0)
53
53
  rspec-core (3.11.0)
54
54
  rspec-support (~> 3.11.0)
55
- rspec-expectations (3.11.0)
55
+ rspec-expectations (3.11.1)
56
56
  diff-lcs (>= 1.2.0, < 2.0)
57
57
  rspec-support (~> 3.11.0)
58
58
  rspec-mocks (3.11.1)
59
59
  diff-lcs (>= 1.2.0, < 2.0)
60
60
  rspec-support (~> 3.11.0)
61
- rspec-support (3.11.0)
62
- rubocop (1.35.1)
61
+ rspec-support (3.11.1)
62
+ rubocop (1.36.0)
63
63
  json (~> 2.3)
64
64
  parallel (~> 1.10)
65
65
  parser (>= 3.1.2.1)
@@ -78,10 +78,10 @@ GEM
78
78
  simplecov_json_formatter (~> 0.1)
79
79
  simplecov-html (0.12.3)
80
80
  simplecov_json_formatter (0.1.4)
81
- sqlite3 (1.4.4)
81
+ sqlite3 (1.5.1-arm64-darwin)
82
82
  tzinfo (2.0.5)
83
83
  concurrent-ruby (~> 1.0)
84
- unicode-display_width (2.2.0)
84
+ unicode-display_width (2.3.0)
85
85
 
86
86
  PLATFORMS
87
87
  arm64-darwin-20
@@ -27,8 +27,7 @@ Gem::Specification.new do |spec|
27
27
  spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
28
28
  spec.require_paths = ["lib"]
29
29
 
30
- # Uncomment to register a new dependency of your gem
31
- spec.add_runtime_dependency "activesupport"
30
+ spec.add_runtime_dependency "activesupport", ">= 6.0.0"
32
31
 
33
32
  # For more information and examples about making a new gem, checkout our
34
33
  # guide at: https://bundler.io/guides/creating_gem.html
@@ -5,11 +5,12 @@ module CurrentSession
5
5
  # Base class for providing auth methods
6
6
  #
7
7
  class Auth
8
- def initialize(request, user_class)
8
+ class_attribute :user_class
9
+
10
+ def initialize(request)
9
11
  @request = request
10
- @user_class = user_class
11
12
  end
12
- attr_reader :request, :user_class
13
+ attr_reader :request
13
14
 
14
15
  def auth
15
16
  request.env["omniauth.auth"]
@@ -10,7 +10,13 @@ module CurrentSession
10
10
  attribute :current_user
11
11
 
12
12
  class << self
13
- attr_accessor :user_class, :session_token_class
13
+ attr_accessor :session_token_class
14
+ attr_reader :user_class
15
+
16
+ def user_class=(user_class)
17
+ @user_class = user_class
18
+ @auth_class.user_class = user_class if @auth_class
19
+ end
14
20
 
15
21
  def current_time(_)
16
22
  Time.current
@@ -21,9 +27,13 @@ module CurrentSession
21
27
  end
22
28
 
23
29
  def session_methods(&block)
24
- session_methods = Module.new(&block)
25
- const_set(:SessionMethods, session_methods)
26
- @session_repository_class = Class.new(CurrentSession::Repository) { include session_methods }
30
+ if block
31
+ session_methods = Module.new(&block)
32
+ @session_repository_class = Class.new(CurrentSession::Repository) { include session_methods }
33
+ @session_methods = session_methods
34
+ else
35
+ @session_methods
36
+ end
27
37
  end
28
38
 
29
39
  def auth_methods=(auth_methods_module)
@@ -31,9 +41,14 @@ module CurrentSession
31
41
  end
32
42
 
33
43
  def auth_methods(&block)
34
- auth_methods = Module.new(&block)
35
- const_set(:AuthMethods, auth_methods)
36
- @auth_class = Class.new(CurrentSession::Auth) { include auth_methods }
44
+ if block
45
+ auth_methods = Module.new(&block)
46
+ @auth_class = Class.new(CurrentSession::Auth) { include auth_methods }
47
+ @auth_class.user_class = user_class
48
+ @auth_methods = auth_methods
49
+ else
50
+ @auth_methods
51
+ end
37
52
  end
38
53
  end
39
54
  end
@@ -19,7 +19,7 @@ module CurrentSession
19
19
  end
20
20
 
21
21
  def create(request)
22
- auth = @auth_class.new(request, user_class)
22
+ auth = @auth_class.new(request)
23
23
  auth.find_or_create_by_auth.try do |user|
24
24
  auth.update(user)
25
25
  session_repository(request).update_session_token(user)
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module CurrentSession
4
- VERSION = "0.1.2"
4
+ VERSION = "0.1.4"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: current_session
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Masa (Aileron inc)
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-09-06 00:00:00.000000000 Z
11
+ date: 2022-10-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '0'
19
+ version: 6.0.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: '0'
26
+ version: 6.0.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: activerecord
29
29
  requirement: !ruby/object:Gem::Requirement