diff --git a/lib/cannery_web/components/ammo_type_table_component.ex b/lib/cannery_web/components/ammo_type_table_component.ex new file mode 100644 index 0000000..85b97ef --- /dev/null +++ b/lib/cannery_web/components/ammo_type_table_component.ex @@ -0,0 +1,208 @@ +defmodule CanneryWeb.Components.AmmoTypeTableComponent do + @moduledoc """ + A component that displays a list of ammo type + """ + use CanneryWeb, :live_component + alias Cannery.{Accounts.User, Ammo, Ammo.AmmoType} + alias Ecto.UUID + alias Phoenix.LiveView.{Rendered, Socket} + + @impl true + @spec update( + %{ + required(:id) => UUID.t(), + required(:current_user) => User.t(), + optional(:show_used) => boolean(), + optional(:ammo_types) => [AmmoType.t()], + optional(:actions) => Rendered.t(), + optional(any()) => any() + }, + Socket.t() + ) :: {:ok, Socket.t()} + def update(%{id: _id, ammo_types: _ammo_types, current_user: _current_user} = assigns, socket) do + socket = + socket + |> assign(assigns) + |> assign_new(:show_used, fn -> false end) + |> assign_new(:actions, fn -> [] end) + |> display_ammo_types() + + {:ok, socket} + end + + defp display_ammo_types( + %{ + assigns: %{ + ammo_types: ammo_types, + current_user: current_user, + show_used: show_used, + actions: actions + } + } = socket + ) do + columns = + [ + %{label: gettext("Name"), key: :name, type: :name}, + %{label: gettext("Bullet type"), key: :bullet_type, type: :string}, + %{label: gettext("Bullet core"), key: :bullet_core, type: :string}, + %{label: gettext("Cartridge"), key: :cartridge, type: :string}, + %{label: gettext("Caliber"), key: :caliber, type: :string}, + %{label: gettext("Case material"), key: :case_material, type: :string}, + %{label: gettext("Jacket type"), key: :jacket_type, type: :string}, + %{label: gettext("Muzzle velocity"), key: :muzzle_velocity, type: :string}, + %{label: gettext("Powder type"), key: :powder_type, type: :string}, + %{ + label: gettext("Powder grains per charge"), + key: :powder_grains_per_charge, + type: :string + }, + %{label: gettext("Grains"), key: :grains, type: :string}, + %{label: gettext("Pressure"), key: :pressure, type: :string}, + %{label: gettext("Primer type"), key: :primer_type, type: :string}, + %{label: gettext("Firing type"), key: :firing_type, type: :string}, + %{label: gettext("Tracer"), key: :tracer, type: :boolean}, + %{label: gettext("Incendiary"), key: :incendiary, type: :boolean}, + %{label: gettext("Blank"), key: :blank, type: :boolean}, + %{label: gettext("Corrosive"), key: :corrosive, type: :boolean}, + %{label: gettext("Manufacturer"), key: :manufacturer, type: :string}, + %{label: gettext("UPC"), key: "upc", type: :string} + ] + |> Enum.filter(fn %{key: key, type: type} -> + # remove columns if all values match defaults + default_value = if type == :boolean, do: false, else: nil + + ammo_types + |> Enum.any?(fn ammo_type -> + not (ammo_type |> Map.get(key) == default_value) + end) + end) + |> Kernel.++([ + %{label: gettext("Rounds"), key: :round_count, type: :round_count} + ]) + |> Kernel.++( + if show_used do + [ + %{ + label: gettext("Used rounds"), + key: :used_round_count, + type: :used_round_count + }, + %{ + label: gettext("Total ever rounds"), + key: :historical_round_count, + type: :historical_round_count + } + ] + else + [] + end + ) + |> Kernel.++([%{label: gettext("Packs"), key: :ammo_count, type: :ammo_count}]) + |> Kernel.++( + if show_used do + [ + %{ + label: gettext("Used packs"), + key: :used_ammo_count, + type: :used_ammo_count + }, + %{ + label: gettext("Total ever packs"), + key: :historical_ammo_count, + type: :historical_ammo_count + } + ] + else + [] + end + ) + |> Kernel.++([ + %{label: gettext("Average CPR"), key: :avg_price_paid, type: :avg_price_paid}, + %{label: nil, key: "actions", type: :actions, sortable: false} + ]) + + rows = + ammo_types + |> Enum.map(fn ammo_type -> + ammo_type + |> get_ammo_type_values(columns, %{actions: actions, current_user: current_user}) + end) + + socket |> assign(columns: columns, rows: rows) + end + + @impl true + def render(assigns) do + ~H""" +
+ <.live_component + module={CanneryWeb.Components.TableComponent} + id={"table-#{@id}"} + columns={@columns} + rows={@rows} + /> +
+ """ + end + + defp get_ammo_type_values(ammo_type, columns, extra_data) do + columns + |> Map.new(fn %{key: key, type: type} -> + {key, get_ammo_type_value(type, key, ammo_type, extra_data)} + end) + end + + defp get_ammo_type_value(:boolean, key, ammo_type, _other_data), + do: ammo_type |> Map.get(key) |> humanize() + + defp get_ammo_type_value(:round_count, _key, ammo_type, %{current_user: current_user}), + do: ammo_type |> Ammo.get_round_count_for_ammo_type(current_user) + + defp get_ammo_type_value(:historical_round_count, _key, ammo_type, %{current_user: current_user}), + do: ammo_type |> Ammo.get_historical_count_for_ammo_type(current_user) + + defp get_ammo_type_value(:used_round_count, _key, ammo_type, %{current_user: current_user}), + do: ammo_type |> Ammo.get_used_count_for_ammo_type(current_user) + + defp get_ammo_type_value(:historical_ammo_count, _key, ammo_type, %{current_user: current_user}), + do: ammo_type |> Ammo.get_ammo_groups_count_for_type(current_user, true) + + defp get_ammo_type_value(:used_ammo_count, _key, ammo_type, %{current_user: current_user}), + do: ammo_type |> Ammo.get_used_ammo_groups_count_for_type(current_user) + + defp get_ammo_type_value(:ammo_count, _key, ammo_type, %{current_user: current_user}), + do: ammo_type |> Ammo.get_ammo_groups_count_for_type(current_user) + + defp get_ammo_type_value(:avg_price_paid, _key, ammo_type, %{current_user: current_user}) do + case ammo_type |> Ammo.get_average_cost_for_ammo_type!(current_user) do + nil -> gettext("No cost information") + count -> gettext("$%{amount}", amount: count |> :erlang.float_to_binary(decimals: 2)) + end + end + + defp get_ammo_type_value(:name, _key, ammo_type, _other_data) do + assigns = %{ammo_type: ammo_type} + + ~H""" + <.link + navigate={Routes.ammo_type_show_path(Endpoint, :show, @ammo_type)} + class="link" + data-qa={"view-name-#{@ammo_type.id}"} + > + <%= @ammo_type.name %> + + """ + end + + defp get_ammo_type_value(:actions, _key, ammo_type, %{actions: actions}) do + assigns = %{actions: actions, ammo_type: ammo_type} + + ~H""" + <%= render_slot(@actions, @ammo_type) %> + """ + end + + defp get_ammo_type_value(nil, _key, _ammo_type, _other_data), do: nil + + defp get_ammo_type_value(_other, key, ammo_type, _other_data), do: ammo_type |> Map.get(key) +end diff --git a/lib/cannery_web/live/ammo_type_live/index.ex b/lib/cannery_web/live/ammo_type_live/index.ex index 9a2b22e..18e215b 100644 --- a/lib/cannery_web/live/ammo_type_live/index.ex +++ b/lib/cannery_web/live/ammo_type_live/index.ex @@ -90,198 +90,7 @@ defmodule CanneryWeb.AmmoTypeLive.Index do socket |> push_patch(to: Routes.ammo_type_index_path(Endpoint, :search, search_term))} end - defp list_ammo_types( - %{assigns: %{search: search, current_user: current_user, show_used: show_used}} = socket - ) do - ammo_types = Ammo.list_ammo_types(search, current_user) - - columns = - [ - %{label: gettext("Name"), key: :name, type: :name}, - %{label: gettext("Bullet type"), key: :bullet_type, type: :string}, - %{label: gettext("Bullet core"), key: :bullet_core, type: :string}, - %{label: gettext("Cartridge"), key: :cartridge, type: :string}, - %{label: gettext("Caliber"), key: :caliber, type: :string}, - %{label: gettext("Case material"), key: :case_material, type: :string}, - %{label: gettext("Jacket type"), key: :jacket_type, type: :string}, - %{label: gettext("Muzzle velocity"), key: :muzzle_velocity, type: :string}, - %{label: gettext("Powder type"), key: :powder_type, type: :string}, - %{ - label: gettext("Powder grains per charge"), - key: :powder_grains_per_charge, - type: :string - }, - %{label: gettext("Grains"), key: :grains, type: :string}, - %{label: gettext("Pressure"), key: :pressure, type: :string}, - %{label: gettext("Primer type"), key: :primer_type, type: :string}, - %{label: gettext("Firing type"), key: :firing_type, type: :string}, - %{label: gettext("Tracer"), key: :tracer, type: :boolean}, - %{label: gettext("Incendiary"), key: :incendiary, type: :boolean}, - %{label: gettext("Blank"), key: :blank, type: :boolean}, - %{label: gettext("Corrosive"), key: :corrosive, type: :boolean}, - %{label: gettext("Manufacturer"), key: :manufacturer, type: :string}, - %{label: gettext("UPC"), key: "upc", type: :string} - ] - |> Enum.filter(fn %{key: key, type: type} -> - # remove columns if all values match defaults - default_value = if type == :boolean, do: false, else: nil - - ammo_types - |> Enum.any?(fn ammo_type -> - not (ammo_type |> Map.get(key) == default_value) - end) - end) - |> Kernel.++([ - %{label: gettext("Rounds"), key: :round_count, type: :round_count} - ]) - |> Kernel.++( - if show_used do - [ - %{ - label: gettext("Used rounds"), - key: :used_round_count, - type: :used_round_count - }, - %{ - label: gettext("Total ever rounds"), - key: :historical_round_count, - type: :historical_round_count - } - ] - else - [] - end - ) - |> Kernel.++([%{label: gettext("Packs"), key: :ammo_count, type: :ammo_count}]) - |> Kernel.++( - if show_used do - [ - %{ - label: gettext("Used packs"), - key: :used_ammo_count, - type: :used_ammo_count - }, - %{ - label: gettext("Total ever packs"), - key: :historical_ammo_count, - type: :historical_ammo_count - } - ] - else - [] - end - ) - |> Kernel.++([ - %{label: gettext("Average CPR"), key: :avg_price_paid, type: :avg_price_paid}, - %{label: nil, key: "actions", type: :actions, sortable: false} - ]) - - rows = - ammo_types - |> Enum.map(fn ammo_type -> ammo_type |> get_ammo_type_values(columns, current_user) end) - - socket |> assign(columns: columns, rows: rows) + defp list_ammo_types(%{assigns: %{search: search, current_user: current_user}} = socket) do + socket |> assign(ammo_types: Ammo.list_ammo_types(search, current_user)) end - - defp get_ammo_type_values(ammo_type, columns, current_user) do - columns - |> Map.new(fn %{key: key, type: type} -> - {key, get_ammo_type_value(type, key, ammo_type, current_user)} - end) - end - - defp get_ammo_type_value(:boolean, key, ammo_type, _current_user), - do: ammo_type |> Map.get(key) |> humanize() - - defp get_ammo_type_value(:round_count, _key, ammo_type, current_user), - do: ammo_type |> Ammo.get_round_count_for_ammo_type(current_user) - - defp get_ammo_type_value(:historical_round_count, _key, ammo_type, current_user), - do: ammo_type |> Ammo.get_historical_count_for_ammo_type(current_user) - - defp get_ammo_type_value(:used_round_count, _key, ammo_type, current_user), - do: ammo_type |> Ammo.get_used_count_for_ammo_type(current_user) - - defp get_ammo_type_value(:historical_ammo_count, _key, ammo_type, current_user), - do: ammo_type |> Ammo.get_ammo_groups_count_for_type(current_user, true) - - defp get_ammo_type_value(:used_ammo_count, _key, ammo_type, current_user), - do: ammo_type |> Ammo.get_used_ammo_groups_count_for_type(current_user) - - defp get_ammo_type_value(:ammo_count, _key, ammo_type, current_user), - do: ammo_type |> Ammo.get_ammo_groups_count_for_type(current_user) - - defp get_ammo_type_value(:avg_price_paid, _key, ammo_type, current_user) do - case ammo_type |> Ammo.get_average_cost_for_ammo_type!(current_user) do - nil -> gettext("No cost information") - count -> gettext("$%{amount}", amount: count |> :erlang.float_to_binary(decimals: 2)) - end - end - - defp get_ammo_type_value(:name, _key, ammo_type, _current_user) do - assigns = %{ammo_type: ammo_type} - - ~H""" - <.link - navigate={Routes.ammo_type_show_path(Endpoint, :show, @ammo_type)} - class="link" - data-qa={"view-name-#{@ammo_type.id}"} - > - <%= @ammo_type.name %> - - """ - end - - defp get_ammo_type_value(:actions, _key, ammo_type, _current_user) do - assigns = %{ammo_type: ammo_type} - - ~H""" -
- <.link - navigate={Routes.ammo_type_show_path(Endpoint, :show, @ammo_type)} - class="text-primary-600 link" - data-qa={"view-#{@ammo_type.id}"} - > - - - - <.link - patch={Routes.ammo_type_index_path(Endpoint, :edit, @ammo_type)} - class="text-primary-600 link" - data-qa={"edit-#{@ammo_type.id}"} - > - - - - <.link - patch={Routes.ammo_type_index_path(Endpoint, :clone, @ammo_type)} - class="text-primary-600 link" - data-qa={"clone-#{@ammo_type.id}"} - > - - - - <.link - href="#" - class="text-primary-600 link" - phx-click="delete" - phx-value-id={@ammo_type.id} - data-confirm={ - dgettext( - "prompts", - "Are you sure you want to delete %{name}? This will delete all %{name} type ammo as well!", - name: @ammo_type.name - ) - } - data-qa={"delete-#{@ammo_type.id}"} - > - - -
- """ - end - - defp get_ammo_type_value(nil, _key, _ammo_type, _current_user), do: nil - - defp get_ammo_type_value(_other, key, ammo_type, _current_user), do: ammo_type |> Map.get(key) end diff --git a/lib/cannery_web/live/ammo_type_live/index.html.heex b/lib/cannery_web/live/ammo_type_live/index.html.heex index bab4d7e..67a85f3 100644 --- a/lib/cannery_web/live/ammo_type_live/index.html.heex +++ b/lib/cannery_web/live/ammo_type_live/index.html.heex @@ -3,7 +3,7 @@ <%= gettext("Catalog") %> - <%= if @rows |> Enum.empty?() do %> + <%= if @ammo_types |> Enum.empty?() and @search |> is_nil() do %>

<%= gettext("No Ammo types") %> <%= display_emoji("😔") %> @@ -41,13 +41,66 @@ - <.live_component - module={CanneryWeb.Components.TableComponent} - id="ammo_types_index_table" - action={@live_action} - columns={@columns} - rows={@rows} - /> + <%= if @ammo_types |> Enum.empty?() do %> +

+ <%= gettext("No Ammo types") %> + <%= display_emoji("😔") %> +

+ <% else %> + <.live_component + module={CanneryWeb.Components.AmmoTypeTableComponent} + id="ammo_types_index_table" + action={@live_action} + ammo_types={@ammo_types} + current_user={@current_user} + show_used={@show_used} + > + <:actions :let={ammo_type}> +
+ <.link + navigate={Routes.ammo_type_show_path(Endpoint, :show, ammo_type)} + class="text-primary-600 link" + data-qa={"view-#{ammo_type.id}"} + > + + + + <.link + patch={Routes.ammo_type_index_path(Endpoint, :edit, ammo_type)} + class="text-primary-600 link" + data-qa={"edit-#{ammo_type.id}"} + > + + + + <.link + patch={Routes.ammo_type_index_path(Endpoint, :clone, ammo_type)} + class="text-primary-600 link" + data-qa={"clone-#{ammo_type.id}"} + > + + + + <.link + href="#" + class="text-primary-600 link" + phx-click="delete" + phx-value-id={ammo_type.id} + data-confirm={ + dgettext( + "prompts", + "Are you sure you want to delete %{name}? This will delete all %{name} type ammo as well!", + name: ammo_type.name + ) + } + data-qa={"delete-#{ammo_type.id}"} + > + + +
+ + + <% end %> <% end %> diff --git a/priv/gettext/de/LC_MESSAGES/default.po b/priv/gettext/de/LC_MESSAGES/default.po index c8eaba5..bae1615 100644 --- a/priv/gettext/de/LC_MESSAGES/default.po +++ b/priv/gettext/de/LC_MESSAGES/default.po @@ -64,8 +64,8 @@ msgstr "Munitionsarten" msgid "Background color" msgstr "Hintergrundfarbe" +#: lib/cannery_web/components/ammo_type_table_component.ex:65 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:140 -#: lib/cannery_web/live/ammo_type_live/index.ex:120 #, elixir-autogen, elixir-format msgid "Blank" msgstr "Knallpatrone" @@ -75,32 +75,32 @@ msgstr "Knallpatrone" msgid "Brass" msgstr "Messing" +#: lib/cannery_web/components/ammo_type_table_component.ex:47 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:44 -#: lib/cannery_web/live/ammo_type_live/index.ex:102 #, elixir-autogen, elixir-format msgid "Bullet core" msgstr "Projektilkern" +#: lib/cannery_web/components/ammo_type_table_component.ex:46 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:37 -#: lib/cannery_web/live/ammo_type_live/index.ex:101 #, elixir-autogen, elixir-format msgid "Bullet type" msgstr "Patronenart" +#: lib/cannery_web/components/ammo_type_table_component.ex:49 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:58 -#: lib/cannery_web/live/ammo_type_live/index.ex:104 #, elixir-autogen, elixir-format msgid "Caliber" msgstr "Kaliber" +#: lib/cannery_web/components/ammo_type_table_component.ex:48 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:51 -#: lib/cannery_web/live/ammo_type_live/index.ex:103 #, elixir-autogen, elixir-format msgid "Cartridge" msgstr "Patrone" +#: lib/cannery_web/components/ammo_type_table_component.ex:50 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:65 -#: lib/cannery_web/live/ammo_type_live/index.ex:105 #, elixir-autogen, elixir-format msgid "Case material" msgstr "Gehäusematerial" @@ -120,8 +120,8 @@ msgstr "Behälter" msgid "Containers" msgstr "Behälter" +#: lib/cannery_web/components/ammo_type_table_component.ex:66 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:144 -#: lib/cannery_web/live/ammo_type_live/index.ex:121 #, elixir-autogen, elixir-format msgid "Corrosive" msgstr "Korrosiv" @@ -176,14 +176,14 @@ msgstr "Beispiel Munitionstyp Abkürzungen" msgid "FMJ" msgstr "VM" +#: lib/cannery_web/components/ammo_type_table_component.ex:59 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:103 -#: lib/cannery_web/live/ammo_type_live/index.ex:114 #, elixir-autogen, elixir-format msgid "Grains" msgstr "Körner" +#: lib/cannery_web/components/ammo_type_table_component.ex:64 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:136 -#: lib/cannery_web/live/ammo_type_live/index.ex:119 #, elixir-autogen, elixir-format msgid "Incendiary" msgstr "Brandmunition" @@ -233,8 +233,8 @@ msgstr "Standort:" msgid "Magazine, Clip, Ammo Box, etc" msgstr "Magazin, Ladestreifen, Munitionskiste usw." +#: lib/cannery_web/components/ammo_type_table_component.ex:67 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:148 -#: lib/cannery_web/live/ammo_type_live/index.ex:122 #, elixir-autogen, elixir-format msgid "Manufacturer" msgstr "Hersteller" @@ -249,8 +249,8 @@ msgstr "Metallene Munitionskiste mit Anime-Girl-Sticker" msgid "My cool ammo can" msgstr "Meine coole Munitionskiste" +#: lib/cannery_web/components/ammo_type_table_component.ex:45 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:20 -#: lib/cannery_web/live/ammo_type_live/index.ex:100 #: lib/cannery_web/live/container_live/form_component.html.heex:20 #: lib/cannery_web/live/container_live/index.ex:121 #: lib/cannery_web/live/invite_live/form_component.html.heex:20 @@ -328,8 +328,8 @@ msgstr "Bemerkungen:" msgid "On the bookshelf" msgstr "Auf dem Bücherregal" +#: lib/cannery_web/components/ammo_type_table_component.ex:60 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:111 -#: lib/cannery_web/live/ammo_type_live/index.ex:115 #, elixir-autogen, elixir-format msgid "Pressure" msgstr "Druck" @@ -345,8 +345,8 @@ msgstr "Kaufpreis" msgid "Price paid:" msgstr "Kaufpreis:" +#: lib/cannery_web/components/ammo_type_table_component.ex:61 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:118 -#: lib/cannery_web/live/ammo_type_live/index.ex:116 #, elixir-autogen, elixir-format msgid "Primer type" msgstr "Zündertyp" @@ -412,8 +412,8 @@ msgstr "Textfarbe" msgid "The self-hosted firearm tracker website" msgstr "Die selbst-gehostete Website zur Verwaltung von Schusswaffen" +#: lib/cannery_web/components/ammo_type_table_component.ex:63 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:132 -#: lib/cannery_web/live/ammo_type_live/index.ex:118 #, elixir-autogen, elixir-format msgid "Tracer" msgstr "Leuchtspur" @@ -550,9 +550,9 @@ msgstr "Schießkladde" #: lib/cannery_web/components/ammo_group_card.ex:78 #: lib/cannery_web/components/ammo_group_table_component.ex:152 #: lib/cannery_web/components/ammo_group_table_component.ex:224 +#: lib/cannery_web/components/ammo_type_table_component.ex:179 #: lib/cannery_web/live/ammo_group_live/show.html.heex:37 #: lib/cannery_web/live/ammo_group_live/show.html.heex:44 -#: lib/cannery_web/live/ammo_type_live/index.ex:217 #: lib/cannery_web/live/ammo_type_live/show.html.heex:136 #, elixir-autogen, elixir-format msgid "$%{amount}" @@ -563,32 +563,32 @@ msgstr "$%{amount}" msgid "Bimetal" msgstr "Bimetall" +#: lib/cannery_web/components/ammo_type_table_component.ex:51 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:72 -#: lib/cannery_web/live/ammo_type_live/index.ex:106 #, elixir-autogen, elixir-format msgid "Jacket type" msgstr "Patronenhülse" +#: lib/cannery_web/components/ammo_type_table_component.ex:52 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:79 -#: lib/cannery_web/live/ammo_type_live/index.ex:107 #, elixir-autogen, elixir-format msgid "Muzzle velocity" msgstr "Mündungsgeschwindigkeit" +#: lib/cannery_web/components/ammo_type_table_component.ex:55 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:93 -#: lib/cannery_web/live/ammo_type_live/index.ex:110 #, elixir-autogen, elixir-format msgid "Powder grains per charge" msgstr "Pulverkörner pro Ladung" +#: lib/cannery_web/components/ammo_type_table_component.ex:53 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:89 -#: lib/cannery_web/live/ammo_type_live/index.ex:108 #, elixir-autogen, elixir-format msgid "Powder type" msgstr "Pulverart" +#: lib/cannery_web/components/ammo_type_table_component.ex:68 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:152 -#: lib/cannery_web/live/ammo_type_live/index.ex:123 #, elixir-autogen, elixir-format msgid "UPC" msgstr "UPC" @@ -619,8 +619,8 @@ msgstr "Markiert" msgid "Unstage" msgstr "Demarkiert" +#: lib/cannery_web/components/ammo_type_table_component.ex:62 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:125 -#: lib/cannery_web/live/ammo_type_live/index.ex:117 #, elixir-autogen, elixir-format msgid "Firing type" msgstr "Patronenhülsenform" @@ -655,7 +655,7 @@ msgid "Rounds:" msgstr "Patronen:" #: lib/cannery_web/components/ammo_group_table_component.ex:221 -#: lib/cannery_web/live/ammo_type_live/index.ex:216 +#: lib/cannery_web/components/ammo_type_table_component.ex:178 #: lib/cannery_web/live/ammo_type_live/show.html.heex:142 #, elixir-autogen, elixir-format msgid "No cost information" @@ -860,13 +860,13 @@ msgstr "" msgid "Rounds shot: %{count}" msgstr "Patronen abgefeuert" -#: lib/cannery_web/live/ammo_type_live/index.ex:155 +#: lib/cannery_web/components/ammo_type_table_component.ex:100 #: lib/cannery_web/live/container_live/index.ex:125 #, elixir-autogen, elixir-format, fuzzy msgid "Packs" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:135 +#: lib/cannery_web/components/ammo_type_table_component.ex:80 #: lib/cannery_web/live/container_live/index.ex:126 #, elixir-autogen, elixir-format, fuzzy msgid "Rounds" @@ -879,7 +879,7 @@ msgstr "Patronen:" msgid "View as table" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:165 +#: lib/cannery_web/components/ammo_type_table_component.ex:110 #, elixir-autogen, elixir-format msgid "Total ever packs" msgstr "" @@ -889,7 +889,7 @@ msgstr "" msgid "Total ever packs:" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:146 +#: lib/cannery_web/components/ammo_type_table_component.ex:91 #, elixir-autogen, elixir-format, fuzzy msgid "Total ever rounds" msgstr "Summe aller Patronen" @@ -899,7 +899,7 @@ msgstr "Summe aller Patronen" msgid "Total ever rounds:" msgstr "Summe abgegebener Schüsse:" -#: lib/cannery_web/live/ammo_type_live/index.ex:160 +#: lib/cannery_web/components/ammo_type_table_component.ex:105 #, elixir-autogen, elixir-format msgid "Used packs" msgstr "" @@ -909,7 +909,7 @@ msgstr "" msgid "Used packs:" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:141 +#: lib/cannery_web/components/ammo_type_table_component.ex:86 #, elixir-autogen, elixir-format, fuzzy msgid "Used rounds" msgstr "" @@ -1024,7 +1024,7 @@ msgstr "Leuchtspur" msgid "UPC:" msgstr "UPC" -#: lib/cannery_web/live/ammo_type_live/index.ex:175 +#: lib/cannery_web/components/ammo_type_table_component.ex:120 #: lib/cannery_web/live/ammo_type_live/show.html.heex:132 #, elixir-autogen, elixir-format msgid "Average CPR" @@ -1110,6 +1110,7 @@ msgid "Edit ammo" msgstr "Munitionstyp bearbeiten" #: lib/cannery_web/live/ammo_type_live/index.html.heex:8 +#: lib/cannery_web/live/ammo_type_live/index.html.heex:46 #, elixir-autogen, elixir-format, fuzzy msgid "No Ammo types" msgstr "Keine Munitionsarten" diff --git a/priv/gettext/de/LC_MESSAGES/prompts.po b/priv/gettext/de/LC_MESSAGES/prompts.po index 662ddc3..49b66f5 100644 --- a/priv/gettext/de/LC_MESSAGES/prompts.po +++ b/priv/gettext/de/LC_MESSAGES/prompts.po @@ -289,7 +289,7 @@ msgid_plural "Ammo added successfully" msgstr[0] "Munitionsgruppe erfolgreich aktualisiert" msgstr[1] "Munitionsgruppe erfolgreich aktualisiert" -#: lib/cannery_web/live/ammo_type_live/index.ex:270 +#: lib/cannery_web/live/ammo_type_live/index.html.heex:90 #: lib/cannery_web/live/ammo_type_live/show.html.heex:28 #, elixir-autogen, elixir-format, fuzzy msgid "Are you sure you want to delete %{name}? This will delete all %{name} type ammo as well!" diff --git a/priv/gettext/default.pot b/priv/gettext/default.pot index 749bde2..a7278b6 100644 --- a/priv/gettext/default.pot +++ b/priv/gettext/default.pot @@ -49,8 +49,8 @@ msgstr "" msgid "Background color" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:65 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:140 -#: lib/cannery_web/live/ammo_type_live/index.ex:120 #, elixir-autogen, elixir-format msgid "Blank" msgstr "" @@ -60,32 +60,32 @@ msgstr "" msgid "Brass" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:47 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:44 -#: lib/cannery_web/live/ammo_type_live/index.ex:102 #, elixir-autogen, elixir-format msgid "Bullet core" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:46 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:37 -#: lib/cannery_web/live/ammo_type_live/index.ex:101 #, elixir-autogen, elixir-format msgid "Bullet type" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:49 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:58 -#: lib/cannery_web/live/ammo_type_live/index.ex:104 #, elixir-autogen, elixir-format msgid "Caliber" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:48 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:51 -#: lib/cannery_web/live/ammo_type_live/index.ex:103 #, elixir-autogen, elixir-format msgid "Cartridge" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:50 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:65 -#: lib/cannery_web/live/ammo_type_live/index.ex:105 #, elixir-autogen, elixir-format msgid "Case material" msgstr "" @@ -105,8 +105,8 @@ msgstr "" msgid "Containers" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:66 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:144 -#: lib/cannery_web/live/ammo_type_live/index.ex:121 #, elixir-autogen, elixir-format msgid "Corrosive" msgstr "" @@ -161,14 +161,14 @@ msgstr "" msgid "FMJ" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:59 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:103 -#: lib/cannery_web/live/ammo_type_live/index.ex:114 #, elixir-autogen, elixir-format msgid "Grains" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:64 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:136 -#: lib/cannery_web/live/ammo_type_live/index.ex:119 #, elixir-autogen, elixir-format msgid "Incendiary" msgstr "" @@ -218,8 +218,8 @@ msgstr "" msgid "Magazine, Clip, Ammo Box, etc" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:67 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:148 -#: lib/cannery_web/live/ammo_type_live/index.ex:122 #, elixir-autogen, elixir-format msgid "Manufacturer" msgstr "" @@ -234,8 +234,8 @@ msgstr "" msgid "My cool ammo can" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:45 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:20 -#: lib/cannery_web/live/ammo_type_live/index.ex:100 #: lib/cannery_web/live/container_live/form_component.html.heex:20 #: lib/cannery_web/live/container_live/index.ex:121 #: lib/cannery_web/live/invite_live/form_component.html.heex:20 @@ -313,8 +313,8 @@ msgstr "" msgid "On the bookshelf" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:60 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:111 -#: lib/cannery_web/live/ammo_type_live/index.ex:115 #, elixir-autogen, elixir-format msgid "Pressure" msgstr "" @@ -330,8 +330,8 @@ msgstr "" msgid "Price paid:" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:61 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:118 -#: lib/cannery_web/live/ammo_type_live/index.ex:116 #, elixir-autogen, elixir-format msgid "Primer type" msgstr "" @@ -395,8 +395,8 @@ msgstr "" msgid "The self-hosted firearm tracker website" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:63 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:132 -#: lib/cannery_web/live/ammo_type_live/index.ex:118 #, elixir-autogen, elixir-format msgid "Tracer" msgstr "" @@ -533,9 +533,9 @@ msgstr "" #: lib/cannery_web/components/ammo_group_card.ex:78 #: lib/cannery_web/components/ammo_group_table_component.ex:152 #: lib/cannery_web/components/ammo_group_table_component.ex:224 +#: lib/cannery_web/components/ammo_type_table_component.ex:179 #: lib/cannery_web/live/ammo_group_live/show.html.heex:37 #: lib/cannery_web/live/ammo_group_live/show.html.heex:44 -#: lib/cannery_web/live/ammo_type_live/index.ex:217 #: lib/cannery_web/live/ammo_type_live/show.html.heex:136 #, elixir-autogen, elixir-format msgid "$%{amount}" @@ -546,32 +546,32 @@ msgstr "" msgid "Bimetal" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:51 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:72 -#: lib/cannery_web/live/ammo_type_live/index.ex:106 #, elixir-autogen, elixir-format msgid "Jacket type" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:52 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:79 -#: lib/cannery_web/live/ammo_type_live/index.ex:107 #, elixir-autogen, elixir-format msgid "Muzzle velocity" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:55 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:93 -#: lib/cannery_web/live/ammo_type_live/index.ex:110 #, elixir-autogen, elixir-format msgid "Powder grains per charge" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:53 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:89 -#: lib/cannery_web/live/ammo_type_live/index.ex:108 #, elixir-autogen, elixir-format msgid "Powder type" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:68 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:152 -#: lib/cannery_web/live/ammo_type_live/index.ex:123 #, elixir-autogen, elixir-format msgid "UPC" msgstr "" @@ -602,8 +602,8 @@ msgstr "" msgid "Unstage" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:62 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:125 -#: lib/cannery_web/live/ammo_type_live/index.ex:117 #, elixir-autogen, elixir-format msgid "Firing type" msgstr "" @@ -638,7 +638,7 @@ msgid "Rounds:" msgstr "" #: lib/cannery_web/components/ammo_group_table_component.ex:221 -#: lib/cannery_web/live/ammo_type_live/index.ex:216 +#: lib/cannery_web/components/ammo_type_table_component.ex:178 #: lib/cannery_web/live/ammo_type_live/show.html.heex:142 #, elixir-autogen, elixir-format msgid "No cost information" @@ -843,13 +843,13 @@ msgstr "" msgid "Rounds shot: %{count}" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:155 +#: lib/cannery_web/components/ammo_type_table_component.ex:100 #: lib/cannery_web/live/container_live/index.ex:125 #, elixir-autogen, elixir-format msgid "Packs" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:135 +#: lib/cannery_web/components/ammo_type_table_component.ex:80 #: lib/cannery_web/live/container_live/index.ex:126 #, elixir-autogen, elixir-format msgid "Rounds" @@ -862,7 +862,7 @@ msgstr "" msgid "View as table" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:165 +#: lib/cannery_web/components/ammo_type_table_component.ex:110 #, elixir-autogen, elixir-format msgid "Total ever packs" msgstr "" @@ -872,7 +872,7 @@ msgstr "" msgid "Total ever packs:" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:146 +#: lib/cannery_web/components/ammo_type_table_component.ex:91 #, elixir-autogen, elixir-format msgid "Total ever rounds" msgstr "" @@ -882,7 +882,7 @@ msgstr "" msgid "Total ever rounds:" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:160 +#: lib/cannery_web/components/ammo_type_table_component.ex:105 #, elixir-autogen, elixir-format msgid "Used packs" msgstr "" @@ -892,7 +892,7 @@ msgstr "" msgid "Used packs:" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:141 +#: lib/cannery_web/components/ammo_type_table_component.ex:86 #, elixir-autogen, elixir-format msgid "Used rounds" msgstr "" @@ -1007,7 +1007,7 @@ msgstr "" msgid "UPC:" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:175 +#: lib/cannery_web/components/ammo_type_table_component.ex:120 #: lib/cannery_web/live/ammo_type_live/show.html.heex:132 #, elixir-autogen, elixir-format msgid "Average CPR" @@ -1093,6 +1093,7 @@ msgid "Edit ammo" msgstr "" #: lib/cannery_web/live/ammo_type_live/index.html.heex:8 +#: lib/cannery_web/live/ammo_type_live/index.html.heex:46 #, elixir-autogen, elixir-format msgid "No Ammo types" msgstr "" diff --git a/priv/gettext/en/LC_MESSAGES/default.po b/priv/gettext/en/LC_MESSAGES/default.po index 99b1da7..1f443b2 100644 --- a/priv/gettext/en/LC_MESSAGES/default.po +++ b/priv/gettext/en/LC_MESSAGES/default.po @@ -50,8 +50,8 @@ msgstr "" msgid "Background color" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:65 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:140 -#: lib/cannery_web/live/ammo_type_live/index.ex:120 #, elixir-autogen, elixir-format msgid "Blank" msgstr "" @@ -61,32 +61,32 @@ msgstr "" msgid "Brass" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:47 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:44 -#: lib/cannery_web/live/ammo_type_live/index.ex:102 #, elixir-autogen, elixir-format msgid "Bullet core" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:46 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:37 -#: lib/cannery_web/live/ammo_type_live/index.ex:101 #, elixir-autogen, elixir-format msgid "Bullet type" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:49 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:58 -#: lib/cannery_web/live/ammo_type_live/index.ex:104 #, elixir-autogen, elixir-format msgid "Caliber" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:48 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:51 -#: lib/cannery_web/live/ammo_type_live/index.ex:103 #, elixir-autogen, elixir-format msgid "Cartridge" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:50 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:65 -#: lib/cannery_web/live/ammo_type_live/index.ex:105 #, elixir-autogen, elixir-format msgid "Case material" msgstr "" @@ -106,8 +106,8 @@ msgstr "" msgid "Containers" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:66 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:144 -#: lib/cannery_web/live/ammo_type_live/index.ex:121 #, elixir-autogen, elixir-format msgid "Corrosive" msgstr "" @@ -162,14 +162,14 @@ msgstr "" msgid "FMJ" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:59 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:103 -#: lib/cannery_web/live/ammo_type_live/index.ex:114 #, elixir-autogen, elixir-format msgid "Grains" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:64 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:136 -#: lib/cannery_web/live/ammo_type_live/index.ex:119 #, elixir-autogen, elixir-format msgid "Incendiary" msgstr "" @@ -219,8 +219,8 @@ msgstr "" msgid "Magazine, Clip, Ammo Box, etc" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:67 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:148 -#: lib/cannery_web/live/ammo_type_live/index.ex:122 #, elixir-autogen, elixir-format msgid "Manufacturer" msgstr "" @@ -235,8 +235,8 @@ msgstr "" msgid "My cool ammo can" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:45 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:20 -#: lib/cannery_web/live/ammo_type_live/index.ex:100 #: lib/cannery_web/live/container_live/form_component.html.heex:20 #: lib/cannery_web/live/container_live/index.ex:121 #: lib/cannery_web/live/invite_live/form_component.html.heex:20 @@ -314,8 +314,8 @@ msgstr "" msgid "On the bookshelf" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:60 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:111 -#: lib/cannery_web/live/ammo_type_live/index.ex:115 #, elixir-autogen, elixir-format msgid "Pressure" msgstr "" @@ -331,8 +331,8 @@ msgstr "" msgid "Price paid:" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:61 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:118 -#: lib/cannery_web/live/ammo_type_live/index.ex:116 #, elixir-autogen, elixir-format msgid "Primer type" msgstr "" @@ -396,8 +396,8 @@ msgstr "" msgid "The self-hosted firearm tracker website" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:63 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:132 -#: lib/cannery_web/live/ammo_type_live/index.ex:118 #, elixir-autogen, elixir-format msgid "Tracer" msgstr "" @@ -534,9 +534,9 @@ msgstr "" #: lib/cannery_web/components/ammo_group_card.ex:78 #: lib/cannery_web/components/ammo_group_table_component.ex:152 #: lib/cannery_web/components/ammo_group_table_component.ex:224 +#: lib/cannery_web/components/ammo_type_table_component.ex:179 #: lib/cannery_web/live/ammo_group_live/show.html.heex:37 #: lib/cannery_web/live/ammo_group_live/show.html.heex:44 -#: lib/cannery_web/live/ammo_type_live/index.ex:217 #: lib/cannery_web/live/ammo_type_live/show.html.heex:136 #, elixir-autogen, elixir-format msgid "$%{amount}" @@ -547,32 +547,32 @@ msgstr "" msgid "Bimetal" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:51 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:72 -#: lib/cannery_web/live/ammo_type_live/index.ex:106 #, elixir-autogen, elixir-format msgid "Jacket type" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:52 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:79 -#: lib/cannery_web/live/ammo_type_live/index.ex:107 #, elixir-autogen, elixir-format msgid "Muzzle velocity" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:55 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:93 -#: lib/cannery_web/live/ammo_type_live/index.ex:110 #, elixir-autogen, elixir-format msgid "Powder grains per charge" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:53 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:89 -#: lib/cannery_web/live/ammo_type_live/index.ex:108 #, elixir-autogen, elixir-format msgid "Powder type" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:68 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:152 -#: lib/cannery_web/live/ammo_type_live/index.ex:123 #, elixir-autogen, elixir-format msgid "UPC" msgstr "" @@ -603,8 +603,8 @@ msgstr "" msgid "Unstage" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:62 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:125 -#: lib/cannery_web/live/ammo_type_live/index.ex:117 #, elixir-autogen, elixir-format msgid "Firing type" msgstr "" @@ -639,7 +639,7 @@ msgid "Rounds:" msgstr "" #: lib/cannery_web/components/ammo_group_table_component.ex:221 -#: lib/cannery_web/live/ammo_type_live/index.ex:216 +#: lib/cannery_web/components/ammo_type_table_component.ex:178 #: lib/cannery_web/live/ammo_type_live/show.html.heex:142 #, elixir-autogen, elixir-format msgid "No cost information" @@ -844,13 +844,13 @@ msgstr "" msgid "Rounds shot: %{count}" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:155 +#: lib/cannery_web/components/ammo_type_table_component.ex:100 #: lib/cannery_web/live/container_live/index.ex:125 #, elixir-autogen, elixir-format, fuzzy msgid "Packs" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:135 +#: lib/cannery_web/components/ammo_type_table_component.ex:80 #: lib/cannery_web/live/container_live/index.ex:126 #, elixir-autogen, elixir-format, fuzzy msgid "Rounds" @@ -863,7 +863,7 @@ msgstr "" msgid "View as table" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:165 +#: lib/cannery_web/components/ammo_type_table_component.ex:110 #, elixir-autogen, elixir-format msgid "Total ever packs" msgstr "" @@ -873,7 +873,7 @@ msgstr "" msgid "Total ever packs:" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:146 +#: lib/cannery_web/components/ammo_type_table_component.ex:91 #, elixir-autogen, elixir-format, fuzzy msgid "Total ever rounds" msgstr "" @@ -883,7 +883,7 @@ msgstr "" msgid "Total ever rounds:" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:160 +#: lib/cannery_web/components/ammo_type_table_component.ex:105 #, elixir-autogen, elixir-format msgid "Used packs" msgstr "" @@ -893,7 +893,7 @@ msgstr "" msgid "Used packs:" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:141 +#: lib/cannery_web/components/ammo_type_table_component.ex:86 #, elixir-autogen, elixir-format, fuzzy msgid "Used rounds" msgstr "" @@ -1008,7 +1008,7 @@ msgstr "" msgid "UPC:" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:175 +#: lib/cannery_web/components/ammo_type_table_component.ex:120 #: lib/cannery_web/live/ammo_type_live/show.html.heex:132 #, elixir-autogen, elixir-format msgid "Average CPR" @@ -1094,6 +1094,7 @@ msgid "Edit ammo" msgstr "" #: lib/cannery_web/live/ammo_type_live/index.html.heex:8 +#: lib/cannery_web/live/ammo_type_live/index.html.heex:46 #, elixir-autogen, elixir-format, fuzzy msgid "No Ammo types" msgstr "" diff --git a/priv/gettext/en/LC_MESSAGES/prompts.po b/priv/gettext/en/LC_MESSAGES/prompts.po index 7852dcb..32b7033 100644 --- a/priv/gettext/en/LC_MESSAGES/prompts.po +++ b/priv/gettext/en/LC_MESSAGES/prompts.po @@ -269,7 +269,7 @@ msgid_plural "Ammo added successfully" msgstr[0] "" msgstr[1] "" -#: lib/cannery_web/live/ammo_type_live/index.ex:270 +#: lib/cannery_web/live/ammo_type_live/index.html.heex:90 #: lib/cannery_web/live/ammo_type_live/show.html.heex:28 #, elixir-autogen, elixir-format, fuzzy msgid "Are you sure you want to delete %{name}? This will delete all %{name} type ammo as well!" diff --git a/priv/gettext/es/LC_MESSAGES/default.po b/priv/gettext/es/LC_MESSAGES/default.po index 670b96a..b02cde3 100644 --- a/priv/gettext/es/LC_MESSAGES/default.po +++ b/priv/gettext/es/LC_MESSAGES/default.po @@ -64,8 +64,8 @@ msgstr "" msgid "Background color" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:65 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:140 -#: lib/cannery_web/live/ammo_type_live/index.ex:120 #, elixir-autogen, elixir-format msgid "Blank" msgstr "" @@ -75,32 +75,32 @@ msgstr "" msgid "Brass" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:47 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:44 -#: lib/cannery_web/live/ammo_type_live/index.ex:102 #, elixir-autogen, elixir-format msgid "Bullet core" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:46 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:37 -#: lib/cannery_web/live/ammo_type_live/index.ex:101 #, elixir-autogen, elixir-format msgid "Bullet type" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:49 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:58 -#: lib/cannery_web/live/ammo_type_live/index.ex:104 #, elixir-autogen, elixir-format msgid "Caliber" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:48 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:51 -#: lib/cannery_web/live/ammo_type_live/index.ex:103 #, elixir-autogen, elixir-format msgid "Cartridge" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:50 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:65 -#: lib/cannery_web/live/ammo_type_live/index.ex:105 #, elixir-autogen, elixir-format msgid "Case material" msgstr "" @@ -120,8 +120,8 @@ msgstr "" msgid "Containers" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:66 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:144 -#: lib/cannery_web/live/ammo_type_live/index.ex:121 #, elixir-autogen, elixir-format msgid "Corrosive" msgstr "" @@ -176,14 +176,14 @@ msgstr "" msgid "FMJ" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:59 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:103 -#: lib/cannery_web/live/ammo_type_live/index.ex:114 #, elixir-autogen, elixir-format msgid "Grains" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:64 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:136 -#: lib/cannery_web/live/ammo_type_live/index.ex:119 #, elixir-autogen, elixir-format msgid "Incendiary" msgstr "" @@ -233,8 +233,8 @@ msgstr "" msgid "Magazine, Clip, Ammo Box, etc" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:67 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:148 -#: lib/cannery_web/live/ammo_type_live/index.ex:122 #, elixir-autogen, elixir-format msgid "Manufacturer" msgstr "" @@ -249,8 +249,8 @@ msgstr "" msgid "My cool ammo can" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:45 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:20 -#: lib/cannery_web/live/ammo_type_live/index.ex:100 #: lib/cannery_web/live/container_live/form_component.html.heex:20 #: lib/cannery_web/live/container_live/index.ex:121 #: lib/cannery_web/live/invite_live/form_component.html.heex:20 @@ -328,8 +328,8 @@ msgstr "" msgid "On the bookshelf" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:60 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:111 -#: lib/cannery_web/live/ammo_type_live/index.ex:115 #, elixir-autogen, elixir-format msgid "Pressure" msgstr "" @@ -345,8 +345,8 @@ msgstr "" msgid "Price paid:" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:61 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:118 -#: lib/cannery_web/live/ammo_type_live/index.ex:116 #, elixir-autogen, elixir-format msgid "Primer type" msgstr "" @@ -410,8 +410,8 @@ msgstr "" msgid "The self-hosted firearm tracker website" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:63 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:132 -#: lib/cannery_web/live/ammo_type_live/index.ex:118 #, elixir-autogen, elixir-format msgid "Tracer" msgstr "" @@ -548,9 +548,9 @@ msgstr "" #: lib/cannery_web/components/ammo_group_card.ex:78 #: lib/cannery_web/components/ammo_group_table_component.ex:152 #: lib/cannery_web/components/ammo_group_table_component.ex:224 +#: lib/cannery_web/components/ammo_type_table_component.ex:179 #: lib/cannery_web/live/ammo_group_live/show.html.heex:37 #: lib/cannery_web/live/ammo_group_live/show.html.heex:44 -#: lib/cannery_web/live/ammo_type_live/index.ex:217 #: lib/cannery_web/live/ammo_type_live/show.html.heex:136 #, elixir-autogen, elixir-format msgid "$%{amount}" @@ -561,32 +561,32 @@ msgstr "" msgid "Bimetal" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:51 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:72 -#: lib/cannery_web/live/ammo_type_live/index.ex:106 #, elixir-autogen, elixir-format msgid "Jacket type" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:52 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:79 -#: lib/cannery_web/live/ammo_type_live/index.ex:107 #, elixir-autogen, elixir-format msgid "Muzzle velocity" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:55 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:93 -#: lib/cannery_web/live/ammo_type_live/index.ex:110 #, elixir-autogen, elixir-format msgid "Powder grains per charge" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:53 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:89 -#: lib/cannery_web/live/ammo_type_live/index.ex:108 #, elixir-autogen, elixir-format msgid "Powder type" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:68 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:152 -#: lib/cannery_web/live/ammo_type_live/index.ex:123 #, elixir-autogen, elixir-format msgid "UPC" msgstr "" @@ -617,8 +617,8 @@ msgstr "" msgid "Unstage" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:62 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:125 -#: lib/cannery_web/live/ammo_type_live/index.ex:117 #, elixir-autogen, elixir-format msgid "Firing type" msgstr "" @@ -653,7 +653,7 @@ msgid "Rounds:" msgstr "" #: lib/cannery_web/components/ammo_group_table_component.ex:221 -#: lib/cannery_web/live/ammo_type_live/index.ex:216 +#: lib/cannery_web/components/ammo_type_table_component.ex:178 #: lib/cannery_web/live/ammo_type_live/show.html.heex:142 #, elixir-autogen, elixir-format msgid "No cost information" @@ -858,13 +858,13 @@ msgstr "" msgid "Rounds shot: %{count}" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:155 +#: lib/cannery_web/components/ammo_type_table_component.ex:100 #: lib/cannery_web/live/container_live/index.ex:125 #, elixir-autogen, elixir-format, fuzzy msgid "Packs" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:135 +#: lib/cannery_web/components/ammo_type_table_component.ex:80 #: lib/cannery_web/live/container_live/index.ex:126 #, elixir-autogen, elixir-format, fuzzy msgid "Rounds" @@ -877,7 +877,7 @@ msgstr "" msgid "View as table" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:165 +#: lib/cannery_web/components/ammo_type_table_component.ex:110 #, elixir-autogen, elixir-format msgid "Total ever packs" msgstr "" @@ -887,7 +887,7 @@ msgstr "" msgid "Total ever packs:" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:146 +#: lib/cannery_web/components/ammo_type_table_component.ex:91 #, elixir-autogen, elixir-format, fuzzy msgid "Total ever rounds" msgstr "" @@ -897,7 +897,7 @@ msgstr "" msgid "Total ever rounds:" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:160 +#: lib/cannery_web/components/ammo_type_table_component.ex:105 #, elixir-autogen, elixir-format msgid "Used packs" msgstr "" @@ -907,7 +907,7 @@ msgstr "" msgid "Used packs:" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:141 +#: lib/cannery_web/components/ammo_type_table_component.ex:86 #, elixir-autogen, elixir-format, fuzzy msgid "Used rounds" msgstr "" @@ -1022,7 +1022,7 @@ msgstr "" msgid "UPC:" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:175 +#: lib/cannery_web/components/ammo_type_table_component.ex:120 #: lib/cannery_web/live/ammo_type_live/show.html.heex:132 #, elixir-autogen, elixir-format msgid "Average CPR" @@ -1108,6 +1108,7 @@ msgid "Edit ammo" msgstr "" #: lib/cannery_web/live/ammo_type_live/index.html.heex:8 +#: lib/cannery_web/live/ammo_type_live/index.html.heex:46 #, elixir-autogen, elixir-format, fuzzy msgid "No Ammo types" msgstr "" diff --git a/priv/gettext/es/LC_MESSAGES/prompts.po b/priv/gettext/es/LC_MESSAGES/prompts.po index eee8cd9..f5f7d42 100644 --- a/priv/gettext/es/LC_MESSAGES/prompts.po +++ b/priv/gettext/es/LC_MESSAGES/prompts.po @@ -288,7 +288,7 @@ msgid_plural "Ammo added successfully" msgstr[0] "" msgstr[1] "" -#: lib/cannery_web/live/ammo_type_live/index.ex:270 +#: lib/cannery_web/live/ammo_type_live/index.html.heex:90 #: lib/cannery_web/live/ammo_type_live/show.html.heex:28 #, elixir-autogen, elixir-format, fuzzy msgid "Are you sure you want to delete %{name}? This will delete all %{name} type ammo as well!" diff --git a/priv/gettext/fr/LC_MESSAGES/default.po b/priv/gettext/fr/LC_MESSAGES/default.po index 23e7310..7fd506b 100644 --- a/priv/gettext/fr/LC_MESSAGES/default.po +++ b/priv/gettext/fr/LC_MESSAGES/default.po @@ -64,8 +64,8 @@ msgstr "Type de munition" msgid "Background color" msgstr "Couleur de fond" +#: lib/cannery_web/components/ammo_type_table_component.ex:65 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:140 -#: lib/cannery_web/live/ammo_type_live/index.ex:120 #, elixir-autogen, elixir-format msgid "Blank" msgstr "Vide" @@ -75,32 +75,32 @@ msgstr "Vide" msgid "Brass" msgstr "Cuivre" +#: lib/cannery_web/components/ammo_type_table_component.ex:47 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:44 -#: lib/cannery_web/live/ammo_type_live/index.ex:102 #, elixir-autogen, elixir-format msgid "Bullet core" msgstr "Noyau de balle" +#: lib/cannery_web/components/ammo_type_table_component.ex:46 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:37 -#: lib/cannery_web/live/ammo_type_live/index.ex:101 #, elixir-autogen, elixir-format msgid "Bullet type" msgstr "Type de balle" +#: lib/cannery_web/components/ammo_type_table_component.ex:49 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:58 -#: lib/cannery_web/live/ammo_type_live/index.ex:104 #, elixir-autogen, elixir-format msgid "Caliber" msgstr "Calibre" +#: lib/cannery_web/components/ammo_type_table_component.ex:48 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:51 -#: lib/cannery_web/live/ammo_type_live/index.ex:103 #, elixir-autogen, elixir-format msgid "Cartridge" msgstr "Cartouche" +#: lib/cannery_web/components/ammo_type_table_component.ex:50 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:65 -#: lib/cannery_web/live/ammo_type_live/index.ex:105 #, elixir-autogen, elixir-format msgid "Case material" msgstr "Matériau de la caisse" @@ -120,8 +120,8 @@ msgstr "Conteneur" msgid "Containers" msgstr "Conteneurs" +#: lib/cannery_web/components/ammo_type_table_component.ex:66 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:144 -#: lib/cannery_web/live/ammo_type_live/index.ex:121 #, elixir-autogen, elixir-format msgid "Corrosive" msgstr "Corrosive" @@ -176,14 +176,14 @@ msgstr "Exemple d’abréviations de type de balle" msgid "FMJ" msgstr "FMJ" +#: lib/cannery_web/components/ammo_type_table_component.ex:59 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:103 -#: lib/cannery_web/live/ammo_type_live/index.ex:114 #, elixir-autogen, elixir-format msgid "Grains" msgstr "Graines" +#: lib/cannery_web/components/ammo_type_table_component.ex:64 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:136 -#: lib/cannery_web/live/ammo_type_live/index.ex:119 #, elixir-autogen, elixir-format msgid "Incendiary" msgstr "Incendiaire" @@ -233,8 +233,8 @@ msgstr "Localisation :" msgid "Magazine, Clip, Ammo Box, etc" msgstr "Chargeur, lame-chargeur, boite de munition, etc." +#: lib/cannery_web/components/ammo_type_table_component.ex:67 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:148 -#: lib/cannery_web/live/ammo_type_live/index.ex:122 #, elixir-autogen, elixir-format msgid "Manufacturer" msgstr "Fabricant" @@ -249,8 +249,8 @@ msgstr "Boite de munition avec le sticker de fille d’animation" msgid "My cool ammo can" msgstr "Ma superbe boite de munition" +#: lib/cannery_web/components/ammo_type_table_component.ex:45 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:20 -#: lib/cannery_web/live/ammo_type_live/index.ex:100 #: lib/cannery_web/live/container_live/form_component.html.heex:20 #: lib/cannery_web/live/container_live/index.ex:121 #: lib/cannery_web/live/invite_live/form_component.html.heex:20 @@ -328,8 +328,8 @@ msgstr "Notes :" msgid "On the bookshelf" msgstr "Sur l’étagère" +#: lib/cannery_web/components/ammo_type_table_component.ex:60 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:111 -#: lib/cannery_web/live/ammo_type_live/index.ex:115 #, elixir-autogen, elixir-format msgid "Pressure" msgstr "Pression" @@ -345,8 +345,8 @@ msgstr "Prix payé" msgid "Price paid:" msgstr "Prix payé :" +#: lib/cannery_web/components/ammo_type_table_component.ex:61 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:118 -#: lib/cannery_web/live/ammo_type_live/index.ex:116 #, elixir-autogen, elixir-format msgid "Primer type" msgstr "Type d’amorce" @@ -414,8 +414,8 @@ msgstr "Couleur du texte" msgid "The self-hosted firearm tracker website" msgstr "Le site web de suivi d’arme à feux auto-hébergé" +#: lib/cannery_web/components/ammo_type_table_component.ex:63 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:132 -#: lib/cannery_web/live/ammo_type_live/index.ex:118 #, elixir-autogen, elixir-format msgid "Tracer" msgstr "Traceuse" @@ -552,9 +552,9 @@ msgstr "Évènements de tir" #: lib/cannery_web/components/ammo_group_card.ex:78 #: lib/cannery_web/components/ammo_group_table_component.ex:152 #: lib/cannery_web/components/ammo_group_table_component.ex:224 +#: lib/cannery_web/components/ammo_type_table_component.ex:179 #: lib/cannery_web/live/ammo_group_live/show.html.heex:37 #: lib/cannery_web/live/ammo_group_live/show.html.heex:44 -#: lib/cannery_web/live/ammo_type_live/index.ex:217 #: lib/cannery_web/live/ammo_type_live/show.html.heex:136 #, elixir-autogen, elixir-format msgid "$%{amount}" @@ -565,32 +565,32 @@ msgstr "%{amount} $" msgid "Bimetal" msgstr "Bi-métal" +#: lib/cannery_web/components/ammo_type_table_component.ex:51 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:72 -#: lib/cannery_web/live/ammo_type_live/index.ex:106 #, elixir-autogen, elixir-format msgid "Jacket type" msgstr "Type de douille" +#: lib/cannery_web/components/ammo_type_table_component.ex:52 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:79 -#: lib/cannery_web/live/ammo_type_live/index.ex:107 #, elixir-autogen, elixir-format msgid "Muzzle velocity" msgstr "Vélocité du canon" +#: lib/cannery_web/components/ammo_type_table_component.ex:55 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:93 -#: lib/cannery_web/live/ammo_type_live/index.ex:110 #, elixir-autogen, elixir-format msgid "Powder grains per charge" msgstr "Graines de poudre par charge" +#: lib/cannery_web/components/ammo_type_table_component.ex:53 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:89 -#: lib/cannery_web/live/ammo_type_live/index.ex:108 #, elixir-autogen, elixir-format msgid "Powder type" msgstr "Type de poudre" +#: lib/cannery_web/components/ammo_type_table_component.ex:68 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:152 -#: lib/cannery_web/live/ammo_type_live/index.ex:123 #, elixir-autogen, elixir-format msgid "UPC" msgstr "UPC" @@ -621,8 +621,8 @@ msgstr "Sélectionné" msgid "Unstage" msgstr "Désélectionner" +#: lib/cannery_web/components/ammo_type_table_component.ex:62 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:125 -#: lib/cannery_web/live/ammo_type_live/index.ex:117 #, elixir-autogen, elixir-format msgid "Firing type" msgstr "Type d’allumage" @@ -657,7 +657,7 @@ msgid "Rounds:" msgstr "Cartouches :" #: lib/cannery_web/components/ammo_group_table_component.ex:221 -#: lib/cannery_web/live/ammo_type_live/index.ex:216 +#: lib/cannery_web/components/ammo_type_table_component.ex:178 #: lib/cannery_web/live/ammo_type_live/show.html.heex:142 #, elixir-autogen, elixir-format msgid "No cost information" @@ -863,13 +863,13 @@ msgstr "" msgid "Rounds shot: %{count}" msgstr "Cartouches tirées" -#: lib/cannery_web/live/ammo_type_live/index.ex:155 +#: lib/cannery_web/components/ammo_type_table_component.ex:100 #: lib/cannery_web/live/container_live/index.ex:125 #, elixir-autogen, elixir-format, fuzzy msgid "Packs" msgstr "Packages :" -#: lib/cannery_web/live/ammo_type_live/index.ex:135 +#: lib/cannery_web/components/ammo_type_table_component.ex:80 #: lib/cannery_web/live/container_live/index.ex:126 #, elixir-autogen, elixir-format, fuzzy msgid "Rounds" @@ -882,7 +882,7 @@ msgstr "Cartouches :" msgid "View as table" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:165 +#: lib/cannery_web/components/ammo_type_table_component.ex:110 #, elixir-autogen, elixir-format msgid "Total ever packs" msgstr "" @@ -892,7 +892,7 @@ msgstr "" msgid "Total ever packs:" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:146 +#: lib/cannery_web/components/ammo_type_table_component.ex:91 #, elixir-autogen, elixir-format, fuzzy msgid "Total ever rounds" msgstr "Quantité de cartouches" @@ -902,7 +902,7 @@ msgstr "Quantité de cartouches" msgid "Total ever rounds:" msgstr "Nombre totale de cartouches tirées :" -#: lib/cannery_web/live/ammo_type_live/index.ex:160 +#: lib/cannery_web/components/ammo_type_table_component.ex:105 #, elixir-autogen, elixir-format msgid "Used packs" msgstr "" @@ -912,7 +912,7 @@ msgstr "" msgid "Used packs:" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:141 +#: lib/cannery_web/components/ammo_type_table_component.ex:86 #, elixir-autogen, elixir-format, fuzzy msgid "Used rounds" msgstr "" @@ -1027,7 +1027,7 @@ msgstr "Traceuse" msgid "UPC:" msgstr "UPC" -#: lib/cannery_web/live/ammo_type_live/index.ex:175 +#: lib/cannery_web/components/ammo_type_table_component.ex:120 #: lib/cannery_web/live/ammo_type_live/show.html.heex:132 #, elixir-autogen, elixir-format msgid "Average CPR" @@ -1113,6 +1113,7 @@ msgid "Edit ammo" msgstr "Éditer le type de munition" #: lib/cannery_web/live/ammo_type_live/index.html.heex:8 +#: lib/cannery_web/live/ammo_type_live/index.html.heex:46 #, elixir-autogen, elixir-format, fuzzy msgid "No Ammo types" msgstr "Aucun type de munition" diff --git a/priv/gettext/fr/LC_MESSAGES/prompts.po b/priv/gettext/fr/LC_MESSAGES/prompts.po index 1b400ce..2f53165 100644 --- a/priv/gettext/fr/LC_MESSAGES/prompts.po +++ b/priv/gettext/fr/LC_MESSAGES/prompts.po @@ -290,7 +290,7 @@ msgid_plural "Ammo added successfully" msgstr[0] "Groupe de munition mis à jour avec succès" msgstr[1] "Groupe de munition mis à jour avec succès" -#: lib/cannery_web/live/ammo_type_live/index.ex:270 +#: lib/cannery_web/live/ammo_type_live/index.html.heex:90 #: lib/cannery_web/live/ammo_type_live/show.html.heex:28 #, elixir-autogen, elixir-format, fuzzy msgid "Are you sure you want to delete %{name}? This will delete all %{name} type ammo as well!" diff --git a/priv/gettext/ga/LC_MESSAGES/default.po b/priv/gettext/ga/LC_MESSAGES/default.po index 3ab1dcf..89d8d64 100644 --- a/priv/gettext/ga/LC_MESSAGES/default.po +++ b/priv/gettext/ga/LC_MESSAGES/default.po @@ -60,8 +60,8 @@ msgstr "" msgid "Background color" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:65 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:140 -#: lib/cannery_web/live/ammo_type_live/index.ex:120 #, elixir-autogen, elixir-format msgid "Blank" msgstr "" @@ -71,32 +71,32 @@ msgstr "" msgid "Brass" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:47 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:44 -#: lib/cannery_web/live/ammo_type_live/index.ex:102 #, elixir-autogen, elixir-format msgid "Bullet core" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:46 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:37 -#: lib/cannery_web/live/ammo_type_live/index.ex:101 #, elixir-autogen, elixir-format msgid "Bullet type" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:49 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:58 -#: lib/cannery_web/live/ammo_type_live/index.ex:104 #, elixir-autogen, elixir-format msgid "Caliber" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:48 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:51 -#: lib/cannery_web/live/ammo_type_live/index.ex:103 #, elixir-autogen, elixir-format msgid "Cartridge" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:50 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:65 -#: lib/cannery_web/live/ammo_type_live/index.ex:105 #, elixir-autogen, elixir-format msgid "Case material" msgstr "" @@ -116,8 +116,8 @@ msgstr "" msgid "Containers" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:66 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:144 -#: lib/cannery_web/live/ammo_type_live/index.ex:121 #, elixir-autogen, elixir-format msgid "Corrosive" msgstr "" @@ -172,14 +172,14 @@ msgstr "" msgid "FMJ" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:59 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:103 -#: lib/cannery_web/live/ammo_type_live/index.ex:114 #, elixir-autogen, elixir-format msgid "Grains" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:64 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:136 -#: lib/cannery_web/live/ammo_type_live/index.ex:119 #, elixir-autogen, elixir-format msgid "Incendiary" msgstr "" @@ -229,8 +229,8 @@ msgstr "" msgid "Magazine, Clip, Ammo Box, etc" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:67 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:148 -#: lib/cannery_web/live/ammo_type_live/index.ex:122 #, elixir-autogen, elixir-format msgid "Manufacturer" msgstr "" @@ -245,8 +245,8 @@ msgstr "" msgid "My cool ammo can" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:45 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:20 -#: lib/cannery_web/live/ammo_type_live/index.ex:100 #: lib/cannery_web/live/container_live/form_component.html.heex:20 #: lib/cannery_web/live/container_live/index.ex:121 #: lib/cannery_web/live/invite_live/form_component.html.heex:20 @@ -324,8 +324,8 @@ msgstr "" msgid "On the bookshelf" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:60 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:111 -#: lib/cannery_web/live/ammo_type_live/index.ex:115 #, elixir-autogen, elixir-format msgid "Pressure" msgstr "" @@ -341,8 +341,8 @@ msgstr "" msgid "Price paid:" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:61 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:118 -#: lib/cannery_web/live/ammo_type_live/index.ex:116 #, elixir-autogen, elixir-format msgid "Primer type" msgstr "" @@ -406,8 +406,8 @@ msgstr "" msgid "The self-hosted firearm tracker website" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:63 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:132 -#: lib/cannery_web/live/ammo_type_live/index.ex:118 #, elixir-autogen, elixir-format msgid "Tracer" msgstr "" @@ -544,9 +544,9 @@ msgstr "" #: lib/cannery_web/components/ammo_group_card.ex:78 #: lib/cannery_web/components/ammo_group_table_component.ex:152 #: lib/cannery_web/components/ammo_group_table_component.ex:224 +#: lib/cannery_web/components/ammo_type_table_component.ex:179 #: lib/cannery_web/live/ammo_group_live/show.html.heex:37 #: lib/cannery_web/live/ammo_group_live/show.html.heex:44 -#: lib/cannery_web/live/ammo_type_live/index.ex:217 #: lib/cannery_web/live/ammo_type_live/show.html.heex:136 #, elixir-autogen, elixir-format msgid "$%{amount}" @@ -557,32 +557,32 @@ msgstr "" msgid "Bimetal" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:51 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:72 -#: lib/cannery_web/live/ammo_type_live/index.ex:106 #, elixir-autogen, elixir-format msgid "Jacket type" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:52 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:79 -#: lib/cannery_web/live/ammo_type_live/index.ex:107 #, elixir-autogen, elixir-format msgid "Muzzle velocity" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:55 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:93 -#: lib/cannery_web/live/ammo_type_live/index.ex:110 #, elixir-autogen, elixir-format msgid "Powder grains per charge" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:53 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:89 -#: lib/cannery_web/live/ammo_type_live/index.ex:108 #, elixir-autogen, elixir-format msgid "Powder type" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:68 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:152 -#: lib/cannery_web/live/ammo_type_live/index.ex:123 #, elixir-autogen, elixir-format msgid "UPC" msgstr "" @@ -613,8 +613,8 @@ msgstr "" msgid "Unstage" msgstr "" +#: lib/cannery_web/components/ammo_type_table_component.ex:62 #: lib/cannery_web/live/ammo_type_live/form_component.html.heex:125 -#: lib/cannery_web/live/ammo_type_live/index.ex:117 #, elixir-autogen, elixir-format msgid "Firing type" msgstr "" @@ -649,7 +649,7 @@ msgid "Rounds:" msgstr "" #: lib/cannery_web/components/ammo_group_table_component.ex:221 -#: lib/cannery_web/live/ammo_type_live/index.ex:216 +#: lib/cannery_web/components/ammo_type_table_component.ex:178 #: lib/cannery_web/live/ammo_type_live/show.html.heex:142 #, elixir-autogen, elixir-format msgid "No cost information" @@ -854,13 +854,13 @@ msgstr "" msgid "Rounds shot: %{count}" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:155 +#: lib/cannery_web/components/ammo_type_table_component.ex:100 #: lib/cannery_web/live/container_live/index.ex:125 #, elixir-autogen, elixir-format, fuzzy msgid "Packs" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:135 +#: lib/cannery_web/components/ammo_type_table_component.ex:80 #: lib/cannery_web/live/container_live/index.ex:126 #, elixir-autogen, elixir-format, fuzzy msgid "Rounds" @@ -873,7 +873,7 @@ msgstr "" msgid "View as table" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:165 +#: lib/cannery_web/components/ammo_type_table_component.ex:110 #, elixir-autogen, elixir-format msgid "Total ever packs" msgstr "" @@ -883,7 +883,7 @@ msgstr "" msgid "Total ever packs:" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:146 +#: lib/cannery_web/components/ammo_type_table_component.ex:91 #, elixir-autogen, elixir-format, fuzzy msgid "Total ever rounds" msgstr "" @@ -893,7 +893,7 @@ msgstr "" msgid "Total ever rounds:" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:160 +#: lib/cannery_web/components/ammo_type_table_component.ex:105 #, elixir-autogen, elixir-format msgid "Used packs" msgstr "" @@ -903,7 +903,7 @@ msgstr "" msgid "Used packs:" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:141 +#: lib/cannery_web/components/ammo_type_table_component.ex:86 #, elixir-autogen, elixir-format, fuzzy msgid "Used rounds" msgstr "" @@ -1018,7 +1018,7 @@ msgstr "" msgid "UPC:" msgstr "" -#: lib/cannery_web/live/ammo_type_live/index.ex:175 +#: lib/cannery_web/components/ammo_type_table_component.ex:120 #: lib/cannery_web/live/ammo_type_live/show.html.heex:132 #, elixir-autogen, elixir-format msgid "Average CPR" @@ -1104,6 +1104,7 @@ msgid "Edit ammo" msgstr "" #: lib/cannery_web/live/ammo_type_live/index.html.heex:8 +#: lib/cannery_web/live/ammo_type_live/index.html.heex:46 #, elixir-autogen, elixir-format, fuzzy msgid "No Ammo types" msgstr "" diff --git a/priv/gettext/ga/LC_MESSAGES/prompts.po b/priv/gettext/ga/LC_MESSAGES/prompts.po index e8837b3..3c08fd9 100644 --- a/priv/gettext/ga/LC_MESSAGES/prompts.po +++ b/priv/gettext/ga/LC_MESSAGES/prompts.po @@ -279,7 +279,7 @@ msgid_plural "Ammo added successfully" msgstr[0] "" msgstr[1] "" -#: lib/cannery_web/live/ammo_type_live/index.ex:270 +#: lib/cannery_web/live/ammo_type_live/index.html.heex:90 #: lib/cannery_web/live/ammo_type_live/show.html.heex:28 #, elixir-autogen, elixir-format msgid "Are you sure you want to delete %{name}? This will delete all %{name} type ammo as well!" diff --git a/priv/gettext/prompts.pot b/priv/gettext/prompts.pot index c9bad66..10b425f 100644 --- a/priv/gettext/prompts.pot +++ b/priv/gettext/prompts.pot @@ -268,7 +268,7 @@ msgid_plural "Ammo added successfully" msgstr[0] "" msgstr[1] "" -#: lib/cannery_web/live/ammo_type_live/index.ex:270 +#: lib/cannery_web/live/ammo_type_live/index.html.heex:90 #: lib/cannery_web/live/ammo_type_live/show.html.heex:28 #, elixir-autogen, elixir-format msgid "Are you sure you want to delete %{name}? This will delete all %{name} type ammo as well!" diff --git a/test/cannery_web/live/ammo_type_live_test.exs b/test/cannery_web/live/ammo_type_live_test.exs index 4e18ac3..28634cc 100644 --- a/test/cannery_web/live/ammo_type_live_test.exs +++ b/test/cannery_web/live/ammo_type_live_test.exs @@ -92,6 +92,12 @@ defmodule CanneryWeb.AmmoTypeLiveTest do |> render_change() =~ ammo_type.bullet_type assert_patch(index_live, Routes.ammo_type_index_path(conn, :search, "something_else")) + + assert index_live + |> form("[data-qa=\"ammo_type_search\"]", search: %{search_term: ""}) + |> render_change() =~ ammo_type.bullet_type + + assert_patch(index_live, Routes.ammo_type_index_path(conn, :index)) end test "saves new ammo_type", %{conn: conn, current_user: current_user, ammo_type: ammo_type} do