strongmind-auth 1.0.12 → 1.0.13

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: 9f0de84646fc0bb458a34c17e3b6ba8e8f5754252cb5da1957822e75a7c52d4f
4
- data.tar.gz: 3f944f111eb1b254ed97a13baf7b5e0d74401bb4edce2326ed36a94742af4499
3
+ metadata.gz: 5f8024e8a6ede6f16c3ab5a900c19e0aa736a703ac36d6668287b2a27ec61928
4
+ data.tar.gz: 7d63c841f85f811124902d077989ea5bc683923258048164f10d85f79ca41b06
5
5
  SHA512:
6
- metadata.gz: cbba7ce9b16417331e9ec33a7b25225bb2ff3d3bc9651ac36936543197f1e95caec5c842100965b6564150c92015d46af23dfab26999db0f4847755d112eb775
7
- data.tar.gz: 48fa3ec4e620252c4f1dfb88cd3f58df46f0054defe2f348d3282cfde28dc58829b628b6dfa5f054c5e2681b105b92b31e5c984a5711fdb68cfd1abd5b6cc7f0
6
+ metadata.gz: 836af65fff974d2ec9b16166a72e0203f41eb7a3b59cee6054bd32b53fb7e1980b6e9f4295586731a54ab20c20d5205ba4a91687cdfe68c01d269d979d74bbd3
7
+ data.tar.gz: d4195a3e2c67eeb856e6374d0d9386af87001fa730708ba578b3f3a92ee7a15b26fd3965df6597f91680ce660744d1642f2cb1b931937e3bdc609229fe905e93
@@ -72,7 +72,7 @@ module JwtUtilities
72
72
  def validate_tokens(tokens)
73
73
  return unless tokens[:error] == 'invalid_grant' || !tokens[:refresh_token]
74
74
 
75
- raise RefreshTokenExpired, tokens[:error]
75
+ raise Strongmind::Exceptions::RefreshTokenExpired, tokens[:error]
76
76
  end
77
77
 
78
78
  def generate_tokens(session_data)
@@ -1,4 +1,5 @@
1
1
  require "strongmind/common_nav_fetcher"
2
+ require "strongmind/exceptions"
2
3
 
3
4
  module StrongMindNav
4
5
  extend ActiveSupport::Concern
@@ -10,7 +11,7 @@ module StrongMindNav
10
11
  @top_navbar_html = navbar[:top_navbar_html]
11
12
  @bottom_navbar_html = navbar[:bottom_navbar_html]
12
13
  @theme_css = navbar[:theme_css]
13
- rescue Strongmind::CommonNavFetcher::TokenNotFoundError, Strongmind::CommonNavFetcher::UserNotFoundError => e
14
+ rescue Strongmind::Exceptions::TokenNotFoundError, Strongmind::Exceptions::UserNotFoundError => e
14
15
  Sentry.capture_exception(e)
15
16
  Rails.logger.error(e)
16
17
  flash[:alert] = e.inspect if Rails.env.development?
@@ -18,6 +19,7 @@ module StrongMindNav
18
19
  render 'logins/index'
19
20
  rescue Exception => e
20
21
  Sentry.capture_exception(e)
22
+ Rails.logger.error(e)
21
23
  @top_navbar_html = render_to_string(partial: 'layouts/loading_navbar').html_safe
22
24
  end
23
25
  end
@@ -10,6 +10,8 @@ module Users
10
10
  User.auth_token_cache = auth
11
11
  @user = User.with_credentials(auth)
12
12
 
13
+ render plain: "You do not have permission to access this application.", status: :unauthorized and return if @user.nil?
14
+
13
15
  session[:refresh_token] = request.env['omniauth.auth'].credentials['refresh_token']
14
16
  flash.delete(:notice)
15
17
 
@@ -1,8 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Users
4
- class RefreshTokenExpired < StandardError
5
- end
6
4
 
7
5
  class SessionsController < Devise::SessionsController
8
6
  include JwtUtilities
@@ -1,5 +1,5 @@
1
1
  module Strongmind
2
2
  module Auth
3
- VERSION = "1.0.12"
3
+ VERSION = "1.0.13"
4
4
  end
5
5
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
-
2
+ require "strongmind/exceptions"
3
3
  require 'platform_sdk'
4
4
 
5
5
  module Strongmind
@@ -9,12 +9,8 @@ module Strongmind
9
9
 
10
10
  include Rails.application.routes.url_helpers
11
11
 
12
- class TokenNotFoundError < StandardError; end
13
-
14
- class UserNotFoundError < StandardError; end
15
-
16
12
  def initialize(user, request)
17
- raise UserNotFoundError, 'User not found' unless user.present?
13
+ raise Strongmind::Exceptions::UserNotFoundError, 'User not found' unless user.present?
18
14
  raise ArgumentError, 'Request not found' unless request.present?
19
15
 
20
16
  @user = user
@@ -54,7 +50,7 @@ module Strongmind
54
50
  cache_data = Rails.cache.fetch(user.uid)
55
51
  cache_missing_message = " - check your caching settings (switch to file or redis)" if Rails.env.development?
56
52
  unless cache_data&.key?(:access_token)
57
- raise TokenNotFoundError, "Token not found for user #{user.uid}#{cache_missing_message}"
53
+ raise Strongmind::Exceptions::TokenNotFoundError, "Token not found for user #{user.uid}#{cache_missing_message}"
58
54
  end
59
55
 
60
56
  cache_data[:access_token]
@@ -83,14 +79,12 @@ module Strongmind
83
79
  end
84
80
 
85
81
  def nav_item_data(item)
86
- url = send(item[:path_method])
82
+ url = item[:url]
87
83
  {
88
84
  name: item[:name],
89
85
  icon: item[:icon],
90
- url:,
91
- is_disabled: item[:feature_flag] ? !user.feature_flag_enabled?(item[:feature_flag]) : false,
92
- is_active: current_page?(url),
93
- is_external: false
86
+ url: url,
87
+ is_active: current_page?(url)
94
88
  }
95
89
  end
96
90
  end
@@ -0,0 +1,9 @@
1
+ module Strongmind
2
+ module Exceptions
3
+ class TokenNotFoundError < StandardError; end
4
+
5
+ class UserNotFoundError < StandardError; end
6
+
7
+ class RefreshTokenExpiredError < StandardError; end
8
+ end
9
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: strongmind-auth
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.12
4
+ version: 1.0.13
5
5
  platform: ruby
6
6
  authors:
7
7
  - Team Belding
@@ -128,6 +128,7 @@ files:
128
128
  - lib/strongmind/auth/engine.rb
129
129
  - lib/strongmind/auth/version.rb
130
130
  - lib/strongmind/common_nav_fetcher.rb
131
+ - lib/strongmind/exceptions.rb
131
132
  - lib/tasks/rails/auth_tasks.rake
132
133
  - lib/tasks/strongmind/auth_tasks.rake
133
134
  homepage: https://www.strongmind.com