lato 3.24.0 → 3.26.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.
Files changed (62) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +49 -5
  3. data/app/assets/javascripts/lato/controllers/lato_account_security_controller.js +51 -0
  4. data/app/assets/javascripts/lato/controllers/lato_account_webauthn_controller.js +8 -5
  5. data/app/assets/javascripts/lato/controllers/lato_action_controller.js +26 -15
  6. data/app/assets/javascripts/lato/controllers/lato_confirm_controller.js +25 -15
  7. data/app/assets/javascripts/lato/controllers/lato_copyclip_controller.js +28 -10
  8. data/app/assets/javascripts/lato/controllers/lato_form_controller.js +1 -0
  9. data/app/assets/javascripts/lato/controllers/lato_index_controller.js +4 -1
  10. data/app/controllers/concerns/lato/componentable.rb +20 -8
  11. data/app/controllers/concerns/lato/sessionable.rb +58 -16
  12. data/app/controllers/lato/account_controller.rb +98 -24
  13. data/app/controllers/lato/application_controller.rb +25 -1
  14. data/app/controllers/lato/authentication_controller.rb +74 -39
  15. data/app/helpers/lato/components_helper.rb +42 -16
  16. data/app/jobs/lato/active_storage_cleaner_job.rb +8 -7
  17. data/app/models/lato/invitation.rb +1 -1
  18. data/app/models/lato/operation.rb +6 -2
  19. data/app/models/lato/session.rb +73 -19
  20. data/app/models/lato/session_record.rb +5 -0
  21. data/app/models/lato/user.rb +66 -26
  22. data/app/views/lato/account/_alert-accepted-privacy-policy-version.html.erb +1 -1
  23. data/app/views/lato/account/_alert-accepted-terms-and-conditions-version.html.erb +1 -1
  24. data/app/views/lato/account/_form-authenticator.html.erb +19 -33
  25. data/app/views/lato/account/_form-destroy.html.erb +1 -0
  26. data/app/views/lato/account/_form-password.html.erb +4 -2
  27. data/app/views/lato/account/_form-user.html.erb +1 -0
  28. data/app/views/lato/account/_form-web3.html.erb +5 -3
  29. data/app/views/lato/account/_form-webauthn.html.erb +1 -0
  30. data/app/views/lato/account/_security-confirmation.html.erb +12 -0
  31. data/app/views/lato/authentication/_fields-registration.html.erb +8 -7
  32. data/app/views/lato/authentication/_form-authenticator.html.erb +2 -2
  33. data/app/views/lato/authentication/_form-signin.html.erb +2 -2
  34. data/app/views/lato/authentication/_form-verify-email.html.erb +3 -2
  35. data/app/views/lato/authentication/_form-web3-signin.html.erb +4 -3
  36. data/app/views/lato/components/_index.html.erb +25 -20
  37. data/app/views/lato/components/_navbar_nav_item.html.erb +1 -1
  38. data/app/views/lato/components/_operation.html.erb +4 -1
  39. data/app/views/lato/components/_page_head.html.erb +1 -1
  40. data/app/views/lato/components/_sidebar_nav_item.html.erb +2 -1
  41. data/app/views/lato/mailer/invitation/invite_mail.html.erb +1 -1
  42. data/app/views/lato/mailer/user/email_verification_mail.html.erb +1 -1
  43. data/app/views/lato/mailer/user/password_update_mail.html.erb +1 -1
  44. data/app/views/lato/mailer/user/signin_success_mail.html.erb +1 -1
  45. data/app/views/layouts/lato/_action.html.erb +2 -2
  46. data/app/views/layouts/lato/_aside-opener.html.erb +2 -2
  47. data/app/views/layouts/lato/_confirm.html.erb +6 -8
  48. data/app/views/layouts/lato/_feedbacks.html.erb +9 -8
  49. data/app/views/layouts/lato/_mailer-head_content.html.erb +1 -1
  50. data/app/views/layouts/lato/_network.html.erb +3 -3
  51. data/app/views/layouts/lato/application.html.erb +3 -2
  52. data/config/locales/en.yml +32 -0
  53. data/config/locales/fr.yml +29 -0
  54. data/config/locales/it.yml +29 -0
  55. data/config/locales/ro.yml +29 -0
  56. data/config/routes.rb +1 -0
  57. data/db/migrate/20261024000000_create_lato_session_records.rb +16 -0
  58. data/db/migrate/20261110000000_add_second_factor_counters_to_lato_users.rb +6 -0
  59. data/lib/lato/config.rb +4 -0
  60. data/lib/lato/engine.rb +9 -0
  61. data/lib/lato/version.rb +1 -1
  62. metadata +34 -17
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lato
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.24.0
4
+ version: 3.26.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gregorio Galante
@@ -15,14 +15,20 @@ dependencies:
15
15
  requirements:
16
16
  - - ">="
17
17
  - !ruby/object:Gem::Version
18
- version: 7.0.4
18
+ version: 8.1.3.1
19
+ - - "<"
20
+ - !ruby/object:Gem::Version
21
+ version: '8.2'
19
22
  type: :runtime
20
23
  prerelease: false
21
24
  version_requirements: !ruby/object:Gem::Requirement
22
25
  requirements:
23
26
  - - ">="
24
27
  - !ruby/object:Gem::Version
25
- version: 7.0.4
28
+ version: 8.1.3.1
29
+ - - "<"
30
+ - !ruby/object:Gem::Version
31
+ version: '8.2'
26
32
  - !ruby/object:Gem::Dependency
27
33
  name: rails-i18n
28
34
  requirement: !ruby/object:Gem::Requirement
@@ -41,30 +47,36 @@ dependencies:
41
47
  name: bcrypt
42
48
  requirement: !ruby/object:Gem::Requirement
43
49
  requirements:
44
- - - ">="
50
+ - - "~>"
45
51
  - !ruby/object:Gem::Version
46
- version: '0'
52
+ version: '3.1'
47
53
  type: :runtime
48
54
  prerelease: false
49
55
  version_requirements: !ruby/object:Gem::Requirement
50
56
  requirements:
51
- - - ">="
57
+ - - "~>"
52
58
  - !ruby/object:Gem::Version
53
- version: '0'
59
+ version: '3.1'
54
60
  - !ruby/object:Gem::Dependency
55
61
  name: bootstrap
56
62
  requirement: !ruby/object:Gem::Requirement
57
63
  requirements:
58
64
  - - ">="
59
65
  - !ruby/object:Gem::Version
60
- version: '0'
66
+ version: '5.0'
67
+ - - "<"
68
+ - !ruby/object:Gem::Version
69
+ version: '6'
61
70
  type: :runtime
62
71
  prerelease: false
63
72
  version_requirements: !ruby/object:Gem::Requirement
64
73
  requirements:
65
74
  - - ">="
66
75
  - !ruby/object:Gem::Version
67
- version: '0'
76
+ version: '5.0'
77
+ - - "<"
78
+ - !ruby/object:Gem::Version
79
+ version: '6'
68
80
  - !ruby/object:Gem::Dependency
69
81
  name: kaminari
70
82
  requirement: !ruby/object:Gem::Requirement
@@ -125,30 +137,30 @@ dependencies:
125
137
  name: rotp
126
138
  requirement: !ruby/object:Gem::Requirement
127
139
  requirements:
128
- - - ">="
140
+ - - "~>"
129
141
  - !ruby/object:Gem::Version
130
- version: '0'
142
+ version: '6.0'
131
143
  type: :runtime
132
144
  prerelease: false
133
145
  version_requirements: !ruby/object:Gem::Requirement
134
146
  requirements:
135
- - - ">="
147
+ - - "~>"
136
148
  - !ruby/object:Gem::Version
137
- version: '0'
149
+ version: '6.0'
138
150
  - !ruby/object:Gem::Dependency
139
151
  name: webauthn
140
152
  requirement: !ruby/object:Gem::Requirement
141
153
  requirements:
142
- - - ">="
154
+ - - "~>"
143
155
  - !ruby/object:Gem::Version
144
- version: '0'
156
+ version: '3.0'
145
157
  type: :runtime
146
158
  prerelease: false
147
159
  version_requirements: !ruby/object:Gem::Requirement
148
160
  requirements:
149
- - - ">="
161
+ - - "~>"
150
162
  - !ruby/object:Gem::Version
151
- version: '0'
163
+ version: '3.0'
152
164
  - !ruby/object:Gem::Dependency
153
165
  name: eth
154
166
  requirement: !ruby/object:Gem::Requirement
@@ -182,6 +194,7 @@ files:
182
194
  - app/assets/javascripts/lato/controllers/application.js
183
195
  - app/assets/javascripts/lato/controllers/index.js
184
196
  - app/assets/javascripts/lato/controllers/lato_account_form_user_controller.js
197
+ - app/assets/javascripts/lato/controllers/lato_account_security_controller.js
185
198
  - app/assets/javascripts/lato/controllers/lato_account_webauthn_controller.js
186
199
  - app/assets/javascripts/lato/controllers/lato_action_controller.js
187
200
  - app/assets/javascripts/lato/controllers/lato_aside_opener_controller.js
@@ -226,6 +239,7 @@ files:
226
239
  - app/models/lato/log/user_signup.rb
227
240
  - app/models/lato/operation.rb
228
241
  - app/models/lato/session.rb
242
+ - app/models/lato/session_record.rb
229
243
  - app/models/lato/user.rb
230
244
  - app/views/lato/account/_alert-accepted-privacy-policy-version.html.erb
231
245
  - app/views/lato/account/_alert-accepted-terms-and-conditions-version.html.erb
@@ -235,6 +249,7 @@ files:
235
249
  - app/views/lato/account/_form-user.html.erb
236
250
  - app/views/lato/account/_form-web3.html.erb
237
251
  - app/views/lato/account/_form-webauthn.html.erb
252
+ - app/views/lato/account/_security-confirmation.html.erb
238
253
  - app/views/lato/account/index.html.erb
239
254
  - app/views/lato/authentication/_fields-registration.html.erb
240
255
  - app/views/lato/authentication/_form-accept-invitation.html.erb
@@ -312,6 +327,8 @@ files:
312
327
  - db/migrate/20240318074025_add_authenticator_secret_to_user.rb
313
328
  - db/migrate/20251206170443_add_webauthn_id_to_user.rb
314
329
  - db/migrate/20251218192614_add_logs_on_lato_operation.rb
330
+ - db/migrate/20261024000000_create_lato_session_records.rb
331
+ - db/migrate/20261110000000_add_second_factor_counters_to_lato_users.rb
315
332
  - lib/lato.rb
316
333
  - lib/lato/btstrap.rb
317
334
  - lib/lato/config.rb