Update the input component to show errors depend on the show_errors? attribute.

dev
KKlochko 2 months ago
parent 0bd6453f6b
commit 61338cd404

@ -345,6 +345,7 @@ defmodule DecentralisedBookIndexWeb.CoreComponents do
doc: "a form field struct retrieved from the form, for example: @form[:email]"
attr :errors, :list, default: []
attr :show_errors?, :boolean, default: true
attr :checked, :boolean, doc: "the checked flag for checkbox inputs"
attr :prompt, :string, default: nil, doc: "the prompt for select inputs"
attr :options, :list, doc: "the options to pass to Phoenix.HTML.Form.options_for_select/2"
@ -386,7 +387,9 @@ defmodule DecentralisedBookIndexWeb.CoreComponents do
/>
{@label}
</label>
<%= if @show_errors? do %>
<.error :for={msg <- @errors}>{msg}</.error>
<% end %>
</div>
"""
end
@ -405,7 +408,9 @@ defmodule DecentralisedBookIndexWeb.CoreComponents do
<option :if={@prompt} value="">{@prompt}</option>
{Phoenix.HTML.Form.options_for_select(@options, @value)}
</select>
<%= if @show_errors? do %>
<.error :for={msg <- @errors}>{msg}</.error>
<% end %>
</div>
"""
end
@ -424,7 +429,9 @@ defmodule DecentralisedBookIndexWeb.CoreComponents do
]}
{@rest}
>{Phoenix.HTML.Form.normalize_value("textarea", @value)}</textarea>
<%= if @show_errors? do %>
<.error :for={msg <- @errors}>{msg}</.error>
<% end %>
</div>
"""
end
@ -446,7 +453,9 @@ defmodule DecentralisedBookIndexWeb.CoreComponents do
]}
{@rest}
/>
<%= if @show_errors? do %>
<.error :for={msg <- @errors}>{msg}</.error>
<% end %>
</div>
"""
end

Loading…
Cancel
Save