Files
gudari/app/src/main/java/com/bitcointxoko/gudariwallet/i18n/EsStrings.kt
T

312 lines
20 KiB
Kotlin
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
package com.bitcointxoko.gudariwallet.i18n
import cafe.adriel.lyricist.LyricistStrings
@LyricistStrings(languageTag = "es")
val EsHomeStrings = AppStrings(
// ── WalletScreen ──────────────────────────────────────────────────────────
tabReceive = "Recibir",
tabSend = "Enviar",
scanContentDescription = "Escanear",
dismissContentDescription = "Cerrar",
clipboardInvoiceDetected = "Factura detectada en el portapapeles",
clipboardLnurlDetected = "LNURL detectado en el portapapeles",
clipboardAddressDetected = "Dirección Lightning detectada en el portapapeles",
clipboardPaymentDetected = "Pago detectado en el portapapeles",
clipboardTapToOpen = "Toca para abrir",
clipboardTapToPay = "Toca para pagar",
nfcInvoiceDetected = "Factura detectada por NFC",
nfcLnurlDetected = "LNURL detectado por NFC",
nfcAddressDetected = "Dirección Lightning detectada por NFC",
nfcPaymentDetected = "Pago detectado por NFC",
nfcTapToOpen = "Toca para abrir",
nfcTapToPay = "Toca para pagar",
// ── HomeTab ───────────────────────────────────────────────────────────────
loadingBalance = "Cargando saldo…",
sats = "sats",
hideBalance = "Ocultar saldo",
revealBalance = "Mostrar saldo",
changeCurrency = "Cambiar moneda",
showFiat = "+ Mostrar fiat",
updatedAt = { label -> "Actualizado $label" },
justNow = "justo ahora",
minAgo = {min -> "hace $min min"},
atTime = {time -> "a las $time"},
viewHistory = "Ver historial",
selectCurrency = "Seleccionar moneda",
currencyNone = "Ninguna",
hideFiatEquivalent = "Ocultar equivalente fiat",
selected = "Seleccionado",
search = "Buscar…",
noCurrenciesAvailable = "No hay monedas disponibles",
noCurrenciesMatch = { query -> "Ninguna moneda coincide con \"$query\"" },
couldNotRefresh = "No se pudo actualizar — desliza hacia abajo para reintentar",
couldNotLoadBalance = "No se pudo cargar el saldo — desliza hacia abajo para reintentar",
// ── Shared ────────────────────────────────────────────────────────────────
cancel = "Cancelar",
tryAgain = "Reintentar",
amount = "Cantidad",
next = "Siguiente",
back = "← Atrás",
done = "Hecho",
details = "Detalles",
enterValidAmount = "Introduce una cantidad válida",
satsUnit = { sats -> "$sats sats" },
// ── ReceiveScreen — general ───────────────────────────────────────────────
receive = "Recibir",
// ── ReceiveScreen — error ─────────────────────────────────────────────────
receiveError = "Error",
// ── ReceiveScreen — QR / share ────────────────────────────────────────────
lightningAddressQrCode = "Código QR de dirección Lightning",
lightningAddressLabel = "Dirección Lightning",
shareLightningAddress = "Compartir dirección Lightning",
lightningInvoiceQrCode = "Código QR de factura Lightning",
invoiceLabel = "Factura",
shareInvoice = "Compartir factura",
// ── ReceiveScreen — amount step ───────────────────────────────────────────
amountInSats = "Cantidad (sats)",
satsRange = { min, max -> "$min $max sats" },
// ── ReceiveScreen — memo step ─────────────────────────────────────────────
memoOptional = "Nota (opcional)",
memoPlaceholder = "¿Para qué es esto?",
creatingInvoice = "Creando factura…",
createInvoice = "Crear factura",
// ── ReceiveScreen — invoice ready ─────────────────────────────────────────
waiting = "Esperando…",
invoiceExpired = "Factura expirada",
newInvoice = "Nueva factura",
// ── ReceiveScreen — lnurl withdraw ────────────────────────────────────────
withdrawFrom = "Retirar de",
minimumSats = { min -> "Mínimo es $min sats" },
maximumSats = { max -> "Máximo es $max sats" },
withdrawButton = "Retirar",
withdrawButtonAmount = { amount -> "Retirar $amount sats" },
// ── ReceiveScreen — success ───────────────────────────────────────────────
paymentReceived = "¡Pago recibido!",
// ── AmountDisplay ─────────────────────────────────────────────────────────
amountDisplaySats = { amount -> "$amount ${if (amount == 1L) "sat" else "sats"}" },
// ── BrightnessToggleButton & QrDisplayCard ────────────────────────────────
brightnessReduce = "Reducir brillo",
brightnessBoost = "Aumentar brillo",
qrShare = "Compartir",
qrCopy = "Copiar",
qrNfcStop = "Detener NFC",
qrNfcStart = "Compartir por NFC",
// ── ReceiveViewModel ──────────────────────────────────────────────────────
receiveVmFailedToCreateInvoice = "No se pudo crear la factura",
receiveVmWithdrawRejected = "El servicio de retiro rechazó la factura",
receiveVmWithdrawFailed = "Error al retirar",
// ── SendScreen — general ──────────────────────────────────────────────────
send = "Enviar",
paste = "Pegar",
continueButton = "Continuar",
clear = "Limpiar",
sendAnother = "Enviar otro",
// ── SendScreen — input field ──────────────────────────────────────────────
sendInputLabel = "Factura, LNURL o dirección Lightning",
sendInputPlaceholder = "lnbc… / lnurl1… / usuario@dominio.com",
tapNfcHint = "Acerca un dispositivo NFC para recibir la factura",
// ── SendScreen — states ───────────────────────────────────────────────────
resolving = "Resolviendo…",
sendingPayment = "Enviando pago…",
// ── SendScreen — payment sent ─────────────────────────────────────────────
paymentSent = "¡Pago enviado!",
amountSats = { sats -> "$sats sats" },
fiatEquivalent = { fiatStr -> "$fiatStr" },
noFees = "Sin comisiones",
routingFee = { sats, ppmSuffix -> "Comisión de enrutamiento: $sats sat${if (sats == 1L) "" else "s"}$ppmSuffix" },
// ── ConfirmCard ───────────────────────────────────────────────────────────
invoiceDetails = "Detalles de la factura",
payingTo = { label -> "Pagando a $label" },
confirmAmount = { sats -> "$sats sats" },
confirmAmountWithFiat = { sats, fiat -> "$sats sats · $fiat" },
memo = "Nota",
destination = "Destino",
created = "Creado",
expiresIn = "Expira en",
hash = "Hash",
invoice = "Factura",
expiryExpired = "Expirado",
expirySeconds = { s -> "${s}s" },
expiryMinutes = { m, s -> "${m}m ${s}s" },
expiryHours = { h, m -> "${h}h ${m}m" },
createdToday = { time -> "Hoy, $time" },
createdYesterday = { time -> "Ayer, $time" },
payButton = { sats -> "Pagar $sats sats" },
payButtonWithFiat = { sats, fiat -> "Pagar $sats sats · $fiat" },
sendBiometricPrompt = { sats -> "Enviar $sats sats" },
sendBiometricPromptTo = { sats, label -> "Enviar $sats sats a $label" },
// ── LnurlPayForm ─────────────────────────────────────────────────────────
lnurlAmountError = { min, max -> "Introduce una cantidad entre $min y $max sats" },
lnurlFiatRange = { minFiat, maxFiat -> "$minFiat $maxFiat" },
lnurlSatsAndFiatRange = { min, max, minFiat, maxFiat -> "$min $max sats · $minFiat $maxFiat" },
commentOptional = { max -> "Comentario (opcional, máx. $max caracteres)" },
commentCounter = { current, max -> "$current/$max" },
lnurlPayButton = { sats -> "Pagar $sats sats" },
lnurlPayButtonWithFiat = { sats, fiat -> "Pagar $sats sats · $fiat" },
// ── RouteHintWarning ──────────────────────────────────────────────────────
routeHintHighFees = "Comisiones de enrutamiento altas en la factura",
routeHintElevatedFees = "Comisiones de enrutamiento elevadas en la factura",
routeHintForcedChannel = { node -> "Esta factura obliga a pagar a través de un canal privado operado por $node." },
routeHintFeeRate = { effectivePpm, worstPpm -> "Tasa de comisión efectiva: $effectivePpm ppm ($worstPpm ppm)" },
routeHintFeeRateBase = { effectivePpm, worstPpm, baseLabel -> "Tasa de comisión efectiva: $effectivePpm ppm ($worstPpm ppm + $baseLabel base)" },
routeHintEstimatedFee = { sats -> "Comisión extra estimada en este pago: ~$sats sat${if (sats == 1L) "" else "s"}" },
routeHintShowDetails = "Ver detalles ▾",
routeHintHideDetails = "Ocultar detalles ▴",
routeHintHopsHeader = "Saltos de ruta privada",
routeHintHopFees = { ppm, baseLabel -> "$ppm ppm · $baseLabel base" },
// ── SendViewModel ─────────────────────────────────────────────────────────
sendVmLnurlAuthNotSupported = "Lightning Login (LNURL-auth) aún no está disponible",
sendVmUnrecognisedInput = "Entrada no reconocida — pega una factura BOLT-11, LNURL o dirección Lightning",
sendVmPaymentFailed = "Pago fallido",
sendVmCouldNotFetchInvoice = "No se pudo obtener la factura del destinatario",
sendVmCouldNotDecodeInvoice = "No se pudo decodificar la factura",
sendVmAuthFailed = { msg -> "Autenticación fallida: $msg" },
sendVmOnChainNotSupported = "Los pagos Bitcoin en cadena no están disponibles — comparte un URI BIP-21 con el parámetro lightning=",
sendVmChannelRequestNotSupported = "Las solicitudes de canal (lnurlc) no están disponibles",
sendVmCouldNotResolveAddress = "No se pudo resolver la dirección",
sendVmEmptyResponse = "Respuesta vacía del servidor",
sendVmUnsupportedType = { tag -> "Tipo no compatible: $tag" },
sendVmPaymentFailedRescan = "Pago fallido — no se pudo volver a obtener la dirección",
// ── HistoryScreen ─────────────────────────────────────────────────────────
historyTitle = "Historial",
historyClose = "Cerrar",
historySearchPayments = "Buscar pagos",
historyFilterPayments = "Filtrar pagos",
historyRetry = "Reintentar",
historyNoPayments = "Aún no hay pagos.",
historySearchPlaceholder = "Buscar transacciones",
historySearchHelp = "Ayuda de búsqueda",
historySearchPaste = "Pegar",
historySearchClear = "Limpiar búsqueda",
historySearchChip = { tail -> "búsqueda: …$tail" },
historyClearSearch = "Limpiar búsqueda",
filterDirectionOutgoing = "Salientes",
filterDirectionIncoming = "Entrantes",
filterClearDirection = "Quitar filtro de dirección",
filterStatusCompleted = "Completado",
filterStatusPending = "Pendiente",
filterStatusFailed = "Fallido",
filterRemoveStatus = "Quitar filtro de estado",
filterRemoveType = "Quitar filtro de tipo",
filterAmountRange = { min, max -> "$min$max sats" },
filterAmountMin = { min -> "$min sats" },
filterAmountMax = { max -> "$max sats" },
filterClearAmount = "Quitar filtro de cantidad",
filterDateThisWeek = "Esta semana",
filterDateThisMonth = "Este mes",
filterDateThisYear = "Este año",
filterDateRange = { from, to -> "$from$to" },
filterDateFrom = { from -> "Desde $from" },
filterDateUntil = { until -> "Hasta $until" },
filterClearDate = "Quitar filtro de fecha",
// ── FilterBottomSheet ─────────────────────────────────────────────────────
filterSheetTitle = "Filtrar pagos",
filterSectionDirection = "Dirección",
filterDirectionAll = "Todos",
filterSectionStatus = "Estado",
filterSectionType = "Tipo",
filterSectionAmount = "Cantidad (sats)",
filterAmountMin_label = "Mín.",
filterAmountMax_label = "Máx.",
filterAmountSuffix = "sats",
filterSectionDate = "Fecha",
filterDateFrom_label = "Desde",
filterDateTo_label = "Hasta",
filterDialogOk = "Aceptar",
filterDialogCancel = "Cancelar",
// ── SearchInfoSheet ───────────────────────────────────────────────────────
searchInfoTitle = "¿Qué puedo buscar?",
searchInfoSubtitle = "Escribe cualquier parte de lo siguiente para encontrar un pago:",
searchInfoMemoTitle = "Nota",
searchInfoMemoDesc = "El mensaje o descripción adjunto a un pago. " +
"Por ejemplo, \"café\" o \"alquiler marzo\".",
searchInfoInvoiceTitle = "Factura",
searchInfoInvoiceDesc = "La solicitud de pago que escaneaste o pegaste para enviar un pago. " +
"Normalmente empieza por \"lnbc…\". " +
"Puedes pegar solo los primeros o últimos caracteres.",
searchInfoHashTitle = "Hash",
searchInfoHashDesc = "Un código único que identifica este pago en la " +
"red Lightning. Útil si alguien te pide que " +
"confirmes una transacción específica.",
searchInfoPreimageTitle = "Preimagen",
searchInfoPreimageDesc = "Un código secreto que demuestra que se recibió un pago. " +
"Solo disponible después de que un pago se complete correctamente.",
searchInfoNodeAliasTitle = "Alias del nodo",
searchInfoNodeAliasDesc = "El nombre del nodo Lightning al que enviaste un pago. " +
"Por ejemplo, \"ACINQ\" o \"Wallet of Satoshi\". " +
"Los alias se resuelven automáticamente para pagos salientes.",
searchInfoNodeIdTitle = "ID del nodo (clave pública)",
searchInfoNodeIdDesc = "La clave pública del nodo de destino. " +
"Una cadena hexadecimal de 66 caracteres — puedes pegar solo los primeros.",
searchInfoFooter = "Puedes pegar un valor completo o buscar con solo unos pocos caracteres — " +
"las coincidencias parciales también funcionan.",
// ── PaymentDetailScreen ───────────────────────────────────────────────────
detailOutgoingTitle = "Pago saliente",
detailIncomingTitle = "Pago entrante",
detailBack = "Atrás",
detailCouldNotLoad = "No se pudieron cargar los detalles completos",
detailFeeLabel = { feeSat, fiatPart, ppmPart ->
"Comisión: $feeSat sats$fiatPart$ppmPart"
},
detailSectionDetails = "Detalles",
detailRowDate = "Fecha",
detailRowMemo = "Nota",
detailRowMemoEmpty = "",
detailRowType = "Tipo",
detailRowComment = "Comentario",
detailSectionSuccessAction = "Acción de éxito",
detailSuccessMessage = "Mensaje",
detailSuccessUrl = "URL",
detailSuccessDescription = "Descripción",
detailSectionTechnical = "Técnico",
detailRowPaymentHash = "Hash",
detailRowPreimage = "Preimagen",
detailRowDestination = "Destino",
detailCopyNodeId = "Copiar ID del nodo",
detailRowBolt11 = "BOLT11",
// ── PaymentRow ────────────────────────────────────────────────────────────
paymentRowSentCD = "Enviado",
paymentRowReceivedCD = "Recibido",
paymentRowNoMemo = "Sin nota",
paymentRowPending = "Pendiente",
// ── OnboardingScreen ──────────────────────────────────────────────────────
onboardingTitle = "Conectar a LNbits",
onboardingSubtitle = "Introduce la URL de tu servidor LNbits y las claves API.",
onboardingServerUrl = "URL del servidor",
onboardingServerUrlHint = "https://bitcointxoko.org",
onboardingInvoiceKey = "Clave de factura (solo lectura)",
onboardingAdminKey = "Clave de administrador (para enviar)",
onboardingHideAdminKey = "Ocultar",
onboardingShowAdminKey = "Mostrar",
onboardingFieldsRequired = "Todos los campos son obligatorios.",
onboardingConnect = "Conectar",
)