lockie 0.2.8 → 0.2.9

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: 06027d091324bf7822e326a262e35cbd94d170658d9f142e02fbb53df314f6c6
4
- data.tar.gz: 9a47a99c1a91ac49c39babdad32136c2f01bd2d1952b66ba0cb055e357f9ecc9
3
+ metadata.gz: 25ba87a9c9345cf549912647fb08b4bb35abdfae8904a89d83ae44a38bc4c164
4
+ data.tar.gz: 616b9774aacd68d28d44123455e961f27ae37b635eea411a82e1747f99afbd9a
5
5
  SHA512:
6
- metadata.gz: 2f50baf7c9418de8284ad4719ce98607acd00f50487cc11ee842dddf31fdac9c329b6b4bb692c93afe81a3c7b6f5eaee5e417b1ca24db6e1ea9e9d5ca9c9d95d
7
- data.tar.gz: d361cdea1d3d3d19688c33e0e62843124fe25d6f877ec1781c5c84ee5b1d7bc606bc7b67820e3b6b12a3309193d4de623a2d71c2a7ea548dd55f9a4832bfb5f4
6
+ metadata.gz: 9087e1aca2a0185747150a72253ccb0a75b13a2ad4ec6be51d2148d33ae1a6fcb913cf1299bf35789cf0c081c499028ca04adf3b38c4b835d94fe8bc1570004b
7
+ data.tar.gz: a91cdaf0387442309b0cf7f7544ea4fc9da6646205309d3d83a0d6379db5dcd5bf94f3ea596b608f4882e953a00c3f29877f4a8c3cccb2dc6537116d7bfcfed8
data/README.md CHANGED
@@ -9,7 +9,7 @@ A drop-in, none assuming warden based Password and JWT authentication for Rails
9
9
  Add this line to your application's Gemfile:
10
10
 
11
11
  ```ruby
12
- gem 'lockie', '~> 0.2.7'
12
+ gem 'lockie', '~> 0.2.8'
13
13
  ```
14
14
 
15
15
  And then execute:
@@ -24,17 +24,29 @@ module Lockie
24
24
  class_methods do
25
25
 
26
26
  def find_by_token(token)
27
- payload = JWT.decode(token, Lockie.config.jwt_secret, true, { algorithm: Lockie.config.hash_algorithm })
28
- auth_id = payload.first.fetch('sub') { nil }
29
- find(auth_id)
27
+ payloads = decode_token token
28
+ find_auth payloads.first
30
29
  end
31
30
 
32
- def create_token(payload: {}, secret:)
31
+ def find_auth(payload)
32
+ auth_id = extract_auth_id payload
33
+ find auth_id
34
+ end
35
+
36
+ def extract_auth_id(payload)
37
+ payload.fetch('sub') { nil }
38
+ end
39
+
40
+ def decode_token(token, secret: Lockie::config.jwt_secret)
41
+ JWT.decode(token, secret, true, { algorithm: Lockie.config.hash_algorithm })
42
+ end
43
+
44
+ def create_token(payload: {}, secret: , hash_algorithm: 'HS256')
33
45
  payload = {
34
46
  aud: 'lockie-app',
35
47
  }.merge(payload)
36
48
 
37
- JWT.encode(payload, secret, 'HS256')
49
+ JWT.encode(payload, secret, hash_algorithm)
38
50
  end
39
51
 
40
52
  end
@@ -1,3 +1,3 @@
1
1
  module Lockie
2
- VERSION = '0.2.8'
2
+ VERSION = '0.2.9'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lockie
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.8
4
+ version: 0.2.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Melvin Sembrano
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-07-15 00:00:00.000000000 Z
11
+ date: 2019-09-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -135,7 +135,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
135
135
  - !ruby/object:Gem::Version
136
136
  version: '0'
137
137
  requirements: []
138
- rubygems_version: 3.0.4
138
+ rubyforge_project:
139
+ rubygems_version: 2.7.7
139
140
  signing_key:
140
141
  specification_version: 4
141
142
  summary: Drop in password and JWT token authentication for Ruby on Rails