use strict context boundaries and remove all n+1 queries

This commit is contained in:
2023-03-18 21:06:00 -04:00
parent 0b7146ba32
commit a54cf8b87d
84 changed files with 4345 additions and 3090 deletions

View File

@ -14,23 +14,23 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.14.2\n"
#: lib/cannery_web/live/home_live.html.heex:46
#: lib/cannery_web/live/home_live.html.heex:44
#, elixir-autogen, elixir-format
msgid "Access from any internet-capable device"
msgstr "Acceso desde cualquier dispositivo con conexión a internet"
#: lib/cannery_web/live/invite_live/index.html.heex:94
#: lib/cannery_web/live/invite_live/index.html.heex:99
#, elixir-autogen, elixir-format
msgid "Admins"
msgstr "Administradores"
#: lib/cannery_web/live/home_live.html.heex:60
#: lib/cannery_web/live/home_live.html.heex:58
#, elixir-autogen, elixir-format
msgid "Admins:"
msgstr "Aministradores:"
#: lib/cannery_web/components/core_components/topbar.html.heex:58
#: lib/cannery_web/components/shot_group_table_component.ex:41
#: lib/cannery_web/components/topbar.ex:73
#: lib/cannery_web/live/ammo_group_live/index.ex:70
#: lib/cannery_web/live/ammo_group_live/index.ex:79
#: lib/cannery_web/live/ammo_group_live/index.html.heex:3
@ -97,9 +97,9 @@ msgstr "Material del casquillo"
msgid "Container"
msgstr "Contenedor"
#: lib/cannery_web/components/topbar.ex:57
#: lib/cannery_web/live/container_live/index.ex:49
#: lib/cannery_web/live/container_live/index.ex:58
#: lib/cannery_web/components/core_components/topbar.html.heex:42
#: lib/cannery_web/live/container_live/index.ex:45
#: lib/cannery_web/live/container_live/index.ex:54
#: lib/cannery_web/live/container_live/index.html.heex:3
#, elixir-autogen, elixir-format
msgid "Containers"
@ -117,36 +117,36 @@ msgstr "Corrosiva"
msgid "Count"
msgstr "Cantidad"
#: lib/cannery_web/components/ammo_group_card.ex:39
#: lib/cannery_web/components/core_components/ammo_group_card.html.heex:16
#: lib/cannery_web/live/ammo_group_live/show.html.heex:8
#, elixir-autogen, elixir-format
msgid "Count:"
msgstr "Cantidad:"
#: lib/cannery_web/components/container_table_component.ex:47
#: lib/cannery_web/components/container_table_component.ex:46
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:25
#: lib/cannery_web/live/container_live/form_component.html.heex:28
#, elixir-autogen, elixir-format
msgid "Description"
msgstr "Descripción"
#: lib/cannery_web/components/container_card.ex:39
#: lib/cannery_web/components/core_components/container_card.html.heex:16
#: lib/cannery_web/live/container_live/show.html.heex:7
#, elixir-autogen, elixir-format
msgid "Description:"
msgstr "Descripción:"
#: lib/cannery_web/live/home_live.html.heex:23
#: lib/cannery_web/live/home_live.html.heex:22
#, elixir-autogen, elixir-format
msgid "Easy to Use:"
msgstr "Facil de Usar:"
#: lib/cannery_web/live/invite_live/index.ex:34
#: lib/cannery_web/live/invite_live/index.ex:33
#, elixir-autogen, elixir-format
msgid "Edit Invite"
msgstr "Editar Invitación"
#: lib/cannery_web/live/tag_live/index.ex:28
#: lib/cannery_web/live/tag_live/index.ex:27
#, elixir-autogen, elixir-format
msgid "Edit Tag"
msgstr "Editar Etiqueta"
@ -173,23 +173,23 @@ msgstr "Grano"
msgid "Incendiary"
msgstr "Incendiaria"
#: lib/cannery_web/live/home_live.html.heex:55
#: lib/cannery_web/live/home_live.html.heex:53
#, elixir-autogen, elixir-format
msgid "Instance Information"
msgstr "Información de Instancia"
#: lib/cannery_web/components/invite_card.ex:42
#: lib/cannery_web/components/core_components/invite_card.html.heex:21
#, elixir-autogen, elixir-format
msgid "Invite Disabled"
msgstr "Invitación Desactivada"
#: lib/cannery_web/live/home_live.html.heex:82
#: lib/cannery_web/live/home_live.html.heex:84
#, elixir-autogen, elixir-format
msgid "Invite Only"
msgstr "Solo Invitación"
#: lib/cannery_web/components/topbar.ex:89
#: lib/cannery_web/live/invite_live/index.ex:42
#: lib/cannery_web/components/core_components/topbar.html.heex:74
#: lib/cannery_web/live/invite_live/index.ex:41
#: lib/cannery_web/live/invite_live/index.html.heex:3
#, elixir-autogen, elixir-format
msgid "Invites"
@ -200,14 +200,14 @@ msgstr "Invitaciones"
msgid "Keep me logged in for 60 days"
msgstr "Mantener registrado durante 60 días"
#: lib/cannery_web/components/container_table_component.ex:48
#: lib/cannery_web/components/container_table_component.ex:47
#: lib/cannery_web/components/move_ammo_group_component.ex:69
#: lib/cannery_web/live/container_live/form_component.html.heex:43
#, elixir-autogen, elixir-format
msgid "Location"
msgstr "Localización"
#: lib/cannery_web/components/container_card.ex:49
#: lib/cannery_web/components/core_components/container_card.html.heex:26
#: lib/cannery_web/live/container_live/show.html.heex:17
#, elixir-autogen, elixir-format
msgid "Location:"
@ -235,7 +235,7 @@ msgid "My cool ammo can"
msgstr "Mi lata de munición guapa"
#: lib/cannery_web/components/ammo_type_table_component.ex:45
#: lib/cannery_web/components/container_table_component.ex:46
#: lib/cannery_web/components/container_table_component.ex:45
#: lib/cannery_web/live/ammo_type_live/form_component.html.heex:21
#: lib/cannery_web/live/container_live/form_component.html.heex:21
#: lib/cannery_web/live/invite_live/form_component.html.heex:21
@ -250,35 +250,35 @@ msgstr "Nombre"
msgid "New Ammo type"
msgstr "Nuevo tipo de Munición"
#: lib/cannery_web/live/container_live/index.ex:36
#: lib/cannery_web/live/container_live/index.ex:43
#: lib/cannery_web/live/container_live/index.ex:32
#: lib/cannery_web/live/container_live/index.ex:39
#, elixir-autogen, elixir-format
msgid "New Container"
msgstr "Nuevo Contenedor"
#: lib/cannery_web/live/invite_live/index.ex:38
#: lib/cannery_web/live/invite_live/index.ex:37
#, elixir-autogen, elixir-format
msgid "New Invite"
msgstr "Nueva Invitación"
#: lib/cannery_web/live/tag_live/index.ex:36
#: lib/cannery_web/live/tag_live/index.ex:35
#, elixir-autogen, elixir-format
msgid "New Tag"
msgstr "Nueva Etiqueta"
#: lib/cannery_web/live/ammo_group_live/index.html.heex:10
#: lib/cannery_web/live/ammo_group_live/index.html.heex:70
#: lib/cannery_web/live/ammo_group_live/index.html.heex:71
#, elixir-autogen, elixir-format
msgid "No Ammo"
msgstr "Sin Munición"
#: lib/cannery_web/live/ammo_type_live/show.html.heex:169
#: lib/cannery_web/live/ammo_type_live/show.html.heex:167
#, elixir-autogen, elixir-format
msgid "No ammo for this type"
msgstr "Sin munición para este tipo"
#: lib/cannery_web/live/container_live/index.html.heex:8
#: lib/cannery_web/live/container_live/index.html.heex:46
#: lib/cannery_web/live/container_live/index.html.heex:47
#, elixir-autogen, elixir-format
msgid "No containers"
msgstr "Sin contenedores"
@ -290,7 +290,7 @@ msgstr "Sin invitaciones"
#: lib/cannery_web/live/container_live/edit_tags_component.html.heex:29
#: lib/cannery_web/live/tag_live/index.html.heex:10
#: lib/cannery_web/live/tag_live/index.html.heex:42
#: lib/cannery_web/live/tag_live/index.html.heex:43
#, elixir-autogen, elixir-format
msgid "No tags"
msgstr "Sin etiquetas"
@ -299,13 +299,13 @@ msgstr "Sin etiquetas"
#: lib/cannery_web/components/ammo_group_table_component.ex:81
#: lib/cannery_web/components/shot_group_table_component.ex:43
#: lib/cannery_web/live/ammo_group_live/form_component.html.heex:50
#: lib/cannery_web/live/ammo_group_live/show.ex:90
#: lib/cannery_web/live/ammo_group_live/show.ex:92
#: lib/cannery_web/live/range_live/form_component.html.heex:30
#, elixir-autogen, elixir-format
msgid "Notes"
msgstr "Notas"
#: lib/cannery_web/components/ammo_group_card.ex:52
#: lib/cannery_web/components/core_components/ammo_group_card.html.heex:26
#: lib/cannery_web/live/ammo_group_live/show.html.heex:24
#, elixir-autogen, elixir-format
msgid "Notes:"
@ -328,7 +328,7 @@ msgstr "Presión"
msgid "Price paid"
msgstr "Precio pagado"
#: lib/cannery_web/components/ammo_group_card.ex:68
#: lib/cannery_web/components/core_components/ammo_group_card.html.heex:41
#, elixir-autogen, elixir-format
msgid "Price paid:"
msgstr "Precio pagado:"
@ -339,17 +339,17 @@ msgstr "Precio pagado:"
msgid "Primer type"
msgstr "Tipo de espoleta"
#: lib/cannery_web/live/home_live.html.heex:81
#: lib/cannery_web/live/home_live.html.heex:83
#, elixir-autogen, elixir-format
msgid "Public Signups"
msgstr "Registro Público"
#: lib/cannery_web/live/home_live.html.heex:33
#: lib/cannery_web/live/home_live.html.heex:32
#, elixir-autogen, elixir-format
msgid "Secure:"
msgstr "Seguro:"
#: lib/cannery_web/live/home_live.html.heex:36
#: lib/cannery_web/live/home_live.html.heex:35
#, elixir-autogen, elixir-format
msgid "Self-host your own instance, or use an instance from someone you trust."
msgstr ""
@ -362,7 +362,7 @@ msgstr ""
msgid "Settings"
msgstr "Ajustes"
#: lib/cannery_web/live/home_live.html.heex:43
#: lib/cannery_web/live/home_live.html.heex:41
#, elixir-autogen, elixir-format
msgid "Simple:"
msgstr "Simple:"
@ -372,15 +372,15 @@ msgstr "Simple:"
msgid "Steel"
msgstr "Acero"
#: lib/cannery_web/live/ammo_group_live/show.html.heex:117
#: lib/cannery_web/live/ammo_group_live/show.html.heex:113
#, elixir-autogen, elixir-format
msgid "Stored in"
msgstr "Guardado en"
#: lib/cannery_web/components/container_table_component.ex:52
#: lib/cannery_web/components/topbar.ex:49
#: lib/cannery_web/live/tag_live/index.ex:44
#: lib/cannery_web/live/tag_live/index.ex:54
#: lib/cannery_web/components/container_table_component.ex:66
#: lib/cannery_web/components/core_components/topbar.html.heex:34
#: lib/cannery_web/live/tag_live/index.ex:43
#: lib/cannery_web/live/tag_live/index.ex:53
#: lib/cannery_web/live/tag_live/index.html.heex:3
#, elixir-autogen, elixir-format
msgid "Tags"
@ -408,20 +408,20 @@ msgstr "La página de seguimiento de armas autogestionada"
msgid "Tracer"
msgstr "Trazadora"
#: lib/cannery_web/components/container_table_component.ex:49
#: lib/cannery_web/components/container_table_component.ex:48
#: lib/cannery_web/components/move_ammo_group_component.ex:68
#: lib/cannery_web/live/container_live/form_component.html.heex:36
#, elixir-autogen, elixir-format
msgid "Type"
msgstr "Tipo"
#: lib/cannery_web/components/container_card.ex:44
#: lib/cannery_web/components/core_components/container_card.html.heex:21
#: lib/cannery_web/live/container_live/show.html.heex:12
#, elixir-autogen, elixir-format
msgid "Type:"
msgstr "Tipo:"
#: lib/cannery_web/live/invite_live/index.html.heex:122
#: lib/cannery_web/live/invite_live/index.html.heex:127
#, elixir-autogen, elixir-format
msgid "Users"
msgstr "Usuarios"
@ -431,18 +431,18 @@ msgstr "Usuarios"
msgid "Uses left"
msgstr "Usos restantes"
#: lib/cannery_web/live/home_live.html.heex:37
#: lib/cannery_web/live/home_live.html.heex:36
#, elixir-autogen, elixir-format
msgid "Your data stays with you, period"
msgstr "Tus datos se quedan contigo, sin excepciones"
#: lib/cannery_web/live/container_live/show.html.heex:70
#: lib/cannery_web/live/container_live/show.html.heex:67
#, elixir-autogen, elixir-format
msgid "No tags for this container"
msgstr "Contenedor sin etiquetas"
#: lib/cannery_web/components/ammo_group_table_component.ex:72
#: lib/cannery_web/components/topbar.ex:81
#: lib/cannery_web/components/core_components/topbar.html.heex:66
#, elixir-autogen, elixir-format
msgid "Range"
msgstr "Campo de tiro"
@ -454,7 +454,7 @@ msgstr "Día de disparar"
#: lib/cannery_web/components/add_shot_group_component.html.heex:46
#: lib/cannery_web/components/shot_group_table_component.ex:44
#: lib/cannery_web/live/ammo_group_live/show.ex:91
#: lib/cannery_web/live/ammo_group_live/show.ex:93
#: lib/cannery_web/live/range_live/form_component.html.heex:37
#, elixir-autogen, elixir-format
msgid "Date"
@ -476,19 +476,19 @@ msgstr "No hay munición preparada"
msgid "Record shots"
msgstr "Tiros récord"
#: lib/cannery_web/live/ammo_group_live/show.ex:41
#: lib/cannery_web/live/range_live/index.ex:41
#: lib/cannery_web/live/ammo_group_live/show.ex:42
#: lib/cannery_web/live/range_live/index.ex:40
#, elixir-autogen, elixir-format
msgid "Edit Shot Records"
msgstr "Editar Tiros Récord"
#: lib/cannery_web/live/range_live/index.ex:49
#: lib/cannery_web/live/range_live/index.ex:48
#, elixir-autogen, elixir-format
msgid "New Shot Records"
msgstr "Nuevos Tiros Récord"
#: lib/cannery_web/live/range_live/index.html.heex:48
#: lib/cannery_web/live/range_live/index.html.heex:89
#: lib/cannery_web/live/range_live/index.html.heex:55
#: lib/cannery_web/live/range_live/index.html.heex:97
#, elixir-autogen, elixir-format
msgid "No shots recorded"
msgstr "No se han grabado tiros"
@ -500,20 +500,19 @@ msgid "Rounds left"
msgstr "Balas restantes"
#: lib/cannery_web/components/shot_group_table_component.ex:42
#: lib/cannery_web/live/ammo_group_live/show.ex:89
#: lib/cannery_web/live/range_live/index.html.heex:62
#: lib/cannery_web/live/ammo_group_live/show.ex:91
#: lib/cannery_web/live/range_live/index.html.heex:69
#, elixir-autogen, elixir-format
msgid "Rounds shot"
msgstr "Balas disparadas"
#: lib/cannery_web/live/range_live/index.ex:57
#: lib/cannery_web/live/range_live/index.ex:67
#: lib/cannery_web/live/range_live/index.ex:56
#: lib/cannery_web/live/range_live/index.ex:66
#, elixir-autogen, elixir-format
msgid "Shot Records"
msgstr "Récords de Tiro"
#: lib/cannery_web/live/ammo_group_live/index.ex:38
#: lib/cannery_web/live/ammo_group_live/index.html.heex:119
#, elixir-autogen, elixir-format
msgid "Move ammo"
msgstr "Mover munición"
@ -523,18 +522,18 @@ msgstr "Mover munición"
msgid "No other containers"
msgstr "No hay otros contenedores"
#: lib/cannery_web/live/range_live/index.html.heex:53
#: lib/cannery_web/live/range_live/index.html.heex:60
#, elixir-autogen, elixir-format
msgid "Shot log"
msgstr "Registro de tiros"
#: lib/cannery_web/components/ammo_group_card.ex:69
#: lib/cannery_web/components/ammo_group_card.ex:76
#: lib/cannery_web/components/ammo_group_table_component.ex:153
#: lib/cannery_web/components/ammo_group_table_component.ex:225
#: lib/cannery_web/components/ammo_type_table_component.ex:180
#: lib/cannery_web/components/ammo_group_table_component.ex:229
#: lib/cannery_web/components/ammo_type_table_component.ex:224
#: lib/cannery_web/components/core_components/ammo_group_card.html.heex:42
#: lib/cannery_web/components/core_components/ammo_group_card.html.heex:47
#: 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_group_live/show.html.heex:42
#: lib/cannery_web/live/ammo_type_live/show.html.heex:139
#, elixir-autogen, elixir-format
msgid "$%{amount}"
@ -604,28 +603,28 @@ msgstr "Tipo de fuego"
msgid "Reconnecting..."
msgstr "Reconectando..."
#: lib/cannery_web/live/container_live/index.ex:32
#: lib/cannery_web/live/container_live/show.ex:110
#: lib/cannery_web/live/container_live/index.ex:28
#: lib/cannery_web/live/container_live/show.ex:108
#, elixir-autogen, elixir-format
msgid "Edit %{name}"
msgstr "Editar %{name}"
#: lib/cannery_web/live/container_live/index.ex:69
#: lib/cannery_web/live/container_live/show.ex:111
#: lib/cannery_web/live/container_live/index.ex:63
#: lib/cannery_web/live/container_live/show.ex:109
#, elixir-autogen, elixir-format
msgid "Edit %{name} tags"
msgstr "Editar etiquetas de %{name}"
#: lib/cannery_web/components/container_card.ex:60
#: lib/cannery_web/components/core_components/container_card.html.heex:37
#: lib/cannery_web/live/ammo_type_live/show.html.heex:70
#: lib/cannery_web/live/container_live/show.html.heex:35
#: lib/cannery_web/live/container_live/show.html.heex:33
#, elixir-autogen, elixir-format
msgid "Rounds:"
msgstr "Balas:"
#: lib/cannery_web/components/ammo_group_table_component.ex:222
#: lib/cannery_web/components/ammo_type_table_component.ex:179
#: lib/cannery_web/live/ammo_type_live/show.html.heex:145
#: lib/cannery_web/components/ammo_group_table_component.ex:226
#: lib/cannery_web/components/ammo_type_table_component.ex:223
#: lib/cannery_web/live/ammo_type_live/show.html.heex:143
#, elixir-autogen, elixir-format
msgid "No cost information"
msgstr "No hay información de coste"
@ -635,7 +634,7 @@ msgstr "No hay información de coste"
msgid "% left"
msgstr "% restantes"
#: lib/cannery_web/live/ammo_group_live/show.html.heex:43
#: lib/cannery_web/live/ammo_group_live/show.html.heex:41
#, elixir-autogen, elixir-format
msgid "Current value:"
msgstr "Valor actual:"
@ -655,7 +654,7 @@ msgstr "Cantidad original:"
msgid "Percentage left:"
msgstr "Pocentaje restante:"
#: lib/cannery_web/live/ammo_group_live/show.html.heex:130
#: lib/cannery_web/live/ammo_group_live/show.html.heex:126
#, elixir-autogen, elixir-format
msgid "Rounds used"
msgstr "Balas usadas"
@ -675,7 +674,7 @@ msgstr "¿Olvidó su contraseña?"
msgid "Log in"
msgstr "Entrar"
#: lib/cannery_web/controllers/user_registration_controller.ex:32
#: lib/cannery_web/controllers/user_registration_controller.ex:33
#, elixir-autogen, elixir-format
msgid "Register"
msgstr "Registrarse"
@ -685,8 +684,8 @@ msgstr "Registrarse"
msgid "Reset your password"
msgstr "Reestablecer contraseña"
#: lib/cannery_web/live/ammo_group_live/show.ex:40
#: lib/cannery_web/live/range_live/index.ex:33
#: lib/cannery_web/live/ammo_group_live/show.ex:41
#: lib/cannery_web/live/range_live/index.ex:32
#, elixir-autogen, elixir-format
msgid "Record Shots"
msgstr "Tiros Récord"
@ -722,27 +721,27 @@ msgstr "Alemán"
msgid "Language"
msgstr "Idioma"
#: lib/cannery_web/live/home_live.html.heex:107
#: lib/cannery_web/live/home_live.html.heex:109
#, elixir-autogen, elixir-format
msgid "Get involved!"
msgstr "¡Implícate!"
#: lib/cannery_web/live/home_live.html.heex:128
#: lib/cannery_web/live/home_live.html.heex:130
#, elixir-autogen, elixir-format
msgid "Help translate"
msgstr "Ayuda a traducir"
#: lib/cannery_web/live/home_live.html.heex:139
#: lib/cannery_web/live/home_live.html.heex:141
#, elixir-autogen, elixir-format
msgid "Report bugs or request features"
msgstr "Informar de errores o solicitar funciones"
#: lib/cannery_web/live/home_live.html.heex:117
#: lib/cannery_web/live/home_live.html.heex:119
#, elixir-autogen, elixir-format
msgid "View the source code"
msgstr "Ver código fuente"
#: lib/cannery_web/components/topbar.ex:65
#: lib/cannery_web/components/core_components/topbar.html.heex:50
#: lib/cannery_web/live/ammo_type_live/index.ex:52
#: lib/cannery_web/live/ammo_type_live/index.ex:62
#: lib/cannery_web/live/ammo_type_live/index.html.heex:3
@ -750,39 +749,39 @@ msgstr "Ver código fuente"
msgid "Catalog"
msgstr "Catálogo"
#: lib/cannery_web/live/ammo_group_live/show.ex:44
#: lib/cannery_web/live/ammo_group_live/show.ex:45
#, elixir-autogen, elixir-format
msgid "Edit Ammo"
msgstr "Editar Munición"
#: lib/cannery_web/live/ammo_group_live/show.ex:42
#: lib/cannery_web/live/ammo_group_live/show.ex:43
#, elixir-autogen, elixir-format
msgid "Move Ammo"
msgstr "Mover Munición"
#: lib/cannery_web/live/container_live/show.html.heex:115
#: lib/cannery_web/live/container_live/show.html.heex:112
#, elixir-autogen, elixir-format
msgid "No ammo in this container"
msgstr "No hay munición en este contenedor"
#: lib/cannery_web/live/ammo_group_live/show.ex:43
#: lib/cannery_web/live/ammo_group_live/show.ex:44
#, elixir-autogen, elixir-format
msgid "Show Ammo"
msgstr "Mostrar Munición"
#: lib/cannery_web/live/ammo_group_live/show.html.heex:122
#: lib/cannery_web/live/ammo_group_live/show.html.heex:118
#, elixir-autogen, elixir-format
msgid "This ammo is not in a container"
msgstr "Esta munición no está en un contenedor"
#: lib/cannery_web/components/container_card.ex:55
#: lib/cannery_web/components/core_components/container_card.html.heex:32
#: lib/cannery_web/live/ammo_type_live/show.html.heex:98
#: lib/cannery_web/live/container_live/show.html.heex:26
#: lib/cannery_web/live/container_live/show.html.heex:23
#, elixir-autogen, elixir-format
msgid "Packs:"
msgstr "Paquetes:"
#: lib/cannery_web/components/topbar.ex:25
#: lib/cannery_web/components/core_components/topbar.html.heex:10
#: lib/cannery_web/live/home_live.html.heex:4
#, elixir-autogen, elixir-format
msgid "Cannery logo"
@ -799,45 +798,45 @@ msgid "Leave \"Uses left\" blank to make invite unlimited"
msgstr ""
"Deje \"Usos restantes\" en blanco para hacer las invitaciónes ilimitadas"
#: lib/cannery_web/components/ammo_group_card.ex:83
#: lib/cannery_web/components/core_components/ammo_group_card.html.heex:54
#, elixir-autogen, elixir-format
msgid "Container:"
msgstr "Contenedor:"
#: lib/cannery_web/live/ammo_group_live/index.html.heex:63
#: lib/cannery_web/live/ammo_type_live/index.html.heex:38
#: lib/cannery_web/live/ammo_type_live/show.html.heex:155
#: lib/cannery_web/live/container_live/show.html.heex:101
#: lib/cannery_web/live/ammo_group_live/index.html.heex:64
#: lib/cannery_web/live/ammo_type_live/index.html.heex:39
#: lib/cannery_web/live/ammo_type_live/show.html.heex:153
#: lib/cannery_web/live/container_live/show.html.heex:98
#, elixir-autogen, elixir-format
msgid "Show used"
msgstr "Mostrar usadas"
#: lib/cannery_web/components/ammo_group_table_component.ex:193
#: lib/cannery_web/components/ammo_group_table_component.ex:187
#: lib/cannery_web/live/ammo_group_live/show.html.heex:19
#, elixir-autogen, elixir-format
msgid "%{percentage}%"
msgstr "%{percentage}%"
#: lib/cannery_web/live/range_live/index.ex:134
#: lib/cannery_web/live/range_live/index.ex:135
#, elixir-autogen, elixir-format, fuzzy
msgid "Rounds shot: %{count}"
msgstr "Balas disparadas: %{count}"
#: lib/cannery_web/components/ammo_type_table_component.ex:100
#: lib/cannery_web/components/container_table_component.ex:50
#: lib/cannery_web/components/container_table_component.ex:64
#, elixir-autogen, elixir-format, fuzzy
msgid "Packs"
msgstr "Paquetes"
#: lib/cannery_web/components/ammo_type_table_component.ex:80
#: lib/cannery_web/components/container_table_component.ex:51
#: lib/cannery_web/components/container_table_component.ex:65
#, elixir-autogen, elixir-format, fuzzy
msgid "Rounds"
msgstr "Balas"
#: lib/cannery_web/live/ammo_type_live/show.html.heex:161
#: lib/cannery_web/live/container_live/index.html.heex:38
#: lib/cannery_web/live/container_live/show.html.heex:107
#: lib/cannery_web/live/ammo_type_live/show.html.heex:159
#: lib/cannery_web/live/container_live/index.html.heex:39
#: lib/cannery_web/live/container_live/show.html.heex:104
#, elixir-autogen, elixir-format
msgid "View as table"
msgstr "Ver como tabla"
@ -887,102 +886,102 @@ msgstr "Balas usadas:"
msgid "Used up!"
msgstr "¡Acabada!"
#: lib/cannery_web/live/range_live/index.html.heex:64
#: lib/cannery_web/live/range_live/index.html.heex:71
#, elixir-autogen, elixir-format, fuzzy
msgid "Rounds shot chart"
msgstr "Tabla de disparos"
#: lib/cannery_web/live/ammo_type_live/show.ex:27
#: lib/cannery_web/live/ammo_type_live/show.ex:26
#, elixir-autogen, elixir-format
msgid "Blank:"
msgstr "En blanco:"
#: lib/cannery_web/live/ammo_type_live/show.ex:13
#: lib/cannery_web/live/ammo_type_live/show.ex:12
#, elixir-autogen, elixir-format
msgid "Bullet core:"
msgstr "Núcleo de bala:"
#: lib/cannery_web/live/ammo_type_live/show.ex:12
#: lib/cannery_web/live/ammo_type_live/show.ex:11
#, elixir-autogen, elixir-format
msgid "Bullet type:"
msgstr "Tipo de bala:"
#: lib/cannery_web/live/ammo_type_live/show.ex:15
#: lib/cannery_web/live/ammo_type_live/show.ex:14
#, elixir-autogen, elixir-format
msgid "Caliber:"
msgstr "Calibre:"
#: lib/cannery_web/live/ammo_type_live/show.ex:14
#: lib/cannery_web/live/ammo_type_live/show.ex:13
#, elixir-autogen, elixir-format
msgid "Cartridge:"
msgstr "Cartucho:"
#: lib/cannery_web/live/ammo_type_live/show.ex:16
#: lib/cannery_web/live/ammo_type_live/show.ex:15
#, elixir-autogen, elixir-format
msgid "Case material:"
msgstr "Material de la camisa:"
#: lib/cannery_web/live/ammo_type_live/show.ex:28
#: lib/cannery_web/live/ammo_type_live/show.ex:27
#, elixir-autogen, elixir-format
msgid "Corrosive:"
msgstr "Corrosiva:"
#: lib/cannery_web/live/ammo_type_live/show.ex:24
#: lib/cannery_web/live/ammo_type_live/show.ex:23
#, elixir-autogen, elixir-format
msgid "Firing type:"
msgstr "Tipo de fuego:"
#: lib/cannery_web/live/ammo_type_live/show.ex:21
#: lib/cannery_web/live/ammo_type_live/show.ex:20
#, elixir-autogen, elixir-format
msgid "Grains:"
msgstr "Granos:"
#: lib/cannery_web/live/ammo_type_live/show.ex:26
#: lib/cannery_web/live/ammo_type_live/show.ex:25
#, elixir-autogen, elixir-format
msgid "Incendiary:"
msgstr "Incendiarias:"
#: lib/cannery_web/live/ammo_type_live/show.ex:17
#: lib/cannery_web/live/ammo_type_live/show.ex:16
#, elixir-autogen, elixir-format
msgid "Jacket type:"
msgstr "Tipo de camisa:"
#: lib/cannery_web/live/ammo_type_live/show.ex:29
#: lib/cannery_web/live/ammo_type_live/show.ex:28
#, elixir-autogen, elixir-format
msgid "Manufacturer:"
msgstr "Fabricante:"
#: lib/cannery_web/live/ammo_type_live/show.ex:18
#: lib/cannery_web/live/ammo_type_live/show.ex:17
#, elixir-autogen, elixir-format
msgid "Muzzle velocity:"
msgstr "Velocidad de boca:"
#: lib/cannery_web/live/ammo_type_live/show.ex:20
#: lib/cannery_web/live/ammo_type_live/show.ex:19
#, elixir-autogen, elixir-format
msgid "Powder grains per charge:"
msgstr "Granos de polvora por carga:"
#: lib/cannery_web/live/ammo_type_live/show.ex:19
#: lib/cannery_web/live/ammo_type_live/show.ex:18
#, elixir-autogen, elixir-format
msgid "Powder type:"
msgstr "Tipo de polvora:"
#: lib/cannery_web/live/ammo_type_live/show.ex:22
#: lib/cannery_web/live/ammo_type_live/show.ex:21
#, elixir-autogen, elixir-format
msgid "Pressure:"
msgstr "Presión:"
#: lib/cannery_web/live/ammo_type_live/show.ex:23
#: lib/cannery_web/live/ammo_type_live/show.ex:22
#, elixir-autogen, elixir-format
msgid "Primer type:"
msgstr "Tipo de espoleta:"
#: lib/cannery_web/live/ammo_type_live/show.ex:25
#: lib/cannery_web/live/ammo_type_live/show.ex:24
#, elixir-autogen, elixir-format
msgid "Tracer:"
msgstr "Trazadora:"
#: lib/cannery_web/live/ammo_type_live/show.ex:30
#: lib/cannery_web/live/ammo_type_live/show.ex:29
#, elixir-autogen, elixir-format
msgid "UPC:"
msgstr ""
@ -994,13 +993,13 @@ msgid "Average CPR"
msgstr ""
#: lib/cannery_web/live/ammo_type_live/index.ex:28
#: lib/cannery_web/live/ammo_type_live/show.ex:118
#: lib/cannery_web/live/ammo_type_live/show.ex:135
#, elixir-autogen, elixir-format
msgid "Edit %{ammo_type_name}"
msgstr "Editar %{ammo_type_name}"
#: lib/cannery_web/components/ammo_group_card.ex:40
#: lib/cannery_web/components/ammo_group_table_component.ex:231
#: lib/cannery_web/components/ammo_group_table_component.ex:233
#: lib/cannery_web/components/core_components/ammo_group_card.html.heex:17
#, elixir-autogen, elixir-format
msgid "Empty"
msgstr "Vacio"
@ -1010,7 +1009,7 @@ msgstr "Vacio"
msgid "CPR"
msgstr ""
#: lib/cannery_web/components/ammo_group_card.ex:75
#: lib/cannery_web/components/core_components/ammo_group_card.html.heex:46
#, elixir-autogen, elixir-format
msgid "CPR:"
msgstr ""
@ -1020,7 +1019,7 @@ msgstr ""
msgid "Original Count"
msgstr "Cantidad Original"
#: lib/cannery_web/components/ammo_group_card.ex:47
#: lib/cannery_web/components/core_components/ammo_group_card.html.heex:21
#, elixir-autogen, elixir-format
msgid "Original Count:"
msgstr "Cantidad Original:"
@ -1030,27 +1029,22 @@ msgstr "Cantidad Original:"
msgid "Home"
msgstr "Menu principal"
#: lib/cannery_web/live/container_live/show.html.heex:24
#: lib/cannery_web/live/container_live/show.html.heex:28
#, elixir-autogen, elixir-format
msgid "Total packs:"
msgstr "Paquetes totales:"
#: lib/cannery_web/live/container_live/show.html.heex:33
#, elixir-autogen, elixir-format
msgid "Total rounds:"
msgstr "Balas totales:"
#: lib/cannery_web/components/ammo_group_table_component.ex:58
#, elixir-autogen, elixir-format
msgid "Last used on"
msgstr "Usada por última vez en"
#: lib/cannery_web/components/ammo_group_card.ex:62
#: lib/cannery_web/components/core_components/ammo_group_card.html.heex:36
#, elixir-autogen, elixir-format
msgid "Last used on:"
msgstr "Usada por última vez en:"
#: lib/cannery_web/components/ammo_group_table_component.ex:178
#: lib/cannery_web/components/ammo_group_table_component.ex:171
#, elixir-autogen, elixir-format
msgid "Never used"
msgstr "Nunca usada"
@ -1061,7 +1055,7 @@ msgstr "Nunca usada"
msgid "Purchased on"
msgstr "Comprada en"
#: lib/cannery_web/components/ammo_group_card.ex:57
#: lib/cannery_web/components/core_components/ammo_group_card.html.heex:31
#: lib/cannery_web/live/ammo_group_live/show.html.heex:30
#, elixir-autogen, elixir-format
msgid "Purchased on:"
@ -1073,32 +1067,32 @@ msgid "Edit ammo"
msgstr "Editar munición"
#: lib/cannery_web/live/ammo_type_live/index.html.heex:8
#: lib/cannery_web/live/ammo_type_live/index.html.heex:45
#: lib/cannery_web/live/ammo_type_live/index.html.heex:46
#, elixir-autogen, elixir-format, fuzzy
msgid "No Ammo types"
msgstr "Sin tipo de Munición"
#: lib/cannery_web/live/ammo_type_live/index.html.heex:32
#: lib/cannery_web/live/ammo_type_live/index.html.heex:33
#, elixir-autogen, elixir-format
msgid "Search catalog"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:57
#: lib/cannery_web/live/ammo_group_live/index.html.heex:58
#, elixir-autogen, elixir-format, fuzzy
msgid "Search ammo"
msgstr ""
#: lib/cannery_web/live/container_live/index.html.heex:32
#: lib/cannery_web/live/container_live/index.html.heex:33
#, elixir-autogen, elixir-format
msgid "Search containers"
msgstr ""
#: lib/cannery_web/live/tag_live/index.html.heex:35
#: lib/cannery_web/live/tag_live/index.html.heex:36
#, elixir-autogen, elixir-format, fuzzy
msgid "Search tags"
msgstr ""
#: lib/cannery_web/live/range_live/index.html.heex:82
#: lib/cannery_web/live/range_live/index.html.heex:90
#, elixir-autogen, elixir-format
msgid "Search shot records"
msgstr ""
@ -1111,27 +1105,27 @@ msgstr ""
#: lib/cannery_web/templates/error/error.html.heex:8
#: lib/cannery_web/templates/layout/root.html.heex:13
#: lib/cannery_web/templates/layout/root.html.heex:14
#: lib/cannery_web/views/layout_view.ex:15
#: lib/cannery_web/views/layout_view.ex:14
#, elixir-autogen, elixir-format, fuzzy
msgid "Cannery"
msgstr "Logo de cannery"
#: lib/cannery_web/components/user_card.ex:33
#: lib/cannery_web/components/core_components/user_card.html.heex:20
#, elixir-autogen, elixir-format
msgid "Email unconfirmed"
msgstr ""
#: lib/cannery_web/components/user_card.ex:38
#: lib/cannery_web/components/core_components/user_card.html.heex:25
#, elixir-autogen, elixir-format, fuzzy
msgid "User registered on%{registered_datetime}"
msgstr "Usuario registrado en"
#: lib/cannery_web/components/user_card.ex:27
#: lib/cannery_web/components/core_components/user_card.html.heex:14
#, elixir-autogen, elixir-format
msgid "User was confirmed at%{confirmed_datetime}"
msgstr ""
#: lib/cannery_web/components/invite_card.ex:37
#: lib/cannery_web/components/core_components/invite_card.html.heex:16
#, elixir-autogen, elixir-format, fuzzy
msgid "Uses Left: Unlimited"
msgstr "Usos Restantes:"
@ -1145,24 +1139,24 @@ msgstr "Usos Restantes:"
## Run "mix gettext.extract" to bring this file up to
## date. Leave "msgstr"s empty as changing them here has no
## effect: edit them in PO (.po) files instead.
#: lib/cannery_web/live/home_live.html.heex:26
#: lib/cannery_web/live/home_live.html.heex:25
#, elixir-autogen, elixir-format, fuzzy
msgid "Cannery lets you easily keep an eye on your ammo levels before and after range day"
msgstr ""
"%{name} te permite mantener un ojo en tus niveles de munición antes y "
"después de un día en el campo de tiro"
#: lib/cannery_web/views/layout_view.ex:11
#: lib/cannery_web/views/layout_view.ex:10
#, elixir-autogen, elixir-format
msgid "Cannery | %{title}"
msgstr ""
#: lib/cannery_web/live/home_live.html.heex:78
#: lib/cannery_web/live/home_live.html.heex:80
#, elixir-autogen, elixir-format, fuzzy
msgid "Registration:"
msgstr "Registrarse"
#: lib/cannery_web/live/home_live.html.heex:88
#: lib/cannery_web/live/home_live.html.heex:90
#, elixir-autogen, elixir-format
msgid "Version:"
msgstr ""
@ -1172,29 +1166,29 @@ msgstr ""
msgid "Welcome to Cannery"
msgstr "Bienvenide a %{name}"
#: lib/cannery_web/live/invite_live/index.html.heex:70
#: lib/cannery_web/live/invite_live/index.html.heex:75
#, elixir-autogen, elixir-format
msgid "Disable"
msgstr ""
#: lib/cannery_web/live/invite_live/index.html.heex:70
#: lib/cannery_web/live/invite_live/index.html.heex:75
#, elixir-autogen, elixir-format
msgid "Enable"
msgstr ""
#: lib/cannery_web/components/invite_card.ex:32
#: lib/cannery_web/components/core_components/invite_card.html.heex:11
#, elixir-autogen, elixir-format, fuzzy
msgid "Uses Left: %{uses_left_count}"
msgstr "Usos Restantes:"
#: lib/cannery_web/components/invite_card.ex:52
#: lib/cannery_web/components/core_components/invite_card.html.heex:31
#, elixir-autogen, elixir-format
msgid "Uses: %{uses_count}"
msgstr ""
#: lib/cannery_web/templates/user_confirmation/new.html.heex:12
#: lib/cannery_web/templates/user_confirmation/new.html.heex:13
#: lib/cannery_web/templates/user_registration/new.html.heex:20
#: lib/cannery_web/templates/user_reset_password/new.html.heex:12
#: lib/cannery_web/templates/user_reset_password/new.html.heex:13
#: lib/cannery_web/templates/user_session/new.html.heex:17
#: lib/cannery_web/templates/user_settings/edit.html.heex:27
#, elixir-autogen, elixir-format
@ -1206,24 +1200,3 @@ msgstr ""
#, elixir-autogen, elixir-format
msgid "Password"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:153
#, elixir-autogen, elixir-format
msgid "Clone ammo group of %{ammo_group_count} bullets"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:168
#: lib/cannery_web/live/ammo_group_live/show.html.heex:80
#, elixir-autogen, elixir-format
msgid "Delete ammo group of %{ammo_group_count} bullets"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:141
#, elixir-autogen, elixir-format
msgid "Edit ammo group of %{ammo_group_count} bullets"
msgstr ""
#: lib/cannery_web/live/ammo_group_live/index.html.heex:129
#, elixir-autogen, elixir-format
msgid "View ammo group of %{ammo_group_count} bullets"
msgstr ""