pastore 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 18748116f3fc80df20d80cb5a47476750ca7e25fe14d249ce90c80e29939f14a
4
- data.tar.gz: f96b3c8969cc3b65e9ec3992bb1b20dba39e3fc271b11523c767b2c4c0e1ba12
3
+ metadata.gz: 77eb4179686bdc087cb3b82d5187714473d61d178a690ece61d23f4f238fc973
4
+ data.tar.gz: 66432435a048060675f5f61b966a99e917a8a810c8d713736202e334e510d42c
5
5
  SHA512:
6
- metadata.gz: 5e5a985b839f0223e0a52b5e1dc61423fa70a407460d64f02d42a7b1d53a9609d0568acdc918804bb994cb1f93bb763fcbedb415be496a5ef57a7006274666c7
7
- data.tar.gz: c2c2d1f2509e854c96b4ffb97369f3f31a6b60363b23db317a1d69b48c0d8a92d2f464af60a9e4ad220aa11ab25ab6d032b358876704842ddc27d9dd8042aac5
6
+ metadata.gz: 929a9b868a8d659728e7ebe2688fdec531ba9b718c195d40aeb2bb3ac313d59bac4c6ab6e3180f58a43af82930a7ae45bc5409ef0bfa439c4d4055d281d203a6
7
+ data.tar.gz: ea444e38cad30fb09fd6cfcf86fab000abcba0f3451ec2834e35bb13b7dca8fd062dc74d56879cf8f0c779e2b4fccb9d674dc34e7e2e36c238d4da6c330bb9cc
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- pastore (0.0.3)
4
+ pastore (0.0.4)
5
5
  rails (>= 4.0)
6
6
 
7
7
  GEM
@@ -4,9 +4,7 @@ module Pastore
4
4
  module Guards
5
5
  # Implements a structure where to store the settings for the guards.
6
6
  class Settings # rubocop:disable Metrics/ClassLength
7
-
8
7
  attr_writer :role_detector, :forbidden_cbk
9
- attr_reader :strategy
10
8
 
11
9
  def initialize(superklass)
12
10
  @super_guards = superklass.pastore_guards if superklass.respond_to?(:pastore_guards)
@@ -15,7 +13,7 @@ module Pastore
15
13
  end
16
14
 
17
15
  def reset!
18
- @strategy = :deny
16
+ @strategy = nil
19
17
  @role_detector = nil
20
18
  @forbidden_cbk = nil
21
19
  @actions = {}
@@ -40,6 +38,10 @@ module Pastore
40
38
  @strategy = :deny
41
39
  end
42
40
 
41
+ def strategy
42
+ @strategy || @super_guards&.strategy || :deny
43
+ end
44
+
43
45
  def permit_role(*roles)
44
46
  new_roles = [roles].flatten.compact.uniq.map(&:to_s)
45
47
  conflicts = @buffer.fetch(:denied_roles, []) & new_roles
@@ -130,7 +132,7 @@ module Pastore
130
132
 
131
133
  return false if action&.dig(:denied_roles)&.include?(role)
132
134
 
133
- @strategy == :allow || (@strategy == :deny && action&.dig(:permitted_roles)&.include?(role)) || false
135
+ strategy == :allow || (strategy == :deny && action&.dig(:permitted_roles)&.include?(role)) || false
134
136
  end
135
137
 
136
138
  private
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Pastore
4
- VERSION = '0.0.3'
4
+ VERSION = '0.0.4'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pastore
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Groza Sergiu