devise-passwordless 1.0.1 → 1.0.2

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: 37620b7f1717ecebc7a916630c58430fe97f76676c3dfe2e3fb05c037ab10609
4
- data.tar.gz: ecd157b06c356f94c4d9e027bde90d6523e17154ba6ec559f24ffb7864323dce
3
+ metadata.gz: 897ecbae9b1eab423447003362253109504478955ae120b2fb81602e78d83d0a
4
+ data.tar.gz: 892716d7fe7fda88cb153ed9eb561b47272081e066f34720a3a567812c653435
5
5
  SHA512:
6
- metadata.gz: b28efcfb87f0f5de6e56cb4de25fbf72fa683bb75790a7f34bd60122439e572815486fea408b4abeb2504f7c5550375f2291b8ac5dcf94d955085ec59030f6e5
7
- data.tar.gz: df62efa3059f6f2737ca57a91e31fa4c71029e938198fa8fe9fd01bbb1a1032ed0a67f27d7bd593eeb3a6cc6ce2bb38bdd853208c8531ea82088fc70dab8fdf2
6
+ metadata.gz: 4cd0fe91740b1fdd19b68de208ed790c46336e87ead4515ba71775e214edd4b25ee46ca62e311f6573e93be44f7ef644811cf5ed9b66081a24eb76690db7dde7
7
+ data.tar.gz: 44bb12db02ea4d0fcf9867edbce48a93a5f836df0e15ec89aa2fd71a9b5fd9070d42dc8300b7a9c6ab5251bad68a95676997667cf0c0b33a422181262b21fc78
data/README.md CHANGED
@@ -119,9 +119,10 @@ config.passwordless_tokenizer = "SignedGlobalIDTokenizer"
119
119
  # generate your own secret value with e.g. `rake secret`
120
120
  # config.passwordless_secret_key = nil
121
121
 
122
- # When using the :trackable module, set to true to consider magic link tokens
123
- # generated before the user's current sign in time to be expired. In other words,
124
- # each time you sign in, all existing magic links will be considered invalid.
122
+ # When using the :trackable module and MessageEncryptorTokenizer, set to true to
123
+ # consider magic link tokens generated before the user's current sign in time to
124
+ # be expired. In other words, each time you sign in, all existing magic links
125
+ # will be considered invalid.
125
126
  # config.passwordless_expire_old_tokens_on_sign_in = false
126
127
  ```
127
128
 
@@ -233,12 +234,12 @@ you can write something like this:
233
234
 
234
235
  ```ruby
235
236
  class ApplicationController < ActionController::Base
236
- def after_magic_link_sent_path_for(resource)
237
- case resource.class
238
- when FooUser
239
- happy_path
240
- when BarUser
241
- sad_path
237
+ def after_magic_link_sent_path_for(resource_or_scope)
238
+ case Devise::Mapping.find_scope!(resource_or_scope)
239
+ when :user
240
+ some_path
241
+ when :admin
242
+ some_other_path
242
243
  end
243
244
  end
244
245
  end
@@ -7,6 +7,7 @@ if defined?(ActionMailer)
7
7
  def magic_link(record, token, remember_me, opts = {})
8
8
  @token = token
9
9
  @remember_me = remember_me
10
+ @opts = opts
10
11
  devise_mail(record, :magic_link, opts)
11
12
  end
12
13
  end
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Deny user access when magic link authentication is disabled
4
4
  Warden::Manager.after_set_user do |record, warden, options|
5
- if record && record.respond_to?(:active_for_magic_link_authentication?) && !record.active_for_magic_link_authentication?
5
+ if record && record.respond_to?(:active_for_magic_link_authentication?) && !record.active_for_magic_link_authentication? && warden.winning_strategy.is_a?(Devise::Strategies::MagicLinkAuthenticatable)
6
6
  scope = options[:scope]
7
7
  warden.logout(scope)
8
8
  throw :warden, scope: scope, message: record.magic_link_inactive_message
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Devise
4
4
  module Passwordless
5
- VERSION = "1.0.1"
5
+ VERSION = "1.0.2"
6
6
  end
7
7
  end
@@ -33,9 +33,10 @@ module Devise::Passwordless
33
33
  # generate your own secret value with e.g. `rake secret`
34
34
  # config.passwordless_secret_key = nil
35
35
 
36
- # When using the :trackable module, set to true to consider magic link tokens
37
- # generated before the user's current sign in time to be expired. In other words,
38
- # each time you sign in, all existing magic links will be considered invalid.
36
+ # When using the :trackable module and MessageEncryptorTokenizer, set to true to
37
+ # consider magic link tokens generated before the user's current sign in time to
38
+ # be expired. In other words, each time you sign in, all existing magic links
39
+ # will be considered invalid.
39
40
  # config.passwordless_expire_old_tokens_on_sign_in = false
40
41
  CONFIG
41
42
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: devise-passwordless
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Abe Voelker
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-09-18 00:00:00.000000000 Z
11
+ date: 2024-04-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: devise
@@ -101,7 +101,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
101
101
  - !ruby/object:Gem::Version
102
102
  version: '0'
103
103
  requirements: []
104
- rubygems_version: 3.4.10
104
+ rubygems_version: 3.4.19
105
105
  signing_key:
106
106
  specification_version: 4
107
107
  summary: Passwordless (email-only) login strategy for Devise