<%= form_with model: @user, url: sign_up_path, class: "space-y-6" do |form| %>
<%= render partial: "shared/form_errors", locals: { object: form.object } %>
+
- <%= form.label :email, class: "block text-sm font-medium text-gray-700" do %>
+ <%= form.label :email, class: "block text-sm font-medium text-gray-700 after:content-['*'] after:ml-0.5 after:text-red-500" do %>
Email address
<% end %>
-
- <%= form.text_field :email, required: true, autofocus: true, autocomplete: "email", class: "appearance-none block w-full px-3 py-2 border border-gray-300 rounded-md shadow-sm placeholder-gray-400 focus:outline-none focus:ring-indigo-500 focus:border-indigo-500 sm:text-sm" %>
-
+ <% if form.object.errors.where(:email).any? %>
+
+ <%= form.text_field :email, required: true, autocomplete: "email", placeholder: "you@example.com", aria: {invalid: "true", describedby: "email-error"}, class: "block w-full pr-10 border-red-300 text-red-900 placeholder-red-300 focus:outline-none focus:ring-red-500 focus:border-red-500 sm:text-sm rounded-md" %>
+
+ <%= heroicon "exclamation-circle", variant: :solid, options: { class: "h-5 w-5 text-red-500" } %>
+
+
+ <% form.object.errors.where(:email).each do |error| %>
+
<%= error.full_message %>
+ <% end %>
+ <% else %>
+
+ <%= form.text_field :email, required: true, autofocus: true, autocomplete: "email", placeholder: "you@example.com", class: "block w-full pr-10 border-gray-300 text-gray-900 placeholder-gray-300 focus:outline-none focus:ring-indigo-500 focus:border-indigo-500 sm:text-sm rounded-md" %>
+
+ <% end %>
+
<%= form.label :name, class: "block text-sm font-medium text-gray-700" do %>
Your name
@@ -31,21 +46,45 @@
- <%= form.label :password, class: "block text-sm font-medium text-gray-700" do %>
+ <%= form.label :password, class: "block text-sm font-medium text-gray-700 after:content-['*'] after:ml-0.5 after:text-red-500" do %>
Password
<% end %>
-
- <%= form.password_field :password, required: true, autocomplete: "new-password", class: "appearance-none block w-full px-3 py-2 border border-gray-300 rounded-md shadow-sm placeholder-gray-400 focus:outline-none focus:ring-indigo-500 focus:border-indigo-500 sm:text-sm" %>
-
+ <% if form.object.errors.where(:password).any? %>
+
+ <%= form.password_field :password, required: true, autocomplete: "new-password", aria: {invalid: "true", describedby: "password-error"}, class: "block w-full pr-10 border-red-300 text-red-900 placeholder-red-300 focus:outline-none focus:ring-red-500 focus:border-red-500 sm:text-sm rounded-md" %>
+
+ <%= heroicon "exclamation-circle", variant: :solid, options: { class: "h-5 w-5 text-red-500" } %>
+
+
+ <% form.object.errors.where(:password).each do |error| %>
+
<%= error.full_message %>
+ <% end %>
+ <% else %>
+
+ <%= form.password_field :password, required: true, autofocus: true, autocomplete: "new-password", class: "block w-full pr-10 border-gray-300 text-gray-900 placeholder-gray-300 focus:outline-none focus:ring-indigo-500 focus:border-indigo-500 sm:text-sm rounded-md" %>
+
+ <% end %>
- <%= form.label :password_confirmation, class: "block text-sm font-medium text-gray-700" do %>
+ <%= form.label :password_confirmation, class: "block text-sm font-medium text-gray-700 after:content-['*'] after:ml-0.5 after:text-red-500" do %>
Password confirmation
<% end %>
-
- <%= form.password_field :password_confirmation, required: true, autocomplete: "new-password", class: "appearance-none block w-full px-3 py-2 border border-gray-300 rounded-md shadow-sm placeholder-gray-400 focus:outline-none focus:ring-indigo-500 focus:border-indigo-500 sm:text-sm" %>
-
+ <% if form.object.errors.where(:password_confirmation).any? %>
+
+ <%= form.password_field :password_confirmation, required: true, autocomplete: "new-password", aria: {invalid: "true", describedby: "password-confirmation-error"}, class: "block w-full pr-10 border-red-300 text-red-900 placeholder-red-300 focus:outline-none focus:ring-red-500 focus:border-red-500 sm:text-sm rounded-md" %>
+
+ <%= heroicon "exclamation-circle", variant: :solid, options: { class: "h-5 w-5 text-red-500" } %>
+
+
+ <% form.object.errors.where(:password_confirmation).each do |error| %>
+
<%= error.full_message %>
+ <% end %>
+ <% else %>
+
+ <%= form.password_field :password_confirmation, required: true, autofocus: true, autocomplete: "new-password", class: "block w-full pr-10 border-gray-300 text-gray-900 placeholder-gray-300 focus:outline-none focus:ring-indigo-500 focus:border-indigo-500 sm:text-sm rounded-md" %>
+
+ <% end %>
diff --git a/app/views/confirmations/new.html.erb b/app/views/confirmations/new.html.erb
index aa89c1d..047ae9f 100644
--- a/app/views/confirmations/new.html.erb
+++ b/app/views/confirmations/new.html.erb
@@ -1,4 +1,4 @@
-
+
-
- Controller: <%= controller_name %>
- <% if current_user %>
-
User: <%= current_user.email %>
- <% end %>
-