collavre_completion_api 0.2.2 → 0.2.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: c722b5ce20cb6dceec074e389ac7d88a973caa0855212c9a9f553c2eee495ae1
4
- data.tar.gz: b04400dd54db5ffe107d88eceb7f79ae4cb0c23b0f67749a175e9a770c892da5
3
+ metadata.gz: dc50b74db9b7b24ba288392fb8c5a4b269727228829dcf91a0196236f0a5c352
4
+ data.tar.gz: 5bdad75265afa2f8eae040d22069e8370cb771afd5bc2abccc380a47d2a9def5
5
5
  SHA512:
6
- metadata.gz: f1329384805d5ec00be758352969e1e45cc93bbfd5674b757eb2f9d6acce1f2b3f08f610cfd8e2b025c96465de13b1f692afd83995fc1501c176feb6c413ef3a
7
- data.tar.gz: 7fe0bb705db919ce3e44615ce20fbb1d30ddc6f3754dee2a001078f8fe18eb37b36728de42db257ec0a9bed02add44ac0d76ab8e1cb57fddbd2d79362d04af5b
6
+ metadata.gz: 2abccff570987512417cdc2d41f22a7b05177b7bf4bcdb6e44bd47f7b87560d35aa9fe8332ecf7f7abf60d9f3e9f8083605a209394cc915e7362f24188b34605
7
+ data.tar.gz: 96578d0b13a218be1f72a1086d0e7ecf6fd7ce8a3fb391750b24073602fa29403e251e5c1163d2f084a866404ee8f2dc905fcb908504e43d3c2f005d4657fe86
@@ -17,7 +17,7 @@ module CollavreCompletionApi
17
17
  return
18
18
  end
19
19
 
20
- unless authenticate_oauth(token)
20
+ unless find_user_by_bearer_token(token)
21
21
  render json: { error: { message: "Invalid authentication token", type: "invalid_request_error",
22
22
  code: "invalid_token" } },
23
23
  status: :unauthorized
@@ -25,17 +25,10 @@ module CollavreCompletionApi
25
25
  end
26
26
  end
27
27
 
28
- def authenticate_oauth(token)
29
- access_token = Doorkeeper::AccessToken.by_token(token)
30
- return false unless access_token&.accessible?
31
-
32
- user = Collavre::User.find_by(id: access_token.resource_owner_id)
33
- return false unless user
34
-
35
- Collavre::Current.user = user
36
- true
37
- end
38
-
28
+ # Bearer-auth helpers are kept inline here (rather than shared via the
29
+ # core Collavre::Api::Authenticatable concern) so this engine stays
30
+ # loadable under USE_COLLAVRE_GEM=true, where core resolves to a
31
+ # published collavre gem that may predate the concern.
39
32
  def extract_bearer_token
40
33
  auth_header = request.headers["Authorization"]
41
34
  return nil unless auth_header&.start_with?("Bearer ")
@@ -43,6 +36,19 @@ module CollavreCompletionApi
43
36
  auth_header.sub("Bearer ", "")
44
37
  end
45
38
 
39
+ def find_user_by_bearer_token(token)
40
+ return nil if token.blank?
41
+
42
+ access_token = Doorkeeper::AccessToken.by_token(token)
43
+ return nil unless access_token&.accessible?
44
+
45
+ user = Collavre::User.find_by(id: access_token.resource_owner_id)
46
+ return nil unless user
47
+
48
+ Collavre::Current.user = user
49
+ user
50
+ end
51
+
46
52
  def current_user
47
53
  Collavre::Current.user
48
54
  end
@@ -1,3 +1,3 @@
1
1
  module CollavreCompletionApi
2
- VERSION = "0.2.2"
2
+ VERSION = "0.2.3"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: collavre_completion_api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Collavre