@courthive/i18n 0.3.1 → 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -309,8 +309,8 @@
309
309
  "winloss_abbreviation": "W/L",
310
310
  "cancelled": "Cancelado",
311
311
  "abandoned": "Abandonado",
312
- "scoreThisMatch": "__TODO__",
313
- "openScorecard": "__TODO__"
312
+ "scoreThisMatch": "Anotar este partido",
313
+ "openScorecard": "Abrir planilla"
314
314
  },
315
315
  "draws": {
316
316
  "seedlimit": "Límite de Cabezas de Serie",
@@ -588,7 +588,7 @@
588
588
  "blocked": "Las ventanas emergentes están bloqueadas por su navegador",
589
589
  "enablepopups": "Por favor habilite las ventanas emergentes para la impresión de PDF",
590
590
  "nopersist": "Persistencia de datos no garantizada",
591
- "filters": "__TODO__"
591
+ "filters": "Filtros"
592
592
  },
593
593
  "events": {
594
594
  "name": "Nombre",
@@ -757,33 +757,56 @@
757
757
  "unscheduled": "No programados",
758
758
  "noScheduledMatchUps": "No hay partidos programados",
759
759
  "noTimeSet": "Sin hora asignada",
760
- "showAll": "__TODO__",
761
- "hideEmpty": "__TODO__",
762
- "empty": "__TODO__",
763
- "court": "__TODO__",
764
- "event": "__TODO__",
765
- "round": "__TODO__",
766
- "matchUp": "__TODO__",
767
- "noScheduledMatchUpsMatch": "__TODO__",
768
- "searchScheduledMatchUps": "__TODO__",
769
- "scheduledTitle": "__TODO__",
770
- "scheduledCount_one": "__TODO__",
771
- "scheduledCount_other": "__TODO__",
772
- "filterMatchUps": "__TODO__",
773
- "filterClearAll": "__TODO__",
774
- "filterAllEventTypes": "__TODO__",
775
- "filterAllEvents": "__TODO__",
776
- "filterAllFlights": "__TODO__",
777
- "filterAllGenders": "__TODO__",
778
- "filterAllRounds": "__TODO__",
760
+ "showAll": "Mostrar todos",
761
+ "hideEmpty": "Ocultar vacíos",
762
+ "empty": "vacío",
763
+ "court": "Cancha",
764
+ "event": "Evento",
765
+ "round": "Ronda",
766
+ "matchUp": "Partido",
767
+ "noScheduledMatchUpsMatch": "Ningún partido programado coincide con la búsqueda",
768
+ "searchScheduledMatchUps": "Buscar partidos programados...",
769
+ "scheduledTitle": "Partidos programados",
770
+ "scheduledCount_one": "{{count}} programado",
771
+ "scheduledCount_other": "{{count}} programados",
772
+ "filterMatchUps": "Filtrar partidos",
773
+ "filterClearAll": "Borrar todo",
774
+ "filterAllEventTypes": "Todos los tipos de evento",
775
+ "filterAllEvents": "Todos los eventos",
776
+ "filterAllFlights": "Todos los flights",
777
+ "filterAllGenders": "Todos los géneros",
778
+ "filterAllRounds": "Todas las rondas",
779
779
  "groupBy": {
780
- "event": "__TODO__",
781
- "draw": "__TODO__",
782
- "round": "__TODO__",
783
- "structure": "__TODO__",
784
- "time": "__TODO__"
785
- },
786
- "showCompleted": "__TODO__"
780
+ "event": "Por evento",
781
+ "draw": "Por cuadro",
782
+ "round": "Por ronda",
783
+ "structure": "Por estructura",
784
+ "time": "Por hora"
785
+ },
786
+ "showCompleted": "Mostrar completados",
787
+ "callToCourt": "__TODO__",
788
+ "now": "__TODO__",
789
+ "nowRowActions": "__TODO__",
790
+ "status": "__TODO__",
791
+ "suspendAll": "__TODO__",
792
+ "resumeAll": "__TODO__",
793
+ "startAll": "__TODO__",
794
+ "rescheduleAll": "__TODO__",
795
+ "unscheduleAll": "__TODO__",
796
+ "rescheduleNowTitle": "__TODO__",
797
+ "chooseDate": "__TODO__",
798
+ "chooseTime": "__TODO__",
799
+ "selectAll": "__TODO__",
800
+ "selectNone": "__TODO__",
801
+ "reschedule": "__TODO__",
802
+ "shift": "__TODO__",
803
+ "shiftCourtsTitle": "__TODO__",
804
+ "shiftRows": "__TODO__",
805
+ "noActiveMatches": "__TODO__",
806
+ "startOnDropTitle": "__TODO__",
807
+ "startOnDropPrompt": "__TODO__",
808
+ "unscheduleAllTitle": "__TODO__",
809
+ "unscheduleAllConfirm": "__TODO__"
787
810
  },
788
811
  "penalties": {
789
812
  "fail2signout": "No se Presentó a la Salida",
@@ -815,14 +838,14 @@
815
838
  "error": "Error",
816
839
  "success": "Éxito",
817
840
  "required": "Requerido",
818
- "back": "__TODO__",
819
- "send": "__TODO__",
841
+ "back": "Atrás",
842
+ "send": "Enviar",
820
843
  "details": "Detalles",
821
844
  "validationDetails": "Detalles de validación",
822
- "dismiss": "__TODO__",
823
- "iSavedIt": "__TODO__",
824
- "remove": "__TODO__",
825
- "continueAndUnschedule": "__TODO__"
845
+ "dismiss": "Descartar",
846
+ "iSavedIt": "Lo guardé",
847
+ "remove": "Quitar",
848
+ "continueAndUnschedule": "Continuar y desprogramar"
826
849
  },
827
850
  "modals": {
828
851
  "deleteEvents": {
@@ -853,8 +876,8 @@
853
876
  "passwordLabel": "Contraseña",
854
877
  "passwordPlaceholder": "mínimo 8 caracteres",
855
878
  "loginButton": "Iniciar sesión",
856
- "magicLinkButton": "__TODO__",
857
- "forgotPassword": "__TODO__"
879
+ "magicLinkButton": "Envíame un enlace de acceso por correo",
880
+ "forgotPassword": "¿Olvidaste tu contraseña?"
858
881
  },
859
882
  "settings": {
860
883
  "title": "Configuración",
@@ -881,7 +904,7 @@
881
904
  "themeSystem": "Sistema",
882
905
  "font": "Fuente",
883
906
  "dangerZone": "Zona de peligro",
884
- "schedule2": "__TODO__"
907
+ "schedule2": "Página de programación 2"
885
908
  },
886
909
  "editTournamentName": {
887
910
  "title": "Editar Nombre del Torneo",
@@ -893,7 +916,7 @@
893
916
  "title": "Editar Fechas",
894
917
  "startDateLabel": "Fecha de Inicio",
895
918
  "endDateLabel": "Fecha de Fin",
896
- "timeZoneDetectedHint": "__TODO__"
919
+ "timeZoneDetectedHint": "Detectada desde tu navegador ({{zone}}). Confirma, cambia o borra."
897
920
  },
898
921
  "invalidParticipants": {
899
922
  "title": "Participantes Inválidos"
@@ -1025,7 +1048,7 @@
1025
1048
  "notClaimed": "No reclamado",
1026
1049
  "offline": "Sin conexión",
1027
1050
  "online": "En línea",
1028
- "uploadWarning": "__TODO__"
1051
+ "uploadWarning": "Advertencia: Esta acción reemplazará el registro del torneo en el servidor"
1029
1052
  },
1030
1053
  "inviteUser": {
1031
1054
  "title": "Invitar usuario",
@@ -1045,8 +1068,8 @@
1045
1068
  "services": "Servicios",
1046
1069
  "tournamentProfiles": "Perfiles de Torneo (obtener)",
1047
1070
  "invite": "Invitar",
1048
- "providerRole": "__TODO__",
1049
- "existingUserAdded": "__TODO__"
1071
+ "providerRole": "Rol del proveedor",
1072
+ "existingUserAdded": "{{email}} ya tenía una cuenta — agregado a {{provider}} como {{role}}."
1050
1073
  },
1051
1074
  "fetchTournament": {
1052
1075
  "title": "Obtener detalles del torneo",
@@ -1084,8 +1107,7 @@
1084
1107
  "groupSize": "Tamaño de grupo",
1085
1108
  "positionsToBePlayedOff": "Posiciones a disputar:",
1086
1109
  "selectPositions": "Seleccione posiciones finales del grupo. Las selecciones deben ser secuenciales",
1087
- "structureAdded": "Estructura agregada",
1088
- "selectEligible": "Seleccionar participantes elegibles"
1110
+ "structureAdded": "Estructura agregada"
1089
1111
  },
1090
1112
  "addToEvent": {
1091
1113
  "title": "Agregar al evento",
@@ -1113,7 +1135,7 @@
1113
1135
  "title": "Crear Equipo",
1114
1136
  "selectAttribute": "Seleccionar atributo",
1115
1137
  "create": "Crear",
1116
- "teamAffiliation": "__TODO__"
1138
+ "teamAffiliation": "Afiliación de equipo"
1117
1139
  },
1118
1140
  "getLatLong": {
1119
1141
  "title": "Ubicación",
@@ -1219,244 +1241,244 @@
1219
1241
  },
1220
1242
  "selectTeam": "Seleccionar equipo",
1221
1243
  "importParticipants": {
1222
- "title": "__TODO__",
1223
- "summary": "__TODO__",
1224
- "mergeNotice": "__TODO__",
1225
- "import": "__TODO__",
1226
- "reAutoDetect": "__TODO__",
1244
+ "title": "Importar participantes",
1245
+ "summary": "{{count}} filas listas para importar",
1246
+ "mergeNotice": "{{count}} filas duplicadas se combinarán por correo (gana el último valor no vacío por campo)",
1247
+ "import": "Importar",
1248
+ "reAutoDetect": "Volver a detectar automáticamente",
1227
1249
  "column": {
1228
- "header": "__TODO__",
1229
- "sample": "__TODO__",
1230
- "target": "__TODO__"
1250
+ "header": "Columna de origen",
1251
+ "sample": "Valor de ejemplo",
1252
+ "target": "Campo de destino"
1231
1253
  },
1232
1254
  "target": {
1233
- "firstName": "__TODO__",
1234
- "lastName": "__TODO__",
1235
- "fullName": "__TODO__",
1236
- "otherName": "__TODO__",
1237
- "sex": "__TODO__",
1238
- "birthDate": "__TODO__",
1239
- "nationalityCode": "__TODO__",
1240
- "wheelchair": "__TODO__",
1241
- "city": "__TODO__",
1242
- "state": "__TODO__",
1243
- "countryCode": "__TODO__",
1244
- "postalCode": "__TODO__",
1245
- "addressLine1": "__TODO__",
1246
- "email": "__TODO__",
1247
- "phone": "__TODO__",
1248
- "mobilePhone": "__TODO__",
1249
- "tennisId": "__TODO__",
1250
- "ustaId": "__TODO__",
1251
- "itfId": "__TODO__",
1252
- "utrProfile": "__TODO__",
1253
- "participantId": "__TODO__",
1254
- "rating": "__TODO__",
1255
- "eventEntry": "__TODO__",
1256
- "participantName": "__TODO__",
1257
- "representing": "__TODO__",
1258
- "notes": "__TODO__",
1259
- "split": "__TODO__",
1260
- "ignore": "__TODO__",
1261
- "participantRole": "__TODO__",
1262
- "teamKey": "__TODO__",
1263
- "jerseyNumber": "__TODO__"
1255
+ "firstName": "Nombre",
1256
+ "lastName": "Apellido",
1257
+ "fullName": "Nombre completo",
1258
+ "otherName": "Otro nombre / apodo",
1259
+ "sex": "Sexo",
1260
+ "birthDate": "Fecha de nacimiento",
1261
+ "nationalityCode": "Nacionalidad",
1262
+ "wheelchair": "Silla de ruedas",
1263
+ "city": "Ciudad",
1264
+ "state": "Estado",
1265
+ "countryCode": "Código de país",
1266
+ "postalCode": "Código postal",
1267
+ "addressLine1": "Línea de dirección",
1268
+ "email": "Correo",
1269
+ "phone": "Teléfono",
1270
+ "mobilePhone": "Teléfono móvil",
1271
+ "tennisId": "Tennis ID",
1272
+ "ustaId": "USTA ID",
1273
+ "itfId": "ITF ID",
1274
+ "utrProfile": "Perfil UTR",
1275
+ "participantId": "ID de participante",
1276
+ "rating": "Valoración",
1277
+ "eventEntry": "Inscripción al evento",
1278
+ "participantName": "Nombre del participante",
1279
+ "representing": "Representando a",
1280
+ "notes": "Notas",
1281
+ "split": "Dividir…",
1282
+ "ignore": "Ignorar",
1283
+ "participantRole": "Rol (jugador, entrenador, fisio, …)",
1284
+ "teamKey": "Equipo (agrupar en participantes de equipo)",
1285
+ "jerseyNumber": "Número de camiseta"
1264
1286
  },
1265
- "ratingAuto": "__TODO__",
1266
- "eventPickerPlaceholder": "__TODO__",
1267
- "splitDelimiter": "__TODO__",
1268
- "splitPieceEmpty": "__TODO__",
1269
- "unresolvedHeading": "__TODO__",
1270
- "unresolvedPickerPlaceholder": "__TODO__",
1271
- "row": "__TODO__",
1272
- "previewHeading": "__TODO__",
1273
- "previewEmpty": "__TODO__",
1274
- "entryDefaultsHeading": "__TODO__",
1275
- "entryStatusLabel": "__TODO__",
1276
- "entryStageLabel": "__TODO__",
1277
- "dedupeHeading": "__TODO__",
1278
- "mergeDuplicatesLabel": "__TODO__",
1279
- "matchByLabel": "__TODO__",
1280
- "updateExistingLabel": "__TODO__"
1287
+ "ratingAuto": "Detección automática",
1288
+ "eventPickerPlaceholder": "(selecciona evento…)",
1289
+ "splitDelimiter": "Dividir en",
1290
+ "splitPieceEmpty": "(vacío)",
1291
+ "unresolvedHeading": "Valores de valoración sin resolver ({{count}})",
1292
+ "unresolvedPickerPlaceholder": "Elige escala…",
1293
+ "row": "Fila",
1294
+ "previewHeading": "Vista previa (primeras 3 filas)",
1295
+ "previewEmpty": "No hay participantes para previsualizar — asegúrate de que nombre/apellido (o nombre completo) estén mapeados.",
1296
+ "entryDefaultsHeading": "Valores predeterminados de inscripción al evento",
1297
+ "entryStatusLabel": "Estado de inscripción",
1298
+ "entryStageLabel": "Etapa de inscripción",
1299
+ "dedupeHeading": "Detección de duplicados",
1300
+ "mergeDuplicatesLabel": "Combinar filas que comparten el mismo identificador",
1301
+ "matchByLabel": "Emparejar por",
1302
+ "updateExistingLabel": "Actualizar participantes existentes al reimportar"
1281
1303
  },
1282
1304
  "tallyReport": {
1283
- "title": "__TODO__",
1284
- "groupedBy": "__TODO__",
1285
- "step": "__TODO__",
1286
- "participants": "__TODO__",
1287
- "separated": "__TODO__",
1288
- "compared": "__TODO__",
1289
- "by": "__TODO__",
1290
- "finalOrder": "__TODO__",
1291
- "unresolved": "__TODO__",
1292
- "incomplete": "__TODO__",
1293
- "idsFilterNote": "__TODO__",
1294
- "reversedNote": "__TODO__",
1295
- "h2hWinner": "__TODO__"
1305
+ "title": "Informe de desempate",
1306
+ "groupedBy": "Agrupado por",
1307
+ "step": "Paso",
1308
+ "participants": "participantes",
1309
+ "separated": "separado",
1310
+ "compared": "comparado",
1311
+ "by": "por",
1312
+ "finalOrder": "Orden final",
1313
+ "unresolved": "sin resolver",
1314
+ "incomplete": "El grupo aún no está completo — el informe de desempate estará disponible cuando todos los partidos hayan terminado.",
1315
+ "idsFilterNote": "Calculado considerando solo a los participantes empatados",
1316
+ "reversedNote": "Ordenado en orden inverso (menor es mejor)",
1317
+ "h2hWinner": "Ganador del enfrentamiento directo"
1296
1318
  },
1297
1319
  "manageAccess": {
1298
- "title": "__TODO__",
1299
- "grantedAccess": "__TODO__",
1300
- "addUser": "__TODO__",
1301
- "emailPlaceholder": "__TODO__",
1302
- "grant": "__TODO__",
1303
- "revoke": "__TODO__",
1304
- "noAssignments": "__TODO__",
1305
- "loadError": "__TODO__",
1306
- "grantError": "__TODO__",
1307
- "revokeError": "__TODO__"
1320
+ "title": "Gestionar acceso",
1321
+ "grantedAccess": "Acceso concedido",
1322
+ "addUser": "Agregar usuario",
1323
+ "emailPlaceholder": "usuario@correo.com",
1324
+ "grant": "Conceder",
1325
+ "revoke": "Revocar",
1326
+ "noAssignments": "No se ha concedido acceso a ningún usuario",
1327
+ "loadError": "No se pudieron cargar las asignaciones",
1328
+ "grantError": "No se pudo conceder el acceso",
1329
+ "revokeError": "No se pudo revocar el acceso"
1308
1330
  },
1309
1331
  "editCategories": {
1310
- "title": "__TODO__",
1311
- "intro": "__TODO__",
1312
- "add": "__TODO__",
1313
- "empty": "__TODO__",
1314
- "duplicate": "__TODO__",
1315
- "confirmDelete": "__TODO__",
1316
- "deleteBlocked": "__TODO__",
1317
- "deleteDisabledHint": "__TODO__",
1318
- "unused": "__TODO__",
1319
- "usageCount": "__TODO__",
1320
- "usageList": "__TODO__"
1332
+ "title": "Categorías del torneo",
1333
+ "intro": "Agrega o quita categorías definidas para este torneo. Las categorías en uso no se pueden editar ni quitar — cámbialas reemplazando los eventos que las referencian.",
1334
+ "add": "+ Agregar categoría",
1335
+ "empty": "Aún no hay categorías definidas.",
1336
+ "duplicate": "Ya existe una categoría con ese nombre o código.",
1337
+ "confirmDelete": "¿Eliminar «{{name}}»? Esto no se puede deshacer.",
1338
+ "deleteBlocked": "No se puede eliminar «{{name}}» — usada por {{count}} evento(s): {{events}}. Quita o reasigna primero esos eventos.",
1339
+ "deleteDisabledHint": "Esta categoría es usada por uno o más eventos. Quita o reasigna primero esos eventos.",
1340
+ "unused": "Sin uso",
1341
+ "usageCount": "{{count}} evento(s)",
1342
+ "usageList": "{{name}} es usada por: {{events}}"
1321
1343
  },
1322
1344
  "firstLogin": {
1323
- "title": "__TODO__",
1324
- "intro": "__TODO__",
1325
- "newPasswordLabel": "__TODO__",
1326
- "newPasswordPlaceholder": "__TODO__",
1327
- "confirmPasswordLabel": "__TODO__",
1328
- "confirmPasswordPlaceholder": "__TODO__",
1329
- "setPassword": "__TODO__",
1330
- "failed": "__TODO__",
1331
- "tokenExpired": "__TODO__"
1345
+ "title": "Establece tu contraseña",
1346
+ "intro": "Tu cuenta se creó con una contraseña temporal. Elige una nueva contraseña para terminar de iniciar sesión.",
1347
+ "newPasswordLabel": "Nueva contraseña",
1348
+ "newPasswordPlaceholder": "mínimo 8 caracteres",
1349
+ "confirmPasswordLabel": "Confirmar contraseña",
1350
+ "confirmPasswordPlaceholder": "vuelve a ingresar la nueva contraseña",
1351
+ "setPassword": "Establecer contraseña",
1352
+ "failed": "No se pudo establecer tu contraseña. Inténtalo de nuevo.",
1353
+ "tokenExpired": "Esta sesión de inicio expiró. Vuelve a iniciar sesión."
1332
1354
  },
1333
1355
  "forgotPassword": {
1334
- "title": "__TODO__",
1335
- "intro": "__TODO__",
1336
- "label": "__TODO__",
1337
- "submit": "__TODO__",
1338
- "sent": "__TODO__",
1339
- "networkError": "__TODO__"
1356
+ "title": "Restablece tu contraseña",
1357
+ "intro": "Ingresa el correo asociado a tu cuenta. Si te conocemos, un enlace para restablecer la contraseña está en camino — revisa tu bandeja de entrada.",
1358
+ "label": "Correo de contacto",
1359
+ "submit": "Enviar enlace de restablecimiento",
1360
+ "sent": "Si te conocemos, un enlace para restablecer la contraseña está en camino. Revisa tu bandeja de entrada (y tu carpeta de spam).",
1361
+ "networkError": "No se pudo contactar con el servidor — inténtalo de nuevo."
1340
1362
  },
1341
1363
  "createUser": {
1342
- "title": "__TODO__",
1343
- "create": "__TODO__",
1344
- "loginEmail": "__TODO__",
1345
- "contactEmail": "__TODO__",
1346
- "password": "__TODO__",
1347
- "successCopied": "__TODO__",
1348
- "successEmailed": "__TODO__",
1349
- "successPlain": "__TODO__",
1350
- "failed": "__TODO__",
1351
- "emailExists": "__TODO__"
1364
+ "title": "Crear usuario",
1365
+ "create": "Crear",
1366
+ "loginEmail": "ID de inicio de sesión",
1367
+ "contactEmail": "Correo de contacto (opcional)",
1368
+ "password": "Contraseña",
1369
+ "successCopied": "Creado {{email}}. Contraseña temporal copiada al portapapeles.",
1370
+ "successEmailed": "Creado. Se envió un enlace para «establecer tu contraseña» a {{email}}.",
1371
+ "successPlain": "Creado {{email}}.",
1372
+ "failed": "No se pudo crear el usuario.",
1373
+ "emailExists": "Ya existe un usuario con el correo {{email}}."
1352
1374
  },
1353
1375
  "archiveProvider": {
1354
- "title": "__TODO__",
1355
- "intro": "__TODO__",
1356
- "loading": "__TODO__",
1357
- "previewFailed": "__TODO__",
1358
- "confirmLabel": "__TODO__",
1359
- "submit": "__TODO__",
1360
- "success": "__TODO__",
1361
- "failed": "__TODO__",
1376
+ "title": "Archivar proveedor — {{provider}}",
1377
+ "intro": "Archivar exporta todo lo asociado con {{provider}} ({{abbr}}) a disco y luego lo elimina de la base de datos activa. El archivo se puede recuperar mediante el script de backend revive-provider.mjs.",
1378
+ "loading": "Cargando vista previa del alcance…",
1379
+ "previewFailed": "No se pudo cargar la vista previa. Inténtalo de nuevo o recarga la página.",
1380
+ "confirmLabel": "Escribe la abreviatura del proveedor ({{abbr}}) para confirmar:",
1381
+ "submit": "Archivar proveedor",
1382
+ "success": "Archivado {{abbr}} — {{tournaments}} torneos. ID de archivo: {{archiveId}}.",
1383
+ "failed": "Falló el archivado.",
1362
1384
  "counts": {
1363
- "tournaments": "__TODO__",
1364
- "userAssociations": "__TODO__",
1365
- "provisionerAssociations": "__TODO__",
1366
- "tournamentAssignments": "__TODO__",
1367
- "officialRecords": "__TODO__",
1368
- "sanctioningRecords": "__TODO__",
1369
- "tournamentProvisioner": "__TODO__",
1370
- "pendingSaves": "__TODO__",
1371
- "calendars": "__TODO__",
1372
- "topologies": "__TODO__",
1373
- "catalogItems": "__TODO__",
1374
- "policies": "__TODO__",
1375
- "auditLogRows": "__TODO__"
1385
+ "tournaments": "Torneos",
1386
+ "userAssociations": "Asociaciones de usuario",
1387
+ "provisionerAssociations": "Asociaciones de aprovisionador",
1388
+ "tournamentAssignments": "Asignaciones de torneo",
1389
+ "officialRecords": "Registros oficiales",
1390
+ "sanctioningRecords": "Registros de sanción",
1391
+ "tournamentProvisioner": "Vínculos torneo-aprovisionador",
1392
+ "pendingSaves": "Guardados pendientes",
1393
+ "calendars": "Calendarios",
1394
+ "topologies": "Plantillas de topología",
1395
+ "catalogItems": "Elementos del catálogo",
1396
+ "policies": "Políticas",
1397
+ "auditLogRows": "Filas del registro de auditoría (conservadas, no eliminadas)"
1376
1398
  }
1377
1399
  },
1378
1400
  "deleteProvider": {
1379
- "title": "__TODO__",
1380
- "warning": "__TODO__",
1381
- "warningDetail": "__TODO__",
1382
- "intro": "__TODO__",
1383
- "acknowledge": "__TODO__",
1384
- "submit": "__TODO__",
1385
- "success": "__TODO__",
1386
- "failed": "__TODO__"
1401
+ "title": "Eliminar proveedor — {{provider}}",
1402
+ "warning": "Irreversible — sin archivo, sin recuperación.",
1403
+ "warningDetail": "Usa Archivar en su lugar si existe alguna posibilidad de necesitar estos datos más adelante. Eliminar es para proveedores sin datos reales (cuentas de demo/prueba).",
1404
+ "intro": "Elimina permanentemente {{provider}} ({{abbr}}) y todos sus datos asociados. Las filas del registro de auditoría se conservan, pero todas las demás tablas se borrarán.",
1405
+ "acknowledge": "Entiendo que esto no se puede deshacer.",
1406
+ "submit": "Eliminar permanentemente",
1407
+ "success": "Eliminado {{abbr}} — {{tournaments}} torneos destruidos.",
1408
+ "failed": "Falló la eliminación."
1387
1409
  },
1388
1410
  "contactEmail": {
1389
- "title": "__TODO__",
1390
- "label": "__TODO__",
1391
- "save": "__TODO__",
1392
- "resend": "__TODO__",
1393
- "savedPending": "__TODO__",
1394
- "resent": "__TODO__",
1395
- "alreadyVerified": "__TODO__",
1396
- "failed": "__TODO__",
1397
- "statusNotSet": "__TODO__",
1398
- "statusPending": "__TODO__",
1399
- "statusVerified": "__TODO__"
1411
+ "title": "Correo de recuperación",
1412
+ "label": "Correo de recuperación",
1413
+ "save": "Guardar",
1414
+ "resend": "Reenviar verificación",
1415
+ "savedPending": "Correo de verificación enviado a {{email}}.",
1416
+ "resent": "Correo de verificación enviado.",
1417
+ "alreadyVerified": "El correo de recuperación ya está verificado.",
1418
+ "failed": "No se pudo actualizar el correo de recuperación. Inténtalo de nuevo.",
1419
+ "statusNotSet": "No hay correo de recuperación definido. Agrega uno para poder recuperar el acceso si pierdes tu contraseña.",
1420
+ "statusPending": "Verificación pendiente — revisa {{email}} y haz clic en el enlace.",
1421
+ "statusVerified": "Verificado: {{email}}"
1400
1422
  },
1401
1423
  "editUser": {
1402
- "providers": "__TODO__",
1403
- "noProviders": "__TODO__",
1404
- "noProvidersAtYourScope": "__TODO__",
1405
- "addProvider": "__TODO__",
1406
- "addProviderPlaceholder": "__TODO__",
1407
- "providerAdded": "__TODO__",
1408
- "providerRemoved": "__TODO__",
1409
- "providerRoleUpdated": "__TODO__",
1410
- "removeProviderTitle": "__TODO__",
1411
- "removeProviderConfirm": "__TODO__"
1424
+ "providers": "Proveedores",
1425
+ "noProviders": "Este usuario no tiene asociaciones de proveedor.",
1426
+ "noProvidersAtYourScope": "Este usuario no tiene asociaciones en tu proveedor.",
1427
+ "addProvider": "Agregar",
1428
+ "addProviderPlaceholder": "Selecciona un proveedor...",
1429
+ "providerAdded": "Proveedor agregado",
1430
+ "providerRemoved": "Asociación de proveedor eliminada",
1431
+ "providerRoleUpdated": "Rol actualizado a {{role}}",
1432
+ "removeProviderTitle": "Eliminar asociación de proveedor",
1433
+ "removeProviderConfirm": "¿Eliminar la asociación de este usuario con {{provider}}? Esta acción no se puede deshacer."
1412
1434
  },
1413
1435
  "teamProfile": {
1414
- "title": "__TODO__",
1415
- "roster": "__TODO__",
1416
- "coaches": "__TODO__",
1417
- "staff": "__TODO__",
1418
- "empty": "__TODO__",
1436
+ "title": "Perfil del equipo",
1437
+ "roster": "Plantilla",
1438
+ "coaches": "Entrenadores",
1439
+ "staff": "Staff",
1440
+ "empty": "Aún no hay miembros en este equipo.",
1419
1441
  "columns": {
1420
- "name": "__TODO__",
1421
- "sex": "__TODO__",
1422
- "role": "__TODO__",
1423
- "contact": "__TODO__"
1442
+ "name": "Nombre",
1443
+ "sex": "Sexo",
1444
+ "role": "Rol",
1445
+ "contact": "Contacto"
1424
1446
  },
1425
1447
  "counts": {
1426
- "players_one": "__TODO__",
1427
- "players_other": "__TODO__",
1428
- "coaches_one": "__TODO__",
1429
- "coaches_other": "__TODO__",
1430
- "staff_one": "__TODO__",
1431
- "staff_other": "__TODO__"
1448
+ "players_one": "{{count}} jugador",
1449
+ "players_other": "{{count}} jugadores",
1450
+ "coaches_one": "{{count}} entrenador",
1451
+ "coaches_other": "{{count}} entrenadores",
1452
+ "staff_one": "{{count}} miembro del staff",
1453
+ "staff_other": "{{count}} miembros del staff"
1432
1454
  }
1433
1455
  },
1434
1456
  "practiceCapacity": {
1435
- "title": "__TODO__",
1436
- "help": "__TODO__",
1437
- "unlimited": "__TODO__",
1438
- "capped": "__TODO__",
1439
- "saved": "__TODO__",
1440
- "invalidNumber": "__TODO__",
1441
- "mustBeNonNegative": "__TODO__"
1457
+ "title": "Capacidad de canchas de práctica",
1458
+ "help": "Capacidad predeterminada para reservas de PRÁCTICA que no definan la suya propia. Las reservas individuales pueden anularla.",
1459
+ "unlimited": "Ilimitada",
1460
+ "capped": "Limitar registros simultáneos:",
1461
+ "saved": "Capacidad de práctica actualizada.",
1462
+ "invalidNumber": "Ingresa un número entero.",
1463
+ "mustBeNonNegative": "La capacidad no puede ser negativa."
1442
1464
  },
1443
1465
  "practiceRegistrations": {
1444
- "title": "__TODO__",
1445
- "bookingNotFound": "__TODO__",
1446
- "currentRegistrations": "__TODO__",
1447
- "noneYet": "__TODO__",
1448
- "addRegistrant": "__TODO__",
1449
- "participantLabel": "__TODO__",
1450
- "participantPlaceholder": "__TODO__",
1451
- "startTime": "__TODO__",
1452
- "endTime": "__TODO__",
1453
- "add": "__TODO__",
1454
- "added": "__TODO__",
1455
- "removed": "__TODO__",
1456
- "pickParticipant": "__TODO__",
1457
- "pickTimes": "__TODO__",
1458
- "invalidWindow": "__TODO__",
1459
- "conflictWarning": "__TODO__"
1466
+ "title": "Gestionar registros de práctica",
1467
+ "bookingNotFound": "Esta reserva de práctica ya no está disponible.",
1468
+ "currentRegistrations": "Registros actuales",
1469
+ "noneYet": "Aún no hay registros.",
1470
+ "addRegistrant": "Agregar registrado",
1471
+ "participantLabel": "Participante",
1472
+ "participantPlaceholder": "Escribe el nombre del participante",
1473
+ "startTime": "Inicio",
1474
+ "endTime": "Fin",
1475
+ "add": "Agregar",
1476
+ "added": "Registro agregado.",
1477
+ "removed": "Registro eliminado.",
1478
+ "pickParticipant": "Elige un participante de la lista.",
1479
+ "pickTimes": "Define las horas de inicio y de fin.",
1480
+ "invalidWindow": "La hora de inicio debe ser anterior a la hora de fin.",
1481
+ "conflictWarning": "Registro agregado — el participante tiene otro compromiso durante esta franja."
1460
1482
  }
1461
1483
  },
1462
1484
  "dashboard": {
@@ -1476,14 +1498,15 @@
1476
1498
  "noEliminationStructures": "Sin estructuras de eliminación",
1477
1499
  "viewCompetitiveness": "Ver competitividad",
1478
1500
  "viewBracket": "Ver cuadro",
1479
- "allStructures": "__TODO__",
1480
- "categories": "__TODO__",
1481
- "noneSet": "__TODO__",
1482
- "practiceCapacity": "__TODO__",
1483
- "practiceUnlimited": "__TODO__",
1484
- "practiceClosed": "__TODO__",
1485
- "setTimeZone": "__TODO__",
1486
- "setTimeZoneDetected": "__TODO__"
1501
+ "allStructures": "Todas las estructuras",
1502
+ "categories": "Categorías ({{count}})",
1503
+ "noneSet": "Ninguno",
1504
+ "practiceCapacity": "Capacidad de práctica",
1505
+ "practiceUnlimited": "Ilimitado",
1506
+ "practiceClosed": "Cerrado",
1507
+ "setTimeZone": "Definir zona horaria",
1508
+ "setTimeZoneDetected": "(detectada: {{zone}})",
1509
+ "practiceNoneAllocated": "Nada asignado"
1487
1510
  },
1488
1511
  "drawers": {
1489
1512
  "editTournament": {
@@ -1496,19 +1519,19 @@
1496
1519
  "endDateLabel": "Fecha de fin",
1497
1520
  "selectActiveDates": "Seleccionar fechas activas",
1498
1521
  "activeDates": "Fechas Activas",
1499
- "timeZoneLabel": "__TODO__",
1500
- "timeZonePlaceholder": "__TODO__",
1501
- "timeZoneInvalid": "__TODO__",
1502
- "tierSystemLabel": "__TODO__",
1503
- "tierSystemPlaceholder": "__TODO__",
1504
- "tierSystemNone": "__TODO__",
1505
- "tierSystemUnknown": "__TODO__",
1506
- "tierValueLabel": "__TODO__",
1507
- "tierValuePlaceholder": "__TODO__",
1508
- "tierNumericRankLabel": "__TODO__",
1509
- "tierNumericRankPlaceholder": "__TODO__",
1510
- "tierSystemMissing": "__TODO__",
1511
- "tierValueMissing": "__TODO__"
1522
+ "timeZoneLabel": "Zona horaria",
1523
+ "timeZonePlaceholder": "p. ej. America/New_York",
1524
+ "timeZoneInvalid": "No es una zona horaria IANA reconocida",
1525
+ "tierSystemLabel": "Sistema de niveles",
1526
+ "tierSystemPlaceholder": "p. ej. ITF_JUNIOR, ATP, PPA",
1527
+ "tierSystemNone": "",
1528
+ "tierSystemUnknown": "(desconocido: {{system}})",
1529
+ "tierValueLabel": "Valor de nivel",
1530
+ "tierValuePlaceholder": "p. ej. J500, Masters 1000, Gold",
1531
+ "tierNumericRankLabel": "Rango de nivel (opcional)",
1532
+ "tierNumericRankPlaceholder": "Menor = nivel superior",
1533
+ "tierSystemMissing": "Valor de nivel ingresado sin un sistema",
1534
+ "tierValueMissing": "Sistema de niveles ingresado sin un valor"
1512
1535
  },
1513
1536
  "addDraw": {
1514
1537
  "missingName": "Falta nombre del Cuadro",
@@ -1587,15 +1610,15 @@
1587
1610
  "PLAY_OFF": "Llave de playoffs utilizada como estructura secundaria.",
1588
1611
  "ROUND_ROBIN_WITH_PLAYOFF": "Fase de grupos en round robin seguida de playoffs de eliminación directa.",
1589
1612
  "FEED_IN": "Cuadro de entrada escalonada donde los participantes entran en la llave en diferentes rondas.",
1590
- "SWISS": "__TODO__",
1591
- "PAGE_PLAYOFF": "__TODO__"
1613
+ "SWISS": "Participantes emparejados por su récord de victorias-derrotas en cada ronda. Los desempates clasifican a todos los participantes tras la ronda final.",
1614
+ "PAGE_PLAYOFF": "Eliminatoria híbrida de cuatro participantes (IPL/NBA/curling). Los dos primeros cabezas de serie tienen doble eliminación; se resuelven las cuatro posiciones."
1592
1615
  },
1593
- "qualifyingFirst": "__TODO__",
1594
- "qualifyingPositions": "__TODO__",
1595
- "generateMainDraw": "__TODO__",
1596
- "noMainDraw": "__TODO__",
1597
- "drawTypeSwiss": "__TODO__",
1598
- "drawTypePagePlayoff": "__TODO__"
1616
+ "qualifyingFirst": "Comenzar con la clasificación",
1617
+ "qualifyingPositions": "Posiciones de clasificación",
1618
+ "generateMainDraw": "Generar cuadro principal",
1619
+ "noMainDraw": "El cuadro principal aún no se ha generado.",
1620
+ "drawTypeSwiss": "Sistema suizo",
1621
+ "drawTypePagePlayoff": "Playoff de Page"
1599
1622
  }
1600
1623
  },
1601
1624
  "toasts": {
@@ -1622,16 +1645,16 @@
1622
1645
  "missingTournament": "Falta torneo",
1623
1646
  "devVariableError": "Ocurrió un error al agregar variables de desarrollo",
1624
1647
  "cannotDeleteParticipant": "El participante está asignado a un cuadro y no puede ser eliminado",
1625
- "updatedParticipants": "__TODO__",
1626
- "addedEventEntries": "__TODO__",
1627
- "magicLinkSent": "__TODO__",
1628
- "magicLinkInvalid": "__TODO__",
1629
- "addedTeamParticipants": "__TODO__",
1630
- "activeDatesPrompt": "__TODO__",
1631
- "activeDatesPromptAction": "__TODO__",
1632
- "cannotDeleteTournament": "__TODO__",
1633
- "tournamentNotEnded": "__TODO__",
1634
- "deleteForbidden": "__TODO__"
1648
+ "updatedParticipants": "Actualizado(s) {{count}} participante(s) existente(s)",
1649
+ "addedEventEntries": "Inscritos {{entries}} en {{events}} evento(s)",
1650
+ "magicLinkSent": "Si existe una cuenta para ese correo, un enlace de acceso está en camino.",
1651
+ "magicLinkInvalid": "Ese enlace de acceso no es válido o ha caducado. Solicita uno nuevo.",
1652
+ "addedTeamParticipants": "Generado(s) {{count}} participante(s) de equipo a partir de la columna de equipo",
1653
+ "activeDatesPrompt": "Define las fechas activas para que la programación pública muestre solo los días que se juega.",
1654
+ "activeDatesPromptAction": "Definir fechas activas",
1655
+ "cannotDeleteTournament": "No se puede eliminar el torneo",
1656
+ "tournamentNotEnded": "No se puede eliminar un torneo antes de su fecha de fin. Establece la fecha de fin en una fecha pasada y luego elimínalo.",
1657
+ "deleteForbidden": "No tienes autorización para eliminar este torneo."
1635
1658
  },
1636
1659
  "loginMenu": {
1637
1660
  "authorization": "Autorización",
@@ -1697,7 +1720,7 @@
1697
1720
  "seed": "Cabeza de Serie",
1698
1721
  "flights": "Vuelos",
1699
1722
  "status": "Estado",
1700
- "drawPosition": "__TODO__"
1723
+ "drawPosition": "Pos"
1701
1724
  },
1702
1725
  "teamRow": {
1703
1726
  "order": "Orden",
@@ -1731,9 +1754,9 @@
1731
1754
  "events": "Eventos",
1732
1755
  "teams": "Equipos",
1733
1756
  "cityState": "Ciudad/Estado",
1734
- "nickname": "__TODO__",
1735
- "role": "__TODO__",
1736
- "teamAffiliation": "__TODO__"
1757
+ "nickname": "Apodo",
1758
+ "role": "Rol",
1759
+ "teamAffiliation": "Afiliación de equipo"
1737
1760
  },
1738
1761
  "bracket": {
1739
1762
  "participant": "Participante",
@@ -1790,7 +1813,8 @@
1790
1813
  "profile": "Perfil",
1791
1814
  "official": "Oficial",
1792
1815
  "status": "Estado",
1793
- "updatedAt": "__TODO__"
1816
+ "updatedAt": "Actualizado",
1817
+ "calledAt": "Llamado"
1794
1818
  },
1795
1819
  "tournaments": {
1796
1820
  "open": "Abrir"
@@ -1825,9 +1849,21 @@
1825
1849
  "doubles": "Dobles",
1826
1850
  "team": "Equipo",
1827
1851
  "opponents": "Oponentes",
1828
- "allDates": "__TODO__",
1829
- "today": "__TODO__",
1830
- "noDate": "__TODO__"
1852
+ "allDates": "Todas las fechas",
1853
+ "today": "Hoy",
1854
+ "noDate": "Sin fecha",
1855
+ "suspended": "__TODO__",
1856
+ "notReady": "__TODO__",
1857
+ "live": "__TODO__",
1858
+ "abandoned": "__TODO__",
1859
+ "cancelled": "__TODO__",
1860
+ "allProfiles": "__TODO__",
1861
+ "competitive": "__TODO__",
1862
+ "routine": "__TODO__",
1863
+ "decisive": "__TODO__",
1864
+ "walkover": "__TODO__",
1865
+ "showTodayView": "__TODO__",
1866
+ "showCompetitivenessView": "__TODO__"
1831
1867
  },
1832
1868
  "schedule": {
1833
1869
  "searchParticipants": "Buscar participantes",
@@ -1864,7 +1900,7 @@
1864
1900
  "blocked": "Bloqueado",
1865
1901
  "available": "Disponible",
1866
1902
  "avgPerCourt": "Prom. Disp./Cancha",
1867
- "tournament": "__TODO__"
1903
+ "tournament": "Torneo"
1868
1904
  },
1869
1905
  "addCourts": "Agregar canchas",
1870
1906
  "addVenue": {
@@ -1877,10 +1913,10 @@
1877
1913
  "courtNameBasePlaceholder": "e.g. Court, Field, Rink",
1878
1914
  "numberOfCourts": "Número de canchas",
1879
1915
  "numberOfCourtsError": "Debe ser un número entero",
1880
- "externalLookup": "__TODO__",
1881
- "openingTime": "__TODO__",
1882
- "closingTime": "__TODO__",
1883
- "timeOrderError": "__TODO__"
1916
+ "externalLookup": "Búsqueda externa",
1917
+ "openingTime": "Hora de apertura",
1918
+ "closingTime": "Hora de cierre",
1919
+ "timeOrderError": "La hora de apertura debe ser anterior a la de cierre"
1884
1920
  },
1885
1921
  "editCourt": {
1886
1922
  "title": "Editar cancha",
@@ -1902,17 +1938,17 @@
1902
1938
  "abbreviationError": "mínimo de 2 caracteres, máximo de 6",
1903
1939
  "abbreviationRequired": "La abreviatura debe tener 2-6 caracteres",
1904
1940
  "updateCourtNames": "Actualizar nombres de canchas",
1905
- "openingTime": "__TODO__",
1906
- "closingTime": "__TODO__",
1907
- "timeOrderError": "__TODO__",
1908
- "websiteLabel": "__TODO__",
1909
- "imageLabel": "__TODO__",
1910
- "addressLine1Label": "__TODO__",
1911
- "cityLabel": "__TODO__",
1912
- "stateLabel": "__TODO__",
1913
- "postalCodeLabel": "__TODO__",
1914
- "countryCodeLabel": "__TODO__",
1915
- "countryCodePlaceholder": "__TODO__"
1941
+ "openingTime": "Hora de apertura",
1942
+ "closingTime": "Hora de cierre",
1943
+ "timeOrderError": "La hora de apertura debe ser anterior a la de cierre",
1944
+ "websiteLabel": "URL del sitio web",
1945
+ "imageLabel": "URL de imagen",
1946
+ "addressLine1Label": "Dirección",
1947
+ "cityLabel": "Ciudad",
1948
+ "stateLabel": "Estado / región",
1949
+ "postalCodeLabel": "Código postal",
1950
+ "countryCodeLabel": "País",
1951
+ "countryCodePlaceholder": "Empieza a escribir el nombre de un país"
1916
1952
  }
1917
1953
  },
1918
1954
  "events": {
@@ -1938,10 +1974,10 @@
1938
1974
  "any": "Cualquiera",
1939
1975
  "custom": "Personalizado",
1940
1976
  "categorySaveWarning": "Categoría guardada en el evento pero no agregada a las categorías del torneo",
1941
- "competitionFormatLabel": "__TODO__",
1942
- "competitionFormatNone": "__TODO__",
1943
- "competitionFormatTennis": "__TODO__",
1944
- "competitionFormatIntennse": "__TODO__"
1977
+ "competitionFormatLabel": "Reglas del deporte",
1978
+ "competitionFormatNone": "Ninguna",
1979
+ "competitionFormatTennis": "Tenis (estándar)",
1980
+ "competitionFormatIntennse": "INTENNSE (estándar)"
1945
1981
  },
1946
1982
  "editFormat": {
1947
1983
  "noChanges": "Sin cambios",
@@ -1962,10 +1998,10 @@
1962
1998
  "viewDraw": "Ver cuadro",
1963
1999
  "displaySettings": "Configuración de visualización",
1964
2000
  "autoPlaceParticipants": "Ubicar participantes automáticamente",
1965
- "configureDraft": "__TODO__",
1966
- "resolveDraft": "__TODO__",
1967
- "draftStatus": "__TODO__",
1968
- "recalculateStats": "__TODO__"
2001
+ "configureDraft": "Configurar borrador",
2002
+ "resolveDraft": "Resolver borrador",
2003
+ "draftStatus": "Borrador",
2004
+ "recalculateStats": "Recalcular estadísticas"
1969
2005
  }
1970
2006
  },
1971
2007
  "participants": {
@@ -2013,8 +2049,8 @@
2013
2049
  "birthdayPlaceholder": "Cumpleaños",
2014
2050
  "country": "País",
2015
2051
  "countryPlaceholder": "País de origen",
2016
- "nickname": "__TODO__",
2017
- "nicknamePlaceholder": "__TODO__"
2052
+ "nickname": "Apodo",
2053
+ "nicknamePlaceholder": "Nombre para mostrar"
2018
2054
  },
2019
2055
  "newTeam": "Nuevo equipo",
2020
2056
  "generateTeams": "Generar equipos",
@@ -2033,9 +2069,9 @@
2033
2069
  "female": "Femenino",
2034
2070
  "unknown": "Desconocido"
2035
2071
  },
2036
- "importFromCsv": "__TODO__",
2037
- "newGroup": "__TODO__",
2038
- "staff": "__TODO__"
2072
+ "importFromCsv": "Importar desde CSV/TSV",
2073
+ "newGroup": "Nuevo grupo",
2074
+ "staff": "Staff"
2039
2075
  }
2040
2076
  },
2041
2077
  "overlays": {
@@ -2088,629 +2124,708 @@
2088
2124
  "publishParticipants": "Publicar Participantes",
2089
2125
  "country": "País",
2090
2126
  "cityState": "Ciudad / Provincia",
2091
- "unpublishTournament": "__TODO__",
2092
- "confirmUnpublish": "__TODO__"
2127
+ "unpublishTournament": "Dejar de publicar torneo",
2128
+ "confirmUnpublish": "Dejar de publicar todos los eventos, participantes y programación",
2129
+ "timeZoneNotSetTitle": "__TODO__",
2130
+ "timeZoneNotSetBody": "__TODO__",
2131
+ "setTimeZone": "__TODO__"
2093
2132
  },
2094
- "cal": "__TODO__",
2095
- "tpl": "__TODO__",
2096
- "pol": "__TODO__",
2097
- "rpt": "__TODO__",
2133
+ "cal": "Calendario",
2134
+ "tpl": "Plantillas",
2135
+ "pol": "Políticas",
2136
+ "rpt": "Informes",
2098
2137
  "system": {
2099
- "title": "__TODO__",
2100
- "providers": "__TODO__",
2101
- "users": "__TODO__",
2102
- "loadError": "__TODO__",
2103
- "noProviders": "__TODO__",
2104
- "noUsers": "__TODO__",
2105
- "providerName": "__TODO__",
2106
- "providerAbbr": "__TODO__",
2107
- "selectProvider": "__TODO__",
2108
- "impersonate": "__TODO__",
2109
- "editProvider": "__TODO__",
2110
- "createProvider": "__TODO__",
2111
- "providerUpdated": "__TODO__",
2112
- "associatedUsers": "__TODO__",
2113
- "noUsersForProvider": "__TODO__",
2114
- "userName": "__TODO__",
2115
- "firstName": "__TODO__",
2116
- "lastName": "__TODO__",
2117
- "provider": "__TODO__",
2118
- "roles": "__TODO__",
2119
- "searchUsers": "__TODO__",
2120
- "inviteUser": "__TODO__",
2121
- "editUser": "__TODO__",
2122
- "editUserTitle": "__TODO__",
2123
- "removeUser": "__TODO__",
2124
- "selectUserFirst": "__TODO__",
2125
- "userUpdated": "__TODO__",
2126
- "inviteCopied": "__TODO__",
2127
- "confirmRemoveUser": "__TODO__",
2128
- "removeUserConfirm": "__TODO__",
2129
- "searchProviders": "__TODO__",
2130
- "lastAccess": "__TODO__",
2131
- "activeRooms": "__TODO__",
2132
- "activeRoomsTitle": "__TODO__",
2133
- "noActiveRooms": "__TODO__",
2134
- "tournamentColumn": "__TODO__",
2135
- "userCountColumn": "__TODO__",
2136
- "presenceLoadError": "__TODO__",
2137
- "joinedAt": "__TODO__",
2138
- "anonymous": "__TODO__",
2139
- "refreshNow": "__TODO__",
2140
- "lastRefreshed": "__TODO__",
2141
- "tmxUrlMissing": "__TODO__",
2142
- "createUser": "__TODO__",
2143
- "archiveProvider": "__TODO__",
2144
- "deleteProvider": "__TODO__",
2145
- "resetPassword": "__TODO__",
2146
- "resetPasswordTitle": "__TODO__",
2147
- "newPassword": "__TODO__",
2148
- "generatePassword": "__TODO__",
2149
- "passwordCopied": "__TODO__",
2150
- "passwordReset": "__TODO__",
2151
- "passwordResetError": "__TODO__",
2152
- "provisioners": "__TODO__",
2153
- "provisionerName": "__TODO__",
2154
- "provisionerNamePlaceholder": "__TODO__",
2155
- "noProvisioners": "__TODO__",
2156
- "selectProvisioner": "__TODO__",
2157
- "searchProvisioners": "__TODO__",
2158
- "createProvisioner": "__TODO__",
2159
- "editProvisioner": "__TODO__",
2160
- "provisionerCreated": "__TODO__",
2161
- "createFailed": "__TODO__",
2162
- "updateFailed": "__TODO__",
2163
- "updated": "__TODO__",
2164
- "create": "__TODO__",
2165
- "active": "__TODO__",
2166
- "inactive": "__TODO__",
2167
- "activate": "__TODO__",
2168
- "deactivate": "__TODO__",
2169
- "activateProvisioner": "__TODO__",
2170
- "deactivateProvisioner": "__TODO__",
2171
- "activateConfirm": "__TODO__",
2172
- "deactivateConfirm": "__TODO__",
2173
- "status": "__TODO__",
2174
- "createdAt": "__TODO__",
2175
- "created": "__TODO__",
2176
- "lastUsed": "__TODO__",
2177
- "apiKeys": "__TODO__",
2178
- "label": "__TODO__",
2179
- "noKeys": "__TODO__",
2180
- "generateKey": "__TODO__",
2181
- "generate": "__TODO__",
2182
- "generateFailed": "__TODO__",
2183
- "keyLabel": "__TODO__",
2184
- "keyLabelPlaceholder": "__TODO__",
2185
- "keyGenerated": "__TODO__",
2186
- "keyRevealWarning": "__TODO__",
2187
- "copy": "__TODO__",
2188
- "copiedToClipboard": "__TODO__",
2189
- "revoke": "__TODO__",
2190
- "revoked": "__TODO__",
2191
- "revokeKey": "__TODO__",
2192
- "revokeKeyConfirm": "__TODO__",
2193
- "keyRevoked": "__TODO__",
2194
- "associatedProviders": "__TODO__",
2195
- "noAssociatedProviders": "__TODO__",
2196
- "associateProvider": "__TODO__",
2197
- "associate": "__TODO__",
2198
- "associated": "__TODO__",
2199
- "disassociate": "__TODO__",
2200
- "disassociateProvider": "__TODO__",
2201
- "disassociateConfirm": "__TODO__",
2202
- "disassociated": "__TODO__",
2203
- "selectProviderFirst": "__TODO__",
2204
- "relationship": "__TODO__",
2205
- "owner": "__TODO__",
2206
- "subsidiary": "__TODO__",
2207
- "nameRequired": "__TODO__",
2208
- "deleteProvisioner": "__TODO__",
2209
- "deletePermanently": "__TODO__",
2210
- "deleteProvisionerWarning": "__TODO__",
2211
- "typeNameToConfirm": "__TODO__",
2212
- "provisionerDeleted": "__TODO__",
2213
- "deleteFailed": "__TODO__",
2214
- "representatives": "__TODO__",
2215
- "noRepresentatives": "__TODO__",
2216
- "user": "__TODO__",
2217
- "displayName": "__TODO__",
2218
- "granted": "__TODO__",
2219
- "assignUser": "__TODO__",
2220
- "assign": "__TODO__",
2221
- "remove": "__TODO__",
2222
- "representativeAssigned": "__TODO__",
2223
- "representativeRemoved": "__TODO__",
2224
- "removeRepresentative": "__TODO__",
2225
- "removeRepresentativeConfirm": "__TODO__",
2138
+ "title": "Sistema",
2139
+ "providers": "Proveedores",
2140
+ "users": "Usuarios",
2141
+ "loadError": "No se pudieron cargar los datos del sistema",
2142
+ "noProviders": "No se encontraron proveedores",
2143
+ "noUsers": "No se encontraron usuarios",
2144
+ "providerName": "Nombre del proveedor",
2145
+ "providerAbbr": "Abreviatura",
2146
+ "selectProvider": "Selecciona un proveedor para ver los detalles",
2147
+ "impersonate": "Suplantar",
2148
+ "editProvider": "Editar proveedor",
2149
+ "createProvider": "Crear proveedor",
2150
+ "providerUpdated": "Proveedor actualizado",
2151
+ "associatedUsers": "Usuarios asociados",
2152
+ "noUsersForProvider": "No hay usuarios asociados con este proveedor",
2153
+ "userName": "Nombre",
2154
+ "firstName": "Nombre",
2155
+ "lastName": "Apellido",
2156
+ "provider": "Proveedor",
2157
+ "roles": "Roles",
2158
+ "searchUsers": "Buscar usuarios...",
2159
+ "inviteUser": "Invitar usuario",
2160
+ "editUser": "Editar usuario",
2161
+ "editUserTitle": "Editar usuario",
2162
+ "removeUser": "Quitar usuario",
2163
+ "selectUserFirst": "Selecciona primero un usuario",
2164
+ "userUpdated": "Usuario actualizado",
2165
+ "inviteCopied": "Enlace de invitación copiado al portapapeles",
2166
+ "confirmRemoveUser": "Quitar usuario",
2167
+ "removeUserConfirm": "¿Seguro que quieres quitar a",
2168
+ "searchProviders": "Buscar proveedores...",
2169
+ "lastAccess": "Último acceso",
2170
+ "activeRooms": "Salas activas",
2171
+ "activeRoomsTitle": "Sesiones de torneo en vivo",
2172
+ "noActiveRooms": "No hay sesiones de torneo activas",
2173
+ "tournamentColumn": "Torneo",
2174
+ "userCountColumn": "Usuarios activos",
2175
+ "presenceLoadError": "No se pudieron cargar las salas activas",
2176
+ "joinedAt": "Se unió",
2177
+ "anonymous": "Anónimo",
2178
+ "refreshNow": "Actualizar ahora",
2179
+ "lastRefreshed": "Actualizado hace {{ago}}s",
2180
+ "tmxUrlMissing": "No se puede abrir TMX — el servidor no proporcionó una URL de TMX. Revisa TMX_URL en el .env del servidor.",
2181
+ "createUser": "Crear usuario",
2182
+ "archiveProvider": "Archivar",
2183
+ "deleteProvider": "Eliminar",
2184
+ "resetPassword": "Restablecer contraseña",
2185
+ "resetPasswordTitle": "Restablecer contraseña",
2186
+ "newPassword": "Nueva contraseña",
2187
+ "generatePassword": "Generar",
2188
+ "passwordCopied": "Contraseña copiada al portapapeles",
2189
+ "passwordReset": "Contraseña restablecida correctamente",
2190
+ "passwordResetError": "No se pudo restablecer la contraseña",
2191
+ "provisioners": "Aprovisionadores",
2192
+ "provisionerName": "Nombre del aprovisionador",
2193
+ "provisionerNamePlaceholder": "p. ej. TMX Sandbox",
2194
+ "noProvisioners": "No se encontraron aprovisionadores",
2195
+ "selectProvisioner": "Selecciona un aprovisionador para ver los detalles",
2196
+ "searchProvisioners": "Buscar aprovisionadores...",
2197
+ "createProvisioner": "Crear aprovisionador",
2198
+ "editProvisioner": "Editar aprovisionador",
2199
+ "provisionerCreated": "Aprovisionador creado",
2200
+ "createFailed": "Falló la creación",
2201
+ "updateFailed": "Falló la actualización",
2202
+ "updated": "Actualizado",
2203
+ "create": "Crear",
2204
+ "active": "Activo",
2205
+ "inactive": "Inactivo",
2206
+ "activate": "Activar",
2207
+ "deactivate": "Desactivar",
2208
+ "activateProvisioner": "Activar aprovisionador",
2209
+ "deactivateProvisioner": "Desactivar aprovisionador",
2210
+ "activateConfirm": "¿Activar aprovisionador «{{name}}»?",
2211
+ "deactivateConfirm": "¿Desactivar aprovisionador «{{name}}»? Sus claves API dejarán de funcionar.",
2212
+ "status": "Estado",
2213
+ "createdAt": "Creado",
2214
+ "created": "Creado",
2215
+ "lastUsed": "Último uso",
2216
+ "apiKeys": "Claves API",
2217
+ "label": "Etiqueta",
2218
+ "noKeys": "No hay claves API",
2219
+ "generateKey": "Generar clave",
2220
+ "generate": "Generar",
2221
+ "generateFailed": "No se pudo generar la clave API",
2222
+ "keyLabel": "Etiqueta de la clave",
2223
+ "keyLabelPlaceholder": "p. ej. Producción, Staging",
2224
+ "keyGenerated": "Clave API generada",
2225
+ "keyRevealWarning": "Esta es la única vez que se mostrará la clave completa. Guárdala en un lugar seguro antes de cerrar este diálogo.",
2226
+ "copy": "Copiar",
2227
+ "copiedToClipboard": "Copiado al portapapeles",
2228
+ "revoke": "Revocar",
2229
+ "revoked": "Revocado",
2230
+ "revokeKey": "Revocar clave API",
2231
+ "revokeKeyConfirm": "¿Revocar la clave «{{label}}»? Esto no se puede deshacer.",
2232
+ "keyRevoked": "Clave API revocada",
2233
+ "associatedProviders": "Proveedores asociados",
2234
+ "noAssociatedProviders": "No hay proveedores asociados",
2235
+ "associateProvider": "Asociar proveedor",
2236
+ "associate": "Asociar",
2237
+ "associated": "Proveedor asociado",
2238
+ "disassociate": "Quitar",
2239
+ "disassociateProvider": "Quitar asociación de proveedor",
2240
+ "disassociateConfirm": "¿Quitar la asociación con «{{name}}»?",
2241
+ "disassociated": "Asociación de proveedor eliminada",
2242
+ "selectProviderFirst": "Selecciona primero un proveedor",
2243
+ "relationship": "Relación",
2244
+ "owner": "Propietario",
2245
+ "subsidiary": "Subsidiaria",
2246
+ "nameRequired": "El nombre es obligatorio",
2247
+ "deleteProvisioner": "Eliminar permanentemente",
2248
+ "deletePermanently": "Eliminar permanentemente",
2249
+ "deleteProvisionerWarning": "<strong>Esto no se puede deshacer.</strong> Se eliminarán todas las claves API, asociaciones de proveedor y sellos de propiedad de torneo de «{{name}}». Los proveedores y sus torneos <em>no</em> se eliminarán.",
2250
+ "typeNameToConfirm": "Escribe {{name}} para confirmar:",
2251
+ "provisionerDeleted": "Aprovisionador eliminado ({{apiKeys}} claves, {{providerAssociations}} asociaciones, {{tournamentStamps}} sellos depurados)",
2252
+ "deleteFailed": "Falló la eliminación",
2253
+ "representatives": "Representantes",
2254
+ "noRepresentatives": "No hay representantes asignados",
2255
+ "user": "Usuario",
2256
+ "displayName": "Nombre",
2257
+ "granted": "Concedido",
2258
+ "assignUser": "Asignar usuario",
2259
+ "assign": "Asignar",
2260
+ "remove": "Quitar",
2261
+ "representativeAssigned": "Usuario asignado como representante",
2262
+ "representativeRemoved": "Representante eliminado",
2263
+ "removeRepresentative": "Quitar representante",
2264
+ "removeRepresentativeConfirm": "¿Quitar a {{email}} como representante? Ya no podrá actuar como este aprovisionador.",
2226
2265
  "contactEmailCoverage": {
2227
- "label": "__TODO__",
2228
- "loading": "__TODO__",
2229
- "verified": "__TODO__",
2230
- "unverified": "__TODO__",
2231
- "missing": "__TODO__",
2232
- "equalsLogin": "__TODO__",
2233
- "total": "__TODO__"
2266
+ "label": "Cobertura de correo de recuperación",
2267
+ "loading": "Cargando…",
2268
+ "verified": "verificado",
2269
+ "unverified": "pendiente",
2270
+ "missing": "faltante",
2271
+ "equalsLogin": "= id de inicio de sesión",
2272
+ "total": "de {{count}} usuarios"
2234
2273
  },
2235
2274
  "audit": {
2236
- "tabLabel": "__TODO__",
2237
- "title": "__TODO__",
2238
- "tournamentsLabel": "__TODO__",
2239
- "tournamentFilterPlaceholder": "__TODO__",
2240
- "deletedDrawsLabel": "__TODO__",
2241
- "selectTournament": "__TODO__",
2242
- "noTournaments": "__TODO__",
2243
- "tournamentName": "__TODO__",
2244
- "tournamentId": "__TODO__",
2245
- "startDate": "__TODO__",
2246
- "drawName": "__TODO__",
2247
- "eventId": "__TODO__",
2248
- "deletedAt": "__TODO__",
2249
- "deletedBy": "__TODO__",
2250
- "restore": "__TODO__",
2251
- "restoreTitle": "__TODO__",
2252
- "restorePrompt": "__TODO__",
2253
- "restoreSuccess": "__TODO__",
2254
- "restoreFailure": "__TODO__",
2255
- "calendarLoadError": "__TODO__",
2256
- "deletedDrawsLoadError": "__TODO__",
2257
- "providerLockedToActive": "__TODO__"
2275
+ "tabLabel": "Auditoría",
2276
+ "title": "Registro de auditoría de cuadros eliminados",
2277
+ "tournamentsLabel": "Torneos",
2278
+ "tournamentFilterPlaceholder": "Filtrar por nombre o id de torneo",
2279
+ "deletedDrawsLabel": "Cuadros eliminados",
2280
+ "selectTournament": "Selecciona un torneo para ver sus cuadros eliminados",
2281
+ "noTournaments": "No hay torneos para este proveedor",
2282
+ "tournamentName": "Torneo",
2283
+ "tournamentId": "ID de torneo",
2284
+ "startDate": "Fecha de inicio",
2285
+ "drawName": "Cuadro",
2286
+ "eventId": "Evento",
2287
+ "deletedAt": "Eliminado el",
2288
+ "deletedBy": "Eliminado por",
2289
+ "restore": "Restaurar",
2290
+ "restoreTitle": "Restaurar cuadro eliminado",
2291
+ "restorePrompt": "Al restaurar se reinsertará el cuadro con todos sus partidos, puntuaciones y asignaciones.",
2292
+ "restoreSuccess": "Cuadro restaurado",
2293
+ "restoreFailure": "Falló la restauración",
2294
+ "calendarLoadError": "No se pudo cargar el calendario",
2295
+ "deletedDrawsLoadError": "No se pudieron cargar los cuadros eliminados",
2296
+ "providerLockedToActive": "Bloqueado al proveedor activo en tu sesión. Detén la suplantación (o cambia de proveedor) para inspeccionar los cuadros eliminados de otro inquilino."
2258
2297
  }
2259
2298
  },
2260
2299
  "formatWizard": {
2261
- "title": "__TODO__",
2262
- "launch": "__TODO__",
2263
- "launcherSubtitle": "__TODO__",
2264
- "placeholder": "__TODO__",
2300
+ "title": "Asistente de formato",
2301
+ "launch": "Iniciar",
2302
+ "launcherSubtitle": "Sugiere formatos por nivel para el grupo de participantes",
2303
+ "placeholder": "Los resultados del plan aparecerán aquí a medida que ajustes las restricciones.",
2265
2304
  "fields": {
2266
- "scale": "__TODO__",
2267
- "courts": "__TODO__",
2268
- "days": "__TODO__",
2269
- "hoursPerDay": "__TODO__",
2270
- "targetMatchesPerPlayer": "__TODO__",
2271
- "targetCompetitivePct": "__TODO__",
2272
- "consolationAppetite": "__TODO__",
2273
- "voluntaryConsolation": "__TODO__",
2274
- "selectedEvent": "__TODO__"
2305
+ "scale": "Escala de valoración",
2306
+ "courts": "Canchas",
2307
+ "days": "Días",
2308
+ "hoursPerDay": "Horas por día",
2309
+ "targetMatchesPerPlayer": "Partidos por jugador objetivo",
2310
+ "targetCompetitivePct": "% competitivo objetivo (0–100)",
2311
+ "consolationAppetite": "Nivel de consolación",
2312
+ "voluntaryConsolation": "Incluir consolación voluntaria",
2313
+ "selectedEvent": "Aplicar al evento"
2275
2314
  },
2276
2315
  "appetite": {
2277
- "none": "__TODO__",
2278
- "light": "__TODO__",
2279
- "full": "__TODO__"
2316
+ "none": "Ninguna",
2317
+ "light": "Ligera (una ronda de consolación)",
2318
+ "full": "Completa (consolación en cascada)"
2280
2319
  },
2281
- "reset": "__TODO__",
2320
+ "reset": "Restablecer a valores predeterminados",
2282
2321
  "cues": {
2283
- "noVenues": "__TODO__",
2284
- "savedExceedsAvailable": "__TODO__",
2285
- "savedLessThanAvailable": "__TODO__",
2286
- "effectiveCourtCount": "__TODO__"
2322
+ "noVenues": "No hay canchas definidas — configura primero las sedes",
2323
+ "savedExceedsAvailable": "El asistente espera {{saved}} canchas pero el torneo tiene {{available}}",
2324
+ "savedLessThanAvailable": "El torneo tiene {{available}} canchas; el asistente está configurado para {{saved}}",
2325
+ "effectiveCourtCount": "En promedio {{effective}} canchas disponibles por día durante {{dayCount}} días"
2287
2326
  },
2288
2327
  "headers": {
2289
- "distribution": "__TODO__",
2290
- "plans": "__TODO__",
2291
- "consideration": "__TODO__"
2328
+ "distribution": "Distribución de valoraciones",
2329
+ "plans": "Planes sugeridos",
2330
+ "consideration": "En consideración"
2292
2331
  },
2293
2332
  "summary": {
2294
- "ratedOf": "__TODO__",
2295
- "noRatedParticipants": "__TODO__",
2296
- "loadTournament": "__TODO__",
2297
- "constraintsRequired": "__TODO__",
2298
- "allParticipants": "__TODO__"
2333
+ "ratedOf": "{{rated}} de {{total}} valorados en {{scale}}",
2334
+ "noRatedParticipants": "No hay participantes valorados en esta escala",
2335
+ "loadTournament": "Abre un torneo para poblar el asistente",
2336
+ "constraintsRequired": "Ajusta las restricciones para ver los planes",
2337
+ "allParticipants": "Todos los participantes"
2299
2338
  },
2300
2339
  "actions": {
2301
- "clearStale": "__TODO__"
2340
+ "clearStale": "Borrar consideraciones obsoletas"
2302
2341
  },
2303
2342
  "card": {
2304
- "matchesPerPlayer": "__TODO__",
2305
- "bandHeading": "__TODO__",
2306
- "bandHeading_plural": "__TODO__",
2307
- "bandTargetTag": "__TODO__",
2308
- "vcTag": "__TODO__",
2309
- "staleTag": "__TODO__",
2310
- "considerTag": "__TODO__",
2311
- "competitive": "__TODO__",
2312
- "courtHours": "__TODO__",
2313
- "score": "__TODO__",
2314
- "of": "__TODO__",
2315
- "matches": "__TODO__",
2316
- "flightCount": "__TODO__",
2317
- "flightCount_plural": "__TODO__"
2343
+ "matchesPerPlayer": "partidos/jugador",
2344
+ "bandHeading": "{{count}} partidos por jugador",
2345
+ "bandHeading_plural": "{{count}} partidos por jugador",
2346
+ "bandTargetTag": "objetivo",
2347
+ "vcTag": "+CV",
2348
+ "staleTag": "obsoleto",
2349
+ "considerTag": "considerar",
2350
+ "competitive": "competitivo",
2351
+ "courtHours": "horas-cancha",
2352
+ "score": "Puntuación",
2353
+ "of": "de",
2354
+ "matches": "{{count}} partidos",
2355
+ "flightCount": "{{count}} flight",
2356
+ "flightCount_plural": "{{count}} flights"
2318
2357
  },
2319
2358
  "warnings": {
2320
- "BELOW_FLOOR": "__TODO__",
2321
- "OVER_CAPACITY": "__TODO__",
2322
- "WITHDRAWAL_RISK": "__TODO__",
2323
- "MIXED_GENDER_VARIANT": "__TODO__",
2324
- "COLLAPSED_CATEGORY": "__TODO__"
2359
+ "BELOW_FLOOR": "Por debajo del objetivo",
2360
+ "OVER_CAPACITY": "Sobre la capacidad de canchas",
2361
+ "WITHDRAWAL_RISK": "Riesgo de retiro",
2362
+ "MIXED_GENDER_VARIANT": "Género mixto",
2363
+ "COLLAPSED_CATEGORY": "Categoría colapsada"
2325
2364
  },
2326
2365
  "apply": {
2327
- "button": "__TODO__",
2328
- "confirmTitle": "__TODO__",
2329
- "confirmBody": "__TODO__",
2330
- "confirmBodyUnsupported": "__TODO__",
2331
- "confirm": "__TODO__",
2332
- "success": "__TODO__",
2333
- "successPartial": "__TODO__",
2334
- "errorEvents": "__TODO__",
2335
- "errorEmpty": "__TODO__"
2366
+ "button": "Aplicar",
2367
+ "confirmTitle": "¿Aplicar este plan de formato?",
2368
+ "confirmBody": "Esto creará {{eventCount}} eventos con {{participantCount}} participantes inscritos.",
2369
+ "confirmBodyUnsupported": "{{unsupportedCount}} flight no se puede materializar automáticamente (estructura no admitida) y se omitirá.",
2370
+ "confirm": "Aplicar",
2371
+ "success": "Plan aplicado: {{eventCount}} eventos creados. Abre cada evento para generar su cuadro.",
2372
+ "successPartial": "Plan aplicado con flights omitidos — consulta el registro de avisos",
2373
+ "errorEvents": "No se pudieron crear eventos a partir del plan",
2374
+ "errorEmpty": "Nada que aplicar — todos los flights eran no admitidos o vacíos"
2336
2375
  }
2337
2376
  },
2338
2377
  "tabs": {
2339
- "info": "__TODO__",
2340
- "events": "__TODO__",
2341
- "schedule": "__TODO__",
2342
- "matches": "__TODO__",
2343
- "players": "__TODO__",
2344
- "stats": "__TODO__"
2378
+ "info": "Información",
2379
+ "events": "Eventos",
2380
+ "schedule": "Programación",
2381
+ "matches": "Partidos",
2382
+ "players": "Participantes",
2383
+ "stats": "Estadísticas"
2345
2384
  },
2346
2385
  "players": {
2347
- "name": "__TODO__",
2348
- "country": "__TODO__",
2349
- "cityState": "__TODO__",
2350
- "events": "__TODO__",
2351
- "rank": "__TODO__",
2352
- "noParticipants": "__TODO__",
2353
- "teamsHeading": "__TODO__",
2386
+ "name": "Nombre",
2387
+ "country": "País",
2388
+ "cityState": "Ciudad / Estado",
2389
+ "events": "Eventos",
2390
+ "rank": "Posición",
2391
+ "noParticipants": "Sin participantes",
2392
+ "teamsHeading": "Equipos",
2354
2393
  "teamCounts": {
2355
- "players_one": "__TODO__",
2356
- "players_other": "__TODO__",
2357
- "coaches_one": "__TODO__",
2358
- "coaches_other": "__TODO__",
2359
- "staff_one": "__TODO__",
2360
- "staff_other": "__TODO__"
2394
+ "players_one": "{{count}} jugador",
2395
+ "players_other": "{{count}} jugadores",
2396
+ "coaches_one": "{{count}} entrenador",
2397
+ "coaches_other": "{{count}} entrenadores",
2398
+ "staff_one": "{{count}} miembro del staff",
2399
+ "staff_other": "{{count}} miembros del staff"
2361
2400
  }
2362
2401
  },
2363
2402
  "display": {
2364
- "label": "__TODO__",
2365
- "columns": "__TODO__",
2366
- "draw": "__TODO__",
2367
- "tableView": "__TODO__",
2368
- "statistics": "__TODO__"
2403
+ "label": "Visualización",
2404
+ "columns": "Columnas",
2405
+ "draw": "Cuadro",
2406
+ "tableView": "Vista de tabla",
2407
+ "statistics": "Estadísticas"
2369
2408
  },
2370
2409
  "theme": {
2371
- "toggleDark": "__TODO__"
2410
+ "toggleDark": "Alternar modo oscuro"
2372
2411
  },
2373
2412
  "language": {
2374
- "select": "__TODO__"
2413
+ "select": "Seleccionar idioma"
2375
2414
  },
2376
2415
  "registrationProfile": {
2377
- "entry": "__TODO__",
2378
- "entriesOpen": "__TODO__",
2379
- "entriesClose": "__TODO__",
2380
- "withdrawalDeadline": "__TODO__",
2381
- "entryMethod": "__TODO__",
2382
- "entryUrl": "__TODO__",
2383
- "entryFee": "__TODO__",
2384
- "accommodation": "__TODO__",
2385
- "transportation": "__TODO__",
2386
- "hospitality": "__TODO__",
2387
- "medical": "__TODO__",
2388
- "ceremonies": "__TODO__",
2389
- "drawCeremony": "__TODO__",
2390
- "awardsCeremony": "__TODO__",
2391
- "regulations": "__TODO__",
2392
- "sponsors": "__TODO__",
2393
- "additional": "__TODO__",
2394
- "dressCode": "__TODO__",
2395
- "contingencyPlan": "__TODO__"
2416
+ "entry": "Inscripción y elegibilidad",
2417
+ "entriesOpen": "Apertura de inscripciones",
2418
+ "entriesClose": "Cierre de inscripciones",
2419
+ "withdrawalDeadline": "Fecha límite de retiro",
2420
+ "entryMethod": "Método de inscripción",
2421
+ "entryUrl": "URL de inscripción",
2422
+ "entryFee": "Cuota",
2423
+ "accommodation": "Alojamiento",
2424
+ "transportation": "Transporte",
2425
+ "hospitality": "Hospitalidad",
2426
+ "medical": "Información médica",
2427
+ "ceremonies": "Ceremonias y eventos sociales",
2428
+ "drawCeremony": "Ceremonia del sorteo",
2429
+ "awardsCeremony": "Ceremonia de premiación",
2430
+ "regulations": "Reglamento",
2431
+ "sponsors": "Patrocinadores",
2432
+ "additional": "Información adicional",
2433
+ "dressCode": "Código de vestimenta",
2434
+ "contingencyPlan": "Contingencia por clima"
2396
2435
  },
2397
2436
  "provisioner": {
2398
- "myProviders": "__TODO__",
2399
- "users": "__TODO__",
2400
- "noProviders": "__TODO__",
2401
- "noUsers": "__TODO__",
2402
- "createProvider": "__TODO__",
2403
- "createUser": "__TODO__",
2404
- "openInTmx": "__TODO__",
2405
- "providerNamePlaceholder": "__TODO__",
2406
- "providerAbbrPlaceholder": "__TODO__",
2407
- "providerCreated": "__TODO__",
2408
- "providerFieldsRequired": "__TODO__",
2409
- "userCreated": "__TODO__",
2410
- "userFieldsRequired": "__TODO__",
2411
- "selectProvider": "__TODO__",
2412
- "selectProviderFirst": "__TODO__"
2437
+ "myProviders": "Mis proveedores",
2438
+ "users": "Usuarios",
2439
+ "noProviders": "Aún no hay proveedores — crea uno para comenzar",
2440
+ "noUsers": "No hay usuarios para este proveedor",
2441
+ "createProvider": "Crear proveedor",
2442
+ "createUser": "Crear usuario",
2443
+ "openInTmx": "Abrir en TMX",
2444
+ "providerNamePlaceholder": "p. ej. IONSport Demos",
2445
+ "providerAbbrPlaceholder": "p. ej. IONDEMO",
2446
+ "providerCreated": "Proveedor creado",
2447
+ "providerFieldsRequired": "El nombre y la abreviatura son obligatorios",
2448
+ "userCreated": "Usuario creado",
2449
+ "userFieldsRequired": "El correo y el ID externo son obligatorios",
2450
+ "selectProvider": "Selecciona un proveedor…",
2451
+ "selectProviderFirst": "Selecciona primero un proveedor"
2413
2452
  },
2414
2453
  "manageAccess": {
2415
- "title": "__TODO__",
2416
- "tournament": "__TODO__",
2417
- "grantedAccess": "__TODO__",
2418
- "addUser": "__TODO__",
2419
- "emailPlaceholder": "__TODO__",
2420
- "grant": "__TODO__",
2421
- "revoke": "__TODO__",
2422
- "noAssignments": "__TODO__",
2423
- "loadError": "__TODO__",
2424
- "grantError": "__TODO__",
2425
- "revokeError": "__TODO__",
2426
- "granted": "__TODO__",
2427
- "revoked": "__TODO__"
2454
+ "title": "Gestionar acceso al torneo",
2455
+ "tournament": "Torneo",
2456
+ "grantedAccess": "Acceso concedido",
2457
+ "addUser": "Agregar usuario",
2458
+ "emailPlaceholder": "usuario@ejemplo.com",
2459
+ "grant": "Conceder",
2460
+ "revoke": "Revocar",
2461
+ "noAssignments": "Aún no se ha concedido acceso a ningún usuario.",
2462
+ "loadError": "No se pudieron cargar las asignaciones.",
2463
+ "grantError": "No se pudo conceder el acceso.",
2464
+ "revokeError": "No se pudo revocar el acceso.",
2465
+ "granted": "Acceso concedido a {{email}}",
2466
+ "revoked": "Acceso de {{email}} revocado"
2428
2467
  },
2429
2468
  "providerConfig": {
2430
- "editCapsButton": "__TODO__",
2431
- "editCapsTitle": "__TODO__",
2432
- "editCapsTitleGeneric": "__TODO__",
2433
- "editSettingsButton": "__TODO__",
2434
- "editSettingsTitle": "__TODO__",
2435
- "editSettingsTitleGeneric": "__TODO__",
2469
+ "editCapsButton": "Editar límites",
2470
+ "editCapsTitle": "Editar límites — {{name}}",
2471
+ "editCapsTitleGeneric": "Editar límites del proveedor",
2472
+ "editSettingsButton": "Editar ajustes",
2473
+ "editSettingsTitle": "Editar ajustes — {{name}}",
2474
+ "editSettingsTitleGeneric": "Editar ajustes del proveedor",
2436
2475
  "section": {
2437
- "branding": "__TODO__",
2438
- "permissionCeilings": "__TODO__",
2439
- "permissionChoices": "__TODO__",
2440
- "allowedUniverses": "__TODO__",
2441
- "allowedSelections": "__TODO__",
2442
- "policies": "__TODO__",
2443
- "defaults": "__TODO__",
2444
- "integrations": "__TODO__",
2445
- "privacy": "__TODO__",
2446
- "themeTokens": "__TODO__"
2476
+ "branding": "Marca (marca blanca)",
2477
+ "permissionCeilings": "Límites de permisos",
2478
+ "permissionChoices": "Permisos",
2479
+ "allowedUniverses": "Universos permitidos",
2480
+ "allowedSelections": "Selecciones permitidas",
2481
+ "policies": "Políticas",
2482
+ "defaults": "Valores predeterminados",
2483
+ "integrations": "Integraciones",
2484
+ "privacy": "Privacidad de participantes",
2485
+ "themeTokens": "Tokens de tema (variables CSS)"
2447
2486
  },
2448
2487
  "privacy": {
2449
- "settingsHint": "__TODO__",
2450
- "cityState": "__TODO__"
2488
+ "settingsHint": "Cada interruptor a continuación relaja la política de privacidad predeterminada para un atributo del participante. Déjalo en OFF (predeterminado) para mantener ese atributo privado.",
2489
+ "cityState": "Publicar Ciudad / Estado de los participantes"
2451
2490
  },
2452
2491
  "permissions": {
2453
- "ceilingHint": "__TODO__",
2454
- "choiceHint": "__TODO__",
2455
- "lockedByProvisioner": "__TODO__"
2492
+ "ceilingHint": "Cada permiso en OFF aquí quedará bloqueado para el proveedor — no podrá habilitarlo.",
2493
+ "choiceHint": "Deshabilita cualquier permiso que tus directores de torneo no deban ejecutar. Los permisos bloqueados por el aprovisionador aparecen atenuados.",
2494
+ "lockedByProvisioner": "Bloqueado por el aprovisionador — no se puede habilitar."
2456
2495
  },
2457
2496
  "allowed": {
2458
- "universeHint": "__TODO__",
2459
- "selectionHint": "__TODO__"
2497
+ "universeHint": "Lista separada por comas. Vacío significa sin restricción (todo permitido).",
2498
+ "selectionHint": "Selecciona qué opciones puede usar este proveedor. Ninguna seleccionada = todas permitidas.",
2499
+ "restrictedHint": "Elige dentro del conjunto permitido por tu aprovisionador. Ninguno seleccionado = todos estos.",
2500
+ "unrestrictedHint": "Ninguna seleccionada = todas permitidas. Selecciona para restringir."
2460
2501
  },
2461
2502
  "branding": {
2462
- "appName": "__TODO__",
2463
- "navbarLogoUrl": "__TODO__",
2464
- "navbarLogoAlt": "__TODO__",
2465
- "navbarLogoHeight": "__TODO__",
2466
- "splashLogoUrl": "__TODO__",
2467
- "accentColor": "__TODO__",
2468
- "stylesheetUrl": "__TODO__",
2469
- "preview": "__TODO__",
2470
- "uploadThemeAssets": "__TODO__",
2471
- "uploadNoFiles": "__TODO__",
2472
- "uploading": "__TODO__",
2473
- "uploadLinked": "__TODO__",
2474
- "uploadedNoCss": "__TODO__",
2475
- "uploadFailed": "__TODO__"
2503
+ "appName": "Nombre de la app",
2504
+ "navbarLogoUrl": "URL del logotipo de la barra de navegación",
2505
+ "navbarLogoAlt": "Texto alternativo del logotipo de la barra de navegación",
2506
+ "navbarLogoHeight": "Altura del logotipo de la barra de navegación (px)",
2507
+ "splashLogoUrl": "URL del logotipo de portada",
2508
+ "accentColor": "Color de acento (CSS)",
2509
+ "stylesheetUrl": "URL de la hoja de estilos del proveedor (opción avanzada)",
2510
+ "preview": "Vista previa en vivo (barra de navegación simulada)",
2511
+ "uploadThemeAssets": "Subir y vincular recursos del tema",
2512
+ "uploadNoFiles": "Elige primero un archivo .css (y cualquier fuente).",
2513
+ "uploading": "Subiendo…",
2514
+ "uploadLinked": "Se subieron {{count}} archivo(s); URL de hoja de estilos vinculada.",
2515
+ "uploadedNoCss": "Se subieron {{count}} archivo(s) — agrega un archivo .css para vincular la URL de la hoja de estilos.",
2516
+ "uploadFailed": "Falló la carga: {{reason}}"
2476
2517
  },
2477
2518
  "defaults": {
2478
- "defaultEventType": "__TODO__",
2479
- "defaultDrawType": "__TODO__",
2480
- "defaultCreationMethod": "__TODO__",
2481
- "defaultGender": "__TODO__"
2519
+ "defaultEventType": "Tipo de evento predeterminado",
2520
+ "defaultDrawType": "Tipo de cuadro predeterminado",
2521
+ "defaultCreationMethod": "Método de creación predeterminado",
2522
+ "defaultGender": "Género predeterminado"
2482
2523
  },
2483
2524
  "policies": {
2484
- "schedulingPolicy": "__TODO__",
2485
- "scoringPolicy": "__TODO__",
2486
- "seedingPolicy": "__TODO__",
2487
- "policyJsonPlaceholder": "__TODO__",
2488
- "invalidJson": "__TODO__"
2489
- },
2490
- "capsSaved": "__TODO__",
2491
- "settingsSaved": "__TODO__",
2492
- "invalid": "__TODO__",
2493
- "saveFailed": "__TODO__",
2494
- "loadCapsForGating": "__TODO__",
2525
+ "schedulingPolicy": "Política de programación (JSON)",
2526
+ "scoringPolicy": "Política de puntuación (JSON)",
2527
+ "seedingPolicy": "Política de siembra (JSON)",
2528
+ "policyJsonPlaceholder": "{ ... }",
2529
+ "invalidJson": "JSON no válido"
2530
+ },
2531
+ "capsSaved": "Límites guardados",
2532
+ "settingsSaved": "Ajustes guardados",
2533
+ "invalid": "La validación falló — consulta los errores de campo a continuación",
2534
+ "saveFailed": "Falló el guardado",
2535
+ "loadCapsForGating": "Cargando límites para determinar qué campos están bloqueados...",
2495
2536
  "themeTokens": {
2496
- "label": "__TODO__",
2497
- "hint": "__TODO__",
2498
- "preset": "__TODO__",
2499
- "chooseAPreset": "__TODO__",
2500
- "add": "__TODO__",
2501
- "remove": "__TODO__",
2502
- "invalidPrefix": "__TODO__"
2537
+ "label": "Anulaciones personalizadas de variables CSS",
2538
+ "hint": "Los nombres de token deben empezar con --tmx- o --chc-. Los valores son cadenas CSS de color / longitud / fuente. Se aplican al arranque y al cambiar de proveedor.",
2539
+ "preset": "Preajuste",
2540
+ "chooseAPreset": "Elige un preajuste…",
2541
+ "add": "+ Agregar token",
2542
+ "remove": "Quitar",
2543
+ "invalidPrefix": "El nombre del token debe empezar con --tmx- o --chc-"
2503
2544
  }
2504
2545
  },
2505
2546
  "banners": {
2506
2547
  "contactEmail": {
2507
- "missing": "__TODO__",
2508
- "pending": "__TODO__",
2509
- "setUp": "__TODO__",
2510
- "review": "__TODO__"
2548
+ "missing": "Configura un correo de contacto para poder recuperar tu contraseña por correo.",
2549
+ "pending": "Verifica {{email}} para poder recuperar tu contraseña por correo.",
2550
+ "setUp": "Configurar correo",
2551
+ "review": "Revisar"
2511
2552
  }
2512
2553
  },
2513
2554
  "verifyEmail": {
2514
- "title": "__TODO__",
2515
- "intro": "__TODO__",
2516
- "verifyButton": "__TODO__",
2517
- "verifying": "__TODO__",
2518
- "success": "__TODO__",
2519
- "successPlain": "__TODO__",
2520
- "missingToken": "__TODO__",
2521
- "tokenExpired": "__TODO__",
2522
- "tokenMismatch": "__TODO__",
2523
- "tryAgain": "__TODO__",
2524
- "failed": "__TODO__",
2525
- "verifiedRedirect": "__TODO__",
2526
- "verifiedSignIn": "__TODO__",
2527
- "invalidOrExpired": "__TODO__"
2555
+ "title": "Verifica tu correo",
2556
+ "intro": "Haz clic en el botón de abajo para confirmar que este correo es tuyo.",
2557
+ "verifyButton": "Verificar correo",
2558
+ "verifying": "Verificando…",
2559
+ "success": "Verificado ✓ — ahora puedes recibir correos de recuperación de contraseña en {{email}}. Puedes cerrar esta pestaña.",
2560
+ "successPlain": "Verificado ✓. Puedes cerrar esta pestaña.",
2561
+ "missingToken": "A este enlace de verificación le falta su token. Intenta hacer clic de nuevo en el enlace de tu correo, o solicita uno nuevo desde los ajustes de correo de contacto.",
2562
+ "tokenExpired": "Este enlace de verificación ha caducado. Solicita uno nuevo desde los ajustes de tu correo de contacto.",
2563
+ "tokenMismatch": "Este enlace ya no coincide con tu correo de contacto actual — probablemente fue reemplazado por un cambio más reciente.",
2564
+ "tryAgain": "Intentar de nuevo",
2565
+ "failed": "Falló la verificación. Intenta solicitar un nuevo enlace.",
2566
+ "verifiedRedirect": "Tu correo está verificado. Llevándote a Mi CourtHive…",
2567
+ "verifiedSignIn": "Tu correo está verificado. Ahora puedes iniciar sesión.",
2568
+ "invalidOrExpired": "Este enlace de verificación no es válido o ha caducado. Inicia sesión en Mi CourtHive para solicitar uno nuevo."
2528
2569
  },
2529
2570
  "resetPassword": {
2530
- "title": "__TODO__",
2531
- "intro": "__TODO__",
2532
- "newPasswordPlaceholder": "__TODO__",
2533
- "confirmPlaceholder": "__TODO__",
2534
- "submit": "__TODO__",
2535
- "submitting": "__TODO__",
2536
- "success": "__TODO__",
2537
- "missingToken": "__TODO__",
2538
- "tokenExpired": "__TODO__",
2539
- "tokenMismatch": "__TODO__",
2540
- "failed": "__TODO__"
2571
+ "title": "Establece una nueva contraseña",
2572
+ "intro": "Elige una nueva contraseña para tu cuenta de CourtHive. El enlace de tu correo es de un solo uso.",
2573
+ "newPasswordPlaceholder": "Nueva contraseña (al menos 8 caracteres)",
2574
+ "confirmPlaceholder": "Confirmar nueva contraseña",
2575
+ "submit": "Establecer nueva contraseña",
2576
+ "submitting": "Estableciendo…",
2577
+ "success": "Tu contraseña se cambió. Redirigiendo al inicio de sesión…",
2578
+ "missingToken": "A este enlace de restablecimiento le falta su token. Intenta hacer clic de nuevo en el enlace de tu correo, o solicita uno nuevo.",
2579
+ "tokenExpired": "Este enlace de restablecimiento ha caducado. Solicita uno nuevo desde el enlace «¿Olvidaste tu contraseña?» de la pantalla de inicio de sesión.",
2580
+ "tokenMismatch": "Este enlace ya no coincide con tu correo de contacto actual — solicita uno nuevo.",
2581
+ "failed": "No se pudo restablecer tu contraseña. Intenta solicitar un nuevo enlace."
2541
2582
  },
2542
2583
  "noAccess": {
2543
- "title": "__TODO__",
2544
- "message": "__TODO__",
2545
- "logOut": "__TODO__"
2584
+ "title": "Sin acceso de administración",
2585
+ "message": "Tu cuenta no tiene acceso a la consola de administración. Si gestionas un torneo, usa la app TMX en su lugar. Contacta al administrador de tu proveedor si crees que esto es un error.",
2586
+ "logOut": "Cerrar sesión"
2546
2587
  },
2547
2588
  "admin": {
2548
- "abbreviation": "__TODO__",
2549
- "providerId": "__TODO__",
2550
- "impersonating": "__TODO__",
2551
- "tournaments": "__TODO__",
2552
- "noTournaments": "__TODO__",
2553
- "tournamentName": "__TODO__",
2554
- "startDate": "__TODO__",
2555
- "endDate": "__TODO__",
2556
- "calendarLoadError": "__TODO__",
2557
- "policyDefinitions": "__TODO__",
2558
- "policyEditorComingSoon": "__TODO__",
2559
- "quickActions": "__TODO__",
2560
- "manageProviders": "__TODO__",
2561
- "manageUsers": "__TODO__",
2562
- "backToSystem": "__TODO__",
2563
- "noProviderSelected": "__TODO__",
2564
- "selectProviderHint": "__TODO__",
2565
- "dashboard": "__TODO__",
2566
- "providerDashboardComingSoon": "__TODO__",
2567
- "runAudit": "__TODO__",
2568
- "auditClean": "__TODO__",
2569
- "auditWarning": "__TODO__",
2570
- "auditError": "__TODO__",
2571
- "tournamentDetail": "__TODO__",
2572
- "selectTournament": "__TODO__",
2573
- "loadingTournament": "__TODO__",
2574
- "tournamentNotFound": "__TODO__",
2575
- "tournamentLoadError": "__TODO__",
2576
- "tournamentMissingFromStorage": "__TODO__",
2577
- "participants": "__TODO__",
2578
- "venues": "__TODO__",
2579
- "event": "__TODO__",
2580
- "type": "__TODO__",
2581
- "entries": "__TODO__",
2582
- "draws": "__TODO__",
2583
- "noEvents": "__TODO__",
2589
+ "abbreviation": "Abreviatura",
2590
+ "providerId": "ID de proveedor",
2591
+ "impersonating": "Suplantando a este proveedor",
2592
+ "tournaments": "Torneos",
2593
+ "noTournaments": "No se encontraron torneos",
2594
+ "tournamentName": "Torneo",
2595
+ "startDate": "Inicio",
2596
+ "endDate": "Fin",
2597
+ "calendarLoadError": "No se pudo cargar el calendario",
2598
+ "policyDefinitions": "Definiciones de políticas",
2599
+ "policyEditorComingSoon": "Editor de políticas próximamente.",
2600
+ "quickActions": "Acciones rápidas",
2601
+ "manageProviders": "Gestionar proveedores",
2602
+ "manageUsers": "Gestionar usuarios",
2603
+ "backToSystem": "Volver a Sistema",
2604
+ "noProviderSelected": "Ningún proveedor seleccionado",
2605
+ "selectProviderHint": "Selecciona un proveedor en la página de Sistema para ver su panel de administración.",
2606
+ "dashboard": "Panel",
2607
+ "providerDashboardComingSoon": "Panel del proveedor próximamente.",
2608
+ "runAudit": "Ejecutar auditoría",
2609
+ "auditClean": "Las {{total}} entradas del calendario verificadas en almacenamiento",
2610
+ "auditWarning": "{{missing}} de {{total}} entradas del calendario faltan en almacenamiento",
2611
+ "auditError": "Falló la auditoría del calendario",
2612
+ "tournamentDetail": "Detalle del torneo",
2613
+ "selectTournament": "Selecciona un torneo del calendario para ver los detalles.",
2614
+ "loadingTournament": "Cargando información del torneo...",
2615
+ "tournamentNotFound": "Información del torneo no disponible.",
2616
+ "tournamentLoadError": "No se pudo cargar la información del torneo.",
2617
+ "tournamentMissingFromStorage": "Este torneo existe en el calendario pero no en almacenamiento.",
2618
+ "participants": "Participantes",
2619
+ "venues": "Sedes",
2620
+ "event": "Evento",
2621
+ "type": "Tipo",
2622
+ "entries": "Inscripciones",
2623
+ "draws": "Cuadros",
2624
+ "noEvents": "Sin eventos",
2584
2625
  "providerDashboard": {
2585
- "loading": "__TODO__",
2586
- "loadError": "__TODO__",
2626
+ "loading": "Cargando panel…",
2627
+ "loadError": "No se pudo cargar la configuración del proveedor.",
2587
2628
  "brand": {
2588
- "title": "__TODO__",
2589
- "editTheme": "__TODO__",
2590
- "logoAlt": "__TODO__",
2591
- "unnamed": "__TODO__",
2592
- "noBrand": "__TODO__",
2593
- "themeTokens": "__TODO__"
2629
+ "title": "Marca e identidad",
2630
+ "editTheme": "Editar tema",
2631
+ "logoAlt": "Logotipo del proveedor",
2632
+ "unnamed": "Proveedor sin nombre",
2633
+ "noBrand": "Aún no hay colores de marca definidos",
2634
+ "themeTokens": "{{count}} anulación(es) de token de tema"
2594
2635
  },
2595
2636
  "checklist": {
2596
- "title": "__TODO__",
2597
- "progress": "__TODO__",
2598
- "appName": "__TODO__",
2599
- "brand": "__TODO__",
2600
- "logo": "__TODO__",
2601
- "privacy": "__TODO__"
2637
+ "title": "Primeros pasos",
2638
+ "progress": "{{done}} de {{total}} completado",
2639
+ "appName": "Define tu nombre para mostrar",
2640
+ "brand": "Define los colores de tu marca",
2641
+ "logo": "Sube un logotipo",
2642
+ "privacy": "Configura la privacidad de los participantes"
2602
2643
  },
2603
2644
  "config": {
2604
- "title": "__TODO__",
2605
- "editSettings": "__TODO__",
2606
- "permissions": "__TODO__",
2607
- "policies": "__TODO__",
2608
- "privacy": "__TODO__",
2609
- "scoringApp": "__TODO__",
2610
- "none": "__TODO__"
2645
+ "title": "Configuración de un vistazo",
2646
+ "editSettings": "Editar ajustes",
2647
+ "permissions": "{{count}} permiso(s) habilitado(s)",
2648
+ "policies": "{{count}} conjunto(s) de políticas configurado(s)",
2649
+ "privacy": "{{count}} campo(s) de privacidad publicado(s)",
2650
+ "scoringApp": "App de puntuación: {{app}}",
2651
+ "none": "Usando valores predeterminados de la plataforma"
2611
2652
  },
2612
2653
  "tournaments": {
2613
- "title": "__TODO__",
2614
- "total": "__TODO__",
2615
- "upcoming": "__TODO__",
2616
- "live": "__TODO__",
2617
- "completed": "__TODO__",
2618
- "none": "__TODO__",
2619
- "loadError": "__TODO__"
2654
+ "title": "Torneos",
2655
+ "total": "Total",
2656
+ "upcoming": "Próximos",
2657
+ "live": "En curso",
2658
+ "completed": "Completado",
2659
+ "none": "Aún no hay torneos",
2660
+ "loadError": "No se pudieron cargar los torneos",
2661
+ "openInTmx": "Abrir en TMX"
2620
2662
  },
2621
2663
  "activity": {
2622
- "title": "__TODO__"
2664
+ "title": "Actividad por año"
2665
+ },
2666
+ "rankings": {
2667
+ "title": "Rankings",
2668
+ "launch": "Abrir página de rankings",
2669
+ "configure": "Configurar política de ranking",
2670
+ "recompute": "Recalcular rankings",
2671
+ "recomputing": "Recalculando rankings…",
2672
+ "policySet": "Hay una política de puntos de ranking configurada. Recalcula para actualizar los puntos en todos los torneos y regenerar las instantáneas de ranking.",
2673
+ "policyUnsetHint": "Selecciona primero una política de puntos de ranking para habilitar el recálculo.",
2674
+ "pipelineOff": "El pipeline de rankings no está configurado en el servidor (RANKINGS_PIPELINE_URL). No se recalculó nada.",
2675
+ "failed": "No se pudieron recalcular los rankings.",
2676
+ "result": "Recalculados {{republished}}/{{tournaments}} torneos; generada(s) {{snapshots}} instantánea(s).",
2677
+ "unprocessed": "__TODO__",
2678
+ "unprocessedRunning": "__TODO__",
2679
+ "fromDateLabel": "__TODO__",
2680
+ "fromDateRequired": "__TODO__",
2681
+ "rerunFromDate": "__TODO__",
2682
+ "rerunRunning": "__TODO__",
2683
+ "bulkNone": "__TODO__"
2623
2684
  }
2624
- }
2685
+ },
2686
+ "notLoggedInTitle": "No has iniciado sesión",
2687
+ "notLoggedInHint": "Inicia sesión para ver el panel de tu proveedor.",
2688
+ "logIn": "Iniciar sesión"
2625
2689
  },
2626
2690
  "ams": {
2627
- "officials": "__TODO__",
2628
- "rosters": "__TODO__",
2629
- "membership": "__TODO__",
2630
- "sanctioning": "__TODO__",
2631
- "conferences": "__TODO__",
2632
- "sids": "__TODO__",
2633
- "seamPlaceholder": "__TODO__"
2691
+ "officials": "Oficiales",
2692
+ "rosters": "Plantillas",
2693
+ "membership": "Membresía",
2694
+ "sanctioning": "Sanción",
2695
+ "conferences": "Conferencias",
2696
+ "sids": "Herramientas SID",
2697
+ "seamPlaceholder": "Próximamente — creado por WS-14–16."
2634
2698
  },
2635
2699
  "console": {
2636
- "title": "__TODO__",
2637
- "amsSection": "__TODO__",
2638
- "platformSection": "__TODO__"
2700
+ "title": "Consola de CourtHive",
2701
+ "amsSection": "Gestión de asociados",
2702
+ "platformSection": "Administración de la plataforma"
2639
2703
  },
2640
- "recoveryEmail": "__TODO__",
2641
- "recoveryEmailHelp": "__TODO__",
2642
- "verified": "__TODO__",
2643
- "unverified": "__TODO__",
2644
- "sendVerification": "__TODO__",
2645
- "verificationSent": "__TODO__",
2646
- "alreadyVerified": "__TODO__",
2647
- "noRecoveryEmail": "__TODO__",
2704
+ "recoveryEmail": "Correo de recuperación",
2705
+ "recoveryEmailHelp": "Buzón real para la recuperación de contraseña. Distinto del correo de inicio de sesión anterior.",
2706
+ "verified": "Verificado",
2707
+ "unverified": "Sin verificar",
2708
+ "sendVerification": "Enviar verificación",
2709
+ "verificationSent": "Correo de verificación enviado",
2710
+ "alreadyVerified": "El correo de recuperación ya está verificado",
2711
+ "noRecoveryEmail": "No hay correo de recuperación definido",
2648
2712
  "timepicker": {
2649
- "am": "__TODO__",
2650
- "pm": "__TODO__",
2651
- "selectTime": "__TODO__",
2652
- "enterTime": "__TODO__",
2653
- "hour": "__TODO__",
2654
- "minute": "__TODO__",
2655
- "clear": "__TODO__"
2713
+ "am": "AM",
2714
+ "pm": "PM",
2715
+ "selectTime": "Seleccionar hora",
2716
+ "enterTime": "Ingresar hora",
2717
+ "hour": "Hora",
2718
+ "minute": "Minuto",
2719
+ "clear": "Borrar"
2656
2720
  },
2657
2721
  "onboarding": {
2658
- "title": "__TODO__",
2659
- "yourProvider": "__TODO__",
2660
- "intro": "__TODO__",
2661
- "allDone": "__TODO__",
2662
- "setUp": "__TODO__",
2663
- "getStarted": "__TODO__",
2664
- "skipForNow": "__TODO__",
2665
- "finish": "__TODO__"
2722
+ "title": "Bienvenido — configuremos {{name}}",
2723
+ "yourProvider": "tu proveedor",
2724
+ "intro": "Quedan {{count}} paso(s) para terminar la configuración. Puedes omitir cualquiera de ellos y volver más tarde.",
2725
+ "allDone": "Todo listo. 🎉",
2726
+ "setUp": "Configurar",
2727
+ "getStarted": "Comenzar",
2728
+ "skipForNow": "Omitir por ahora",
2729
+ "finish": "Finalizar"
2666
2730
  },
2667
2731
  "me": {
2668
2732
  "verification": {
2669
- "title": "__TODO__",
2670
- "checking": "__TODO__",
2671
- "signInToManage": "__TODO__",
2672
- "yourEmail": "__TODO__",
2673
- "verified": "__TODO__",
2674
- "notVerified": "__TODO__",
2675
- "resend": "__TODO__",
2676
- "sent": "__TODO__",
2677
- "sendFailed": "__TODO__"
2733
+ "title": "Verificación de correo",
2734
+ "checking": "Comprobando…",
2735
+ "signInToManage": "Inicia sesión para gestionar la verificación de correo.",
2736
+ "yourEmail": "tu correo",
2737
+ "verified": "✓ {{email}} está verificado.",
2738
+ "notVerified": "{{email}} aún no está verificado. Verifícalo para ser elegible como anotador oficial.",
2739
+ "resend": "Reenviar correo de verificación",
2740
+ "sent": "Correo de verificación enviado — revisa tu bandeja de entrada.",
2741
+ "sendFailed": "No se pudo enviar el correo. Inténtalo de nuevo más tarde."
2678
2742
  }
2679
2743
  },
2680
2744
  "crowd": {
2681
- "trackers": "__TODO__",
2682
- "trackersFor": "__TODO__",
2683
- "loading": "__TODO__",
2684
- "close": "__TODO__",
2685
- "cancel": "__TODO__",
2686
- "promote": "__TODO__",
2687
- "demote": "__TODO__",
2688
- "noActiveTrackers": "__TODO__",
2689
- "activeTrackers_one": "__TODO__",
2690
- "activeTrackers_other": "__TODO__",
2691
- "viewTrackers": "__TODO__",
2692
- "setDelegatedOutcome": "__TODO__",
2693
- "confirmDelegatedOutcome": "__TODO__",
2745
+ "trackers": "Rastreadores del público",
2746
+ "trackersFor": "Rastreadores del público — {{label}}",
2747
+ "loading": "Cargando…",
2748
+ "close": "Cerrar",
2749
+ "cancel": "Cancelar",
2750
+ "promote": "Promover",
2751
+ "demote": "Degradar",
2752
+ "noActiveTrackers": "No hay rastreadores del público activos",
2753
+ "activeTrackers_one": "{{count}} rastreador activo",
2754
+ "activeTrackers_other": "{{count}} rastreadores activos",
2755
+ "viewTrackers": "Ver rastreadores del público ({{count}})",
2756
+ "setDelegatedOutcome": "Establecer resultado delegado",
2757
+ "confirmDelegatedOutcome": "Confirmar resultado delegado",
2694
2758
  "badge": {
2695
- "official": "__TODO__",
2696
- "participant": "__TODO__",
2697
- "crowd": "__TODO__",
2698
- "anon": "__TODO__",
2699
- "verified": "__TODO__",
2700
- "nominated": "__TODO__"
2759
+ "official": "OFICIAL",
2760
+ "participant": "PARTICIPANTE",
2761
+ "crowd": "PÚBLICO",
2762
+ "anon": "ANÓN",
2763
+ "verified": "VERIFICADO",
2764
+ "nominated": "NOMINADO"
2701
2765
  },
2702
2766
  "reason": {
2703
- "signInRequired": "__TODO__",
2704
- "emailNotVerified": "__TODO__"
2767
+ "signInRequired": "Se requiere iniciar sesión para ser nominado",
2768
+ "emailNotVerified": "Correo no verificado — no puede ser nominado"
2705
2769
  },
2706
2770
  "toast": {
2707
- "nominateFirst": "__TODO__",
2708
- "noOutcomeToConfirm": "__TODO__"
2771
+ "nominateFirst": "Nomina a un anotador verificado antes de establecer un resultado delegado.",
2772
+ "noOutcomeToConfirm": "No hay resultado delegado que confirmar en este partido."
2709
2773
  },
2710
2774
  "tooltip": {
2711
- "liveTracker": "__TODO__",
2712
- "unconfirmed": "__TODO__",
2713
- "unconfirmedAria": "__TODO__"
2775
+ "liveTracker": "Puntuación reportada mediante rastreador en vivo",
2776
+ "unconfirmed": "Puntuación delegada sin confirmar — confirma para hacerla oficial",
2777
+ "unconfirmedAria": "Puntuación delegada sin confirmar a la espera de confirmación"
2714
2778
  }
2779
+ },
2780
+ "providerSetup": {
2781
+ "wizardTitle": "Configura tu proveedor",
2782
+ "progress": "Paso {{current}} de {{total}}",
2783
+ "back": "Atrás",
2784
+ "skip": "Omitir",
2785
+ "next": "Siguiente",
2786
+ "finish": "Finalizar",
2787
+ "identity": {
2788
+ "title": "Marca e identidad",
2789
+ "intro": "Configuremos cómo aparece tu organización en la plataforma. Recorreremos unos pasos rápidos — puedes omitir cualquiera y cambiarlos más tarde."
2790
+ },
2791
+ "displayName": {
2792
+ "title": "Define tu nombre para mostrar",
2793
+ "intro": "El nombre que se muestra en la barra de navegación y los títulos de página en lugar de «TMX»."
2794
+ },
2795
+ "brandColors": {
2796
+ "title": "Define los colores de tu marca",
2797
+ "intro": "Elige los colores de tu marca a continuación — cada uno actualiza las partes correspondientes de la app. Para control total, usa Avanzado.",
2798
+ "advanced": "Avanzado — anulaciones de tokens sin procesar y archivo de tema",
2799
+ "downloadTemplate": "Descargar plantilla de tema (.css)"
2800
+ },
2801
+ "logo": {
2802
+ "title": "Sube un logotipo",
2803
+ "intro": "Pega una URL de imagen o sube un PNG/JPG/WebP/GIF para tus logotipos de barra de navegación y portada."
2804
+ },
2805
+ "privacy": {
2806
+ "title": "Configura la privacidad de los participantes",
2807
+ "intro": "Elige qué datos de los participantes se publican. Todo está en privado por defecto."
2808
+ }
2809
+ },
2810
+ "providerPolicies": {
2811
+ "title": "Políticas",
2812
+ "intro": "Selecciona una política para cada tipo desde tu catálogo de políticas. Crea o edita políticas en la página de Políticas.",
2813
+ "rankingPoints": "Política de puntos de ranking",
2814
+ "privacy": "Política de privacidad de participantes",
2815
+ "keepCurrent": "— mantener actual —",
2816
+ "none": "— ninguna —",
2817
+ "clear": "— borrar —",
2818
+ "manage": "Gestionar políticas",
2819
+ "privacyApplyExisting": "Aplicar a torneos existentes",
2820
+ "privacyIncludeInProgress": "Aplicar también a torneos en curso",
2821
+ "privacySaveFirst": "Guarda primero tu cambio de política de privacidad y luego aplícalo a los torneos existentes.",
2822
+ "privacyNoPolicy": "Selecciona y guarda primero una política de privacidad de participantes.",
2823
+ "privacyApplyFailed": "No se pudo aplicar la política de privacidad a los torneos existentes.",
2824
+ "privacyApplyResult": "Política de privacidad aplicada a {{attached}} torneo(s); {{already}} ya la tenían; {{failed}} fallaron."
2825
+ },
2826
+ "cns": "Consola",
2827
+ "session": {
2828
+ "expiredMessage": "__TODO__",
2829
+ "logInAgain": "__TODO__"
2715
2830
  }
2716
2831
  }