roda-project 0.1.17 → 0.1.18

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 (63) hide show
  1. checksums.yaml +4 -4
  2. data/lib/roda/project/bin/generators/routes.rb +161 -72
  3. data/lib/roda/project/bin/generators.rb +1 -0
  4. data/lib/roda/project/cli.rb +19 -12
  5. data/lib/roda/project/helpers/ids.rb +9 -0
  6. data/lib/roda/project/main_context.rb +22 -1
  7. data/lib/roda/project/templates/base/app/app.rb.erb +11 -2
  8. data/lib/roda/project/templates/{base/scaffold → base-scaffold}/AGENTS.md.erb +12 -6
  9. data/lib/roda/project/templates/{base/scaffold → base-scaffold}/Gemfile.erb +3 -2
  10. data/lib/roda/project/templates/front-end-inertia/app/assets/css/app.css +20 -0
  11. data/lib/roda/project/templates/front-end-inertia/app/assets/js/app.js +11 -0
  12. data/lib/roda/project/templates/front-end-inertia/app/assets/js/inertia/components/Layout.jsx +11 -0
  13. data/lib/roda/project/templates/front-end-inertia/app/assets/js/inertia/views/Index.jsx +13 -0
  14. data/lib/roda/project/templates/front-end-inertia/app/config/locales/en.yml +273 -0
  15. data/lib/roda/project/templates/front-end-inertia/app/config/locales/foo/en.yml +2 -0
  16. data/lib/roda/project/templates/front-end-inertia/app/config/locales/foo/pt-br.yml +2 -0
  17. data/lib/roda/project/templates/front-end-inertia/app/config/locales/pt-br.yml +244 -0
  18. data/lib/roda/project/templates/front-end-inertia/app/views/foo/bar.erb +1 -0
  19. data/lib/roda/project/templates/front-end-inertia/app/views/index.erb +1 -0
  20. data/lib/roda/project/templates/front-end-inertia/app/views/layout.erb +23 -0
  21. data/lib/roda/project/templates/front-end-inertia/esbuild.js +53 -0
  22. data/lib/roda/project/templates/front-end-inertia/package.json +23 -0
  23. data/lib/roda/project/templates/front-end-inertia/public/assets/app.css +1 -0
  24. data/lib/roda/project/templates/front-end-inertia/public/images/roda-project.png +0 -0
  25. data/lib/roda/project/templates/tests-rspec/spec/app/views/html_spec.rb +0 -0
  26. data/lib/roda/project/version.rb +1 -1
  27. data/lib/roda/project.rb +3 -0
  28. metadata +53 -38
  29. data/lib/roda/project/templates/front-end/app/assets/js/some/foo.js +0 -5
  30. /data/lib/roda/project/templates/{base/minimal → base-minimal}/AGENTS.md +0 -0
  31. /data/lib/roda/project/templates/{base/minimal → base-minimal}/Gemfile.erb +0 -0
  32. /data/lib/roda/project/templates/{base/minimal → base-minimal}/Gemfile.lock +0 -0
  33. /data/lib/roda/project/templates/{base/minimal → base-minimal}/Guardfile +0 -0
  34. /data/lib/roda/project/templates/{base/minimal → base-minimal}/README.md +0 -0
  35. /data/lib/roda/project/templates/{base/minimal → base-minimal}/app.rb +0 -0
  36. /data/lib/roda/project/templates/{base/minimal → base-minimal}/bin/roda.erb +0 -0
  37. /data/lib/roda/project/templates/{base/minimal → base-minimal}/boot.rb +0 -0
  38. /data/lib/roda/project/templates/{base/minimal → base-minimal}/config.ru +0 -0
  39. /data/lib/roda/project/templates/{base/minimal → base-minimal}/public/exception_page.css +0 -0
  40. /data/lib/roda/project/templates/{base/scaffold → base-scaffold}/Guardfile +0 -0
  41. /data/lib/roda/project/templates/{base/scaffold → base-scaffold}/README.md +0 -0
  42. /data/lib/roda/project/templates/{base/scaffold → base-scaffold}/app/config/config.rb.erb +0 -0
  43. /data/lib/roda/project/templates/{base/scaffold → base-scaffold}/app/config/providers/logger.rb +0 -0
  44. /data/lib/roda/project/templates/{base/scaffold → base-scaffold}/app/config/providers/mailer.rb +0 -0
  45. /data/lib/roda/project/templates/{base/scaffold → base-scaffold}/app/routes/foo.rb.erb +0 -0
  46. /data/lib/roda/project/templates/{base/scaffold → base-scaffold}/bin/roda.erb +0 -0
  47. /data/lib/roda/project/templates/{base/scaffold → base-scaffold}/boot.rb.erb +0 -0
  48. /data/lib/roda/project/templates/{base/scaffold → base-scaffold}/config.ru.erb +0 -0
  49. /data/lib/roda/project/templates/{base/scaffold → base-scaffold}/public/exception_page.css +0 -0
  50. /data/lib/roda/project/templates/{tests/minitest/spec/app/views/html_spec.rb → front-end-inertia/public/assets/app.js} +0 -0
  51. /data/lib/roda/project/templates/{tests/minimal/minitest → tests-minimal-minitest}/spec/app_spec.rb +0 -0
  52. /data/lib/roda/project/templates/{tests/minimal/minitest → tests-minimal-minitest}/spec/spec_helper.rb.erb +0 -0
  53. /data/lib/roda/project/templates/{tests/minimal/rspec → tests-minimal-rspec}/spec/app_spec.rb +0 -0
  54. /data/lib/roda/project/templates/{tests/minimal/rspec → tests-minimal-rspec}/spec/spec_helper.rb +0 -0
  55. /data/lib/roda/project/templates/{tests/minitest → tests-minitest}/spec/app/app_spec.rb.erb +0 -0
  56. /data/lib/roda/project/templates/{tests/minitest → tests-minitest}/spec/app/routes/foo_spec.rb.erb +0 -0
  57. /data/lib/roda/project/templates/{tests/minitest → tests-minitest}/spec/app/routes/test_branch_spec.rb +0 -0
  58. /data/lib/roda/project/templates/{tests/rspec → tests-minitest}/spec/app/views/html_spec.rb +0 -0
  59. /data/lib/roda/project/templates/{tests/minitest → tests-minitest}/spec/spec_helper.rb.erb +0 -0
  60. /data/lib/roda/project/templates/{tests/rspec → tests-rspec}/spec/app/app_spec.rb.erb +0 -0
  61. /data/lib/roda/project/templates/{tests/rspec → tests-rspec}/spec/app/routes/foo_spec.rb.erb +0 -0
  62. /data/lib/roda/project/templates/{tests/rspec → tests-rspec}/spec/app/routes/test_branch_spec.rb +0 -0
  63. /data/lib/roda/project/templates/{tests/rspec → tests-rspec}/spec/spec_helper.rb.erb +0 -0
@@ -0,0 +1,273 @@
1
+ hello:
2
+ message: Hello world
3
+ rodauth:
4
+ #account_expiration_error_flash: You cannot log into this account as it has expired
5
+ #active_sessions_error_flash: This session has been logged out
6
+ #add_recovery_codes_button: Add Authentication Recovery Codes
7
+ #add_recovery_codes_error_flash: Unable to add recovery codes
8
+ #add_recovery_codes_heading: "<h2>Add Additional Recovery Codes</h2>"
9
+ #add_recovery_codes_page_title: Authentication Recovery Codes
10
+ #already_an_account_with_this_login_message: already an account with this login
11
+ #attempt_to_create_unverified_account_error_flash: The account you tried to create is currently awaiting verification
12
+ #attempt_to_login_to_unverified_account_error_flash: The account you tried to login with is currently awaiting verification
13
+ #change_login_button: Change Login
14
+ #change_login_error_flash: There was an error changing your login
15
+ #change_login_needs_verification_notice_flash: An email has been sent to you with a link to verify your login change
16
+ #change_login_notice_flash: Your login has been changed
17
+ #change_login_page_title: Change Login
18
+ #change_password_button: Change Password
19
+ #change_password_error_flash: There was an error changing your password
20
+ #change_password_notice_flash: Your password has been changed
21
+ #change_password_page_title: Change Password
22
+ #close_account_button: Close Account
23
+ #close_account_error_flash: There was an error closing your account
24
+ #close_account_notice_flash: Your account has been closed
25
+ #close_account_page_title: Close Account
26
+ #confirm_password_button: Confirm Password
27
+ #confirm_password_error_flash: There was an error confirming your password
28
+ #confirm_password_link_text: Enter Password
29
+ #confirm_password_notice_flash: Your password has been confirmed
30
+ #confirm_password_page_title: Confirm Password
31
+ #contains_null_byte_message: contains null byte
32
+ create_account_button: Create Account
33
+ #create_account_error_flash: There was an error creating your account
34
+ #create_account_link_text: Create a New Account
35
+ #create_account_notice_flash: Your account has been created
36
+ #create_account_page_title: Create Account
37
+ #email_auth_email_recently_sent_error_flash: An email has recently been sent to you with a link to login
38
+ #email_auth_email_sent_notice_flash: An email has been sent to you with a link to login to your account
39
+ #email_auth_email_subject: Login Link
40
+ #email_auth_error_flash: There was an error logging you in
41
+ #email_auth_page_title: Login
42
+ #email_auth_request_button: Send Login Link Via Email
43
+ #email_auth_request_error_flash: There was an error requesting an email link to authenticate
44
+ #email_subject_prefix: ''
45
+ #expired_jwt_access_token_message: expired JWT access token
46
+ #global_logout_label: Logout all Logged In Sessions?
47
+ #input_field_label_suffix: ''
48
+ #invalid_jwt_format_error_message: invalid JWT format or claim in Authorization header
49
+ #invalid_password_message: invalid password
50
+ #invalid_recovery_code_error_flash: Error authenticating via recovery code
51
+ #invalid_recovery_code_message: Invalid recovery code
52
+ #json_non_post_error_message: non-POST method used in JSON API
53
+ #json_not_accepted_error_message: Unsupported Accept header. Must accept "application/json" or compatible content type
54
+ #jwt_refresh_invalid_token_message: invalid JWT refresh token
55
+ #jwt_refresh_without_access_token_message: no JWT access token provided during refresh
56
+ #login_button: Login
57
+ #login_confirm_label: Confirm %{login_label}
58
+ #login_does_not_meet_requirements_message: invalid login, does not meet requirements
59
+ #login_error_flash: There was an error logging in
60
+ #login_form_footer_links_heading: <h2 class="rodauth-login-form-footer-links-heading">Other Options</h2>
61
+ #login_label: Login
62
+ #login_lockout_error_flash: This account is currently locked out and cannot be logged in to
63
+ #login_not_valid_email_message: not a valid email address
64
+ #login_notice_flash: You have been logged in
65
+ #login_page_title: Login
66
+ #login_too_long_message: maximum %{login_maximum_length} characters
67
+ #login_too_many_bytes_message: maximum %{login_maximum_bytes} bytes
68
+ #login_too_short_message: minimum %{login_minimum_length} characters
69
+ #logins_do_not_match_message: logins do not match
70
+ #logout_button: Logout
71
+ #logout_notice_flash: You have been logged out
72
+ #logout_page_title: Logout
73
+ #multi_phase_login_page_title: Login
74
+ #need_password_notice_flash: Login recognized, please enter your password
75
+ #new_password_label: New Password
76
+ #no_current_sms_code_error_flash: No current SMS code for this account
77
+ #no_matching_email_auth_key_error_flash: 'There was an error logging you in: invalid email authentication key'
78
+ #no_matching_login_message: no matching login
79
+ #no_matching_reset_password_key_error_flash: 'There was an error resetting your password: invalid or expired password reset key'
80
+ #no_matching_unlock_account_key_error_flash: 'There was an error unlocking your account: invalid or expired unlock account key'
81
+ #no_matching_verify_account_key_error_flash: 'There was an error verifying your account: invalid verify account key'
82
+ #no_matching_verify_login_change_key_error_flash: 'There was an error verifying your login change: invalid verify login change key'
83
+ #non_json_request_error_message: Only JSON format requests are allowed
84
+ #otp_already_setup_error_flash: You have already setup TOTP authentication
85
+ #otp_auth_button: Authenticate Using TOTP
86
+ #otp_auth_error_flash: Error logging in via TOTP authentication
87
+ #otp_auth_form_footer: ''
88
+ #otp_auth_label: Authentication Code
89
+ #otp_auth_link_text: Authenticate Using TOTP
90
+ #otp_auth_page_title: Enter Authentication Code
91
+ #otp_disable_button: Disable TOTP Authentication
92
+ #otp_disable_error_flash: Error disabling TOTP authentication
93
+ #otp_disable_link_text: Disable TOTP Authentication
94
+ #otp_disable_notice_flash: TOTP authentication has been disabled
95
+ #otp_disable_page_title: Disable TOTP Authentication
96
+ #otp_disabled_email_subject: TOTP Authentication Disabled
97
+ #otp_invalid_auth_code_message: Invalid authentication code
98
+ #otp_invalid_secret_message: invalid secret
99
+ #otp_locked_out_email_subject: TOTP Authentication Locked Out
100
+ #otp_lockout_error_flash: TOTP authentication code use locked out due to numerous failures
101
+ #otp_provisioning_uri_label: Provisioning URL
102
+ #otp_secret_label: Secret
103
+ #otp_setup_button: Setup TOTP Authentication
104
+ #otp_setup_email_subject: TOTP Authentication Setup
105
+ #otp_setup_error_flash: Error setting up TOTP authentication
106
+ #otp_setup_link_text: Setup TOTP Authentication
107
+ #otp_setup_notice_flash: TOTP authentication is now setup
108
+ #otp_setup_page_title: Setup TOTP Authentication
109
+ #otp_unlock_auth_deadline_passed_error_flash: Deadline past for unlocking TOTP authentication
110
+ #otp_unlock_auth_failure_error_flash: TOTP invalid authentication
111
+ #otp_unlock_auth_not_yet_available_error_flash: TOTP unlock attempt not yet available
112
+ #otp_unlock_auth_success_notice_flash: TOTP successful authentication, more successful authentication needed to unlock
113
+ #otp_unlock_button: Authenticate Using TOTP to Unlock
114
+ #otp_unlock_consecutive_successes_label: Consecutive successful authentications
115
+ #otp_unlock_failed_email_subject: TOTP Authentication Unlocking Failed
116
+ #otp_unlock_form_footer: ''
117
+ #otp_unlock_next_auth_attempt_label: Can attempt next authentication after
118
+ #otp_unlock_next_auth_attempt_refresh_label: Page will automatically refresh when authentication is possible.
119
+ #otp_unlock_next_auth_deadline_label: Deadline for next authentication
120
+ #otp_unlock_not_available_page_title: Must Wait to Unlock TOTP Authentication
121
+ #otp_unlock_not_locked_out_error_flash: TOTP authentication is not currently locked out
122
+ #otp_unlock_page_title: Unlock TOTP Authentication
123
+ #otp_unlock_required_consecutive_successes_label: Required consecutive successful authentications to unlock
124
+ #otp_unlocked_email_subject: TOTP Authentication Unlocked
125
+ #otp_unlocked_notice_flash: TOTP authentication unlocked
126
+ #password_authentication_required_error_flash: You need to confirm your password before continuing
127
+ #password_changed_email_subject: Password Changed
128
+ #password_confirm_label: Confirm %{password_label}
129
+ #password_does_not_meet_requirements_message: invalid password, does not meet requirements
130
+ #password_expiration_error_flash: Your password has expired and needs to be changed
131
+ #password_in_dictionary_message: is a word in a dictionary
132
+ #password_invalid_pattern_message: includes common character sequence
133
+ #password_is_one_of_the_most_common_message: is one of the most common passwords
134
+ #password_label: Password
135
+ #password_not_changeable_yet_error_flash: Your password cannot be changed yet
136
+ #password_not_enough_character_groups_message: does not include uppercase letters, lowercase letters, and numbers
137
+ #password_same_as_previous_password_message: same as previous password
138
+ #password_too_many_repeating_characters_message: contains too many of the same character in a row
139
+ #password_too_long_message: maximum %{password_maximum_length} characters
140
+ #password_too_many_bytes_message: maximum %{password_maximum_bytes} bytes
141
+ #password_too_short_message: minimum %{password_minimum_length} characters
142
+ #passwords_do_not_match_message: passwords do not match
143
+ #recovery_auth_button: Authenticate via Recovery Code
144
+ #recovery_auth_link_text: Authenticate Using Recovery Code
145
+ #recovery_auth_page_title: Enter Authentication Recovery Code
146
+ #recovery_codes_added_notice_flash: Additional authentication recovery codes have been added
147
+ #recovery_codes_label: Recovery Code
148
+ #recovery_codes_link_text: View Authentication Recovery Codes
149
+ #recovery_codes_page_title: View Authentication Recovery Codes
150
+ #remember_button: Change Remember Setting
151
+ #remember_disable_label: Disable Remember Me
152
+ #remember_error_flash: There was an error updating your remember setting
153
+ #remember_forget_label: Forget Me
154
+ #remember_notice_flash: Your remember setting has been updated
155
+ #remember_page_title: Change Remember Setting
156
+ #remember_remember_label: Remember Me
157
+ #require_login_error_flash: Please login to continue
158
+ #resend_verify_account_page_title: Resend Verification Email
159
+ #reset_password_button: Reset Password
160
+ #reset_password_email_recently_sent_error_flash: An email has recently been sent to you with a link to reset your password
161
+ #reset_password_email_sent_notice_flash: An email has been sent to you with a link to reset the password for your account
162
+ #reset_password_email_subject: Reset Password
163
+ #reset_password_error_flash: There was an error resetting your password
164
+ #reset_password_explanatory_text: "<p>If you have forgotten your password, you can request a password reset:</p>"
165
+ #reset_password_notice_flash: Your password has been reset
166
+ #reset_password_notify_email_subject: Password Reset Completed
167
+ #reset_password_page_title: Reset Password
168
+ #reset_password_request_button: Request Password Reset
169
+ #reset_password_request_error_flash: There was an error requesting a password reset
170
+ #reset_password_request_link_text: Forgot Password?
171
+ #reset_password_request_page_title: Request Password Reset
172
+ #same_as_current_login_message: same as current login
173
+ #same_as_existing_password_message: invalid password, same as current password
174
+ #session_expiration_error_flash: This session has expired, please login again
175
+ #single_session_error_flash: This session has been logged out as another session has become active
176
+ #sms_already_setup_error_flash: SMS authentication has already been setup
177
+ #sms_auth_button: Authenticate via SMS Code
178
+ #sms_auth_link_text: Authenticate Using SMS Code
179
+ #sms_auth_page_title: Authenticate via SMS Code
180
+ #sms_code_label: SMS Code
181
+ #sms_confirm_button: Confirm SMS Backup Number
182
+ #sms_confirm_notice_flash: SMS authentication has been setup
183
+ #sms_confirm_page_title: Confirm SMS Backup Number
184
+ #sms_disable_button: Disable Backup SMS Authentication
185
+ #sms_disable_error_flash: Error disabling SMS authentication
186
+ #sms_disable_link_text: Disable SMS Authentication
187
+ #sms_disable_notice_flash: SMS authentication has been disabled
188
+ #sms_disable_page_title: Disable Backup SMS Authentication
189
+ #sms_invalid_code_error_flash: Error authenticating via SMS code
190
+ #sms_invalid_code_message: invalid SMS code
191
+ #sms_invalid_confirmation_code_error_flash: Invalid or out of date SMS confirmation code used, must setup SMS authentication again
192
+ #sms_invalid_phone_message: invalid SMS phone number
193
+ #sms_lockout_error_flash: SMS authentication has been locked out
194
+ #sms_needs_confirmation_error_flash: SMS authentication needs confirmation
195
+ #sms_not_setup_error_flash: SMS authentication has not been setup yet
196
+ #sms_phone_label: Phone Number
197
+ #sms_request_button: Send SMS Code
198
+ #sms_request_notice_flash: SMS authentication code has been sent
199
+ #sms_request_page_title: Send SMS Code
200
+ #sms_setup_button: Setup SMS Backup Number
201
+ #sms_setup_error_flash: Error setting up SMS authentication
202
+ #sms_setup_link_text: Setup Backup SMS Authentication
203
+ #sms_setup_page_title: Setup SMS Backup Number
204
+ #strftime_format: "%F %T"
205
+ #two_factor_already_authenticated_error_flash: You have already been multifactor authenticated
206
+ #two_factor_auth_notice_flash: You have been multifactor authenticated
207
+ #two_factor_auth_page_title: Authenticate Using Additional Factor
208
+ #two_factor_disable_button: Remove All Multifactor Authentication Methods
209
+ #two_factor_disable_error_flash: Unable to remove all multifactor authentication methods
210
+ #two_factor_disable_link_text: Remove All Multifactor Authentication Methods
211
+ #two_factor_disable_notice_flash: All multifactor authentication methods have been disabled
212
+ #two_factor_disable_page_title: Remove All Multifactor Authentication Methods
213
+ #two_factor_manage_page_title: Manage Multifactor Authentication
214
+ #two_factor_need_authentication_error_flash: You need to authenticate via an additional factor before continuing
215
+ #two_factor_not_setup_error_flash: This account has not been setup for multifactor authentication
216
+ #two_factor_remove_heading: "<h2>Remove Multifactor Authentication</h2>"
217
+ #two_factor_setup_heading: "<h2>Setup Multifactor Authentication</h2>"
218
+ #unlock_account_button: Unlock Account
219
+ #unlock_account_email_recently_sent_error_flash: An email has recently been sent to you with a link to unlock the account
220
+ #unlock_account_email_subject: Unlock Account
221
+ #unlock_account_error_flash: There was an error unlocking your account
222
+ #unlock_account_explanatory_text: "<p>This account is currently locked out. You can unlock the account:</p>"
223
+ #unlock_account_notice_flash: Your account has been unlocked
224
+ #unlock_account_page_title: Unlock Account
225
+ #unlock_account_request_button: Request Account Unlock
226
+ #unlock_account_request_explanatory_text: "<p>This account is currently locked out. You can request that the account be unlocked:</p>"
227
+ #unlock_account_request_notice_flash: An email has been sent to you with a link to unlock your account
228
+ #unlock_account_request_page_title: Request Account Unlock
229
+ #unverified_account_message: unverified account, please verify account before logging in
230
+ #unverified_change_login_error_flash: Please verify this account before changing the login
231
+ #verify_account_button: Verify Account
232
+ #verify_account_email_recently_sent_error_flash: An email has recently been sent to you with a link to verify your account
233
+ #verify_account_email_sent_notice_flash: An email has been sent to you with a link to verify your account
234
+ #verify_account_email_subject: Verify Account
235
+ #verify_account_error_flash: Unable to verify account
236
+ #verify_account_notice_flash: Your account has been verified
237
+ #verify_account_page_title: Verify Account
238
+ #verify_account_resend_button: Send Verification Email Again
239
+ #verify_account_resend_error_flash: Unable to resend verify account email
240
+ #verify_account_resend_explanatory_text: "<p>If you no longer have the email to verify the account, you can request that it be resent to you:</p>"
241
+ #verify_account_resend_link_text: Resend Verify Account Information
242
+ #verify_login_change_button: Verify Login Change
243
+ #verify_login_change_duplicate_account_error_flash: Unable to change login as there is already an account with the new login
244
+ #verify_login_change_email_subject: Verify Login Change
245
+ #verify_login_change_error_flash: Unable to verify login change
246
+ #verify_login_change_notice_flash: Your login change has been verified
247
+ #verify_login_change_page_title: Verify Login Change
248
+ #view_recovery_codes_button: View Authentication Recovery Codes
249
+ #view_recovery_codes_error_flash: Unable to view recovery codes
250
+ #webauthn_auth_button: Authenticate Using WebAuthn
251
+ #webauthn_auth_error_flash: Error authenticating using WebAuthn
252
+ #webauthn_auth_link_text: Authenticate Using WebAuthn
253
+ #webauthn_auth_page_title: Authenticate Using WebAuthn
254
+ #webauthn_authenticator_added_email_subject: WebAuthn Authenticator Added
255
+ #webauthn_authenticator_removed_email_subject: WebAuthn Authenticator Removed
256
+ #webauthn_duplicate_webauthn_id_message: attempt to insert duplicate webauthn id
257
+ #webauthn_invalid_auth_param_message: invalid webauthn authentication param
258
+ #webauthn_invalid_remove_param_message: must select valid webauthn authenticator to remove
259
+ #webauthn_invalid_setup_param_message: invalid webauthn setup param
260
+ #webauthn_invalid_sign_count_message: webauthn credential has invalid sign count
261
+ #webauthn_invalid_webauthn_id_message: no webauthn key with given id found
262
+ #webauthn_login_error_flash: There was an error authenticating via WebAuthn
263
+ #webauthn_not_setup_error_flash: This account has not been setup for WebAuthn authentication
264
+ #webauthn_remove_button: Remove WebAuthn Authenticator
265
+ #webauthn_remove_error_flash: Error removing WebAuthn authenticator
266
+ #webauthn_remove_link_text: Remove WebAuthn Authenticator
267
+ #webauthn_remove_notice_flash: WebAuthn authenticator has been removed
268
+ #webauthn_remove_page_title: Remove WebAuthn Authenticator
269
+ #webauthn_setup_button: Setup WebAuthn Authentication
270
+ #webauthn_setup_error_flash: Error setting up WebAuthn authentication
271
+ #webauthn_setup_link_text: Setup WebAuthn Authentication
272
+ #webauthn_setup_notice_flash: WebAuthn authentication is now setup
273
+ #webauthn_setup_page_title: Setup WebAuthn Authentication
@@ -0,0 +1,244 @@
1
+ hello:
2
+ message: Olá mundo
3
+ rodauth:
4
+ #account_expiration_error_flash: Não é possível acessar essa conta, pois ela expirou
5
+ #active_sessions_error_flash: Essa sessão foi encerrada
6
+ #add_recovery_codes_button: Adicionar autenticação por códigos de recuperação
7
+ #add_recovery_codes_error_flash: Não foi possível adicionar os códigos de recuperação
8
+ #add_recovery_codes_heading: "<h2>Adicionar mais Códigos de Recuperação</h2>"
9
+ #add_recovery_codes_page_title: Autenticação por Códigos de Recuperação
10
+ #already_an_account_with_this_login_message: já existe uma conta com esse login
11
+ #attempt_to_create_unverified_account_error_flash: A conta que você tentou criar está aguardando verificação
12
+ #attempt_to_login_to_unverified_account_error_flash: A conta que você tentou acessar está aguardando verificação
13
+ #change_login_button: Alterar Login
14
+ #change_login_error_flash: Houve um erro ao alterar seu login
15
+ #change_login_needs_verification_notice_flash: Foi enviado um link por email para você verificar a alteração de login
16
+ #change_login_notice_flash: Seu login foi alterado
17
+ #change_login_page_title: Alterar Login
18
+ #change_password_button: Alterar senha
19
+ #change_password_error_flash: Houve um erro ao alterar sua senha
20
+ #change_password_notice_flash: Sua senha foi alterada
21
+ #change_password_page_title: Alterar senha
22
+ #close_account_button: Fechar conta
23
+ #close_account_error_flash: Houve um erro ao fechar sua conta
24
+ #close_account_notice_flash: Sua conta foi fechada
25
+ #close_account_page_title: Fechar conta
26
+ #confirm_password_button: Confirmar senha
27
+ #confirm_password_error_flash: Houve um erro ao confirmar sua senha
28
+ #confirm_password_link_text: Digite a senha
29
+ #confirm_password_notice_flash: A senha foi confirmada
30
+ #confirm_password_page_title: Confirme a senha
31
+ #contains_null_byte_message: contém um byte nulo
32
+ create_account_button: Criar conta
33
+ #create_account_error_flash: Houve um erro ao criar sua conta
34
+ #create_account_link_text: Criar uma nova conta
35
+ #create_account_notice_flash: Sua conta foi criada
36
+ #create_account_page_title: Criar conta
37
+ #email_auth_email_recently_sent_error_flash: Recentemente foi enviado um link por email para você fazer login
38
+ #email_auth_email_sent_notice_flash: Um email com um link para fazer login em sua conta foi enviado
39
+ #email_auth_email_subject: Link de Login
40
+ #email_auth_error_flash: Houve um erro ao fazer login
41
+ #email_auth_page_title: Login
42
+ #email_auth_request_button: Enviar Link de Login por Email
43
+ #email_auth_request_error_flash: Houve um erro ao solicitar um link de autenticação por email
44
+ #email_subject_prefix: ''
45
+ #expired_jwt_access_token_message: token de acesso JWT expirado
46
+ #global_logout_label: Encerrar todas as sessões ativas?
47
+ #input_field_label_suffix: ''
48
+ #invalid_jwt_format_error_message: Formato JWT inválido ou claim no Authorization header
49
+ #invalid_password_message: senha inválida
50
+ #invalid_recovery_code_error_flash: Erro ao autenticar através do código de recuperação
51
+ #invalid_recovery_code_message: Código de recuperação inválido
52
+ #json_non_post_error_message: método não-POST usado na API JSON
53
+ #json_not_accepted_error_message: Accept Header não suportado. Você deve aceitar "application/json" ou um tipo de conteúdo compatível
54
+ #jwt_refresh_invalid_token_message: token JWT refresh inválido
55
+ #jwt_refresh_without_access_token_message: sem token JWT de acesso disponibilizado durante o refresh
56
+ #login_button: Login
57
+ #login_confirm_label: Confirmar %{login_label}
58
+ #login_does_not_meet_requirements_message: login inválido, não atende aos requisitos
59
+ #login_error_flash: Houve um erro ao fazer login
60
+ #login_form_footer_links_heading: <h2 class="rodauth-login-form-footer-links-heading">Outras opções</h2>
61
+ #login_label: Login
62
+ #login_lockout_error_flash: Essa conta está bloqueada no momento e não pode ser acessada
63
+ #login_not_valid_email_message: não é um endereço de e-mail válido
64
+ #login_notice_flash: Login realizado com sucesso
65
+ #login_page_title: Login
66
+ #login_too_long_message: máximo %{login_maximum_length} caracteres
67
+ #login_too_short_message: mínimo %{login_minimum_length} caracteres
68
+ #logins_do_not_match_message: os logins não conferem
69
+ #logout_button: Encerrar sessão
70
+ #logout_notice_flash: Sua sessão foi encerrada
71
+ #logout_page_title: Encerrar sessão
72
+ #multi_phase_login_page_title: Login
73
+ #need_password_notice_flash: Login reconhecido, por favor digite sua senha
74
+ #new_password_label: Nova senha
75
+ #no_current_sms_code_error_flash: Nenhum código SMS configurado para essa conta
76
+ #no_matching_email_auth_key_error_flash: 'Houve um erro ao fazer login: chave de autenticação de email inválida'
77
+ #no_matching_login_message: sem login correspondente
78
+ #no_matching_reset_password_key_error_flash: 'Houve um erro ao redefinir sua senha: chave de redefinição inválida ou expirada'
79
+ #no_matching_unlock_account_key_error_flash: 'Houve um erro ao desbloquear sua conta: chave de desbloqueio inválida ou expirada'
80
+ #no_matching_verify_account_key_error_flash: 'Houve um erro ao verificar sua conta: chave de verificação de conta inválida'
81
+ #no_matching_verify_login_change_key_error_flash: 'Houve um erro ao verificar a alteração de login: chave de verificação para alteração de login inválida'
82
+ #non_json_request_error_message: Apenas requisições no formato JSON são permitidas
83
+ #otp_already_setup_error_flash: Você já configurou autenticação TOTP
84
+ #otp_auth_button: Autenticar utilizando TOTP
85
+ #otp_auth_error_flash: Erro ao fazer login através de autenticação TOTP
86
+ #otp_auth_form_footer: ''
87
+ #otp_auth_label: Código de Autenticação
88
+ #otp_auth_link_text: Autenticar utilizando TOTP
89
+ #otp_auth_page_title: Digite o código de autenticação
90
+ #otp_disable_button: Desativar Autenticação TOTP
91
+ #otp_disable_error_flash: Erro ao desativar autenticação TOTP
92
+ #otp_disable_link_text: Desativar Autenticação TOTP
93
+ #otp_disable_notice_flash: Autenticação TOTP foi desativada
94
+ #otp_invalid_auth_code_message: Código de autenticação inválido
95
+ #otp_invalid_secret_message: segredo inválido
96
+ #otp_lockout_error_flash: Código de autenticação TOTP foi bloqueado devido a várias tentativas falhadas
97
+ #otp_provisioning_uri_label: URL de Provisionamento
98
+ #otp_secret_label: Segredo
99
+ #otp_setup_button: Configurar Autenticação TOTP
100
+ #otp_setup_error_flash: Erro ao configurar autenticação TOTP
101
+ #otp_setup_link_text: Configurar Autenticação TOTP
102
+ #otp_setup_notice_flash: Autenticação TOTP está configurada
103
+ #otp_setup_page_title: Configurar Autenticação TOTP
104
+ #password_authentication_required_error_flash: Você precisa confirmar sua senha para continuar
105
+ #password_changed_email_subject: Senha alterada
106
+ #password_confirm_label: Confirmar %{password_label}
107
+ #password_does_not_meet_requirements_message: senha inválida, não atende aos requisitos
108
+ #password_expiration_error_flash: Sua senha expirou e precisa ser alterada
109
+ #password_in_dictionary_message: é uma palavra comum
110
+ #password_invalid_pattern_message: inclui uma sequência de caracteres comum
111
+ #password_is_one_of_the_most_common_message: é uma das senhas mais comuns
112
+ #password_label: Senha
113
+ #password_not_changeable_yet_error_flash: Sua senha ainda não pode ser alterada
114
+ #password_not_enough_character_groups_message: não inclui letras maiúsculas, letras minúsculas e números
115
+ #password_same_as_previous_password_message: igual à senha anterior
116
+ #password_too_many_repeating_characters_message: contém muitos caracteres repetidos sucessivamente
117
+ #password_too_short_message: mínimo %{password_minimum_length} caracteres
118
+ #passwords_do_not_match_message: as senhas não conferem
119
+ #recovery_auth_button: Autenticar por Código de Recuperação
120
+ #recovery_auth_link_text: Autenticar utilizando Código de Recuperação
121
+ #recovery_auth_page_title: Digite o Código de Recuperação
122
+ #recovery_codes_added_notice_flash: Foram adicionados mais Códigos de Recuperação
123
+ #recovery_codes_label: Código de Recuperação
124
+ #recovery_codes_link_text: Ver Códigos de Recuperação de Autenticação
125
+ #recovery_codes_page_title: Ver Códigos de Recuperação de Autenticação
126
+ #remember_button: Alterar configurações de "Lembrar-me"
127
+ #remember_disable_label: Desativar "Lembrar-me"
128
+ #remember_error_flash: Houve um erro ao atualizar sua configuração de "Lembrar-me"
129
+ #remember_forget_label: Não me lembrar
130
+ #remember_notice_flash: Sua configuração de "Lembrar-me" foi atualizada
131
+ #remember_page_title: Alterar configuração de "Lembrar-me"
132
+ #remember_remember_label: Lembrar-me
133
+ #require_login_error_flash: Por favor, faça login para continuar
134
+ #resend_verify_account_page_title: Reenviar Email de Verificação
135
+ #reset_password_button: Redefinir senha
136
+ #reset_password_email_recently_sent_error_flash: Recentemente foi enviado um email com um link para redefinir sua senha
137
+ #reset_password_email_sent_notice_flash: Um email com um link para redefinir sua senha foi enviado
138
+ #reset_password_email_subject: Redefinir senha
139
+ #reset_password_error_flash: Houve um erro ao redefinir sua senha
140
+ #reset_password_explanatory_text: "<p>Se você esqueceu sua senha, pode solicitar uma redefinição:</p>"
141
+ #reset_password_notice_flash: Sua senha foi redefinida
142
+ #reset_password_page_title: Redefinir senha
143
+ #reset_password_request_button: Solicitar redefinição de senha
144
+ #reset_password_request_error_flash: Houve um erro ao solicitar a redefinição de senha
145
+ #reset_password_request_link_text: Esqueceu sua senha?
146
+ #reset_password_request_page_title: Solicitar Redefinição de Senha
147
+ #same_as_current_login_message: igual ao login atual
148
+ #same_as_existing_password_message: senha inválida, igual à senha atual
149
+ #session_expiration_error_flash: Essa sessão expirou, por favor faça login novamente
150
+ #single_session_error_flash: Essa sessão foi encerrada porque outra sessão ficou ativa
151
+ #sms_already_setup_error_flash: Autenticação SMS já foi configurada
152
+ #sms_auth_button: Autenticar com código SMS
153
+ #sms_auth_link_text: Autenticar com código SMS
154
+ #sms_auth_page_title: Autenticar através de código SMS
155
+ #sms_code_label: Código SMS
156
+ #sms_confirm_button: Confirme o número para SMS de Backup
157
+ #sms_confirm_notice_flash: Autenticação SMS foi configurada
158
+ #sms_confirm_page_title: Confirme o número para SMS de Backup
159
+ #sms_disable_button: Desativar Autenticação de Backup por SMS
160
+ #sms_disable_error_flash: Erro ao desativar autenticação por SMS
161
+ #sms_disable_link_text: Desativar Autenticação por SMS
162
+ #sms_disable_notice_flash: Autenticação por SMS foi desativada
163
+ #sms_disable_page_title: Desativar Autenticação de Backup por SMS
164
+ #sms_invalid_code_error_flash: Erro ao autenticar com código SMS
165
+ #sms_invalid_code_message: código SMS inválido
166
+ #sms_invalid_confirmation_code_error_flash: Código de confirmação SMS inválido ou desatualizado, você deverá configurar autenticação SMS novamente
167
+ #sms_invalid_phone_message: número de telefone para SMS inválido
168
+ #sms_lockout_error_flash: Autenticação SMS foi bloqueada
169
+ #sms_needs_confirmation_error_flash: Autenticação SMS necessita de confirmação
170
+ #sms_not_setup_error_flash: Autenticação SMS ainda não foi configurada
171
+ #sms_phone_label: Número de Telefone
172
+ #sms_request_button: Enviar código SMS
173
+ #sms_request_notice_flash: Código de autenticação SMS foi enviado
174
+ #sms_request_page_title: Enviar código SMS
175
+ #sms_setup_button: Configurar número SMS de Backup
176
+ #sms_setup_error_flash: Erro ao configurar autenticação através de SMS
177
+ #sms_setup_link_text: Configurar Autenticação SMS de Backup
178
+ #sms_setup_page_title: Configurar número SMS de Backup
179
+ #two_factor_already_authenticated_error_flash: Você já foi autenticado através de autenticação multifator
180
+ #two_factor_auth_notice_flash: Você foi autenticado através de autenticação multifator
181
+ #two_factor_auth_page_title: Autenticar utilizando um fator adicional
182
+ #two_factor_disable_button: Remover todos os métodos de Autenticação Multifator
183
+ #two_factor_disable_error_flash: Não foi possível remover todos os métodos de autenticação multifator
184
+ #two_factor_disable_link_text: Remover todos os métodos de Autenticação Multifator
185
+ #two_factor_disable_notice_flash: Todos os métodos de Autenticação Multifator foram desativados
186
+ #two_factor_disable_page_title: Remover todos os métodos de Autenticação Multifator
187
+ #two_factor_manage_page_title: Gerenciar Autenticação Multifator
188
+ #two_factor_need_authentication_error_flash: Você precisa autenticar-se através de um fator adicional antes de continuar
189
+ #two_factor_not_setup_error_flash: Essa conta não foi configurada para autenticação multifator
190
+ #two_factor_remove_heading: "<h2>Remover Autenticação Multifator</h2>"
191
+ #two_factor_setup_heading: "<h2>Configurar Autenticação Multifator</h2>"
192
+ #unlock_account_button: Desbloquear Conta
193
+ #unlock_account_email_recently_sent_error_flash: Recentemente foi enviado um email com um link para desbloquear a conta
194
+ #unlock_account_email_subject: Desbloquear Conta
195
+ #unlock_account_error_flash: Houve um erro ao desbloquear sua conta
196
+ #unlock_account_explanatory_text: "<p>Essa conta está atualmente bloqueada. Você pode desbloquear a conta:</p>"
197
+ #unlock_account_notice_flash: Sua conta foi desbloqueada
198
+ #unlock_account_page_title: Desbloquear Conta
199
+ #unlock_account_request_button: Solicitar desbloqueio de conta
200
+ #unlock_account_request_explanatory_text: "<p>Essa conta está atualmente bloqueada. Você pode solicitar que a conta seja desbloqueada:</p>"
201
+ #unlock_account_request_notice_flash: Um email com um link para desbloquear a conta foi enviado
202
+ #unlock_account_request_page_title: Solicitar desbloqueio de conta
203
+ #unverified_account_message: conta não verificada, por favor verifique sua conta antes de fazer login
204
+ #unverified_change_login_error_flash: Por favor verifique essa conta antes de alterar o login
205
+ #verify_account_button: Verificar Conta
206
+ #verify_account_email_recently_sent_error_flash: Já foi enviado um email com um link para verificar sua conta recentemente
207
+ #verify_account_email_sent_notice_flash: Um email com um link para verificar sua conta foi enviado
208
+ #verify_account_email_subject: Verificar Conta
209
+ #verify_account_error_flash: Não foi possível verificar a conta
210
+ #verify_account_notice_flash: Sua conta foi verificada
211
+ #verify_account_page_title: Verificar Conta
212
+ #verify_account_resend_button: Reenviar email de verificação
213
+ #verify_account_resend_error_flash: Não foi possível reenviar o email de verificação de conta
214
+ #verify_account_resend_explanatory_text: "<p>Se você não possui mais o email para verificar a conta, pode solicitar que seja reenviado:</p>"
215
+ #verify_account_resend_link_text: Reenviar informação de verificação de conta
216
+ #verify_login_change_button: Verificar Alteração de Login
217
+ #verify_login_change_duplicate_account_error_flash: Não foi possível proceder à alteração de login porque já existe uma conta com o novo login
218
+ #verify_login_change_email_subject: Verificar Alteração de Login
219
+ #verify_login_change_error_flash: Não foi possível verificar a alteração de login
220
+ #verify_login_change_notice_flash: Sua alteração de login foi verificada
221
+ #verify_login_change_page_title: Verificar Alteração de Login
222
+ #view_recovery_codes_button: Ver códigos de recuperação para autenticação
223
+ #view_recovery_codes_error_flash: Não foi possível visualizar os códigos de recuperação
224
+ #webauthn_auth_button: Autenticar com WebAuthn
225
+ #webauthn_auth_error_flash: Erro ao autenticar com WebAuthn
226
+ #webauthn_auth_link_text: Autenticar com WebAuthn
227
+ #webauthn_auth_page_title: Autenticar com WebAuthn
228
+ #webauthn_duplicate_webauthn_id_message: tentativa de adicionar um ID webauthn duplicado
229
+ #webauthn_invalid_auth_param_message: parâmetro de autenticação webauthn inválido
230
+ #webauthn_invalid_remove_param_message: você deve selecionar um autenticador webauthn válido para remover
231
+ #webauthn_invalid_setup_param_message: parâmetro de configuração webauthn inválido
232
+ #webauthn_invalid_sign_count_message: credencial webauthn tem um sign count inválido
233
+ #webauthn_login_error_flash: Houve um erro ao autenticar utilizando WebAuthn
234
+ #webauthn_not_setup_error_flash: Essa conta não foi configurada para autenticação WebAuthn
235
+ #webauthn_remove_button: Remover Autenticador WebAuthn
236
+ #webauthn_remove_error_flash: Erro ao remover autenticador WebAuthn
237
+ #webauthn_remove_link_text: Remover autenticador WebAuthn
238
+ #webauthn_remove_notice_flash: O autenticador WebAuthn foi removido
239
+ #webauthn_remove_page_title: Remover Autenticador WebAuthn
240
+ #webauthn_setup_button: Configurar Autenticação WebAuthn
241
+ #webauthn_setup_error_flash: Erro ao configurar autenticação WebAuthn
242
+ #webauthn_setup_link_text: Configurar Autenticação WebAuthn
243
+ #webauthn_setup_notice_flash: Autenticação WebAuthn está agora configurada
244
+ #webauthn_setup_page_title: Configurar Autenticação WebAuthn
@@ -0,0 +1 @@
1
+ <%= t.hello.message %>
@@ -0,0 +1,23 @@
1
+ <html>
2
+ <head>
3
+ <meta charset='utf-8' />
4
+ <meta http-equiv="x-ua-compatible" content="ie=edge">
5
+ <meta name="viewport"
6
+ content="width=device-width, initial-scale=1, shrink-to-fit=no">
7
+
8
+ <title>Roda project</title>
9
+
10
+ <%= css_entrypoint_tag(:app) %>
11
+ </head>
12
+ <body>
13
+ <img src='/public/images/roda-project.png' />
14
+ <br>
15
+ <div class="navbar">
16
+ <a href="/">home</a>
17
+ <a href="/foo/bar">foo/bar</a>
18
+ </div>
19
+
20
+ <%= yield %>
21
+ <%= js_entrypoint_tag(:app) %>
22
+ </body>
23
+ </html>
@@ -0,0 +1,53 @@
1
+ const esbuild = require('esbuild');
2
+ const manifestPlugin = require('esbuild-plugin-manifest');
3
+ const isWatchMode = process.argv.includes('--watch');
4
+ const isProduction = process.env.RACK_ENV === 'production';
5
+
6
+ const cssEntryPoints = ['app']
7
+ const jsEntryPoints = ['app']
8
+ const assetsEntryPoints =
9
+ cssEntryPoints.map((e) => `css/${e}.css`)
10
+ .concat(
11
+ jsEntryPoints.map((e) => `js/${e}.js`)
12
+ )
13
+
14
+ function config() {
15
+ return {
16
+ entryPoints: assetsEntryPoints.map((name) => `app/assets/${name}`),
17
+ bundle: true,
18
+ minify: isProduction,
19
+ sourcemap: !isProduction,
20
+ outdir: "public/assets",
21
+ format: "esm",
22
+ entryNames: isProduction ? '[name]-[hash]' : '[name]',
23
+ external: ['*.jpg', '*.png', '*.svg', '*.gif'],
24
+ loader: {
25
+ '.svg': 'text',
26
+ '.woff2': 'text',
27
+ '.js': 'jsx'
28
+ },
29
+ plugins: isProduction ? [
30
+ manifestPlugin({ shortNames: true })
31
+ ] : [],
32
+ }
33
+ }
34
+
35
+ async function build() {
36
+ try {
37
+ if (isWatchMode) {
38
+ const ctx = await esbuild.context(config());
39
+ await ctx.watch();
40
+
41
+ console.log(`Watching for css and js changes in '${assetsEntryPoints.join(', ')}'...`);
42
+ } else {
43
+ await esbuild.build(config());
44
+
45
+ console.log(`Build complete.`);
46
+ }
47
+ } catch (error) {
48
+ console.error('Build failed:', error);
49
+ process.exit(1);
50
+ }
51
+ }
52
+
53
+ build();
@@ -0,0 +1,23 @@
1
+ {
2
+ "name": "rackr_scaffold",
3
+ "version": "1.0.0",
4
+ "description": "",
5
+ "main": "esbuild.config.js",
6
+ "scripts": {
7
+ "test": "echo \"Error: no test specified\" && exit 1",
8
+ "build": "node esbuild.js",
9
+ "build:watch": "node esbuild.js --watch"
10
+ },
11
+ "author": "",
12
+ "license": "ISC",
13
+ "dependencies": {
14
+ "@inertiajs/react": "^3.5.0",
15
+ "react": "^19.2.7",
16
+ "react-dom": "^19.2.7"
17
+ },
18
+ "devDependencies": {
19
+ "esbuild": "^0.19.0",
20
+ "esbuild-plugin-manifest": "^1.0.5",
21
+ "path": "^0.12.7"
22
+ }
23
+ }
@@ -0,0 +1 @@
1
+ body{background:#000;color:#fff;margin:1em 2em;font-family:monospace}a{color:#ef4348;margin-right:1em}img{width:25%;margin-bottom:1em}.navbar{margin-bottom:1em}
@@ -2,6 +2,6 @@
2
2
 
3
3
  class Roda
4
4
  module Project
5
- VERSION = "0.1.17"
5
+ VERSION = "0.1.18"
6
6
  end
7
7
  end