role_fu 0.3.3 → 0.5.0
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 +4 -4
- data/CHANGELOG.md +27 -1
- data/README.md +42 -1
- data/gemfiles/rails_7.2.gemfile.lock +117 -123
- data/gemfiles/rails_8.0.gemfile.lock +181 -187
- data/gemfiles/rails_8.1.gemfile.lock +183 -189
- data/lib/generators/role_fu/templates/role_fu.rb +7 -0
- data/lib/role_fu/configuration.rb +13 -0
- data/lib/role_fu/resourceable.rb +31 -0
- data/lib/role_fu/roleable.rb +19 -0
- data/lib/role_fu/version.rb +1 -1
- metadata +3 -3
|
@@ -1,37 +1,37 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: ..
|
|
3
3
|
specs:
|
|
4
|
-
role_fu (0.
|
|
4
|
+
role_fu (0.5.0)
|
|
5
5
|
activerecord (>= 7.2)
|
|
6
6
|
|
|
7
7
|
GEM
|
|
8
8
|
remote: https://rubygems.org/
|
|
9
9
|
specs:
|
|
10
|
-
action_text-trix (2.1.
|
|
10
|
+
action_text-trix (2.1.19)
|
|
11
11
|
railties
|
|
12
|
-
actioncable (8.1.
|
|
13
|
-
actionpack (= 8.1.
|
|
14
|
-
activesupport (= 8.1.
|
|
12
|
+
actioncable (8.1.3)
|
|
13
|
+
actionpack (= 8.1.3)
|
|
14
|
+
activesupport (= 8.1.3)
|
|
15
15
|
nio4r (~> 2.0)
|
|
16
16
|
websocket-driver (>= 0.6.1)
|
|
17
17
|
zeitwerk (~> 2.6)
|
|
18
|
-
actionmailbox (8.1.
|
|
19
|
-
actionpack (= 8.1.
|
|
20
|
-
activejob (= 8.1.
|
|
21
|
-
activerecord (= 8.1.
|
|
22
|
-
activestorage (= 8.1.
|
|
23
|
-
activesupport (= 8.1.
|
|
18
|
+
actionmailbox (8.1.3)
|
|
19
|
+
actionpack (= 8.1.3)
|
|
20
|
+
activejob (= 8.1.3)
|
|
21
|
+
activerecord (= 8.1.3)
|
|
22
|
+
activestorage (= 8.1.3)
|
|
23
|
+
activesupport (= 8.1.3)
|
|
24
24
|
mail (>= 2.8.0)
|
|
25
|
-
actionmailer (8.1.
|
|
26
|
-
actionpack (= 8.1.
|
|
27
|
-
actionview (= 8.1.
|
|
28
|
-
activejob (= 8.1.
|
|
29
|
-
activesupport (= 8.1.
|
|
25
|
+
actionmailer (8.1.3)
|
|
26
|
+
actionpack (= 8.1.3)
|
|
27
|
+
actionview (= 8.1.3)
|
|
28
|
+
activejob (= 8.1.3)
|
|
29
|
+
activesupport (= 8.1.3)
|
|
30
30
|
mail (>= 2.8.0)
|
|
31
31
|
rails-dom-testing (~> 2.2)
|
|
32
|
-
actionpack (8.1.
|
|
33
|
-
actionview (= 8.1.
|
|
34
|
-
activesupport (= 8.1.
|
|
32
|
+
actionpack (8.1.3)
|
|
33
|
+
actionview (= 8.1.3)
|
|
34
|
+
activesupport (= 8.1.3)
|
|
35
35
|
nokogiri (>= 1.8.5)
|
|
36
36
|
rack (>= 2.2.4)
|
|
37
37
|
rack-session (>= 1.0.1)
|
|
@@ -39,36 +39,36 @@ GEM
|
|
|
39
39
|
rails-dom-testing (~> 2.2)
|
|
40
40
|
rails-html-sanitizer (~> 1.6)
|
|
41
41
|
useragent (~> 0.16)
|
|
42
|
-
actiontext (8.1.
|
|
42
|
+
actiontext (8.1.3)
|
|
43
43
|
action_text-trix (~> 2.1.15)
|
|
44
|
-
actionpack (= 8.1.
|
|
45
|
-
activerecord (= 8.1.
|
|
46
|
-
activestorage (= 8.1.
|
|
47
|
-
activesupport (= 8.1.
|
|
44
|
+
actionpack (= 8.1.3)
|
|
45
|
+
activerecord (= 8.1.3)
|
|
46
|
+
activestorage (= 8.1.3)
|
|
47
|
+
activesupport (= 8.1.3)
|
|
48
48
|
globalid (>= 0.6.0)
|
|
49
49
|
nokogiri (>= 1.8.5)
|
|
50
|
-
actionview (8.1.
|
|
51
|
-
activesupport (= 8.1.
|
|
50
|
+
actionview (8.1.3)
|
|
51
|
+
activesupport (= 8.1.3)
|
|
52
52
|
builder (~> 3.1)
|
|
53
53
|
erubi (~> 1.11)
|
|
54
54
|
rails-dom-testing (~> 2.2)
|
|
55
55
|
rails-html-sanitizer (~> 1.6)
|
|
56
|
-
activejob (8.1.
|
|
57
|
-
activesupport (= 8.1.
|
|
56
|
+
activejob (8.1.3)
|
|
57
|
+
activesupport (= 8.1.3)
|
|
58
58
|
globalid (>= 0.3.6)
|
|
59
|
-
activemodel (8.1.
|
|
60
|
-
activesupport (= 8.1.
|
|
61
|
-
activerecord (8.1.
|
|
62
|
-
activemodel (= 8.1.
|
|
63
|
-
activesupport (= 8.1.
|
|
59
|
+
activemodel (8.1.3)
|
|
60
|
+
activesupport (= 8.1.3)
|
|
61
|
+
activerecord (8.1.3)
|
|
62
|
+
activemodel (= 8.1.3)
|
|
63
|
+
activesupport (= 8.1.3)
|
|
64
64
|
timeout (>= 0.4.0)
|
|
65
|
-
activestorage (8.1.
|
|
66
|
-
actionpack (= 8.1.
|
|
67
|
-
activejob (= 8.1.
|
|
68
|
-
activerecord (= 8.1.
|
|
69
|
-
activesupport (= 8.1.
|
|
65
|
+
activestorage (8.1.3)
|
|
66
|
+
actionpack (= 8.1.3)
|
|
67
|
+
activejob (= 8.1.3)
|
|
68
|
+
activerecord (= 8.1.3)
|
|
69
|
+
activesupport (= 8.1.3)
|
|
70
70
|
marcel (~> 1.0)
|
|
71
|
-
activesupport (8.1.
|
|
71
|
+
activesupport (8.1.3)
|
|
72
72
|
base64
|
|
73
73
|
bigdecimal
|
|
74
74
|
concurrent-ruby (~> 1.0, >= 1.3.1)
|
|
@@ -87,45 +87,46 @@ GEM
|
|
|
87
87
|
thor (>= 0.14.0)
|
|
88
88
|
ast (2.4.3)
|
|
89
89
|
base64 (0.3.0)
|
|
90
|
-
bigdecimal (4.
|
|
90
|
+
bigdecimal (4.1.2)
|
|
91
91
|
builder (3.3.0)
|
|
92
|
-
concurrent-ruby (1.3.
|
|
92
|
+
concurrent-ruby (1.3.7)
|
|
93
93
|
connection_pool (3.0.2)
|
|
94
|
-
crass (1.0.
|
|
94
|
+
crass (1.0.7)
|
|
95
95
|
date (3.5.1)
|
|
96
96
|
diff-lcs (1.6.2)
|
|
97
|
-
docile (1.4.1)
|
|
98
97
|
drb (2.2.3)
|
|
99
|
-
erb (6.0.
|
|
98
|
+
erb (6.0.4)
|
|
100
99
|
erubi (1.13.1)
|
|
101
|
-
globalid (1.
|
|
100
|
+
globalid (1.4.0)
|
|
102
101
|
activesupport (>= 6.1)
|
|
103
|
-
i18n (1.
|
|
102
|
+
i18n (1.15.2)
|
|
104
103
|
concurrent-ruby (~> 1.0)
|
|
105
104
|
io-console (0.8.2)
|
|
106
|
-
irb (1.
|
|
105
|
+
irb (1.18.0)
|
|
107
106
|
pp (>= 0.6.0)
|
|
107
|
+
prism (>= 1.3.0)
|
|
108
108
|
rdoc (>= 4.0.0)
|
|
109
109
|
reline (>= 0.4.2)
|
|
110
|
-
json (2.
|
|
111
|
-
language_server-protocol (3.17.0.
|
|
112
|
-
lefthook (2.1.
|
|
110
|
+
json (2.21.1)
|
|
111
|
+
language_server-protocol (3.17.0.6)
|
|
112
|
+
lefthook (2.1.10)
|
|
113
113
|
lint_roller (1.1.0)
|
|
114
114
|
logger (1.7.0)
|
|
115
|
-
loofah (2.25.
|
|
115
|
+
loofah (2.25.1)
|
|
116
116
|
crass (~> 1.0.2)
|
|
117
117
|
nokogiri (>= 1.12.0)
|
|
118
|
-
mail (2.9.
|
|
118
|
+
mail (2.9.1)
|
|
119
119
|
logger
|
|
120
120
|
mini_mime (>= 0.1.1)
|
|
121
121
|
net-imap
|
|
122
122
|
net-pop
|
|
123
123
|
net-smtp
|
|
124
|
-
marcel (1.1
|
|
124
|
+
marcel (1.2.1)
|
|
125
125
|
mini_mime (1.1.5)
|
|
126
|
-
minitest (6.0.
|
|
126
|
+
minitest (6.0.6)
|
|
127
|
+
drb (~> 2.0)
|
|
127
128
|
prism (~> 1.5)
|
|
128
|
-
net-imap (0.6.
|
|
129
|
+
net-imap (0.6.4.1)
|
|
129
130
|
date
|
|
130
131
|
net-protocol
|
|
131
132
|
net-pop (0.1.2)
|
|
@@ -135,66 +136,63 @@ GEM
|
|
|
135
136
|
net-smtp (0.5.1)
|
|
136
137
|
net-protocol
|
|
137
138
|
nio4r (2.7.5)
|
|
138
|
-
nokogiri (1.19.
|
|
139
|
+
nokogiri (1.19.4-aarch64-linux-gnu)
|
|
139
140
|
racc (~> 1.4)
|
|
140
|
-
nokogiri (1.19.
|
|
141
|
+
nokogiri (1.19.4-aarch64-linux-musl)
|
|
141
142
|
racc (~> 1.4)
|
|
142
|
-
nokogiri (1.19.
|
|
143
|
+
nokogiri (1.19.4-arm-linux-gnu)
|
|
143
144
|
racc (~> 1.4)
|
|
144
|
-
nokogiri (1.19.
|
|
145
|
+
nokogiri (1.19.4-arm-linux-musl)
|
|
145
146
|
racc (~> 1.4)
|
|
146
|
-
nokogiri (1.19.
|
|
147
|
+
nokogiri (1.19.4-arm64-darwin)
|
|
147
148
|
racc (~> 1.4)
|
|
148
|
-
nokogiri (1.19.
|
|
149
|
+
nokogiri (1.19.4-x86_64-darwin)
|
|
149
150
|
racc (~> 1.4)
|
|
150
|
-
nokogiri (1.19.
|
|
151
|
+
nokogiri (1.19.4-x86_64-linux-gnu)
|
|
151
152
|
racc (~> 1.4)
|
|
152
|
-
nokogiri (1.19.
|
|
153
|
+
nokogiri (1.19.4-x86_64-linux-musl)
|
|
153
154
|
racc (~> 1.4)
|
|
154
|
-
parallel (1.
|
|
155
|
-
parser (3.3.
|
|
155
|
+
parallel (2.1.0)
|
|
156
|
+
parser (3.3.11.1)
|
|
156
157
|
ast (~> 2.4.1)
|
|
157
158
|
racc
|
|
158
|
-
pp (0.6.
|
|
159
|
+
pp (0.6.4)
|
|
159
160
|
prettyprint
|
|
160
161
|
prettyprint (0.2.0)
|
|
161
162
|
prism (1.9.0)
|
|
162
|
-
psych (5.3.1)
|
|
163
|
-
date
|
|
164
|
-
stringio
|
|
165
163
|
racc (1.8.1)
|
|
166
|
-
rack (3.2.
|
|
167
|
-
rack-session (2.1.
|
|
164
|
+
rack (3.2.6)
|
|
165
|
+
rack-session (2.1.2)
|
|
168
166
|
base64 (>= 0.1.0)
|
|
169
167
|
rack (>= 3.0.0)
|
|
170
168
|
rack-test (2.2.0)
|
|
171
169
|
rack (>= 1.3)
|
|
172
170
|
rackup (2.3.1)
|
|
173
171
|
rack (>= 3)
|
|
174
|
-
rails (8.1.
|
|
175
|
-
actioncable (= 8.1.
|
|
176
|
-
actionmailbox (= 8.1.
|
|
177
|
-
actionmailer (= 8.1.
|
|
178
|
-
actionpack (= 8.1.
|
|
179
|
-
actiontext (= 8.1.
|
|
180
|
-
actionview (= 8.1.
|
|
181
|
-
activejob (= 8.1.
|
|
182
|
-
activemodel (= 8.1.
|
|
183
|
-
activerecord (= 8.1.
|
|
184
|
-
activestorage (= 8.1.
|
|
185
|
-
activesupport (= 8.1.
|
|
172
|
+
rails (8.1.3)
|
|
173
|
+
actioncable (= 8.1.3)
|
|
174
|
+
actionmailbox (= 8.1.3)
|
|
175
|
+
actionmailer (= 8.1.3)
|
|
176
|
+
actionpack (= 8.1.3)
|
|
177
|
+
actiontext (= 8.1.3)
|
|
178
|
+
actionview (= 8.1.3)
|
|
179
|
+
activejob (= 8.1.3)
|
|
180
|
+
activemodel (= 8.1.3)
|
|
181
|
+
activerecord (= 8.1.3)
|
|
182
|
+
activestorage (= 8.1.3)
|
|
183
|
+
activesupport (= 8.1.3)
|
|
186
184
|
bundler (>= 1.15.0)
|
|
187
|
-
railties (= 8.1.
|
|
185
|
+
railties (= 8.1.3)
|
|
188
186
|
rails-dom-testing (2.3.0)
|
|
189
187
|
activesupport (>= 5.0.0)
|
|
190
188
|
minitest
|
|
191
189
|
nokogiri (>= 1.6)
|
|
192
|
-
rails-html-sanitizer (1.
|
|
193
|
-
loofah (~> 2.
|
|
190
|
+
rails-html-sanitizer (1.7.0)
|
|
191
|
+
loofah (~> 2.25)
|
|
194
192
|
nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0)
|
|
195
|
-
railties (8.1.
|
|
196
|
-
actionpack (= 8.1.
|
|
197
|
-
activesupport (= 8.1.
|
|
193
|
+
railties (8.1.3)
|
|
194
|
+
actionpack (= 8.1.3)
|
|
195
|
+
activesupport (= 8.1.3)
|
|
198
196
|
irb (~> 1.13)
|
|
199
197
|
rackup (>= 1.0.0)
|
|
200
198
|
rake (>= 12.2)
|
|
@@ -202,12 +200,17 @@ GEM
|
|
|
202
200
|
tsort (>= 0.2)
|
|
203
201
|
zeitwerk (~> 2.6)
|
|
204
202
|
rainbow (3.1.1)
|
|
205
|
-
rake (13.
|
|
206
|
-
|
|
203
|
+
rake (13.4.2)
|
|
204
|
+
rbs (4.0.3)
|
|
205
|
+
logger
|
|
206
|
+
prism (>= 1.6.0)
|
|
207
|
+
tsort
|
|
208
|
+
rdoc (8.0.0)
|
|
207
209
|
erb
|
|
208
|
-
|
|
210
|
+
prism (>= 1.6.0)
|
|
211
|
+
rbs (>= 4.0.0)
|
|
209
212
|
tsort
|
|
210
|
-
regexp_parser (2.
|
|
213
|
+
regexp_parser (2.12.0)
|
|
211
214
|
reline (0.6.3)
|
|
212
215
|
io-console (~> 0.5)
|
|
213
216
|
rspec (3.13.2)
|
|
@@ -219,51 +222,47 @@ GEM
|
|
|
219
222
|
rspec-expectations (3.13.5)
|
|
220
223
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
221
224
|
rspec-support (~> 3.13.0)
|
|
222
|
-
rspec-mocks (3.13.
|
|
225
|
+
rspec-mocks (3.13.8)
|
|
223
226
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
224
227
|
rspec-support (~> 3.13.0)
|
|
225
228
|
rspec-support (3.13.7)
|
|
226
|
-
rubocop (1.
|
|
229
|
+
rubocop (1.87.0)
|
|
227
230
|
json (~> 2.3)
|
|
228
231
|
language_server-protocol (~> 3.17.0.2)
|
|
229
232
|
lint_roller (~> 1.1.0)
|
|
230
|
-
parallel (
|
|
233
|
+
parallel (>= 1.10)
|
|
231
234
|
parser (>= 3.3.0.2)
|
|
232
235
|
rainbow (>= 2.2.2, < 4.0)
|
|
233
236
|
regexp_parser (>= 2.9.3, < 3.0)
|
|
234
|
-
rubocop-ast (>= 1.
|
|
237
|
+
rubocop-ast (>= 1.49.0, < 2.0)
|
|
235
238
|
ruby-progressbar (~> 1.7)
|
|
236
239
|
unicode-display_width (>= 2.4.0, < 4.0)
|
|
237
|
-
rubocop-ast (1.
|
|
240
|
+
rubocop-ast (1.50.0)
|
|
238
241
|
parser (>= 3.3.7.2)
|
|
239
242
|
prism (~> 1.7)
|
|
240
243
|
rubocop-performance (1.26.1)
|
|
241
244
|
lint_roller (~> 1.1)
|
|
242
245
|
rubocop (>= 1.75.0, < 2.0)
|
|
243
246
|
rubocop-ast (>= 1.47.1, < 2.0)
|
|
244
|
-
rubocop-rspec (3.
|
|
247
|
+
rubocop-rspec (3.10.2)
|
|
245
248
|
lint_roller (~> 1.1)
|
|
246
|
-
|
|
249
|
+
regexp_parser (>= 2.0)
|
|
250
|
+
rubocop (~> 1.86, >= 1.86.2)
|
|
247
251
|
ruby-progressbar (1.13.0)
|
|
248
252
|
securerandom (0.4.1)
|
|
249
|
-
simplecov (0.
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
sqlite3 (2.9.
|
|
256
|
-
sqlite3 (2.9.
|
|
257
|
-
sqlite3 (2.9.
|
|
258
|
-
|
|
259
|
-
sqlite3 (2.9.0-arm64-darwin)
|
|
260
|
-
sqlite3 (2.9.0-x86_64-darwin)
|
|
261
|
-
sqlite3 (2.9.0-x86_64-linux-gnu)
|
|
262
|
-
sqlite3 (2.9.0-x86_64-linux-musl)
|
|
263
|
-
standard (1.53.0)
|
|
253
|
+
simplecov (1.0.1)
|
|
254
|
+
sqlite3 (2.9.5-aarch64-linux-gnu)
|
|
255
|
+
sqlite3 (2.9.5-aarch64-linux-musl)
|
|
256
|
+
sqlite3 (2.9.5-arm-linux-gnu)
|
|
257
|
+
sqlite3 (2.9.5-arm-linux-musl)
|
|
258
|
+
sqlite3 (2.9.5-arm64-darwin)
|
|
259
|
+
sqlite3 (2.9.5-x86_64-darwin)
|
|
260
|
+
sqlite3 (2.9.5-x86_64-linux-gnu)
|
|
261
|
+
sqlite3 (2.9.5-x86_64-linux-musl)
|
|
262
|
+
standard (1.55.0)
|
|
264
263
|
language_server-protocol (~> 3.17.0.2)
|
|
265
264
|
lint_roller (~> 1.0)
|
|
266
|
-
rubocop (~> 1.
|
|
265
|
+
rubocop (~> 1.87.0)
|
|
267
266
|
standard-custom (~> 1.0.0)
|
|
268
267
|
standard-performance (~> 1.8)
|
|
269
268
|
standard-custom (1.0.2)
|
|
@@ -272,9 +271,8 @@ GEM
|
|
|
272
271
|
standard-performance (1.9.0)
|
|
273
272
|
lint_roller (~> 1.1)
|
|
274
273
|
rubocop-performance (~> 1.26.0)
|
|
275
|
-
stringio (3.2.0)
|
|
276
274
|
thor (1.5.0)
|
|
277
|
-
timeout (0.6.
|
|
275
|
+
timeout (0.6.1)
|
|
278
276
|
tsort (0.2.0)
|
|
279
277
|
tzinfo (2.0.6)
|
|
280
278
|
concurrent-ruby (~> 1.0)
|
|
@@ -283,11 +281,11 @@ GEM
|
|
|
283
281
|
unicode-emoji (4.2.0)
|
|
284
282
|
uri (1.1.1)
|
|
285
283
|
useragent (0.16.11)
|
|
286
|
-
websocket-driver (0.8.
|
|
284
|
+
websocket-driver (0.8.2)
|
|
287
285
|
base64
|
|
288
286
|
websocket-extensions (>= 0.1.0)
|
|
289
287
|
websocket-extensions (0.1.5)
|
|
290
|
-
zeitwerk (2.
|
|
288
|
+
zeitwerk (2.8.2)
|
|
291
289
|
|
|
292
290
|
PLATFORMS
|
|
293
291
|
aarch64-linux-gnu
|
|
@@ -314,117 +312,113 @@ DEPENDENCIES
|
|
|
314
312
|
standard (>= 1.35.1)
|
|
315
313
|
|
|
316
314
|
CHECKSUMS
|
|
317
|
-
action_text-trix (2.1.
|
|
318
|
-
actioncable (8.1.
|
|
319
|
-
actionmailbox (8.1.
|
|
320
|
-
actionmailer (8.1.
|
|
321
|
-
actionpack (8.1.
|
|
322
|
-
actiontext (8.1.
|
|
323
|
-
actionview (8.1.
|
|
324
|
-
activejob (8.1.
|
|
325
|
-
activemodel (8.1.
|
|
326
|
-
activerecord (8.1.
|
|
327
|
-
activestorage (8.1.
|
|
328
|
-
activesupport (8.1.
|
|
315
|
+
action_text-trix (2.1.19) sha256=7012f59421009cf284aa651294896414d653a61a2417c9b8714c8476d2f74009
|
|
316
|
+
actioncable (8.1.3) sha256=e5bc7f75e44e6a22de29c4f43176927c3a9ce4824464b74ed18d8226e75a80f0
|
|
317
|
+
actionmailbox (8.1.3) sha256=df7da474eaa0e70df4ed5a6fef66eb3b3b0f2dbf7f14518deee8d77f1b4aae59
|
|
318
|
+
actionmailer (8.1.3) sha256=831f724891bb70d0aaa4d76581a6321124b6a752cb655c9346aae5479318448d
|
|
319
|
+
actionpack (8.1.3) sha256=af998cae4d47c5d581a2cc363b5c77eb718b7c4b45748d81b1887b25621c29a3
|
|
320
|
+
actiontext (8.1.3) sha256=d291019c00e1ea9e6463011fa214f6081a56d7b9a1d224e7d3f6384c1dafc7d2
|
|
321
|
+
actionview (8.1.3) sha256=1347c88c7f3edb38100c5ce0e9fb5e62d7755f3edc1b61cce2eb0b2c6ea2fd5d
|
|
322
|
+
activejob (8.1.3) sha256=a149b1766aa8204c3c3da7309e4becd40fcd5529c348cffbf6c9b16b565fe8d3
|
|
323
|
+
activemodel (8.1.3) sha256=90c05cbe4cef3649b8f79f13016191ea94c4525ce4a5c0fb7ef909c4b91c8219
|
|
324
|
+
activerecord (8.1.3) sha256=8003be7b2466ba0a2a670e603eeb0a61dd66058fccecfc49901e775260ac70ab
|
|
325
|
+
activestorage (8.1.3) sha256=0564ce9309143951a67615e1bb4e090ee54b8befed417133cae614479b46384d
|
|
326
|
+
activesupport (8.1.3) sha256=21a5e0dfbd4c3ddd9e1317ec6a4d782fa226e7867dc70b0743acda81a1dca20e
|
|
329
327
|
appraisal (2.5.0) sha256=36989221be127913b0dba8d114da2001e6b2dceea7bd4951200eaba764eed3ce
|
|
330
328
|
ast (2.4.3) sha256=954615157c1d6a382bc27d690d973195e79db7f55e9765ac7c481c60bdb4d383
|
|
331
329
|
base64 (0.3.0) sha256=27337aeabad6ffae05c265c450490628ef3ebd4b67be58257393227588f5a97b
|
|
332
|
-
bigdecimal (4.
|
|
330
|
+
bigdecimal (4.1.2) sha256=53d217666027eab4280346fba98e7d5b66baaae1b9c3c1c0ffe89d48188a3fbd
|
|
333
331
|
builder (3.3.0) sha256=497918d2f9dca528fdca4b88d84e4ef4387256d984b8154e9d5d3fe5a9c8835f
|
|
334
|
-
concurrent-ruby (1.3.
|
|
332
|
+
concurrent-ruby (1.3.7) sha256=4412caec3a5ea2e5fdc52076724c071a81f2c0593d83b2ac8cbb8ca63b3151b0
|
|
335
333
|
connection_pool (3.0.2) sha256=33fff5ba71a12d2aa26cb72b1db8bba2a1a01823559fb01d29eb74c286e62e0a
|
|
336
|
-
crass (1.0.
|
|
334
|
+
crass (1.0.7) sha256=94868719948664c89ddcaf0a37c65048413dfcb1c869470a5f7a7ceb5390b295
|
|
337
335
|
date (3.5.1) sha256=750d06384d7b9c15d562c76291407d89e368dda4d4fff957eb94962d325a0dc0
|
|
338
336
|
diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962
|
|
339
|
-
docile (1.4.1) sha256=96159be799bfa73cdb721b840e9802126e4e03dfc26863db73647204c727f21e
|
|
340
337
|
drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373
|
|
341
|
-
erb (6.0.
|
|
338
|
+
erb (6.0.4) sha256=38e3803694be357fe2bfe312487c74beaf9fb4e5beb3e22498952fe1645b95d9
|
|
342
339
|
erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9
|
|
343
|
-
globalid (1.
|
|
344
|
-
i18n (1.
|
|
340
|
+
globalid (1.4.0) sha256=037f12fbf1d9d7a014d501c2d5c77356fd4ddd96d7a7991d6700bba96706f427
|
|
341
|
+
i18n (1.15.2) sha256=00f9eb62412fe593b2a65a97daa75300d37abb8f7202ec748e94b6d46a9dd1b5
|
|
345
342
|
io-console (0.8.2) sha256=d6e3ae7a7cc7574f4b8893b4fca2162e57a825b223a177b7afa236c5ef9814cc
|
|
346
|
-
irb (1.
|
|
347
|
-
json (2.
|
|
348
|
-
language_server-protocol (3.17.0.
|
|
349
|
-
lefthook (2.1.
|
|
343
|
+
irb (1.18.0) sha256=de9454a0703a54704b9811a5ef31a60c86949fbf4013fcf244fabc7c775248e3
|
|
344
|
+
json (2.21.1) sha256=13a43df75d95641443f5702dff350f237164a9d811ff0f2c2800d4d980220583
|
|
345
|
+
language_server-protocol (3.17.0.6) sha256=5ef2c0c138f8267e1bc631d3328347d354f96724b0af22f2c79516120443b7f0
|
|
346
|
+
lefthook (2.1.10) sha256=cc9c06bd8ea689e8b8016eab9769e54d696d07951860c1c6d28e8f6812e61b65
|
|
350
347
|
lint_roller (1.1.0) sha256=2c0c845b632a7d172cb849cc90c1bce937a28c5c8ccccb50dfd46a485003cc87
|
|
351
348
|
logger (1.7.0) sha256=196edec7cc44b66cfb40f9755ce11b392f21f7967696af15d274dde7edff0203
|
|
352
|
-
loofah (2.25.
|
|
353
|
-
mail (2.9.
|
|
354
|
-
marcel (1.1
|
|
349
|
+
loofah (2.25.1) sha256=d436c73dbd0c1147b16c4a41db097942d217303e1f7728704b37e4df9f6d2e04
|
|
350
|
+
mail (2.9.1) sha256=06574eca475253d6c18145dd70af80d0eb970182d55053497c5f4d797ea160e8
|
|
351
|
+
marcel (1.2.1) sha256=1678e9360e32f9eafa917c80029e2f6d10b2715c66a4b87b6d0da9b9cd1f859f
|
|
355
352
|
mini_mime (1.1.5) sha256=8681b7e2e4215f2a159f9400b5816d85e9d8c6c6b491e96a12797e798f8bccef
|
|
356
|
-
minitest (6.0.
|
|
357
|
-
net-imap (0.6.
|
|
353
|
+
minitest (6.0.6) sha256=153ea36d1d987a62942382b61075745042a2b3123b1cd48f4c3675af9cc7d6f1
|
|
354
|
+
net-imap (0.6.4.1) sha256=29f0360d75a7efd3539f16ac1957dea5c0a51ddeceb348db4553c3120914ea0d
|
|
358
355
|
net-pop (0.1.2) sha256=848b4e982013c15b2f0382792268763b748cce91c9e91e36b0f27ed26420dff3
|
|
359
356
|
net-protocol (0.2.2) sha256=aa73e0cba6a125369de9837b8d8ef82a61849360eba0521900e2c3713aa162a8
|
|
360
357
|
net-smtp (0.5.1) sha256=ed96a0af63c524fceb4b29b0d352195c30d82dd916a42f03c62a3a70e5b70736
|
|
361
358
|
nio4r (2.7.5) sha256=6c90168e48fb5f8e768419c93abb94ba2b892a1d0602cb06eef16d8b7df1dca1
|
|
362
|
-
nokogiri (1.19.
|
|
363
|
-
nokogiri (1.19.
|
|
364
|
-
nokogiri (1.19.
|
|
365
|
-
nokogiri (1.19.
|
|
366
|
-
nokogiri (1.19.
|
|
367
|
-
nokogiri (1.19.
|
|
368
|
-
nokogiri (1.19.
|
|
369
|
-
nokogiri (1.19.
|
|
370
|
-
parallel (1.
|
|
371
|
-
parser (3.3.
|
|
372
|
-
pp (0.6.
|
|
359
|
+
nokogiri (1.19.4-aarch64-linux-gnu) sha256=1269fb644a6de405057a53dd5c762b1209b43ca7424f839454d3dbc677c31a8f
|
|
360
|
+
nokogiri (1.19.4-aarch64-linux-musl) sha256=35c65b9ce72b3bb03207bdbe7067915019dc18c1b9b59139684bd6690fdd01af
|
|
361
|
+
nokogiri (1.19.4-arm-linux-gnu) sha256=a301313e38bb065d68239e79734bcd6f56fb6efaacebde29e9abf2a4735340ca
|
|
362
|
+
nokogiri (1.19.4-arm-linux-musl) sha256=588923c101bcfa78869734d247d25b598674323e7f22474fc468f6e5647311eb
|
|
363
|
+
nokogiri (1.19.4-arm64-darwin) sha256=a46db9853286e6597b36ebc6953817d15acf3a299583eb3f89fdc6f91dd63527
|
|
364
|
+
nokogiri (1.19.4-x86_64-darwin) sha256=7fd17057d3e1f00e9954a74b3cd76595d3d4a5ef233b7ed9599047c204f70551
|
|
365
|
+
nokogiri (1.19.4-x86_64-linux-gnu) sha256=379fae440b28915e3f19d752ce2dcf8465ed2b2fbefd2a7ca0dd497bc981a06a
|
|
366
|
+
nokogiri (1.19.4-x86_64-linux-musl) sha256=17dfb7c1fa194ae02fbf7c51a7afc8d278045ab3fdacfd86f91d02d7b274470b
|
|
367
|
+
parallel (2.1.0) sha256=b35258865c2e31134c5ecb708beaaf6772adf9d5efae28e93e99260877b09356
|
|
368
|
+
parser (3.3.11.1) sha256=d17ace7aabe3e72c3cc94043714be27cc6f852f104d81aa284c2281aecc65d54
|
|
369
|
+
pp (0.6.4) sha256=dfcb0fce700c41456265922884f9fe195d7fbb0674a3578e6c0f69588e82b570
|
|
373
370
|
prettyprint (0.2.0) sha256=2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193
|
|
374
371
|
prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85
|
|
375
|
-
psych (5.3.1) sha256=eb7a57cef10c9d70173ff74e739d843ac3b2c019a003de48447b2963d81b1974
|
|
376
372
|
racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f
|
|
377
|
-
rack (3.2.
|
|
378
|
-
rack-session (2.1.
|
|
373
|
+
rack (3.2.6) sha256=5ed78e1f73b2e25679bec7d45ee2d4483cc4146eb1be0264fc4d94cb5ef212c2
|
|
374
|
+
rack-session (2.1.2) sha256=595434f8c0c3473ae7d7ac56ecda6cc6dfd9d37c0b2b5255330aa1576967ffe8
|
|
379
375
|
rack-test (2.2.0) sha256=005a36692c306ac0b4a9350355ee080fd09ddef1148a5f8b2ac636c720f5c463
|
|
380
376
|
rackup (2.3.1) sha256=6c79c26753778e90983761d677a48937ee3192b3ffef6bc963c0950f94688868
|
|
381
|
-
rails (8.1.
|
|
377
|
+
rails (8.1.3) sha256=6d017ba5348c98fc909753a8169b21d44de14d2a0b92d140d1a966834c3c9cd3
|
|
382
378
|
rails-dom-testing (2.3.0) sha256=8acc7953a7b911ca44588bf08737bc16719f431a1cc3091a292bca7317925c1d
|
|
383
|
-
rails-html-sanitizer (1.
|
|
384
|
-
railties (8.1.
|
|
379
|
+
rails-html-sanitizer (1.7.0) sha256=28b145cceaf9cc214a9874feaa183c3acba036c9592b19886e0e45efc62b1e89
|
|
380
|
+
railties (8.1.3) sha256=913eb0e0cb520aac687ffd74916bd726d48fa21f47833c6292576ef6a286de22
|
|
385
381
|
rainbow (3.1.1) sha256=039491aa3a89f42efa1d6dec2fc4e62ede96eb6acd95e52f1ad581182b79bc6a
|
|
386
|
-
rake (13.
|
|
387
|
-
|
|
388
|
-
|
|
382
|
+
rake (13.4.2) sha256=cb825b2bd5f1f8e91ca37bddb4b9aaf345551b4731da62949be002fa89283701
|
|
383
|
+
rbs (4.0.3) sha256=5a7bf70e2628549d9a1f44eae447b2cfe55968a9c60cfff52693a4bdcc020e14
|
|
384
|
+
rdoc (8.0.0) sha256=03bf8c08a9639658855a0cfd77c0abca8325c227693f7f33f82957811348c469
|
|
385
|
+
regexp_parser (2.12.0) sha256=35a916a1d63190ab5c9009457136ae5f3c0c7512d60291d0d1378ba18ce08ebb
|
|
389
386
|
reline (0.6.3) sha256=1198b04973565b36ec0f11542ab3f5cfeeec34823f4e54cebde90968092b1835
|
|
390
|
-
role_fu (0.
|
|
387
|
+
role_fu (0.5.0)
|
|
391
388
|
rspec (3.13.2) sha256=206284a08ad798e61f86d7ca3e376718d52c0bc944626b2349266f239f820587
|
|
392
389
|
rspec-core (3.13.6) sha256=a8823c6411667b60a8bca135364351dda34cd55e44ff94c4be4633b37d828b2d
|
|
393
390
|
rspec-expectations (3.13.5) sha256=33a4d3a1d95060aea4c94e9f237030a8f9eae5615e9bd85718fe3a09e4b58836
|
|
394
|
-
rspec-mocks (3.13.
|
|
391
|
+
rspec-mocks (3.13.8) sha256=086ad3d3d17533f4237643de0b5c42f04b66348c28bf6b9c2d3f4a3b01af1d47
|
|
395
392
|
rspec-support (3.13.7) sha256=0640e5570872aafefd79867901deeeeb40b0c9875a36b983d85f54fb7381c47c
|
|
396
|
-
rubocop (1.
|
|
397
|
-
rubocop-ast (1.
|
|
393
|
+
rubocop (1.87.0) sha256=b9d9ddf55116a513f8ef2c7ae660662d8b49301f118d3f0df61865b33a5c188d
|
|
394
|
+
rubocop-ast (1.50.0) sha256=b9ca88300da0803ee222ad20cdb30494c0a784eed06fdc35d254b06d662788db
|
|
398
395
|
rubocop-performance (1.26.1) sha256=cd19b936ff196df85829d264b522fd4f98b6c89ad271fa52744a8c11b8f71834
|
|
399
|
-
rubocop-rspec (3.
|
|
396
|
+
rubocop-rspec (3.10.2) sha256=0b3e2ecc592cd10ecbf0095bb58d1e357905276e069643523cc19eb7495f65e2
|
|
400
397
|
ruby-progressbar (1.13.0) sha256=80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33
|
|
401
398
|
securerandom (0.4.1) sha256=cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1
|
|
402
|
-
simplecov (0.
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
sqlite3 (2.9.
|
|
406
|
-
sqlite3 (2.9.
|
|
407
|
-
sqlite3 (2.9.
|
|
408
|
-
sqlite3 (2.9.
|
|
409
|
-
sqlite3 (2.9.
|
|
410
|
-
sqlite3 (2.9.
|
|
411
|
-
|
|
412
|
-
sqlite3 (2.9.0-x86_64-linux-musl) sha256=ef716ba7a66d7deb1ccc402ac3a6d7343da17fac862793b7f0be3d2917253c90
|
|
413
|
-
standard (1.53.0) sha256=f3c9493385db7079d0abce6f7582f553122156997b81258cd361d3480eeacf9c
|
|
399
|
+
simplecov (1.0.1) sha256=419d93c40484159d20b40e26e9a83cdd4c3afa2f3fd443bb8946c301cd658d75
|
|
400
|
+
sqlite3 (2.9.5-aarch64-linux-gnu) sha256=78075b6337d3d182c6d2b4691049ed45cd220826160c9ea18946bf6a1de200dc
|
|
401
|
+
sqlite3 (2.9.5-aarch64-linux-musl) sha256=18c801185deb4adc01ddb281e8f672a39e3d1729979ca91e39439cd3eac0402d
|
|
402
|
+
sqlite3 (2.9.5-arm-linux-gnu) sha256=1bdfca0c7d63998c60b0f4a8e3c8df2d33800ccc4abd2d612eddbbbc92a4c48b
|
|
403
|
+
sqlite3 (2.9.5-arm-linux-musl) sha256=bae1109d12b2e9f588455967729b008e1ff4feb7761749df695019c9079913c6
|
|
404
|
+
sqlite3 (2.9.5-arm64-darwin) sha256=d0cf444a70fc9395d513cfbcc1e6719e224aa645314e3824cb0474c721425aa2
|
|
405
|
+
sqlite3 (2.9.5-x86_64-darwin) sha256=8e9caae38bd7ebb29cbeee3e7ab1d12dc2327d9a1b92c7fcf0dda05589627a81
|
|
406
|
+
sqlite3 (2.9.5-x86_64-linux-gnu) sha256=233dbcb6714148dd23bc5aeb33e8efd6eac974969564ddd5794c23d5f52b231e
|
|
407
|
+
sqlite3 (2.9.5-x86_64-linux-musl) sha256=e7d3a7474e8af0f96150c21abc203fbab5437206bfcdf11deab7741c0ca516f2
|
|
408
|
+
standard (1.55.0) sha256=8a8f2c3e681a4db3aafde1b301561b0f3d7c5f06c160167cb744a4d7baf0426e
|
|
414
409
|
standard-custom (1.0.2) sha256=424adc84179a074f1a2a309bb9cf7cd6bfdb2b6541f20c6bf9436c0ba22a652b
|
|
415
410
|
standard-performance (1.9.0) sha256=49483d31be448292951d80e5e67cdcb576c2502103c7b40aec6f1b6e9c88e3f2
|
|
416
|
-
stringio (3.2.0) sha256=c37cb2e58b4ffbd33fe5cd948c05934af997b36e0b6ca6fdf43afa234cf222e1
|
|
417
411
|
thor (1.5.0) sha256=e3a9e55fe857e44859ce104a84675ab6e8cd59c650a49106a05f55f136425e73
|
|
418
|
-
timeout (0.6.
|
|
412
|
+
timeout (0.6.1) sha256=78f57368a7e7bbadec56971f78a3f5ecbcfb59b7fcbb0a3ed6ddc08a5094accb
|
|
419
413
|
tsort (0.2.0) sha256=9650a793f6859a43b6641671278f79cfead60ac714148aabe4e3f0060480089f
|
|
420
414
|
tzinfo (2.0.6) sha256=8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b
|
|
421
415
|
unicode-display_width (3.2.0) sha256=0cdd96b5681a5949cdbc2c55e7b420facae74c4aaf9a9815eee1087cb1853c42
|
|
422
416
|
unicode-emoji (4.2.0) sha256=519e69150f75652e40bf736106cfbc8f0f73aa3fb6a65afe62fefa7f80b0f80f
|
|
423
417
|
uri (1.1.1) sha256=379fa58d27ffb1387eaada68c749d1426738bd0f654d812fcc07e7568f5c57c6
|
|
424
418
|
useragent (0.16.11) sha256=700e6413ad4bb954bb63547fa098dddf7b0ebe75b40cc6f93b8d54255b173844
|
|
425
|
-
websocket-driver (0.8.
|
|
419
|
+
websocket-driver (0.8.2) sha256=97c556b019bf3410b4961002ac501621e9322d3f8a7bc02161a09301cc4c4146
|
|
426
420
|
websocket-extensions (0.1.5) sha256=1c6ba63092cda343eb53fc657110c71c754c56484aad42578495227d717a8241
|
|
427
|
-
zeitwerk (2.
|
|
421
|
+
zeitwerk (2.8.2) sha256=7212a61311083c604184b1ea2574b9aa05cd14f855a0841c06985cabe9181d12
|
|
428
422
|
|
|
429
423
|
BUNDLED WITH
|
|
430
424
|
4.0.5
|
|
@@ -9,4 +9,11 @@ RoleFu.configure do |config|
|
|
|
9
9
|
|
|
10
10
|
# The class name of your RoleAssignment model
|
|
11
11
|
# config.role_assignment_class_name = "RoleAssignment"
|
|
12
|
+
|
|
13
|
+
# Enable Rolify-style permissive checks (Global roles override resource checks)
|
|
14
|
+
# config.global_roles_override = false
|
|
15
|
+
|
|
16
|
+
# Enable dynamic shortcuts (e.g. user.is_admin?)
|
|
17
|
+
# Default is "is_%{role}?". Set to nil to disable.
|
|
18
|
+
# config.dynamic_shortcuts_pattern = "is_%{role}?"
|
|
12
19
|
end
|
|
@@ -3,12 +3,25 @@
|
|
|
3
3
|
module RoleFu
|
|
4
4
|
class Configuration
|
|
5
5
|
attr_accessor :user_class_name, :role_class_name, :role_assignment_class_name, :global_roles_override
|
|
6
|
+
attr_reader :dynamic_shortcuts_pattern, :dynamic_shortcuts_regex
|
|
6
7
|
|
|
7
8
|
def initialize
|
|
8
9
|
@user_class_name = "User"
|
|
9
10
|
@role_class_name = "Role"
|
|
10
11
|
@role_assignment_class_name = "RoleAssignment"
|
|
11
12
|
@global_roles_override = false
|
|
13
|
+
self.dynamic_shortcuts_pattern = "is_%{role}?"
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
def dynamic_shortcuts_pattern=(pattern)
|
|
17
|
+
@dynamic_shortcuts_pattern = pattern
|
|
18
|
+
if pattern.nil? || pattern.strip.empty?
|
|
19
|
+
@dynamic_shortcuts_regex = nil
|
|
20
|
+
else
|
|
21
|
+
parts = pattern.split("%{role}", -1)
|
|
22
|
+
regex_string = "^#{parts.map { |part| Regexp.escape(part) }.join("(?<role>.+)")}$"
|
|
23
|
+
@dynamic_shortcuts_regex = Regexp.new(regex_string)
|
|
24
|
+
end
|
|
12
25
|
end
|
|
13
26
|
end
|
|
14
27
|
|