phlexible 3.3.0 → 3.4.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.
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: ..
3
3
  specs:
4
- phlexible (3.3.0)
4
+ phlexible (3.4.0)
5
5
  phlex (>= 1.10.0, < 3.0.0)
6
6
  phlex-rails (>= 1.2.0, < 3.0.0)
7
7
  rails (>= 7.2.0, < 9.0.0)
@@ -10,31 +10,31 @@ PATH
10
10
  GEM
11
11
  remote: https://rubygems.org/
12
12
  specs:
13
- action_text-trix (2.1.16)
13
+ action_text-trix (2.1.19)
14
14
  railties
15
- actioncable (8.1.2)
16
- actionpack (= 8.1.2)
17
- activesupport (= 8.1.2)
15
+ actioncable (8.1.3)
16
+ actionpack (= 8.1.3)
17
+ activesupport (= 8.1.3)
18
18
  nio4r (~> 2.0)
19
19
  websocket-driver (>= 0.6.1)
20
20
  zeitwerk (~> 2.6)
21
- actionmailbox (8.1.2)
22
- actionpack (= 8.1.2)
23
- activejob (= 8.1.2)
24
- activerecord (= 8.1.2)
25
- activestorage (= 8.1.2)
26
- activesupport (= 8.1.2)
21
+ actionmailbox (8.1.3)
22
+ actionpack (= 8.1.3)
23
+ activejob (= 8.1.3)
24
+ activerecord (= 8.1.3)
25
+ activestorage (= 8.1.3)
26
+ activesupport (= 8.1.3)
27
27
  mail (>= 2.8.0)
28
- actionmailer (8.1.2)
29
- actionpack (= 8.1.2)
30
- actionview (= 8.1.2)
31
- activejob (= 8.1.2)
32
- activesupport (= 8.1.2)
28
+ actionmailer (8.1.3)
29
+ actionpack (= 8.1.3)
30
+ actionview (= 8.1.3)
31
+ activejob (= 8.1.3)
32
+ activesupport (= 8.1.3)
33
33
  mail (>= 2.8.0)
34
34
  rails-dom-testing (~> 2.2)
35
- actionpack (8.1.2)
36
- actionview (= 8.1.2)
37
- activesupport (= 8.1.2)
35
+ actionpack (8.1.3)
36
+ actionview (= 8.1.3)
37
+ activesupport (= 8.1.3)
38
38
  nokogiri (>= 1.8.5)
39
39
  rack (>= 2.2.4)
40
40
  rack-session (>= 1.0.1)
@@ -42,36 +42,36 @@ GEM
42
42
  rails-dom-testing (~> 2.2)
43
43
  rails-html-sanitizer (~> 1.6)
44
44
  useragent (~> 0.16)
45
- actiontext (8.1.2)
45
+ actiontext (8.1.3)
46
46
  action_text-trix (~> 2.1.15)
47
- actionpack (= 8.1.2)
48
- activerecord (= 8.1.2)
49
- activestorage (= 8.1.2)
50
- activesupport (= 8.1.2)
47
+ actionpack (= 8.1.3)
48
+ activerecord (= 8.1.3)
49
+ activestorage (= 8.1.3)
50
+ activesupport (= 8.1.3)
51
51
  globalid (>= 0.6.0)
52
52
  nokogiri (>= 1.8.5)
53
- actionview (8.1.2)
54
- activesupport (= 8.1.2)
53
+ actionview (8.1.3)
54
+ activesupport (= 8.1.3)
55
55
  builder (~> 3.1)
56
56
  erubi (~> 1.11)
57
57
  rails-dom-testing (~> 2.2)
58
58
  rails-html-sanitizer (~> 1.6)
59
- activejob (8.1.2)
60
- activesupport (= 8.1.2)
59
+ activejob (8.1.3)
60
+ activesupport (= 8.1.3)
61
61
  globalid (>= 0.3.6)
62
- activemodel (8.1.2)
63
- activesupport (= 8.1.2)
64
- activerecord (8.1.2)
65
- activemodel (= 8.1.2)
66
- activesupport (= 8.1.2)
62
+ activemodel (8.1.3)
63
+ activesupport (= 8.1.3)
64
+ activerecord (8.1.3)
65
+ activemodel (= 8.1.3)
66
+ activesupport (= 8.1.3)
67
67
  timeout (>= 0.4.0)
68
- activestorage (8.1.2)
69
- actionpack (= 8.1.2)
70
- activejob (= 8.1.2)
71
- activerecord (= 8.1.2)
72
- activesupport (= 8.1.2)
68
+ activestorage (8.1.3)
69
+ actionpack (= 8.1.3)
70
+ activejob (= 8.1.3)
71
+ activerecord (= 8.1.3)
72
+ activesupport (= 8.1.3)
73
73
  marcel (~> 1.0)
74
- activesupport (8.1.2)
74
+ activesupport (8.1.3)
75
75
  base64
76
76
  bigdecimal
77
77
  concurrent-ruby (~> 1.0, >= 1.3.1)
@@ -84,7 +84,7 @@ GEM
84
84
  securerandom (>= 0.3)
85
85
  tzinfo (~> 2.0, >= 2.0.5)
86
86
  uri (>= 0.13.1)
87
- addressable (2.8.8)
87
+ addressable (2.9.0)
88
88
  public_suffix (>= 2.0.2, < 8.0)
89
89
  amazing_print (2.0.0)
90
90
  appraisal (2.5.0)
@@ -93,7 +93,7 @@ GEM
93
93
  thor (>= 0.14.0)
94
94
  ast (2.4.3)
95
95
  base64 (0.3.0)
96
- bigdecimal (4.0.1)
96
+ bigdecimal (4.1.2)
97
97
  builder (3.3.0)
98
98
  capybara (3.40.0)
99
99
  addressable
@@ -124,22 +124,23 @@ GEM
124
124
  dispersion (0.2.0)
125
125
  prism
126
126
  drb (2.2.3)
127
- erb (6.0.1)
127
+ erb (6.0.4)
128
128
  erubi (1.13.1)
129
129
  globalid (1.3.0)
130
130
  activesupport (>= 6.1)
131
131
  i18n (1.14.8)
132
132
  concurrent-ruby (~> 1.0)
133
133
  io-console (0.8.2)
134
- irb (1.16.0)
134
+ irb (1.18.0)
135
135
  pp (>= 0.6.0)
136
+ prism (>= 1.3.0)
136
137
  rdoc (>= 4.0.0)
137
138
  reline (>= 0.4.2)
138
- json (2.18.0)
139
+ json (2.19.5)
139
140
  language_server-protocol (3.17.0.5)
140
141
  lint_roller (1.1.0)
141
142
  logger (1.7.0)
142
- loofah (2.25.0)
143
+ loofah (2.25.1)
143
144
  crass (~> 1.0.2)
144
145
  nokogiri (>= 1.12.0)
145
146
  mail (2.9.0)
@@ -161,7 +162,7 @@ GEM
161
162
  minitest-spec-rails (7.4.1)
162
163
  minitest (>= 5.0)
163
164
  railties (>= 4.1)
164
- net-imap (0.6.2)
165
+ net-imap (0.6.4)
165
166
  date
166
167
  net-protocol
167
168
  net-pop (0.1.2)
@@ -171,27 +172,27 @@ GEM
171
172
  net-smtp (0.5.1)
172
173
  net-protocol
173
174
  nio4r (2.7.5)
174
- nokogiri (1.19.0-aarch64-linux-gnu)
175
+ nokogiri (1.19.3-aarch64-linux-gnu)
175
176
  racc (~> 1.4)
176
- nokogiri (1.19.0-aarch64-linux-musl)
177
+ nokogiri (1.19.3-aarch64-linux-musl)
177
178
  racc (~> 1.4)
178
- nokogiri (1.19.0-arm-linux-gnu)
179
+ nokogiri (1.19.3-arm-linux-gnu)
179
180
  racc (~> 1.4)
180
- nokogiri (1.19.0-arm-linux-musl)
181
+ nokogiri (1.19.3-arm-linux-musl)
181
182
  racc (~> 1.4)
182
- nokogiri (1.19.0-arm64-darwin)
183
+ nokogiri (1.19.3-arm64-darwin)
183
184
  racc (~> 1.4)
184
- nokogiri (1.19.0-x86_64-darwin)
185
+ nokogiri (1.19.3-x86_64-darwin)
185
186
  racc (~> 1.4)
186
- nokogiri (1.19.0-x86_64-linux-gnu)
187
+ nokogiri (1.19.3-x86_64-linux-gnu)
187
188
  racc (~> 1.4)
188
- nokogiri (1.19.0-x86_64-linux-musl)
189
+ nokogiri (1.19.3-x86_64-linux-musl)
189
190
  racc (~> 1.4)
190
- parallel (1.27.0)
191
- parser (3.3.10.1)
191
+ parallel (2.1.0)
192
+ parser (3.3.11.1)
192
193
  ast (~> 2.4.1)
193
194
  racc
194
- phlex (2.4.0)
195
+ phlex (2.4.1)
195
196
  refract (~> 1.0)
196
197
  zeitwerk (~> 2.7)
197
198
  phlex-rails (2.4.0)
@@ -203,44 +204,44 @@ GEM
203
204
  pretty_please (0.2.0)
204
205
  dispersion (~> 0.2)
205
206
  prettyprint (0.2.0)
206
- prism (1.8.0)
207
+ prism (1.9.0)
207
208
  psych (5.3.1)
208
209
  date
209
210
  stringio
210
- public_suffix (7.0.2)
211
+ public_suffix (7.0.5)
211
212
  racc (1.8.1)
212
- rack (3.2.4)
213
- rack-session (2.1.1)
213
+ rack (3.2.6)
214
+ rack-session (2.1.2)
214
215
  base64 (>= 0.1.0)
215
216
  rack (>= 3.0.0)
216
217
  rack-test (2.2.0)
217
218
  rack (>= 1.3)
218
219
  rackup (2.3.1)
219
220
  rack (>= 3)
220
- rails (8.1.2)
221
- actioncable (= 8.1.2)
222
- actionmailbox (= 8.1.2)
223
- actionmailer (= 8.1.2)
224
- actionpack (= 8.1.2)
225
- actiontext (= 8.1.2)
226
- actionview (= 8.1.2)
227
- activejob (= 8.1.2)
228
- activemodel (= 8.1.2)
229
- activerecord (= 8.1.2)
230
- activestorage (= 8.1.2)
231
- activesupport (= 8.1.2)
221
+ rails (8.1.3)
222
+ actioncable (= 8.1.3)
223
+ actionmailbox (= 8.1.3)
224
+ actionmailer (= 8.1.3)
225
+ actionpack (= 8.1.3)
226
+ actiontext (= 8.1.3)
227
+ actionview (= 8.1.3)
228
+ activejob (= 8.1.3)
229
+ activemodel (= 8.1.3)
230
+ activerecord (= 8.1.3)
231
+ activestorage (= 8.1.3)
232
+ activesupport (= 8.1.3)
232
233
  bundler (>= 1.15.0)
233
- railties (= 8.1.2)
234
+ railties (= 8.1.3)
234
235
  rails-dom-testing (2.3.0)
235
236
  activesupport (>= 5.0.0)
236
237
  minitest
237
238
  nokogiri (>= 1.6)
238
- rails-html-sanitizer (1.6.2)
239
- loofah (~> 2.21)
239
+ rails-html-sanitizer (1.7.0)
240
+ loofah (~> 2.25)
240
241
  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)
241
- railties (8.1.2)
242
- actionpack (= 8.1.2)
243
- activesupport (= 8.1.2)
242
+ railties (8.1.3)
243
+ actionpack (= 8.1.3)
244
+ activesupport (= 8.1.3)
244
245
  irb (~> 1.13)
245
246
  rackup (>= 1.0.0)
246
247
  rake (>= 12.2)
@@ -248,35 +249,35 @@ GEM
248
249
  tsort (>= 0.2)
249
250
  zeitwerk (~> 2.6)
250
251
  rainbow (3.1.1)
251
- rake (13.3.1)
252
- rdoc (7.1.0)
252
+ rake (13.4.2)
253
+ rdoc (7.2.0)
253
254
  erb
254
255
  psych (>= 4.0.0)
255
256
  tsort
256
257
  refract (1.1.0)
257
258
  prism
258
259
  zeitwerk
259
- regexp_parser (2.11.3)
260
+ regexp_parser (2.12.0)
260
261
  reline (0.6.3)
261
262
  io-console (~> 0.5)
262
- rubocop (1.82.1)
263
+ rubocop (1.86.1)
263
264
  json (~> 2.3)
264
265
  language_server-protocol (~> 3.17.0.2)
265
266
  lint_roller (~> 1.1.0)
266
- parallel (~> 1.10)
267
+ parallel (>= 1.10)
267
268
  parser (>= 3.3.0.2)
268
269
  rainbow (>= 2.2.2, < 4.0)
269
270
  regexp_parser (>= 2.9.3, < 3.0)
270
- rubocop-ast (>= 1.48.0, < 2.0)
271
+ rubocop-ast (>= 1.49.0, < 2.0)
271
272
  ruby-progressbar (~> 1.7)
272
273
  unicode-display_width (>= 2.4.0, < 4.0)
273
- rubocop-ast (1.49.0)
274
+ rubocop-ast (1.49.1)
274
275
  parser (>= 3.3.7.2)
275
276
  prism (~> 1.7)
276
277
  rubocop-disable_syntax (0.2.0)
277
278
  lint_roller
278
279
  rubocop (>= 1.72.0)
279
- rubocop-minitest (0.38.2)
280
+ rubocop-minitest (0.39.1)
280
281
  lint_roller (~> 1.1)
281
282
  rubocop (>= 1.75.0, < 2.0)
282
283
  rubocop-ast (>= 1.38.0, < 2.0)
@@ -287,7 +288,7 @@ GEM
287
288
  lint_roller (~> 1.1)
288
289
  rubocop (>= 1.75.0, < 2.0)
289
290
  rubocop-ast (>= 1.47.1, < 2.0)
290
- rubocop-rails (2.34.3)
291
+ rubocop-rails (2.35.0)
291
292
  activesupport (>= 4.2.0)
292
293
  lint_roller (~> 1.1)
293
294
  rack (>= 1.1)
@@ -300,7 +301,7 @@ GEM
300
301
  securerandom (0.4.1)
301
302
  stringio (3.2.0)
302
303
  thor (1.5.0)
303
- timeout (0.6.0)
304
+ timeout (0.6.1)
304
305
  tsort (0.2.0)
305
306
  tzinfo (2.0.6)
306
307
  concurrent-ruby (~> 1.0)
@@ -315,7 +316,7 @@ GEM
315
316
  websocket-extensions (0.1.5)
316
317
  xpath (3.2.0)
317
318
  nokogiri (~> 1.8)
318
- zeitwerk (2.7.4)
319
+ zeitwerk (2.7.5)
319
320
 
320
321
  PLATFORMS
321
322
  aarch64-linux
@@ -351,24 +352,24 @@ DEPENDENCIES
351
352
  rubocop-rake
352
353
 
353
354
  CHECKSUMS
354
- action_text-trix (2.1.16) sha256=f645a2c21821b8449fd1d6770708f4031c91a2eedf9ef476e9be93c64e703a8a
355
- actioncable (8.1.2) sha256=dc31efc34cca9cdefc5c691ddb8b4b214c0ea5cd1372108cbc1377767fb91969
356
- actionmailbox (8.1.2) sha256=058b2fb1980e5d5a894f675475fcfa45c62631103d5a2596d9610ec81581889b
357
- actionmailer (8.1.2) sha256=f4c1d2060f653bfe908aa7fdc5a61c0e5279670de992146582f2e36f8b9175e9
358
- actionpack (8.1.2) sha256=ced74147a1f0daafaa4bab7f677513fd4d3add574c7839958f7b4f1de44f8423
359
- actiontext (8.1.2) sha256=0bf57da22a9c19d970779c3ce24a56be31b51c7640f2763ec64aa72e358d2d2d
360
- actionview (8.1.2) sha256=80455b2588911c9b72cec22d240edacb7c150e800ef2234821269b2b2c3e2e5b
361
- activejob (8.1.2) sha256=908dab3713b101859536375819f4156b07bdf4c232cc645e7538adb9e302f825
362
- activemodel (8.1.2) sha256=e21358c11ce68aed3f9838b7e464977bc007b4446c6e4059781e1d5c03bcf33e
363
- activerecord (8.1.2) sha256=acfbe0cadfcc50fa208011fe6f4eb01cae682ebae0ef57145ba45380c74bcc44
364
- activestorage (8.1.2) sha256=8a63a48c3999caeee26a59441f813f94681fc35cc41aba7ce1f836add04fba76
365
- activesupport (8.1.2) sha256=88842578ccd0d40f658289b0e8c842acfe9af751afee2e0744a7873f50b6fdae
366
- addressable (2.8.8) sha256=7c13b8f9536cf6364c03b9d417c19986019e28f7c00ac8132da4eb0fe393b057
355
+ action_text-trix (2.1.19) sha256=7012f59421009cf284aa651294896414d653a61a2417c9b8714c8476d2f74009
356
+ actioncable (8.1.3) sha256=e5bc7f75e44e6a22de29c4f43176927c3a9ce4824464b74ed18d8226e75a80f0
357
+ actionmailbox (8.1.3) sha256=df7da474eaa0e70df4ed5a6fef66eb3b3b0f2dbf7f14518deee8d77f1b4aae59
358
+ actionmailer (8.1.3) sha256=831f724891bb70d0aaa4d76581a6321124b6a752cb655c9346aae5479318448d
359
+ actionpack (8.1.3) sha256=af998cae4d47c5d581a2cc363b5c77eb718b7c4b45748d81b1887b25621c29a3
360
+ actiontext (8.1.3) sha256=d291019c00e1ea9e6463011fa214f6081a56d7b9a1d224e7d3f6384c1dafc7d2
361
+ actionview (8.1.3) sha256=1347c88c7f3edb38100c5ce0e9fb5e62d7755f3edc1b61cce2eb0b2c6ea2fd5d
362
+ activejob (8.1.3) sha256=a149b1766aa8204c3c3da7309e4becd40fcd5529c348cffbf6c9b16b565fe8d3
363
+ activemodel (8.1.3) sha256=90c05cbe4cef3649b8f79f13016191ea94c4525ce4a5c0fb7ef909c4b91c8219
364
+ activerecord (8.1.3) sha256=8003be7b2466ba0a2a670e603eeb0a61dd66058fccecfc49901e775260ac70ab
365
+ activestorage (8.1.3) sha256=0564ce9309143951a67615e1bb4e090ee54b8befed417133cae614479b46384d
366
+ activesupport (8.1.3) sha256=21a5e0dfbd4c3ddd9e1317ec6a4d782fa226e7867dc70b0743acda81a1dca20e
367
+ addressable (2.9.0) sha256=7fdf6ac3660f7f4e867a0838be3f6cf722ace541dd97767fa42bc6cfa980c7af
367
368
  amazing_print (2.0.0) sha256=2e36aba46ac78d37ed27ca0e2056afe3583183bb5c64f157c246b267355e5d6a
368
369
  appraisal (2.5.0) sha256=36989221be127913b0dba8d114da2001e6b2dceea7bd4951200eaba764eed3ce
369
370
  ast (2.4.3) sha256=954615157c1d6a382bc27d690d973195e79db7f55e9765ac7c481c60bdb4d383
370
371
  base64 (0.3.0) sha256=27337aeabad6ffae05c265c450490628ef3ebd4b67be58257393227588f5a97b
371
- bigdecimal (4.0.1) sha256=8b07d3d065a9f921c80ceaea7c9d4ae596697295b584c296fe599dd0ad01c4a7
372
+ bigdecimal (4.1.2) sha256=53d217666027eab4280346fba98e7d5b66baaae1b9c3c1c0ffe89d48188a3fbd
372
373
  builder (3.3.0) sha256=497918d2f9dca528fdca4b88d84e4ef4387256d984b8154e9d5d3fe5a9c8835f
373
374
  capybara (3.40.0) sha256=42dba720578ea1ca65fd7a41d163dd368502c191804558f6e0f71b391054aeef
374
375
  concurrent-ruby (1.3.6) sha256=6b56837e1e7e5292f9864f34b69c5a2cbc75c0cf5338f1ce9903d10fa762d5ab
@@ -383,17 +384,17 @@ CHECKSUMS
383
384
  difftastic (0.8.0-x86_64-linux) sha256=9c384dd9d2395b2b1b388922e1745f1472d19c4b3af9f83c0d22b30f6619208f
384
385
  dispersion (0.2.0) sha256=64a375f82197b50633b55250d5eac976c412b7c28a7f8cbf8b5f74ced1aaf362
385
386
  drb (2.2.3) sha256=0b00d6fdb50995fe4a45dea13663493c841112e4068656854646f418fda13373
386
- erb (6.0.1) sha256=28ecdd99c5472aebd5674d6061e3c6b0a45c049578b071e5a52c2a7f13c197e5
387
+ erb (6.0.4) sha256=38e3803694be357fe2bfe312487c74beaf9fb4e5beb3e22498952fe1645b95d9
387
388
  erubi (1.13.1) sha256=a082103b0885dbc5ecf1172fede897f9ebdb745a4b97a5e8dc63953db1ee4ad9
388
389
  globalid (1.3.0) sha256=05c639ad6eb4594522a0b07983022f04aa7254626ab69445a0e493aa3786ff11
389
390
  i18n (1.14.8) sha256=285778639134865c5e0f6269e0b818256017e8cde89993fdfcbfb64d088824a5
390
391
  io-console (0.8.2) sha256=d6e3ae7a7cc7574f4b8893b4fca2162e57a825b223a177b7afa236c5ef9814cc
391
- irb (1.16.0) sha256=2abe56c9ac947cdcb2f150572904ba798c1e93c890c256f8429981a7675b0806
392
- json (2.18.0) sha256=b10506aee4183f5cf49e0efc48073d7b75843ce3782c68dbeb763351c08fd505
392
+ irb (1.18.0) sha256=de9454a0703a54704b9811a5ef31a60c86949fbf4013fcf244fabc7c775248e3
393
+ json (2.19.5) sha256=218a18553e4801d579ca7e0f5bc72bafd776d7397238a1fb4e74db5b0a812c59
393
394
  language_server-protocol (3.17.0.5) sha256=fd1e39a51a28bf3eec959379985a72e296e9f9acfce46f6a79d31ca8760803cc
394
395
  lint_roller (1.1.0) sha256=2c0c845b632a7d172cb849cc90c1bce937a28c5c8ccccb50dfd46a485003cc87
395
396
  logger (1.7.0) sha256=196edec7cc44b66cfb40f9755ce11b392f21f7967696af15d274dde7edff0203
396
- loofah (2.25.0) sha256=df5ed7ac3bac6a4ec802df3877ee5cc86d027299f8952e6243b3dac446b060e6
397
+ loofah (2.25.1) sha256=d436c73dbd0c1147b16c4a41db097942d217303e1f7728704b37e4df9f6d2e04
397
398
  mail (2.9.0) sha256=6fa6673ecd71c60c2d996260f9ee3dd387d4673b8169b502134659ece6d34941
398
399
  marcel (1.1.0) sha256=fdcfcfa33cc52e93c4308d40e4090a5d4ea279e160a7f6af988260fa970e0bee
399
400
  matrix (0.4.3) sha256=a0d5ab7ddcc1973ff690ab361b67f359acbb16958d1dc072b8b956a286564c5b
@@ -403,58 +404,58 @@ CHECKSUMS
403
404
  minitest-difftastic (0.2.1) sha256=fc2c6e01cd839371772ed08604c9ce7b1567ee262e9dd4fef7d78665d1a99c45
404
405
  minitest-focus (1.4.1) sha256=394517cbe2dcb2d992d8ffc41a3b2b6315777a4daa69239de4fefe7110dd810e
405
406
  minitest-spec-rails (7.4.1) sha256=cda2638ded7cd98ab5f2bbf0eafbba9fdc4b0fc58248ad38703b12403831254f
406
- net-imap (0.6.2) sha256=08caacad486853c61676cca0c0c47df93db02abc4a8239a8b67eb0981428acc6
407
+ net-imap (0.6.4) sha256=9a5598c67a3022c284d98430ef1d4948e7dbdb62596f61081ea8ca933270a02b
407
408
  net-pop (0.1.2) sha256=848b4e982013c15b2f0382792268763b748cce91c9e91e36b0f27ed26420dff3
408
409
  net-protocol (0.2.2) sha256=aa73e0cba6a125369de9837b8d8ef82a61849360eba0521900e2c3713aa162a8
409
410
  net-smtp (0.5.1) sha256=ed96a0af63c524fceb4b29b0d352195c30d82dd916a42f03c62a3a70e5b70736
410
411
  nio4r (2.7.5) sha256=6c90168e48fb5f8e768419c93abb94ba2b892a1d0602cb06eef16d8b7df1dca1
411
- nokogiri (1.19.0-aarch64-linux-gnu) sha256=11a97ecc3c0e7e5edcf395720b10860ef493b768f6aa80c539573530bc933767
412
- nokogiri (1.19.0-aarch64-linux-musl) sha256=eb70507f5e01bc23dad9b8dbec2b36ad0e61d227b42d292835020ff754fb7ba9
413
- nokogiri (1.19.0-arm-linux-gnu) sha256=572a259026b2c8b7c161fdb6469fa2d0edd2b61cd599db4bbda93289abefbfe5
414
- nokogiri (1.19.0-arm-linux-musl) sha256=23ed90922f1a38aed555d3de4d058e90850c731c5b756d191b3dc8055948e73c
415
- nokogiri (1.19.0-arm64-darwin) sha256=0811dfd936d5f6dd3f6d32ef790568bf29b2b7bead9ba68866847b33c9cf5810
416
- nokogiri (1.19.0-x86_64-darwin) sha256=1dad56220b603a8edb9750cd95798bffa2b8dd9dd9aa47f664009ee5b43e3067
417
- nokogiri (1.19.0-x86_64-linux-gnu) sha256=f482b95c713d60031d48c44ce14562f8d2ce31e3a9e8dd0ccb131e9e5a68b58c
418
- nokogiri (1.19.0-x86_64-linux-musl) sha256=1c4ca6b381622420073ce6043443af1d321e8ed93cc18b08e2666e5bd02ffae4
419
- parallel (1.27.0) sha256=4ac151e1806b755fb4e2dc2332cbf0e54f2e24ba821ff2d3dcf86bf6dc4ae130
420
- parser (3.3.10.1) sha256=06f6a725d2cd91e5e7f2b7c32ba143631e1f7c8ae2fb918fc4cebec187e6a688
421
- phlex (2.4.0) sha256=8aad2f0cd792d7b1bd287f15a1f89474c9cacac28120dc33d2a81467ae934067
412
+ nokogiri (1.19.3-aarch64-linux-gnu) sha256=46b89e5d7b9e844c2ee360794240c6ea2a4e6fa0c5892a4ed487db621224b639
413
+ nokogiri (1.19.3-aarch64-linux-musl) sha256=8392dfdcd21be7a94dbbe9ccc138dea01b97b24cb2dc02a114ca98bfb1d9a0b7
414
+ nokogiri (1.19.3-arm-linux-gnu) sha256=3919d5ffc334ad778a4a9eb88fda7dcb8b1fb58c8a52ac640c6dcd2f038e774f
415
+ nokogiri (1.19.3-arm-linux-musl) sha256=9ce1cb6346bb9c67b1550eb537aa183ead91e4b6eadb2f36ade02d8dd2a79fb6
416
+ nokogiri (1.19.3-arm64-darwin) sha256=71b9bd424b1b7abc18b05052a1a3cfd3627abdca62be280854cc411791357e42
417
+ nokogiri (1.19.3-x86_64-darwin) sha256=77f3fba57d46c53ab31e62fc6c28f705109d1bf6264356c76f132b2be5728d4d
418
+ nokogiri (1.19.3-x86_64-linux-gnu) sha256=2f5078620fe12e83669b5b17311b32532a8153d02eee7ad06948b926d6080976
419
+ nokogiri (1.19.3-x86_64-linux-musl) sha256=248c906d2166eca5efb56d52fdee5f9a1f51d69a72e2b64fdac647b4ce39ea3f
420
+ parallel (2.1.0) sha256=b35258865c2e31134c5ecb708beaaf6772adf9d5efae28e93e99260877b09356
421
+ parser (3.3.11.1) sha256=d17ace7aabe3e72c3cc94043714be27cc6f852f104d81aa284c2281aecc65d54
422
+ phlex (2.4.1) sha256=e596717fbfe38b5271840266758779ebe75092e02629f0c170287e6290a70b12
422
423
  phlex-rails (2.4.0) sha256=2bcddbd488681acb25753bab1887d3ac150e644244ff8ba307f2171a4d0195f5
423
- phlexible (3.3.0)
424
+ phlexible (3.4.0)
424
425
  pp (0.6.3) sha256=2951d514450b93ccfeb1df7d021cae0da16e0a7f95ee1e2273719669d0ab9df6
425
426
  pretty_please (0.2.0) sha256=1f00296f946ae8ffd53db25803ed3998d615b9cc07526517dc75fcca6af3a0d3
426
427
  prettyprint (0.2.0) sha256=2bc9e15581a94742064a3cc8b0fb9d45aae3d03a1baa6ef80922627a0766f193
427
- prism (1.8.0) sha256=84453a16ef5530ea62c5f03ec16b52a459575ad4e7b9c2b360fd8ce2c39c1254
428
+ prism (1.9.0) sha256=7b530c6a9f92c24300014919c9dcbc055bf4cdf51ec30aed099b06cd6674ef85
428
429
  psych (5.3.1) sha256=eb7a57cef10c9d70173ff74e739d843ac3b2c019a003de48447b2963d81b1974
429
- public_suffix (7.0.2) sha256=9114090c8e4e7135c1fd0e7acfea33afaab38101884320c65aaa0ffb8e26a857
430
+ public_suffix (7.0.5) sha256=1a8bb08f1bbea19228d3bed6e5ed908d1cb4f7c2726d18bd9cadf60bc676f623
430
431
  racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f
431
- rack (3.2.4) sha256=5d74b6f75082a643f43c1e76b419c40f0e5527fcfee1e669ac1e6b73c0ccb6f6
432
- rack-session (2.1.1) sha256=0b6dc07dea7e4b583f58a48e8b806d4c9f1c6c9214ebc202ec94562cbea2e4e9
432
+ rack (3.2.6) sha256=5ed78e1f73b2e25679bec7d45ee2d4483cc4146eb1be0264fc4d94cb5ef212c2
433
+ rack-session (2.1.2) sha256=595434f8c0c3473ae7d7ac56ecda6cc6dfd9d37c0b2b5255330aa1576967ffe8
433
434
  rack-test (2.2.0) sha256=005a36692c306ac0b4a9350355ee080fd09ddef1148a5f8b2ac636c720f5c463
434
435
  rackup (2.3.1) sha256=6c79c26753778e90983761d677a48937ee3192b3ffef6bc963c0950f94688868
435
- rails (8.1.2) sha256=5069061b23dfa8706b9f0159ae8b9d35727359103178a26962b868a680ba7d95
436
+ rails (8.1.3) sha256=6d017ba5348c98fc909753a8169b21d44de14d2a0b92d140d1a966834c3c9cd3
436
437
  rails-dom-testing (2.3.0) sha256=8acc7953a7b911ca44588bf08737bc16719f431a1cc3091a292bca7317925c1d
437
- rails-html-sanitizer (1.6.2) sha256=35fce2ca8242da8775c83b6ba9c1bcaad6751d9eb73c1abaa8403475ab89a560
438
- railties (8.1.2) sha256=1289ece76b4f7668fc46d07e55cc992b5b8751f2ad85548b7da351b8c59f8055
438
+ rails-html-sanitizer (1.7.0) sha256=28b145cceaf9cc214a9874feaa183c3acba036c9592b19886e0e45efc62b1e89
439
+ railties (8.1.3) sha256=913eb0e0cb520aac687ffd74916bd726d48fa21f47833c6292576ef6a286de22
439
440
  rainbow (3.1.1) sha256=039491aa3a89f42efa1d6dec2fc4e62ede96eb6acd95e52f1ad581182b79bc6a
440
- rake (13.3.1) sha256=8c9e89d09f66a26a01264e7e3480ec0607f0c497a861ef16063604b1b08eb19c
441
- rdoc (7.1.0) sha256=494899df0706c178596ca6e1d50f1b7eb285a9b2aae715be5abd742734f17363
441
+ rake (13.4.2) sha256=cb825b2bd5f1f8e91ca37bddb4b9aaf345551b4731da62949be002fa89283701
442
+ rdoc (7.2.0) sha256=8650f76cd4009c3b54955eb5d7e3a075c60a57276766ebf36f9085e8c9f23192
442
443
  refract (1.1.0) sha256=ee3b9627e39f7692831101e2fedd73e0d09a592ff5d5c05f171d14211fc7a9c7
443
- regexp_parser (2.11.3) sha256=ca13f381a173b7a93450e53459075c9b76a10433caadcb2f1180f2c741fc55a4
444
+ regexp_parser (2.12.0) sha256=35a916a1d63190ab5c9009457136ae5f3c0c7512d60291d0d1378ba18ce08ebb
444
445
  reline (0.6.3) sha256=1198b04973565b36ec0f11542ab3f5cfeeec34823f4e54cebde90968092b1835
445
- rubocop (1.82.1) sha256=09f1a6a654a960eda767aebea33e47603080f8e9c9a3f019bf9b94c9cab5e273
446
- rubocop-ast (1.49.0) sha256=49c3676d3123a0923d333e20c6c2dbaaae2d2287b475273fddee0c61da9f71fd
446
+ rubocop (1.86.1) sha256=44415f3f01d01a21e01132248d2fd0867572475b566ca188a0a42133a08d4531
447
+ rubocop-ast (1.49.1) sha256=4412f3ee70f6fe4546cc489548e0f6fcf76cafcfa80fa03af67098ffed755035
447
448
  rubocop-disable_syntax (0.2.0) sha256=1e61645773b3fc2f74e995ec65f605f7db59437c274fdfd4f385f60bf86af73e
448
- rubocop-minitest (0.38.2) sha256=5a9dfb5a538973d0601aa51e59637d3998bb8df81233edf1ff421504c6280068
449
+ rubocop-minitest (0.39.1) sha256=998398d6da4026d297f0f9bf709a1eac5f2b6947c24431f94af08138510cf7ed
449
450
  rubocop-packaging (0.6.0) sha256=fb92bd0fb48e6f8cdb1648d2249b0cd51c2497dcc87340132d22f01edbf558a7
450
451
  rubocop-performance (1.26.1) sha256=cd19b936ff196df85829d264b522fd4f98b6c89ad271fa52744a8c11b8f71834
451
- rubocop-rails (2.34.3) sha256=10d37989024865ecda8199f311f3faca990143fbac967de943f88aca11eb9ad2
452
+ rubocop-rails (2.35.0) sha256=a5d9f0f6c6d9b73d9ddd181c4c0b6d2e00dd17107480828d31c7b369ebfcd49c
452
453
  rubocop-rake (0.7.1) sha256=3797f2b6810c3e9df7376c26d5f44f3475eda59eb1adc38e6f62ecf027cbae4d
453
454
  ruby-progressbar (1.13.0) sha256=80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33
454
455
  securerandom (0.4.1) sha256=cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1
455
456
  stringio (3.2.0) sha256=c37cb2e58b4ffbd33fe5cd948c05934af997b36e0b6ca6fdf43afa234cf222e1
456
457
  thor (1.5.0) sha256=e3a9e55fe857e44859ce104a84675ab6e8cd59c650a49106a05f55f136425e73
457
- timeout (0.6.0) sha256=6d722ad619f96ee383a0c557ec6eb8c4ecb08af3af62098a0be5057bf00de1af
458
+ timeout (0.6.1) sha256=78f57368a7e7bbadec56971f78a3f5ecbcfb59b7fcbb0a3ed6ddc08a5094accb
458
459
  tsort (0.2.0) sha256=9650a793f6859a43b6641671278f79cfead60ac714148aabe4e3f0060480089f
459
460
  tzinfo (2.0.6) sha256=8daf828cc77bcf7d63b0e3bdb6caa47e2272dcfaf4fbfe46f8c3a9df087a829b
460
461
  unicode-display_width (3.2.0) sha256=0cdd96b5681a5949cdbc2c55e7b420facae74c4aaf9a9815eee1087cb1853c42
@@ -464,7 +465,7 @@ CHECKSUMS
464
465
  websocket-driver (0.8.0) sha256=ed0dba4b943c22f17f9a734817e808bc84cdce6a7e22045f5315aa57676d4962
465
466
  websocket-extensions (0.1.5) sha256=1c6ba63092cda343eb53fc657110c71c754c56484aad42578495227d717a8241
466
467
  xpath (3.2.0) sha256=6dfda79d91bb3b949b947ecc5919f042ef2f399b904013eb3ef6d20dd3a4082e
467
- zeitwerk (2.7.4) sha256=2bef90f356bdafe9a6c2bd32bcd804f83a4f9b8bc27f3600fff051eb3edcec8b
468
+ zeitwerk (2.7.5) sha256=d8da92128c09ea6ec62c949011b00ed4a20242b255293dd66bf41545398f73dd
468
469
 
469
470
  BUNDLED WITH
470
471
  4.0.4
@@ -0,0 +1,65 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Phlexible
4
+ #
5
+ # Provides variant support, allowing you to customise attributes based on the variant name.
6
+ # Declare the variant for one or more tags:
7
+ #
8
+ # variant :external, on: :a
9
+ # variant :divider, on: [:h1, :h2, :h3, :h4, :h5, :h6]
10
+ #
11
+ # Then pass the variant name as a Symbol or Array of Symbols in the first argument to the element
12
+ # method.
13
+ #
14
+ # h1(:divider) { 'My Title' }
15
+ #
16
+ # The variant will be applied to the element, which by default will simply add a data attribute to
17
+ # the element:
18
+ #
19
+ # <h1 data-variant-divider></h1>
20
+ #
21
+ # Optionally, you can pass a block to the declaration, and the when the variant is used, the block
22
+ # will be called with the attributes Hash. Allowing you to modify the attributes.
23
+ #
24
+ # variant :external, on: :a do |attributes|
25
+ # attributes[:target] = '_blank'
26
+ # end
27
+ #
28
+ module ElementVariants
29
+ ELEMENT_VARIANTS = Concurrent::Map.new
30
+
31
+ def variant(name, on:, &block)
32
+ on = [on] if !on.is_a?(Array)
33
+
34
+ on.each do |tag_name|
35
+ tag_name = tag_name.to_s.tr('-', '_').to_sym
36
+
37
+ class_eval(<<-RUBY, __FILE__, __LINE__ + 1) # rubocop:disable Style/DocumentDynamicEvalDefinition
38
+ # frozen_string_literal: true
39
+
40
+ def #{tag_name}(*variants, **attributes, &block) # def h4(...)
41
+ attributes[:data] = attributes.fetch(:data, {})
42
+ rvars = ELEMENT_VARIANTS[:#{tag_name}]
43
+
44
+ variants.each do |variant|
45
+ unless rvars[variant]
46
+ raise ArgumentError, "Unknown variant `\#{variant}` for `#{tag_name}`. Have you registered it?"
47
+ end
48
+
49
+ attributes[:data]["variant-" + variant.to_s.tr('_', '-')] = true
50
+
51
+ if rvars[variant].is_a?(Proc)
52
+ instance_exec(attributes, &rvars[variant])
53
+ end
54
+ end
55
+
56
+ super(**attributes, &block)
57
+ end
58
+ RUBY
59
+
60
+ ELEMENT_VARIANTS[tag_name] = Concurrent::Map.new if !ELEMENT_VARIANTS[tag_name]
61
+ ELEMENT_VARIANTS[tag_name][name] = block || true if !ELEMENT_VARIANTS[tag_name][name]
62
+ end
63
+ end
64
+ end
65
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Phlexible
4
- VERSION = '3.3.0'
4
+ VERSION = '3.4.0'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: phlexible
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.3.0
4
+ version: 3.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Joel Moss
@@ -116,6 +116,7 @@ files:
116
116
  - lib/phlexible.rb
117
117
  - lib/phlexible/alias_view.rb
118
118
  - lib/phlexible/callbacks.rb
119
+ - lib/phlexible/element_variants.rb
119
120
  - lib/phlexible/page_title.rb
120
121
  - lib/phlexible/process_attributes.rb
121
122
  - lib/phlexible/rails/a_element.rb