* 'main' of https://github.com/vitorpamplona/amethyst:
  New Crowdin translations by GitHub Action
  sonar fixes
  update translations: CZ, DE, PT, SE
  New Crowdin translations by GitHub Action
  update video compression library to latest
  update to use new limit short size bit more aggressive compression defaults
  add local maven repo for easier library development
This commit is contained in:
Vitor Pamplona
2026-03-27 19:40:04 -04:00
59 changed files with 601 additions and 44 deletions
@@ -106,7 +106,9 @@ class MediaCompressor {
} catch (e: Exception) {
if (e is CancellationException) throw e
Log.d("MediaCompressor", "Image compression failed: ${e.message}")
tempFile?.delete()
if (tempFile?.delete() == false) {
Log.w("MediaCompressor", "Failed to delete temp file: ${tempFile.absolutePath}")
}
MediaCompressorResult(uri, contentType, null)
}
}
@@ -50,19 +50,19 @@ data class VideoResolution(
val width: Int,
val height: Int,
) {
val pixels: Int get() = width * height
fun getStandard(): VideoStandard =
when {
pixels >= 3840 * 2160 -> VideoStandard.UHD_4K
pixels >= 2560 * 1440 -> VideoStandard.QHD_1440P
pixels >= 1920 * 1080 -> VideoStandard.FHD_1080P
pixels >= 1280 * 720 -> VideoStandard.HD_720P
pixels >= 854 * 480 -> VideoStandard.SD_480P
pixels >= 640 * 360 -> VideoStandard.NHD_360P
pixels >= 426 * 240 -> VideoStandard.QVGA_240P
fun getStandard(): VideoStandard {
val shortSide = minOf(width, height)
return when {
shortSide >= 2160 -> VideoStandard.UHD_4K
shortSide >= 1440 -> VideoStandard.QHD_1440P
shortSide >= 1080 -> VideoStandard.FHD_1080P
shortSide >= 720 -> VideoStandard.HD_720P
shortSide >= 480 -> VideoStandard.SD_480P
shortSide >= 360 -> VideoStandard.NHD_360P
shortSide >= 240 -> VideoStandard.QVGA_240P
else -> VideoStandard.UNKNOWN
}
}
}
enum class VideoStandard(
@@ -84,8 +84,7 @@ enum class VideoStandard(
private const val MBPS_TO_BPS_MULTIPLIER = 1_000_000
data class CompressionRule(
val width: Int,
val height: Int,
val shortSide: Int,
val bitrateMbps: Float,
val description: String,
) {
@@ -95,7 +94,7 @@ data class CompressionRule(
): Int {
// Apply 1.3x multiplier for 60fps+ videos, 0.7x multiplier for H265
val framerateMultiplier = if (framerate >= 60f) 1.3f else 1.0f
val codecMultiplier = if (useH265) 0.7f else 1.0f
val codecMultiplier = if (useH265) 0.75f else 1.0f
val finalMultiplier = framerateMultiplier * codecMultiplier
Log.d("VideoCompressionHelper", "framerate: $framerate, useH265: $useH265, Bitrate multiplier: $finalMultiplier")
@@ -111,36 +110,36 @@ object VideoCompressionHelper {
mapOf(
CompressorQuality.LOW to
mapOf(
VideoStandard.UHD_4K to CompressionRule(1280, 720, 2f, "4K→720p, 2Mbps"),
VideoStandard.QHD_1440P to CompressionRule(1280, 720, 2f, "1440p→720p, 2Mbps"),
VideoStandard.FHD_1080P to CompressionRule(854, 480, 1f, "1080p→480p, 1Mbps"),
VideoStandard.HD_720P to CompressionRule(640, 360, 1f, "720p→360p, 1Mbps"),
VideoStandard.SD_480P to CompressionRule(426, 240, 1f, "480p→240p, 1Mbps"),
VideoStandard.NHD_360P to CompressionRule(426, 240, 0.3f, "360p→240p, 0.3Mbps"),
VideoStandard.QVGA_240P to CompressionRule(320, 180, 0.2f, "240p→180p, 0.2Mbps"),
VideoStandard.UNKNOWN to CompressionRule(854, 480, 1f, "Low quality fallback, 1Mbps"),
VideoStandard.UHD_4K to CompressionRule(720, 1f, "4K→720p, 1Mbps"),
VideoStandard.QHD_1440P to CompressionRule(720, 1f, "1440p→720p, 1Mbps"),
VideoStandard.FHD_1080P to CompressionRule(480, 0.75f, "1080p→480p, 0.75Mbps"),
VideoStandard.HD_720P to CompressionRule(360, 0.5f, "720p→360p, 0.5Mbps"),
VideoStandard.SD_480P to CompressionRule(240, 0.5f, "480p→240p, 0.5Mbps"),
VideoStandard.NHD_360P to CompressionRule(240, 0.3f, "360p→240p, 0.3Mbps"),
VideoStandard.QVGA_240P to CompressionRule(180, 0.2f, "240p→180p, 0.2Mbps"),
VideoStandard.UNKNOWN to CompressionRule(480, 0.75f, "Low quality fallback, 0.75Mbps"),
),
CompressorQuality.MEDIUM to
mapOf(
VideoStandard.UHD_4K to CompressionRule(1920, 1080, 6f, "4K→1080p, 6Mbps"),
VideoStandard.QHD_1440P to CompressionRule(1920, 1080, 6f, "1440p→1080p, 6Mbps"),
VideoStandard.FHD_1080P to CompressionRule(1280, 720, 3f, "1080p→720p, 3Mbps"),
VideoStandard.HD_720P to CompressionRule(854, 480, 2f, "720p→480p, 2Mbps"),
VideoStandard.SD_480P to CompressionRule(640, 360, 1f, "480p→360p, 1Mbps"),
VideoStandard.NHD_360P to CompressionRule(426, 240, 0.5f, "360p→240p, 0.5Mbps"),
VideoStandard.QVGA_240P to CompressionRule(320, 180, 0.3f, "240p→180p, 0.3Mbps"),
VideoStandard.UNKNOWN to CompressionRule(1280, 720, 2f, "Medium quality fallback, 2Mbps"),
VideoStandard.UHD_4K to CompressionRule(1080, 4f, "4K→1080p, 4Mbps"),
VideoStandard.QHD_1440P to CompressionRule(1080, 4f, "1440p→1080p, 4Mbps"),
VideoStandard.FHD_1080P to CompressionRule(720, 2f, "1080p→720p, 2Mbps"),
VideoStandard.HD_720P to CompressionRule(480, 1.5f, "720p→480p, 1.5Mbps"),
VideoStandard.SD_480P to CompressionRule(360, 1f, "480p→360p, 1Mbps"),
VideoStandard.NHD_360P to CompressionRule(240, 0.5f, "360p→240p, 0.5Mbps"),
VideoStandard.QVGA_240P to CompressionRule(180, 0.3f, "240p→180p, 0.3Mbps"),
VideoStandard.UNKNOWN to CompressionRule(720, 2f, "Medium quality fallback, 2Mbps"),
),
CompressorQuality.HIGH to
mapOf(
VideoStandard.UHD_4K to CompressionRule(3840, 2160, 16f, "4K→4K, 16Mbps"),
VideoStandard.QHD_1440P to CompressionRule(1920, 1080, 8f, "1440p→1080p, 8Mbps"),
VideoStandard.FHD_1080P to CompressionRule(1920, 1080, 6f, "1080p→1080p, 6Mbps"),
VideoStandard.HD_720P to CompressionRule(1280, 720, 3f, "720p→720p, 3Mbps"),
VideoStandard.SD_480P to CompressionRule(854, 480, 2f, "480p→480p, 2Mbps"),
VideoStandard.NHD_360P to CompressionRule(640, 360, 1f, "360p→360p, 1Mbps"),
VideoStandard.QVGA_240P to CompressionRule(426, 240, 0.5f, "240p→240p, 0.5Mbps"),
VideoStandard.UNKNOWN to CompressionRule(1920, 1080, 3f, "High quality fallback, 3Mbps"),
VideoStandard.UHD_4K to CompressionRule(2160, 8f, "4K→4K, 8Mbps"),
VideoStandard.QHD_1440P to CompressionRule(1080, 8f, "1440p→1080p, 8Mbps"),
VideoStandard.FHD_1080P to CompressionRule(1080, 4f, "1080p→1080p, 4Mbps"),
VideoStandard.HD_720P to CompressionRule(720, 2f, "720p→720p, 2Mbps"),
VideoStandard.SD_480P to CompressionRule(480, 1.5f, "480p→480p, 1.5Mbps"),
VideoStandard.NHD_360P to CompressionRule(360, 1f, "360p→360p, 1Mbps"),
VideoStandard.QVGA_240P to CompressionRule(240, 0.5f, "240p→240p, 0.5Mbps"),
VideoStandard.UNKNOWN to CompressionRule(1080, 4f, "High quality fallback, 4Mbps"),
),
)
@@ -167,9 +166,9 @@ object VideoCompressionHelper {
Log.d(
LOG_TAG,
"Resizer: ${info.resolution.width}x${info.resolution.height} -> " +
"${rule.width}x${rule.height} (${rule.description})",
"shortSide=${rule.shortSide} (${rule.description})",
)
val resizer = VideoResizer.limitSize(rule.width.toDouble(), rule.height.toDouble())
val resizer = VideoResizer.limitShortSide(rule.shortSide.toDouble())
Pair(bitrateBps, resizer)
} ?: run {
@@ -232,8 +231,10 @@ object VideoCompressionHelper {
}
// Sanity check: compression not smaller than original
if (originalSize > 0 && size >= originalSize) {
File(path).delete()
if (originalSize in 1..size) {
if (!File(path).delete()) {
Log.w("VideoCompressionHelper", "Failed to delete compressed file: $path")
}
applicationContext.notifyUser(
"Compressed file larger than original. Using original.",
Log.WARN,
@@ -662,4 +662,6 @@
<string name="delete_all_drafts_confirmation">متأكد من حذف جميع المسودات؟</string>
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -574,4 +574,6 @@
<string name="accessibility_scan_qr_code">QR কোড স্ক্যান করুন</string>
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -2,4 +2,6 @@
<resources xmlns:tools="http://schemas.android.com/tools">
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -385,6 +385,9 @@
<string name="add_to_public_bookmarks">Přidat do veřejných záložek</string>
<string name="remove_from_private_bookmarks">Odebrat ze soukromých záložek</string>
<string name="remove_from_public_bookmarks">Odebrat z veřejných záložek</string>
<string name="pinned_notes">Připnuté poznámky</string>
<string name="pin_to_profile">Připnout na profil</string>
<string name="unpin_from_profile">Odepnout z profilu</string>
<string name="bookmark_lists">Seznamy záložek</string>
<string name="bookmark_list_icon_label">Ikona seznamu záložek</string>
<string name="bookmark_list_creation_screen_title">Nový seznam záložek</string>
@@ -715,6 +718,15 @@
<string name="terms_and_conditions">Podmínky &amp; ujednání</string>
<string name="not_available_acronym">N/A</string>
<string name="relay_error_messages">Chyby a upozornění z tohoto relé</string>
<string name="relay_monitor_reports">Zprávy monitoru relé</string>
<string name="relay_monitor_rtt_open">Otevření</string>
<string name="relay_monitor_rtt_read">Čtení</string>
<string name="relay_monitor_rtt_write">Zápis</string>
<string name="relay_monitor_network">Síť</string>
<string name="relay_monitor_relay_type">Typ</string>
<string name="relay_monitor_supported_nips">Podporované NIP</string>
<string name="relay_monitor_requirements">Požadavky</string>
<string name="relay_monitor_last_check">Poslední kontrola</string>
<string name="relay_active_subscriptions">Aktivní odběry</string>
<string name="relay_active_outbox">Čekající události k odeslání</string>
<string name="relay_req_subscriptions">REQ odběry (%1$d)</string>
@@ -1597,6 +1609,20 @@
<string name="select_all">Vybrat vše</string>
<string name="uptime">%1$d%% dostupnost</string>
<string name="namecoin_settings">Nastavení Namecoin</string>
<string name="namecoin_test_connection">Otestovat připojení</string>
<string name="namecoin_testing">Testování serverů…</string>
<string name="namecoin_test_success">Připojeno</string>
<string name="namecoin_test_failed">Selhalo</string>
<string name="namecoin_test_results">Výsledky testu</string>
<string name="namecoin_diagnostics">Diagnostika</string>
<string name="namecoin_last_test">Poslední test</string>
<string name="namecoin_device_info">Informace o zařízení</string>
<string name="namecoin_tls_info">Informace o TLS</string>
<string name="namecoin_no_test_yet">Zatím nebyl proveden žádný test</string>
<string name="namecoin_pin_cert_title">Důvěřovat certifikátu serveru?</string>
<string name="namecoin_pin_cert_body">Server %1$s předložil certifikát, který dosud není ve vašem úložišti důvěry. Ověřte, že otisk níže odpovídá tomu, co zveřejnil provozovatel serveru, a poté zvolte, zda mu budete důvěřovat pro budoucí připojení.</string>
<string name="namecoin_pin_cert_accept">Důvěřovat</string>
<string name="namecoin_pin_cert_reject">Odmítnout</string>
<string name="event_sync_title">Synchronizace relé</string>
<string name="event_sync_section">Synchronizace relé</string>
<string name="event_sync_section_explainer">Znovu publikujte své události na všech známých relé, aby byly vaše relé pro odchozí, příchozí a DM zprávy aktuální. Vyžaduje Wi-Fi — může spotřebovat velké množství dat.</string>
@@ -1700,4 +1726,90 @@
<string name="web_bookmark_delete">Smazat</string>
<string name="web_bookmark_delete_confirm">Smazat tuto webovou záložku?</string>
<string name="web_bookmark_open_url">Otevřít URL</string>
<!-- NIP-75 Zap Goals -->
<string name="goal_closed">Tento cíl byl ukončen</string>
<string name="goal_progress">%1$s financováno z %2$s sats cíle</string>
<string name="goal_amount_label">Cílová částka (sats)</string>
<string name="goal_description_label">Popište svůj cíl</string>
<string name="goal_description_placeholder">Na co sbíráte prostředky?</string>
<string name="goal_summary_label">Krátký souhrn</string>
<string name="goal_summary_placeholder">Stručný popis zobrazený v náhledech</string>
<string name="goal_image_label">URL obrázku (volitelné)</string>
<string name="goal_website_label">URL webu (volitelné)</string>
<string name="goal_deadline_label">Termín (volitelný)</string>
<string name="goal_set_deadline">Nastavit termín</string>
<string name="new_goal">Nový cíl</string>
<string name="goal_create">Vytvořit cíl</string>
<string name="request_to_vanish">Žádost o zmizení</string>
<string name="request_to_vanish_description">Požádejte relé o trvalé smazání všech vašich dat do vybraného data. Tato akce je založena na NIP-62 a v některých jurisdikcích je právně závazná.</string>
<string name="vanish_select_relay">Vybrat relé</string>
<string name="vanish_target_relay">Cílové relé</string>
<string name="vanish_all_relays">VŠECHNA RELÉ</string>
<string name="vanish_all_relays_warning">Toto požádá VŠECHNA relé o smazání všeho spojeného s vaším klíčem do vybraného data. Tato událost bude vysílána co nejšířeji. Tuto akci nelze vrátit zpět.</string>
<string name="vanish_date_label">Smazat data do</string>
<string name="vanish_date_explainer">Všechny vaše události vytvořené před tímto datem budou požadovány ke smazání z vybraného relé.</string>
<string name="vanish_reason_label">Důvod (volitelný)</string>
<string name="vanish_reason_placeholder">Důvod nebo právní oznámení pro provozovatele relé</string>
<string name="vanish_send_request">Odeslat žádost o zmizení</string>
<string name="vanish_confirm_title">Potvrdit žádost o zmizení</string>
<string name="vanish_confirm_single_relay">Chystáte se požádat %1$s o trvalé smazání všech vašich dat vytvořených před vybraným datem. Tuto akci nelze vrátit zpět.</string>
<string name="vanish_confirm_all_relays">Chystáte se požádat KAŽDÉ relé o trvalé smazání všech vašich dat vytvořených před vybraným datem. Bude to vysíláno všude a nelze to vrátit zpět.</string>
<string name="vanish_request_sent">Žádost o zmizení odeslána</string>
<string name="vanish_select_date">Vybrat datum</string>
<string name="vanish_select_time">Vybrat čas</string>
<string name="vanish_events_title">Historie zmizení</string>
<string name="vanish_events_refresh">Obnovit</string>
<string name="vanish_events_description">Toto jsou vaše minulé události Žádost o zmizení nalezené na připojených relé. Relé označená v těchto událostech by neměla uchovávat žádná vaše data z doby před datem události.</string>
<string name="vanish_events_empty">Nebyly nalezeny žádné žádosti o zmizení</string>
<string name="vanish_events_empty_hint">Zatím jste neodeslali žádné události Žádost o zmizení.</string>
<string name="vanish_target_relays_label">Cílové relé</string>
<string name="vanish_all_relays_compliance_hint">Tento požadavek cílí na všechna relé. Použijte obrazovku Žádost o zmizení k otestování konkrétních relé na shodu.</string>
<string name="vanish_compliant">Vyhovující</string>
<string name="vanish_non_compliant">Nevyhovující</string>
<string name="vanish_test_error">Chyba</string>
<string name="vanish_history">Historie zmizení</string>
<!-- NIP-86 Relay Management -->
<string name="relay_management_title">Spravovat %1$s</string>
<string name="relay_management_loading">Načítání schopností správy relé…</string>
<string name="relay_management_error">Nelze se připojit ke správě relé</string>
<string name="relay_management_no_methods">Nejsou dostupné žádné metody správy</string>
<string name="relay_management_dismiss">Zavřít</string>
<string name="relay_management_tab_pubkeys">Uživatelé</string>
<string name="relay_management_tab_events">Události</string>
<string name="relay_management_tab_kinds">Druhy</string>
<string name="relay_management_tab_ips">IP adresy</string>
<string name="relay_management_tab_settings">Nastavení</string>
<string name="relay_management_banned_pubkeys">Zakázaní uživatelé</string>
<string name="relay_management_no_banned_pubkeys">Žádní zakázaní uživatelé</string>
<string name="relay_management_allowed_pubkeys">Povolení uživatelé</string>
<string name="relay_management_no_allowed_pubkeys">Žádní povolení uživatelé</string>
<string name="relay_management_moderation_queue">Fronta moderování</string>
<string name="relay_management_no_moderation_events">Žádné události k moderování</string>
<string name="relay_management_banned_events">Zakázané události</string>
<string name="relay_management_no_banned_events">Žádné zakázané události</string>
<string name="relay_management_allowed_kinds">Povolené druhy</string>
<string name="relay_management_no_allowed_kinds">Žádné povolené druhy</string>
<string name="relay_management_blocked_ips">Blokované IP adresy</string>
<string name="relay_management_no_blocked_ips">Žádné blokované IP adresy</string>
<string name="relay_management_add">Přidat</string>
<string name="relay_management_remove">Odebrat</string>
<string name="relay_management_allow">Povolit</string>
<string name="relay_management_ban">Zakázat</string>
<string name="relay_management_ban_pubkey">Zakázat pubkey</string>
<string name="relay_management_allow_pubkey">Povolit pubkey</string>
<string name="relay_management_ban_event">Zakázat událost</string>
<string name="relay_management_allow_kind">Povolit druh</string>
<string name="relay_management_block_ip">Blokovat IP</string>
<string name="relay_management_event_id_hex">ID události (hex)</string>
<string name="relay_management_kind_number">Číslo druhu</string>
<string name="relay_management_ip_address">IP adresa</string>
<string name="relay_management_reason_optional">Důvod (volitelný)</string>
<string name="relay_management_confirm">Potvrdit</string>
<string name="relay_management_cancel">Zrušit</string>
<string name="relay_management_apply">Použít</string>
<string name="relay_management_relay_name">Název relé</string>
<string name="relay_management_relay_description">Popis relé</string>
<string name="relay_management_relay_icon_url">URL ikony relé</string>
<string name="relay_management_button">Spravovat relé</string>
<string name="manage">Spravovat</string>
</resources>
@@ -2,4 +2,6 @@
<resources xmlns:tools="http://schemas.android.com/tools">
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -2,4 +2,6 @@
<resources xmlns:tools="http://schemas.android.com/tools">
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -391,6 +391,9 @@ anz der Bedingungen ist erforderlich</string>
<string name="add_to_public_bookmarks">Zu den öffentlichen Lesezeichen hinzufügen</string>
<string name="remove_from_private_bookmarks">Aus den privaten Lesezeichen entfernen</string>
<string name="remove_from_public_bookmarks">Aus den öffentlichen Lesezeichen entfernen</string>
<string name="pinned_notes">Angeheftete Notizen</string>
<string name="pin_to_profile">An Profil anheften</string>
<string name="unpin_from_profile">Von Profil lösen</string>
<string name="bookmark_lists">Lesezeichenlisten</string>
<string name="bookmark_list_icon_label">Symbol für Lesezeichenliste</string>
<string name="bookmark_list_creation_screen_title">Neue Lesezeichenliste</string>
@@ -720,6 +723,15 @@ anz der Bedingungen ist erforderlich</string>
<string name="terms_and_conditions">Allgemeine Geschäftsbedingungen</string>
<string name="not_available_acronym">N/A</string>
<string name="relay_error_messages">Fehler und Hinweise von diesem Relais</string>
<string name="relay_monitor_reports">Relay-Überwachungsberichte</string>
<string name="relay_monitor_rtt_open">Öffnen</string>
<string name="relay_monitor_rtt_read">Lesen</string>
<string name="relay_monitor_rtt_write">Schreiben</string>
<string name="relay_monitor_network">Netzwerk</string>
<string name="relay_monitor_relay_type">Typ</string>
<string name="relay_monitor_supported_nips">Unterstützte NIPs</string>
<string name="relay_monitor_requirements">Anforderungen</string>
<string name="relay_monitor_last_check">Letzte Prüfung</string>
<string name="relay_active_subscriptions">Aktive Abonnements</string>
<string name="relay_active_outbox">Ausstehende Outbox-Ereignisse</string>
<string name="relay_req_subscriptions">REQ-Abonnements (%1$d)</string>
@@ -1602,6 +1614,20 @@ anz der Bedingungen ist erforderlich</string>
<string name="select_all">Alle auswählen</string>
<string name="uptime">%1$d%% Verfügbarkeit</string>
<string name="namecoin_settings">Namecoin-Einstellungen</string>
<string name="namecoin_test_connection">Verbindung testen</string>
<string name="namecoin_testing">Teste Server…</string>
<string name="namecoin_test_success">Verbunden</string>
<string name="namecoin_test_failed">Fehlgeschlagen</string>
<string name="namecoin_test_results">Testergebnisse</string>
<string name="namecoin_diagnostics">Diagnose</string>
<string name="namecoin_last_test">Letzter Test</string>
<string name="namecoin_device_info">Geräteinformationen</string>
<string name="namecoin_tls_info">TLS-Informationen</string>
<string name="namecoin_no_test_yet">Noch kein Test durchgeführt</string>
<string name="namecoin_pin_cert_title">Serverzertifikat vertrauen?</string>
<string name="namecoin_pin_cert_body">Der Server %1$s hat ein Zertifikat vorgelegt, das noch nicht in deinem Vertrauensspeicher ist. Überprüfe, ob der Fingerabdruck unten mit dem übereinstimmt, was der Serverbetreiber veröffentlicht hat, und wähle dann, ob du ihm für zukünftige Verbindungen vertrauen möchtest.</string>
<string name="namecoin_pin_cert_accept">Vertrauen</string>
<string name="namecoin_pin_cert_reject">Ablehnen</string>
<string name="event_sync_title">Relay-Synchronisierung</string>
<string name="event_sync_section">Relay-Synchronisierung</string>
<string name="event_sync_section_explainer">Veröffentliche deine Ereignisse erneut auf allen bekannten Relays, um deine Outbox-, Inbox- und DM-Relays aktuell zu halten. Erfordert WLAN — dies kann viele Daten verbrauchen.</string>
@@ -1705,4 +1731,90 @@ anz der Bedingungen ist erforderlich</string>
<string name="web_bookmark_delete">Löschen</string>
<string name="web_bookmark_delete_confirm">Dieses Web-Lesezeichen löschen?</string>
<string name="web_bookmark_open_url">URL öffnen</string>
<!-- NIP-75 Zap Goals -->
<string name="goal_closed">Dieses Ziel wurde geschlossen</string>
<string name="goal_progress">%1$s finanziert von %2$s Sats Ziel</string>
<string name="goal_amount_label">Zielbetrag (Sats)</string>
<string name="goal_description_label">Beschreibe dein Ziel</string>
<string name="goal_description_placeholder">Wofür sammelst du Geld?</string>
<string name="goal_summary_label">Kurze Zusammenfassung</string>
<string name="goal_summary_placeholder">Kurze Beschreibung für Vorschauen</string>
<string name="goal_image_label">Bild-URL (optional)</string>
<string name="goal_website_label">Website-URL (optional)</string>
<string name="goal_deadline_label">Frist (optional)</string>
<string name="goal_set_deadline">Frist festlegen</string>
<string name="new_goal">Neues Ziel</string>
<string name="goal_create">Ziel erstellen</string>
<string name="request_to_vanish">Löschanfrage</string>
<string name="request_to_vanish_description">Fordere Relays auf, alle deine Daten bis zum gewählten Datum dauerhaft zu löschen. Diese Aktion basiert auf NIP-62 und ist in einigen Rechtsgebieten rechtlich bindend.</string>
<string name="vanish_select_relay">Relay auswählen</string>
<string name="vanish_target_relay">Ziel-Relays</string>
<string name="vanish_all_relays">ALLE RELAYS</string>
<string name="vanish_all_relays_warning">Dies wird ALLE Relays auffordern, alles zu löschen, was mit deinem Schlüssel bis zum gewählten Datum verbunden ist. Dieses Ereignis wird so breit wie möglich gesendet. Diese Aktion kann nicht rückgängig gemacht werden.</string>
<string name="vanish_date_label">Daten löschen bis</string>
<string name="vanish_date_explainer">Alle deine Ereignisse, die vor diesem Datum erstellt wurden, werden zur Löschung vom ausgewählten Relay angefordert.</string>
<string name="vanish_reason_label">Grund (optional)</string>
<string name="vanish_reason_placeholder">Grund oder rechtlicher Hinweis für den Relay-Betreiber</string>
<string name="vanish_send_request">Löschanfrage senden</string>
<string name="vanish_confirm_title">Löschanfrage bestätigen</string>
<string name="vanish_confirm_single_relay">Du bist dabei, %1$s aufzufordern, alle deine Daten, die vor dem gewählten Datum erstellt wurden, dauerhaft zu löschen. Diese Aktion kann nicht rückgängig gemacht werden.</string>
<string name="vanish_confirm_all_relays">Du bist dabei, JEDES Relay aufzufordern, alle deine Daten, die vor dem gewählten Datum erstellt wurden, dauerhaft zu löschen. Dies wird überall gesendet und kann nicht rückgängig gemacht werden.</string>
<string name="vanish_request_sent">Löschanfrage gesendet</string>
<string name="vanish_select_date">Datum wählen</string>
<string name="vanish_select_time">Uhrzeit wählen</string>
<string name="vanish_events_title">Löschverlauf</string>
<string name="vanish_events_refresh">Aktualisieren</string>
<string name="vanish_events_description">Dies sind deine vergangenen Löschanfrage-Ereignisse, die auf verbundenen Relays gefunden wurden. Relays, die in diesen Ereignissen markiert sind, sollten keine deiner Daten von vor dem Ereignisdatum mehr speichern.</string>
<string name="vanish_events_empty">Keine Löschanfragen gefunden</string>
<string name="vanish_events_empty_hint">Du hast noch keine Löschanfrage-Ereignisse gesendet.</string>
<string name="vanish_target_relays_label">Ziel-Relays</string>
<string name="vanish_all_relays_compliance_hint">Diese Anfrage richtet sich an alle Relays. Verwende den Löschanfrage-Bildschirm, um einzelne Relays auf Konformität zu testen.</string>
<string name="vanish_test_button">Testen</string>
<string name="vanish_compliant">Konform</string>
<string name="vanish_non_compliant">Nicht konform</string>
<string name="vanish_test_error">Fehler</string>
<string name="vanish_history">Löschverlauf</string>
<!-- NIP-86 Relay Management -->
<string name="relay_management_title">%1$s verwalten</string>
<string name="relay_management_loading">Lade Relay-Verwaltungsfunktionen…</string>
<string name="relay_management_error">Verbindung zur Relay-Verwaltung nicht möglich</string>
<string name="relay_management_no_methods">Keine Verwaltungsmethoden verfügbar</string>
<string name="relay_management_dismiss">Schließen</string>
<string name="relay_management_tab_pubkeys">Benutzer</string>
<string name="relay_management_tab_events">Ereignisse</string>
<string name="relay_management_tab_kinds">Arten</string>
<string name="relay_management_tab_settings">Einstellungen</string>
<string name="relay_management_banned_pubkeys">Gesperrte Benutzer</string>
<string name="relay_management_no_banned_pubkeys">Keine gesperrten Benutzer</string>
<string name="relay_management_allowed_pubkeys">Erlaubte Benutzer</string>
<string name="relay_management_no_allowed_pubkeys">Keine erlaubten Benutzer</string>
<string name="relay_management_moderation_queue">Moderationswarteschlange</string>
<string name="relay_management_no_moderation_events">Keine Ereignisse zur Moderation</string>
<string name="relay_management_banned_events">Gesperrte Ereignisse</string>
<string name="relay_management_no_banned_events">Keine gesperrten Ereignisse</string>
<string name="relay_management_allowed_kinds">Erlaubte Arten</string>
<string name="relay_management_no_allowed_kinds">Keine erlaubten Arten</string>
<string name="relay_management_blocked_ips">Blockierte IPs</string>
<string name="relay_management_no_blocked_ips">Keine blockierten IPs</string>
<string name="relay_management_add">Hinzufügen</string>
<string name="relay_management_remove">Entfernen</string>
<string name="relay_management_allow">Erlauben</string>
<string name="relay_management_ban">Sperren</string>
<string name="relay_management_ban_pubkey">Pubkey sperren</string>
<string name="relay_management_allow_pubkey">Pubkey erlauben</string>
<string name="relay_management_ban_event">Ereignis sperren</string>
<string name="relay_management_allow_kind">Art erlauben</string>
<string name="relay_management_block_ip">IP blockieren</string>
<string name="relay_management_event_id_hex">Ereignis-ID (hex)</string>
<string name="relay_management_kind_number">Art-Nummer</string>
<string name="relay_management_ip_address">IP-Adresse</string>
<string name="relay_management_reason_optional">Grund (optional)</string>
<string name="relay_management_confirm">Bestätigen</string>
<string name="relay_management_cancel">Abbrechen</string>
<string name="relay_management_apply">Anwenden</string>
<string name="relay_management_relay_name">Relay-Name</string>
<string name="relay_management_relay_description">Relay-Beschreibung</string>
<string name="relay_management_relay_icon_url">Relay-Symbol-URL</string>
<string name="relay_management_button">Relay verwalten</string>
<string name="manage">Verwalten</string>
</resources>
@@ -516,4 +516,6 @@
</string>
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -9,4 +9,6 @@
<string name="post_not_found_short">👀</string>
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -444,4 +444,6 @@
<string name="error_dialog_button_ok">Okej</string>
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -1184,4 +1184,6 @@
<string name="select_signer">Seleccionar firmante</string>
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -1160,4 +1160,6 @@
<string name="select_signer">Seleccionar firmante</string>
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -1161,4 +1161,6 @@
<string name="select_signer">Seleccionar firmante</string>
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -949,4 +949,6 @@
<string name="private_message">پیام خصوصی</string>
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -571,4 +571,6 @@
<string name="could_not_prepare_local_file_to_upload">Paikallista tiedostoa ei voitu valmistella ladattavaksi: %1$s</string>
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -2,4 +2,6 @@
<resources xmlns:tools="http://schemas.android.com/tools">
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -1439,4 +1439,6 @@
<string name="event_sync_start_over">Recommencer</string>
<string name="event_sync_cancel">Annuler</string>
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -2,4 +2,6 @@
<resources xmlns:tools="http://schemas.android.com/tools">
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -1664,4 +1664,6 @@
<string name="attestor_proficiency_for_kinds">प्रकारों के सत्यापन में निपुण : %1$s</string>
<string name="attestation_attests_to">इस के लिए साक्षी</string>
<string name="attestation_requests_attestation_to">इस के लिए साक्ष्यांकन अनुरोध</string>
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -2,4 +2,6 @@
<resources xmlns:tools="http://schemas.android.com/tools">
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -1720,4 +1720,6 @@
<string name="web_bookmark_delete">Törlés</string>
<string name="web_bookmark_delete_confirm">Törli ezt a webes könyvjelzőt?</string>
<string name="web_bookmark_open_url">Webcím megnyitása</string>
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -513,4 +513,6 @@ Seharusnya %3$s</string>
</string>
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -434,4 +434,6 @@
<string name="active_for_search">Cerca</string>
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -2,4 +2,6 @@
<resources xmlns:tools="http://schemas.android.com/tools">
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -391,4 +391,6 @@
<string name="load_image">画像読み込み</string>
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -2,4 +2,6 @@
<resources xmlns:tools="http://schemas.android.com/tools">
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -2,4 +2,6 @@
<resources xmlns:tools="http://schemas.android.com/tools">
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -2,4 +2,6 @@
<resources xmlns:tools="http://schemas.android.com/tools">
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -2,4 +2,6 @@
<resources xmlns:tools="http://schemas.android.com/tools">
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -173,4 +173,6 @@
<string name="torrent_no_apps">Nav uzstādītas torrent lietotnes, kas atvērtu un lejupielādētu datni.</string>
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -2,4 +2,6 @@
<resources xmlns:tools="http://schemas.android.com/tools">
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -1146,4 +1146,6 @@
<string name="follow_pack_delete">Verwijder pakket</string>
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -2,4 +2,6 @@
<resources xmlns:tools="http://schemas.android.com/tools">
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -1715,4 +1715,6 @@
<string name="web_bookmark_delete">Usuń</string>
<string name="web_bookmark_delete_confirm">Usunąć tę zakładkę?</string>
<string name="web_bookmark_open_url">Otwórz adres URL</string>
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -385,6 +385,9 @@
<string name="add_to_public_bookmarks">Adicionar aos Itens Salvos Públicos</string>
<string name="remove_from_private_bookmarks">Remover dos Itens Salvos Privados</string>
<string name="remove_from_public_bookmarks">Remover dos Itens Salvos Públicos</string>
<string name="pinned_notes">Notas Fixadas</string>
<string name="pin_to_profile">Fixar no Perfil</string>
<string name="unpin_from_profile">Desafixar do Perfil</string>
<string name="bookmark_lists">Listas de favoritos</string>
<string name="bookmark_list_icon_label">Ícone da lista de favoritos</string>
<string name="bookmark_list_creation_screen_title">Nova lista de favoritos</string>
@@ -715,6 +718,15 @@
<string name="terms_and_conditions">Termos &amp; condições</string>
<string name="not_available_acronym">N/A</string>
<string name="relay_error_messages">Erros e Avisos deste Relé</string>
<string name="relay_monitor_reports">Relatórios do Monitor de Relay</string>
<string name="relay_monitor_rtt_open">Abrir</string>
<string name="relay_monitor_rtt_read">Leitura</string>
<string name="relay_monitor_rtt_write">Escrita</string>
<string name="relay_monitor_network">Rede</string>
<string name="relay_monitor_relay_type">Tipo</string>
<string name="relay_monitor_supported_nips">NIPs Suportados</string>
<string name="relay_monitor_requirements">Requisitos</string>
<string name="relay_monitor_last_check">Última verificação</string>
<string name="relay_active_subscriptions">Assinaturas Ativas</string>
<string name="relay_active_outbox">Eventos Pendentes na Outbox</string>
<string name="relay_req_subscriptions">Assinaturas REQ (%1$d)</string>
@@ -1597,6 +1609,20 @@
<string name="select_all">Selecionar tudo</string>
<string name="uptime">%1$d%% de disponibilidade</string>
<string name="namecoin_settings">Configurações do Namecoin</string>
<string name="namecoin_test_connection">Testar Conexão</string>
<string name="namecoin_testing">Testando servidores…</string>
<string name="namecoin_test_success">Conectado</string>
<string name="namecoin_test_failed">Falhou</string>
<string name="namecoin_test_results">Resultados do Teste</string>
<string name="namecoin_diagnostics">Diagnóstico</string>
<string name="namecoin_last_test">Último teste</string>
<string name="namecoin_device_info">Informações do Dispositivo</string>
<string name="namecoin_tls_info">Informações TLS</string>
<string name="namecoin_no_test_yet">Nenhum teste realizado ainda</string>
<string name="namecoin_pin_cert_title">Confiar no Certificado do Servidor?</string>
<string name="namecoin_pin_cert_body">O servidor %1$s apresentou um certificado que ainda não está no seu armazenamento de confiança. Verifique se a impressão digital abaixo corresponde ao que o operador do servidor publicou e escolha se deseja confiar nele para conexões futuras.</string>
<string name="namecoin_pin_cert_accept">Confiar</string>
<string name="namecoin_pin_cert_reject">Rejeitar</string>
<string name="event_sync_title">Sincronização de Relays</string>
<string name="event_sync_section">Sincronização de Relays</string>
<string name="event_sync_section_explainer">Republique seus eventos em todos os relays conhecidos para manter seus relays de saída, entrada e DM atualizados. Requer Wi-Fi — pode consumir muitos dados.</string>
@@ -1700,4 +1726,90 @@
<string name="web_bookmark_delete">Excluir</string>
<string name="web_bookmark_delete_confirm">Excluir este marcador web?</string>
<string name="web_bookmark_open_url">Abrir URL</string>
<!-- NIP-75 Zap Goals -->
<string name="goal_closed">Esta meta foi encerrada</string>
<string name="goal_progress">%1$s financiado de %2$s sats da meta</string>
<string name="goal_amount_label">Valor da meta (sats)</string>
<string name="goal_description_label">Descreva sua meta</string>
<string name="goal_description_placeholder">Para que você está arrecadando fundos?</string>
<string name="goal_summary_label">Resumo curto</string>
<string name="goal_summary_placeholder">Breve descrição mostrada nas prévias</string>
<string name="goal_image_label">URL da imagem (opcional)</string>
<string name="goal_website_label">URL do site (opcional)</string>
<string name="goal_deadline_label">Prazo (opcional)</string>
<string name="goal_set_deadline">Definir um prazo</string>
<string name="new_goal">Nova Meta</string>
<string name="goal_create">Criar Meta</string>
<string name="request_to_vanish">Pedido para Desaparecer</string>
<string name="request_to_vanish_description">Solicite aos relays que excluam permanentemente todos os seus dados até a data selecionada. Esta ação é baseada no NIP-62 e é legalmente vinculante em algumas jurisdições.</string>
<string name="vanish_select_relay">Selecionar um relay</string>
<string name="vanish_target_relay">Relays Alvo</string>
<string name="vanish_all_relays">TODOS OS RELAYS</string>
<string name="vanish_all_relays_warning">Isso solicitará a TODOS os relays que excluam tudo associado à sua chave até a data selecionada. Este evento será transmitido o mais amplamente possível. Esta ação não pode ser desfeita.</string>
<string name="vanish_date_label">Excluir dados até</string>
<string name="vanish_date_explainer">Todos os seus eventos criados antes desta data serão solicitados para exclusão do relay selecionado.</string>
<string name="vanish_reason_label">Motivo (opcional)</string>
<string name="vanish_reason_placeholder">Motivo ou aviso legal para o operador do relay</string>
<string name="vanish_send_request">Enviar Pedido para Desaparecer</string>
<string name="vanish_confirm_title">Confirmar Pedido para Desaparecer</string>
<string name="vanish_confirm_single_relay">Você está prestes a solicitar a %1$s que exclua permanentemente todos os seus dados criados antes da data selecionada. Esta ação não pode ser desfeita.</string>
<string name="vanish_confirm_all_relays">Você está prestes a solicitar a TODOS os relays que excluam permanentemente todos os seus dados criados antes da data selecionada. Isso será transmitido em todos os lugares e não pode ser desfeito.</string>
<string name="vanish_request_sent">Pedido para desaparecer enviado</string>
<string name="vanish_select_date">Selecionar data</string>
<string name="vanish_select_time">Selecionar hora</string>
<string name="vanish_events_title">Histórico de Desaparecimento</string>
<string name="vanish_events_refresh">Atualizar</string>
<string name="vanish_events_description">Estes são seus eventos passados de Pedido para Desaparecer encontrados nos relays conectados. Relays marcados nesses eventos não devem manter nenhum dos seus dados anteriores à data do evento.</string>
<string name="vanish_events_empty">Nenhum pedido de desaparecimento encontrado</string>
<string name="vanish_events_empty_hint">Você ainda não enviou nenhum evento de Pedido para Desaparecer.</string>
<string name="vanish_target_relays_label">Relays Alvo</string>
<string name="vanish_all_relays_compliance_hint">Este pedido é direcionado a todos os relays. Use a tela Pedido para Desaparecer para testar relays específicos quanto à conformidade.</string>
<string name="vanish_test_button">Testar</string>
<string name="vanish_compliant">Compatível</string>
<string name="vanish_non_compliant">Não compatível</string>
<string name="vanish_test_error">Erro</string>
<string name="vanish_history">Histórico de Desaparecimento</string>
<!-- NIP-86 Relay Management -->
<string name="relay_management_title">Gerenciar %1$s</string>
<string name="relay_management_loading">Carregando recursos de gerenciamento do relay…</string>
<string name="relay_management_error">Não foi possível conectar ao gerenciamento do relay</string>
<string name="relay_management_no_methods">Nenhum método de gerenciamento disponível</string>
<string name="relay_management_dismiss">Dispensar</string>
<string name="relay_management_tab_pubkeys">Usuários</string>
<string name="relay_management_tab_events">Eventos</string>
<string name="relay_management_tab_kinds">Tipos</string>
<string name="relay_management_tab_settings">Configurações</string>
<string name="relay_management_banned_pubkeys">Usuários Banidos</string>
<string name="relay_management_no_banned_pubkeys">Nenhum usuário banido</string>
<string name="relay_management_allowed_pubkeys">Usuários Permitidos</string>
<string name="relay_management_no_allowed_pubkeys">Nenhum usuário permitido</string>
<string name="relay_management_moderation_queue">Fila de Moderação</string>
<string name="relay_management_no_moderation_events">Nenhum evento para moderar</string>
<string name="relay_management_banned_events">Eventos Banidos</string>
<string name="relay_management_no_banned_events">Nenhum evento banido</string>
<string name="relay_management_allowed_kinds">Tipos Permitidos</string>
<string name="relay_management_no_allowed_kinds">Nenhum tipo permitido</string>
<string name="relay_management_blocked_ips">IPs Bloqueados</string>
<string name="relay_management_no_blocked_ips">Nenhum IP bloqueado</string>
<string name="relay_management_add">Adicionar</string>
<string name="relay_management_remove">Remover</string>
<string name="relay_management_allow">Permitir</string>
<string name="relay_management_ban">Banir</string>
<string name="relay_management_ban_pubkey">Banir Pubkey</string>
<string name="relay_management_allow_pubkey">Permitir Pubkey</string>
<string name="relay_management_ban_event">Banir Evento</string>
<string name="relay_management_allow_kind">Permitir Tipo</string>
<string name="relay_management_block_ip">Bloquear IP</string>
<string name="relay_management_event_id_hex">ID do Evento (hex)</string>
<string name="relay_management_kind_number">Número do tipo</string>
<string name="relay_management_ip_address">Endereço IP</string>
<string name="relay_management_reason_optional">Motivo (opcional)</string>
<string name="relay_management_confirm">Confirmar</string>
<string name="relay_management_cancel">Cancelar</string>
<string name="relay_management_apply">Aplicar</string>
<string name="relay_management_relay_name">Nome do Relay</string>
<string name="relay_management_relay_description">Descrição do Relay</string>
<string name="relay_management_relay_icon_url">URL do Ícone do Relay</string>
<string name="relay_management_button">Gerenciar Relay</string>
<string name="manage">Gerenciar</string>
</resources>
@@ -2,4 +2,6 @@
<resources xmlns:tools="http://schemas.android.com/tools">
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -449,4 +449,6 @@
<string name="classifieds_category_other">Другое</string>
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -2,4 +2,6 @@
<resources xmlns:tools="http://schemas.android.com/tools">
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -2,4 +2,6 @@
<resources xmlns:tools="http://schemas.android.com/tools">
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -1717,4 +1717,6 @@ Za podpisovanje se je potrebno prijaviti s privatnim ključem</string>
<string name="web_bookmark_delete">Izbriši</string>
<string name="web_bookmark_delete_confirm">Izbriši ta spletni zaznamek</string>
<string name="web_bookmark_open_url">Odpri URL</string>
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -35,4 +35,6 @@
<string name="no_zap_amount_setup_long_press_to_change">Нема подешавања износа Зап. Дуго притисните да бисте променили</string>
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -385,6 +385,9 @@
<string name="add_to_public_bookmarks">Lägg till i Publika Bokmärken</string>
<string name="remove_from_private_bookmarks">Ta bort från Privata Bokmärken</string>
<string name="remove_from_public_bookmarks">Ta bort från Publika Bokmärken</string>
<string name="pinned_notes">Fästa anteckningar</string>
<string name="pin_to_profile">Fäst på profil</string>
<string name="unpin_from_profile">Ta bort från profil</string>
<string name="bookmark_lists">Bokmärkeslistor</string>
<string name="bookmark_list_icon_label">Ikon för bokmärkeslista</string>
<string name="bookmark_list_creation_screen_title">Ny bokmärkeslista</string>
@@ -714,6 +717,15 @@
<string name="terms_and_conditions">Villkor &amp; bestämmelser</string>
<string name="not_available_acronym">N/A</string>
<string name="relay_error_messages">Fel och meddelanden från detta relä</string>
<string name="relay_monitor_reports">Reläövervakningsrapporter</string>
<string name="relay_monitor_rtt_open">Öppna</string>
<string name="relay_monitor_rtt_read">Läs</string>
<string name="relay_monitor_rtt_write">Skriv</string>
<string name="relay_monitor_network">Nätverk</string>
<string name="relay_monitor_relay_type">Typ</string>
<string name="relay_monitor_supported_nips">NIP som stöds</string>
<string name="relay_monitor_requirements">Krav</string>
<string name="relay_monitor_last_check">Senaste kontroll</string>
<string name="relay_active_subscriptions">Aktiva prenumerationer</string>
<string name="relay_active_outbox">Väntande utgående händelser</string>
<string name="relay_req_subscriptions">REQ-prenumerationer (%1$d)</string>
@@ -1596,6 +1608,20 @@
<string name="select_all">Välj alla</string>
<string name="uptime">%1$d%% drifttid</string>
<string name="namecoin_settings">Namecoin-inställningar</string>
<string name="namecoin_test_connection">Testa anslutning</string>
<string name="namecoin_testing">Testar servrar…</string>
<string name="namecoin_test_success">Ansluten</string>
<string name="namecoin_test_failed">Misslyckades</string>
<string name="namecoin_test_results">Testresultat</string>
<string name="namecoin_diagnostics">Diagnostik</string>
<string name="namecoin_last_test">Senaste test</string>
<string name="namecoin_device_info">Enhetsinformation</string>
<string name="namecoin_tls_info">TLS-information</string>
<string name="namecoin_no_test_yet">Inget test har körts ännu</string>
<string name="namecoin_pin_cert_title">Lita på servercertifikat?</string>
<string name="namecoin_pin_cert_body">Servern %1$s presenterade ett certifikat som ännu inte finns i ditt förtroendelager. Verifiera att fingeravtrycket nedan matchar det som serveroperatören publicerat och välj sedan om du vill lita på det för framtida anslutningar.</string>
<string name="namecoin_pin_cert_accept">Lita på</string>
<string name="namecoin_pin_cert_reject">Avvisa</string>
<string name="event_sync_title">Relä-synkronisering</string>
<string name="event_sync_section">Relä-synkronisering</string>
<string name="event_sync_section_explainer">Publicera om dina händelser på alla kända reläer för att hålla dina utkorgs-, inkorgs- och DM-reläer uppdaterade. Kräver Wi-Fi — detta kan använda mycket data.</string>
@@ -1699,4 +1725,91 @@
<string name="web_bookmark_delete">Radera</string>
<string name="web_bookmark_delete_confirm">Radera detta webbbokmärke?</string>
<string name="web_bookmark_open_url">Öppna URL</string>
<!-- NIP-75 Zap Goals -->
<string name="goal_closed">Detta mål har avslutats</string>
<string name="goal_progress">%1$s finansierat av %2$s sats mål</string>
<string name="goal_amount_label">Målbelopp (sats)</string>
<string name="goal_description_label">Beskriv ditt mål</string>
<string name="goal_description_placeholder">Vad samlar du in pengar till?</string>
<string name="goal_summary_label">Kort sammanfattning</string>
<string name="goal_summary_placeholder">Kort beskrivning som visas i förhandsvisningar</string>
<string name="goal_image_label">Bild-URL (valfritt)</string>
<string name="goal_website_label">Webbplats-URL (valfritt)</string>
<string name="goal_deadline_label">Tidsfrist (valfritt)</string>
<string name="goal_set_deadline">Sätt en tidsfrist</string>
<string name="new_goal">Nytt mål</string>
<string name="goal_create">Skapa mål</string>
<string name="request_to_vanish">Begäran om försvinnande</string>
<string name="request_to_vanish_description">Begär att reläer permanent raderar all din data fram till det valda datumet. Denna åtgärd bygger på NIP-62 och är juridiskt bindande i vissa jurisdiktioner.</string>
<string name="vanish_select_relay">Välj ett relä</string>
<string name="vanish_target_relay">Målreläer</string>
<string name="vanish_all_relays">ALLA RELÄER</string>
<string name="vanish_all_relays_warning">Detta kommer att begära att ALLA reläer raderar allt kopplat till din nyckel fram till det valda datumet. Denna händelse kommer att sändas så brett som möjligt. Denna åtgärd kan inte ångras.</string>
<string name="vanish_date_label">Radera data fram till</string>
<string name="vanish_date_explainer">Alla dina händelser skapade före detta datum kommer att begäras för radering från det valda reläet.</string>
<string name="vanish_reason_label">Anledning (valfritt)</string>
<string name="vanish_reason_placeholder">Anledning eller juridiskt meddelande till reläoperatören</string>
<string name="vanish_send_request">Skicka begäran om försvinnande</string>
<string name="vanish_confirm_title">Bekräfta begäran om försvinnande</string>
<string name="vanish_confirm_single_relay">Du är på väg att begära att %1$s permanent raderar all din data skapad före det valda datumet. Denna åtgärd kan inte ångras.</string>
<string name="vanish_confirm_all_relays">Du är på väg att begära att VARJE relä permanent raderar all din data skapad före det valda datumet. Detta kommer att sändas överallt och kan inte ångras.</string>
<string name="vanish_request_sent">Begäran om försvinnande skickad</string>
<string name="vanish_select_date">Välj datum</string>
<string name="vanish_select_time">Välj tid</string>
<string name="vanish_events_title">Försvinnande historik</string>
<string name="vanish_events_refresh">Uppdatera</string>
<string name="vanish_events_description">Dessa är dina tidigare Begäran om försvinnande-händelser som hittats på anslutna reläer. Reläer som är taggade i dessa händelser bör inte ha kvar någon av din data från före händelsedatumet.</string>
<string name="vanish_events_empty">Inga försvinnandebegäranden hittades</string>
<string name="vanish_events_empty_hint">Du har inte skickat några Begäran om försvinnande-händelser ännu.</string>
<string name="vanish_target_relays_label">Målreläer</string>
<string name="vanish_all_relays_compliance_hint">Denna begäran riktar sig till alla reläer. Använd skärmen Begäran om försvinnande för att testa specifika reläer för efterlevnad.</string>
<string name="vanish_test_button">Testa</string>
<string name="vanish_compliant">Kompatibel</string>
<string name="vanish_non_compliant">Ej kompatibel</string>
<string name="vanish_test_error">Fel</string>
<string name="vanish_history">Försvinnande historik</string>
<!-- NIP-86 Relay Management -->
<string name="relay_management_title">Hantera %1$s</string>
<string name="relay_management_loading">Laddar relähanteringsfunktioner…</string>
<string name="relay_management_error">Kunde inte ansluta till relähantering</string>
<string name="relay_management_no_methods">Inga hanteringsmetoder tillgängliga</string>
<string name="relay_management_dismiss">Stäng</string>
<string name="relay_management_tab_pubkeys">Användare</string>
<string name="relay_management_tab_events">Händelser</string>
<string name="relay_management_tab_kinds">Typer</string>
<string name="relay_management_tab_ips">IP-adresser</string>
<string name="relay_management_tab_settings">Inställningar</string>
<string name="relay_management_banned_pubkeys">Bannlysta användare</string>
<string name="relay_management_no_banned_pubkeys">Inga bannlysta användare</string>
<string name="relay_management_allowed_pubkeys">Tillåtna användare</string>
<string name="relay_management_no_allowed_pubkeys">Inga tillåtna användare</string>
<string name="relay_management_moderation_queue">Modereringskö</string>
<string name="relay_management_no_moderation_events">Inga händelser att moderera</string>
<string name="relay_management_banned_events">Bannlysta händelser</string>
<string name="relay_management_no_banned_events">Inga bannlysta händelser</string>
<string name="relay_management_allowed_kinds">Tillåtna typer</string>
<string name="relay_management_no_allowed_kinds">Inga tillåtna typer</string>
<string name="relay_management_blocked_ips">Blockerade IP-adresser</string>
<string name="relay_management_no_blocked_ips">Inga blockerade IP-adresser</string>
<string name="relay_management_add">Lägg till</string>
<string name="relay_management_remove">Ta bort</string>
<string name="relay_management_allow">Tillåt</string>
<string name="relay_management_ban">Bannlys</string>
<string name="relay_management_ban_pubkey">Bannlys pubkey</string>
<string name="relay_management_allow_pubkey">Tillåt pubkey</string>
<string name="relay_management_ban_event">Bannlys händelse</string>
<string name="relay_management_allow_kind">Tillåt typ</string>
<string name="relay_management_block_ip">Blockera IP</string>
<string name="relay_management_event_id_hex">Händelse-ID (hex)</string>
<string name="relay_management_kind_number">Typnummer</string>
<string name="relay_management_ip_address">IP-adress</string>
<string name="relay_management_reason_optional">Anledning (valfritt)</string>
<string name="relay_management_confirm">Bekräfta</string>
<string name="relay_management_cancel">Avbryt</string>
<string name="relay_management_apply">Tillämpa</string>
<string name="relay_management_relay_name">Relänamn</string>
<string name="relay_management_relay_description">Relä beskrivning</string>
<string name="relay_management_relay_icon_url">URL för reläikon</string>
<string name="relay_management_button">Hantera relä</string>
<string name="manage">Hantera</string>
</resources>
@@ -445,4 +445,6 @@
<string name="active_for_search">Tafuta</string>
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -2,4 +2,6 @@
<resources xmlns:tools="http://schemas.android.com/tools">
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -371,4 +371,6 @@
<string name="community_no_descriptor">இந்த சமூகத்தின் விளக்கமும் விதிகளும் இன்னும் சேர்க்கபடவில்லை. உரிமையாளரை அணுகி அவற்றை சேர்க்க கோரவும்</string>
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -816,4 +816,6 @@
<string name="temporary_account">ออกจากระบบ</string>
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -169,4 +169,6 @@
<string name="biometric_error">Hata</string>
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -501,4 +501,6 @@
<string name="could_not_prepare_local_file_to_upload">Не вдалося підготувати локальний файл для завантаження: %1$s</string>
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -70,4 +70,6 @@
<string name="profile_banner">Profil banneri</string>
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -13,4 +13,6 @@
<string name="thank_you_so_much">Cảm ơn rất nhiều!</string>
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -1720,4 +1720,6 @@
<string name="web_bookmark_delete">删除</string>
<string name="web_bookmark_delete_confirm">删除该网络书签?</string>
<string name="web_bookmark_open_url">打开 URL</string>
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -241,4 +241,6 @@
<string name="looking_for_event">"“正在查找事件%1$s”"</string>
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -2,4 +2,6 @@
<resources xmlns:tools="http://schemas.android.com/tools">
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
@@ -764,4 +764,6 @@
<string name="add_a_nip96_server">添加 NIP-96 服務器</string>
<!-- Kind display names for relay subscription filter chips -->
<!-- M3 Action Dialog titles -->
<!-- NIP-75 Zap Goals -->
<!-- NIP-86 Relay Management -->
</resources>
+4
View File
@@ -13,6 +13,10 @@ plugins {
}
allprojects {
configurations.configureEach {
resolutionStrategy.cacheChangingModulesFor 0, 'seconds'
}
apply plugin: 'com.diffplug.spotless'
if (project === rootProject) {
+1 -1
View File
@@ -34,7 +34,7 @@ kotlinxCoroutinesCore = "1.10.2"
kotlinxSerialization = "1.10.0"
languageId = "17.0.6"
lifecycleRuntimeKtx = "2.10.0"
lightcompressor-enhanced = "1.6.0"
lightcompressor-enhanced = "1.8.1"
markdown = "f92ef49c9d"
material3 = "1.9.0"
materialIconsExtended = "1.7.3"
+1
View File
@@ -21,6 +21,7 @@ pluginManagement {
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
mavenLocal()
google()
mavenCentral()
maven { url = "https://jitpack.io" }