pastore 0.0.3 → 0.0.4

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: 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